diff --git a/.gitignore b/.gitignore
index b90b2bf37..e1cc944e2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,49 +1,34 @@
-/Management-Server/build/
-/Management-Server/build/classes/
-/Management-Server/build/tmp/
-/Management-Server/build/kotlin/
-/Management-Server/build/generated/
-/Client/build/
-/Client/build/classes/
-/Client/build/tmp/
-/Client/build/kotlin/
-/Client/build/generated/
-/Server/build/
-/Server/build/classes/
-/Server/build/tmp/
-/Server/build/kotlin/
-/Server/build/generated/
-/Server/data/eco/bot_offers.json
-/File-Server/build/
-/File-Server/build/classes/
-/File-Server/build/tmp/
-/File-Server/build/kotlin/
-/File-Server/build/generated/
-**/.idea/workspace.xml
-**/.idea/tasks.xml
-Server/**/*.class
-CompiledServer/*
-CompiledServer/
-Server/gradle/
-Server/build/
-Server/.gradle/
-Client/gradle/
-Client/build/
-Client/.gradle/
+builddir
+logs
+out/
+Management-Server/target/*
Management-Server/.gradle
Management-Server/build/
Management-Server/org/
+Server/target/*
+Server/data/eco/bot_offers.json
+Server/gradle/
+Server/**/*.class
+Server/build/
+Server/.gradle/
Server/data/eco/grand_exchange_db.emp
-Single-Player/*
-Single-Player/
+Server/data/eco/grandexchange.db
+Server/data/serverstore/
+Server/data/global_kill_stats.json
+Server/ge_test.db
+Server/latestdump.txt
+Management-Server/managementprops/
+Server/worldprops/
+
+**/.idea/workspace.xml
+**/.idea/tasks.xml
docker
.gradle
gradle
.idea
.idea/
-Server/worldprops/
-Management-Server/managementprops/
-/Development-Client/
**/*.swp
**/*.swo
build/kotlin/sessions/
+**/*.iml
+Server/hasRan.txt
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 000000000..03a4e5b25
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,41 @@
+variables:
+ # This will suppress any download for dependencies and plugins or upload messages which would clutter the console log.
+ # `showDateTime` will show the passed time in milliseconds. You need to specify `--batch-mode` to make this work.
+ MAVEN_OPTS: "-Dhttps.protocols=TLSv1.2 -Dmaven.repo.local=$CI_PROJECT_DIR/.m2/repository -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN -Dorg.slf4j.simpleLogger.showDateTime=true -Djava.awt.headless=true -Xmx3g"
+ # As of Maven 3.3.0 instead of this you may define these options in `.mvn/maven.config` so the same config is used
+ # when running from the command line.
+ MAVEN_CLI_OPTS: "--batch-mode --errors --fail-fast --show-version"
+
+image: maven:3-openjdk-11-slim
+
+workflow:
+ rules:
+ - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
+
+before_script:
+ - 'free -mh'
+ - 'apt-get update -q'
+
+# Cache downloaded dependencies and plugins between builds.
+# To keep cache across branches add 'key: "$CI_JOB_NAME"'
+cache:
+ paths:
+ - .m2/repository
+
+verify:jdk11:
+ stage: build
+ script:
+ - 'cd Server'
+ - 'mvn $MAVEN_CLI_OPTS verify'
+ except:
+ variables:
+ - $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
+
+test:json:
+ stage: test
+ script:
+ - 'apt-get install -q -y --no-install-recommends jq'
+ - 'find . -name \*.json -type f -print0 | xargs -0 -n1 -P8 jq empty'
+ except:
+ variables:
+ - $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
diff --git a/.gitlab/issue_templates/Bug Report.md b/.gitlab/issue_templates/Bug Report.md
deleted file mode 100644
index 4bfda573a..000000000
--- a/.gitlab/issue_templates/Bug Report.md
+++ /dev/null
@@ -1,8 +0,0 @@
-### Description of issue
-Describe in detail what exactly happened. No "it no workie" will be accepted. Clear and concise definitions of what *exactly* the problem is.
-
-### What should have happened
-Write out what the expected behavior/etc is.
-
-### Reproduction steps (if applicable)
-Inform us how to reproduce this issue so we can effectively debug it.
diff --git a/.gitlab/issue_templates/Proposal.md b/.gitlab/issue_templates/Proposal.md
deleted file mode 100644
index 48b42c06a..000000000
--- a/.gitlab/issue_templates/Proposal.md
+++ /dev/null
@@ -1,8 +0,0 @@
-### What is being proposed
-Write a clear and verbose description here of what exactly is being proposed.
-
-### Pros
-* List out bullet points here of pros
-
-### Cons
-* List out bullet points here of potential cons
diff --git a/.gitlab/merge_request_templates/.gitkeep b/.gitlab/merge_request_templates/.gitkeep
deleted file mode 100644
index e69de29bb..000000000
diff --git a/.gitlab/merge_request_templates/default_mr.md b/.gitlab/merge_request_templates/default_mr.md
deleted file mode 100644
index 44377a2f0..000000000
--- a/.gitlab/merge_request_templates/default_mr.md
+++ /dev/null
@@ -1,7 +0,0 @@
-Put a brief and concise description of the changes you made here.
-
-* [ ] Detailed Changes added to CHANGELOG (Required to be merged)
-
-* [ ] Changes tested to ensure they function as expected (Required to be merged)
-
-* [x] I acknowledge that this contribution will be released under the AGPL license.
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 000000000..7078b8c93
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,20 @@
+# Starting out with the openjdk-11-slim image
+FROM maven:3-openjdk-11-slim
+
+# Set working directory to /app
+WORKDIR /app
+
+# Update apt; install git and git-lfs
+RUN apt-get update && apt-get -qq -y install git git-lfs
+
+# Clone the 2009scape repository
+RUN git clone --depth=1 https://gitlab.com/2009scape/2009scape.git
+
+# Fake it til you make it - let's go home
+WORKDIR /app/2009scape
+
+# Make sure ./run has permissions
+RUN chmod +x run
+
+# Run it
+CMD ["./run"]
diff --git a/Management-Server/.mvn/wrapper/maven-wrapper.jar b/Management-Server/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index bf82ff01c..000000000
Binary files a/Management-Server/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/Management-Server/.mvn/wrapper/maven-wrapper.properties b/Management-Server/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index 84b111fb2..000000000
--- a/Management-Server/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar
diff --git a/Management-Server/.run/Run MS.run.xml b/Management-Server/.run/Run MS.run.xml
deleted file mode 100644
index 4a760c0df..000000000
--- a/Management-Server/.run/Run MS.run.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Management-Server/.run/[Windows] Run MS.run.xml b/Management-Server/.run/[Windows] Run MS.run.xml
deleted file mode 100644
index adcafe596..000000000
--- a/Management-Server/.run/[Windows] Run MS.run.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Management-Server/managementprops/properties.json b/Management-Server/managementprops/properties.json
deleted file mode 100644
index e081156a1..000000000
--- a/Management-Server/managementprops/properties.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "DatabaseInformation": {
- "database_name": "global",
- "database_username": "root",
- "database_password": "",
- "database_host": "127.0.0.1",
- "database_port": "3306"
- },
-
- "WorldTechnicalInformation": {
- "world_limit": "10",
- "worldhop_delay": "20000"
- },
- "secret_key": "2009scape_development"
-}
\ No newline at end of file
diff --git a/Management-Server/mvnw b/Management-Server/mvnw
deleted file mode 100755
index b7f064624..000000000
--- a/Management-Server/mvnw
+++ /dev/null
@@ -1,287 +0,0 @@
-#!/bin/sh
-# ----------------------------------------------------------------------------
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Apache Maven Wrapper startup batch script, version 3.1.1
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /usr/local/etc/mavenrc ] ; then
- . /usr/local/etc/mavenrc
- fi
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- JAVA_HOME="`/usr/libexec/java_home`"; export JAVA_HOME
- else
- JAVA_HOME="/Library/Java/Home"; export JAVA_HOME
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD="$JAVA_HOME/jre/sh/java"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`\\unset -f command; \\command -v java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- printf '%s' "$(cd "$basedir"; pwd)"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=$(find_maven_basedir "$(dirname $0)")
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
- else
- wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) wrapperUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $wrapperUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- QUIET="--quiet"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- QUIET=""
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget $QUIET "$wrapperUrl" -O "$wrapperJarPath"
- else
- wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath"
- fi
- [ $? -eq 0 ] || rm -f "$wrapperJarPath"
- elif command -v curl > /dev/null; then
- QUIET="--silent"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- QUIET=""
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L
- else
- curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L
- fi
- [ $? -eq 0 ] || rm -f "$wrapperJarPath"
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaSource="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaSource=`cygpath --path --windows "$javaSource"`
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaSource" ]; then
- if [ ! -e "$javaClass" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaSource")
- fi
- if [ -e "$javaClass" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- $MAVEN_DEBUG_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/Management-Server/mvnw.cmd b/Management-Server/mvnw.cmd
deleted file mode 100644
index 474c9d6b7..000000000
--- a/Management-Server/mvnw.cmd
+++ /dev/null
@@ -1,187 +0,0 @@
-@REM ----------------------------------------------------------------------------
-@REM Licensed to the Apache Software Foundation (ASF) under one
-@REM or more contributor license agreements. See the NOTICE file
-@REM distributed with this work for additional information
-@REM regarding copyright ownership. The ASF licenses this file
-@REM to you under the Apache License, Version 2.0 (the
-@REM "License"); you may not use this file except in compliance
-@REM with the License. You may obtain a copy of the License at
-@REM
-@REM http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing,
-@REM software distributed under the License is distributed on an
-@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-@REM KIND, either express or implied. See the License for the
-@REM specific language governing permissions and limitations
-@REM under the License.
-@REM ----------------------------------------------------------------------------
-
-@REM ----------------------------------------------------------------------------
-@REM Apache Maven Wrapper startup batch script, version 3.1.1
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
-if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
-
-FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %WRAPPER_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% ^
- %JVM_CONFIG_MAVEN_PROPS% ^
- %MAVEN_OPTS% ^
- %MAVEN_DEBUG_OPTS% ^
- -classpath %WRAPPER_JAR% ^
- "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
- %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
-if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%"=="on" pause
-
-if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%
-
-cmd /C exit /B %ERROR_CODE%
diff --git a/Management-Server/pom.xml b/Management-Server/pom.xml
deleted file mode 100644
index 2993573b7..000000000
--- a/Management-Server/pom.xml
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
- 4.0.0
- org.rs09
- managementserver
- 1.0.0
-
- ms.Management
- true
- 1.6.21
- 1.6
- 5.7.0
- 11
- 11
-
-
-
- org.jetbrains.kotlin
- kotlin-stdlib-jdk8
- ${kotlin.version}
- compile
-
-
- com.googlecode.json-simple
- json-simple
- 1.1.1
- compile
-
-
- com.github.ajalt.mordant
- mordant-jvm
- 2.0.0-beta6
- compile
-
-
- mysql
- mysql-connector-java
- 8.0.21
- compile
-
-
- org.junit.jupiter
- junit-jupiter-api
- ${junit.version}
- test
-
-
- org.junit.jupiter
- junit-jupiter-engine
- ${junit.version}
- test
-
-
-
-
-
- org.apache.maven.plugins
- maven-assembly-plugin
- 3.1.1
-
-
-
- jar-with-dependencies
-
-
- ${project.mainClassName}
-
-
-
-
-
- make-assembly
- package
-
- single
-
-
-
-
-
-
- org.jetbrains.kotlin
- kotlin-maven-plugin
- ${kotlin.version}
-
-
- compile
-
- compile
-
-
-
- ${project.basedir}/src/main/kotlin
- ${project.basedir}/src/main/java
-
-
-
-
- test-compile
- test-compile
-
-
- ${project.basedir}/src/test/kotlin
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.5.1
-
- false
-
-
-
-
- default-compile
- none
-
-
-
- default-testCompile
- none
-
-
- java-compile
- compile
-
- compile
-
-
-
- java-test-compile
- test-compile
-
- testCompile
-
-
-
-
-
- maven-surefire-plugin
- 2.22.0
-
-
- maven-failsafe-plugin
- 2.22.0
-
-
-
-
diff --git a/Management-Server/src/main/java/ms/Management.java b/Management-Server/src/main/java/ms/Management.java
deleted file mode 100644
index 5d44a4e37..000000000
--- a/Management-Server/src/main/java/ms/Management.java
+++ /dev/null
@@ -1,197 +0,0 @@
-package ms;
-
-import ms.net.NioReactor;
-import ms.net.packet.IoBuffer;
-import ms.net.packet.PacketHeader;
-import ms.net.packet.WorldPacketRepository;
-import ms.system.ShutdownSequence;
-import ms.system.mysql.SQLManager;
-import ms.system.util.Command;
-import ms.system.util.ManagementConfigParser;
-import ms.world.GameServer;
-import ms.world.PlayerSession;
-import ms.world.WorldDatabase;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.net.InetAddress;
-import java.net.NetworkInterface;
-import java.nio.charset.StandardCharsets;
-import java.util.Scanner;
-
-/**
- * The main class.
- * @author Emperor
- *
- */
-public final class Management {
-
- /**
- * If the shutdown hook is active.
- */
- public static boolean active = true;
-
- /**
- * The commands.
- */
- private static final Command[] COMMANDS = {
- new Command("-commands", "Print a list of all commands.") {
- @Override
- public void run(String...args) {
- for (Command c : COMMANDS) {
- System.out.println("Command " + c.getName() + ": " + c.getInfo());
- }
- }
- },
- new Command("-s", "Safely shuts down the server.") {
- @Override
- public void run(String...args) {
- System.out.println("Shutting down Management server...");
- ShutdownSequence.shutdown();
- }
- },
- new Command("-debug", "Debug world info.") {
- @Override
- public void run(String...args) {
- System.out.println("---------------------------------------------");
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null) {
- System.out.println("World [id=" + server.getInfo().getWorldId() + ", IP=" + server.getInfo().getAddress() + ", country=" + server.getInfo().getCountry() + ", members=" + server.getInfo().isMembers() + ", players=" + server.getPlayers().size() + ", active=" + server.isActive() + "].");
- }
- }
- }
- },
- new Command("-pinfo", "Debugs player information (usage: -pinfo emperor).") {
- @Override
- public void run(String...args) {
- String name = args[1];
- PlayerSession player = WorldDatabase.getPlayer(name);
- if (player == null) {
- System.out.println("Player " + name + " was not registered!");
- return;
- }
- System.out.println("Player [name=" + name + ", world=" + player.getWorldId() + ", active=" + player.isActive() + "].");
- }
- },
- new Command("-update", "Calls an update on all the game servers (-update -1 to cancel).") {
- @Override
- public void run(String...args) {
- int ticks = Integer.parseInt(args[1]);
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null && server.isActive()) {
- WorldPacketRepository.sendUpdate(server, ticks);
- }
- }
- }
- },
- new Command("-reloadconfig", "Reloads the configurations of all worlds.") {
-
- @Override
- public void run(String... args) {
- for (GameServer server : WorldDatabase.getWorlds()) {
- if(server == null) {
- continue;
- }
- WorldPacketRepository.sendConfigReload(server);
- }
- }
- },
-
- new Command("-rlcache", "Reloads launcher/client resource cache") {
- @Override
- public void run(String... args) {
- System.out.println("Reloaded resource cache!");
- }
- },
-
- new Command("-kick", "Kicks a player from the MS (not ingame).") {
- @Override
- public void run(String... args) {
- String name = args[1];
- PlayerSession player = WorldDatabase.getPlayer(name);
- if (player == null) {
- System.out.println("Player " + name + " was not registered!");
- return;
- }
- player.getWorld().getPlayers().remove(name);
- player.setWorldId(0);
- System.out.println("Kicked player " + name + "!");
- }
- },
-
- new Command("-say", "Send a message to all worlds") {
- @Override
- public void run(String... args) {
- String message = String.join(" ", args);
- message = message.substring(4);
- for(GameServer server : WorldDatabase.getWorlds()){
- if(server == null) continue;
- String finalMessage = message;
- server.getPlayers().forEach((String uname, PlayerSession p) -> {
- IoBuffer buffer = new IoBuffer(5, PacketHeader.BYTE);
- buffer.putString(p.getUsername());
- buffer.putString("Server");
- buffer.put(2);
- buffer.put(2);
- buffer.putString(finalMessage);
- p.getWorld().getSession().write(buffer);
- });
- }
- }
- }
- };
-
- /**
- * The main method.
- * @param args The arguments cast on runtime.
- * @throws Throwable When an exception occurs.
- */
- public static void main(String...args) throws Throwable {
- if (!isLocallyHosted(ServerConstants.HOST_ADDRESS)) {
- System.err.println("WARNING: Configure host address in server constants!");
- }
- System.out.println("-------- 530 Management server --------");
- System.out.println("Starting up...");
- new ManagementConfigParser("managementprops" + File.separator + "properties.json");
- SQLManager.init();
- //NioReactor.configure(ServerConstants.PORT).start();
- NioReactor.configure(5555).start();
- Runtime.getRuntime().addShutdownHook(new ShutdownSequence());
- System.out.println("Status: ready.");
- System.out.println("Use -commands for a list of commands!");
- Scanner s = new Scanner(new InputStreamReader(System.in, StandardCharsets.UTF_8));
- while (s.hasNext()) {
- try {
- String command = s.nextLine();
- if (!command.startsWith("-")) {
- continue;
- }
- String[] arguments = command.split(" ");
- command = arguments[0];
- for (Command c : COMMANDS) {
- if (c.getName().equals(command)) {
- System.out.println("Handling command \"" + command + "\"!");
- c.run(arguments);
- }
- }
- } catch (Throwable t) {
- t.printStackTrace();
- }
- }
- s.close();
- }
-
- /**
- * Checks if the Management server is locally hosted.
- * @return {@code True} if so.
- * @throws IOException When an I/O exception occurs.
- */
- private static boolean isLocallyHosted(String ip) throws IOException {
- InetAddress address = InetAddress.getByName(ip);
- if (address.isAnyLocalAddress() || address.isLoopbackAddress()) {
- return true;
- }
- return NetworkInterface.getByInetAddress(address) != null;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/ServerConstants.java b/Management-Server/src/main/java/ms/ServerConstants.java
deleted file mode 100644
index 60d4af36d..000000000
--- a/Management-Server/src/main/java/ms/ServerConstants.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package ms;
-
-import ms.system.OperatingSystem;
-
-/**
- * Holds constants for the management server.
- * @author v4rg
- *
- */
-public final class ServerConstants {
-
- /**
- * The maximum amount of worlds.
- */
- public static final int WORLD_LIMIT = 10;
-
- /**
- * The world switching delay in milliseconds.
- */
- public static final long WORLD_SWITCH_DELAY = 20_000L;
-
- /**
- * The address of the Management server.
- */
- public static final String HOST_ADDRESS = "127.0.0.1";
-
- /**
- * The operating system of the management server
- */
- public static final OperatingSystem OS = System.getProperty("os.name").toUpperCase().contains("WIN") ? OperatingSystem.WINDOWS : OperatingSystem.UNIX;
-
- /**
- * Stops from instantiating.
- */
- private ServerConstants() {
- /*
- * empty.
- */
- }
-
- /**
- * Fixes a path to a specified operating system
- * @param operatingSystem The os type.
- * @param path The path.
- * @return The fixed path.
- */
- public static String fixPath(OperatingSystem operatingSystem, String path) {
- if (operatingSystem == null)
- operatingSystem = OS;
- return operatingSystem == OperatingSystem.WINDOWS ? path.replace("/","\\") : path.replace("\\","/");
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/EventProducer.java b/Management-Server/src/main/java/ms/net/EventProducer.java
deleted file mode 100644
index 9f3093c1c..000000000
--- a/Management-Server/src/main/java/ms/net/EventProducer.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package ms.net;
-
-import java.nio.ByteBuffer;
-
-/**
- * Used for producing I/O events.
- * @author Emperor
- *
- */
-public interface EventProducer {
-
- /**
- * Produces a new read event.
- * @param session The session.
- * @param buffer The buffer to read.
- * @return The read event handler.
- */
- IoReadEvent produceReader(IoSession session, ByteBuffer buffer);
-
- /**
- * Produces a new writing event.
- * @param session The session.
- * @param context The context.
- * @return The write event handler.
- */
- IoWriteEvent produceWriter(IoSession session, Object context);
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/IoEventHandler.java b/Management-Server/src/main/java/ms/net/IoEventHandler.java
deleted file mode 100644
index 1971fffa7..000000000
--- a/Management-Server/src/main/java/ms/net/IoEventHandler.java
+++ /dev/null
@@ -1,119 +0,0 @@
-package ms.net;
-
-import ms.world.WorldDatabase;
-import ms09.MSLogger;
-
-import java.io.IOException;
-import java.nio.ByteBuffer;
-import java.nio.channels.ClosedChannelException;
-import java.nio.channels.ReadableByteChannel;
-import java.nio.channels.SelectionKey;
-import java.nio.channels.Selector;
-import java.nio.channels.ServerSocketChannel;
-import java.nio.channels.SocketChannel;
-import java.util.Arrays;
-import java.util.concurrent.ExecutorService;
-
-/**
- * I/O event handling.
- * @author Emperor
- *
- */
-public final class IoEventHandler {
-
- /**
- * The executor service.
- */
- private final ExecutorService service;
-
- /**
- * Constructs a new {@code IoEventHandler}.
- * @param service The executor service used for handling events.
- */
- public IoEventHandler(ExecutorService service) {
- this.service = service;
- }
-
- /**
- * Called when making a new connection.
- * @param key The selection key.
- */
- public void connect(SelectionKey key) {
- /*
- * empty.
- */
- }
-
- /**
- * Used for accepting a new connection.
- * @param key The selection key.
- * @param selector The selector.
- * @throws IOException When an I/O exception occurs.
- */
- public void accept(SelectionKey key, Selector selector) throws IOException {
- SocketChannel sc = ((ServerSocketChannel) key.channel()).accept();
- sc.configureBlocking(false);
- sc.socket().setTcpNoDelay(true);
- sc.register(selector, SelectionKey.OP_READ);
- }
-
- /**
- * Reads the incoming packet data.
- * @param key The selection key.
- * @throws IOException When an I/O exception occurs.
- */
- public void read(SelectionKey key) throws IOException {
- ReadableByteChannel channel = (ReadableByteChannel) key.channel();
- ByteBuffer buffer = ByteBuffer.allocate(100_000);
- IoSession session = (IoSession) key.attachment();
- if (channel.read(buffer) == -1) {
- if(session == null){
- key.cancel();
- return;
- }
- if(session.getGameServer() != null){
- WorldDatabase.unRegister(session.getGameServer());
- }
- session.disconnect();
- key.cancel();
- return;
- }
- buffer.flip();
- if (session == null) {
- key.attach(session = new IoSession(key, service));
- }
- service.execute(session.getProducer().produceReader(session, buffer));
- }
-
- /**
- * Writes the outgoing packet data.
- * @param key The selection key.
- */
- public void write(SelectionKey key) {
- IoSession session = (IoSession) key.attachment();
- if(session != null) {
- key.interestOps(key.interestOps() & ~SelectionKey.OP_WRITE);
- session.write();
- }
- }
-
- /**
- * Disconnects a connection.
- * @param key The selection key.
- * @param t The occurred exception (if any).
- */
- public void disconnect(SelectionKey key, Throwable t) {
- try {
- IoSession session = (IoSession) key.attachment();
- String cause = "" + t;
- if (t != null && !(t instanceof ClosedChannelException || cause.contains("De externe host") || cause.contains("De software op uw") || cause.contains("An established connection was aborted") || cause.contains("An existing connection") || cause.contains("AsynchronousClose"))) {
- t.printStackTrace();
- }
- if (session != null) {
- session.disconnect();
- }
- } catch (Throwable e) {
- e.printStackTrace();
- }
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/IoReadEvent.java b/Management-Server/src/main/java/ms/net/IoReadEvent.java
deleted file mode 100644
index 74de5d5bd..000000000
--- a/Management-Server/src/main/java/ms/net/IoReadEvent.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package ms.net;
-
-import java.nio.ByteBuffer;
-
-/**
- * Handles a reading event.
- * @author Emperor
- *
- */
-public abstract class IoReadEvent implements Runnable {
-
- /**
- * The I/O session.
- */
- private final IoSession session;
-
- /**
- * The buffer.
- */
- private ByteBuffer buffer;
-
- /**
- * If the queued reading buffer was used (debugging purposes).
- */
- protected boolean usedQueuedBuffer;
-
- /**
- * Constructs a new {@code IoReadEvent}.
- * @param session The session.
- * @param buffer The buffer to read from.
- */
- public IoReadEvent(IoSession session, ByteBuffer buffer) {
- this.session = session;
- this.buffer = buffer;
- }
-
- @Override
- public void run() {
- try {
- if (session.getReadingQueue() != null) {
- buffer = session.getReadingQueue().put(buffer);
- buffer.flip();
- session.setReadingQueue(null);
- usedQueuedBuffer = true;
- }
- read(session, buffer);
- } catch (Throwable t) {
- t.printStackTrace();
- session.disconnect();
- }
- }
-
- /**
- * Queues the buffer until more data has been received.
- * @param data The data that has been read already.
- */
- public void queueBuffer(int...data) {
- ByteBuffer queue = ByteBuffer.allocate(data.length + buffer.remaining() + 100_000);
- for (int value : data) {
- queue.put((byte) value);
- }
- queue.put(buffer);
- session.setReadingQueue(queue);
- }
-
- /**
- * Reads the data from the buffer.
- * @param session The session.
- * @param buffer The buffer to read from.
- */
- public abstract void read(IoSession session, ByteBuffer buffer);
-
-}
diff --git a/Management-Server/src/main/java/ms/net/IoSession.java b/Management-Server/src/main/java/ms/net/IoSession.java
deleted file mode 100644
index c14a4a641..000000000
--- a/Management-Server/src/main/java/ms/net/IoSession.java
+++ /dev/null
@@ -1,354 +0,0 @@
-package ms.net;
-
-import java.io.IOException;
-import java.nio.ByteBuffer;
-import java.nio.channels.SelectionKey;
-import java.nio.channels.SocketChannel;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.locks.Lock;
-import java.util.concurrent.locks.ReentrantLock;
-
-import ms.ServerConstants;
-import ms.net.producer.HSEventProducer;
-import ms.world.GameServer;
-
-/**
- * Represents a connected I/O session.
- * @author Emperor
- *
- */
-public class IoSession {
-
- /**
- * The handshake event producer.
- */
- private static final EventProducer HANDSHAKE_PRODUCER = new HSEventProducer();
-
- /**
- * The selection key.
- */
- private final SelectionKey key;
-
- /**
- * The executor service.
- */
- private final ExecutorService service;
-
- /**
- * The event producer.
- */
- private EventProducer producer = HANDSHAKE_PRODUCER;
-
- /**
- * The currently queued writing data.
- */
- private List writingQueue = new ArrayList<>(20);
-
- /**
- * The currently queued reading data.
- */
- private ByteBuffer readingQueue;
-
- /**
- * The writing lock.
- */
- private final Lock writingLock = new ReentrantLock();
-
- /**
- * The name hash.
- */
- private int nameHash;
-
- /**
- * The server key.
- */
- private long serverKey;
-
- /**
- * The JS-5 encryption value.
- */
- private int js5Encryption;
-
- /**
- * If the session is active.
- */
- private boolean active = true;
-
- /**
- * The last ping time stamp.
- */
- private long lastPing;
-
- /**
- * The address.
- */
- private final String address;
-
- /**
- * The game server object for this session.
- */
- private GameServer gameServer;
-
- /**
- * Constructs a new {@code IoSession}.
- * @param key The selection key.
- * @param service The executor service.
- */
- public IoSession(SelectionKey key, ExecutorService service) {
- this.key = key;
- this.service = service;
- String address = getRemoteAddress().replaceAll("/", "").split(":")[0];
- if (address.equals("127.0.0.1")) {
- address = ServerConstants.HOST_ADDRESS;
- }
- this.address = address;
- }
-
- /**
- * Fires a write event created using the current event producer.
- * @param context The event context.
- */
- public void write(Object context) {
- write(context, false);
- }
-
- /**
- * Fires a write event created using the current event producer.
- * @param context The event context.
- * @param instant If the event should be instantly executed on this thread.
- */
- public void write(Object context, boolean instant) {
- if (context == null) {
- throw new IllegalStateException("Invalid writing context!");
- }
- if (instant) {
- producer.produceWriter(this, context).run();
- return;
- }
- service.execute(producer.produceWriter(this, context));
- }
-
- /**
- * Sends the packet data (without write event encoding).
- * @param buffer The buffer.
- */
- public void queue(ByteBuffer buffer) {
- try {
- if(writingLock.tryLock(1000L, TimeUnit.MILLISECONDS)){
- writingQueue.add(buffer);
- writingLock.unlock();
- write();
- }
- } catch (Exception e){
- e.printStackTrace();
- writingLock.unlock();
- }
- }
-
- /**
- * Handles the writing of all buffers in the queue.
- */
- public void write() {
-
- if (!key.isValid()) {
- disconnect();
- return;
- }
- writingLock.lock();
- SocketChannel channel = (SocketChannel) key.channel();
- try {
- while (!writingQueue.isEmpty()) {
- ByteBuffer buffer = writingQueue.get(0);
- channel.write(buffer);
- if (buffer.hasRemaining()) {
- key.interestOps(key.interestOps() | SelectionKey.OP_WRITE);
- break;
- }
- writingQueue.remove(0);
- }
- } catch (IOException e) {
- e.printStackTrace();
- disconnect();
- } finally {
- writingLock.unlock();
- }
- }
-
- /**
- * Disconnects the session.
- */
- public void disconnect() {
- try {
- if (!active) {
- return;
- }
- active = false;
- key.cancel();
- SocketChannel channel = (SocketChannel) key.channel();
- channel.socket().close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- /**
- * Gets the IP-address (without the port).
- * @return The address.
- */
- public String getAddress() {
- return address;
- }
-
- /**
- * Gets the remote address of this session.
- * @return The remote address, as a String.
- */
- public String getRemoteAddress() {
- try {
- return ((SocketChannel) key.channel()).getRemoteAddress().toString();
- } catch (IOException e) {
- throw new IllegalStateException(e);
- }
- }
-
- /**
- * Gets the current event producer.
- * @return The producer.
- */
- public EventProducer getProducer() {
- return producer;
- }
-
- /**
- * Sets the event producer.
- * @param producer The producer to set.
- */
- public void setProducer(EventProducer producer) {
- this.producer = producer;
- }
-
- /**
- * Gets the queued reading data.
- * @return The readingQueue.
- */
- public ByteBuffer getReadingQueue() {
- synchronized (this) {
- return readingQueue;
- }
- }
-
- /**
- * Queues reading data.
- * @param readingQueue The readingQueue to set.
- */
- public void setReadingQueue(ByteBuffer readingQueue) {
- synchronized (this) {
- this.readingQueue = readingQueue;
- }
- }
-
- /**
- * Gets the writing lock.
- * @return The writing lock.
- */
- public Lock getWritingLock() {
- return writingLock;
- }
-
- /**
- * Gets the selection key.
- * @return The selection key.
- */
- public SelectionKey getKey() {
- return key;
- }
-
- /**
- * @return The active.
- */
- public boolean isActive() {
- return active;
- }
-
- /**
- * @return The js5Encryption.
- */
- public int getJs5Encryption() {
- return js5Encryption;
- }
-
- /**
- * @param js5Encryption The js5Encryption to set.
- */
- public void setJs5Encryption(int js5Encryption) {
- this.js5Encryption = js5Encryption;
- }
-
- /**
- * Gets the lastPing.
- * @return The lastPing.
- */
- public long getLastPing() {
- return lastPing;
- }
-
- /**
- * Sets the lastPing.
- * @param lastPing The lastPing to set.
- */
- public void setLastPing(long lastPing) {
- this.lastPing = lastPing;
- }
-
- /**
- * Gets the nameHash.
- * @return The nameHash.
- */
- public int getNameHash() {
- return nameHash;
- }
-
- /**
- * Sets the nameHash.
- * @param nameHash The nameHash to set.
- */
- public void setNameHash(int nameHash) {
- this.nameHash = nameHash;
- }
-
- /**
- * Gets the serverKey.
- * @return The serverKey.
- */
- public long getServerKey() {
- return serverKey;
- }
-
- /**
- * Sets the serverKey.
- * @param serverKey The serverKey to set.
- */
- public void setServerKey(long serverKey) {
- this.serverKey = serverKey;
- }
-
- /**
- * Gets the gameServer value.
- * @return The gameServer.
- */
- public GameServer getGameServer() {
- return gameServer;
- }
-
- /**
- * Sets the gameServer value.
- * @param gameServer The gameServer to set.
- */
- public void setGameServer(GameServer gameServer) {
- this.gameServer = gameServer;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/IoWriteEvent.java b/Management-Server/src/main/java/ms/net/IoWriteEvent.java
deleted file mode 100644
index 5ed73d653..000000000
--- a/Management-Server/src/main/java/ms/net/IoWriteEvent.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package ms.net;
-
-import java.nio.channels.CancelledKeyException;
-
-/**
- * Handles a writing event.
- * @author Emperor
- */
-public abstract class IoWriteEvent implements Runnable {
-
- /**
- * The I/O session.
- */
- private final IoSession session;
-
- /**
- * The buffer.
- */
- private final Object context;
-
- /**
- * Constructs a new {@code IoWriteEvent}.
- * @param session The session.
- * @param context The write event context.
- */
- public IoWriteEvent(IoSession session, Object context) {
- this.session = session;
- this.context = context;
- }
-
- @Override
- public void run() {
- try {
- write(session, context);
- } catch (Throwable t) {
- if (!(t instanceof CancelledKeyException)) {
- t.printStackTrace();
- }
- session.disconnect();
- }
- }
-
- /**
- * Writes the data.
- * @param session The session.
- * @param context The write event context.
- */
- public abstract void write(IoSession session, Object context);
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/NioReactor.java b/Management-Server/src/main/java/ms/net/NioReactor.java
deleted file mode 100644
index 21a17ec65..000000000
--- a/Management-Server/src/main/java/ms/net/NioReactor.java
+++ /dev/null
@@ -1,134 +0,0 @@
-package ms.net;
-
-import ms.Management;
-
-import java.io.IOException;
-import java.net.InetSocketAddress;
-import java.nio.channels.SelectionKey;
-import java.nio.channels.Selector;
-import java.nio.channels.ServerSocketChannel;
-import java.util.Iterator;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-
-/**
- * Handles (NIO-based) networking events using the reactor pattern.
- * @author Emperor
- */
-public final class NioReactor implements Runnable {
-
- /**
- * The executor service.
- */
- private final ExecutorService service;
-
- /**
- * The selector
- */
- private Selector selector;
-
- /**
- * The socket channel.
- */
- private ServerSocketChannel channel;
-
- /**
- * The I/O event handling instance.
- */
- private final IoEventHandler eventHandler;
-
- /**
- * If the reactor is running.
- */
- private boolean running;
-
- /**
- * Constructs a new {@code NioReactor}.
- * @param poolSize The pool size.
- */
- private NioReactor(int poolSize) {
- this.service = Executors.newSingleThreadScheduledExecutor();
- this.eventHandler = new IoEventHandler(Executors.newFixedThreadPool(poolSize));
- }
-
- /**
- * Creates and configures a new {@code NioReactor} with a pool size of 1.
- * @param port The port.
- * @return The {@code NioReactor} {@code Object}.
- * @throws IOException When an I/O exception occurs.
- */
- public static NioReactor configure(int port) throws IOException {
- return configure(port, 1);
- }
-
- /**
- * Creates and configures a new {@code NioReactor}.
- * @param port The port.
- * @param poolSize The amount of threads in the thread pool.
- * @return The {@code NioReactor} {@code Object}.
- * @throws IOException When an I/O exception occurs.
- */
- public static NioReactor configure(int port, int poolSize) throws IOException {
- NioReactor reactor = new NioReactor(poolSize);
- reactor.channel = ServerSocketChannel.open();
- reactor.selector = Selector.open();
- reactor.channel.bind(new InetSocketAddress(port));
- reactor.channel.configureBlocking(false);
- reactor.channel.register(reactor.selector, SelectionKey.OP_ACCEPT);
- return reactor;
- }
-
- /**
- * Starts the reactor.
- */
- public void start() {
- running = true;
- service.execute(this);
- }
-
- @Override
- public void run() {
- while (running && Management.active) {
- try {
- if(selector.select() > 0){
- Iterator keys = selector.selectedKeys().iterator();
- while (keys.hasNext()) {
- SelectionKey key = keys.next();
- keys.remove();
- try {
- if(key == null) continue;
- if (!key.isValid() || !key.channel().isOpen()) {
- key.cancel();
- continue;
- }
- if (key.isAcceptable()) {
- eventHandler.accept(key, selector);
- }
- if (key.isReadable()) {
- eventHandler.read(key);
- }
- else if (key.isWritable()) {
- eventHandler.write(key);
- }
- } catch (Throwable t) {
- eventHandler.disconnect(key, t);
- }
- }
- } else {
- System.out.println("SLEEPING");
- Thread.sleep(200);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
-
- /**
- * Terminates the reactor (once it's done processing current I/O events).
- */
- public void terminate() {
- running = false;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/event/HSReadEvent.java b/Management-Server/src/main/java/ms/net/event/HSReadEvent.java
deleted file mode 100644
index 9a76cca2a..000000000
--- a/Management-Server/src/main/java/ms/net/event/HSReadEvent.java
+++ /dev/null
@@ -1,128 +0,0 @@
-package ms.net.event;
-
-import java.nio.ByteBuffer;
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.Statement;
-import java.util.Locale;
-
-import ms.Management;
-import ms.net.IoReadEvent;
-import ms.net.IoSession;
-import ms.net.packet.IoBuffer;
-import ms.system.mysql.SQLManager;
-import ms.system.util.ManagementConstants;
-import ms.world.PlayerSession;
-import ms.world.WorldDatabase;
-import ms.system.util.ByteBufferUtils;
-
-/**
- * Handles handshake read events.
- * @author Emperor
- */
-public final class HSReadEvent extends IoReadEvent {
-
- /**
- * Constructs a new {@code HSReadEvent}.
- * @param session The session.
- * @param buffer The buffer.
- */
- public HSReadEvent(IoSession session, ByteBuffer buffer) {
- super(session, buffer);
- }
-
- @Override
- public void read(IoSession session, ByteBuffer buffer) {
- int opcode = buffer.get() & 0xFF;
- switch (opcode) {
- case 88:
- String password = ByteBufferUtils.getString(buffer);
- if (!password.equals(ManagementConstants.getSECRET_KEY())) {
- System.out.println("Password mismatch (attempt=" + password + ")!");
- session.disconnect();
- break;
- }
- session.write(opcode);
- break;
- case 255: // World list
- int updateStamp = buffer.getInt();
- WorldDatabase.sendUpdate(session, updateStamp);
- break;
- case 35:
- IoBuffer buf = new IoBuffer();
- String username = ByteBufferUtils.getString(buffer).toLowerCase();
- password = ByteBufferUtils.getString(buffer);
- if (!password.equals(ManagementConstants.getSECRET_KEY())){
- System.out.println("Password mismatch (attempt=" + password + ")!");
- buf.put(1);
- ByteBuffer buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- return;
- }
-
- PlayerSession player = WorldDatabase.getPlayer(username);
- if (player == null) {
- System.out.println("Player " + username + " was not registered!");
- buf.put(2);
- ByteBuffer buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- return;
- }
- buf.put(0);
- ByteBuffer buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- player.getWorld().getPlayers().remove(username);
- player.setWorldId(0);
- break;
- case 36:
- buf = new IoBuffer();
- username = ByteBufferUtils.getString(buffer).toLowerCase();
- password = ByteBufferUtils.getString(buffer);
- int credits = buffer.getInt();
- if (!password.equals(ManagementConstants.getSECRET_KEY())){
- System.out.println("Password mismatch (attempt=" + password + ")!");
- buf.put(1);
- buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- return;
- }
- try (Connection con = SQLManager.getConnection()) {
- Statement stmt = con.createStatement();
- ResultSet rs = stmt.executeQuery("SELECT credits FROM members WHERE username = \"" + username + "\";");
- int original;
- if (rs.next()) original = rs.getInt(1);
- else {
- buf.put(2);
- buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- return;
- }
- stmt.execute("UPDATE members SET credits = " + (original + credits) + " WHERE username = \"" + username + "\";");
- buf.put(0);
- buf.putInt(original + credits);
- buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- } catch (Exception e) {
- buf.put(3);
- buf.putString(e.toString());
- buff = buf.toByteBuffer();
- buff.flip();
- session.queue(buff);
- e.printStackTrace();
- }
- break;
-
- default:
- System.err.println("Unhandled handshake opcode: " + opcode + ".");
- session.disconnect();
- break;
- }
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/event/HSWriteEvent.java b/Management-Server/src/main/java/ms/net/event/HSWriteEvent.java
deleted file mode 100644
index 2376b2a90..000000000
--- a/Management-Server/src/main/java/ms/net/event/HSWriteEvent.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package ms.net.event;
-
-import java.nio.ByteBuffer;
-
-import ms.net.IoSession;
-import ms.net.IoWriteEvent;
-import ms.net.producer.RegistryEventProducer;
-
-/**
- * Handles Handshake write events.
- * @author Emperor
- */
-public final class HSWriteEvent extends IoWriteEvent {
-
- /**
- * The login event producer.
- */
- private static final RegistryEventProducer REGISTRY_PRODUCER = new RegistryEventProducer();
-
- /**
- * Constructs a new {@code HSWriteEvent} {@code Object}.
- * @param session The session.
- * @param context The context.
- */
- public HSWriteEvent(IoSession session, Object context) {
- super(session, context);
- }
-
- @Override
- public void write(IoSession session, Object context) {
- ByteBuffer buffer = ByteBuffer.allocate(9);
- buffer.put((byte) 14);
- session.setProducer( REGISTRY_PRODUCER);
- buffer.flip();
- session.queue(buffer);
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/event/PacketReadEvent.java b/Management-Server/src/main/java/ms/net/event/PacketReadEvent.java
deleted file mode 100644
index 227751b2f..000000000
--- a/Management-Server/src/main/java/ms/net/event/PacketReadEvent.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package ms.net.event;
-
-import java.nio.ByteBuffer;
-
-import ms.net.IoReadEvent;
-import ms.net.IoSession;
-import ms.net.packet.WorldPacketRepository;
-
-/**
- * Handles world packet reading events.
- * @author Emperor
- *
- */
-public final class PacketReadEvent extends IoReadEvent {
-
- /**
- * The packet sizes.
- */
- private static final int[] PACKET_SIZE = {
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1
- };
-
- /**
- * Constructs a new {@code PacketReadEvent} {@code Object}.
- * @param session The I/O session.
- * @param buffer The buffer to read from.
- */
- public PacketReadEvent(IoSession session, ByteBuffer buffer) {
- super(session, buffer);
- }
-
- @Override
- public void read(IoSession session, ByteBuffer buffer) {
- int last = -1;
- while (buffer.hasRemaining()) {
- int opcode = buffer.get() & 0xFF;
- if (opcode >= PACKET_SIZE.length) {
- break;
- }
- int header = PACKET_SIZE[opcode];
- int size = header;
- if (header < 0) {
- size = getPacketSize(buffer, opcode, header, last);
- }
- if (size == -1) {
- break;
- }
- if (buffer.remaining() < size) {
- switch (header) {
- case -2:
- queueBuffer(opcode, size >> 8, size);
- break;
- case -1:
- queueBuffer(opcode, size);
- break;
- default:
- queueBuffer(opcode);
- break;
- }
- break;
- }
- byte[] data = new byte[size];
- buffer.get(data);
- last = opcode;
- try {
- WorldPacketRepository.handleIncoming(session, opcode, ByteBuffer.wrap(data));
- } catch (Throwable t) {
- t.printStackTrace();
- }
- }
- }
-
- /**
- * Gets the packet size for the given opcode.
- * @param buffer The buffer.
- * @param opcode The opcode.
- * @param header The packet header.
- * @param last The last opcode.
- * @return The packet size.
- */
- private int getPacketSize(ByteBuffer buffer, int opcode, int header, int last) {
- if (header == -1) {
- if (buffer.remaining() < 1) {
- queueBuffer(opcode);
- return -1;
- }
- return buffer.get() & 0xFF;
- }
- if (header == -2) {
- if (buffer.remaining() < 2) {
- queueBuffer(opcode);
- return -1;
- }
- return buffer.getShort() & 0xFFFF;
- }
- System.err.println("Invalid packet [opcode=" + opcode + ", last=" + last + ", queued=" + usedQueuedBuffer + "]!");
- return -1;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/event/PacketWriteEvent.java b/Management-Server/src/main/java/ms/net/event/PacketWriteEvent.java
deleted file mode 100644
index 3ffdeb32f..000000000
--- a/Management-Server/src/main/java/ms/net/event/PacketWriteEvent.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package ms.net.event;
-
-import java.nio.ByteBuffer;
-
-import ms.net.IoSession;
-import ms.net.IoWriteEvent;
-import ms.net.packet.IoBuffer;
-
-/**
- * Handles world packet writing events.
- * @author Emperor
- *
- */
-public final class PacketWriteEvent extends IoWriteEvent {
-
-
- /**
- * Constructs a new {@code PacketWriteEvent} {@code Object}.
- * @param session The I/O session.
- * @param context The packet context.
- */
- public PacketWriteEvent(IoSession session, Object context) {
- super(session, context);
- }
-
- @Override
- public void write(IoSession session, Object context) {
- IoBuffer b = (IoBuffer) context;
- int size = b.toByteBuffer().position();
- ByteBuffer buffer = ByteBuffer.allocate(1 + size + b.getHeader().ordinal());
- buffer.put((byte) b.opcode());
- switch (b.getHeader()) {
- case NORMAL:
- break;
- case BYTE:
- buffer.put((byte) size);
- break;
- case SHORT:
- buffer.putShort((short) size);
- break;
- }
- buffer.put((ByteBuffer) b.toByteBuffer().flip());
- session.queue((ByteBuffer) buffer.flip());
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/event/RegistryReadEvent.java b/Management-Server/src/main/java/ms/net/event/RegistryReadEvent.java
deleted file mode 100644
index f906ab213..000000000
--- a/Management-Server/src/main/java/ms/net/event/RegistryReadEvent.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package ms.net.event;
-
-import java.nio.ByteBuffer;
-
-import ms.ServerConstants;
-import ms.net.IoReadEvent;
-import ms.net.IoSession;
-import ms.world.WorldDatabase;
-import ms.system.util.ByteBufferUtils;
-import ms.world.info.CountryFlag;
-import ms.world.info.WorldInfo;
-
-/**
- * Handles world registry read events.
- * @author Emperor
- *
- */
-public final class RegistryReadEvent extends IoReadEvent {
-
- /**
- * The string check.
- */
- private static final String CHECK = "12x4578f5g45hrdjiofed59898";
- //kratos = 666x14x88x28shhhwpwwb&h
- //12x4578f5g45hrdjiofed59898
-
- /**
- * Constructs a new {@code RegistryReadEvent} {@code Object}.
- * @param session The session.
- * @param buffer The buffer to read.
- */
- public RegistryReadEvent(IoSession session, ByteBuffer buffer) {
- super(session, buffer);
- }
-
- @Override
- public void read(IoSession session, ByteBuffer buffer) {
- int worldId = buffer.get() & 0xFF;
- if (buffer.remaining() < 2) {
- queueBuffer(worldId);
- return;
- }
- int revision = buffer.getInt();
- int country = buffer.get() & 0xFF;
- boolean members = buffer.get() == 1;
- boolean pvp = buffer.get() == 1;
- boolean quickChat = buffer.get() == 1;
- boolean lootshare = buffer.get() == 1;
- String activity = ByteBufferUtils.getString(buffer);
- for (int i = 0; i < CHECK.length(); i++) {
- if ((char) buffer.get() != CHECK.charAt(i)) {
- session.write(3);
- return;
- }
- }
- if (worldId >= ServerConstants.WORLD_LIMIT) {
- session.write(0);
- return;
- }
- if (WorldDatabase.isActive(worldId)) {
- session.write(2);
- return;
- }
- try {
- WorldInfo info = new WorldInfo(worldId, session.getAddress(), revision, CountryFlag.values()[country], activity, members, pvp, quickChat, lootshare);
- WorldDatabase.register(info).configure(session);
- session.write(1);
- } catch (Throwable t) {
- t.printStackTrace();
- session.write(3);
- }
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/event/RegistryWriteEvent.java b/Management-Server/src/main/java/ms/net/event/RegistryWriteEvent.java
deleted file mode 100644
index 0e75aea91..000000000
--- a/Management-Server/src/main/java/ms/net/event/RegistryWriteEvent.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package ms.net.event;
-
-import java.nio.ByteBuffer;
-
-import ms.net.EventProducer;
-import ms.net.IoSession;
-import ms.net.IoWriteEvent;
-import ms.net.producer.PacketEventProducer;
-
-/**
- * Handles game world registry writing events.
- * @author Emperor
- *
- */
-public final class RegistryWriteEvent extends IoWriteEvent {
-
- /**
- * The event producer.
- */
- public static final EventProducer PRODUCER = new PacketEventProducer();
-
- /**
- * Constructs a new {@code RegistryWriteEvent} {@code Object}.
- * @param session The I/O session.
- * @param context The writing context.
- */
- public RegistryWriteEvent(IoSession session, Object context) {
- super(session, context);
- }
-
- @Override
- public void write(IoSession session, Object context) {
- ByteBuffer buffer = ByteBuffer.allocate(1);
- int opcode = (int) context;
- buffer.put((byte) opcode);
- buffer.flip();
- if (opcode == 1) {
- session.setProducer(PRODUCER);
- }
- session.queue(buffer);
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/packet/IoBuffer.java b/Management-Server/src/main/java/ms/net/packet/IoBuffer.java
deleted file mode 100644
index c35fb5ab6..000000000
--- a/Management-Server/src/main/java/ms/net/packet/IoBuffer.java
+++ /dev/null
@@ -1,666 +0,0 @@
-package ms.net.packet;
-
-import java.nio.ByteBuffer;
-import java.nio.charset.StandardCharsets;
-
-import ms.system.util.ByteBufferUtils;
-
-/**
- * Represents the buffer used for reading/writing packets.
- * @author Emperor
- *
- */
-public class IoBuffer {
-
- /**
- * The bit masks.
- */
- private static final int[] BIT_MASK = new int[32];
-
- /**
- * The packet size.
- */
- private int packetSize;
-
- /**
- * The opcode.
- */
- private final int opcode;
-
- /**
- * The packet header.
- */
- private final PacketHeader header;
-
- /**
- * The byte buffer.
- */
- private ByteBuffer buf;
-
- /**
- * The bit position.
- */
- private int bitPosition = 0;
-
- /**
- * Constructs a new {@code IoBuffer} {@code Object}.
- */
- public IoBuffer() {
- this(-1, PacketHeader.NORMAL, ByteBuffer.allocate(2048));
- }
-
- /**
- * Constructs a new {@code IoBuffer} {@code Object}.
- * @param opcode The opcode.
- */
- public IoBuffer(int opcode) {
- this(opcode, PacketHeader.NORMAL, ByteBuffer.allocate(2048));
- }
-
- /**
- * Constructs a new {@code IoBuffer} {@code Object}.
- * @param opcode The opcode.
- * @param header The packet header.
- */
- public IoBuffer(int opcode, PacketHeader header) {
- this(opcode, header, ByteBuffer.allocate((1 << 16) + 1));
- }
-
- /**
- * Constructs a new {@code IoBuffer} {@code Object}.
- * @param opcode The opcode.
- * @param header The packet header.
- * @param buf The byte buffer.
- */
- public IoBuffer(int opcode, PacketHeader header, ByteBuffer buf) {
- this.opcode = opcode;
- this.header = header;
- this.buf = buf;
- }
-
- static {
- for (int i = 0; i < 32; i++) {
- BIT_MASK[i] = (1 << i) - 1;
- }
- }
-
- /**
- *
- * @return
- */
- public IoBuffer clear() {
- buf.clear();
- bitPosition = 0;
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer put(int val) {
- buf.put((byte) val);
- return this;
- }
-
- /**
- *
- * @param datas
- * @param offset
- * @param len
- * @return
- */
- public IoBuffer putBytes(byte[] datas, int offset, int len) {
- for (int i = offset; i < len; i++) {
- put(datas[i]);
- }
- return this;
- }
-
- public final void getBytes(byte data[], int off, int len) {
- for (int k = off; k < len + off; k++) {
- data[k] = data[off++];
- }
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putA(int val) {
- buf.put((byte) (val + 128));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putC(int val) {
- buf.put((byte) -val);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putS(int val) {
- buf.put((byte) (128 - val));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putTri(int val) {
- buf.put((byte) (val >> 16));
- buf.put((byte) (val >> 8));
- buf.put((byte) val);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putShort(int val) {
- buf.putShort((short) val);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putLEShort(int val) {
- buf.put((byte) val);
- buf.put((byte) (val >> 8));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putShortA(int val) {
- buf.put((byte) (val >> 8));
- buf.put((byte) (val + 128));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putLEShortA(int val) {
- buf.put((byte) (val + 128));
- buf.put((byte) (val >> 8));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putInt(int val) {
- buf.putInt(val);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putLEInt(int val) {
- buf.put((byte) val);
- buf.put((byte) (val >> 8));
- buf.put((byte) (val >> 16));
- buf.put((byte) (val >> 24));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putIntA(int val) {
- buf.put((byte) (val >> 8));
- buf.put((byte) val);
- buf.put((byte) (val >> 24));
- buf.put((byte) (val >> 16));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putIntB(int val) {
- buf.put((byte) (val >> 16));
- buf.put((byte) (val >> 24));
- buf.put((byte) val);
- buf.put((byte) (val >> 8));
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putLong(long val) {
- buf.putLong(val);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putSmart(int val) {
- if (val > Byte.MAX_VALUE) {
- buf.putShort((short) (val + 32768));
- } else {
- buf.put((byte) val);
- }
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putIntSmart(int val) {
- if (val > Short.MAX_VALUE) {
- buf.putInt(val + 32768);
- } else {
- buf.putShort((short) val);
- }
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putString(String val) {
- buf.put(val.getBytes(StandardCharsets.UTF_8));
- buf.put((byte) 0);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putJagString(String val) {
- buf.put((byte) 0);
- buf.put(val.getBytes(StandardCharsets.UTF_8));
- buf.put((byte) 0);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer putJagString2(String val) {
- byte[] packed = new byte[256];
- int length = ByteBufferUtils.packGJString2(0, packed, val);
- buf.put((byte) 0).put(packed, 0, length).put((byte) 0);
- return this;
- }
-
- /**
- *
- * @param val
- * @return
- */
- public IoBuffer put(byte[] val) {
- buf.put(val);
- return this;
- }
-
- /**
- * Puts a byte array as byte A in reverse.
- * @param data The data to put.
- * @param start The start index.
- * @param offset The offset.
- */
- public void putReverseA(byte[] data, int start, int offset) {
- for (int i = offset + start; i >= start; i--) {
- putA(data[i]);
- }
- }
-
- /**
- *
- * @param numBits
- * @param value
- * @return
- */
- public IoBuffer putBits(int numBits, int value) {
- int bytePos = getBitPosition() >> 3;
- int bitOffset = 8 - (getBitPosition() & 7);
- bitPosition += numBits;
- for (; numBits > bitOffset; bitOffset = 8) {
- byte b = buf.get(bytePos);
- buf.put(bytePos, b &= ~BIT_MASK[bitOffset]);
- buf.put(bytePos++, b |= value >> numBits - bitOffset & BIT_MASK[bitOffset]);
- numBits -= bitOffset;
- }
- byte b = buf.get(bytePos);
- if (numBits == bitOffset) {
- buf.put(bytePos, b &= ~BIT_MASK[bitOffset]);
- buf.put(bytePos, b |= value & BIT_MASK[bitOffset]);
- } else {
- buf.put(bytePos, b &= ~(BIT_MASK[numBits] << bitOffset - numBits));
- buf.put(bytePos, b |= (value & BIT_MASK[numBits]) << bitOffset - numBits);
- }
- return this;
- }
-
- /**
- *
- * @param buffer
- * @return
- */
- public IoBuffer put(IoBuffer buffer) {
- buffer.toByteBuffer().flip();
- buf.put(buffer.toByteBuffer());
- return this;
- }
-
- /**
- *
- * @param buffer
- * @return
- */
- public IoBuffer putA(IoBuffer buffer) {
- buffer.toByteBuffer().flip();
- while (buffer.toByteBuffer().hasRemaining()) {
- putA(buffer.toByteBuffer().get());
- }
- return this;
- }
-
- /**
- *
- * @param buffer
- * @return
- */
- public IoBuffer put(ByteBuffer buffer) {
- buf.put(buffer);
- return this;
- }
-
- /**
- *
- * @return
- */
- public IoBuffer setBitAccess() {
- bitPosition = buf.position() * 8;
- return this;
- }
-
- /**
- *
- * @return
- */
- public IoBuffer setByteAccess() {
- buf.position((getBitPosition() + 7) / 8);
- return this;
- }
-
- /**
- *
- * @return
- */
- public int get() {
- return buf.get();
- }
-
- /**
- *
- * @return
- */
- public int getA() {
- return (buf.get() & 0xFF) - 128;
- }
-
- /**
- *
- * @return
- */
- public int getC() {
- return -buf.get();
- }
-
- /**
- *
- * @return
- */
- public int getS() {
- return 128 - buf.get();
- }
-
- /**
- *
- * @return
- */
- public int getTri() {
- return ((buf.get() << 16) & 0xFF) | ((buf.get() << 8) & 0xFF) | (buf.get() & 0xFF);
- }
-
- /**
- *
- * @return
- */
- public int getShort() {
- return buf.getShort();
- }
-
- /**
- *
- * @return
- */
- public int getLEShort() {
- return (buf.get() & 0xFF) | ((buf.get() & 0xFF) << 8);
- }
-
- /**
- *
- * @return
- */
- public int getShortA() {
- return ((buf.get() & 0xFF) << 8) | (buf.get() - 128 & 0xFF);
- }
-
- /**
- *
- * @return
- */
- public int getLEShortA() {
- return (buf.get() - 128 & 0xFF) | ((buf.get() & 0xFF) << 8);
- }
-
- /**
- *
- * @return
- */
- public int getInt() {
- return buf.getInt();
- }
-
- /**
- *
- * @return
- */
- public int getLEInt() {
- return (buf.get() & 0xFF) + ((buf.get() & 0xFF) << 8)
- + ((buf.get() & 0xFF) << 16) + ((buf.get() & 0xFF) << 24);
- }
-
- /**
- *
- * @return
- */
- public int getIntA() {
- return ((buf.get() & 0xFF) << 8) + (buf.get() & 0xFF)+ ((buf.get() & 0xFF) << 24) + ((buf.get() & 0xFF) << 16);
- }
-
- /**
- *
- * @return
- */
- public int getIntB() {
- return ((buf.get() & 0xFF) << 16) + ((buf.get() & 0xFF) << 24)
- + (buf.get() & 0xFF) + ((buf.get() & 0xFF) << 8);
- }
-
- /**
- *
- * @return
- */
- public long getLongL() {
- long first = getIntB();
- long second = getIntB();
- if (second < 0)
- second = second & 0xffffffffL;
- return (first << 32) + second;
- }
-
- /**
- *
- * @return
- */
- public long getLong() {
- return buf.getLong();
- }
-
- /**
- *
- * @return
- */
- public int getIntSmart() {
- int peek = buf.getShort(buf.position());
- if (peek <= Short.MAX_VALUE) {
- return buf.getShort() & 0xFFFF;
- }
- return buf.getInt() - 32768;
- }
-
- /**
- *
- * @return
- */
- public String getString() {
- return ByteBufferUtils.getString(buf);
- }
-
- /**
- *
- * @return
- */
- public String getJagString() {
- buf.get();
- return ByteBufferUtils.getString(buf);
- }
-
- /**
- *
- * @param is
- * @param offset
- * @param length
- * @return
- */
- public IoBuffer getReverseA(byte[] is, int offset, int length) {
- for (int i = (offset + length - 1); i >= offset; i--) {
- is[i] = (byte) (buf.get() - 128);
- }
- return this;
- }
-
- /**
- *
- * @return
- */
- public ByteBuffer toByteBuffer() {
- return buf;
- }
-
- /**
- *
- * @return
- */
- public int opcode() {
- return opcode;
- }
-
- /**
- *
- * @return
- */
- public int readableBytes() {
- return buf.capacity() - buf.remaining();
- }
-
- /**
- *
- * @return
- */
- public PacketHeader getHeader() {
- return header;
- }
-
- /**
- *
- * @return
- */
- public byte[] array() {
- return buf.array();
- }
-
- /**
- * @return the packetSize.
- */
- public int getPacketSize() {
- return packetSize;
- }
-
- /**
- * @param packetSize the packetSize to set.
- */
- public void setPacketSize(int packetSize) {
- this.packetSize = packetSize;
- }
-
- /**
- * Gets the bitPosition.
- * @return The bitPosition.
- */
- public int getBitPosition() {
- return bitPosition;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/packet/PacketHeader.kt b/Management-Server/src/main/java/ms/net/packet/PacketHeader.kt
deleted file mode 100644
index ef293f9dc..000000000
--- a/Management-Server/src/main/java/ms/net/packet/PacketHeader.kt
+++ /dev/null
@@ -1,23 +0,0 @@
-package ms.net.packet
-
-/**
- * Represents the types of packet headers.
- * @author Emperor
- */
-enum class PacketHeader {
-
- /**
- * The normal packet header.
- */
- NORMAL,
-
- /**
- * The byte packet header.
- */
- BYTE,
-
- /**
- * The short packet header.
- */
- SHORT
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/packet/WorldPacketRepository.kt b/Management-Server/src/main/java/ms/net/packet/WorldPacketRepository.kt
deleted file mode 100644
index b72f731e1..000000000
--- a/Management-Server/src/main/java/ms/net/packet/WorldPacketRepository.kt
+++ /dev/null
@@ -1,555 +0,0 @@
-package ms.net.packet
-
-import ms.net.IoSession
-import ms.system.PunishmentStorage
-import ms.system.communication.ClanRank
-import ms.system.communication.ClanRepository
-import ms.system.communication.CommunicationInfo
-import ms.system.util.ManagementConstants.WORLD_HOP_DELAY
-import ms.world.GameServer
-import ms.world.PlayerSession
-import ms.world.WorldDatabase
-import ms.world.info.Response
-import ms.world.info.UIDInfo
-import java.nio.ByteBuffer
-
-/**
- * Repository class for world packets.
- * @author Emperor
- */
-object WorldPacketRepository {
- /**
- * Sends the player registry response.
- * @param server The game server.
- * @param player The player session.
- * @param response The registry response.
- */
- @JvmStatic
- fun sendRegistryResponse(server: GameServer, player: PlayerSession, response: Response) {
- val buffer = IoBuffer(0, PacketHeader.BYTE)
- buffer.putString(player.username)
- buffer.put(response.opcode())//byte
- if (response == Response.MOVING_WORLD) {
- val delay: Long = WORLD_HOP_DELAY - (System.currentTimeMillis() - player.disconnectionTime)
- buffer.put((delay / 1000).toInt())
- }
- server.session.write(buffer)
- }
-
- /**
- * Sends a message to the player.
- * @param player The player.
- * @param message The message to send.
- */
- @JvmStatic
- fun sendPlayerMessage(player: PlayerSession?, message: String) {
- if (player == null) {
- return
- }
- val buffer = IoBuffer(2, PacketHeader.BYTE)
- buffer.putString(player.username)
- buffer.putString(message)
- player.world.session.write(buffer)
- }
-
- fun sendPlayerMessage(player: PlayerSession?, messages: Array) {
- if (player == null) {
- return
- }
- for (message in messages) sendPlayerMessage(player, message)
- }
-
- /**
- * Sends the contact information.
- * @param player The player.
- */
- fun sendContactInformation(player: PlayerSession) {
- val info = player.communication
- val buffer = IoBuffer(3, PacketHeader.SHORT)
- buffer.putString(player.username)
- buffer.put(info.contacts.size)
- for (contact in info.contacts.keys) {
- buffer.putString(contact)
- buffer.put(info.getRank(contact).ordinal)
- buffer.put(CommunicationInfo.getWorldId(player, contact))
- }
- buffer.put(info.blocked.size)
- for (contact in info.blocked) {
- buffer.putString(contact)
- }
- if (info.currentClan == null) {
- buffer.put(0)
- } else {
- buffer.put(1)
- buffer.putString(info.currentClan)
- }
- player.world.session.write(buffer)
- }
-
- /**
- * Sends a contact update.
- * @param player The player who's contacts we're changing.
- * @param contact The contact to update.
- * @param block If we're updating the blocked list.
- * @param remove If the contact should be removed.
- * @param worldId The world id of the contact.
- * @param rank The clan rank.
- */
- @JvmStatic
- fun sendContactUpdate(
- player: PlayerSession,
- contact: String,
- block: Boolean,
- remove: Boolean,
- worldId: Int,
- rank: ClanRank?
- ) {
- val buffer = IoBuffer(4, PacketHeader.BYTE)
- buffer.putString(player.username)
- buffer.putString(contact)
- buffer.put((if (block) 1 else 0))
- if (rank != null) {
- buffer.put((2 + rank.ordinal))
- } else {
- buffer.put((if (remove) 1 else 0))
- if (!block && !remove) {
- buffer.put(worldId)
- }
- }
- player.world.session.write(buffer)
- }
-
- /**
- * Sends a clan message.
- * @param player The player to send the message to.
- * @param p The player sending the message.
- * @param message The message to send.
- * @param type The message type.
- */
- @JvmStatic
- fun sendMessage(player: PlayerSession, p: PlayerSession, type: Int, message: String) {
- val buffer = IoBuffer(5, PacketHeader.BYTE)
- buffer.putString(player.username)
- buffer.putString(p.username)
- buffer.put(type)
- buffer.put(p.chatIcon)
- buffer.putString(message)
- println("Send Message: ${player.username} -> ${p.username} T: $type ICO: ${p.chatIcon} $message")
- player.world.session.write(buffer)
- }
-
- /**
- * Sends clan information to the server.
- * @param server The server.
- * @param clan The clan.
- */
- @JvmStatic
- fun sendClanInformation(server: GameServer, clan: ClanRepository) {
- val buffer = IoBuffer(6, PacketHeader.SHORT)
- buffer.putString(clan.owner.username)
- buffer.putString(clan.name)
- var length = clan.players.size
- if (length > ClanRepository.MAX_MEMBERS) {
- length = ClanRepository.MAX_MEMBERS
- }
- buffer.put(length)
- for (i in 0 until length) {
- val player = clan.players[i]
- buffer.putString(player.username)
- buffer.put(player.worldId)
- buffer.put(clan.getRank(player).ordinal)
- }
- buffer.put(clan.joinRequirement.ordinal)
- buffer.put(clan.kickRequirement.ordinal)
- buffer.put(clan.messageRequirement.ordinal)
- buffer.put(clan.lootRequirement.ordinal)
- server.session.write(buffer)
- }
-
- /**
- * Sends the leave clan packet.
- * @param player The player leaving the clan.
- */
- @JvmStatic
- fun sendLeaveClan(player: PlayerSession) {
- val buffer = IoBuffer(7, PacketHeader.BYTE)
- buffer.putString(player.username)
- player.world.session.write(buffer)
- }
-
- /**
- * Sends the player login notification.
- * @param server The server.
- * @param player The player logging in.
- * @param names The names.
- */
- @JvmStatic
- fun notifyPlayers(server: GameServer, player: PlayerSession, names: List) {
- val buffer = IoBuffer(8, PacketHeader.SHORT)
- buffer.putString(player.username)
- buffer.put(player.worldId)
- buffer.put(names.size)
- for (name in names) {
- buffer.putString(name)
- }
- server.session.write(buffer)
- }
-
- /**
- * Notifies the game server a player logged out.
- * @param server The game server to notify.
- * @param player The player logging out.
- */
- @JvmStatic
- fun notifyLogout(server: GameServer, player: PlayerSession) {
- val buffer = IoBuffer(9, PacketHeader.BYTE)
- buffer.putString(player.username)
- server.session.write(buffer)
- }
-
- /**
- * Sends the update countdown to the server.
- * @param server The server.
- * @param ticks The amount of ticks left.
- */
- @JvmStatic
- fun sendUpdate(server: GameServer, ticks: Int) {
- val buffer = IoBuffer(10)
- buffer.putInt(ticks)
- server.session.write(buffer)
- }
-
- /**
- * Sends the punishment update packet.
- * @param world The world to send the packet to.
- * @param key The punishment key.
- * @param type The punishment type.
- * @param duration The duration of the punishment.
- */
- @JvmStatic
- fun sendPunishUpdate(world: GameServer, key: String, type: Int, duration: Long) {
- val buffer = IoBuffer(11, PacketHeader.BYTE)
- buffer.putString(key)
- buffer.put(type)
- buffer.putLong(duration)
- world.session.write(buffer)
- }
-
- /**
- * Sends a configuration reload.
- * @param world the world.
- */
- @JvmStatic
- fun sendConfigReload(world: GameServer) {
- world.session.write(IoBuffer(15, PacketHeader.BYTE))
- }
-
- /**
- * Handles incoming world packets.
- * @param session The I/O session.
- * @param opcode The opcode.
- * @param b The buffer to read from.
- */
- @JvmStatic
- fun handleIncoming(session: IoSession, opcode: Int, b: ByteBuffer) {
- val buffer = IoBuffer(opcode, PacketHeader.NORMAL, b)
- val server = session.gameServer
- when (opcode) {
- 0 -> handlePlayerRegistration(server, buffer)
- 1 -> handlePlayerRemoval(server, buffer)
- 2 -> handlePunishment(server, buffer)
- 3 -> handleCommunicationRequest(server, buffer)
- 4, 5 -> handleContactUpdate(server, buffer, opcode == 5)
- 6 -> handleJoinClan(server, buffer)
- 7 -> handleClanRename(server, buffer)
- 8 -> handleClanSetting(server, buffer)
- 9 -> handleClanKick(server, buffer)
- 10 -> handleClanMessage(server, buffer)
- 11 -> handlePrivateMessage(server, buffer)
- 12 -> handleClanInfoRequest(server, buffer)
- 13 -> handleChatSetting(server, buffer)
- 14 -> handleInfoUpdate(server, buffer)
- else -> System.err.println("Handling incoming packet [opcode=" + opcode + ", size=" + b.limit() + "].")
- }
- }
-
- /**
- * Handles the info of a player update.
- * @param server the server.
- * @param buffer the buffer.
- */
- private fun handleInfoUpdate(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val player = server.players[username]
- if (player != null) {
- player.chatIcon = buffer.get()
- }
- }
-
- /**
- * Handles a player registration.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handlePlayerRegistration(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val password = buffer.string
- val ipAddress = buffer.string
- val macAddress = buffer.string
- val compName = buffer.string
- val serial = buffer.string
- val rights = buffer.int
- val chatIcon = buffer.get()
- val uid = UIDInfo(ipAddress, compName, macAddress, serial)
- val player = PlayerSession(username, password, UIDInfo(ipAddress, compName, macAddress, serial))
- if (WorldDatabase.isActivePlayer(username)) {
- sendRegistryResponse(server, player, Response.ALREADY_ONLINE)
- return
- }
- player.uid = uid
- player.rights = rights
- player.chatIcon = chatIcon
- if (PunishmentStorage.isSystemBanned(uid)) {
- sendRegistryResponse(server, player, Response.BANNED)
- return
- }
- player.parse()
- if (player.isBanned) {
- sendRegistryResponse(server, player, Response.ACCOUNT_DISABLED)
- return
- }
- if (player.lastWorld != server.info.worldId && player.hasMovedWorld()) {
- sendRegistryResponse(server, player, Response.MOVING_WORLD)
- return
- }
- server.register(player)
- }
-
- /**
- * Handles the removal of a player.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handlePlayerRemoval(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val session = server.players[username]
- if (session != null) {
- session.isActive = false
- val player = server.players.remove(username)
- if (player != null) {
- session.remove()
- }
- session.worldId = 0
- }
- }
-
- /**
- * Handles a player registration.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handlePunishment(server: GameServer, buffer: IoBuffer) {
- val type = buffer.get() and 0xFF
- val target = buffer.string
- val duration = buffer.long
- val staff = buffer.string
- PunishmentStorage.handlePunishment(staff, target, type, duration)
- }
-
- /**
- * Handles the communication info request packet.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handleCommunicationRequest(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val player = server.players[username] ?: return
- sendContactInformation(player)
- }
-
- /**
- * Handles a contact update packet.
- * @param server The server.
- * @param buffer The buffer to read from.
- * @param block If the list is for blocked players.
- */
- private fun handleContactUpdate(server: GameServer, buffer: IoBuffer, block: Boolean) {
- val username = buffer.string
- val player = server.players[username] ?: return
- val contact = buffer.string
- when (buffer.get()) {
- 0 -> {
- if (block) {
- player.communication.block(contact)
- }
- player.communication.add(contact)
- }
- 1 -> player.communication.remove(contact, block)
- 2 -> player.communication.updateClanRank(contact, ClanRank.values()[buffer.get()])
- }
- }
-
- /**
- * Handles a clan related packet.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handleJoinClan(server: GameServer, buffer: IoBuffer) {
- val name = buffer.string
- val clanName = buffer.string
- val player = server.players[name]
- if (player == null || !player.isActive) {
- System.err.println("Invalid player specified in clan packet!")
- return
- }
- if (player.clan != null) {
- player.clan.leave(player, true)
- return
- }
- if (clanName.length < 1) {
- sendLeaveClan(player)
- return
- }
- val clan = ClanRepository.get(server, clanName)
- if (clan == null) {
- sendPlayerMessage(
- player,
- arrayOf(
- "The channel you tried to join does not exist.",
- "Try joining the main clan named '2009Scape'.:clan:"
- )
- )
- return
- }
- clan.enter(player)
- }
-
- /**
- * Handles renaming a clan.
- * @param server The server.
- * @param buffer The buffer.
- */
- private fun handleClanRename(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val name = buffer.string
- val player = server.players[username]
- if (player == null || !player.isActive) {
- return
- }
- val clan = ClanRepository.getClans()[username]
- player.communication.clanName = name
- if (clan != null) {
- if (name.isEmpty()) {
- clan.clean(true)
- } else {
- clan.rename(name)
- }
- }
- }
-
- /**
- * Handles changing clan settings packet.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handleClanSetting(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val type = buffer.get()
- val rank = if (type < 4) ClanRank.values()[buffer.get() and 0xFF] else null
- val player = server.players[username]
- if (player == null || !player.isActive) {
- return
- }
- val clan = ClanRepository.get(server, username)
- when (type) {
- 0 -> {
- player.communication.joinRequirement = rank
- clan?.clean(false)
- }
- 1 -> player.communication.messageRequirement = rank
- 2 -> {
- player.communication.kickRequirement = rank
- clan?.update()
- }
- 3 -> player.communication.lootRequirement = rank
- }
- }
-
- /**
- * Handles kicking a player from the clan.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handleClanKick(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val playerName = buffer.string
- val player = server.players[username]
- if (player == null || !player.isActive || player.clan == null) {
- return
- }
- val target = WorldDatabase.getPlayer(playerName)
- if (target == null || !target.isActive) {
- return
- }
- player.clan.kick(player, target)
- }
-
- /**
- * Handles a clan message.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handleClanMessage(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val message = buffer.string
- val player = server.players[username]
- if (player == null || !player.isActive || player.clan == null) {
- return
- }
- player.clan.message(player, message)
- }
-
- /**
- * Handles a clan message.
- * @param server The game server.
- * @param buffer The buffer.
- */
- private fun handlePrivateMessage(server: GameServer, buffer: IoBuffer) {
- val username = buffer.string
- val receiver = buffer.string
- val message = buffer.string
- val player = server.players[username]
- if (player == null || !player.isActive) {
- return
- }
- player.communication.sendMessage(receiver, message)
- }
-
- /**
- * Handles a clan information request packet.
- * @param server The server.
- * @param buffer The buffer.
- */
- private fun handleClanInfoRequest(server: GameServer, buffer: IoBuffer) {
- val name = buffer.string
- val clan = ClanRepository.get(server, name) ?: return
- sendClanInformation(server, clan)
- }
-
- /**
- * Handles a chat setting update packet.
- * @param server The server.
- * @param buffer The buffer.
- */
- private fun handleChatSetting(server: GameServer, buffer: IoBuffer) {
- val name = buffer.string
- val publicSetting = buffer.get()
- val privateSetting = buffer.get()
- val tradeSetting = buffer.get()
- val player = server.players[name]
- if (player == null || !player.isActive) {
- return
- }
- player.communication.updateSettings(publicSetting, privateSetting, tradeSetting)
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/producer/HSEventProducer.java b/Management-Server/src/main/java/ms/net/producer/HSEventProducer.java
deleted file mode 100644
index 40936a72d..000000000
--- a/Management-Server/src/main/java/ms/net/producer/HSEventProducer.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package ms.net.producer;
-
-import java.nio.ByteBuffer;
-
-import ms.net.EventProducer;
-import ms.net.IoReadEvent;
-import ms.net.IoSession;
-import ms.net.IoWriteEvent;
-import ms.net.event.HSReadEvent;
-import ms.net.event.HSWriteEvent;
-
-/**
- * Produces I/O events for the handshake protocol.
- * @author Emperor
- *
- */
-public final class HSEventProducer implements EventProducer {
-
- @Override
- public IoReadEvent produceReader(IoSession session, ByteBuffer buffer) {
- return new HSReadEvent(session, buffer);
- }
-
- @Override
- public IoWriteEvent produceWriter(IoSession session, Object context) {
- return new HSWriteEvent(session, context);
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/producer/PacketEventProducer.java b/Management-Server/src/main/java/ms/net/producer/PacketEventProducer.java
deleted file mode 100644
index 091fcf5d7..000000000
--- a/Management-Server/src/main/java/ms/net/producer/PacketEventProducer.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package ms.net.producer;
-
-import java.nio.ByteBuffer;
-
-import ms.net.EventProducer;
-import ms.net.IoReadEvent;
-import ms.net.IoSession;
-import ms.net.IoWriteEvent;
-import ms.net.event.PacketReadEvent;
-import ms.net.event.PacketWriteEvent;
-
-/**
- * The packet event producer.
- * @author Emperor
- *
- */
-public final class PacketEventProducer implements EventProducer {
-
- @Override
- public IoReadEvent produceReader(IoSession session, ByteBuffer buffer) {
- return new PacketReadEvent(session, buffer);
- }
-
- @Override
- public IoWriteEvent produceWriter(IoSession session, Object context) {
- return new PacketWriteEvent(session, context);
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/net/producer/RegistryEventProducer.java b/Management-Server/src/main/java/ms/net/producer/RegistryEventProducer.java
deleted file mode 100644
index 25db4d265..000000000
--- a/Management-Server/src/main/java/ms/net/producer/RegistryEventProducer.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package ms.net.producer;
-
-import java.nio.ByteBuffer;
-
-import ms.net.EventProducer;
-import ms.net.IoReadEvent;
-import ms.net.IoSession;
-import ms.net.IoWriteEvent;
-import ms.net.event.RegistryReadEvent;
-import ms.net.event.RegistryWriteEvent;
-
-/**
- * Handles world server registry.
- * @author Emperor
- *
- */
-public final class RegistryEventProducer implements EventProducer {
-
- @Override
- public IoReadEvent produceReader(IoSession session, ByteBuffer buffer) {
- return new RegistryReadEvent(session, buffer);
- }
-
- @Override
- public IoWriteEvent produceWriter(IoSession session, Object context) {
- return new RegistryWriteEvent(session, context);
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/OperatingSystem.kt b/Management-Server/src/main/java/ms/system/OperatingSystem.kt
deleted file mode 100644
index 267cc9cc5..000000000
--- a/Management-Server/src/main/java/ms/system/OperatingSystem.kt
+++ /dev/null
@@ -1,9 +0,0 @@
-package ms.system
-
-/**
- * The operating systems
- * @author Clayton Williams
- */
-enum class OperatingSystem {
- UNIX, WINDOWS
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/PunishmentStorage.java b/Management-Server/src/main/java/ms/system/PunishmentStorage.java
deleted file mode 100644
index 3fd0b00a5..000000000
--- a/Management-Server/src/main/java/ms/system/PunishmentStorage.java
+++ /dev/null
@@ -1,267 +0,0 @@
-package ms.system;
-
-import ms.net.packet.WorldPacketRepository;
-import ms.system.mysql.SQLManager;
-import ms.world.GameServer;
-import ms.world.PlayerSession;
-import ms.world.WorldDatabase;
-import ms.world.info.UIDInfo;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-/**
- * Used for storing and handling punishment data.
- * @author Emperor
- * @author Vexia
- *
- */
-public final class PunishmentStorage {
-
- /**
- * The type ids for IP, MAC and SERIAL bans.
- */
- public static final int IP = 2, MAC = 3, SERIAL = 4;
-
- /**
- * Constructs a new {@code PunishmentStorage} {@code Object}.
- */
- public PunishmentStorage() {
- /*
- * empty.
- */
- }
-
- /**
- * Handles a punishment.
- * @param staff The name of the staff member dealing the punishment.
- * @param target The target.
- * @param type The punishment type.
- * @param duration The duration of the punishment (in milliseconds).
- */
- public static void handlePunishment(String name, String target, int type, long duration) {
- PlayerSession staff = WorldDatabase.getPlayer(name);
- PlayerSession player = WorldDatabase.getPlayer(target, true);
- if (player == null) {
- WorldPacketRepository.sendPlayerMessage(staff, "Player " + target + " is invalid!");
- return;
- }
- long end = Long.MAX_VALUE;
- if (duration != -1L && duration != 0L) {
- end = System.currentTimeMillis() + duration;
- } else if (duration == 0L) {
- end = 0L;
- }
- String key = "null";
- switch (type) {
- case 0: //Mute
- case 1: //Ban
- if (type == 1 && end == 0L) {
- unban(player.getIpAddress());
- unban(player.getMacAddress());
- unban(player.getSerialKey());
- }
- if (player.isActive()) {
- WorldPacketRepository.sendPunishUpdate(player.getWorld(), player.getUsername(), type, end);
- }
- notify(staff, type == 0 ? "mute" : "ban", target, end);
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return;
- }
- PreparedStatement statement;
- try {
- statement = connection.prepareStatement("UPDATE members SET " + (type == 0 ? "muteTime" : "banTime") + "='" + end + "' WHERE username ='" + target + "'");
- statement.executeUpdate();
- } catch (SQLException e) {
- e.printStackTrace();
- SQLManager.close(connection);
- return;
- } finally {
- SQLManager.close(connection);
- }
- return;
- case 2:
- ban(player.getIpAddress(), type);
- notify(staff, "IP-ban", target, end);
- notifyServers(key = player.getIpAddress(), type, end);
- break;
- case 3:
- ban(player.getMacAddress(), type);
- notify(staff, "MAC-ban", target, end);
- notifyServers(key = player.getMacAddress(), type, end);
- break;
- case 4:
- ban(player.getSerialKey(), type);
- notify(staff, "UID-ban", target, end);
- notifyServers(key = player.getSerialKey(), type, end);
- break;
- case 5:
- ban(player.getIpAddress(), 2);
- notifyServers(key = player.getIpAddress(), 2, end);
- ban(player.getMacAddress(), 3);
- notifyServers(key = player.getMacAddress(), 3, end);
- ban(player.getSerialKey(), 4);
- notifyServers(key = player.getSerialKey(), 4, end);
- notify(staff, "full ban", target, end);
- return;
- case 6: //Kick
- if (player.isActive()) {
- WorldPacketRepository.sendPunishUpdate(player.getWorld(), player.getUsername(), 6, end);
- WorldPacketRepository.sendPlayerMessage(staff, "Successfully kicked player " + target + " from world " + player.getWorldId() + ".");
- } else {
- WorldPacketRepository.sendPlayerMessage(staff, "Player " + target + " was already inactive.");
- }
- break;
- case 7: //Request info
- WorldPacketRepository.sendPlayerMessage(staff, "[----------Player info----------]");
- WorldPacketRepository.sendPlayerMessage(staff, "Name: " + player.getUsername());
- WorldPacketRepository.sendPlayerMessage(staff, "IP address: " + player.getIpAddress());
- WorldPacketRepository.sendPlayerMessage(staff, "MAC address: " + player.getMacAddress());
- WorldPacketRepository.sendPlayerMessage(staff, "Serial key: " + player.getSerialKey());
- WorldPacketRepository.sendPlayerMessage(staff, "Computer name: " + player.getComputerName());
- WorldPacketRepository.sendPlayerMessage(staff, "[-------------------------------]");
- return;
- }
- notifyServers(key, type, end);
- }
-
- /**
- * Bans an address.
- * @param address the address.
- * @return {@code True} if banned.
- */
- public static boolean ban(String address, int type) {
- if (address == null || address.length() == 0 || address.equals("To be filled by O.E.M.") || address.equals("To be filled by O.E.M") || address.equals("Base Board Serial Number")) {
- System.out.println("Error! Can't ban address " + address + " type = " + type + "!");
- return false;
- }
- if (isBanned(address)) {
- return false;
- }
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return false;
- }
- PreparedStatement statement;
- try {
- statement = connection.prepareStatement("INSERT INTO punishments VALUES('" + address + "','" + type + "')");
- statement.executeUpdate();
- } catch (SQLException e) {
- e.printStackTrace();
- SQLManager.close(connection);
- return false;
- } finally {
- SQLManager.close(connection);
- }
- return true;
- }
-
- /**
- * Unbans an address.
- * @param address the address.
- * @return {@code True} if unbanned.
- */
- public static boolean unban(String address) {
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return false;
- }
- PreparedStatement statement;
- try {
- statement = connection.prepareStatement("DELETE from punishments WHERE address ='" + address + "'");
- statement.executeUpdate();
- } catch (SQLException e) {
- e.printStackTrace();
- SQLManager.close(connection);
- return false;
- } finally {
- SQLManager.close(connection);
- }
- return true;
- }
-
- /**
- * Notifies the punishing player of success.
- * @param staff The punishing player.
- * @param type The punishment type.
- * @param target The target name.
- * @param end The end time stamp of the punishment.
- */
- private static void notify(PlayerSession staff, String type, String target, long end) {
- if (end <= System.currentTimeMillis()) {
- WorldPacketRepository.sendPlayerMessage(staff, "Successfully removed punishment [type=" + type + ", player=" + target + "].");
- return;
- }
- WorldPacketRepository.sendPlayerMessage(staff, "Successfully punished player " + target + " [type=" + type + ", duration=" + getDuration(end) + "].");
- }
-
- /**
- * Notifies the game servers of a punishment update.
- * @param key The punishment key.
- * @param type The type.
- * @param duration The duration.
- */
- public static void notifyServers(String key, int type, long duration) {
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null && server.isActive()) {
- WorldPacketRepository.sendPunishUpdate(server, key, type, duration);
- }
- }
- }
-
- /**
- * Checks if the UID Info is banned.
- * @param info the info.
- * @return {@code True} if banned.
- */
- public static boolean isSystemBanned(UIDInfo info) {
- return isBanned(info.getIp()) || isBanned(info.getMac()) || isBanned(info.getSerial());
- }
-
- /**
- * Checked if an address is banned.
- * @param address the address.
- * @param type the type.
- * @return {@code True} if so.
- */
- public static boolean isBanned(String address) {
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return false;
- }
- try {
- ResultSet set = connection.createStatement().executeQuery("SELECT * FROM punishments WHERE address ='" + address +"'");
- if (set == null || !set.next()) {
- SQLManager.close(connection);
- return false;
- }
- } catch (SQLException e) {
- e.printStackTrace();
- SQLManager.close(connection);
- return false;
- } finally {
- SQLManager.close(connection);
- }
- return true;
- }
-
- /**
- * Gets the duration string representation.
- * @param end The end time.
- * @return The string.
- */
- private static String getDuration(long end) {
- String time = "indefinite time";
- if (end != Long.MAX_VALUE) {
- int days = (int) ((System.currentTimeMillis()) / (24 * 60 * 60_000));
- int hours = (int) (((24L * days * 60 * 60_000)) / (60 * 60_000));
- int minutes = (int) (((hours * (60 * 60_000))) / 60_000);
- time = days + "d, " + hours + "h, " + minutes + "m";
- }
- return time;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/ShutdownSequence.java b/Management-Server/src/main/java/ms/system/ShutdownSequence.java
deleted file mode 100644
index 9d137923d..000000000
--- a/Management-Server/src/main/java/ms/system/ShutdownSequence.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package ms.system;
-
-
-import ms.Management;
-
-/**
- * The shutdown sequence used for safely turning off the Management server.
- * @author Emperor
- *
- */
-public final class ShutdownSequence extends Thread {
-
- @Override
- public void run() {
- if (Management.active) {
- shutdown();
- }
- }
-
- /**
- * Safely shuts down the Management server.
- */
- public static void shutdown() {
- System.out.println("Management server successfully shut down!");
- Management.active = false;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/communication/ClanRank.java b/Management-Server/src/main/java/ms/system/communication/ClanRank.java
deleted file mode 100644
index f13aa7212..000000000
--- a/Management-Server/src/main/java/ms/system/communication/ClanRank.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package ms.system.communication;
-
-/**
- * Represents the rank of a clan member.
- * @author Emperor
- */
-public enum ClanRank {
- NONE(-1, "Anyone"),
- FRIEND(0, "Any friends"),
- RECRUIT(1, "Recruit+"),
- CORPORAL(2, "Corporal+"),
- SERGEANT(3, "Sergeant+"),
- LIEUTENANT(4, "Lieutenant+"),
- CAPTAIN(5, "Captain+"),
- GENERAL(6, "General+"),
- OWNER(7, "Only me"),
- ADMINISTRATOR(127, "No-one");
-
- /**
- * The value of the rank.
- */
- private final int value;
-
- /**
- * The requirement info.
- */
- private final String info;
-
- /**
- * Constructs a new {@code ClanRank} {@code Object}.
- * @param value The rank value.
- * @param info The requirement info.
- */
- private ClanRank(int value, String info) {
- this.value = value;
- this.info = info;
- }
-
- /**
- * Gets the value.
- * @return The value.
- */
- public int getValue() {
- return value;
- }
-
- /**
- * Gets the info.
- * @return The info.
- */
- public String getInfo() {
- return info;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/communication/ClanRepository.java b/Management-Server/src/main/java/ms/system/communication/ClanRepository.java
deleted file mode 100644
index bfe96cbd4..000000000
--- a/Management-Server/src/main/java/ms/system/communication/ClanRepository.java
+++ /dev/null
@@ -1,337 +0,0 @@
-package ms.system.communication;
-
-import ms.net.packet.WorldPacketRepository;
-import ms.system.util.StringUtils;
-import ms.world.GameServer;
-import ms.world.PlayerSession;
-import ms.world.WorldDatabase;
-import ms.world.info.UIDInfo;
-
-import java.util.*;
-
-/**
- * Holds clan related information.
- * @author Emperor
- *
- */
-public final class ClanRepository {
-
- /**
- * The mapping of active clans.
- */
- private static final Map CLANS = new HashMap<>();
-
- /**
- * The maximum amount of members to be in a clan chat.
- */
- public static final int MAX_MEMBERS = 100;
-
- /**
- * The owner's details.
- */
- private PlayerSession owner;
-
- /**
- * The list of players currently in the chat.
- */
- private final List players = new ArrayList<>(MAX_MEMBERS);
-
- /**
- * The banned players.
- */
- private final Map banned = new HashMap<>();
-
- /**
- * Constructs a new {@code ClanRepository} {@code Object}.
- */
- private ClanRepository() {
- /*
- * empty.
- */
- }
-
- /**
- * Gets the clan repository for the given username.
- * @param ownerName The clan owner's name.
- * @return The clan repository.
- */
- public static ClanRepository get(GameServer server, String ownerName) {
- ClanRepository clan = CLANS.get(ownerName);
- if (clan != null) {
- return clan;
- }
- PlayerSession owner = WorldDatabase.getPlayer(ownerName);
- if (owner == null) {
- owner = new PlayerSession(ownerName, ownerName, new UIDInfo());
- owner.parse();
- }
- if (owner.getCommunication().getClanName().equals("")) {
- return null;
- }
- clan = new ClanRepository();
- clan.owner = owner;
- CLANS.put(ownerName, clan);
- return clan;
- }
-
- /**
- * Enters the clan chat.
- * @param player The player.
- */
- public void enter(PlayerSession player) {
- if (players.size() >= MAX_MEMBERS && !owner.getUsername().equals("2009scape")) {
- WorldPacketRepository.sendPlayerMessage(player, "The channel you tried to join is full.:clan:");
- return;
- }
- if (player != owner && player.getRights() != 2) {
- if (isBanned(player.getUsername()) || owner.getCommunication().getBlocked().contains(player.getUsername())) {
- WorldPacketRepository.sendPlayerMessage(player, "You are temporarily banned from this clan channel.:clan:");
- return;
- }
- ClanRank rank = getRank(player);
- if (rank.ordinal() < getJoinRequirement().ordinal()) {
- WorldPacketRepository.sendPlayerMessage(player, "You do not have a high enough rank to join this clan channel.:clan:");
- return;
- }
- }
- if (!players.contains(player)) {
- players.add(player);
- }
- WorldPacketRepository.sendPlayerMessage(player, "Now talking in clan channel " + owner.getCommunication().getClanName() + ".:clan:");
- WorldPacketRepository.sendPlayerMessage(player, "To talk, start each line of chat with the / symbol.:clan:");
- player.getCommunication().setCurrentClan(owner.getUsername());
- player.setClan(this);
- update();
- }
-
- /**
- * Leaves the clan chat.
- * @param player The player to leave.
- * @param remove If the player should be removed from the list.
- */
- public void leave(PlayerSession player, boolean remove) {
- if (remove) {
- players.remove(player);
- update();
- if (players.size() < 1) {
- banned.clear();
- }
- }
- WorldPacketRepository.sendPlayerMessage(player, "You have left the channel.:clan:");
- player.setClan(null);
- player.getCommunication().setCurrentClan(null);
- if (player.isActive()) {
- WorldPacketRepository.sendLeaveClan(player);
- }
- }
-
- /**
- * Sends a message to all players in the chat.
- * @param player The player sending the message.
- * @param message The message to send.
- */
- public void message(PlayerSession player, String message) {
- if (player != owner && player.getRights() != 2) {
- ClanRank rank = getRank(player);
- if (rank.ordinal() < getMessageRequirement().ordinal()) {
- WorldPacketRepository.sendPlayerMessage(player, "You do not have a high enough rank to talk in this clan channel.:clan:");
- return;
- }
- }
- for (Iterator it = players.iterator(); it.hasNext();) {
- PlayerSession p = it.next();
- if (p != null) {
- WorldPacketRepository.sendMessage(p, player, 2, message);
- }
- }
- }
-
- /**
- * Updates the clan chat.
- */
- public void update() {
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null && server.isActive()) {
- WorldPacketRepository.sendClanInformation(server, this);
- }
- }
- }
-
- /**
- * Kicks a player from the clan chat.
- * @param player The player.
- */
- public void kick(PlayerSession player, PlayerSession target) {
- ClanRank rank = getRank(target);
- if (target.getRights() == 2) {
- WorldPacketRepository.sendPlayerMessage(player, "You can't kick an administrator.:clan:");
- return;
- }
- System.out.println(rank + ", " + player.getUsername());
- if (player.getRights() < 1/*!= 2 && rank.ordinal() < getKickRequirement().ordinal()*/) {
- WorldPacketRepository.sendPlayerMessage(player, "You do not have a high enough rank to kick in this clan channel.:clan:");
- return;
- }
- if (target == owner) {
- WorldPacketRepository.sendPlayerMessage(player, "You can't kick the owner of this clan channel.:clan:");
- return;
- }
- if (target == player) {
- WorldPacketRepository.sendPlayerMessage(player, "You can't kick yourself.:clan:");
- return;
- }
- for (PlayerSession p : players) {
- WorldPacketRepository.sendMessage(p, player, 2, "[Attempting to kick/ban " + StringUtils.formatDisplayName(target.getUsername()) + " from this Clan Chat.]");
- }
- leave(target, true);
- banned.put(target.getUsername(), System.currentTimeMillis() + (3_600_000));
- WorldPacketRepository.sendPlayerMessage(target, "You have been kicked from the channel.:clan:");
- }
-
- /**
- * Gets the rank for the given player.
- * @param player The player.
- * @return The rank.
- */
- public ClanRank getRank(PlayerSession player) {
- ClanRank rank = owner.getCommunication().getContacts().get(player.getUsername());
- if (player.getRights() == 2 && player != owner) {
- return ClanRank.ADMINISTRATOR;
- }
- if (rank == null) {
- if (player == owner) {
- return ClanRank.OWNER;
- }
- return ClanRank.NONE;
- }
- return rank;
- }
-
- /**
- * Checks if the player is banned.
- * @param username The username of the player.
- * @return {@code True} if so.
- */
- private boolean isBanned(String username) {
- Long time = banned.get(username);
- if (time == null) {
- return false;
- }
- if (time < System.currentTimeMillis()) {
- banned.remove(username);
- return false;
- }
- return true;
- }
-
- /**
- * Clears the clan chat.
- * @param disable If the clan chat is getting disabled.
- */
- public void clean(boolean disable) {
- for (Iterator it = players.iterator(); it.hasNext();) {
- PlayerSession player = it.next();
- boolean remove = disable;
- if (!remove) {
- remove = getRank(player).ordinal() < getJoinRequirement().getValue();
- }
- if (remove) {
- leave(player, false);
- it.remove();
- }
- }
- if (players.isEmpty()) {
- banned.clear();
- }
- update();
- }
-
- /**
- * Renames the clan chat.
- * @param name The new clan name.
- */
- public void rename(String name) {
- owner.getCommunication().setClanName(name);
- update();
- }
-
- /**
- * Gets the clan name.
- * @return The clan name.
- */
- public String getName() {
- return owner.getCommunication().getClanName();
- }
-
- /**
- * Gets the owner value.
- * @return The owner.
- */
- public PlayerSession getOwner() {
- return owner;
- }
-
- /**
- * Sets the owner value.
- * @param owner The owner to set.
- */
- public void setOwner(PlayerSession owner) {
- this.owner = owner;
- }
-
- /**
- * Gets the players value.
- * @return The players.
- */
- public List getPlayers() {
- return players;
- }
-
- /**
- * Gets the clans value.
- * @return The clans.
- */
- public static Map getClans() {
- return CLANS;
- }
-
- /**
- * Gets the joinRequirement value.
- * @return The joinRequirement.
- */
- public ClanRank getJoinRequirement() {
- return owner.getCommunication().getJoinRequirement();
- }
-
- /**
- * Gets the messageRequirement value.
- * @return The messageRequirement.
- */
- public ClanRank getMessageRequirement() {
- return owner.getCommunication().getMessageRequirement();
- }
-
- /**
- * Gets the kickRequirement value.
- * @return The kickRequirement.
- */
- public ClanRank getKickRequirement() {
- return owner.getCommunication().getKickRequirement();
- }
-
- /**
- * Gets the lootRequirement value.
- * @return The lootRequirement.
- */
- public ClanRank getLootRequirement() {
- return owner.getCommunication().getLootRequirement();
- }
-
- /**
- * Gets the banned value.
- * @return The banned.
- */
- public Map getBanned() {
- return banned;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/communication/CommunicationInfo.java b/Management-Server/src/main/java/ms/system/communication/CommunicationInfo.java
deleted file mode 100644
index 86afae5ec..000000000
--- a/Management-Server/src/main/java/ms/system/communication/CommunicationInfo.java
+++ /dev/null
@@ -1,656 +0,0 @@
-package ms.system.communication;
-
-import ms.ServerConstants;
-import ms.net.packet.WorldPacketRepository;
-import ms.system.util.ByteBufferUtils;
-import ms.system.util.StringUtils;
-import ms.world.GameServer;
-import ms.world.PlayerSession;
-import ms.world.WorldDatabase;
-
-import java.nio.ByteBuffer;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.*;
-import java.util.Map.Entry;
-
-/**
- * Holds communication information.
- * @author Emperor
- *
- */
-public final class CommunicationInfo {
-
- /**
- * The maximum list size.
- */
- public static final int MAX_LIST_SIZE = 200;
-
- /**
- * The clan ranks.
- */
- private final Map contacts = new HashMap<>();
-
- /**
- * The list of blocked players.
- */
- private final List blocked = new ArrayList<>(20);
-
- /**
- * The player's clan name.
- */
- private String clanName = "";
-
- /**
- * The current clan this player is in.
- */
- private String currentClan = "2009scape";
-
- /**
- * The rank required for joining.
- */
- private ClanRank joinRequirement = ClanRank.FRIEND;
-
- /**
- * The rank required for messaging.
- */
- private ClanRank messageRequirement = ClanRank.NONE;
-
- /**
- * The rank required for kicking members.
- */
- private ClanRank kickRequirement = ClanRank.OWNER;
-
- /**
- * The rank required for loot-share.
- */
- private ClanRank lootRequirement = ClanRank.ADMINISTRATOR;
-
- /**
- * The public chat setting.
- */
- private int publicChatSetting = 0;
-
- /**
- * The private chat setting.
- */
- private int privateChatSetting = 0;
-
- /**
- * The trade setting.
- */
- private int tradeSetting = 0;
-
- /**
- * The player session.
- */
- private PlayerSession player;
-
- /**
- * Constructs a new {@code CommunicationInfo} {@code Object}.
- * @param player The player.
- */
- public CommunicationInfo(PlayerSession player) {
- this.setPlayer(player);
- }
-
- /**
- * Called when the player logs in.
- */
- public void sync() {
- if (privateChatSetting != 2) {
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null && server.isActive()) {
- List names = new ArrayList<>(20);
- for (PlayerSession p : server.getPlayers().values()) {
- if (p.isActive() && p.getCommunication().contacts.containsKey(player.getUsername())) {
- if (privateChatSetting == 0 || contacts.containsKey(p.getUsername())) {
- names.add(p.getUsername());
- }
- }
- }
- WorldPacketRepository.notifyPlayers(server, player, names);
- }
- }
- }
- }
-
- /**
- * Called when the player logs out.
- */
- public void clear() {
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null && server.isActive()) {
- WorldPacketRepository.notifyLogout(server, player);
- }
- }
- if (player.getClan() != null) {
- player.getClan().leave(player, true);
- }
- }
-
- /**
- * Saves the communication info.
- * @param statement The buffer.
- * @throws SQLException The exception if thrown.
- */
- public void save(PreparedStatement statement) throws SQLException {
- String contacts = "";
- String blocked = "";
- StringBuilder blockedBuilder = new StringBuilder();
- for (int i = 0; i < this.blocked.size(); i++) {
- String blockline = (i == 0 ? "" : ",") + this.blocked.get(i);
- blockedBuilder.append(blockline);
- }
- blocked = blockedBuilder.toString();
- int count = 0;
- StringBuilder contactBuilder = new StringBuilder();
- for (Entry entry : this.contacts.entrySet()) {
- String contactLine = "{" + entry.getKey() + "," + entry.getValue().ordinal() + "}" + (count == this.contacts.size() - 1 ? "" : "~");
- contactBuilder.append(contactLine);
- count++;
- }
- contacts = contactBuilder.toString();
- statement.setString(3, contacts);
- statement.setString(4, blocked);
- statement.setString(5, clanName);
- statement.setString(6, currentClan);
- statement.setString(7, joinRequirement.ordinal() + "," + messageRequirement.ordinal() + "," + kickRequirement.ordinal() + "," + lootRequirement.ordinal());
- statement.setString(8, publicChatSetting + "," + privateChatSetting + "," + tradeSetting);
- }
-
- /**
- * Parses the communication info from the database.
- * @param set The result set.
- * @throws SQLException The exception if thrown.
- */
- public void parse(ResultSet set) throws SQLException {
- String contacts = set.getString("contacts");
- String[] tokens;
- if (contacts != null && !contacts.isEmpty()) {
- String[] datas = contacts.split("~");
- for (String d : datas) {
- tokens = d.replace("{", "").replace("}", "").split(",");
- if (tokens.length < 2) {
- continue;
- }
- this.contacts.put(tokens[0], ClanRank.values()[Integer.parseInt(tokens[1])]);
- }
- }
- String bl = set.getString("blocked");
- if (bl != null && !bl.isEmpty()) {
- tokens = bl.split(",");
- blocked.addAll(Arrays.asList(tokens));
- }
- clanName = set.getString("clanName");
- currentClan = set.getString("currentClan");
- String clanReqs = set.getString("clanReqs");
- if (!clanReqs.isEmpty()) {
- tokens = clanReqs.split(",");
- ClanRank rank = null;
- int ordinal = 0;
- for (int i = 0; i < tokens.length; i++) {
- ordinal = Integer.parseInt(tokens[i]);
- if (ordinal < 0 || ordinal > ClanRank.values().length -1) {
- continue;
- }
- rank = ClanRank.values()[ordinal];
- switch (i) {
- case 0:
- joinRequirement = rank;
- break;
- case 1:
- messageRequirement = rank;
- break;
- case 2:
- if (ordinal < 3 || ordinal > 8) {
- break;
- }
- kickRequirement = rank;
- break;
- case 3:
- lootRequirement = rank;
- break;
- default:
- break;
- }
- }
- }
- String chatSettings = set.getString("chatSettings");
- if (!chatSettings.isEmpty()) {
- tokens = chatSettings.split(",");
- for (int i = 0; i < tokens.length; i++) {
- switch (i) {
- case 0:
- publicChatSetting = Integer.parseInt(tokens[0]);
- break;
- case 1:
- privateChatSetting = Integer.parseInt(tokens[1]);
- break;
- case 2:
- tradeSetting = Integer.parseInt(tokens[2]);
- break;
- default:
- System.out.println("Illegal arg count in chatsetting string: " + chatSettings);
- break;
- }
- }
- }
- }
-
- /**
- * Saves the communication info.
- * @param buffer The buffer.
- */
- public void save(ByteBuffer buffer) {
- buffer.put((byte) contacts.size());
- for(Entry contact : contacts.entrySet()){
- ByteBufferUtils.putString(contact.getKey(), buffer);
- buffer.put((byte) contact.getValue().ordinal());
- }
- buffer.put((byte) blocked.size());
- for (String name : blocked) {
- ByteBufferUtils.putString(name, buffer);
- }
- ByteBufferUtils.putString(clanName, buffer);
- if (currentClan != null) {
- ByteBufferUtils.putString(currentClan, buffer.put((byte) 1));
- } else {
- buffer.put((byte) 0);
- }
- buffer.put((byte) joinRequirement.ordinal());
- buffer.put((byte) messageRequirement.ordinal());
- buffer.put((byte) kickRequirement.ordinal());
- buffer.put((byte) lootRequirement.ordinal());
- buffer.put((byte) publicChatSetting);
- buffer.put((byte) privateChatSetting);
- buffer.put((byte) tradeSetting);
- }
-
- /**
- * Parses the communication info from the buffer.
- * @param buffer The buffer.
- */
- public void parse(ByteBuffer buffer) {
- int length = buffer.get() & 0xFF;
- for (int i = 0; i < length; i++) {
- contacts.put(ByteBufferUtils.getString(buffer), ClanRank.values()[buffer.get() & 0xFF]);
- }
- length = buffer.get() & 0xFF;
- for (int i = 0; i < length; i++) {
- blocked.add(ByteBufferUtils.getString(buffer));
- }
- clanName = ByteBufferUtils.getString(buffer);
- if (buffer.get() == 1) {
- currentClan = ByteBufferUtils.getString(buffer);
- }
- joinRequirement = ClanRank.values()[buffer.get()];
- messageRequirement = ClanRank.values()[buffer.get()];
- kickRequirement = ClanRank.values()[buffer.get()];
- lootRequirement = ClanRank.values()[buffer.get()];
- publicChatSetting = buffer.get();
- privateChatSetting = buffer.get();
- tradeSetting = buffer.get();
- }
-
- /**
- * Sends a message to the target.
- * @param target The target.
- * @param message The message to send.
- */
- public void sendMessage(String target, String message) {
- PlayerSession receiver = WorldDatabase.getPlayer(target);
- if (receiver == null || !receiver.isActive()) {
- WorldPacketRepository.sendPlayerMessage(player, "That player is currently offline.");
- return;
- }
- WorldPacketRepository.sendMessage(player, receiver, 0, message);
- WorldPacketRepository.sendMessage(receiver, player, 1, message);
- }
-
- /**
- * Adds a contact.
- * @param contact The contact to add.
- */
- public void add(String contact) {
- if (contacts.size() >= MAX_LIST_SIZE) {
- WorldPacketRepository.sendPlayerMessage(player, "Your friend list is full.");
- return;
- }
- if (blocked.contains(contact)) {
- WorldPacketRepository.sendPlayerMessage(player, "Please remove " + StringUtils.formatDisplayName(contact) + " from your ignored list first.");
- return;
- }
- if (contacts.containsKey(contact)) {
- WorldPacketRepository.sendPlayerMessage(player, StringUtils.formatDisplayName(contact) + " is already on your friend list.");
- return;
- }
- contacts.put(contact, ClanRank.FRIEND);
- WorldPacketRepository.sendContactUpdate(player, contact, false, false, getWorldId(player, contact), null);
- ClanRepository clan = ClanRepository.getClans().get(player.getUsername());
- if (clan != null) {
- clan.update();
- }
- if (privateChatSetting == 1) {
- PlayerSession other = WorldDatabase.getPlayer(contact);
- if (other != null && other.isActive() && other.getCommunication().getContacts().containsKey(player.getUsername())) {
- WorldPacketRepository.sendContactUpdate(other, player.getUsername(), false, false, getWorldId(other, player.getUsername()), null);
- }
- }
- }
-
- /**
- * Gets the world id for the given contact.
- * @param player The player.
- * @param contact The contact.
- * @return The world id to display.
- */
- public static int getWorldId(PlayerSession player, String contact) {
- PlayerSession p = WorldDatabase.getPlayer(contact);
- if (p == null || !p.isActive() || p.getCommunication().getPrivateChatSetting() == 2) {
- return 0;
- }
- if (p.getCommunication().getBlocked().contains(player.getUsername())) {
- return 0;
- }
- if (p.getCommunication().getPrivateChatSetting() == 1) {
- if (p.getCommunication().getContacts().containsKey(player.getUsername())) {
- return p.getWorldId();
- }
- return 0;
- }
- return p.getWorldId();
- }
-
- /**
- * Removes a contact.
- * @param contact The contact to remove.
- * @param block If the contact should be removed from the block list.
- */
- public void remove(String contact, boolean block) {
- PlayerSession other = WorldDatabase.getPlayer(contact);
- if (block) {
- blocked.remove(contact);
- if (other != null && other.isActive() && other.getCommunication().getContacts().containsKey(player.getUsername())) {
- WorldPacketRepository.sendContactUpdate(other, player.getUsername(), false, false, getWorldId(other, player.getUsername()), null);
- }
- } else {
- contacts.remove(contact);
- ClanRepository clan = ClanRepository.getClans().get(player.getUsername());
- if (clan != null) {
- clan.update();
- }
- if (privateChatSetting == 1 && other != null && other.isActive() && other.getCommunication().getContacts().containsKey(player.getUsername())) {
- WorldPacketRepository.sendContactUpdate(other, player.getUsername(), false, false, getWorldId(other, player.getUsername()), null);
- }
- }
- WorldPacketRepository.sendContactUpdate(player, contact, block, true, 0, null);
- }
-
-
- /**
- * Adds a blocked contact.
- * @param contact The contact to block.
- */
- public void block(String contact) {
- if (blocked.size() >= MAX_LIST_SIZE) {
- WorldPacketRepository.sendPlayerMessage(player, "Your ignore list is full.");
- return;
- }
- if (contacts.containsKey(contact)) {
- WorldPacketRepository.sendPlayerMessage(player, "Please remove " + StringUtils.formatDisplayName(contact) + " from your friends list first.");
- return;
- }
- if (blocked.contains(contact)) {
- WorldPacketRepository.sendPlayerMessage(player, StringUtils.formatDisplayName(contact) + " is already on your friend list.");
- return;
- }
- blocked.add(contact);
- WorldPacketRepository.sendContactUpdate(player, contact, true, false, 0, null);
- PlayerSession other = WorldDatabase.getPlayer(contact);
- if (other != null && other.isActive() && other.getCommunication().getContacts().containsKey(player.getUsername())) {
- WorldPacketRepository.sendContactUpdate(other, player.getUsername(), false, false, 0, null);
- }
- }
-
- /**
- * Updates the clan rank of a certain contact.
- * @param contact The contact.
- * @param clanRank The clan rank to set.
- */
- public void updateClanRank(String contact, ClanRank clanRank) {
- if (!contacts.containsKey(contact)) {
- System.err.println("Could not find contact " + contact + " to update clan rank!");
- return;
- }
- contacts.put(contact, clanRank);
- ClanRepository clan = ClanRepository.getClans().get(player.getUsername());
- if (clan != null) {
- clan.update();
- }
-
- WorldPacketRepository.sendContactUpdate(player, contact, false, false, 0, clanRank);
- }
-
- /**
- * Updates the settings.
- * @param publicSetting The public chat setting.
- * @param privateSetting The private chat setting.
- * @param tradeSetting The trade setting.
- */
- public void updateSettings(int publicSetting, int privateSetting, int tradeSetting) {
- this.publicChatSetting = publicSetting;
- this.tradeSetting = tradeSetting;
- if (this.privateChatSetting != privateSetting) {
- updatePrivateSetting(privateSetting);
- }
- }
-
- /**
- * Updates the private chat setting.
- * @param privateSetting The private chat setting.
- */
- private void updatePrivateSetting(int privateSetting) {
- this.privateChatSetting = privateSetting;
- for (GameServer server : WorldDatabase.getWorlds()) {
- if (server != null && server.isActive()) {
- if (privateSetting == 2) {
- WorldPacketRepository.notifyLogout(server, player);
- continue;
- }
- for (PlayerSession p : server.getPlayers().values()) {
- if (p.isActive() && p.getCommunication().contacts.containsKey(player.getUsername())) {
- WorldPacketRepository.sendContactUpdate(p, player.getUsername(), false, false, getWorldId(p, player.getUsername()), null);
- }
- }
- }
- }
- }
-
- /**
- * Gets the contacts value.
- * @return The contacts.
- */
- public Map getContacts() {
- return contacts;
- }
-
- /**
- * Gets the clan rank for the given contact.
- * @param contact The contact.
- * @return The rank.
- */
- public ClanRank getRank(String contact) {
- return contacts.get(contact);
- }
-
- /**
- * Gets the blocked value.
- * @return The blocked.
- */
- public List getBlocked() {
- return blocked;
- }
-
- /**
- * Gets the clanName value.
- * @return The clanName.
- */
- public String getClanName() {
- return clanName;
- }
-
- /**
- * Sets the clanName value.
- * @param clanName The clanName to set.
- */
- public void setClanName(String clanName) {
- this.clanName = clanName;
- }
-
- /**
- * Gets the currentClan value.
- * @return The currentClan.
- */
- public String getCurrentClan() {
- return currentClan;
- }
-
- /**
- * Sets the currentClan value.
- * @param currentClan The currentClan to set.
- */
- public void setCurrentClan(String currentClan) {
- this.currentClan = currentClan;
- }
-
- /**
- * Gets the player value.
- * @return The player.
- */
- public PlayerSession getPlayer() {
- return player;
- }
-
- /**
- * Sets the player value.
- * @param player The player to set.
- */
- public void setPlayer(PlayerSession player) {
- this.player = player;
- }
-
- /**
- * Gets the joinRequirement value.
- * @return The joinRequirement.
- */
- public ClanRank getJoinRequirement() {
- return joinRequirement;
- }
-
- /**
- * Sets the joinRequirement value.
- * @param joinRequirement The joinRequirement to set.
- */
- public void setJoinRequirement(ClanRank joinRequirement) {
- this.joinRequirement = joinRequirement;
- }
-
- /**
- * Gets the messageRequirement value.
- * @return The messageRequirement.
- */
- public ClanRank getMessageRequirement() {
- return messageRequirement;
- }
-
- /**
- * Sets the messageRequirement value.
- * @param messageRequirement The messageRequirement to set.
- */
- public void setMessageRequirement(ClanRank messageRequirement) {
- this.messageRequirement = messageRequirement;
- }
-
- /**
- * Gets the kickRequirement value.
- * @return The kickRequirement.
- */
- public ClanRank getKickRequirement() {
- return kickRequirement;
- }
-
- /**
- * Sets the kickRequirement value.
- * @param kickRequirement The kickRequirement to set.
- */
- public void setKickRequirement(ClanRank kickRequirement) {
- this.kickRequirement = kickRequirement;
- }
-
- /**
- * Gets the lootRequirement value.
- * @return The lootRequirement.
- */
- public ClanRank getLootRequirement() {
- return lootRequirement;
- }
-
- /**
- * Sets the lootRequirement value.
- * @param lootRequirement The lootRequirement to set.
- */
- public void setLootRequirement(ClanRank lootRequirement) {
- this.lootRequirement = lootRequirement;
- }
-
- /**
- * Gets the publicChatSetting value.
- * @return The publicChatSetting.
- */
- public int getPublicChatSetting() {
- return publicChatSetting;
- }
-
- /**
- * Sets the publicChatSetting value.
- * @param publicChatSetting The publicChatSetting to set.
- */
- public void setPublicChatSetting(int publicChatSetting) {
- this.publicChatSetting = publicChatSetting;
- }
-
- /**
- * Gets the privateChatSetting value.
- * @return The privateChatSetting.
- */
- public int getPrivateChatSetting() {
- return privateChatSetting;
- }
-
- /**
- * Sets the privateChatSetting value.
- * @param privateChatSetting The privateChatSetting to set.
- */
- public void setPrivateChatSetting(int privateChatSetting) {
- this.privateChatSetting = privateChatSetting;
- }
-
- /**
- * Gets the tradeSetting value.
- * @return The tradeSetting.
- */
- public int getTradeSetting() {
- return tradeSetting;
- }
-
- /**
- * Sets the tradeSetting value.
- * @param tradeSetting The tradeSetting to set.
- */
- public void setTradeSetting(int tradeSetting) {
- this.tradeSetting = tradeSetting;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/mysql/SQLColumn.java b/Management-Server/src/main/java/ms/system/mysql/SQLColumn.java
deleted file mode 100644
index 727c3075f..000000000
--- a/Management-Server/src/main/java/ms/system/mysql/SQLColumn.java
+++ /dev/null
@@ -1,121 +0,0 @@
-package ms.system.mysql;
-
-/**
- * Represents a column used in an SQL table.
- * @author Emperor
- *
- */
-public final class SQLColumn {
-
- /**
- * The name.
- */
- private final String name;
-
- /**
- * The data type.
- */
- private final Class> type;
-
- /**
- * If this column should never be updated in the database.
- */
- private final boolean neverUpdate;
-
- /**
- * The value.
- */
- private Object value;
-
- /**
- * If the column value changed.
- */
- private boolean changed;
-
- /**
- * Constructs a new {@code SQLColumn} {@code Object}.
- * @param name The column name.
- * @param type The data type.
- */
- public SQLColumn(String name, Class> type) {
- this(name, type, false);
- }
-
- /**
- * Constructs a new {@code SQLColumn} {@code Object}.
- * @param name The column name.
- * @param type The data type.
- * @param neverUpdate If this column should never be updated in the database.
- */
- public SQLColumn(String name, Class> type, boolean neverUpdate) {
- this.name = name;
- this.type = type;
- this.neverUpdate = neverUpdate;
- }
-
- /**
- * Gets the name.
- * @return The name.
- */
- public String getName() {
- return name;
- }
-
- /**
- * Updates the value.
- * @param value The value.
- */
- public void updateValue(Object value) {
- this.changed = value != this.value;
- this.value = value;
- }
-
- /**
- * Gets the value.
- * @return The value.
- */
- public Object getValue() {
- return value;
- }
-
- /**
- * Sets the value.
- * @param value The value to set.
- */
- public void setValue(Object value) {
- this.value = value;
- this.changed = false;
- }
-
- /**
- * Gets the changed.
- * @return The changed.
- */
- public boolean isChanged() {
- return changed;
- }
-
- /**
- * Sets the changed.
- * @param changed The changed to set.
- */
- public void setChanged(boolean changed) {
- this.changed = changed;
- }
-
- /**
- * Gets the type.
- * @return The type.
- */
- public Class> getType() {
- return type;
- }
-
- /**
- * Gets the neverUpdate.
- * @return The neverUpdate.
- */
- public boolean isNeverUpdate() {
- return neverUpdate;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/mysql/SQLEntryHandler.java b/Management-Server/src/main/java/ms/system/mysql/SQLEntryHandler.java
deleted file mode 100644
index 94ee8b5c2..000000000
--- a/Management-Server/src/main/java/ms/system/mysql/SQLEntryHandler.java
+++ /dev/null
@@ -1,202 +0,0 @@
-package ms.system.mysql;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-/**
- * Handles an SQL entry.
- * @author Emperor
- * @param The entry type.
- */
-public abstract class SQLEntryHandler {
-
- /**
- * The connection.
- */
- protected Connection connection;
-
- /**
- * The entry.
- */
- protected T entry;
-
- /**
- * The result set.
- */
- protected ResultSet result;
-
- /**
- * The table name.
- */
- protected String table;
-
- /**
- * The column name.
- */
- private String column;
-
- /**
- * The value to use.
- */
- protected String value;
-
- /**
- * Constructs a new {@code SQLEntryHandler} {@code Object}.
- * @param entry The entry.
- * @param table The table name.
- * @param column column name.
- * @param value The column value.
- */
- public SQLEntryHandler(T entry, String table, String column, String value) {
- this.entry = entry;
- this.table = table;
- this.column = column;
- this.value = value;
- }
-
- /**
- * Reads the SQL entry.
- * @param entry The entry.
- */
- public static void read(SQLEntryHandler> entry) {
- entry.connection = entry.getConnection();
- if (entry.connection == null) {
- //System.err.println("Could not read SQL data: connection is null!");
- return;
- }
- try {
- entry.read();
- if (entry.result == null || !entry.result.next()) {
- entry.create();
- } else {
- entry.parse();
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- SQLManager.close(entry.connection);
- entry.connection = null;
- }
-
- /**
- * Writes the entry data on the SQL database.
- * @param entry The entry.
- */
- public static void write(SQLEntryHandler> entry) {
- write(entry, entry.getConnection(), true);
- }
-
- /**
- * Reads the SQL entry.
- * @param entry The entry.
- */
- public static void write(SQLEntryHandler> entry, Connection connection, boolean commit) {
- if (connection == null) {
- //System.err.println("Could not write SQL data: connection is null!");
- return;
- }
- entry.connection = connection;
- try {
- if (!commit) {
- entry.connection.setAutoCommit(false);
- }
- entry.save();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- if (commit) {
- SQLManager.close(entry.connection);
- }
- entry.connection = null;
- }
-
- /**
- * Reads the table from the SQL database.
- * @throws SQLException When an SQL exception occurs.
- */
- public void read() throws SQLException {
- PreparedStatement statement = connection.prepareStatement("SELECT " + getReadSelection() + " FROM " + table + " WHERE " + column + " = ?");
- statement.setString(1, value);
- result = statement.executeQuery();
- }
-
- /**
- * Gets the result.
- * @return the result.
- */
- public ResultSet getResult() {
- return result;
- }
-
- /**
- * Gets the selection.
- * @return The selection.
- */
- public String getReadSelection() {
- return "*";
- }
-
- /**
- * Gets the writing statement.
- * @param create If we are creating a new row.
- * @param columns The columns to update.
- */
- public PreparedStatement getWritingStatement(boolean create, String...columns) {
- PreparedStatement statement = null;
- try {
- StringBuilder sb = new StringBuilder();
- if (create) {
- sb.append("INSERT INTO ").append(table).append(" (").append(column);
- for (String name : columns) {
- sb.append(",").append(name);
- }
- sb.append(") VALUES (?");
- for (int i = 0; i < columns.length; i++) {
- sb.append(",?");
- }
- sb.append(")");
- } else {
- sb.append("UPDATE ").append(table).append(" SET ");
- for (int i = 0; i < columns.length; i++) {
- sb.append(columns[i]).append("=?");
- if (i < columns.length - 1) {
- sb.append(",");
- }
- }
- sb.append(" WHERE ").append(column).append("=?");
- }
- statement = connection.prepareStatement(sb.toString());
- statement.setString(create ? 1 : columns.length + 1, value);
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return statement;
- }
-
- /**
- * Parses the entry.
- * @throws SQLException When an SQL exception occurs.
- */
- public abstract void parse() throws SQLException;
-
- /**
- * Creates a new row in the database.
- * @throws SQLException When an SQL exception occurs.
- */
- public abstract void create() throws SQLException;
-
- /**
- * Saves the entry.
- * @throws SQLException When an SQL exception occurs.
- */
- public abstract void save() throws SQLException;
-
- /**
- * Gets the connection.
- * @return The connection.
- */
- public abstract Connection getConnection();
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/mysql/SQLManager.kt b/Management-Server/src/main/java/ms/system/mysql/SQLManager.kt
deleted file mode 100644
index 05affcacc..000000000
--- a/Management-Server/src/main/java/ms/system/mysql/SQLManager.kt
+++ /dev/null
@@ -1,64 +0,0 @@
-package ms.system.mysql
-
-import ms.system.util.ManagementConstants
-import ms.system.util.ManagementConstants.DATABASE_HOST_ADDRESS
-import ms.system.util.ManagementConstants.DATABASE_NAME
-import ms.system.util.ManagementConstants.DATABASE_PASSWORD
-import ms.system.util.ManagementConstants.DATABASE_PORT
-import ms.system.util.ManagementConstants.DATABASE_USERNAME
-import java.sql.Connection
-import java.sql.DriverManager
-import java.sql.SQLException
-
-/**
- * Manages the sql connections.
- * @author Vexia
- */
-object SQLManager {
-
- /**
- * IF the sql manager is initialized.
- */
- var isInitialized = false
-
- /**
- * Initializes the sql manager.
- */
- @JvmStatic
- fun init() {
- isInitialized = true
- WorldListSQLHandler.clearWorldList()
- }
-
- /**
- * Gets a connection from the pool.
- * @return The connection.
- */
- @JvmStatic
- val connection: Connection?
- get() {
- try {
- return DriverManager.getConnection(
- "jdbc:mysql://$DATABASE_HOST_ADDRESS:$DATABASE_PORT/$DATABASE_NAME?useTimezone=true&serverTimezone=UTC",
- DATABASE_USERNAME,
- DATABASE_PASSWORD
- )
- } catch (e: SQLException) {
- println("Error: Mysql error message=" + e.message + ".")
- }
- return null
- }
-
- /**
- * Releases the connection so it's available for usage.
- * @param connection The connection.
- */
- @JvmStatic
- fun close(connection: Connection) {
- try {
- connection.close()
- } catch (e: SQLException) {
- e.printStackTrace()
- }
- }
-}
diff --git a/Management-Server/src/main/java/ms/system/mysql/SQLTable.java b/Management-Server/src/main/java/ms/system/mysql/SQLTable.java
deleted file mode 100644
index 3447edb23..000000000
--- a/Management-Server/src/main/java/ms/system/mysql/SQLTable.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package ms.system.mysql;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Represents an SQL table.
- * @author Emperor
- *
- */
-public final class SQLTable {
-
- /**
- * The columns.
- */
- private final SQLColumn[] columns;
-
- /**
- * Constructs a new {@code SQLTable} {@code Object}.
- * @param columns The columns.
- */
- public SQLTable(SQLColumn...columns) {
- this.columns = columns;
- }
-
- /**
- * Gets the column for the given name.
- * @param name The column name.
- * @return The column.
- */
- public SQLColumn getColumn(String name) {
- for (SQLColumn column : columns) {
- if (column.getName().equals(name)) {
- return column;
- }
- }
- return null;
- }
-
- /**
- * Gets the changed columns.
- * @return The columns.
- */
- public List getChanged() {
- List updated = new ArrayList<>(20);
- for (int i = 0; i < columns.length; i++) {
- SQLColumn column = columns[i];
- if (column.isChanged()) {
- updated.add(column);
- }
- }
- return updated;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/mysql/WorldListSQLHandler.java b/Management-Server/src/main/java/ms/system/mysql/WorldListSQLHandler.java
deleted file mode 100644
index cf5eb4674..000000000
--- a/Management-Server/src/main/java/ms/system/mysql/WorldListSQLHandler.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package ms.system.mysql;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.SQLException;
-
-import ms.world.GameServer;
-import ms.world.info.WorldInfo;
-
-/**
- * Handles the world list SQL database.
- * @author Emperor
- *
- */
-public final class WorldListSQLHandler extends SQLEntryHandler {
-
- /**
- * The table for this sql entry.
- */
- private static final String TABLE = "worlds";
-
- /**
- * Constructs a new {@code WorldListSQLHandler} {@code Object}.
- * @param entry The game server entry.
- */
- public WorldListSQLHandler(GameServer entry) {
- super(entry, TABLE, "world", "" + entry.getInfo().getWorldId());
- }
-
- /**
- * Clears the world list.
- */
- public static void clearWorldList() {
- Connection connection = SQLManager.getConnection();
- if(connection == null) return;
- try {
- PreparedStatement statement = connection.prepareStatement("DELETE FROM " + TABLE);
- statement.executeUpdate();
- } catch (Exception e) {
- e.printStackTrace();
- SQLManager.close(connection);
- } finally {
- SQLManager.close(connection);
- }
- }
-
- @Override
- public void parse() throws SQLException {
-
- }
-
- @Override
- public void create() throws SQLException {
- PreparedStatement statement = connection.prepareStatement("INSERT "+ table + "(world, ip, players, country, member, revision) VALUES('" + value + "', '" + entry.getInfo().getAddress() + "', '" + entry.getPlayerAmount() + "', '" + entry.getInfo().getCountry().getId() + "', '" + (entry.getInfo().isMembers() ? 1 : 0) + "', '" + entry.getInfo().getRevision() + "')");
- statement.executeUpdate();
- SQLManager.close(statement.getConnection());
- }
-
- @Override
- public void save() throws SQLException {
- super.read();
- if (result == null || !result.next()) {
- create();
- return;
- }
- int players = entry.getPlayerAmount();
- WorldInfo info = entry.getInfo();
- if (!entry.isActive()) {
- players = -1;
- }
- if (players <= 0) {
- PreparedStatement statement = connection.prepareStatement("UPDATE members SET online='0' WHERE lastWorld='" + value + "'");
- statement.executeUpdate();
- }
- PreparedStatement statement = connection.prepareStatement("UPDATE " + table + " SET players='" + players + "', ip='" + info.getAddress() + "', country='" + info.getCountry().getId() + "', member='" + (info.isMembers() ? 1 : 0) + "', revision='" + info.getRevision() + "' WHERE world='" + value + "'");
- statement.executeUpdate();
- SQLManager.close(statement.getConnection());
- }
-
- @Override
- public Connection getConnection() {
- return SQLManager.getConnection();
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/util/ByteBufferUtils.java b/Management-Server/src/main/java/ms/system/util/ByteBufferUtils.java
deleted file mode 100644
index e60e3b2eb..000000000
--- a/Management-Server/src/main/java/ms/system/util/ByteBufferUtils.java
+++ /dev/null
@@ -1,154 +0,0 @@
-package ms.system.util;
-
-import java.nio.ByteBuffer;
-import java.nio.charset.StandardCharsets;
-
-
-/**
- * Holds utility methods for reading/writing a byte buffer.
- * @author Emperor
- *
- */
-public final class ByteBufferUtils {
-
- /**
- * Gets a string from the byte buffer.
- * @param buffer The byte buffer.
- * @return The string.
- */
- public static String getString(ByteBuffer buffer) {
- StringBuilder sb = new StringBuilder();
- byte b;
- while ((b = buffer.get()) != 0) {
- sb.append((char) b);
- }
- return sb.toString();
- }
-
- /**
- * Puts a string on the byte buffer.
- * @param s The string to put.
- * @param buffer The byte buffer.
- */
- public static void putString(String s, ByteBuffer buffer) {
- buffer.put(s.getBytes(StandardCharsets.UTF_8)).put((byte) 0);
- }
-
- /**
- * Gets a string from the byte buffer.
- * @param s The string.
- * @param buffer The byte buffer.
- * @return The string.
- */
- public static ByteBuffer putGJ2String(String s, ByteBuffer buffer) {
- byte[] packed = new byte[256];
- int length = packGJString2(0, packed, s);
- return buffer.put((byte) 0).put(packed, 0, length).put((byte) 0);
- }
-
- /**
- * Decodes the XTEA encryption.
- * @param keys The keys.
- * @param start The start index.
- * @param end The end index.
- * @param buffer The byte buffer.
- */
- public static void decodeXTEA(int[] keys, int start, int end, ByteBuffer buffer) {
- int l = buffer.position();
- buffer.position(start);
- int length = (end - start) / 8;
- for (int i = 0; i < length; i++) {
- int firstInt = buffer.getInt();
- int secondInt = buffer.getInt();
- int sum = 0xc6ef3720;
- int delta = 0x9e3779b9;
- for (int j = 32; j-- > 0;) {
- secondInt -= keys[(sum & 0x1c84) >>> 11] + sum ^ (firstInt >>> 5 ^ firstInt << 4) + firstInt;
- sum -= delta;
- firstInt -= (secondInt >>> 5 ^ secondInt << 4) + secondInt ^ keys[sum & 3] + sum;
- }
- buffer.position(buffer.position() - 8);
- buffer.putInt(firstInt);
- buffer.putInt(secondInt);
- }
- buffer.position(l);
- }
-
- /**
- * Converts a String to an Integer?
- *
- * @param position
- * The position.
- * @param buffer
- * The buffer used.
- * @param string
- * The String to convert.
- * @return The Integer.
- */
- public static int packGJString2(int position, byte[] buffer, String string) {
- int length = string.length();
- int offset = position;
- for (int i = 0; length > i; i++) {
- int character = string.charAt(i);
- if (character > 127) {
- if (character > 2047) {
- buffer[offset++] = (byte) ((character | 919275) >> 12);
- buffer[offset++] = (byte) (128 | ((character >> 6) & 63));
- buffer[offset++] = (byte) (128 | (character & 63));
- } else {
- buffer[offset++] = (byte) ((character | 12309) >> 6);
- buffer[offset++] = (byte) (128 | (character & 63));
- }
- } else
- buffer[offset++] = (byte) character;
- }
- return offset - position;
- }
-
- /**
- * Gets a tri-byte from the buffer.
- * @param buffer The buffer.
- * @return The value.
- */
- public static int getTriByte(ByteBuffer buffer) {
- return ((buffer.get() & 0xFF) << 16) + ((buffer.get() & 0xFF) << 8) + (buffer.get() & 0xFF);
- }
-
- /**
- * Gets a smart from the buffer.
- * @param buffer The buffer.
- * @return The value.
- */
- public static int getSmart(ByteBuffer buffer) {
- int peek = buffer.get() & 0xFF;
- if (peek <= Byte.MAX_VALUE) {
- return peek;
- }
- return ((peek << 8) | (buffer.get() & 0xFF)) - 32768;
- }
-
- /**
- * Gets a smart from the buffer.
- * @param buffer The buffer.
- * @return The value.
- */
- public static int getBigSmart(ByteBuffer buffer) {
- int value = 0;
- int current = getSmart(buffer);
- while (current == 32767) {
- current = getSmart(buffer);
- value += 32767;
- }
- value += current;
- return value;
- }
-
- /**
- * Constructs a new {@code ByteBufferUtils} {@code Object}.
- */
- private ByteBufferUtils() {
- /*
- * empty.
- */
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/util/Command.java b/Management-Server/src/main/java/ms/system/util/Command.java
deleted file mode 100644
index fbfe0da09..000000000
--- a/Management-Server/src/main/java/ms/system/util/Command.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package ms.system.util;
-
-/**
- * Represents a command.
- * @author Emperor
- *
- */
-public abstract class Command {
-
- /**
- * The command name.
- */
- private final String name;
-
- /**
- * The command info.
- */
- private final String info;
-
- /**
- * Constructs a new {@code Command} {@code Object}.
- * @param name The command name.
- * @param info The command info.
- */
- public Command(String name, String info) {
- this.name = name;
- this.info = info;
- }
-
- /**
- * Runs the command.
- * @param args The arguments.
- */
- public abstract void run(String...args);
-
- /**
- * Gets the name value.
- * @return The name.
- */
- public String getName() {
- return name;
- }
-
- /**
- * Gets the info value.
- * @return The info.
- */
- public String getInfo() {
- return info;
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/util/EncryptionManager.java b/Management-Server/src/main/java/ms/system/util/EncryptionManager.java
deleted file mode 100644
index f5ee249c0..000000000
--- a/Management-Server/src/main/java/ms/system/util/EncryptionManager.java
+++ /dev/null
@@ -1,815 +0,0 @@
-package ms.system.util;
-
-import java.io.UnsupportedEncodingException;
-import java.security.SecureRandom;
-
-/**
- * Represents the class of simple encryption functions.
- * @author Unknown
- */
-public class EncryptionManager {
-
- // Define the BCrypt workload to use when generating password hashes. 10-31 is a valid value.
- private static int workload = 12;
-
- /**
- * Singleton instance.
- */
- private static final EncryptionManager INSTANCE = new EncryptionManager();
-
- /**
- * Constructs a new {@code EncryptionManager} {@code Object}.
- */
- private EncryptionManager() {
- //empty.
- }
-
- /**
- * This method can be used to generate a string representing an account password
- * suitable for storing in a database. It will be an OpenBSD-style crypt(3) formatted
- * hash string of length=60
- * The bcrypt workload is specified in the above static variable, a value from 10 to 31.
- * A workload of 12 is a very reasonable safe default as of 2013.
- * This automatically handles secure 128-bit salt generation and storage within the hash.
- * @param password_plaintext The account's plaintext password as provided during account creation,
- * or when changing an account's password.
- * @return String - a string of length 60 that is the bcrypt hashed password in crypt(3) format.
- */
- public String hashPassword(String password_plaintext) {
- String salt = BCrypt.gensalt(workload);
- String hashed_password = BCrypt.hashpw(password_plaintext, salt);
- return(hashed_password);
- }
-
- /**
- * This method can be used to verify a computed hash from a plaintext (e.g. during a login
- * request) with that of a stored hash from a database. The password hash from the database
- * must be passed as the second variable.
- * @param password_plaintext The account's plaintext password, as provided during a login request
- * @param stored_hash The account's stored password hash, retrieved from the authorization database
- * @return boolean - true if the password matches the password of the stored hash, false otherwise
- */
- public boolean checkPassword(String password_plaintext, String stored_hash) {
- boolean password_verified = false;
- if(null == stored_hash || !stored_hash.startsWith("$2a$"))
- throw new java.lang.IllegalArgumentException("Invalid hash provided for comparison");
- password_verified = BCrypt.checkpw(password_plaintext, stored_hash);
- return(password_verified);
- }
-
- // Copyright (c) 2006 Damien Miller
- //
- // Permission to use, copy, modify, and distribute this software for any
- // purpose with or without fee is hereby granted, provided that the above
- // copyright notice and this permission notice appear in all copies.
- //
- // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- // WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- // MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- // ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- // WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
- /**
- * Gets the instance value.
- * @return The instance.
- */
- public static EncryptionManager getInstance() {
- return INSTANCE;
- }
-
- /**
- * BCrypt implements OpenBSD-style Blowfish password hashing using
- * the scheme described in "A Future-Adaptable Password Scheme" by
- * Niels Provos and David Mazieres.
- *
- * This password hashing system tries to thwart off-line password
- * cracking using a computationally-intensive hashing algorithm,
- * based on Bruce Schneier's Blowfish cipher. The work factor of
- * the algorithm is parameterised, so it can be increased as
- * computers get faster.
- *
- * Usage is really simple. To hash a password for the first time,
- * call the hashpw method with a random salt, like this:
- *
- *
- * String pw_hash = BCrypt.hashpw(plain_password, BCrypt.gensalt());
- *
- *
- * To check whether a plaintext password matches one that has been
- * hashed previously, use the checkpw method:
- *
- *
- * if (BCrypt.checkpw(candidate_password, stored_hash))
- * System.out.println("It matches");
- * else
- * System.out.println("It does not match");
- *
- *
- * The gensalt() method takes an optional parameter (log_rounds)
- * that determines the computational complexity of the hashing:
- *
- *
- * String strong_salt = BCrypt.gensalt(10)
- * String stronger_salt = BCrypt.gensalt(12)
- *
- *
- * The amount of work increases exponentially (2**log_rounds), so
- * each increment is twice as much work. The default log_rounds is
- * 10, and the valid range is 4 to 31.
- *
- * @author Damien Miller
- * @version 0.2
- */
- public static class BCrypt {
- // BCrypt parameters
- private static final int GENSALT_DEFAULT_LOG2_ROUNDS = 10;
- private static final int BCRYPT_SALT_LEN = 16;
-
- // Blowfish parameters
- private static final int BLOWFISH_NUM_ROUNDS = 16;
-
- // Initial contents of key schedule
- private static final int P_orig[] = {
- 0x243f6a88, 0x85a308d3, 0x13198a2e, 0x03707344,
- 0xa4093822, 0x299f31d0, 0x082efa98, 0xec4e6c89,
- 0x452821e6, 0x38d01377, 0xbe5466cf, 0x34e90c6c,
- 0xc0ac29b7, 0xc97c50dd, 0x3f84d5b5, 0xb5470917,
- 0x9216d5d9, 0x8979fb1b
- };
- private static final int S_orig[] = {
- 0xd1310ba6, 0x98dfb5ac, 0x2ffd72db, 0xd01adfb7,
- 0xb8e1afed, 0x6a267e96, 0xba7c9045, 0xf12c7f99,
- 0x24a19947, 0xb3916cf7, 0x0801f2e2, 0x858efc16,
- 0x636920d8, 0x71574e69, 0xa458fea3, 0xf4933d7e,
- 0x0d95748f, 0x728eb658, 0x718bcd58, 0x82154aee,
- 0x7b54a41d, 0xc25a59b5, 0x9c30d539, 0x2af26013,
- 0xc5d1b023, 0x286085f0, 0xca417918, 0xb8db38ef,
- 0x8e79dcb0, 0x603a180e, 0x6c9e0e8b, 0xb01e8a3e,
- 0xd71577c1, 0xbd314b27, 0x78af2fda, 0x55605c60,
- 0xe65525f3, 0xaa55ab94, 0x57489862, 0x63e81440,
- 0x55ca396a, 0x2aab10b6, 0xb4cc5c34, 0x1141e8ce,
- 0xa15486af, 0x7c72e993, 0xb3ee1411, 0x636fbc2a,
- 0x2ba9c55d, 0x741831f6, 0xce5c3e16, 0x9b87931e,
- 0xafd6ba33, 0x6c24cf5c, 0x7a325381, 0x28958677,
- 0x3b8f4898, 0x6b4bb9af, 0xc4bfe81b, 0x66282193,
- 0x61d809cc, 0xfb21a991, 0x487cac60, 0x5dec8032,
- 0xef845d5d, 0xe98575b1, 0xdc262302, 0xeb651b88,
- 0x23893e81, 0xd396acc5, 0x0f6d6ff3, 0x83f44239,
- 0x2e0b4482, 0xa4842004, 0x69c8f04a, 0x9e1f9b5e,
- 0x21c66842, 0xf6e96c9a, 0x670c9c61, 0xabd388f0,
- 0x6a51a0d2, 0xd8542f68, 0x960fa728, 0xab5133a3,
- 0x6eef0b6c, 0x137a3be4, 0xba3bf050, 0x7efb2a98,
- 0xa1f1651d, 0x39af0176, 0x66ca593e, 0x82430e88,
- 0x8cee8619, 0x456f9fb4, 0x7d84a5c3, 0x3b8b5ebe,
- 0xe06f75d8, 0x85c12073, 0x401a449f, 0x56c16aa6,
- 0x4ed3aa62, 0x363f7706, 0x1bfedf72, 0x429b023d,
- 0x37d0d724, 0xd00a1248, 0xdb0fead3, 0x49f1c09b,
- 0x075372c9, 0x80991b7b, 0x25d479d8, 0xf6e8def7,
- 0xe3fe501a, 0xb6794c3b, 0x976ce0bd, 0x04c006ba,
- 0xc1a94fb6, 0x409f60c4, 0x5e5c9ec2, 0x196a2463,
- 0x68fb6faf, 0x3e6c53b5, 0x1339b2eb, 0x3b52ec6f,
- 0x6dfc511f, 0x9b30952c, 0xcc814544, 0xaf5ebd09,
- 0xbee3d004, 0xde334afd, 0x660f2807, 0x192e4bb3,
- 0xc0cba857, 0x45c8740f, 0xd20b5f39, 0xb9d3fbdb,
- 0x5579c0bd, 0x1a60320a, 0xd6a100c6, 0x402c7279,
- 0x679f25fe, 0xfb1fa3cc, 0x8ea5e9f8, 0xdb3222f8,
- 0x3c7516df, 0xfd616b15, 0x2f501ec8, 0xad0552ab,
- 0x323db5fa, 0xfd238760, 0x53317b48, 0x3e00df82,
- 0x9e5c57bb, 0xca6f8ca0, 0x1a87562e, 0xdf1769db,
- 0xd542a8f6, 0x287effc3, 0xac6732c6, 0x8c4f5573,
- 0x695b27b0, 0xbbca58c8, 0xe1ffa35d, 0xb8f011a0,
- 0x10fa3d98, 0xfd2183b8, 0x4afcb56c, 0x2dd1d35b,
- 0x9a53e479, 0xb6f84565, 0xd28e49bc, 0x4bfb9790,
- 0xe1ddf2da, 0xa4cb7e33, 0x62fb1341, 0xcee4c6e8,
- 0xef20cada, 0x36774c01, 0xd07e9efe, 0x2bf11fb4,
- 0x95dbda4d, 0xae909198, 0xeaad8e71, 0x6b93d5a0,
- 0xd08ed1d0, 0xafc725e0, 0x8e3c5b2f, 0x8e7594b7,
- 0x8ff6e2fb, 0xf2122b64, 0x8888b812, 0x900df01c,
- 0x4fad5ea0, 0x688fc31c, 0xd1cff191, 0xb3a8c1ad,
- 0x2f2f2218, 0xbe0e1777, 0xea752dfe, 0x8b021fa1,
- 0xe5a0cc0f, 0xb56f74e8, 0x18acf3d6, 0xce89e299,
- 0xb4a84fe0, 0xfd13e0b7, 0x7cc43b81, 0xd2ada8d9,
- 0x165fa266, 0x80957705, 0x93cc7314, 0x211a1477,
- 0xe6ad2065, 0x77b5fa86, 0xc75442f5, 0xfb9d35cf,
- 0xebcdaf0c, 0x7b3e89a0, 0xd6411bd3, 0xae1e7e49,
- 0x00250e2d, 0x2071b35e, 0x226800bb, 0x57b8e0af,
- 0x2464369b, 0xf009b91e, 0x5563911d, 0x59dfa6aa,
- 0x78c14389, 0xd95a537f, 0x207d5ba2, 0x02e5b9c5,
- 0x83260376, 0x6295cfa9, 0x11c81968, 0x4e734a41,
- 0xb3472dca, 0x7b14a94a, 0x1b510052, 0x9a532915,
- 0xd60f573f, 0xbc9bc6e4, 0x2b60a476, 0x81e67400,
- 0x08ba6fb5, 0x571be91f, 0xf296ec6b, 0x2a0dd915,
- 0xb6636521, 0xe7b9f9b6, 0xff34052e, 0xc5855664,
- 0x53b02d5d, 0xa99f8fa1, 0x08ba4799, 0x6e85076a,
- 0x4b7a70e9, 0xb5b32944, 0xdb75092e, 0xc4192623,
- 0xad6ea6b0, 0x49a7df7d, 0x9cee60b8, 0x8fedb266,
- 0xecaa8c71, 0x699a17ff, 0x5664526c, 0xc2b19ee1,
- 0x193602a5, 0x75094c29, 0xa0591340, 0xe4183a3e,
- 0x3f54989a, 0x5b429d65, 0x6b8fe4d6, 0x99f73fd6,
- 0xa1d29c07, 0xefe830f5, 0x4d2d38e6, 0xf0255dc1,
- 0x4cdd2086, 0x8470eb26, 0x6382e9c6, 0x021ecc5e,
- 0x09686b3f, 0x3ebaefc9, 0x3c971814, 0x6b6a70a1,
- 0x687f3584, 0x52a0e286, 0xb79c5305, 0xaa500737,
- 0x3e07841c, 0x7fdeae5c, 0x8e7d44ec, 0x5716f2b8,
- 0xb03ada37, 0xf0500c0d, 0xf01c1f04, 0x0200b3ff,
- 0xae0cf51a, 0x3cb574b2, 0x25837a58, 0xdc0921bd,
- 0xd19113f9, 0x7ca92ff6, 0x94324773, 0x22f54701,
- 0x3ae5e581, 0x37c2dadc, 0xc8b57634, 0x9af3dda7,
- 0xa9446146, 0x0fd0030e, 0xecc8c73e, 0xa4751e41,
- 0xe238cd99, 0x3bea0e2f, 0x3280bba1, 0x183eb331,
- 0x4e548b38, 0x4f6db908, 0x6f420d03, 0xf60a04bf,
- 0x2cb81290, 0x24977c79, 0x5679b072, 0xbcaf89af,
- 0xde9a771f, 0xd9930810, 0xb38bae12, 0xdccf3f2e,
- 0x5512721f, 0x2e6b7124, 0x501adde6, 0x9f84cd87,
- 0x7a584718, 0x7408da17, 0xbc9f9abc, 0xe94b7d8c,
- 0xec7aec3a, 0xdb851dfa, 0x63094366, 0xc464c3d2,
- 0xef1c1847, 0x3215d908, 0xdd433b37, 0x24c2ba16,
- 0x12a14d43, 0x2a65c451, 0x50940002, 0x133ae4dd,
- 0x71dff89e, 0x10314e55, 0x81ac77d6, 0x5f11199b,
- 0x043556f1, 0xd7a3c76b, 0x3c11183b, 0x5924a509,
- 0xf28fe6ed, 0x97f1fbfa, 0x9ebabf2c, 0x1e153c6e,
- 0x86e34570, 0xeae96fb1, 0x860e5e0a, 0x5a3e2ab3,
- 0x771fe71c, 0x4e3d06fa, 0x2965dcb9, 0x99e71d0f,
- 0x803e89d6, 0x5266c825, 0x2e4cc978, 0x9c10b36a,
- 0xc6150eba, 0x94e2ea78, 0xa5fc3c53, 0x1e0a2df4,
- 0xf2f74ea7, 0x361d2b3d, 0x1939260f, 0x19c27960,
- 0x5223a708, 0xf71312b6, 0xebadfe6e, 0xeac31f66,
- 0xe3bc4595, 0xa67bc883, 0xb17f37d1, 0x018cff28,
- 0xc332ddef, 0xbe6c5aa5, 0x65582185, 0x68ab9802,
- 0xeecea50f, 0xdb2f953b, 0x2aef7dad, 0x5b6e2f84,
- 0x1521b628, 0x29076170, 0xecdd4775, 0x619f1510,
- 0x13cca830, 0xeb61bd96, 0x0334fe1e, 0xaa0363cf,
- 0xb5735c90, 0x4c70a239, 0xd59e9e0b, 0xcbaade14,
- 0xeecc86bc, 0x60622ca7, 0x9cab5cab, 0xb2f3846e,
- 0x648b1eaf, 0x19bdf0ca, 0xa02369b9, 0x655abb50,
- 0x40685a32, 0x3c2ab4b3, 0x319ee9d5, 0xc021b8f7,
- 0x9b540b19, 0x875fa099, 0x95f7997e, 0x623d7da8,
- 0xf837889a, 0x97e32d77, 0x11ed935f, 0x16681281,
- 0x0e358829, 0xc7e61fd6, 0x96dedfa1, 0x7858ba99,
- 0x57f584a5, 0x1b227263, 0x9b83c3ff, 0x1ac24696,
- 0xcdb30aeb, 0x532e3054, 0x8fd948e4, 0x6dbc3128,
- 0x58ebf2ef, 0x34c6ffea, 0xfe28ed61, 0xee7c3c73,
- 0x5d4a14d9, 0xe864b7e3, 0x42105d14, 0x203e13e0,
- 0x45eee2b6, 0xa3aaabea, 0xdb6c4f15, 0xfacb4fd0,
- 0xc742f442, 0xef6abbb5, 0x654f3b1d, 0x41cd2105,
- 0xd81e799e, 0x86854dc7, 0xe44b476a, 0x3d816250,
- 0xcf62a1f2, 0x5b8d2646, 0xfc8883a0, 0xc1c7b6a3,
- 0x7f1524c3, 0x69cb7492, 0x47848a0b, 0x5692b285,
- 0x095bbf00, 0xad19489d, 0x1462b174, 0x23820e00,
- 0x58428d2a, 0x0c55f5ea, 0x1dadf43e, 0x233f7061,
- 0x3372f092, 0x8d937e41, 0xd65fecf1, 0x6c223bdb,
- 0x7cde3759, 0xcbee7460, 0x4085f2a7, 0xce77326e,
- 0xa6078084, 0x19f8509e, 0xe8efd855, 0x61d99735,
- 0xa969a7aa, 0xc50c06c2, 0x5a04abfc, 0x800bcadc,
- 0x9e447a2e, 0xc3453484, 0xfdd56705, 0x0e1e9ec9,
- 0xdb73dbd3, 0x105588cd, 0x675fda79, 0xe3674340,
- 0xc5c43465, 0x713e38d8, 0x3d28f89e, 0xf16dff20,
- 0x153e21e7, 0x8fb03d4a, 0xe6e39f2b, 0xdb83adf7,
- 0xe93d5a68, 0x948140f7, 0xf64c261c, 0x94692934,
- 0x411520f7, 0x7602d4f7, 0xbcf46b2e, 0xd4a20068,
- 0xd4082471, 0x3320f46a, 0x43b7d4b7, 0x500061af,
- 0x1e39f62e, 0x97244546, 0x14214f74, 0xbf8b8840,
- 0x4d95fc1d, 0x96b591af, 0x70f4ddd3, 0x66a02f45,
- 0xbfbc09ec, 0x03bd9785, 0x7fac6dd0, 0x31cb8504,
- 0x96eb27b3, 0x55fd3941, 0xda2547e6, 0xabca0a9a,
- 0x28507825, 0x530429f4, 0x0a2c86da, 0xe9b66dfb,
- 0x68dc1462, 0xd7486900, 0x680ec0a4, 0x27a18dee,
- 0x4f3ffea2, 0xe887ad8c, 0xb58ce006, 0x7af4d6b6,
- 0xaace1e7c, 0xd3375fec, 0xce78a399, 0x406b2a42,
- 0x20fe9e35, 0xd9f385b9, 0xee39d7ab, 0x3b124e8b,
- 0x1dc9faf7, 0x4b6d1856, 0x26a36631, 0xeae397b2,
- 0x3a6efa74, 0xdd5b4332, 0x6841e7f7, 0xca7820fb,
- 0xfb0af54e, 0xd8feb397, 0x454056ac, 0xba489527,
- 0x55533a3a, 0x20838d87, 0xfe6ba9b7, 0xd096954b,
- 0x55a867bc, 0xa1159a58, 0xcca92963, 0x99e1db33,
- 0xa62a4a56, 0x3f3125f9, 0x5ef47e1c, 0x9029317c,
- 0xfdf8e802, 0x04272f70, 0x80bb155c, 0x05282ce3,
- 0x95c11548, 0xe4c66d22, 0x48c1133f, 0xc70f86dc,
- 0x07f9c9ee, 0x41041f0f, 0x404779a4, 0x5d886e17,
- 0x325f51eb, 0xd59bc0d1, 0xf2bcc18f, 0x41113564,
- 0x257b7834, 0x602a9c60, 0xdff8e8a3, 0x1f636c1b,
- 0x0e12b4c2, 0x02e1329e, 0xaf664fd1, 0xcad18115,
- 0x6b2395e0, 0x333e92e1, 0x3b240b62, 0xeebeb922,
- 0x85b2a20e, 0xe6ba0d99, 0xde720c8c, 0x2da2f728,
- 0xd0127845, 0x95b794fd, 0x647d0862, 0xe7ccf5f0,
- 0x5449a36f, 0x877d48fa, 0xc39dfd27, 0xf33e8d1e,
- 0x0a476341, 0x992eff74, 0x3a6f6eab, 0xf4f8fd37,
- 0xa812dc60, 0xa1ebddf8, 0x991be14c, 0xdb6e6b0d,
- 0xc67b5510, 0x6d672c37, 0x2765d43b, 0xdcd0e804,
- 0xf1290dc7, 0xcc00ffa3, 0xb5390f92, 0x690fed0b,
- 0x667b9ffb, 0xcedb7d9c, 0xa091cf0b, 0xd9155ea3,
- 0xbb132f88, 0x515bad24, 0x7b9479bf, 0x763bd6eb,
- 0x37392eb3, 0xcc115979, 0x8026e297, 0xf42e312d,
- 0x6842ada7, 0xc66a2b3b, 0x12754ccc, 0x782ef11c,
- 0x6a124237, 0xb79251e7, 0x06a1bbe6, 0x4bfb6350,
- 0x1a6b1018, 0x11caedfa, 0x3d25bdd8, 0xe2e1c3c9,
- 0x44421659, 0x0a121386, 0xd90cec6e, 0xd5abea2a,
- 0x64af674e, 0xda86a85f, 0xbebfe988, 0x64e4c3fe,
- 0x9dbc8057, 0xf0f7c086, 0x60787bf8, 0x6003604d,
- 0xd1fd8346, 0xf6381fb0, 0x7745ae04, 0xd736fccc,
- 0x83426b33, 0xf01eab71, 0xb0804187, 0x3c005e5f,
- 0x77a057be, 0xbde8ae24, 0x55464299, 0xbf582e61,
- 0x4e58f48f, 0xf2ddfda2, 0xf474ef38, 0x8789bdc2,
- 0x5366f9c3, 0xc8b38e74, 0xb475f255, 0x46fcd9b9,
- 0x7aeb2661, 0x8b1ddf84, 0x846a0e79, 0x915f95e2,
- 0x466e598e, 0x20b45770, 0x8cd55591, 0xc902de4c,
- 0xb90bace1, 0xbb8205d0, 0x11a86248, 0x7574a99e,
- 0xb77f19b6, 0xe0a9dc09, 0x662d09a1, 0xc4324633,
- 0xe85a1f02, 0x09f0be8c, 0x4a99a025, 0x1d6efe10,
- 0x1ab93d1d, 0x0ba5a4df, 0xa186f20f, 0x2868f169,
- 0xdcb7da83, 0x573906fe, 0xa1e2ce9b, 0x4fcd7f52,
- 0x50115e01, 0xa70683fa, 0xa002b5c4, 0x0de6d027,
- 0x9af88c27, 0x773f8641, 0xc3604c06, 0x61a806b5,
- 0xf0177a28, 0xc0f586e0, 0x006058aa, 0x30dc7d62,
- 0x11e69ed7, 0x2338ea63, 0x53c2dd94, 0xc2c21634,
- 0xbbcbee56, 0x90bcb6de, 0xebfc7da1, 0xce591d76,
- 0x6f05e409, 0x4b7c0188, 0x39720a3d, 0x7c927c24,
- 0x86e3725f, 0x724d9db9, 0x1ac15bb4, 0xd39eb8fc,
- 0xed545578, 0x08fca5b5, 0xd83d7cd3, 0x4dad0fc4,
- 0x1e50ef5e, 0xb161e6f8, 0xa28514d9, 0x6c51133c,
- 0x6fd5c7e7, 0x56e14ec4, 0x362abfce, 0xddc6c837,
- 0xd79a3234, 0x92638212, 0x670efa8e, 0x406000e0,
- 0x3a39ce37, 0xd3faf5cf, 0xabc27737, 0x5ac52d1b,
- 0x5cb0679e, 0x4fa33742, 0xd3822740, 0x99bc9bbe,
- 0xd5118e9d, 0xbf0f7315, 0xd62d1c7e, 0xc700c47b,
- 0xb78c1b6b, 0x21a19045, 0xb26eb1be, 0x6a366eb4,
- 0x5748ab2f, 0xbc946e79, 0xc6a376d2, 0x6549c2c8,
- 0x530ff8ee, 0x468dde7d, 0xd5730a1d, 0x4cd04dc6,
- 0x2939bbdb, 0xa9ba4650, 0xac9526e8, 0xbe5ee304,
- 0xa1fad5f0, 0x6a2d519a, 0x63ef8ce2, 0x9a86ee22,
- 0xc089c2b8, 0x43242ef6, 0xa51e03aa, 0x9cf2d0a4,
- 0x83c061ba, 0x9be96a4d, 0x8fe51550, 0xba645bd6,
- 0x2826a2f9, 0xa73a3ae1, 0x4ba99586, 0xef5562e9,
- 0xc72fefd3, 0xf752f7da, 0x3f046f69, 0x77fa0a59,
- 0x80e4a915, 0x87b08601, 0x9b09e6ad, 0x3b3ee593,
- 0xe990fd5a, 0x9e34d797, 0x2cf0b7d9, 0x022b8b51,
- 0x96d5ac3a, 0x017da67d, 0xd1cf3ed6, 0x7c7d2d28,
- 0x1f9f25cf, 0xadf2b89b, 0x5ad6b472, 0x5a88f54c,
- 0xe029ac71, 0xe019a5e6, 0x47b0acfd, 0xed93fa9b,
- 0xe8d3c48d, 0x283b57cc, 0xf8d56629, 0x79132e28,
- 0x785f0191, 0xed756055, 0xf7960e44, 0xe3d35e8c,
- 0x15056dd4, 0x88f46dba, 0x03a16125, 0x0564f0bd,
- 0xc3eb9e15, 0x3c9057a2, 0x97271aec, 0xa93a072a,
- 0x1b3f6d9b, 0x1e6321f5, 0xf59c66fb, 0x26dcf319,
- 0x7533d928, 0xb155fdf5, 0x03563482, 0x8aba3cbb,
- 0x28517711, 0xc20ad9f8, 0xabcc5167, 0xccad925f,
- 0x4de81751, 0x3830dc8e, 0x379d5862, 0x9320f991,
- 0xea7a90c2, 0xfb3e7bce, 0x5121ce64, 0x774fbe32,
- 0xa8b6e37e, 0xc3293d46, 0x48de5369, 0x6413e680,
- 0xa2ae0810, 0xdd6db224, 0x69852dfd, 0x09072166,
- 0xb39a460a, 0x6445c0dd, 0x586cdecf, 0x1c20c8ae,
- 0x5bbef7dd, 0x1b588d40, 0xccd2017f, 0x6bb4e3bb,
- 0xdda26a7e, 0x3a59ff45, 0x3e350a44, 0xbcb4cdd5,
- 0x72eacea8, 0xfa6484bb, 0x8d6612ae, 0xbf3c6f47,
- 0xd29be463, 0x542f5d9e, 0xaec2771b, 0xf64e6370,
- 0x740e0d8d, 0xe75b1357, 0xf8721671, 0xaf537d5d,
- 0x4040cb08, 0x4eb4e2cc, 0x34d2466a, 0x0115af84,
- 0xe1b00428, 0x95983a1d, 0x06b89fb4, 0xce6ea048,
- 0x6f3f3b82, 0x3520ab82, 0x011a1d4b, 0x277227f8,
- 0x611560b1, 0xe7933fdc, 0xbb3a792b, 0x344525bd,
- 0xa08839e1, 0x51ce794b, 0x2f32c9b7, 0xa01fbac9,
- 0xe01cc87e, 0xbcc7d1f6, 0xcf0111c3, 0xa1e8aac7,
- 0x1a908749, 0xd44fbd9a, 0xd0dadecb, 0xd50ada38,
- 0x0339c32a, 0xc6913667, 0x8df9317c, 0xe0b12b4f,
- 0xf79e59b7, 0x43f5bb3a, 0xf2d519ff, 0x27d9459c,
- 0xbf97222c, 0x15e6fc2a, 0x0f91fc71, 0x9b941525,
- 0xfae59361, 0xceb69ceb, 0xc2a86459, 0x12baa8d1,
- 0xb6c1075e, 0xe3056a0c, 0x10d25065, 0xcb03a442,
- 0xe0ec6e0e, 0x1698db3b, 0x4c98a0be, 0x3278e964,
- 0x9f1f9532, 0xe0d392df, 0xd3a0342b, 0x8971f21e,
- 0x1b0a7441, 0x4ba3348c, 0xc5be7120, 0xc37632d8,
- 0xdf359f8d, 0x9b992f2e, 0xe60b6f47, 0x0fe3f11d,
- 0xe54cda54, 0x1edad891, 0xce6279cf, 0xcd3e7e6f,
- 0x1618b166, 0xfd2c1d05, 0x848fd2c5, 0xf6fb2299,
- 0xf523f357, 0xa6327623, 0x93a83531, 0x56cccd02,
- 0xacf08162, 0x5a75ebb5, 0x6e163697, 0x88d273cc,
- 0xde966292, 0x81b949d0, 0x4c50901b, 0x71c65614,
- 0xe6c6c7bd, 0x327a140a, 0x45e1d006, 0xc3f27b9a,
- 0xc9aa53fd, 0x62a80f00, 0xbb25bfe2, 0x35bdd2f6,
- 0x71126905, 0xb2040222, 0xb6cbcf7c, 0xcd769c2b,
- 0x53113ec0, 0x1640e3d3, 0x38abbd60, 0x2547adf0,
- 0xba38209c, 0xf746ce76, 0x77afa1c5, 0x20756060,
- 0x85cbfe4e, 0x8ae88dd8, 0x7aaaf9b0, 0x4cf9aa7e,
- 0x1948c25c, 0x02fb8a8c, 0x01c36ae4, 0xd6ebe1f9,
- 0x90d4f869, 0xa65cdea0, 0x3f09252d, 0xc208e69f,
- 0xb74e6132, 0xce77e25b, 0x578fdfe3, 0x3ac372e6
- };
-
- // bcrypt IV: "OrpheanBeholderScryDoubt"
- static private final int bf_crypt_ciphertext[] = {
- 0x4f727068, 0x65616e42, 0x65686f6c,
- 0x64657253, 0x63727944, 0x6f756274
- };
-
- // Table for Base64 encoding
- static private final char base64_code[] = {
- '.', '/', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
- 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
- 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
- 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
- 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5',
- '6', '7', '8', '9'
- };
-
- // Table for Base64 decoding
- static private final byte index_64[] = {
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 0, 1, 54, 55,
- 56, 57, 58, 59, 60, 61, 62, 63, -1, -1,
- -1, -1, -1, -1, -1, 2, 3, 4, 5, 6,
- 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
- 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
- -1, -1, -1, -1, -1, -1, 28, 29, 30,
- 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
- 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, -1, -1, -1, -1, -1
- };
-
- // Expanded Blowfish key
- private int P[];
- private int S[];
-
- /**
- * Encode a byte array using bcrypt's slightly-modified base64
- * encoding scheme. Note that this is *not* compatible with
- * the standard MIME-base64 encoding.
- *
- * @param d the byte array to encode
- * @param len the number of bytes to encode
- * @return base64-encoded string
- * @exception IllegalArgumentException if the length is invalid
- */
- private static String encode_base64(byte d[], int len)
- throws IllegalArgumentException {
- int off = 0;
- StringBuffer rs = new StringBuffer();
- int c1, c2;
-
- if (len <= 0 || len > d.length)
- throw new IllegalArgumentException ("Invalid len");
-
- while (off < len) {
- c1 = d[off++] & 0xff;
- rs.append(base64_code[(c1 >> 2) & 0x3f]);
- c1 = (c1 & 0x03) << 4;
- if (off >= len) {
- rs.append(base64_code[c1 & 0x3f]);
- break;
- }
- c2 = d[off++] & 0xff;
- c1 |= (c2 >> 4) & 0x0f;
- rs.append(base64_code[c1 & 0x3f]);
- c1 = (c2 & 0x0f) << 2;
- if (off >= len) {
- rs.append(base64_code[c1 & 0x3f]);
- break;
- }
- c2 = d[off++] & 0xff;
- c1 |= (c2 >> 6) & 0x03;
- rs.append(base64_code[c1 & 0x3f]);
- rs.append(base64_code[c2 & 0x3f]);
- }
- return rs.toString();
- }
-
- /**
- * Look up the 3 bits base64-encoded by the specified character,
- * range-checking againt conversion table
- * @param x the base64-encoded value
- * @return the decoded value of x
- */
- private static byte char64(char x) {
- if ((int)x > index_64.length)
- return -1;
- return index_64[(int)x];
- }
-
- /**
- * Decode a string encoded using bcrypt's base64 scheme to a
- * byte array. Note that this is *not* compatible with
- * the standard MIME-base64 encoding.
- * @param s the string to decode
- * @param maxolen the maximum number of bytes to decode
- * @return an array containing the decoded bytes
- * @throws IllegalArgumentException if maxolen is invalid
- */
- private static byte[] decode_base64(String s, int maxolen)
- throws IllegalArgumentException {
- StringBuffer rs = new StringBuffer();
- int off = 0, slen = s.length(), olen = 0;
- byte ret[];
- byte c1, c2, c3, c4, o;
-
- if (maxolen <= 0)
- throw new IllegalArgumentException ("Invalid maxolen");
-
- while (off < slen - 1 && olen < maxolen) {
- c1 = char64(s.charAt(off++));
- c2 = char64(s.charAt(off++));
- if (c1 == -1 || c2 == -1)
- break;
- o = (byte)(c1 << 2);
- o |= (c2 & 0x30) >> 4;
- rs.append((char)o);
- if (++olen >= maxolen || off >= slen)
- break;
- c3 = char64(s.charAt(off++));
- if (c3 == -1)
- break;
- o = (byte)((c2 & 0x0f) << 4);
- o |= (c3 & 0x3c) >> 2;
- rs.append((char)o);
- if (++olen >= maxolen || off >= slen)
- break;
- c4 = char64(s.charAt(off++));
- o = (byte)((c3 & 0x03) << 6);
- o |= c4;
- rs.append((char)o);
- ++olen;
- }
-
- ret = new byte[olen];
- for (off = 0; off < olen; off++)
- ret[off] = (byte)rs.charAt(off);
- return ret;
- }
-
- /**
- * Blowfish encipher a single 64-bit block encoded as
- * two 32-bit halves
- * @param lr an array containing the two 32-bit half blocks
- * @param off the position in the array of the blocks
- */
- private final void encipher(int lr[], int off) {
- int i, n, l = lr[off], r = lr[off + 1];
-
- l ^= P[0];
- for (i = 0; i <= BLOWFISH_NUM_ROUNDS - 2;) {
- // Feistel substitution on left word
- n = S[(l >> 24) & 0xff];
- n += S[0x100 | ((l >> 16) & 0xff)];
- n ^= S[0x200 | ((l >> 8) & 0xff)];
- n += S[0x300 | (l & 0xff)];
- r ^= n ^ P[++i];
-
- // Feistel substitution on right word
- n = S[(r >> 24) & 0xff];
- n += S[0x100 | ((r >> 16) & 0xff)];
- n ^= S[0x200 | ((r >> 8) & 0xff)];
- n += S[0x300 | (r & 0xff)];
- l ^= n ^ P[++i];
- }
- lr[off] = r ^ P[BLOWFISH_NUM_ROUNDS + 1];
- lr[off + 1] = l;
- }
-
- /**
- * Cycically extract a word of key material
- * @param data the string to extract the data from
- * @param offp a "pointer" (as a one-entry array) to the
- * current offset into data
- * @return the next word of material from data
- */
- private static int streamtoword(byte data[], int offp[]) {
- int i;
- int word = 0;
- int off = offp[0];
-
- for (i = 0; i < 4; i++) {
- word = (word << 8) | (data[off] & 0xff);
- off = (off + 1) % data.length;
- }
-
- offp[0] = off;
- return word;
- }
-
- /**
- * Initialise the Blowfish key schedule
- */
- private void init_key() {
- P = (int[])P_orig.clone();
- S = (int[])S_orig.clone();
- }
-
- /**
- * Key the Blowfish cipher
- * @param key an array containing the key
- */
- private void key(byte key[]) {
- int i;
- int koffp[] = { 0 };
- int lr[] = { 0, 0 };
- int plen = P.length, slen = S.length;
-
- for (i = 0; i < plen; i++)
- P[i] = P[i] ^ streamtoword(key, koffp);
-
- for (i = 0; i < plen; i += 2) {
- encipher(lr, 0);
- P[i] = lr[0];
- P[i + 1] = lr[1];
- }
-
- for (i = 0; i < slen; i += 2) {
- encipher(lr, 0);
- S[i] = lr[0];
- S[i + 1] = lr[1];
- }
- }
-
- /**
- * Perform the "enhanced key schedule" step described by
- * Provos and Mazieres in "A Future-Adaptable Password Scheme"
- * http://www.openbsd.org/papers/bcrypt-paper.ps
- * @param data salt information
- * @param key password information
- */
- private void ekskey(byte data[], byte key[]) {
- int i;
- int koffp[] = { 0 }, doffp[] = { 0 };
- int lr[] = { 0, 0 };
- int plen = P.length, slen = S.length;
-
- for (i = 0; i < plen; i++)
- P[i] = P[i] ^ streamtoword(key, koffp);
-
- for (i = 0; i < plen; i += 2) {
- lr[0] ^= streamtoword(data, doffp);
- lr[1] ^= streamtoword(data, doffp);
- encipher(lr, 0);
- P[i] = lr[0];
- P[i + 1] = lr[1];
- }
-
- for (i = 0; i < slen; i += 2) {
- lr[0] ^= streamtoword(data, doffp);
- lr[1] ^= streamtoword(data, doffp);
- encipher(lr, 0);
- S[i] = lr[0];
- S[i + 1] = lr[1];
- }
- }
-
- /**
- * Perform the central password hashing step in the
- * bcrypt scheme
- * @param password the password to hash
- * @param salt the binary salt to hash with the password
- * @param log_rounds the binary logarithm of the number
- * of rounds of hashing to apply
- * @return an array containing the binary hashed password
- */
- private byte[] crypt_raw(byte password[], byte salt[], int log_rounds) {
- int rounds, i, j;
- int cdata[] = (int[])bf_crypt_ciphertext.clone();
- int clen = cdata.length;
- byte ret[];
-
- if (log_rounds < 4 || log_rounds > 31)
- throw new IllegalArgumentException ("Bad number of rounds");
- rounds = 1 << log_rounds;
- if (salt.length != BCRYPT_SALT_LEN)
- throw new IllegalArgumentException ("Bad salt length");
-
- init_key();
- ekskey(salt, password);
- for (i = 0; i < rounds; i++) {
- key(password);
- key(salt);
- }
-
- for (i = 0; i < 64; i++) {
- for (j = 0; j < (clen >> 1); j++)
- encipher(cdata, j << 1);
- }
-
- ret = new byte[clen * 4];
- for (i = 0, j = 0; i < clen; i++) {
- ret[j++] = (byte)((cdata[i] >> 24) & 0xff);
- ret[j++] = (byte)((cdata[i] >> 16) & 0xff);
- ret[j++] = (byte)((cdata[i] >> 8) & 0xff);
- ret[j++] = (byte)(cdata[i] & 0xff);
- }
- return ret;
- }
-
- /**
- * Hash a password using the OpenBSD bcrypt scheme
- * @param password the password to hash
- * @param salt the salt to hash with (perhaps generated
- * using BCrypt.gensalt)
- * @return the hashed password
- */
- public static String hashpw(String password, String salt) {
- BCrypt B;
- String real_salt;
- byte passwordb[], saltb[], hashed[];
- char minor = (char)0;
- int rounds, off = 0;
- StringBuffer rs = new StringBuffer();
-
- if (salt.charAt(0) != '$' || salt.charAt(1) != '2')
- throw new IllegalArgumentException ("Invalid salt version");
- if (salt.charAt(2) == '$')
- off = 3;
- else {
- minor = salt.charAt(2);
- if (minor != 'a' || salt.charAt(3) != '$')
- throw new IllegalArgumentException ("Invalid salt revision");
- off = 4;
- }
-
- // Extract number of rounds
- if (salt.charAt(off + 2) > '$')
- throw new IllegalArgumentException ("Missing salt rounds");
- rounds = Integer.parseInt(salt.substring(off, off + 2));
-
- real_salt = salt.substring(off + 3, off + 25);
- try {
- passwordb = (password + (minor >= 'a' ? "\000" : "")).getBytes("UTF-8");
- } catch (UnsupportedEncodingException uee) {
- throw new AssertionError("UTF-8 is not supported");
- }
-
- saltb = decode_base64(real_salt, BCRYPT_SALT_LEN);
-
- B = new BCrypt();
- hashed = B.crypt_raw(passwordb, saltb, rounds);
-
- rs.append("$2");
- if (minor >= 'a')
- rs.append(minor);
- rs.append("$");
- if (rounds < 10)
- rs.append("0");
- rs.append(Integer.toString(rounds));
- rs.append("$");
- rs.append(encode_base64(saltb, saltb.length));
- rs.append(encode_base64(hashed,
- bf_crypt_ciphertext.length * 4 - 1));
- return rs.toString();
- }
-
- /**
- * Generate a salt for use with the BCrypt.hashpw() method
- * @param log_rounds the log2 of the number of rounds of
- * hashing to apply - the work factor therefore increases as
- * 2**log_rounds.
- * @param random an instance of SecureRandom to use
- * @return an encoded salt value
- */
- public static String gensalt(int log_rounds, SecureRandom random) {
- StringBuffer rs = new StringBuffer();
- byte rnd[] = new byte[BCRYPT_SALT_LEN];
-
- random.nextBytes(rnd);
-
- rs.append("$2a$");
- if (log_rounds < 10)
- rs.append("0");
- rs.append(Integer.toString(log_rounds));
- rs.append("$");
- rs.append(encode_base64(rnd, rnd.length));
- return rs.toString();
- }
-
- /**
- * Generate a salt for use with the BCrypt.hashpw() method
- * @param log_rounds the log2 of the number of rounds of
- * hashing to apply - the work factor therefore increases as
- * 2**log_rounds.
- * @return an encoded salt value
- */
- public static String gensalt(int log_rounds) {
- return gensalt(log_rounds, new SecureRandom());
- }
-
- /**
- * Generate a salt for use with the BCrypt.hashpw() method,
- * selecting a reasonable default for the number of hashing
- * rounds to apply
- * @return an encoded salt value
- */
- public static String gensalt() {
- return gensalt(GENSALT_DEFAULT_LOG2_ROUNDS);
- }
-
- /**
- * Check that a plaintext password matches a previously hashed
- * one
- * @param plaintext the plaintext password to verify
- * @param hashed the previously-hashed password
- * @return true if the passwords match, false otherwise
- */
- public static boolean checkpw(String plaintext, String hashed) {
- return (hashed.compareTo(hashpw(plaintext, hashed)) == 0);
- }
- }
-
-}
diff --git a/Management-Server/src/main/java/ms/system/util/ManagementConfigParser.kt b/Management-Server/src/main/java/ms/system/util/ManagementConfigParser.kt
deleted file mode 100644
index 90c0ce80f..000000000
--- a/Management-Server/src/main/java/ms/system/util/ManagementConfigParser.kt
+++ /dev/null
@@ -1,71 +0,0 @@
-package ms.system.util
-
-import org.json.simple.JSONObject
-import org.json.simple.parser.JSONParser
-import java.io.File
-import java.io.FileReader
-import kotlin.system.exitProcess
-
-/**
- * Class for parsing the server config, I.E default.conf
- * @param path the path to the JSON file to parse.
- * @author Ceikry
- */
-class ManagementConfigParser(path: String) {
- val pathTo = parsePath(path)
- val confFile = File(pathTo)
- val parser = JSONParser()
- var reader: FileReader? = null
- var data: JSONObject? = null
-
- init {
- if(!confFile.canonicalFile.exists()){
- println("Could not find ${confFile.canonicalFile} - Double check your working directory!")
- exitProcess(0)
- } else if(!pathTo.contains(".json")) {
- println("Config file MUST be a JSON file!!")
- println("(Got $pathTo)")
- } else {
- reader = FileReader(pathTo)
- data = parser.parse(reader) as JSONObject
- parseDatabaseInformation()
- parseWorldTechnicalSettings()
- ManagementConstants.SECRET_KEY = data!!["secret_key"].toString()
- }
- }
-
- private fun parseDatabaseInformation(){
- data ?: return
- val dbData = data!!["DatabaseInformation"] as JSONObject
- ManagementConstants.parseDBProp(dbData)
- }
-
- private fun parseWorldTechnicalSettings(){
- data ?: return
- val wtiData = data!!["WorldTechnicalInformation"] as JSONObject
- ManagementConstants.parseWTIProp(wtiData)
- }
-
- /**
- * Parses a path string
- * @author Ceikry
- * @param pathString The string to parse
- * @return a String with the proper file separators for the current OS.
- */
- fun parsePath(pathString: String): String {
- var pathTokens: List? = null
- if(pathString.contains("/"))
- pathTokens = pathString.split("/")
- else if(pathString.contains("\\"))
- pathTokens = pathString.split("\\")
-
- pathTokens ?: return pathString //return the initial pathString if path does not contain file separators.
- var pathProduct = ""
- for(token in pathTokens){
- if(token != "")
- pathProduct += "$token${File.separator}"
- }
-
- return pathProduct
- }
-}
diff --git a/Management-Server/src/main/java/ms/system/util/ManagementConstants.kt b/Management-Server/src/main/java/ms/system/util/ManagementConstants.kt
deleted file mode 100644
index 01d40fb5a..000000000
--- a/Management-Server/src/main/java/ms/system/util/ManagementConstants.kt
+++ /dev/null
@@ -1,44 +0,0 @@
-package ms.system.util
-
-import org.json.simple.JSONObject
-
-object ManagementConstants {
-
- //MySQL main database name
- var DATABASE_NAME: String = "global"
-
- //MySQL database username
- var DATABASE_USERNAME: String = "root"
-
- //MySQL database password
- var DATABASE_PASSWORD: String = ""
-
- //MySQL host
- var DATABASE_HOST_ADDRESS: String = "127.0.0.1"
-
- //MySQL port
- var DATABASE_PORT: Int = 3306
-
- //Max amount of worlds supported on the world list
- var MAX_WORLD_AMOUNT: Int = 10
-
- //User world hop delay in seconds
- var WORLD_HOP_DELAY: Long = 20_000L
-
- @JvmStatic
- var SECRET_KEY: String = ""
-
- fun parseDBProp(data: JSONObject) {
- DATABASE_NAME = data["database_name"].toString()
- DATABASE_USERNAME = data["database_username"].toString()
- DATABASE_PASSWORD = data["database_password"].toString()
- DATABASE_HOST_ADDRESS = data["database_host"].toString()
- DATABASE_PORT = data["database_port"].toString().toInt()
- }
-
- fun parseWTIProp(data: JSONObject) {
- MAX_WORLD_AMOUNT = data["world_limit"].toString().toInt()
- WORLD_HOP_DELAY = data["worldhop_delay"].toString().toLong()
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/util/PlayerDatabaseGen.java b/Management-Server/src/main/java/ms/system/util/PlayerDatabaseGen.java
deleted file mode 100644
index e4187f7ee..000000000
--- a/Management-Server/src/main/java/ms/system/util/PlayerDatabaseGen.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package ms.system.util;
-
-/**
- * Handles generating a player database.
- * @author Emperor
- *
- */
-public final class PlayerDatabaseGen {
-
- /**
- * The main method.
- * @param args The arguments.
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
-
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/system/util/StringUtils.java b/Management-Server/src/main/java/ms/system/util/StringUtils.java
deleted file mode 100644
index 2a85aea8f..000000000
--- a/Management-Server/src/main/java/ms/system/util/StringUtils.java
+++ /dev/null
@@ -1,640 +0,0 @@
-package ms.system.util;
-
-import java.text.DecimalFormat;
-
-import ms.net.packet.IoBuffer;
-
-/**
- * The string utils.
- * @author Emperor
- *
- */
-public final class StringUtils {
-
- /**
- * The valid characters to be used in names/messages/...
- */
- private static final char[] VALID_CHARS = {
- '_', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
- 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q',
- 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
- '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'
- };
- /**
- * The an int array241.
- */
- private final static int[] anIntArray241 = { 215, 203, 83, 158, 104, 101, 93, 84,
- 107, 103, 109, 95, 94, 98, 89, 86, 70, 41, 32, 27, 24, 23, -1, -2,
- 26, -3, -4, 31, 30, -5, -6, -7, 37, 38, 36, -8, -9, -10, 40, -11,
- -12, 55, 48, 46, 47, -13, -14, -15, 52, 51, -16, -17, 54, -18, -19,
- 63, 60, 59, -20, -21, 62, -22, -23, 67, 66, -24, -25, 69, -26, -27,
- 199, 132, 80, 77, 76, -28, -29, 79, -30, -31, 87, 85, -32, -33,
- -34, -35, -36, 197, -37, 91, -38, 134, -39, -40, -41, 97, -42, -43,
- 133, 106, -44, 117, -45, -46, 139, -47, -48, 110, -49, -50, 114,
- 113, -51, -52, 116, -53, -54, 135, 138, 136, 129, 125, 124, -55,
- -56, 130, 128, -57, -58, -59, 183, -60, -61, -62, -63, -64, 148,
- -65, -66, 153, 149, 145, 144, -67, -68, 147, -69, -70, -71, 152,
- 154, -72, -73, -74, 157, 171, -75, -76, 207, 184, 174, 167, 166,
- 165, -77, -78, -79, 172, 170, -80, -81, -82, 178, -83, 177, 182,
- -84, -85, 187, 181, -86, -87, -88, -89, 206, 221, -90, 189, -91,
- 198, 254, 262, 195, 196, -92, -93, -94, -95, -96, 252, 255, 250,
- -97, 211, 209, -98, -99, 212, -100, 213, -101, -102, -103, 224,
- -104, 232, 227, 220, 226, -105, -106, 246, 236, -107, 243, -108,
- -109, 231, 237, 235, -110, -111, 239, 238, -112, -113, -114, -115,
- -116, 241, -117, 244, -118, -119, 248, -120, 249, -121, -122, -123,
- 253, -124, -125, -126, -127, 259, 258, -128, -129, 261, -130, -131,
- 390, 327, 296, 281, 274, 271, 270, -132, -133, 273, -134, -135,
- 278, 277, -136, -137, 280, -138, -139, 289, 286, 285, -140, -141,
- 288, -142, -143, 293, 292, -144, -145, 295, -146, -147, 312, 305,
- 302, 301, -148, -149, 304, -150, -151, 309, 308, -152, -153, 311,
- -154, -155, 320, 317, 316, -156, -157, 319, -158, -159, 324, 323,
- -160, -161, 326, -162, -163, 359, 344, 337, 334, 333, -164, -165,
- 336, -166, -167, 341, 340, -168, -169, 343, -170, -171, 352, 349,
- 348, -172, -173, 351, -174, -175, 356, 355, -176, -177, 358, -178,
- -179, 375, 368, 365, 364, -180, -181, 367, -182, -183, 372, 371,
- -184, -185, 374, -186, -187, 383, 380, 379, -188, -189, 382, -190,
- -191, 387, 386, -192, -193, 389, -194, -195, 454, 423, 408, 401,
- 398, 397, -196, -197, 400, -198, -199, 405, 404, -200, -201, 407,
- -202, -203, 416, 413, 412, -204, -205, 415, -206, -207, 420, 419,
- -208, -209, 422, -210, -211, 439, 432, 429, 428, -212, -213, 431,
- -214, -215, 436, 435, -216, -217, 438, -218, -219, 447, 444, 443,
- -220, -221, 446, -222, -223, 451, 450, -224, -225, 453, -226, -227,
- 486, 471, 464, 461, 460, -228, -229, 463, -230, -231, 468, 467,
- -232, -233, 470, -234, -235, 479, 476, 475, -236, -237, 478, -238,
- -239, 483, 482, -240, -241, 485, -242, -243, 499, 495, 492, 491,
- -244, -245, 494, -246, -247, 497, -248, 502, -249, 506, 503, -250,
- -251, 505, -252, -253, 508, -254, 510, -255, -256, 0 };
-
- /**
- * Constructs a new {@code StringUtils.java} {@code Object}.
- */
- public StringUtils() {
- /**
- * empty.
- */
- }
- /**
- * Method used to get the formatted number as a string from the integer inputed.
- * @param amount the ammount.
- * @return the string value.
- */
- public static String getFormattedNumber(int amount) {
- return new DecimalFormat("#,###,##0").format(amount).toString();
- }
- /**
- * Checks if the string contains an invalid character.
- * @param nameThe string.
- * @return {@code True} if so.
- */
- public static boolean containsInvalidCharacter(String name) {
- for (char c : name.toCharArray()) {
- boolean pass = false;
- for (char vc : VALID_CHARS)
- if (vc == c) {
- pass = true;
- break;
- }
- if (!pass)
- return true;
- }
- return false;
- }
- /**
- * If a word starts with a e i o u h for grammar = a + n.
- * @param word The word.
- * @return If the a should have +n {@code true}.
- */
- public static boolean isPlusN(String word) {
- if (word == null)
- return false;
- String s = word.toLowerCase();
- return s.charAt(0) == 'a' || s.charAt(0) == 'e' || s.charAt(0) == 'i'
- || s.charAt(0) == 'o' || s.charAt(0) == 'u'
- || (s.charAt(0) == 'h' && s.length() > 1 && s.charAt(1) != 'e');
- }
- /**
- * Method used to get the player name as a long.
- * @param s the string.
- * @return the long.
- */
- public static long getPlayerNameLong(String s) {
- long l = 0L;
- for(int i = 0; i < s.length() && i < 12; i++) {
- char c = s.charAt(i);
- l *= 37L;
- if(c >= 'A' && c <= 'Z') l += (1 + c) - 65;
- else if(c >= 'a' && c <= 'z') l += (1 + c) - 97;
- else if(c >= '0' && c <= '9') l += (27 + c) - 48;
- }
- while(l % 37L == 0L && l != 0L) l /= 37L;
- return l;
- }
-
- /**
- * Method used to convert the string to a long.
- * @param s the string.
- * @return the long.
- */
- public static long convertStringToLong(String s) {
- if (s.length() > 20) {
- throw new IllegalArgumentException("String is too long: " + s);
- }
- long out = 0L;
- for (int i = 0; i < s.length(); ++i) {
- long m = reducedMapping(s.codePointAt(i));
- if (m == -1) {
- throw new IllegalArgumentException("Unmapped Character in String: " + s);
- }
- m <<= ((9 - i) * 6) + 4;
- out |= m;
- }
- return out;
- }
-
- /**
- * Formats the string as display name.
- * @param name The string to format.
- * @return The formatted name.
- */
- public static String formatDisplayName(String name) {
- name = name.replaceAll("_", " ");
- name = name.toLowerCase();
- StringBuilder newName = new StringBuilder();
- boolean wasSpace = true;
- for (int i = 0; i < name.length(); i++) {
- if (wasSpace) {
- newName.append(("" + name.charAt(i)).toUpperCase());
- wasSpace = false;
- } else {
- newName.append(name.charAt(i));
- }
- if (name.charAt(i) == ' ') {
- wasSpace = true;
- }
- }
- return newName.toString();
- }
-
- /**
- * Gets the byte for the character.
- * @param c The character.
- * @return The byte.
- */
- private static final byte getByte(char c) {
- byte charByte;
- if (c > 0 && c < '\200' || c >= '\240' && c <= '\377')
- charByte = (byte) c;
- else if (c != '\u20AC') {
- if (c != '\u201A') {
- if (c != '\u0192') {
- if (c == '\u201E')
- charByte = -124;
- else if (c != '\u2026') {
- if (c != '\u2020') {
- if (c == '\u2021')
- charByte = -121;
- else if (c == '\u02C6')
- charByte = -120;
- else if (c == '\u2030')
- charByte = -119;
- else if (c == '\u0160')
- charByte = -118;
- else if (c == '\u2039')
- charByte = -117;
- else if (c == '\u0152')
- charByte = -116;
- else if (c != '\u017D') {
- if (c == '\u2018')
- charByte = -111;
- else if (c != '\u2019') {
- if (c != '\u201C') {
- if (c == '\u201D')
- charByte = -108;
- else if (c != '\u2022') {
- if (c == '\u2013')
- charByte = -106;
- else if (c == '\u2014')
- charByte = -105;
- else if (c == '\u02DC')
- charByte = -104;
- else if (c == '\u2122')
- charByte = -103;
- else if (c != '\u0161') {
- if (c == '\u203A')
- charByte = -101;
- else if (c != '\u0153') {
- if (c == '\u017E')
- charByte = -98;
- else if (c != '\u0178')
- charByte = 63;
- else
- charByte = -97;
- } else
- charByte = -100;
- } else
- charByte = -102;
- } else
- charByte = -107;
- } else
- charByte = -109;
- } else
- charByte = -110;
- } else
- charByte = -114;
- } else
- charByte = -122;
- } else
- charByte = -123;
- } else
- charByte = -125;
- } else
- charByte = -126;
- } else
- charByte = -128;
- return charByte;
- }
- /**
- * Gets the double value of this string
- * @param s The string.
- * @return The double value.
- */
- public static double getDouble(String s) {
- s = s.replaceAll(", ", "").replaceAll(",", "");
- StringBuilder sb = new StringBuilder();
- char c;
- boolean foundStart = false;
- for (int i = 0; i < s.length(); i++) {
- c = s.charAt(i);
- if (Character.isDigit(c) || c == '-' || c == '.') {
- sb.append(c);
- foundStart = true;
- } else if (foundStart)
- break;
- }
- try {
- double amount = Double.parseDouble(sb.toString());
- return amount;
- } catch (NumberFormatException e) {
- return 0.0;
- }
- }
- /**
- * Gets the hash for the string.
- * @param str The string.
- * @return The hash.
- */
- public static final int getNameHash(String str) {
- str = str.toLowerCase();
- int hash = 0;
- for (int index = 0; index < str.length(); index++)
- hash = getByte(str.charAt(index)) + ((hash << 5) - hash);
- return hash;
- }
- /**
- * Gets the string value of this string (all html/... removed).
- * @param s The string.
- * @return The string value.
- */
- public static String getString(String s) {
- return s.replaceAll("\\<.*?>", "").replaceAll(" ", "")
- .replaceAll("Discontinued Item:", "");
- }
- /**
- * Characters used to convert a String to a Long.
- */
- public static char[] validChars = {
- '_', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
- 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's',
- 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2',
- '3', '4', '5', '6', '7', '8', '9'
- };
- private final static int[] anIntArray233 = {
- 0, 1024, 2048, 3072, 4096, 5120,
- 6144, 8192, 9216, 12288, 10240, 11264, 16384, 18432, 17408, 20480,
- 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696,
- 30720, 31744, 32768, 33792, 34816, 35840, 36864, 536870912,
- 16777216, 37888, 65536, 38912, 131072, 196608, 33554432, 524288,
- 1048576, 1572864, 262144, 67108864, 4194304, 134217728, 327680,
- 8388608, 2097152, 12582912, 13631488, 14680064, 15728640,
- 100663296, 101187584, 101711872, 101974016, 102760448, 102236160,
- 40960, 393216, 229376, 117440512, 104857600, 109051904, 201326592,
- 205520896, 209715200, 213909504, 106954752, 218103808, 226492416,
- 234881024, 222298112, 224395264, 268435456, 272629760, 276824064,
- 285212672, 289406976, 223346688, 293601280, 301989888, 318767104,
- 297795584, 298844160, 310378496, 102498304, 335544320, 299892736,
- 300941312, 301006848, 300974080, 39936, 301465600, 49152,
- 1073741824, 369098752, 402653184, 1342177280, 1610612736,
- 469762048, 1476395008, -2147483648, -1879048192, 352321536,
- 1543503872, -2013265920, -1610612736, -1342177280, -1073741824,
- -1543503872, 356515840, -1476395008, -805306368, -536870912,
- -268435456, 1577058304, -134217728, 360710144, -67108864,
- 364904448, 51200, 57344, 52224, 301203456, 53248, 54272, 55296,
- 56320, 301072384, 301073408, 301074432, 301075456, 301076480,
- 301077504, 301078528, 301079552, 301080576, 301081600, 301082624,
- 301083648, 301084672, 301085696, 301086720, 301087744, 301088768,
- 301089792, 301090816, 301091840, 301092864, 301093888, 301094912,
- 301095936, 301096960, 301097984, 301099008, 301100032, 301101056,
- 301102080, 301103104, 301104128, 301105152, 301106176, 301107200,
- 301108224, 301109248, 301110272, 301111296, 301112320, 301113344,
- 301114368, 301115392, 301116416, 301117440, 301118464, 301119488,
- 301120512, 301121536, 301122560, 301123584, 301124608, 301125632,
- 301126656, 301127680, 301128704, 301129728, 301130752, 301131776,
- 301132800, 301133824, 301134848, 301135872, 301136896, 301137920,
- 301138944, 301139968, 301140992, 301142016, 301143040, 301144064,
- 301145088, 301146112, 301147136, 301148160, 301149184, 301150208,
- 301151232, 301152256, 301153280, 301154304, 301155328, 301156352,
- 301157376, 301158400, 301159424, 301160448, 301161472, 301162496,
- 301163520, 301164544, 301165568, 301166592, 301167616, 301168640,
- 301169664, 301170688, 301171712, 301172736, 301173760, 301174784,
- 301175808, 301176832, 301177856, 301178880, 301179904, 301180928,
- 301181952, 301182976, 301184000, 301185024, 301186048, 301187072,
- 301188096, 301189120, 301190144, 301191168, 301193216, 301195264,
- 301194240, 301197312, 301198336, 301199360, 301201408, 301202432
- };
- private final static byte[] aByteArray235 = {
- 22, 22, 22, 22, 22, 22, 21, 22, 22,
- 20, 22, 22, 22, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 3, 8, 22, 16, 22, 16, 17, 7, 13, 13, 13,
- 16, 7, 10, 6, 16, 10, 11, 12, 12, 12, 12, 13, 13, 14, 14, 11, 14,
- 19, 15, 17, 8, 11, 9, 10, 10, 10, 10, 11, 10, 9, 7, 12, 11, 10, 10,
- 9, 10, 10, 12, 10, 9, 8, 12, 12, 9, 14, 8, 12, 17, 16, 17, 22, 13,
- 21, 4, 7, 6, 5, 3, 6, 6, 5, 4, 10, 7, 5, 6, 4, 4, 6, 10, 5, 4, 4,
- 5, 7, 6, 10, 6, 10, 22, 19, 22, 14, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 21, 22, 21, 22, 22, 22, 21,
- 22, 22
- };
- /**
- * Encrypt a string for the client.
- */
- public static int encryptPlayerChat(byte[] is, int i_25_, int i_26_, int i_27_, byte[] is_28_) {
- try {
- i_27_ += i_25_;
- int i_29_ = 0;
- int i_30_ = i_26_ << 3;
- for (; i_27_ > i_25_; i_25_++) {
- int i_31_ = 0xff & is_28_[i_25_];
- int i_32_ = anIntArray233[i_31_];
- int i_33_ = aByteArray235[i_31_];
- int i_34_ = i_30_ >> 3;
- int i_35_ = i_30_ & 0x7;
- i_29_ &= (-i_35_ >> 31);
- i_30_ += i_33_;
- int i_36_ = ((-1 + (i_35_ - -i_33_)) >> 3) + i_34_;
- i_35_ += 24;
- is[i_34_] = (byte) (i_29_ = (i_29_ | (i_32_ >>> i_35_)));
- if ((i_36_ ^ 0xffffffff) < (i_34_ ^ 0xffffffff)) {
- i_34_++;
- i_35_ -= 8;
- is[i_34_] = (byte) (i_29_ = i_32_ >>> i_35_);
- if (i_36_ > i_34_) {
- i_34_++;
- i_35_ -= 8;
- is[i_34_] = (byte) (i_29_ = i_32_ >>> i_35_);
- if (i_36_ > i_34_) {
- i_35_ -= 8;
- i_34_++;
- is[i_34_] = (byte) (i_29_ = i_32_ >>> i_35_);
- if (i_34_ < i_36_) {
- i_35_ -= 8;
- i_34_++;
- is[i_34_] = (byte) (i_29_ = i_32_ << -i_35_);
- }
- }
- }
- }
- }
- return -i_26_ + ((7 + i_30_) >> 3);
- } catch (RuntimeException runtimeexception) {
- runtimeexception.printStackTrace();
- }
- return 0;
- }
- /**
- * Gets an integer value from a string.
- * @param s the string.
- * @return The value;
- */
- public static int getValue(String s) {
- s = s.replaceAll(", ", "").replaceAll(",", "");
- StringBuilder sb = new StringBuilder();
- char c;
- boolean foundStart = false;
- for (int i = 0; i < s.length(); i++) {
- c = s.charAt(i);
- if (Character.isDigit(c) || c == '-') {
- sb.append(c);
- foundStart = true;
- } else if (foundStart)
- break;
- }
- try {
- int amount = Integer.parseInt(sb.toString());
- return amount;
- } catch (NumberFormatException e) {
- return 0;
- }
- }
- /**
- * Checks if the account name is valid.
- * @param name The account name.
- * @return {@code True} if the account name is invalid.
- */
- public static boolean invalidAccountName(String name) {
- return name.length() < 2 || name.length() > 12 || name.startsWith("_")|| name.endsWith("_") || name.contains("__") || containsInvalidCharacter(name);
- }
-
- /**
- * Converts a long to a string.
- * @param l The long.
- * @return The string.
- */
- public static String longToString(long l) {
- int i = 0;
- char ac[] = new char[32];
- while (l != 0L) {
- long l1 = l;
- l /= 37L;
- ac[11 - i++] = VALID_CHARS[(int) (l1 - l * 37L)];
- }
- return new String(ac, 12 - i, i);
- }
-
- /**
- * Packs a GJ2-String.
- * @param position The position to start.
- * @param buffer The byte-array.
- * @param str The string.
- * @return The size of the string.
- */
- public static final int packGJString2(int position, byte[] buffer,
- String str) {
- int length = str.length();
- int offset = position;
- for (int index = 0; length > index; index++) {
- int character = str.charAt(index);
- if (character > 127) {
- if (character > 2047) {
- buffer[offset++] = (byte) ((character | 919275) >> 12);
- buffer[offset++] = (byte) (128 | ((character >> 6) & 63));
- buffer[offset++] = (byte) (128 | (character & 63));
- } else {
- buffer[offset++] = (byte) ((character | 12309) >> 6);
- buffer[offset++] = (byte) (128 | (character & 63));
- }
- } else
- buffer[offset++] = (byte) character;
- }
- return offset - position;
- }
- /**
- * Method used to...
- * @param x idk,
- * @return the idk.
- */
- public static long reducedMapping(int x) {
- long out = -1;
- if (x >= 97 && x <= 122)
- out = x - 96;
- else if (x >= 65 && x <= 90)
- out = x - 37;
- else if (x >= 48 && x <= 57)
- out = x - +5;
- else if (x == 32)
- out = 63L;
- return out;
- }
- /**
- * Converts a string to a long.
- * @param s The string.
- * @return The long.
- */
- public static long stringToLong(String s) {
- long l = 0L;
- for (int i = 0; i < s.length() && i < 12; i++) {
- char c = s.charAt(i);
- l *= 37L;
- if (c >= 'A' && c <= 'Z')
- l += (1 + c) - 65;
- else if (c >= 'a' && c <= 'z')
- l += (1 + c) - 97;
- else if (c >= '0' && c <= '9')
- l += (27 + c) - 48;
- }
- while (l % 37L == 0L && l != 0L)
- l /= 37L;
- return l;
- }
- /**
- * Decrypt player chat.
- *
- * @param buffer
- * The buffer
- * @param totalChars
- * The total chars
- * @return The string
- */
- public static String decryptPlayerChat(IoBuffer buffer, int totalChars) {
- try {
- if (totalChars == 0)
- return "";
- int charsDecoded = 0;
- int i_4_ = 0;
- String s = "";
- for (;;) {
- byte i_7_ = (byte) buffer.get();
- if (i_7_ >= 0)
- i_4_++;
- else
- i_4_ = anIntArray241[i_4_];
- int i_8_;
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (totalChars <= ++charsDecoded)
- break;
- i_4_ = 0;
- }
- if (((i_7_ & 0x40) ^ 0xffffffff) != -1)
- i_4_ = anIntArray241[i_4_];
- else
- i_4_++;
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (++charsDecoded >= totalChars)
- break;
- i_4_ = 0;
- }
- if ((0x20 & i_7_) == 0)
- i_4_++;
- else
- i_4_ = anIntArray241[i_4_];
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (totalChars <= ++charsDecoded)
- break;
- i_4_ = 0;
- }
- if (((0x10 & i_7_) ^ 0xffffffff) == -1)
- i_4_++;
- else
- i_4_ = anIntArray241[i_4_];
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (totalChars <= ++charsDecoded)
- break;
-
- i_4_ = 0;
- }
- if (((0x8 & i_7_) ^ 0xffffffff) != -1)
- i_4_ = anIntArray241[i_4_];
- else
- i_4_++;
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (++charsDecoded >= totalChars)
- break;
- i_4_ = 0;
- }
- if ((0x4 & i_7_) == 0)
- i_4_++;
- else
- i_4_ = anIntArray241[i_4_];
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (totalChars <= ++charsDecoded)
- break;
- i_4_ = 0;
- }
- if (((i_7_ & 0x2) ^ 0xffffffff) != -1)
- i_4_ = anIntArray241[i_4_];
- else
- i_4_++;
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (totalChars <= ++charsDecoded)
- break;
- i_4_ = 0;
- }
- if (((i_7_ & 0x1) ^ 0xffffffff) != -1)
- i_4_ = anIntArray241[i_4_];
- else
- i_4_++;
- if ((i_8_ = anIntArray241[i_4_]) < 0) {
- s += (char) (byte) (i_8_ ^ 0xffffffff);
- if (++charsDecoded >= totalChars)
- break;
- i_4_ = 0;
- }
- }
- return s;
- } catch (RuntimeException runtimeexception) {
- runtimeexception.printStackTrace();
- }
- return "";
- }
-}
diff --git a/Management-Server/src/main/java/ms/system/util/TaskExecutor.java b/Management-Server/src/main/java/ms/system/util/TaskExecutor.java
deleted file mode 100644
index e2b3c886b..000000000
--- a/Management-Server/src/main/java/ms/system/util/TaskExecutor.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package ms.system.util;
-
-import java.util.concurrent.Executors;
-import java.util.concurrent.ScheduledExecutorService;
-
-/**
- * A class holding methods to execute tasks.
- * @author Emperor
- *
- */
-public final class TaskExecutor {
-
- /**
- * The executor to use.
- */
- private static final ScheduledExecutorService EXECUTOR = Executors.newSingleThreadScheduledExecutor();
-
- /**
- * The SQL task executor.
- */
- private static final ScheduledExecutorService SQL_EXECUTOR = Executors.newSingleThreadScheduledExecutor();
-
- /**
- * Constructs a new {@code TaskExecutor} {@code Object}.
- */
- private TaskExecutor() {
- /*
- * empty.
- */
- }
-
- /**
- * Executes an SQL handling task.
- * @param task The task.
- */
- public static void executeSQL(Runnable task) {
- SQL_EXECUTOR.execute(task);
- }
-
- /**
- * Executes the task.
- * @param task The task to execute.
- */
- public static void execute(Runnable task) {
- EXECUTOR.execute(task);
- }
-
- /**
- * Gets the executor.
- * @return The executor.
- */
- public static ScheduledExecutorService getExecutor() {
- return EXECUTOR;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/world/GameServer.java b/Management-Server/src/main/java/ms/world/GameServer.java
deleted file mode 100644
index fed3069b7..000000000
--- a/Management-Server/src/main/java/ms/world/GameServer.java
+++ /dev/null
@@ -1,124 +0,0 @@
-package ms.world;
-
-import ms.net.IoSession;
-import ms.net.packet.WorldPacketRepository;
-import ms.system.mysql.SQLEntryHandler;
-import ms.system.mysql.WorldListSQLHandler;
-import ms.system.util.TaskExecutor;
-import ms.world.info.Response;
-import ms.world.info.WorldInfo;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.concurrent.ScheduledFuture;
-import java.util.concurrent.TimeUnit;
-
-/**
- * Represents a game world.
- * @author Emperor
- *
- */
-public final class GameServer {
-
- /**
- * The world info.
- */
- private final WorldInfo info;
-
- /**
- * The I/O session.
- */
- private IoSession session;
-
- /**
- * The players active on the game server.
- */
- private final Map players = new HashMap<>();
-
- /**
- * The scheduled future for the updating task.
- */
- private ScheduledFuture> future;
-
- /**
- * constructs a new {@code GameServer} {@code Object}.
- * @param info The world info.
- */
- public GameServer(WorldInfo info) {
- this.info = info;
- }
-
- /**
- * Configures the game server.
- * @param session The I/O session.
- */
- public void configure(IoSession session) {
- this.session = session;
- session.setGameServer(this);
- future = TaskExecutor.getExecutor().scheduleAtFixedRate(() -> {
- SQLEntryHandler.write(new WorldListSQLHandler(GameServer.this));
- if (!isActive()) {
- future.cancel(false);
- future = null;
- }
- }, 0, 10, TimeUnit.SECONDS);
- }
-
- /**
- * Registers a player.
- * @param player The player.
- */
- public void register(PlayerSession player) {
- players.put(player.getUsername(), player);
- player.setWorld(this);
- player.setActive(true);
- player.setWorldId(info.getWorldId());
- player.configure();
- WorldPacketRepository.sendRegistryResponse(this, player, Response.SUCCESSFUL);
- player.getCommunication().sync();
- }
-
- /**
- * Checks if the game server is active.
- * @return {@code True} if so.
- */
- public boolean isActive() {
- return session.isActive();
- }
-
- /**
- * @return the playerAmount
- */
- public int getPlayerAmount() {
- return players.size();
- }
-
- /**
- * @return the info
- */
- public WorldInfo getInfo() {
- return info;
- }
-
- /**
- * @return the session
- */
- public IoSession getSession() {
- return session;
- }
-
- /**
- * @param session the session to set
- */
- public void setSession(IoSession session) {
- this.session = session;
- }
-
- /**
- * Gets the players value.
- * @return The players.
- */
- public Map getPlayers() {
- return players;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/world/PlayerSession.java b/Management-Server/src/main/java/ms/world/PlayerSession.java
deleted file mode 100644
index 09c4682d5..000000000
--- a/Management-Server/src/main/java/ms/world/PlayerSession.java
+++ /dev/null
@@ -1,475 +0,0 @@
-package ms.world;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
-import ms.ServerConstants;
-import ms.system.communication.ClanRepository;
-import ms.system.communication.CommunicationInfo;
-import ms.system.mysql.SQLManager;
-import ms.world.info.UIDInfo;
-
-/**
- * Represents a player session.
- * @author Emperor
- *
- */
-public final class PlayerSession {
-
- /**
- * The player's communication info.
- */
- private CommunicationInfo communication = new CommunicationInfo(this);
-
- /**
- * The game server the player is currently in.
- */
- private GameServer world;
-
- /**
- * The current clan.
- */
- private ClanRepository clan;
-
- /**
- * The player's UID info.
- */
- private UIDInfo uid;
-
- /**
- * The username.
- */
- private final String username;
-
- /**
- * The password.
- */
- private String password;
-
- /**
- * The player's rights.
- */
- private int rights;
-
- /**
- * The world id.
- */
- private int worldId;
-
- /**
- * If the player session is active.
- */
- private boolean active;
-
- /**
- * The time stamp of last disconnection.
- */
- private long disconnectionTime = 0L;
-
- /**
- * How long the player is banned for.
- */
- private long banTime;
-
- /**
- * How long the player is muted for.
- */
- private long muteTime;
-
- /**
- * The last world the player logged in.
- */
- private int lastWorld = -1;
-
- /**
- * The chat icon.
- */
- private int chatIcon;
-
- /**
- * Constructs a new {@code PlayerSession} {@code Object}.
- * @param username The username.
- * @param password The password.
- * @param ipAddress The ip address.
- * @param macAddress The mac address.
- * @param computerName The computer name.
- * @param serial The motherboard serial key.
- */
- public PlayerSession(String username, String password, UIDInfo uid) {
- this.username = username;
- this.password = password;
- this.uid = uid;
- }
-
- /**
- * Parses the session's data from the database.
- * @return {@code True} if parsed.
- */
- public boolean parse() {
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return false;
- }
- ResultSet result = null;
- PreparedStatement statement;
- try {
- statement = connection.prepareStatement("SELECT * FROM " + "members" + " WHERE " + "" + "username" + "='" + username.toLowerCase() + "' LIMIT 1");
- result = statement.executeQuery();
- if (result == null || !result.next()) {
- SQLManager.close(connection);
- return false;
- }
- rights = result.getInt("rights");
- disconnectionTime = result.getLong("disconnectTime");
- lastWorld = result.getInt("lastWorld");
- banTime = result.getLong("banTime");
- communication.parse(result);
- uid.parse(result);
- SQLManager.close(connection);
- } catch (SQLException ex) {
- ex.printStackTrace();
- SQLManager.close(connection);
- return false;
- } finally {
- SQLManager.close(connection);
- }
- return true;
- }
-
- /**
- * Called when a session is removed.
- */
- public void remove() {
- if (world != null && world.getInfo().getRevision() == 498) {
- return;
- }
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return;
- }
- PreparedStatement statement;
- try {
- statement = connection.prepareStatement("UPDATE members SET disconnectTime = ?, lastWorld = ?, contacts = ?, blocked = ?, clanName = ?, currentClan = ?, clanReqs = ?, chatSettings = ?, online= ? WHERE username = ?");
- statement.setLong(1, System.currentTimeMillis());
- statement.setInt(2, worldId);
- communication.save(statement);
- statement.setBoolean(9, false);
- statement.setString(10, username);
- statement.executeUpdate();
- SQLManager.close(connection);
- } catch (SQLException e) {
- e.printStackTrace();
- SQLManager.close(connection);
- } finally {
- SQLManager.close(connection);
- }
- communication.clear();
- }
-
- /**
- * Gets a player session.
- * @param username the username.
- * @return the player session.
- */
- public static PlayerSession get(String username) {
- PlayerSession session = new PlayerSession(username, "", new UIDInfo());
- if (!session.parse()) {
- return null;
- }
- return session;
- }
-
- /**
- * Configures the player session.
- */
- public void configure() {
- ClanRepository clan = ClanRepository.getClans().get(username);
- if (clan != null) {
- clan.setOwner(this);
- }
- Connection connection = SQLManager.getConnection();
- if (connection == null) {
- return;
- }
- PreparedStatement statement;
- try {
- statement = connection.prepareStatement("UPDATE members SET online = ?, lastWorld = ?, lastLogin = ? WHERE username = ?");
- statement.setBoolean(1, true);
- statement.setInt(2, worldId);
- statement.setLong(3, System.currentTimeMillis());
- statement.setString(4, username);
- statement.execute();
- SQLManager.close(connection);
- } catch (SQLException e) {
- e.printStackTrace();
- SQLManager.close(connection);
- } finally {
- SQLManager.close(connection);
- }
- }
-
- /**
- * Checks if the player has just moved worlds.
- * @return {@code True} if so.
- */
- public boolean hasMovedWorld() {
- if (rights == 2) {
- return false;
- }
- return System.currentTimeMillis() - disconnectionTime < ServerConstants.WORLD_SWITCH_DELAY;
- }
-
- /**
- * Gets the username value.
- * @return The username.
- */
- public String getUsername() {
- return username;
- }
-
- /**
- * Gets the password value.
- * @return The password.
- */
- public String getPassword() {
- return password;
- }
-
- /**
- * Gets the chat icon.
- * @return The chat icon.
- */
- public int getChatIcon() {
- return chatIcon;
- }
-
- /**
- * Gets the ipAddress value.
- * @return The ipAddress.
- */
- public String getIpAddress() {
- return uid.getIp();
- }
-
- /**
- * Gets the macAddress value.
- * @return The macAddress.
- */
- public String getMacAddress() {
- return uid.getMac();
- }
-
- /**
- * Gets the computerName value.
- * @return The computerName.
- */
- public String getComputerName() {
- return uid.getCompName();
- }
-
- /**
- * Gets the worldId value.
- * @return The worldId.
- */
- public int getWorldId() {
- return worldId;
- }
-
- /**
- * Sets the worldId value.
- * @param worldId The worldId to set.
- */
- public void setWorldId(int worldId) {
- this.worldId = worldId;
- }
-
- /**
- * Gets the active value.
- * @return The active.
- */
- public boolean isActive() {
- return active;
- }
-
- /**
- * Sets the active value.
- * @param active The active to set.
- */
- public void setActive(boolean active) {
- this.active = active;
- }
-
- /**
- * Gets the serialKey value.
- * @return The serialKey.
- */
- public String getSerialKey() {
- return uid.getSerial();
- }
-
- /**
- * Gets the rights value.
- * @return The rights.
- */
- public int getRights() {
- return rights;
- }
-
- /**
- * Sets the rights value.
- * @param rights The rights to set.
- */
- public void setRights(int rights) {
- this.rights = rights;
- }
-
- /**
- * If the player is banned.
- * @return {@code true} if so.
- */
- public boolean isBanned() {
- return banTime > System.currentTimeMillis();
- }
-
- /**
- * Gets the banTime value.
- * @return The banTime.
- */
- public long getBanTime() {
- return banTime;
- }
-
- /**
- * Gets the muteTime.
- * @return the muteTime.
- */
- public long getMuteTime() {
- return muteTime;
- }
-
-
- /**
- * Sets the muteTime.
- * @param muteTime the muteTime to set
- */
- public void setMuteTime(long muteTime) {
- this.muteTime = muteTime;
- }
-
-
- /**
- * Gets the disconnectionTime value.
- * @return The disconnectionTime.
- */
- public long getDisconnectionTime() {
- return disconnectionTime;
- }
-
- /**
- * Gets the lastWorld value.
- * @return The lastWorld.
- */
- public int getLastWorld() {
- return lastWorld;
- }
-
- /**
- * Sets the lastWorld value.
- * @param lastWorld The lastWorld to set.
- */
- public void setLastWorld(int lastWorld) {
- this.lastWorld = lastWorld;
- }
-
- /**
- * Gets the communication value.
- * @return The communication.
- */
- public CommunicationInfo getCommunication() {
- return communication;
- }
-
- /**
- * Sets the communication value.
- * @param communication The communication to set.
- */
- public void setCommunication(CommunicationInfo communication) {
- this.communication = communication;
- }
-
- /**
- * Gets the world value.
- * @return The world.
- */
- public GameServer getWorld() {
- return world;
- }
-
- /**
- * Sets the world value.
- * @param world The world to set.
- */
- public void setWorld(GameServer world) {
- this.world = world;
- }
-
- /**
- * Gets the clan value.
- * @return The clan.
- */
- public ClanRepository getClan() {
- return clan;
- }
-
- /**
- * Sets the clan value.
- * @param clan The clan to set.
- */
- public void setClan(ClanRepository clan) {
- this.clan = clan;
- }
-
- /**
- * Sets the chat icon.
- * @param chatIcon
- */
- public void setChatIcon(int chatIcon) {
- this.chatIcon = chatIcon;
- }
-
- /**
- * Gets the uid.
- * @return the uid.
- */
- public UIDInfo getUid() {
- return uid;
- }
-
- /**
- * Sets the uid.
- * @param uid the uid to set
- */
- public void setUid(UIDInfo uid) {
- this.uid = uid;
- }
-
- /**
- * Sets the disconnect time.
- * @param time the time.
- */
- public void setDisconnectTime(long time) {
- this.disconnectionTime = time;
- }
-
- public boolean equalsSession(PlayerSession o){
- return username.equals(o.username);
- }
-
- @Override
- public String toString() {
- return "player [name=" + username + ", pass=" + password + ", ip=" + uid.getIp() + ", mac=" + uid.getMac() + ", comp=" + uid.getCompName() + ", msk=" + uid.getSerial() + "]";
- }
-
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/world/WorldDatabase.java b/Management-Server/src/main/java/ms/world/WorldDatabase.java
deleted file mode 100644
index e23e17f17..000000000
--- a/Management-Server/src/main/java/ms/world/WorldDatabase.java
+++ /dev/null
@@ -1,275 +0,0 @@
-package ms.world;
-
-import java.nio.ByteBuffer;
-
-import ms.ServerConstants;
-import ms.net.IoSession;
-import ms.net.packet.IoBuffer;
-import ms.world.info.CountryFlag;
-import ms.world.info.WorldInfo;
-import ms09.MSLogger;
-
-/**
- * Holds all the world servers.
- * @author Emperor
- *
- */
-public class WorldDatabase {
-
- /**
- * The game servers.
- */
- private static final GameServer[] DATABASE = new GameServer[ServerConstants.WORLD_LIMIT];
-
- /**
- * The update time stamp.
- */
- private static long updateStamp = System.currentTimeMillis();
-
- /**
- * Used to prevent {@code WorldDatabase} from getting instantiated.
- */
- private WorldDatabase() {
- /*
- * empty.
- */
- }
-
- /**
- * Gets the packet to update the world list in the lobby.
- * @param player The player.
- * @param worldConfiguration If the configuration should be added.
- * @param worldStatus If the status should be added.
- * @return The {@code OutgoingPacket} to write.
- */
- public static void sendUpdate(IoSession session, int updateStamp) {
- ByteBuffer buf = ByteBuffer.allocate(1024);
- buf.put((byte) 0);
- buf.putShort((short) 0);
- buf.put((byte) 1);
- IoBuffer buffer = new IoBuffer();
- if (updateStamp == (int) WorldDatabase.updateStamp) {
- buf.put((byte) 0);
- } else {
- buf.put((byte) 1); // Indicates an update occured.
- putWorldListinfo(buffer);
- }
- putPlayerInfo(buffer);
- if (buffer.toByteBuffer().position() > 0) {
- buf.put((ByteBuffer) buffer.toByteBuffer().flip());
- }
- buf.putShort(1, (short) (buf.position() - 3));
- session.queue((ByteBuffer) buf.flip());
- }
-
- /**
- * Adds the world status on the packet.
- * @param buffer The current packet.
- */
- private static void putPlayerInfo(IoBuffer buffer) {
- for (GameServer server : DATABASE) {
- if (server != null) {
- WorldInfo w = server.getInfo();
- buffer.putSmart(w.getWorldId());
- buffer.putShort(server.isActive() ? server.getPlayerAmount() : -1);
- }
- }
- }
-
- /**
- * Sets the countries for each world.
- * @param buffer The current packet.
- */
- private static void putCountryInfo(IoBuffer buffer) {
- for (CountryFlag country : CountryFlag.values()) {
- buffer.putSmart(country.getId());
- buffer.putJagString(capitalize(country.name().toLowerCase()));
- }
- }
-
- /**
- * Converts a string to a capitalized string
- * @param name
- * @return
- */
- private static String capitalize(String name) {
- if (name == null || name.length() == 0) {
- return name;
- } else {
- char[] chars = name.toCharArray();
- chars[0] = Character.toUpperCase(chars[0]);
- return new String(chars);
- }
- }
-
- /**
- * Adds the world configuration on the packet.
- * @param buffer The current packet.
- */
- private static void putWorldListinfo(IoBuffer buffer) {
- buffer.putSmart(CountryFlag.values().length);
- putCountryInfo(buffer);
- buffer.putSmart(0);
- buffer.putSmart(DATABASE.length);
- buffer.putSmart(getRegisteredAmount());
- for (GameServer server : DATABASE) {
- if (server != null) {
- WorldInfo w = server.getInfo();
- buffer.putSmart(w.getWorldId());
- buffer.put(w.getCountry().ordinal());
- buffer.putInt(w.getSettings());
- buffer.putJagString(w.getActivity());
- buffer.putJagString(w.getAddress());
- }
- }
- buffer.putInt((int) updateStamp);
- }
-
- /**
- * Gets the amount of worlds registered.
- * @return The amount of worlds registered.
- */
- public static int getRegisteredAmount() {
- int count = 0;
- for (GameServer server : DATABASE) {
- if (server != null) {
- count++;
- }
- }
- return count;
- }
-
- /**
- * Registers a game server.
- * @param info The game world info.
- */
- public static GameServer register(WorldInfo info) {
- GameServer server = DATABASE[info.getWorldId()];
- if (server != null && server.getSession().isActive() && !server.getSession().getAddress().equals(info.getAddress())) {
- throw new IllegalStateException("World " + info.getWorldId() + " is already registered!");
- }
- flagUpdate();
- MSLogger.logInfo("Registered world - [id=" + info.getWorldId() + ", ip=" + info.getAddress() + ", country=" + info.getCountry().name().toLowerCase() + ", revision=" + info.getRevision() + "]!");
- return DATABASE[info.getWorldId()] = new GameServer(info);
- }
-
- public static void unRegister(GameServer server){
- int index = -1;
- for(int i = 0; i < DATABASE.length; i++){
- GameServer s = DATABASE[i];
- if(s == server){
- index = i;
- break;
- }
- }
- if(index != -1){
- DATABASE[index] = null;
- WorldInfo info = server.getInfo();
- MSLogger.logInfo("Unregistered world - [id=" + info.getWorldId() + ", ip=" + info.getAddress() + ", country=" + info.getCountry().name().toLowerCase() + ", revision=" + info.getRevision() + "]!");
- }
- }
-
- /**
- * Gets the world id of the player.
- * @param username The username of the player.
- * @return The world id.
- */
- public static int getWorldId(String username) {
- return getWorldId(getPlayer(username));
- }
-
- /**
- * Gets the world id of the player.
- * @param player The player.
- * @return The world id.
- */
- public static int getWorldId(PlayerSession player) {
- if (player == null || !player.isActive()) {
- return 0;
- }
- return player.getWorldId();
- }
-
- /**
- * Checks if the game world is active.
- * @param worldId The world id.
- * @return {@code True} if so.
- */
- public static boolean isActive(int worldId) {
- GameServer server = get(worldId);
- return server != null && server.isActive();
- }
-
- /**
- * Checks if the player session for the given name is active.
- * @param username The player's username.
- * @return {@code True} if so.
- */
- public static boolean isActivePlayer(String username) {
- PlayerSession session = getPlayer(username);
- return session != null && session.isActive();
- }
-
- /**
- * Gets the player session for the given name.
- * @param username The player's username.
- * @return The player session.
- */
- public static PlayerSession getPlayer(String username) {
- return getPlayer(username, false);
- }
-
- /**
- * Gets the player session for the given name.
- * @param username The player's username.
- * @param load If we load the users data.
- * @return The player session.
- */
- public static PlayerSession getPlayer(String username, boolean load) {
- for (GameServer server : DATABASE) {
- if (server != null && server.isActive()) {
- PlayerSession player = server.getPlayers().get(username);
- if (player != null) {
- return player;
- }
- }
- }
- if (load) {
- return PlayerSession.get(username);
- }
- return null;
- }
-
- /**
- * Gets the game server for the given world id.
- * @param worldId The world id.
- * @return The game server.
- */
- public static GameServer get(int worldId) {
- return DATABASE[worldId];
- }
-
- /**
- * Gets all the game servers.
- * @return The list of game servers.
- */
- public static GameServer[] getWorlds() {
- return DATABASE;
- }
-
- /**
- * Gets the updateStamp.
- * @return the updateStamp
- */
- public static long getUpdateStamp() {
- return updateStamp;
- }
-
- /**
- * Sets the updateStamp.
- * @param updateStamp the updateStamp to set.
- */
- public static void flagUpdate() {
- WorldDatabase.updateStamp = System.currentTimeMillis();
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/world/info/CountryFlag.java b/Management-Server/src/main/java/ms/world/info/CountryFlag.java
deleted file mode 100644
index f59a31a26..000000000
--- a/Management-Server/src/main/java/ms/world/info/CountryFlag.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package ms.world.info;
-
-/**
- * The country flags.
- * @author Emperor
- *
- */
-public enum CountryFlag {
-
- /**
- * Belgium
- */
- BELGIUM(22),
-
- /**
- * Canada.
- */
- CANADA(38),
-
- /**
- * The united kingdom.
- */
- UNITED_KINGDOM(77),
-
- /**
- * Netherlands
- */
- NETHERLANDS(161),
-
- /**
- * Sweden
- */
- SWEDEN(191),
-
- /**
- * Finland
- */
- FINLAND(69),
-
- /**
- * Australia.
- */
- AUSTRALIA(16),
-
- /**
- * America (USA)
- */
- UNITED_STATES_OF_AMERICA(225),
-
- /**
- * Norway
- */
- NORWAY(162),
-
- /**
- * Ireland
- */
- IRELAND(101),
-
- /**
- * DENMARK
- */
- DENMARK(58),
-
- /**
- * Brazil
- */
- BRAZIL(31),
-
- /**
- * Mexico
- */
- MEXICO(152),
-
- ;
-
- /**
- * The flag id.
- */
- private final int id;
-
- /**
- * Constructs a new {@code CountryFlag} {@code Object}.
- * @param id The flag id.
- */
- private CountryFlag(int id) {
- this.id = id;
- }
-
- /**
- * @return the id
- */
- public int getId() {
- return id;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/world/info/Response.java b/Management-Server/src/main/java/ms/world/info/Response.java
deleted file mode 100644
index 7d8ae0c73..000000000
--- a/Management-Server/src/main/java/ms/world/info/Response.java
+++ /dev/null
@@ -1,144 +0,0 @@
-package ms.world.info;
-
-/**
- * Holds the response codes during the attempt to login.
- * @author Emperor
- */
-public enum Response {
-
- /**
- * An unexpected server response occurred.
- */
- UNEXPECTED_RESPONSE(0),
-
- /**
- * Could not display advertisement video, logging in in x seconds.
- */
- COULD_NOT_DISPLAY_AD(1),
-
- /**
- * A successful login.
- */
- SUCCESSFUL(2),
-
- /**
- * Invalid username or password has been entered.
- */
- INVALID_CREDENTIALS(3),
-
- /**
- * This account is banned.
- */
- ACCOUNT_DISABLED(4),
-
- /**
- * This account is already logged in.
- */
- ALREADY_ONLINE(5),
-
- /**
- * We have updated and client needs to be reloaded.
- */
- UPDATED(6),
-
- /**
- * The world is full.
- */
- FULL_WORLD(7),
-
- /**
- * Login server is offline.
- */
- LOGIN_SERVER_OFFLINE(8),
-
- /**
- * The login limit has been exceeded.
- */
- LOGIN_LIMIT_EXCEEDED(9),
-
- /**
- * The session key was invalid.
- */
- BAD_SESSION_ID(10),
-
- /**
- * The password is too weak, and should be improved.
- */
- WEAK_PASSWORD(11),
-
- /**
- * When trying to connect to a members world while being f2p.
- */
- MEMBERS_WORLD(12),
-
- /**
- * Could not login.
- */
- COULD_NOT_LOGIN(13),
-
- /**
- * The server is currently updating.
- */
- UPDATING(14),
-
- /**
- * Too many incorrect login attempts from your address.
- */
- TOO_MANY_INCORRECT_LOGINS(16),
-
- /**
- * When logging on a free world while standing in members area.
- */
- STANDING_IN_MEMBER(17),
-
- /**
- * This account is locked as it might have been stolen.
- */
- LOCKED(18),
-
- /**
- * Closed beta going on.
- */
- CLOSED_BETA(19),
-
- /**
- * The login server connected to is invalid.
- */
- INVALID_LOGIN_SERVER(20),
-
- /**
- * Moving from another world...
- */
- MOVING_WORLD(21),
-
- /**
- * When the player's saved file exists, but is unable to be loaded.
- */
- ERROR_LOADING_PROFILE(24),
-
- /**
- * This computer address is disabled as it was used to break our rules.
- */
- BANNED(26);
-
- /**
- * The buffer.
- */
- private final int opcode;
-
- /**
- * Constructs a new {@code Response} {@code Object}.
- * @param opcode The login response opcode.
- */
- Response(int opcode) {
- this.opcode = opcode;
- }
-
- /**
- * Gets the opcode.
- * @return The opcode.
- */
- public int opcode() {
- return opcode;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/java/ms/world/info/UIDInfo.java b/Management-Server/src/main/java/ms/world/info/UIDInfo.java
deleted file mode 100644
index 3bcf2d9d6..000000000
--- a/Management-Server/src/main/java/ms/world/info/UIDInfo.java
+++ /dev/null
@@ -1,224 +0,0 @@
-package ms.world.info;
-
-import java.nio.ByteBuffer;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.StringTokenizer;
-
-import ms.system.util.ByteBufferUtils;
-
-/**
- * The unique info of a player.
- * @author Vexia
- *
- */
-public class UIDInfo {
-
- /**
- * The ip address.
- */
- private String ip;
-
- /**
- * The computer name.
- */
- private String compName;
-
- /**
- * The mac-address.
- */
- private String mac;
-
- /**
- * The motherboard serial of the user.
- */
- private String serial;
-
-
- /**
- * Constructs a new {@code UIDInfo} {@code Object}
- */
- public UIDInfo() {
- /*
- * empty.
- */
- }
-
- /**
- * Constructs a new {@code UIDInfo} {@code Object}
- * @param ip the ip.
- * @param compName the computer name.
- * @param mac the mac.
- * @param serial the serial.
- */
- public UIDInfo(String ip, String compName, String mac, String serial) {
- this.ip = ip;
- this.compName = compName;
- this.mac = mac;
- this.serial = serial;
- }
-
- /**
- * Parses the data from a prepared statement.
- * @param set The result set
- * @throws SQLException The exception if thrown.
- */
- public void parse(ResultSet set) throws SQLException {
- setIp(parseFormat(set.getString("ip")));
- setCompName(parseFormat(set.getString("computerName")));
- setMac(parseFormat(set.getString("mac")));
- setSerial(parseFormat(set.getString("serial")));
- }
-
- /**
- * Saves the UID data on the buffer.
- * @param buffer The buffer.
- */
- public void save(ByteBuffer buffer) {
- save(buffer, ip, 1);
- save(buffer, compName, 2);
- save(buffer, mac, 3);
- save(buffer, serial, 4);
- buffer.put((byte) 0);
- }
-
- /**
- * Parses the UID data from the buffer.
- * @param buffer The buffer.
- */
- public void parse(ByteBuffer buffer) {
- int opcode;
- while ((opcode = buffer.get()) != 0) {
- switch (opcode) {
- case 1:
- ip = ByteBufferUtils.getString(buffer);
- break;
- case 2:
- compName = ByteBufferUtils.getString(buffer);
- break;
- case 3:
- mac = ByteBufferUtils.getString(buffer);
- break;
- case 4:
- serial = ByteBufferUtils.getString(buffer);
- break;
- default:
- break;
- }
- }
- }
-
- /**
- * Parses a string with a certain format.
- * @param string the string.
- * @return the string.
- */
- private String parseFormat(String string) {
- if (string == null || string.equals("")) {
- return null;
- }
- StringTokenizer token = new StringTokenizer(string, "|");
- String s = "";
- int t = token.countTokens();
- for (int i = 0; i < t; i++) {
- s = token.nextToken();
- }
- return s;
- }
-
- /**
- * Saves a string value to the buffer.
- * @param buffer the buffer.
- * @param value the value.
- * @param opcode the opcode.
- */
- private void save(ByteBuffer buffer, String value, int opcode) {
- if (value == null) {
- return;
- }
- ByteBufferUtils.putString(value, buffer.put((byte) opcode));
- }
-
- /**
- * Converts a to string in format mode for an admin or mod.
- * @param admin the admin.
- * @return the string.
- */
- public String toString(boolean admin) {
- String format = toString();
- if (!admin) {//formats for non-admins
- String[] tokens = format.split("serial=");
- format = format.replace("serial=", "uid=").replace(tokens[tokens.length - 1], "*****");
- }
- return format;
- }
-
- /**
- * Gets the compName.
- * @return the compName
- */
- public String getCompName() {
- return compName;
- }
-
- /**
- * Gets the ip.
- * @return the ip
- */
- public String getIp() {
- return ip;
- }
-
- /**
- * Gets the mac.
- * @return the mac
- */
- public String getMac() {
- return mac;
- }
-
- /**
- * Gets the serial.
- * @return the serial
- */
- public String getSerial() {
- return serial;
- }
-
- /**
- * Sets the ip.
- * @param ip the ip to set.
- */
- public void setIp(String ip) {
- this.ip = ip;
- }
-
- /**
- * Sets the compName.
- * @param compName the compName to set.
- */
- public void setCompName(String compName) {
- this.compName = compName;
- }
-
- /**
- * Sets the mac.
- * @param mac the mac to set.
- */
- public void setMac(String mac) {
- this.mac = mac;
- }
-
- /**
- * Sets the serial.
- * @param serial the serial to set.
- */
- public void setSerial(String serial) {
- this.serial = serial;
- }
-
- @Override
- public String toString() {
- return "[ip=" + ip + ", compName=" + compName + ", mac=" + mac + ", serial=" + serial + "]";
- }
-}
diff --git a/Management-Server/src/main/java/ms/world/info/WorldInfo.java b/Management-Server/src/main/java/ms/world/info/WorldInfo.java
deleted file mode 100644
index 74c4d743d..000000000
--- a/Management-Server/src/main/java/ms/world/info/WorldInfo.java
+++ /dev/null
@@ -1,163 +0,0 @@
-package ms.world.info;
-
-/**
- * Holds the info of a world server.
- * @author Emperor
- *
- */
-public final class WorldInfo {
-
- /**
- * The world id.
- */
- private final int worldId;
-
- /**
- * The IP-address.
- */
- private final String address;
-
- /**
- * The revision of the world.
- */
- private final int revision;
-
- /**
- * The country this world is located in.
- */
- private final CountryFlag country;
-
- /**
- * The world activity.
- */
- private final String activity;
-
- /**
- * If the world is members only.
- */
- private final boolean members;
-
- /**
- * If the world is a PvP world.
- */
- private final boolean pvp;
-
- /**
- * If the world is a quick chat only world.
- */
- private final boolean quickChat;
-
- /**
- * If the world has lootshare option enabled.
- */
- private final boolean lootshare;
-
- /**
- * Constructs a new {@code WorldInfo} {@code Object}.
- * @param id The world id.
- * @param address The address.
- * @param country The country flag.
- * @param members If the world is members only.
- */
- public WorldInfo(int id, String address, int revision, CountryFlag country, String activity, boolean members, boolean pvp, boolean quickChat, boolean lootshare) {
- this.worldId = id;
- this.address = address;
- this.revision = revision;
- this.country = country;
- this.activity = activity;
- this.members = members;
- this.pvp = pvp;
- this.quickChat = quickChat;
- this.lootshare = lootshare;
- }
-
- /**
- * Gets the settings hash.
- * @return The settings hash.
- */
- public int getSettings() {
- int settings = 0;
- if (members) {
- settings |= 0x1;
- }
- if (quickChat) {
- settings |= 0x2;
- }
- if (pvp) {
- settings |= 0x4;
- }
- if (lootshare) {
- settings |= 0x8;
- }
- return settings;
- }
-
- /**
- * @return the worldId
- */
- public int getWorldId() {
- return worldId;
- }
-
- /**
- * @return the address
- */
- public String getAddress() {
- return address;
- }
-
- /**
- * @return the country
- */
- public CountryFlag getCountry() {
- return country;
- }
-
- /**
- * Gets the members value.
- * @return The members.
- */
- public boolean isMembers() {
- return members;
- }
-
- /**
- * Gets the activity value.
- * @return The activity.
- */
- public String getActivity() {
- return activity;
- }
-
- /**
- * Gets the pvp value.
- * @return The pvp.
- */
- public boolean isPvp() {
- return pvp;
- }
-
- /**
- * Gets the quickChat value.
- * @return The quickChat.
- */
- public boolean isQuickChat() {
- return quickChat;
- }
-
- /**
- * Gets the lootshare value.
- * @return The lootshare.
- */
- public boolean isLootshare() {
- return lootshare;
- }
-
- /**
- * Gets the revision.
- * @return the revision.
- */
- public int getRevision() {
- return revision;
- }
-}
\ No newline at end of file
diff --git a/Management-Server/src/main/kotlin/ms09/MSLogger.kt b/Management-Server/src/main/kotlin/ms09/MSLogger.kt
deleted file mode 100644
index 5bd7a7b7f..000000000
--- a/Management-Server/src/main/kotlin/ms09/MSLogger.kt
+++ /dev/null
@@ -1,37 +0,0 @@
-package ms09
-
-import com.github.ajalt.mordant.rendering.TextColors
-import com.github.ajalt.mordant.terminal.Terminal
-import java.io.BufferedWriter
-import java.io.Writer
-import java.text.SimpleDateFormat
-import java.util.*
-
-object MSLogger {
- val t = Terminal()
- var tradeLog: Writer? = null
- var tradeLogWriter: BufferedWriter? = null
-
-
- fun getTime(): String{
- val formatter = SimpleDateFormat("HH:mm:ss")
- return "[" + formatter.format(Date(System.currentTimeMillis())) +"]"
- }
-
- @JvmStatic
- fun logInfo(vararg messages: String){
- for(m in messages){
- if(m.isNotBlank()) t.println("${getTime()}: [INFO] $m")
- }
- }
-
- @JvmStatic
- fun logErr(message: String){
- if(message.isNotBlank()) t.println("${getTime()}: ${TextColors.brightRed("[ ERR] $message")}")
- }
-
- @JvmStatic
- fun logWarn(message: String){
- if(message.isNotBlank()) t.println("${getTime()}: ${TextColors.yellow("[WARN] $message")}")
- }
-}
\ No newline at end of file
diff --git a/Proto/Management.proto b/Proto/Management.proto
new file mode 100644
index 000000000..6697fd0e4
--- /dev/null
+++ b/Proto/Management.proto
@@ -0,0 +1,110 @@
+syntax = "proto2";
+
+package management;
+
+option java_multiple_files = true;
+option java_package = "proto.management";
+option java_outer_classname = "ManagementProtos";
+
+message PlayerStatusUpdate {
+ required string username = 1;
+ required int32 world = 2;
+ required bool notifyFriendsOnly = 3;
+}
+
+message ClanMessage {
+ required string sender = 1;
+ required string clanName = 2;
+ required string message = 3;
+ required int32 rank = 4;
+}
+
+message PrivateMessage {
+ required string sender = 1;
+ required string receiver = 2;
+ required string message = 3;
+ required int32 rank = 4;
+}
+
+message RequestContactInfo {
+ required string username = 1;
+ required int32 world = 2;
+}
+
+message SendContactInfo {
+ message Contact {
+ required string username = 1;
+ optional int32 world = 2;
+ optional int32 rank = 3;
+ }
+
+ required string username = 1;
+ repeated Contact contacts = 2;
+ repeated string blocked = 3;
+}
+
+message FriendUpdate {
+ enum Type {
+ ADD = 0;
+ REMOVE = 1;
+ }
+
+ required Type type = 1;
+ required string username = 2;
+ required string friend = 3;
+}
+
+message BlockedUpdate {
+ enum Type {
+ ADD = 0;
+ REMOVE = 1;
+ }
+
+ required Type type = 1;
+ required string username = 2;
+ required string friend = 3;
+}
+
+message RequestClanInfo {
+ required int32 world = 1;
+ required string clanOwner = 2;
+}
+
+message SendClanInfo {
+ message ClanMember {
+ required string username = 1;
+ required int32 world = 2;
+ required int32 rank = 3;
+ }
+
+ required string clanOwner = 1;
+ required bool hasInfo = 2;
+ optional string clanName = 3;
+ optional int32 joinRequirement = 4;
+ optional int32 kickRequirement = 5;
+ optional int32 messageRequirement = 6;
+ optional int32 lootRequirement = 7;
+ repeated ClanMember members = 8;
+}
+
+message JoinClanRequest {
+ required string username = 1;
+ required string clanName = 2;
+}
+
+message LeaveClanRequest {
+ required string username = 1;
+ required string clanName = 2;
+}
+
+message ClanJoinNotification {
+ required string username = 1;
+ required string clanName = 2;
+ required int32 world = 3;
+}
+
+message ClanLeaveNotification {
+ required string username = 1;
+ required string clanName = 2;
+ required int32 world = 3;
+}
\ No newline at end of file
diff --git a/README.md b/README.md
index f81ac910a..caf98bfe5 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
-
+
An open source MMORPG emulation server
@@ -17,8 +17,6 @@
· Report Bug
NOTE: Bug reports and support are only accepted by/offered to players of our live hosted server. We will not provide support to those running their own copies.
-
-
## Table of Contents
@@ -27,9 +25,8 @@
* [Our Core Values](#our-core-values)
* [Contributing](#contributing)
* [Setup for Content Developers](#content-developers-setting-up-the-project)
- * [Github Setup](#github-setup)
+ * [GitLab Setup](#gitlab-setup)
* [Prerequisites](#prerequisites)
- * [Prereq Installation](#prereq-installation)
* [Project Setup](#project-setup)
* [Running the project](#running-the-project)
* [License](#license)
@@ -38,7 +35,7 @@
## Live Server Information
-Did you know that the 2009Scape Development Team hosts the main branch of this repo that you can connect to and play? Come join a growing community of people that love to grind out skills, quest, and hangout together. A download link for the launcher can be found here. Connecting to the live server is also one of the easiest ways to identify bugs/typos/missing features. Identifying these issues help developers, whether already on the project, or are even brand new to the project, fix bugs and issues in an expedited rate.
+Did you know that the 2009Scape Development Team hosts the main branch of this repo that you can connect to and play? Come join a growing community of people that love to grind out skills, quest, and hangout together. A download link for the launcher can be found [here](https://2009scape.org). Connecting to the live server is also one of the easiest ways to identify bugs/typos/missing features. Identifying these issues help developers, whether already on the project, or are even brand new to the project, fix bugs and issues in an expedited rate.
## History of this Codebase
@@ -48,177 +45,108 @@ This project was started out of love for the 530 revision. A small group of deve
## Our Core Values
-In the current climate of RSPS in general, we believe it's important to wear our core values on our sleeves and defend them with everything we have! Below are what we hold as our core, most important values:
+In the current climate of RuneScape Private Servers in general, we believe it's important to wear our core values on our sleeves and defend them with everything we have! Below are what we hold as our core, most important values:
-* **We do NOT believe in profiting off RSPS.** To many of us here at the 2009scape team, what we care about most is preserving the wonderful work of the Gower brothers in the most true-to-spirit manner possible. We do NOT do this to make a profit, and in fact **we outright refuse donations.** This is a labor of love and passion for everyone involved, a love for real RS2! This is perhaps the single most central value we have. If you want to "donate" to us, do so with your time and your dedication. That is what we desire most.
+* **We do NOT believe in profiting off an RSPS.** To many of us here at the 2009Scape team, what we care about most is preserving the wonderful work of the Gower brothers in the most true-to-spirit manner possible. We do NOT do this to make a profit, and in fact **we outright refuse donations.** This is a labor of love and passion for everyone involved, a love for real RS2! This is perhaps the single most central value we have. If you want to "donate" to us, do so with your time and your dedication. That is what we desire most.
* **Authenticity is central to the work**. As a remake, one of the most important things to us is being true to the Gower spirit. What the Gowers brought to us in our childhood is what we are driven to preserve for the remainder of the world.
-* **Open Source Is Crucial**. We believe open source remakes to be crucial to preserving what we loved in our childhood, and we believe for-profit and/or closed-source servers are destined to flounder out and fail.
+* **Open Source is crucial to the project**. We believe open source remakes to be crucial to preserving what we loved in our childhood, and we believe for-profit and/or closed-source servers are destined to flounder out and fail.
-* **Be Welcoming**. One of our most important goals is to provide a community of friendly and caring people that get along and love to enjoy the game with eachother. For this reason, we do tend to be very strict when it comes to toxicity. We care about quality a whole lot more than quantity!
+* **Be welcoming**. One of our most important goals is to provide a community of friendly and caring people that get along and love to enjoy the game with eachother. For this reason, we do tend to be very strict when it comes to toxicity. We care about quality a whole lot more than quantity!
## Contributing
-Note: All merge requests MUST be made using the defaut MR template you can select from the dropdown when creating a new merge request. Merge requests that do not use this template will not be accepted.
-More information on Kotlin can be found here.
+**Note: All merge requests MUST be made using the defaut MR template. Merge requests that do not use this template will not be accepted.**
+
+**Note: All new contributions MUST be made in Kotlin unless you are updating or fixing a bug in legacy code. More information on Kotlin can be found [here](https://kotlinlang.org/).**
There are many ways everyone can contribute! From the most seasoned programmers to those who do not have the most remote clue how code works! Below are some things that can always use some love from the community.
-* **Wiki Editors**: Did you know we have a wiki? Well it's always in need of people to fill it out and stay on top of it. Editing the wiki is one of the easiest ways you can contribute to 2009scape! If you're an active player and have the will, there's so much you could be helping out with over at the wiki. Click here to go to the wiki.
+* **Content Testers**: I'm putting this one up top because of its importance. We, the contributors and developers, aren't perfect. Sometimes, we make mistakes. This is where you come in - If you want a sneak peek at upcoming content, have a knack for breaking things, or just want to contribute to the project without making code changes, you can become a tester! If you are interested in becoming a tester, reach out in the testing channel of the discord. [Why become a tester?](#why-become-a-tester)
-* **JSON editors**: Did you know that the vast majority of our drop tables, stats, examines, item info, npc info, etc is all stored in a very easy-to-modify format called JSON? This is something almost anyone can help with, especially with the tool made by Ceikry to make it simple and streamlined. If you want to know what can be done to help here, get in touch in the development channel in the discord! **JSON editors are always in need and always appreciated!!**.
+* **Wiki Editors**: Did you know we have a wiki? Well it's always in need of people to fill it out and stay on top of it. Editing the wiki is one of the easiest ways you can contribute to 2009Scape! If you're an active player and have the will, there's so much you could be helping out with over at the wiki. [Click here to go to the wiki](https://cdn.2009scape.org/wiki/doku.php?id=start).
-* **Auditors**: As a remake, authenticity is central to our core values! We could always use someone to go through the game and create large lists of simple tasks that can be done to bring us closer to the authentic 2009 game! The preferred way to do this is one-area-at-a-time. If you want to see an example of some audits we've done in the past, take a look here.
+* **JSON editors**: We could always use more JSON editors! Please note that JSON editing **must** be done using the [Thanos Tool](https://gitlab.com/2009scape/tools/rs09-thanos-tool/-/jobs/5153567519/artifacts/file/build/libs/zaros.jar). **This does not run on modern Java** and requires **Java 11** to run (using the usual 'java -jar zaros.jar').
-* **Content Developers**: As a remake, we have massive amounts of content that need to be implemented or corrected. If you know how to program or are willing to learn, this is where you could be extremely helpful! We need everything from quests to dialogue to minigames to skills that still need to be corrected or implemented, and this is perhaps one of the most valuable ways someone could help out the project! If you are interested in developing content, reach out in the development channel of the Discord.
+* **Authenticity Auditors**: As a remake, authenticity is central to our core values! We could always use someone to go through the game and create large lists of simple tasks that can be done to bring us closer to the authentic 2009 game! The preferred way to do this is one-area-at-a-time. If you want to see an example of some audits we've done in the past, take a look [here](https://gitlab.com/2009scape/2009scape/-/issues/46).
+
+
+* **Code Contributors**: As a remake, we have massive amounts of content that need to be implemented or corrected. If you know how to program or are willing to learn, this is where you could be extremely helpful! We need everything from quests, to dialogue, to mini-games, to skills that still need to be corrected or implemented. This is perhaps one of the most valuable ways someone could help out the project! If you are interested in developing content, reach out in the development channel of the Discord.
## Content Developers: Setting Up the Project.
-### Gitlab Setup
+### GitLab Setup
+**Note: This allows you to commit changes to the main repo (with approval)! Also, always stay up to date with the most recent updates by pulling into your copy when 2009Scape updates!**
-Note: This allows you to commit changes to the main repo (with approval)! Also, always stay up to date with the most recent updates by pulling into your copy when 2009Scape updates!
+1. Create a GitLab account if you haven't done so already.
-1. Create a gitlab account if you haven't done so already
+2. Follow our Git Basics guide [over on the wiki.](https://gitlab.com/2009scape/2009scape/-/wikis/git-basics)
-3. Click "Fork" in the top right hand side of our gitlab page.
-
-**If at anytime you have an issue with gitlab please refer to the** Gitlab help center.
-
-### Git LFS Setup
-
-To obtain large binary files for the repo such as the cache, make sure you have git lfs installed: https://git-lfs.github.com/
-
-After setting up git lfs, you may need to run `git lfs pull` in the root of the cloned repo to download essential binaries.
+**If at anytime you have an issue with GitLab please refer to the [GitLab help center](https://gitlab.com/help).**
### Prerequisites
-* Java SE Development Kit Version 11/OpenJDK 11 (preferred)
-* Xampp
-## Prereq Installation
+These are mandatory. If you don't install **all** of these programs **in order** prior to
+the project's setup, things won't work. At all.
-Windows
-
-
+*For Windows users* - Turn developer mode on first in Windows developer settings.
-1. Install JDK version 11
- * Scroll down until you see Windows x86 and Windows x64
- * If you are running a 64bit verison of Windows (standard), select Windows x64
- * Accept the terms and conditions, after reading them of course, and login to oracle
- * Download and install like any normal application
-
-2. Install Xampp
- * Click on "Xampp for Windows"
- * Download
- * Install as Administrator
-
-
-MacOS
-
-
+* [JDK 11](https://adoptium.net) or the Java SE Development Kit Version 11
+* [IntelliJ IDEA Community](https://www.jetbrains.com/idea/download/)
-1. Install JDK version 11
- * Scroll down until you see macOS x64
- * select macOS x64
- * Accept the terms and conditions, after reading them of course, and login to oracle
- * Download and install like any normal mac application
-
-2. Install Xampp
- * Click on "Xampp for OS X"
- * Download
- * Install as Administrator
-
-
-Linux
-
-
-
-1. Install JDK version 11 through Oracle or through command line
- * Debian, Ubuntu, etc.
- ```sh
- sudo apt install openjdk-11-jdk
- ```
- * Fedora, Oracle Linux, Red Hat Enterprise Linux, etc.
- ```sh
- su -c "yum install java-11-openjdk"
- ```
-
-2. Install Xampp OR Set up DB server of your choice.
- * Click install "XAMPP for Linux"
- * Install like any normal Linux program
-
+### SSH setup
+1. [Set up a key if you don't have one (ed25519)](https://docs.gitlab.com/ee/user/ssh.html#generate-an-ssh-key-pair)
+2. [Add your public key to your gitlab account](https://docs.gitlab.com/ee/user/ssh.html#add-an-ssh-key-to-your-gitlab-account)
+3. [Verify you can connect to git@gitlab.com](https://docs.gitlab.com/ee/user/ssh.html#verify-that-you-can-connect)
### Project Setup
-- Open Xampp (Skip if you roll your own database and know what you're doing.)
- * On Windows make sure you run Xampp as administrator
- * On the left-hand side make sure you tick the two "Service" boxes for Apache and MySQL
- * For both Apache and MySQL click "Start" under Actions
- * After doing that navigate to the PHP My Admin LOCAL SITE
- * Once opened, on the left-hand side click the three "disks" that say "New"
- * In the "Database name" bar type: global
- * Press the "Create" button
- * A three disk "global" should appear on the left hand side
- * Click it and on the top bar select "Import"
- * Under **FILE TO IMPORT** click "Browse...."
- * Navigate to your 2009Scape project folder
- * Go to Server/db_exports/ and import global.sql
- * It may take a moment to import, when It is done importing Xampp is all set up!
-
-### Running the project
-***Note: If you choose not to use the provided run scripts, you *must* run `mvn clean` before it will build correctly.***
+1. If you haven't already, make sure to follow our [Git Basics](https://gitlab.com/2009scape/2009scape/-/wikis/git-basics) guide.
+2. Run `git lfs pull` in the 2009scape folder you cloned as part of that guide. This only has to be done once, ever.
+3. Follow our [IntelliJ IDEA Setup Guide](https://gitlab.com/2009scape/2009scape/-/wikis/Setup-for-IntelliJ-IDEA-IDE)
-####Linux / OSX
-1. Make sure your database of choice is running (see above)
-2. Start the Management Server with run-ms.sh
-3. Start the game server with run-server.sh
+### Running the project
+
+1. If you followed the IntelliJ setup guide, which you probably should have, just use the provided run configuration.
+***Note: If you choose not to use the provided run scripts or IntelliJ, you *must* run `mvn clean` before it will build correctly.***
+
+#### Linux / OSX
+
+Start the game server with the included run script. Use `./run -h` for more info.
#### Windows
-1. Make sure your database is running (see above)
-2. Start the Management Server with run-ms.bat
-3. Start the game server with run-server.bat
-### IDE Integration: IntelliJ IDEA (Recommended)
-1. Click the "Project" tab on the left hand side.
-2. In the top left where the "Project" drop down is, click Project Files
-3. Expand the Management-Server folder
-4. Right click pom.xml and click "Add Maven Project"
-5. Expand the Server folder
-6. Right click pom.xml and click "Add Maven Project"
-7. Restart IntelliJ
-8. You should now have ready-made run configurations in the top right: [Windows] Run MS, [Windows] Run Server, [Linux] Run MS, [Linux] Run Server
-
-### IDE Integration: Eclipse
-Note: This section could use improvement. If you have a better way to integrate the project with eclipse, feel free to open an MR!
-1. Make sure you have the [Eclipse Maven Plugin](https://stackoverflow.com/a/25993960/1971003) installed.
-2. In Eclipse, click File -> Import
-3. Type Maven in the search box
-4. Under "Select an Import Source," select "Existing Maven Project."
-5. Next
-6. Click browse, and select the Management-Server folder.
-7. Repeat steps 2-6 for the Server folder.
-
-### IDE Integration: Netbeans
-Note: This section could use improvement. If you have a better way to integrate the project with netbeans, feel free to open an MR!
-
-1. Select File -> Open Project
-2. Select the Management-Server folder to open the MS project.
-3. Select the Server folder to open the Server project.
+Start the game server with `run-server.bat`
### License
-We use the AGPL 3.0 license, which can be found here. Please read and understand the license. Failure to follow the guidelines outlined in the license will result in legal action. If you know or hear of anyone breaking this license, please send a report, with proof, to Red Bracket#8151, ceikry#2724, or woahscam#8535 on discord or email woahscam@hotmail.com. **We WILL NOT change the license to fit your needs.**
+We use the AGPL 3.0 license, which can be found [here](https://www.gnu.org/licenses/agpl-3.0.en.html). Please be sure to read and understand the license. Failure to follow the guidelines outlined in the license will result in legal action. If you know or hear of anyone breaking this license, please send a report, with proof, to Red Bracket#8151, ceikry#2724, or woahscam#8535 on discord or email woahscam@hotmail.com. **We WILL NOT change the license to fit your needs.**
### Contact
-Reminder: There is no official support for setting up your own server. Do not ping/dm developers about setting up your server. Community support is available in the discord server.
+**Reminder: There is no official support for setting up your own server. Do not ping/dm developers, or ask in support channels about setting up your server. Support for the live server and 2009Scape single-player is available on the [2009Scape forums](https://forum.2009scape.org/).**
[license-shield]: https://img.shields.io/badge/license-AGPL--3.0-informational
[license-url]: https://www.gnu.org/licenses/agpl-3.0.en.html
+
+### Why become a tester?
+
+Before content hits Live, it has to be tested. We can, but do not want to do this alone, and would love the help! But don't worry, there is something in it for you. Credits! Keep in mind that credits will only be awarded to people who thoroughly test the content and provide detailed reports on them. Like votes or HoF you must claim them in the #claim-to-fame channel on discord or matrix.
+
+* If you test smaller things like bug fixes there is a 2 credit reward.
+* If you test full quests or minigames you will be rewarded 5 credits.
+* If you find a bug in the content you are testing that hasn't already been found you will earn an extra credit.
+
+These credits can be spent in the 2009Scape Reward Shop. It's important to be clear that credits are gained by contributions to the project. We cannot and will not accept donations (of any kind), especially not in exchange for in-game credits or perks.
+
+Testers are not the only people who can gain credits - other ways of earning credits can be found on [the 2009Scape website](https://2009scape.org/site/game_guide/credits.html).
+
+Please be patient! The Credit system is not fully complete yet, so it will take a long time for credits to be awarded.
\ No newline at end of file
diff --git a/Server/.gitignore b/Server/.gitignore
index f22e9f978..a9a29cad7 100644
--- a/Server/.gitignore
+++ b/Server/.gitignore
@@ -2,6 +2,7 @@ bin/**
out/**
data/logs/**
data/profile/**
+data/playerstats/**
.idea/**
/bin
.DS_Store**
diff --git a/Server/.run/Run Server.run.xml b/Server/.run/Run Server.run.xml
index ea794964d..102891e4b 100644
--- a/Server/.run/Run Server.run.xml
+++ b/Server/.run/Run Server.run.xml
@@ -2,8 +2,8 @@
-
-
+
+
diff --git a/Server/.run/[Windows] Run Server.run.xml b/Server/.run/[Windows] Run Server.run.xml
deleted file mode 100644
index fde052599..000000000
--- a/Server/.run/[Windows] Run Server.run.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Server/data/CELEDT.xml b/Server/data/CELEDT.xml
deleted file mode 100644
index 965f4bbfd..000000000
--- a/Server/data/CELEDT.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Server/data/ObjectParser.xml b/Server/data/ObjectParser.xml
index 3a354d63b..e132f1f69 100644
--- a/Server/data/ObjectParser.xml
+++ b/Server/data/ObjectParser.xml
@@ -22,8 +22,10 @@
-
+
+
+
diff --git a/Server/data/botdata/bot_dialogue.json b/Server/data/botdata/bot_dialogue.json
index 6890ab68a..c225b117e 100644
--- a/Server/data/botdata/bot_dialogue.json
+++ b/Server/data/botdata/bot_dialogue.json
@@ -13,7 +13,7 @@
"This is my own dialogue",
"@name run.",
"@name you cant hide from me.",
- "jajajajajaja",
+ "Jajajajajaja",
"How do i get to Varrock @name?",
"How do i get to Camelot @name?",
"How do i get to Taverly @name?",
@@ -21,17 +21,17 @@
"How do i get to Yanille @name?",
"How do i get to Catherby @name?",
"Gotta go srry.",
- "wiggle wiggle wiggle yeah",
+ "Wiggle wiggle wiggle yeah",
"@name lookin goofy",
"@name lookin stoopid",
"@name lookin like a red bracket",
"@name get yo weasel lookin ass outta here",
"@name lookin like some sort of twocan sam",
" /hop world 1 got a noob here!",
- "woot",
+ "Woot",
"Hows your day been @name?",
- "heyy @name :)",
- "gtg srry",
+ "Heyy @name :)",
+ "Gtg srry",
"I wont answer your questions @name",
"Stop asking questions @name",
"Roflmao",
@@ -48,7 +48,7 @@
"Nice Armor @name!",
"Nice Weapon @name!",
"Venezuela #1",
- "2009Scape and chill @name?",
+ "2009scape and chill @name?",
"@name is my girlfriend",
"Buying gf",
"Bank sale pm me for info",
@@ -61,14 +61,14 @@
"Fuckin sit @name.",
"Error: Botting client broken tell Evilwaffles.",
"@name bots all the time",
- "report @name",
- "apparently @name bots",
+ "Report @name",
+ "Apparently @name bots",
"@name hates kermit",
"There are no mods on to help you",
"Report me, you wont",
"Yes, Im botting. And?",
"ERROR: BOTSCRIPT 404. REPORT TO BOT OWNER (Evilwaffles)",
- "flash2:wave: FUCK",
+ "Flash2:wave: FUCK",
"I love 2009Scape!",
"Ja Ja Ja Ja",
"This is fun!",
@@ -105,9 +105,9 @@
"Trade me @name",
"LOL",
"How do I get to lumbrich",
- "bruh",
- "poggers",
- "shitpost",
+ "Bruh",
+ "Poggers",
+ "Shitpost",
"I wish i could find an RS Gf",
"Where do you find runite ore @name?",
"Where is the best coal location @name?",
@@ -135,41 +135,39 @@
"Im not a bot",
"Nah Im a real person",
"Bruh are you even a real person lol?",
- "e",
+ "E",
"Hellooooo @name",
- "wc lvl @name?",
- "fletching level @name?",
- "firemaking level @name?",
+ "Wc lvl @name?",
+ "Fletching level @name?",
+ "Firemaking level @name?",
"Have you seen the dude in the ge?",
"Wonderful weather today @name",
"Lowkey drunk af rn",
"I am so tired",
"Wassup @name",
- "follow me @name!",
+ "Follow me @name!",
"Server goes brrrr",
- "bruh i am not a bot",
+ "Bruh i am not a bot",
"I think @name is a bot",
"Are you a bot @name?",
- "insert spiderman meme here",
- "pot calling the kettle black etc",
- "ooh, a piece of candy",
+ "Insert spiderman meme here",
+ "Pot calling the kettle black etc",
+ "Ooh, a piece of candy",
"I love woodcutting",
"Im going to go level up later",
"I love mining shooting stars",
" /this @name looks dumb",
"AAAAAAAAAAAAAAAAAAAAAAAAHHHHHH!!!",
- "como estas @name",
- "Summer = always the best community manaer",
- "so how about that ceikry guy",
- "so how about that kermit dude",
- "woah is an abusive mod",
+ "Como estas @name",
+ "So how about that ceikry guy",
+ "So how about that kermit dude",
+ "Woah is an abusive mod",
"I heard Woah and Ceikry are dating now",
"House party in Yanille!",
"Can i have some gp @name?",
"Where do i find partyhats?",
"Why do mobs drop boxes?",
"What exp rate do you play on @name?",
- "Have you met Summer?",
"Hey @name",
"Hey @name",
"Hey @name",
@@ -190,33 +188,33 @@
"NobodyCLP has big feet",
"Chicken tendies for dindin",
"Spicey Chicken tendies is litty as a mf titty",
- "red bracket stinky",
- "ra ra rasputin",
- "lover of the russian queen",
+ "Red bracket stinky",
+ "Ra ra rasputin",
+ "Lover of the russian queen",
"Whens the next update coming out?",
"How many players are maxed?",
"I dont use discord @name",
"I dont use the CC @name",
"Why should i use discord?",
"2009Scape is life",
- "brb gotta make dinner",
+ "Brb gotta make dinner",
"I need to go to the GE",
"@name can i have a ge tele?",
- "lol @name shut up",
+ "Lol @name shut up",
"Where are teak trees?",
"How do i make planks @name?",
"Idk about that scraggley ass alex guy.",
"Rusty? More like Crusty af lmfao.",
"I need to sell some stuff on the ge",
"I have so many logs to sell lol",
- "nah",
- "yes",
+ "Nah",
+ "Yes",
"Where can i mine iron?",
"Where can i mine tin?",
"Where can i mine copper?",
"Where can i mine clay?",
"Where can i mine coal?",
- "no",
+ "No",
"We are no strangers to love",
"You know the rules and so do I",
"A full commitment's what I'm thinking of",
@@ -230,10 +228,10 @@
"Never gonna make you cry",
"Never gonna say goodbye",
"Never gonna tell a lie and hurt you",
- "why",
- "why",
- "why",
- "why",
+ "Why",
+ "Why",
+ "Why",
+ "Why",
"Why does it not show your messages in the chatbox?",
"Why do you not show up in chat?",
"Why do you not show up in chat @name?",
@@ -241,7 +239,7 @@
"When did you start playing @name?",
"When did you start on this server @name?",
"When did you first get here @name?",
- "russias greatest love machine",
+ "Russias greatest love machine",
"Never gonna run around and desert you",
"Two things are infinite, the universe & @names stupidity",
"If you tell the truth, you dont have to remember anything.",
@@ -259,7 +257,7 @@
"What do you think @name?",
"How does that sound @name?",
"That sounds great @name.",
- "I’m learning English.",
+ "I'm learning English.",
"I don't understand.",
"Could you repeat that please @name?",
"Could you please talk slower @name?",
@@ -283,26 +281,26 @@
"@name?",
"@name how long have you played",
"@name world 1 or world 2?",
- "what is your main world @name?",
+ "What is your main world @name?",
"I prefer world 1 tbh",
"I prefer world 2 tbh",
"@name world 1 for life",
"@name fog bots when?",
- "damn somalian pirates",
- "bracket more like brrrrrr acket",
- "why the racket bracket",
+ "Damn somalian pirates",
+ "Bracket more like brrrrrr acket",
+ "Why the racket bracket",
"Hi @name I am dad",
"@name likes dad jokes",
- "ur nuts @name",
- "lootshare go brr",
- "partay with froggay",
+ "Ur nuts @name",
+ "Lootshare go brr",
+ "Partay with froggay",
"Know what else is lame? Not being able to play 2009scape right now",
"Can you even grind on osrs",
- "i botted to 88 fishing",
+ "I botted to 88 fishing",
"Do not forget to vote in running polls!",
"Always check announcments",
- "we thrivin",
- "ship @name",
+ "We thrivin",
+ "Ship @name",
"Dont forget to vote 2009scape!",
"Kermit is too legit 2 quit",
"Out here on the range we are having fun",
@@ -312,11 +310,11 @@
"I dont like him @name",
"I dont like it @name",
"Im an American.",
- "ima go pickup my lady ting",
- "that portuguese dude is something else",
+ "Ima go pickup my lady ting",
+ "That portuguese dude is something else",
"@name!! @name!!",
- "bowdi boy",
- "i love bowdi... sometimes",
+ "Bowdi boy",
+ "I love bowdi... sometimes",
"@name = @name",
"I'm bacon.. go on dad... say it",
"I'm going to leave.",
@@ -340,7 +338,7 @@
"I couldn't agree more @name",
"It cost me a fortune @name",
"I am dog tired",
- "Don’t take it personally",
+ "Don't take it personally",
"We will be having a good time",
"Same as always @name",
"No problem",
@@ -361,41 +359,24 @@
"Guthiiiiiiiiiiiiiiiiiiiiiiiiiiiiiixxx!!!!!!",
"530 gang for life",
"@name, have you read the rules?",
- "@name, have you checked out the Discord?",
- "why are the leprechauns moving?",
+ "@name, have you checked out the forums?",
+ "Why are the leprechauns moving?",
"I am beyond the point of no return!",
"Nothin' personnel, kid.",
"All your base are belong to us",
"May Guthix bring you balance.",
"May Guthix bring you balance.",
"May Guthix bring you balance.",
- "Thy death was not in vain, for it brought some balance to the world. May Guthix bring you rest.",
- "May you walk the path, and never fall, for Guthix walks beside thee on thy journey. May Guthix bring you peace.",
- "All things must end, as all begin; Only Guthix knows the role thou must play. May Guthix bring you balance.",
- "In life, in death, in joy, in sorrow: May thine experience show thee balance. May Guthix bring you balance.",
- "Thou must do as thou must, no matter what. Thine actions bring balance to this world. May Guthix bring you balance.",
- "The river flows, the sun ignites, May you stand with Guthix in thy fights. May Guthix bring you balance.",
"A journey of a single step, May take thee over a thousand miles. May Guthix bring you balance.",
"Zamorak give me strength!",
"Zamorak give me strength!",
"Zamorak give me strength!",
- "May your bloodthirst never be sated, and may all your battles be glorious. Zamorak bring you strength.",
- "There is no opinion that cannot be proven true...by crushing those who choose to disagree with it. Zamorak give me strength!",
- "Battles are not lost and won; They simply remove the weak from the equation. Zamorak give me strength!",
- "Those who fight, then run away, shame Zamorak with their cowardice. Zamorak give me strength!",
- "Battle is by those who choose to disagree with it. Zamorak give me strength!",
- "Strike fast, strike hard, strike true: The strength of Zamorak will be with you. Zamorak give me strength!",
"The weak deserve to die, so the strong may flourish. This is the creed of Zamorak.",
"This is Saradomin's wisdom.",
"This is Saradomin's wisdom.",
"This is Saradomin's wisdom.",
"Go in peace in the name of Saradomin; may his glory shine upon you like the sun.",
"Thy cause was false, thy skills did lack; See you in Lumbridge when you get back.",
- "Protect your self, protect your friends. Mine is the glory that never ends. This is Saradomin's wisdom.",
- "The darkness in life may be avoided, by the light of wisdom shining. This is Saradomin's wisdom.",
- "Show love to your friends, and mercy to your enemies, and know that the wisdom of Saradomin will follow. This is Saradomin's wisdom.",
- "A fight begun, when the cause is just, will prevail over all others. This is Saradomin's wisdom.",
- "The currency of goodness is honour; It retains its value through scarcity. This is Saradomin's wisdom.",
"For Camelot!",
"Firmly grasp it!",
"My legs!",
@@ -412,7 +393,7 @@
"Fluff",
"Bwuh",
"I'm literally just mothin' bro",
- "Certified 2009scape classic.",
+ "Certified 2009Scape Classic.",
"Make sure to like, comment and subscribe @name it really helps",
"Real 2009scape hours!!! Murder that like if you up!!!!",
"W00t!",
@@ -426,32 +407,32 @@
"Drip check",
"Uhuhuhuhuhuhuhuhu",
"Ahhhhhhhhhhhhhhhh",
- "yall got any deez?",
+ "Yall got any deez?",
"Deez nuts",
"When she give you that yoinky sploinky",
- "Sir, this is a 2009scape.",
+ "Sir, this is a 2009Scape.",
"Oh dear! You are dead!",
"Cor blimey, mate! What are ye doing in me pockets?",
- "yeah i got funnies",
- "read muv luv",
+ "Yeah i got funnies",
+ "Read muv luv",
"Why doesn't she love me bros?",
"@name is off the goop don't listen to the clown",
- "do yall got laptops",
- "cfunny play the alien warp sound effect",
+ "Do yall got laptops",
+ "Cfunny play the alien warp sound effect",
"Ware to all whom doom hither, where cope is all yet constant.",
"Who wants to come G W D?",
"How do I make money?",
"Ironmen stand alone together!",
- "based",
- "where is she",
+ "Based",
+ "Where is she",
"*S N I I I I I I I I I F F F F F F F F F F F*",
"Hey @name, who was in Paris?",
"Huh whuh?",
- "who's lone?",
- "who *is* he?",
+ "Who's lone?",
+ "Who *is* he?",
"Hi @name, I'm Dad!",
- "anyone wanna play melty blood after I high alch these bows?",
- "buru nyaaaa",
+ "Anyone wanna play melty blood after I high alch these bows?",
+ "Buru nyaaaa",
"Number 15, Taverley Dungeon Black Dragons.",
"House party at Rimmington! Host: @name!",
"Spending 200m! Trade me, no junk!",
@@ -461,19 +442,19 @@
"Nice outfit @name, does it come in children's size 12?",
":)",
":D",
- "die screaming",
+ "Die screaming",
"Only on Tuesdays",
- "we stan 2009scape",
+ "We stan 2009scape",
"There is no spoon",
"Where's the cow level?",
"Join 2009scape Clan Chat!",
"Join 2009scape Cc!",
"Chop chop!",
- "Runescape rox my sox!!!!!!1",
+ "2009Scape rox my sox!!!!!!1",
"Type ::scripts for all 99s",
"Help I just died to Evil Chicken and I lost my stuff!",
"Can you fight Bandos in this game?",
- "one bad gloop",
+ "One bad gloop",
"@name is not cute or funny",
"You have committed crimes against Gielinor and her people. What say you?",
"Barrows trauma",
@@ -488,7 +469,7 @@
"Praise Andrew Gower",
"Please help me I can't stop playing 2009scape",
"Are you ignoring me, @name?!",
- "i agree with this rfc can we put it in the game please",
+ "I agree with this rfc can we put it in the game please",
"@name, we've been trying to reach you about your car's extended warranty",
"Trimming armour, 25k gp",
"Hey why does my furniture disappear?",
@@ -498,21 +479,525 @@
"Shlisshalpshlaap",
"Somebody call for an exterminator?",
"Decisive action. Should work.",
- "R E A D Y T O R A I S E S O M E H E L L",
"Darkness overpowering.",
"Got any questions about propane? Or propane accessories?",
"When someone asks me if I am a god, I say Y E S!!!",
"You run out of Marines?",
- "Goliath Online",
- "I'm escaping to the one place that hasn't been corrupted by Capitalism. Lunar Isle!",
"Selling wildy protection, 100k gp",
- "Can’t we get you on Mastermind, @name? Next contestant – @name from Lumbridge. Special subject – the bleedin’ obvious.",
- "Oh, you’re German! I’m sorry, I thought there was something wrong with you.",
- "Listen, don’t mention the war! I mentioned it once, but I think I got away with it all right.",
+ "Can't we get you on Mastermind, @name?",
+ "Listen, don't mention the war! I mentioned it once, but I think I got away with it all right.",
"Cunnilingus and psychiatry brought us to this.",
- "Oh, poor baby. What do you want, a Brimstail's Sampler?",
- "There's an old TzHarrian saying, you fuck up once, you lose two teeth.",
- "The lineup consisted simply of six hydrocoptic marzelvanes so fitted to the ambifacient lunar waneshaft that sidefumbling was prevented."
+ "Ah, the Wilderness... where dreams of riches meet a swift demise.",
+ "Who needs a quest guide? I've got the whole wiki memorized.",
+ "Buying GF 10k coins. Must have at least 70 Agility.",
+ "I swear, the goblins in Goblin Village have it out for me.",
+ "Why do wizards always hang out in towers? Is it a zoning thing?",
+ "I'm training my Construction skill. My house is gonna be lit!",
+ "The GE is like the stock market, but with dragon bones.",
+ "Why do we need a cabbage patch in Draynor? Seriously.",
+ "I've been mining rune essence for hours. My pickaxe hates me.",
+ "@name hit 99 Cooking. Time to open a gourmet restaurant in Varrock.",
+ "I'm convinced the @name is actually a time-traveling wizard.",
+ "Anyone up for a Castle Wars match? I need that decorative armor.",
+ "Accidentally clicked Attack on a guard. Now I'm a wanted criminal.",
+ "Why do we even have a Duel Arena? It's just a fancy boxing ring.",
+ "I've got a stack of burnt lobsters. Anyone want to buy them?",
+ "Greetings, @name! Looking for a quest?",
+ "Just got a rare drop! The RNG gods are smiling upon me!",
+ "Anyone need help with a boss fight? I've got my dragon dagger ready.",
+ "Buying feathers! Will pay top price!",
+ "The Lumbridge cows are my favorite training spot.",
+ "Who needs a teleport? I've got my magic runes stocked.",
+ "@name hit 99 Woodcutting. Time to chop some yews!",
+ "Anyone seen the Wise Old Man lately? I owe him a visit.",
+ "Selling lobsters! Freshly caught from Catherby.",
+ "Swear, the Wilderness is scarier than my nightmares.",
+ "Looking for a clan to join. Any takers?",
+ "I'm an ironman, so no trading for me!",
+ "Anyone up for a Castle Wars match?",
+ "The Grand Exchange prices are crashing. Panic sell!",
+ "Who else remembers the Falador Massacre?",
+ "I'm saving up for a party hat. Wish me luck!",
+ "Barrows runs are my addiction. Those crypts are spooky.",
+ "I'm convinced the Wise Old Man is secretly Zamorak.",
+ "I'm a completionist, so I'm grinding out all the achievements.",
+ "The music in this game is surprisingly epic.",
+ "Tried to trade with a tree... It didn't go well.",
+ "My bank is like a black hole. Items disappear forever.",
+ "I'm convinced the Wise Old Man is just a confused tourist.",
+ "My character's fashion sense? Let's just say it's 'unique.'",
+ "Challenged a cow to a dance-off. It won.",
+ "Why does the Lumbridge Guide always look so lost?",
+ "I'm training Agility, but my real-life agility is zero.",
+ "Tried to fish in the desert. Sandfish are elusive.",
+ "The Grand Exchange is like a chaotic stock market.",
+ "I'm a master at clicking 'Continue' during quests.",
+ "I'm convinced the chickens are plotting world domination.",
+ "I'm a woodcutter, but I've never seen a talking tree.",
+ "I'm a vegetarian, except when it comes to killing dragons.",
+ "Why do wizards wear pointy hats? Is it a fashion statement?",
+ "Challenged a guard to a staring contest. He won.",
+ "I'm collecting cabbage. It's a noble pursuit.",
+ "Accidentally set my cat on fire. It's now a firecat.",
+ "I'm convinced the Wise Old Man is secretly a time traveler.",
+ "I'm a quest completionist, but I still can't find my keys.",
+ "I'm convinced the ducks are spying on us.",
+ "I'm a pro at avoiding the Lumbridge swamp. Too many frogs.",
+ "Hey, can someone lend me 10k? I promise I'll pay it back... eventually.",
+ "Why do I always find the one square where the random event spawns?",
+ "I'm training Prayer by burying bones. It's like a spiritual workout.",
+ "The Wise Old Man's fashion sense is questionable.",
+ "I'm convinced the ducks are secretly plotting world domination.",
+ "Why do wizards wear pointy hats? Is it a dress code?",
+ "I'm collecting cabbage. It's a noble pursuit, really.",
+ "I'm a vegetarian, except when it comes to killing dragons.",
+ "Why does the Lumbridge Guide always look so lost?",
+ "Training Agility, but my real-life agility is zero.",
+ "I'm convinced the Wise Old Man is secretly a time traveler.",
+ "Tried to mine air. It's an untapped resource.",
+ "I'm a quest completionist, but I still can't find my keys.",
+ "Challenged a guard to a staring contest. He won.",
+ "I'm saving up for a party hat. Priorities, you know?",
+ "Why do goblins drop coins? Do they moonlight as accountants?",
+ "I'm convinced the chickens are plotting something.",
+ "Clicked 'Attack' on a chicken. Now I'm a poultry murderer.",
+ "My character's fashion sense? Let's just say it's 'unique.'",
+ "Do you know where I can find the entrance to the Taverley Dungeon?",
+ "Hey, anyone here familiar with the Barrows? I need some tips.",
+ "Is there a bank nearby? My inventory is overflowing with loot",
+ "I'm clueless about clue scrolls",
+ "Where's the best spot to catch sharks? I'm aiming for 99 Fishing.",
+ "Is there a shortcut to the Karamja Volcano?",
+ "Can someone explain the mechanics of the Jad fight in the Fight Caves?",
+ "I'm stuck on the Elemental Workshop quest. Any hints?",
+ "Where can I find a loom to spin flax into bowstrings?",
+ "What's the best gear setup for killing dragons? I want that visage drop!",
+ "I'm trying to unlock the fairy rings",
+ "How do I recharge my amulet of glory?",
+ "Why do goblins drop coins?",
+ "The Grand Exchange is like the stock market",
+ "My real-life agility is more like a lumbering tortoise.",
+ "The Wise Old Man's fashion sense is like Woahs",
+ "I challenged a cow to a dance off, surprisingly smooth mooves.",
+ "Why does the Lumbridge Guide always look lost?",
+ "I'm convinced the ducks in Lumbridge are plotting world domination!",
+ "I accidentally ate my prayer potion I'm blessed with heartburn",
+ "I'm a vegetarian, except when it comes to slaying dragons.",
+ "Why do wizards wear pointy hats? Is it a magical dress code?",
+ "I'm a quest completionist, but I still can't find my keys in real life.",
+ "I challenged a guard to a staring contest. He won.",
+ "I'm saving up for a party hat. Priorities, ya know?",
+ "What's the deal with the Wilderness?",
+ "I'm convinced the chickens are secretly plotting world domination!",
+ "Accidentally clicked 'Attack' on a guard. Now I'm on a watchlist.",
+ "My character's fashion sense? Let's just say it's 'unique'",
+ "Lobsters heal my soul",
+ "Trimmed armor or bust!",
+ "Wilderness: Where friendships go to die",
+ "Buying gf 10k",
+ "Dancing for coins at Lumbridge",
+ "Wearing full rune like a boss",
+ "Teleporting to Camelot for quests",
+ "Fishing for hours at Catherby",
+ "PKing with a rune 2h",
+ "World 1 Falador Park parties",
+ "Staking my bank at the Duel Arena",
+ "Dying to Elvarg's fiery breath sums up my life",
+ "Got the Quest cape finally on my main!",
+ "Wearing a party hat with pride",
+ "Castle Wars: Red vs Blue",
+ "Trading in Varrock Square",
+ "Barrows runs for that sweet loot",
+ "Spending hours in Pest Control is life",
+ "Killing cows for leather armor is a good start",
+ "Farming herbs in Ardougne can be good money",
+ "Clan chat drama LOL",
+ "Mining rune essence endlessly",
+ "Agility courses: A love-hate relationship",
+ "Dueling for honor.... and GP",
+ "Buying runes from Aubury is decent money",
+ "Chasing the Easter Bunny like a scam",
+ "Wearing a skillcape with pride",
+ "Fletching yew longbows for profit",
+ "Going to implings in Puro-Puro",
+ "Castle Wars barricade wars",
+ "Dropping party hats at drop parties like pennies",
+ "Killing lesser demons in Karamja is part of my holy conquest",
+ "@name lures noobs into the Wilderness",
+ "Farming ranarrs for cash",
+ "Getting lost in the Underground Pass",
+ "Selling coal at the Grand Exchange",
+ "Fighting the Kalphite Queen",
+ "Picking flax in Seers' Village",
+ "Begging for free stuff in Lumbridge",
+ "Smithing rune platebodies for profit",
+ "Logging out in Lumbridge Castle",
+ "Hey @name, how do I get to the Grand Exchange?",
+ "Veteran here! @name, what's your favorite quest?",
+ "@name, how do I make money fast?",
+ "Hey @name, what's the best combat style for bossing?",
+ "@name, always carry an emergency teleport!",
+ "New player here! @name, what's the Wilderness like?",
+ "Hey @name, how do I join a clan?",
+ "@name, prioritize Prayer levels!",
+ "@name, what's the best way to train Agility?",
+ "Hey @name, what's your favorite minigame?",
+ "@name, never trust a PKer in Lumbridge!",
+ "@name, how do I get a fire cape?",
+ "Hey @name, what's the fastest way to level up Magic?",
+ "@name, try the Barrows tunnels!",
+ "@name, what's the deal with Pest Control?",
+ "Hey @name, how do I unlock the Fairy Rings?",
+ "@name, remember the old random events?",
+ "@name, should I train Strength or Attack first?",
+ "Hey @name, what's your favorite skillcape?",
+ "@name, can't do the Fight Caves!",
+ "@name, how do I get a pet?",
+ "Hey @name, what's the best food for boss fights?",
+ "@name, Castle Wars or Clan Wars?",
+ "@name, what's a clue scroll?",
+ "Hey @name, how do I defeat Jad?",
+ "@name, use Protect from Melee at KBD!",
+ "@name, should I train Ranged or Magic?",
+ "Hey @name, what's the best way to level up Crafting?",
+ "@name, don't forget your anti-dragon shield!",
+ "@name, what's the Stronghold of Security?",
+ "Hey @name, how do I access the Legends' Guild?",
+ "@name, remember the old PvP worlds?",
+ "@name, how do I get a dragon defender?",
+ "Hey @name, what's the best way to level up Herblore?",
+ "@name, always carry a charged amulet of glory!",
+ "@name, should I train Fishing or Cooking?",
+ "Hey @name, how do I defeat the Chaos Elemental?",
+ "@name, try the TzHaar Fight Pit!",
+ "@name, what's the best way to level up Smithing?",
+ "Hey @name, what's your favorite Slayer master?",
+ "@name, use the Ardougne cloak teleports!",
+ "@name, what's the Legends' Quest about?",
+ "Hey @name, how do I unlock the Ancient Magicks?",
+ "@name, remember the old Pest Control boats?",
+ "@name, what's the best way to level up Construction?",
+ "Hey @name, what's the fastest way to level up Prayer?",
+ "@name, the old Duel Arena stakes!",
+ "@name, what's the Warriors' Guild?",
+ "Hey @name, how do I defeat the Kalphite Queen?",
+ "@name, use the fairy ring code BIP!",
+ "@name, should I train Attack or Defense first?",
+ "Hey @name, what's the best way to level up Thieving?",
+ "@name, don't forget your charged glory amulet!",
+ "@name, what's the Legends' Cape?",
+ "Hey @name, how do I access the Heroes' Guild?",
+ "@name, remember the old Pest Control void gear?",
+ "@name, how do I get a firemaking skillcape?",
+ "Buying gf 10k",
+ "Trimming armor for free!",
+ "Wanna join my clan? We're called The Mighty Cabbages'!",
+ "I'll meet you at the Falador Party Room!",
+ "Dancing for coins in Varrock Square!",
+ "Remember when the Wilderness was dangerous?",
+ "I got a rune scimitar drop from Lesser Demons!",
+ "Lumbridge Swamp is haunted!",
+ "Anyone up for Castle Wars?",
+ "I miss the old random events!",
+ "World 2 is the trading hub!",
+ "I'm going to train my Agility at the Gnome Stronghold!",
+ "I just got 99 Cooking!",
+ "Fishing lobsters at Catherby is life!",
+ "The Legends' Guild is so exclusive!",
+ "Who needs a quest guide? I'll figure it out!",
+ "I'm mining rune essence for hours!",
+ "Barrows armor looks sick!",
+ "I'm stuck in the Underground Pass!",
+ "The Stronghold of Security taught me about account security!",
+ "I'm going to farm herbs in Ardougne!",
+ "I'm getting my fire cape!",
+ "I love the music in RuneScape!",
+ "I'm alching my maple longbows!",
+ "I'm doing the Recipe for Disaster subquests!",
+ "I'm going to train my combat stats at the Rock Crabs!",
+ "I'm going for the Quest Cape!",
+ "I'm going to mine pure essence!",
+ "I'm hunting chinchompas in the Feldip Hills!",
+ "I'm going to train my Woodcutting at Seers' Village!",
+ "I'm going to fish sharks at the Fishing Guild!",
+ "I'm going to train my Thieving at Ardougne Knights!",
+ "I'm going to hunt implings in Puro-Puro!",
+ "I'm going to train my Hunter at the Falconry!",
+ "I'm smithing rune platebodies!",
+ "I'm going to train my Farming at the Tree Gnome Stronghold!",
+ "I'm going to hunt red chinchompas in the Wilderness!",
+ "I'm doing the Underground Pass quest!",
+ "I'm going to fish monkfish in Piscatoris!",
+ "Meet me in Varrock, @name, for an epic trade",
+ "@name, join my clan; we'll conquer the Wilderness together!",
+ "Beware the dragons, @name, they're fiercer than you think",
+ "Crafting runes with @name, the best mage in Gielinor",
+ "Fishing lobsters with @name, the sea's no match for us",
+ "@name, your swordsmanship at Duel Arena is unmatched!",
+ "Questing through dark caves, @name always leads the way",
+ "Share your wisdom, @name, how'd you master those spells?",
+ "Legends speak of @name bravery at the God Wars",
+ "Need more arrows, @name? I've got plenty to spare",
+ "Cooking's a breeze when @name around, no burnt lobsters!",
+ "Mining together, @name and I strike gold every time",
+ "@name, let's barter; your herbs for my potions?",
+ "Training agility with @name, leaping like graceful gazelles",
+ "Heard @name got the best magic beans in town",
+ "Fletching bows with @name, aiming for perfection",
+ "Smithing with @name, our anvils never cool down",
+ "Adventuring with @name, every quest is a thrill",
+ "Battling demons, @name courage inspires us all",
+ "Slaying dragons, @name the hero we need",
+ "Gathering at Falador, @name party room is legendary",
+ "Hunting chinchompas, @name traps are always full",
+ "Farming's fun with @name, our crops never fail",
+ "Brewing potions, @name mixtures are magical",
+ "Casting spells with @name, we're invincible",
+ "Building fires, @name flames warm the coldest nights",
+ "Sailing to Pest Control, @name our fearless captain",
+ "Trading runes, @name deals are the fairest",
+ "Exploring dungeons, @name the light in the darkness",
+ "Charging orbs with @name, our energy knows no bounds",
+ "Dancing in Draynor, @name moves are enchanting",
+ "Playing Gnomeball, @name the star player",
+ "Harvesting willows, @name axe swings true",
+ "Enchanting jewelry, @name touch turns copper to gold",
+ "Summoning familiars, @name spirit wolf leads the pack",
+ "Thieving from stalls, @name hands are lightning-fast",
+ "Crafting runes, @name essence never runs dry",
+ "Fishing at Catherby, @name catch feeds us all",
+ "Cooking feasts, @name dishes delight the gods",
+ "Mining runite, @name pickaxe strikes rich veins",
+ "Bartering at Grand Exchange, @name a trading master",
+ "Training prayer, @name piety moves mountains",
+ "Fighting revenants, @name valor shines bright",
+ "Building homes, @name construction is flawless",
+ "Hunting imps, @name net is always full",
+ "Brewing ale, @name tavern is the town's favorite",
+ "Casting high alchemy, @name turns junk into treasure",
+ "Sailing to Karamja, @name adventures are legendary",
+ "Forging alliances, @name charisma unites clans",
+ "Defeating bosses, @name name echoes in legends",
+ "Are you mewing @name???",
+ "Check out that gyatt @name",
+ "Bruhhhhh @name got that rizz",
+ "@name rizzing up the bots",
+ "Ironman? More like copperboy LOL",
+ "What that gyatt do @name",
+ "He's got the zoomies!",
+ "@name likes pickles and dipped in mayo",
+ "Lmaaooooooo",
+ "Bruh she said she loved me...",
+ "I caught @name rizzing a mewing teacher",
+ "What that mouth do bb",
+ "Ayo tf he say",
+ "Ayo",
+ "Ayo @name a freak lowkey",
+ "Ayo tf",
+ "@name catch me outside howbout that",
+ "Wasssssuuuuppppppp",
+ "Knock knock @name",
+ "Oh boy howdy do i have a surprise for you",
+ "Noooooo",
+ "What do you mean I haven't done anything wtf",
+ "Redrocket redrocket!!!",
+ "I made 20,000 crochet sock puppets for ceikry",
+ "Come on @name",
+ "Are we rading tonight @name?",
+ "Why would he say that",
+ "Penguins are technically reptiles",
+ "Brb smell something burning",
+ "Need pest control partner, you handle the portals, i will afk",
+ "Bruhhhh the skibiddi rizz in my gyatt makes my mewing sesh rough",
+ "@name jajajajaja",
+ "Wait, I can't raid tonight @name",
+ "Brb, pizza's here. Hope they ask why I'm a grown man dressed like an elf",
+ "Sorry, gotta go AFK. My dog just ate my gaming headset.",
+ "Brb, my grandma just fell down the stairs",
+ "Hold on, the baby's crying, aka @name",
+ "Oops, spilled my drink",
+ "Guys, I need to log off, my plants are staging a revolt for not watering them",
+ "AFK a sec, my neighbor's llama is in my backyard again",
+ "My pizza rolls are ready",
+ "Lost track of time, i'm late for my own wedding",
+ "Sorry, can't hear you over the sound of my laundry",
+ "Turn HDR off in windows @name",
+ "Www. no one cares .com",
+ "Hey @name www dot stfu dot com",
+ "Like pitching a tent in a pair of britches",
+ "Mad as a bag of ferrets",
+ "I dont think beavers built the hoover dam",
+ "How do beavers get the concrete for dams?",
+ "@name show me the way",
+ "@name onwards brutha",
+ "@name eats fried rat tails",
+ "@name is a rat",
+ "Why are there so many people farming right now",
+ "@name fuck the police",
+ "@name says the like pickles on their hotdogs",
+ "Fuck the guards, free woah in varrock prison",
+ "Ayo fuck u mean",
+ "Woop woop thats da sound of the beast",
+ "How are you the way that you are",
+ "She sells seashells by the sea shore",
+ "@name certified rat",
+ "@name buys skimmed milk",
+ "Got milk?",
+ "Are you JSON because i want you to get array from me",
+ "@name likes string manipulation",
+ "@name sells legos",
+ "JUST DO IT",
+ "Why are there so many motherfucking options",
+ "Just hit the fucking auto hide thing",
+ "Just play",
+ "Hell no this shit is fuzzy as balls",
+ "@name is fuzzy as balls",
+ "Turn your brightness up @name",
+ "On my pc it runs perfectly",
+ "I know why mine seems a little jumpy",
+ "Stream the window not the monitor",
+ "Discords a bitch",
+ "Why are there so many handsome people at the ge like @name",
+ "I'll make you squeel of fortune",
+ "You will get it in due time @name",
+ "I was one turn away",
+ "It do be pipe time @name",
+ "Sometimes i like to cover myself in vaseline and pretend i'm a slug",
+ "Woah is a greased pig",
+ "Sometimes i dig holes in my backyard and pretend i'm a carrot",
+ "It's pipe time @name",
+ "If i am not pipe timing i am programming",
+ "Yes i have thigh high socks, no you cannot have them",
+ "I scream when i wear my programming socks",
+ "Anyone wanna buy @name's bathwater?",
+ "Anyone wanna buy my used socks?",
+ "@name be getting bags",
+ "What the fuck is this",
+ "Hi i noticed you haven't taken a break in hours @name",
+ "I really am seething rn",
+ "I am so fucking tilted",
+ "Go back to your fucking frogs",
+ "Life is simple as frog farmer",
+ "A q p",
+ "Oooooh that's a first",
+ "Been a minute @name",
+ "Hey @name",
+ "Oh shit it's @name",
+ "Hey @name wyd today?",
+ "Ayo @name",
+ "Wyd @name",
+ "Wbu @name?",
+ "Good fuck em, that's what they get",
+ "Deathknight lookin rat ass mf @name",
+ "@name sucks slugs",
+ "Brb gotta take a shit",
+ "@name will brb went to take a shit",
+ "Tell me when he is coming",
+ "This guy is being incredibly based",
+ "@name is based af",
+ "Taking l's all day today @name",
+ "That sucks massive dongus",
+ "Ah i was about to type that",
+ "Where is stormwind?",
+ "How do i buy gold",
+ "@name sells gold",
+ "@name is a gold digger",
+ "Ayo @name wanna buy some frog legs?",
+ "Brb fucking burnt my pizza rolls",
+ "I swear @name if you need roll again",
+ "@name you are a hunter you don't need plate armor",
+ "Dragonriding is satisfying",
+ "There's an old TzHarrian saying, you fuck up once, you lose two teeth",
+ "FUCK",
+ "@name i am ready when you are",
+ "Anyone selling logs?",
+ "That is hilarious @name",
+ "Alright @name",
+ "I need to go get my quest cape",
+ "500 barrows runs dry",
+ "Back to back to back barrows items, easy game",
+ "@name did you know them?",
+ "@name sucks eggs",
+ "@name eats snails",
+ "Who is that?",
+ "I've gotta go in 20 minutes",
+ "Bonk",
+ "Gtg in 30 minutes",
+ "They left 50 minutes ago",
+ "I think it's just gonna be us",
+ "Who is that?",
+ "Stop following me",
+ "@name stop following me",
+ "I think @name is watching me",
+ "@name wouldn't let me get a hit in at clan wars",
+ "Clan wars and chill?",
+ "Quick mewing sesh",
+ "Don't you stickbug me",
+ "Get stick bugged",
+ "Wtf why are you a dragon",
+ "Fun fact, woah eats eggs whole like a snake",
+ "Ceikys there's a rare over there",
+ "Where is goldshire?",
+ "How long have you played @name?",
+ "Wanna quest?",
+ "TROGDORRRRRR",
+ "Fuck this shit i'm out",
+ "Wait till you get your first 99",
+ "How is that even possible",
+ "That's the max",
+ "@name is trying to max",
+ "Complesionist cape?",
+ "How can you increase your run speed?",
+ "@name where is barrows?",
+ "@name where are rune rocks?",
+ "@name where is yanille?",
+ "@name how long have you played for?",
+ "Yes these quotes were hand typed",
+ "Kermit was here",
+ "World of Warcraft died after Wrath",
+ "Ceikry needs to add talent trees",
+ "How do you get to the wilderness?",
+ "Anyone tryna lure @name?",
+ "@name tried to lure me",
+ "@name bots all the time",
+ "Anyone want chicken tendies",
+ "Brb foods ready",
+ "Brb",
+ "Gotta go get food",
+ "Anyone else from northern alaska?",
+ "Fishing 4 gp",
+ "Looking for gf",
+ "Anyone wanna be my discord kitten?",
+ "Selling discord kittens",
+ "@name is a discord kitten",
+ "Add me on discord",
+ "Are you in the 09discord",
+ "Where are you going @name?",
+ "Idk what i am going to cook today",
+ "What should i eat tonight",
+ "He is in the cave",
+ "Don't forget to save game before logging out",
+ "American horror story died after season 1",
+ "Prequels are better than the sequels",
+ "Disney star wars is the best star wars",
+ "Halo 5 sucked",
+ "Selling xbox live gold and 1600 microsoft points for 50k gp",
+ "Buying gf 25gp and a bucket",
+ "@name i heard evilwaffles bots",
+ "@name hopefully ceikry doesn't find out about evilwaffles",
+ "Honk honk",
+ "Where is the road to mordor?",
+ "Golem lookin ass bitch",
+ "@name rat looking mf",
+ "@name uses sand paper to wipe",
+ "@name said Woah is cute",
+ "You need 25 of 40 to do that",
+ "Over 1000 unique lines of dialogue",
+ "What should i get to eat",
+ "Ge be poppin today",
+ "Where all the woahs at",
+ "Ayo woahscam got that gyatt",
+ "That is one i haven't seen before"
],
"halloween": [
"Trick or treat!!!",
@@ -523,9 +1008,9 @@
"Costume party at my P O H!! Follow me!",
"Trick, then!",
"Brrrainssssssss...",
- "'Cause this is thriller, thriller night, and no one's gonna save you from the beast about to strike!",
- "This is Hallowe'en, this is Hallowe'en, pumpkins scream in the dead of night!",
- "This is Hallowe'en, everybody make a scene, Trick or treat till the neighbors gonna die of fright!",
+ "'Cause this is thriller, thriller night!",
+ "This is Hallowe'en, this is Hallowe'en!",
+ "This is Hallowe'en, everybody make a scene!",
"In this town we call home, everyone hail to the pumpkin song!",
"Watch out for Skeleton Jack!",
"The headless-what-man? Horse? Never heard of those.",
@@ -596,7 +1081,7 @@
"Rusty = the grinch, @name = santa",
"@name the red nose reindeer",
"Put one foot in front of the other",
- "and soon you will be walking out the doooor",
+ "And soon you will be walking out the doooor",
"Elf on the shelf time",
"@name loves pinecones",
"I love the smell of pinecones",
@@ -695,21 +1180,21 @@
"Woah got those roofies strapped",
"Why is my drink cloudy?",
"@name and woah be wrestlin",
- "bekky want sum fuk?",
+ "Bekky want sum fuk?",
"Damn @name you got an ass",
"Is that a footlong in your pants or are you happy to see me?",
"@name so hot i gotta change my pants",
"@name is a sex god",
- "bruh we hype today",
- "dont be silly wrap the willy @name!",
- "wrap it before you smack it @name",
- "can i get a reeeeee @name?",
- "valentines day is the best day",
+ "Bruh we hype today",
+ "Dont be silly wrap the willy @name!",
+ "Wrap it before you smack it @name",
+ "Can i get a reeeeee @name?",
+ "Valentines day is the best day",
"@name shut up before i smack you with my crusty sock",
"Valentines day, more like me and my hand day smh",
"If you think these quotes are wild just wait @name",
"All im saying is we have never seen @name and biden in the same room",
- "red rocket, red rocket!",
+ "Red rocket, red rocket!",
"Woahs favourite game is red rocket",
"@name sexy af today",
"Happy Valentines day @name!!!",
@@ -754,4 +1239,4 @@
"@name and i are going to look for the easter bunny!!",
"Hint for anyone who sees this you must dig above eagles peak"
]
-}
\ No newline at end of file
+}
diff --git a/Server/data/botdata/botnames.txt b/Server/data/botdata/botnames.txt
index 8a2e6603f..22c5715a8 100644
--- a/Server/data/botdata/botnames.txt
+++ b/Server/data/botdata/botnames.txt
@@ -1,780 +1,1992 @@
+-Kevo
+0 S O
+0 4 1 1
+0 4 7
+0 HBK 0
+0 Khan 0
+0 LM
+0 Quest Ptz
+0 Undead 532
+0 hits
+0 s m a n
+0-0000000000
+00 zarour 00
+000eggs
+004 n
+007 Double O
+007Banshee
+00eeeee58
+00eeeeeHC
+00oo00oo00z
+010elpibexx0
014ankh
01690
+017Lucas
01Ares
+01eon
+01ogre
020893
024elyograG
+02RS
+02homestar
+031
+0315
0416347345
+054
+055027584
+05miller5
05venom04
+06 59
0600
-07Ash
+06sz
+07 Account
+07 Adept
+07 Ashley
+07 Clinton
+07 Ezra
+07 Gizzy
+07 Main
+07 Nihilist
+07 Officer
+07 Rz
+07 Sicario
+07 T Bone
+07 iron
+07 kiero X
+07 nice jake
+070623
07Ashley
-07Ato07
-07Chris
-07Dans
+07Ben
+07Geno
+07Jack
+07Lax
+07Panda
07Paul
-07Skillerino
-07TroyScape
-07milo456
-07scaping
+07RS Suck
+07Rockysbudy
+07coco
+07guthix07
07wan
+080
0800
+0800952449
0837
+09
0920
+09Ash
+09Ashley
+09Ato09
+09Chris
+09Dans
+09Paul
+09Reaper
+09Rhys
+09Rvape
+09Skillerino
+09TroyScape
+09milo456
+09scaping
+09wan
0BAMA
+0Behind0You0
0CdanC0
+0G
0GCore
0Giesel42O
+0IIll0llIIII
+0JL
0Joker0
+0KAT
0LKI
-0SRS
+0MEGA PVM
+0MG ST3PSIS
+0MW2PVM
+0Manbearpig0
+0MrJ
+0PC
+0Pwnseason
+0S Iluvatar
+0SFX
0Tempest0
+0WEK
0X010
+0_BADASS_0
0anabanthis0
0bD0G
0bankspace
0bby
+0bby Man
0belix
+0bscure0ne
+0ctopus
+0dds r u win
+0desza
0dexy
0dyssey
+0ff Task
0ffline
0g_player
+0gden
0ggyy
+0gie
+0h Hi Mark
+0h4Sure
+0hh
0hmMyGod
+0hp
+0im2old4this
0inke
+0k
+0l
+0l m
+0ld Mate
+0leaguespace
+0li
0livers
0livias
+0lki
+0llieNorth
+0llies
+0lmet
+0lofmeister
0lurker0
0mfgcows
+0mg A Baboon
+0mg A Scimmy
0miseGo
0mnisciens
+0n Time
0nMyWay2Max
+0na
+0nenonen
0neski
0netruememe
0niichan
0njon
+0nlyClouds
+0nmy
0ops
0oqs
0pSe
0pen
+0pen Al
+0pi ates
0pportunity
0riole
0rjan
+0rl
+0rnstein
0rphaned
0samaBdabbin
+0sc4r
0smasher0
-0srs
+0so
0ssimpwner
+0syb
+0t
0taku
+0taylor
+0verHyped
0verdrinking
0verhaul
+0vershield
0viBeSo
0vyy
+0wnag3s
+0wnage_2017
0wnagedaddy
0wned
0wns
+0wnu1h1t
+0x Good x0
+0x05
+0xBitcoin
0xocube
+0xp Fail
0xygen
+1
+1 0 1 0
+1 1 4
+1 2 2
+1 337
+1 3s
+1 4 11
+1 54
+1 9 7
+1 A M O R
+1 A N D 1
+1 Account
+1 Corin 6 9
+1 DC
+1 Flicki Boi
+1 Free Ryde
+1 Ham
+1 K0 Is Back
+1 Line
+1 Lion Tell
+1 P P 1
+1 Percent
+1 Waffle
+1 and only
+1 is ln of e
+1 kc 1 pet
+1 parhaista
+1 s t Blood
+1-800DILLDOE
+1-GrayStone
+10 Four
+100 Duke
1000 Antz
+1000 Eyes
+1000 Ways
10000Fists
1000PingOnly
100Cl
100Grabb
100g
100kyews
+100m gp
100xcoin
+101000101010
+1017Trev
101e
101evil101
+101rootbeer
+104512
+105
107M
1085
1099s
+10Hz
+10R80
+10b
+10cc
+10lachs
+10mm mafia
+10th Reaper
10v10
10v10v
+10v10v10v
+10x Brew
+1101953119
+1111
+11111111111d
111fishkite1
+112OceanAve
+116
+116 123
1183kenny
+118s
11inchlimp
11l1
+12
+12 49
+12 XP
+12 hours
120u
1212ajs2
+123 Zeus
+123456205
+123Four
123bear5
+123tseemijni
1272172
+1288
12bar
12bar_ty
+12blackeagle
12boo8
12earlycob
+12in
+12millionGP
+12oss
12oz
12th
+13 37
+13 Daas
1300
130SS
130rk
1312AFCA
+1313
+131kg
+1337 af
+1337Trevor
1350
138hans
+13D
13LACK0N3
+13O
13alerion
+13ayek
+13ehh
13ert1
13ig
13igdog
+13kc Corp
+13oneZ
13purecs
+13ruce
+13th Witness
+14 wides
1400
+14060M
+144
1441
+144forever
+1453 FSM
149122089147
+14Fre-e
+14GT
14Words
+15 min Break
+150 kilos
1520sedgwick
+15b name
+15mg
+16 Fly Tell
+16 Fps
1602
+16bumpysnow
16lB
16le
+17 76
+170 IQ
17222
+1780
17Kc
17_FLHXS
+17rune2277
+18 Or Older
+18 Points
+18 girlll
+18-06-2022 x
1800BetsOff
1802M
180555
+181
1817
1827
1845
184910381412
+187
+187 781
1877
187PIGMORGUE
187er
+1889
18cast1935
18hr
18killz
+18s
+19 KAPLAN 05
19088ml
1942
1948
+199
1992
1994
19O7
+19edgebee
+19puxx
+1AB
+1After909
1Alfa
1Ali1Plane
1BGP
1Bio
1Buck1Love
+1C2R
+1C3 W4RR10R
1CuteBot
1Fbs
+1G1D
+1GramIronMan
1Hit2Lum
1Hunnid
+1I1I1IIll1l
+1InchWalrus
+1Iron Reborn
1Kyle
+1Lank
1ManGangBang
+1Mayze
+1NANO
+1NU
1Nikolai
+1Nut Dude
+1O1Barz
+1Ogp
+1P Game
+1Parthannax2
+1RlE
+1ST KC
+1Shadow9Fist
1Shark
+1Stunner ISU
+1Swan
1TapDirtNap
1Tick
+1Tick 2 Slow
1TickShit
+1Unforgiven8
+1_BLEED_BLUE
+1ars
1badprogram
+1bankingnoob
1blackhawk17
+1blk eye r2
1cooking
1da5
+1dan2
1day
+1day iwas pk
1eat
1einad
+1eyeNinja
+1god max1
1grootfeest
1hundrednite
+1imp1jar
1isa
+1itemtbow
1jbone
1john
+1k no zik
+1kDuramax
+1kMaster QXD
1k_0
+1kc myself
1kctobpet
1kill3dsanta
1kk3
+1kkc
1kona
1llmatic
+1llusionss
+1mforest
+1nOnlyBigB
1nVaSioN
+1ndy
+1ne life
1nfiniti
1nsane str5
1nv1s
+1nvercargill
+1o 8
+1ocation
+1please
1powerhydra
+1r0nRyan
1rock23
1savage
+1st Frans
+1st ed mint
+1st son
1stHCwasPKED
1stlrfan
1stnoob7
+1t8w
1tapaturma
1tickspecwep
1trueMortyy
+1ucif3ro
+1v1d a sedan
1w1lll0se
1wayEscape
+1wwdwd2e21ed
1yfe
+1zet
+2 0 1 4
+2 1Savage
+2 2 7 7
+2 2 8 9
+2 3 7 5
+2 9
+2 Big tities
+2 Brothers
+2 Much Tuna
+2 P A C
+2 Rich 4 Dis
+2 Silent 540
+2 Smooth
+2 ball cane
+2 funny bro
+2 grls 1 Jad
2 h p
+2 in
+2 kups
+2 lN
+2 more min
+20 20 vision
+20 Agi irl
+20 On Pump 3
+200
+200 Cook
2000
+2001Arwen
2006nope
-2007Anthony
+2007scape
+2008Anthony
+2009Anthony
+200MXP Cook
+200m for Olm
+200mDefence
+200marchalt
200mslay1day
2011Turmoil
+2013 Rt
+20130406655
+20136
+2027Parzival
+202o2
+204 Wootang
+205alphago
+208
209th
20Four
20I0
20JuanSavag3
+20ms
+21 5
+21 Average
+21 Musketeer
+21 Savage
+2137 gp
+215O
+2173
+21JJ
21SavageX2C
+21unit
+22 69
+22 Geese
+22 Gz
+22 darnoc 22
+22 day fury
220mg
+226559
+227 7
2277
+2277 Beast
+2277 Soon TM
+2277MaybeNvr
+2277kg
+22O5
+22X7
22btc
22harry
+22mario
22whitewolf
+23 x 3
232o2oo
+234071973416
+23463564
+235iii6i666i
+2376Total
+2376ed
23847239571
23CD
+23I
+23coalcare
+24 Hour
24000
+241
241196
+2424
+245
+247 365
+2488
24YO
24l7
+24w
+25 S
25simulator
+26 th
260sheepdog
+265344626546
+26ll98
26pandas
26th
+27 5
+27 M
+271MPN
27ml
2841280
28BagsOfSalt
28goldpieces
290x
+29384652
2996
+29Pons30
29enchant821
29robdead
+2B Nier
+2Broke4Coke
+2C-T-2
+2D E F2
+2D pantsut
2Edgy4Meme
2Far
2Fast2Fuego
2GIRLS
+2GLE
2Girls
+2Goblins1Jug
2Guys1Wyvern
2Guys1dds
2I40
+2InchLift
2InchPnisher
+2JZ GTE
+2JZ Soup
+2JZ-GTE Mk4
+2Jerry
2Lit
2M0X1
2MIN
2Men
2MinNoodles
+2O xp
+2O07
2OO7
+2QC
+2Rare2Die
2Secs
2Sparks
2TH3MAX
+2Tbows51Kc
2Tits
+2TonHoneyBun
+2VX
+2amtossedher
2anmlsglued
2beFrank
+2buttedgoat
2cbrein
2coldkillaa
2cool4u
+2cythe
+2d irl
2danny1
2dslap
+2fastkilzz
2g0ds1cup
2girls1Kyle
+2girls1Tbow
2girls1bed
2girls1troll
2girlz1jbird
2gurls1tick
+2h ur azzzzz
2hopp
-2jz420
+2hot2touch
+2hot2touch2
+2hs
+2id
2kav
+2late2team
+2logx
+2nd Marksman
+2nd Max Cape
+2nd Sucks
2ndpanz
2olon
2oul
2pac
2pacs
+2plush
+2sm0keyyyyyy
+2steps
2th7
2tickin
2tti
2two77
+2uBz
2ual
2ugi
2woke
2x92is99
+2ze
2zick1zussy
+3 Hit V
+3 5 P
+3 50
+3 77
+3 Moons
+3 S I X E S
+3 SwordStyle
+3 T C
+3 arcanes ty
+3 me0
3-age
+30 yo b00mer
+300m MPS
+3019
30FF
30SHOTFOCUS
+30XY
+30thNovember
30zl
+311s
+3155
+315lbs
315squatreps
+3160
316Austin
+32 kay
320m
+33 Dust Cat
335K
+33jf
33zero2
+3400
341all
+34241245321
345138
+34HL6432G6L2
+34T
34rj394thgro
351329
+35ankoumoon
+35cm bicep
+360 Labels
+360backhand
+365 day
+369x
+36ACT
36answersay
+379
37Kg
+37kg
+381N
38CoolestMan
38drivelift
+39 PETS
3BigDoobie
+3D AnimeTits
+3D Dorito
+3E8
+3G
3III
3L1QZaD
+3LetterName
3Miller3
3TicYaMum
+3TickEat
3Ticks
-3aboobs
+3WordName
+3a B0ng
3aly
3amf
+3arbeed
+3ash
3awe
+3b
3bay
3bobyshmurda
+3d age boots
+3d354
3dderino
3erzerk
+3h scimitar
3ibal0e9
3inchsoft
+3ioc
3iron5u
+3km
+3lPatron
+3lack 3litz
3lilbirbs
3lit3
3liteSupreme
3lven
+3lyrie
3lys
+3niZ
3nosedmonkey
3nps
3oh5
3pic
3ragesave
+3rd Age Ryan
+3rd Age THC
+3rd Age Toes
+3rd Age Wife
+3rd Hunter
+3rd Mage Owl
+3rd X
+3rdAgeHolds
+3rdAgeHunt
3rdAgeSlayer
+3rdMistake
+3sd
+3sl
3stripe
+3uck
+3uzi
+3verD3ad
3vil
+3vil Giraffe
+3vil Lawyer
+3we
3x3i
3xDestroyer
+3xtra-1arge
3yes
+3zR
+3zi
+4 Bros Info
+4 Man Nex
+4 inch demon
+4 inches now
+40 IQ
+400L
+400s
+403 b
+40699 Crabs
40Atk
40ms
40oz
+412087542131
+413 JokeR
+416MiIf Jade
+41O
+42 Mime 2462
+42 Reasons
+42 skankhunt
+420 Perkele
+420 Sam
+420 kc
+420 lobster
+420-2-Day
420Arch420
420Every
+420Hellz
420LavarBall
-420kushmanxx
+420Pixels
+420cyguy
+420licious
420michael13
420tarmslyng
+42342343342
+42Def
42O42O
42nd
+432andone
43technetium
+44 bot
+4400
+44444444444
+45 fail
+4500c
+4564
+457
45smith2345
478k
+47an
47th
+48H
+48hour
+49 r
+492117837813
+49forcerage
+4ALLYaYa03
4D Entity
4EverAlone
+4HeadScape
4Hymnz
+4IQ Idiot
+4K MrKrabs
+4KT Youngboy
4Kath
+4L O K O
+4LDO
4LeafCIover
+4Lt Goon Bag
4MoistScoops
+4Nick8
+4STER
4Sale399
+4TheGalaxy
4The_Horde
4Tune
+4V2Coldplay
+4_Th3_mAiN
+4are
4asphalt4
4biddin3
4cof
4dan2
+4dapigs
4dosemonster
4ever
4everdry
+4got2pull0ut
4gottenvoid
+4hQ
+4hit pl0x
4holyhydra
+4iend
4lex4nder
+4litraa
4mag1996
4otobemaG
+4pf PvM Lao
+4pf danaw1te
4plate
+4rKsTon3
+4sen
+4th lesson
+4th8
4the
4themininoob
4thunderbolt
+4ur Elise
+4werty4
+5 56
+5 Nine
+5 Oh
+5 mil
+5 ms
+5-Bet Fold
+50 DKP Minus
+500 BJ
+5000men4
+505
+50Dkp_Minus
+50TintenUwMa
50bitsnka
+510
51Highlander
51xp
+528racklover
+5304
+530pm
+53R10U5
53m0g
+54 Slayer
+548
55mg
+562
5639
56667
56771910
+56O
570215
+5771
+57tallfred
+57wraith2076
+5876
58th
59OG
+5ADx
5Aces
+5BY5
+5G fries
5GCovidTower
5H4NKS
+5IRLOIN
+5Id3Track
+5M3H
5M9SNH31KAOI
+5NAX
+5OP
5Orudis5
5UBLlME
+5a9
5alood
+5alve
5ammito
+5dudes1bank
+5eekingdeath
+5eizures
+5g Internet
5gum
5harp5hoota
5hauny
5hayWh1te
+5head
+5inch Floppy
+5is
+5j5
+5kc Zulrah
+5l9
5lNS
+5lap
+5nis
5parrow
5quid
+5st
+5t h
+5th Blessing
+5th hcim LUL
5trm
+5wan
5wattia
+5x3
5xr2
+6 57
+6 9buttholes
+6 Donuts
+6 Drive Fox
+6 Foot 5
+6 I X GOD
+6 M
+6 Mil
+6 Qp
+600 Years
+605
+60min is 1hr
+617
+61V
+6264
+629fm
62steeplist
+6384
+647
+64DD
+64th
6535
6620
+666 317
+666 J
+666 is leet
+666Ds
666Duuvel666
+666drkwizard
+66Cute
+66sick
+675
+67M
67jj6j7
-6969
-6999999
-69AssClown96
+68 savage
+6822ii
+68pickleman
+69 L OR D 69
+6942O
69KolaOlli73
-69endme69
-69penis
-69snowgasm69
+69Skrrt420
+69bbygurl
+69maryj420
6Dukke
+6ESkarmory
6LACKY
6PaperJoint
+6R6
6T9sofine
6TMG
+6Tilbud
6UGG
6cansOfBeer
+6cythe
6dr3w9
+6e
+6enny
+6ess
+6et Schwifty
+6h Logout
+6in9
+6ix
6ixty
6ixx
6jadkiller
+6km
+6lb brownie
6mat
6ong
6p8o6
6pathsofpein
+6qp
+6shooter
+6uapo
+6uh
6utt9lug
6y6y6y2
+7 7 MAFIA
+7 Curry
+7 DeadlySins
+7 Fat Drake
+7 Of Nine
7 Trouts
+7 pets chimp
+7 seconds
7042
+70Point1 lol
70rangeboy
70to120
+710 710 710
+716
718m
71rc
+72005sc
+73 and Kree
734590325839
+737
73Head
73HoundKey
-73Penis
+73gp
742617OOOO27
74ChaosLTUU
+75 IQ
76frozen44
+76ms
+7738
777slayer777
77Dunamis77
77Stingray
+77ms
+782
+784162
79giantfoot
7AYL0R
+7D9
7Esconar7
7Ethereal
+7F9
+7GB
7God
+7H3
7J4FXEL7YFW5
7Lazy7
+7RAC
+7T
+7TF
+7Vick
7Viggie
+7ZP
7abibi
7amowdahli
+7aq
7asty
7ate9
+7axy
7bazillion
7ckng
+7ckng Mad
7claudia7
+7crypto7
7emo
7emp
7emptest
7fisherdog
+7havage
7min
7mins
+7mni
+7om
7ourney
+7out
7rad3
+7raphouse
+7rev
7ridley
7scaryfire
+7th Chamber
7th February
+7uP joAo
7wizard10
7xshadowx7
+8 1 O
+8 3B
+8 Sue Build
+8 alien 8
+8 bit bling
+8 oh 8
8008tator
808Southside
80leavefox
+82 Sue Say
8282
+831pride
832arba
+8485
+849
+84Bandit
+85 N
8502
+852K
+858
+85U
85dakota85
+88 Odd Wand
+8800
8885
+88gg
89devoid1329
+8ASS
+8BootRaw6220
8ElMandinga8
+8J8
8O8O8O8O8O8O
8ass
8balknowsall
+8balled
+8eauty
+8h of sleep
8ind
8l0wm3
8lackMamba24
+8loodrune
+8lue Phat
+8owser
+8qxkf02v
+8tail
+8uD
+8yrs
+9 9 Problems
+9 B 0
+9 DUIS
+9 Tick Brain
+9 mb
+900mexp
+901Grizzlies
+90804
+9092514
90tegguy
+91
+91 Tin Idea
+911_Nate
91414
91CAL
91flip
+92 way there
+920 Bdops
+9227
+9297
+92t
92times2is99
+94 xp
+94AR BTW
95EliasAw
+95LH
+95p7
+96 WINDSTAR
9687
96fastfrog
97DEF
+97ccman97
97fsh
+98 BEDARD
+98 Civic
+982
+98Bn
98max1
+99 Doobies
+99 Grill
+99 Grinding
+99 Mage
+99 Rats
+99 StaKe LvL
+99 Steeze
+99 oz
+99 rwt
+991atatime
+9991499
99BnkStnding
99Juuling
+99Lives
99S2HP
+99Scents
+99Scotting
99Slayer
+99Souls3Days
99Victim
+99_Maxed
99bottin
+99charming
99hh
+99moretimes
+99ox
99problems4
+99ss
+99sweatlvl
99wc500m
+9Bar
+9Barr
+9CX
9D9Skillzz
9Dimensional
+9GAG Reflex
+9JR
9KL00AZIIZ9K
+9O 9
+9PetsSoFar
+9T3
+9TY9_Sailing
+9UNIT
+9cansRavioli
+9ieman
9inchStepBro
+9mm ko
+9mmlesah
+9ne
+9ond
+9till5slave
9ussy
9yearoldpops
+A 2 The Aron
+A 3
+A 45
+A 7 F O L D
+A Articuno
+A Bad IGN
+A Bad Meme
+A Big Hippo
+A Big Leap
+A Blind Man
+A Booty Clap
+A Born King
+A Boss
+A Bozo
+A Bozz
+A Bronze man
+A Butcher
+A Catowl
+A Cityzen
+A Claptrap
+A Classy Boy
+A Crazy Cook
+A Crisp Sock
+A Curry
+A Cute Snail
+A Dreamer
+A Drunk Beer
+A Du Ma
+A F K Scape
+A F KING
+A F M Scape
+A Fat Deer
+A Fat Pike
+A Fat Swede
+A Gauss
+A Girthy Boi
+A Godsword
+A H Fire
+A Half Fool
+A Hofasho
+A I D E N
+A I I e n
+A II D
+A Iron Yoshi
+A J
+A JJug
+A Jack O Lit
+A Jug
+A Kimura
+A L 3 X
+A L C A P WN
+A L E K S
+A L I S H A
+A L T
A Lava Lamp
+A LifeTime
+A Lilypad
+A Little Lit
+A Llama
+A Long Story
+A Loose Seal
+A Mattias
+A Maxed Iron
+A MaxedBeard
A MeatStick
+A Melic Poet
+A Message
+A Moist One
+A Moot
+A Nathan
+A New Area
+A Newbi
+A P R O X
+A Panther
+A Pauled
+A Pixxel
+A Pkr
+A Plush
+A Poothy
+A Pot Head
+A Psy
+A Quest God
+A Quickie
+A R H
+A R Z
+A Raccoon
+A Random 4nr
+A Real Bamf
+A Revuelto
+A Rocky Road
+A Scylla
+A Sly Deity
+A Snorelax
+A Sofa
+A Soft Spoon
+A Solo Slave
+A Soul Rune
+A SpaceFox
+A Spaceman
+A TRX
+A Tonk
+A Towel
+A Tuxedo Guy
+A U G
+A V T U R
A WILDR0NNY
+A White Girl
+A Wiki
+A Wild Nolan
+A Wise Sloth
+A X Y S
+A Yang
+A Yep
+A Zee
+A Zeer
+A Zoo Keeper
+A Zuk
+A Zuzakini
+A aron
+A bit north
+A broke 126
+A capybara
+A cclimation
+A d e b y
+A dam
+A damm
+A dammmm
+A e d o
+A e s i r
+A f r a i d
+A gg
+A lba
+A ll F
+A llan
+A llstar
+A ltar
+A m a nd a
+A n d re
+A nz
+A rdy
+A rmin
+A rmoa
+A rrow
+A stoner guy
+A to teh Jay
+A ug
+A y s a
+A z k e n
+A z t e r
+A-Chronic
+A-F-Kaveman
+A123
A13X
+A15
A1KMAN
A1nz00alGown
A1rhook
+A2
A22Y
+A47 Soldier
+A543
A7MED
+A84
+AAA GG
AAAAAFK
+AAAAAddy
AAIGHT
+AAsamba
+AB Dash
+AB84
ABEC
+ABG Huntr
ABILITEETTI
+ABearCat
ABlazys97
ABlueShirt
+AC Dicing
+AC TEMP IQ
+AC0T
+ACDC
+ACatGirl uwu
+AColdBeer
AComp
ACucumber
ADACardano
+ADAMB73
+ADHDerral
+ADRlAN
+AD_inc
ADankTank
+ADirtyDan
ADrugTaker
+AE2AW
AEKDB
AER0B
+AER1410
AFCA
+AFCA CBS
+AFCA SCHOREM
+AFGard
AFJay
+AFK Always
+AFK Kay
+AFK Liam
+AFK SCO
+AFK Spoon
+AFK twigz
+AFKJOHN
+AFKaas
+AFKarl
+AFKevv
AFKolby
+AFKspiracy
AFTW
+AFX64
AFrickinLion
+AGIT8
AGP3
AGRONOMlST
+AGSpec
+AGWA
AGlassOfH2O
AGorski
AH Energy
+AH64 Apache
AHHSCHMEEEEE
+AHK XD
AHMETJACKSON
AHarmlesKitn
AHlager
AHriMTaLeZ
+AI Fighter
+AI0
+AII 99
+AIchemyz
+AIecko
+AIeksib
AIexmeister
AIixs
+AIlByMyself
+AIm23ARDesti
+AIways sm1le
+AJ R
+AJ Skills
+AJ4J
AJTracey
AJ_24
+AJisHere93
AJsk
+AK Alpha
+AK Sam
AK47
+AK4LF
AK5C
AKI-47
AKK1E
+AKM
+AKSpring
AKinkyMonkey
+AL-Trojans
+AL3CX
+AL7
+ALBlNO
ALEXppresso
ALLCAPS
+ALLEGATlONS
ALLTY4
ALSO
+ALT Lurer
ALargeMudkip
ALevel115
+ALevel126
+ALittleLofty
ALittleLogan
ALonelyKurt
ALonelySpoon
ALonelyTaco
ALv3Magikarp
AMAWM
+AMC Millions
+AMD352
+AMDOSRSIRON2
AMGS65
AMRSY
AMST
+AN07HER
AN0NYM0OOOUS
AN1MAL1ST1SK
ANDERDAPLUG
+ANDR3
+ANDREVVTATE
+ANDROlD 18
+ANGL0 SAX0N
+ANGRY BL0KE
+ANGRY N3RD
ANIKV
ANNA7AR
ANNOYYEED
ANON
+ANRH
ANUBlS
+AOMA Doomfox
+AOT GOAT
+APC L000000L
+APTZ27
+APrince
AQ COCUGU
AQMD
+AQUAMARROCKZ
+AR Brah
+AR Fifteen
AR15ONA
AR1F
+AR53
+ARCANO RS
ARCHER
ARCHIT3CTS
ARESCREED23
ARNGCantrell
ARRIVISTEZ
ARRRot
+ARTHURSHLBY
ARTIZN
+ARZ Ranger
ARandyCat
ASAP
+ASAP Decky
ASDQ
ASH88
+ASIAN CHAD
+ASIANBABIE
ASMR
-ASSEATHER69
AScrubIsHere
+ASkillersAlt
ASpacejunky
ASuperDood
ASuperior
+AT-AT
ATAR96
+ATEIROMU
ATLx
+ATR
ATastyPastry
+ATurboVirgin
AU6URY
+AUD1O
AURl
AUSLANDER
AUSTlN
+AUTOart
AUTUMNELEGY
+AUT_Alex
+AUT_KoDeD
+AV1
AVATARRR
+AVE MARlA
AVICll
AVOCAD0O00OO
AVlCII
+AWW CRIKEY
+AX0L0TL
+AXL gun ROSE
+AYRI DMM
AZER
AZNPanda
+A_G_4
A_Wuh
AaaBiiCee
Aaalmost
Aadalyn
+AadreNaline
+Aahatto
+AakieSnaakie
+Aaking
AangTurambar
AardbeiSoep
+Aardwormpie
Aaren
Aargh
Aarhus
+Aarmir
Aaro236
Aaron
+Aaron 23
+Aaron Btw
+Aaron Quiz
+Aaron Samuel
Aaron11700
AaronJMLP
AaronPVM
Aarsworm
+Aarti
Aary
Aaryn
+AashUnce
+Aastradsen
+AatroxLife
+Aauburn
+AavikonGaara
Aayraz
+AbInito
+Abaay
Abacraumbii
+Abaiz
Abaker
Abaqus
+Abariel
+Abbas Elect
Abbey
+Abbey Ruins
+Abbo baker
+Abbyscimmy
+Abc easy as
+Abdallah6
Abdirahman
+Abe lnnkon
+Abe numse
AbeTheHobo
+Abengers
Abernasty
AbiChillii
Abide
+Abido
+Abigayyl
Abismaalinen
Abito
Abiuro
Ablazin
Abnegation
+Abnxy
Abocrate
Abolish
+Abolish NFA
Abool
+Aboriginal
+Aborts
Abortuary
+Aboss
Abou3Fiddy
Abov
Above
AboveAvgGoat
AboveHonor
+Abpor
Abr19
+Abradolf
+Abrafebre
+Abrakadaddy
Abrakadino19
Abree107
Abridgetolum
Abrils
Abritrage
Abruaa
+Abruzi
AbsentPray
Absol
Absol-EX
+Absolut1on
+Absolute POS
+Absolute St8
Absolutism
+Absolver
Absorpt
Absoullutely
+Abstand
Abstergo
+AbstractNay
+Abstractable
AbsurdGreek
+Absurdly Gay
Absynthial
+Abu Chungus
+Abu Salih
+Abuk
+Abulssoni
Abuv
Abyission
AbysmalGrind
+Abyss Laps
+Abyss Whip
AbyssFreaks
AbyssWalkerr
AbyssaI
Abyssal
+Abyssal Roar
+Abyssal Sire
+Abyssal Wook
AbyssalEmu
AbyssalTrout
AbyssalWrath
+Abysse
+Abyzz
Acady
Acai
+Acai Berries
+Acamarine
+Acan D
Acardi
AccessPoint
+Acciainoli
Accio
+Accio Bond
AccioHorcrux
+Accolades
+Accountant 0
Accursio
+Ace Kills
+Ace12209
+Ace123445678
Ace2cool
AceAlexander
AceArcaneon
AceOfSevens
+AceTenSuited
AceTookUOut
Acefalcon3
Acekicker
+Acemachine
Acemanjam
Acenr
Acer
Aces
+Aces x3
+Acesuke
+Acesupersoak
+Acetazolamid
+Acha9
Achaeos
Ache
+Achenar
Achernar
Achievement
Achievements
+Achilles Low
+Achilles XXI
AchillesFist
Acholight
Achuu11
Acid
+Acid Cat420
+Acid Christ
+Acid Dab
+Acid Frick
+Acid II
+Acid Lunatic
+Acid Magick
+Acid Reducer
+AcidBxbies
+AcidHouse
Acide
Acidic
Acidylia
Acir
+Ack Varmland
Acke
+AckeSSBM
Ackman67
Acko
Aclu
+Aclyss
Acolytes
+Acorn Potat
AcornHunter1
+Acoustics
+Acquila
Acquilar
+Act Ov Vodka
Actaeor
+Actan
Action
+Action Dwarf
+Action Movie
Active
+Active Whale
Active-Bombi
ActiveRecord
+ActivelySent
Activeshot
Activis
+Actor
Actt
Actual
+Actual Bald
+Actual Yak
ActualName
Actually
Actw
Acuila
+Acumen OSRS
AcuraIntegra
AcuteSloth
+Ad Pulvurum
Ad0pted
Adachigahara
Adada62
+Adalman
Adam
+Adam pd1
Adam8
AdamBonar
+AdamInAtl
+AdamPwnz
+AdamTehMong
Adamant
Adamanta
+Adamantoise
Adamchrisp
Adammmmmmm
+Adamp1
Adampewpew
+AdamsMain
+Adamskieh
Adamy
Adaptations
+Add Jisuke
Addderall
+AdderLord
Adderall
Addi
+Addicted Tom
+Addicted2Rs
+AddictedIM
+AddictedSoul
+Addlero
Addycusfinch
Addytt1
+Adee3
Adeeb
Adelaw
+Adele
Adelier
+Adeliya
+Ademon66
+Adenocard
Adept
+Adept Brick
+Adeptus W40k
Adeq
Adeus
AdeyP
Adgoar
+Adhd Adam
Adhurim
+Adi Laser
Adic
Adiieu
Adil
Adin
+Adios Punani
+Adiosk8r
AdjacentAce
+Adjudicatior
Adjusted
Adjustmyfan
+Adkille
+Adley
Admetis
Admirable
Admiral
+Admiral Addy
+Admiral Kev
+Admiral Nano
Ado12322
Adogg0323
Adolari
@@ -783,46 +1995,85 @@ AdonisUkko
Adorak
Adorations
Adore
+Adornare
+Adr Iron
Adrean
Adrian
AdrianMMO
Adriatik
Adriatik7
+Adrik
Adriyxs
+Adroid
+Adskip
Adss
Adstar
+Adster98
Aduadu
Adust
+Adusy
+Advance2Max
+Advanced Rat
+AdvancedOwen
+Adventure On
AdversY
+Advvil
+Adwan
+Adyn1
Adz92
Adzyy
+Adzz
+Ae rith
Aeariyion
+Aeckersss
+Aecyra
Aedon
Aedreius
Aeganor
Aegislash
Aegon
Aeikora
+Aejayem
Aelin
+AelitenRS
Aelos
+Aemil
+Aent
Aeon
AeonsOG
+Aequites
+Aerack
+Aerdont
+Aergius
+Aeric Shun
+Aerith 68
+Aerivas
Aerj
Aero
+Aeroaxe
+Aerocity
Aerohead50
Aerolustly
+Aeromi
+Aerosol
AeroxAces
Aerros
+Aeryen
Aerzo
Aestana
Aesthetiix
Aeterni
+Aetharan
+Aetharyn
AetherEra
Aethyrs
Aeugh
+Aev
Aeyriex
Aezolix
+Aff it
Affaires
+Affan Khan
Affect
Affectie
Affidra
@@ -831,95 +2082,191 @@ Affirmed
AfghanisDan
Afghanistan
Aficionado
+Afk Blake
+Afk Jasper
+Afk N Scape
+Afk Ray
+Afk Scape
+Afk To Smoke
+Afk em
+Afk is EZ
AfkBandos
AfkGod
+AfkMachine
+AfkTbh
Afked
AfkforGainz
Afkillz
Afkin
+Afkoelen
Afkstar
Afkwarrio6
Aflamed
+Afnacho1
+Afonso
Afperser
Afrecan
AfricaSavior
Africagamer1
AfricanMelon
Afrie
+Afrikka
+Afriquee
Afro
+Afro Deagle
+AfroFishh
+AfroShay
Afrojofe
+Afroman
+Afromann
Afromouse87
Afrothunder
Aft3rmath
+After Dark
+After3Scoops
+AfterLike
Afterlife
Aftermatter
+Aftermax
Aftex
Aftyr
Afx31
Ag0b
Ag3nte
+AgagaWeeWee
+Aganis
+Agaperik
Agatsuma
+Age Forever
+Age of Hell
Aged
Agenda21
Agent
+Agent 3
+Agent Jass
+Agent Slidt
Agent805
Agent94
AgentFluff2
AgentOrnox
Agentbunny1
+AgenteGanso
Agentlobster
+Aggressox
+Aghiestic67
AgiNagii
Agil
+Agil Tank
Agile
+Agile AI
+Agile Rob
+Agile Tom
AgileAllMile
AgileFlea53
AgileLlama
AgileRj
+Agilities
Agility
Agitare
+Agmaur
Agnar472
Agni
Agnoscere
Agnykai
+Agoge
Agressie
+Agroni
Agronox
Agronyss
+Ags G Maul
+Agsungg
+Agua Diablo
Aguanator
+Agv
+AhaShakes
Ahab
Ahav
Ahegao
AhegaoShawty
+AhegaoxDrool
+Ahero Knitly
AhiPoke
+Ahjin
Ahkscape
Ahkward
+Ahlaundoh
Ahmishcyborg
Ahol
Ahoyhoy
+Ahreams
+Ahri babe
+Ahriah
+Ahrim Job420
+Ahrou
Ahvexx
+Ai Haibara
+Ai activated
+Ai u
+AiMienOortje
+AiNebesvaik
AiXiao
Aiai8
Aian
+AiasIM
+Aiayu
Aid12100
Aidann
+Aidens Iron
Aidios
+Aife
Aigua
+Aiii Guey
Aiikis0
+Aila
Aillwynd
Aimbot77
Aimdur
AimenForFun
AimenForYou
+Ain Zak
+Aina Vapaa
Aintos
Ainu
+Air Aaron
+Air Bison
+Air Cube
+Air Hawkz
+Air Nimbus
+Air Up There
+AirAction
+AirRin
+AirWindSurge
Airborne
+Aircendition
Airexz
Airforcin
Airomatren
+Aironmaen
+Airorider1
+Airplanez
+AirsickMold
+Airskipper
+Airstone
Airstrike
+Airstrikes
Airwalk
Airwipp
+Aishi owo
Aisyah
+Aivery
+Aiwe
+Aixaa
+Aixleft
+Aiyaaaa
Aiyzer
+Aizor
+Aizzz
+Aj Blitz
Ajamian
Ajarn
Ajaxius
@@ -928,99 +2275,193 @@ Ajeh
Ajeti
Ajikk
Ajinz
+Ajt141
+Ajushox
Ajuus
+Ajx
+Ak 4854
Ak5u
+Aka God
AkaSpecs
+Akadian
+Akagi
+Akali
Akalron
+Akarema
+AkaseAkari
Akasha
Akashy
Akatsuki
Akaza
+Akduman
+Akeno
+Akhasa
+Akhavan
Akhotha
Akiha
+Akihiko Main
Akilled
Akimbo Gmaul
+Akira28
Akirakiyomi
+Akka Flakka
Akkaido
+Akkezander27
+Akkhai
Akmore720
+Akn Magic
Akogare
Akolyta
Akomatic
+Akomatk
Akowii
AkraLaDragon
Akropolis
Akshan
Aksu
Aksu596
+AksuRS
Aktii
+Aktivaros
+Aku Megami
AkumaPenguin
Akunte
+Akushizu
Akusti
+Akustic
+Akvarij
Akyba
Akyle
+Al Go Rhythm
+Al e x x
+Al ex G
+Al-Kimiya
AlCaponee
AlFromOhio
+AlIigator
AlMusallam95
Alabandus
+Alabarce
Aladfar
Alak4zam
+Alakazoom
+Alakazzaror
Alameda
Alamittainen
Alan
Alan200414
+Alandar
Alanowsky
Alantiwa
+Alasse
+Alaurise
+AlbaisBack
+Albananaa
Albanoi
+Albatrossse
+Albatrox
+Albert 1888
+Albert Klett
AlbertaDean
+AlbertasRec
Alberthorn
+Alberto
+Alberto P
Albertttt
AlbiBambi
Albin0z
+Albinos10
+AlboBloodZ
Alboy
+AlbusTheDood
Albuun
+Alc1
+Alcadeias
Alcado
Alcarnia
Alcatres
Alcatrez
+Alceini
Alcerathe
+Alch O Holic
AlchKids4Gp
Alchaline
AlchedMyLife
AlchedMyM0M
AlchedMyNuts
AlchedYaNan
+Alcheimers
+Alchemical A
+Alchemicc
+Alchemisten
+Alchemize
AlchemstDefi
+Alchemyst
+Alchhorn
+Alchulon
+Alckx
+AlcoSkillz
+Alcond
Alcool
Alcoz
Aldastro
Aldecaldos
AldenolcyCB
+Aldi Knight
+Aldit0r3
Aldol
+Alduiin
+Aldwin Mose
+Alec
+Alec-kun
+Aleck_l2
Aleffy
Alegrete
+AleizzleX
+Alekja
Aleks
Aleksi
Aleksib
+Aleliumbis
Alem
Alemao
Alenac
Aleous
Alerio
Alessan
+AletosCR
Alex
+Alex Blaze
+Alex Cartman
+Alex Grey
+Alex IV
+Alex Meret
+Alex Power3
+Alex V2
+Alex Welshy
+Alex Zander
+Alex from IT
+Alex the dad
Alex12161
Alex3
+AlexDirty
AlexHill
AlexODaGreat
+AlexSpkt
+AlexV
Alexa
Alexander0k
+Alexandre M
Alexbrave2
Alexbrock
+Alexis2Pro
Alexmeister
Alexnchill
+Alexownsmatt
Alexr0
Alexx
Alexx2G
+Alexxandraa
AlexxisTexas
Alexzilla
Alf11
@@ -1029,51 +2470,95 @@ AlfaQ
Alfahane
Alfahanne
Alfication
+Alfie 96
Alfonga
+Alfonso
AlfonsoKhan
+AlfredTB
+Alfrid
+Alfuh
+Algiebeer
Alharbi
Alhyrr
+Ali Shuffle
+AliThePvmer
+Alibaba
Alicander
Alicc
Alice
+Alice x
+AliceOMalice
+Alicent
Alicezero1
+Alicola
Alien
AlienAntFarm
AlienTTmilk
+AlienVoucher
Alienmage
+Aliens
+Aliii33
Alijr
AliksOh
Alioman
+AlistarTb21
+Aliste
+Alive Bozo
+Alive Seb
+Alive Vein
+Alive18
AlivenHappy
Alixz
+Aljase
Alkan
Alkene
+Alki Holic
Alkkor
Alkoholismi
Alkymo
+Alkyne
+All Blue
+All Darn Day
All Fore One
+All Frosty
+All Peachy
+All There
+All a Bone
AllRubyMoi
+AllThePain
AllTimeNo
AllYourBase
+AllaBarri
Allabaster
Allan
+Allan man
+Allards
Allcreation
Allday
Alldays
+Alldogg
AllegedTheif
+AllegedTree
Allen
Allerb
+AllesPaletti
Alleviate
+AllexWx
+Allext
Alligaattori
Alligamanor
Alligood
Allisun
Allkune
+Allky
AlllySpawn
+Allmethyst
Allo
Allomantic
Allon
+Allonsmoke
Allowe
+Allowed to
Allscreen4
Allsen
AllstarTb21
@@ -1084,54 +2569,105 @@ Ally
Alma
Almahh
Almighty
+Almighty2277
AlmightyMilo
+AlmondJoy
AlmostHadMee
+AlmostSavvy
Almost_124
Almosttheir
Alno
Aloha
Alohas
+Aloise
Aloittelija
Alondraj
Alone
+Alone CRNA
+Alone RS
AloneHeWalks
+AlonelyPlace
Along
+Alonzo520
+Alonzo52O
+Aloqab
Alosthawaiin
Alov
Alow
+Aloxc
+Aloysius
Alozaps
Alpaca
+Alpaca B0ng
+Alpaca Lips
AlpacaMyBags
+AlpacaMyBowl
+Alpacaliptic
+Alpedocles
Alpha
+Alpha Cygni
AlphaCoderXI
AlphaFeeb
AlphaMathic
+AlphaSeraph
+Alpha_Scott
Alpharma
Alphonse
Alphray
AlphusBrah
+Alpine Climb
Alpinetree
+Alpoopi
+Alppiruusu
Alprazoland
Already
Alright
+Alright Mom
+AlrightBucko
Alrite
Alry
Alsatian
+Alsatians
Also
+Also Jack
+Also Luci
+Also Lucky
+Also Nexxtar
+Also Noexi
+Also Schlak
+Also kawkky
+AlsoAlso
+AlsoRabbit
Alst
+Alston
+Alt Ctrl
+Alt G boys
+Alt Juana
+Alt Redshok
+Alt prepot
+Alt3rbridg3
AltOclock
AltSkillsDoe
Altairre
Altamonte
Altchilly100
+Altcliffe
+Altdunk
+Altemeier
Altenan
Alter
Alteraga
Alternate
+AlternateArt
Alternatee
+Alterones
+Althamen
Althornson
Altifueled
+AltimateRalf
Alting
+Altkandos
+Altnik
Altonorin
Altruistic
Altus
@@ -1140,155 +2676,305 @@ Alucks
Aluspalvelu
Alvaaro
Alvarreth
+Alveoli
Alvislt
+Alvx
Always
+Always Alex
+Always Awake
+Always Harm
+Always Late0
+AlwaysByrnes
+AlwaysDNS
AlwaysLost
AlwaysPoor
AlwaysQuest
+AlwaysSunny
+Alwayscuffed
AlwayzJarvin
AlwayzSol
Alwex123321
+Alwin S
Alxs
+Alyks
+Alysanne
+Alyv
Alzad
+Alzuraak
Alzz
+Am eer
+Am ity
+Am ln Danger
AmCatWhatDo
+Ama zon
+AmaAvenger
Amadeux
Amaiya
Amak
Amalie
Amanda
+Amanda Btw
Amandelbrod
Amarantine
+Amarok Moon
+Amasclit
+Amateur
Amathyn
Amatsukaze
Amatus
Amazarashi
+Amazaro
Amazing
+Amazon Power
+Amazonia
Amb3rLeaf
AmberTheCat
Ambik
Ambion
+Ambipom
Ambisagrus
+Ambition IRL
+Ambition98
+Ambitioned
Ambrose34
Amcaroz
AmcyC37
+Amd27
+Ame Hara
AmeJoyRock
+Amean
+Ameero7
Amel
+Amelia Beth
Amen
+Amend
Amenity
+Ameno l
+Americlaps
+AmiableDingo
+Amibis
Amida
Amigeau
Amigo
+Amigos
+Amillie
+Amin
+Amir Psycho
Amis
Amitwin
+Amityz
AmixBeast
+Amjad
Amjar
+Amka0s
+Amkings
Amlodipinee
+Ammastian
+Amnesiia
+Amnios
AmoMeuFilho
+Amoei
+Amon Amarth
+Among Dead
+AmongUs R34
+Amongst It
+Amordrise
Amos1500
Amper
+Amperes Law
+Ampiainen
+Ampilify
Ample
+Amplify
Ampura
+Amsclarke
+Amsterdamage
Amty
+Amused Fonty
+Amuzements
+Amuzzr
Amuzzzr
+Amy Sonck
AmyMacdonald
Amygdala
Amylit
Amyshaw123
-An Iron Butt
+An Amputee
+An Animal
+An Ebony BBW
+An Old Chum
+An epic OAP
An old Gnome
+An0mandaris
An0niminis
+An6ers
AnActualHorn
AnAmerican
+AnEnginerd
AnEpicWookie
+AnEskimo
AnExperiment
+AnEyeOhLate
AnOldTank
+Ana D Armas
AnaWynn
Anabella28
Anabolic
Anabolic h1t
+Anabowlen
+AnaklusmosAN
Anao
Anaphylaxiss
Anarchy
+Anarchy870
AnarchyOS
Anari
AnataNoWaifu
Anbu
+Anbu_Mobb
+AncIrew
Ancalagon
Ancastry
AnchorMann
Ancient
+Ancient Fury
+Ancient fir
+Ancient hil
+Ancient soul
AncientFreak
AncientLamb6
AncientMagus
AncientOath
+AncientP
Ancientgh0st
Anciento
+Ancientz pal
Ancitif
+Ancona
+Ancow
+And e
+And r ew
AndSo
+AndYetISmile
Andardenn
+Ander5
Anderave
+Andericus
Anders375
AndersenXo
Anderssen
Andhra
AndiCandy
AndiVT
+Andiamo98
Andipyrus
Andirath
+Anditre
+Andj
Andoyen
+Andrade149
+AndreasBL5
Andremagico7
AndresVZLA
+Andrethyst
Andrew
+Andrew Marr
+Andrew OG
AndrewWigins
Andrewjaay
AndrewsMeat
Andrezee
Andrezz
Andri02
+Andrian
Andrick
Andrishh
+Andrius X
+AndriusBykas
Androgenic
+Android Iron
AndroidFox
Andromed1k
+Andsaca
+Andx
Andy
+Andy Candy
+Andy Ops
+Andy Salrem
+Andy btw
Andy2
Andy2511
+Andy43229
AndyG223
+AndyIsComing
+AndyL
AndyMcbob4
+Andydiaz
Andyfromvent
Andyn9
Andyooi
Andyvns
+Anele Boy
+Aneluy
AnemicIzzy
Anesics
Anetha
Aneurin
+Anez
+Ang3li
Angalad
Angel
+Angel Advise
+Angel Allie
+Angel Gabe
+Angel Martyr
Angel Vlad
Angel4killin
Angel5
+AngelOfZeal
AngelOrHour
+Angelic Lust
+AngelicOrb
AngelicVixen
+Angelisimo
+Angell SL
AngelsCrys
Anger
+Angerfish208
+Anghelic One
+Angie Bos
+Angl 0f War
Anglerstein
AngloSamson
+Angoose
Angry
+Angry Bison1
+Angry Child
+Angry Thumb
AngryHusky24
AngryMvP
+AngryNachos
AngryPickle
AngryScape
AngryWizard
+Angsti
AngusM
+AnhTaDuong
+Anhedoniaa
+Anid
+Anida Hanjab
Anidien
+Anieli
Aniheyu
+Anim
Anima
Animal
+Animal feces
+Animalia
Animation
Animations
Anime
+Anime Nips
AnimeExpert
AnimeMilkers
AnimeWaifus
@@ -1296,51 +2982,95 @@ Animorph
Animos
Animosity
Anion
+Aniril x
+Anita Dong
+Anita M Wynn
AniviaKush
+Aniwave
Anja
+Anja Rubik
AnjaPija
Anjigami
+Anjru
+AnkaraAisa
Ankedia
+Ankka51
Ankn
+Ankou btw
AnkouClothes
Ankougnu
+Ankourule243
Anlaku
Anlex
Anmah
Anmokyu
+Anna Huikka
+Anna Liebert
+Anna Planks
Anna Rosanna
+Annavvaa
+Anne Puppy
+AnneWB
Annero
+Annhilate0
Annihilated
+Annihilation
Annihilative
+Annna Puu
+Annoys
Anoie
AnomalousFox
+Anon E Maus
AnonDoctore
Anonim
+Anons
Anonymiity
+Anonymous aF
+Anonymousse
+Anoobass1
Anooge
Anoomliebird
Anor
+Anotha Skar
Another
+Another Name
AnotherCsTa
AnotherDoor
AnotherGamer
AnotherName
+AnotherPb
+Anouar
+Anoubis
Ansaittu
+Anscombe
+AnselAdams
Ansoil
+Ansovs
Ansuz
+Ant M8
+Ant a
AntRIP
+Antartsant12
Antast
Ante
Antee294
Antelope123
+Antex
+Anth x
Anth52
Anthiex
Anthilll
Anthony
+Anthony Btw
+Anthony I
Anthony5002
Anthoons
+Anthooony
Anthorak
Anti
+Anti Drop
+Anti PK G0D
+Anti002
AntiFuh
AntiVaxMothr
Antidope
@@ -1348,59 +3078,102 @@ Antifa4figs
Antifire
Antiflag42
Antiguy24
+Antinyte
Antipathic
Antipixel
AntiqueRS
Antiqxx
+Antireflex
Antis
Antiserum420
Antixan
Antiyano
+Antlers
+Antmix
Anto
Anton
+Anton T
Antonio
Antonn
Antony
+Antony1202
Antony142pay
Antoun
+Antracid
+Antron
Antstolis
Anttila
Antweezy
+Antz Xii
+AnuBi 1337
Anub1s
Anubis
+Anubis ex
+AnubisT3
+Anuj
Anul
AnullSecs
Anv1k
Anve
Anxi
Anxiety
+AnxietyBTW
Anxious
+Anxious Mess
AnxiousDoggy
AnyDrops
AnyLesS
+AnyQuestions
+AnyScrolls
Anze
+AnzheliK
Anzie
Anzied
Anzu
+Anzypoo
+AoA Jammer
AobaJohsai
+Aog
+Aoh
+Aohc
+Aohu
+Aoi Tetsu
Aokijahr
Aokijii
AonEne
Aonyx
AoooA
+Aorpheat
+Aosrs
Aowi
+Aozaa
+Ap0logy
Ap0phis
Ap3x
Ap870
+ApRoMn
Apaat
+Apaatje
Apache
+Apache30
+Aparlo
ApartAbyss
Apathetik
+ApdoJ
+Apdomine
+Ape Cape
+Ape Dos Mil
ApeAtoll
Apetamer
+ApetimusPrym
Apex
+Apex Pro
+Apex-scaper
+ApexGT
+Apexflashy
Apexist
Apgujeong
+Apherna
Aphex
Aphroditeee
Apimer
@@ -1409,75 +3182,136 @@ Apldale
Apm90x
Apoc
Apoc142
+Apocriya
Apocryphe
+Apolliox
+Apollo Beach
+Apollo13th
+Apolytos
Apop
+Apophiss
Apor
+Apostasie
Apotoxin
App3lflap
AppaYipYip
+Apparat
Apparitionn
+Appeasive
+Appel Farm
Applauder
Apple
+Apple A Day
+Apple Mart
+AppleBluue
Appleboss
+Applecus
+Applejuiceaj
Applemaxx
Applev2
Applied
+Applul
Apportant
+Apprenti1
+ApprenticeRS
Approval
ApprovuL
AppySauce4
+Apqle
Aprella
April
April 8 1997
+April twenty
Aproximity
+Apsa Larr
Apteryx
+Apteryx luna
+ApuHapu
Apul
Apullu
+Apyon
Aqew
+Aqizu
Aqtive
AquaUnit
Aquah
Aquaileo
+Aquajd
Aqualetics
Aquamation
+Aquamentus9
Aquascaped
+Aquaticbob
Aquatik
Aquellex
+Aqueueser
+AquiIa
Aquilo
+Aqva Babe
+Ar ex
+ArA100
+ArKadeeee
+Arab Frieza
Arabian
Arada
Araet
+Aragonx
Aragornmv
+Aragornous
+Aramaki
Araman
+Aramex
Arandae
Aranna
Aranruth
+Araq
Araqon
Arasex
Arashikato
Arastaiel
Arathir
Araur
+Aravt
Araysen
Arazz
Arb4n
+Arbator
+Arbenn
Arbin
Arbyy
+Arc1s
+Arcade firee
+Arcadian96
Arcane
+Arcane Grima
+Arcane Queen
+ArcaneApollo
ArcaneBear
Arcanezeus
Arcangel
+Arcangel IX
Arcanic
+Arcanox Sad
+Arcanum XIII
Arcas3
+Arced RS
Arceneus
Arch
+Arch RS
+Arch er
Arch3nLight
+ArchFarmer
ArchX
Archaea582
-Archaen420
Archahl
+Archaic Wolf
Archaiden199
Archanjel
+Archas
+Archavia
+ArchbishopC
+Archduke Btw
+Archelon
Archer
ArcherYew
Archie
@@ -1489,6 +3323,9 @@ ArckenSphere
Arclight
Arcnan
Arctic
+Arctic Roach
+Arctic Vaggy
+ArcticCamel
ArcticMank
ArcticTitan
Arcticas
@@ -1498,8 +3335,16 @@ Arda
Ardaddy
Ardames
ArdenDZY
+ArdestRange
+Ardilos
+Ardougn e
+Arduino69
ArdumTheMain
+Ardumm
Ardy
+Are Dry
+Are ng
+Are you well
AreYouMyMumm
AreYouPepega
Area
@@ -1507,12 +3352,17 @@ Areimer0606
Arekusei
Arena
ArenaRebuild
+Arend Nest
+AreolaArnold
Areolas
Areoloth
+Areow
Ares
+Ares 3060
Ares1701
AresArmy
AresKnight
+Arescoth
Aretx
Arezrazer
Arfex
@@ -1521,184 +3371,322 @@ Argawan
Argent
Arghoslent
Argilla
+Argo Vesta
+Argonuts
+Argory
+Argov
+Argyle Sock
+Argyle Socks
ArgyleGrandt
Arhedel
+Ari
AriSlash
Aria
+ArianDRZ
Ariana
+Arias star
+Ariazel
Arid
ArieMoon
AriesWarrior
+ArieyaeIron
+Arifureta
Arigorn
Arigorn55
Arihant
Arillian
Aris
+Arisen I
+Aristo
+Aristokratas
Arisu
+Arith1um
Arithe
Arizotal
Arjoon
Ark9tog
+ArkAngel029
+Arka91
+Arkaniz
+Arkantos51
+Arkaros
Arkavos
+Arkaynine
Arkeela
+Arkells
+Arkem
+Arkemir
+Arkend
Arketryx
Arkevin
+Arkhero
+Arkizah
+Arkki
+Arkonka1
+Arkonknight
Arkvasal
Arkysh
Arlind
ArloTheBrave
Arlorict
Arlyeaxn
+Arlyse
+Arm Chair
+Arm Guy
+Arma Frost
Armadexx
Armado
Armadomin
+Armadyl king
+ArmadylPker
Armadyllo
Armament
+Armanyte
Armapickle
+Armas Chosen
Armchairs
Armerak
+Arminius Sol
ArmisticeDay
Armo
ArmoBlood
+ArmoMike
Armoah
+Armondega
+ArmorHelmet3
+ArmorSeeds
Armourer
Armsdray
+Armweak55
Armysam
Arna
+Arndas
Arnear
+Arnhems
Arnie
Arnold
+Arnor
+Arnthor
Arntj
Arobpl
Arod
Arodaz
Aromipesa
Aron
+Aronya
Aroorin
Arousen
+Arousin
+Aroyu
Arpang
Arpegio
Arptacular
Arr n Geesus
Arrandarls
+Arrasca
+Arrazha
+Arre10
Arrizu
+ArrowHaste
ArrowTank
Arrowmind
+Arrows Myth
+Arrowtower
+Ars Nova
Arsaydar
Arsenals
+Arsene rar
Arsenic
+ArsenicEyes
+Arsenn
Arshal
+Arsi
Arslen
Arson
ArsonScape
+Arst
+Arstan Selmy
Art Dayne
+Art Star
+ArtIsHard
ArtStylerzz
Artces
+Artegal
Artenmis
Artesna
+Artezor
+Artful Dodgr
+Arthaniel
Arthesus
Arthropods
Arthur
Arthven
+Artic0
+Articuno1991
+Artidote
Artillion1
Artipeng
Artisaani
+Arto Lauri
ArtofKush
ArtoriaSiff
Artoriias28
+Arts
+Artu12v
Arturis
Artychurro
Artz
+Aru
Arumen
Arunas
Arusas
+Aruwyn_Xi
Arve
+Arvinthir
Arviragus
+Arvns
+Arvsta Won
+Arvx
+Arwe
+Arwon
Arxanec
Arya
Aryabhata
Aryuts
+Aryzha
+Arzemnieks
Arzi
+Arzna
AsalentBlaze
Asami
+Asami Sato
Asap
+AsapLamb
Asbi
Asbloodfalls
Asbur
+Ascadex
Ascanliss
Ascended
+Aschen
+Ascii You
Asda
+Asdasd107
+Asdewq
+Ase
Aseae
Ased
Asfixiator
+Ash K
+Ash Solo
+Ash Wreckum
+Ash l
AshBash
AshEvillDead
+AshKetchum00
AshLad94
+Ashabee
Ashandarei0
+Ashcroft
Ashealia
Ashen
+Ashen Bride
+Ashen Heart
+Ashen One
AshenSughar
+AsherMentuI
Ashes
Ashes630
Asheviere
+Asheville
+Ashhh
Ashieboyyy
Ashikaru38
Ashington
+Ashkelmek
Ashkii
+Ashkyn
Ashleigh
Ashley
AshleyNZ
+Ashleyi
Ashlyce
+Ashmeow
Ashn
Ashoo
Ashsole
Ashton
-Ashwin07
-Ashy6969
+Ashura Bakke
+Ashwin09
+Ashy joey
+AshyKneecapz
Ashyy
Asian
-AsianGuyOSRS
+AsianGrinder
+Asics
+Ask Oziach
AskMeDolCare
-AskingCard69
Askraf
Askumi
AslanMaximus
Aslywyn
+Asmir9990
Asorf
Asos
+Asot
+Aspen
+Asper
Aspestia
Asphyi
-AssBuster21
+Asphyi Xate
+Ass Balm
+Ass Clams
+Ass Drill
+Ass Rocker
+Ass locator
AssClapping
-AssCumPooPee
-AssIsYummy
+AssMcButt
Assasindie73
+Assasintoad
Assassinado
-Assassxnz
Assaulted
-Asshungry
-Assletics
-Assload
-Assmazing
-Assmongie
-Assy
+Asshats R Us
+Assktchum
+Asstain
Ast 360
Astan
+Astaro
+Astartes
+AstartesXIII
AsterSG
Asterlad
Asterlyte
Asterus
Astiminate
Astoia
+Aston Fartin
AstraDan93
Astraea
+Astral Queen
+Astral laws
Astrali
+Astrals
+Astray
+Astrayus
Astro
+Astro Dust
+Astro O7
+AstroKP
AstroXgK
AstroYogurt
+Astroflare
+Astronaut Al
+AstrooWRLD
Astrophe
Astrostone
+Astylez
Asubu
+AsuhDude
Asuka
AsukaLangely
AsukaYenOSRS
@@ -1708,112 +3696,209 @@ Asumistuki
Asuna
Asunnn
Asura
+Asus bl
+AsylumTRAV
Asymmetry
Asyn
+Asynergy
Aszalem
+Aszard
+Aszension
At0mic
-AtWorkOnOSRS
+Atacrite
+Atar
Ataraxia
+Ateo
+AthIetic
Athaw
+Athe na
Athedeia
Athena
+AthenaOfOsrs
+Athenaloki
+Athi
Athire
+Athius
Atika
Atilio
+Atin
+Ativan IM
Atlamillian
Atlantic
AtlasErol
+AtlasUsurper
Atlashi
+Atleast
Atli567
Atmosfare
+Ato m
+Atolla
Atolli
Atom
Atomic
AtomicFlux
+Atomicdomb2
+Atomikaust
Atomsk
Atomyze
Atonic
Atorvastatin
Atouk
+Atoxicary
Atoz
+Atriades
+AtriummDream
Atrixas
+Atro phy
Atroo
Atroph
+AttackMoons
Attard
+AttemptedUwU
Attic
+Attic Ghost
+Attic Witch
Attics
Attikos
Atton
+Attuned
Atuking
+Atvinnulaus
+Atylos
+Atza
+Au 0srs
+Au 1
+Au Bar
+Au Barrett
+Au Joel
+Au Shooty
Au92
AuRoyce
AuStarZ
Aubrey
+Aubrey UIM
+AubsG
+Auburn Lax
Aubzzz
Auclaw
Auctionable
+Aud
AudacityOP
+Auddax
Audi
+Audi Nurse
+Audi Reach
+Audo
+Audronan
Audtnec
Audylinks
Augment
AugstBrnsRed
Augurk
+Augury Tank
August
AugustAmes
Augustiner16
+Augutis
Auhdy
Auja3
AuksoAlt
Aulono
+Aumoki
+Aunonen
+Aunt Wu
Auntie
+Auntie Mabel
AuraBeast
AuraSissari
+Aurah
+Aurelia
AurelionROW
AurelionVM
Aurelya
Aureou
+Aurgodi
AuriZed
Auriana
Aurionx
+Aurizon
Aurorin
+Aurrok
Aurtle
AurumFoxfire
+Auryn
+Aus
+Aus 2277
+Aus Shizam
+AusBruto
+AusGram
Ause
+AusieBumpkin
Ausripper
Aussie
+Aussie Jay
+Aussie Luke
+AussieKunt
+AussieOandE
AussieSparta
Aussome
+Aussybear
+Aust Terps
Austie
Austiiizy
Austin
+Austin Ames
+Austin is 1
Austin296
+Austiz
+AustlnPowers
Australia
+Australians
Australiaz
AustrianOak
+Austs
Austyn
Autchin
+Authorized
+Authorizer
Autickstic
Autilon
Autism
AutismeKnaap
Autist
Autistic
+AutisticAndy
+Auto Tuned
+AutoBonsai
AutoEmp
+AutoLoot EXE
+Autoacid
AutomailArm
Automonteur
Autophagy
+Autorotate
+Auts Man
Autumn
AutumnKevegy
Autzerk
Auuustin
Auuuv
AuzReaper13
+Auzium
+Av o
+Av3z Str
+AvC OSRS
+Ava End
Avaetar
+Avaigo
Avatar
+Avatar Evan
+Avatar Magni
AvatarBean69
AvatarShakur
Avedon
+Aveng
+Avengerous
Aventy
Aver4ge
Average
@@ -1825,7 +3910,14 @@ Avernic
Avero
Avertehs
Avest09
+AvestGIM
Avex
+Avexaon
+Avfc Holte
+Avg Tom
+AvgMG
+AvgScape
+Aviaatar
Avian
AvidTech
Aviiation
@@ -1834,85 +3926,154 @@ Avinosis
Avir
Aviron
Avlek
+Avocatocat
Avoidable
Avoinmieli
+Avonak
Avondale
+Avouch
Avrahm
Avsendesora
Avysto
+Avze
+Awadi69
Awaiting
+Awaiting 126
Awaits
Awaiyume
+Awakened Olm
Awarde
+AweJeez
Awendana
Awesome
+AwesomeBros
AwesomeJared
Awezm
Awful
+Awful Name
+Awfully
+Awh DB
+Awh Nuggets
Awies
Awilkins4231
+Awkquavian
+Awkventurer3
Awkward
Awowegei
+Awowo Gay
+Awry
+Awtangg
AwwSeriously
Awwdiddums
Awwtis
+Awyr
+Ax3
+Axayre
Axdrew
+Axely
+AxemPink
Axeo
+Axhers
Axies
Axillaa
AximusMax
Axiom
+Axlerod
+Axleson
+Axodyi
+Axolotl
+Axsentz
Axton
Axylix
+Ay Monk
+Ay Ron Man
Ay3m
AyAyRon
AyB33
+AyJae
+Ayafuyuzu
AyameDespair
+Ayatan
+Aybills
+Ayd
+Aye Sip
AyeBaddaBing
+AyeePizza
Ayeeet
+Ayema IM
+Ayenull
Ayetg
Ayfi
Aylia
+Aylward
Ayman
+Ayo4Yayo
AyoSteeze
Ayoe
+Ayonikz
Ayra
Ayri
+Ayrton
+Aysuu
Ayveros
+Ayy Nakana
+Ayy bae bae
+Ayy q p
Ayyye
Ayyyon
Ayzo
Az PVM
+Aza zel
Azad
+Azad Kashmir
Azala
Azami
+Azandari
Azathor
Azathoth26
+Azathrir
+Azazel OSRS
+Azeenil
Azemu
Azerma
Azez
Azimut
Azimuthaal
Aziz
+Aziz7
Azkaton
Azken
Azkybot
Azlo
Azmataz
+Aznbabe
Aznmixboy
Azom
AzorAhaiBTW
Azotize
Azoxy
+Azpa
+AzraelReaper
Azriiele
Azryel
+Azs
+Azshara
+AztecLT
+Aztra
Azula
+Azula Whip
+Azur Lane
Azur_I
Azure
Azure23782
AzureSpirit
+Azuredadi
Azuremadi
+Azuretiger
Azuuure
+Azynn
+Azyrith
+Azza Bear
Azzaar
Azzaboy100
Azzakel
@@ -1921,104 +4082,257 @@ Azzanadraa
Azzax
Azzgarnia
Azzz
+B 0 B S
+B 0 S S
+B 0 U J E E
+B 3R
+B 58
+B A F F E Y
+B A MF
+B A U W S
+B B Bouncy
+B C 2
+B C M
+B CA
+B D Y
+B E E G
+B E R T A
+B E R t I 3
+B ELA
+B Gates
+B Gonkeybron
+B I G G L E
+B I R T
+B Ian
+B J O R N
+B L 4 N K
+B L A D E Z
+B L A N E
+B L A Y E D
+B L ANK
+B L I X T
+B Milesy
B Minor
+B O G S
+B O O T H
+B O Y E A
+B R A l N
+B R II A N
+B R l C E
+B S
+B SlDE
+B T J
B Victor B
+B W 1
+B W A K
+B aylor
+B aze
+B ecky
+B eeez
+B iggles
+B la z e
+B las
+B r a g g
+B r eezy
+B rads
+B raes i
+B ruised Lee
+B u bs
+B ug
+B un
+B utt
+B w
+B-0-SS-M-A-N
+B-Dollaz
B-Lal
+B00 KAW KEY
B00Lici0us
+B00MERAT3R
B00ST
B00SY
+B00tlicker
B0ARD
+B0B The Cat
B0BaH
B0GLA
B0ND
+B0NERCRUSHER
+B0NGRIPS42O
B0OP
B0aty
B0atyquila
+B0bz BurGerz
+B0dka
+B0n3z84
B0nes2Weed
-B0ngbutter
B0rders
B0rn
B0rn2bking
B0rnas
+B0tched
B14cksh4d0w
+B1G BAD CHAD
B1G8
+B1GARMS
+B1GBOB
+B1GGY
B1G_D1ESEL
+B1G_SW1GS
B1RDUP
+B1Te Me
+B1ack Lotus
B1ackJack
B1asphemy
B1gTTgothGF
+B1gd0wg
B1ink
+B1mboBambi
B1zrme
B2AD
+B2F
+B2J3
B2bZeroSpecs
+B2rad
+B3A5T
+B3CK
B3NJAMOON
+B3NT D0ver
+B3TTERLUCK
+B3Y0ND
B3njamima
+B3njamin
+B3nny Blanco
+B46
+B4RR
+B4S
B4llista
+B6a
+B6i
+B70
B747B
+B8 H8ER
+BACKURBOI
+BACONisgd4me
BADASS
BADDONE
BADPanda2
BADUPDATES
BAKED
+BALD n DUMB
BAMF
BAMFnificent
BARBARlANS
BARRAGENOW
BARRON24
+BASED DMM
+BASEDQwert
BATATUNGA
BATH0RY
BAYLlFE
+BBBBBONKA
BBGL
+BBK
BBKwenie
+BBL RIZZY
+BBQs
+BBW Pizza
BBarnzeyy
+BBeepLettuce
+BBoys Father
BCBDestroyer
+BCC YT
BCDOJRP
+BCK CigButts
+BCMagoo
BDCMatt
BDrichard
+BEANS9991119
BEARDED
+BEAST ARCHER
BEATONiT
+BEBELAC28
+BEEA
BEG0N
BEG0NE
BEINGMAXDSUX
+BELSJ
BEMBOU
BEST
+BET5
+BEYFYBOI
+BFKay
BHAFC
+BIG ASHL3Y
+BIG C0X LUVR
+BIG HIT GOOD
+BIG pontifex
BIGBADWILLY
+BIGD05
BIGDROPHUNTR
+BIGFERGLOAD
BIGHEADSMASH
BIGJP
BIGMINK
+BIGSITUATI0N
BIKlIllIlIIE
+BILR0Y
+BIOATED
+BIRD SHlT
BIRP
BIRWAAA
+BIS Monster
BIaded
BIadet
BIapa
+BIood Prince
+BJ Applegate
+BJ M
+BJPlaysRS
+BKBB
+BKK
BKLN
+BL00DANG3L
BL33DPL34S3
+BL3SS3D4LIFE
+BLACK DOG NI
BLASE
BLGesus
BLICKYSTIFFI
+BLOBi WRX
BLOOD
BLUEPIZZAMAN
BLXCKPINK
+BLYATMOTOR
BLlNKY
+BMEUR
+BMooldijk
BMrgn
BO0MERSO0NER
+BOA Liger
BOBGIGALUCKY
BOBYAHMDGECI
+BOER KAMIEL
+BOGOBoneless
+BOL0CKS
BOLSOONARO
BOMBAKLAP
-BONEM69
-BONGSLAY3R
+BOMBU
+BONITA 02
BOOPlNG
BOOTTYBANDIT
+BORDEN DAIRY
BOSNIAQUE
BOSS
+BOSS OG
+BOSSMANHOG
BOlNEXTDOOR
+BPNS Hawk
+BPTheIronOne
BPrimitive
+BR0 BRO
BR00KES
BR0CE
+BR0ER
BR0THERS
BR3AKABLE
BRA71L
@@ -2027,16 +4341,34 @@ BRAMMOSOVIC
BRANDONSMlTH
BRCH4
BREJCHA
+BRUTAL
BRabbit25
+BRlOCHE
+BSB Howie
BSNR
+BST Steve
+BSickler
BSven-B
BTCEUR
+BTKMGJKL
+BTMillz
+BTW Beirre
+BTW idgaf
+BTW vs RNG
BTWSaberlion
+BTWsanta
+BU1MER
+BUHLL
BUILD
BUILD PONYS
+BULLlSH
BUNDHA
BUNStheGOD
+BUR13D AL1VE
+BURYT0MORROW
+BUSS IT
BUTTB0NERED
+BUTTCOlN
BV Martyr
BWheatZ
BYEq
@@ -2045,101 +4377,219 @@ Ba1i
Ba5b0y
Ba6y
Ba77erY
+Baa m
+Baaaats
+Baal157
BaalZvuv
Baals
Baalthas
Baamf
Baami
+Baandos
+Baarb Lahey
Baas
Baba
+Baba Booey9
+Baba Borgar
+BabaLovesKos
+BabaSlaaf
+BabaSleep
BabaTarzan
Babafasa
+Babayaga-9
+Babayaga2121
+Baberrandrid
+Babica Mraz
Babiez
+Babocat
Baboosh
+Babs221
BabsCox
Baby
+Baby Bear
+Baby Bobby
+Baby Boeing
+Baby Daphne
+Baby Houdini
+Baby Motel
+Baby1400
BabyB
BabyDogeCoin
BabyDogeFTW
BabyGroot
BabyHat
+BabyHewy
BabyHiggy
BabyJIREN
+BabyLinga
BabyPandaa3
BabySas
BabyTamer
Babycerasaux
Babydump
+BabyfaceBill
Babyjoker828
Bac0n
BaccaM
Bachelour
Bachuras17
+Bachus67
Back
+Back Jauer
+Back Seater
Back2Backk
Back2ourdays
BackInTime
-BackintheOSR
+BackToBambi
+BackToOwn
+BackelsOSRS
+Backinthe09RS
Backlit
+Backspace
+Backsterr
Backus
Baco
+Bacodie
Bacoid1
Bacon
+Bacon Glizzy
+Bacon24717
BaconBlunts
+Baconcannon
+Baconist
Baconlord100
Baconpancake
Baconstrike
Bacteria
Bactomet
Bacun
+Bad Advice
+Bad Ape
+Bad Axe
+Bad Day
+Bad Fruits
+Bad Kind
+Bad Kuip
+Bad Mario
+Bad McNamey
+Bad Mistake
+Bad Name Now
+Bad Robert
+Bad Weather
+Bad exp
Bad2dabone30
BadAndB0ujee
+BadAss_oO
+BadChicken
+BadChronic
+BadDecision
+BadIdeaDog
BadIllusions
+BadInIronMan
+BadInNames
+BadMamaJama
+BadMannerz
+BadSass
+BadSpalling
+Badaping
Badass
+Badass Fe
+Badass Iron
+Badass Rs
+BadassIron
+BadassPotato
Badasseness
Badaxx
BaddieDragon
Badgalriri
+Badger Bush
+BadgerInABag
Badgerq97
Badical
Badman
+Badman ET
+Badoodle
Badora
+Badora II
+Baduk
+Badvask
+Bae-Kun8er
Baeby
Baekah
+Bag it
+Bag of Yay
+BagFryLife
Bagadigi
+Bagan
Bageera
BagelSpanker
Bagels
Baggyshaw
+Baghdad
Baginga
+Bagis
+Bagokk
Bags
+Bags n Beer
Bagsnacks
+Bagz
BahRitTanEe4
BahamutLimit
Bahn
Bahnzeen
+Bahp
+Bai Ningyang
+Baib
+Bail Jait
Baileys
Bailsby
Bailz
Baimonnnn
+Baines
+Baino
BainoLad
+Bainz
Bairac
+Baites
+Baja Baja
+Bajan
Bajart
Bajcolado
+Bajela
Bajere
Bajhole
+Bajista
+Bajji
Bajkami
+Bajsanus
Baju
+Bak cornet
+BakIron
+Baka Mop
+Baka Prase
+BakaOsaka
+BakaPho
Bakazuro
Baked
+Baked Mage
+Baked Saiyan
BakedVandon
Baked_Beagle
Bakedd
+Bakedmuffins
BakeonBits
+Baker Bully
+Bakerloo
+Bakers Baked
Baketto
+Bakhmut
+Baki Hanma
+Bakingsodah
+Bakingsweets
Bakkis
Bakllava
Bakron
+Bakthawar
Baku
Bakuchiol
Bakusho
@@ -2147,49 +4597,100 @@ Bakuthedrunk
BalIsackt1ts
Baladend
Balan
+Balan Dinh
Balar
Balarezo
+BalazinGIM
+Balboa Park
+Balbuli
Bald
+Bald Arab
+Bald Male
+Bald Shupa
+Bald Sicknez
+Bald To Bold
+Bald Wookiee
+Bald at 29
+BaldKnees
+BaldMansKenn
Baldfuc
+BaldheadBill
+Baldoc
Baldorr
+Baldrake
Baldras
Balerion
Baliboosca
Balkan
+Balkenende
Ball
BallOfCotton
Balla
+Ballack342
+Ballade No 3
Ballcheck369
+Ballenaso
Baller006
Ballerina
Ballesekk
+Ballet
BallinBamf
Ballotaa
+Ballroom
Bally
+Ballztacular
Ballzy
Balmung311
Balneum Anas
+Balob
Balontra
Balou
+Balrogs Hell
+Balthazar BL
+Baltimohr
+Baltimore MD
Baltoth
Baltramiejus
+Baltzerboii
Balu
+Balu Titan
+Baluk
+Bam Achilles
+Bam Grizz
Bambi0326
BambiSlayer
Bamboo
+Bamboo James
+BambooPandas
+Bambuliuss
Bamf
BamfJoe
Bamfbeav
+Bamiman
+Bamse
Bamztile
Banan
Banefish
Banerz
+Banio
+Bank Stander
Bankaiz
+Banki 1 1
Banzu
+Bape
+BapeNation
+Bapelsin
+BaphometsLov
+Baptor
Baqels
+BarShake
+BarSmash
Baraek
Barakoli
+Baratheon
+Barathrum
BarbaariJuho
+Barbatos
Barbose
Barbwiire
Barbyte97
@@ -2197,60 +4698,105 @@ Barca
Barca230492
Barcodes
Barcoding
+Barcy
Bardimuss
+BardleDooDoo
Bare
+Barely High
+Barely Legal
BarelyBusy
BarelyDecent
+Barfallonyou
Barfs
Barfy
+Bargli
Barhoor
Bariviera49
+Bark sample
Barkki
BarnVo
+Barncle Boy
Barneey
+Barnet Ftw
Barney12370
+BarneyKing
+Barneylover
Barnez10
+Barnyard Boy
Barnz
BaroBro
+Barometz
Baron
+Baron Iron
+Baron Timmy
BaronConey
BaronGiraffe
BaronVonGeeb
+Baroondon
Barqueefa
+Barr
+BarracuDro
+Barraggah
Barrako
+Barrel Flop
Barricade
Barrowry
Barry
+Barry Koota
+Barry0408
BarryBanaan
BarsasBoom
Barstukas
Bart
+Bart Heredit
BartBelly
BartSimps
+BartenderBTW
+Bartheez
Bartholomeii
Bartje
+Bartol
Bartycool
Barzhal
+Bas
+Bas Waterpas
Bas481
+Basant
Base
+Base 99s
+Base Skills
Based
+Based Evan
+Based Kyoko
+Based Miyagi
BasedGob
BasedHeru
BasedScape
+Basement Dad
+Baseplate86
Bash
BashinBosses
BashiraTHC
+Bashram2
Bashx
Basic
+Basic Drop
BasicBilbo
BasicIronman
Basil
+Basil Hiiri
Basileia
+Basilikos12
Baska
+Baskervilla
Basket
Basketballer
Baskie
Baskrans
+Basmah
+Bassaidai2
+Bassey
+Basshu Fon
Basshunter
Bassilliaux
Basstomouth
@@ -2258,43 +4804,71 @@ BastasRemmen
Bastermate
Bastiao
Bastidaz
+Bastin101
Baszist
+Bat Fastard
+Bat Kills
Bat418
+BatChatillon
BatFat
Batbot101
Bateau
BatedUrGonna
Batesanator
Batgirl
-BathSalts420
+Batin
+Batistaisraw
Batleris
Batmain
+Batmam
Batman
Batmanlul
Bats
BatsVsChina
Batsborkair
Batsmattie
+BattDoode
Batter
+Batter Cake
+Battle Jack
Battousai
+Battousai09
+Batu
+Batussy
+Batzch
Batzz
Bauchop
+Baulsacky
Bautista I
+Bav
Bavaria
+Bawdlands
Bawjaws
Bawn
+Bawwz DeadAf
Bawz
+Bax2
+Baxi 247
Baxxis
+Bay
+BaySeoul
BayaniSenpai
Bayern_pvm1
Bayes
Baykr
+Bayle Domon
Bayleef180
Baylin
Baylon
+Baylon rs
BaylyBoyBro
Bayman
+Bayou Bengal
+Bayside
+Baza
+Baza NZ
Bazilijus
+Bazimga
Bazmobile
Bazoo415
Bazoomaster
@@ -2303,45 +4877,96 @@ Bazukashrimp
Bazz0r
Bazzak
BazzleB
+BazzleBTW
Bazzooi
BbDontHurtMe
+Bbase12
Bbaws
Bboygainz
+Bbubbsy
+BcShane
Bcgod
+BchImaBus
+BckOFFRTRD
BckScratcher
+Bcowzy
Bdawg
+Bdub187
+Be Aware
+Be Rad
+Be Strong
+Be X Unlucky
+Be as t
+BeEzyMan2
BeFawn
BeThankfulll
BeTy
BeaTee
Beaan
+Beak er
+Beaken
Beaky
Beamesy77
+Beaming
Beamo
+Beams btw
+Bean
+Bean Bunn
+Bean Slapper
+Beanieus
Beanis
Beanisdead
BeanozZ
+Beanpot
Beans1991
Bear
+Bear Downn
+Bear Finale
+Bear IV
+Bear Jake
Bear Savage
+Bear W Scarf
Bear0nBeer
Bear32
+BearByBlood
BearByte
+BearDown80
+BearGrillz
BearImmunity
Bearac
+Beardboy
Bearded
+Bearded Hick
+BeardedGummy
+Beardedwick
+Beardilizer
+Bearing Down
+Bearly Iron
+Bearopenart
+Bearrito42
BearsBeetsBG
Bearsarefrie
Bearsfan5455
Bearshot
+Bearsome
BearsyXL
+Beary
Beast
+Beast Guard
+Beast Things
Beast1Range1
+Beasted Main
Beastgriff
+BeastieBoy31
Beastied
+Beastley
BeastlyGinge
+BeastlyMuff
Beastman642
+BeastyY69
Beat
+Beat Tit
+Beat my Wifi
BeatboxRS
Beatdown115
BeaterGod
@@ -2349,34 +4974,73 @@ BeatmyJonson
Beatrix
Beatz
Beau
+Beau Ryan
Beau1o
Beaukaki
+Beautifull
Beaver
+Beaver Booty
+BeaverSweat
+Beaverr
+Beavers79
+Beavis 420
Beavis825
Bebbie
Bebe
BebeAtron
Bebexx
Bebo294
+BeboKAhnung
Beckerr
+Beckovas
Beckyboo308
+Beckymikyu
Become
+Becoming
Becton22
+Bed
+BedByDaylite
+BedForSale
+Bedanc
Bedeh
+Beden
Bedevil
Bedni1
+BedtimeHERO
+Bedwoods
+Bee Butts
+Bee Keep
+BeebeM
Beef
+Beef Mince
+Beef Squirt
+BeefBottom
Beefense
Beefs
Beefy
+Beefy Potato
+Beefy Treat
+Beefycopter
Beeg
+Beeg splat
+BeegeKhaos
Beeghs
+Beeks
Beeky
Beeline
Beelzebubba
Beelzebubby5
Been
+Been Mobile
+Been Poor
+Beepern
Beer
+Beer Diet
+Beer Is Cool
+Beer Pong
+Beer Tankard
+Beer gut Jim
+Beer n Blow
BeerIsGood
Beerchamp1
Beerfest
@@ -2384,400 +5048,886 @@ Beerhana
Beershits
Beersmack
Beerzinnss
+Bees169
Beest
Beestig
Beeswakka
BeetchAustin
BeetchJeemmy
Beetle
+Beetus93
+BeeyondBeef
BefJekyll
Befkeuning
+Before Snow
BeforeDeth
+Befsnor Ben
+Begani
+Begave
+Beget
Begin
Beginning
Beginnings
+Beh
+Behaarde lul
Behemoth
Behhnchod
Beholder24
+Beibs
Beidou
+Beige Carpet
+Beikengaut
+Beikenost
BeirH
Beirreee
+Beirut
BekanTering
+Bekfist
+Bekk
Bekkie
Bekske
Bekt
Bekutma
+Bel Lando
+Belaa
+Belamylinds
Beleid
Belenthir
Belgarathion
BelgianBeast
Belgiium
Belgique
+Beliefofmine
Belindaa
BellWoods
Bellatrix
+BelleBeans
+Bellebutties
Bellerin
Bellfontaine
Bellicus
BellsOfWar
Bellum50
BellyEscobar
+Bellzbellz
+Belorca
Beloved
BelowAvrge
+BelowMe
+Belsassar
Belsey
Belsfyre
Belsyn
+Belt
+Belt vs Kids
+Beluge
Belzebu
Belzeddarr
+Bemerson
Bemke
Bempii
Bempire
+Ben Babeslay
+Ben Behling
+Ben Bekkuman
+Ben C H
+Ben Jay
+Ben Jones
+Ben Kingsley
+Ben Manolo
+Ben Salden
Ben Standish
+Ben di
+Ben1kzeker
+BenDjammin
BenDover321
+BenKuro
+BenLevensMoe
+BenQ Smasher
BenRobbo06
BenShapirOwO
BenWithJam
Benarends
+Benbooo
Benching
+BendOverBabe
Bendak
+Bendeguz
BenderBuilda
Bendigo
+Bendigo Man
Bendo
+Bendos Hilt
+Bendude
+Bendyruler
Bendzo
Benedict
Beneee
Benefitz
+Beneh
Benelovent
+BengtBreak
+Bengtsson
Beni
+Beni Siitoin
+Benifax
+Benifird
+Benis Hammer
BenisTechTip
+Benisbringer
+Benja1666
Benji
+Benji Stax
+Benji189
Benjiii
Benllech
Benman
Benmiester44
Benneta
+Benni234
Benni2345
Bennie
+Bennie Lam
Bennis
Bennny0_o
+Benny Sins
+Benny Stacks
+Benny Yuh
+Benny p mage
Benny1175
BennyBeeee
+BennyQ
Bennybooom
Bennyz
Benocotch
+Benoid
+Benononono
Benoragon
+Benoxo
Benqqu
Benquad
Bens
+BensBent
+Bensmom7
+Bensos
Benstjohn
Bentso
Benvil
Benyy
+Benza
Benzema1
Benzine
+Benzoed
+Benzylll
Benzz
+Beopia
+Beozqt
+BeppaPig
BeppsaN
+Ber
Berada
Beralf
Bercuckle
Berd
+BerettaM9A4
+Berettapwnge
BergJr
+Bergheimen
Bergkamp
+Bergr
Berk
Berkan
Berkis
Berkven
+Bermaitha
Bermbommert
Bernache
+Bernie Mac
+Berno
+BernyMadoff
+Beroepskech
+Berraok
BerrieFan
Berrr
Berry
+Berry Carry
+Berry Soap
+BerryBus
BerryInBooty
Berrys
Berrzerk
Bersbillus
+Berserk FTW
+Bert Curtis
+Bert NUFC
+BertMacklin
+Berta B0y
Bertie
Bertje
Bertow
+BerttDog
Bervoets
+Berzerking
Berzurkah
+Bes
+Besin
+Besseggen
+BesselJ
Bessone
Best
+Best Kio1
+Best Lolz
+Best Murmeli
+Best Nher yh
+Best Realtor
+Best Whilbur
+BestCat
BestDIzzyNA
+BestFioraNA
+BestHouse
+BestInSloth
BestJester
BestMommyGF
BestSenpai
+BestVersion
+Bestia Solus
Besties
+Bestkilnot
Bestoladec
Besty
+Besynderligt
+BethMeow
+Bethany
+Bethell
Bethevoid
Bethrezen
+Betray
Betta1009
BetterCookie
+BettsISale1
Bettuh
+BeugLizard
Beuglord
Beugsmate
+BeunDeHaas
Beunhaas053
Bevaun
Bevelle
+Bever Mama
BeverGT
+BeverlyPils
Bevers
+Beverst
Bevruchter
Bevvy
Bewaker
+Bewq
Beyond
+Beyond Max
+Beyond Mind
+BeyondKenzie
+Beyond_blitz
Beyta
Bezbi
+Bezdzwieczny
Bezeo
+BezosTezos
+Bferg3
Bfh1master
Bfood
BgoinHAM
+Bhaals Rage
Bhakli
Bhalobashi
Bhangre
Bhench0d
+Bhillup
Bhongk
Bhoy
Bhrad
+Bht
Bhuggy
+Bi
BiBi
+BiGtOkEsBrUh
BiZaAr3
BiZaM
BiZoNaDe
+BiasVariance
Bibbit7
BibleThump
BibleTrump
+Bic
+Biccins
+Bice Bucket
+Bicep Peak
+Bicep Smooch
+Biceps Btw
+Bicho
BichoFeote
Bichslap
+BickyChicken
Bictim
+Bid Whist
+BidaFire
Biddah
+Biddiss
Biden
+Bidens Slow
Bidensity
+Bideo_Gabes
BieBras
+Biebje
Biebop
Bierliebe
BierryTaudet
-Bierscape07
+Bierscape09
Biffo89
Biffsy
+Bifking
Bifta89
+Big Armpit
Big Arms Ben
+Big Ass Turd
+Big Baby Boy
+Big Bearius
+Big Beets
+Big Bennys
Big Binotte
+Big Boi Ian
+Big Boone
+Big Brane
+Big Bruno
+Big Buffalo
+Big Buzz OG
+Big Bwana
+Big C
+Big C A S H
+Big Calquat
+Big Cat Fan
+Big Chest
+Big Chugger
+Big Crafter2
+Big Cypress
+Big D Brasco
+Big Dav II
+Big Delts
+Big Discus
+Big Dog Sly
+Big Donads
+Big Dumb Zac
+Big Eazy
+Big Erecshun
+Big Genitals
+Big Geordie
+Big Gol
+Big Gorg
Big Grorb
+Big Guy Hax
+Big Hingus
+Big Hoss Lad
+Big Jake
+Big Jezza
+Big Jim Hun
+Big Johnnyy
+Big Josher
+Big Krukke
+Big Latvian
+Big Lesbo
+Big Lew
+Big Mag
+Big Meth
Big Mike
+Big Mo
+Big Mooch
+Big N LilCox
+Big O Wiener
+Big Ole
+Big Ole Dog
+Big Pancaker
+Big Poopa
+Big Rek
+Big Sage
+Big Scoops
+Big Seaweed
+Big Shaq
+Big Slick
+Big Slurpp
+Big Smi
+Big Stivz
+Big Suze
+Big T
+Big Tanz
+Big Tripod
+Big Zaff
+Big mfkn Obi
+Big ol Bag
+Big rOve
Big0neNC
+BigBad Matt
BigBadPurps
BigBaller
BigBallsagna
BigBankTake
+BigBantonio
BigBaseNZ
+BigBear675
BigBenPies
+BigBinkus
BigBlackCats
+BigBlueCox
+BigBoiiiBuzz
+BigBoyBorri
+BigBrad Wolf
BigBrownMan
+BigBtheOG
BigBug
+BigBulli
BigBustUp
BigBwanaCox
+BigChinger
+BigChuggen
+BigChung99
+BigCitta
BigCoatBrum
+BigCruch
+BigD Randy
+BigDSurgery
BigDaddyBomb
BigDaddyEddy
+BigDaddyMeme
BigDaddyNate
BigDaddyT85
+BigDick Q
+BigDillz
+BigDonKeedic
BigDrizzleRS
BigDug4U
BigEar
+BigEgoSmolPP
+BigGreenEgg
BigGuy
+BigHatxLogan
+BigHeadPG
+BigHootyBoot
+BigIronPanda
+BigKusa
BigLemonTree
+BigLez71
+BigLiftsDad
+BigLoadOfOof
+BigLovve
+BigLuke69420
+BigMainKilla
BigMav0416
BigMilkerz
BigMo
+BigNerdd
BigPapaDank
+BigPapaya
BigPepega
+BigQuadric3p
+BigRaph
+BigRat17
BigRedDog
+BigRedRodney
+BigRickusTra
BigRodger
+BigSack2
+BigSammyD
BigSappas
+BigShot BTW
BigSikTv
BigSpook
BigTastyy
BigTimmy
+BigUp01
BigX
BigYitties
+BigZikEnergy
+Big_B0g
+Big_Beard
Bigballsac
Bigbenslayer
Bigborncrazy
+Bigboy0007
+Bigboytec
Bigcros
Bigdaddy
-BigdickusTra
Bigdrongo
+Bigex
Bigg
+BiggSackss
+Bigga Boi
+BiggerNDumbr
Biggie
+BiggieChonks
+BiggieMcLarg
+Biggieeeeeee
+Biggiemollz
+Biggies Maul
+Biggums
+Biggumz
+Biggus
+BiggusSnails
Biggy
BiggySauce
Bighomiedebo
+Bigjwood
+Biglex GIM
Bigmet
+Bignoob80
+BignoseChris
Bigred8616
Bigrigcoin
Bigripper420
Bigrobowskki
+Bigtor
Bigwildo010
Bigwilly597
+BigxFisch
Bigz
+Biic
Biig
+Biig Boobies
BiigHatLogan
+Biig_Boi
+Biiggg B
Biitter
+BijnaMax
+Bijstandswet
Bijuzin
+Biked
Biku
Bikura
+Bil28
+Bilal Awan
+Bilbalbek
Bilbo
+Bilbo Dabins
+Bilbo55510
Bilboro
Bilby
Bilde
Bilie
+Bilk Mowl
+Bilkos_Ices
Bill
+Bill Niah
+Bill Smiff
+Bill Ward
+Bill Wigly
Billa
Billest
+Billfish1
Billgodyz
+Billie Boi
+Billie Gin
Billiee
Billington
Billjetti
Billogbfd
BillowyMilk
+Bills Late
+Bills PC
BillsITIafia
Billy
+Billy Blunts
+Billy Buchu
+Billy H-M
+Billy Joe77
+Billy Plates
+Billy Tonka
BillyBob546
+BillyBonka
+BillyMav
BillyNotRlly
BillyRay
Billyn
+Billyreino
+Billz xd
BillzNSkillz
+Bily Mavrick
Bilybil
+Bimmers
Bingerss
Bingo
+Bingo Carla
BingoBango
Bingus
+Bingy lol
Binki2021
+Binkleborp
+BinksBrew
+Binky Stinky
Binneli
Binny
+Bins78
+Binv
+Bio s
BioCosmic
BioFrank
+BioMasterZap
Bioavailable
Bioch
+BiofieldMage
Biohazard541
+Biomutant
+Bionic Muse
BionicKing
+BionicalWolf
Bionicle1395
Bionycle
+Biosafety
+Bioterrorism
Bip0lar
BipedalBear
Bird
+Bird Ibex
+Bird Tickler
BirdFactsr
+BirdFarmRun
Birdger
+Birdie Train
+Birdie713
+Birdies
+Birdman
+Birdman593
BirdmanZ17
+Birdmanjr07
Birdnesto
Birds
+BirdsNotRea1
+BirdyguyFe
Birelis
+Birjeldadge
Birk
+Birkenau88
+Birkenstock
Birkenstocks
+BiroGanda
Birth
+Birthfather
+Bis
+Biscape
Bisccy
+Biscuit
+Biscuit Cats
Biscuitnipz
+Bishbasher
+Bishbosch
Bisher
+Bishop Shane
+Biskante
+BiskyRizness
Bison
Bisq
Bisse
Bisun
+Bit Bald
BitScottish
+Bitcoin Z
Bitdefender1
Bitesized
Bitey
Bithc
Bits
+Bits Init
+Bitsy Bee
Bitte
+Bitterkoekje
+Bittles
+Bitttimon
+Bittykat
+Bitwalker
+Bitza
BixT
+Bizanovic
+Bizarre Hobo
+Bizk
Bizness
+Bizotic
+Bizoune
+Bizwald
Bj0rnsson
Bjarne
+Bjarngrim
+Bjergstroem
+Bjonny
+Bjorhn
Bjorn
+Bjorn XXVI
+Bk
BkGime
Bkedlikelays
+Bkeezy
+Bken
Bkguytd6
Bkostas
Bl0od
+Bl0od Legion
+Bl0odFenix
+BlG FROSTY
+BlG MOBY
+BlG POO
+BlG WOODY
+BlNA
+BlSHNU
BlZZ
Blaaaaake
Blaack
+Blablibla101
Blac
+Blaccy1
Black
+Black Atlass
+Black Bears
+Black Bro
+Black Caucus
+Black Fuel
+Black Hole
+Black Hunlef
+Black R X
+Black Rifle
+Black Upa
+Black User
+Black lv
+BlackAliss
BlackAwaken
+BlackCawfee
BlackCloud
BlackHawkEye
+BlackNuget
BlackPyramid
BlackTurtles
BlackWidowM
+Blacka
+Blackasses3
Blackbandits
Blackbelt
Blackberry
+BlackdRedHed
Blackdahlia1
+Blacked Out
Blackeye603
+Blackking435
BlacklMamba
Blacklmp
Blacknight
+Blackout20XX
+Blackpak
Blackplosive
Blacksamuri2
+Blackstar755
Blacktide1
Bladbro
BladeTongue
+BladeWizz24
+BladeXFury
+Bladeboy6
Blademail
+Bladenight69
+BladesEspada
Bladypus
Blaest
+Blaf
+Blag0
Blainyckz
BlairChan
+Blairzy
Blaise
+Blaise Green
+Blaise22689
BlaiseDebest
Blak
+Blak Deshi
+Blak Hawk987
BlakHammah
BlakTooth
Blakaraknid
Blakdragon
Blake
+Blake Bar
+BlakeOCE
Blakeboi
Blakeeeeee
Blakely
+Blakerke
+Blakey3
Blakk
Blakkeyy
Blakpn0y
Blame
+Blame Blitz
+Blame Dave
Blamed
+Blamer
Blamp
+Blank Face
+BlankTree
+Blanka1990
Blanke
+Blankfillin
+Blanks
+Blap
Blapa
+BlaqBeard
Blard
+Blare
Blaser
Blasphemy
Blast
+Blast Bepe
+Blastoise
Blastrune995
Blaszczy16
Blattermans
+Blauwe Brief
Blaze
+Blaze Hooker
+Blaze King
+BlazeBaked
BlazeItDad
+BlazeThatSht
BlazeWhale
Blazed
+Blazed GIM
BlazedRanarr
+Blazed_Chip
+Blazer Kdog
+Blazer-31
+BlazerSven
+Blazikenite
+Blazin
Blazinbiscut
-BlazingOSRS
+BlazingGood
BlazingREAPZ
BlazingSid
Blck
+Bleak Days
Bleak House
Bleakair
Bleasi
BledReborn
Bleekybleeky
+BleepMyBloop
Blehalol
Bleidas
+Bleiesnus
Bleifuss
+Bleken88
+BlendedWhale
Blendon
BlessOneTime
BlessTime
+Blessdd
Blessed
+Blessed IM
+Blessed N L
+Blessedcrypt
Blessin
+Blessnt
+Bleuski
Blevins33
Blew
Bleyage
@@ -2787,72 +5937,155 @@ Blije
Blimey
Blimpie33
Blimpysaur
+Blind Yeti
+Blind1
BlindByron
BlindSamael
Blindblinker
+Blindeyy
Blindspott
+Blindwizard
Blingblin255
Blinger
Blink
+Blinx337
+Blioneer
+BlissWarrior
BlissfulDrgn
BlissfulIron
Blisss
+Blista
Blistered
Blithering
+BlitzJuuls
Blitze
BlitzedBoss
Blixtslag
+BlizSukzNuts
BlizZinski
+Blizz of Ozz
+Blizzard343
Blizzartd
+Blk Kush
Blkbeard22
Blkup
Bloat
Bloated
+Bloats hard
Blob
Blobman1
Block
+Block XD
Blockhead
+Blodmire
+Blodreiina
+Blodreina 1
+Blody Mess 2
+Bloedkuul
+Bloeps
+Blogmas
+Bloke Kisser
+Blom
Blombo
Blommer1
Blonde
+Blonde Don
Blonket
+Bloo2
Blood
+Blood Face09
+Blood Lotion
+Blood Man478
+Blood Moor
+Blood Rift
+Blood Spawn
+Blood Spawns
+Blood Turd
+Blood Vials
+Blood Voss
+Blood Wyrm
+Blood0fhell
Blood4Peace
BloodWarzz
Bloodfan0
Bloodgeon
Bloodiedawn
+Bloodlet
+Bloodmaged
+Bloodrave182
Bloodraven
+Bloodredmano
Bloodshade
+Bloodsheds
Bloodsportt
+Bloody Scarf
+BloodyMurder
+Bloodyengine
+Bloodyrootz
Bloodytem
BloomBouquet
Blooms
+Bloons TD
+Blops Far
+Blorgons
+Blosh
Blote
Blouch
+Blow Off
+BlowBiden
Blowd
+Blowin Ohs
+BlowingPipe
Blown
BlownbyTwins
+Blowup Dolz
BlowyBarry
+Blu Ocean
+Blu3Mink96
+Blu3print
Blu3s
BluAnimal
+BluNightfall
BluSPANKSyou
BluSlidePark
+Blubberboy
BludMaul
+Bludclat
Bludgeoner0
+Bludime504
Blue
+Blue 420
+Blue Atmos
+Blue Fox 64
+Blue Inn
+Blue Jay
+Blue Legend
+Blue Limes
+Blue Nahuatl
+Blue Osiris1
+Blue Oyster
+Blue Summer
+Blue Trex
+Blue Winds
+Blue Ziv
+Blue305
BlueBoat
+BlueBorough
BlueCashews
BlueDHYDshld
BlueFrogsOP
+BlueGwapes
BlueHawkie
+BlueHornet
BlueJob
BlueLegendzz
BlueLemon66
BlueLine
BlueLite
+BlueMandril
BlueMeanEyes
BlueMuff1n
+BlueOverkill
BlueRanger
BlueRose91
BlueTyphoon
@@ -2861,61 +6094,108 @@ Bluebears
Bluebury
Bluecaps09
Blued
+Blueface G
Bluefir
Blueluna
Bluemoon97
Blueprint19
Blueqerry
Bluerope14
+Blues 1 Clue
Bluescreen
+Blueshores
+Bluestopher
Bluetiger919
Bluewarthog
+Bluexy
+Blueyy04
Bluez
Bluezaros
Bluff
Blufire
+Blumkohl
+Blump King
Blunt
+BluntBird
+BluntSurgeon
BluntTaster
Bluntmore
Bluntobject
Bluntology
Blunts
+Blunty Pyro
BluntzyMcGee
+BlurOfLight
+Blurr62
Blurred
+Blurtt
Blusaunders
+Blut Arteiri
Bluternite
+Bluutooth
+BluzCluzz
+Blxke
Blyat
Blyckertski
+Blyocr
+Blze
Bmart
Bmaylor
+Bmeg
Bmoot
+BmwNerd
+BnB
Bnaar
+Bo Ed
+Bo Selecta
+Bo0nies
+BoBgss126
+BoBoTaeTo
Boa92
Boabs
Boagrious
Boang
Boas
+Boater lad
+Boats N Hoos
+Bob Blinger
+Bob Burglar
+Bob Kelso
+Bob Lebowski
+Bob Marley
+Bob Shermon
+Bob Violet
Bob11790
Bob19922
Bob44th
+BobBojangles
+BobCatMilk
BobGuenille
BobNegao
BobRossDied
BobTheDaddy
BobaNeZmogus
Bobakadush
+BobbaStanley
Bobbanxd
Bobbiie
Bobby
Bobby Brawl
+Bobby JoJo
+Bobby Lash7
BobbyBigLips
+BobbyBonk
+BobbyShurda
BobbySmooth
Bobbyccf
-Bobbydrake07
+Bobbydrake09
+Bobbysweggg
BobbyyHill
Bobi
Bobicles2
Bobidabob
+Bobite92
+Bobo Bagins
Bobrobber
Bobrusu
Bobs
@@ -2923,45 +6203,82 @@ Bobsaytoad
Bobtunafish
Bobvill
Boca
+Boca Raton
+Bocaj
+Boccle
Bockovie
+BockyOG
Bodaajamies
Bodacious
Boddy
+Bodhy
BodisDelotis
Bodjery
Bodlamadrid
Body
+Body Kit
+BodyRune
+Bodyart
+Bodybuilding
Bodyguerdson
+Boe f
Boed
Boeing
Boeing MAX
Boekanier
+Boemsjaka
Boer
+Boer Salad
+BoerJohannes
Boerboel
+Bofad Esnuts
+Bofas
Boff
+Bog Jr
BogDomen
+Bogalog
Bogart
+Bogby
Bogchamp
+Bogged Dacks
+Boggmonster
+Boggsy III
Bogi153
Boginskaya
Bogmellon
+Bogusbart
+Bohachii
Boham
Bohejmen
Bohn
BohneSaw
+BohnerSoup
BoilerMakerr
Boints
+Boise Bronco
+Bojaroff
+BokOrmen
+Bokbok9
Bokeva
Bokje1
Boko
BolaRobin
Bold
+Bold Smut
+BoldPelipper
BoldandBrash
BoldupG
Bolibomba
BolleBenny
+Bollieflex
+Bologang
+BolsaDeCoco
+Bolsta
+Boltagon
+BoltonRamsay
Boltzzzzz
Bomb
+Bomb Squad
Bombergray
Bomboy
Bombu
@@ -2969,82 +6286,171 @@ Bomer
Bommerche
Bommijn
Bompa
+Bompanero
+Bompton
Bomtastic
+Bon Pa Tin
+Bon fee
BonQong
Bonar
+Bonar Slayer
Bond
-Bond07
+Bond Digger
+Bond Huntin
+Bond09
+Bond4MyIron
+BondBought
BondedLiam
+Bondegang
Bonden
+Bondi altti
+Bondify
Bondkyle
+Bondoos
Bonduwel
Bondz
+Bone Hawk
+Bone Man
+Bone Medic
+Bone Thugsz
Bone Ur Hole
+BoneSurgeon
Bonecrushing
Bonedork
Bonehead
Bonen2
+BonerMachine
Bones2Peach
BonesNAltars
-Bong
-BongClowd
-BongJuice
-BongRat420
-BongSong
+Bonez III
+Bonfire1
+Bonfire237
+Bong Lenis
+Bong Quixote
+Bong Squats
+BongAppetite
+BongSec
+BongTokez
+BongZiller
+Bonglefin
+Bongletopper
+Bonglewongle
+BongoBasse78
BongoRider
-Bongsnboobs
+Bongobodil
+Bongotree
+Bonh
+Bonjwa1
+Bonk Weekly
Bonkers517
+Bonkeykong
Bonnaroovian
BonnieTHICCC
Bonnyjoy1
+Bonnyyyyy
Bonus
Bony
+Boo Duh
Boo5tn
+BooBaker
+Boob
+Boob Dragon
+Boob Slip
+Boob zilla
+Boobini
Booblee
+Boobs Mom
BoobyHill
+Booca
+Booduh
+Booffee
+Boofqueefius
Booger
+Booger Ballz
BoogerSnacks
+Boogeyman
Boogie
+Boogie339
+BoogieCorgi
Boogieman
+BoogurBoy
Booiesblazin
Boojwazee
+Book
+Book of Sand
+Bookie Killa
Bookless
+Booksmart
BooleanSpl1t
BoolinScape
Booll05
Booloo
+BoomBangPow8
+BoomFire69
BoomFloof
+BoomMatt
Boomdead123
+Boomerclicks
+Boomfire2
Boomfire9
+Boomhakik
+Boomjuice
Boomstick08
Boondow
+Booney Tunes
Boookuh
+BoopBeepBeep
Booped
+Boopette
Boopie
+Booping
+BooptSnoot
+Boorrie
Boost
Boost736
+Boosted six
+BoostedBruh
Boostedd
Boostergold
Boostify
BoostyBetard
Boot
+Booteelick
Boothanqq
Boothyy
BootieMix
+Booties
Bootihole
Bootlesape
Bootsjunge
Booty
+Booty Dishes
+Booty Kev
+Booty McDab
+Booty Sensei
+BootyCheek
+BootyGod Zac
+BootyNasty
+Bootypixels
Booxia3
+Booyeh
Booze
Boozem
+Boozeobagins
BoozyBirdy
BoozyXander
+Bop
+Bopla
+Bopoman
+Boppin
Bora
Borads
+Boramoss
Borderguard
Boreall
Bored
+Bored Idea
+Bored Ingame
BoredMalamut
Bored_IRon5
BorenZo
@@ -3053,8 +6459,13 @@ Borgiie
Boriix
BoringName
Boris
+Boris King7
+Boris sfisgh
+Borkiin
BorkingCorp
Born
+Born Abroad
+Born to Hodl
BornToTrade
BornTwoGrind
BornofDragon
@@ -3064,205 +6475,421 @@ Boromer23
Borring
Borsten
Borussia
+Bos Marmot
Bos9
+BosNaes
+Bosco Wong
Bosh
Boshby
Bosif
+Bosnald
Bosnian
Bosnier
Boson
Boss
+Boss 4 Pet
+Boss Biz
+Boss Fights
+Boss Mati
+Boss Mei
+Boss Rarkley
+Boss Slayer
Boss4Days
BossMan
BossMann
+BossOnly100
+Bossalinie
Bosses
+Bossin x
Bossk
+BossmanJCriz
Bossnian
BossyEnemy
+Bostin Loyd
+Boston Tony
Bosw8er
+Bot Detected
+Bot Matt
+Bot Owen
+Bot To 2277
+Bot for dayz
+Bot player
BotBooster
Bothbalgone
+Botman1431
Botsii
Botsji
Bottatrice
+Bottlewin
BottnScheise
Bottrill
+Botty
Boub
Bought
+Bought Cape
+Bought Gear
+Boules
Boulli120
Bouncy
+Bound Books
+Bounzy
+Bourbon Time
Bourgeoiis
+Bournos
Boutopia
Bouwkundige
+Bouwmans
Boven
Bovine
+Bovyy
+Bow And K0
Bow1ng
Bow2ThyQueen
+BowIads
Bowbby
Bower
+Bowfa Barry
+Bowfa Dees
Bowin
Bowinkle
+Bowjacked
Bowl
BowlCutMonty
BowlNutta
BowlPacked
+BowlResin
Bowlcut
-BowlzNBongz
+Bowleo
+BowlerBTW
+Bowlhead
Bown
Bownerator
+Bowny20
+BowsB4Hose
Bowse
+Bowser Jr
BowserSideB
Bowwsy
+Box Art
+Box Office
+Box T
+Box Therapy
+Box of Rain
+BoxOGnomes
Boxacle
Boxedup
+Boxer
+Boxic
BoxingNugget
Boxio
Boxse
Boxxie
Boxxy
+Boxy
+Boy Mobile
+Boy Wonder
+Boydem
Boydie4427
+Boyfredaaa
+BoylifeInNZ
Boys
+Boys Broke
+Boys No Good
+BoysAndGirls
+BoysenBill
Boysennn
Boyyo
Boze
+Boze Worm
+Boze mol
BozeOog
+Bozut
+Br ay
+Br ibb
+Br yan
Br00dje
+Br0ox
+Br0wnSpit
Br3ws
+Br4dders
Br4w
Br5andon
BraBraBrad
+Braaamps
+Brabbss
Brad
+Brad RS
+Brad T King
+Brad017
BradIsAChad
BradIsChad
+BradKavanagh
BraddahPoppz
Braddahoodz
+Braddict
Brader
+Bradj_55
+Bradlem95
+Bradleyussy
+Bradlio
Bradolai
+Brads Wrath
+BradyDezNutz
+Bradycus
Bragon
Brah
+Brahamus
Brahu
+Brain Drill
+Brain Kancer
+Brain Stim
+Brain Sucker
Brainiac2018
+BrainrotMaxx
Brainsquash
Braithy
Brajen
Brak
Brakathor
+Brakence
+Brakke Bever
+Brakza
+Brallerx
Bram
+Bram91
BramDx
Brambickle
Brambo100
+Bramboo
+Brammie
+Bramxoo
Bramziee
Bran
+Bran dont
+BranDaMfMan
+Branch
Brand
+BrandNewHere
Branden
+Brandi Rose
Brandir
Brandish
Brando
+Brando n
+Brando23x
Brandog
Brandon
+Brandon 126
+Brandon TJ
Brandon9250
BrandonLarge
Brandonp32
Brandonx188
Branflakez
+Brannttt
+Bransk
+Bransterdamn
Brap
BrasilHemp
+BraskaDad
Brass
+Brassy Bird
BrastaSauce
+BratusB
+BraunBrains
+BravSlav
BraveBear
+Bravenewfy
+Braves
Bravest
Bravo
+Bravo Eagle
+Bravo Lv
+Bravo8 Scav
+Brawl
Brawlers
+BraxMax
+Braxt
+Bray0420
Braydons
Braylor
Brazden
+Brazeheart
Brazzerker
+Brb Delivery
Brblol
+Brdy
Breaches
Bread
+Bread Again
+Bread Dead
+Bread Init
+Breadatour
Breadhats
+Break3r Gabe
Breakchance
Breakdownz
+Breaver
Brech
Bredbeddle
Breeann
Breeno
Breenus
+Breeoh
+Breez
+Breezeeh
Breezy
+Breezy Jai
+Breezy2277
+BreezyMT
Breffest
Breivig
+BrejchaBoris
Brejin
+Brelinguette
Bremen71
+Brendann
Brendvn
+Brenkku
Brenkolovski
+Brennzo
+Brent Ham
Brent4000100
Brentiscoool
+Brenty88
+Breskvice
+Bressjul
Bret
BretHammy24
Breth
+Brett who
+Brett6910
+BrettThePunk
Brettdog
Bretz
+Brevetted
Brew
+Brew Dr
+Brew IPA
+BrewceWillis
Brewdo
+Brewin
BrewskiGod
Brewsley
Brewsy
+Brex
Brexit
Brezell
Brezzy
+Brian Dub
Brian-senpai
+Brian1234146
+Brian4755
Brian8781
Brianmyth
+Brick Brick
Brick49
Brickerino
+Brickhead
+Brickhooouse
Brickhouse
+Bridding
+BridgeFourr
+Bridger
+Brie Larson
+Brieenne
Brief
+Briefly
+Briggs
+Bright Day22
Brightest
+Brightly
+Brihyun
+Briickzz
Briidi
Brin
Brinfish
Bring
Bringtheheat
+Brinkler
Brinkosaurus
Brinsgr
Brisiinger
+Briskly
Brispy
+Brist
Brit
-Britbong
Brite
+British Diet
+British bamf
Britswelll
Brittanys
+Brittanyx
Brlm
BrntSausages
+Bro bee
+BroTwoTher
BroUFailLol
+Broad
Broadboat
+Broadday
Brobasaurus
Brobible
+Brobin
+Brocadillo
Brocaine
+BroccCheddar
BroccoIi
BroceanMan
Brocepticon
Brocknation
+Brocolis
+BroderPierre
Brodie
Brodie410
Brodie827
+Brodisi Jr
+Brododore
+Brodus Clay
Brodymon316
+Broekloos
+Broficiency
+Broft
Brogfrogdog
+Broha
+Brohard
Broiled
+Broken Cpu
+Broken DPS
+Broken Hip
+Broken Top
BrokenBones
Brokenn
+Brokensunset
Brokk
+BrokkMachine
+BroknScrotum
Broko
Brolic
Broly
Bromagic
+Bromatron
Bromerly
+Bromosapienn
+Bromz
+Bron Yr Aur2
Bronkey
Bront
+Bronxie
Bronxy
+Bronze Cow
+Bronze Eel
+Bronze Moose
Bronze5
BronzeDong
BronzeWorthy
+Bronzegnu199
+Bronzr
Bronzy
BrooceWillis
Broodje
@@ -3270,38 +6897,69 @@ Broodoos
Brooke
Brookesbeast
Brookfield
+Brooksher
+Brooksy
BroomInBum
Broomi
Brootloops
+Brootuss
+Broque
Bros
Brosaph
+Brosoul
+Brossy
Brotatochip
+BrothaForest
Brother
BrotherChong
+Brothermon
Brotherr
+Brotholomew
Brown
+Brown692 GIM
+BrownTree
+BrownTree63
Brownecakes
Brownmo
+Brrandon
+Brrd
+Brrinn
+Brrr Zeus
+Brthdy
+Bru now
Bruce
+Bruce Jenr
BruceJennder
BruceNutty
BruceWayme
Bruceh
+BruciebearTV
Bruenor
+Bruffell
+Bruges
Bruh
Bruhh
+BruhhChungus
+Bruhs
Bruiser
Brumaks
Brumle
Brundeen
Brundles
+Brundo
Brungoil
+Bruno p15
Brus
Brutal
Brute
Brutescape
+Bruthar
+Brutified
+Brutzli
Bruut
+Bruva Eww
Brvte
+Brwny-mix
Bryan
BryanFury
Bryannn
@@ -3310,89 +6968,152 @@ Bryce
Brychu
Bryci
Brycikins
+Bryham0
+Brynildsen
+Brynmor
Brys Journey
Bryson
Brysons
Brystreams
Bryu
Bryymstick
+Bsakke
Bsaunders0
+Bse
+Bsgs
Bsketbl
+Bskli
+Bslayer
Bthomson
Btownballer
Btrec
+Btv
+Btw Das
+Btw Guy
+Btw tietjes
+BtwBallo
BtwImJoe
BtwTradeMe
+Bu nny
Bu11itt
+Bu11seye00
BuBszs
+BuDzNBooze
+BuLLeT PVM
Bub Josh
+Bub389
Bubba
+Bubba Gage
+Bubba Watson
Bubbateux
+Bubbba
Bubble
+Bubble Butts
+Bubble Tea65
BubbleBlob
BubbleJuice
BubbleOLuke
Bubbleguy
Bubblenab
BubblesGO
+Bubblies
Bubbo
Bubbz
+Bubgi moment
+Bubo
Bubu
Bubzs
+Bucc ees
+Buccsta
Buchu
+Buchu Bong
+Buchu Daddy
Bucito
Buck
+Buck Oakly
BuckNastyy
Buckeye
-Buckeyeman69
BuckinThanos
+Buckjames
Buckner1
Buckner20
+Bud Right
BudLightBtls
+BudSake
Budabupbup
Buddaball
BuddahCheese
+Buddeke
BuddhaPuck
+Buddweiiser
Buddy
+Buddy Waters
BuddyGuy
+BuddyJ
Budgen
Budget
Budgets
Budjeke
Budpotamous
+Buds Bud
+Budsteel
Budster
Buduhhh
+Budward
Budwise
+Budzinski
Budzliteyear
+Budzyn
Buff
+Buff Bezos
+Buff Mafia
+BuffFridge
Buffel
+Buffel x
Bufubu
+Bug V2
+Bugalado
+Bugaloo
Bugazzi
+BugcatMoo
Bugg
+Bugg XO
+Bugis x
Bugs
+Bugs c
Bugsaur
+Bugyo
Bugyy
+Bugziee
Bugzy
Buhe
Buhnuhnuh
Buhole
Build3d
Built
+Built Dfrnt
+BuiltToSpill
BukesCarKey
Bukkakey
+Bukkele
+Bukmyhr
+BukseFar
Bukt
Bula
+Bulb_a_saur
Bulba
BulbaThor
Buli
Bulk
Bulkier
BulkyTrout46
+Bull Shifter
BullSharkBob
Bulldawg1289
Bulldogs815
Bulldozer297
BulleT1017
+Bullerbyn
Bullet135191
BulletBlitz
Bullschiff
@@ -3401,104 +7122,180 @@ Bulltill
Buloz
Bultac
Bulte
+Bum Hole
+Bum Vinegar
BumPounder
Bumble
+Bumblethumps
Bumjam
+Bummer
+Bummholee
+Bumveld
+BunanaMuffin
+BunanuhBread
Bunceylad
Bundle
+Bundy red
+Bungle Bug
+Bungstar
BungusBoi
+Bunion
Bunjamino
+Bunni Pig
Bunns
+Bunns Dying
Bunny
+Bunny DeIron
+BunnyRabb1t
Bunnytrack
+Bunq
Bunryl
Buns
Buntian
+Bunty Boy
Bunzosteele
+Buorin
+Bup
Buqqi
Bur eye on
+Bur y
+Burak I
Buray
Burec
Burens
+Burensbd
Bureze
Burezz
+Burg de Rott
Burger
+Burgerb0y
Burgerr
+Buri
Burial
Burials
+Buried Mole
Buriial
Burkekey
+Burkkle
Burly
+Burlyy
+Burmecia
Burn
+Burn Herbal
+Burn With Me
+Burn t
BurnMyChi1d
+Burna Boy
Burnardo
Burnari
Burnceller
Burned
BurnedIron
Burners
+Burnetplanet
BurnhamAll12
Burnin
+BurninOctane
BurninStarIV
BurningBrian
+BurningCole
BurningFight
BurningKushh
Burningdavid
Burninghippo
+Burnley
Burns
+Burns Green
Burnstown
Burnt
+Burnt Bonez
+Burnt Bunz
+Burnt Senpai
+Burnt cod
+Burnt lol
BurntT
+Burntmeat
BurnzWhnIPvp
+Burnzaloree
Burnzie
Burp
+Burpenen
Burpsy
Burrkle
Burst
+Bursts
Burwell
Bury
BuryMeDeep
Busch
+Busch Ebba
Buschhhhhhhh
Buschhuscher
+Buschkilla
Bushbaby
Bushido
+Bushido Jack
+BushidoNegro
Bussch
Bussino
+Bussy Bwana
Bust
Bustard
Busted
-BustyBabe420
+Busted Shaft
+BusterBlader
+Busternut
+Bustinbibear
+BustyBarry
+BustySaurus
+Busy Phat
BusyDayToday
BusyRightNow
ButMuhMain
+Buthole
+Butinz
+Butje Kef
Butlergunner
-Butt
-ButtBot69
-ButtChugDoug
-ButtChugFest
-ButtHash
-ButtHole
-ButtSweatt
-Buttbraid
-Buttchin
+Butt Clouds
+Butt King
+Butt Liquor
+Butt Plog
+ButtChugr
+ButtExpert
Butter
+Butter Sock
+ButterSirup
ButterSyrup
Butterbur
Butters
-Butterweed
+Buttgers
Butthxle
-Buttlickeer
ButtnCLICKER
-Buttromper2
+Buttt Mud
Butzaf06
+Buu Blat
+Buuloki
+Buurtpooier
Buus
Buutsika
Buwuchu
Buwuchuu
+Buxi
+Buxom Lady
+Buy Wards
+BuyBitcoin01
+BuyGF_1GP
+Buyer Beware
Buying
+Buying IG GF
+Buying gf 2M
+Buying99rc
BuyingRsGfs
+Buzi Mi Daj
+Buzi Syrom
Buzin
+Buzin Benji
+Buzy
BuzzL1teBeer
BuzzMax
Buzzard
@@ -3507,122 +7304,294 @@ Buzzlghtbeer
Buzzzwin
Bvanana
Bville23
+Bwan a
Bwana
+Bwana Brah
+Bwana Haz
+Bwana I
+Bwana Rat
+Bwana TK
+Bwana Zander
Bwana-senpai
BwanaObama
+BwanaOnDrugs
+Bwanah
Bwananabread
Bwanario
Bwanner
+Bwarath
Bwekfast
Bwekfeest
Bwie
+Bwila
Bwse
+Bxao
Bxdhi
+Bxo
+ByDesign
+Bye Felicia
+Bye Friend
+Byles
Bynguyen
Byrd
+Byrd Gang
+Byrd Park
Byrne
ByteMeM8
Byzo
Bztm
+C 678
+C A M R O N
+C A R S 0 N
+C A R S O N
+C Biologist
+C D C D C D
+C H l S E L
+C H l Z E L
+C HARL IE
+C HlCKEN
+C J 102
+C L A M P
+C L U E 5
+C Maelstrom
+C Mauricio
+C OLLINGWOOD
+C R I X US
+C RoyMustang
+C Rx
+C S
+C Sol
+C Trafalgar
+C W
+C Wills
+C a c h e
+C a le b
+C a r lo
+C a sp er
+C alvarium
+C amel
+C e v
+C eej
+C h a ds
+C hap
+C hristt
+C ip
+C itadel
+C lhris
+C nr
+C ntmaster
+C o r a l
+C oach
+C orgi
+C osmos
+C oty
+C rafter
+C raig
+C raiig
+C rux
+C u r t
+C x L
C-11
+C-53
C-Dom
+C-Stones
+C-bat
+C00RS Light
C00per
+C0Dl
+C0LTE
+C0MBAT 126
+C0RAZON
+C0SA
C0WK
C0XG0BBLER
+C0Xsuka4gp
C0YS
C0c0nUt
+C0dy
+C0dyssey
C0nner
C0wanz
C11 H15 NO2
+C137 Beth
+C18
C18H27NO3
+C204
C2okies
+C3 P0
+C33
C3Pz
+C4 RL
C450
+C4L1BRE
C4RL
C4RNAG3
+C8M
+C9rl
CA5E
CAKESNIFFER
CALL
+CAMBO D N
CAMEL0T
CANNONlNG
+CANT SPEAK 0
CAPITALIST
CAPSLOCK
+CARAPlLS
CARDlFF
CARROLLYZER
+CATS GO NYA
CATsmoothies
+CBC
+CBD Brownie
CBK20
CBMPeterson
CBas
CBomb
+CC 9
+CC HM
CCCCFF
CCCO
CCatt
CChuk
+CConnor
CDKein
+CDR
+CDRMark
+CDawg420
CEClL
+CEL4L
+CEO OF ARK
+CEO of TOB
+CF5
CFoodBisc
CFour
CG MindPr0
+CGA
+CGC Zeus
+CGR
+CGoldy
CH1P
CH3CKMYSW4G
+CH4OS_REIGNS
CHATBN
+CHEEFO
CHIEF
CHIEFWHALE
+CHIEFxKEETH
CHOF28
CHOLEZmusic
CHOPSTlCKS
CHOSENBYNAME
+CHR187IAN
+CHRlS PRATT
+CHRlSDUDE
+CHUCKDABANK
+CHUDZY
CHULIGAN911
+CHURNlN
+CHlC-FlL-A
CHlCKENS
+CHlCKNUGGET
CHlLDS
+CIA GF PsyOp
+CJ McCreery
+CJ2K
+CJB_01
+CJPez
CJlivin11
CJoaboneP
+CK the Wise
+CK2
+CK9
CKSKEE
CKVY171
+CL0wn Inc
CL3O
CLIIllIIllIT
+CMBloodcraft
CMER
CMMCTk
+CMU Chips
CMoneyTwo
CN77
CNC2112
+CNGT
+CO maxplayer
+CO0RS
CO1N
+COKECOKECOKE
COLE
COM3THAZINE
+COM3TS
CONFlDENT
CORONA
CORP
+COTTONPlCK3R
COVID
+COX Kane
+COYM
COYMauves
+CP8
+CPA Scape
+CPR
+CPT Morghun
+CPT-Rock69
+CQJB
+CR1SPY_BAC0N
CR4ZYH34D
+CR7
+CRAI9
CRLmastrFlex
CRSSD
CRTS
CRUSlR
CRY0GENIC
+CRlMP
CRlP
CRlSTO
CRlTIC
CRtallboy
+CS6
+CSG0
+CSchicky
CT42
CTFU
-CUMBANDIT900
+CV90
CVID
+CVTRILLOG
+CYP 3A4
CYP450
+CZHANG
+C_mrade
+Ca 11
+Ca m el
Ca3ino
+CaL4MiiTYxX
CaMOOflaged
+CaPl
Caam
Caater
+Cab Up
+CabbageSeeds
+Cabbi_cs
+Cabdi
Cabela
Cabido
+Cabinetsalt
+Caboose121
Caboucha
Cabouchi
Cachalot
Cache
Cachet
+CacklingMagi
Cacoadragon
Cactus
Cactus9k
+Cactusaak
+Cadallic0
+CadmiumBird
Cadov
Caduzitcho
Cadzie
@@ -3631,143 +7600,290 @@ Caelanity
Caelums013
Caerus
Caesar
+Caesar Pasta
+Cafe Fraiche
+CafeZing
+Caffeine
+Caffeine Use
Caffeiner
+Cages
+Cagrets
Cahors
+Cahsmo
Caide
+Caifan
Caifanes
+Caillou hobo
+Cailthun
Cainie
Cainn
Caio
+Cairn08
Cairo
Caiser
+Caitlin Rice
Cajjj
Cajun
+Cajun Blood
+Cajun Fox
+Cajun Fries
+CajunCrimson
Cake
+Cake qp
CakeBoss1337
+Cakeboy 43
+Cakefound
+Caketins
+Cal Fong
+Cal l u m
+Cal-Mag
+Cal_C
+CalamityD
Calamityy
Calb_Potta
Calbod
Calcab
Calcd
+CalciferGIM
+Calcio
CalculateWhy
Calcusource
+Cald0g
+Caldaris
Caleb
+Caleb o_o
Caleeba
Calf15
Caliace
Calibeafall
Calibrated
+Calibur
CaliburZ
Calico
+Calierazon
+Califaa
+Califauxeous
+Califirona
Calimandro
Calipha
Calipso
+Calist0
Calisterie
+Calivego
Call
+Call Me Milo
+Call me Cham
+Call me m16
+Call0
CallMeCletus
CallMeGeorge
CallMeJAS
CallMeJoey
CallMeKeen
CallMeKeezy
+CallMeLeger
+CallMeNoLuck
CallMeSofD
CallMeStevo
CallMeTipz
+CallMeow
+Call_Me_Arty
+Callaghxn777
+Callboy
Calliburr
+Calliott
Callisto
+Callisto Cub
CallmeZach
Callmekee
+CallumTM
+Calluum
+Calm Chris
CalmCombo
CalmDownSon
CalmYourBits
Calmoran
+Calo3
+Calquat
+CalquatFruit
Calster26
Calu
Calum
Calvi
+Calvi n
Calvin
+Calvin924
Calyxsys
Calzano
Calzone
+CalzonePizza
+Cam Jong-Fe
+Cam Jong-Un
+Cam Rebuild
+CamAlot_iron
CamDeezy
CamLite
+Camakie
Camaniack
+Camargue
+Camb o
Cambeezy
+CamboSliice
Cambridge
+Cambulance
+Camdenan
+Camel Glue
+Camel Neckit
+CamelActive
+Camelm8
+Camerocity
CameronNeal
Camhanaich
+Camil
Camion
Camise
Camm
+Cammo545
Cammy
+Cammy Ded
Camosaur
+CampBingBong
Campbell
Camperfish
CampinOnline
+Campisii
+Campus Crew
Camsdadddy
Camshows
Can Berry
+Can Fe Spoon
+Can U C Me7
+Can it Bozo
+Can0fBeans
CanChem
CanMJ
+CanManCannon
+CanOManBFTM
+CanUGetAway
Canada
CanadaBawd
+CanadaGuuse
+CanadaScape2
CanadasChief
Canadian
+Canadian Bc
+CanadianDevi
CanadianYeti
Canadiehn
Canadiian
+Canan32
+Canberk
+Cancel
Cancelled
+Cancelled It
Cancer7
+Cancerfree24
Cancerios
+Canderos
+Candlebox
Candrok
Candy
CandyFlipin
+CandyKing42
CandyKing420
+CaneCorso
Canear
Canehdiann
Canibalistic
Caniz
Cann
+Cannabinoidz
+Canned Beer
+CannibalGK
Cannibble
CannoliBoi
+Cannolis
Cannondorf
Cannot
+Cannot Login
+Cannrrrr
+Canon Bob
Canook
Canowhoopazz
Canserber0
Cant
+Cant Quit 07
CantCasino
+CantMaxBc69
+CantTalkPerm
CantThink
+CantTradeTho
Canta
Cantaloupe
+Cantclik4sht
Canter
Cantina
+Canting
Cantu
+Canyonranger
CaoFasho
+Caoe
+Cap E Bara
Cap10
+Capalotty
+Cape Fear
+Cape Max
+Cape Seller
CapeScape
+CapeZer0
Caped
Capez
CapiiTano
CapitalGainz
Capitalise
+Capitalist34
+Capn Wahle
CapnCookd
CapnMeliodas
Capniq
+Capnplant
+Capo Yamato
Capone
Capos
+Capotia
Cappe
Cappei
+Cappie Greek
+Capreol
Capriccio
Caprius
Caprix
Capsule
Capt
+Capt Bobette
+Capt Bumi
+Capt Dave
+Capt G
+Capt Halo
+Capt Hootler
+Capt Kenway
+Capt King
+Capt Kumquat
+Capt Murdoc
+Capt Plank
Capt420
CaptHardon
CaptLongJon
+CaptPleb
CaptZilyana
Captain
+Captain Jack
+Captain Lev1
+Captain Tast
+Captain Tec
+Captain Y
+Captain Zoso
+CaptainAlice
CaptainCanto
CaptainCox
CaptainDom
@@ -3775,6 +7891,7 @@ CaptainDredd
CaptainLuker
CaptainOboy
CaptainObvio
+CaptainWalt
Captainshiny
Captainzzz
Captan
@@ -3782,44 +7899,62 @@ Captcha
CaptinA
CaptinKorasi
Captinrandom
+Captiva
Captn
+Captn Bear
+Captn P00F
+Captn Sqirk
CaptnCommand
CaptnMittens
Capu
Capussi
+CapybaraDung
+Car Ram Rod
CarNalgas
CaraDuraMC
Caracal
Carademlof
CaramelSlice
Caratheodory
+Carbo Cat
Carbolic
Carbon
+Carbon K
CarbonCarbon
Carbonist
+Carbos
Carbyne
Carcinoid
Carde
+Carden
CardiacKemba
+Cardinxl1
+CardyZ Main
Care
Carea
Caregiver
Careo
+Caricapaya
Cariej
CarimsEygon
Carino
+CarjUIM
Carjacking
Carked
Carkis
Carkosa
Carl
+Carl Sagan
CarlBarker
CarlDerp
CarlSagan80
Carleton789
Carlin
+Carlingue
+Carlitos
Carlo
CarlosM
+Carlosjavily
Carlrip
Carls453
Carly
@@ -3827,6 +7962,7 @@ Carlyle
Carmillae
Carna
Carnadova
+CarneGrande
Carnie
CarnifexVeil
Carnitas
@@ -3835,94 +7971,188 @@ Carnzlo
Carolan
Carp3di3m13
Carpe
+Carpenters
Carpi
Carr
CarrickDaddy
CarriedBayo
+Carrot s
+CarrotMilker
+Carrs Pasty
+Carrutt
Carry
+Carry Yak
+Carry9otter
Cars
+Cars Suck
Carsillas
Carsten10
+Carterfish
+Cartman
Carton
+Cartzy
+Caru
+Carvdogg17
+Carve
+Caryopsis
+Cas1a
CasZeal
+Casamigos
+Casawn
+Casc
Casca
+Cascola
Casell
+Caseten
CaseyWaff
Cash
+Cash two
Casherbob
Cashewk
+Cashlemke
+Cashs Main
Casino
+Casino Sand
CasinoProblm
Casketball
Casmatos
+Cass Cath
CassTheGod
Cassarole
Cassath
Casserolio
Cassidyy
+Cassie Aram
+Cassim
+Cassirer
Cast
+Cast Rate
+Cast Turbo
Castello
Castilla
Castorly
+Castrophany
Casual
+Casual Man
CasualChris
CasualGrinds
-CasualIron69
CasualPete
CasualStorm
+Casualdkdk
+Casualty
+Casvel
+Casviel
+Cat Man1001
+Cat Nips
+Cat Shaped
+Cat Smuggler
+Cat Snacks
+Cat Soup
+Cat Woman
+Cat got out
+Cat shirt
+CatBoyInHeat
+CatPandas
CatPissRNG
CatSaysMeow
+Cataclysm55
+Catala
Catalepsy
+Catalyticx
Catan
CatchTheDrop
Catchin
+Catchin Pets
Catchlove
Catdog1280
+Catechism
+Cater Champ
+Catfish Rock
Catflap
+Catgirl Cafe
+CatgirlSan
Cath
Catharina
Cathays
Cather
Catherbae
Cathuntdog
+Catman31
Catnip
+Catnip Cutie
Catnor
Catomic123
+Catra Meow
+CatsnCars
+Catsnarterrr
+Catspeak
+CattoKitty3
+CauZ
Cauldrons
Caulf1eld
+CaulkPushUps
+Caustic
Cauterised
Cavaleiro888
Cave
+Cave Closer
+Cave Horror
Cavern
+Cavern Freak
Caves
Cavos
Cavs
Cavsy
+Cawrin
+Cayk
+Cayman 07
Cayrus
+Caza Lowell
+Cazaq2
Cazik
Cazos
Cazum
Cazwise
Cazzakin
Cazzy
+Cba Ofc
+Cba To Carry
+Cba To Share
CbarDaKing
+Cbetrs
+Cbf Playing
Cbot05
Cc17wo
+Ccn
Cd777
Cdale
+Cdoc
+Ceana
+Ceb
Ceber
+Ceceil10
Cecetra
CedIsMySon
+Cedty
+Cee real
+Cee-Jay
+Ceebooty
CeeeHooo
+Ceeege
+Ceejaydjj
+Ceekay
Ceeon
Ceeps
Cefiro
Ceio
CekicGuc
Celach
+Celach 2
Celadus24
Celazer
Celebio
+Celer0
+Celesdel
CelestialSun
Celestive
Celestron
@@ -3930,130 +8160,229 @@ Celhon
Celi0
Celiac
Celikanen
+Celine Dijon
+Cell Saga
+Cell Z Saga
+CellaDwella
Cellectric
Celli
Cellmate
Celms
+Celrisen
CeltBrenny
Celtic
+Celtic Hero
+Celtic555
Celtica
Celyzh
+Cemen Demon
Cengkeh
+Cennolink
Cenpie
+Censor
+Centac
+Centennials
+Center Fit
Centers
+Centershot5
CentraIka
+Central
CentralC
+Centrimag
Centropy
+Ceo of Timbs
+Ceoe
+Cephalopods
Cepp
Ceppt Irn
+Cepxy
Cera
Ceraseus
Cerati
Cerb
+Cerb R Us
Cerberus
Cerberus98
Cercle
Cerea
+CerealGuy
+Cerebro
+Cerenade
CeriGG
+Cerkev
Cermi
Cerpin
+Cerpin Taxt
+Cerpooch
Cersey
+Cersky
+CertIronBoy
+CertifiedPoS
Cervantes18
CesarPalace
Cesema
Cetr
Cets
+Cev
Cevap
Cevarus
Ceverie
Cewl
+Cewl Hwip
+Cexilius
Ceyyl
+Cf b4
Cfretz244
+Ch i
+Ch i c k en
+Ch ief
Ch00bies
Ch0c0tac0
+Ch1cag0 Bear
Ch1mes
+Ch1noLf
+Ch1zz
Ch33sy
Ch3ckMat3
Ch3spy
+ChNPP
+Cha rles
Cha0ticAngel
ChaCha
+ChaCha Benny
ChaSniff
+Chaavez
Chaboud
Chaboul
+Chacaliando
+Chacksen
Chad
+Chad Draven
+Chad Stride
+Chad Vibes
+Chad Wardn
+Chad again
+Chad isAFK
+Chad okeefe
+ChadBehavior
+ChadCor
ChadFratStar
ChadMadLad34
+ChadR3333
Chadacas
+ChadamantBar
Chadders
Chadding
+Chaddyboy
Chadga
+Chadieus
Chadkiller76
ChadronX
+Chaehee
Chael
+Chaendo G
Chaewon
+Chaga Chai
Chain
+Chain Mace
Chainn
Chainsaw
+Chainsaw Guy
Chair
ChairmanMao
+Chaiyse
Chaken
+Chakleton
+Chakra Monk
+Chal1ce
Chalba
+ChaldeanGIM
+Chalgrove
+Chalk Bar
Chalked
Challandria
Challll
Chalva
+Cham Cham
+Chamariapero
ChamberBeast
Champ
+Champ Ryan
+ChampGaryOak
Champagnole
Champiion
+Champion910
Championship
Championz
Chance2Skill
+Chanced
Chancellor
+Chancie
Chandler737
Chando
ChangWu
Change
Changebear
Changes
+ChangrOfName
Chanios
+Channel
+Channon
Chaos
+Chaos River
ChaosBandego
ChaosCleric
+ChaosD00M
+ChaosGIM
+ChaosInbound
ChaosJS
ChaosedElf1
Chaosfish33
Chaoslynx
+Chaotic Cole
ChaoticH0B0
ChaoticMoott
+ChaoticScorp
Chaotixx
Chaottic
Chaoz
Chap Zachman
+Chap em up
Chapels
Chaplain
+Chapo
Chapoo
Chapp
+Chappe
Chappers
Chapter
+Char Zeta
+Char lang
+CharL-32
Character252
Charamio
Charatcur
Charben
Chardonn
ChargeN
+Chargez
Chariot
Chariten
+Charitonin
Charizardz
Charlez
+CharlieFTG
CharlieFine
CharlieOHair
+CharlieScene
CharlieTheIV
CharlieWork
Charlieb9
+CharliesFE
Charloi
Charlotta
Charltonb
+CharlyDarwin
Charm
Charmey
Charmin12
@@ -4061,208 +8390,374 @@ Charmos
Charmoul
Charms
Charmy
+Charon0
Charor
+Charred Yews
Charrysteas
+Chartart
+Chase Goals
+Chase Jones
+Chase Riley
ChaseGuy
ChaseNBake
ChasePP
Chaser959
+Chasing Pets
+ChasingDragz
Chasmata
+Chasse
+Chastised
Chatorbait
Chattanugget
Chatto
+Chatty
ChaukletZ
+Chauman0819
Chauska
Chavi
Chaz
+ChazMac
Chazzdiddy
ChazzedBangr
Chazzy
+Chazzy Paws
+Cheah
+Cheaps
Check
+Check Point
CheckAndMate
CheckRaiseHS
CheckTheWiki
CheckWikiPls
+CheckWikiPlz
+Checkaaa
Checker
+Checkley
Checkmate
CheddLaurent
Chedda
Chee
CheecHnChong
+Cheech Blaze
+Cheeek
Cheeks
Cheeky
+Cheeky Peeky
+Cheeky Prawn
+Cheeky Tom
CheekyBanter
+CheekyCheeto
+CheekyDrop
Cheelee
Cheeno
Cheepnis
Cheermancy
Cheers
Cheese
+Cheese Borgr
+Cheese Slice
+CheeseTax
+Cheesebubby
+Cheeseilton
Cheeseit32
+Cheesteri
Cheeswiz
+CheesySweet
Cheesyrice
Cheetas
CheetoRatFan
+Cheetu
+Cheex
+Cheez-Zits
+Cheeze Caper
+Cheeze Nepz
+CheezeOx
Cheezer2000
Cheezewiz0
Cheezo
+Cheezuz
Cheezyboy25
Chef
Chef Bu Fang
+Chef Malone
+Chef Mihali
+Chef Peter
+Chef Poopy
+Chef Special
ChefBoiRJay
+Cheff Zaya
Cheffrey
Cheffy95
+Chefs
Cheif
Cheimuu
+Cheiquispir
ChelTheNelf
+Chelate_D
+Chello Sexy
Chellyy
+Chelsea Bot
Chelsko
+Chelsy
Chelx
Chemanelo
ChemicalFade
Chemleech
+Chems
+Chen Luu
+Chendlar
+Chenzooo
+Cheomeister
Cherba
Cherisu
Cherno-byl
Chernoblyat
+Chernobyl
+Cherri Bomb
Cherry
+Cherry Field
Cherrydown
CherryxPiex
Chesco
+Cheshmate
Chesscape420
ChessyQ18
Chessyboi
Chestbrah
+Chestbroh
+Chester63
Chesterfi3ld
Chestickles
+Chestnut
Chestodor
Chet
+Chet Baker
+Chet Max
+Chet Ripley
+Chettos
Chevaliers
Chevrolet
Chevron
ChevyB1998
Chew
+Chewbacca No
Chewbakkaah
Chewby
+Chewby Lt
Chewed
Chewitt88
Chewy
Chey
+Chi hiro
+Chi11 Wi11
ChiCity
+ChiIdo
ChiLongQua
+ChiamataM
+Chibattagreg
+Chibber
+Chiboubo
Chicanery
Chiccbacca
ChichaBabby
+Chichhuve
ChickeNOG
Chicken
+Chicken Cat
Chicken996
ChickenRings
Chickenelli
Chickenneth
+Chickens Inc
Chickensnout
Chickerolies
ChickinNugie
+Chico Bean
+Chico Cool5
Chicold
Chicopee
+Chid Heredit
Chie
ChieFbLuntz
Chief
+Chief Checka
+Chief Gordy
+Chief Herres
+Chief Otaku
+Chief Seneca
+Chief Sound
+Chief Toxine
+Chief812
+ChiefBobert
ChiefSmakaHo
Chiefss
ChieftonP
Chiekz
+Chiester 45
Chigginwangs
Chiiiraq
Chika
+ChikenLiro
Chikinbone
Chiksan
+Chikupa
Chilasr
Chilaxinman
Chilcos
+Childhoods
Childish
Chilgamesh
Chili
+Chili Pepper
+Chili Popper
ChiliTurd
Chilibean
ChilidogBank
Chilidoger
+Chilipupper
Chill
+Chill Mate
+Chill Maxxy
+Chill Zege
ChillAssGuy
+ChillHill
+ChillScape
Chillagalet
Chilled
Chilli
+Chilli Ramen
+Chilli dong
+ChilliPesto
+Chilliam
+Chilliburns
Chillmitch
Chillrend
+Chilly
+ChillyPolarB
ChimJongUn
+Chimbilin
Chimera364
Chimire
Chimmy
+Chimneybob
+Chimp10n
+Chimpywimp
ChinStar
China
ChinaInBox17
ChinaSupaman
Chinanumber1
Chinchompin
+Chinchonkerz
Chinchoopa
+Chinegroe
Chingie
+ChingwaChing
+Chinley
Chinolc
+Chinook Bram
+Chinquila
Chintan
+Chio Bu
+Chionophobia
Chip
Chip Black
+Chip Skylark
ChipRain
+Chipotl e
+ChippedHam
ChipperyChip
Chippy
+Chippy btw
+Chipsbok
+Chipsncrackr
Chipster321
Chipz
Chisa
Chisels
+Chiswick
+Chitus
ChivZz
+Chiw
ChixDigTbows
+Chiyo-Father
+Chizle
+Chizzet
Chkn
ChloeTragedy
+Chloemacmate
Chloes
+Chloramine
+Chnce
+ChoNaWiadro
+Chob
Choccazz
Choche
+Choco Flex
+ChocoMeteor
Chocoblow
Chocobo
Chocobos
Chocomalo14
+Chocys
Chodemate
+Chodless
Chofl
Chohanzzz
Choi
Choicess
+Choke Daddy
ChoklatMoose
Chola
Cholesterol
Chom
+Chombe
+ChompVonDile
Chompadile
+Chompakilla
Chompy
+Chompy chick
Chompys
Chon
ChonYee
+ChonerScaper
+Chongsy
+ChonkPenguin
Chonksta
+Chonky Duck
+Choobage
Choobcob
Choochy
Chooks
Choomb
Choooooooch
Chop
+Chop Rips
ChopSthix
Chopemania
Chopin
ChopinDolphy
+Chopinaway
+Choppa
ChoppinWork
Chordes
Choreboy
Chornflakes
Choronzon
Chosen
+Chosh
Chow
Chowfun
+Choybin
Choz
ChozenGod
+Chozen_Azn
Chozo
+Chozo Lite
+Chozo Statue
+Chqse
+Chr Mck
+Chr0nl
Chranic
ChrdyMcDenis
Chri5ty
@@ -4270,11 +8765,21 @@ Chriiiis
Chriisgg
Chrimon
Chris
+Chris F
+Chris JR
+Chris Luxon
+Chris P3
+Chris Slays
+Chris xD
Chris0527
Chris1f
+ChrisCleans
+ChrisFate
ChrisHanson
ChrisKringle
+ChrisOnTilt
ChrisTheUnit
+ChrisThomps
Chrisadk
Chrisha
Chrishowe
@@ -4282,67 +8787,122 @@ Chrisible
Chrisjay
Chriskies
Chrisob
+Chrisog
Chrispy
+Chrispy-sama
Chriss
+ChrissPIBass
Chrissy
+Chrissy Tooh
+Chrissyx
Christ
+Christ an
+ChristFarley
Christiannnn
Christidog
Christlan
+Christmonkee
Christoffer
Christoker
+Christopher
ChristyCloud
+Chrisxmas
Chriz
+Chriz297
Chrizzoz95
Chrl
Chroist
Chromadorr
Chromalox
Chromatica
+Chromi
ChromieOX
Chromixe
Chronepsis
Chroner
Chronic
+Chronic Jack
+ChronicChris
Chronicflame
ChronnerBro
+Chrono Aeon
ChronoKiller
Chronoburn
Chronomancer
Chronorage
Chronos
+Chronosanity
+Chrostopher
+Chrunndle
+Chrusee
+Chrysaorr
Chrysaros
Chryserys
Chub
Chub n Tuck
+Chubafet
Chubby
+Chubby Nomad
+Chubs-Magee
+Chubsy Bubsy
+Chuchin
Chuck
+Chuck Hoots
+Chuck Prime
+Chuck truck
ChuckChan
ChuckDogg
+ChuckMeDaddy
+ChuckNat
ChuckSpedina
ChuckTesta
Chuckerberg
+Chucky
Chuda007
Chug
+Chug Butt
+Chug KoolAid
ChugMyPPot
+Chugg Jugg
Chugga
Chugger
Chugging
+ChumSlugger
+Chuml
+Chump
+Chumpingham
ChunchuloX
+Chunetops
Chung
+Chung us
+Chungus-kun
ChungusClam
Chunk
+ChunkiCinni
+ChunkmanFYB
+Chunksy
+Chunky Nan
+ChunkyGimp
Chunkybudda
+Chupa
Chupperino
+Chur Broo
+ChurchMouse
ChurchTuring
Churchfield
+Churchieboy
+Churd
Churlrunone
+Churnin
Chuzyz
+Chvrles
Chxmpanzee
Chyky
Chyna
+Chyurr
CiSCii
Ciamballer
+Ciaphas Cain
Ciastkowy
Cic321
Cicely
@@ -4351,243 +8911,447 @@ Cici
Cicindelinae
Cider
CieloQueen
+Cigarettez
+Cigblaster
+Cigggy
+Ciggitybutts
Cighan
+Cignii
Ciji
+Cim
Cimakas
Cimelia
+Cinamin
Cincinnatus
Cinderal
Cinderhulker
+Cindirty
+Cinemaxxin
CinmarRS
+Cinoxe
+Cinqoo
Cinquain
+Ciomsa
+Circle Pea
+CircleStrafe
+Circleone58
+Circomcised
+CircularSaw
+Circumflexx
+Circus Clown
Circuz
Ciresidnal
+Cirexi
Cirez
Cirmit
+Cirn0
+Ciroren
+Cirrus Virus
+Cirth
Ciryatur
Cisco
+Cisk
Cisplatin
Ciszak1996
+Cit Funt
Citadel
+Citadel Wyrm
+Citate
CitizenTay
CitrusLemons
+CitrusTree
City
+City Limits
+City Morgue
+City Perks
Civeo
+Civz
+Ciziin
+Cizre
Cizzakillss
+Cjg117
Ckale
+ClGARO
+Cla ws
Claca
Claco
Claiborne
+ClairDeLune
+ClaireFarr0n
Clambam
Clamburglar2
+Clan thmoker
ClanChats
+Clan_Daddy
ClankImaTank
Clannyy
Clanworld
Clap3d
+ClapMaster4K
ClapMeMommy
+ClapYouDown
+Claptrap
ClarKah
Clardy2
Clarisse
+Clark C
+Clarkey BTW
Clarky
+Clasherz
Clasico
Classic
+Classic Max
+ClassicTrap
+ClassicVibes
Classically
Classickxd
Classsikh
ClassyCod
-Claud420
+Claudenstein
Claudiu
Claw
Clawdius
Clawsie
+Clay Nasty
+ClayNugget
Claymor
Claypops
+Clayters
Claytn
Clayton
Clazerbeam
Clean
+Clean Dishes
CleanSleeve
-Cleanbutt13
CleanedBown
Cleann
Cleanst
Clear
+ClearEyes
Clearly
Cleatis
Cleaver
CleaverGreen
Cledos
Clefable
+Clefairy
+Cleg Drop
Cleible
Clem
Clem585
ClemFandango
CleoTehCat
+Cleopatraa
Cleoxc
+Clerric
Clethbery
ClevelandOH
Clevey
ClexOrie
+Cleyra
+Clff
Cliche
Click
+Click Bosses
+Click hero
ClickAndChil
+ClickB8
Clickbait21
+Clicks0nMobs
+Cliffder
Clifferd
+CliffyOG
Cliffyy
ClimateChang
ClimberAZ
+Clingy
+Clinician
+Clinicwater
Clint
Clinttt
Cliphanger1
Clipper
+ClipseZ
Clipz
+Clipz Ahoy
CliveTrotter
+Clix
Cload
+Clockwise
Clod
+Clogged King
+Cloggin
+Clogging
Cloistered
Clone
+Clone bone
ClosedLoop
Closertohell
Closeshots
Closofy
+Clotert
ClottedCream
Cloud
+Cloud Cover
+Cloud Els
+Cloud Griega
+Cloud Nine
+Cloud Stairs
+Cloud Surge
+Cloud y
+Cloud1K
CloudSoftass
CloudT
+Cloudhill
+Cloudi Boi
Cloudjumper9
Clouds
+Clouds_Song
Cloudy
+Cloudy Boi
+Cloudy Sleep
+Cloudy Wolf
CloudyOcean
Cloudys
+Cloudystrife
Clouted
Clovie
Clown
+Clown Around
Clown0164
+Clownfart7
+Clryy
Clss
CltRain
ClubBruggeKV
ClubWolf
Clue
+Clue More
+Clue Relic
+Clue box
+Cluebringer
+Clueful
+CluelessKook
+Cluer
Clues
+Clues Hunter
+Clumpey
Clumsy
Clunker
ClutchFlipsy
Clutchy
+Clyde Cooter
ClydeBarrow
Clynelish
Clyps
+Cmallz02
CmarBeast
Cmndrcool222
+CmokinSrack
Cmon
+CmptrGmr
+Cnbl
+Cnhil
+Cnr
Cnwalker
CoFlack
+CoKMcGay
+CoX Mentor
+CoX ToB ToA
CoXAcc
Co_do_blyat
+Coa
Coach
+Coach Trip
+Coach Wright
+CoachJal
Coachsharter
Coal
+Coal ore
Coan
+Coat Throat
+Cob Web
Cobab
Cobalt
+CobaltKings
CobbMorty
+Cobba
+Cobplacecow
Cobra
+CobraChickn
Cobreu
Cocajumba
Coco
+CocoGetsLoot
+CocoaPuff
+CocosLilSimp
Codai
Code
+Code Mellow
Codemax
Coder00d
Coderedcfc
Coders
Codfish808
Codi
+Codonz
Cody
+Cody Smith
+Cody The IM
+Cody The M
+CodyBeaumont
+Codys Nuts
Codyx
Coeeyyy
Coekebakker
Coenzyme
+Coex
+Cofeni
+Coffaholic
+Coffe277
+Coffee Latte
+Coffee Love
+Coffee Robot
Coffee94
CoffeeAndExp
CoffeeBarrel
CoffeeIsBest
+CoffeeKitty
+CoffeeMafia
CoffeeQ888
CoffeeSlayer
+Coffey
+Coffin Cape
+Cogelon
+Coggle
Cogstyle
+Coheed
Coherent
Coilman
Coin
+CoinToss
+Coinism
Coipo
CokeHogan
CokeShoveler
+Cokebro
+CokedPepsi
Col10
ColVolgin
Cola
+Cola Flesje
+Colaboks
+Colb y
Cold
+Cold Bowl
+Cold Ham
+Cold Hash
+Cold Hemp
+Cold War
Cold1
ColdReign
Coldhound591
Coldpiee
+Coldraze
+Coldrootbeer
Coldshop
Coldstream
+Coldvayne
Coldvepz
+Coldwar
+Coldwoods
Cole10083
+ColeEleven
ColeQuil
+ColeVeryBakd
+ColectionPog
Colee
+Colei
Coleus
Colgate777
Colienergia
Colin
Colins
+Colivanov
+Collan33
CollectMemes
+CollectibIes
CollectionIM
Collectively
+Collector of
Collega
+Collier
Collierss
+Colliflopter
Collin892
CollioKey
+Colom
ColonColitis
Colonel
+Colonello
ColonialDank
Colonne
+Color Climax
ColorBlindHC
ColorMeBlind
+Coloradodo
ColorfulE
Colossus 5
Colossvs
Colt
+Colt trigger
Coltan
+Colthound
+Coltn
Coltrainz1
+Coltsfan1996
Columbot
Columbus175
+ColumbusCrew
+Colxman
Colzy
Coma
Combaed
+Combat Phase
+CombatStudy
Combatking13
Combibo
Comboed
Combos
Come
+Come Loads
ComeAtMeBruh
Comet
Cometz
+Comex
Comfort
Comfortably
Comfy
+Comfy Butt
+Comfy hug
Comic
+Comic Books
ComicalBust
Comicmaster0
+ComingHome
+Comiya
Comlidor
+Comm Zilyana
+Command Grab
+Commander Fh
+Commander Ra
Commas
Commiefornia
Common
+Common Drop
CommonGinger
CommunistMoo
CommunistPig
CompactSugar
Companiion
Companion
+Compd
+Compe
Compgeek
Compilacion
Complain
@@ -4596,356 +9360,707 @@ CompleteAss
CompleteSpud
Completes
Complex
+ComplexTree
+Complextro
Composing
+Composites
Comptons
Compy
+Compyclon
ComradSergey
+Comrade Hanz
+ComradeCas
ComradeCovid
+ComradeMule
+ComradePugs
+Con JD
+Con Safos
+Con ner
ConKlave
ConaAmadora
+Conaizy
+Conal
+Conceited
Concentrates
Conchrist
Concritus
+Conductor4
Cone01
Conedinho
+Confederacy
Conficker
Confidentiel
Confined
Conflamit
+Conflate
+Conflict
Confuze
+Congest
Congetus
+CongiestMunt
Congra
ConicLight
Conjay
+Conjo
Conman
Connavar
+Connee
Conner
+Conner OK
+Connerr
Connerxx
+Connor M
+Connor xv
+Connzy
Conor
+Conor J
+Conor07
Conpetgrebe
Conqo
Conquar
+Conquers
Conquestions
+Conquestti
ConradK
Consan
Considerable
Conskis
+ConstantZero
Constantnips
Constellar
+Constence
Constricted
Constructeur
+Consumption
Contaminate
+Contant Geld
Contendedd
Conterfeit
Contes
+Contrabant
+Contract M
+Contradicted
ControlAll
+Controller
Controlllers
ControneX
Contyy
Conventicle
+Converter
Conway
Conydriving
+Conyon
+Conzila
+Conzine
+Coob Lad
Coogs
Cooj
Cook4everu
Cookdaburra
+Cooked Chook
+Cooked Sinus
Cookedvomit
Cooki3Crumb
CookiMan
Cookie
+Cookie Cake
+Cookie O_o
Cookie904
CookieKid00
+CookieSpec
CookieV3
+Cookiers
+Cookiezi
Cool
+Cool Raccoon
+Cool Yak 496
+CoolAssName
+CoolG WC
+CoolNameBrah
Coolair
Coolavatar1
+Coolboy_cal
Cooldesert2
+Coolest91
CoolestCow
+Coolio
+CoolmanCool
Coolmanafo
+Coolminer685
Coolmintoreo
+Coolmonkey50
+Coolsniper
Coolster
Coolxkidz
Coom
Coomcoomber
Coonrade
Coopa
+CoopaTroopah
Cooper
Cooperative
+Coopr
Coopsz
+Coors Light
+CoorsRight
+Coorsy
Coos
+Cooter
+Cooter Kick
Cootie
Coozn
Copytopy
Coquettish
+CorCam
Corabex
+CoralCastlez
CoralFire
+CoralReef
Corbi
+Corbula
CorbyTheLad
+Cord
Core OS
Coree
+Coreey
+Coreling jr
Corena
Corey
CoreyCarlaw
CoreyNKH
+Coreyeroc
Corgi
+Corgi Puppy
+CorgisIron
Corgo
+Corinnna
Corizz
Corleone
+Corley
Corn
+Corn x Holio
Cornbuddy
+Corndoq
+CorneliusIII
Cornflake
Cornie
Cornilius
Cornish
Cornwall94
Cornwalll
+Corny10k
Cornye
+Corona
+Corona Bat
+Corona Case
Coronad1
Corp
+Corp Scape
+Corp09RS
+CorpLeecher
+CorpRng
+CorpSlapper
CorpToMax
+Corping Bro
Corpletics
-CorposRS
+CorporalWolf
+Correy Lahey
+Correyyy
CorruptDingo
+Cors
Corsa
Corsetti
Cortes
+Cortex
+Cortica
Cortistatin
+Cortsen
+Corun
+Corvanjer
+Corvisquire
Corvitolis
+Corvo
Corvoo
Corvus
+Corvus enca
Corwin
Corydonn
Coryy
Corzappy
+Cos A Nostra
Cosaintus
Coseph
Coshie
Cosmic
+Cosmic Booty
+Cosmic Star
+CosmicPebble
+Cosmiclaws
+Cosmog
Costa
+Costah
+Costcutters
+Costi
CostlyOne
Costom
+Costs
Cotched
Cotopaxi
Cotstini
Cottee
Cotton
+Cottrell
Cotty2Hotty
+Couch Frame
Couchie
+Coughey
+Count 2Three
+Count Cranz
+Count Dookie
CountCuckula
CountDrugula
+Counterspell
+Countries
Country
+Country Song
Countwert
Coupland
Coures
+CourtnyGears
Couscous
Cousin
+Cousins
Couzens90
+Cove
Coventrians
Coventry
Covert
+Covert Blade
Covid
+CovidFree
Covvboyz
+Cow Door Mat
+Cow Foo
+Cow Pet
+Cow Tongue
+Cow Wizard
Cow395
CowChum
+CowMr101
+CowSalsa
+CowVein
Cowa
+Cowabungalow
CowboyK1ller
+CowboyKaroo
+Cowdenbeath
+Cowlories
Cowrat
+Cowsburp
+Cowtongue
CowzGoMoopy
+Cox out boys
+Coxed
+CoyieGod
+Coz
+Cozmic_Raven
Cozy
Cozzza
+Cpl Gaz
+Cpl Seeder
+Cpt Doobie
+Cpt Fail
+Cpt Kokopuff
+Cpt Mellow
+Cpt Mina
+Cpt One Eye
+Cpt Pepe
+Cpt Pop Tart
+Cpt Shanks
+Cpt TRICKS
+Cpt Unclutch
+Cpt Wally
CptAceRimmer
CptKyle
-CptMcDickin
+CptRileyy
CptRom
CptSankara
CptSmackAHo
+CptUzu
Cptainseveto
Cptn
+Cptn Jack
+Cptn Murica
+CptnBuckaroo
+Cpunek
+Cqrl
+Cr o
Cr0be
Cr0codile
Cr0z
Cr4zyLuck
+CrAzY HoRnEt
Crab
+Crab Emoji
+Crab Jazlo
+Crab Leaker
Crabalt
Crabby
Crabcore
Crader
Craft
+Craft Brew
+Craft Guild
+CraftPure
+Crafter Jr
Craftes
Craftsmen
Crafty
+Crafty Man
CraftyRunes
+Cragyl
Craig
+Craig Dawson
+Craighead18
+Craizy 8
Craizy9
+Crakced
+Crammerr
+CranadosX
Cranberry
Crangus
Crank
Cranke
Cranky
+Cranky Cows
+CrankyScream
+Crantock
Crapicorn
+Crapping
+Crappy Luck
CrappyScape
Craqers
Crash
+Crash Crann
+Crash Cymbal
+Crash Site
Crashbot
Crashendo
+Crashticles
+Crateapa
+Crateaqa
+Cratzi Duhuh
Crave
+Crave Me
+Crave to Max
+Craw
+Crawfish
Crawl2033
Crawn
+CrawsBow
CrawsMain
CrayQuaza
Crayons
+Crayy
Crayzee
+Craze NL
+Crazed Man
CrazedAfro
CrazedAgain
+Crazedmonkee
+CraziKido
Crazie
Crazy
+Crazy 859
+Crazy Canada
+Crazy Sam
+Crazy Skull
+Crazy5115
CrazyDieMan
+CrazyDryMan
CrazyDutchy
CrazyIron85
CrazyShrimp
CrazyStuff
Crazya0
+Crazyb00b
Crazyhalo
+Crazys
Crazystevee
Crazytree
Crazzy
+Crazzy Ivan
+Crcsh
CreaMiJeans
Cream
+Cream City
+Cream Guzzle
+Cream21
CreamFreesh
CreamingPies
Creamp
+Creamy Fella
+Creamy Whole
+Creasential
+Creat Steal
Create
CreateNoPain
+Created
+Creating6
Creator1212
Creator409
CreatorJR
+Creaturree
Creazy7
+Crecker Fux
Crecket
Credibility
+Credito
Creel
Creenen
Creepy
Creezy
CreightonRS
+Crem Fraiche
Cremator
Crenoc
Crescent
+Cressp
Cresss
+Creston fftp
Crevis6
CrewDoe
Crewcial
Crickets
+Crickss
Crier
Crimewave
Crimeway1991
Crimin
-CriminaLoser
+Criminaldmge
+Criminalised
Crimp
Crimson
CrimsonCow
CrimsonDDS
+CrimsonJayce
CrimsonLily
CrimsonRogu3
+CrimsonScape
+CrimsonTide
CrimsonU
+CrimsonWic
Crimsoncaim
+Crimz0n
Crinath
+Cringy Grump
+Cringy af
+CrinsomX
+Cripler
Cripple
Crippled
+CrippledKev
Crippler
+Cripty
Cris
Crisby
Crispiessss
Crispy
Crispy Bac0n
+Crispy I
CrispyBreast
Crissco515
CristalAlken
+Cristierra
CriticalX
+Criticizer
+Critter J
Crittx
Crixos
+Crixus x
Criyosphinx
Crna
+Crna Gora
CrnerMcGregr
+Croc
+CrocDanDee 1
Crocalu
+Crocketeere
+CrocoMaster
Cromeh
+Croney
+Cronsus
Cronus
Cronz
+Croogus
+Crooked Path
Crooklyn
+Crooshtwoost
+Crosby Alt
+Crosem
Cross
+Cross Me
Crosswinds
Crouchling
+Croupz
Crow
+Crow Mn
CrowBox
Crown
+CrownConvict
+CrownRoyal84
Crownescent
Crowride1873
+Crowther
Croww
+Croxy
Crozier
CrspyPigeon
Crudelismo
Crudivore
+Crue Xena
Cruel Cub
+Cruel Irony
CruelVictory
+Cruelcanary
Cruixiote
+Crumbledoor
Crumblers
-CrumbzOSRS
+Crumbways
+Crunch7O4
+Crus ty
CrusH-HK
+CrusadeKlr
+Crusadershot
+Crush Depth
Crushed
+Crushed Guam
+Crusher9783
+CrusherWake
Crushersun
Crushertaco
+Crushs noob
+Crust Cape
+Crustie
+CrustyDuckr
CrustyPusy
Crustysnot
Crux
+Crux da King
Crux25
Cruxyy
Cruzty
+Cruzzetbuzz
+Crwfrd
Crxk
Crxsty
+Cry
+Cry0nman
Cry4help
+CryIs0gp
+CrySupply
Cryge
+Crygechamp
Crying
+Crying Cutie
+CrykeeOwO
Crynceps
Cryo
+Cryo Chamber
+Cryogen
Cryogenica
+Cryogenica 2
+Cryogenist
+Cryorah
Crypthead
+CrypticSlays
+Cryptling
Crypto
CryptoKitty
CryptoMellow
+Cryptonomico
Crypzor
+Crysaki
+Crysh
Crystal
Crystian
+Crzy Mia
+Crzyarab
+Csajka
+Csk x
+Cssy
CtCandyRandy
+Ctclaire999
+Cteel
Ctep31
+Cth ulhu
Cthrek
Ctrengereid
Ctrl
+Ctrl F
+CtrlAltDel x
Cuada
+Cuat3
Cuatche
+Cuattr0
+Cub Will
+Cuba Sybre
Cubans
+Cubed
+Cubet
+CuckChuck
+CuckW
+Cuckgex
+Cucumbers
CudddlyBear
+Cujoh
+Culemborg
+Culinair
Culls
-CumLover9000
-CumOnGuys
-Cumbo
-Cummo
-Cummr
-CummyTummy
-Cumsquatch
+Culltist
+Cultured
+Cultzy
+CumHeretic43
+CumanderZili
+Cummy Sigil
+Cumpaska
+Cunnavathing
Cunny
+Cuno
Cuolua
+Cuong
+Cup Noodle
+Cup Of Chai
+Cupaplayer
Cupcakess
Cuppalimmy
+Cuppi
Cups
Cupthebooty
+Curaga
+Curble
+CurdTuttrboi
+CuriPolymath
Curll
+Curls
+Curlx
Curly
CurlyTwist
Currancy
Curry Storm
+Curryleaf
Curse
+Curse on me
Cursed
+Cursed Chump
+Cursed Nm
+Cursed Side
+Cursed ll
+CursedOwned
+CursedRNG oO
Cursedpotato
Curt
+Curtis Jones
Curve
CurvedHorn
CurvyChcken
@@ -4953,32 +10068,64 @@ Curzonn
Cushco
Cushdy
Custom
+Custom Jr
+Custom Sock
+Custom TK
CustomGFX
Cute
+Cute Cat lol
+Cute Paunch
+Cute n o o b
CuteClit
Cutegirluwu
Cuti
+Cuties
+Cuttableedge
+Cutting edge
+Cuttl
+Cuttle
+Cutty Sarks
Cuuap
Cuult
+Cuz im Jones
+Cuz im jesus
+Cuztom
Cuzzo94
+Cuzzu
+Cvanz
Cvbgn
Cvrkster
Cvrsn
Cw90
Cwab
+Cwazza
Cweavy
Cwer
Cwick
Cwioktopus
Cxffee
+Cxld
+Cxnnor
CyaCyaCyaCya
Cyal8rnub
Cyan
+Cyan Ablaze
+Cyasoon
+Cybb
+Cyber Mind
+Cyber n Bug
+Cyber172
+CyberJesus
CyberSlave18
Cybernautron
Cybernike
+Cyberpope
+Cyborg Musk
CyborgHex
+Cybron
Cycling
+Cycling Road
+Cyclogy
Cyclone2498
Cycloner5
Cyclopedia
@@ -4988,230 +10135,534 @@ Cygni
CykPyk
CykaNuggetzz
Cyldan
+Cym
Cymatics
+Cymbaline
+CymricCat
Cyn2k
CynAcolyte
Cyncess
Cynda
+Cyndaquiill
+Cyndee
+Cyndrakial
Cynhi
Cynic
CynicalSilas
Cynocephali
+Cynognathus
Cynosure
+Cynox
Cynthaen
+Cyodot
Cyous
Cyox
Cypersilver
+Cypher Blue
Cypress
+Cypress H1ll
Cyralx
Cyrax
Cyrax314
Cyriel
+Cyrodiil22
Cyroenix
Cyruscomrad
+Cytain
+Cytryn7
Cyuh
+Cyum
Czacha
Czar
+Czar I
+Czar Trump
+Czechmate
+Czha
Czivend123
+Czk
+D A I J I N
+D A L M
+D A M 0
+D A M I A N
D A M N L0L
+D A N G I T
+D A N N Yy
+D A T H I T
+D B A
+D B Z pker
+D Blo
+D Clawz
+D Darkblader
D Derbles
+D Dragon124
+D Duberstein
+D E C O
+D E F Q 0 N
D E F Q O N
+D E R P
+D E V I N
+D F U Q
+D I Q
+D I R T Y Ko
+D J Diddles
+D Long
+D M T Elves
+D O D
+D O M M E L
+D R 6 K E
+D R l Z Z T
+D Rack4
+D S A V
+D Squarius
+D U R K
+D Wilson
+D Wreck
+D a mo
+D a r t s
+D a rk
+D a u t o
+D a v i d
+D amz
+D arking
+D arkoz
+D as
+D ashing
+D avey
+D axe
+D db
+D ebol
+D ecimate
+D eej
+D eek
+D eep
+D eez
+D en
+D enial
+D entist
+D i l a n
+D i x o n
+D i zz y
+D iesel
+D iizzy
+D imi
+D imitri
+D onda
+D onger
+D oo l ey
+D op e
+D utchgr
+D-D-A
D00DLES
+D00dey9
D0CTOR
D0GS0NG
D0NE0
D0NPABLO
D0PESIC
D0any
+D0inkleberg
+D0lNK
+D0llynho
+D0n vi0lad0r
D0nte
+D1APAM
D1GG00BIITTI
+D1P
D1ZZY
+D1ngu5555
D1no
D24L
D2Aina
D2nzo
+D2theOnTRUMP
+D3 Washup
D33L1N
D3ATHBYPI3
+D3ATHVENG
+D3C
D3C0D3D
D3DW8
+D3IVY OSRS
+D3VONSHIRE
+D3ZZi5
D3ceptions
+D3precated
D3thbyzebra
D3v1lBoy
D3vilmar3
D3zert
D4H4EK3YSM
+D4TE
D4VO
D4n0118
+D4ng3r Suca
D4nkmemel0rd
D4nnyy
+D4rels
D4rk
D4rth
D7NNY
+D9
+D9R
+DA ODB KIDZ
+DA0IST
+DA3N33RY
DA4N
+DAD563884271
+DADDYS IR0N
+DAHDB
+DARCHANG3L
+DARGON
DASH
DAWGPOUND
+DArtspret
+DBA Paulo
DBKangaroo
+DBO90
+DBOL TRICEPS
+DBUZZ
+DC Flubber
+DC-8-51
DCreek
+DD 214
+DD G
DD2I4
+DDAlt
+DDSurWrists
DDandy
+DDoS Wildy
+DDune
DEFENDPOPPNK
DEFlNE
+DEM0L
DEM0NIC
+DEPRINS
+DESPA SIITTO
+DESPAlRGE
DESTYLAT
DFez
+DG 00
DGAF
+DH Marker
+DH btw
+DHIBZ
DHSC4EVER
-DICKWORLD
+DHally
+DHlN
+DHoShow
DIDZZ
DIETDRDIET
+DINGO SCUM
+DIORITIC
+DIORITlC
DIRTYags
DISAPRIN
DITMANM0DE
DIVINExNOVA
DIY Ele
+DIY Jamie
+DIY Salsa
+DIY Shane
+DIY Steo
DIYIronFeBTW
DIYRevelled
+DJ Bop
+DJ Cranston
+DJ Heiko
+DJ Korsakoff
+DJ Llama
+DJ Pen is
+DJEDDIK
+DJK Daniel
+DJKALLE ANKA
DJKrampz
DJMileyCyrus
DJMuscleBram
DJOFULLIN
+DJSeinfeld
+DKHo
+DKJN
+DMM 2 07
+DMM Gp Swap
+DMM Ryu
+DMT Dad
+DMT Satan
DMTDAN
+DMTe
+DMagnum 10
+DMessengerS
+DN Atro
DN20
+DNFL
DNLD
+DO0FY
DOGELII
DOITESTEVEN
+DON FIJI
+DON VALTEE
+DONG GOLEM
+DONJOHNNNY
DOOMBRlNGER
DOOMSlayer
DOSNE
DP776
+DPRNS
+DPS Disciple
DPvM
+DPvM Jordan
+DQ9
+DR PAAAK
+DR VABA
DRAEG0
DRANG3
DRD31
+DRFL
DRGNSLAYER85
+DRIEST RNG
DRL0NGD0NG
+DRLGspace
+DRNKN DWARF
DROPPEDITALL
DRTY
+DRUNKIDIOT
+DReelest
DRegi
+DS Stolen
+DSHeavy
+DStat
DStroud
DSyndrome
-DTown420
+DT5
DUMB
DUSKBLADEL0L
+DV 8
DV trekpik
+DVa
+DW Gunthie
DW24
DWlGHT
DXQIWOL
+DXXM
DYao
+DZ o_o
+Da Bomb 149
+Da Buddah
+Da Iron Jedi
+Da Man 65
+Da Nils
+Da Puppy13
+Da Sniper007
+Da T Virus
+Da d dy
+Da t
+Da then bh
+Da1ton
DaBears
DaBoz
+DaBurg
DaCatBeam
DaCigarMan
+DaCuddy
+DaCult
+DaDangus
DaDude
DaFatManDan
+DaFeesh
DaHumanClown
+DaIronBooty
DaIton
DaJaVu
DaLegendary
+DaPootz
DaRKi
+DaSernet
DaSheepFtClb
DaTr3w
+DaVinciss
DaaChronic
Daaak
Daallas
Daan
+Daanilio
Daanncorr
+Daavos
+Dab Thirty
+Dab then pvm
+Dab0mba
DabANOMICS1
+DabDabDan
DabInMyEye
+DabTornado
Dab_nScape
Dabbadank
+Dabbe
+Dabbers
+Dabbie Duck
+Dabbin Dolo
DabbinDonut
+DabbingBrb
Dabe
+Dabe Sucks
Dabei
+Dabomb 13
Daborn92
+Dabos Weenie
DabsWithDan
Dabsmoke
Dabsncats
Dabsndogs
Dabton
+Dabvape420
+Dacaedia
+Dacc
+Dachowski
Dackel
Dackenerino
Dacune
+Dad Goals
+Dad Sean
+DadBurrys
+DadGoingMad
DadLeft
DadRanarrWay
DadamoSte
+Dadbackward
Dadbackwards
+Dadbod4lyfe
Daddaforce
Daddy
-DaddyDickems
+Daddy Bundy
+Daddy Chaman
+Daddy Chubs
+Daddy Danger
+Daddy Dead
+Daddy Drow
+Daddy Oreo
+Daddy Smit
+Daddy Spoon
+Daddy Yurdle
+Daddy sandro
+DaddyDeagz
DaddyDylo
DaddyLemming
DaddyMac
DaddyMars
+DaddyNemmy
+DaddyPig406
+DaddyTowel
+Daddyfied
Daddyplease
DaddysLoad
Daddyspie
DaddyyDong
Daddyz
+Daddyz Clean
Dadevil1616
+Dadfield
Dadi415
+Dadorii
Dadosaur
Dads
+Dadukez
DadurQa
+Dadyankee3
DaemonGunner
DaemonTool
Daemonmage
+Daemonrds
Daenrys
Daep
Daewolo
+Daeyalt Ess
+Daeye
+Daez 95
+Daf Arch
+Dafetsch
Dafney
Dafo322
+Daft Punked
DaftDemon
DaftPun
Daftmoul
DafttPunk
+Dafuggg
Dafy
+Dag DaLooter
+Dagannot hs
Dagannuts
+Daganoth Rex
+Dagathar1
+Dagburn
DaggaNOTKlNG
Dagger93
+Dagggg
+Daggou
Daggz
Dagin
DagkingV2
+Dagnel Daddi
Dago
+DagobertTT
+Dagoth Vemyn
Dagsi27
+Daguar
Dahlareen
Dahls
+Dahlson
Dahmonkey
Dahrmata
+Dahrr
Dahumbug
Daijoukay
+Daiju Spede
Daiktusrenku
Daileee
Dailiana
+Daily Grind
+DailyDoomer
DailyDosage
+DailyPog
DailyScape99
DailySharts
+DailyShelfer
Dailytoker
Dain
+Dainius
Dains
+Daipers
Dairychuk
DaisOfHavoc
Daiseido
Daiski
+DaisukeJigen
+DaisyApple
DaivdFW
+Daiw
+Dajmkryss
Daka
+Daka Alt
+Dakai
+Dakay
Daklozenkrat
Dakotas
Daksu
Dal3y
+Dalacks
DalaiLlama
+Dalanes
+Dale Dobec
+Dale G
+Dale HC BTW
+Dale Winton
Dale1612
Daleferd
Dalejamesw
Dalek
+Dalek Cookie
Daley_Dose
Dali176
Dalkz
+Dalls Beep
Dalmatian
Daloomi
Dalrak
@@ -5219,6 +10670,7 @@ Dalski
Daltficiency
Dalton
Dalton4theft
+Dalton_LB
Daltonnn
Dalundo
Dalzii
@@ -5226,62 +10678,134 @@ DamDude
DamSplash
Damage
Damarquis
+Damberson
+Damen
+Dameon xd
+Dami
+Dami-an
Damiaen
+Damian_Xx
Damish
Damlotz
DammitHarry
-Damn
+Damn Evil
+Damn God
+Damn its Sam
DamnItHarlod
+DamnSexy
+DamnViton
Damned
+DamnedDaniel
Damngoodsoup
+Damni t
Damo
+Damo is free
Damon
+Damp Memes
DampBucket
DampForklift
+DampMongot94
+Dampener
Damzos
+Dan Bad
+Dan Craig
+Dan Daoud
+Dan Gleesac
+Dan H
+Dan M
+Dan S
+Dan xo
Dan-Reijden
Dan120201
+Dan452
+Dan646464
+Dan91
+DanAsker
DanAye
DanBTW
+DanChan1101
+DanGreenFan
DanGur27
DanMaxd
DanMingo
+DanO_o
+DanOfCumelot
+DanPJ
DanRickshaw
DanTheM4N
+DanTofoo
Danboy
Dance
+Dance for XP
+Danced
DancingForGP
+DancingRa1n
+Danco
+Dandrikis
+Dandwc88
+DaneDaddy99s
Danea
+Danelele
DanernesLys
Danex85
Dang
+Dang It
+DangFloopity
+Dangelboi
+Danger Swign
+Danger Zoneh
DangerBear
DangerGlutes
+Dangerouz
Dangeruss
+Dangerxi
+Dangerz0ne15
DangitBobby
Dani
+Dani Cute
+Dani D
+Dani Dark 0p
Dani007
Dania
Danieelius
Daniel
+Daniel Mcc44
+Daniel OSRS
Daniel12xx
+DanielSumtin
+Danielbisgod
Daniella
+DanielleOfc
+Danielmcken1
Daniels
+Danielwat
+Daniiieell
Danijenn1211
Danilin
Danimal
DanisH96
+DanishAdonis
+DanishGoat
Danje
Dank
-Dank Bud God
+Dank Chef
+Dank Exp
+Dank Perp
Dank Tigzy
DankDylShpil
+DankMagic
+DankSavage99
+Dank_Mcnasty
Dankdank96
Dankdog
Dankdynasty
+Dankey
Dankfool
+Dankleburgh
Dankstanky
Danktrees
+DankumZ
+Danky Kwuarm
Danletics
Danleypa
Danlord3222
@@ -5296,33 +10820,51 @@ Dannk
Dannny
Dannum
Danny
+Danny Dubs
+Danny Dvito
+Danny Mate
+Danny P
+Danny Pudi
+Danny m8
+Danny wtf
DannyDeleto6
DannyK
+DannyKjr
DannyPho
+Dannygem
Dannytrol
+Dannyw
Danog
Danoj
Danol
Danomeva
+Danoontje
Danozz
+Danratty
Danrow
Danrue
Dans
Dansayeagle
+Danski261
+DanteExitium
Danxdoo1
DanykaNadeau
Danzai
Danzig
Danzoler
Daofather
+Daoko X
Dapper
+Dapper Hades
+Dapper Jr
+Dappest
Dappi
DaquanNiguan
Daquantaro
Daquicker
-DarKSsoul69
Darbinism
Darc
+Darc Sport
Darcy
Darda09
Daredevil595
@@ -5330,128 +10872,294 @@ Dareme95
Daremo
Dareya2
DarfPlageus
+DarfWantWarp
+Darimy
Dario
+Dario hax
+Darion
Dariukas
Dark
+Dark X
+Dark Alcyte
+Dark Aloy
+Dark Curtain
+Dark Iron69
+Dark Jaxol
+Dark Kadabra
+Dark Kill L
+Dark Knig ht
+Dark Kurama
+Dark Peter10
+Dark Rabbit
+Dark Ranqe
+Dark Side
+Dark Specter
+Dark Stone66
+Dark Tetrad
+Dark Totem
+Dark Uzi
+Dark Veidar
+Dark Wegener
+Dark Xarpus
+Dark kamui
+Dark lll
+Dark1437
+DarkAether
DarkEater
+DarkElf135
DarkEmerald
DarkGraceful
+DarkHoodGIM
+DarkKn1ghts
DarkMerliin
DarkNut393
DarkOwI
DarkReapingX
DarkReign
DarkWizard
+DarkXiphles9
+DarkZulu97
Dark_Auth
Darkang3lpkx
Darkao
Darkarmy40
+Darkbox777
Darkbright
+Darke Hand
Darkemissery
+Darken Devil
DarkenRahlrs
Darker
+Darkest Kind
+Darkest Syde
Darkfanime
Darkflash15
+Darkgutz
Darkhal
+Darkine
Darklord4211
Darknapster
Darkp0wnz
Darkphil007
Darkpupitar2
+Darkrai
Darkraven368
+Darkscorpio5
Darkseance
Darksense
Darksim10
Darkskiller
Darksn0w
Darksnoweb
+Darksocks1
Darkst4ar
+Darkstar078
Darkturbo
Darktyranno
Darkwrath43
+Darkyr
+Darlin g
+Darling27
+Darma
+Darnic
Darquain
Darras
+Darren T
Darrens
Darriann
Darse
Darsehole
+Dart Slayer
Darth
+Darth Kas
+Darth Shiroo
+Darth Spade
+Darth Val
DarthNevidia
DarthSpliffs
+DarthWrecker
Darthe
Darthodium
Darthonion90
Darthrodger
+Darthruneis
Darthshea
Darucell
Darush
Daryl
Darz
Darzix
+Darzo5
+Das Idle
+Das It Maine
DasGoose
DasReich88
-Dasgirl07
+Daschiva
+Dascrez
+Dasgirl09
+Daspwn
+Dasrx RNG
+Daszler
+Dat Geezer
Dat2eWoord
+DatBoiNibbe
DatBoyLoy
DatGuySteve
+DatIronNinja
DatNeck
+DatPeko
DatYeet
Data
+Data Diddler
+Data Privacy
+DataDruid
+Datadyne
Datames
Datcookie34
Date
Dathx
Datis
+Datoxicate
Dats
Datskai
+Datting
+Dattos
+Datuk
+DaturaTrip
Daubs
+Daud
+Daughters
+Daunt
Dauntless
+DauntlessXav
+Dauth Elda
+DavSko
Davaflav
Davai
+Davantage
Dave
+Dave From Au
+Dave Hooray
+Dave J
+Dave Mario
+Dave Senpai
+Dave The Egg
+DaveAckery
DaveDaBeast
+DaveDorvis
DaveLister
DaveYognaut
Davebarbaren
Davedication
Davedude
+Davej86
Daveken
+Davesty
+DaveyB0nes
DaveyWSM
David
+David Co
+David Duffs
+David Ortiz
+David R333
+David007
David2699
+David4755
+DavidKinaMan
DavidPH
Davidisiscoo
Davidopathy
+Davis751
Davlan
Davo
Davord
+Davoron
+Davros70
Davshing
+Davu
+Dawaj Lama
+Dawg Dynasty
+Dawkins
Dawn
+Dawn Destiny
+Dawn Era
+Dawn Summers
+Dawn Wall
+DawnEverbane
+DawnSwanMon
Dawna
DawnfaIl
Dawson141
Dawtrix
+Daxidol
Daxon
+Daxx95
Daxxzy
+Day Dreams
Day Lightz
+Day1ofNoFap
Day6
DayJarVu
DayOff2JOff
+DayStar Turk
+Daydrifta
+Daye Xero
Daykillz
+Dayman_GIM
Daymien
+Daynnn
+Daysi Darcey
+Daystar
+Daytrip
+Dayuf
+Dayveeeee
+Dayz of Iron
+Dayzd1
Daz3dnBlaz3d
+Daze
+DazedDave
DazednConfsd
+Dazzler95
Dazzz
Dbeatz
+Dbewt
Dbmx
+Dboot
Dbricke
+Dbz Pride
+Dc B L I N D
+Dc Hakkarn
+Dc IronMan
+Dcaravan
Dced
+Dced at Corp
Dception
+Dcing
Dday6Jun1944
+Ddestroyer56
Ddos
Dds4theko
Ddsing
+Ddsme
+De Algerijn
+De Baardman
+De Eryngy
+De Fishy Guy
+De Gennaro
+De Hoppert
+De Jam
+De Krikke
+De La Trey
+De Marco
+De Max
+De Mechelaar
+De Pette 69
+De Redacteur
+De Sam Matie
+De monic
De stoutsten
+De us
+De1icioso
DeAndre
DeDawgTubb
DeEgis
@@ -5470,38 +11178,80 @@ DeTrixzz
De_lemme10
DeaTH
Deacey
+DeaconDrew
Dead
+Dead Baldy
+Dead Bozo
+Dead Chilli
+Dead Easy
+Dead HC Here
+Dead Her0
+Dead I Guess
+Dead Mum
+Dead Policaj
+Dead Psyc
+Dead Sellout
+Dead Ticks
+Dead XVIII
DeadDogRed
+DeadGhost
DeadKelly
+DeadNowM9
DeadPickle
DeadPower
DeadPuto
DeadRealSoon
+DeadSanson
DeadSlice
+DeadSmog3
DeadWife
Deadarrow99
Deadbeater
+Deadblinx
Deadened
+Deadfallen
Deadlft
+Deadlift
Deadliftjr
Deadly
+Deadly Pixel
+DeadlyAnt
DeadlyBatz
DeadlyDJ
+DeadlyDrinkr
DeadlyHit
DeadlyNecros
+Deadman AF
Deadness
Deadpaal
+Deadrango
+Deadwool
DeadxProof
Deaf
+Deaf Person
+Deaf RScaper
+Deafmau5
Deafs
+Deakien
Deakz
+Deal or nah
Dealing
Dean
+Dean Jac
DeanRs
Deandelouest
Deantotheo
+Deaptic
Dear
+Dear Deer
+Dear no one
Death
+Death Devil
+Death Eaters
+Death Is Fun
+Death Loco
+Death Qweef
+Death Rainer
Death0fyou
DeathByRC
DeathPanda
@@ -5510,134 +11260,224 @@ DeathSurgenc
Deathbyclick
Deathcloude
Deathcore
+Deathduspart
Deathfuzz13
Deathhope666
+Deathism
Deathit55
+Deathmast333
+Deathomen
Deathrattle
+DeathsCaII
DeathsCoffer
Deathscyt56
+Deathstarlol
Deatths
+Deb0wer
Debauchery
Debb
Debdu
+Debil Missed
+Debiruss
Deborla
Debug
Debwani
Deca
+Decapacitate
+Decard Cain
+Decarium
Decath
DecayedWrath
Decca
+Dece1ve
Deceive
+Decent Drugs
Decerate
Dechmann
Decides
Decim
+Decim-san
Decimate
+Decius Maxim
+Deckiez
+Deckler
Declare
Declined
+Deco Himself
Decolonize
Decomposed
+Decon
Decs
+Dectron1
+Ded Ronald
+Ded Smithy
DedClicks
DedVittu
DedWilson
DedZap
DedZeppelin7
+Deddo92
Dedfin
+Dedge Inside
+Dediabl0
Dedicated
+Dedicated XP
Dedmoo
Dedressing
DedsetLegend
Dedville
Dedzone
+Dee
DeeLizard
DeeLuxe
DeeZe
+Deedeedee630
Deedlebees
Deeego
DeeezNats
Deejay
+Deeku vaan
DeelDoughs
Deemush
Deep
+Deep Medi
DeepInUrMum
+Deepika P
+Deepinuh
Deepnsider
Deerboy7I7
Deerhunt03
+Deerkl
Deerski
Deerskin18
Deevos
Deeyja
+Deez Mangoes
+Deezima
Deeztroyer
Deezy44D
Defaultbomb
+Defaulted
+Defeat Evil
Defeater
Defektas
Defelorn
Defence42
Defensief
+Deffi
+Defib
+Define Pain
Deflexus
Defloat
+Deflorator
+DefoNotKiwi
DefoNotSpoon
Defog
Deformedhell
+Defqonlord
Defrosted
Deft
Deftones
Defund
+Defunto2
+Defy Limit
+Defyinq
+Degak
+Deganti Upe
Degas
+Degen Darra
+Degen Ryu
+DegenGod
DegenRetard
Degeneraatio
+Degenic Neet
+Degenomics
Degradedd
Deguns
DeiAx
Deidera
Deifi
Deimoss
+Deinsmeins
+Deiron Tyson
Deitonus
Deive
-Deivukas 69
+Deiviiz
+Deivis
+Dejagoo
+Dekeyser
+Dekkens
Deko
Dekul
+Dekylex
Del1nquent
Del4no
+DelaIron
+Delaey
Delay
Delciotto
Deldeen
Dele
+Deleted
+DeleuzeSucks
Deleven
+Delga
+Delger
+Delhaize
+DeliMeats
Delic
+Delicoffee
Delimain
+Delirah
+Deliyria
+Delkku2
Dell
+Dell De Dul
+DellaRS
Dellamor
Dellies
+Delmar
Delmaro
Delonius
-Delphan07
+Delphan09
Delskiii
Delsym
Delta
+Delta 516
DeltaCloud
DeltaEpsilon
DeltaPapa
Deltaskull
+Deltawye
Delten
Delusional
Delusionnn
+Deluthul
Deluvial
+Deluxe5
+Delvex
DemSkillsDoe
Demander
Demboo
Demco
Demerlay
+Demetre130
Demi
DemiGodKempo
+DemigodI
Demising
+Demmegod
Demolidor
Demon
+Demon Albarn
+Demon Flare
Demon Plate
+Demon RS
Demon1793
+DemonWolf1
+Demon_Matrix
Demonaly
+Demonas
Demonboys1
Demoni
Demonic
@@ -5646,14 +11486,31 @@ Demonleader8
Demonslay335
Demonteats
Demoted
+Dempa
Dempeanut
+DempseyRoll
+Dempsters
Dempsu
+Demyze
+Den Bever
+Den Duivel
+Den Illya
Den1z
+DenZelouZ
+Denaelc
+Dench Bee
Denclosure
Denferok
+Denfoe
+Denggly
Denglish
+Denis
Denix6
Denizenn
+Denkil
+Denkue
+Denmarkian
+Dennaro
Denneny
Dennis
DennisWilbur
@@ -5661,9 +11518,12 @@ Dennisfr
Dennispanda1
Denny
Dennyispro
+Denonweff
DenouncedGod
Denoxite
+DenseLayer
Denssoni
+Densu
DentalMental
Dented
Dentistry
@@ -5671,50 +11531,88 @@ Dently
DenverHockey
Deny
Deny92345
+Denza93
Deon
Deoo
+Deoxy_19
Deoxys39
Depdada007
+DependaAF
Depends
+Depenenkal
+Depletion
Deplox
+Deprimes
Deprimir
+Depster
DepthStryder
+Deputy Mibo
DeputyDwigt
+Der Hungrige
+Der Panda
DerPunkt31
Derbados
DerbyDerbs
Derdel
DerekBarnett
DerekEmKay
+DerekWins
Derenity
Derick
+Derived Hope
+Derk Danger
+Derkalurka
+Derkila
+Derkle
Dermijiny
+Dern Swan
Derot
+Deroy
DerpCanin
+DerpDeezy
Derpmoil
Derptimusbro
DerpyClayDog
Derrick
+Derrick Rose
+DerrickC145
Derrik
Derrin
+Dertay
Des0rg
+Desaus
+Descendence
+Desconectado
+Desear
Desert
+DesertAmulet
DesertEagle
+DesertFlower
Deserve
Desi
Desigium
Desinger
+Desinteresse
Desire
Desk
Desley
+Desn1q
Desoroth
Desper
Desperados
+Despitous
Despot
Dest
+Destab
Destinneh
+Destiny Goat
Destr0i
+DestroyButts
+Destructoid
Desuelle
+Desuhmate
+Det BabyLegs
+DetRedWings
Detain
Detects
Detectum
@@ -5723,223 +11621,416 @@ Detonati
Detone
Detriment
Detrimental
+DetroitSux
Deugeniet
Deunek
+Deur NL
Deurloos
Deus
+Deus Esq
+Deus leto
+Deus lux est
DeusFerox
DeusXQuinoa
Deuxth
+Dev Jacob
+DevMoney420
+Devanar
Devb0t
Develinside9
+Develique
+Devidedby0
+Devika
Devil
+Devil Horns
+Devil lnside
Devil9394
DevilOfheavn
-Devilbong420
Devildog
Devilege
Devilgod
+Devilish
Deviljin583
Devilman
Devils
Devilsbkb0ne
+Devilsjoker
DevinTheDude
Devinchi
Devious
+Devise
Devizer
Devo
+Devon Btw
+Devoted I
Devotion
Devoured
Devourkitty
+Devry Cain
Devstated
+Devv N
+Devvy UwU
Dewa
+Dewarping
Dewiro
Dewitten420
Dewk
Dewrunk
Dewsk1
+Dewts
Deww
+Dex Territy
Dexby
Dexderp
Dexlan
Dexter
+Dexter Lou
Dexterity
Dexxaz
+Dexxtrouss
+Dexy Fiend
+DexyDean
+Deykota
Deyou
Deyron
Deysean
+Deyvyejones
Dezerthuntar
Dezi-VII
Dezkor2
+Dezmezz
Deztroyer
+Deztroyer 0
+Dezzu
+Dflow023
+Dfs Sfs
+Dfuks
+Dfw
Dgalaga
Dgref
DhRecka
Dhae
+Dhaegar57
Dhaeqriyil
+Dhaggz
+Dhalsim
+Dharek
+Dharma Van
Dharoc
Dharok
+Dharok 0bama
+Dharok Derek
+DharokHardOn
Dharokbomber
+Dharoker
+Dharokz
Dhavy
+Dhides
+DhingusKhan
Dhon
+Dhon Do
Dhor
+Dhr Leon
+Di vau vand
DiaRelent
DiaThresh
+Diabalo
DiabeticKid
DiabeticPhuk
+Diabetucus
Diablo
Diablo47741
Diablosis
DiabolicDead
Diade
Diagnosis
+Diagonlane
+Diah
Diako
+Diako Gyan
Dialga
+Diam0nd01
+Diamega
Diamond
+Diamond D
+Diamond Jozu
Diamond2192
DiamondScott
Diamondback
Diamonds
+Diamonds Jr
Diamonds lit
Diamoniakmep
Diampromidi
+Dianakins
DianasaurEgg
Diane
Diapeetikko
+Diaper Dan
Diaresta
Diariez
Diarrhea
+Diarrhea Tom
Diart
DiaryNoob
+Dibbo
Dibbu
Dibidos
Dibidus
Dibsis
+Dibsis CoMa
DibtheLegend
+Dibudabudi
+Dibyel
DiccEat
+DicedBrotito
+Dicer
+Dicey ReRoll
Dicio
-DickLovett
+Dick Jones
+DickNBallin
+Dickbruiser
+Dickeroo
Dicko
-DickyPops
Diclo Force
Dicnar
+Dicso
DictatorNL
+Did You Fart
+Did You Try
DidAnalOnce
DidISayWeast
DidNotDieBtw
DidUJustBgs
+Didavoo
+Diddle Drip
Diddlybopp
Diddmeister
Didi
Didnt
+DidntAsk
Didny
+Didsome1say
+Die hard 66
DieAntwoord
+Dieby
Died4Hides
DiedRank
DiedSierra
+Diedrrr027
+Diegoide
+Dien0
Dieno
Diesel
+Diesel Bill
DieselPump
+Diet Andy
+DietSquid
Dietch
Dieu
+Diffindo
+Diffy
+Dig Bick 420
DigBicker
+DigDaniel
DigOlBick
Digestive
Digger
Diggernick32
Digghass
+Diggy
Digi1al
DigiDestined
DigiFlisp
Digifreak045
Digironimo
+Digit28
Digital
+Digital Age
+Digital day
DigitalGamer
DigitalKillz
+Diglett Dave
+Dignace
Dignity
+Digtalcarrot
+Digweed
Digyeety
Dihl
DiiK
Diiferent
DiiirtyDog
+Diisphoria
Dija
+Dikk Mabbutt
+Dikkaz
Dikke
+Dikke Hobbit
+Dikke Kei
Dikken
+Dikuufd
+Dil Pickle
+Dilbo
+DildoBagguns
+Dilexro
+Dilfslayer
Dill0n
+Dillaz
Dillbert
+DilleFlute
Dillhen
+Dillon
DillontheFox
+Dillusion94
Dilly
Dillywacka
Dillzpickl
+Dilogos
+Dilph
Diluzion
+Dilvy
+Dilx
+DimDimz
DimJangle
+DimKills
Dimaa
+Dimathys
Dime
+Dime Daddy
+Dime Skate
+Dimebag217
+DimitriosMVP
Dimmu
+Dimmy
Dimples
+Dimwits
+DinFulaJavel
+Dinamite
+Dinari
Dindu
DinduNuffen
Diner
Ding-A-Ling2
+DingDong
DingDongDell
+Dingbat Rat
Dinger30
+Dingle Eater
Dingus
+Dinh
Dinho1
+Dinieras
+DinkeLBerrG1
Dinkerwoltz
+Dinkis
DinkleBrrgh
+Dinkleberg
DinoBoy7
DinoSnore
+Dinomite
Dinoparrot91
+Dinorock
+Dinosaur
Dinostrong
+DioBrandoXx
Dioden
+Diogaite
Diogo
Diogun
+Dioor
DiorTemplar
+DiorTheGreat
Dios
+Dios world
+Diosdado_12
Dioxins
Dioxis6
Dipdadronan
+Dipical
Dipli
Dipolio
DippaDave
Dippoldism
+Dippy
+DippyMcshit
+Dipshit Dan
Dipyo
+Diq-In-A-Box
+DirectDesire
DirectDsLcul
Direwolf
Dirk
+Dirk Stryker
+DirkDigglr
Dirkieflurky
Dirol
Dirt
+Dirt Shark
DirtAss
+Dirtbag
Dirtbikerpro
Dirtboy345
Dirtjogger
Dirty
+Dirty Dozen
+Dirty Nuts
+Dirty Nwah
+Dirty Pack
+Dirty Tampon
+Dirty Wit
+Dirty Wookie
+DirtyDoc
DirtyGeUsers
+DirtyGlock
DirtyKo
DirtyLube
+DirtyOldMan
+DirtyShire
+DirtySouthNz
+DirtySpade
+DirtyWata
+DirtyyIron
Dirun
+Disabled
Disaster0
Disasterolgy
+Disastro
+Disbeliefs
+Disc
+Disc Chucker
DiscGG
+Disclosing
+Disclosure
Disco
+Disco Mayhem
+Disco PvM
DiscoDarwin
DiscoFever
DiscoLars
DiscoTronix
+Discoburger
Discodoris
Disconnecct
+Disconootje
Discord
Discordian
+Discounted
Discoveredx
+Discretions
Disentombed
+Disfunctie
Disgusting
Diskmedel
+Disloyal
Disneyland
+Disodrer
+Disorderly
Disperse
Disprivilag
+DissTeam
Dissidence
+DissyReborn
+Distained
Distanc3
Distard
DistinctEvil
@@ -5948,221 +12039,482 @@ Distroyer972
Disturbed
Ditherman
Ditt
+Ditt o
Ditto
Ditty
+DitzyGranny
+Dive Ball
DiveMedic
Divertus
+DividedSky
+Dividends
Divin3RS
Divine
+Divine Dream
+Divine Fenix
+Divine Furby
+Divine Mass
+Divine One
+Divine Oodle
+Divine Sveta
+Divine Zaros
+DivineLegend
+DivineRhythm
+DivineShine
+Divinenro
Divines
+Divinethug
Divinez
Diving
+Divinitii068
Divoky
+Divorce
+Divxd
Dixed
Dixie
+Dixie Pixies
+Dixin Yass
+Dixon
+Dixon Planks
Dixxy
+Dixy Wrecked
+Diy Dan
Diz_OG
Dizho
Dizk
Dizstruxshon
Dizza
Dizzleslayer
+DizzyDan
+DizzyPanda
DizzyRnG
Dizzzzy
+Dj Dimu
+Dj Jordi
+Dj Ju
+DjNateP
DjSpicyNuts
DjWalkzz
+Djacquays94
+Djagzar
Djahat
+Djauw
+Djavul
+Djbeejay99
DjenCraw
DjentleSoul
Djl0077
+Djmx1000
+Djoefer
Djozztico
+Djscoobsta_X
Djunya
+Djurfan
+DjustinT
DkPepper
Dkafeine
Dkzz
DlAMONDS
+DlBz
+DlCKE
DlCTATOR
DlDS
+DlE MACHlNE
DlNNER
DlONNE
DlPLO
DlRECT
+DlSCONNECTED
DlTTO
-Dlck
+DlXON
Dlghorner
DliveMarc
Dlorean
+Dm8
+DmVinny
Dmage
Dmante
Dmfs
+Dmgp
Dmhc
Dmi11z
+Dmitri333
+DmkFight
DmkKilla
Dmoe
+Dmt Kitty
+Dn Dayander
+Dn Havoc
+DnB Fanatic
+Dnc
+Dnv
+Do It Best
+Do It Myself
+Do You Zerk
+Do ur Best
DoDArmy
+DoHerbRuns
DoKZx
+DoMeDirty035
DoMeHardNan
DoSoQi
+DoUEvenTank
+DoWerkSonn
Doadles
Doajiggi
+Dob Au
Dobar
+Dobby Hanzo
DobbyGotPwnd
+DobbyTheSock
Doboner
Dobster
+Doc Doc
+Doc Heart
+Doc k i n g
+DocDingle
DocGiggles
+DocMonocle
DocVamp
+DocYouSign
Doc_Hershey
-Docrates69
+Docere
Docs
Docta
+Docta Mantis
+Docta dean
+Docter Brule
Doctor
+Doctor Ace
+Doctor Bubca
+Doctor Exx
+Doctor Fail
+Doctor Funk
+Doctor Fuzz
+Doctor Iron
+Doctor Krieg
+Doctor Luck
+Doctor Oby
+Doctor Swag
+Doctor WormP
+Doctor Wylie
+Doctor Zeh
DoctorCoc
DoctorHeiter
+DoctorKraft
+DoctorNutz
+DoctorRex
+DoctorSquat
DoctorTsom
DoctuhDrew
Docxm
Doddi
+Doddy8D
Dodge
+Dodge Feet
+Dodger995
DodgersBRAH
Dodgy
+Dodgy Player
+Dodgy Todge
Dodjomaster
+Dodko
Dodo134
Dodokipje
Dodol
Dodose
+DodusNet
Doefos
+Doeidoei
+Doep
Doesnt
+Doesnt Trade
+Doetje
Dofric
+Dog Fart Net
+Dog Myrnac
+Dog The Frog
+Dog did Meow
+DogDiet
DogFlyRatCow
DogLogNogJog
+DogShitter1
DogSoldier29
+DogTag
Dogan
+Dogannn
Dogax
Doge
+Doge Caravan
Dogecoin100x
+Dogesaurus
+Dogessa
Dogestyle
+Dogfruit1555
Doggiezz
Doggoat
+Doggshit
+Doglinsheran
Doglips
+Doglover7004
DogmanJones
+Dogplaceman
Dogpoop
+Dogres
Dogs
+Dogsh1t Main
+Dogshit Rick
Dogslayer420
Dogsume
+Dogtogod
Dogzie
Dohace
+Dohdee
Dohenus
Dohero
Dohski
+Doin It Raw
+DoinGodsWork
Doiran99
Doiu
+Doja Chompy
+Doja Shark
Dokarius
Dokdo
Doken
+DokeyPickle
+DokiToast
+Dokter Klok
+Doktor Onion
DoktorBarber
+Dokuganryu
+Dokuhime
+Dokusei
+Dol
+Dol Alt
Dolce
+Dolerkyo
+Dolf
Dolham
Doll
+Doll of Evil
Dolle
Dolly
Dollynho
+Dollynho Bro
Dolomite
Dolormight
Dolph
DolphinAnus
DolphinPucci
Dolphinl1ck
+Dom R
+Dom Wong
DomGaz
+DomLaurencio
DomYouAll
Domanater105
Domantass
+Domatic
+Domccas
Domeeee
+DomiGothMomi
Domiinant
Domika
Domimic
+Dominate Jr
Dominaton
+Dominator541
+Dominatorrz
Dominikus67
Dominionmake
DominoTerry
Dominos
+Dominus Omni
Domiros
+Domixin
Domke25
+Domknit
+Dommie 07
Dommy
+DommyDucky
+Domo Teddy
+Domoralized
Domoszlo
Doms
+Domstad Slay
+Domtoren
+Don Abuja
+Don Bob
+Don Boki
+Don Con
+Don DingDong
+Don Dotta
+Don Huono
+Don Matt
+Don Moochie
+Don Persian
+Don Robb
+Don Sebitas
+Don Serrano
+Don callum
+DonB0t
+DonBroco
DonDennis94
+DonMarcino
+DonThinKill5
DonWonTon420
Donair
+Donair Dude
Donal
Donald
Donald Dumps
+DonaldTrump
Donaldfact
DonaledTrump
+Donantelo
+Donate Here
+DonateBond
Donato
Donchz
+Donda
+Dondd
+Donderschok
+Done enough
+DoneThat
Dong
+Dong Chan
+Dong em Down
DongActual
+DongCowboy
DongEater
+Donger Lord
+Dongi
Donging
+Dongolark
+Dongs Ahoy
Dongsalad
Dongu
Dongus
+Donkerblauw
Donkere
+Donkernick
+Donkey Kink
+Donkey Squid
DonkeySocks
+Donkhu
DonldTrumpet
Donnatello
DonnieAssie
Donnieduke
Dono
DonoWho
+Donology
+DonovanRS
+Donsalt
Dont
+Dont Be Pked
+Dont Heal
+Dont Sir Me
+Dont You Shy
+Dont do dat
+Dont skill
+DontBeMad
DontBotNerds
+DontDieMase
DontDieSans
+DontEatMyDog
DontGetDrops
DontHoldBack
+DontJump
+DontPanicPlx
DontSassMe1
+DontStarve2
DontTellFeds
DontTouchIt
DontUseFKeys
+DontWarnMe
+Dontneedbp
Dontyoudoit1
Donuhtzz
Donut
+Donut181
+Donutman
+Donvys
Donwcpot
+Doob
Doobe
+Doobie Doo
+DoobleDecker
+Doodle Bob73
DoodleCraver
DoodleTheGod
Doodled
+Doodledash
+Doodoolist
Doodslag
+Doof
Doofe
+Doofensmirtz
Doofy
+Doogl3
Doogyplumm
Dookami
Dookers
Dookie
Doom
+Doom Bar
+Doom Metal
+Doom Raiser7
DoomDoomDoom
DoomFruit
Doomblade
Doomed
+Doomed Necro
+DoomiShroomi
+Doomkid50
+Doon
+Doooooobie
+DoorDshGamer
+DoorTech
+DoorToLight
+Doorknob
+Dooz 12
Dopamemes
+DopaminAbxsr
Dopamine
+Dopamine OD
Dopatopia
Dope
+Dope Doc
+Dope Plugs
+Dope Sweater
+Dope btw
DopeAnteater
DopeCalippo
+DopeDrop
Dopedrift
Dopeturtle
Dopeules
+Dopey Iron
+Doppa
+Doppleganger
+Doppleladler
DopplerDank
+DoraDaExplra
DoraSweetass
+Dordin
Dore
+Dorede
Dorg
+DorgonPocket
Dorgoroth
Dorito
Doritomancer
Doriva
Dorkydevil93
Dorman Jr
+Dormant Evil
DormiNdaExp
Dorohedoro
Doronn
@@ -6170,39 +12522,126 @@ Dorp
Dorse
DorseHong
Dorthea
+DortyKil
Dorvagten
+Dory364
+Dos STI
DosEquis
DosKadenas
+Dosia
Dosk
Doss
+Dostalgia
+Dot Death
+Dot Head
Dot_Tea
Dothalican
+DottySloth
Douane
Double
+Double CupMc
+Double Drop
+Double Take
+Double agent
+DoubleBrowns
DoubleDeezus
Doubleb011
Doubledonk
+Doubt
+Doubt It
+Doubted Pyro
Doug
+Doug Salt
+Douglasotto2
Dougoboy
Doujinmoe
Douq
+Douyin
+Dova_sage
Dovahkiintim
Dovahkyng
+Dovitello
Dovydas54
Dowatnow
Down
+Down Vote Me
+DowniePatrol
Downland
Downlifter
Download
Downtown
+Downworld
+Dowzi
+Doxus
Doxxme
Doxy
Doye
+Doyer1
+Doyers
Dozck
Dozerdayne
Dozerrrr
DpittmanIM
Dqzi
+Dr 7
+Dr Atsum
+Dr B3rry
+Dr Bading
+Dr Barty
+Dr Butt Love
+Dr Caccon
+Dr Camembert
+Dr Cremaster
+Dr Crumpet
+Dr DO0M
+Dr Edy
+Dr Flipflops
+Dr Gainz
+Dr Geyseks
+Dr Glottis
+Dr Gotham
+Dr Gulak
+Dr Harry Nut
+Dr Ivar
+Dr Jago
+Dr Jerry
+Dr Kenchi
+Dr La Scotte
+Dr Lulu
+Dr Madv
+Dr Mawffle
+Dr Melons
+Dr Mikey
+Dr MonaLaser
+Dr Mustacho
+Dr Mustard
+Dr NFC
+Dr Neuron
+Dr No Life
+Dr Oreo
+Dr PFAFF
+Dr Phil
+Dr Plebeian
+Dr Quirke
+Dr Rave
+Dr Robster
+Dr Rum
+Dr Shook
+Dr Siesta
+Dr Slayer
+Dr Stamps
+Dr Swaggins
+Dr T e a r
+Dr Tanner
+Dr Volts
+Dr Will MM
+Dr Yosty
+Dr Zeby
+Dr Zeh
+Dr Zimm
+Dr obZen
+Dr smithing2
+DrAsTiiC
DrBeast
DrBen50
DrBigSang
@@ -6211,97 +12650,197 @@ DrBlumpkinz
DrBuckFitchs
DrButter
DrC0X
+DrChezz
DrCrunch13
DrDRespect
+DrDankMan
+DrDankRip
+DrDemitrius
+DrDennisMD
+DrDitalini
+DrDoddi
DrDruen
DrEfficient
DrFlobe
+DrFognog
DrHugecookie
+DrJoose
+DrKayzed
+DrKevinn
DrKiloGram
+DrKush69
DrKushBurner
+DrLoomis
+DrLuckyacorn
DrMatthie
+DrNachtiga
DrOly
+DrPeppermmm
+DrPhil2019
+DrPhineas
DrPoopstein
DrProfess0r
+DrRift
DrRipStudwel
DrSevens
+DrSkunkPhD
DrSquanto
+DrSwag
+DrWodahs
DrWoolyNips
Dr_Olusegun
DraCoNiiaN
+Draacaryss
+DraakSeviper
+Draakmonkey
Drac0claws
Dracarus
Dracaryys
+Draccnor
+Drache104
Draciel
Drack3d
Drackon
Draco
+DracoGhost
Draconian111
+Dracote
Dracts
Dracula50125
+Draeghem
+Drag Puff
+DragSyndrome
Dragen
+Dragen Ballz
+Dragers
DraggSlayaa
Dragnarok
Dragneel
Dragnipurake
+Dragnkllr233
Dragon
+Dragon Boots
+Dragon Brew
+Dragon Gras
+Dragon Imp
+Dragon Not 6
+Dragon Sword
+Dragon Those
+Dragon7998
DragonAxePlx
DragonDrew
+DragonKlaas
DragonPrime
+DragonSpayer
Dragonbait4
Dragonboy691
Dragoncore74
+Dragonfeir
+Dragonflew
Dragonheat46
+Dragonkin892
+Dragonkingiq
Dragonlear1
+Dragonluv16
Dragonmake
DragonoidA2
+Dragonrains
Dragonrune16
+Dragons Iron
+Dragonslayaz
+Dragonstompy
Dragonstone
Dragonvirse
Dragonz
+Dragonz Fury
Dragoon
+Dragoon0517
Dragoonalfa
Dragoonhuntz
+Dragoonnoth
+Dragoscale03
+Dragq
+Dragster5300
Draind
Drairi
+Draiserman
Draithus
Drakanelf
+Draken Feest
+Drakenwold
Drakesh12
Draket
+Drakhom
Drakken
Draknar
DrakoVamp01
Drakonid
+DrakosWrath
+Drakuonis
Dramyre
+Dranasty
Dranty
Drap
Drapht
+Draugadroid
+Drava
+Drawbridge72
Drawde
Drawll
+Drax
+Drayden
Drayheart
+Draynth
Drazar
Drazart5
Drazhe
+Drazzo
Drbeto11
+Dre Skrila
Dread
+DreadPandora
+Dreadfvl
+Dreadnott173
+Dreadnough77
Dreadnoughtt
Dreadnuts
+Dreadzie
Dreagation
+Dreak
Dream
+Dream Deeply
+Dream Delve
+Dream Plan
+Dream Queen
+Dream Realm
+Dream Tempo
Dream-layer
DreamJT
Dreamboats
+Dreamcatcher
+Dreamchasr
+Dreamfreeze
Dreamguy
+DreamingLily
DreamingNote
+DreamisBack
+Dreams Real
Dreamscape
Dreamstain
+Dreamvil
+Dreamy Ku
DreamzRs
Drecy
+Dredd
Dreddshott
Drednok
Dreek
+Dreepy885
+Dreeww
+Dregulle
Drei
-Dreiriez_69
+Dremarial
+Drenthe
Drenz
Drenzek
Drenzi
@@ -6312,78 +12851,167 @@ Drew89
DrewNG
DrewToshiro
Drewbber
+Drewbob24464
+Drewby
Drewcas
Drewfuss32
DrewsHotMom
+Dreww
+Drex
+DrezaR
Drezilith
Drfannypack
Drgreenthumz
+Drie Fristi
+Dries D-P
+Driesca
Driest
Driewieler
Drift
+DriftTap
DriftVolvo
Driftzzilla
Driger
+Driger F
+Driink
+Drijf Hout
Drikett
Drikon
+Drill n Fill
Drink
+Drink 4 Loko
+Drink Empty
+Drink Local
+DrinkCheap
DrinkPapaMlk
DrinkSlinger
Drinkability
+Drinker
+Drinkin Pete
Drip
Drip To Hard
+Dripping Gut
DrippingSack
+Drive Stick
Driver193
Drivious
+Drizzy Drake
+DrkMstr89
Drkfirelord2
+Drlime
+Dro0
+Dro268
+Droefto3ter
Droge
+Droge Dackel
DrogeBanane
+Droid
Dromedario
Drommy
Dromy
+Dron Iick
+Drone Reed
Drone347
+Droog Meneer
Droom
Droopy
Drop
+Drop Acid
+Drop Brews
+Drop Please
+Drop Rates
+DropGetter
DropMeUrPet
DropTheFlop
DropTopWizop
+Dropko
+Dropletics
Drops
DropsWhen
+Drosaire
Droski
+Drouter
Drri
Drrrrunk
Drswole
DrtyBusDr1vr
+Drtyhnddog
Drudenhaus
+DrudgeMunkey
Drug
+Drug Test
DrugProblems
+Drugged Out
Drugonaut
+Drugs Hurt
DrugsArBadMK
DrugsHere
+Drui
+Druknr
+Drukzah
+Drum
+DrumBarrel
+Drumaz
Drummaboy276
Drummadr
Drummerz
Drums
+Drums X
+Drums of War
DrumsSpace
+Drumz
Drunk
+Drunk CCTV
+Drunk CJ
Drunk Jake
+Drunk Mimic
+Drunk Pastor
+Drunk gaming
+Drunk n High
DrunkAssassn
DrunkDriving
+DrunkGhillie
+Drunken
+Drunken Monk
+Drunken org
Drunkfam
+Drunkiin
+Drunkn Fun
Drunknerd
Drunknhiiiii
+Drwe
+Dry 4 Hilt
+Dry Cleaner
+Dry Dong
+Dry Hard
+Dry Hardcore
+Dry Soup
+Dry Trip
+Dry on stuff
+Dry so I Cry
+Dry x
DryBandit
DryWolf
Dryhump
+DryksMuseum
Dryness
Drynx
+Dryron Man
Dryskies
+Drysol
+Dryune999
Dryya
+DshubaMisfit
+Dsk 10
DssHimself
Dstroyed
+Dt2m
+DtWoofles
Dtjenl
Dton
+Du
+Du Old Pker
+Du lourd
Du5tin 3
DuTson
DuYorick
@@ -6391,233 +13019,489 @@ Dual
Dualerz
Dualicious
Duaneker
+Duarterecife
Duathlon
+Dub Season
+DubC Brownie
+Dubalonius
Dubber
+Dubbers15
+Dube
Dubie
+DubieDebies
Dubios
Dublestuffed
Dublet
Dubs
+Dubs_789
Dubsake
Dubspeck
DubstepsDead
Dubu
+Dubu Dahyun
Dubz4Dayz
Dubzy91
+Duc
+Ducid Lream
Duck
+Duck Sucker
+Duck Tape
+DuckEnte
+DuckNoSmoke7
+DuckSick
Duckcited
+Ducklovesyou
Duckreas
+Ducks Quac
+Ducks U
+DucksFatha
+Ducky HVIII
+DuckyTears
Duckzi11a
Dudash
Dude
+Dude Come On
Dude12677
Dude9103
DudeAtHome
+DudeItsMikey
+DudeWD40
+Dudefish64e
Dudeimblazez
+Dudenmi
Dudetastic
+Dudification
DuelKing
+Dufendr
Duff
+Duff Daddy
+Duff Groupie
+DuffHeavy
Duffmanas
Duffs
Duffy234
+Duffybroh
Dufwha
+Duggie
Dugong1338
+Dugsie
+Duh Kota
+Duhstin
Duhul
+DuiBuQiShaBi
+Duindorp
+Duk Me Hard
+Duke Ag
+Duke Babylon
+Duke Roland
+DukeBaird
+Dukino
+DukkuTzi
Dularian
+Dulezburg
Duli
+Dullskie
Dulwich
+Duly Ignored
+Dum n dumr
DumFuknIdiot
Dumb
+Dumb Alien
+Dumb Ass Dan
+Dumb Drunk
DumbDog
DumbMatt
DumbThiccAss
Dumbaneering
Dumbass
+Dumbass 69
+Dumbass Tony
Dumbells
Dumber
Dumbfounded
+Dumbfuk
+Dumbi
+Dumbledore
+Dumesday80
+Dumfries
Dumle
+Dumoo
Dumpert
+Dumpsterjed1
Dumwood
-DunDiddly69
+DunJunn
Dunadane
+Dunbahn
Dunc95
Duncan
+Dunco
Dundasso
Dundefeated
+DunderHonung
+DunderLadd
+Dundiez
Dundonian
Dundrift
+Dundrturken
+Dune dain
+Dungfung
Dunghead
Dunizz
Dunjins
+Dunjun
+Dunkbox
Dunked
+Dunked on
+Dunkies
+Dunkle Sonne
+DunknDink
+Dunkston
Dunlaf
DunneDone709
Dunnill
Dunwall
+Duo Armadyl
+Duo Elysian
Duodenum
Duoing
Duoli
DupaMuck
+Dupe Holder
+Duper
+Dupey
Duplicated
Dupy007
Duqq
+DuraDoobs
Duracell
Duracell321
+Duradad
Duradal
Duradels
Duradyl
+Durag Pat
+Duramax
+Durant
Duravillidad
Durex
Durexslayer
+Duri
Durial
Durial32won
Durialives
Duriel1
Duriul321
Durkburt
+Durlz
Durni
+Durns Main
Durocher
Durooo
+Durtsa
+Durtsamang
+Durtstar
Durty
DurtyFish
DurtyFish HC
Durukah
Durumfe
Durumoomoo
+Durza Spy
+Dus1O
Dusansss
Duseballs2
+Dushie
+Dusk Summers
Duskel
+Dust in
Dusted
Dusters
Dustielle
+Dustin Rush
+Dustinant5
Dustinn
+Dustins Main
Dusto56
Dustpan18
Dustt
+Dusturbia
Dusty
+Dusty cones
+DustyNoods
DustyPope
+Dustyin
Dutch
+Dutch Diablo
+Dutch Dog
+Dutch GOdz
+Dutch Genius
+Dutch Quin
+Dutch RvG
+Dutch girls2
+DutchEnergy
DutchStuff68
+Dutchbobby
+Dutchie
+Dutchtin
DutchtinOS
+DutchtinsAlt
DutchyCrazy
+Duty
Dutzu
Duuni-Pete
Duva
Duvel
+Duvelicious
Duvl
+Duwua Lipa
+Dux Sauce
Duxt
Duztin
Dvaergen
Dvdasa831
Dven
Dvlkid
+Dvn
Dvsk
Dvst
+Dw b happy
+Dw ight
+Dwagos 2
Dwake
+Dwaki
Dwarf
-DwarfDicker
DwarfSailing
Dwarfoox
Dwarfson
+Dwarve Mage
Dwaybe
+DwerlzCH
Dwibbel
+Dwight Sn00t
+Dworf
Dxnnis
Dxscoveries
+Dxue
Dxukko
Dydapynk
+DyePhix
+DyinToLive
DykeMenace
+Dyl Dough
+Dyl Gates
Dyla
+Dyla n
+Dylan Du Sol
+Dylan Iron
+DylanCarl
DylanFx
DylanWad
Dylanimal
Dylanm504
Dylann070
+Dylano
Dylbots
+DyldoGreat
+Dylectable
Dylian
+Dyllann
Dylrex
+Dyls
Dylshanwang
+Dylson
+Dylsy
Dymass
Dymenshun
Dymosh
DynamicDuo
+Dynamicdan47
Dynasty
Dynloris
Dynomite
+Dynstyreborn
Dyonutborne
+Dyonysos
Dyoung116
Dypso
Dyrakos
+DyreBatt
+Dyreshot
Dyrus
+Dysae
+Dyslexic gg
DyslexicTree
+Dyslexual
+Dysliexc
+Dyspnea
Dystopias
+Dysturbed
Dystxpian
+Dyth
+Dyvv
+Dyy
Dyzurah
Dz03
+DzRz
+Dzakar
Dzangg
Dzentelmenas
+Dzievan
+DzintarsOls
+Dzoseris
+DzsungelTyuk
Dzud
+Dzun
+E D V
+E Fox
+E MB
+E N I M A
+E R A
+E S H
+E SL
+E V 0 L
+E Z I O
+E hm C uee
+E ldest
+E lixor
+E lvarg
+E lves
+E mni
+E mpathy
+E njoy
+E nvy
+E p i i
+E r ic
+E th
+E thy
+E volve
+E-Dawg478
+E-Grill
E-Hubble
E-S-T19XX
+E1K
E4as
EA888
EARLYoCUYLER
EBDB
EBIDABLAY
+EBZ
ECCIES
ECH0
+EC_Legends
+EDATERHG69
EDGV1L
+EDM Erik
+EDM Playlist
+EDMJo
+EF tanq
+EFFlClENT
+EFILLAICOSON
+EFL
EG6808
+EGA
EGIRLSIMPER
+EGirl Marcy
EHPause
EHstro
EIGRP
EIessar
+EIithi
+EJ 207
+EJackUL8
+EL BULLYS
+EL GA TO
+EL Guuapo
ELCAMI
ELFlikeaBOSS
ELITE
+ELJosh
ELUSIVE
+ELVD
+EMIYA Alter
+EMPER0R95
+EMaes32
+EN X
ENAC
ENimmo
+EOCscape
+EOD20
EODdv
EPLS
+EREXI0N
ERGENEKON
ERJ145XR
+ERRIE HERRIE
ERRORMONSTER
+ESCEDDIE
+ESP Zone
ESPARG0
+ESPORZUL51
+ETE76
ETHIOPIAN
ETurns
+EV6A
+EVA ELFlE
EVE0
EVScape
EWFPLMFRLRLF
+EXECUT0RZ
+EXTT
EXpoZuR
+EZ Tag
+EZ Till Dead
EZ-Y
EZBar
EZnvm
+EaTZyourOReO
Eac63
+Eadgars Ruse
Eadles
Eagel89
Eager
Eagle
+Eagle Eye
EagleSafari
EaglesWentz
+Eairj
Eajk
+Eara1
+Earendil
Earl131
EarlRico
EarlVincent
Earll
+Earll Ragnar
EarnNest
+Earth rune
+Earth1ing
+Earthling Em
+Earz
+EasY FraG
Ease
East
EastEnders
EastSyde
+EastWho
+Eastlakeclub
+Eastment
Easy
+Easy Girls
Easy1
+EasyDingMike
EasyFro
+EasyJet
EasyNoRoids
EasyRNG
EasyTurbo
EasyWhale
+Easycore
+Easyskillszs
+Eat Crow
+Eat God
+Eat Hot Chip
+Eat Tacos XD
+EatBrick Kid
+EatMoreGlue
EatNutsGegex
EatSand
EatSleepPlay
@@ -6625,43 +13509,84 @@ EatULive_666
Eatbananana
Eathan
EatingBigD
+Eatpiebro
+Eats Pant
EatsPoop
Eatu
Eazie
Eazy
+Eazy AF
+Eazy Rat
+EazyGam3
Eazy_Peazy16
+Eazymon
+Eb Marah
Ebbitten
+Eberebus
Ebgame2
Ebinki
Ebisumaru
+Ebola
+Ebolapaska
Ebp90
Ebrahem2004
+Eburr
+Ec0
+Ecahs
+Eccles Alt
Ecdubs
Echo
+Echo GIM
+Echo Justice
+Echo Slam
Echo4211
+Echo_XVII
+Echte Belg
+Ecko RS
Eckou
Eclardyne
EclecticDern
Ecnubsirhc
EcoLite
+EconPhD
+Ecs Nick
+Ectuu
+Ecxes
+Ed Dobalina
+Ed Si
+Ed Word
EdEddndEddy
+Edd Gein
Eddapt
Edde7000
+Eddi e
+Eddie GGs
+Eddie MLG
Eddie1402
EddieMercury
EddieTross
EddieVanHalo
+Eddoz
+Ede n
Edelbae
Edelweise
+Eden XD
Edga64
+EdgaRyto
Edgar
EdgarAlnGrow
EdgarKing
+Edgarr
Edge
+Edge c dr
+Edge51
Edgelord
+Edgerunner
Edgevill
Edgeville
Edghill
+EdgingGod
+Edgy Boss
Edgykid
Edgynald
EdibleChickn
@@ -6669,22 +13594,48 @@ EdibleSnow
Edisx13
Ediverse
Edje
+Edjob
+Edmund
+Edn
+Ednnnx0
EdoKirurari
+Edocsil Domi
+Edocsil IRON
EdotheJew
+Edoxa
+Edpls_o
Edson
Edspresso
Edsy
+Eduardo II
+Eduardoo II
Eduasia1
+Edunu
+Eduzey
Edvin
+Edvius GO
Edvyno1
Edwald0
+Edward Teach
+Edward phish
Edwarriorx
Edwin Ownz
+Eeeeeeeman
Eeeeera
+Eeekpenguin
+Eeepen
+Eek The Nub
Eeli
EelsUpInside
+Eem lekker
EenViezeVent
+Eend btw
+Eendsaurus
+Eernegem
Eeveeeee
+EeveyBee
+Eexhausted
+EfORya
Efendi
EfficientBot
EffinNips
@@ -6692,63 +13643,147 @@ Effril
Efnie
Eform
Eftur
+Egg Boy
+Egg Olmlet
+Egg rolls
+EggInTheRain
Egganator1
+Eggs 11
+Eggs N Bacey
+EggscapeRoom
+Eggspert
+Eggssmells
Eggsy
Eggtooth1
Eggy
+EggyChipz
+Eggzotic
+Eglerz
+EgoTeri
Egoistic
Egoran
Egorous
Egotistixal
+Eh MapleTree
Ehdjsnd
+EhhFK
+Ehms
Ehnra
EhpEhbGrind
+Ehpatrick
+Ehpriori
EhrenSpoon
Ehunter
+Ei hekille
+Eidolonvool
Eientei
+Eigenspace
+Eigenvalues
Eight
+Eight_10
+Eigma
+Eihwaz
EikAyZ
Eikel
+Eilfs
Eimp
+EinBerlin3r
Einar
Einaras
+Eindbaas
+EindelijkMax
Eingebildet
Einsteins
+Einswarior3
+Einyel
Einzelkampf
Eirik
Eisen
+Eisengor
Eitsei
Ejiogbe88
Ejjj1000
Ejma
+Ejx
+Ekali
Ekim
+Ekim117
EkkoThresh
Eklof
+Eklofs
Ekonomisti
+Ekovo
+Ekstra
+Eksynet
+Ekwendeni
Ekxo
+El Arana
+El Blame
+El Blaze
+El Boppo
+El Chip
+El Ghost
+El Guapo
+El Panache
+El PapiTrump
+El Pato lOko
+El Patolino
+El Pinguino2
+El Podger
+El Scouse
+El Smurf 370
+El WarLord
+El Znorro
+El-Fahoum
ElBlancooo91
+ElGatoGris
+ElGreg_4
+ElHash
ElJReezy
ElJohnny
ElOso
ElPoyoSenpai
+El_Pickle69
Elaedor
+Elano
Elasticy
+Elatedscarab
+ElationArrow
+ElbartoOSRS
+Elbowd
+Elbows Out
Elbs
Elchapo24
+Eldasero
+Elder Coal
+Elder Siroj
+Elder nerd
+ElderMoth
ElderRyu
Eldereon
Elderpliney
+Eldest Sense
Eldia
+Eldin
Eldonskii
Eldoubleyou
Eldrek
+EldridPenny
Eldritch
+EldritchMage
+Elduz
Eleandil
Elebit
Electr0lysis
Electric
+Electric Mud
+Electric cat
+Electrics
Electrike
+Electro Beat
+Elektr0nas
Element
+Element Sk8
Elementality
Elementhur
Elementiix
@@ -6761,57 +13796,97 @@ Elendaro
Elenion
Elephanten
Elephants
+Elephantz
Elephent
Elev
+ElevatedLife
ElevatedSoul
Eleven
Elevennn
Elevil
Elevo
Elexuitt
+Eley
Elezar
Elf King Leg
+Elf u
+Elfess
Elfie
+Elfinsocks
Elfire626
ElfsWordFly
+Elgifted
Elgingo1
+Elgstant
+Eli Ancients
+Eli Fe
+Eli Junior
Elia135792
Eliass
+Elice
+ElichikAyase
Elicit
Elif
+Eligos
+Elijah Who
Elilia
Eliot
Elipson
Eliptats
+Elirond
Eliseuh
Elit
+Elitaire Lul
Elitarisme
Elite
+Elite HIT
+Elite Moscu
+Elite Sendi
+Elite Slayer
Elite387
+EliteJager
ElitePvmer
EliteScaper
+Elite_Quests
Eliteisftw
ElitesEyes
ElitesFinest
+Elitist Weeb
+Eliwin
Eliwood225
Elixir
Elizabethboy
ElizeRyd
Eljaaa
+Elkanath
Elkias
+Ell1eScape
+Ellakazam
Elliebus23
Elliot727
Ellise29
Elliterate
Ello
+Ello Ron
Ellphie
+Elly Dog
ElmSpringsTN
Elmatron
Elmo
+Elmo Narca
+Elmos Wrld
+Elmswood
+Elnaphant
Elnuma
+Elo Luigi
+Elo Solo
EloJimmini
Elocuente
+Elodie
+Elon M9sk
Elons
+Elox7
+Elpis
Elppu
Elqnaattori
Elrebririand
@@ -6821,56 +13896,121 @@ ElroyFTW
Elryeth
Elsa
Elshak
+Elsheshima
Elshi
+Elshire
+Elsworth
+Eltader2
+Eltry
Eltuu
+Elucidation
+ElunedsSong
+Eluniel
Elusive
+Elusive Drop
Elusive818
+ElusiveOne
+Eluti
Eluw
Elve
+Elve Alt1
+Elve Elve
+Elveiq
Elven
+Elven Durant
+Elven Lamp
+Elvenborn
Elverum
Elvey
Elviax
+Elvin
Elvis
+Elvis Crespo
+ElvisArt069
Elvs
+Elvyn Frenzy
+Elvz
Elwood
+Ely the Man
+ElyGoulding
Elyam
+Elyaris
+Elyas5
+Elyas_Max
+Elycal
+Elyes
Elyixa
Elynescence
Elyphosani
+Elyqs
+Elyrion
+Elysi
Elysian
+Elysian Brew
+Elysian OSRS
ElysianError
ElysianOP
ElysianTank
Elysianlove
Elysianz
Elysion
+Elysiuhm
+ElysiumFalls
Elyte
Elyxr
Elyysian
+Elyzarin
+Elz
+Em il
+EmTvLive
+EmaBeast OS
EmaRae
+Emacity momo
Emad
EmagndiM11
+Emalexa
Emanated
+Emanuel
Emasterone
+Ember
+Ember of Ash
+Embereus
Embossis
Emce
+Emeowtion
Emerald
+Emerald Jack
+Emeraldx
Emergency
Emericanpkur
+Emerickb93
+Emeritas
EmeritusD
+Emhrys
Emiel
+Emiel Btw
EmielM
+Emielos
+Emiit
Emilharen
Emilis
+Emilliio
Emilozz
+Emilozzz
+Eminem Yupp
+Emirdagli
Emirdagliii
Emithyst
+Emiya Shiro
Emma
+Emma Main
+Emma Q1
+Emma epsi
Emma1020
EmmaCn132
EmmaEmma
EmmaRose
+Emma_RC
Emmaes
Emmalitarosa
Emmet1156
@@ -6878,28 +14018,52 @@ Emmet20
Emnay
Emnicious
Emnitylol
+Emo Bee
+Emo King
Emoness
Emoticon
Emoyy
+Empathy TKE
Empathys
Emperor
+Emperor Elo
+Emperor Xau
EmperorBuggy
Empery
Empire
+Empire State
+Empireglorth
Empirix
Empty
+Empty Box
EmptyB
EmptyBox
Emptyhalo
+Emptynogin
Empyre
+Empyrius882
+Emriat
+Emu War
+Emumafia
Emus
+Emylia
En Jernmand
+En ki
+En oo vajaa
En99omgangen
+EnCue
Enabled
Enabler
Enanthat
+Enbrel
+EnbyDeal
Encrypted
+Encryptiron
+Encyclopedie
+End Goals
+End Grind
End1ess
+EndOnDeath
Endanged
Endem1c
EnderMart
@@ -6907,134 +14071,266 @@ Enderofwar
Endgame
Endgameplzz
Endgegner
+EndingTime
Endir
Endl3ss
EndlesNights
Endless
+Endless Dawn
+Endless RNG
+Endlingg
Endo
Endor
+Endos
+Enedal
Enemez
+Enemm
Enemyboy
+Energie
+Energise
Energy
+Energy Dave
+Enert
Enes
Enfers
+Enfes
+EnforcerOP
Eng1and
Engage
+Engagement
EngelNacht
Engen
Enginaer
Enginarc
Enginear
-Enginerd07
+Engineer Sam
+Engineered
+Enginerd09
+Engl1sh
Englandwon
Englebassen
+Englehr
English
+English Sir
+English noob
Enhtitled
EnigmaCoder
EnigmaWR
+EnigmaZen
+Enis Kanter
+Enivid
Enjoi
EnjoiAssault
Enjoy
+Enjoy It
+Enjoy Today
Enjoymydhide
Enjoys
+EnjoysQuests
+Enk rypted
Enkaidu
Enkeltje
+Enkh
Enki
+Enkidu260
EnlargedNads
EnlargedNut
+Enmios
+Enora Nyx FE
Enoran
Enormous
+Enormous Hog
+Enos
EnoughGfuel
+Enoux
Enphadei
Enraged
+Enraged Crow
+Enraged Lamp
+Enranged
Enrich
Enrico
Enrik
Enroza
Ensanguined
Enshu
+Ensnare
+Ensomhet
+Ent Sapling
+Ent1tle
Enterprise
+Enthusigasm
Entitled
+Entiy
Envello
+Envidius
Envied
Envil
Envious
Envvi
+Envx
Envx1
Envy
+Envy S
+Envy lul
+Envyctus
EnvyouS
Envys
Envyy
+Enza Denino
Enzed
+Enzel
Enziguru
Enzyme
EoMeri
EocBlowsNuts
Eodwyn
+Eol Ivan
+Eos Adamm
+Eos Mark
Eostrix
+Eowy
+Ep1breren
+Epaah
Eperz
+EphermalGoat
+Ephi
+Ephrayim
Epiales
Epic
+Epic Nom
+Epic Popo77
+Epic Specz
+Epic Star
+EpicGamer69
EpicReefer
+EpicSalmon
+EpicSpasms
EpicToaster9
+EpicTomato
EpicX
Epic_Knight0
+Epicderk
Epicoz
Epicurus4
Epicvoid
Epicx
+Epigraphs
Epiixx
+Epikki
Episodic
+Epitohm
EpitomeSlay
Epix_x
Epiyon
Epods WifeY
+Epoinen9
Eponas
Eposs
+Eppdawg
Eppers
Epping
+Epson Eco
+Epyll
+Eq
Equilibria
+Equilities
Equnox
Eqwity
+Er0l
+Er1kasss
ErBr
+Era
EraJorma
Erabeus
+Erad
Eradicus
+Eragon 1
Eragondragen
Erase
+EraseThat
Erased
Eray
+Erbal
ErbearIV
+Erbiboar
Erbyss
+Erdi
Erebus
+Erect Chair
+Erect Diglet
Erectus Croc
+Eredln
+Eren The Nub
+Eren Yaegar
Erg129
+EriUmi
Eric
+Eric Brad
+Eric Dingus
+Eric Hansen
+Eric RS
+Eric V
+EricN7
EricPrydz
+EricR95
EricTheNoob
+Erica
+Erican Maxos
Ericc
+Ericgone13
+Erichilles
+Erics Pixels
+Ericsurf6
Eriction
Erie
Erijk
Erik
+Erik Ryatal
ErikProbably
+Erikaugust
Erikci Jr
-Erikito07
+Erikito09
+Erikkert
+Eriknau
+Erikoisjouko
Erikoiskahvi
+Eriksen14
+Erikske89
+Erikv28
Erinus
+Eriscord
+Erixzo
Erkki
+Erkki Pers
+Erkkiks
Erlid
+Erlin
Erlksson
+Erm its me
+Ermac
+Ermafrodita
Erna
+Ernestaiii
Ernesto056
Ernsour
+Ero
Erock2828
Erocktastic
+Erodel
+Erodoris
Erony
Eros
Erosei
+Erotic Maid
+Eroxtroy
Error
+Error 510
+Error X Life
+Error812
+ErrorSeven
Errric
+Errrr
Ersei
Ershayz
Ershayzz
@@ -7043,29 +14339,44 @@ Ertsu
Eruni
Eruptingcat
Erwin
+Erwin J
ErzaGames
ErzaScarlet
+Es0x Luc1us
EsArTee
+EsJayW
EsXP
EsbenViking
Esbuh
+Esc anor
Escalation
Escaline
Escanor1994
EscapeMaIron
+EscapeWhere
Escension
+Escha
Escnirp
Esconex
+Escot
+Esd
+Ese Burrito
Esham
+Esheme Sen
Esimies
+Esinaahka
Eskalt
Eskandar
Eskeleto9
Eskett
+Eskett II
+Eskib0y
Eskii
Eskild
Eskimeme
+Eskimo
EskimoFro
+Eskizzibur
Esko79
Eslamm
Eslihero
@@ -7078,10 +14389,16 @@ Espuky
Espyria
Esquelito
Essencehour
+Essex RS
Essylle
+Est Bellum
Estafeta1
+Estar
+Estebaan
+Esteedee
Esteeme
Esteet
+Esteffano 3d
EsterKai
Esterbrook
Estetica
@@ -7089,20 +14406,33 @@ EstevamStain
Estiem
Estonia9184
Estra
+Estrogenizer
+Estus
Estusin
Esya
+Etakenai
Etardoron
EtchaSketcho
Eternal
+Eternal Envy
+Eternal Max
+Eternal NEET
+Eternal Orb
+Eternal Qt
+Eternal Riw
EternalGuide
EternalHeart
EternalPants
+EternalSin9
Eternalfury2
Eternalgod99
Eternity
+EternityAP
EternityEndz
Ethaan
Ethan
+Ethan Hunt
+EthanMcSexy
Ethanol
EthansMain
Ethel
@@ -7111,157 +14441,304 @@ EtherBunny
Etherealist
Ethereous
Ethernet3
+Etherscan
Ethoxide
+Ethread
Ethwin
Etikk
Etis
Etkzera
+Etna
Etnie0
Etobicoke
Etrengereid
EttLitetHus
Etuovi
Etyaz
+Etymology
+Eu_Matheus
Euanx
Eucaryptus
Eucleides
Euclidian
+Euclipenguin
+Euf
+Eugenepickl3
+Euhem
+Euhh
Eukaryote
+Eukko
+Eulers Eagle
Eulogise
Eunbiii
+Eunie Xeno
Eunx
Euphael
+Eupharu
Euphorion9
+Euphoriotic
Euro
+Euro Centric
+EuroGarden
Eurovizija
Eusheen
Eusiriito
Euthia
+Euxii
+Euxy
Eva-O1
Evadari
+Evaiv
EvanWilliams
+Evanz40
Evaptix
Evawe
+Evdog
+Evelynn UwU
Evemarner
+Even2000
Even3518
EvenMater
+Evenepoel
Evening
+Eventyrlig
Ever
+Ever so Dark
+EverSingular
Everglow
+EveronSky
Eversiction
+Every Color
+Every Word
+EverybodyZuk
+Evette
Evictus
Evil
+Evil Buu
+Evil H
+Evil Inari
+Evil Kenevil
+Evil Lizard
+Evil Lord
+Evil Nishiki
+Evil Oak
+Evil Twin
+Evil Zayne
+Evil-Mind69
Evil3yez
EvilCopycat
+EvilDeeds
+EvilDegen
EvilFootLong
EvilH4mmy
+EvilOwen01
EvilTriumphs
Evilaz
+Evildoer
+Evilegod2
+Evilelfy
Evilhammer
+Eviljay
Evillized
Evilstar34
Eviltroll648
+Eviran
Evirane
Evnn
Evo9
+EvoSlacker
EvoSlayz
+EvoeHalt
Evoke
Evolooner
Evolution
Evolved
+Evra
Evrs
Evrybodypays
Evse
Evuk
+Evultion
+Evylix
Evytt
Evzmac
+Ew Its Mike
Ewan BTW
+Ewang
+Ewiiyar
Ewmu
Ewos
+Ewya
+Ex Files
+Ex Holy
+Ex Port
+Ex Sythe
+Ex-Slur
Ex3rt
Ex903
+ExHCMangy
+ExMachina
+ExMaxxed
ExPro
+ExPsi
+ExQ Bratan
+ExSevenTech
+ExShiron
+Exa OuO
+Exaalt
ExamJ
+Exambient
+ExamineCoins
+Examines
Examon
+Exanso
Exarch
+Exasperation
Exaz
+Exbos
Excadrill
Excaria
ExcelIsLife
Excellarate
+Excellini
+Excinium
Excise
Exclude
Exclusic
Excody0
ExcuseMyStr
+Execrating
+Executed
Executes
Exella
+Exem
Exercise
Exero
Exflacto
Exhaust
Exhibition
Exhumed
+Exi Sisukas
Exia
Exile
+Exile Vision
Exile88
+Exile_vChad
+Exiled Noobi
+Exiled Peon
+Exiled Slay
Exileeeee
Exiquio
Exiriam
Exiting
Exmigrant1
+Exminer
+Exo25
+Exoden
Exodusty
Exonaut
Exor
+Exorcism
Exoristic
Exorzist
Exotic
+Exotic Xenon
+Exotica
+Exotick
+Exp Jesus
+Exp Nerd
+Exp Wasting
Expaaja
Expansa
Expansce
Expanse
Expensive
+Experience
+Expl0it
Explaindeath
ExplicitPvm
+Explodet
+Explodium
+Exploiter
+Explorer
+Explorifice
Explosia
Expochan
Export
+Expozz
Expressed
+Expressen
Exright
+Extella
+Extended C
Extile
Extinct
+ExtinctDecay
+Extinguished
+Extortionate
Extra
+Extra Chance
+Extra Droog
+Extra Poor
+Extra Shadow
+ExtraRNG
ExtractorX
+Extranjer0
Extreemkills
Extrem3b0y
Extreme
+Extreme JeJe
+Extreme Moo
+Extreme Pray
ExtremeJokeR
+Extremterms
Extrim
Extrovert
Extubation
+Exty
Exultia
Exume
Exus
+Exus De
Exustron
Exwalker
+Exxtinct
Exynyt
+Exz0
+Exzacly
+Exzactly
Exzakly
+Exzian
+Ey1
+Eye patch
+EyeBDaMan
EyeHaveToPoo
EyeMakeYouQQ
Eyeless
+Eyelessjohn
Eyeofdeath3
+Eyeron E
+Eyes Inside
EyesLowIndo
EyezClosed
+Eyggs
Eylix
Eymox
+Eyrfire
+Eyup xD
+Ez Klaplong
Ez4Peru
+Ez4u2nv
Ez4u2say
EzBot
EzCashin
+EzSlayEzLife
EzUnReal
Ezarc HCIM
Ezdrae
+Ezero Br
Ezey
+Ezfart
Ezia
Ezra
Ezup
@@ -7270,119 +14747,299 @@ Ezxkiel
Ezzardx300
Ezzi
Ezzuna
+F 3 4 R
+F 0 N Z Y
+F 3 R R U M
+F A C E
+F A N TT I
+F E L I CYA
+F For Flash
+F I X E D
+F L A T
+F M L
+F R A T
+F Ribeiro
F SONY
+F T P
+F You Bro
+F athlete
+F e e b s
+F l a n Cat
+F l u f fy
+F l ux
+F loofy
+F reeze
+F u z Z e
+F ury
+F-16
+F-ck Bleed
+F-ck Irons
+F00DCOMA
F00F
+F0O
F0REIN
F0ZI
+F0cus Me
F0rtune
+F0sta
F0xBr34d
+F1 Mercedes
+F104
+F19
+F1REWIND
F1nalHour
-F1nduz69
F1rst
F1skemann
+F1tn3ssWorld
F20z
F23A
+F2L
+F2P Waifu 07
+F34r My B0w
F34rcr4ds
+F3ARCE
+F3LINA
+F3lo
F4DE
+F4TB0Y
+F4ust
F4xi
F7VD3
F80Scott
+F8n
+F8tz
+F9
+FA DY
+FA Joel
FA1Z
+FAILED ZEUS
FALLGIRL1029
+FASHl0NSCAPE
+FASTBLAST I
FATHER
+FATHER RANCH
+FAlRWEATHER
+FBD
+FBGM 101
+FBGMi
+FC Groningen
+FC Liverpool
FD3S_RX7
+FE AltScape
+FE Cerise
+FE Endeavor
+FE Mazoku
+FE Smore
+FE wretch
+FE80 Seal
+FEJMBE
FER00
FER0C1OUS
+FERTILE DONG
FEstlkerpeng
+FFA
+FFA Everyday
+FFASplit
+FFIE go brr
+FFS Sam
+FFV
FF_GhiLLi
+FFelidae
FGHTIN
+FHV
+FIDADDY
+FIFG Phat
FILLME
+FIRE 0F
FIRESlTE
+FISHY au
+FIV3
FIying
+FJ
+FK Corp
+FK TURAEL
+FK1
+FKGlory
+FKN RAPTOR
+FKRA
+FL jit
+FL0CK
FL3XPL3K
+FLAPPYLIPZ
+FLC L
FLOR1DA
FLYGOD
FLYING
FLgoob
FLoKii
+FM DOOM
FMGbrien
FMLshes17
FMarshalBill
FN2187
+FNA
+FNEkkGKGKWGK
FO-LAZY
FOES
FOLEM
FONKY
+FONNlX
FOSTEEEEZY
FOUO
+FOUR GATSU
+FOV90slider
+FOXBRAH
+FP Engineer
FR1T
+FRAQSTAR
+FREEBABA
+FREED0M 1776
+FRIENDSHRIMP
+FROM ICELAND
FROO00OO0ZEN
+FROSTYFOO
+FROXBURG
+FSK Gaz
+FSW 2JZGTE
+FTI
FULGRlM
FUTRHNDRX
FUTillIFU
FVChallenger
+FW HYPZ
+FX Teddy
FXF_Tails
+FYXON
+Fa k er
FaBeSCa
FaNNtastix
FaZe
Faabio
+Faalk
Faardo
+Faarihn
+Faathos
Fabario
FabiScape
Fabiann
+Fabidjann
Fabiiano
+Fabioso
Fabled
+Fabled Fox
Fabreezy
+Fabretzio
+Fabsitz
+Fabulence
Face
+Face Seat
Face9
FaceHook
FaceTheFacts
+FacedBased
Facehuntter
FacelessBoyd
+Facilis
Facing
+Fack Russia
+Factual
+FadaPDF
Fade
+Fade Lightly
+Fade zz
+Faded Crook
+Faded Focus
+Faded Lungz
+Faded Past
+FadedFace
Faderfouras
Fadfats
Fadge7
Fading
+Faeanaro
Faebat
Faeles
Faerindel
+Faested
+Faf
FahQ
+Fahim
+Fahrbot
+Fai1ure
+Fail Be Dont
+Fail Friday
+Fail Stacks
FailFish
+FailedNoob
FailedZerk
Failing
+Failocity
+FailsauceFTW
Faint
+Faint Dallas
Fair
+Fair Folk
+Fair Luck
+Fairburn
Fairex
FairiesBane
+FairlyDecent
Fairr
Fairr Enough
Fairwolf139I
FairyFeind
FairyVeiler
+Faith xd
Faiu
Fakdo
Fake
+Fake Chad
+Fake Dylan
+Fake ID
+Fake Levi
+Fake Pobble
+Fake Suffer
+Fake Will
FakeBallots
FakeGirl
+FakeNews_CNN
FakeNudez
Fakent
+Fakeppa
+Fakez07
Fakezgen
+Fakn Oats
Faknius
+Faku
+Fal
+Fal7
Falabar247
Faladalore
Faladas
+Faladoor
+Falador
+Falador Sq
FaladorabIe
-Falcodair69
+Faladorks
+Faladussy
Falcon
Falconf1
Falconr
Falconz420
+Faleis
+Falestine
Falkenberg
+Falkuntpunch
+FallOfSolace
+Fallacy i
Falladis
+Falldyl
Fallen
+Fallen Dark
+Fallen Hopes
+Fallen Noble
FallenBlur
+FallenGods
FallenOutlaw
FallenSlayer
Fallenchamps
@@ -7395,158 +15052,395 @@ Fallon
Fallout
Falloutah
Falls
+Falls Apart
+Falls Road
+FallyFiddler
+Fals
FalscherHase
False
+False 9
+False Boon
+False Divine
+False News
FalseGod
Falsemorels
Falubo
+Fam
Fam Chi Boy
+FamIso
Famcloth
+Fame is
+Famexx1337
+Famfrit
+Familia
+Familie
+Family Crest
+Famished Fe
+FamishedNine
Famjam
+Famoose
+FamousBowl
+FamousBowls
FamousPixels
Famuel
+Fan
+Fanatic Est
Fanatiker
Fanawr
Fancys
+Fandri
Fanfiction
+Fang Dude
+FangJo
Fangsie
+FannyPaca
+Fantasieloos
+Fantastik
Fantikerz
Fantomine
+Fantrix
+Fany Pack
Fanzi
Fappel
+Fapperd
+Fapple Bees
Fapricorn
Fapworthy
+Far Alone
FarAke
FarFarOut
+FarNear
+Farages Army
+Faragi
Farah
+Faramir
+Faran
Farao
Faraolorddd
+Farcry25
Fareham
Farelinho
+Farenru
+Farewell Bud
Farfire
+Farid Lord
+Faridi
+Farigno
Farkle
+Farkwar
+Farlz
Farm
+Farm Strong
Farm11m
Farm3r
+FarmHub
+FarmRun Clay
Farmance
Farmay7
+Farmelot
+Farmenheimer
Farmer
+Farmer Blake
+Farmer Crab
+Farmer Dannn
+Farmer Jayy
+Farmer Johnx
+Farmer McGee
+Farmer Santa
+Farmer Wull
+Farmer Zach
+Farmer Zratz
Farmers
Farmertree
Farmin
Farming
+Farming Arma
+Farming Moe
Farmingfoxx
+Farmingtool
Faroeallstar
Faron
Faror
Farpoint09
Farqin
Farrier
+Farron08
Farseer
+Farseer Hat
Farsight2
-Fart
-Farting
-Fartman
-Fartmancer69
+Farssi
+Fart Gunner
+Fart Shartly
+Fart Weed
+FartInMyGob
+FartSymphony
+Farthinder
+FartinLKing
+FartinLuther
+Farting cat
+FartingCow
+Farts2Wet
+Farty Ass
+Farukoo
FasTLT
Fascia
+FashionBTW
+FashionPig
+Fashy
Fast
+Fast AF
+Fastenal
Fasterman
Fastly
Fastmagepk1
Fastmaniac
+Fat Bawlsack
+Fat Boobs
+Fat Cat
+Fat Clouds
+Fat Fur
+Fat Goombah
+Fat Jonny
+Fat Leb
+Fat Maniac
+Fat Mat
+Fat Moron
+Fat Nymph
+Fat Rackz
+Fat Ralph
+Fat Salesman
+Fat Swaggy
+Fat Thin
+Fat Waddle
+Fat Wirgin
+Fat Wrath
FatBIunt
-FatBoySwag69
+FatBurgerKid
FatClock
FatGreasyGuy
-FatHogCumGod
FatITguy
+FatKidBrett
FatKidHougie
+FatMonkey
+FatSlutKing
+Fatafeat
Fatal
+Fatal Cazual
+Fatal Psycho
FatalReign
FatalXfire
FatalisRS
+Fatalsystem
Fataltorment
FatboislimOS
Fatboy6
+Fatcav2
+Fatceps
+Fatdogs11
+Fate Gu
+Fate Z
+Fateq
FatesWarning
+Fatez
Fathead
Father
+Father Of 3
+Father Of M0
+Father Tacos
Fathey
+Fatmat
+Fatrekt
Fatso
Fatstinkysak
+Fatterhead
+Fatty Combat
+Fatty Park
+Fatty-Kent
Fatty380
+FattyIsntFat
FattySupreme
FattyTerps
+Fattybanger
Fattymcdugal
Faultty
+Fausto
+FautleferQC
+Fave
+Favelador
+Favion
+Faw OCE
Fawka516
Fawn1460
Fawz
Faxon
+Fayl
Fayumi
+Fayv
FazTazTic
+FazeQ
FazeSkilling
Fazebook
+Fazed Imp
Fazist
+Fcape
+Fcbfan1994
Fctillidie
+Fe AND17
+Fe Adex
+Fe Alma
+Fe Anakin
+Fe Bastok
+Fe Carter
+Fe Clay8
+Fe Cremator
+Fe Dahje
+Fe Dentyste
+Fe Dopamine
+Fe Gangsta
+Fe Grom
+Fe Gson
Fe Hellpuppy
+Fe Hucks
Fe KabooM
+Fe Kiteman
+Fe Kyle Fe
+Fe Liquid
+Fe Logix
+Fe Louis
+Fe MGTOW
+Fe MagicMan
+Fe Monkey
+Fe Mulks
Fe Nail
+Fe Nini
+Fe Nocturne
+Fe Nylost
+Fe Oakdice
+Fe Papi
+Fe Patrick
+Fe Pvm Tiger
Fe Pyles XV
Fe Qlimax
+Fe Republic
+Fe Rex
+Fe Sav
+Fe Setting
+Fe Skilleye
+Fe Slammed
+Fe Sten
+Fe Tentacles
+Fe Thijssie
+Fe Tomie
+Fe UIM
+Fe Viraxic
+Fe Werty
+Fe X AE A-Xi
+Fe Xems
+Fe Zachpnnc
+Fe Zelta
+Fe anor
+Fe ared
+Fe depressed
+Fe elsBadMan
+Fe il
+Fe lonies
+Fe lungs
+Fe lyne
+Fe r a t
+Fe rgy
+Fe ta
Fe-ranator
+Fe0xi
+Fe20
Fe26
FeBriZley
+FeCapedSloth
FeCrab
FeDestroyed
+FeDyl
FeFiFoFum
FeFireTruck
FeFlo
FeFox
FeIII
+FeJonnisjoen
FeKyle
+FeMale Chris
FeManlett
FeMattsheets
+FeMoist
+FeMudcheck
+FeNote
FeOx
+FePash
FePinkviini
FeReelix
FeShane
FeSolaris
FeSynical
FeTaeliah
+FeUIMIronBTW
+Fe_Schrute69
+Fe_StarLord
+Fe_Symphony
FeaR
+Feaaar
FeagMeister
Fear
+Fear Fun
FearKev
FearMyTM26
+FearOfChange
+FearSamurai
FearTheBear
FearThyDoom
FearTurkey
Fearengineer
Feargasm
FearlessFudu
+Fearmaker1
Fearrod
+FearzebuJr
Feasted
Feather
+Feather Bug
Feathereli
Febelz
+Febreezio
+FecesFyrHose
+Fedad
Feded
Federal
+Federated
+Fedji
Fedo
+Fedooool
Fedt
Feebee
Feebz
+Feed Forward
FeedMePlants
Feedback
+Feedle
+Feek 1
+Feel Ya
+FeelMyBirdie
Feelin
+Feelin Fine
+Feelin It
FeelinHappy
Feelmygame
Feelosophy
Feels
+Feels Lonely
+FeelsDuBis
Feelsbadkapp
FeelslronMan
+FeelzBradMan
Feen
+Feet Watcher
+FeetFunGoose
+FeetPic
Fefe3
FefilleLaDur
Fegicaly
@@ -7554,48 +15448,96 @@ Fegoob
Feint
Feisty
Feit
+Feitn
+Fel
FelNeck
Felamar
Feldip
Felgenhauer
+Feli-Marie
+Feliaff
Felinaed
+Feline Feast
Felix2
Felixa
+Felixigor6
+Feller Crus
+Feller Magic
Fellow
+Fellow Fool
+Fellowships
Felmyst
+Felon
+Felonies
+FeloniousHam
+Felony Ruler
+Felted
Female Henry
+Fembo y
Femboi
+FemboyFloppa
+Fementedspaq
Femister
Femke
+Femke Bol
Femkekos
+Femstiq
Fencig5
+Fencingduck
Fencko
Fender
+Fender Axes
+Fender Twin
+Fendoral
+Fene77
Fenerbahce
+Feniks366
Fenix Downs
+Fenix Kiros
Fenkat
Fennikel
+Fenny RS
Fenomeno11
+Fenothiazine
+FenrilasIM
+Fenrirs Fall
Fens
+Fenshy
Fenske
+Fented
+Fentenal
Fenternal
Fenyxgreen
+Fenzo
+Fenzy
+Fequites
+Feral Wiki
FeralFiddler
Feralblood
+Feraligatr44
Feraliigatr
Feratzu
+Ferbzy
FerdaWoox
Ferduh
Fereekelor
Ferlide
+Fermeon
Fernando-Frv
Fernie
Ferny
Fero217
+Ferocious J
Ferocious97
+Feroos
+Ferousity
+Ferpderp
Ferrarezi
+Ferrari
+Ferrari Enzo
FerrariScape
Ferrat
+Ferrdie
Ferreklop
FerretFoSho
Ferrex
@@ -7605,117 +15547,216 @@ Ferring
Ferrinheight
Ferro
FerroPlanty
+Ferrothan
Ferrothorn
Ferrous
+Ferrous Frog
+Ferrous Hugs
+FerrousBoii
FerrousWheel
FerrousWolfe
+Ferrowing
Ferrum
+Ferrum-56
FerrumPawn
Fersapian
Ferus
+Ferus Ferrum
+Fervor
Ferynys
Fesan
Fesenko
Festis
Festiva
+Fesu
FetaCheese
Fetetchie
Fettisdagen
Fetus
Feudal
+Feunk
Fewest
Fewideahide
+Feydx
Feyenoord36
Feylon
Ffilteg
FfsImAfk
FgtBob
+Fhil
+Fhk Trudeau
Fhpure1
+Fibeer
Fiberlight
+Fibix
+Ficc
Ficomon
+FiddlesLeaf
+Fidds93
+Fiddy Ate
+Fiddy Bag
+FiddyDuddy
FiddySweens
+Fidelity
Fiege
+Fielacius
+Fielde
FiendinLo
+FiendsDream
+Fierce some
Fiero
Fiets
+Fiets opa
Fietsen
+Fiff
Fifflaren
Fifth
+Fifth Herald
Fifty
+Fifty 5O
+Fifty Cent
FiftyFive
FiftyForty
+FiftyStones
FigaroTheCat
Figes
Fight
+Fight 04
+Fight For Jk
+FightMiIk
+Fighta
+FighterSE
+Figless Duck
Figmentx
+Fignootters
Figpig
+FigsNotPigs
+Figure
+Figwit
Fiiderino
Fiiggy
+Filed
+FiletOFlesh
FilipTelford
Filippia
Fillifjonken
FillyFilly12
Fillzu
Filmmaker
+Filo Legolas
+Filofteia
+Filoksenia
+Filson-zzZ
+Filth0
Filthy
Filthy Bird
+Filthy Clam
+Filthy Pesnt
+Filthy Santa
+Filthy Weeb
+Filthy istik
Filthy4Iron
+FilthyDane
FilthyDingus
FilthyOreo
FilthyPixels
+Filthy_Stew
Filz
+FimiWolf
+Fin Vader
+Fin219
FinPunisher
Final
+Final Redux
+Final playz
+FinalBossUIM
+Finalbang
Finalbrk
+FinalityB
Finally
Finaltank
Finch
+Fincher
Find
+Find mucking
+FindTheTeemo
Findawg56
+Finding Dory
+FindingDory
Finding_Mary
+Fineillspoon
+Finem Mundo
Finesse
Finessing
+Finex
FingerBang
+Fingerdfilly
Fingered
Fingerlegs
FinickySquid
Finish
+Finish Flash
FinishedLog
Finishzuelan
Finklestein
FinkyFink
Finlan
Finland
+Finlanderi
Finlanders
Finlays
+Finlunch
Finn1309
FinnelCake
Finnica
Finnish
+Finnkie
Finral
Finrufa
Finsho
Finsta
+Fintiaani
+Finutty
Fiola34
Fiora
+Fipimuesi
+Fir3bird85
Firat
+Firben
Fire
+Fire 745
+Fire 961
+Fire Captain
+Fire Chiller
Fire Fiesta
+Fire Fist
+Fire Galley
Fire Kaped
+Fire Kittie
+Fire Tune
Fire10910
FireAF
FireAnRescue
FireGiant
+FireKornez
FireOnRs
+FireReid
FireTruckBoy
FireWolf28r
+Firebelly
Firebuggy
+Firebwans
+Firecan1314
Firedevil
+Firedrake658
+Firehawk746
Fireheart470
+Firein12
Firejax
Firekirbyeli
Fireknight0
Fireman
+Fireman Sam
Firemanzz
Firemutt
Firenova
@@ -7723,120 +15764,203 @@ Fireoman
Fireskill
Firesmash
Firestarone
-Fireweed1111
FireyDragons
Firko
+Firnik
First
+First Bozz
+First Up
FirstBathTub
+FirstBlood 1
+FirstIron
+FirstRS
First_Viking
Firulay18
Fish
+Fish Cow Dog
+Fish Keeper
+Fish Nibba
FishFingerz
FishGoBlub
+Fishcake
+FishesBmine
Fishey
Fishie
+Fishling
Fishoii
Fishstickz
+Fishsword389
+Fishvaulter
FishyBrines
Fisicas
Fiskhue
+Fisna
Fist
FistMeTrump
Fister
+Fit Jr
+FitAid
+Fitdis
Fitis
Fitsit
+Fitty Tyson
FittyBuck
+Fitzy Smalls
Fiurio
Five
+Five Demands
FiveManSplit
FivePaws
FivePointOh
+Fivee Skinn
Fiveskin
FixationRS
Fixed
FixedCost
FixedMain
+FixedWing
Fixions
Fizbin
+Fizg0d
+Fizz Khalifa
Fizzed
Fizzle
+Fizzy Glizzy
FizzyGuzzler
Fjala
+Fjala r
Fjalee
Fjollan
Fjolle Mate
Fjomp
+Fk RS L
+Fk W Da Woo
+FkingEzeKial
Fkking
Fklostmybnk
Fkluzac
+FknDeece
FknDreaming
+Fkuru
+Fl y
FlLTHYYYYYY
FlNARKY
FlTTY
+FlTZ
+Flabaghast
+Flaboogles
Flaccid
+Flaccid RNG
+Flaccid Semi
FlaccidWhip
Flacid
+Flackyo
Fladra
+Flagaria
Flagrance
+Flagrant 2
+Flagz
Flaherdog
FlailTheKing
+FlailingGoat
+Flair Viper
+Flakelar
Flakey
Flakeydude
Flakkas
Flakto
Flamaha
+Flame Lurker
+Flame0fUdun
Flame29
+FlameSoother
Flamed
Flamel
Flamepistol
+Flames4 Ever
+FlamingPee
+Flamingfox
+Flamingguy7
+Flaminold
Flaminrofls
+Flammbam
Flanelli
Flap
+Flap Slap
+FlapJackals
+Flapple
+Flapsian
Flare
Flare Grylls
+Flareblade
Flareon
+Flarez
Flarp
Flash
+Flash Voyage
Flash3200
FlashYellow
Flashbane
+Flashbang
+Flashcards
Flaskepost
Flat
+Flat Eric
FlatAssPlank
FlatEarth361
+Flatback
Flatlandah
Flatorbrush
+Flaunt
Flava
Flavaaaaa
+Flavie
+Flavour Trip
+FlavouredDav
Flavur
Flaw
Flawd
Flawed
+Flawed Bliss
+Flawless xD
Flawnn
Flawzin
+Flax Pickerr
Flaze
Fleaa
+Fled 6ymcric
Fleeson
+Flemingo
Flemino
Fleruas
+Flesh Forest
Fleshgod
+Fleshpound
Fletch2
Fletched0
Fletcher
+Fletcher 06
Fleton
+Fletz
Fleurescent
Flex
+Flex Wayne
+Flex1bel
Flex1bility
+FlexCity
FlexSeal
Flexatronic
+Fli pper
FliPancakes
Flick
FlickMyTick
+Flicker 06
FlidFlop
Fliga
Flight
FlikAwrist
Flikker
+Flikker Kind
Flimmyflan
Flimpy
Flimsywhale
@@ -7844,84 +15968,147 @@ Flimzy
Flinch
FlingDragon
Flint
+Flint RS
+Flint Water
Flintstoned
+FlipDaddy
+Flipdam
+Flipje
Flipman24
Flippa
+Flippa Monk
Flippar
Flippers
Flippin
+Flipsen07
Flipzzzup
Flirz
+Flit Wick
Flix
+Flixy
+Flizz xd
Flllllllllll
Float
+Floater eyes
Floatzelo
Floballer
Flock43
+Floeter
+Floki loki
+Flomple
Flonza
+Floody
+FloofyTurtle
+FloofyWaffle
Flooga
Floogan33
+Floopyboople
FloorTwenty
Floot
+FlopLord
Flopez
Floppy
+Floppy Boaby
+FloppyDongle
Florian
+Florian_1988
Florida
Floth
+Flover
Flow
+Flow it
+FlowMafiaaa
FlowState
Flowah
Flowen0ne
Flower
+Flowerm00se
Flowiey
+FlownbyFire
Flowtown
+Floww-Grown
+Flowwar
Flowzyy
+Floxin
Floy
Floyx
+Fludds
Fluenz
+FluffPandaSr
Fluffafluff
Fluffalo
+FlufflePluff
Fluffy
Fluffy chair
FluffyTater
Fluffypony44
Fluga
+Flugel25
Flugenhorn1
Fluid
+Fluid Voyage
+Fluke Jr
Fluminense
Flunc
+Flunt Capz
Fluoroform
Fluorophore
Flupbaster
Flurius
+Flushiz
FluteBand
Flutlicht
-FlutterButt
Fluxee
Fluxery
+Fluxion
+Fluxx V2
+Flvd
+Fly an High
+Fly by N7ght
+Fly in
Fly-TheW
+FlyLo
FlyPap3rr
FlySunyQuest
Flyboyray
Flydol
+FlydonWayno
Flyeeee
Flyer
+Flyer TMT
+Flyer W Iron
Flyern
Flyguy13
Flyhll
Flying
+Flying Pingu
+Flying Swede
FlyingBobcat
+FlyingIrish
+Flymi
+Flymzy
Flynny
Flynsquirrel
Flynt
Flyonwings
Flyvende
+Flyvende Ged
Flyy
+Fml IronMan
+Fml Its Adam
+Fml Its Carl
FnHit
+Fnatic
+Fo Ring
+FoRbeZiiLLa
+Foam Corner
FoamDemon1
+FoamShrimp
+Foamshire
Fobu
Fockwolf1
Focus
+Focus73
FocusOnGoals
Focusor
Foen
@@ -7934,78 +16121,157 @@ Fohmie
FoiledSoftly
Fojin
Fokjefe
+Folayyy
+Foleshill
+Folesy
Folfox
+Folieo
Folk
Folk169
Folktale
FollieRS
+Followed
+Follower
Folwifuswalo
+Folxi
Fomble
+Fomid
+Fondle
FondleMyIron
Fong
Fonnis
FonsJ
+Foo I I
Food
+Food For Me
FoodEmperor
+FoodStampGod
+Foodfoodfood
Foodie
+Foofickle
FookOffNerd
Fool
+Fool Senpai
+FoolFighters
+Foolery
+Foolingling
+FoolishHeart
+Fools
+Fools Errand
+Fools Switch
+FoolsErrand
+Foomp
Foooman
Foose
Foosyy
Foot
+Foot Ball242
+Foot Magnet
FootLocker
Footaphiliac
+FootlongMike
Fooz
+For
+For Karamja
+For My Block
ForDaScratch
ForKrimpt
ForNostalgi
+ForRusssia
ForWeAreMany
Forbe
ForbiddenCry
Forbids
Force
+ForceZero
+Forcekid
Ford
+Ford Racing
Forearm
ForeignBoris
Foreigner
Foreknown
+Forerunner40
+Forescimitar
Forest93
+Foresteris
+Foreva
+Forever Wild
+ForeverAlone
+ForeverClone
ForeverLost
Foreverett
ForgetThePet
Forgetmenot
Forgetpluto
+Forgettios
Forgive
Forgived
+ForgottedPin
Forgotten
ForgottenRNG
Forkbomb
+Forkers
+Forkmitt
+Forks Out
Forma
+Formal
+FormalPotato
Formaldhyde
+Former Nub
FormerDivine
+FormerSeaman
+FormuIa 1
+Fornuis
+Forresten
Forsaken
+Forsakens
Forsworn66
Fort
+Fort Chronos
Forteh
+Fortified
+Fortify
+Fortimuss
+Fortis Lupus
+Fortjent
FortniteRox
Fortran95
Fortress
+Fortunes
Forty
Forza
+Forza Derby
ForzaGTx
+Forzam
Fosh
+Fossa69
+Fossil Rock
+Fossul
+FosterXP
Fostret
+Fosz
+Foton
Fotty
Foumy6
+Found Prawn
+Found3Groots
FoundABaby
Four
+Four One 6
+FourB
FourZone3
Fourlifee
Fourloco
Fournlock
FourthChance
+FourthPower
+Fowke
+Fox Enjoyer
+Fox Two
+Fox Zebra
Fox243
+FoxStevenson
FoxTherapy
FoxVex
Foxall
@@ -8013,375 +16279,886 @@ Foxe
Foxerx1
Foxes
Foxfiend
+Foxfire
+FoxfireStyle
Foxi
+Foxing
Foxtrot
+Foxx OG
+Foxxwild
Foxy
+Foxy Rebel
+Foxy SuzyQ
FoxyBaphomet
FoxySquid
+FoxzHound
+Fozbert64
+Fozie
FpsMichael
+FpsWheelerrx
+Fpsallday
+Fr anci5
+Fr ankie
+Fr0
Fr0zEn111
Fr1ckingH3ck
Fr1xioN
+Fr3Pa1est1n4
FraJoLaaa
Fraagile
+Fraazzy
Frab
Frac
+Fractals Son
Fractuality
+Fraggiux
Fraggle
FragmentedX
+Fragmentizer
+Frags
Frail
Framed
FramedJunior
+Frames Wolfe
Framingham
+Franche420
Francine1225
+Francis0wns
FranciscoJ32
Franco
Franf10
Frank
+Frank Donner
+Frank Is Dog
+Frank Lin
+Frank White
+Frank-sama
+Frank836
+FrankMadeME
FrankTTank
Frankers
FrankieFlow
FrankiesAlt
+Frankinspank
Franklin1O1
FrankyFish32
+FrankyLeGros
FrankyyTanky
+Frantiks
+Franwan
Frappacholo
+Fraqqer
+Fraser
+Fraser840
+Fraspex
Frassboss
Frate
Fratto
+Fratty Flows
+Fraud Thurgo
Fraught
Frauwz
+Fravvomaxx
+Frayhalla
+Frazer
Frazia
Frazoo
Frazze
+Frazzlewagg
Frazzt
+Frchtzcker
+Fre d
Freaak
Freak
Freako07
+Freako09
Freaks
Freakxx
+Freaky Peet
+FreakyWajt
Fred
+Fred J Frost
+Fred Solo
FredMaxedALT
+Fredagsgroda
Fredanbetty
+Freddi
Freddiep
+Freddy CEO
+Freddy ownz
Fredericton
+Frederizz
Fredla
+Fredleif
+Fredo
Fredric
Fredriks
+Freds Breads
Free
+Free Dumb
+Free Minded
+Free O9
+Free lootkey
FreeFreeze
FreeFryBread
FreeHongK0ng
FreeKoolaid
FreeTeli2Lum
+FreeTheRealD
Freebooterv
+Freeczs BTC
Freedom
Freedom06
FreedomJust
FreedomUP
Freee
+Freehky
+Freek 1
FreekALeak
Freekkittens
Freelo
Freeman
Freepop
+Freerangee
Freesoul
Freest
Freestylin
Freeway
Freeze
+Freeze M E
Freezes
Fregion
Frei
Frekitohh
+Freky
FrenchBuoy
+Frendi
Frenek
+Frenkurt
Frenmiir
Frenzy
+Frenzy4
FreonPays
Fresaaaa
Fresco
Fresh
+Fresh Cheese
+Fresh Pesto
FreshPotsRS
+Freshly
+Freshske
+Frette
Freud
Frevlin
Frewdy
Freya
+Freyas BTW
+Frez
+FriarNation
Fricas
+FriccKip
Frickin
+Frickn Playa
FridayDa13th
+FridayMojito
Fridelis
Fridfoolium
Fried
+Fried Erik
+FriedRicePls
+Friede
Friend
FriendlyJo
Frietjecurry
Frieza
+Frieza Saga
+Friezerik
Friggn
+Friggy
+Friibag
Friisby
+Fris
+Frisdrank Jr
+Frisky Lime
FriskyBiznaz
FriskyJews
FriskyPainal
+Fritszon
+Frittered
Fritz
Fritz94
+Frix
Frkn
+Frnds
FrobroSwagin
+FrochioRS
Frodo
+Frodo Bagger
+FrodoBagGims
FrodoBogues
FrodoRS
Frodoinc1
Froemelke
+Froemeltchhh
Froez66
Frofuzz
Frog
+Frog Blog
+FrogBoySlim
+Frogfish12
+Froggiefish
Froggit
+FroggyBro
Frogmann
+Frogone9
+Frogsforjp
Frogtelllow
+Frogtoken
Frogwork
Frohobo
Froloox
From
+From Beyond
+From Florida
+From Lebanon
+From Nz
FromNewWorld
FromSoftware
Front
+FrontBottoms
FrontierEdge
+Froobing
Frooby
Froomey
+Froot Loop
+Frootata
+Froppy Tsuyu
Fropul
Frosht42
Frost
+Frost JTS
+Frost Mages
Frost_PvM
Frostbiter
+FrostedBow
Frostmourne
Frostserpent
Frosty
+Frosty E
+Frosty Gay
+Frosty6570
Frosty751
+FrostyPea43
+FrostySurge
Frostyfuz
Frostyyyman
Frote
+Frotzr
Frovz
Froya
Froyotech
-Froz07
+Froz09
Frozah
Froze
Frozen
+Frozen Crown
+Frozen Rain
+FrozenKing
FrozenMosin
+Frozencarrot
+Frozenn Dusk
+Frozty Feet
Frrrozn
+Fru Katt
Frufoo
Frugal
Frugtmanden
Fruh
+Fruit Crepes
+Fruit Dryer
+Fruit Munch
Fruit1824
Fruit1846
Fruitbooting
+Fruitje
+Fruitloop8
Frunk
FrunktheHunk
Fruta
Frvnk
+Frxnk White
+Frxnklin
+Fry B
+Frysta
+Fsaze
+FtheFrench73
FuAiluue
FuNrikoz
FuRiouSs
+Fubar3d
Fubini
+Fubuki
+Fubuking
+FucDPS
FucNorfKorea
FucaDuc
+Fuchsiger
+Fudeath36
+Fudg3
Fudge
Fudgie
Fuel
+Fuel Ex
Fuertote_17
+Fuetakishi
+Fug
+Fug sakes
FugDisFugDat
Fugedit
FuggleQuest
+FuggnIronBtw
Fuglemanden
+Fuhni
Fuhrerengel
Fujimator
Fujk
FukYeaChina
Fukahi
Fukinnnn
+Fukn Lit Btw
Fuktflekken
FulMomentum
Fula
FulgBTW
Fuliss
Full
+Full 3A
+Full AD Vlad
+Full Boost
+Full Moot
+Full Tilt
+Full of Wo0d
+FullGraceful
+FullSendGoat
+FullTimeNerd
FullTryHard
FullerACL
Fully
+Fully Mobile
Fullysick
Fulsh
+Fumblebag
Fumblers
Fumbles12
Fumin
+FumingMe
+Fun Guy mhm
+Fun Sucker
+Fun1nFunera1
+FunHotBox
+FunWithFire
+FunctioningC
Fund
Fundo
+FuneRune
Funeral
Fungi
Funk
+Funk Head
+Funk Mastah
FunkBondMule
Funkafiend
FunkiPorcini
Funkiboy2
FunkiiMonkii
+FunkleRoy
+Funkr
+Funkshun
+Funkworks
Funky
FunkyBoy4444
FunkyDiddler
+FunkySlut
+Funky_Hunk
+FunnelCaker
Funni
+Funni Memmer
Funny
Funny-King03
+FunnyAndEpic
+Funobu
Funpeople5
+Funrun123456
Funzip
Fuorra
+FuqAgility
FurMissile
Furbs
+Furi Potion
Furious
FuriousPower
Furiri
Furo
Furox
Furry
+Furry Wall
FurryDemon
Furrykins
+FursonaHaver
+FurtleTurtle
Furty
Furu
Fury
+Fury DnT
+Fury Lord
FuryJunky
FuryL0rd
Furyian
Fuse
+Fuse is HARD
+Fuseton
Fusiiion
+Fusion Aurum
+FusionGT2
+FussyParter
FutchDuck
Futex
+Futss
Future
+Future Tense
FutureKaiden
+Futureruler9
Futures
+Futures Main
+Fuuwah
+Fuxley
Fuze
+Fuzz Man
FuzzManPeach
Fuzzums4
Fuzzy
+Fuzzy Sox
+Fuzzy jaw95
Fuzzy1918
FuzzyDonkey
FuzzyFudgey
FuzzyMWV
+Fuzzy_NooT
+Fuzzybear65
Fuzzyblaa56
+Fuzzykitty
Fuzzzy
+FvS Love
+Fweafwe
+Fxked
+Fxob
+Fxrgus
+Fxrret
+Fy six
Fy12e
+Fyitz
+Fylberg
+Fylize
+Fym
+Fyr
+Fyr Tornado
Fyresam
Fyri
+Fyrinlight
Fyron
+Fyrox
Fyszz
+Fyzio
Fziaa
+G
+G 0 A T
+G A F F E R
+G Alfansos
G Ape
+G B S
+G Check
+G Fruit
+G GAMER GIRL
+G I M Danny
+G Iron Adam
+G L E N
+G L H F
+G M B
+G Man9822
+G Mauls
+G O O D
+G O O S E Y
+G R E E N
+G R I L L O
+G Terminator
+G X F C
+G Zus
+G a r t y
+G a t t s u
+G ante
+G dot C
+G e n g a r
+G eeb
+G i j s
+G i l b o
+G iG
+G imme
+G iooo
+G l R L
+G laze
+G no Z
+G o G G u
+G o h o
+G o th i X
+G oldd
+G oldeen
+G oofy
+G ozz
+G rafix
+G ronimo27
+G root
+G shi
+G u a m s
+G unitt
+G-F-M
+G-IronKuv
+G-Thug Nasty
+G-knowww
+G-rivs
+G0AT JUICE
G0ATWRANGLER
G0D Richard
G0DLY
+G0LD3N
G0LDC0AST
G0LDEN
G0LDENB0Y
G0LDIE
G0NGSHOW
+G0OEY
+G0TH ANGEL
G0TTY
+G0blineer
+G0dr3kt
G0dsnotdead
G0ing
G0ld
G0lden
+G0rillaJesus
+G1C
G1adiador
G1edrelis
+G1izzyGob1in
+G1m Luna
G3RM4N
+G3ZZ4
G4M3OV3R
G4RG0YLE
G4UAFS
+G4YLORD
G4de
+G59 Awol
+G6E Turbo
G6Wizard
+G80
+G99s
GAAANNNGGG
GABBAGE
+GAGGED N
+GALO9A
GAMMAGARD
+GAMxJAKE
+GANONd0rf
GAOKNMxzHR
+GARDlNER
GATECRASH
GATTl
+GB Amarok
GBJackieWang
GCMidlane
+GDG
+GE IS WACK
+GE to FE
GE0RG3WKUSH
GEARLE55
GEEZ0
+GERANUS
GERRIEE
GEtItFrAnK
GFHL
+GFe Aang
GFmanbearpig
+GG Joe
+GG McCloud
+GG Sofie
+GG Wped
GG6HJA9KSDHJ
+GGGGGGGGanta
GGGskywalker
+GGW Limit
+GGW Thanos
+GGf1cation
GGtoHH
+GH05T DUDE
GH95
GHEEESE
GHETT0JESUS
+GI GN
+GI Lewis
+GI Lucky
+GI Madras
+GI Mohib
+GIANT HENO
+GIANT ITIOLE
GIBBO96
+GIGAGUMPH
+GIM 0dawg
+GIM 2nd
+GIM Albin
+GIM Aperture
+GIM BTWW
+GIM Ballak
+GIM Barkless
+GIM Baylis
+GIM Bunzz
+GIM C J
+GIM CgIsEasy
+GIM Composer
+GIM Conkers
+GIM Cris
+GIM DareDev
+GIM Derek
+GIM Dionysus
+GIM Dormant
+GIM FatLion
+GIM Fearzzy
+GIM Ganther
+GIM Glalie
+GIM Globi
+GIM Hatred
+GIM Hola
+GIM LWE
+GIM Lasse_ju
+GIM Lazyguy
+GIM Lxxs
+GIM Lyon
+GIM M0FFY
+GIM Madac
+GIM Magneto
+GIM Malphite
+GIM Martas
+GIM Maudi
+GIM Mcstro
+GIM Me STD
+GIM Mecknon
+GIM Mirasei
+GIM Moith
+GIM NewPorts
+GIM OatBloke
+GIM Obvious
+GIM Or715
+GIM Philrat
+GIM Player02
+GIM Qtpie
+GIM RWT
+GIM RagePope
+GIM Raheem
+GIM Rakfaan
+GIM Ring
+GIM Schaa
+GIM Schnei
+GIM Sense
+GIM Snax
+GIM Stinks
+GIM Stompy
+GIM Stoney P
+GIM Stu
+GIM TUT
+GIM Terix
+GIM Tman
+GIM Tobi
+GIM Toe Pic
+GIM Ved
+GIM Viklok
+GIM Wife
+GIM Zork
+GIM atomic
+GIM bad ass
+GIM brutal
+GIM kerma
+GIM poy249
+GIM sabinsky
+GIM xDist
+GIM-Topsu
+GIMAerospace
+GIMButcha
+GIMFunder
+GIMME CLAW
+GIMP Crystal
+GIMP DlCC
+GIMP Jonny
+GIMP Suns
+GIMP Toast
+GIMP Will
+GIMP Zuzu
+GIMPlayer69
+GIMRavenKing
+GIMTruck-Kun
+GIM_NoRun
+GIM_Snowwolf
+GIM_tybraun
+GIMcardellio
+GIMonster
+GIMp Brian
+GIMpope
+GIMxH2
+GIRTH CHECK
+GIronPPVibes
+GL GETTIN IN
+GL on Purple
GL78
+GLG Sophie
+GLUS
GLWeAllDie
+GM Matt
+GMEMan8000
+GMKirby
GNULinux
+GOAT GOD 420
+GODSOMBRA SL
GOGETA
+GOLOVOLOMKEE
GOOD
+GOODGAMEGGXD
+GOP DUMB
+GOZERGAST
+GPA
+GPWASTER
+GR0OOT
+GR1NCH
GRAB-A-LEAF
GRAN1T3
GRAND
GRAPHISTED
GREIV0US
GREIVUOS
+GRIMSTAIN
+GRINGOLAO
GRUMPY
+GRUMPY BSTRD
+GRUMPY PAPAW
+GRYGRY
GRiMZ
+GRiMZ 420
GRlM
+GRlM REEFER
+GS Concerta
GSAileen
+GSW Shane
GSwolls
GT350
+GTA SA
GTFOIMGAMIN
+GTOD
+GTRKingZilla
GUBIDUBII
+GUCCI SENPAI
+GUCCl
GUJ0
GUNMAN683
GURRD
GUUMBY
GVSU
-GWPH69
GYDtown
+GZA
+GZX
+Ga l
+Ga7ba
Gaara
+Gaara Sand
Gaarden
+Gaarise
+Gaarlokiin
+Gab al Ghul
+Gabagoo l
Gabber
+Gabber NaTaN
+Gabberboy15
+Gabble
Gabe
Gabe020
+Gaberoks
Gabesz
Gabo
+Gabrahanth
Gabriel61198
+Gabris
+GabyabyxD
Gacha
Gaddgedlar
Gadrak
Gadwall
Gaerolth
+GaethjeKO
Gaga
+Gaga Iron
+Gage S
+Gageks
+Gagne
Gahbo
Gain
+Gain exp
+Gainful Grey
+Gains alot
+Gainz Godz
+Gainz Nerd
GainzForHire
+GainzWorld
+Gainzvill
+Gainzville
GaiusTavi
Gaiy
GalGadotsBF
+Gala G
Galamx
Galandorf1
Galar
Galava
Galaxia
+Galaxiancam
+Galaxies
Galaxy
+Galbazeek1
+Galderr
Galdysa
Galgenbrok
+GalickGunner
Galilee
Gallaxy
Galleta
Gallium
+Gallowbell
+Galon Garuda
Galon1
Galow
+Galton
+Galvatron
Galwic
+Galyam
+Galzuk
+Gam
Gamaiiron
Gambinahuora
Gambino
+Gambit
+Gambit Ghoul
Gamblerz
Gamboy46
Game
+Game Clown
+Game Name
+Game Of Olms
+GameBot2000
GameOvaries3
GameStop
Gameboto4
@@ -8389,36 +17166,63 @@ Gameboyjr
Gameboylight
Gamelia7
Gamer
+Gamer Log
+Gamer Worded
Gamer4Life
+Gamercutie
Gamerplaya7
+Gamerr
+Games Rigged
+Gameshow
Gamesman
Gaming
GamingLover
GamingVapor
+Gamir Von
Gammel Mand
Gamorrah
+Ganandalf
+GandaIfNoir
Gandalf
+Gandalf staf
+Gandalf3602
GandalfBalle
Gandhi
Gandolf
+Gandolpeeni
+Gandon12840
Gandulff
Gane
Gang
+Gang Goblin
+Gangbarang
Gangnrad
+Gangris
+Gangry
Gangsta
Ganj
GanjaGhandhi
GanjaRhino
+Ganjoefarner
+Gankicus
Gankster
+Ganna Bogdan
Gannicus
Gannicusproo
+Gannnon
Ganooch
Gansa0
Ganta
Gantee
Ganthorains
+Gantre
+Ganzaxuz
+Ganze
+Gap Tester
Gaping
+GaratholX7
Garbage
+Garbage Life
GarbageEater
Garbagexd
Garbar6
@@ -8426,145 +17230,268 @@ Garboh
Garbug
Gardenia
Gardening
+Garder1968
Garena
Garfinator
Gargano
Gargaspoon
Gargath286
+Gargathon
Gargleon
Gargoyle79
Garlic
+Garnat
Garnet Gust
Garp
+Garrb3ar
Garrett
Garretttt
Garrothis
Garthoon
+Garvis
Gary
+Gary Ghee
+Gary Giggles
+Gary Guldske
+Gary Linkov
+Gary Wang
GaryDabs
GarySmokeOak
Garyjayjay
Garysson
+Gasconade x
+Gash Pasher
GashBndicoot
Gashtag
Gassy
+Gassy Cat
GassyFlaps
+Gastje888
Gastronaught
Gate
Gateofdoom
+Gath
Gato
GatoNaranja
Gator
+Gator Bob Jr
+Gator Papi
Gatorboiz
+Gatorian176
Gatorslyr
GatrsNTaters
+Gau Cho
Gauntlet
+Gaur Gura
Gauss
Gautstafer
+Gauvin
Gavbin
Gavi
Gavii
+Gavin Dance
Gavita
Gavrot
+Gavussy
Gavy
+Gawd Bodi
+Gawk5000
Gawkes
Gawkss
Gawt
Gawz
-GayBowser
-GayCum
-GayDudeBirds
-GayTradies
-Gayim
+Gay 4 Guthix
+Gay Bear
+Gay Bear Cub
+Gay Farm
+Gay Fieri
+Gay Framed
+Gay Holly
+Gay Impling
+Gay Liam
+Gay Male69
+Gay Snake
+Gay Squire
+Gay Vermin
+Gay Wimp
+Gay450Bucks
+Gay4Ketchup
+GayWalrus69
+Gayblade
+GaylsHaram
+Gayme
Gayron
+Gaz
GazGoon
Gazaman11
+Gazan
Gazd
Gazed
+Gazed Soul
Gazelle2211
+Gazru
Gaztok
+Gazza
+Gbax-Style
Gdey56
Ge0rgeburton
GeChallengeM
GeTLeFt1
+Gear 5th
+Gear Carried
+Gear Fear
+Gear Sekando
Geard
+Gearfried
+GearheadSTL
GebwellB
+Geck-o
+GeckoDad
+Gedmuush
GeeHasMews
GeeStreet
Geeb
Geebs
Geebster
+Geef Bier
+Geegles
Geeker
Geeknip
+Geeman125
Geen
+GeenBankMan
Geera
+Geerin
GeertWillows
Geestig
+Geeving
+Geewd
+Gefilus666
GeggaMoya
Gehrman
GeilTijgerke
GeilePaddo
Geitekaas
+Gekido
GekkaJohn
Gekke
+Gekke Farmer
+Gekke Nelis
+Gekke Pablo
+Gekkesmurf
+Gekoh
Gekolian
+Geks
GelZmog
Gelawynn
+Gelderlander
Gelezis
+Gelijk
Geliquideerd
Gellaitry
+Geller Bing
Gelly
+Gelmar
+Gem
+GeminitusII
+Gemlingur
Gemsbok
+Gen Kokopuff
+Gen4 UU
GenCoupeGang
+GenFormat
GenGraardor
+Genabackis
+Genann
+Genaron
+Gene Shorts
GeneBelcher
GeneDenim
GeneKapp
+GeneVieve_SL
General
+General Aldo
+General Bigi
+General Iroh
+General NL
GeneralJosh
GeneralLudd
+GeneralMcRib
GeneralMo
GeneralMoist
+GeneralNASTY
GeneralPlay
+GeneralStore
Generall
+Generall_xx
Generalton
Generol55
+Genesee
+Genesis G80
Genetiics
Genetiz
+Genga r
Gengahr
Gengerbred
Geni
+Genie Magick
+Genie Talls
GenitalsHead
+Genix
+Genjitatsumi
+Genk
Gennie
+Gennu
Geno
+Geno RS
Geno2566
GenoJuice
Genocidal
+Genovan
Genres
Gensha
Gentileza
Gentle
+Gentle Death
+Gentle Gypsy
+Gentleman J
Gentlemanfox
Genty
Genuine
GenuineDude
Genus
+Geo Fe
Geo Geo
GeoDuuud
Geoculus
Geodark
+Geof Sux 666
+Geoff_Failed
Geoffry
+Geography
+Geoguess
+Geoide
Geologistic
+Geomatic
Geonde
Geordie
George
+George 36th
+George F M
+George Vv
GeorgeJx93
+GeorgeVork
Georgey
+Georgezs
+Georgies
+Georgopol
Geoso
Geotechnicki
Geovanna
GerAmi
+Gera1d
Gerald
+Geralt Nivea
Gerb3
Gerberos
Gerbs
@@ -8575,47 +17502,92 @@ Gerjan
GerksShirts
Germaan
GermanGuyRS
+Germanic
Germaphobic
Germimo
Gernoazi
+Gero
Geroko
+Gerr Hurka
+Gerrido
Gerrmz
+Gerroes4GIM
+Gerry Bud
Gershboon
Gert
GertrudeSimp
+GertrudesAss
+Gery07
+Gesaldo
+Gese
Geskar
+Geso
Gesoz
+Gestetner
+Get A Life B
+Get Back Son
+Get Bread
+Get Exp
+Get Fukt Pal
+Get Pho
+Get Syked
Get0nMyHorse
GetABeerInYa
GetATapWater
+GetAclick
GetDatXp
GetMeOut
+GetMeOutHere
GetOnMyLvl
+GetOverlt
+GetPets12
GetSkipped
GetThatUpYaa
+GetTogether
GetUrWild0n
GetWreckdSon
Getdolphined
Getfck3dup
Getlow777
+Getplayed
Getsu
+GettinTanked
+GeudensK
+Geuld
+Gew
Gewoon
Gezang
+Gf g
Gf4tiuser
GfRsIGotAGf
+Gfi
+Gh3t0 T4nk3r
Ghafir
+Ghaipol
+Ghandizy
Ghandy
+Gharron
Ghckkrchkrer
Ghda
+Gheed
Ghentiana
Gherkins
Ghetto
+Ghhjgwsr
+Ghidorah
+Ghillie Suit
Ghilly
Ghoosted
Ghorraka
Ghosnik
Ghost
+Ghost 311
+Ghost Ahoy
+Ghost Fe
+Ghost XP
+GhostAralein
GhostHouse
+GhostOrchids
GhostTank
GhostXD
Ghostas
@@ -8623,309 +17595,675 @@ Ghosteeen
Ghostfice
Ghostflips
Ghostiami1
+Ghostly Taco
GhostlyFetus
Ghostlyowns
Ghostninja
+Ghostsu
+Ghostwish492
+Ghosty
+Ghoul Intent
+Ghoul Zeta
+Ghraz
Ghruntsarokk
Ght179
+Ghurrix
+Ghuuneiboi
Ghxul
+Gi Lew
+Gi bbo
Giallo
Giant
+Giant Ego
+Giant Gochu
+Giant Killer
+Giant Peenos
+Giant Plums
+Giant Trunks
+Giant spider
+Giant235
GiantConker
+GiantShafty
Giantesss
+Giaveri
+Gib bread
GibMePets
Gibbed
Gibberish
Gibboh
+Gibbon
+Gibbon girl
Gibby
Gibby0712
Gibbzzy
+Gibsky
+Gibsmeister
+Gibson
Giddy Cowboy
+Giddy Yup
Gidejong
Gidionn
+Gidle Soyeon
Giebu
Gielinor
+GielinorGage
+GielinorGoat
+Gielinord
+Gielinored
+Giena
+Gier
Gierige
+Giffaro
+Gifgas
GigaBinary
+GigaChad FSW
Gigabit
+Gigantic Nut
+Gigantic Owl
+Giganttio
+Gigashit
+Giggel Boy
+Giggety
+GiggleFailer
+GiggySmalls
Gigi
Gigime
+Gigs x0rz
+Giiblo
Giiirtz
+Giitzy
Gijoe184
Gijs
Gijsbart
+Gilan
Gilbert
+Gildart_91
Gilded
+Gilded Gucci
+Gilded Robes
+GildeddGuppy
+Gilenoth
+Gilesy_93
GilgaGaming
Gilindur
-Gilkrog69
+Giljom
Gillan
+Gillbert44
Gille
Gilles
Gillisuit
+GillyChop
+Gillyjj
Gilnash
Gils
+Gilthresa
+Gim Balboa
+Gim Mayhem
+Gim Reaper x
+Gim Rickard
+Gim Sahara
+Gim Synicals
+Gim ckn
+GimJonel
Gimaralas
Gimbli102
Gimlocke
Gimme
+Gimme Pixels
GimmeDatWAP
+Gimmie 500k
+Gimp Charona
+Gimp George
+Gimp Rachau
+Gimp Sage
+Gimperfect
+Gimpgas
+Gimptan
+Gin N pizza
+Gin Theory
GinValid
+Gina Linetti
Ginekologs
+GingaFe
+Gingaaaaa
Ginger
+Ginger Elvis
+Ginger KG
GingerUnit49
GingerZ94
+Ginger_Men
Gingerbeefe
Gingr
+Gingr Snaps
+Gingyge
+Ginjaah
+Ginko Sora
Ginny
Ginobeatsss
Ginyuu
+Gioarcher69
Giorgi
+Gios Ladder
+Giovanniam
Giovano
+Gippeo
Gipson
Giraaa
GiraffeLord
Giraffeneck
Girl
-GirlCantFart
+Girl10116
+GirlGamer420
+GirlLoveeee
Girls
+Girls Add Me
Girlygurl420
Giroza
+GirrthBrooks
+Girsu
Girth
+GirthBeast
+GirthMatters
+Girthy Bunny
GirthyBaboon
+GirthySack
Giskardr
+Gist
Gistermorgen
+Git Ducked
+Git Gudr
+Gity
+Giuuntas
Give
+Give Advice
+Give Er
+Give Me Kith
+Give Purple
+Give Purples
GiveMeMaul
+GiveMutagen
Given
+Given Bow
+Given Power
Givera0
+Giville
Giving
Givox
+Gixerikan
Gizmoed
+Gizmoo247
+Gizzy-71
+Gj nice
Gjerloew
Gjonunaki
+Gktr
+Gl Bob
+Gl Im Dandy
+Gl Im Tom
+Gl0ver
GlLDARTS
+GlM Sam
+GlMKingCole
+GlMP Blue
+GlMP Purpp
GlNGER
GlRLS
+GlTHUB
+GlUwUten
+Glaceon Girl
Glacial
+Glacial Fog
GlacieredTig
GladePlugIns
+GladeSONPT
Gladeandy
+Gladiator12
Gladiator4x4
Gladpootje
Glads
+Glaeser
+Glaive Rush
Glance
+GlasMelk
+Glasabarn
Glashute
+Glass talons
+GlassIsrael
+Glassblow Me
+Glassface
+Glava
Glavas
Glazmeister
Glazyy
+Glcnn
+Glcnn II
+Glcsw
Gleassi
Gleddified
Gleep
+Gleesoman123
+Glejak
Glen
+Glen Cook
+Glen Kenobi
+Glen OSRS
+Glenbobis
+Glennis25
Glennitals
Glennyboy
Glennzii
+GleuberBTW
Gleythar
+Glicky
+GlideWho
Glierieman
GlitCH1221
Glitchfather
+Glitchxd
+Glitterix
Glo-Tank
+Glob Master
+Globalled
+Globby
Gloc
Glock
+Glock 48
GlockHoliday
Glockford
+Glocktopuss
+Glocs
+Glod
Gloei
+Gloei Lampje
Gloom
Gloop
Glopyz
Glorfsaus
Glories
Glorious
+Glorpy Glorp
Glossay
Glou
+Glough
Gloves
Glow
+Glowing Dawn
+Glowing Ray
Gloyer
+GlucGluc9000
Glue
+Glue Scroll
GlueInhaler
Gluehbirne
Gluest1ck
+Gluhh
Glukoosi
Gluons
Glut
+Gluteeni
+Gluten ei
Gluteous
+GluteyIM
+Gluurbuur
Gluurder
+Glyn
Glyo
Glys
+Gmackie1
+Gmic
+Gnaes
+GnakNim
Gnarkotics
+Gnarled
Gnarles
+Gnarly Nacho
Gnarlysurfer
Gnarmato
Gnarnold
Gnarwhal
+Gnashit
GngBng
+Gnge
Gnight
Gniles
Gnoblin
Gnome
+Gnome Ass
+Gnome nz
GnomeBustas
+GnomeChompii
+GnomeFN
+GnomeScarf
+Gnome_child1
+Gnomeball Me
+Gnomedalf
Gnomeopathy
Gnomeplay
Gnomeputone
Gnomerex
Gnomeruno
+Gnomes
+GnomesDid911
+Gnomonkey
+Gnomuim
Gnon
+Gnoob
Gnorc
Gnos
+Gnosticz
Gnotyep
+Go Already
+Go Die
Go Do One M8
+Go FF
+Go Outdoors
+Go Outside
+Go Rogue
+Go Thanos
+Go ask Wiki
Go2HornyJail
+Go4Stonks
GoBearsUA
GoBiiii
+GoDhAsCoMe2u
GoDrinkWater
GoGGu
+GoIsland
GoPlayOutsid
+GoSlow
+GoToBedKids
Goads
Goal2Max
Goalkeeper54
Goals
Goat
+Goat Toes
Goat512
GoatAteMySon
GoatOfWar
GoatStank
+Goatbigboy
Goaticorn
+Goatman
Goatmelk
+Goatrilla
Goats
+Goatsky
Gobbie
Gobiasinds
Goblin
+GoblinBreath
GoblinLevel1
Goblinborn
+Goblinchips
+GoblinxSlaya
Goby358
+Gochancee1
+God 126
+God Aye
+God Bjorn
+God Flax
+God Forgave
+God Like PvM
+God Of Chips
+God Of Hatrd
+God Of Lamps
+God Of W13
+God Pandora
+God Ranger90
+God Tier
+God of Walls
GodDmntNappa
GodEmpsTrump
GodHalfMercy
GodKingJT
+GodLovesG4ys
GodM
GodOfCats
GodOfTorment
GodSaidGrind
+GodSaved
GodSlayer422
+GodSoge
+GodTierAcct
GodTormentor
Godaa
Godcody
+Godd Is Good
Goddaz
GoddessAmaya
GoddessHylia
Godenzonen
+Godeso
Godezzo
+Godfather TR
+Godfather9 4
Godis
Godkip
+Godleh
+Godlike Nico
GodlikeOne
Godly
GodlyLeecher
GodlyThug
GodofAhri
+Godofore
+Godofyou2
+Godric777
+Godrics
Gods
+Gods Madness
+Gods Plans
+Gods Savage
+Gods Taint
+Gods Word
GodsBlackSon
GodsSniper
GodsSyndrome
GodsZombies
+Godsent
GodsentHero
Godspade
+Godss Angel
Godstrong
+Godswordl
+Godte
+Godumas
+Godvermomme
+Godwar
Godwise
GodzFear
Godzilla
Godzilla1282
Goed
+Goed Gedaan
+Goed stinke
Goedaardig
+Goedgemutst
+Goeie Sannie
Goeman
Goes
+Goggoli
Gogo
+Gogo Gorilla
Gogojuice
+Gogoud
GogurtYogurt
Gohan
+Gohanski
Gohler
+Goiij
+Goilin
+Goin
+Goin Slayin
+Going HCIm
+GoingBald130
+GoingBonkers
Goinvokeman
Gojam
+Goji Berries
+Gok Wan k
+Gokillanoob
Goku
+Goku 420
+Goku Nazz
Goku3ss3
Gokuu
+Gol
+Gol D Stocks
Gold
+Gold Avocado
+Gold Devill
+Gold Golem
+Gold Lynx
Gold M40A3
+Gold N Mole
+Gold Ox
+Gold Ruler
+Gold Scrap
Gold-Ileana
-GoldHunter69
GoldTracerR1
Goldclaw30
Golden
+Golden Acorn
+Golden Dunes
+Golden Eyes
+Golden Power
Golden2Aim
GoldenArm647
-GoldenEye69
+GoldenGoose
GoldenMinion
Goldendev
+Goldendrgn
GoldfarmCOX
Goldie47
GoldieOne
+Goldiekk
+Goldkimono
Goldless
Goldmagic
+Goldmagic 1
+Goldminer727
Golds
+Golduck
+Goldy Mox
Golem
+GolemDuoGIM
Golemantium
Golembaby
Golf
+Golf Socks
Golfcarts
Golfje92
Golfkarton
Gollito
GolloSam
+Gomardo
Gomham
Gomsugo
Gomut
+Gon
GonDaba
GonFeeshin
+Gonah
Gonapappa
Gondort
Gone
+Gone9237
+GoneClear
+GoneFarming
+GoneInDry
GonjaMon
+GonnaSleep
+Gont
Gontr
+Gonyor
Gonzalo
+Gonzra
+Goo Cat
GooMoonRyong
+Gooball
Gooberz
+GoobledeGoop
+Goobtacular
Good
+Good Bull
+Good Creb
+Good Cuxt
+Good Darts
+Good Duck
+Good Ironman
+Good Natured
+Good Pho You
+Good Potato
+Good Voodoo
+Good lol
GoodFight
+GoodGuyJosh
+GoodOlBussy
+GoodSkinCare
+GoodTalk BRO
+GoodVibes
Gooda4
+Gooday2uall
Goodbye
+Goodbye game
Goodcents
+Gooddeerend
+Gooder Album
GooderB0aty
+GoodlyKi56
Goodole
Goodpizza
+Goodriver
Goodwin
+Gooey Bace
Goofy
+Goofy Kitten
GoofyLlama
+Goofzillers
Googagoogago
Googie
+Googii
Google
+Google Plus
+Google THC
Googleisme
Googs
+Gool164
+Goomy
+Goon Galore
+Goon Rangoon
+GoonRNG
+Gooner
Gooneshy
Gooney
Goooby
Gooochy
+GooodO1dDays
Goopbandit
+GoopityGlorp
Goose
+Goose Field
+Goose World
GooseAlmyti
+Goosebottle
+Goosecaboos
Goosely
Gooshus
+Goostafus
Goothan
Gooziky
Goph
+Gopherpaws
Gophurr
Gopuppy
+GorGorDon16
Goragtong
+Gorak
+Gorastaman
Gorathe
+Gorazdus
Gord
Gordi
Gords
@@ -8933,69 +18271,133 @@ Gore
GoreTexZ
Gorehogthot
Gorg
+Gorge002
Gorgeous
+Gorgeous Vin
+Gorgeous War
Gorgonsolo
+Gorgoth
+Gorila911
+GorillaChad
+GorillaHaze
GorillaMon3Y
+Gorillr
Goriox
GorkOfGuthix
GorogSmash
Goromi
+Gorons Ruby
+Gorpie
GorskiGG
+Gortron
+Gory Figment
+Gorzie
Goshiki
Gossip
Gosustyle
+Got Mad Nugz
Got my DD214
GotABigDoing
+GotItAll99
GotTheTool
GotchuXL
+Goteborg
Gotemburgo
-Gothic6669
+Gotham Steel
+Gothic Mommy
GothicHippy
Gothicking70
+Gotta
+Gotta B Dope
GottaSlay
Gottaburn
+Gougar
Gountor5
+Gourd
GourdPicker
+Gourmandise
Gourmet
+Goy Boyy
+Goy Oy Vey
Gozi
Gozpot
Gp On Me
+Gr OO7
Gr0tti
+Gr33n
+Gr3at Noob
+Gr4naat
Gr4p3
+Gr4y W0lf
Gr8Legacy
+Graaf Mol
+Graardad
+Graarp
+Graav
Grab
+GrabAColdOne
GrabbaLeaff
+GrabsPeePee
+GraciousHeeb
+Grade I
Graenmeti
Grafie
Grafvs
Graham47
Grain
+GrainUhSalt
Grainfedbeef
Grainter
+Grainwave
Grainys
+Grakron
+Grallham
+Gram othy
Gram0fDabs
Gramalio
+Grambo
Grammar
+Grammar Naxi
GrampaDreami
GramsaySan
Gran
+Gran t
+Granbyboys69
Grand
+Grand Magpie
+Grand Tree
+Grand mb
GrandErected
+GrandSlash
+GrandVince
+GrandWizard
+Grander LTU
Grandikid
GrandmasterT
Grandmasters
Grandpa
+Grandpa H
Grandwarlike
Graniitti
+Granite God1
+Grannolegs
Grannt
+Granny Tiddy
+Grant
+Grant LLKL
Granto
+Grantos1993
Grants2004
Grape
Graphics
+Grappleshot
Graros
Grasp
+Grass Nugs
Grasshoppper
+Grassman-420
Grast1z
+GratefulFunk
Gratefulfunk
Gratis
Gratitheode
@@ -9003,179 +18405,360 @@ Graudalin
GraveDiqqer
Gravecan
Graveless
+Gravenor
Graves
Gravew0rm
+Gravitrons
+GravityPulse
GravyTugboat
Grawgar
Gray
+Gray Goo
+Gray Icon
+Gray Nine
+Gray Owl
+Gray Sails
+Gray Wolf31
+GrayXOF
+Graybanns
Grayden
Graymarrow
Grayola
+Grays Peak
+Grayv
+Grazalay
+Grazia
Grazing
+Grazing Goat
Grazium
+Grazuz
+Grazy Killah
Grazzak
GrcRevisited
+GreFunky
Greally
+GreasierNerd
Greasy
+Greasy Nerds
GreasyGoose
+GreasyKnucks
Great
+Great Catto
+Great Dain
+Great Sneeze
GreatBritain
+GreatFambino
GreatGinGin7
GreatNorth
+Greater Rev
Greaterbeing
+Greaterwang
Greatgranpa
Greatwhite62
+Gredhkj
GreedyFox
GreedyG4me
Greek
+Greek Bust
Green
+Green Floyd
+Green Gh0st
Green Guru42
+Green HoHo
+Green Molly
+Green O
+Green Theory
+Green noob
Green0ktober
GreenBstard
GreenClue
GreenCortex
+GreenMonstah
Green_Matcha
Greenbeens1
+Greenboy638
Greendor
+Greene Daeye
Greenikulas
Greenmusiq
Greenwell
Greenwolf666
Greg
+Greg Bcknghm
+Greg M
+Greg NM
+Greg Why
+GregLAD
Greggery
Gregley
Gregobeast69
+Gregor itos
GregorJesk
Gregornaut
Gregory
+Gregoryxo
+Gregreg
Gregsdabomb
+Gregy165
+Greh
Greig
+Greil
+Grej
Gremlin
Gremoir
GremorysPawn
Grena
+Grenadev
Grenenjah
Grenthyl
Gressaker
+Grewal
+Grey Beards
+GreyCheddar
GreyStation2
+Greyballes
+Greybird
+Greyhound00
+Greyhounds
Greyhunter
+Greytness
Grider
Griefstonks
Grieve
+Grieve r
Grieve4Nieve
Grievedd
+GrifSpice
+Griff Please
+Griff6GG
Griffey
+Griffeydor
Griffimano
Griffin
+Griffin 900
+Griffinerr
Griffoo
Grifo
Grifwin
Grihm
Grilby
+Grill Bears
+GrilledNem
Grim
+Grim Lahey
+Grim Reapr
Grim1O
GrimR
GrimRequiem
Grimalkinn
+Grimby
+Grimescene
+Grimey17
+Grimfeather
+Grimhimblem
Grimm
+Grimm Malice
Grimmauld
Grimmij0w
+Grimmjaww
+GrimmjowCero
Grimmlie
Grimms Baane
Grimnitro
Grimple
Grimreaper22
Grimsomebody
+Grimwar
Grimwold2
Grimy
+Grimy Elf
+Grimy Ghetto
+Grimy Guamay
Grimy H
+Grimy Lord
+Grimy Oppie
GrimyBuchu
GrimyIndica
+GrimyPussy
+GrimyRanarrs
+GrimyTorstol
+Grimz Reapin
+Grimzyy
+Grinchy
Grind
+Grind 4 Max
+Grind 4 Pets
+Grind Time
Grind4Life2k
+GrindAndGame
+GrindFaster
Grindcorr
Grinder
GrinderTo99s
Grindin
Grindinator
Grindius
+Grindlwald
Gringotts
GrinoReigns
+Gripzakje
+Gris Moor
+GrittyTacos
+Griz mobile
+Grizmatik
Grizzley
+Grizzly
+Grizzly Rock
GrizzlyCares
GrmblGrombl
+GrnBstrdO_o
Grobar20
Grobaz
Grod15
+Groen Hertje
Groene
Groesbeek
Groet
+Grog Dog
+Grog Mobster
Grogget
Groleo
+Gromada
GrommrUK
+Gromp Love
Gronk
Gronky
+Gronky Mutt
+GroogeN
+Groot Lol
GrootPool
GropeJelly
Gros
Gross
+Grosyte
+Grot I
+Grotegelds
Grotkop
Grotty
Grottyzilla
+Ground Hawk
+GroundGolem
GroundRanarr
+Group Int
+Group Pig
+GroupAaronMn
+GroupSexyMan
+Groupie Hugs
+GroupieSheep
+GroupyCoopy
+Groves
+Grow Culture
+Grow a Set
Grown
+Grown ups 2
Grrh
Grrim
Grrr17
Grrrrrrr
+Grubbfoot
+GrubbyNative
+Grubumas
Grucci
Gruglio
Grum
Grummmy
Grumpy
+Grumpy Bear
+Grumpy Dane
+Grumpy Rock
+GrumpyBean
GrumpyFire
+GrumpySkelly
+Grumtuque
+Grunderzz
+Gruntlife
+Grupopo
Grwl
Gryff1n
Gryygeri
Grze100
Gschlez
Gsef
+Gsuz
+Gtacoolz
GtheSquid
Gtotgt
+Gtr Zilla
+GuBoki
Guadanha
Guak
Guaka
Guala
Guam
+Guam Autism
+Guam Extract
+Guam Leaf
+GuamFarm
+Guapify
Guar
GuardMaze
Guardhakan
+Guardiaaan
Guardian726
Guardy
Guason
Guataca
Gubrew
Gucci
+Gucci Print
+Gucci Sheets
+Gucci Skrrt
Gucci0
GucciBalboa
+GucciChris
GucciDang
GucciDragon
+GucciMedHelm
+Guccifi
GucciiFlops
Guckle
Gudfad3rn
+Gudge
+Gudginator
+Gudmen
Gudomligt
+Gudown
Guelph
+Guernicaa
+Guess I Did
Guest738
Gufix
+Gugaru
Guidebook
+Guidefox
+Guido Bwana
+Guildboss
Guile
Guilles123
Guillotine
Guilou3
+Guimmy
GuineaHorn
+Guizompaz
+Gukkiman
GulTraktor
Gulf
+Gulmek
+Gulpar
+Gulpin
Gulsaft
+Gum
+GumGum B
+GumGum Fruit
+Gumat0s
+GumbleChunky
+Gumbygerkin
+Gumbygrump
Gumbygusher
Gumbypriest
Gumiibear
@@ -9184,12 +18767,19 @@ Gummibier
Gummy
GummyTushie
Gumpie123
+Gumri
+Gun
+Gunalations
Gunci
+GundarV
Gundrace
Gundrak
Gune
Gunfire
+Gunite
Gunjamini
+Gunman
+Gunn a
Gunna
Gunnar
Gunnawr
@@ -9198,156 +18788,351 @@ Gunnolvur
Gunny
GunnyGuest
Guns
+Guns Up
+Guns n Rozes
GunsN
+GunsN Roses
+Gunshow36
Gunsmith95
GunsonGurner
+Gunta Guy
+Gunter
+Gunteria
GuntherNese
Gunthie
Guntilius
+Guntown
Gunvald1
Gunwil
+Gunzyx
+Gupto3
Gura
GuraChan
+Gurahka
Gurchh
Guren
+Gurenz
Guri77
Gurilovich
+Gurke
Gurkes
Gurnie
GurningPills
+Gurnsy
Gurog
Gurp
+Gurp Gork
+Guru Pathik
GuruOz3
+Gus is Maxed
GusMagnel
+Gushing Thot
+Gusmamba
Gustav
+Gusten
+Gustice
Gustie1
+Gusty x
GuteArbeiter
Gutenberg
+Gutenberger
+Guthiccz
Guthix
+Guthix Boss
+Guthix San
GuthixIsBae
GuthixVapes
Gutti
+Guuds
+Guus geIuk
+Guusman
Guwaap
Guwapp
+Guwgle
+Guy Shishioh
+Guy Williams
+Guy in hat
+GuyBillNye
GuyDude
GuyHarvey
GuyInReaLife
GuyOnaBear
+GuyOverThere
+GuyintheChat
Guyringo
Guzas
+Guzman Loer
Guzzle
Gvjordan
Gvzy
+Gwaas
Gwas
+Gwas BE
GwasMaster
Gwasha
Gwasing
+Gwaztec
+Gwd
Gweav
+Gween Dwagon
+Gweeve
Gwellz
+Gwenchanaa
+GwigMate
Gwimer
Gwinter225
+Gws 2
+Gwu
+Gwublin
Gwyn
+Gwynrwyn
+Gxhost
Gyanzin
+Gyga
+Gym Beam
+Gym Is Home
+Gym then GYG
+Gymming
Gymp
+Gynn
GypsyAvenger
+GypsyTears
Gyrati0n
Gyro
Gyroman
+Gyrotta
Gytisr9
Gyts
Gyym
+Gz Parsec
GzBs
+H 0 U N D
+H 2R
+H A D O
+H A I D E S
+H A M M E H
+H A R L S
+H A T
+H A X 3 D
+H D M P
+H E A L E R
+H E J S A N
+H O L M E
+H Q Killer
+H S 7
+H U L K K
+H U N A J A
+H a t y
+H a w n y
+H abs
+H alo
+H ch
+H e c t o r
+H i n e s
+H l E U
+H obbs
+H owl
+H rekDoer
+H uff
+H-tsi
H0B0
H0DEX
+H0LINESS
H0NA
H0PES
H0RSEFIGHTER
+H0RY
+H0j
+H0j00
H0lyPorkyPig
H0me
H0nestyBe
+H0wy
H1GH
H1gh
H1gs
+H2 Ninja
+H20magic
H22a
H2GivesUTheD
H2HO
H2Okt
+H2R
H3AV3N1Y
H3NNESSEY
H3adBurner
H3ll
H3llg0g
H3nti3
+H3rbMaXD
H3rbs
H3rioon
H3xxar
+H4RD P V M
+H4RD PVM
+H4wk0n
H501
+H61
+H8
+H8rry
+HA RD
HACHE
HADYYY
+HAHA CODY
+HAMMY P0TTER
HANDLEwCARE
HAOKIMALONE
HARVEY
HARYWERNASDA
HASA
+HAUS DOSAN
+HAWGCRANKD
HAXERFUGGv2
+HBPandox
+HBTFD
HBTurpin
+HC DVS
HC Diego
+HC H R A D
+HC HALLEN
+HC J P
+HC Lone
+HC Nitsy
+HC PogChamp
+HC Tehl0rd
+HCByTheWay
HCIM
+HCIM Freak
+HCIM Telmo
HCJynkky
+HCTHB
HCaturbate
HCgenes
HClM
HCmunchies
+HCquitter
HCsndr
HDGamerLewis
HDarcticus
+HEAD TURNER
HEADLlNES
HEAVYWElGHT
HEAVYWORK
+HEJNUS
HEL1O
HELPPOLOTO
HELl0S
+HEMSKl
+HEMULIN LADA
+HER0X
HEREforPETS
HERYWERNASDA
+HEWlTT
+HEXISZ7N510Q
+HElMDALLR
HElSENBERG
+HFH141
HGCduke
+HGHZ
HHans
+HI IM XP
+HI lM SATAN
HICK
+HIHIHl
HIKI VALUU
+HIM thespaz
+HINEaKIN
+HKD
HL8ight
+HM-O3
+HM01Urself
+HM01Yourself
HM02YouFools
HM05
+HM05 Flash
+HMFIC
+HMR9
+HMS Bass
+HMTickle
+HMWRCKR
+HO NK
+HOB0MAN
+HODL DEEZ
HOKIE
+HOKIE II
+HOLDUP
+HOMIE_SNKE
HOOD
HOOLlGANS
+HQ140
+HR palvelut
HRVRD
+HRZ Dennys
+HReversti
HT Hero King
+HTKBeast
HTTP
HUGE
+HULKSMASH
+HULL CI TY
+HUMANATSIGHT
HUMPING
HUUTIS
HVSG73373535
+HWFG Jordan
+HYDROPWN1C
+HYPEHYPEHYPE
+HYPERTAIKURI
+HYPOXD
+Ha Tsjoe
+Ha Yea
+Ha rrison
+Ha ss
+Ha1fWayCrook
HaClintondix
+HaKooro
+HaMwise
HaNamer
Haaaa
Haaaydeez
+Haar-Xil-MES
+Haarde Knud
Haardest
Haarvey
Haavard
Habaneros
+Habbitatt
Habib
HabsWin2021
Hachune
+Hacien
+Hacis Zone
+Hack McGraw
+Hackdash
Hacked
+Hacked Here
+HackermanJS
Hackett116
Hackie
+Hacklang
Hacky
+Had Enough
+Had2hurt
HaddlingOS
Hadeees
Hadei
Haderlumpen
Hades
+Hades m8
+Hadezzz
+Hadhod46
+Hadies205
+Hads MC
+Hadyen
+Haelendur
Haell
+Haemogobl1n
+Haertyew
Hafco
Hafcos
Hafdis
@@ -9357,22 +19142,42 @@ Hagaar
Hagedis
Hagenau
Hagenees
+HaggisChaser
+HagridGone
Haha
+Haha noob
+HahaBonk
HahaYes
Hahaha
+Hahalord888
HahnSuperDry
+Hahru
HaiDiLao
+HaiHai
+HaiIZaros
Haiaf
+Haiden
Haidynn
Haighy
+Hail to Pitt
HailYeah
+Hailie Jade
+Haio
Hair
+HairNotFound
Hairy
+Hairy Batman
+Hairy Dery
+Hairy Hobbit
+Hairy Hooker
HairyCave
+HairyGirls76
HairyLatino
+HairysJungle
Hairyteddybe
Haissi20
Haiten
+Haitze
Haizet
Hajduk
Hajj12
@@ -9381,28 +19186,49 @@ HakGwai
Hakafissken
Hakala
HakanTheMad
+Hakaniemi
+Hakattu
Hakeem
+Hakkie
Hakkua
Hakozuka
HakunaWHO
Hakuryuu
Hakwai
+Hal Jordan
+Halaal
+Halal 1
+Halal Burger
HalalSnakbar
+Halaladdin
+Halbrand3791
+Halcony
+Halcyon Myth
+Haldir
Haldir140
+Haldun
Hale
+Hale End
Half
Half Volley
+Half a Cig
+Half a Worm
HalfAb0rted
HalfHawaiian
Halfdanger
Halfway
HalfwayOkay
Haliax
+Halibelle
Halipatsuife
Hall
+Hall of Fame
Halla
+Halla-Aho
+Hallako
Halleloja
Haller
+Hallo Knul
Halloman71
Hallonkram
Hallowed
@@ -9410,74 +19236,156 @@ Halls104
Hallucianter
Hallucin8d
Hallufauz
+Halluusio
Halo
HaloMisfit
+Haloboy
Haloking176
+Haloman6666
Haloo
+Halseys
Halsly
+Haltrek
+Halujo
HaluunKeksin
Halve
+Ham Dip
+Ham Turkey
+Ham r
+HamHawk
+Hamada
+Hamaken
Hamataka
+Hambam55
+Hamburgor
Hambzy
+Hamdulilah
Hamed
+Hamel
Hamii
Hamis
+Hamlee
+Hamm
HammZ
Hammer
+Hammer Man
+Hammer4422
Hammer4442
HammerTime29
HammerTine
Hammered
+Hammertime
Hammond
+HamnerTime
HamoodyShimy
Hamp
+Hampton Bays
Hampus
+Hamrocks
Hamsterslayr
+Hamstr
Hamudiy
+Hana the Mad
+Hanashee
+Hand Puppet
HandTuggy
Hande
+Handecapped
+Handex
Handicap
HandleofJD
Handley
Handphone
Hands
+Hands Hurt
Handsome
+Handsome Rob
Haneet
+HanekawaSimp
+Hanfkeks
Hang
+Hang em high
HangChowCrow
Hangin
+Hangin Nuts
Hanhen
+Hani
+Hanikala
+Hank Jackson
+Hank T Tank
+Hank343
HankTheTank2
Hankanini
+Hankk1
HankoAJ
Hankzilla
Hannah
Hannh
+Hannibal GIM
Hanno
Hannu
+Hannu Poika
+Hannu Soolo
+Hannys Main
Hanoi
+Hanoi Rocks
+Hanoob btw
+Hans Glans
Hansen
Hansern
+Hansiil
+Hansonville
Hansy
+Hantarded
Hanwi
Hanzino
HaochengZ
Haole
Haphazzardz
Hapoton
+Happ1RS
Happier
Happiikhat
Happy
+Happy Beluga
+Happy Dappy
+Happy Feet
+Happy Josh
+Happy Kitty
+Happy Light
+Happy Meal
+Happy Prayer
+Happy Tj
+Happy exSlut
+Happy2DaCore
Happy420
+HappyMeds
HappyPandaXD
+HappyScape
+Happydud01
Happyfrog12
Happyguy
+Happypurpday
+Happytoy
+HapuApu
Hapukurk
HarKieren
+HarO Reborn
+Hara YEP
+HaraHachiBu
Haraket
Harambe
+Harambro
+Harash
Harassment
+Harbix
+Harbor 2567
Hard
+Hard Chance
+Hard Clue
+Hard Filmur1
+Hard Kinta
+Hard TeK
HardFormed
HardHatJeffy
HardMannetje
@@ -9486,14 +19394,22 @@ HardRazer
Hardc0reBruh
Hardcome
Hardcrux
+Harde Pik
HardeSnikkel
+HardenedRS
Harder
+Hardeschijf
Hardie
+Harding
Hardlesas
Hardman
+Hardon hank
+Hardstyle IM
Hardwaring
Hardwell420
+Hare Danger
Harem
+Harem Isekai
Harja
Hark
Harka
@@ -9501,123 +19417,236 @@ Harken
Harken21
Harlekin
Harlem
+Harley Nz
+Harleyrox
+Harlie
Harlot
Harm
Harmala
Harmentje
+Harming
+HarmlessTwig
+Harmon Angel
+Harmoniiumm
Harmonized
Harmony
+Harmonyy
Harmr
Harms
+Harms Whey
+HarpoonMyAss
Harraggen
Harresvela
Harri
+Harri Hylje
Harriganrace
+Harris0n
Harrithon
+Harrods Fish
Harrris
Harry
+Harry Bucket
+Harry Dirty
+Harry Hendo
+HarryPoppa
HarryTheGOD
HarryTheWhte
Harryalt
+Harryguy23
Harryindacut
+Harses
+Harsh Times
Harshhashh
HartIess
Hartlepool
Hartree
+Hartreni
Haruka
+Haruka Meh
+Harus Ranger
Harutikk
Haruto
Haruuki
+Harvahammas
Harvardista
+Harveytec
+HaryLongWood
Has2BeSHiFtY
+Has547
+HasOneLegacy
Hasballa
+Hasbullah
Hasek
Hash
+Hash Browns
+Hash House
+Hash One M8
+Hash katchum
Hash1
+Hash1Aussie
HashHund
HashIsLife
+HashTagYou
Hashh
Hashiiirama
+Hashimm
+Hashlife
HashtagGOALS
Hashtagz
+Hasloa
Hass
+Hassall
Hassis
Hassoni
Hastings
+Hasty Power
+Hat i
+Hat tis
HatchetOG
+Hatchkat17
+Hatchling
+Hathrow
HatiFnattt
+HatoradeJack
Hats
Hatsune
+Hatsune Miko
Hatsy
Hatte
+Hattibagen
Hattnn
+Hattuviilari
+Haubjerg
+Hauki0nFive
Hauki0nIron
Hauki0nNoob
Hauki0nUlti
+Haunleff
Hauntedfury
Haunter12123
Hauntya
HausHausHaus
+HautaNorsu
+Hautboi
HavU
Havac
+Havard
Havawk
Have
+Have Sabr
HaveAGood1
+Havendare
+Havenmeester
+Havi k
+Havidex
+Havoc Grasp
HavocRavage
+HavocThomas
Havok
Havottaja
Havzzter
+Haw
+Haw4iiankush
Hawaii
+Hawaii Ice
HawaiiMadez
Hawaiian
+Hawasser
Hawes
Hawk
+Hawk Driver
Hawkear
Hawkes
+Hawkeye87
Hawkit
HawkofLight
HawksMama
+Hawkwound
+Hawkzrael
+Hawler12
Hawolt
+HaxY
Haxd
+Haxident
+Haxixero
Haxn
Haxnoiz
Haxoonie
+HayHay
Hayabusa
+Hayaku
Hayasaca
+Hayasaka
+Hayboo
Hayden3
+Haydenl451
Haydenss
+Haydern
Haydor
Hayesy
Hayfield
Hayirlisi
HayleyQuinn
Haylz
+Haynex
+Haz-zy
+Haz2
HazDownz
Hazade
+Hazardless
Hazardouss
+Hazards
Haze
+HazeCloud99
+HazeMePls
HazePGN
Hazed
Hazeley
+Hazezor
Hazla
Hazsle
+Haztraz
+Hazy Sparrow
HazyHerb
+HazyHour
HazzFive
+Hc OffWhite
+Hc Oh Wait
+Hc Toleranss
+HcFlex004 v4
HcGon
HcHoopla
+HcimTironade
Hcimdiot
+Hckie
+He Adventure
+He Pinky
+He Who Iron
+He nry
He11zdone
HeSmokesBud
Head
+HeadBear
HeadHuunter
+HeadOverseer
+Headache
+Headenforcer
Headgaskets
Headleya
+Headliners
Headlines
-Heagerg69
+Headlines v2
+Headshotting
+Headwipe
+Healers
+Healty
Heard
+Heard Chef
Hearne
+Heart Please
Hearted
Hearten
+Heartlesdude
Heartlock
Heartquake
Hearts
@@ -9629,158 +19658,299 @@ Heat
HeatSeekr187
Heated
Heathen
+Heathenry
+Heather x3
+Heatmyser
HeatproofIM
Heav7n
+HeavenIyGard
+Heavener
HeavenlyBlue
Heavens
+Heavens Feel
+HeavensDao
HeavensStorm
+Heavensdown
Heavy
+HeavyBowGun
+Heb0
+Hecec
Heck
+HeckIron
+HeckinWoofer
HeckingFish
HecklerNKoch
Heckstrm
Hecote
Hectic Mic
HecticGinger
+HecticHerb
+HecticKebab
+Hectoplasma
Hedge
+Hedralx
+Heebie
Heedbo
Heee
Heel
Heeling
+Hefboom
HeftyFlan
HegXDXD
Hege
Hegelund
Hegert
Hegesy
+HehtoLerssi
+Hei Kneuter
+Heifetz
+Heightenings
HeikkiPentti
Heil
+Heil Pierce
+Heil Vegeta
Heilios
+Heill Ragnar
Heinamies
Heineken
+Heinekentje
Heinered
Heinzzel
+Heir
HeirHead
+Heisbergh
HeisenBergW
+Heisenber9
+Heist Music
+Hej hej
+HejBrink
+Hekaton
Hekdik
Hekla
Heko
+HektikBadger
+Helbur
Heldip
HelemaalMooi
Helesta
Helium
-Hell
+Hell ETC
+Hell Kitt3n
+Hell ffa
HellAngel
HellBlood
Hella
-HellaKush420
+Hella Tonk
+Hellabad
Hellafly
+Hellagaybtw
Hellandnz
Helldog946
Hellhaunted
+HellianV
Hellinferno4
Hellixx64
Helllblazer
+Hellmo
Hello
+Hello Bel
+Hello Friend
Hello6
+HelloBot9000
HelloDottie
Hellodummy
Hellrain962
Hellrazorr
-Hells
+Hells 10hp
+Hells Chance
+Hells Godz
+Hells Puppet
+Hells doggy
HellsRavage2
+Hellwater
Hellz
Helm
Helmoid
Help
+Help Autism
+Help I Gay
+Help my
+HelpImStupid
HelpLahh
HelpTheNoobs
+Helpful
+Helpless Ale
Helson Ryse
Helta9
Helx
+Hema roids
Heme2
HemeSupreme
Hemiptera
Hemmii
+Hemmur
HemoGlobe
Hemp
+Hemp product
Hempopotamus
+Hempwick
Hems
+Hen Ac Araf
HenaQ
+Henbane0
+Hendo Au
Henee
+Henehh
Henfami
Hengecobdig
+Hengggga
+HenkDeTanker
HenkdePlank
-Henkerddd420
+Henkka Btw
+Henkka242
Henkkawaa
+Henkkiiieee
Henkleebruce
+Henko420GB
+Henktius
Henlo
+Henners
Hennesssssy
Henni
Henniejj
Hennssey
+Henri380
+Henry Fe
+Henry XV
Henry14
Hens
+Hensel
+Henslord
+Hensta
+Hentai Daddy
+HentaiMaiden
+HentaiMusic
+Henu OG
+Henzone58
Heolis
HephaestusRS
+Her Gay
HerAddiction
Herb
+Herb Deen
+Herb Lab
+Herb Quest
+Herb box
Herbacist
Herbaderb
HerbalKing
+HerbalTeabag
Herbalicious
Herbby
Herbilicious
Herblore
Herbmania
+Herbmatic
Herbogus
+HerbsnSpicer
HerculesLoyd
Herculooo
HereFor_Beer
HereSomeDank
HeresALlama
HeresySlayer
+Herk
+Herkko
+Herkko32
+Herkku
Herkules
Herky
Herm10ne
Hermanni
+Hermaus M
+Herminator0
Hermit
+Hermit Jack
Hermitian
+Hermot palaa
Hero
+Hero Extreme
+Hero Kid
+Hero vs Hero
HeroDan
+HeroGenos
HeroToby
Heroed
Heroic
+Heroic Hope
HeroicDesire
+Heroicjesus
+Heron Bird
Herp
Herpa
HerpaGnome
HerpesNo
Herpesbek
+Herpito
+Herr Gaucho
+Herr Luc
Herra
+Herra Beavis
+HerraBonsai
Herrits
+Herrmann3
Hesienberg
Hesitation
+Hesmander
Hespori
+Hespori KC
+HesporisSeed
Hespus
Hess
Hesson
+Het Heden
+Hetdorp
+Hetebeir
+Hetehaan
+Hetimos
+Hets Capture
Hetumo
Hetzer
Heuha
Heur
+Heuro
Heuvel
+Heuvel Reus
+Hevenlys
Hever
Hevi
+Hevi Luumu
Heving
+Hewy
+Hex Is Maxed
HexMage
Hexadecimal
+Hexagon Heat
+Hexalogy
+Hexedited
Hexenblut666
Hexenkonig
Hexication
+Hexos
+Hexphase
Hextale
Hextra0rdnry
+Hexun
Hexxjan
+Hey B
+Hey Bob
+Hey Cheems
+Hey Im Dylan
+Hey J
+Hey Jase
+Hey Jay
+Hey Mills
+Hey Ubba
HeyBeautiful
HeyBigDaddy
HeyDaddy
@@ -9788,42 +19958,103 @@ HeyFonte
HeyHowsLife
HeyItsLachy
HeyLuffy
+HeyThatsLife
+Hey_Duck
+Heymakerz
+Heyman
Heywaddup
+HeyyDivine
Hezbullah
+Hezr
HgH2
Hhmm45
Hhmora
+Hi Cookie
+Hi Im Ant
+Hi Im Duncan
+Hi Im Emil
+Hi Im Frak
+Hi Im Ken
+Hi Im Pei
+Hi Im Stevo
+Hi Im Vitao
+Hi ImMrRight
+Hi Lvl Ideas
+Hi Opal
+Hi Ren
+Hi Suka xD
+Hi Tyler
+Hi im Gin
+Hi im Savage
+Hi im Shar
+Hi im Yellow
+Hi lm Paul
+Hi lm Sk8
HiDyvvnBDP
HiGHFLYER
+HiHowAreYa
HiImIronRick
HiImNicole
HiLumbridge
+HiNebb
+Hiarii
Hibbetts
+Hiben75
+Hibernal
Hick
Hickery
Hicu
Hidaki
Hidden
+Hidden Power
+Hidden one1
Hiddenn
+Hiddinkiwi
Hiddy
+Hide Ink 207
+Hide Ya Kids
Hidekia
Hideo
+Hideopenend
Hider
HidesHerEyes
+Hidi
Hidole555
+Hidro
Hieroglyfic
Hifter13
Higgens
High
+High Content
+High Halpert
+High Hustler
+High Knight
+High On Cake
+High Ronnie
+High Score
+High Snorse
+High Up Here
+High as Zuk
+High lm hi
+HighAsF Bruh
+HighBacon
HighMeatloaf
HighNoobJhin
HighOnPlants
HighProbably
+Highbury
Highcaalibex
+Higher Force
+Highestarchy
Highfish
+Highjacurmum
+Highland
+Highly Faded
Highmountain
HighonCash
+Highs
Highscaping
+Hightierian
Highway2Hell
Higlen
Higu
@@ -9831,146 +20062,253 @@ HihoMenono
HiiddeN
HiipFiire
Hiisgreat
+Hiit Man
Hiiz
Hijack778
Hijsbergh
Hiker
Hikiukko
Hikizato
+Hikmet
+Hilarious
+Hilda Garde
Hildr
Hilge
+Hilipilli
Hilk
+Hillhouse
+Hillpker
Hillram
HilltopHick
Hillzy
Hilo
+Himala
+Himaster
+Himtheguy
+Himy
+Hina Suguta
Hincarpie
+Hinchers
Hindi
+Hindle
Hinny
+Hinss
+Hintai
+Hiopeer
+Hip Fe Hop
+HipSlippers
Hiphop
Hiphopdude0
+Hipiguy48
Hipnodiskd4
Hippeis
HippieLexy
Hippies
+HippoBlunts
+Hiqhlife
Hirae2
Hiria1
Hiroble
Hiroticus
+Hiroyuki Isa
+His Faithful
HisHungness
HisLordship
Hisano
Hisblore
+Hislordship
HisokaX4
Hispeeed
+Hissi-Timo
+Hit U
+Hit By Car
+Hit Points
+Hit The Guam
HitMyVape
HitOnRun
+HitOrange
HitTheVape
Hitagi
Hitch350
Hitchens
-HitdeBongz
HitherDither
+Hitman Style
+Hitme8
Hitmonchans
Hits
+Hits Like
+Hitsumaru
Hittimestari
Hitz
+Hiva
Hiya
Hiyouri
HjaIIe
Hjaldr
HlKEN
HlMBO
+Hladomor
+Hlata
Hldz
Hlep
+Hlnub
+Hm
+Hmg Hawj Str
+Hmm Fr Bruh
HmmKoekjes
+Hmmer
Hmmingbird
Hmmk
Hmmm
+HntrBTW
+Ho Chi Meme
+Ho LiFuk
HoButter
HoFkee
+HoLeShite
HoarderMan
+Hob Ralford
+Hobbi
Hobbit
+Hobby Jogger
Hobex
+Hobgoblinas
Hobgoblins
+Hobgrot
Hobie
Hobo
Hobodude67
-Hobutt
Hock Baws
+Hockney
Hocky
Hocpuck
+Hocus POTUS
HodamOS
+Hodeman
+Hodge5
Hodgetwin
Hodort
Hodvik
Hoffmanator
+Hoffmanbmx
Hoffsworth
Hofus
+Hog
HogPacker70
+Hogboar
+Hogboy
Hoggormen
+Hognag
Hogo
Hogsen
Hogskoleprov
Hoheti
Hohhenheim
Hohhoijjaaaa
+Hoi An
Hoilam
Hoix
Hokage
+Hokage Jason
+Hokage Sama
HokageRS
Hokiako
Hokie
+Hokiee
+Hokies
HolaBurrito
Holbox
Hold
+Hold My Gun
Hold3nMc
+HoldMyShrimp
+HoldenBallz
Hole
HoleNewName
Holenes
Holidayz
Holiest
+Holiidayyy
Holisti
Hollar
Hollington24
Hollow
+Hollowed One
Hollsyy
+HoloTheDrunk
+HololiveOS
+Holoubek
Holsey3126
+Holt
+Holtsen
+Holunder
Holy
+Holy Cheetos
+Holy Druid
+Holy Jandals
+Holy Moses
+Holy Plan
+Holy Rock91
+Holy Scrotum
+HolyChrist
HolyColt
HolyDugong
HolyElixir
HolyEntity
HolyGhost
HolyHerb
+HolyIronmoly
+HolyMould
HolySaints
HolySkittles
+Holycaw
Holyfuk
Holyhonza
Holykana
Holyshmokez
Holyzuk
Hom3r
+Homage48
+Hombelkei
Home
+Home Boy
+Home Office
+Home Page
+Home Plug
+Home Run26
Homealot
+Homebad
Homefront
Homegrowe
Homelander
Homeless
+Homeowner
Homepage
Homer
+Homer LT 0_o
Homestead
Homicide
Homie
Homies556
Homingstats
Homlepung
+HommeDeFer
Hompski
+Hon
Honaz
+Honchcrow
+Honda Coupes
+HondaXJ20
Honden
+Hondo Ohnaka
+Hondsvot
Honest
+HonestThomas
+Honestben
+Honestidade
Honeytrippin
Honeyyyy
+HonkMyClussy
Honket
HonkeyKong
Honkitonki1
@@ -9978,37 +20316,61 @@ Honko
Honkys
Honler
Honor
+Honourable
Honq
+Honra
Honru
+Hoo Lee Fook
Hooba
Hoobloob
HoochFighter
Hood
+Hood Rat
HoodBrothers
Hoodaloo
Hooded
HoodedDeath
Hooder
Hoodieninja
+Hoodless
+Hoodlum_94
Hoodrat
+Hoodstar XD
HoofHarted
+Hoogbegaafd
+Hook
+Hook N Arrow
+Hookah
Hookin4GP
Hookr
Hooleys
+Hooofer
Hoooka
HooorrraaaH
+Hoop Snake
HoopaLoopz
+Hoopdie
Hoopre
Hoopti
Hoorus
+Hooryu
+Hootenanny
+Hooyaah
Hoozio
+Hop Loser
HopNowNoob
Hope
Hope4TheBest
HopeSmolDicc
+Hopeless
+Hopelite22
Hopeu98
Hopian
Hoppa
+Hopper727
+Hoppip
+Hoppipolla
+Hops World
Hoptilicus
Horatio
Horatioat
@@ -10017,27 +20379,60 @@ Hord
Hordalad
Hordaland
Hordelli
+Horey
Horizons
+Horizons End
+Horme
HornDawgx
Horned
Horns
+Horny4Herbs
Horny4Hunlef
Horozu
+Horppi
+Horrific Rat
Horriser
+Horros
+Horrow jr
Horse
+Horse Tock
Horselord
+Horshock
+Horsley park
Horstel
+Horus Hyla
Horus1701
HoshizoraRin
Hospitaliano
+Hoss
+Host Proctix
HostileBoss
+HostileCloud
HostileEx
Hostiles
+Hot Ass
+Hot Box
+Hot Boxing
+Hot Chesters
+Hot Choco
+Hot Chook
+Hot Dog 1995
+Hot Dog Guy
+Hot Girl
+Hot Glacier
+Hot Gril
+Hot Hemp
+Hot Shop
+Hot Since 82
+Hot Stepdadi
+Hot nurse
HotAsianCuti
HotCocoa
HotCuppaT
HotDoggWater
HotManCurry
+HotMaxCurry
+HotPud
HotSaus123
HotSnow
Hot_Farmer99
@@ -10046,180 +20441,342 @@ Hotandhorny
Hotbox
Hotchelli
Hotdog
+Hotdog Timmy
Hotdog655
+HotdogGravy
Hotdogit101
+Hotdogwhat
Hotel
Hotkeys
+Hotline Juan
+Hotot
+Hotputhy
+Hotrod-Matt
Hots
Hotsbo
+Hotse
Hotsgonwild
+Hotshotz61
Hotslol
Hotwheeler
Houdinski
Houndstooth
Houowvwvv
+Hourlies
+HoursAndy
Hous
House
House748
+HouseSniffer
+Houseman45
Housewife
+Houston713
Houstoned
Houstonnnn
+Hovis
+Hovland
Hovmeizter
+How do I win
+How to quit
How2Boss
How2username
HowAboutNeup
+HowDoDisWork
+HowHardd
HowIing
HowIsDis
+HowLee
+HowSway
Howde
Howland
+Howler Head
Howlini
Hows
+Howsey
Howson
HoySmallFry
+Hoya Markus
+Hoyaa
Hoyah
Hoyiron
Hoyryjyra
+Hoyyehh
+Hp x Hp
+Hr Banan4
+Hr CarlSmart
+Hr KalZ
+Hr Pagulane
+HrMystik
+Hra Amiraali
+HraMajuri
+Hraerekkrr
Hrafnagud
+Hrag
+Hrathix
+Hrry
Hrungiir
HshBrwnClwn
+Hsilver
+Hska
HsrFresh
+Htine
+HuZ Ryan
Huaraaturpaa
Huard
Hub3r
+Hubbbzzzz
Hubbz216
Hubeeb
+Hubie
+Hubiera
Hubli
+Huby K
+Huck
HuckUsAHandy
+Huckn
+Huddo
Hudsy
Huebs
Huevote
+HueycoatI
+Huffers
+Hug A Mudkip
+Hug my cat
Hugakitty
Huge
+Huge Coom
+Huge Mudkip
+HugeCcret
+HugeCox
HugeMike
HugeSimp
HugeSquanch
+HugeXpWaste
Hugh
+Hugh Jannob
+Hugh Jas
Hugh Jazzhol
HughAreMyron
+HughJastle
+Hughes Luck
Hugo
+Hugo Baws
+Hugo C
Hugodzilla
Hugos
Hugoslavic
Hugotec
+HugsTibbers
Hugsi
+Hugsqtface
+Huhi
Huhm0ng
+Huhmble
Huhu
+Huidskleur
Huiliuiliu
Huilu
Huinca
Hukka
Hulagu
+Huler
Hulk
+HulkSmaash
Hullcity25
Hulll
Hulluke
Hulluurpo
Hulvatonta
+Hulyx
Human
+Human Knight
+Human Reject
+HumanMalware
+HumanSl0th
HumanToxin
Humanist
Humanityy
+Humanoid Rat
Humb
+Humb RS
Humbabe
Humberto
Humble
+Humble Finn
+Humble Husk
+Humble Otter
+Humble RNG
+Humble lp
HumbleCanoe
HumbleCrab
+HumbleFarmer
HumblePlayer
Humblee
+Humblegods
Humbleherb
Humblenobody
Humbles
+Humboy
+Humgrump
Humid
+Humiliation
+Humji
+Hummbinger
Hummerspeck
HumperT
Humpletics
Humu
+Hunajamurune
Hundjagare
Hundred
+Hung Opossum
+Hung Pikachu
+Hung Zebra
HungLow30
HungSolo45
Hungarry208
HungerRee
Hungry
+Hungry as fk
+HungrySponge
HuniePop
Hunkadoris
+Hunks
+Hunlef
Hunnets
+Hunni Bunny
Hunpy
+Hunt Mike
Huntarr
Huntdragimps
Hunter
Hunter10139
+Hunter4056
HunterPandav
+HunterXosrs
+Hunters Main
Hunterz
+Huntin Specs
Huntindawg
Huntindawg2
Hunting
HuntingGirls
+HuntingPets
+Huntinrox
Huntinthotts
+Huntiritox
HuntnCoFTB
+Huntsin
Hunyadi
+Huolon
+Hupipelaaja
Huppis
+HuppuKostaja
+Hups
+Huqin
Hurlae
Hurleee
Hurley
+Hurley24
Hurlock
Hurri
+Hurrisun
+Hurs 1
Hurtigmads
HurtsDonut
Huscarl
+HuseG00SE
Huseyin31
+Hush Pup
Husker
HuskerFool
Huskieeeee
+Huskvarna
+Huskyskills
+Hussar1683
Husse1n
Husseinn
Hustensaft
Hustlez
Huswan
Hutchens
+HutchoAU
Hutros
Huts
+Hutula
+HuugeCok
Huugo35
Huule
Huumepoliisl
+Huupee
Huutiset
Huutoripuli
Huviksee
+Huxley King
+Huxtap
Huxtin
Huzeyfe
+HvH
Hvale
+Hvale Kongen
Hvorfor
+Hwael
+HwbrangerUIM
+Hwzrs
+Hxc Ironfail
Hxcmackin
+Hxpeful
Hxrm
Hxrsey
+Hy a
Hy3RoGeN
+Hy3RoGeN x
HyAcey
+HyDrooo
+Hybernated
Hybrid
+Hybrid Hurtz
+Hybrid Mech
HybridSanta
HydG
+Hydi
Hydr0nate
+Hydr0p0nic
Hydra
+Hydra Ikkle
+Hydra Spoon
+Hydra_Lerna
Hydraletics
+Hydras Daddy
Hydration
Hydraxon
+Hydrerion
+Hydro-Quebec
HydroBlast
+HydroC
+HydroGasMask
+Hydrocarbons
Hydroe
Hydrofiner
HydrosFather
+Hyemi
+Hyfens
HyggeDansker
+Hyi
Hykd
HylianLink
+HylianLombax
Hylkon
+Hymy
Hyosin
+Hyough
HypaDunkTv
+HypaZestay
HypeLad
Hyper
+Hyper 212
+Hyper Threat
+Hyper autist
Hypercam
Hypercoaster
Hyperdeath20
@@ -10227,68 +20784,310 @@ Hypermole
Hypersomnia
Hypertroll
Hypertrophic
+Hyperversity
Hyphen
+Hyphen-ated
Hyphenated
+HyphyRS
Hypn0se
Hypocriet
+Hyprocrisy
Hysteric4l
+Hytrogod
Hyttynen
+Hyula
Hyun
Hyxbe
+Hyze
+Hyzers
+I M
+I Skilz I
+I ADK I
+I AM DROID
+I Am Arun
+I Am Calysto
+I Am Cicu
+I Am Dave
+I Am Eugene
+I Am Malenia
+I Am Mathew
+I Am Mizzou
+I Am Times
+I Am Vexed
I Am Vono
+I Am Xyience
+I Am Yesac
+I B Z
+I Barak I
+I Be Vibing
+I Be Yankin
+I BenJammin
+I Bryce I
+I Buy Bulks
+I Buy You
+I Call BS
+I Cant Veng
+I Chance I
+I Chaz I
+I Chop Life
+I DanWise I
+I Daniella I
+I Decimate
+I Descend
I Dizz I
+I Dont Gnome
+I Dont Know
+I Dont Weld
+I Drink T
+I Drive Jeep
+I Duck Hunt
+I ELITE I
+I ET BBIES
+I Emu I
+I Enjoy Butt
+I Faheem I
+I Farm On Rs
+I Flick Bean
+I Gem I
+I Genesis l
+I Go Noob
+I Gribben I
+I Grind it
+I H8 GAGEX
+I Haros I
+I Have Quit
+I Heal DHers
+I Herb Store
+I Hunt Pets
+I Hustle Man
+I I ODIN I I
+I JANGLER I
+I Judgee Yu
+I Ko U Lol 1
+I L0ve Lolis
I LOTR I
+I LV PEACH X
+I Lezima I
+I Liam I
+I Liamz6 I
+I Like Cake
+I Like JoJo
+I Lov3 Pho
+I Love DILFS
+I Love Kinja
+I Love Kylie
+I Love Muff
+I Love You
+I Luci
+I Luhhya
+I Luv tSwift
+I M A P nuss
+I M Ket
+I M S N Y
+I M The Weed
+I Maxed OSRS
+I May Be
+I MoF
+I Mograine I
+I N D I A N
+I Need 1M
+I Need Succ
+I Need aBeer
+I Novato I
+I Nz I
+I OX
+I Owning
+I P0
+I P0KY I
+I Parry I
+I Peter I
+I Pk In Monk
+I Plank Lots
+I Play Aegis
+I Pod335
+I Pri
+I Q T
I R N B R U
+I R O N 99
+I RC
+I ReAPeR I
+I Roll Need
+I Ron Man
+I Ruin Holes
+I Run East 2
+I Sharted
+I Smiteyou I
+I Smoke Irit
+I Specs I
+I Spied
+I Strangles
+I Taka Hujit
+I Teller I
+I Tricky I
+I Tuscan I
+I Valknir
+I Vape Lube
+I Viral
+I Want 60FPS
+I Would Rage
+I Xl I I Xl
+I Yogurt
+I Yoshitsune
+I am Anyone
+I am Bryce
+I am DB o
+I am Elk
+I am Future
+I am Glynny
+I am J M E
+I am Jedi
+I am Niels
+I am Nyheim
+I am Olive
+I am Ry
+I am SHODAN
+I am Saitama
+I am Shiny
+I am Shogun
+I am Simon
+I am Soloing
+I am Twiggy
+I am a wreck
+I am aRusher
+I am drunk
+I am groot B
+I ate
+I bad Guy
+I desire God
+I do be Iron
+I eat peach
I h8 farming
+I have egg73
+I have poon
+I have rng
I ll fail
+I love me
+I love yew
+I m Dave
+I m Kenpachi
+I m an Angel
+I matchjad I
+I mpling
+I n b 4
+I ndy
+I nspire
+I rvin
+I sak
+I smell zaza
+I so pale
+I squared R
+I t I s
+I tbag cows
+I used to Rc
+I van
+I vinrox
+I w4ste xp
+I wana dew u
+I want wings
+I-IEEBO
+I-Iulk
I00OOOOOO00I
+I2P
+I2m
+I2ocky
+I2ossiiii
I3ET
I3WANA
+I3ooth
+I3ow Hunter
I3ox
I3rucex
I3ubbles
I3ulow
+I7I
+I7iablo
+IA
+IAM HARDWELL
IAMBillNye
+IAMDouble_C
IAlwaysBurn
IAmArcade
+IAmArchangel
IAmBabyYoda
IAmBinx
IAmEcliptic
IAmFaptastic
IAmFrampt
+IAmJacbo
IAmRichard
IAmSlimShady
IAmStyle
IAmUnbound
IAmWaffles
+IAreTazz
IB4I
+IBB Baskani
IBIoodRose
IBaIance
IBangBBWs
+IBardak
+IBloodwing
+IBuyGF5GP
IBuyPowers
+IBuyShungite
+IC 3
+IC XC NI KA
+ICE GIANTT
ICNK
+ICantFit
ICauseRage
ICrazyCamelI
+ID theft
IDEPOCIEBIE
+IDSilver
IDark
IDiabloI
+IDustie
IEATEDYU
+IFALL3NI
+IFIFIFFIFIF
+IFIFIFIFFIFI
+IFIFIFlFIFIF
IFRC
IFRS
+IFRS 9
+IFartOnBaby
IFernedYou
+IFistBonk
+IFoundABaby
+IG0R II
IGN0RANCE
IGoogledIt
IHQueenI
IHasHips
IHaveAWifey
+IHaveChicken
IHaveToQuit
+IHobbitI
+IHopFromNo1
IHuntKoalas
+II Fabi II
+II Gots Piie
+II Mossy II
+II TurMz
II0III
II0v0II
IICyRaNoKII
+III SLAYR
+III jin III
IIIBCIII
+IIIGavinIII
IIIel0n
+IIIusionist
+IIKOO
+IIPAC
IIPrincesaII
+II_Blanx_II
IIamaman
IIflemishII
IIlIIAS
@@ -10298,24 +21097,119 @@ IIlllllIIlIl
IIndy
IIrisviel
IIsaac
+IIx Link xII
+IJzer Bal
IJzermeneer
+IK Pegasi
+IKotol
+ILL M1ND
ILLUMINATIS
ILOVEUBRAT
+ILVI
ILike
+ILikeKorone
+ILizzy
+ILostMySock
ILostMyTalk
ILoveAstolfo
ILoveSeaFood
+ILoveYasmin
+IM Adept
+IM BLUE DA
+IM Bazlish
+IM Big N8
+IM Bjakke
+IM Bolle Ui
+IM Butchh
+IM CSI
+IM Cares
+IM Chaudoin
+IM Corita
+IM Dahak
+IM Damy
+IM Dislectyc
+IM Dodgypig
+IM Donactro
+IM Drone
+IM Dutch Dog
+IM EL Clawo
+IM Envy
+IM Erlandu
+IM GERRALD95
+IM Gekko
+IM Gokhan
+IM Guilty
+IM HEEM
+IM Hail
+IM Harnas
+IM Hulkeen
+IM Infested
+IM Jap1
+IM Jenskee
+IM Kat
+IM Knol
+IM Krona
+IM M U R P H
+IM M0A
IM Maccy
+IM MajorRat
+IM Maninja
+IM Musa
+IM Noddy
+IM Ong Gia
+IM PVM BRADY
+IM PapaBless
+IM Peach Man
+IM Pepekage
+IM Perp
+IM Phubz
+IM RICO_1
+IM Rampage
+IM Reiner
+IM Rome
+IM Ruinscape
+IM ST0NED
+IM Sebaa
+IM Soad
+IM Spooned
+IM Super AFK
+IM Tank OG
+IM ThiccSucc
+IM Tipz
+IM Toon
+IM Walnut
+IM Witt
+IM Zoot
+IM a pansy
+IM blazeit
+IM sanderve
+IM spen
IMAEATURASSS
IMAFKNNONCE2
+IMGOKU1
IMHankey
+IMHky
IMJeffG
+IMMezzo
+IMNagrom
+IMPERlO
IMPlayerjohn
+IMSOULSHADOW
IMSausjegeit
+IMSkrt
+IMWaldorf
IM_Queeffing
+IMa Planker
+IMakeUBegKid
+IMevil yoshi
IMissNieve
IMnotQ
+IMoIVoxide
IMsmits
+IN A FERRARI
+IN PRISON RN
+INCEL839273
+INCreate
INDICA
INFERNALMAX
INTERMEDlATE
@@ -10323,131 +21217,249 @@ INYOURTS
INeedABump
IOHBOY
IOnSpacezI
+IP6
IPkdYourBank
IPlayForPeso
+IPlayHigh
+IPonderosa
+IProGuthix
IPumpkin
IPunchKids
IQUICA
+IR Hardcore
IR0N
+IR0N BOND
IR0NMAN
+IR4Q
+IRL Femboy
IRON
+IRON BYRNS
+IRON DlOXlDE
+IRON NOT HOT
+IRONMAN ADO
IReallyLikeU
+IRework
IRidePipe
+IRoldy
IRowForUCD
+ISAPOOPS
+ISO PEE
ISOMAN12
+ISQQC
+ISTRA
+IScottGame
+ISjorsI
+ISmokeABit
ISoLaTIIon
+ISquirk
ISuperStarI
+ITIB
+ITIISERY
ITIOMME
ITIace
ITIaddy
ITIagicka
+ITIagicks
ITIajestic
ITIallen
ITIasKilleR
ITIassacre
+ITIatty
ITIerica
+ITIiko
ITIoj
+ITIoosh
ITIr
ITSPYRO
+ITV X
+IThe Beatles
+ITrimGlories
+ITurtlekunI
+IUR
IUntradeable
+IV Luke
+IV skin
+IVI V G
IVICMXCIII
IVIE0W
IVIacaroni
IVIaybe
+IVIeesa
+IVIeredith
IVIesprit
IVIetallica
IVIidget
IVIooN
+IVIowlzy
IVIugginz
+IVIush
IVIxtthew
+IVOXYGEN
+IW Lytheria
IW4M
+IWGP
+I_Eat_Ass04
+I_Inity
+I_Noodz_I
+I_make_noise
+Iacto
Iaculch
Iaffan
Iafs
+IaintHiding
+Iam Bald
IamAjewBoy
+IamBowser
IamBruun
IamCheesin
IamCrazyBoy
IamDuru
IamErect
+IamGossip
IamNSFW
+IamNotHodor
IamRichPutin
IamSneak
+IamThaLiquor
IamXerxes
+Iambadhaha
+Iamcruxer
Iamearth
Iaminsanemax
Iammooted
Iammtpjr
Iamstepbro
+Iamthestars
+IamthyPope
+Ian Beale
+Ian Rush
IanT
Ianalan
Ianbird
Ianeke
Ianeke4
Ianyaboii
+Ianz
+Iax 2000
+Ibanezx88
Ibanezx99
+Ibans Fe nix
IbansPheonix
Ibarbo
+Ibb
+Iberis
+Ibexleave
Iblushh
-Ibongtoke
+Ibn
Ibrahimovic
+Ibugppl Jr
+Ibunaaru
Ibuprofen800
IcEyCuDa
Icanfixthat
+Icarius Fell
IcarusRS
+Icaruz
Icculus1
+Ice 9112
+Ice Barrage
+Ice Caves
+Ice Gengar
+Ice King
+Ice clap
+Ice giants
Ice in Vodka
+Ice5566
IceBarraging
IceCreamDog
IceDesert
+IceFoxZero
IceH
+IceIceChooky
IceNineKiIIs
+IcePrisonMe
IceSparro
Iceb
Icebeam
Iceburghomie
+Iced 0ut
IcedOutDrip
IcedScrabble
Icedeadmage
Icee
+Icefirezz
Icehound
Iceid
+Icejawa
Iceland
Iceleag
Iceliang530
+Icelight
+Icemonkeyz
+Icen
Icesoze
Icespeller
+Icetaylor
Icey
+Icey Lunaris
+Icey M
Iceyou90
Ichi
Ichi6an
+IchikaNagano
Iciclez
+Ico n
+IconPara
+Iconiic
Iconoclasmic
Icookpeople
Icoz
IctCat
+Icy Duck
+Icy Tires
IcyFear
IcyTowerr
Icyene
+Icyene Hero
Icyenicblood
Icyflowers
Icyx
+Id Tele Too
+Id Yak It
Idaho
IdahoTaters
IdcGoAway
Idea
+Ideaal
Ideekay
Idepredad0rI
Ididit33
Idk Why PvM
+Idle GE
+Idle Melvor
IdleWhale
+Idlibi
+Idna Supafly
+Idol Namib
Idont
Idontlikejad
+Idopk1
Iecysoda
+Ienjoisk8ing
+Iern
+If I Succeed
+Iffi
Iffyz
+Igge
+Iggy Ontario
Igloocold
+Igmere
Ignace
Ignent
+IgnisDraco22
+IgnobleSolid
+Igor Krutoy
+Igor Mang
IgorBogdanof
Igorr
Igot99failin
@@ -10457,87 +21469,261 @@ Ih8myRNG
Ihan
Ihana
Ihme
+Ihnigmakage
IiIy
+IidaEmilia
+Iilqtforeva
Iimel
IisRaDiO
Iisalmi
Iivomon
Ijoinedthis
Ijusheadshot
+Ijzer tekort
+Ik Geef Bon
+IkBenWeg
Ikastovizski
IkeJEI
Ikhela
Ikillu247
IkkeVincent
Ikkle
+Ikkle Hydra
+Ikkle v Pain
+IkkleHorvick
+Il
+Il MrBorn lI
IlIBooieIlI
IlIIIIlIIIlI
+IlIIlIllIlII
IlINard0IlI
IlRisklIlIlI
+Ileeze
Ilija
+Ill Ko You
+Ill Effect
Illbeyourcat
+Illegal Char
Illest Logic
+IllestEver
+Illinoisan
+Illithid69
+Illlenium
Illumee
+Illuminatorr
IlluminumRS
+Illusionist
+Illusivezz
+Illustration
+Illuzory
Illwil
+Illyrian
+Illyrian TSX
+Ilmer
+Ilotalo
Ilovethewar
IlpOG
Ilsaldur
Iltasanomat
Iluredyou
+Ilusm
+Iluvahrim
+Iluvitar Eru
IlyrianBlood
+Im 85 Slayr
+Im A Saint
+Im Am Die
+Im Ami
+Im Anabolic
+Im Annoyed
+Im Artur
+Im Ash
+Im Asking
+Im Aspergers
+Im BackUp
+Im Baguette
+Im Barlow
+Im Behemoth
+Im Benough
+Im Blastoise
+Im Bo Licht
+Im Brills
+Im Burnz
+Im CG
+Im Chal
Im Christian
+Im Courage
+Im Dino
+Im Dr Afk
+Im Easy Exp
+Im Elyk
+Im Excalibur
+Im Fabulous
+Im Fever
+Im Finnish
+Im From Jax
+Im Gainz
+Im Gippin
+Im Gutfor
+Im Hawkward
+Im Hersh
+Im Huck
+Im Hunta
+Im Hussain
+Im Iron
+Im Iron WTF
+Im Jags
+Im Jokers
+Im Jovian
+Im Just Ken
+Im Krazy
+Im Kyle Btw
+Im Legacy XD
+Im Los t
+Im Luis
+Im McGriddle
+Im Missle
+Im Moist 4 U
+Im Moore
+Im Mr Josh
+Im Nate
+Im Nathan x
+Im Newschool
+Im Nice
+Im Not Okayy
+Im Not lron
+Im Nzmitch
+Im Off Chops
+Im On A Yak
+Im On Point
+Im Only
+Im Orc
Im Outt
+Im Pogi
+Im Qwerty
+Im Ron BTW
+Im Rus
+Im Savage
+Im Scoob
+Im Secor
+Im Shambles
+Im Single AF
+Im Smexy
+Im Snake A
+Im So Vayne
+Im Songs
+Im Spirit
+Im Stig
+Im Symb
+Im Tainted
+Im Tame
+Im Temppay
+Im Terrible5
+Im TheBeast
Im Tibbz
+Im Travis
+Im Triz
+Im Tyl3rr
+Im Whey
+Im Ya Papa
+Im Your Babe
+Im Your Dad
+Im Yui
+Im Zac
+Im Ze 0wner
+Im alex btw
+Im just Cody
+Im not FBI
Im relapsing
+Im tall af
+Im wokeup
+Im-Crowess
+Im2good4u2nv
Im45defence
+Im4everlucky
ImALilPigBoy
ImASthhnake
ImAdam
ImAl0ne
+ImAn Ironman
+ImBaldFromRS
+ImBobbyrayj
+ImBoredOfRS
ImCharky
+ImChuckBass
+ImClueless
ImCravenTim
ImDaPlugLLC
ImDaved
ImDaviie
+ImDirtyyyDan
+ImDoctaWhom
+ImEmilyy
+ImEric
ImFinnish
ImFlizz
ImGodd
+ImGodly
ImHavingFun
+ImHellaHigh
ImHighASFSry
+ImHisBae
ImIncredible
+ImInfested
ImIntense
+ImJames
ImJebbe
+ImJinxed
+ImJordon
ImJustLonely
+ImJustRaging
+ImKnotSimple
ImLarge
ImLeeuwarden
ImLikeRlyBad
+ImLukesGIM
ImMAdBro
+ImMajesticAf
ImMaxy
ImMilky
ImNewbie
+ImNoobK
ImNooblit
ImNotAfriend
ImNotHumble
+ImNotLost
ImNotThien
ImPaul
+ImPaulAlt
ImQuorra
ImRyboy
ImSane
ImShreksDad
ImSixteen
+ImSnoop
+ImSoGodlyy
ImSoVulgar
+ImStormmm
ImTaegan
ImTayla
ImTinyRiick
ImTipsy
ImToFrosty
+ImTooGucci
+ImTwisted
+ImVanilla
+ImWargasm
ImWilbur
ImYourDadBTW
ImZe
ImZorp
Im_Stone126
+Ima Guy
+Ima Lil High
+Ima Maleman
+Ima lron man
ImaCraftHor
+ImaMainbtw
Imack
Imafore
Images
@@ -10545,18 +21731,33 @@ Imaginable
Imagine
Imakuni0
Imalooter
+Iman103
+Imangry20
+Imanity
+Imanubnoob
+Imar Pussay
Imasecretspy
Imasin
Imawizardm8
Imazamox
Imblim
-ImbuedFart
+Imblim Area
+Imbrochavel
+Imbue
+Imbued Haert
+Imbuing
Imbune
ImeshuggahI
Imgrazy
+Imhellgracio
Imidril
+ImiteBurDADY
+Imitus
+Imm Mad Bro
Imma
ImmaSkill
+Immaturity
+Immediate W
Immense
Immer
Immerseus
@@ -10565,60 +21766,126 @@ Immortal
Immortal91
ImmortalK12
ImmortanMike
+Immxnse
Immys
+Imnotahuman
+ImoChase
+Imoinu
+Imotay
ImpactPewPew
+Impale Her
Impared
Impeccable
Impedance
+Impede
Imperdoavel
+Imperfecto
Imperfekt
ImperialQc
+Impietyy
Impish
+Impish Ace
Impishhh
+Imposter Jon
Impriznd
Improv
+Improved
+Impulsive Au
Impurest678
+Imql
+Imre
Imsain
Imsokwtie
+Imstratss
+ImtheAnimal
+ImtheCARRYv2
Imthick
Imtoob
+Imuhbeast
+Imuripieru
Imus
+ImxricK
+In Game Life
+In Menu Andy
+In My Shadow
+In Recovery
+In Seconds
+In2cept
InCyson
+InDaCouch666
InDespair
+InFemous
InGameLies
+InTawlerable
InThe90s
+InTolu
+InTransition
+InXanee
+InYaShower
Inaaya
+Inactive Acc
+Inar
+Inavi Jones
Inbow
Inbred
Incapacitory
+Incendia Vir
+Inch95
+Incin3rat3 X
+Inco-san
+Incoherent
+Incomes
IncomingBeef
IncomingGank
IncredblDino
+Incumbency
Indain
IndawrCrwdad
Indcsn
+Indecisive
+IndecisiveO
+Indemise
+IndexNull
Indian
+Indian Chad
IndianCat
+IndianaJones
Indicates
Indicator
IndieGarri
Indigo640
+Indivi2you
+Indoktrinera
+IndominusAsh
+Indoor Scape
+IndoorsOnly
Indoorsman
Indrado
Indrias1
+Indy Ju
+Inecstatic
Inedibles
IneedPVM
+Ineff icient
Inefishient
+IneptEwok
+InfIuenced
Infaam
+InfallibleX2
InfamousAB
InfamousEvil
InfamousMain
+Infantiel
Infase
Infectus
+InferiorRNG
InfernOwl
Infernadev
Infernal
+InfernalChef
+InfernalLuke
InfernalPRO
+Infernax
Inferneo
Inferno
InfernoTism
@@ -10627,18 +21894,23 @@ Infero
Infesmati
Infin1te
Infinate
+Infininth
InfinitiGX
InfinityMan
Infirme
Inflnite
Influx
Info
+Info Kiosk
Infobese
Infor
+Infora Treat
Ingeb
+Ingenious G
Ingeniously
Inglane
Ingleburn
+Inhaled
Inhinyero
InhumanBTW
Inimene1020
@@ -10648,38 +21920,68 @@ Iniys
Inkedsaint
Inko
Inksane95
+Inkwes
Inner
+Inner Brian
+Inner Peace
InnerBliss
Innvision
+Inori xdd
+Inosuke xo
Inqku
Inri
Insafi
Insane
+Insane Iron
InsaneBobbie
InsaneFruit
InsaneIee
InsanePerson
+Insaneglutes
+Insanewolfy
Insaniack
InsanityNix
+Insanityx
Insanityzz
+Insatiate
+Inse
+Insectkoala
InsertGold
Insluiper
+Insomnia
Insomnist
+Insomnity
Inspection
+Insta
+Insta Spec
+Instabox
+Instagrem
Instail
Instinct
Instro
+Instruct
Insucc
+Insulter
Insulting
+Insulting MF
+Insurgence
Insurgent
Int0mieli
Integration
+Intel6
+IntelManiac
+Intellectual
+Intendi
IntenseRage
Intensifyyy
Intentional
Intercept0r
+Interchange
+Intermk
Internal
+Internal Max
Interracial
+Interronator
Intherial
Intier
Intimate
@@ -10689,154 +21991,542 @@ IntoInfinite
Intoner
Intresant
Intresenting
+Ints
Intubator
Intuition
Inubashiri
+Inukal
+Inuouk
+Inur
InvTagsBad
Inva
Invalar
Invercargill
+Inversives
Invert
+InvertedDuck
Inveterate
+Invierno
Invisa
+Invisa Scav
+Invisa-Veng
Invisioners
Invokers
Involk
Invoryy
+Inwu
Inxo
+Io Jah Pul
+IoB Sylarke
+Iock
+Ion Benny
Ion870
IonCannon
Ionia
Iono
+Iou689
Iowa146
IowaCJ
Ioyal
+Ioyins
IpeeInTheSea
Ipod5412
+IpotYouDrop
Ippe
+Ipswich
+Ipswich FC
+Ir JWWillem
+Ir Phys
Ir0n
+Ir0n Bot
+Ir0n b00k
Ir0nMammoth
+Ir0nMish
+Ir0nPuma
Ir0nRagnarok
IrDA
Iralimir
+Irha
Irid
Irie
IrieLuDa
Irinichina
+Iris Elea
Iris_1904
Irish
Irithe
+Irl Baller
Irmak
Irobar
+Iroff SGDaht
+Iroflman
+Iroh Bison
Iroha
+Iroic
+Irom Typo
Iron
+Iron 0lm
+Iron 2DWaifu
+Iron 2b
+Iron 3 Hit
+Iron ABC
+Iron Achael
+Iron Aeolian
Iron Alabama
+Iron Alee
+Iron Aloha
+Iron Aloodum
+Iron Alpha
+Iron Anaerob
+Iron Anno
+Iron Anonymo
+Iron Antzz
+Iron Areolas
+Iron Arnoud
+Iron Arzka
+Iron Assface
+Iron Ayen
+Iron Azshara
+Iron B O D Y
+Iron B0yx
+Iron BDN
+Iron BLK
+Iron Bart
+Iron Baskan
+Iron Bawlsak
+Iron Bawsss
Iron Beabs
+Iron Beeto
+Iron Besu
+Iron Bezem
+Iron Bibi2u
+Iron Biddys
+Iron Bloke
+Iron Bogmac
+Iron Book
+Iron Boomz
+Iron Booxia
+Iron Borrrby
+Iron Brevik
Iron Brinnie
+Iron BryconC
+Iron Buchu
+Iron Buckc
+Iron Bucket
+Iron Bumko
+Iron Burrata
+Iron Buuh
+Iron Byld
+Iron Caddy
+Iron Calquat
+Iron Carly
+Iron Carmine
+Iron Carna
+Iron Cerv
+Iron Cevol
+Iron Chaw
+Iron Chemic
+Iron Chkn
+Iron Cholby
Iron Chombre
+Iron Chrisss
+Iron Coby
+Iron Coin
+Iron Coronao
+Iron D Luffy
+Iron D Natsu
+Iron D Zeref
+Iron DJG
+Iron DSC
+Iron DVS
+Iron Daniel
+Iron Deku
+Iron Denal
+Iron Deroq
+Iron Destr0i
+Iron Dipshit
+Iron Dixi
+Iron Domi
+Iron Dumontx
+Iron Dylnn
+Iron E
+Iron E s s
+Iron E z
+Iron Eagah
Iron Elyon
+Iron Equity
+Iron Excal
+Iron Exed
+Iron FFrenzy
+Iron Fe
+Iron Ferro
+Iron Filthy
+Iron Fioxxu
+Iron Fire 75
+Iron Floor
+Iron Forgy
Iron Franchi
+Iron Frodo
+Iron Fuhrers
+Iron G Zeus
Iron G0liath
+Iron Gaan
+Iron Gamerz
+Iron Gayness
Iron Ghosgar
+Iron Ginto
Iron Gios
+Iron Go
+Iron Godley
+Iron Godly
+Iron Golem
+Iron Goth GF
+Iron Greg
+Iron Grind20
Iron Griss
+Iron Haze
+Iron Hoiy
+Iron Holub
+Iron Hookkan
+Iron Hossi
Iron Hroth
Iron Hugge
+Iron Husky
+Iron Hydros
+Iron Hyger
+Iron IPvMI
+Iron Insaneo
+Iron Jakob
+Iron Jal-Nib
+Iron Jeref
+Iron Jeroen
+Iron JimmyJ
+Iron Jizzman
+Iron Jss
+Iron K3
Iron Kalde
+Iron Kaleef
+Iron Kapkeik
+Iron Karjala
+Iron Katniss
+Iron Kayn
+Iron Keagan
+Iron Kess
+Iron Kiwii
Iron Kngs
+Iron Knipp
+Iron Kodie
+Iron Koopsy
+Iron Kornie
+Iron Krijn
+Iron Krikke
Iron Laplace
+Iron Laxor
+Iron Layfe
+Iron Letski
+Iron Liber
+Iron Lose
+Iron Lungsta
Iron MTUT
+Iron Mamma
+Iron Mammal
Iron Mapes
+Iron Marie26
+Iron Marlon
+Iron Martin
+Iron Masori
Iron Masuli
+Iron Matt
+Iron Matt NZ
+Iron Matty W
+Iron Matuba
+Iron Maxvoid
+Iron Mellem
Iron Meydon
+Iron Miguel
+Iron Mikebor
+Iron Milan
+Iron Mimal
+Iron Miro
+Iron Moardus
+Iron Mossyy
+Iron Munted
+Iron Mystip
+Iron Nap
Iron Nellz
+Iron Nick
+Iron Nimmi
+Iron Nobody
+Iron Noe
+Iron Nuclide
+Iron Nuuby
+Iron O Brien
+Iron Oak
+Iron Oboi
Iron Ohboy
+Iron Ohgodno
+Iron Ohzone
+Iron Opto
+Iron Ores
+Iron Pandis
+Iron Parkour
+Iron Patches
Iron Peg
+Iron Pge
+Iron Phe
+Iron Plague
+Iron Pothead
+Iron Praxis
+Iron Pwn
+Iron Pwnstar
+Iron RNGsus
+Iron Rakey
+Iron Randall
+Iron Randyy
+Iron Reedzy
+Iron Rekkr
Iron Request
Iron Rikyu
+Iron Rind
+Iron Roach
+Iron Robsham
+Iron Roof
+Iron Rushy
+Iron Rybread
+Iron Ryuuga
+Iron S t i g
+Iron SSJ
+Iron Sagga
+Iron Samiria
+Iron Santus
Iron Scolew
+Iron Scran
Iron Seagz
+Iron Seha
+Iron Shaikh
+Iron Shavers
+Iron Sheik
+Iron Shnapi
+Iron Siem
+Iron Sioux
+Iron Skoptsy
+Iron Skroten
+Iron Skydive
+Iron Slash
+Iron Slaya83
+Iron Sloth 2
+Iron Smoke94
+Iron Snypah
+Iron Sparco
+Iron Splat
+Iron Stannrs
Iron SteveB
+Iron Stomp
+Iron Stronq
+Iron Stw
+Iron Sullo
+Iron Susu
+Iron Svampe
+Iron Swaffle
+Iron Swag
+Iron Takumi
+Iron Tango
+Iron Tanzim
+Iron Tbar
+Iron Terboo
+Iron Teun
+Iron Thi3ves
+Iron Tiffers
+Iron Tigr
+Iron Tigran
Iron Tinman
+Iron TomT0m
+Iron Tonkin
Iron Tonski
+Iron Tonymaa
+Iron Torfi
+Iron Toxxic
+Iron Trashua
+Iron Trixx
+Iron Tudder
Iron Tutnin
+Iron Tweeker
+Iron Tyrans
+Iron Tyrant
+Iron UIM
Iron Uakti
+Iron Unam
+Iron Varuna
+Iron Vatti
+Iron Venema
Iron Vexzed
+Iron VickD
Iron W1nk
+Iron Weather
+Iron Wespula
+Iron Wii
+Iron WindJr
+Iron Woofy
+Iron Wu5
+Iron XIIIV
+Iron Xellana
+Iron Xire
+Iron YEE
+Iron Yangus
+Iron Z4ppie
+Iron Zephyx
+Iron Zeraph
+Iron Zerg
Iron Zilong
+Iron Zinoto
+Iron Zoha
+Iron Zol
+Iron Zrysen
Iron Zul Mox
+Iron anrowi
+Iron d0gz
+Iron da ddy
+Iron dols
+Iron dry
+Iron feens
+Iron flynn
+Iron instead
+Iron kitcat
Iron l2asta
+Iron ona Mac
+Iron pappal
+Iron werty
+Iron whiff
+Iron wiper
+Iron x wolf
Iron xyN
+Iron-Ximena
Iron10203
Iron2Pickaxe
+Iron619
IronAgentP
IronAjandre1
+IronAkleiss
IronAlblad
IronAlufolie
IronAngst
IronAnnaMay
IronApples
+IronAsbe
+IronAssHole
IronAussieM8
+IronAxe
+IronBadAtPvm
IronBankFull
IronBeanz
+IronBeerad
IronBiGuyBtw
+IronBistchul
IronBobbyjoe
+IronBoink
IronBosse
IronBound
IronBrad
+IronBrand21
IronBrick
+IronBruBrah
IronBuriedNU
IronBurnsRed
+IronC1aws
+IronCagedRat
+IronCemile
+IronChillii
IronChirpOTK
+IronChompers
IronChrisKin
IronClarkey
IronCoX
IronComedy
IronCooter
IronCozza
+IronCraiger
+IronDab 710
IronDakotas
+IronDandaman
IronDavid
IronDeadBoy
+IronDefiant
+IronDeredas
+IronDethaele
+IronDodo420
IronDog777
IronDong
+IronDravekD
+IronDringus
+IronDtrex
+IronDubble
IronDubzy
IronDudde
+IronDunceCap
+IronDurrrrr
IronEagles
IronEkakerta
+IronEso
+IronEtch
IronFefe
+IronFigment
IronForFunnn
IronForged99
+IronForyn
+IronFrenzey
IronFrogMan
IronFungi
IronGalihand
+IronGatr44
+IronGear CEO
IronGez
IronGodsword
+IronGoliathX
IronGoneNorm
IronGow
+IronGuh
IronHammy
+IronHasta
IronHomer
IronIDKFA
+IronInsano
+IronIogibear
IronIsNoJoke
IronJValor
IronJakeT
+IronJames
IronJamesG
IronJarod
+IronJeffZ
+IronJenga
+IronJezz
IronJoint
+IronJosehiha
+IronJosephxo
IronJuji
IronKaboom
IronKaiser
IronKapp
+IronKayodee
+IronKest
+IronKingdoms
IronKukk
IronKyloman
+IronLadBtw
IronLadel
IronLaffin
IronLankzey
+IronLazure
IronLegend
+IronLegocy
IronLepaus
IronLifting
+IronLionMAIN
IronLucas
IronLuckPlz
IronMadePure
+IronMagick
+IronMainOx
IronMan
IronManBow
IronManJar
@@ -10844,17 +22534,26 @@ IronManSux
IronMango
IronMarius
IronMarty
+IronMason
+IronMathwin
IronMatty
+IronMayne
IronMetknot
+IronMikado
IronMinion
+IronMitchKun
+IronMollusk
IronMountain
IronMugz
+IronMushy
IronNWord
IronNachos
+IronNantt1
IronNateDogg
IronNazguls
IronNexuss
IronNeya
+IronNibletz
IronNihilm
IronNinja13
IronNord
@@ -10863,11 +22562,19 @@ IronOdum
IronOldBoy
IronOnPatch
IronOrca
+IronOreAgate
IronOsiriss
IronOxideMan
+IronOxidizer
+IronPangtar
+IronParis
+IronPeteMan
IronPills
IronPrice
+IronPrickles
+IronProf
IronPumitaz
+IronQben
IronQli
IronQueen
IronRait
@@ -10880,84 +22587,168 @@ IronSantaMan
IronSchmieds
IronShadow5
IronSikruz
+IronSkaro
IronSly
IronSmurfff
+IronSparrow
IronSpiderZ
+IronSpitfire
IronSplats
IronSpoNeD
IronSpoony
IronSpray
IronSquidly
+IronSteve-O
+IronStronky
+IronSurf
+IronSylar
+IronSystolic
+IronTarnum
+IronTasseron
IronTau
+IronTedBundi
+IronTeste
+IronTestedRB
+IronTimTim
IronToff
+IronTulio
+IronTyson
IronUnkilled
IronVegtable
+IronVib3s
IronVikinng
IronVikzo
+IronVinda
+IronViolette
IronW3LEGEND
IronWafflee
IronWallnut
+IronWantsRNG
IronWayneker
+IronWidovv
IronWush
+IronYoerik
+IronYugo
IronZettrox
IronZong
+Iron_ProDabs
Iron_Slippy
Iron_Sukulo
+Ironarcanic
+Ironatica
+Ironator
Ironblood7
Ironboba9993
+Ironbobsaget
Ironborn
+Ironborn PVM
Ironbutcher
+Ironclad Sac
Ironed
+IronedSwift
+IronendJr
Ironeyy
Ironflox
Ironfur
+Irongrazvis
+Irongusty
+Ironiam Vir
Ironic
+Ironic Force
+Ironic Kill
+Ironic Name
IronicBenson
IronicSwag93
+IronicViking
Ironicer
+Ironiical
+Ironija
+Ironik 20
IroningB0red
IroningSucks
+IronishSana
Ironkaka
Ironmacman
+Ironmale
Ironman
+Ironman Daff
+Ironman Jase
Ironman Jowe
+Ironman Wit
Ironman idk
IronmanFookz
+IronmanHutch
Ironmanerno
Ironmeme
+Ironmeme Cx
+Ironmeme Lol
+Ironmies
Ironmimmi
+Ironmorriz23
Ironn
-Ironn_69
+Ironn Yoshii
+Ironnesses
Ironpasta1
+Ironqa
Ironred33
+Ironriwer
+Irons suck
+Ironshore
Ironsoul2
Ironstone
+Irontownhero
+Ironwind747
Ironwinter
Ironwork4eva
IronxElite
Irony
+Irony Nib
Ironylion
+Ironyx
+Ironzi
Ironzilla
+Irrelevant
Irrumated
+Iru
+Irulon
+Irxn
Irxnized
+Is E_wen
+Is Idle
+Is Slikker
+Is a bich
+Is this you
IsAlexOk
+IsButters
+IsChazCool
+IsDomIsGood
+IsYaBoyDoive
Isaac
+Isaki Magari
Isbjorn
Isganytojas
+Ishigo1992
+IshmaelDonny
+Ishrandom
Ishzn
+IsidoroM
Iskemia
Iskolar
Iskon
Iskra
Islaal
+Islami
Islefalls
Isleview
+IsmackfaceI
Ismelitooo
Ismo54
IsoG
+IsoKitty
IsoP
Isoga
Isoleucine
+Isootoonik
Isoptox
Isosami
IsraVM
@@ -10965,51 +22756,141 @@ Israels
IssaEly
IssaStiffler
Issard
+Ist M
Istanbulite
+Istasher
Istaxit
+Isvig
+It Slaps
+It is Rex
+ItBeJacK
ItBurns
ItIsWedsDude
+ItPol
ItWasntMe007
Itaky
Ital
Italian
+Italian roxx
ItalianAJ
+Itaochi
+Itchweedy
+Itcoto
+Iteyx
Ithero
Ithlinee
+Itik
+Itinkinou
+Its Absol
+Its Almog
+Its Arj
+Its B0B
+Its Brother
+Its Canadian
+Its Conrad
+Its Da J00z
+Its Dally
+Its Dyl
+Its Hash
+Its Jon btw
+Its Jst Skin
+Its Kaylee
+Its Libo
Its Me Dave
+Its Me Q
+Its Me Suns
+Its Misha
+Its Nipo
+Its Peter
+Its Rigged
+Its Sebas
+Its Sense
+Its Seth
+Its Smooth
+Its Teddy
+Its Wolfie
+Its Yama
+Its Zammy
+Its a Shame
+Its claw
+Its me Josh
+Its me eden
+Its rob
+ItsAboutTime
+ItsAirdog
ItsAllOgreM8
ItsAnobrain
+ItsBarcus
ItsBigNasty
ItsBlitzyy
+ItsBrtnyBch
+ItsBru
ItsClout
ItsDende
+ItsDynasty
ItsFinn
ItsFlooo
+ItsHoggle
ItsHosef
+ItsInThePast
+ItsKenshi
+ItsLitttFam
+ItsMarc
ItsMeBlaze
ItsMeDog
ItsMev
+ItsMrSir2u
ItsNiels
ItsOleGreg
ItsOwenM8
+ItsRainor
+ItsSirTech
+ItsSkells
+ItsSyn1k
+ItsTaylen
ItsTerpsWrld
+ItsUnruly
+ItsWeinstein
ItsWicked
Its_A45c
Its_Fonte
+ItsaTommyGun
+Itse rauta
+Itsemurha
Itsmeborrid
+ItsoktoGIM
Itsssjustice
+Itsy Bitsy
Itupakointi
+Itx
+ItxJustin
+Itz Haydn1
+Itz Hickton
+Itz Kodiak
+Itz Nate
+Itz Scrubz
+ItzAtlass
ItzElise
+ItzJroc
+ItzKat
ItzLogikal
ItzMrNick
+Itzla
Itzvenom
+Itzzz B
+Iuc
Iuckk
Iulz
+Iussy
Iustrous
Iuxio
IvIegaDan
+IvIr Wize
Ivain
Ivaink
+Ivalice XIV
+Ivan Knjklj
+IvanEOD
IvanMullet
Ivanckonia
Ivanka
@@ -11017,168 +22898,448 @@ Ivansaccount
IvelJet
Iveljetorox
Ivoos
+Ivory Tower
Ivryk
+Iwanbro
IxHunt3rxI
+IxVenom
Ixala
IxonnoxI
+Ixyc
+Iz0p
+Izaa
+Izac
+Izanani
Izbec
+Izhmash
+Izi Claps
Izone_Kev
Izuria
Izvorul
Izzy
+IzzyBigBoy
Izzyboy300
+J 0 S H Y
+J 0 S H l
+J 4 6
+J 4 K E
+J 6
+J A B S
+J A I D A N
+J A M A L
+J A N K I
+J A U N U S
+J A W D
+J Breezi
+J C Trousers
+J D
+J D Ballew
+J Dahmer
+J E E V E 5
+J E T
+J F
+J Fred Run
+J I M M
+J I MM Y
+J Kole
+J Kribzz
+J L A
+J MF B
+J Neat
+J O E G
+J O L T I K
+J O T A
+J O3Y
+J R O C
+J R V
+J Rat Cow
J S 2 M
+J S Z M
+J Saints
+J Suave
+J U S T A S
+J U Z
+J a c k a l
+J a c k son
+J a c k y
+J a mie
+J a n i
+J ackal
+J al
+J ameper
+J anii
+J appie
+J asnah
+J ason
+J asyra
+J ayson
+J bellfortt
+J bird shady
+J e sse
+J eff
+J effy
+J ensen
+J esse
+J essica
+J imme
+J imy
+J imz
+J ipr
+J lMM Y
+J o b e
+J o e
+J o ey
+J o f
+J o s h y
+J oep
+J ohannes
+J ointz
+J oke R
+J or G
+J oshh
+J oshhh
+J osie
+J u wu
+J ung
+J unko
+J utch
+J uun
+J uwu
+J x B
+J yy
+J-2tha-R-O-C
+J-Man 93
+J-Turn
+J-Yeezy
J001_jf1
+J0DYY
+J0E
+J0E REAL
+J0EEY
+J0NE
J0UF
+J0YBOY LUFFY
J0YRYDE
J0dz
J0hnnyQ
J0ng
J0ngeBV
J0ppy
+J0rdanDv
J0rdo117
J0se
+J0se Dtown
+J0se Dtuwnn
J0seph
+J0shh
+J1MB0H
+J1NBE
J1ub
J2TR
J2caine45
J2ck
+J328
+J3Ciron
+J3JU
J3S5E
J3rkkuHD
J41AL
J45e0wns
J4QS
+J4S
J4gga
J4my
+J95
+JAABASNABBA
JACK3DJOHNNY
+JACKYOUNG93
+JAG0705
+JAI MA KALI
+JAMA Open
+JAUH0JENGI
+JAVON 9-INCH
JAYJ51
+JAYR0CKBABY
JAlDYN
+JB 2K
+JB87
JBGard
JBrody
JBuck057
JBux
+JC-1989
+JCS07
JCole
JCon
JCutler
+JD MD
+JD4
JDBass
JDEP
JDFlaSh
JDJM
JDez
JDlion
+JDredd66
+JDuck
+JE B
+JEEZE
JENNY
+JENNY DEATH
+JERN SVIN TO
JETSNBEERS
+JF Kennedy
+JFB
+JFCK
+JFK gone AFK
JFKautopilot
+JFL
JField
+JFrog
JFryGuy
+JGIRONTG
JGIV
JGlen97
JH3305
+JH91xx
+JHINitalia
+JIGGYWIGGY
JIIVEE94
+JJ-M
JJ23
+JJAAKKO
+JJBW
+JJPowers
JJROCKETS
JJRicky
+JJS BBQ
+JJSM_Dulker
JJchris66
+JJoe
+JJumalwelho
+JK Rowling
JKMi
JKTimbo
+JKUR ON 40S
+JKeM
JKingJ777
JKrollin
JKuyaa
+JLG
JLowe
+JLsone
+JMI NG
+JMTaipei
JMack
JMiddd
+JOBBO
JOCKO00O0O0O
+JOE EROTIC
+JOKER 709
+JON3ZYY94
+JORlCK
+JORlS
+JP Kotsnek
+JP17
+JPB at Large
+JPI
+JPS Daytona
JPant1ess
JPantless
+JPatness
JPence
JPountney
+JPudz
JR05E
+JR0D
+JRBeast
+JRC Crypto
+JROGU
JRxs
+JS Xpress
+JSL34
JSLatvala
+JSPACER
+JS_Terminal
JSco
+JShep23
+JSilvester08
+JSlice94
JSplash
JStepho
+JT5
+JTAG
+JTCS
+JTI ain
JTIAIC
JTM33
JTscape
JUGIB
+JUIBE
+JUICEWRLD9 9
+JULlAN
JUST
+JUST A HlPPO
+JUST Nikk
JUSTICE
JWRLD
+JXJ
+JZB
JZX1O0
+Ja k ey
+Ja m e s
+Ja mes A
+Ja se
+Ja sn
JaBouris
JaDig
JaStraater
+Ja_Fireking
+Jaaaakkoooo
Jaac
JaackGP
+Jaager Jack
+Jaagmu
+Jaahee
Jaakako
Jaalva
Jaamm
Jaant0
+Jaapievecht
+Jaay G
JaayC
JabHook
+JabbaU
JabbasHut
+Jabbaw0cky
+Jaber
+Jabesol
+Jabiborinoni
+JablezGIM
+Jablooze
+Jabo b
Jabopanda
Jabroni
Jabroniii
+Jabrs
+Jabuz
+Jac o b
Jacckk
+Jace C
+Jacerhapsody
Jacey
Jacinto
Jack
+Jack Dyer
+Jack Htoo
+Jack Hughes
+Jack Mac
+Jack Maz
+Jack Par-O
Jack Reipan
Jack1
+Jack12Broke
+JackBadasson
+JackBass4
+JackBlade
+JackDanielsH
+JackHammr
+JackKnight
+JackKvorkian
JackMayte
JackOscar
JackRod
+Jack_Herer9
Jacka
JackandCoke
Jackass
+Jackass Sean
+Jackazzz1
+Jackblaze
+Jackbtw
Jacke
+Jacked
Jackie
+Jackingten
Jackisbanana
JacknHookers
+Jacko Bei
JackoPogU
Jackoo
Jackos
Jackoz
Jacks
+Jacks0n
Jackson
+Jackspyrow
Jackyboiii
Jacob
+JacobGhosty
+JacobIsTaken
+JacobT789
+Jacobb
Jacobieus
Jacobro
Jacobs
+Jacobwins1
Jacupy
Jacy59
+Jad slides
JadMaister
Jada
Jadakiss
Jadavius
Jaddok
+Jaddy Chill
Jade
+JadedRapture
Jadeine
+JadenM
Jads
+JadsVag
Jaecob
JaegerBoom
+Jaeson
Jafacakeman
Jafanto
+JafarTooHigh
+Jaffa Jake
Jaffar
+Jaffywaffy
+Jafsx
Jagdpanther
JagerBombski
+JagerIron
Jagermeister
Jagged
-Jagt69
+Jaggen
+Jaghatai K
+Jagoodiii
+Jah toch
JahIthBer
Jahaerhys
+Jahaok
+Jaharred
Jahbby
JahgexPlzzz
+Jahmay
Jahmerica
+Jahngles
+JaiSiaRamJai
Jaiden184
Jailbreak455
+Jaime 427
Jaimeebear
+Jak Maximus
JakMetalHead
Jaka On Can
Jake
+Jake C
+Jake D Snake
+Jake Muzzin
+Jake OC
+Jake Scapes
+Jake Solo
JakeState68
JakeSteFarm
Jakedajackal
@@ -11190,64 +23351,127 @@ JakesSolo
Jakesonville
JaketheSnake
Jakey
+Jakey C
Jakeyosaurus
+Jakeyz
+Jaknop
Jakrem
Jakrojan
+Jakuli226
+Jal-Nib-Jmal
JalNib
Jalduii
+Jaleesa
+Jales
+Jalim Rabei
Jalite
Jaljif
Jalla
Jalo
Jaloenow
+Jalordom
Jalou
+Jalzas
+Jam Flex
+JamBandDad
+Jamaikietis
JamalBobaman
+Jamango
+Jamania64
+Jamar
+Jamaul Jr
Jambaica
Jamblaster
+Jambreak
+Jamburano
+Jamchu
Jameo
James
+James 6000x
+James Comey
+James Kakadu
+James Kelp
+James Poncho
+James PvE
+James Rolfe
+James c
+James osrs
+James1087
James2709
James9
+James945848
+James9520
JamesBondss
JamesCUFC
JamesDaWizar
JamesHaliday
JamesJ2019
JamesLango
+JamesMaynard
+JamesNI
JamesPratt94
JamesShotGG
+James_22
Jamesay
Jamesbombom
Jamesrb1
Jamess
Jamesy
JamiBear
+Jamiboy
Jamie
+Jamie Tacos
+Jamie W
+JamieJams
JamieOliver
JamieXV
+Jamilan
+Jaminnnn
Jamixa
+Jamjac
Jamlicking
Jammie
+Jammmy
+Jammoose
+Jammy Dogger
+Jammy Scone
Jamn
Jamosbondos
Jamppa
Jampy
+Jampyre
Jamuli
+Jamurazi
+Jamwa
Jamyroo531
Jamzylockz
Jamzz
+Jan
+Jan Griffith
+Jan en Karel
+Jan100000
JanHenkD
JanVanLeiden
+JanXtian
+Jananas3
Janar
+Jancentp
Jandaer
+Jandhob
Jandie5
Jane
Janer
Janes
+Janes Bond
+Jango Style2
+Jango fet310
+Jangsta23
Janice
Janikowski
+Janissary90
Jank
Jankk
+Jankko
Janksky
JannaMain73
Jannanas
@@ -11258,81 +23482,171 @@ Jansky
Jansz101
Jante
Jantex
+JantheBear
Jaooa
Japanese
+Japhur
Japiohh
+Japles1
Japoolie
Jappieee
+Jappieness
Jappo
+Jaqen
+Jaqquu
+Jar Of Pets
+Jar Uh Dirt
+Jar of Pukes
+Jar of Swamp
+Jar ofc um
Jar3y
JarOfCookies
+JarOfH0les
JarOfSmORC
Jarab
+Jare d
JareZki
Jared1234
Jareds134
JarlCantBank
JarlEarlKing
+JarlVaarg
Jarnemelk
+Jarnie Dimon
+JarnoMirma
Jarnte
Jarra
+Jarre
Jarredn
+Jarreelll
Jarskie
Jarsse
Jaru
Jarvis
Jarx
+Jas Melody
Jasberg
+Jaseel
Jasey
+Jasey Rae
+Jashin
Jasinador
+Jaskanpaska
Jason
+Jason In Max
+Jason73
JasonJ
+JasonLRG
+JasonRises
+JasonSkillz
+JasonT20015
+JasonVorheez
+Jasonn
+Jasonnn
Jasperw90
Jaspi
+Jasthew
+JasuzChrist
Jasyre
+Jauneri
Jaunius
+Jav
Jave
+Javert
+Javier Pwns
+Javve
Javvymuis
+Jaw
+Jawaloso
+Jawgasm
+Jawmac
+Jawniz
Jawntista
+Jawor
Jaws
+Jaws 2 75
+Jawshy
+Jax Evasion
+Jax Teller
+JaximusIV
+Jaxy22
+Jay Ayy Why
+Jay Baby
+Jay Exotic
+Jay Hughes
+Jay M
+Jay RZ
+Jay Show
+Jay Sparks69
+Jay United
+Jay b1zzle
+Jay kell
Jay024
+Jay357
JayDaddy313
JayEngineer
JayFlow
+JayJee
+JayKay Okay
JayLunar
JayManzarek
JayMaster
+JayMe x
JayMuthaFknC
JayPortal
JayRu7
JayTheBurnt
+JayTheRunner
+Jaybiz
Jayden
Jayders
+Jaydey
Jaydia
+Jaydo x
+Jaydonn
Jaydos
+Jayeden
Jayhawk225
+Jayhawkers
Jayi
JayjayNeo01
Jayksie
Jayman
+Jaymeh Lee
+Jaymo123
Jaymyson
+JaysATank
+Jayshuunn
+Jayspoks
+Jayster
Jaytea
Jayteaf
Jaytee1262
Jaywub
Jayy
+Jayy Slays
+Jayy x
Jayzar
+Jaz Coleman
Jazo
Jazpurs
Jazz
JazzFlap
-JazzMaster07
+JazzMaster09
+Jazzeh
Jazzjr89
+Jazzly
Jazzy
JazzyFlips
+Jb Godranger
+Jba123
+Jbevzzz
Jblieves88
+Jbob72
+Jbt
Jbvff
Jc_TheCops
+Jcb4646
Jcdelavici
Jchn
Jcmalone23
@@ -11341,223 +23655,454 @@ Jcourt1
Jdaws
Jdidy
Jdoggy2018
+Jdp3
+Je nny
+Je pppe
+JeBoyHiddema
+JeIlo
+JeIly Man
JeJoat
+JeK0
Jean
+Jean belette
+Jean man
Jeangaboudle
+Jeankeh
Jeari
+Jeavoni
+Jebaited825
Jebiii
Jebrim
Jebroid
Jebroni
+Jecht Shot
Jecob
+JedMosley
Jedah
JedaiKnight
Jedi
+Jedi Drue
Jeebiez
Jeebz
+Jeefro
+Jeek
Jeemis
Jeep
Jeesuhs
Jeet
Jeeve
Jeez
+Jeez Christ
+Jef fy
JefFamous
Jeff
+Jeff Aero
+Jeff C
+Jeff pls go
+Jeff says
+Jeff the Cat
+JeffEHPstein
+JeffG
JeffMusk
JeffWiki
Jeffermus
+Jeffica
Jeffie381
Jeffmyster5
Jeffre
+Jeffrey Z
JeffreyFNV
+Jeffreypoe
Jeffro
Jeffy
+Jeffy xD
JeffyTheDahm
+Jeffzuaos
+JefriEpstin
Jefry
+Jeft
Jefy
Jeggesen
+Jeguelson
Jehdin
+Jehobo
Jehtty
+Jeikeorb
Jeimi
JeisBtw
Jejex
+Jekd
Jekquesting
+Jelbishi
Jelbringer
+Jelen
+Jelenner
Jelior
Jella
Jelle
+Jelle Bouma
Jellie40
Jellisme_99
+Jellitots
+Jellough
Jelluh
Jelly
+Jelly Bears
+Jelly Booty
+Jelly Dub
+Jelly Sucks
JellyBeanRs
JellyGenix
+Jellydonuts
Jellyfishes
+Jelziin
+Jelzini
+Jemades
Jemelope
+Jemile
+Jen na
Jen0va
JenaTulwarts
Jenessa
+JenfoxxSub
+Jenicek
Jeniuss
+Jenkiins
Jenla
+Jenna Taylia
+JennaHeather
Jennacydal
JenniTolls
+Jennie
Jennn
Jenny
JennyElina
+Jensen641
JensenRS
Jenskee
+Jenten
+Jeometri
Jepp89
+Jeppe
Jeppeonkurre
Jeppie
+Jepppe
Jepppu
Jepuzeka
Jepz
+JerBearGrizz
+JerBearOmfg
Jerak
Jerayou
+Jerbelle
+Jerbil
Jerec
Jereh24
Jeremiahlewi
Jeremy
+Jeremy 2007
+Jeremy Ray
+Jergs
Jeri
+Jerm
+Jermothy
+Jerms Pro
+Jern Jan
Jern Tarzan
Jerne
Jernladden
+Jernlund
Jernpung
+Jero
+Jeroen 31
Jerom21
+Jerrbear69
Jerre26
Jerrin
+Jerrwie
Jerry
+Jerry Alan
+Jerry Maine
JerryChinger
JerryMina
+Jerryy
Jers
+Jers Knot
Jersh
+Jershawerr
Jersion
+Jertz
Jeru
+Jerunox
Jerusalenm
Jerziii
Jerzy
+Jes2x
+Jeseeka
+Jesh g
+Jesh-mar
JeshusChrist
+Jesiah
Jesk
+Jesliq
+Jesper Bratt
+Jesper135
+Jesperyo
Jess
Jesse
+Jesse Top
Jesseq
Jessica
Jessie
+Jessie Jones
Jesspresso
Jessy
+JessyTrip
+JessycaOSRS
+Jester Head
+Jesterbubba
Jesus
+Jesus I love
+Jesus MPhys
+Jesus Saved
JesusComing
JesusRedeems
+Jet Jaguar8D
Jet3010
JetFlame
Jeththe
+Jetlag
Jetma
Jetridder11
+Jetski
Jetsmoke
+Jettiesimp
Jettrider
+Jeugd
Jev21
Jevel
+JewFroBro
Jewbaaca
Jewbakah
Jewbang
+JewishRob
Jewy
+Jexlad
Jexlo
Jeyos
+Jeyzuz
Jezeus
Jezkoz
Jezuux
JezzaripHD
Jezzie
+Jezzx
+Jf-n03
Jfleeze
+Jfrith
+Jfuzzy
Jglove
+Jgus88
Jgy1889
+Jhackal
+Jhb
Jhebs
Jhny
+Jhonlovin
+Jhoocy
+Jhoocy Moot
JhormanCovid
JhosS
+Jhow
+Ji bs
+Ji m m
+Jia Lissa
Jian
+Jiara
Jibajaba
Jibberflexed
+Jibbllyy
+JibinSui
+Jibneh
JibrilMaster
+Jiffee
+Jig Bugs
+Jiga Chad
+Jiggalagg
JiggerJoe
+Jiggity
Jigglyboy
Jigglywoo
+Jiggypufff
+Jignite
+Jigoogly
+Jih
+Jihe
+Jihne
+JiiU
+Jiiko
+Jiim Lahey
+Jiiraiiya
JikdarShark
Jikkurr
Jiklim
+Jill Hyde
+Jille Man
+Jim
+Jim Sauce
+Jim Shorts
Jim0k
+Jim2k1
Jim38iron
JimAdler
JimTheGing
Jimb0bMaster
+JimballSlice
+Jimbeamtndew
Jimbi
Jimbly
+Jimbo Sween
JimboJamzAF
JimboQuan
+JimboSlice21
Jimbob3005
Jimbogun
Jimboi
+Jimbub
JimcakeKong
+Jimdawgy
Jimi
Jiminuatron
+Jiminy49
+Jimm
JimmahDean
Jimmerik
Jimmi
+Jimmi Lipper
+Jimmmm
Jimmy
+Jimmy Jumper
+Jimmy Plays
+Jimmy Scimmy
+Jimmy Wooo
+Jimmy1408
+Jimmy3rdBase
+JimmyBullard
JimmyBuns
+JimmyCarter
+JimmyGrimble
+JimmyStubble
JimmyValmer7
+Jimmybe
+Jimmygk
+Jimmylovecox
+Jimmynyge
Jimmyo
Jimosine
Jimpertje
Jimpiix
+Jims Goon
+Jims Ironing
Jimsterjim
+Jimver
Jin Oh
+Jin R n G
JinDoritos
+JinJ0 nJuice
+Jinb
+JingleBiloba
+Jingy
Jinimy
+Jinjaman
Jinkers
Jinko
+Jinkys
+JinnyChatBot
+Jinpa
+Jinsinny
Jinte
+Jinxed Jake
+Jinzo Doku
+Jinzo Jinzo
JioGetsMoney
Jion
+Jions Alt
+Jipser
+Jipske
Jiqonix
+Jiqura
+Jiraiya
+Jiraiyeah
+Jirakh
Jiren
Jirka
Jirou Kyouka
+Jisska
Jitaxia
Jithra
+JiveChompy
Jixoxx
Jixr
+Jixx0x
+Jiyool
+Jizt
+Jj Dynomite
+Jj Jerk2
Jjar127
Jjjjjj210
Jjozzie
+Jk Esq
Jkdogg
Jkhby
+Jkl Kalja
Jkolrur
+Jkrexx
Jku45
+Jl-SOO
+JlGA
JlLLY
JlMMB0
JlZZB0SS
Jlarge
Jlova
Jmagelssen
+Jman021
Jmar
Jmaster402
Jmbryn
Jmca
+Jmca Savage
Jmen
Jmies
Jmjake
Jmonelite
Jmudford44
+Jmz
Jnas
+JnrSeneca
+Jnsthenx
+Jnup
Jnwp
+Jo Pain
+Jo de Coeckh
+Jo h 2
+Jo iron
+Jo rd an
+Jo shua
+Jo we
Jo0l
+Jo3 H
Jo3p
Jo5p
+Jo6p
Jo711
+JoE ShMoee
JoEiSaFiShEr
+JoJi
JoJo
+JoJo Skriver
JoJo79
+JoJoJoUrBoat
JoKerRtheGOD
JoMoe
JoRouss
@@ -11565,86 +24110,168 @@ JoWie
JoXuh
Joacco
Joao
+Joao EV
+Joao Paulo
Jobac
Jobann
Jobard93
Jobber
+Jobbes
Jobbits
+JobbySkelper
+Jobbydrinker
Jobbyqq
Jobless
Jockward
Jocqui
Jodenzaad
+JodioJoestar
Jodon
-Joe420buddy
+Joe 7
+Joe Kronic
+Joe Lol
+Joe Mangina
+Joe Mclaren
+Joe Muggs
+Joe Potato
+Joe Schwa
+Joe TheBeard
Joe56543
Joe56780
+JoeBidens Bf
+JoeEldenring
JoeFoe
JoeGas
+JoeInglesGod
+JoeJunk
+JoeMothers
+JoeStudd
JoeTheGod
JoeWoody
+Joebie
Joebobinator
Joecuster
+Joedaschmoe
+Joee P
+Joeholding
+Joekle
Joel
+Joel 9444
+Joel In Pain
+Joel Lobster
JoelBtw
+Joelemz
Joell
+Joenage
+Joenly
Joered40
+Joeri
Joes
Joeshmo
-JoeshmoeOSRS
Joestar
Joey
+Joey Diaz
+Joey Mobile
+Joey RS
+Joey069
JoeyDabs
+JoeyGatto
+JoeyP
+JoeySlays
+Joey_1993
+Joeyboy
+JoeyboySucks
+Joeychh
Joeydarebel
Joeyer5
Joeyfernando
Joeyjoe600
+Jofa
Joferr
Joffa
+JoffreyLupul
Joggaplanten
Johan
+Johan Cruyff
Johanbtw
+JohannesN
JohannesRRL
Joherk
John
+John Bilos
+John C
+John Cena
+John China
+John D4rk
+John Ironman
+John Mayer
+John McCain
+John Mugwump
John Muir
+John Paul
+John Penn
+John Sal
JohnChaptr15
JohnDaBoss
JohnGilespie
JohnNoyes
+JohnRambo43
JohnWLennon
JohnWick39
+John_Wick007
+Johnathan
Johnbovi
JohndemenBTW
Johnletics
+Johnmcdodger
Johnny
+Johnny Chinn
+Johnny Dinh
+Johnny Lyu
JohnnyBeanz
JohnnyChimpo
JohnnyHart
+JohnnyLoco
JohnnyMellow
+JohnnyQuest
JohnnySXC
Johnnypants
+Johnnys
+Johno381982
JohnoMate
Johns
+Johns bad ma
+Johnsons
+Johnsters4
Johny
+Johny Aus
JohnyLocoo
Johnyy
Johuab
Johzyn
Joizz
Jojis
+Jojj
Jojkan
+Jojo Rabbit
Jojora
Jojy
+Jok
Jokar
Joke
+Joke xD
+Jokelanopein
Joker
JokerzDice
Jokinq
+Jokkepappa
JokuHeppu
+JokuVaan
Jokurul
Jole
JolliJolli
+Jollyfarms
+Jolonerz
Jolteon
Jolting
Joltism
@@ -11653,100 +24280,198 @@ Jombsy
Jomer
Jommann
Jomoba
+Jomppaa
Jomppei
+Jon
+Jon Eusebius
+Jon Meades
+Jon Snow
+Jon ny
+Jon10
JonHDgamer
+JonMarston
JonOn
JonVV
+Jonadwyn
+Jonahams808
Jonahcart
Jonanism
Jonas
Jonas9115
+JonasLietuva
+Jonas_Butte
Jonasbroh
+Jonassau
+Jonatan Jo
+JonathanRoid
+Jonaz
+Jonbaron
Jonboy
+Joncc
Jondog
JoneNikula
+JoneZii
+Jonesing
Jonessy
+JonesyBadger
+Jonetsa
Jonezey3
Jongo
Joni
+Jonibo
+Jonie D
JonisBaisus
JonisSniegas
Jonjo12knees
Jonko
+Jonko lover
Jonn
+Jonnay
+Jonne r
Jonnems
Jonnisan
Jonnisjoen
+Jonno1789
Jonny
+JonnyBiggles
JonnyBoii
+JonnyL2020
+JonnyLots
+JonnyM
Jonnybak
Jonnybowler8
Jonnysniper
Jonsamma
+Jonsed
+Jontzzz
Jonxsy
Jony
Jonzza
+Joo Potato
+JooOvenPizza
Jooe
+JoojoThePk8r
JoonSoo
Joonas
Joonayoyo
Jooni
Joontah
+Jooogijuuu
+Jooohnny
+Joop Mgoon
Joopaul
Joose3
+Jooshica
+Joosst
+Joostvd17
+Jooxan
Jophatmama
Joptvajiumat
+Jor dinh
+Jor dy
+JorVa Osj
Jord
+Jord 0_o
+Jord Croft
+Jord idk
+Jord xD
+Jord y
+Jord z
JordHarris
+Jord_96
+Jordan 1
+Jordan 7218
+Jordan KY
Jordan030592
+Jordan07
Jordan1063
Jordaneee
+Jordanite
+Jordans
Jordany5b
Jordavitch
Jorden
JordenFCB
+Jordinee
Jordnn
+Jordo Am
JordyM
JordyMcSheep
+Jordynn
+Jordysteen
Jordz_King
+Jore
Jorenator
+Jorgeme
+Jorgos
+Joricki
+JorkinMyWorm
Jorkkelis
Jorlund
+Jornaleiro
JoroEdde
Jorsne
Jorster
Jorttis
Jorzki
+Jos Bezos
+Jos de Mutn
Josavi
JoseLargeD
+JosefStaIin
+Joseluis1
+Joselyn Leo
Josen
Joseph
+Joseph Sam2
Josh
+Josh 2277
+Josh Jones
Josh Tsutola
+Josh x
+Josh013
Josh2Godly
JoshD
+JoshDagainz
JoshGymnast
JoshMarksman
+JoshYewAhh
+Joshalog
+Joshan
Joshery
Joshh
+Joshhhh
Joshii
Joshimitzu
Joshism
+Joshjoshin
Joshmaster31
+Joshpaul
Joshua
Joshuaaaah
JoshyCii
+Josiah Higha
Josiahs
Josoust
+Joss
+Josse
+Jostavo
+Josti O_o
Jostle
Josue
Josukes
Josylvio
+Jota_420
Jote
+Jothha
Jotjemenotje
+Jotq
+Jottini
Jotunheimar
+Jotwe
Joueur4376
Joulaha
+Jovial
Jovilius
JovyGaming
Jowah
@@ -11754,43 +24479,86 @@ Jowalll
JowatBTW
Jowel
Jowitt
+JoyOfSatan
Joycey1997
+Joynzz
+Joystick
+Joyun II
Joz6
+Jozi Blue
Jozu
+Jpan1
+Jpellican
+Jpq
+Jqwss
Jr Metro
+Jr Muffin
+Jr Stigel
Jr2k13
Jrabbat
Jrby
+Jrdn
Jreppks
+Jrey
Jroanirr
Jrodjok
Jrogo
+JsJays
JsN4
Jsag
+Jsi7111
Jsnn
Jsony
+Jspot
+Jsq
Jstnn
+Jstrife9
+Jthrust
Jtownironman
+Ju mala
+JuGgLe BuG
+JuJuzzz
+Juan Dangle
+JuanTalon
+Juandissimo
+Juaneria
+Juanreliable
Jubaah
+Jubarte
JubbaTheHut
Jubilations
Jubita
Jublian
+Jubster
+Jubtus
Jubu
+Jubz
Judah
+Judas wept
Judddy
Jude
+Judge
+JudgeDredd
+Judgewalker
Judie
Judies
Judlmin
JudoChop
+Juduel
+Judus
Judybats
+Juedons
Juezz90
Juffo
+Jug001
+JugMilk
+Juga JR
Jugalator
+Juganog
Jugernought
-JuggaloOSR
+Juggalo09R
Juggerthot
+Jugimaster
JuhQ
Juheniqus
Juhhu
@@ -11802,22 +24570,52 @@ Juhve94
JuiBoi
Juib
Juice
+Juice W RL D
+Juice WRLD
+JuiceRock
JuiceUSA
+Juiceb0x44
+Juiceful
+Juicewayne
+Juicieee
+Juicing
Juicy
+Juicy BIG
+Juicy Jorma
+Juicy Lil D
+Juicy Pair
+Juicy XPs
+JuicyBigNut
+JuicyJesusFE
+JuicyJocelyn
+JuicyJones
+JuicyLap
JuicyTear
+JuicyTigr
+JuicyWetNut
+Juicy_Newfie
JuiicyAF
Juikki
Juint
+Juipp_Iron
Juisy
+Juk e
+JukeLess
Jukebot
Juked
+JukeduM
Juko
Juktes
+Jul es
Jules
+Julesbak
Julia
JuliaFlorida
JulieFromHR
+Julieekins
Julien
+Julio Cesar
+JuliusHotdog
Julley
Julma
JulmaJoe
@@ -11825,42 +24623,93 @@ Julmarsson
Julpa
Jumal
Jumanji
+Jumbalia420
Jumbo
+Jumbo Joe
+Jumpcut
JumpingBean
+Juncker
June
+June bug
Junexo
JungJulius
Jungkook
Jungle
+Jungle Georg
+Jungle Jepa
+Jungle Jim
+Jungle Wreck
Jungle175
JungleKitty
+JunglinTunes
+Juniortank25
Junk168
Junmai
+Junsimu
Juntti463
+Juo
Juoda
+Juoppis
JuostenKustu
Jup1Ko1r4
+Juppi
Juqqernaut
Juranja
Jurassix
+Jurble
Juri
+Juri M
+Jurikka
+Jurisdiction
Jurky
Jurmalainen
+Jurrie
Jurtaani
JuryRigging
+JusAmain101
JusCauz
+JusDoMe
+JusPourVous
Jusfat
+JussJoshinYa
Jussi
Just
Just Alright
+Just Alt F4
+Just BeingMe
+Just Bones
+Just Bryce
+Just Champ3
+Just Creepin
+Just Dank
+Just De-Iron
+Just Jacob
+Just Keith
+Just Kurt
+Just Logan
+Just Malone
+Just Milton
+Just Mitch
+Just Neptune
+Just Reacher
+Just Treason
+Just a Dilf
+Just a main
+Just aFacade
+Just for Fun
Just1n Sane
Just3lis444
JustAAPotato
+JustADowny
+JustAFroggy
JustBob
JustChillins
JustDevon
+JustDrew
JustFollow
JustGoInDry
+JustIan
+JustJS
JustJake
JustKidStuff
JustLucky
@@ -11869,14 +24718,25 @@ JustPeachy
JustPertti
JustRenne
JustRoW
+JustSarge
JustSinful
+JustTaxLand
+JustTheFool
JustTheTip
+JustToast
+JustTrynaMax
+JustVibeWMe
+JustVinny
+Justa Wake
JustaStar
Justass
+Justice v1
JusticeSven
+Justicemoose
Justiciaro
Justified
Justin
+Justin NT
JustinBieber
JustinFromVA
Justinkai
@@ -11885,67 +24745,178 @@ Justins007
Justlfied
Justnexuss
Justo80
+Justorr
+Justryin
+Justyfi
+Justyn
Jusus
Jutendouji
+Jutku
+Jutkunmetku
+Jutter
+Jutti
+Jutty Ruckus
JuuNinJi
Juugmasta
Juul
+Juulxodia
+Juun Solo
Juuna
+Juunaz2chips
Juustis
+Juuzo
Juvi
Juvian
+Juzzy
+Jvzy
Jwad
+Jwcsg
+Jwd
Jwett
+Jwu
JxJxV
JxcelD
+Jxck
Jxcx
Jxdidiah
Jxdooo
+Jxhnn
Jxke
+Jxmeson
Jxnas
Jxni
+Jxstxn
+Jxxst
JxyStorm
+Jy
Jybais
Jyeronese
Jygers
+Jyhlln
Jyhy
+Jype
Jyppedi1992
Jysk
Jyura
+Jyy
Jyypy
JyzzBrah
+Jz
+Jzbeta
+K 1 L L A
+K 1 P
+K AMI
+K B D autism
+K E K E B
+K E L A
+K E T CHUM
+K E V 0_O
+K Hades
+K K Boef
+K NW
+K O L L I
+K O M P I S
+K OOOOOOOOOO
+K P N
+K P Sweet
+K Smalls
+K W
+K W A L A
+K Y Y
+K a l e w i
+K a z a
+K aarel
+K ayyla
+K eller
+K elvin
+K en
+K etaminer
+K ev
+K iNG IRON
+K idd
+K ilo
+K im
+K l 9
+K l N G S
+K nauss
+K nut
+K o j o
+K o o s a
+K ohen
+K orruptt
+K ree
+K rs
+K t r n e
+K una
+K ushi
+K uz
+K voth e
+K y u m a
+K yogre
K-Diddy
K-epan
+K-market
+K0
+K0 4
K00LBR33ZE
+K0F
K0L0S
K0NING
+K0USE
K0bus
+K0edinator
+K0ju Balius
K0lbi
K0ndemned
K0rky
+K0rnuit
K0tleciokas
K0veras
K0zor
+K19
+K1ERZ
K1LLY
K1ddl3
K1ller5169
K1ng
+K1ngo
+K1ngshredder
+K1r1t0123
+K2 Jung
+K32
+K38
K3KSE
+K3U S2
K3azkoks
K3fka
+K3kt
K3mi
K3nn3d
K44K
K4IF20
K8iee
+K99 2
+K9Father
K9lenny
+K9rk
+KA97
KABBABEAST
KAKAGUATE0
KAKERANDELIN
KAL-JML
KAMlX
-KARANISGAY
+KAT alyzt
+KB1988
+KBARAKAT
+KBX0
+KC Chiefz
+KC M0
+KC8
+KCRB
+KChiefn
KDOG1419
+KDOT_OSRS
+KDark22
KDrizzy
KEEPOUNDING
KEEPTHATSHIT
@@ -11953,76 +24924,164 @@ KEEZY10
KEIF
KEKDUBYA
KEKLERO
-KENO_GUY69
+KENTUCKYBLUE
+KEllis
KFBal
+KFC CAMDEN
+KFC EMPL0YEE
+KFC OG
KFCatz
+KFChompy
+KGBK
KGCine
+KGP
KGee
+KGoldy
KHADER
KIIIIIIIIIIH
+KILLER COMBO
KILO
KIMB0
KING
+KING GAYWAD
+KING VILO
KING332
+KINGNERON
+KINGstayMAX
KINGxGIZZARD
KINNTO
KIPPER
+KIVI 420
+KIWI Stu
+KIitor IS
+KJ 2
+KJ6
KJLS
+KKayK
+KKela
KKona
+KKona USA
KKrazyAl
+KKronas
KKurtiz
KL93
+KLB
+KLS
+KM 30
+KMW
+KN0G
KNIKERSNIFFA
+KO CANE
+KOK enjoyer
KOKAOKAA
+KONMAI
+KOS OVO
KOlRA
KQSS
+KR Zangetsu
+KR0VALI
+KRN
+KRON1C 420
+KRYMK
+KRYPTONlAN
+KRlT
KRonHusker
KS04rs1
+KSP
+KSaucee
+KT Ferrie
+KT Tape
KU51
+KUAY
KUAYx
KURD1STAN
+KVM8
KVRPT
+KXNG Razing
+KXNGVEGETA
K_sak
+Ka0s50
+Ka92
+KaChiuSa
KaIOKENRAGE
KaMi
KaMi_RnG
KaTFeniX
Kaan
+Kaan Frog
+Kaarel55555
+Kaaris95
+Kaarv
+Kaasbaap
+Kaasboom
Kaasmantel
+Kaaswater
+Kaaz Channel
+Kabatlor
+Kachhow
Kacinova
Kacy
Kacyy
+KadHead
Kadabara
Kadan
Kadarlu
+Kadett Opel
Kadeyr1
Kadocc
+KaeBtw
Kaelin
Kaempen
Kaepls
+Kaer
+Kaesar
KafHaYaAinSa
+Kafaei
Kaffah
+Kafficko
Kage Boshi
+Kahdoom
+Kahis
+Kahlx
+Kahto
Kahuna
+Kahur111
Kahvikuppi
+Kahvimaa
+Kahvo
Kahwoozy
+Kai ri
+KaiHos19
KaiXin
Kaibaman
+Kaif
Kaihn
+Kaiirl
+Kaila
Kails
Kaimanll3kav
Kaimorten
Kainahuulio
Kaine
+Kaioken x420
KaiokenRyan
Kaion
Kaiser
-KaiserOSRS
+KaiserBruno
KaiserRS
Kaister
+Kaitaia
KaitoSun
Kaiven
-Kakashi69
+Kaizen Reign
+Kaizen Soji
+KaizennxX
+Kaizloh
+Kaizooka
+Kajbanan
+Kajgils Far
+Kakariiiiick
+Kakarrot
Kake
Kaker
Kakerandeli
@@ -12031,87 +25090,144 @@ Kakoji
Kakor
Kaksitoista
Kaku
+Kaku bakudan
Kakua
+Kakuri
+Kal9000
Kalakoi
-Kalan420
+Kalas
Kalash556
Kalashnikova
Kalavothe
+Kalb
Kale
+Kale Henk
+Kale vader
+KaleKikker92
+KaleRS
+Kaley Cuoco
KaleyFan
Kalezki
Kalfite
+Kali Maaaa
+Kali Roses
Kaliaa
Kalico Cat
Kalideos
Kalihi
Kalikow
+Kalima
Kalis
Kaliumoxide
Kallateral
Kalle
+Kalle Anka
Kalleee
Kalmaars
Kaloex
+KalopsiaSix
+Kaloua
Kaltsu
Kalu1337
Kalub
+Kalvaaja
Kalveo
Kalystas
+Kam
+Kam Lok Lam
Kamal63
+Kamchi
Kamelinpiaru
Kamelovsky
+Kamelze
Kamen
+Kami_no_majo
Kamiel
+Kamii Dad
+Kamijou
Kamikazi
Kamino
+Kamino Kage
+Kammorie
Kamp
Kampest
Kamphuijs
Kanagawa
Kanao
Kanapius
+Kanapizza
+Kanbu
Kandarin
Kandeeh
+Kandid GG
Kandonesys
+KandrakarsNX
Kane
+Kane 7687
+Kaneelkameel
KanekiKun
Kaneohe
Kangru
Kangst3r
Kani
+Kaninka
Kanned
KannonBalker
Kannski
+Kansas
+Kansas Bill
+Kansas State
Kanseim
Kansi
+Kansloos
Kant
+Kantinejuf
Kantoo
Kantrimees
Kanttis
+Kanuk
Kanye
+Kanyeetzy
+Kanzeigan
Kaolo
+Kaolo Spoon
+KaozerMauser
+Kapaa
Kapakala
KapeVing
Kaphu
-Kapiaine69
+Kapiling
+Kapitalisti
Kapitein
Kapiten
Kapkeik
+Kapkkha
Kaporkchop
-Kappa Dog420
+Kapot
+Kapot Slecht
+Kappa 73
+Kappa monkaS
+Kappa xD
+KappaZilla
+Kappala
+Kappalism
Kapsaluun
+Kapsones
+KaptainPurp
Kaptainkilla
Kaptains
KapteinK
Kapten
+Kaptn skev
KarQ
Karaboudjan
Karaf
Karagoz
Karamjob
Karans
+KarateKon
KarazySS4
+Karc
KareemPie1
Kareir
Karekano
@@ -12119,73 +25235,118 @@ Karen
KarenMaskin
Karethaeis
Kargas
+Karhu48
+Karhuboiii
Karhulohi81
Kari
+KariJuice
Karies
+KariimsPik
KarilSummer
Karils
Karim4lol
Karkanii
Karkotaseet
+Karkov
Karl
+Karl The SUV
+Karl1s
KarlS282
Karlee
+Karliah
Karlit
Karlology
+KarlosBro
Karlteine
Karma
KarmaRush
Karmaa
Karmadyl
+Karmafox
Karmah
Karmas
+KarnMother1
Karnivore
Karnyx
Karolik
+Karolus6
+KarpyCarpe
+Karrak7
KarsanHAM
+Karsk kopp
Karskeinmies
Karso
+Karsta Anne
Kartelrand
+Kartoesh
Kartoma
Karukas0
+Karumba
Karumi
Karuu
+KarvaBanaani
Karvajarru
KarvaneMees
Karvatatti
+Karwos
+Kasane
+Kasdeya x
Kasei
+Kaseii 1
Kasejas
+Kasen
Kaser
Kashak
+Kasihan Gua
+Kasoku Tesla
Kasp
+Kasperjus
Kasprzak1
Kaspuhh
Kasraa
+Kass Glimmer
Kassipotku
Kassu
+Kassu C
Kasuel
Kasugano
Kasvikko
Kat1nr
+KatBeatitude
Katagon
Kataphatic
Kate
+Kate Bush
KateTiffany
Katenkos
Katetuotto
Katfishh
Katiensam
+Katikene
Katikene0
+Katinas
+Katiopeia
+Katlink5
+KatnissGray
+Katraenia
+Katrielle
Katski
Katsuo666
+Katt 90
KattNiP
Kattarui
+Kattnakken5
Kattnis
+Katze btw
Katzes
+Kauhee Hiki
Kaukeneris
+Kauldron
Kaunas
+Kaunas_Rulz
Kaunopihlaja
Kautschuk
+Kavz
KawaBonga
Kawactus
Kawaii
@@ -12194,37 +25355,61 @@ Kawaiisaki
Kawakuboku
Kawkaw
Kawked
+Kawtik
+Kay D
KayJ
KayWhyPee
+Kayazy
Kayback
+Kaybizzle
Kayden
+Kayden Boy
Kayen
Kayla
+Kayla Swift
+Kaylidascope
Kaylizz
Kaylon
Kayluh
+Kayns Main
KayranFootly
+Kayso
Kaytok
+KayyPlz
Kayzielol
-KazOsrs
+Kayzo
Kazatan1245
Kazave
Kazaz
+Kazcade95
Kazching
Kaze8HerOut
+Kazify
+Kazuma Moon
+Kazunni
Kazuuhiro
-Kbdick
+Kc Collector
Kcnny
Kdash
+Kdaw
Kdens
+Kdragons
+Ke bajo
+Ke era
+Ke nt
KeB4NG
KeRah
Keabler
+KeanuCat
Keasbey
Kebab
+Kebab Ari
+Kebab Store
KebabGuy93
KebabWrap
+Kebabov iron
Kebbabhallal
+Kebbby
Kebbe
Kebintotero
Kebs
@@ -12233,35 +25418,62 @@ Kedakaki
Kedirav
Keebler
Keef Supreme
+Keef_Man
Keegi100
+Keekar
Keekers
+Keel
Keela
Keelay
Keenar
+Keep Le Fe
+KeepCup
+KeepDistance
KeepItWicKeD
Keeper1OS
KeepitStoney
Keepo
KeepoKeisari
+KeepoNoIron
Keepomaster
Kees
KeesCanadees
+Keeslp09
+Keetgracht
+Keevon Man
Keff
+Kegaz
Kegern
+Kegs
+Kegse
+Keh O Brien
Kehaline1
+Kehno
Keiala
Keidy9
Keifay
Keikoh
Keinas18
Keiran
+Keiran Perch
+Keironn
Keisari
Keisarinna
+Keister Egg
Keit
KeithMcChief
Keithii
+Keittokuppi
Keizer
+Kekaha
+KekeLovesMe
+Kekkonen
+Kekkonen69
+Keksiviikko
+Kel Darsam
Kela
+Kela maksaa
+Kela-Olli
Kelagang
Kelb
Kelbikers
@@ -12272,11 +25484,14 @@ Kelgone
Kelh
Kellarivelho
Keller
+Kells o_o
Kelly
Kellycollin2
Kelohonka
Keloo
+Kelps
Kelso523
+Kelso561
Keltik
KeltonThaGod
Keltuzazz
@@ -12285,106 +25500,182 @@ Kelvin2GWW
Kelvino
Kelwus3
KempBush
+KempDaShrimp
+Kempisch
Kempset
+Kempy x
+Ken
+Ken Bolka
+Ken Griffey
+Ken Kill U
+Ken RS
+Ken Ten
+Ken141
KenBone
KenKaniffCT
+KenPerm
+Kendal x
Kendal68
Kendlang1
+Kendrick3691
Kenery
Kenesu
+Kenfernal
Kenleyy
Kenleyy_TM
Kenmaster
Kenn
+Kenn y
+Kenna
Kenndu
Kennedy
Kenny
+Kenny Deez
Kenny121
Kenny6397
+KennyKSD
+KennyS
KennyWhopper
Kennyollie
Kennypower5
Kennyyyyyyy
Kenozh
Kenpo
+Kensan-7
+Kenshiro
Kent
KentWasTaken
Kentacus
+Kentarokins
+Kentish Hops
Kentucky
Kenwood
+KenyanChild
Kenyann
+Kenze
+Keonii
+Keox
+Kep
Kephan
Keplunk
Keppi
+Keppi Einari
Kepra
Kepuck
+KerZam
Keraliix
+Keratin
Kerbeth
KerfDaddy
Keri
+Keric
Kerk
Kerkerino
Kermajorma
Kermit
+KermitTheRob
Kernalpotato
+Kernautist
Keromasev
+Kerrr
Kertar
Kerzara
+Kes Sittus
+Kesc
Kesekui
Kesohs
+Ket
+Ket Baggie
+Ket Schep
+Ket Uh Mean
KetaKnallt
+KetaYours
Ketabar
Ketanator
Ketch
Ketho
Ketnet
Ketonall
+Ketsah
Kettaz
Kettu
Kettyman
Ketwards
Keudel
Keunic
+Kev The Tonk
+Kevain69
Kevali
Kevb0t
Kevbro9
Kevichan
Kevin
+Kevin Booker
+Kevin Framed
+Kevin Nguyen
+Kevin5-0
+KevinDurant
+KevinLawrune
+KevinOSeven
KevinTes
+KevinTheGOAT
+Kevinspostal
Kevinw20
KevlarX
KevolutionX
+Kevsin2
Kevsin3
+Kevslays
+Kevstrong
Kevthebos
Kevva
+Kevve
+Kevzy
Kewl
Kewlaidman
Kewnsauce
+Kewwl
Kexkaka
+Key Concept
KeyNoir
Keyashes
Keydiss
+Keyfob
Keylock
+Keylord
Keyney
Keyoh
Keyori
+Keyose
Keywork
Keyzz
Kez0
Keza132
Kezmaya
+Keztra
+KezzerQ
Kezzerina
+Kgb Spy
+Kgsnipe
+Kha Zx
Khaant
Khabib
Khader
+Khajgold
Khal
+Khal Bow
Khaled
Khaleeeesi
Khaleesi1113
+Khalesar
Khalisee
Khamoshi
+Khan of Iron
+KhanhDung
+Khans Wrath
Khanzed
Khao
+Kharium94
Kharjo
Kharn
Kharos
@@ -12393,10 +25684,15 @@ KhatrickZain
Khayri Demon
Khazad
Khazad Dum
+Khazanedar
Khazu
+Khealim
Khest
+Khint
+Khirean
Khiru
Khleb
+KhooNBust
Khoosh
Khoppa
Khornebull
@@ -12404,16 +25700,31 @@ Khovansky
Khride
Khrollo
Khryptik
+Khrysus
Khufu
Khune
+Khunt Flapz
+Ki Adi Fundi
+Ki Arts
+Ki Stu GSK
+KiD BeeR
KiIIa4realz
KiLn
+KiSMET6
+Kia Jon
Kiarama
Kibb
+Kibeleza
Kibisai
+Kibito Kai
+Kibra
Kick
KickarseCale
+Kickback Dw
+Kickbums
Kicker
+Kickrolls
+Kid Inferno
Kid K O N G
KidClutch17
KidLeaderKTY
@@ -12421,239 +25732,482 @@ KidSativa
Kidalien
Kidchilly100
Kidd
+Kidlizard
KidneyBean
Kids
+Kids Bong
Kidtrilogy
Kidur
+Kie
Kiedis
+Kieftron
+Kiek um goan
+Kieken
+Kiekkoilija
+Kiera
Kiero
Kierzo
+Kiewit
+Kifooo
Kifsa
KiiDSKOLiO
+Kiinja
+Kiinnostaa
Kiirii
+Kiisu
Kiivi
Kiiwityty
Kiizoru
Kijucatm
-KikRox420
+Kikikissa
Kikiniki2
+Kikkel
Kikkertje
Kikyo101
+Kil U
+KilIerDaddy
Kilamanjaro
+Kilbot0
Kiliann
Kill
+Kill Crazy10
+Kill Credit
+Kill the GE
KillConfirmd
KillSwitch26
Killa
+Killa Cam
+Killa Kamali
Killa213
KillaSilence
Killab0rtion
Killabrew
Killadelphia
+Killadeuce
Killamemsta
Killaowns
Killatonicus
Killed
+Killed Elmo
Killed145
+Killekalekoe
Killemall
Killer
+Killer Jr
+Killer Kurce
Killer7502
+Killer81093
+Killer9823
KillerFlix
KillerSlee
+KillerVibes
+Killerank202
Killercaster
Killerdog HC
Killerdustyn
Killerkotti
Killermatt
+Killeroh
Killers455
Killertribes
Killgor138
Killi
+KillianRS
Killing
KillinxLivin
Killjoy4fun
+Killjoyer2
Killmankind
+Killme5551
+Killmelol
Killnloot2
+Killoah
+Killsw1tched
Killswitch83
Killua
+KilluaSam
Killzone
+Kilminater
+Kilo Meter
+Kilodoreo
+Kilograms
KiluaZoldyk
+Kim
+Kim Chungha
+Kim Trails
+KimKallstrom
Kima
+Kima Ronso
Kimano
Kimbr0
Kimbu
+Kimex
+Kimi Hendrix
Kimoja
+Kimosabii
KimtonLe
Kina
Kinaesthetic
+Kinboat
Kind
Kinda
+Kinda Blue
+Kinda Sinful
KindaDerpy
Kindaddy
Kindom
Kindoou
Kindozsodln
+Kineettinen
+Kinetic
King
+King 0f Gout
+King Ankle
+King Aussie
+King AvonIV
+King Blob
+King Boned
+King Bud
+King Bugs
+King Chev
+King Dong
+King Dongo
+King Edolus
+King Elf
+King Elon
+King Emurxer
+King Flipsta
+King Frodon
+King Green 2
+King H0d0r
+King Ian
+King Junkie
+King Kabanos
+King Kenneth
+King Lexius
+King Mariin
+King Milky
+King Nino 1
+King No Fear
+King Noc
+King Paf
+King Rabbit
+King Rayman
+King Redeem
+King Rico
+King Runs
+King Ruonis
+King Seb
+King Seneca
+King Size V
+King Slime
+King Snowman
+King Spudz
+King Swine
+King Tsar
+King Westor
+King XRPL
+King Zaros
+King davey
+King of Imps
+King of PvM
+King0fHelll
King0fSkane
King1631
KingAcorn85
+KingAwowogay
KingBOO
KingBailey
KingBoo
+KingBuliwyf
+KingClark
KingCudii
+KingCurtis11
+KingDarkVII
KingDweebus
KingEider
KingFlugal
-KingGoblin07
+KingGoblin09
KingGrekus
KingGunshow
+KingHawk O_o
+KingInYellow
KingJacula
KingJelore
+KingJoey
+KingKahuna
KingKlick373
+KingKlye
KingKongKoen
+KingKong_Qc
KingLeonidas
KingMikeyD
KingMongo
KingMonk
KingMook
+KingNate1
KingNathanx
KingOfIron
+KingOfQuests
KingParcival
+KingPatVII
KingPlAnchor
+KingPractice
KingRobStark
KingRustyVII
KingSandCrab
+KingScribles
KingSizeD1CK
KingSoge
KingSpirel
+KingStyle
KingTheGreat
+KingTsjubbie
+KingValencio
KingYoshi
KingZac
KingZerka
+King_Kerran
Kingaroo
+Kingben
+Kingbuddy40
+Kingdom Rush
+KingdomBlade
Kingeri
Kingg
+Kinggg
+Kingism
Kingjake18
Kingmonkey23
Kingofhearts
Kingpfx2
Kingpin
+Kingpin Xp
Kingpk3r
+Kingrobster7
+Kingruler456
+Kings67
KingsBluue
+KingsGrace
Kingspadex42
Kingsta
+Kingsthor
KingstoAces
KingstonWall
+Kingsty
+Kingz Haki
+KingzWorld
Kinjello
Kink
+KinkerScaper
+Kinkers
Kinky
+Kinky Kenny
+Kinky Scr
Kinkybuns
Kinkytoast
Kinkyy
+Kinno
+Kinobles
Kinokird
+KinokoZoku
Kinp
+Kinsaic
Kintoki300
Kiopley2
Kiox
+Kipee Anneli
Kiplup
Kipnuggets
Kippenbro
+Kipsel
+Kiptandori
Kiqz
+Kiraci
Kiraga
Kiraly
+Kirara
+Kirbi Smart
Kirbngo
+Kirbsey
+Kirby
Kirby7670
+Kirchberg
+Kire1n
+Kiree
+Kiriel
Kirimah
Kirito
+Kirk4
+Kirk97
Kirkburton1
KirkyBeast
+Kirne
Kirrion
Kirry
Kirstin
Kirthor
+Kirumibe
Kiruzonu
+Kirx125
+Kirz
Kisa
+Kiseki
Kisizel
Kisle
+Kiso Valley
Kiss
+Kiss Kiss
+KissMeHomies
+KissOfFire
+KissOfFury
+Kissahomie69
Kissanpentu
Kissmyase111
Kist
+Kit Fistoo
+Kit10Kat
Kita
+Kitashan
+Kite Solo
Kiteman
+Kitfox IV
Kitsch
KitsiKitty
Kitsune
+Kitsune Kami
+Kitsune Ness
Kitsunemimi
Kitten
+Kittenz
Kitties
+Kittle Bits
+Kittoh
Kitty
+Kitty Perry
+Kitty v2
KittyMeow83
-Kittygamer69
+Kittymouse 1
+Kittys Newb
Kiusatus
Kivespulla
+Kivick
Kiwa
Kiweh
Kiwi
+Kiwi Icons
+Kiwi Stona
+KiwiIskadda
KiwiMacJ
+KiwiSteve
+KiwiTheBot
Kiwiana
Kiwidude
Kiwiskurt
Kiwwion
+Kiyak
Kiyoko
+KizJ
Kizminsky
Kizone
+Kizz mo
Kizza
+Kj Kai
KjellEllen
+Kjellberg94
+Kjomo
Kjottfifaan
Kkobe
+Kkobugi
+Kkokkom
+Kkoppa
Kl2AZY
Kl3RAN
+KlDDO
KlLL
+KlLL 4 BONES
KlMI
+KlMpossible
KlND
KlNG
+KlNG MlKE
KlNGY
Klaar
+Klaarkomer
+Klaasie
Klacky
Klanezy
Klanks
+Klankss
Klapzak
+Klarence
Klariany
Klarna
Klaskdeng
+Klassic
+Klassified
Klatscher
+KlausLittle
+Klaussie
Klavan
+Klavelon
KlazBooy
Kleatus
Klebold
Kleened
Kleiades
+Kleine bolle
Klementtii
+KlemmDawg17
Klemonhaze
Klengie
+Kleo
+Klepdiezle03
+Klepp
Kleptic
Kletz
KlewKlew
KliKlack
+Kliewer
Kliffa
+Klik gebit
+Klikke
+Klingons
Klippzz
+Klo0
Kloefklapper
Klogin
Klonzyon
+Kloofiool
Kloorijoodik
+Kloot-Zuk
Kloover
KloreCore
+Klotho
+KlovneKrabbe
Klowdstr1fe
+Klub Dubx
Kluftritter
+Klumpy
Klumsie
Klunchkey
+KlungePlunge
Klunkii
+KlutzyKay
+Kluuntje
+Klvtz
+Klyd
Kmac
KmartWorker
+Kmd
+Kmie
+Kmk_Yawgmoth
+Kmorken
Kmtfwtm
+KnD xP
Knaap
Knabbelbaars
+Knabbernossi
Knacker
Knakenstein
Knaksaucage
@@ -12665,77 +26219,146 @@ Knaught
Kndd
Knead
Kneeeled
+Knewby8
KngBlkDrogon
+Knickers
+KnicksNati0n
Knife
+KnifeStory
Kniffes
Knight
+Knight Crip
+Knight Drake
+Knight Jo
+Knight Mors
+Knight of 3
Knight50
+Knight522
Knight5247
+KnightKettle
KnightMike
KnightO
+Knightcrawle
Knightenator
+Knightlock
+Knightmare
+KnightmareNL
Knightrainy
Knightromite
Kniili
Knikkerbal
Knivezii
+Knob End
+Knobin Hood
+Knod with Me
+Knoo
+Knospi
KnowMadss
KnowPurpose
Knowing
Knowledge
Known
+KnowsNoFear
Knoxville333
Knuckle
+Knuckles
+Knulle
Knummi
Knurrbauch
KnusCaboose
Knusseprulle
+Knut Knut
+Knwn
+Ko Addiction
+Ko D Ur Dead
+Ko0tje
KoBe
+KoH Zoro
+KoPvM
+Koa
+Koak
Koala
+KoalaBear819
KoalaBwala
+KoalaHeist
+Koalarobe
+Kob Bryant
Kob3oshii
+Kobakat
+Kobayashi89
Kobe
Kobenna
+Kobi btw
Kobold
Kobushi
Kochelas
+KochiiBear
Kocjancic
+Kocyte
Kodai
Kodak
Kodax
Kodeth
Kodfunk
+Kodie
Kodipar
+Kodo
+Kody IRL
Kodywithac
Koekebakker
+Koekenpan
Koekienator
Koelkast1
+Koelkast3120
+Koelogg
+Koemi
+Koenfu
+Koeppy
+Koerdistan
Koff
+Kofferbak
Koffie
+Koffie Shop
KoffieBoer
Koffiekan
Kofnx
+Koga09
Kogarah
+Koge
+Kognito
+Kogsin
+Koh Me Lo
Kohda
+Kohrosian
+Koii Diva
Koka
Koki
KokiriSword
+Kokki
Kokkue
Kokkugoburin
Koko10tkd
+Kokoftu
Kokou
Kolade123
Kolariah
+Kolarino
Kolbot
+Kold Pizza69
Koldbetrayal
+Koldz
+Kolicee
Kolmay
Kolmiojuuri
Kolodinsky
+Kolomit
Kolton
Komai
Komarov26
Komijn
+KomisarzFlak
Kommunist
+Komog
Kompact
Kompania
KomradeScape
@@ -12743,61 +26366,125 @@ Komugi
KonDaTV
KonKai
Kona
+KonaTheCake
KonaTheGent
Konami
+KonarMilkies
Koncept
Kong
Kongen3609
+Kongherodes
Kongklunk
Kongmoakim
+Kongon Musta
Kongz
+Konigs Tiger
Konigsblau
+Koningnoob
+Konjakkia
Konkelbearet
Konkuuu
Konnie
+Konnor Ray
+Konny
KonosubaAqua
Konroy11
+Konstiq
+Kont Crumbs
KonteNeuker
Kontentti
Kontoret
+Kontrafakt
+Konu
Kony
+Kony4ever
+KonyRomo
+Konya Slayer
+Koo
+Koob
+Kooben
Kooch50
+Koochie
+Koogs
+Kooiker
+KookieDough
+Kooky Kal
+Kool Aid76
+Kool Hwhip
Kool Iron
KoolKriegs
+Kooleey
Koollpop
+Kooloo Limpa
+Koomar
Koomorang
+KoontzyJr
+Kooopa
Koopa
+Koopa Kash
Koopatrol
Koopley
+Koops
+Koothi Jr
Kop0nen
+Kopet
+Kopites
+Kopn Alt
+Kopoes
+Koppa Olutta
+Kopra_0nu
+Kopzilla0
KoqPuuser
Korado
Korail
+Koral64
Korangarr
+Korasko
+Korazi
+Korbet
KorbolJestem
+Korby_K
+Korea
KoreaBread
Korean
+Korean Neet
Korelivia
Korihoko
Korisas
+Korkesh101
+Kormulus
Korneel
+Kornettos
Korok
Korpokkur
Korravalvur
Korsair
+Korsan
Kortti
KosChiquiss
+Kosaki
+KosarevSpawn
KosenRS
Kosey
+Kosha Engler
+Kosken Kovin
Kosmckid
+Kosmo
+Kosra
Kosst
Kossukissa
Kostaja123
Kosteezer
Kotaki95
+Kothfan2
Kothfan3
Kothu
+Kotimaista
Kotkatapult
+Kotoe
+Kotov
+Kottis
+Kotze
Koucii
Kouen
Kouhais
@@ -12806,111 +26493,227 @@ Koulupummi
Kourend
Kourk
Kov0s
+Kova Kova
Kovacs
+Kovacs Bela
Kovaley
+Kovalux
KovidKai
Kovit
+Kow
+Kowawa
Koxu
+Koy
+Koy5
+Koyix
+Kozileks
+Kozmic
+Kozojebec
Kozyshack
+Kpiy
Kprs
+KpyosX
+Kq
Kr0jm
+Kr149
Kr1sten
Krab
+KrabbiePatty
+KrackScape
+Kradoth
+Kraff
+Kraft Slave
Kraftra
Krafty
Kragjay
+Kragwa
+Krahhling
KrakaJ
Kraken
+Kraken Beerz
+KrakenSnacks
+Krakenarse
+Krakenmom
+Krakkars
Kralik
Kralovna
+Krammetje
+Krana
+Kranky Kraut
Kranox
+Kransie
KrapNSchitz
+Krapinschitz
Krappa
Kraq
+Krasznahorka
+Kratic
Kratje
Kratos
Kratos-Arepa
+Kraujukaz
Kravcik
+Krawall
+Kray
+Kraytoast
+Krayz818
Kraz3d
+Krazed Zen
Krazezor
Krazy
+Krazy Kramer
+KrazyKillah3
Kream
+Kream PIE
KreampieKing
Kreams
Kree
+KreeM_Pies4U
Krel
+Kreme Krispy
+Krepe
+Kreshink
+Kreupel hond
+Kribo
KriegFleisch
Krigare
Krigersej
Krigsgaldr
+Krikkos
Krile
Krillin
+Krillin It
Kriltar
+KrimenReborn
+Krios
Kriptog
+Kris 2
+Kris Kross
+Kris Tis
+Kris Toffer
KrispCowMilk
KrispyCow
+KrispyJello
+Krispz
+Kriss42
+Krisse
Krisstian
+Krisstof
Kristina
Kristo1337
+Kristoh
+Kristops
KristySlays
+Kristya
Kriszx
Krith
+Kritters
Krizalid
Krizee
Krllykins
+Kro
Kroeg
+Kroekoek
Kroer1
+Krogan
+Krohmos
+Kroketten
+Krombop Mike
Kromuh
Kron0
KronScape
+KroniKStyL
Kronic
KronicPlague
+Kronic_gtt7
Kronjuvel
Kronoryx
+Kronstedt123
Krontio
+Kropium
Kross
+Krownax
+KrthisIrnhrt
+Kruber
KruimeIkoek
Kruisboog
Kruizar
+Kruncha
+Krusch Qc
Krusk09
Krustorb
KruttGutten
Kruuxt
+Krvavec
+Krw
Kryder
Kryderman95
+Kryl
+Kryllz
Kryoge777
Krypsiss
Kryptanite
Kryptic
+Krypto Pup
Krypz
Krystalbead
Krystalized
+Krystie
Krytl0rd
+Kryxon
KryyptCeepR
Kscott
+Ksed
Ksteg
Ktran4
+Ku
Kuaalo
Kuanta
+Kubanna
Kubfu
+Kubiak
+Kuchera
Kudos
+Kudra Shade
Kudsk
Kudt
+Kuemper
Kufke
+Kuger
+Kugi
Kuha
+Kuhis
Kuhki
+Kuhnlicious
Kuhvon
+KuhwazyyPVM
Kuhz
+KuidaoreTaro
Kuistikopone
Kuittis
+Kuji Otoya
+Kukii
+Kukko
+Kuksukka
Kulak
Kuler
Kuli
+Kullilutku
+Kullirausku
+Kumara Fries
+Kumduh
Kumeku
+Kumetis
+KumikoOkada
Kummars
+Kummens
Kumoga
+Kumonyru
+Kunakana
Kunaphela
+Kundalini888
Kung
+Kung Aguero
KungFuKennyy
KungFuhr3r
KungFury01
@@ -12919,18 +26722,25 @@ Kungler
Kungzaki
Kunie
Kunkku289
+Kunkulu
Kunsel
+KunukGL
Kuola
+Kuollu Homer
+Kupla
+Kuppi
KurSiens
Kuran
Kurasaki21
Kurask
+Kuratus
Kurayamii
Kurdishtan
Kurfue
Kurgan
Kurib0hh
Kurim
+Kurios
Kurko
Kuro
Kuro6757
@@ -12939,142 +26749,368 @@ Kurohige-Jm
Kuroma
Kuroshin4
Kursdragon
+Kurt Cocaine
+Kurt1sdbr
+KurtMaxed
Kurtan
+Kurtismo789
+Kurtiz
+Kurtowogei
Kuru
Kurumin
+Kurums
Kurune
Kurza
Kurzgesagt
Kurzi
Kurzol
+KusOnRNG
+Kusai
Kush
-Kush420s
+Kush 999
+Kush Grey
+Kush Nerd
KushWizdom
+KushalaDaora
Kushanada
KushedKnight
Kushies
+Kushioned
Kushkhalifa
+Kushmooms
Kushtyyy
Kusiaks
Kusimuna
+Kusimuna JR
Kusle
KusmarPavola
+Kuso Saiko
+Kut Jack
+KutInternet
Kutasy
+Kuthay
+Kutirons
+Kutkip
+Kutori
Kutunawa
KuuDuu
Kuudere
+Kuulus
+Kuuw
Kuvakei
Kuwolski
+Kuxx
+Kuykendoll
+Kuzh
+Kuzi
+KuzzzTruckin
+Kvacky
Kvamsdal
+Kvaoathe
+Kvzy
Kwadraat
+Kwakske
Kwambam
Kwan
+KwanDynasty3
+Kwani
Kwarkark
Kwastaken
+Kweem
Kwei
+Kwep
Kwieppie
Kwintal
Kwondeo
+Kwong
Kwongo
KwuarmFarm
KxKxW
KxNoTTz
KyIll
+KyPolar
+KyWi
Kyaandere
+Kyafa
Kyberpaavi
+Kye187
+Kyeb
KyeeG
+Kyelee
Kyersago
Kygehn
Kygesm
Kyhlen
Kylanater
Kyle
+Kyle 8990
+Kyle Esq
+Kyle G
+Kyle Kmac
+Kyle VA
KyleFammm
KyleGrounded
+Kyledog829
Kyler
+Kyler Moss
+Kyles Cute
+Kyles GIM
+Kylesteven
+Kylewwashere
+Kylex
Kylianvb
+Kylliel
Kyloman
Kymeister
+Kynodontas
+KyotoSadness
Kyouan
Kyouko
Kyouma
+Kyouna
Kyouran
+Kyphrus
+Kyps
+Kyr0s
+KyraXIV
+Kyrakishuun
Kyrdaar
Kyrie
Kyrist
KyroThanatos
+Kyroba
Kyronius
+Kys Ironmen
Kyski
+Kytkinpommi
KyuubiKurama
+Kywt
Kyykin
+Kzyl
+L 0 S T Y
+L 3 G 4 C Y
+L 67
+L A R A M S
+L Ben
+L CBO
+L D A
+L E G E N D
+L E G O
+L E L O
+L E P I
+L F C
+L FC
+L Hus
+L I N U X
+L I V M
+L OAFS
+L S Q
+L U I G
+L U U K E
+L X R D S
+L achie
+L aika
+L aka
+L ama
+L ang
+L apras
+L atias
+L aw Rune
+L aze
+L e an
+L eafErikson
+L egs
+L ek
+L emaster
+L ev
+L i m a a
+L iamm
+L iar
+L ilo
+L inox
+L ions
+L o w g
+L ockdown
+L ofty
+L osi
+L paradoxum
+L u m i
+L u mi
+L u x
+L ucas
+L unatic
+L00000
+L00M
L00OL0OO00OL
+L00T SNIPER
+L00tacr1s
L00termember
L0G0
+L0GI
+L0L
L0L0LL0L00LL
+L0RA
L0RD
L0RDGAINS
+L0ST S0UL
+L0Z
L0kur
L0rd
+L0rd Arthur
L0rdMullett
L0st
+L0vecraft
L0ves2Splooj
L109
L115Squirtle
+L1L GN0ME
+L1ghtweaver
+L1l bits
L1ncoln
+L1ndman
+L2
L2Crash
L2D3
L2Loki
L2love
L2mmutaja
+L2sit
L2tankbandos
L2tob
+L337 GodHand
+L3RKON
+L3V3L
L3apOfFa1th
L3gg0
L3mur
+L3prec0n
L3sius
L3tMeBreath
+L4D2 Enjoyer
L4rry
L4st
+L522
+L64
+L86A2
+L8CP
+L8ers
L8rT8r
+LADFS
LAMAFAO
LAMARJACKS0N
LASBE
+LAUFY
+LAZY88
+LB9
+LBS M
+LBaccer
+LC33
+LCpl
+LE0 MESSI
+LE54SON
LEARNINGTHIS
+LEGOSl
LEN0
LENZ
+LET ME COOK
+LEWlS
+LF Content
+LFG 69
LFGrills
+LG 8anter
LGBTQLMNOP
+LIL BLESSED
+LIL PRINCE
+LILKHALAMARI
+LIMEWORLD
LIQUICITY
LITEIT
LITHITS
+LJ 8
+LJAP
+LJPalmer
LKIT
+LL Trigger
+LLAMA_ears93
+LLIRSHSLSIEi
+LLY Duramax
LLeffe
+LLich
LLol
+LMAO LOL KEK
+LMAOImDying
+LMFAO IRL
LMFAOIRL
LMNOP3
+LMParrot
+LN41
+LOADED_AR
+LOGAN109
+LOGlC
LOH3
+LOL BMW
+LOL MAD
LOOP1456
LOOSECOOCHlE
LOSTinGAMES
+LOUlSlANA
+LOWIQXD
LP Smokie
+LRG
LRGD
LRichyy
+LS1
+LS3D
+LSD-25
LSDDS
LSDe
+LSDeezNutttz
LSDonny
+LSDreamy
LSxD
LTUD3stroy3r
+LTapperz
+LUBRICAT0R
+LUKA DONClC
+LUR3ME
+LURED BY ROT
+LUTlN
+LVN iZN0
+LWE
+LXFY
+LYAM femboy
+La Benezra
+La Bollita
+La Brebis
+La Croix
+La Fiesta031
+La Frontera
+La Moo
+La Porta
+La Sopa
+La7itude
LaCroisssant
LaFroob
LaLegende
LaMachCaron
+LaMarii
LaPichula
+LaRS 07
LaYdlN
Laaban
+Laadvermogen
Laady
+Laagvliet
+Laaki
+Labas Utak
LabbatBlue
LabbattSplat
Labbis
+Labor
+Labstev
+Labundo
+LacDeaths
+LacedKoolAid
Lacedonian
Laceinyoface
Lachosocko
@@ -13082,82 +27118,160 @@ LachysMain
LacinorI
Lack
Lacking
+Lacking IQ
Lacoline
Lacraio
Lacrymosa
Lactosite
+LacusClyne
+Lad J
Ladbrook
Laderstall
Ladme
+Ladrian
Lads
Lady
+Lady Calais1
+Lady Chompa
+Lady Devil
+Lady Porky
+Lady Storms
+Lady2022
+LadyBuck
+LadyGagaTbh
LadyJan
+LadyJan BTW
LadyJessicaL
LadyMidn1ght
LadyOfCyprus
LadyOfMagick
LadyPidge
+LadySaurus94
LadyStarlite
LadyStorm83
+LadyVamperic
Ladydoll
Laedzter
Laeretes
+Laethia2
+Laetor
+Laf
+Laffam
Laffy
+Laffy Taffy
+Lafondaa
Laftonn
+Lag out
LagArtist
+LageLanden
Lagerhaus
+Lageri
Lagg
Laggbeer
+Laggro
+Laggy Brain
+Laggy Clicks
Laglet
+Lago
+Lagodzacy
+Lagomancer
Lagoon
Lagrange
Lagscape
+Lagu
+Lagwagon
+Lah Di Dah
Laharl
+Lahn
+Laid
+Laid bare
+Laika Wolf
LaiskaJake
Laiskiainen4
Laitoin
Laitti
+Laitue
+Lajer
+Lajfi
Lake
+Lake Show
+Lake Valor
LakeMonYew
Laker
Lakeshire
+Lakka
+Lakonic
Laksa
Laku
+Lakuni
+Lakupiippu
Lala
+Lalochazia
Lalundi
+Lam lul
+Lam_12
Lama
Lamanent
Lamb1237
Lambretta62
Lambs
+Lambzilla
Lame
+LamePuttE10
Lamented
+Lamfear
+Lamh
Lamie
Lamiia
Lammen
Lammy
+Lamns
Lamp
+Lamp Burner
+Lamp master
Lampepit
Lampyy
+Lampzki
+Lamshnarf
+LanJiaoDuaKi
Lana
+LanaLuna
+LanceDaPantz
+Lanco
Lancy
Land
Lander
Landeskoging
Landlord
Landofzoa
+Landucey19
Landyll
Laneeta
+Lanell Latta
+Lanesstee
+Lang Chang
+LangeNieWies
+Langeboy
Langecries
Langner
Langosman
Langscape
Langtu102
+Langutan
+Langzzy
+Lanier
+LankFrampard
LankaKekw
Lanky
+Lanky Josh
+Lankyfeed
Lann
+Lanny Pan
+Lanoue
+Lanpzki
Lanrico
LantadymeRey
+Lantern Snow
Lanx
Lanzlol
Laogai
@@ -13167,70 +27281,142 @@ Lap0tai
Lape
Laphloredos
Lapsa
+Lapsapp
Lapsivesi
Lapua
+Lapuz
+Lapy
+LaquishaBaby
+Lar0i
+Laraelias
Larcadum
Larcenex
+Lard Jaysus
Lare
Lare240
+Larecia
Larecio
+Larenz Tate
Large
+Large Chompy
+Large D
+Large Npc
+Large Tasty
+Large Toads
LargeExpLamp
+LargeGrandma
+LargeZock
+Largelad2
+Largeprune
Larie
Larissa
+LarksTongues
Larkypoo
Larotux
+Larrey
Larry
+Larry 0G
+LarryB
LarryIsHere
-LarryOSRS
Larrys
+Larrys btw
Larryz
+Lars Ohly
+Larser
+Larsinosrs
Larsjns
Larso
+Lartsi
+Laruka
+LasBoi
Lascooby
+LaserLad
LaserSchlong
+Laserati
+Lashi
Lasjstts
Laska
+Laska Siara
+Laski
+Laskii
+Lasne
LasoliLeiffi
+LassT
Last
+Last Bison
+Last King
+Last N1te
+Last Stages
+Last Texan
LastAttempt
+LastBoss
LastHours
+LastMark
LastRecalI
LastTexan
+LastWookiee
Lastinis
+Lastkaiii
Latanoprost
Late
+LateKnight
LateOwl
Lateksiuljas
+Latelaturi
Latero123
Latias
Latins
Latissimus
Latitude
Latompachy
+Laturaivo
+Lau396
LauQT
+Laudine
+Laufeyson965
+LaughTale XD
Laughed
Laukage
Laukie
+Laukki1
Laundry
+Laundry Room
LaupieLaupie
Laur
+Laur ex core
Laura
+Laura J
+Laura uwu
+Laurat J
Lauren
+Laurentina
Lautanen
Lauw
LauweEgberts
+Lav x
Lava
+Lava Buster
+Lava rune
+LavaFountain
LavaKitty
Lavadude42
Lavafrost
+Lavagirl420
Lavak
+Lavak Bob
+Lavanis
Lavasat
LavendrGoons
+Lavigne
+Lavina26
+Lavios
Laviuthen
Lavvv
LawOfBirds
+Lawesy
Lawfox
+Lawhrer
+LawlAsYouDie
Lawlie
Lawliet
Lawlimon
@@ -13239,97 +27425,221 @@ Lawn
LawnChair48
Lawncat
Lawnmower73
+Lawre nce
+Lawsilk
Lawson
+Lawyer JD
+LawyerGirl24
+Lax_315
Laxar
Laxx
+Lay
+LayDead
Layden
+Laydwnandr0t
Laydyn
Layes
+Layes X
+Layezy
Laylaa
+Lays
Layzi
+Laz GIM
+Laz Lo Mein
Laz2510
+Laza Ferro
Lazer
+LazerVizion
LazerWork
+Lazgo
Laziest
Lazikiel
LazloDaLlama
Lazy
+Lazy Fare
+Lazy Jazz
+Lazy Lump
+Lazy Matt
+Lazy Mauler
+Lazy Moo
+Lazy Shell
+Lazy Soul
+Lazy Stona
+Lazy XP
LazyB0y
+LazyBoneZone
LazyDevon
LazyFarmer
LazyOwner
+LazyThom
LazyTurtleRS
+Lazydrink
Lazyie_KiD
+Lazysmokes
LazyyySloth
Lblacc
Lbuzz
+Lck
Lda237
Lder
-LeB0ng
+Lds
+Le Bibu
+Le Biff
+Le Big Sad
+Le Catptain
+Le Doda
+Le Foole
+Le Gio
+Le H0NK
+Le Jeffeh
+Le Peanut
+Le Petit BH
+Le Pogo
+Le Reject
+Le Stu
+Le Sus
+Le Tom
+Le von
+Le4f
+LeAUD
+LeB0ng James
LeBlownGames
+LeBoobie
LeBrianJames
+LeDamos
LeDerpski
+LeIronJims
LeKinguin
LeLuuk
+LeMontBlanc
LeMoonMan
LeMoopey
+LeNnEeX
+LePeach
+LeVarrock
Lead
Leader9922
Leaderless
Leadfeathers
Leadley
+Leads Dead
Leaf
+Leaf 7
+Leaf Parker
+Leaf998
LeafStoneDab
+Leafffy
+Leafpool
Leafyshade
+Leaga
+League Brain
+Leak
+LeakedDMs
Leaks
Lean
+LeanFavaBean
Leanlce44
LearnCatMeow
+Learningosrs
Learti
Lease0fLife
+Leather Top
LeatherJan
+LeatherRat
Leatherr
+Leaux Key
Leavepigrun
+Leb Crotch
+Leb Man
+Lebanesee
+Lebennn
+Lebor
+Lebowski2033
Lebrons
+Lebusoft
Lebzima
LeccaJr
Leckie12
+Leclerc 2024
Lectaminol
+Lectosh
+Lectrix
+Led2000
+LedXia
Ledgendairy
Ledning
+Ledu
+Lee
+Lee Ratt
+LeeFelix
LeeGavGav
LeeHen
+LeeV_V
Leecherboy
Leechy2399
+LeedsUnited
Leegotalo
+Leeleebug210
+Leemer
+Leemi
+Leemo
Leer0y
Leerjet
Leeroyy
+Leers OSRS
+Leeshore
LeesusChrist
Leet
+Leet Blues
+Leet Bug
Leetroopa
Leeuwarden
Leevar
Leezy
Lefonzeee
+Left gf 4 Xp
+Left inPeace
+LeftFistt
+LeftHerFor07
+LeftHerForRs
+LeftTwix
Leftist
+Leftwich22
Lefty
+Lefty-x
+LeftyWarrior
Leftytexan
+Leg Day 99
Legacy-Blade
LegacyOfErik
+LegalCounsel
Legalism
Legally
+Legally Dumb
+LegallyAfk
+Lege
Legend
+Legend 0007
LegendHarold
+LegendKingz
LegendOfShao
LegendSuz
LegendaryDTM
LegendaryFoe
+LegendaryLVP
+LegendaryMe
LegendaryRS
LegendarySte
+LegendaryZ0
+Legenddiary
Legenddreams
Legendelek
+Legendish
+Legends Epic
+Legendsam7
Legened248
+Legggggooooo
+Leggo
Leggy
Leggz
Legikt
@@ -13338,17 +27648,29 @@ Legion2410
Legionals
Legislatore
Legit
+Legit Ape
+LegitGarbage
LegitSamuel
+Legitidrown
+Lego Brick
Lego Fisher
+Lego Mania X
LegoMyBob
+Legolas
+Legolas I
Legolic
Legoliker999
Legosas11
+Legosaur
+Leguminati
+Leha
+Lehawek
Lehmo
Lehnert
Lehoir
Leid
Leider
+Leidmavo
Leif
LeifBestLord
Leiff
@@ -13356,16 +27678,27 @@ Leigh
Leilin
Leimstiift
Leion
+Leist1nas
+Leistus
Leito
+Leitwolf
+Leivermorale
Leivonnaiset
Leiza
+Lejj BTW
Lejoon
+Leka xo
+Lekira97
+LekkerMoeder
Lekkeri
+Lekray
Leky
LelSickMeme
Lelalt
Lelbow
Leldorin
+Leldra
+Lell
Lelott
LelouchV
Lelysia
@@ -13373,116 +27706,230 @@ Lemako
Lemillion141
Lemiy
Lemke
+Lemmelleni
Lemmy
LemmyThePerv
Lemon
Lemon5000123
-LemonLube420
+Lemon9000000
+LemonTart
+Lemonade max
+Lemonguin
Lemonmooffin
+Lemonowo
Lemonrider
+Lemony Earl
Lemonz
+Lemosgomes
Lemphys
Lempsu
Lemurcow
Lemuria88
Lemursnore
-Lenfart
+Lendtable
+Lenegis
+Lenel Devel
Lengzz
+Leni Epiza
Lenience3
+Lenify
Lenlami
+Lenn375
Lennie
Lenning
+Lenny Euler
LennyPro
+Lenovel
Lenreys
+Lenses
Lentiano1
Lentil
LenvisCZE
+Lenya
+Leo Gagner
+Leo Messi
+Leo The Fish
+Leo12_1993
Leo2
Leo96
Leodero
Leoma
Leonatwo
+Leonbozz
LeonidasIV
+LeonidasThor
LeonidasXCIV
Leonl
Leontje
Leorio
Lepek38
Lepkilla
+Lepra
Leprechau
Leprincias
Lerch
+Lernaean
+LeroyDanknz
Leroyvdk
+Lerzbot
LesGetIt
+Lesbean
Lesen
Leshrac
+LesleySnipez
Less
LessIsMore
Lessar
+Lesser Gods
+Lessking
+Lestamsakul
Lestersaurus
+Lesva
+Let Us Dream
LetBrettBang
+LetJimCook
Lethal
+Lethal Blade
+LethalClick
LethalMortal
Lethally
+Letharil
+Lethwei
+Letits now
LetrahL
Lets
+Lets Blaze
+Lets Boss
+Lets Glide
+Lets Plop OK
+Lets Ride
+Lets See
+Lets Toke
+Lets Ziggy
+Lets pep
LetsGetSmity
+LetsGetem
LetsRouQ
+LetsgoDaddy
Letsjjj
+Letspoint
Lettersloth
LettuceLegs
+LettuceLime
+LettuceNut
Lettuce_8
Lettulainen
+Leturpentinr
Letz
+Leukaremmi
+LeukemiaLord
+Levante Frog
Level
+Level Denel
+Levelations
+Leveldegree
Levi
+Levi Squad
+Levi lmao
Leviate
+Levibeelevi
+Leviud
+Levven
+Levyiah
+Lew Sanus
+Lew sid
+Lewd Queen
LewdTouchMe
Lewdberrypie
Lewey
Lewf
Lewfu
+Lewhh
Lewir
Lewis
LewisMcLaren
+Lewis_y
Lewism22
Lewison
+Lewiss
Lewithetui
+Lewu
+Lewwiis
LexaSteel
+Lexatrax
Lexay
Lexdegekte
Lexer
+Lexington73
Lexkai
Lexxi
Lexy
+Leyon
+Leyr
+Leysim
Leyton
Leyzen
+Lezio7
Lezley
+Lfts
+Lhk
+Li am
+LiI Tii Lii
+LiT Clutch
+LiT on Dabs
LiTxEXODlAx
+Liam McPoyl
+Liam1994
Liam6780
+LiamLate
+LiamLollypop
+Liamas
Liberate
Liberaxa
Liberty
+Liberty Cap
Libolik
+Libracorn
Librain
+LichKiing
+LichOneeChan
+Licharus
Licht
+LichterLo
+Lichtert
+Licitness
Lick
+Lick My Wyrm
+Lick Time
LickAhrim
+LickMcFicks
Lickeris
Lickilicky
Lickumss
+LidawgMcChad
+Lidless
+Lidlman
+Lie
Lie4it
+Liebzer
+Lies of S
+Liet Katsu
Lietuviskass
Lietuvisz4
-LietuvosOSRS
+Lieve
+Lieven
Lif3
Lifal
Life
+Life Road
+LifeInsAgent
LifeIsBaked
LifeIsRockie
Lifeform
Lifehunt
+Lifeisnow13
Lifeliners
+Lifelulz
Lifes
Lifes12Rules
Lifesteal
@@ -13490,249 +27937,528 @@ Lifestyle
Lifewaste
Lifezajoke
Lifticus
+Lifting Fe
+Liggen
Lighning
Light
+Light Ace
+Light Shell
+Light age II
+Light1324
LightAura
LightB0ne
LightRigger
+Lightarrg255
Lightaxo
Lighten
LightenUp
Lighter
Lighterfalz
+Lightfister
Lightg0d
Lighthead45
+Lightlord440
+Lightning MF
+Lightningess
Lightqt
Lightstoria
+Lightww
+Ligma Balzaq
+LigmaMufin
+Ligt
Lihatanko
Lihtnenolife
Lihtsurelik
Lihu
+Liiga-Ari
+LiikeAGlove
+Liite
Liitokissa
+Lijk
+Lik me knie
LikMijnRaid
+Lika C
Likalatopus
Likark
Like
+Like Saint
LikeABrother
LikeAGloveee
LikeCinnamon
LikeToetally
Liketocombat
+Liko
Likrot
+Lil Callisto
+Lil Dickyy
+Lil Donut
+Lil Dor
+Lil Doss
+Lil Eso
+Lil Fika
+Lil Garbo
+Lil Hogg
+Lil Knight
+Lil Koda
+Lil Lilyxo
+Lil Lotus
+Lil MCM4A1
+Lil Moe
+Lil NllLO22
+Lil Rat Mann
+Lil Roli
+Lil Shay
+Lil Stoma
+Lil Tragic
+Lil Weeezy
+Lil Woowoo
+Lil Yeeter
+Lil Yungen
+Lil Zeusy
+Lil Ziik
+Lil Zimp
+Lil parasite
LilBirb
+LilBlueMew
LilBobbi
-LilDilly420
+LilFaulk
LilGBigThing
+LilGay btw
LilHorny
LilMissSlays
+LilNubbins
+LilPeepBoi
+LilSeany
LilSquidgy
+LilSteamBoat
LilStonks
+LilSuzieVert
LilUziBlyat
LilWitness
+LilYungChitn
Lila
+Lilac Devil
Lilangrydude
Lilbobsters
Lilchris
Lildirt
+Lildischarge
Liles
Lilhotshotv2
Lilinss
Lilith
+Lillia n
Lillie
Lillyz
+Lilmoose99
Lilnenedemon
Lilqtforeva
+Lilsauce72
+Lilsutts
Lily
+Lily Mayy
Lilyalatea
+LilyaxD
+Lilypily0
+Lilysaurs
+Limb
+Lime Light
+Lime Season
Limed
+Limeguy21
+Limewire
+Limit Form
+Limited Room
+Limiwinkz
+Limiy
Limmert
+Limmy
Limo
Limp
+Limp Lime
+Limpsioo
Limpwurt
+Limyt
Linalool
+LincolnButt
+Lind say
Linda
+Linda Lou
Lindegaard
+Lindewyn
Lindsey
Linearr
LinedFury
+Linelis99
Linen
+Linen Cry
Linerz
+Linewa
Liney
Lingwood
Linh
+Linhson
Link
+Link Adam
+Link Click
+Link Noises
+Link Tribute
LinkKing
+LinkTheIron
LinkedList
Linkedln
+Linkin Boy33
+Linkinaz
Linkmoon
Linkseratten
+Linkv21
Linnara
Linsey
Linsunt
+Lintell-lad5
LinusEkedahl
+Linxis
Lion
+Lion Gin
Lion-021
Lion0fZion
Lionbatdog
Lioncheart
+Lionclaw
Lionelliee
+Lionheart
+Lionheart Xl
Lionhrt
+Lionyxia
+Lioui
+LipShits
+Lipalow
Lipperr
+Lippy Jimmy
+Liqu
+Liquar
Liquicity46
Liquid
+Liquid Apple
+Liquid CSGO
+Liquid GZA
+Liquid Mire
+Liquid Nexus
+Liquid Reign
Liquid8
LiquidRmt
LiquidTheory
LiquidTrails
Liquidat0r
+Liquidated
+LiquidatorRS
+Liquidwood0
Liquified
Liquir
LiquorGrain
+Liqwid
+Liridon
Lirrix
Lishenna
Lisica
+Lisle
Liso
+Lissino
Lissoms
Listeffect
Listen2me
ListenMorty
+Listerine_TC
Listics
+Listifyy
Lisuna
+Lit Dawg
+Lit Guy
+Litas
+LiteForge
+Litefooted
Litelii
+Litem
Liten
+LiteralCow
+Literic
+Lites Evil
+Litey
Liteyr
+Lithassa
Lithuano
Littens
+LittieTover
LittjeterRS
Little
+Little Allie
+Little Flirt
+Little Jaxon
+Little Knob
+Little Sloth
Little Snor
+Little Ticks
+Little Twig
+Little meow
LittleGhosty
+LittleIron
+LittleNudger
+LittleTrev8
+LittleWillis
+LittleZorro
Littlebluefe
Littleblueju
Littlechirru
Littlefarms1
+Littlefire01
Littleguyz
+Littletickle
+Litto
+LittyNoCap
Litvintroll
+Lium
Liuo
Liutkemenas
+Livahpewl
+Livand
Live
+Live Jaked
+Live Moose
Live2Win
Live4thefigh
LiveItRight
LiveLoveAsap
LiveYourLife
+Livedasniper
Livepan
+Liverpewle
+Livey
+LividPharm
Living
+Living Life
+Living Lust
+Livingenemy
+Liviu230
Livvii
LivyLo
Liwyn
+Liyum
+Lizard Siege
+Lizily
Lizinginis
+Ljb
Ljudmila
Ljuu
Lkarch
+Lkky
+Lkn
Lkoi
+Lkue
LlHAPIIRAKKA
+LlLY ALLEN
LlLYUFFIE88
+LlMEWlRE
+LlNT
LlON
+LlSA ANN FAN
LlTEWORK
LlTT
+Ll_lK3
Lla234
Llama
-Llama6969
+Llama BTW
+Llama Pharm
LlamaDawg
LlamaMcfenis
+Lleucu Ann
Llirik
Lloydyy
+Lluuk1
+Llychlynwr
Lmao
Lmaz
+Lmfao
Lmlxlk
+Lmmortai 07
Lmsjfjksdnhb
+Lmurs
Lncln
+Lng
+Lo Kii
+Lo My God
+Lo cation
Lo07er
Lo0pyy
LoGiiKBah
LoPintos
LoadMySkeng
+Loaded
Loadizzle
Loadstar
LoafOCelery
+Loathed Kmd
+Loathing
+Lobb Dad
Lobby
+Lobby Two
+Lobo Blanco
+Lobo Sonora
LoboStark1
+Lobot96
+Lobotomizer
+Lobstars
+Lobster12
Lobstero
Local
+Local FEmale
+Local Idiot
LocalHero7
LocalJoint
+Locale
Lochi
LockDownLife
+Lockdown v2
Locko
Lockpicks
Lockski
+Locksnap
Lockssley
+LocoDoritos
LocoHamsterz
Locococonut
+Locothegenie
+Locrian
+Locton
+Loda
Lodarion
Loders
Lodestar
Lodestones
+Lodgehunter
+Lodiedoo
+Loebas
Loeffen
+Loez
+LofaBred
Lofi
Log62
LogHog8
+LogHunterKaz
Logan
Logan2x
Loganator34
+LogansPrayer
Logavano
LogiTekton
+Logia
LogicTerror
+Logical God
Login
+Logitech
+Logitekton
Logless
Logos13
LogsKnog
Lohan
Lohkey
Lohruken
+Lohwi
Loikoi
+Loikoi Lee
LoisGriffin1
+LokieDokie
+Lokolow
Lokos
+Lokrand
Lokur
+Lol Ur Dead
Lol466
Loladactylll
+Loldg
Lolek
+Loli Cox
+Loli Neko
+Loli Pantsuu
Loli-Remain
LoliChan
LoliElie
LoliStrangla
Lolicons
+Loligagging
Lolipoparty
Lolitsleeroy
+Lolmanever
Lolmc
Lolopipop
Lolwierdo
Lolwuts
+LomLy
Lombachs
Lombardi
Lomborghini
+Lome
+Lomobuu
Lompardo
Lon3y
Lonan
+Lonan Arikos
Lone
+Lone Gym Rat
+Lone Lee Axi
+Lone Pop
+Lone Requiem
+Lone runkero
LoneCorp
LoneMage
LoneStarWit
Loneful
+Lonehenge922
Lonely
+Lonely Eevee
+Lonely Neo
+Lonely Norms
+Lonely Ride
+Lonely Salty
+Lonely Slave
+Lonely Table
+Lonely Tugs
+LonelyLight
LonelyOnT0p
LonelyRS
+LonelyTugs
Lonelyy
+LonerSushi
+LonesomeSoep
+Lonewolf117
Long
+Long 4skin
+Long Demon
+Long Ol Dong
+LongBoneee
+LongRodGod
+LongSnapper
+Longbow
+Longest Head
+Longie
Longjohnz
+Longmeatlog
+Longnech
+Longo Doggo
+Longstaf
+Longsword950
+Longview
Longwave
+LongySlongy
Lonjick
Lonksu
Lonz
+Loo p
LoofiePoofie
+Loofoo
+Loogs
Loogy
Look
+Look out bro
Looked
Lookin
Lookingman
@@ -13740,66 +28466,166 @@ Lookn4Puzzy
Lookout
Lookup
Loon
+Loon Master
+Loonetick jr
+Looney278
+Loongstickyy
Loonlette
Loony
+Loony RS
+LoonyLunar
Loonykilla
+Loonyluke5
+Looolo
LoopGoon
+LoopSwoop
Loophole336
LoopieFish
Loopy586
Loose
+LooseAnos
LooseLesley
+LoosebuLdge
+Loosh
+Loot Chemist
+Loot Party
Lootcifer
Looted
Lootedyou2
+Lootorz
Lootrich
Lootsharing
+Lootsi
+Lootski
+Loox
+Lopmkinjubhy
+Loppy Killer
+Loquwsea321
Lord
+Lord Amonite
+Lord Bees
Lord Buud
+Lord Bv
+Lord Caldlow
+Lord Conte
+Lord Cryer
+Lord Cypher
+Lord Devil
+Lord Doofy
+Lord Elfen3
+Lord Extropy
+Lord Grefven
+Lord Grim
+Lord Grofyth
+Lord Guam
+Lord Hents
+Lord Jebbe
+Lord Joona2
+Lord Jostyh
+Lord Keithus
+Lord Kratos
+Lord Loss
+Lord M0RG0TH
+Lord Mantra
+Lord Masonic
Lord Mjosh
+Lord Of Cows
+Lord Pengu1n
+Lord Pillow
+Lord Richie
+Lord Runes
+Lord Shayne
Lord Tarkus
+Lord Valzin
Lord Vioarr
+Lord Vishnu
+Lord Xeth
+Lord Yaksha
+Lord Zq
+Lord iFlex
+Lord kuro
+Lord polak
LordArtonius
LordAusticus
+LordBaphomet
LordCoffee2k
-LordFartquad
+LordCorreia
+LordDanko
+LordDaxel
+LordEpic69
+LordFarquxd
LordFoxy
LordGuthanPK
+LordJRazE
+LordJuba
LordLambo91
LordMullett
LordNorden
-LordOSRS
LordOfHarems
LordOfOtakus
LordPh1L
+LordPolgoth
LordQuinker
+LordScoobert
LordShrubber
+LordSloppy
LordThyas
+LordUSA
LordYawgmoth
LordZahard
Lordalbert0
+Lorddraconal
Lorde
Lordjoeman
+Lordkaes
Lordstails
Lordtwinky
+Lordy Flame
+Lordy608
Lordza
Loredon
+Lorehold
Loreland
Lorencia
Lorenz
-Lores420
+Lorenzoh sr
+Lorenzokazoo
+Lorithean
Lorkaa
Lorki
+LorqueldIM
+Lorre46
+Lorry
+LortJob
Lorttomies99
+Lorvikatari
Lorwic
LosAngeles
Lose
Losel
-Loserscape
+LoserKid
Loshambo
+LosinAllHope
Losing
+Losing Fat
+LosingXP
+Loss1525
Lost
+Lost Angel
+Lost Baby
+Lost Baggage
+Lost Logan
+Lost My Baby
+Lost My Sock
+Lost Oliver
+Lost On You
+Lost Roomba
+Lost Snail
Lost Tadpole
+Lost Weed
+LostBank
+LostBankKey
+LostChad
LostCloss
LostDude28
LostHalls
@@ -13808,260 +28634,608 @@ LostMoon
LostOcean
LostOnThePCT
LostSauce
+LostStatus
LostVorki
+LostandFound
+Lostdog03
LostlSoul
+Lostpetrock
Lostplzhelp
Lostrelic93
+Losty99
+Lot of Beans
Lothariou
+Lotilyx
Lotion
+Lots of Eggs
+Lotsa Regret
+LotsaOSRS
LottaPotAgo
Lotto
Lotu15
+Lotus bless
LotusKid
+Lotwik
+Lou Le Dur
+Lou Red Wood
+Lou Sputho1e
+Lou Surr
+LouBug
LouSass
+Louezzi
Loug
Lougle
LouiVui
+Louie Bags
LouieMurphy
Louiec3
+Louiseyy
Lounckie
+Loupak
+Lousy Drunk
+LouvicDank
+Louzy
+Lov ed
Love
+Love Caley
+Love M Poker
+Love Roman
+Love Taylor
+Love Yourz
+Love me
+LoveMyAnzaa
LoveThat
+Loveable
Lovelili
Lovely
+Lovely Clawz
+Lovely Cola
Lovepoot
+Loverboy
Loveskillin
Lovexdragon
Lovey
+Loveyan823
+Low Alched
+Low Chief
+LowBaller
LowKeyPickle
+LowLifes
+LowPines
LowPower
+LowRunEnergy
+Lowanse
Lowballz
Lowercase
Lowery
+Lowfield19
LowkeyBallin
Lowlander
+Lowlife121
Lowlux
Lowner
+Lowrey73
+Lowstar1
Lowtempterps
Lowy
+LoxoJ
+Loxtos
+Loyal2pvm
Loyalcaptain
+Loyd Nichols
Loze
+Lpfan
Lrauq
+Lrian
+Lric Eotter
Lron
Lronic
+Ls4
LsummerC
+Lsv
+Lt Burgers
+Lt Golpar II
+Lt Mantas
+Lt Purekarys
+Lt-Iron-Lt6
LtCastiel
LtJan
+LtRemigijus
Lt_Torch
+Ltfreggin
+Ltk Iron
Ltman42
Ltmf
+Ltufighterlt
+Lu Diabla
+Lu be
+Lu0nto
+LuauKing
+Lub
Lub3edUp
+Lubbz
Lubed
LubinLen
+Lubos
+Lubosek
Luc4rio
LucSynthesis
Luca
+Lucaemar
+LucarioLVL X
Lucas
+Lucas Solo
+Lucas1192
Lucasmelo11
Luccaa
Lucho
Luchtloper
+Luciah
Lucid
+Lucid Cynic
+Lucid Dream
+Lucid Josh
+Lucid Meme
+Lucid Truths
+LucidFeels
+LucidPie
Lucidcr
Lucidfever
LucidityX
Lucie SkyDia
+Lucifenrir
+Lucifer v2
Lucifer06
+Lucifer4Real
Lucifer_link
Luciifer
Lucil
+Lucina
+Lucipur
Lucivert
Luck
+Luck Lost
+Luck Voltla
LuckRunsAlt
+Luckario
Luckd0ut
Luckeh
Lucker
LuckieStein
Luckless
Luckpvm
+Luckscaper
Lucky
+Lucky Arian
+Lucky B Boss
+Lucky Bambam
+Lucky Baws
+Lucky Cash
+Lucky Chance
+Lucky Clover
+Lucky Clown
+Lucky Duck
+Lucky Greg
+Lucky Kev
+Lucky Link
+Lucky Lombax
Lucky Lukey
+Lucky Mofo
+Lucky Rabbit
+Lucky Sofa
+Lucky Yoru
+Lucky skrue
+Lucky when
LuckyAce
LuckyDog
+LuckyDog x
LuckyEmerald
LuckyKroketa
LuckyLackey
LuckyMatch
+LuckyNrSeven
+LuckyVic
Luckybamboo1
Luckynuts
Luckyxx
+LucoUK
Lucyfer22
+Luczzs
+Lud a
+Luda-Dan
Luderan
Ludo
+Ludo Sand3rs
Ludomo
+Lueis
+Lueke
LuffyAce
LuffyDMonkey
Lufidius
Lufue
+Lug RS
+Lugal Ki En
+LugiaWaifu
Luglys
Lugs
Luider
Luigihbk
Luis
+Luis Anico
+Luis Antonio
+Luis Dk
LuisFarm
+Luis_Vzla
Luka
LukaBrasi
Lukas
+LukasFlux
Lukaz
Luke
+Luke S
Luke3
LukeOS
Lukeee
LukefonFabre
+Lukeh
Lukeicth
+Lukesfish
LuketheDM
Lukey294
+LukeyUK
Lukezz
LukiOne
Lukiekuipie
+Lukio W
Lukiss
Lukoo911
Lukse
Lukytisz
+Lulani 13
+Lulla
Lullie
+LuluTheCat
+Luluca
Lulucifer
+Lumber Yak
LumberStevo
+Lumbidge
Lumbo
Lumby
+LumbyCalled
LumbyCastle
+Lumbys Waits
Lumiaris
Lumifrost
Lumimies
+Luminatti
+Lumm1475
Lummer
Lumo
+LumpiaFan69
+Lumpqua
+LumpsMcgooey
Luna
+Luna Koneko
+Luna Lucero
+Luna Mexi
Lunacy
+Lunaec
+Lunamarie
Lunar
+Lunar Haze
+Lunar Lotus
+Lunar Tear
+Lunar Tones
+Lunar Ursa
LunarDemon99
LunarEquinox
LunarSC2
+LunarTheCat
LunarTigerr
+Lunarann
+Lunarcrow614
Lunardini
Lunarism
+Lunarmoat638
Lunate
Lunati
Lunaticmo1
Lunatric
+Lunaverse
Lunch
+LunchboxLLC
Lunchtime007
Lund
LundXCV
Lundh
Luneasa
LuneyTunez
+LungTied
+Luni
+Luniaxis
Lunie
+Lunier
Lunis
Lunizzzz
+Lunytic
+Luonteri
Luonto
Lupah
Luper
+Lupi
+Lupo
+Lupuloid
Lure2G
+Lurjus
LurkinTurd
+Luru
+Lush Vibes
Lusitropy
Luskidoo
-Lust
+Lussen1
+Lustwaffle
Lusu
LusyTheGoat
Lutha
Luthien
+Luthien T2
Luthors
Luthstorm
Lutinrouge
Luucy
Luud
-Luuk420
Luukie
+Luuloterve
Luuseri
+Luuuseri
Luuuuna
Luuwana
+Luv2spuj
+Luver Focker
Luvholic
Luviii
+Luwucy
+Lux Please
Lux211
Lux7thSaga
Luxatio
+Luxeo
+Luxilie
Luxire
+Luxoul
+Luxumine
Luxury
+Luya
Luzu
+Lv ranger
+Lv 5 Psyduck
+Lv Camo
Lv100
+Lv100 Raichu
+Lv5 Treecko
LvI3stak3
+Lv_1_Mew
+Lvcretivs
+Lvl 1
+Lvl 3 Nub20
+Lvl 99 Goon
Lvl100cheese
Lvl30Ditto
Lvl99
Lvl99Docking
LvlUpUrself
+Lvls Up
Lvqquvs
+Lwy
Lx1I
+Lxbe
+Lxfleur
+Lxnes
+Lycix
+Lycoe
Lycstoned
Lyct
LydeZGrod
+Lyderis
Lydia
+Lydia Kenney
Lydmix
+Lyfe Tyme
Lyin
+Lyin Eyes
+Lyke625
+Lyks
+Lymaks
+Lymez
+LynX ZrLeX
Lyna
Lynamet
+Lynching Leo
Lyngo
+Lyni
Lynics
Lynx
+Lynx Jitan
+Lynx Tiger
+Lynx Titan
LynxTitan
Lynxes
+Lynxy
LyraLyraLyra
+Lyrad002
Lyrich
Lyricidal
+Lyrilusc
Lyron
Lysandra
+Lysdexic4986
Lyse
+Lysmann
+Lyyli PL
+Lyzu
Lzin
+Lzs
+M A G 3
+M 1 KE
+M 3 3 P
+M 4 T R I X
+M 8 A 1
+M A D O X
+M A D Storm
+M A T E J
+M A X O U T
+M A X PAYNE
+M B Z
+M E H I S
+M E L D O
+M E T R O
+M E X I
+M I K B A R
M I T H O X
+M I U
M I Z Z O U
+M INDGAME
+M Itty
+M K J
+M O B I L 3
+M O C 0
+M O C H
+M O ID O K
+M R NaCl
+M Super Buu
+M T C
+M U D K l P
+M X G P
+M a V 3 Rick
+M a d Shrumn
+M a k a i
+M age
+M aikel
+M ak0
+M ammoth
+M ana
+M ankDemes
+M anu
+M aples
+M arcel
+M arquim
+M artin
+M ask
+M athis
+M axou
+M azzz
+M c
+M elz
+M enzy
+M ga
+M gh
+M i t c h y
+M i y a
+M ikasa
+M ike
+M imik
+M int
+M itchel
+M ittens
+M l Q Q
+M merz poL9
+M o C e
+M o r t e n
+M oist
+M onkfish
+M orytania
+M the Maxed
+M ugger
+M ulas
+M urphy 2
+M usashi
+M-theory
+M00CHIE
+M00SE M00SE
+M01
M0IST
+M0IST B0X
M0LE
M0NALISA
+M0NEYM1TCH3
+M0NST3R1PP3R
M0ON
M0ONCAKES
+M0R TEN
M0RG0TH
M0RGE
+M0SS3Y
+M0ST D0PE
+M0hannad
M0ist
+M0ist Midget
+M0ney Swag
+M0nk3y DLufy
+M0nke y
+M0nkey15
M0nsterTuk
+M0obs
+M0resheth
M0rningstr
+M0use
M11CK
+M11ka
M1911A1
+M1GU
M1NG3_GOO
+M1TTLE
+M1ch
M1gos
M1ke50
+M1ksu
+M1nd Master
+M1ntberry C
+M1ss Di0r
+M1stak3nly
+M26
+M3 L
M30W
M30z
+M3GAD0UCH3
M3L10DA5
M3MEL0RXD
+M3MoRY
M3X1CO
M3XICO
+M3ch4nics
M3ll3
M3lllll
M3lviin
+M3ntal
M3rking
+M3ry
+M3t4l1n1S
M40A
M4D399
+M4g3
+M4g4z
M4gnus666
M4k3d0
M4tte
M4xt0R
+M5
+M52
M523
+M6 Mill
+M6N
+M7J
+M7TT
M855A1
M8NoFreebies
M8TT
+MA N E
MAAAAK
+MAAGES
MACKOGNEUR
MADLADz
MADRNGJACK
+MAESTR0FRESH
MAFKINCHAMP
MAGA
MAGA1292011
@@ -14074,142 +29248,275 @@ MANT4S
MARCOPOLO
MARLB0RO
MARMlTAO
+MAS0N
MASKED
+MASSGAINER32
+MASTER DREAM
+MASTER J0KER
MATUTVlTTUUN
MAURERA79
MAUROPICOTTO
MAX3D
MAXABILITY
+MAXED PINOY
+MAXXEDDADDY
+MAX_HER0X
+MAXlME
MAlNEVENT
MAlNTENANCE
MC Cheep
+MC catheter
MCBURNOUT
MCHammered
MCKenny91
+MCSIZZLE
+MCmattt
+MD7
+MD96
+MDE Presents
MDPS
+MDaher
+MDucks
+MEAT G0D
+MEAT HEAD36
MEGATRON
MEK4KK4KK4KK
MELAN00MA
MELT
METM0NKEY
+METR0lD
+METS0
+MEV4NS
MF DC
+MF MORTEN
+MF SofaKing
+MF TEE
+MFE
+MFKU
+MFLI
MFSTEVE
+MG5
MGFS
+MGKRevs
+MGM WAY
+MGreengrass
+MH Therapist
+MHA C
+MHBC
+MHS
MIDAs
MILFmauler
MILSHAKE
MINH
+MISOGl
MISSYGAMlNG
MIST
MITCHY
MIX0R
MJ23
+MJKaboose2
+MJT
MK-HARDSTYLE
+MK6R
MKAM
+MLB
+MLTEEZY
+MLaidman
+MMMahogany
+MMORPGenius
MMTera
MMitchh
+MMtheMachine
+MOABDADDY
MOMHUNTER666
MON5TER
+MOODSWlNGS
MOOSEM3AT
MOTM
MP17
+MP9
+MPB
+MR JOHN WlCK
+MR LETHAL2u
+MR REET
+MR TMR
MR UDZ
+MR556A1
MRButter
+MRC Tugboat
MRGAMEZ
MRHD
+MRLARGE
+MRM
MRPlZZAPRIZE
MRWHlTE
MR_MAITO
+MSPaint64
+MSceneFF
MSpacePotato
MStarkz
MTBMB
+MTPETE
+MTV CRlBS
+MTXP
MUISSS911
MULHERndaEXP
MUMM0
MURMELl
MUSK
MUSK0KA
+MUSUMUMM
MUZAMMIL
+MV Flow
+MV Welshy
MVIII
+MVKirby
+MVP HERO
+MVP Mahomes
MVRDA
MVTIASD
MWwarzone
+MY L U N A
+MYRSKYVIITTA
MYTHICROYXLE
M_Sariol
+Ma Band
+Ma Dood
+Ma Titi
+Ma t t h e w
+Ma5onx
Ma7e
+MaCoMb
MaHeelsHurt
MaJeShTic
MaQtPie
MaX662
+MaXam00se
+MaXeDSani
+MaXx0wnage
Maacc
+Maake88
Maanman
Maasegyr
+Maax2
+Maaxiking
Maazako
+Mabbbs
Mabbs
Mabel
MableLake
Maboe
+Mac Diver
+Mac Donald
+Mac Garfield
+MacDuff
MacFredrik
+MacFredrique
MacMillers
MacMoblins
+MacRae
MacSandwich
MacTheRipper
Maca
+MacaFazoL
Macabre
+Macaron
+Macaroni 73
Macaronni5
MaccaM
+Maccaroni
Macduffe
+Mace Windu
Macedo
+Mach Sigma
+MachV2
Machado
Machfredy
+Machine Girl
+MachoTimo
Machtig
-Machtigegay
+Machtige
Machtigeman
Machtigemeid
Machto
Mack
+Mack x
+MackD
+Mackadactyl
Mackadee
Mackdizzle99
Mackeo
+Mackerel Sky
+Mackerels
MackhNL
+MacksEntropy
MacksIsland
+Maclairin123
Maclas
Macoinho
Macre demia
MacreedyLove
Macromage1
+Mad Dog Eris
+Mad Flavour
+Mad Krampus
+Mad Max 20
+Mad Papper
+Mad Suss
+Mad Vlad
+Mad Watson
+Mad X
+Mad arrows12
+Mad as heck
MadBoy20
+MadBruh
+MadCanadian
+MadChemist8
MadD0g11
+MadD0gL4d69
MadDogged
+MadJeffs
MadKingMikey
MadMaxMan
+MadPubes
MadSnowman23
MadaRook
Madaddam
Madam305
+Madarah
+Madd177
MaddAntelope
+MaddMann5
Maddape
Madddiieee
Madden
+Maddie Baddy
Maddogjr
Maddux
Maddy
+Made of Sand
Made4Slaying
MadeInAfrica
+MadeYouClick
MadeinTYO
Madeiraa
+Madeleine
Madeweine
Madhu
-Madi69
Madlaina
Madmaxie
+Madness Max
+Madodee
Madona
+Madra
Madrock01
MadsG
Madsenn
Madsermad
+Madshatter71
Madskillz756
Madslasher30
+Madslax2
Madsosaur
Madula
Madvantage
@@ -14219,49 +29526,83 @@ Madysen
Madza
Madzilla
Maeda
+Maegera
Maela
MaerlinTaz
Maertynas
Maester
+Maester Trea
Maestro
+Maestro Heil
+Maestro1
+Mafia-BP
MafiaMan
MafiosiDad
Mafooma
Mag1c
Mag1cJohnny
Mag1c_W33d
+Maga Kahn
Magalator
+Magani C
Magawie
Magc
Mage
+Mage Eh
+Mage Kume
+Mage N Skil
Mage7master7
MageFish
MageHax
-Magepkmega69
+MagePriece
+Mager
Magerold
Magers
Mages350
+Magestus
+Magethirst
Magezi
+Magggorical
+Magginator
Maggot
MagiTurtle
Magic
+Magic Bonus
+Magic Clicks
+Magic Mackee
+Magic Moose
+Magic Rino
+Magic Tree
+Magic Wand
+Magic fTail
MagicAppel
+MagicMemorys
MagicPanda91
MagicSchoBus
MagicSilver
Magic_Elmo1
Magical
MagicalRuby
+Magican
Magicarp
Magicbox
Magicdefence
Magicken
+Magicx
+Magija
+Magik
Magik773
Magikilo
Magiok
+Magisteerial
+Maglet
Magma
+Magnaboy
+Magnati
Magnautism
Magnesium
+Magnesium J
+MagnesiumIV
Magneticism
Magnetite
Magni99
@@ -14269,99 +29610,217 @@ Magnifice
Magnilo
Magnis
Magnu
+Magnus Gram
Magnusungam
+Mago
+Magsd1
Maguneru
+Maguro
Magus
+MagusChum
Magyk
+Magzem
+Mah Jae
+Mah Jong
MahSeed
Mahalusa
Mahanimal
+Mahe
Mahkelroy
+Mahler
+Mahmoud
Mahogany
+Mahomes
+Mahonoken
Mahtitykki
Mahzius
+Mahzka
+Mai kel
+Maiba
+Maide
+Maidenheir
+Maignansdead
+Maikel J
Maikhol
+MailTime
Mailor
Main
+Main 3s
+Main Cactus
+Main Ginger
+Main J0urney
+Main Mynt
+Main Natey
+Main Pando
+Main Path
+Main Product
+Main Twiddle
+Main Wario
MainCharlie
+MainCoach
+MainCringe
+MainDong
MainForever
+MainHamendex
MainHolm
+MainJ
+MainMan_Mads
MainNudley
MainPurp
MainSt
MainStand
+MainStreamx
MainWabbit
Maind
Maindeer
+MaineDeno
+Mainline
Mainly
+Mainly Pure
+Mainly Ricky
Mains
+Mainslet
+Mainuru
Mainz
+Mainz Gainz3
Mair
+Mair017
Maisa
+Maisa Torppa
Maisteri
+MaitoRimpula
+Maix
+Maizon
Maizpilao01
+MajMischief
MajQ
Majakanvahti
Majcew
+Majcew 2
Majehjk
+Majer4
+Majin Buuwu
+Majinbooo
Majinjon
+Majki
Majokko
Majooty
Major
+Major Damien
+Major Gains
+MajorEar
MajorMammoth
+MajorObesity
MajorOwnz
MajorSnizz
+Majora
MajoraMasked
+Majoras WRLD
Majzako7
+Maka
+Maka2201
+Makagago
Makaule
Makaveli
+Makaveli I
+Makaveli II
+Makaveli l
Make
+Make A Pile
Make Carrion
MakeItStack
+MakeMeKing
MakeNotes
Makeboy
+Makeeesful
Maken
+Maken Gainz
MakenMakkara
+Makenna
+Makhachev
+Maki
Makilake
+MakinExcuses
Makiverem
Makk
Makke
Makkeii
+Makker Benja
+Makker Trane
Makkiavelli
+Mako Nox
+Makoea
+Maks Cape
+Maksimit
+Maksoinvelat
Maksuamet
+Maksui
Maksukka
+Makzd
MalaLechita
+Malachai
Maladec
Maladiec
+Malagah
Malbec
Malboulgea
+Malcz
Malding
Male
Maleurous
Malfoy
+Malhavic
+Mali RS
MalibuMan96
Malibuux
+Malignant00
Malik
Malinerix
+Malitiae
+Malkav
Mall
+Mall Gang
+MallbuRo
Malleus
Malli
+Mallieero69
Malloc
+Mallomar
Malmi
Malmot
+Malomalo
+Maloo
Malqy
Malse
Malt
+Maltapkiller
Malteadita
+Malter
+Malterz
Malucoftw
+Malurian283
Malvian
+Malvidus
Malvoliuus
Malware
Mamachii
+Mamas Meat
Mamba
+Mambaaaaaa
MambasWRLD
+Mambo No5
+Mamboita
Mammad
+Mamoul
Mamupatja
+Man Asian
+Man Bag
+Man Killa77
+Man Kip
+Man Raccoon
+Man Throater
+Man gos
+Man-Yak
ManBearPiggy
ManGoBzzzt
ManOfGold
@@ -14371,20 +29830,30 @@ ManWT
ManWoox
Manaburna
Manafont
+Manakiel
ManakuraJP
Manantti123
Manantti321
Manardog
Manawatu
+Manby
+Mancandy
+Manchest
Mancino
Mancunion92
Mand1ng0
Mandelbrot
+ManderSala
+MandoCheese
Mandor1
Mandred
Mandulorian
Mane
Manegaming
+Maneirinho
+Manelzera
+Maneter56
+Manevolent
Manfa
MangJoe
MangeMeister
@@ -14392,96 +29861,179 @@ Mangle
Mangled
Manglican
Mango
+Mango Monkey
+Mango Rat
+Mango Season
Mango10
Mango1997
+Mangobnana
+Mangostangos
Manhoos
Manhunt
+ManiacBison
+ManicNode
ManicRS
Maniek
Manila
Maniwani
+Manju
Manke
Mankitten
+Manlanter
Manletti
Manly
Mannekeuh
+Manni Penny
Mannie
+Mannix270
Mannjpip
+Mannnekala
Mannowrath
+Manny21
+Manokin
Manor
+Manorvic
MansaMusa
Manser2300
Mansup5
+Manswarm
Manswers
Manta
+Manta Wray2
+Mantarayo
MantasA
+Mantaslocoo
Mantelio8
+ManteliseXe
+Manthe
MantorokDIA
+Mantoshka
Manttt
Manuelh3
Manumatti
+Manx_Scaper
Many
+Many Walrus
Manyi
Manyvids
ManzGotViewz
Manzo
+Maose
+Maozn
+Mapanza1
Maple
+Maple Jay
+MaplePoutine
+MapleRoyals
+MapledOaf
Maplejuana
Mapletech
Mapne
Mappl1n
+Mappzz
Mar0e
Mar782
Mara
+Maracruz
Maradonaa
Marassa
Marathonius
Maraud
Marblez
Marc
+Marc NL
+Marc Paul
+Marc Spac
MarcVinicius
Marchmello
Marchuk
+Marcia Ress
Marcikarp
+Marcilicious
+Marcius 7
+Marco225
+Marco7k
Marcoli64
+Marcoo
Marcooow
+Marcos Vibe
+Marcski
+Marcussius
Mardiie
Marducas
+Mardy O G
Mardzz
Mare
+Marenki
+Maret
Marg3
Margana
Marganer
+Margiella
Margins
+Margodx
+Margon
+Margonite Xu
+Marguana
Marheim
Mari
Marianas
+Mariano 1
+Mariasonic
+Marib
+Marijuano
+Marikadere
Marines
Marinez
+Mario Bros
+Mario Goatse
+MarioKartDD
MarioTennis
Marioh
MarioisKewl
+Marioman
Marioneta
MariosPeach
+Maritime
+Maritozzo
+Marjapuuro
+Marjatta
+Mark Pledger
+Mark Swenson
+Mark-777
+Mark-Zuk
+Mark0vDeath
Mark12387
Mark1ta
+Mark5Barki
MarkBuns
+MarkJongejan
Markald87
Marke
Markerr
+MarkhamON
Markie994
Markipedia
+Markku
Marklyft
MarkoOSRS
Markop100
Markovia64
+Marks Main
+Marks Phone
+Marks lron
Markus
+Markus Stier
+Marky428
Marlbrozo
Marleth
Marleyy
Marlin1993
+Marlon0817
MarlonisGod
+Marlooo
Marlopped
+Marluxia Pwn
Marmita99
Marmp
Marms
@@ -14491,40 +30043,66 @@ Marni
Maro202
MaroO
Maroj
+Marokkaan
Marokkaantje
+Maroko111
Maroon5
Marpollo
MarquiseDmnd
MarrCuzz
+Marrcy
+Marreldil
+Marrer
Married
Marrio
+Marrius
Marro75
Marsal
Marsalkka
+Marsel
Marsg
Marsgl
+Marsh Marrow
Marsha
Marshal
Marshall1
+Marshmont
Marshyy
MarskiLark
Marsmash
+Marsovec
+Marstead
+Marswatt
Mart0103
Marten
+Marten x
MarthProMonk
Martial
+MartianLynch
+Martiba
+Martiiian
+Martijn
Martika
Martin
+Martin 2007
MartinGameTV
+Martindeq
Martinjsh
Martinkyle20
Martins
Martinside
+Martip
MartnShkreli
+Marty
+Marty150
MartyG
MartynMage
+Martyr Main
+Maruna
Marv
Marvelli
+Marvick
+Marvins Dad
Marwan
Marwin
MarxRoux
@@ -14532,16 +30110,22 @@ MarxTheMyth
Mary j4n3
Maryj
Maryland
+Marylandd
Marzcorw
+Marzeo
Marzhy
+Masaca
Masacre599
+Masade
Masago
Masakado
Masandalf
Maschok
Masconomet
+MaseLitt
Maserati
Mash
+MashedOP
Mashimarq
Mashiwo
Masin
@@ -14549,31 +30133,57 @@ Masiron
Maskedpump
Maskin
Masochisttwo
+Mason OSRS
MasonJarr
Masonatorr
Masonitte
+Masons Dong
+Masoo
MasquedMan
+Masryy
+Massa
+Massacre Fc
+MassageMan97
Massif
+Massimo130
Massinissa7
Massive
+Massive Noob
+MassiveJonas
Masss
Massterduel
+Mast3rOogway
MastaHeff
Master
+Master Bakes
+Master Bogs
+Master Byro
+Master Garni
+Master Jos
+Master M V
+Master Riven
+Master Skizz
+Master Vates
MasterB1994
+MasterBarter
MasterBlazee
MasterDragxn
MasterGrogu
MasterKiefff
+MasterMake
+MasterMasa2
MasterNeigh
MasterOzzy
+MasterPanda
MasterPookie
MasterRooshi
+MasterSlayrr
MasterThresh
MasterX
Masteragota
Masterbihno
Mastercat
+Masterdemon4
Masterflick
Masteri
MasteriMori
@@ -14581,43 +30191,79 @@ Masterkindem
Masterrgod
Mastervile
Mastirida
+Masturbeerke
+Masurda
Masuro
Masylvain
+Mat 1
+Mat Jacko
+Mat Share
+Mat thew11
+Matchbox 20
Mate
Matematikk
+Materium
Mateusz1210
Math
+Math Is Fun
+Math ematic
MathVibes
Mathcore
+Mathematics
Matheor
Mathers
Mathers1996
Mathew
Mathias
+Mathias Nemo
Mathisse
Mathmic
Matholemeu
+Mathrotus
Matieus
Matix
+Matkijanarhi
Matmo
+Mato Seihei
MatoPotato
Matoaca
Matrak
+Matreex
Matrix
Matrixpachi
Matruusi2
Mats
+Matsu
Matsuri
Matsyir
Matt
+Matt 162
+Matt Bman
+Matt CFK
+Matt Cat
+Matt GIM
+Matt K
+Matt Lad
+Matt Mo
+Matt Slay
+Matt Smash
+Matt V
+Matt Wy
+Matt1494
MattLeedz
MattMattBro
+MattNDew
MattRanger
MattRoux
MattSeal7
+MattStyle
+MattWallet
Mattaclysmic
+Mattakuda
Mattam66
+Mattaroo
Mattec
+Matteos1
MatterOfTime
Matternot
Mattex
@@ -14627,30 +30273,52 @@ MatthewDK
MatthewRS
Matthewwww
Matthidan
+Matthis
+Mattias
Mattice
+Mattie osrs
Mattie43
-Mattitude420
+Mattj
Mattniss
Matto
+Mattor
Mattorel
Mattrate
Matts
+Matts RNG
Mattsbro
Matttbob
Matttt
+Mattty
+Mattus50
Mattx1
Matty
+Matty A
Matty Gibbs
+Matty Ic3
+Matty467
+MattyChasee
+MattyLight91
+MattyNW
+Mattych
Mattyflight
Mattys
+Mattyz6
+Matu btw
Matuba
Mature
Matwo
+Matygoyo
Matz
+Maub1
+Maucca
Mauddibb
Maui
MauiBeach
+MauiMallard
Mauidude
+Maukas
+Maukka
MaukuMaija
Maul 0n Top
Mauler4500
@@ -14660,81 +30328,234 @@ Mauna
Mauno
Mauricio555
Maury
+Mauvayy
+Mauvier
+Mavdagin
Mavel
Maven
Maver
Maveric
Maverrick
+MavicAir
+Maviie
Mawch
Maween
+Mawie
+Mawlocke
+Mawn
+Mawsen
+Max 4 Mikey
+Max Ape
+Max Attacken
+Max BD
+Max Blacks
+Max Botter
+Max Cape
+Max Deiron
+Max Eff
+Max Entropy
+Max Gadget
+Max Gav
+Max Here4Pet
+Max House
+Max Karma
+Max Klett
+Max Methi
+Max NoLyfer
+Max O7
+Max Obi
+Max Pkr
+Max Puffs
+Max Re3oo
+Max Relax
+Max Scape
+Max Snek
+Max Temper
+Max The Hero
+Max Tilting
+Max Tonks
+Max Vandal
+Max Weezy
+Max Wotif
+Max XP
+Max Zack
+Max Zeus
+Max btw
+Max cape 420
+Max hits
+Max killz6
+Max plus
+Max uwu
+MaxAchoo
+MaxAnarchy
MaxBTW
+MaxBadAss
+MaxBear
MaxHare
MaxHaus
+MaxHomieJose
MaxIgnorance
+MaxIrl
+MaxKhalifa
+MaxMainJake
+MaxMuffin
MaxNeander
MaxSAVAGERY
MaxTix
MaxTurbo
+Maxchar
+Maxd
Maxe2968
Maxeado
Maxed
+Maxed Beans
+Maxed Code
+Maxed Egirl
+Maxed Emm
+Maxed Eric
+Maxed Groot
+Maxed Hippo
+Maxed II3en
+Maxed Jeff
+Maxed Kiraly
+Maxed Loser
+Maxed M0bile
+Maxed MVP
+Maxed Masak
+Maxed Newfie
+Maxed POH
+Maxed Phells
+Maxed Rat
+Maxed Rob
+Maxed Scaper
+Maxed Spyike
+Maxed Total
+Maxed Twice
+Maxed Velho
+Maxed Whip
+Maxed Zeb
+Maxed Zuk
+Maxed osrs
+Maxed when
+MaxedActuary
+MaxedBruh
+MaxedBurnout
+MaxedButPoor
+MaxedFrog
MaxedIn2074
+MaxedInDa6ix
MaxedMain
MaxedMax751
MaxedMike
+MaxedMobile
+MaxedNbored
MaxedPleb
+MaxedRepel
MaxedYP
Maxedlegacy
+Maxedtoasty
+Maxedwell
Maxell
Maxerder
Maxiboy4a9
+Maxidy
Maxime5100
Maximonster
Maximum
+Maximum Tier
Maximumist
+MaximusAM
+Maxinator87
+Maxing zzz
+MaxingMyMain
+MaxingSucked
+Maxingthis
Maxiorek1200
+Maxisbaws
+Maxisen
+Maxitaxi777
Maxiu
Maxjuhhhh19
+Maxkenzi
Maxmemix
Maxnominus
Maxo
+MaxoBlasto
+Maxoou
+Maxpappy
Maxpro
Maxst
Maxstalker67
+Maxstatz
+MaxtanosXD
Maxwall
Maxx
+Maxx y
+Maxxed Alt
+Maxxed Dusty
+Maxxed Trash
MaxxedNoob
+Maxzet
MayanFuror
+Mayate
+Maybe CIA
+Maybe Idiot
+Maybe Jeff
+Maybe Shady
MaybeMason
MaybeMitch
Maybemnam
Maybez
+Maybizzle
Maybon
Maydole
+Mayerdynn
+Mayhaps
Mayhem
+Mayhem Maker
MayhemMakers
-MayhemOSRS
Mayl
Maylive
+Mayo
+MayoForFunds
Mayonaz
Mayor
+Mayor Jiwana
Maytona
+Mayuri
+Mayushii
Mayvex
Mayweather
Maz0n1k
Maza
Mazala
+Mazande
Mazariner
+Mazauu
+Mazda168
+Mazdan
+Mazdaspeeed3
+Mazdraith
+Maze
+Maze of Iron
+Mazel613
Mazersyy
Mazhar
Mazlol
+Mazmarazor
Mazoni
Mazpls
Mazta
Mazuma
+Mazz y
Mazzacre
+Mbox
Mbyoo
+Mc Dragans
+Mc Florry
+Mc Red
McAlakazam
+McAsssBlast
McBurn
McCheddabomb
McChimkenGOD
@@ -14742,206 +30563,402 @@ McChubbin
McCllin
McConaughey
McCreJ
+McCringle
McCune
McDanky42O
McDizzle15
McDongles
+McDoodle_21
McDouble
McFantasy
McFizzleDady
+McFly93
+McFozzar
McGooser
+McGorm
McGregor60gs
McGruff
+McHammock
McIllu
+McIronLeech
+McKennon
+McKerma
+McLOVlN
+McLaeNz
McLeaNz
+McLemore
+McLovin707
+McLowry
McMeekin
McMillan
McNeal
+McNoob10
McNoodle
+McNorm
McNugget
McP0P0
McQuaker
McQueensy
McRibs
+McRibs Back
+McRip
+McSchloogan
+McShrubbery
McSomf
+McSplitter
McStarley
McSuperNoob
McTaskupillu
McThomzie
+McVittties
+McWeaksauce
+Mcards
Mcbelsito
Mcberra
Mcdally
Mcgingerpony
+Mcgregorini
Mckelvie
Mckinconn
Mclaren88
+Mcneill
Mcpatrice12
Mcpielover
Mcturdson
Mcwaffle1
+Mcy
+Mderg
+Mdub Suhh
Mdzvwz
+Me Acoustic
+Me Ca
+Me Dead
+Me No Brains
+Me Woody
+Me and Jr
+Me lvin
+Me phisto
Me3lem
+MeBigPoppa
+MeBlast
MeMillionthD
MeThudZ
+MeTwo
MeadowFall
Meadows
MeagerSkills
+Meals
Mean
+Mean Crusher
+Mean Street
Meano
+MeanrangerFE
Meap
Mearm
+Mears
Measles
Meat
+Meat Rat
+Meat Shank
+Meats
Meatspot
MeatyLoaf
+Meauner
+Mebo
Mech
+MechantBozzo
+Mechaodin
Mechelen
+Mechvengance
+Mecidon
Mecone
Mectofion
+Meddler
+Meddlr
+Medi Mobile
+Medi i
+Medi ocre
+Medical Herb
Medicate
Medicides
Medicinal
+Medicore
+Medievh
MediocreMatt
MediocreRye
MediocreTime
Medispensary
Meditations
+Medium Cloo
+Medler
Medoletics
Medon
Medorable
Medusa228
MedwayDragon
MeechIsCute
+Meechy Dark
Meeeseek
Meelays
+MeenBeans
+MeepBeepMeep
+Meeran
Meerca
+Meerkz
Mees126
MeesKees
MeetMyMeat
+Meetti
Meew
+Meewerp
+Mefaustofele
+Mefco
Meftah
Mefy
+Meg 3
Mega
+Mega Butt
+Mega Farce
+Mega Kyle
+Mega Mort
+Mega konn
MegaAmpharos
+MegaDoris
MegaDrive
MegaMustarn
MegaNaziHatr
Megabyte6
Megadwarf47
Megalo
+Megalodont
+Megamanyo
Megamind
+Megamind Jr
Megans
Megaronii
+Megastoffe
+Megatortle
Megatrax
+Megis
Megnificent
+Megpan
Megumin
Megustio
+Meh Noob
+Mehrunes
Mehts
Mehuelin
+Mehuo
MeideC94_BB
+Meido
Mein lron
+Meinkul
+Meiousei
+Meister Sho
+Meiyo
+Mek
+Mekaanik
Meklo
Meksa
+Mel Meow
+Mel Yakutia
+Mel btw
+Melanderr
Melanoma
+Melayna
+Melc0n
Melchuzz
Melcoor
Meldianx
+Meldynoir
Melee
Melee_Range
+Meleny
Meleven
Melhoop
+Meliodas420
+Meliodin
Melisma
Melk
+Melkin
Melktietje
+Melkzuurtje
Mellakka
Melleruds
Melling
+Mello Gello
+Mello Yello
+Mellodynamic
+Mellow Jingy
+Mellow Tones
Mellow6
MellowSoul
MellowTokes
Melly
+Melly YNW
Melo
+Melodicolt
Meloenschijf
+Melongrab
+Melotoninn
Melpan
+MeltedCash
Meltman
Meltok
+Meltryllis
+Melvin dew
+MelvinTheOK
MemberBerry
Memberlist
Meme
-Meme420Dank
+Meme Loord
+MemeDoge111
+MemeVendor
+Memedalorian
+Memem3
Memeologist
Memeshake
+Memmor
Memory
MemoryCard
MemoryWorm
-MenDick
+Memphis lol
+MemryLoss
Mena
Menap
Menaza
Mend
+Mendicant
Mendieton
+Mendokusai
+Mendota
Meneer
+Meneer Nijn
+Menesus
Menetoeihin
+Menial Luck
+Mennie
Menrey
+Mensphysique
+Mental Coach
Mental4Metal
MentalAbacus
Mentally Moo
Mentalmissy
+Mentoes
+Menyu
Menza
+Menzola
+Meoooow
+Meow Ghost
+Meow Im Hawk
+Meow Softly
MeowKiki
Meowed
+Meowgi
+Meowler
Meowmagic
+Meowrijuana
+Meowskeys
Meowtheduck
+Meowzer7
+Mepiff
+Mepn
Mepthadr0ne
Mer Train
+Merami fan
Meramon
+Meraxus
+Merbz
+Merc-Raa
+Merc_Lobo
+Mercedes F1
+Mercenary V
Merces
+Merch
MerchantUrch
+MerciTwingo
Merciulago
+Mercphobia
Mercules
+Mercury Owl
Mercury15
Mercy
+Mercy Osrs
+MercyfulFate
Mercys
+Merderr
+Mergician
Meric
Meridians
+Meris
Merisalu
Merisorax
Merkdalat
+Merke
+Merked Ko
Merksick
Merlin
+Merlin Otter
MerlinMonroe
MerlinPT
Merloc21
Merlucius
+Merlvin
Merricat
Merry
MerryTuesday
+Mersunperse
Merten
Mertguy2p0
Mertiin
+Mertjaars
Mervyn
Meryam
Meryath
Meryl
+MesH3aL
Mesa
+Meshi510
+Meshkot
+Mesin
+Mesmeriize
+Meso cyclone
Meson
+Messaa
Messersmitti
+Messi
Messias
+Messorium
Mestari
+Mestaristick
+Mester B
MesterAbekat
MestreGlados
+Met Promise
MetDoobie
Meta
+Meta Mammoth
+Meta l
+MetaCTF
+MetabolicPro
Metadragon
Metafisico3
Metagel
Metal
+Metal Booty
+Metal Little
+Metal Shad0w
MetalGear
+MetalMaiden3
+Metalest
Metaling
+Metallic Neb
Metallifog
MetallikDeth
Metallproz
Metalproz
+Metamorphic
Metamorphs
Metamushroom
Metaphwoar
@@ -14950,45 +30967,89 @@ Metaxia
Metbol
Meteora
Meteoriitti
+Meth Teeth
+Methal
Methodical
+Methusal
Methylanara
Metix
Metoprolol
Metropolia
+Metsavaras
Metselaar
Metsiq
Metters
+Metukka
+Metzifer
Metzz
+Meulendijks4
+Meune
Meuosh
Meur
+Meuyou
+Mevvz
MewIlicious
+MewPulse
Mewby
+Mewli
Mewllicious
Mewrad
Mewtwo
MewtwoKing
Mewww
+Mex Arkantos
+Mex_N_Flex
Mexicanchild
MexiePie
+Mexlet123
+Mextex
+Meykaa
Meymer
Mez-qt
Mezane
Mezecs
+Mezenburn
Mezeroth
Meziriti
+Mezmereye
+Mezomel
Mezy
Mezzalarry
Mezzito
+Mf Fe
+Mfey
+Mfin Taylor
+MfknNewports
+MgZz
+Mglegolas
+Mgn
+Mhh
+Mi Hoy Minoy
+Mi1os
+Mi3pelst3in
+MiAdidas
MiIIenia
MiIIers
MiQuu
MiTDro
+Mia Kalphite
+Miacon
+Miami 305
+Miami Cane
+Miami Rebels
Miasm
+Miawnation
+Mibs
+Micaso
+Miccolo3
MiceMan
+Micecream
Micella
Mich
+Mich Bz
Mich49
Michael
+Michael4655
Michael67676
MichaelB
MichaelScarn
@@ -15001,104 +31062,203 @@ Michanderma
Michano1992
Michaud
Michel647
+Michelau
+Michelle jnr
Michiel
+Michiel_96
+Michinaki
+Michism
Michlenn
+Michxa
+Michy Man
+MickZagger
Mickael
+MickeyJoe
Mickeyr4nge
Mickul
Mickyy
Micosa
Micro
+Micro Cosmic
+Micro Nerd
+MicroButt420
MicroShrooms
Microdot
+Microgolf
+Microman0000
Micromelo1
+Microo
+Micropyle
+Microsoft22
+Mictie
+Micxyz
+Mid Fade
+Mid Pack
+MidValley
+Midareru
Midas224
Midday
+Middelkerke
Midget
+Midget Bones
+Midget Rave
MidniteGreen
Midori
+Midori Enju
Midside
+Midway16
+Midweeks
+Midwife Dan
Miega
+Miegalius
Miekka
Mier
Mierdapier
Mies
+Mies Lapsi
+Mig Wizard
Migalos
Miggles
Mighty
+Mighty King
+Mighty MP1
+Mighty Milk
+Mighty Oak
+MightyDolt
MightyNemo
MightyOrange
MightyPieBoy
MightySlappe
+Mightyfrosty
Migjiris
Migou
+Migrainelife
Migraines
+MiguelDyson
Miguu
Migy
Migzee
+Mihu o_o
+Miiammi
+Miig
+Miiiild
+Miika
+MiikeyG
Miillls
Miiori
MiissMandii
Miitt
+Mij
+Mijae
+Mijniebelle
Mijuzo
+Mik
+MikTheKing
+Mika Kuwait
+Mika x
+MikaDMM
Mikael
Mikasana
MikazuAugus
Mike
+Mike DIY
+Mike Davis
+Mike Hochuli
+Mike Hunt
+Mike Mike
+Mike Unit
+Mike Xp
+Mike-NL
Mike1
Mike745638
MikeChang
+MikeConleyJR
MikeDangr
MikeDitka
+MikeHasMoobs
MikeM
MikeMontana
MikePunts
+Mike_Oxmaul
Mikebaker417
Mikeey
Mikeje13
MikelCz
Mikemyers31
Mikerockshhh
+Mikeroscape
Mikeroscope
+Mikes1995
Mikethafarm
Mikey
+Mikey B
+Mikey Bai
+Mikey Hey
+Mikey Milk
+Mikey x
Mikey1plate
Mikey47745
+MikeyBigDick
MikeyPat
Mikeygirl94
Mikeyscape
MikeyyG
+Mikezalwinnu
Mikezilla
Mikezzup
+Miki4
Mikilly
Mikki
Mikkon
+Mikouich
Mikrobangine
MiksuBTW
Miksuuu
MikuNakanoxx
+Miky852
Mikzel
+Mil Z
+Mil ky
Mila
+Milagre
Milaz
MildRussia
+Mile Stoner
+Mileage
MilesQPR
+Miley Cyrush
+Milfcocktail
Milfguardian
Milhous
Mili
-Mili696969
+Milico
+Milieu
+Milieudienst
+Milimoowolf
+Miljoona
Milk
+Milk Energy
+Milk Expert
Milk Sausage
+Milk my milk
MilkDaughter
MilkMan227C
MilkOhh
MilkToast
+Milked Cox
Milkki
Milkless
+Milkmate
+Milkn Tiddys
Milkopia
+Milkraze
Milky
MilkyGalaxy
+Mill Reef
Mill385
+Millbrook92
Milleks
+Miller 40
MillerLatte
Millerlite40
Millerlite95
@@ -15107,37 +31267,82 @@ MilliMillzy
Millie
Millionsppl
Millkk
+Milllf
MillsMCR
Millsbay
+MillzyRS
+Milo
+Milo Iced
+Milo Monster
Milol
Milpe
Milsurp
Miltank
Milton
Mim3r
+Mimahh
+Mime Tan
+Mimi20
MimiKe
+Mimic
+Mimori
+Min Botter
+Min XD
Minalinsky
Minar
+Minazuki
Mincene
Mind
+Mind C Crew
+Mind F-ed
+Mind of me
+MindBender84
MindYoStep
Minde
Minde0777
Mindf4ck7
+Mindforce
MindfulGnome
+Mindgrnd
Mindhead
Mindlet
+Mindreaver
+Minds Hunter
Mindys
+Mine is frai
+Miner00
+MinerMvp
Mineraal
+Minerii
Minerock
+Minerock Man
Minesweeperx
+Mineta
+Miney
Minfri
+Minga Minga
Mingdee
+MingeKing
Mingerd
+MinhteaFresh
Mini
+Mini Aurelia
+Mini Biceps
+Mini Chocobo
+Mini Elba
+Mini Hazy
+Mini Jaack
+Mini K
+Mini M
+Mini Misty
+Mini Van
+Mini Xander
+Mini o
MiniBuilt
+MiniBundy04
MiniCoat
MiniDrew
+MiniDuckling
MiniNinjo
MiniSoMini
MiniStew
@@ -15145,96 +31350,201 @@ MiniToast
Minibini
Minidefiant
Miniglass
+Miniguez
Minijazz
Minimaps
+Minimizing
Minimum
Mining
+Mining Runes
+Minioz1
MinipeTh
Minirio
Miniscus
+Minish Gal
+Minisnacks
+Miniuzy
+Minix
Mink
+MinkMiller
Minkyeung
+Minnesoooota
Minnick
Minnie
Minski
Minslee
+Minstrel RS
Mint
+Mint1s
MintEastwood
+MintSoldier
MintWestwood
+Mintaras
Minton
Mintvolcano
+Minty Elder
+Minty Rogue
Minty28
MintyBeaver
MintyBreath
+MintyFreshFe
+Minty_Duos
+Mintyyyy
+Minu Kamp
MinusMinitia
Minyons
Minzy130
+Mio Magic
Mioceen
Mipu
Miqdad
Miqote
Miquuw
Miracle
+Miracle Grip
+Miracle Sun
MiracleToy
Miraculous
MiramiS
+Miran a
+Mirana
Mirari
+Mire
Mirek
+Mirepoix
+Miriage
Mirin_Gloots
Mirith
+Mirize
Mirk
Mirkat
+Mirkoi
+Mirkys
+MiroSemberac
+Miroh
Miroki
Mirthless
Miruki
+Mirxcle
MisClickPro
+MisLilToe
+Misaka 10032
Misakipillow
Misano
+Misantrofia
+Miscellaneum
+Mischief
Miscrint
+Miscy
Misdeal
+MisfitGrinds
Mish
+Mishie x
+Mishigamaa
Mishkkal
Misimo
Miskil
+Misks
MiskySam
Mislabeled
+Miso Horney
Miss
+Miss Amanda
+Miss Amped
+Miss Beth
+Miss Clover
+Miss Inform
+Miss Judging
+Miss Kipatzu
+Miss Kitty
+Miss Nothing
+Miss Piggy
+Miss Tinaa
+MissArcane
MissMockingJ
MissMystique
MissRosie
+MissTowlie
+MissTwistedx
+Missandrist
MissclickGG
+Missel0
Missen
MissinTicks
Missing
MissingRNG
+Mission
+Missu
+Missus
Missvmk
Missy
+Missy Cee
Mista
Mista 1337
+Mista Wright
+MistaPhelps
+MistaWubz
+Mistagainz
Mister
+Mister Chill
+Mister Ex
+Mister Gone
+Mister Jar
+Mister KJ
+Mister Texas
+Mister Tiger
+Mister Xanny
+MisterBass
MisterBensy
+MisterBidoof
MisterCobb
+MisterGurn
MisterJager
+MisterPatego
+MisterStats
MisterTrump
+MisterWhale
+MisteruDongu
Misterwieb1
Mistheos
Misticwok
Mistify
+Mistik Soda
+Mistio
+Misto-Flies
+Mistr Morale
+MistrGiggity
Mistral
+Mistre Apple
+Mistres Pres
Misty
Misty12
Misty7632
Misuryu
Mitabi
Mitch
+Mitch Gate
+Mitch Izle
+Mitch Peters
+Mitch W
MitchHardo
MitchRap
Mitchggee
+Mitchman987
+Mitchs 2nd
+Mitchys Iron
Mith
+Mith Man214
+Mith Scimmy
+MitherHobo
Mithoon
Mithrality
+Mithralking8
+Mithrane
+Mithter T
Mito
Mitologas
+Mitqh
Mittag
MittensRS
Mittum
@@ -15243,18 +31553,26 @@ Mituse
Mitver
Mitzchy
Miuted
+Miuw
Mivo50
+Miwi
+MixBro
MixKit
MixTapeFiya
+Mixes
Mixieg
Mixtape
+Mixun
Mixxush
+Miyags
Miyui
Mizis
Mizo
Mizro
Mizty
+Mizuno Akane
Mizusawa
+Mizz Horror
MizzFrizz
Mizzzura
Mjay
@@ -15265,58 +31583,130 @@ Mk60
MkLeo
Mkiller120
MknlC
+MlCOOL
+MlDGARD
MlKE
+MlKEL
MlLFnCOOKIE
+MlLLlSECOND
MlLO999
+MlXOR
MlZORE
Mlao
+Mlddel1
+Mlopes
Mmgmike24
Mmichel
+Mmkbro
+Mmm Food
+Mmm Mushroom
+Mmm Xp
+MmmBathSalts
+MmmButter
+Mmmmm Bacon
Mmorpg
+Mmu
Mmurder825
+Mmv
Mnemic
+Mnir
MnkyDLufy
+Mnmnnmnm
+Mnts
+Mo Fo Sho
+Mo Hit
+Mo slays
+MoFo Boss
MoIon Iabe
+MoMoYaP1972
MoPhobia
+Moathog63
MoaxD
+Mob Partyhat
+Mob Punch
+Mob Up
+MobILe_Own3R
+Moba All Day
MobbDeep
+MobbyWang
Moberger
Mobiel
Mobile
+Mobile Data
+Mobile Maxin
+Mobile Rng
+Mobile Skiff
+MobilePlayin
+MobileSkeng
+MobileXPOnly
+Mobilekraan
Mobilist
Mobiusyellow
Mobo
Mobs
MobyWoby
Mobz
+Moca Pet
Moccamuna
+Moccies
Moccona
Mochasins
+Mochi Donuts
+Mochyy
+Moe Amien
+Moe Is Back
+Moe You Up
+MoeCipher
+MoeTx
Moeberg
MoedZhafa
+Moedameyer
+Moefugganutz
Moepog
Moer
Moes
+Moestieee
+MoetIkLopen
Mofaer45
MoffelRS
Mofleminator
-Mofo
+Mofo Lt
+Mofo Shadow
+MofoMo92
Mofoe
+Mog Time xD
Mogcow
Moggok
Mogtime
+Moh
Mohahm
Mohamedss
Mohanad
+Mohannah
+Moheed
+Mohh
Mohib
+Mohlo
Mohnday
+Mohphy
+Moiqol
Moist
+Moist Dreamz
+Moist Holy
+Moist Maori
+Moist3allsac
+MoistButh0le
MoistMaker
MoistPainal
+MoistWreck
+Moistium
Mojimot0
Mojito
+Mojo Fiki
Mojojojo171
Moju
+Moju GG
+Mojurico
Mojzis
Mok101
Moka
@@ -15325,78 +31715,149 @@ Mokkasiini
Mokke-senpai
Mokkis
Moksa
+Moksu
Moku
Mokum
+Mokum Syl
+Mola
+Molag x Bal
+Molars
+Moldy Nuts
MoldyChips
Mole
+Mole Slides
Mole1
+MoleMan-II
Molemountain
+Moles Rule
Molinas
+Molkkipo
Molle
Mollem
+Mollium
MolllyPop
+Molloyo
Mollt
MollyLlama
Molokotorby
+Molotoffer
+Moltea
Molten
+Molten B
+Moltenclawz
+Moltres X
+Mom Hunter
+Mom Madness
MomICantPaus
Moments
MomentsApart
MommaCuz
Mommy
+MommyMish
+Mommys Hand
+Momoh flip
Moms
+MomsLasagna
Moms_Spagett
+Mon key
+Mon3yy
Mona
+Monarchis
+Monarchy
Monday
+Monde
MonehBabeh
Money
+Money BTW
+Money Bagz
+Money Grabs
+Money Mann10
+Money tyven
MoneyMalone
Moneyman
+Moneyman 199
Mongke
+Mongrel Hick
+Mongstaman
Moniez
+Monika Liu
Moniosaaja
+Monitor
Monk
+Monk Fists
MonkFishking
Monka
+Monka Blunts
+MonkaFront
+MonkaGrizz
+MonkaSFish
MonkaZter
Monkadile
Monke
Monkees80
Monkey
+Monkey D C
+Monkey News
+Monkey Pox
+MonkeyDGazoo
MonkeyHeadAF
+Monkeyannie
+Monkeyboy991
+Monkeydodo45
+Monkeyhug
+Monkeys Ass
+Monkeysick
Monkie
+Monkphish
Monksmen
Monkster
MonnerMads
+Monnivalas
Monnual
Monny
Mono
+Mono Y Mono
Monopoly
+Monopoly Mvp
+Monotone 07
MonrealkaAfk
+Monroejo
Monsemand92
Monsilly
Monsta
Monstaarr
+Monster Hog
+Monster Tits
Monster333
+MonsterKush
+MonsterTrain
Monsterofpk
Monstrius
Monstrocity
Monsutaa
Montagne
+Montak
+Montanaro
Monterey
+MonthOldMilk
Monty
+Monty Jr
Monumental
Monuu
Monxanvrooo
+MooGoo
Mooch
Moocow910
Moodeer
+Moodoo
Mooffa
MoofinnMan
+Moogly
Moohcake
Mooi
Mooie
Mooing
+Mooing Cow
Moojin
Mookinater
Mooksy
@@ -15404,58 +31865,98 @@ Moon
Moon688
Moon7I8
MoonCard
+MoonDunes
+MoonStaIlion
+MoonWolf
MoonYagami
Mooncrafting
Mooner
Moongazing
Moonish
+Moonish Ale
Moonjock
Moonlightcb
+MoonlitNika
+Moonly
Moonman392
+Moonr0cks
+Moonshadow18
+MooonCakeee
+Mooony
Moopy
+Mooqie
Moordaap3
+MooreNoyce
Moorleey
Moortgat
Moose
+Moose Land
+Moose713
+MooseEatBear
Moosecup
+Moosefangs
Mooseheads
Mooserini
+Moosewizza
+Mooseyt
Moosy
Moot
Moowi
Mooyee
+Mopdussy
Mopeds
Mopedstian
Moppeharry
+Moppy
+Moq puW
+Mor Ul Neck
Moral
Morales
Morally
Moray
Morbid
+MorbinThyme
Morch
MordLacaroni
+Mordacai
Mordenumero2
+Morder-Biest
MordinSolus
Mordy
More
+More AFK
+More Chillli
+More Coala
+MoreThermite
+Moredots92
Morelos
+Morfeusz
+Morgan Donor
+Morgan69
MorganAtkins
MorganaTits
Morghuan
+Morghulish
Morgo
+Morgoth Man
Morgue
Morguhh12
+Mori Memento
Morijo
Moriquendi
Moritz
Morkius
Morkret
+Morkula37
+Morland
Morlun
Morlyx
MormonFTP21
Morniingstar
Moronavirus
Morot
+Morph1ng
+Morpheus Aus
Morphing
Morphogene
Morpice
@@ -15465,71 +31966,311 @@ MorrisTheCat
Morsey
Morski
Mort
+Mort Eater
+Mort Rigo
Mortal
+Mortal Coil
+Mortalize
MortarMan
MortemPlaga
+Mortituros
+Mortle2
+MortonRamsey
+Mortonnizer
+MortresxD s1
+MorttMoryt
Morue
+Morvas
Morytania
+Mosade
Mosaq
Mosbol
Moscosung
Moseley
Mosess
+MoshPitJosh2
Mosio
Mosiph
Moska
+Mosmo
+MossadKiller
Mosse
+Mossels
+Mossgiant
+Mossy
+Mossy Taint
Most
MostDreaded
+Mostly Godly
Mostoes
+Mosychuk
Moteha
+MothQueen
+Moth_29
+Mothafuqueur
+MotherFigure
Mothless
Motikeli
+Motion1010
+MotivaSean
Motivated
Motmans
+Motochorro
+Motor
+Motse
Mottis
Mottly
Mottookaa
Motx
Motyas
Motzimoo
+Moubu
Mougi
+Moukie
Moul
Mouldied
+Mouldy Lamp
+Mouley
Mount
Mountain
+Mountan Drew
Mourn
Mourners
+Mournhold
Mous
+Mousecream
Mousekeys
Mouselifter
Mouseman298
Mousenn
Mousie23
Mouteo
+Mouthful Pip
Move
+Move Over
+Move Ziggy
Move2791
+Movember
+Moviestar
Moving
Moving20
+Mow on mate
Mowgli13
Mowk
Mowt
+Mox
+Moxy Senpai
+Moyaha5
Moyd
+Moyis
Moysey
MozDef
Mptrj
+Mq4
+Mr 0wnage
+Mr 223
+Mr 7o7o
+Mr 9ine
+Mr A
+Mr Airborne
+Mr Alba
+Mr Alex
+Mr Ashh
+Mr Ayye
+Mr Bagel
+Mr Baggy
+Mr Barakas
+Mr Bazzi
+Mr Beefman
+Mr Beekman
+Mr Believe
+Mr Biceps
+Mr Bijpakken
+Mr Bond
+Mr Boogley
+Mr Brunoo
+Mr Burton x
+Mr C0KE
+Mr CHM
+Mr Chonky
+Mr Chopz
+Mr Comrade
+Mr Costy
+Mr Count Up
+Mr Cryin
+Mr Dan Solo
+Mr Darzelis
+Mr Deivis LT
+Mr DirtyDan
+Mr Dong322
+Mr Dreamcast
+Mr Dry
+Mr Dudeicus
+Mr Dumbiller
+Mr Durian
+Mr Dylesxic
+Mr Easyscape
+Mr Egret
+Mr Elmar
+Mr Elysian
+Mr EsKei
+Mr Fathead
+Mr Father
+Mr Foe
+Mr Freezie3
+Mr Fridge
+Mr Funguses
+Mr Geese
+Mr General
+Mr Gentil
+Mr Ghillie
+Mr Ghizar
+Mr GnW
+Mr GodLuck
+Mr Hanki6
+Mr Hassan Fe
+Mr Hollowx
+Mr Hrodbert
+Mr Hulbert
+Mr Infinity
+Mr Iron Bar
+Mr Iron Gray
+Mr Iron Owl
+Mr Iron Poo
+Mr IronAss
+Mr Jacko
+Mr Jam10
+Mr Jam1O
+Mr Jasperr
+Mr Johbi
+Mr Jonh L
+Mr Jordy
+Mr Joshing
+Mr Jot
+Mr Kaasmof
+Mr Kato
+Mr Keyss
+Mr KingCobra
+Mr Kirbo
+Mr Kiwi Bird
+Mr Kman
+Mr Kodai
+Mr Kokkok
+Mr Krabbsss
+Mr L0af
+Mr Laser
+Mr Laz
+Mr Leeee
+Mr Looch
+Mr Loser
+Mr Lysol
+Mr Mackie
+Mr Manual
+Mr Martel
+Mr McCune
+Mr Mentos
+Mr Mikers
+Mr Missiles
+Mr Miyagy
+Mr Moncler
+Mr Mordacai
+Mr MrX
+Mr Nagoh
+Mr Nasty Kev
+Mr Nate
+Mr Nebs Main
+Mr Neckless
+Mr No Rift
+Mr No Sleep
+Mr NoMates
+Mr Nonya
+Mr Ohio
+Mr Oizo
+Mr OldSchool
+Mr Osc ar
+Mr Ozzy
+Mr Palm
+Mr Pandaz
+Mr Pastorius
+Mr Peggers
+Mr Phelipe
+Mr Pita
+Mr Platypus
+Mr Pondman
+Mr Poup
+Mr Pretzels
+Mr Questerr
+Mr RaWaR
+Mr Rebirth
+Mr Rich T
+Mr Robert
+Mr Romm
+Mr Ryker B
+Mr S N S
+Mr SZX
+Mr Sasquatch
+Mr Shaman
+Mr Siege
+Mr Sighco
+Mr Slabs
+Mr Slaw20
+Mr Spark
+Mr Splitter
+Mr Squicky
+Mr Stan Man
+Mr Syvan
+Mr T C
+Mr Takoya
+Mr Tbh
+Mr Teej
+Mr Thornbery
+Mr Troll
+Mr Trump
+Mr Untainted
+Mr Vaidys
+Mr Vanhanen
+Mr Veegs
+Mr Wieler
+Mr Wild x
+Mr Woods
+Mr World 420
+Mr Woz
+Mr Wumbo
+Mr Xray
+Mr XuRu
+Mr Yozef
+Mr Yum
+Mr Yzi
+Mr Zevosh
+Mr Zio
+Mr ensayne
Mr noli Fe
+Mr rubler
+Mr spikey
+Mr stony
+Mr2ndPlace
+Mr44
MrAlcotester
MrAmazing
MrAmbaal
MrAngelxz2
+MrAngerfist
MrAnkan
MrAwesomeNL
+MrB1u3
+MrBananaJoe
+MrBeadyEyes
+MrBeastly
MrBeerNTits
+MrBic
MrBigLoads
MrBigPecs
+MrBigWheels
+MrBingly
MrBlueScreen
MrBooBlocca
+MrBorreby
+MrBouncyButt
MrBraa
MrBry
MrBryne
@@ -15542,36 +32283,62 @@ MrCivilian
MrCoolSkills
MrCoook
MrCoopahh
+MrCowey
MrDTails
MrDairyHeir
+MrDaive
MrDarkBlue
+MrDarkSide76
MrDarling
MrDashwood
+MrDeadInside
MrDevice
MrDevour
+MrDoake
MrDoofes
+MrDraconite
+MrDumbaldore
MrEasty
+MrEdgaras
+MrEmerica
+MrEnd
+MrEwan
MrExterm
+MrFANG
MrFancyboots
MrFarrell
MrFlizz
MrFluffy97
+MrFreakyFrog
MrFrizzesh
MrFro
+MrFrogRS
+MrFuack
MrGaalis
MrGainz
MrGanksta
+MrGatorGnash
+MrGeeeeeee
MrGibbletts
MrGixxer
MrGodBrand
+MrGoodbye
+MrGraveLord
MrGrind
+MrGurbz
MrGurn
+MrGustuv
+MrHatN Clogs
+MrHeftyBag
MrHobokian
MrHummus
+MrHypeK0
MrIWontMax
MrIronChef
MrJTheIron
MrJad
+MrJargon
+MrJermu
MrJoestar
MrJohnnyx
MrJonMan
@@ -15579,17 +32346,32 @@ MrKadir007
MrKerrie
MrKevinR
MrKoalas
+MrKyle
+MrLaffy
+MrMag
MrManny
+MrMatchett
MrMaxLvl99
+MrMayhem
+MrMeeseek420
+MrMeeseexs
MrMell0w
MrMime
+MrMonkeyJock
+MrMonopoly
MrMonsterrr
MrMooCows
MrMose911
MrNL
+MrNaf1
MrNatee
+MrNeverWrong
+MrNice98
+MrNieksas
MrNikeKush
MrNoBank
+MrNoFgiven
+MrNoFilter
MrNoLove
MrNook
MrNorwayOS
@@ -15598,77 +32380,169 @@ MrOceanic
MrOctapus
MrOngh
MrOriginal25
+MrPK74
+MrPaip
+MrPapaJoe
MrPezcu
MrPige0nz
+MrPiggles
+MrPlasters
MrPoopiehead
MrPork
+MrPotionz
MrPowers
MrPutterLite
MrQuaker
MrQuick1
MrRaidUrGirl
+MrRakoon
+MrRangingElf
+MrRawDog
+MrRiceBucket
MrRidder
MrRight4U
MrRobinHood6
MrRoboto
MrRocco
+MrRodgersHD
+MrRojo31
+MrRumarak
+MrRuneDrag
+MrRyo
+MrSanta94
MrScape2Much
MrSensimilla
+MrShneeeebly
+MrShoarma
MrSimQn
MrSirOne
+MrSkydive
MrSlongerton
MrSmiiLey
+MrSmikkel
MrSocorelis
MrSolo
MrSteelYoRNG
MrStickyBudz
+MrSucellus
+MrSuibhne
+MrSupo
MrSusans
+MrSwift00
+MrTanglez
MrTibberfitz
+MrTickMaster
MrToad
+MrTobyG
+MrTooSerious
+MrTough rs
+MrTrashclikz
MrTryHard69
+MrTurds
MrVillanelle
MrVitable
+MrWallnutt
+MrWeageZ0311
+MrWest
+MrWhetFartz
MrWobble420
MrWorldwidee
MrYachie
+MrZandra
+Mr_B1ff
+Mr_Hairless
Mr_Kadir007
+Mr_Kapoo
Mr_Manchello
+Mr_Ostroum
Mr_Schmeckle
+Mr_Scoff
Mrawrs
+Mrbadwrench
+Mrbaird
+Mrbd
Mrburnsss
+Mrcoconut22
Mrdeemoney
+Mrevil1
+Mrfuntime517
Mrfuzzy
Mrglex
+Mrhood
+Mrjellyfish
Mrjli
Mrloonetick
Mrm0rm0r
+Mrmagoo0
Mrmanguy
Mrn1ceguy89
+Mrpokoz
+Mrpoopyface1
+Mrs Budie
+Mrs Pure Cut
+MrsFabler
MrsJonesUFT
+MrsMushrooms
MrsPurpTurt
+MrsSocorelis
Mrslipkn0t
Mrwaffleses
+Ms Goblin
+Ms K
+Ms Lizziard
+Ms Trap
+Ms Zik
+MsAnderzen
+MsArachnea
+MsBoothanqq
MsFreakyFrog
+MsGroves
MsSev
+MsethOWarq p
+Mssp
+Mstr Postman
+Mt Eben
+Mt Olympus
+Mthrfckrmike
Mthw
+Mtn Dew Dew
+MtnDewford
MtnGoat
+Mtp69
+Mtra
+Mtv Cribs 07
Muad_Dib
+Muahahaha45
Muahhahaa
Muahuahuahua
+Muas
MuasBtw
+Muay Mat
Muaythai
+Muc Gib
+MuchBetta
MuchGpWaste
Muchly
MuchosAssias
+Muchy
Muckball
+Muco
+Mud Cricket
+Mud Temple
Mud9
MudCatBigDog
+Mudda Focha
+Muddas Main
+Muddy patch
Mudguard
+Mudkins
Mudkip
+Mudmur
Mueezy
MuerteBella
Mues
Mufasa
+Mufasa IXI
MufffinKing
Mufficer
MuffinActual
@@ -15680,7 +32554,9 @@ Mugarooni
Mugen
Mugge
Muggerman3
+Muggled
Muggles
+Muggtjuven
Mugrub
Mugy
Mugzy
@@ -15688,118 +32564,232 @@ Muhaji
Muhamed
Muhfn
Muhkea
+Mui Gokuu
Muilpeer
Muki
Mukkaram7861
+Mukkey
Muktheduck
+MulasRevenge
+Mulberry Mtn
Muleleaveox
+Mulky
Mulle-mek
+Mullet Mafia
+Mullishus
Mullvaden
Mully
MullyMammoth
Multi
+Multiloquent
MultipleRats
Multiplying
Multitalent
Multiway
+Multizeta
Multrix
Mulugga
+Mum3nRider
+MumBanker
Mumble
Mumbles
+MumblinSloth
+Mummzy
Mumriken
Mums
Mumspaghetti
Munansurvain
+Munchise
+Munder
Mundt
Mungles
Mungoe
Mungu
+Munia15
Munich
Munire
Munk
Munkea
+Munkefar
Munkinut
+Munky Munk
MunkyBizness
MunkyKnuckle
Munn
+Munnchicles
Munqqi4862
+Munqqii
+Munshae
Muparadzi
+Muphat
Muppz
+Murasa
Murbez
+Murda Turk
Murder
+Murdered
+Murderings
Murdimius
Murdock
Murdur
+Murgambit
+Muri
Murilokooo
+Murimekko
+MurkWahlberg
+MurlokMurlok
Murogrim
MurphRS
Murphys
+Murphys Lag
+Murpman
Murray
+Murray 1991
Murre
Murrloc
Murrrum
+Murt15
+Murtti
+Murzum
+MuscleNation
Musftw
Mushmom
Mushroom
+Mushroom Mtn
Mushrooms1
+Mushtime
MushuPorkPls
+Musi c
Music
Musica
MusicalMurdR
MusicalStory
+MusiclRevivl
+Musicpunk
Muskets
+Muskintine
Muskogee
+Musky Whale
+Muslimi
Musschoot
Mussy
Must
+Must Slay
MustBeGanja
+MustKillBill
Musta
Mustachio
+Mustamae
+MustangYak1
+Mustangs
Mustard
+MustardXD17
Mustasurma
Mustekala
MusterShelby
+Musto Task
+Musty Ropes
+Musty Sailor
MustyToofer
Musuwu
+Mut3dHasselt
MutaNep
Mutants
Mutapets
Mutated
+Mute Pker
Muteself
Mutilated
Mutsurini
+Mutt a dile
Muttadale
Muttadiddle
+Muttadude
+Muttallica
+Muugz
+Muumipappa
+Muunchyy
+Muurxi
+Muushuu
Muutz
+Muws
+Muy Booty
Muzbo
Muzi
+Muziek Smurf
Muzket
Muzz
Muzzle
+Mv P
+MvP ov RnG
+Mvk
+Mvko
+Mvp Scrub
Mvvs
+Mw2
+MxMay
+MxSloot
+Mxb36
Mxffin
+Mxr
Mxteorites
+Mxtta
+My Damie
+My Dark Hell
+My Dark Soul
+My Death Bed
+My Demons
+My Dont We
+My Dumb Iron
+My Faith
+My Fantasy
+My GF isMILF
My Gentiles
+My God
+My Iron Man
+My Ironmain
+My Ki
+My Kill
+My Kingz
+My Limp GIMP
+My Main Game
+My Maine
+My Mate Elm
+My Name Vyga
+My Pet Mocha
+My Rng Ass
+My Sana
+My Secrets
+My Ticks Now
+My Ult
+My pp stink
MyAssLucky
MyCatKillsMe
-MyDickLite
+MyCtyNeedsMe
+MyDuck
MyElyNow
MyFitPal
+MyHandyMan
MyIiu
MyLastGo
MyLoveFaith
+MyMercy
MyNAm3BubBA
MyNameIs
MyNameIsCole
MyNameIsKent
+MyNameIsTina
MyNameIsTrev
MyOSAccount
-MyPenisBHuge
+MyPetRicky
MyProject
MyRifleMyGun
+MyRight Nut
MySeed
+MySkillsKill
MyStinkHurts
MyTakao
+MyWanderlust
MyWyvernAlt
Myams
Myat
@@ -15808,89 +32798,240 @@ Mycreation1
Mydlong
Mydragon8u2
Myers
+Mygary
Mygraine
+Mykeh
Mylar
Myles
+Myles_008
Mylifeisless
+MylilBrony
+Mylle
Mylo
+Mylo 7
Mylos
Mylosas
Myndemo
Myoboku
+Myosarcoma
+Myoshi
Myotoxin
Myriadic
+Myrm
Myron
MyronAynes
Myrupz
Mystearica
Myster
+Mystery Btw
+Mystery X
MysteryGifts
MystiCool
Mystic
+Mystic Mak
+Mystic Pizza
+Mystic Voke
MysticChompy
MysticDrift
MysticErebos
MysticRiver
MysticStrega
+Mysticpuffer
Mysticrobe
+Mystics Main
Mysticvaa
Mystiic
Myth
+MythCerix
MythCraft
Mythic
+Mythic Hiero
Mythicat
+Mythrin III
Myto
+Myuf
Myuk
Mywa
+Myz
Myzi
+Mzaa
+Mziy
+Mzr
+Mztar
+N 10
+N 55
+N A l N E R
+N E L L
+N E N E
+N Gallagher
+N I GH T96
+N I N O X
+N I S H
+N ICK Y
+N O B S Y
+N U B U
+N W M
+N a t t z
+N ang
+N anko
+N arb
+N dejay p
+N e a k i le
+N e i l
+N e0
+N iall
+N ibbler
+N ightgleam
+N l C K O
+N l E V E
+N o m a d
+N occo
+N oggin
+N u d
+N uggies
+N-J-R
N0 H34RT
+N0 Invictus
+N0 pid
+N00biistyl
+N00bslayer27
N04me
N0B4Marri4g3
+N0Ballz
N0ID
+N0LlMlT
N0OneCares
+N0T HC
N0XPWaste
N0blelegend
N0llie
+N0obalhao
N0rse_k1ng
+N0sie
+N0t Maxed
+N0t special
N0tliketh1s
N0ul
+N1 CK
+N17 Jake
+N1C3
N1NJASK1LLZZ
+N1ckai
+N1cwho
+N1nja
N1njaCat
-N3ggertr3g
+N3XX
+N3p
N3se
+N3x
+N4L
+N4ruto
+N4styNat3
+N7N
+N8vy
+N9NE420
+N9T7
+N9U
+NABEEL RJ
+NAGAKAMAL
+NANORA
NARPslayer
+NASDBOY
+NASSERN
NASTY
NAVl
+NB8K 2K13
+NBA
+NBA NewMain
+NBA Youngb0i
+NC90
+NCG
+NCG 2
+NCPS
+NEBR0SKY
NECR0DANCER
NEEDAMETHYST
NEENEE
NEET
+NEET forever
+NELSONORS
+NENOS
NEONiC
NEWBEYE
NEWFISHMATE
+NEX IS WET
+NEXFARMER
NEYOVIC
NFed
+NHL Blues
NHrn
+NIIXIIK
+NINJABLEV1NS
+NINJATMNT
NITR00
+NJC20
NJWW
+NKJ
+NL Chronos
+NL Gilbert
NLDeluXe
NLFreakky
+NMM Jaoel
NMOS_giant
NMZLetics
+NO 1s SAFE
+NO CHlLL
+NO FEEL
+NO MlDS
+NO N R G
+NO PlD
NOAH
+NOMETHESPORT
NOOOOOOOOOO
NORTHSEA
NOSTALGlA
+NOTTDY
+NOTaPancake
+NOmki
+NPC Healer
+NPC Icedrake
+NPYJ
+NRA
NSFL
+NSHN
+NST Praise
+NT FiSHvv
+NT Y
NTBeerBandit
+NTMR RADIO
NUEL
NULLI
+NULLlN KUPPl
NUTSHOT
+NVQ
NWHL
+NWI 219 RAT
+NY
+NY C
+NY G
+NY x LEGiiT
+NZ Dave
+NZL
+N_MB
+N_other_day
+Na Mn Or I
NaCl
+NaCl Sprite
+NaCl is salt
+NaQ
Naaath
+Naafiri
+Naais
Naakkeri94
Naakt
+Naaon
+Naautilus
+NabD Rank 5
Nabroleon
Nabshadow
Nabss
@@ -15898,194 +33039,375 @@ Nabua
NabyLad
Nach
NachB
+Nachitto
Nacho
+Nacho Alt
Nacho2030
+NachoByte
NachoDragon
+NachoPapi
+Nacht
Nachtkastje
NachuiTuda
+Nadaa
+Nadeo
+Nader
+Nadsage
Nadund
+Naethera
Naftininkas
Naga
+Naga Morich
Nagisa
+Nags
NagyonJo
Nagyung
+Nah0824
+Nahida
+Nahiida
Nahkamestari
Nahuel
+Nahyol
+Nahyun
NaiiSha
Nailbox
Nailed Hard
+Naimsen
+Nainenoon
+Nairda Niam
+Nairda Nori
Nairino
+Naisu
Najda
+Nakal
+Nakama
NakedTwister
+NakednFeared
Nakke176
+Nakkee
+Nakkesleijer
Nakkimauno
+Naksitr6ll
+Naku
Nakuz
Nakuz0r
+Nalle Puh FT
+Nallieheai
Nalsara
+Nam
+Namcel
Name
+NameECJ
NameRjected
NameWasBannd
+Named
NamedGenius
Namelessdude
Namelus
NamesAreMeh
NamesHisoka
+Namine Silke
+Namir
Nammer
Namuko
Nana
+Nana Steel
Nanado
Nanciscor
Nancyy
Nander
+Nandos
+Nandos Man
+NangMan
Nangdalorian
+Nanimavi
+Naniva
Nannertee
Nanno
+Nannu Baba
+NannyCam69
+Nanoh
+Nanoman360
Nanonymouse
+Nanook IV
+Nanoray
+Nanotech
Nans
NansBeaver
+NansCumTowel
NantaoL
+Nanyts
Naoe
+Naoe Y
+Naoe Yamato
NaofumiLTU
Naoka
Naow
+Nap Tackle
+Napaaaaaaaaa
Napalm
Napanderii
Napettaja
+Naphtic
NapkinFork
+Napnapnap8
NapoleanBra
+Napoleon
+Nappy Head
Napsutaja
Naqu
+Nara ven
Naradas
+Narbose
Narby
+Narcan Saves
+NardDog
+Nareg
+Narel1a
+Narendradath
Narg
+Nargarothian
Narked
Narkon
NarnodesNono
Narrative
-Narris69
Narry
Nartens
+Narth Calior
Narthalion
Naru808
Naruto
Narval
Narvalow
Narwallus
+Narwhal1731
Narx4
+Nas is like
Nasa
Nasaman
+Nascar
Naseeph
+Nashh
Nashluffy
+Nashonic
Nashy
+Naskarsdad
+Nasko 07
Nasper
Nasrullah
Nasseee
Nassim
Nast
+Nastacov
Nastie
+Nastik
Nasty
+Nasty107red7
NastyAss
+NastyCasual
NastyDonger
-NastyFreak69
+NastyGarbage
+NastyGeUsers
NastyV6
Nasuuu
+Nat Scheetje
Natalie
+Natby
Nate
+Nate Dogg g
+Nate Joggers
NateDoge
+NateStayLove
+Natebroh
+Natedog 1104
Naternater
NatesOSRSAcc
+Nath Meister
+Nath btw
NathJeaL
Nathan
+Nathan A
+Nathan Lyon
+Nathan Novak
+NathanTurn
+Nathandrthal
Nathanyuelle
+Nathn
Nationwide
Native
+Nato is Jake
+Nato888
+Natoh
+Natoroid
Natrox999
Nats
Natsu
+NattNub
Natte
+Natte Dop
+Natte Dream
+Nattetid
+Nattkungen
+Nattmara
Nattraps
Natu
+NaturalBeaut
Naturally
+Naturally Me
Nature
+Nature B0Y
NatureNymph
+Naturealis
Naturejacks
Nauce
+Naudra
+Naught Good
Naughtpure
+NaughtyPanda
+Naukahtaa
+Naukkiss
Nautis
+Nauuyn
Navas
+Navbrah
NaviRio
Naviaux
+Navidson1
+Navn
Navraj
Navtik
Navy
NavyDD214RET
+NavyLight
+NavyPunk
+Navyseals199
+Nawberry
+NawtyMonkey
Nawus
+Nax
Naxacid
Naxiius
Naxito
Naxos
Naxtzi
+Nay RS
+Nay0101
Nayna
Nayrus
+Nayrus Love
+NazTehRpR
Nazgul
Nazty
Nbba
Nbcw
+Nbsniper69
Ncpure
Ncrr
+Ne x is
Ne3po
Ne86
+Neak
+Nealonl4
Nealos
Neals
+Nealvy
Neanderthal
Nearly
Nearomancer
Neatkii
Neav
Neb0lith
+Nebb
Nebbo
+NebbyGo2Bag
+Nebezaidu
Nebijok
Nebrosky
+Neccto
Nechromancer
Nechryass
Nechs
NechtKnecht
+NeckBat
Neckbeardis
Necksnipped
NecroEric
+NecrodedGSF
Necrokingns
+Necromatus
+Necromooser
+Necronomist
Necrophorum
Necrosauruss
Ned1991
+Neddam
NederweertV2
Neduks
Nedus
+Nedved
Nedward
+Neeby
Need
+Need 2m
+Need A Pint
+Need Femboy
+Need GP Now
+Need Protein
+Need Rogaine
+Need Spoon
NeedInternet
+NeedMoore
+NeedPurp4Bed
Needs
+Needs Coffee
NeedsADad
Needtomboy
+Neeech
Neefey
+Neeisnet
+Neekkoco
NeekoNeekoNl
Neekomata
Neekss
+Neelen
+Neems
+NeetScape
+Neetman
+Nefarious fe
NeferSeti
+Nefereous
Neffiz
Neg14
+NegAttiveI
Negan
Neganeogami
Neghed
+Nego Baby
+Negrong
Nehxy
Neil
+Neilthedead
+Neintein
+Neitiznut
+Neitiznut Jr
+Nej tak
Nejvalt
Nejvash
+Nekalbink
+Nekkopanda
+Neko Inori
NekoSayNyaa
+Nekomata Nia
Nekomimi
+Nekromant Cz
+Nekrukeisari
+Nelaimingas
Neleron
Nelhium
Nelkirr
+Nelli Matula
Nelliell
+Nellysan
Nelox
Nels0N
Nelsi
@@ -16099,155 +33421,295 @@ Nemaksciai
Nemba
Nemerrr
Nemesis
+Nemesis2020
Nemf
+Nemijin
+Nemipro
Nemisys
+Nemj
Nemmo
Nemo
+Nemo_o
Nemonia
+Nemoven
Nenah
Nendou
+Neng_Thao02
Nengah
+NeniHead
Nenio
Nentsukka
+Neo
+Neojoramony
Neon
+Neon Christ
+Neon Juan
+Neon Slinky
+Neon Volts
+Neon xxv
NeonChilli
+NeonGenxsis
NeonM1d
+NeonO7
NeonPaladin
NeonRhythm11
Neonik
Neonke
Neopia
+Neoplasia
Nephedes
Nephyrion
Neppe
+Neptune169
+Ner
+Nera Obuoliu
NerbBlaster
Nerbles
+Nerbs
Nerd
+Nerd Body
+Nerd Owns
+Nerd Stone
Nerda
+Nerdbob
Nerdcore
+Nerdier
+Nerdpuff
+Nerf Bowfa
+Nerf Coffee
+Nerf Th1s
NerfMePlz
NerfTG
Nergegante
Nergg
+Nerio x
+Nerithma
+Nermzz7
Neroxcen
+Nerraw
+Nershi
Nerve
+Nerve Cell
Nesk
+Nesquiik KlD
Nesretep
Ness
Nestedloops
+Nesties
Nestl3
+Nestorianos
Nesuvarzytas
NetTrap
+Netamu
Netanelba
+Neteroem
+Netgear
Nethada
+NetherToxin
Netho
Netjes
Netmn15
Neto
+Nettipoliisi
NetturDab
Neturtingas
Neural
+Neuro Lepsis
+Neuro-Tomb
+Neurologist
Neurophys
Neurovelho
+Neut
+Neutral Game
+Neutralised
Neutrally
Neutronas
+Nevar89
+Nevena
Never
+Never Die113
+Never Spoon
+Never die
+Never2Clever
NeverAssume
+NeverBudge
NeverEnding
NeverFreeze
NeverGetRift
NeverGunaMax
+NeverImprove
NeverLateWiz
+NeverMoves
+NeverMyFault
NeverQuest
NeverRespawn
+NeverSailing
NeverSober
NeverTrading
Neverender27
+Nevermaker
Neverover
Nevi
Nevik94
Nevinnn
+Nevit
+New Monkey
+New Tooka
+New journey
+NewAgsWhoDis
NewBoy4321
NewDad
NewFavorite
+NewHobby
+NewMobWhoDis
NewPlayerx13
+NewToBossing
NewWrldHodor
+NewZealands
Newb
+Newb Ranger
Newbillnye
+Newby
NewcastleFC
NewfieTinMan
Newfiebanger
Newguy2003
Newleesh
+Newlut
NewrockkuOS
Newst0nekid
+Newt Jacuzzi
Newtman907
+Newton 1
+Neww Zealand
+Nex Afg
+Nex FFA King
Nex Is My X
+Nex Minion
+Nex Myself
+Nex leecher
Nex1s
Nex2169
+Nexarion
Nexcellent
Nexeiy
+Nexfinity
Nexgen
Nexi
Nexil
Next
+Next Day
NextPet
+Nexus Sire
Nexx
+Neya
Neyburr
Neye
+Neyes
Neyugn
NezFix
Nezqi
Neztea
+Nezuk o
NghtPnda
Ngis
+Ngyessiree
+Nh3r
NhaleXhale
Nhan
+Nhest Cutter
Nhimzo
Nhouse20
Nhyrenn
+Ni
+Ni ke
Niahl
+Niall x
Niawag
+NibblyTitter
+Nibbyus
Nibexx
NiblaNoss
+Nic
+Nic Machine
+Nic Nasty
+Nic Nerc
+Nic co
NicMachine
Nicannand
+Nicao Beck
Nicashi
Nicathan
Nice
+Nice Adept
+Nice Caulk
+Nice Iron
+Nice Nice
+Nice One
+Nice Peaks
+Nice Pets
+Nice try guy
+NiceGuy Edy
NiceGuyEddyy
NiceMarkMark
+NicePotatoes
+Nicely High
+Nichohls
NicholasRage
+Nicholaswei
Nichy
NiciValbuena
Nick
+Nick Grows
+Nick Ints
+Nick Lopes
+Nick Sellers
+Nick X10
Nick0hwolf
-NickOSRS
+Nick1234101
+NickChubb24
+NickReady
+NickScape
NickSpoof
NickTSMITW
NickVo
NickaClassic
Nickernack55
Nicki
+Nicki Menage
NickisBackyo
Nickk
Nickmitz23
+NickmyKnack
Nicknao
+Nickolai Lol
Nickool4
Nickos
+Nickoss
+Nickoudbier1
Nickroo1234
Nicks
+Nicks OSRS
NicksNipples
NickyPunky
Nickynice23
Nickyy
+Nickyy G
Nico
+Nico BE
+Nico Le Chef
+NicoFreakOh
NicoIas
NicolaSturge
Nicolai
+Nicolaj
Nicolas
+Nicoo
+Nicophilia
+Nicsyth
NidaNewName
Nidalee
+Nidgen
Nidh
Nidhogs
Nidk
@@ -16255,27 +33717,45 @@ Nidmann
Nidoking110
Nidraugas
NieI
+Nief
Niefable
Nielaahh
Niels1608
+Nielscorn
+Nielsen9312
+Nielssjeee
Niely
+Nieman
NietzscheJR
Nieve
+Nieve Hamtaa
+Nieve Rivers
+Nieve Task
NieveIrwin
NieveIsBad
NieveIsThic
NieveMeAlone
+NieveTitties
Nieves
+Nieves Bean
+Nieves Boob
+Nieves Butt
+NievesDead
NievesThighs
Nifelhiem
+NifkeCove
+Nifty Gifty
Nigel
-Nigester69
Nighlist
Night
+Night Elf45
+Night Shade
NightNurse
+Night_Furor
Nightbass
Nighter
Nightmare
+Nightmare CX
Nightmare028
NightmareSHW
Nightolas
@@ -16283,174 +33763,354 @@ Nights9
Nightsharp
Nighttman
NightxxShade
+Nightz Watch
Nihilismi
NihilistScum
+Nihplod
Niihilism
+Niiick
+Nijah123
+Nijn
+Nik-fil-A
+Nikab
Nikco
Nike
NikeOnMyFeet
Nikez
Nikit
Nikkerpoo
+NikkiJaxx
NikkiQT
+NikkisDD
+Nikkisaur
Nikko
Niknea
+Niko Solo
NikolasOG
Nikoo
Nikronic
+Nikskill
Nikumei
+Nikun
+Nikz
Niley
+Nilitsu
Nilpferd
+Nils
+Nilwh
NilzZ
+NimaNaruto
Nimajineb
+Nimble Snail
Nimbubu
Nimex
Nimismies2
Nimlasher234
Nimloth_666
+Nimma Crew
Nimmongel
Nimrod
Nina
+Nina Dobrev
+Ninanunana
+Nine E L
NineTs
+Ninef
+Ninesax
+Ninetails
Ninetales4
Ninevolz2
Ninfia
Ningaa
+Nini N Kiki
Ninja
+Ninja Bamsen
Ninja Cow Jr
+Ninja Rasta
+Ninja1978
Ninja66
+NinjaNoodles
NinjaPunch72
NinjaSpeed
NinjaTurt
Ninjaloff
NinjasDark3
+Ninjee xo
+NinjerNick
Ninjunzo
Ninjymate
Ninook
Ninorc
Nintendogz
+Nipaahv
Nipes
Nipitipi
Nipp
+Nipp-on
+NippleSundae
Nippppppppee
Nipps89
NipseyHpvm
Niseraru
+Nishax
Niskha
Nismo
+Nismo Ranqe
+Nisramont
Nissan
NisseIadden
+Nissmo
Nistipata78
Nitefall3n
+Nitepearlz
+Nitetrip
+Nith
Nithe
Niton
+Nitro Crate
+Nitro Dax
+Nitro Rng
+Nitro306
NitroCrate
Nitroalkenes
+Nitrognhorse
Nitros
+NitrosOxide
+Nitrous Bro
Nitsch
+Nitsuj42
Nitt
+Nittany
+NitwitSchool
+Niukkis
Niva
Nivex
Nivory
Nixby
Nixi_NL
+Nixiro
+NixonsJowls
+Nixvet
+Nixxay Iron
Nixy
NixzTez
Nizqa
Nj0y
Nkpi
NlCK
+NlCKT
+NlLREM
NlMBY
NlSO
NllCK
NllL022
NlppleX
+Nmf Euphoric
Nmofm
+Nnavs
Nnoitra
+No 1 There
+No 99s btw
+No Arcane No
+No Autoclick
+No Basic
+No Death Tax
+No DexL
+No Diff
+No Emphasis
+No Fear X
+No Fkeys
+No Honor Yah
+No Joggers
+No Kwuarms
+No Legs Lazy
+No Logic
+No Lucko
+No Means Ya
+No Meds
+No More Bugs
+No Much Bulk
+No Normies
+No Old
+No Pets
+No Rationale
+No Rugrats
+No Saint
+No Senpai
+No Sleepin
+No Souldier
+No Splits
+No Submit
+No Tax Due
+No Tbow Andy
+No To War
+No Xp Waste
+No Zily Luck
+No ah
+No toleranss
+No ur roll
No0dlehead
No53
+No7
NoAntiVenom
NoBankIRL
+NoBanksNoThx
NoBans
NoBp
+NoCreamy
NoDayMercy
NoDealEU
NoDropForMe
NoDurex4you
+NoEdge707
NoFame
+NoFang Wizza
+NoFapp
+NoFlipZone
NoGoodSkills
NoHelp
+NoHesitation
+NoInferno
+NoIronManBTW
+NoLife4Him2
NoLifeCue
+NoLifeLevi
NoLifeMain
NoLifeMcgee
+NoLifeScape
NoLifeSincRS
+NoLiferSoul
+NoLimit
NoLootBag
NoLootNoWoot
NoLove
+NoLuck Mario
+NoLuckBearku
+NoMarinero
+NoMercyUIM
NoMo
NoMore
NoMoreTrades
NoNumbers4me
+NoOlmletSig
+NoPainNoMain
NoPolnT
+NoPrims2k_kc
NoPurpleAku
NoRNGsmalle
+NoScyOrStaf
NoShit
+NoSprayNoLay
NoStore
NoStrategy
NoStress2Day
+NoTangleroot
NoTank4U
+NoTexture
+NoTradeBrad
NoTradeForMe
+NoVa ITI
+NoVow
+NoWaR
+NoXpWast3
NoXpWasted
NoZulrahIM
+No_Dumping
+No_Remedii
Noah
+Noah Dinnae
+Noah G
+Noah Luvs U
+NoahB
NoahGriffith
+Noahfireball
Noahs
+Noam Chompy
Noamonts
Nobber
Nobbys
Nobelanerr
+NobilityTorn
Noble
+Noble Gage
+Noble Oats
+Noble Sticre
NobleCorey
NobleVespo
NoblesForRec
+Noblood
+Nobody Good
Nobodyz
Nobrain
+Nobu
+Nobudy
Nobularlol
Nocando
Nocarred
Nochill
NocnyKoszmar
Noco
+Noctivagous
Nocturnal
+Nocturnal RS
Nocturnal024
+NocwocDaLord
+Nodens
+Nodonge5
Nodorcro
NoeLT
Noeka
Noem
+NoemMeJePapi
Noexi
+Nofolkn whey
+Nogal
+Nogi
Nogoodnms
NoiScape
Noig
+NoirSandy
+Noiserv
Noisy
+Noisy Luigi
+Noita-akka
+Noith
NoizRock
Noizex
+Nokil
Nokiny
NolanAlpha
+Nolch
+Nole Jr
+Noley
Nolifepvm
Nolifer
+Nolifer 28
Nolly
+NoloadRIP
Nolungs
Nolzeyy
Nolzzz
+Nom C
+Nom Ruby
NomCensurer
+NomNomSoulz
+NomadForseti
+NomadRek
NomadsLife
Nommmy
+Nomoenoobs
Nomonater
Nomskichooo
+Nomtiq
Non5ens31
+Noname Nate
Nonc
None
+None Feared
+NoneOther
Nonke
+Nonni
Nonplayer
Nonreal
Nonsense
@@ -16458,29 +34118,50 @@ Nonstop
Nonvalid
Nonwestlee96
Nonwitzki
+Noo Promises
Noob
+Noob Man
+Noob N Smoke
+NoobHey
NoobPkedMe
NoobWrecker
Noobacleese
Noobalhao
+Noobe15
Noobest
Noobicidal
+Noobike00525
+Noobirini
NoobishAct2
Noobs
+Noobsscape
+Noobtyle
Noobtype
+Nooby
Noodle
+Noodle Dude
+Noodle Me
Noodle Soups
Noodles
+Noodlike
Noodz
Nooki
Noolbort
Noon
Noons
+Noonshake
Noopi757
Noorbee
+Noorden
+Noosii
+Nooster
Noot
NopePope
+Noportals
NorCalGreens
+Nora Flora
+Norbet
+Norbsi
Norchis
Nordas
Nordfeir
@@ -16491,436 +34172,1036 @@ Nordstrand
Norfok
Norge
Norhig
+Nori Nitsuj
Norilsk
Norimasa
NormHadAFarm
+Normabel
NormanBates
+Normans
Normie
+Normie Main
+Normie helm
+NormieDalzii
+NormieFYI
Normies
+Normy Narked
+Norn
Norqe
+NorrSken
+Norska
+Nortenosk
North
+North No 2
+North Rmmbr
+North1ane
Northerly
Northfork
Northic
+Northnewfy
+Northrod
+Northtoeast
+Northxy
+Norti
Norton
Norton_Gman
-Norweed
+Nortoon
+Nortron
+Noscythe bad
Nose
+Nose Beerz
+Nose Puncher
NoseBeersies
Nosetkl
Nosevesey
NosferatuBoi
Nosni
+Nosnorb
Nosorow
Nost4lgia95
+NostalgiaNp
+Nostalgic
+Nostalgic00
Nostalgimon
Nostos
+Nostrily
+Not 0A
+Not A Lover
+Not A Robot
+Not Bad
+Not Brizz
+Not Carlyle
+Not Cynical
+Not Dzop
+Not Eternal
+Not Flicking
+Not Frac
+Not Gaming
+Not Ice
+Not Internal
+Not Ketho
+Not Level
+Not Lime
+Not Lorppe
+Not Med
+Not Mesijus
+Not Mikers
+Not Muppet
+Not Muppz
+Not Panik
+Not Perry
+Not Rudy
+Not Ryu
+Not Salinger
+Not Schuproo
+Not Sharp
+Not Soft Yet
+Not Sotetseg
+Not Tanzu
+Not Tarczon
+Not Tarny
+Not Twistie
+Not Vaxx
+Not Yakosu
+Not Your Nan
+Not ZB
+Not Zema
+Not a Fan
+Not a UIM
+Not all
+Not an elf
+Not enough
+Not even Dan
+Not main btw
+Not rn Babe
+Not trivial
+Not wow man
+Not-afraidem
NotAFKenough
+NotAJ
+NotALurer532
NotASkrub
NotAStreamer
NotAlright
NotBiabanana
+NotBot893294
+NotEp3
+NotEvenRare
+NotGilthresa
+NotHCJames
NotKD
+NotKailey
+NotKnowMadss
NotLefty
+NotMatched
+NotMaxinSoon
NotMinty
+NotN07NeMo
NotNecro
NotPker
+NotPlateWolf
NotReady
NotShaneska
+NotSoCasual
NotSoHCZoro
NotThaFather
+NotUIM
NotUrAvgTim
NotUrBisnis
NotValidName
NotYerGuyPal
NotaCola
+Notanedgepkr
Notanoob12
+Notfatprism
Nothard
+Nothin Lasts
Nothing
+Nothing Sold
+Nothing2die4
NothingMate
+NothinqThere
Notjoeybloom
Notlayla
Notmyrsname
Notori
Notorious
+Notorious N1
+NotoriousALB
Nottarg
+Nottingham
+Notutoring
+Notwind
Notz
+NouGIM
Nour
+Nouvelle Vag
+Nov
Nova
+Nova Lova
+Nova NK
Nova Rez
+Nova X1
NovaDragonX
+NovaNovNov
NovaNova_v1
+NovaaDay
+Novacult
Novahearts
Novahria
Novalisky
+Novamus
Novaqueen
+Novaspell
+Novelled
Novem
+November Air
Novesey
NovicePlayer
+Novist
Novizy
+Now Boarding
Nowa
+Nowa Lyfe
Nowlan2
Nowoxifer
Nowt
Nowuh
+Nox Irea
Nox1de
+Noxai
+Noxeek
Noxelder
Noxia
Noxied
+Noxif
+Noxifer Nino
+Noxifer Noob
Noxifers
Noxiti
Noxitrall
+Noy rs
+Noys
NozFox
+Nozel
+Nozzie
+Nozzles
+Npc Contact
Nppb
+Npzu
+Nrsa
Nrse
+NsG Flames
Nshit
+Nsns khalifa
Nsoak
+Nsor
Nssc
+Nstfu
Nt0y
NtQuiteRamb0
Ntsf
+Nu ff
+Nub Cakes
+Nub Cape
+Nub Die Plx
+Nub II Elite
+Nub at PvM
Nubby
+Nubby Nubnub
NubbyOtter
+Nubciclez
Nube
Nube101
Nubje
+Nubslie
+Nubthhh
Nubutraum
+Nuc1ear
Nuck
+Nuck Formies
Nuckie34
+NuckinPhutty
+NuckkinFuts
+NuclearDron3
NuclearShift
+Nucleons
Nucleotide
Nucu
+Nue
+Nuffedyr
+Nuffers
Nuffyz
Nuffz
+Nuge Hews
Nugget
+Nugget Farm
+Nugget8453
+Nuggo
Nugs
Nuhapiippu
Nuigaia
Nuirokay
+Nuk3rO
+Nuke
Nuke Rofl
NukeDuke98
Nukkumassa
+Nukooa
+Nukster
+Null God
+Null Quiet
+Null Scaper
NullObject
+NullTalisman
+Nulliko
Nullish
Nullly
Nuloh
+Nulsen
+Nuluki
+Num1 StepSis
NumTaker
Numazu
+Numb God
+Numb Too
+NumbButWhole
+NumbaWanGIM
Number
+Number Forty
+Number is 47
Number1
+Number1 Bass
Numbermatch
Numel
Numenor21
Numerater0
+Numerikaali
Numidium
+Numinious
Numismatist
Numpad
+NunWithAGun
Nuna
Nunac
Nunc
Nuno
NunsRtight
Nunsbox
+Nuoli Z
+Nuori Karhu
Nuparu22
Nupayne
Nupiso
Nuqubba
+Nuqx
NuranJeezes
+Nurco
Nurdal
NurgleBurgle
+Nurrminatorr
Nurse
+Nurse Turbo
Nurselie
+Nursering
Nusky
Nussi
Nust
+Nut Nut
+Nut on Nieve
NutStains
+NutZak
+Nutgood
+Nutipaa
+Nutjes
Nutrino
-NutsToButts
+Nutta
Nutu
Nutviper
+Nutwic
Nuubby1
Nuubi85
Nuuh
Nuuhi
Nuux
Nuwanda
+NvMe
NvMy
+NvMy Madness
NvUs
+Nvh
Nvidas
+Nvious7
+Nvr Ironman
Nvsh
Nwkz
Nxcv1
+Ny e
+NyThinIsFine
Nyaa
Nyalesh
Nyam2
Nyannoid
+NyarkThunaki
+Nybocs
+Nydarb
+Nydde
Nydloh
Nyesqui
+Nyholmeen
+Nyk X1
Nykat
Nyler
+Nymlonn
Nymph
Nyppe96
Nyquistt
+Nyranger99
Nyraxion
Nyrkki
+Nystuen
+Nythan
Nythos
+Nythsama
Nytrate
+Nytrogen
Nyula
+Nyx Avatar
Nyx296
+Nyx_TrueShot
NyxxiePixxie
+Nz Str
+Nz Boy 96
+Nz Str
Nzfisher
+NzhiaT
Nzpkers
+Nzz
+O C M W
+O E M
+O G Herbs
+O G RasTa
+O K E Y
+O L D Z E
+O Lewis
+O N W
+O O 9
+O O O O O O
+O Rodrigo
+O TUGA LINDO
+O X Y G 3 N
+O ctopus
+O dhran
+O hio
O l m e w
+O m a r
+O o g a
+O s s e
+O stake
+O-Scape
+O-Six Newb
+O-SobaMask
O0BY
+O5O5
+O64
+O7 offroad
+O93
OBD2
+OBGYN doc
+OBKush69
+OBLV Empson
+OBLV KKRKAT
+OBLVPIPEBOMB
+OButterstick
OCBP
OConnell
ODarnUFail
+OEM
+OFFS NFS
+OFS I
+OG AlanEspo
+OG BlowsCOX
+OG Boney
+OG Ezena
+OG Germ
+OG Greenery
OG H4zed
+OG Horizon
+OG IronAaron
+OG K1ng
+OG Kassu
+OG Kenobi
+OG Mr Crispy
+OG PvMer
+OG SUOMINEN
+OG Sage
+OG Soul
+OG StrongBoy
+OG Totti
+OG not OJ
+OG-Bebardo
+OG2
OGBloodFam
+OGJezus
+OGKingRavenZ
OGLman416
OGRockstar
OGTeacher
OGThicPickle
OGWhitePanda
OG_Westside
+OH NO PLZ
+OHC
+OHP
+OH_mes
OHv3rdose
+OINK OINK XD
+OId Nite
OJ AVENGER
OK Thug
+OLD MAKAVELI
OLUTMIES
+OLY Krzanich
+OLlVER
+OMEGAPEG
+OMG U DID IT
+OMG a GIM
+OMGstepbwana
OMNIV0RE
+OMX
OMYLANTAAAA
ONCES
ONDERBOKSEM
+ONE EYE Q
ONEBIGJOKE
ONEM0REBEER
+OON HUMALASA
OOOGAABUNGA
+OP Yoyoei
+OPEN NA N00R
OPIronman
OPName
+OPP2
+OREG0N
ORLZU
ORlCHALCOS
+OS Anthony
+OS BAKA
+OS Badger
+OS Flexin
+OS Gdtn
+OS Glory
+OS Hadley
+OS Iron Life
+OS Jordan
+OS Lou
+OS Maroko111
+OS Masochist
+OS Nat
+OS Reecy
+OS Versace
+OS Weesh
+OS dah
+OSBudknight
OSBug
OSCannabis
OSCastleWars
OSColbyStock
OSGingerkiin
+OSGraham
OSGrindscape
+OSHH
OSRASS
OSRS
-OSRS07
-OSRSQuests
-OSRSZ3US
-OSRSZach
-OSRSlayer
+OSRS Brody
+OSRS Cyze
+OSRS DANI
+OSRS Denmark
+OSRS Dresse
+OSRS Hostage
+OSRS Jim
+OSRS Joshua
+OSRS Keegs
+OSRS Moey
+OSRS Rapaaja
+OSRS STIMPY
+OSRS TOBI
+OSRS Tired
+OSRS Zezima
OSReaper
-OSRhys
-OSRvape
OSSD
OSSoulwars
+OS_AndyB
+OS_Jazzy
OSzerox
+OTF SPRINKLE
+OUTSlDERS
+OWE N
OZANN
+O_o
+OachKatzal
+Oak Cliff
+Oak Tree Ted
+Oaonui
+OasisRS
Oathbringer
Oathh
+Oatmels
+Oatre
OavTXXrC2Bc
+Ob1tuary
ObZenpai
Obama
Obama2014
Obanana
Obby
+Obby Apples
Obby Cam
+Obby Cape
+Obby z
+Obby200
Obedar
+Obelisks
+Oberschicht
Obese
+Obese Scrub
+ObeseMaurice
ObeyBdubb
+ObeydaWalrus
+Obfuscatiion
+ObiHiGround
+Obib
Object62
+Objection
+Objektas
Objektijuht
Oblitergator
+Obliticks
+Oblivion
Oblodzisz
+Obloid
Oblv
+Oblv Jass
+Oblv mobi
+Obnoxious
Oboi
+Obos
+ObscureFruit
ObscureHeart
ObscureLogic
Obscuremelon
Obsel
Obsidian
Obsidian222
+Obtain Shade
Obvious
Obviouseboyz
OcaJomba
Ocachobee
Ocara
+Ocara Debrew
+Ocarious 2
Occ0x
Occcy
+OccrumsRazor
Occulent92
Occupation
Occupational
Ocean
+Ocean Fog
OceanMachine
Oceanside
Oceanux
+Oced
Ocellari
+Ocelvon
+Ocg
+Och
Ochen
Ochit
Ochrie
+Ockult
+Oclusvision
Ocra
Ocst
+Octagawn
Octane07
+Octane09
Octanes
OctarineJake
Octave
Octavia
Octet
October
+October 12th
+Octoberain
Octopossy
Octoppus
+Ocuflox
+Ocular Rift
+Oculist
+Ocyd
+Odang
+Odawg121
+Odd Focus
OddPhallus
+OddSaus
OddSnipa
+Oddjob46
+Oddloop
Oddni
Odeee
+OdenKozuki
OdensWinterG
Odeon
Oder
Odezt
Odin
+Odin Slayin
+Odissious
+Odiums Champ
Odlaw
Odonodb
+Odophru
+Odors
Odssy
Odsza
+Odyssey Fe
Odyssey310
Odysseyyy
Oenhausen
Oenonymaus
+Oepeloetje
+Oepsie
+OetOet
Oetje
-Oetlul69
+Of The Rune
+OfThePirates
+Off Pace
+Off Rate
+Off a Bar
OffMyChest
+OffPeesh
Offer
Offering
Offers
+OfficerTFist
Offka
+Offlime
+Offret
Offset
OffsetPaul
+Og Voldemort
OgAcco
OgChrisCudi
OgDankRiddim
OgHood
+OgSephiroth
Ogazumu
Ogg25
+Ogisek
+Ogkek
+Oglong King
Ogmj
Ogopogo5000
Ogre
Oguussie
+Oh Bee One
+Oh Billy
+Oh Canadian
+Oh Daddy Yes
+Oh Edgeville
+Oh Gzuss
+Oh Hi Marc
+Oh Im Ben
+Oh Its Toast
+Oh No Oreo
+Oh So Alone
+Oh Tylor
+Oh Vacancy
+Oh sh
Oh4Sure
OhDannyBoii
OhEmGe
OhHaiMark
OhHeyGrant
+OhIScott
+OhItsMatt
OhJezuz
+OhLookABot
OhManOhJeez
OhMyJosh
OhMyShoulder
OhNo
OhNoMyHymen
OhTurtle
+Ohbi
+Oheck Im Fe
OhhCaleb
+OhhMikey
OhhTiS
Ohio
+OhioTexas
+Ohlander
+Ohm Calvin
+Ohm Free
Ohpiate
Ohseeya
Ohtoodles
+Oi
+Oi Matey
+Oi You
+Oie
Oifey
+Oij
Oikeisto
Oikis
+OilHawk
+Oiler1k
Oilertay
+Oilux
OilyMeat
Oinky
Oishii
+OisnesA
Oispa
+Oispa Kaljaa
OjibweJohn
+Ojigkwanong
+Ojman
+Ok Bud
+Ok G
+Ok Jose
+Ok a y
+Ok-sail zip
+OkYh
+Okadolf
+Okageo
Okaiko
Okay
+Okay Mommy
+Okay Papi
+OkayCCal
OkayTwilly
+Okeechobee
Okeydoke
Okino
+Okke
+Oklahoma Rat
+Oksa
Okupant
+OkzobRS
+Ol Mucker
+Ol Salty Dog
+Ola Nordmann
Olajuwon
+Olav Jr
Olav2002
Olaveraaa
+Olaviitsio
Olbyy
+Old 9m9a9
+Old Abe 101
+Old Anao
+Old Beer
+Old Bill
+Old Birdy
+Old Boy
+Old Champ
+Old Dabs
+Old Delf
+Old Dry KBAC
+Old El Paso
+Old G ordao
+Old Greggg
+Old Jedi
+Old Lancer
+Old Man Bob
+Old Man Cris
+Old Man Rabb
+Old Maxie
+Old Mog
+Old Monkey3
+Old NlCO
+Old Nutbag
+Old Olorin
+Old Pixels
+Old Player22
+Old Rangoon
+Old Sbi
+Old Schooled
+Old Toaster
+Old Yammu
+Old man Kent
OldBae
OldBlueish
+OldBruce
+OldDirtyMan
+OldFishLife
+OldGamma
OldHitta
+OldHulver
+OldQwaltz
+OldRzzlTrog
+OldSkewlRS
OldSkoolKush
OldSteinlein
+Oldbaldman5
Oldburnzy
Olde
+Olde Nite
Oldemark
+Oldinsh
Oldizjr
Oldman
+OldmanP
+Oldmanhandz
Oldschool
Oldschools
OldskuleRS
+Oldsusik
+Oldtimate
+Oldwhiteman
+Ole
+Ole IrIsh
+Ole Martin
OleFrumpacus
+OleMusky
+OleStinkBait
+OleTejas
Oleg
Olei
Olemand8
Olen
+Olen Iron
+Olenpromees
Olertomb
Oles
OlesDpaul
Olette
Olfre31
+Oli
+Oli xo
+OliTheFarmer
Oliivi
+Oliivi Rouva
Olimpus
Olios
Olivas
Olive
+Olive You
+Oliveinho
+Oliver GIM
+Oliver The G
Olivia
Olkikalsar
+Ollie 01
+Ollivanders
Ollonjonny
Olly
+Olm Alone
+Olm Likes me
+Olm Nut
+OlmMyGod
+Olmar
Olmek
+Olmie Wolmie
Olminous
Olmlet
Olmlit
Olms
+Olms Daddy
OlmsNutz
Olmsbish
+Olmspetwhale
+Olobor
Olrox
+Olspa Rahkaa
+Oltsu
Olvi
+Olympic 33
Olysian
Olze
+Oma r
+Omaci
Omar
+Omar Kai
+Omar Khaldun
+Omar Uchiha
Omarinski
+Omatunto
Omaxiu
+Ome Sjors
Omega
OmegaBeast
OmegaRs3LuL
+Omegathletic
+Omegatron
+Omen Forrest
+Omena3
+Omerta
Omfg
+Omhellz yea
+OminousMan
Ommetje
Ommy
Omne
Omni
+OmniRick
Omnicide97
+Omnient
Omnivaw
+Omolon
+Ompikuusi
+Omroep Max
+On Blocks
+On Rate
+On Steven Dr
+On Tv
+On a Bar
+On the alt
+OnAMeme
OnDeaTHrow
+OnPoint
OnRedPanda
OnTheEdge
+On_log_n
+Onana
Onbekend
Onbekende
Once
+Oncey
Onchune
Oncle
-Ondra969
+Oncle Jazz
+Onderwerp
+One Arm Chin
+One Eyed Owl
+One Lazy Cat
+One Leaf
+One Off
+One Piece X
+One Record
+One United
+One Wolf
+One au
One life lad
OneBadNWord
+OneBoxBox
+OneCallBTW
OneClickMan
+OneDayIs2Day
OneFalseStep
OneFive
+OneForAll8th
OneFunkies
OneInchDong
OneInchPeen
OneJohn
+OneLeg1
OneLifeGiven
OneLostMain
+OneManBand
OneManBucket
OneManNoob
OneManTeam
@@ -16933,205 +35214,383 @@ OneSillyBoi
OneSnappyBoi
OneTera
OneTickAway
+OneTickBrick
+OneTickyBoi
+OneWhoKnox
+OneWish
Onebuc
+Onedeadthing
Onehidefrog
+Onelaughbob
Onesecafk
+Onesome
Onetick
Onexia
+Onfight
+Ong Gia
Onidhre
Onika
OnionGoggles
Onism
+Onitir
+Onkdah
+Onke
+Onkel Dunkel
Onkelleif
+Onkologen
+Online Coach
Only
+Only 1 Iron
+Only Bussy
+Only Crazy
+Only Fight8
+Only Scotch
+Only Victims
+OnlyBans
OnlyBrand
+OnlyChompies
OnlyCraig
+OnlyDanss
+OnlyDrags
OnlyFFAns
OnlyFans
OnlyFansss
-OnlyHalfGay
+OnlyFlies
+OnlyGain
+OnlyJars
+OnlyJoel
+OnlyJordann
OnlyKingKoob
+OnlyKisses
+OnlyKnuup
OnlyPepsiMax
OnlyRussell
+OnlySolos
OnlyTheCold
+OnlyWithTime
Onlyfans
Onlyfarm
OnlyyMike
+Onn
Onno
Onoezeleer
Onoin
Onox
OnthatGrindd
+Onu-sama
+Onubis
+Onus
Onuzq
+Onxaba
Onya
Onyksi
Onyx
+Onyx Farming
+Onyxe
Onze
+Oo Step Back
Oodenssiii
Ooelluoo
+Oof Dankus
Ooft
Oofus
+Ooga Booga C
+Ooh Skill Em
Oohf
Oohfunkyme
+Ooiboi
OokOokStrats
Ookfried
Ooktism
+Oomp
Oompy
+Oooh Baby
+OopsiePoopsy
+Oopsralla
Ooskabible
+Oouu Weee
Ooyf
Ooze
Oozymooz
+Op Closed
+Op Wout
+OpGetGood
+Opa Bravo
+Opa Snipes
OpaJei
+Opacki
+Opal Mafia
+Opalfruen
Opatsuno
+Opel Vivaro
Open
+Open GL
+Open osrs
+OpenAI GPT4
OpenTheTill
+Openpuppygo
Opera
Operacional
Operetta
Opex
Opgezwolle
Ophelia
+Ophelia Prim
Opiez
+Opihr
Opinionated
+Opitz
OpiumWard
+Opkikkeren
Oponn
OppaSky
+Oppai Heart
+Oppai OwO
Oppanox
Oppheng
+Opposite
OppositePoop
Oprego
+Opreus
+Ops
+Opt
Optic
+OpticAGS
+Optical itch
Opticplex
-Opticplex07
+Opticplex09
+OptimistLuke
Optimus
+Optimus Pork
+Optiver
Opts
+Optus
Optyfen
Optyfengauww
+Opus Deo
+Opus149
Opus22
+Opyomi
+Oqagin-san
Oqlak
OracleOf
+OracleStud
Oraclez
Orange1213
Orangeboy333
+Oranje Panda
Oranqe
+OrbWeaver
Orca
Orcanater
+Orch
Orchazm
Orchid
Orchidzx
OreSpasm
Oreano
+Oreeezy
+Oregon Weed
Oreinstein
+Oreo Empire
+Oreo UwU
+Oreo Wafer
Oreos
OreosInMilk
Oretizm
Oreton
Orezzer
Organic
+Organic Hemp
OrganicOnion
-OrganicWeed
Organics
Orgasmique
+Orgo
+Ori lion
Oriaks
Orienterare
+Origens
+Origin Puff
+Original BA
+Original Blu
OriginalGoat
Originaljim
Originexo
Orilion
+Oringl Wafle
+OriobanaOuhi
+Oriole
Orioles
OrionDragon
OrionRenegd
Orjan
+Ork Merchant
Ormi
+OrngFish
OrngeManBad
Orodyn
+Oronius
+Orphaaan
+Orphaan
Orphan
+Orphan Annie
+Orphan Soul
+Orphan Twin
+Orphan8r
+Orpheus
+Orpoerpo
Orrey
+Ors striker
Orthago
Orthiss
OrthodoxJoo
OrthopodMD
+Orvud
+Oryx Aksis
+OryxZebu
+Os Him
+Os Hitman
+Os Rolex
Os SMDJ
OsBlackBolt
OsBrody
OsBudknight
-OsRs
+OsDave
+OsIronCrash
+OsRs Vibes
Osav
+Osbenji
+Oscar Jacob
Oscarnight90
Oscietra
Osdorp
+Osetek
Osgu
Osgub
Oshawnasi
+Osidric
Osimhen
Osiris
Osjuicey
Oskar
+Oskar XVII
Oskari
Oskinathor
Osmo
-Osrs
+Osrs Bane
+Osrs Dimitri
+Osrs Goku
+Osrs Mistren
+Osrs Woolley
+Osrs2007
+OsrsBawlz
+OsrsDavid
+OsrsVibes
+OsrsWiki
+Osrshabibi
Osscar69
Osseb
Ossi666
OstBakarn
Ostengar
+Ostentatio
OsteoSoon
+Osteonics
Ostidecriss4
+Ostmumten
Ostracized
Ostrich
Osumi
+Osvo1d
Oswaldorun
+Oswin Oswald
+Osxu47
+Osykoo
Osyrs
+Otago Nz
+Otakar
Otaku
+Otan Olutta
+OtarsBeast
+Othantos
Othelllo
OtherJackets
+OtherWize
Otho
+Otomycosis
Ottarl
Ottchy
Otter
OtterMG
OtterMan
Otto
+OttokarIII
+Ottoman1907
Ottwanbre
Ottzor
Otyugh
+OuchIFarted1
Oucho
+Oud Nieuws
Oudenophobic
Ought
OuiDaddy
Ouija
+Oukashi
Oulusta
+Oumaji
Oumarou
Oumu
Ounaaja
Ouncie
+Our ClapTrap
+Our Kid
+OurLordAllah
OurPage
+OurTbow
+Out Of Herbs
+Out of Town
OutOfBreath
OutOnBail
OutR
Outbid
+Outblasted
Outblasting
Outbox
+Outbreak46
+OuterBodyXP
+OuterShock
+Outgrinded
Outie
OutlawBTW
OutofQontrol
+Outofcontrol
Outohere
Outperform
+Outplayy
Outra
+Outs
Outsider058
OutsidrR
OuttaThePan
Ouze
Ouzi
+OvO
Ovaryacted
Ovaryacting
Ovela
+Oven Dish
+OvenGold
+Ovenschotel
Over
+OverRoid
+Overburner67
Overcame
Overclockers
+Overdose1911
Overhand
OverkillWill
+Overklokkd
Overlegen
Overload
Overload_inc
@@ -17142,155 +35601,334 @@ OverpowTV
Overprepared
Overrated
Oversight
+Overspan
+Overspec
+OvertPyro
Overtaxed
Overthinker
Overtus
Ovid
+Ovl
+OvrLrd Zaros
+Owed
OwenFever
+Owip
+Owl Full
+Owl MD
OwlMyLove
+Owlea
+Owlpeth
+Owlson
+Owly
+Own Risk
+Own Skillz70
Own617
Ownage
Ownd
Owned
OwnedByMK
+Owner Previn
+Owning
Owning4babes
+Ownsz
Ownt
Ownyouall6
+Owusu
Owwi
+Ox Prez
+Ox0 Ko0ol O0
Ox310
+OxStache
Oxct
+Oxcy
+Oxeon
OxideIon
+Oxidising
+Oxidizing
Oxiduck
Oximas
Oxit
Oxium
+Oxjenks
+Oxoi
+OxyCottN
OxyDream
Oxycotton
Oxyoxyoxyoxy
Oyrn
Oyster
+Oyster37
Oyugock
Oyvin
Ozaiii
+Ozak
Ozcred
Ozeana
+Ozenc
Oziarch
+Ozin
OzirisRS
Ozium
Ozmone
+Oznerbon
+OzokuLight
Ozuhan
OzyMex
+OzzMate
+Ozzb0
Ozzerro
Ozzie
Ozziemate
Ozzio
Ozzy
+Ozzy Hobbit
+Ozzykye
Ozzys
Ozzzyy
+P 0 W N E D
+P 0 E F
+P 0 R G I E
+P A M K A
+P A P Z
+P A R N Y
+P DIRTY SODA
+P EDRAO
+P Eng
+P I T
+P K
+P O L I S H
+P O T A T O
+P O V I
+P Purts
+P R O X
+P R S
+P V M Lew
+P W A Y
+P Y R O
+P a n x o
+P eachy
+P erfect Ten
+P h Z o r o
+P i
+P ix
+P ixe l
+P o z e
+P oH
+P ockets
+P r o g r am
+P udding
+P ure
+P uss Wizard
+P00ksalukes
P0CKETPUSSI
+P0ES
P0PE
+P0RKB0I
+P0ST HUMAN
+P0TIONS
+P0TTER
P0TUS
P0ddy
+P0nti4c
P1CC0L0
P1CK3R1NG
P1Hat
+P1SSBANDIT
+P1ZZA EATER
+P1ZZY
+P1ckleR11ck
+P1ssDr1nk3r
+P1stols
+P1tts
P1zzaTheHutt
+P1zzaa
P2Chill
P2D2
+P2P Race Car
+P2w Scape
+P3C
P3RKELE
P3RLICH
P3RMMUT3D
+P3T3 IS G0D
P3TAR
P3aceful
+P3loce
P3rcy
+P46
+P4CK
P4DLA
P4RKER04
P4cH
P4sk
P5ythix
+P6D
+P7DRO
+P9
+PA N I C
+PACK WATCH
+PACKETLOSS
+PACTV
PALAK1KO
+PALL3N
+PALSAM
PALSANMAKI
+PANTY DROPER
PAPA
+PASTORIKONE
PATPATMAX
PATRlOOT
PAUL
+PAULWALKER
+PB Barbie
+PB Dauntless
+PB J
+PBT Yumi
PBTM
+PBnJ
+PC PrincipIe
+PC0TE
PCCZ
+PCDO
+PCE
PDGA
PDizzleworth
+PE strategy
+PE3ST
+PEAMINlSTER
PEARSON92
+PEC Zwolle
PEEKYNUMBER1
+PEEinAcup
PERMA
+PERSE
PET3R
+PET3R PAN
PETEAIR
+PF Killaz
+PFOF
PFalciparum
+PG MAIN
+PG-13
+PGA_Pope
PGMid
PGmeupe93
PH1SH3DB4N
+PHGomes
PHLP
+PHURY
PIAN0
PICC
+PIITAA
PING
+PINKYxBRAIN
PITFIGHT
PJ Salt
+PJRovers
+PK NOOB BR 2
+PK Shark
PKTHEOTHER
PKing
PL4T1N4
+PLANET SHlT
+PLAYER827324
+PLAZID
PLSDONTPLANK
POGPOGPOG
POGvM
POMP3Y
+PONYRIDER73
POTTER
+POTUS DJT
+PPale
PPorappippam
+PQMF
PQWNEM12XXSS
PRADA
PRAISE
+PRAISE FOOT
+PRAISEHELIX
PRETTY
+PREW0RKOUT
PRIM0B0LAN
+PRIZ0NM1KE
+PRODaintOFFu
+PRlNCEE
+PSMark
+PSO Pokie
PSRB
PSTjager
+PSY OPERATOR
PSacz
PTKNT
PTMN
PUBG
PULL
+PULL A GLOCK
PUNANYCEZZ
PUNANYMASSIF
+PUPPY SIT
+PURP xx
+PURPLE MAN X
PUSHUPS
PV60
+PVM PLUS PVP
+PVM Zem
+PVM lifee
PVMGrim
PVMramranch
PVPJACKUS
PWNJoLee
PWNl
+P_rple
+PaIe Nimbus
PaIm
PaJau
PaPaSaucee
+PaPePiPoPuPy
+PaR0
PaShango
PaTeraNauu
+Paaaants
Paaatriick
+Paarse Kat
Paarty
+Paatse
PabIoEscobar
Pablana
+Pablo Q
+PacDan
PacYakJack
Paca
Pace
+PaceYourself
Pacellino
Paciar
+Pacifico0ler
+Pacifist
Pack
+Pack Yarack
PackAnother1
+PackYakistan
Packapunchd
Packers
+Packers Ammy
+Packfan35
PackingCope
Packmanjr
PacksOfBagel
+Paco 41
Pactii
+Pad of Note
+Paddy Simcox
+Pademelon
Padge
Padraig
Padrew
Paduann
Paehkisfe
Paem
+Pafffy
Paffio
Pagan
PaganFox
@@ -17299,61 +35937,115 @@ Page
Pagman73
Pahapukki
Pahizz
+Pahys
+Paid 4
Paike
Pain deliver
+PainInTheAx
+PainRain
Painb0ws
Painovoima
PaintBoxx
Painta
Painted
+Painz Wrath
+PairODocks
Paixo
+Paiyrd
Paizuri
Pajaaay
+Pajama0sam
Pajaripipari
Pajita
Pakaika
Pakanajumala
+PakasteOlut
Pakford
Pakmaniac
+Pakr04
Palabutoh
Palad1um
+Paladijn Mb
Palapak
+Palataan
Palatro
Pale
+Pale Marble
+Pale Player
PaleCocoon
+Paledeano
+Paleek
+Paleek sucks
Palenaatio
+PaleoRanger
PalestineHC
+PaliRebel
Paliperidone
+Paljad
Pallas
+Pallas Cat
+Palle Panik
+PalliJarn
Pallihintti
Palllister
+Pallof
Palmboom
+Palmboom95
Palt
+Palworld CEO
Paly
PamPams
Pamdora
+Pamela Isley
Pampas
+Pamz
+Pan Biceps
+Pan Jawel
+Pana Sicknez
Panacea
+Panal
+Panarin
PancakeOSRS
+Pancaker
Pancakey
Pancukeshi
Panda
Panda Godz
+Panda Pride
+Panda Rua
+Panda Seany
PandaBier
PandaBrommer
+PandaKIKI
PandaMan
PandaMcfanda
PandaPowa
+Pandasadge
Pandaux
Pandaz
Pandeh
+Pandemicbowl
+Panderal
Pandiman
+Pandini_O
+PandorazBox
+Panelka
Panera
+Panesii
+Panette
Panferno7
Pangolins
+Pangs
Panic
+Panic King
+Panic Papi
+Panic Switch
+PanicThenRun
+Panicupdate
+Panini
Panixate
Pankekee
+Pankki on
Panky
Pannu
Pano
@@ -17361,32 +36053,82 @@ Panoople
Panorramix
Panqueques
Pans_Gaming
+Pansendoras
PansophicaI
Pantaloon
+Pantelic
Pantera1230
PanteraWalk
Panthalassa
+Panther_Cap
+Panties D0WN
Pantix
+PantlessDuck
+PantsShitter
PanzerMarkV
+PaoZi41
Paoul
+Pap Smoke
Papa
+Papa Beat Me
+Papa Beer
+Papa Chibs
+Papa Falco
+Papa Glock
+Papa Hitman
+Papa John
+Papa Kev
+Papa Peck
+Papa Penguin
+Papa Raniel
+Papa Rook3
+Papa Scape
+Papa Shaydee
+Papa Sheek
+Papa Snacks
+Papa YY
+Papa Zuk
+Papa jinx
+Papa tim
PapaCart
+PapaFozzy
PapaJohn
PapaJoyce13
+PapaMoxie
+PapaParsley
+PapaSarducci
Papabeer
+Papagecko
Papaija
Papalotee
Papapa
Papaya
+Papaya Pete
+PapayaGod
PapayaPetee
Papegaaitje
Paper
+Paperbag
Papi
+Papi Baz
+Papi Chop
+Papi Feb
+Papi Fish
+Papi Gains
+Papi Okapi
+Papi Sam
+Papi Sean
+Papi Six
+PapiTron
Papicito
+Papicodone
+Papido
PapieLexus
PapierHier
+Papierschere
Papii
Paplip
+Papo Sauce
Pappa Mauly
PappaPizza
Pappanopolis
@@ -17394,65 +36136,120 @@ PapperNapper
PaprikaBoi
PapuIsThatU
Papukaia
+Papyea Fruit
+Papz Mage
Paqan
+ParKy_ParK
+Parabhjeet
Parabolic
Paracleis
+Paradoos
Paradox
+Paradox 2277
+ParadoxAU
+ParadoxCrux
Paradoxal
Paralimpian
Parameters
Paramost
+Parandrus
Paranosys
+ParaplegicIM
Parappa
ParasiteHunt
Parasitoid
ParasoxX
Parazino
Parc
+Parc Ferme
+ParchedToast
Parciparla
Parent
+Parfour
Parhaat
Pari
+Pariera
+PariguayoGL
Parikh
+Parikkala
Parish
+Parjesh
Park
+Parkchae
Parkehh
+Parker177
Parker1770
ParkerSquats
Parkerrr
Parkuh
Parky
Parkz
+Parley0
ParmsG8
+Paroni007
+Paront
+Parotis
Parox3tine
Parrot
+Parrot Champ
+Parrot Le Fe
+Parrot Poop
+Parsecs
Partey
Parth4903
Parthnix
+Particulae
Partly
+Partonax
Parttime
Party
+Party Fraud
+Party Pete
+PartyRock
+Partyhaty
Partynexdor
ParuParu
Parvovirus
+Parx98
+Parxe kurita
+Parzival32
Pasadinas
PashkaPushka
Pashmina
Pasianssi
Pasiiba90
Pasikaustes
+Pasito
PasitoBandit
Pasje
+PaskaJatka69
PaskaneHomo
+Paskie
Paskis
Pasmo
+Pasrules
Pasta
+Pasta Lance
+Pasta Mancer
+PastaShel
Pastabrain
+Pastafreezer
Pastagonia
+Pasticcione
Pastor
Pastry
Pasu
+Pasza1357
+Pat NoScythe
+Pat The Nerd
+Pat the Cat
+Pat twumasi
+Pat_y
+Pata2006
+Patalopodus
+PatchRS
Patchley
+Patdog666
Pate
Patella
PatentedName
@@ -17461,6 +36258,7 @@ PathTracker
Pathogen
Pathways
Patio
+Patious
Patmantheman
PatoVelaz9
Patojo
@@ -17469,19 +36267,34 @@ Patrexion
Patrician
Patrick
PatrickClick
+PatrickLaine
Patrickp35
+Patrik Laine
+Patriot88
+Patriotscape
Patriotsp
+Patriottj
+Patrolliin
Patronique
Patrouski
+Patryk 1
Pats
Patsey
PattMyGun
Patta1
+Patte
Pattos
+Patty C
+Pattycakes19
Pattyrick8
+Patyfatycake
Pau1ekas
Pauk
Paul
+Paul 0
+Paul Beer
+Paul Ski
+Paul0 H
Paul007
Paul90333
PaulD
@@ -17489,13 +36302,23 @@ PaulOH10
PaulTheRabbi
Paulchritude
Pauleee
+Paulest Paul
PauletteRose
Paulius
+Paulk23
Paulrat
+Paulrat 3
+PaulyNFS
+Paum No Xeem
+PauperPlayer
Paupy
+PauseGuy
Pauwels
+Pauwels v2
+Pavies
Pavio
Pavla
+Pavlacci
Pavlvs
Pawggrs
Pawgz
@@ -17503,46 +36326,80 @@ Pawko
Pawlmeister
Pawlu
Pawlzer
+Pawn 69
+Pawn M8
+Pawrie
Pawwsy
+Pax Mundus
Paxin
Paxy
+Pay2ClickLol
PayMyDeedFWD
Payne_Trayne
Paznos6
Pazuta
Pazzo-Repack
Pb Fe
+Pb and Jd
Pbby
Pbkillua
+PbyOne
PdaddyReborn
+PdfPKerNoGF
+PdiddyReborn
+Pe en
+Pe t er
+Pe1ipp3r
Peabody
PeacandLove
Peace
PeaceNLove31
+PeaceOfMind
Peacebuild
+Peaceer
Peacefrog
+Peach s
PeachKing
+Peaches5000
Peachh
Peachhh
+Peachy Tank
+PeachyBrute
PeachyDean
+Peaco
Peacoat
Peak
+Peakado
Peake
+Peake7
Peakleaf
Peaky
+PeanutBTW
Pear
+PearOfApples
+PearlNechlis
+PearlWeed
+Pearlito
Pearshaped9
Peasant
+Peasyy
PeatMoss
Peatie
Peba
+Pebbex
Pebblez
PebisGuan
Pebl
+Pebu
Pebz
PecanBread11
+Pecker Punch
+PeckerFish
+Peckerflexer
Pecki
Peco
+Pecs
+Pectorialis
Pecuni75
Peddler
Pederbuus
@@ -17550,30 +36407,57 @@ Pedestrian01
Pedro
Pedro5901
Pedtato
+Pee Jay Salt
+Pee Kay Err
+Pee Mud
+Pee On Irons
PeeJayPlayz
PeePee
Peeanut
+Peeble
+Peeeeeekaaaa
+Peeke
Peel
+PeelMyCarrot
PeeledBanana
Peely
Peen
PeenLover61
+Peep Taimla
Peepo
+Peepo Parker
+PeepoPants
+PeepoRiot420
+Peeps Cx
+Peepzilla
PeerTheSeer
Peernicus
Peeshuuu
+Peest
PeetrusEst
+Peevish
Peevy
Peezerthecat
+Peg Boots
+Peg My Arse
+Pegasian
Pegasians
+Pegasus51C
Pegi18
+Peha
Pehkis
Pehmolelu
+Pei898
+Peighniss
Peiin
Pein
Peipeilaile
+Peipi
Pekaia
+Pekays
Pekdon
+Pekka Elo
+Pekka-Eric
Pekka557
Pekkaa
Pekkaad
@@ -17583,106 +36467,211 @@ Peksaad
Pelaa
Pelaaja1
Pelco
+Pele Marreta
+Peli Moapa
Peligroso
Pelikaen
Pelippper
+Pelirroja
Pelmee
Pelosi
+PeltiPirkka
Peltolammi
+Pemiel
+Pen Sir
Pena
+Penally GIM
+Penance Boom
Pencelis
PencilVesta
Pendax
PendulumC
Penetrader
+Peng Lightey
PengMaster
+Penge1616
Penguin
+PenguinBelly
Penguino
Pengwim
+PeniAnus
+Peniel
Peninsula
Pennstate
Pennsylvania
PennyPinchnJ
Pennybag
+Pennycord
Pennywise
Pennywise070
Pentagrammi
+Pentektonyx
Penthera
+Penthrox
Penthus
Pentu
+Penward
Peopledud
Peoples111
+Peor
+Pep Kroket
Pepar
+Pepar Kakan
Pepclub101
Pepco
PepeGUH
PepeHang
PepeLaughing
PepegaScape
+Pepeh
Pepemiguel
+Pepo Is Me
Peppey
+Peppi
PeppiEnSossi
+Peppusieni
+Peppy Pete
Pepsi
+Pepsi Maxed
+Pepsi Maxia
+Pepsi575
+PepsiMaxL1me
PepsiTwist
Pepsies
Pepsipowars
Pept
+PeptoGlizmol
Pepuszka126
Pequenaud
Pequette
+Per Ke Le
+Perc 3m
+Perceive
+Perceptivity
+Perch Curry
Perchlorate
+Percy Grail
+Percy Nash
+Percy Turner
+Perduh
+Peremees
Perfect
+Perfect Dark
+PerfectCurse
+PerfectJerni
PerfectProof
+Perfectaaa
+Performax
Perfringens
Pergert
+PerhapsGuy
Peridots
Perikles460
Peril
Perkinatored
Perky
+PerkyPorker
Perlen
+Perm II Mu8e
+Permabulk
Permded
+Permedd
+Permer
Permuh
Pernix
+Pero Scoped
+Perox
Perp67
Perpl
+Perplox
Perrault
+Perrif
+Perry Hubes
+Perry T
Persephatta
Perseveranca
Persian
+Persilja
+Perspective
+Pert
+Perterritus
+Perth
+Pervy x Sage
Pesiz
Pesoprkl
Pessimism
Pest
+PestGodd
Pestilance7
+Pestilent Bt
Pestle
+Pet Alpaca
+Pet Awowogei
+Pet Cape
+Pet Crusader
+Pet Eric
+Pet Hunta
+Pet KBD
+Pet King
+Pet Luck
+Pet Meowtain
+Pet Smuggler
+Pet The Cats
+Pet Ty
+PetBoost
PetCorp
+PetHuntBrad
PetHuntGrind
PetHunta
PetHunting
PetPlease
+PetSpooner
PetUrSausage
+Petal
Petalite
+Petar228
Petarss
+Petched
+Petchy inis
+Petcord
PeteRePete
+Pete_901
Petega
+Petelgeuse1
+Peteniice
Peter
-PeterButts
+Peter DIY
+Peter Dupas
+Peter Kent
+Peter97
+PeterLimbeek
+PeterPlanker
PeterRS
PeterTheSalt
+Peterh
Peterm
+Peterszoees
+Petey pleb
Petit
PetitKeBeQ
Petite
+Petite Poire
Petless
+Petooted
Petpet
+Petrenkovitz
+Petricsh
Petriq
PetroX77
Petrosian
+Petting GIM
PettyName
Petuhh
Petz
+Peuramaa
PewTheMeow
+Peweherman
+Pewming
Pex3
PexBoi
Pexci
@@ -17690,56 +36679,97 @@ Pexezz
Pexterity
Pextill
PeytyPoo
+Pez xX
+Pez za
Pezy
Pfiny
Pfister
Pfle
Ph0g
+PhD Fred
+PhD Funk
+PhD in TCG
PhaMaTics
+Phader
Phaero
Phai
Phainesthai
+Phalamon
Phallic
PhallusBigus
Phamia
Phamit
Phant
+PhantomDred
PhantomFiend
+PhantomLogic
PhantomVS
+Phantombear7
Phanton
PhappleSauce
+Pharaoh Chad
+Pharaoh Ion
Pharmafia
+Pharqen
Phase
+Phasedd
Phasing
Phasmatus
Phasmatys
Phat
+Phat Dik
+Phat Pat
PhatAsher
+PhatFrat
Phathead
Phatman348
+Phats
PhatsoCallum
Phatt
Phatty
Phattyftboy
Phaxe
+Phd n Arteez
Pheasant
+Pheasant Egg
+Phels
PhenXX
+Pheniex2
Phenomenal
+Phensa
+Pheonixess
+Pher
Phernix
Phetty
Pheus
Phex
Phi184
+Phibes
Phil
+Phil Coulson
+Phil Mcrakin
Philip
+Philip424
Philipp
Philkwl
+Phille
+Philli Blunt
+Phillies
+Philliez
Phillip
+Phillip R
Phillipp
Philly
+Philly Sucks
+PhillyFiller
+Philoi
Philosophia
+Philou
+PhilsBent
+PhilsUnlucky
Philth
Philtration
+Phin_C
Phinxu
Phinz
Phipple
@@ -17747,91 +36777,181 @@ Phishn
Phizo
Phlaja
Phlegmy
+Phlemming
Phloppster
+Phlopsy
+Pho Z
Phobias
PhobosDeimos
Phoibos
Phonatik
Phone
+Phone Number
+Phone Scaper
PhoneHC
Phonebook
Phoneman
+Phools
Phoque
+Phor Skin
Phosani
Phossa
+Phostus
Photographs
Photon
Photonic
+Photos
+Phragasm
Phrak
+Phrexyian
+Phrez
PhriarPhace
+Phrizo
+Phrocks
Phsteven
+Phug
+Phugma
Phuke
Phuket
Phwan
+Phxrm
Phylum
+Phyrlo
Phyro
Phyronex
Physics
+Physics Jedi
+Phytz
Phyzxs
+Pianio
+Piano Hands
+Pianoanddrum
+Piantissimo
Piasa
+Pic of Feet
+Picante
Piccoloownsu
Piccy
+Pichi Slayer
Pickl3Lover
+Pickle Josh
+Pickle Vick
PickleKez
+PickleSaucy
+PickledWater
Pickles4Me
+Pickles69314
Picklzz
PicnicBomber
+PicoDico
Picolo
PictureID
+Picuu
+Picuwu
+Pidbull
+Pidbull 1
+Pidgeot18
Pidgey
+Pidgy
Pidiot
+Pidrux
+Pie
+Pie Dish
+PieGPT
Piecekeeper2
+Pieces
Pieck
+Pieerio
Piemaksa
Piemans
+PiemieJurrie
Pieper
+Piepieweenie
+Pier Just
+Pierced Wolf
+Pierenbadje
Pierniczek00
+Piestove
Piet
+Piet 21
PietKrediet
Pieter
+Pieter Zwart
+PieterPep
Pieterjan
Pietermans
Pietn4
+Pietrangelo
+Pietrnogiets
Piety
Piety Prease
Pieza
+Pieza de oro
Piffen
-PigDOG 669
Pigeon
+Pigeon Soup
+Pigeonmight
+Piggi Smalls
Pigi373
Piglette
+Pigman461
+Pigmeu
+Pigpikerush
Pigpuffer
Pigs
Pigwardfrog
Pihl
+Piip MEEGA
+Piipar
Piirivalvur
+PikaChar222
+PikaChin
+Pikachewed
Pikachos
Pikachu
+Pikachu87
+Pikachurine
Pikachuz
Pikkets
+Pikkett
+Pikku
+PikkuSheikki
Pikkupbrix
Pile
+Pile O Poo
+Pile o Dirt
Pilgrimage
Pili
+Pilli
+Pilliad
Pillifnutten
PillowBoy
PillowCowCow
+Pillukarva23
Pilmir
Pilodro
PilsToTheMax
Pilsners
+Pilum
+Pim Pam
+Pimay
+Pimfortune
Pimp
+Pimp Ralpert
+PimpWeazel
+PimpWhistle
Pimpert
+Pimpin Thots
Pindaro
Ping
PingFlopped
Pingu
Pink
+Pink Avocado
+Pink Bar
+Pink Cow34
+Pink Iron
+Pink Lube
PinkDrinkSip
PinkShopRag
PinkVoidZ
@@ -17842,99 +36962,205 @@ Pinkywinky9b
Pinkyx0xo
PinndOutGoon
PinnkBunny
+Pinnn
Pinpi
Pinquana
Pinsamt
+PintOfMilf
Pintel
+Pinterests
+Pinu
+Piolin
+Pioniers
Piovendo
+Piparikissa
PipeQlo
+Pipluppp
+Pipo-badeend
Pippinmary
PippleNinchy
Pipposan
Pippuri
+Pir Alain
+Pirat
Pirate
+Pirate Kanye
+Pirate Patch
Piratey
Pirelly
Piri
+Pirig0
Pirihuora666
Piripaque
+Piripippeli
+Pirjo
+Pirjo69
+Pirk the pk
+Pirkka Olut
+PirkkaJokeri
+Pirkkamies
+Piroskinha
PirpleSlirpy
Pirres
+Pirulitim
Pisatronas
Pisau
+Piscarallius
Piscis
Piscolaz
Pistacchio
Pistoliftero
+Pit Stain
+PitGamin1311
+Pita Diver
+Pitbulterje
Pitby
Pitchfork
Pithikos
+Piticarus
Pitiless
Pitinator
Pitt
+Pittaaaaa
PitterPattr
+Pittsburqh
+Pitudin
+Pivach
+Pix Pixelle
+PixarMarsTTV
Pixel
+PixelMuffin
+Pixie Henge
Pixieragnar
Pixkekoa
+Pizdec
Pizza
+Pizza Addict
+Pizza Box
+Pizza Flip
+Pizza Mang
+Pizza Patron
PizzaDaHutt
+Pizzaman5510
+PizzasIron
+Pizzler
+Pj The Pj
+Pjotr
+Pjt77
+Pjumi
+Pk Bot 37
+Pk M4ster007
+Pk Wit P Hat
+Pk3iru_Osrs
Pk3r Range 7
Pk996
PkGoW
PkMeIfUgey
PkTheKid
+Pker nr 1337
+PkerTrysHard
PkforFun
Pking
+Pkingranged9
PkmnTrnrRED
+Pkmort
Pksorwd
+Pkyr
Pl0xed
Pl3b
PlELS
+PlFFMAN
PlGGY
+PlHLAJA
+PlMP
PlMPPl
+PlMl
PlPPY
+PlRATE KING
PlSS
+Plaagen
Plaasda
Plaat
Placedoemax
+Plaeggs
+Plaid10
PlaidMarquis
Plain
+PlainIronMan
+PlainNoGood
Plaininsane
+Plamt
Plan
+Plan B-gs
Plane4611
Planet001
+PlanetPaul
Plank
+Plank Egger
+Plank Sodplo
Plank2G
PlankForBank
+PlankTan
Planken bos
+Planker
+Planking Brb
+Plankrunner8
PlanktSoms
+Plant Herbs
+Plantdaddyy
Plap
+Plasma Taco
Plasmore
+Plastikos
+Plastiscines
+Plat Kont
PlatGX
+PlatScrub
Platinum2008
PlatinumHerb
+PlatinumSage
PlatinumSeif
Platnuim
Platnum112
Platpus3000
+Platyroo
Play
+Play Lazy
+PlaySoloBro
PlayToAFK
Playbunny
+PlayedBe4EOC
Player
+Player 0ne
+Player 4519
+Player Gap
+Player Name
Player235711
Player35254
+PlayerIsBusy
+PlayerSlayaa
+Playpro5
+Plays high
+Playtest
Playthious
Pleasantries
+Please pot
Pleasurehole
+Pleb Nick
+Plebbocs
Plebiside
+Pleblio
Plebnex
+Plebs
Plebz
Plece
Plegh
Plexasaurus
Plexx
Plez
+Pliemp
Pliep
+Pliep Ploep
Plips
Plisski
Plixious
@@ -17942,218 +37168,412 @@ Plocc
Plogbilen
Plogdog
Plomono
+Ploop
Plootbot
+Plop deez
Plopi
+Plopr
+Plopzorg
Plorky
Plorr
Plostic
Plot786
+PlovasYonder
+Plovilas
Plow
Plowthrough
PlsAName
Plsmrlizard
Pluc321
+Pluckky
+Plug In Baby
Plugatron
Plugged
Pluggen
Pluhdl
+Plukketje
PlumTickler
+PlumbThatA
+PlumpGiraffe
Plumper
+Plundered
Plunkton
Plunukki
+Plupian
Plus
+Plus Vite
PlusZack
+Plush Mole
Pluto
Plutonium
+Plutonium 94
+Plym
Plz LD Nat5
+PlzGiveBonds
PlzRnGesus
+PlzSpoonFeed
+Pm Me Imps
+Pm me to spy
+Pm4 eloboost
PmFun
Pmy39
Pnak
PneFc
Pnia
+PnutButtrJly
PoachedLion
+PoakedSussy
+PoaneFoane
PoarIIneemn
+Pocholo
Pocket
+Pocket Cards
PocketBandit
PocketSock
+Pockipickle
Pocy2
+Pod x
+Podvodnik
+Poeiermolke
Poem
Poenes
-Poentje420
+Poephoofd
Poepi12
+Poepjong
+Poepsiee
+Poerto
Poet1321
Pofka
+Pog Dog
+Pog isma
+Pog-kek-Lul
PogChampagne
PogMeister
PogTato
+PogTato Iron
Pogba
+PogoPochette
Pogsled
+Pogue4Lyfe
Poikanen
Point
+Point Guards
PointTax
+Pointstormy
+Poison Ives
+Poison x Ivy
+PoisonCobra
PoisonX7
Poisonblack
Poisonous
Pokaroo2
+Poke Champ3
+Pokeaotics
+PokedexNo258
Pokefreud11
Pokemaster
Pokemon
+Pokemon Ruby
+PokemonScape
+Pokemonguy16
+PokerPro
+Pokerboy19
Pokergod720
+Pokifeet
+PokimanesBF
+Pokoloko
+Pol o
Polaar
PolakYT
+Polar
PolarTrip
Polarin
Polarisi888
Polarus
Polarward
PolderLatina
+Pole Met
+PoleVault
Polio23
Polish
+Polish Eagle
Polite
+Politoed
Polixo
Polkapolkka
Polkastarter
Poll
+Pollar i
Pollekeuh
+PollenJ0ck
Polllie
+Polllo420
Pollnivneach
+Pollo Dry
PolloGrande
Pollofrit0
Pollum
Pollywog
PoloG
+Poloskyy
Polter
+Polyamorous
+Polycoffin
+Polyesterday
+Polygonise
+Polyhedra
Polynomail
Polyphobia
+Polywoggle
+Pomi Xd
Pommy
Pompeyo
Pomposity
Ponas
+Pond Scum
+Pondres
+Ponkito
+Ponobi
Pont
Ponti
+Pontifex
Pony
PonyOwner938
+PonyPorker
+Ponzy FTW
+Poo Socks
PooAtPVM
+Poobanans
+Pooby Bag
+Poodle
Poofpooh
+Poogen
+Poogster
Pooh
+Pooh Breezy
+Pooh Say
Poohead92
Poohsea
Poojabber364
Pook
+PookiDaPooki
+PookieB3ar
+PookieBearOG
+Pool Noodlez
+Pool Toucher
PoolboyFiji
Poon
+Poon Lips
+PoonHandleMe
+PoonTangPie
PoonTappa
Poonanjo
Pooned
Poonjuu
+Pooohie
Poop
-PoopDick43
-PoopLoser420
-Poopnipple69
+Poop Shidder
+PoopyRico
Poor
+Poor Advice
+Poor Clicker
+Poor Content
+Poor Nooby
+Poor You
Poortom24
Pooscaper
PootLoops
Pootzie
+Pootzie_xox
+Pop In Smoke
+Pop N
+Pop-up ad
+PopTheIron
Popcornachi
Pope
+Pope VI
+PopeChamp
+PopeDenis
Popeet
+Popepu
+PopeyezGain
Popfumes
Popkorni
+Poplo
Popovich
+Popoyoi
Poppa
+Poppa Bev
PoppaChoonie
Poppajohns
+Poppin Awf
+Poppscotti
Poppy
Poppymatt
Pops24
+Popstar2
Popular
PopyHarlow
+PorWrx
+Pordiosero
+Pore
+Pork Jerry
+PorkCH0PZ
Porkkanakana
+Porksters
+Porrie
Porsche
+PorscheDaddy
+Port Khazard
+PortUnionMan
Porta Pro
+Portal of I
+PorterRobnsn
Portrays
Portsari
Portuguese
Portvakt
+Porunga
+Porygon-Z
PoseidonDrip
Posemann
Posh
PoshPenguin
Poshker
+Poshki
+Poshkii
+Posino
Positivar
Positive
+Positivehp
Possessed
+PossiblyAFK
PossumPally
Possumi
Post
+Post Malone
+Post Max
+Post-Absurd
PostCodee
Postie
PostmanPatt
PostureCheck
Posty2k
-PotBurner420
+Pot Gatherer
+Pot Of Greed
+Pot Often
+Pot Sharer
+Pot cms
+Pot v X
PotScape
+PotScape CC
+Potapto
Potato
+Potato D Ben
+PotatoButGay
PotatoLlorch
PotatoRangr
Potatoqueenn
+Potecito jr
+PotentJay
Potezny
+Potge
Pothaaai
PotionFayD
Potland
+Potland o_0
PotoSekwati
Potoo
PotsAlots
Potsi
+Pottawatomie
+Potter Paypa
Potth
Pottieface
+Pottsi
+PottuTatti
+Potzy
Poucher
-Pounder420
+Pouches
+Poucie
+Pounake
+PoundSandNub
PourMeBleach
+Poussemoila
Poutz
Poverty
+Povvo
Powacat
Power
+Power Aid 4
+Power H
+Power Outage
+Power Surge
PowerJoe
+Powerade
Powerdude153
Powerful
+PowerfulBram
Powerfull
Powerlines
Poweron6
+Poww LUIS
+Powwil
+Powxrs
Poxuistas
Poyig
Pozar
+Ppl
+Pposkyor
+Pql
+Pr0 Ph3t
+Pr0pvm
Pr0way
Pr1MaL
+Pr3par3 2die
Pr3ttyW0man9
+Pr3y
Pra1seTheSun
Practical
+Prada
Praecellemus
Praedy
+Praenthos
Praes
Praestantia
Praetor
Prage699
Prahlad
+Prairiez
PraiseCorn
Praisemyrng
+Pramikon
Prankzy
Prari
Praskle
+Pratt Mario
Praxahr
Praxys
Pray
+Pray Salah
+Pray for me
+Pray t o God
Pray4TheWin
+Pray4me
PrayForDeath
+PrayForYou
+PrayToAres
PrayarN
+Prayer Pro
Prayerr
+Prayis
+Praynr
PreMDPepper
PreNew
PreRuined
Precise
Precixion
+Precondition
Predaxx
Predicition
Preedy
@@ -18161,12 +37581,21 @@ Pregnant
PregnantSock
Prelash
Prelet
+Prelex
+Prellifunky
+Prem
PrematureNut
Premie
+PremierZarry
+Premium Dude
Premz
Prep
Prepared2
Preposo0
+Prepotting
+PresPoon
+Presearing
+Preserve
PresidentMo
Presley93
Presley93BTW
@@ -18177,42 +37606,90 @@ Prestor
Pretendy
Preternal
Preto
+Preto Ownsss
+Pretten
Pretty
+Pretty God
+Pretty moist
+PrettyGood
+Prettyokqt
Pretved
Pretz
Prevengeance
+Previn
Prey
Prey4Pocius
+Preying
+Priapismi
+Pricy
Priestopher
+Prif Daddy
+Prifddinas
+Priide
+Priimitive
Prilliam
Prim
Prima
Primacy
Primal
+Primal gain
Prime
PrimeSeries
+PrimeToaster
Primed
+Primetime190
+Primetime829
+Primevil
PrimexReborn
+Primid
Primiitive
+Primilivum
Primitive
+PrimoVG
Primordial
Primster
Prince
+Prince Drt
+Prince Ferro
+Prince Mate
+Prince Tuten
+PrinceCrypto
+PrinceJozef
PrinceZuko
Pringle287
Pringles
Prins
+Prins Pi1s
Prinses
PrintedCash
+Prion
Priority
+Priorrr
+Priselac
Prisimenu
Prismalitic
Prison
+Prison Joe
+Prison M1ke
+Prison Soap
Pritje
PrityBoiSwag
PrivateSmorc
+Prix
Prixma
Prncss
+Prncss II
+PrntScr
+Pro Flicks
+Pro Per UIM
+Pro SKiiLLz
+Pro Slacka
+Pro Slacker
+Pro Tanto
+Pro Tato
+Pro Zoe
+Pro twin33
+Pro-tag
ProForm
ProFortnite
ProLegend
@@ -18220,19 +37697,30 @@ ProSKatona
ProSups
ProTweakius
Proba
+Probability
Problemski
+ProbzDrunk
Procedures
Proclivitas3
+Procoptodon
Proctiv
Procts
ProddyP
Prodigy 99
+Prodigy Matt
ProdigyTape
ProdigyThief
+Prodigy_77
Prodoughtype
+Product99
Prof
+Prof Bruce
+Prof Cheese
+Prof Ribeiro
+Prof Shroom
ProfGanon
-ProfGay
+Prof_Plums
+Prof_Snack
ProfanityBox
Professa
ProfessorBot
@@ -18240,50 +37728,85 @@ Proficent
ProfoundPnda
Prog
Project
+Project Deku
+Project Paat
+Project Sept
ProjectGamma
+ProjektUri
Proklus
Prokopios
+Prolapsi
+Prolly High
+Proly high
+Promacta
Promepheus
+Promise
+Promtel
Prone
Prongs97
+Pronx
Proots
+Prop Gun
Propagate
Propas
Proper
+Proper bald
ProperTroll
Prophecy
+ProphetSnayk
Prophylax
+Proponi
Propulsions
Prosit
+Prospicktor
Pross
+Proster
Protagg
+Protanopia
+Protassium
+Protease
ProtectdLeft
Protectlilb9
Protectorate
Protege
Proteiini
+Protixen
Protlong
Protocell
+Proton Drum
+Protopteryx
PrototypeGOD
Protox
+Prouser
+Provei
ProvidenceL
+Providential
Proviro
+Provoke Rage
Provokeskill
Provoxo
+Prowz
ProxDemSox
Proxeum
Proximitus
+Proxymine3
+Prozac Manic
+Prozac Peter
PrrMeowPrr
Prro
Prrr
+Prrr Perry
Prryvdoof
Pruillip
Prune
+Prune Slayer
PruneHub
PrusaSlicer
Prutturp
Pryn
Pryxl
+Pryypsas
+Pryza91
PsYcHo130
Psalm
Psalms116
@@ -18293,224 +37816,435 @@ Pseudo
Pseudomonas
Pseudonimas
PsiTempest
+Psichedeliks
Psiki
Psiklone
Psmaster
+Psoup
Psuedoniem
+Psy0tic
Psy13m
PsyDellic
PsyWaps
Psybae
Psyc
Psyc Paladin
+Psyc0-I
Psyched
PsychicL10n
PsychicType
Psychinis
Psycho
+Psycho Fungi
Psycho11111
PsychoPatty
Psychodeathk
Psychohexane
+Psychokilla
PsychoxX
Psyco
Psycub420
+Psydvekoosi
+Psygo
PsyhexGOD
+Psykoz
Psylocin
+Psyminds
+Psynar
+Psyqualogy
Psysyk
+Psytoro
+Psytrnce
+Psyyke
+Pt 79
Ptalm
+PteShank
Ptfo
+Ptol
+Ptopaz
Ptyh
Pu-94
Pubeless
PubicThumb
+Pubicon
+Public NJP
Publics
Publuske
PuchaLibre
Puck
Pudding
+Pudding Man
+Puddingdude
+Puddingtons
Pudge
+Pudge Pudge
+PudgeJackie
Pudgeegee
Pudnik
Pudota
+Pudota basso
+Puerto Varas
+Puff Daddy
Puffed
Pufffml
Puffy
+Puffy xx
+Pufr
+Pug
+Pug Boots
+Pug Champ
+PugToots
Pugasaur
Puggin
Puggzy
Puglet
Pugna
Pugsyy
+Pugwest
Pugy
+Puhd
Puhd1staja
Puhuri
+Pui
Puin
PuinguimGOD
Pukeking
+Pukeko
Puli1111
Pulkjes
Pull
+PullOutKing
PullOutRange
Pulli
Pulma1
PulpFlctlon
Pulza
+PumGiver
Pumba
+Pumba Bot
Pumba89
PumpUpTheJam
Pumper
+Pumper Joe
+Pumpflexin
Pumpkin
PumpkinLatte
Pumpui
Pumuckl
+Punani MD
Puncakes
Punch
+Punch Main
+Punched
Pundareen
Punde
Pune
+Pune rouch
Punegonde
+Pung
+PunishinBird
PunjabSamosa
+Punk-06
PunkPang
+Punkt
Punt
+Puntenjagert
+Puntje ket
+Puny Duck
+Pup
+Pup in a Cup
+Puppadile
Puppana
Pupper1
+PuppySeal
+Puppysaysftw
Pur3
+Pur3 Bow99
Pur3death2
PurMain
Purate
Purcey
Purcs
Pure
+Pure Evil99
+Pure Great1
+Pure Hunk
+Pure Paprika
+PureBread
+PureFilth
PureIronEyyy
PureOGIronMn
+PureOwner
+PureWax
Pureanger728
+Purebas alt
Purebasalt
Purebish
+Purell
Pureloot21
Purely
Purelybo0ty6
Purenerd
+Purepappa
Purepappa66
Purescarybuu
+Purey Arcane
+PurgatoryBro
+Purgy
+Purifyin
+Purjj
Purka11
Purkkatukka
+Purkkaukko
Purkkius
Purko
Purnex
+Purolator Pl
Purp
+Purp Nasty
+Purp Nips
+Purp Please
+Purp or Bust
+Purp where
Purp1eWizard
PurpLightPlz
+Purpl3 Lean
Purple
+Purple Flap
+Purple Meeep
Purple-Broly
PurpleDabz
+PurpleGoat
PurpleHippoo
+PurpleMurple
PurpleNinjja
PurplePlez
PurpleTeemo
PurpleThorax
+PurpleVex
PurpleWhaki
Purpledile
+Purplefox
Purplekills
Purplemudkip
-Purplesweeds
+Purpleowns
Purppurainen
+Purpsauce
PurrPig
+Purse seine
PursuantACE
Pursuedd
Purtherapist
Pusat
+PuscSquirt
Puse
PuseSlayer
Pushgold
+Pushovermage
+Pushy Bubes
Puss
-Pussy is Op
-PutItInDeeep
+Pustut
+Put Me 4th
PutMeInCo4ch
+Putaria
+Puthiegh
Puthy
+Putkipommi
Putrescent
Putse
Putyte1
PutziVikat
Puud
Puujalka10
+Puukko Pekka
PuuluuP
+Puumba
Puuteri
Puylayer
+Puzzle Drops
+PuzzleTheCat
+Pv Was Here
+PvEmerald
+PvM Andrew
+PvM Beireh
+PvM Bhunt3r
+PvM Blake
PvM Boganeer
+PvM Cas
+PvM ColdBeer
+PvM Crooky
+PvM David
+PvM Eestlane
+PvM Gemeos
+PvM Grindz
+PvM Hawk
+PvM Hero92
+PvM Items
+PvM Jack
+PvM MeK
+PvM Miku H
+PvM Muzzy
+PvM Nex
+PvM Nug
+PvM Oliver
+PvM Packers
+PvM Panda
+PvM Rev
+PvM Rin
+PvM Spectral
+PvM Tom
+PvM Wiz
+PvM guy
+PvM zoom
+PvMAlone
PvMCerlow
PvMKoala
PvMNightmare
PvMNotorious
PvMProfessor
PvM_Nugg
+PvMalexDR
PvManchester
PvMs
+PvP
+PvP Master
PvPRoTiGy
PvPete
+PvPs
Pvkk
+Pvm 4 Pets
+Pvm Aero
+Pvm Demigod
+Pvm Garley
Pvm M0lz2
+Pvm MageBoss
+Pvm Runeboyz
+Pvm Tigers
+PvmBrad
PvmQ
PvmRNGesus
Pvmpets
Pvoet
PvtStevens
Pvul
+Pw4
PwDhorizons
Pwca
Pwdz
Pweet
Pwew
+PwincessK
+Pwn Dat Noob
PwnTommy
Pwnage
Pwnbaa
Pwnd
+Pwnna
+Pwnnzz
+Pwno
+PwnrPizzaman
Pwnslayibex
Pwpw
+Pwxn
Px_7UX8Cy8
+Pxcs
+Pxie
Pxtrick
+Pxxch
+Pxzls
+Pyet
Pyfa
Pygmysteaks
+Pyia
+Pyjamas99
Pyki
Pyloric
Pylseboden
+Pyocola
+Pyra
+Pyrate Aeon
+Pyre Lord3
+Pyre Mouse
Pyretic
Pyrl
Pyro238
-Pyro420Kush
+PyroEagle13
+PyroF3AR
Pyro_OO1
Pyrocore
Pyrotemplar
PyrrosDimas
Pyssu
Pyst
+Python
+Pythonx135
Pyux
Pyykki
Pyyli
Pyzdalupi
+PzK
+Pzju
PzzaPredator
+Q 1
+Q K M Nophis
+Q Proserpina
+Q S L
+Q cs
+Q l ii Ma X
+Q of Spade
+Q uincy
+Q-Dance Jr
+Q-Qs
Q1NH4N
Q33N
+Q53
+Q60
+Q7L
+Q8 I
+Q8vv
QAWSED
+QGM
QIKNQFRDNUQF
+QKen
+QPR
QPness
+QQ3
+QQQ Gang
QQQQQQRRRRRR
QQuaLLeH
+QRcoding
+QT Bri
+QT0
QTRDS
+QTY1
QTZedd
QTom
+QU0TE ME
+QU42TION
QWIWRDIGIDFG
Qadir
Qaem
+Qaidos
Qajvha
+Qapz
Qash
+Qc power1
Qc-Elfmage
-QcumBear
Qeassaris
+QeeQ
Qego
+Qeko
+Qeln
Qemi
+Qeni
+Qenobii
+Qi Kua Mai
+Qi Ling
QiangxD
+Qilat
+Qiok
QlKNQFRDNUQF
+Qlhp xD
Qlioux
Qmain
QnBumbleBee
@@ -18518,38 +38252,79 @@ Qnon
Qoil
Qoki
Qombat
+Qosmio
+QpSc
+Qpaki
+QpzQ
+Qragon
+Qrax
+Qridan
Qrischin
+Qrollop
Qrwewa
Qryptic
Qtey
+Qtreb
+Qu3stm4st3r
Quacamole
+Quack Attk
+Quack Boom
QuackForMe
+Quacka
+Quacker
+QuadJake
+Quadder 4444
+Quadralobsta
Quadrifoglio
Quadrioo2
Quaerd
+QuaffPotion
Quaffle9
Quahzai
+Quakbou
+Quakenet
+Quakoss
Qualitative
Qualities
+Quality Kek
+Quality Name
QualitySleep
Quang
Quantities
+Quantization
Quantuh
Quantum
QuantumTurtl
Quarentitty
+Quarks
+QuarterToBen
+Quarterback
Quarters
+Quartia
Quav
Quawka
+Quazi
+Qucks
Qucu
QueBolaAsere
+QueefInMyEar
QueefMaestro
+QueefWiggum
QueefedOnYou
Queeffing
Queen
+Queen De
+Queen Juggle
+Queen Keegs
+Queen of CoX
+Queen0fScots
+QueenBadJuju
QueenJada
QueenOfCorn
+Queenmystque
+Queenn Elsa
Queer
+Queer Peter
Queerzzly
Queijo9
Quelana
@@ -18557,131 +38332,329 @@ Quenched
Quero
Quessswho
Quest
+Quest Dodger
+Quest Giver
+Quest Lckd
+Quest Noobi
+Quest Person
+Quest Plug
Questikels
+QuestsAreBad
Quety
+Queue Pea
+Queueie
Quew
Quey
Quezzimoto
+Quf
+Qui GonJinn
Quica
+Quick200
QuickClicks
+QuickELMN8
+QuickNDeadly
QuickShot
+QuickShot x
Quicken
+Quickman1000
+Quickshot343
Quiddich
Quiet
+Quiet Place
+Quiet Please
+Quiet Toot
QuietStorm44
+Quiettravlr
Quikstache00
+Quilicura
Quillninety3
Quimbo
+Quinker
Quinncidence
Quinnyb0y
Quintendo
Quirkless24
+QuirkyBeaver
QuirkyPurple
+Quit 4 iron
QuitForIron
QuitForRS3
Quite
+Quite Shy
Quitegoddish
Quitoris
+Quitting Alc
Quiz
+Quizav
Quizzy Dee
+QukinoTe
Quonloo
Quorhum
+Qureshi
Quria
Qurix
Quti
Qutie
+Quukske
Quvma
Quweix
Quyron
+Quz
Quzzini
Qverkuz
+Qwagmire
Qwaltz
+Qwd
Qwezz
+Qwibz
Qwinny
Qwinoa
Qwozii
Qxevym1
+Qzbxd
+Qzst
+R 0 E
+R 0 w d y
+R A L L S
+R A V I
+R A Z T A
+R E
+R H Y T H M
+R I J K A R
+R I K
+R I P B R O
+R L
+R N G Pwnz5
+R N Geo
+R O B B IE
+R O E L
+R O O N
+R O X
+R P N
+R S J
+R S Life
+R S M
+R U A Terd
+R U MAD BRU
+R Y A N
+R Y D
+R You Jelly
+R a uL
+R a z u z
+R ack
+R amon
+R eece
+R em
+R hin o
+R i a d
+R ift
+R l C H
+R mr
+R o r o no a
+R ob
+R obert
+R oger
+R osss
+R uiN
+R ya n
+R yun
+R-66Y
R00M
+R00P
R00SE
+R00T
R0AD
R0B0C0P
R0BBO
+R0FL AT L1FE
R0GAN
R0KKIN
R0LX
R0MICH
+R0NES
R0NNIEB0Y
R0OZ
R0R0R
+R0Y
R0YAL
R0ad
R0bain
R0bbby
+R0binho
R0n13L
+R0seofthorns
R0yksopp
+R14H
R1CO
+R1chs
R1ghtupth3r3
+R1ku
R1ng
+R2TB
+R32 N Z
R33c0NN
+R34
R3Dtjee
R3d3mtion
+R3dlegend
R3vq
+R4 n g 3 r z
R4LLY
+R4g4n4
R4ndomUs3r
+R4ndyM0n
+R4ndy_lahey
R4ng3
+R4ng3 Nubie
+R4ng3r 00
+R4nge
+R4nge 2 Lpk
+R4re Pepe
+R4v2n
+R6boi
R8nny
+RA NG ED
RAB9
RACELIS24
+RAD x GLiDeR
+RADATOUILLE
RADlATAstory
+RAFA LOKO
+RAG YOUR A55
RAKETTAA
+RAPPUHN
+RATMON3Y
RAUTA ARTO
+RAlN
+RAlSED
RBNY
RBeardWBrow
+RC Blows
RC350
+RC93
RCFreak
+RCW
+RCY
+RD Alten
RDHG
RDJ94
+RDT King
+RDW_Dark
+RE2PECT
RE4LG4LIFE
+REALLY RITCH
REBOOTING
REC0N
+RECEPTED
+RED DEM0N
+REDBUHLL
REDD0GJR
REDLlNE
+REDRACECAR99
REEEject
+REEEsuns
REINCARN4TE
REKNAW
REKTmlg99op
REMAlN
+REMIIIX
+REN0
REZlN
+RElNHARDT
+RF Bushee
+RF Genesis
+RFDesigner
+RGB Titties
RGGregar
RGet
RHCP-Solo
RHK Ezze
+RI Sleepy
+RIP Base
+RIP Meme Man
+RIP Mitch
+RIP Pork Pie
+RIP life
+RIPAUGUST
+RIPAccount94
RIPT4H
+RIPgirthgirl
+RIllipieru
RIpuim
+RJCI
+RJE
RJL129
RKBM2
+RKN
RKOd
+RKOd My Mum
+RKTA
+RKZY
+RL Adam
+RL Wolf
RLBurnside
RMAC-97
+RMF Dead
+RMG solo
+RMax
+RNG Alche
+RNG GOD
+RNG Kevin
+RNG MAD
+RNG Msg Me
+RNG Replace
+RNG Tomas
+RNG dez nuts
+RNG9518
RNGBandit
RNGVRNG
+RNGiesi
+RNGrim
+RNGsetMeFree
+RNJohn
+RNJoseph
ROADTO100B
+ROBAlN
ROBBOsickdog
ROCCAT
ROCKYY
+RODRlCK
ROF0LFOR
ROFOLFOR
ROHTEENMUTSI
ROKO
+ROLL TlDE
ROLLinPEACE
+ROMBU
+RONNIE COLE
+RONZE
ROR0
ROSTA
+ROT LOST 6K
ROVANIEMl
+RR Fourshore
+RR55
+RRAMPIDD
RREKKLES
+RRX YY RRX
RRayhan
+RRevelation
RRickkert
RRobert
+RRocket02
+RS Bread
+RS Cinema
+RS Jesus
+RS Myrthe
+RS Nico
+RS SLAG
+RS UFC NRL
+RS ape
+RS2 Legend
+RS3 Refugee
RS3izBetter
+RS6 Quattro
+RSB Fox
RSBadLifeBad
RSDonny
RSGO
@@ -18689,232 +38662,462 @@ RSLtSgtZen
RSMAXD
RSPSisBETTER
RSPup
+RSQT
+RS_Tytin
RSfork
+RSmake
RStrength99
+RSuomivihu
+RTGoldleader
+RTK86
RTLadNumber4
+RU B Y
+RU Petrified
+RUBBERI
+RUUNIKUNN
+RU_Engineer
RUlS
+RWB Codeine
RWSDOUG
+RX S
+RX7 FC3S
+RXen0
+RY N0
+RY P
RYAN
RYN16
RZAlex
+R_D TRAJANO
R_andy13
+Ra
+Ra fi
Ra1d
RaMR0D
+RaRaJuana
+RaSToG
RaaWa
Raaagnaar
Raab
Raaban
+Raahe
Raahh
Raakanipsu
+Raamsdonkje
Raanduin
Raassig
+RabarberBarb
+Rabbagust
Rabbie
+Rabbit MD
RabbitFlats
+Rabbitdude
RabbitsDong
+RabidDolphin
Rabidherring
Rabiosa
+Rabrt
+Rabs xo
RacccAttack
Raccoon
+Raccoon King
Raccooncow
+Raccoonus
Race
Rachael
+Rachey B
+Racholini
+Rachscape
+Racteal
+Rad Renegade
RadFeenix
Radacia
+Radaenne
Radar
Radeo
Radia7ion
Radiance
+Radiant Lux
+RadiantSkye
Radiator
Radini
Radio
+Radio DJ Dan
+Radio Love
Radiohead66
Radiologics
+Radish55
Radja333
RadoslavvBG
Radrieldor
Radsurlak
Radsy
Radtastic
+Radusa-Two
Raeghal
+Raelir
Raen
+Raf0da
Rafaael
+Raffealy
+Rafff
+Raffineret
+Rafi Tafy
+Rafiniya
+Rafn
Rafnar0G
Raft15
+Rafy
+Rag
+Rag Demon
+Rag Doll
+Rag Gdz
+Rag List
RagToRiches
Ragani
Rage
+Rage Fuel
+Rage233
RageCold
-RageOSRS
+RageCombo
RagedIronMan
Ragefire1
+Ragegold1163
+Ragez Fury
Ragga
+Ragga Muffyn
Raggedy Jeeb
Raggers
+Raggnag
+Raggy Reapzz
+RaginBatts
RagingK9Fury
RagingReddit
RagingTroll
+Ragingg
Ragnar
+RagnarOsborn
Ragnariukas
Ragnarok96
Ragnell56
Ragni
RagsIIRichez
RagucciRafa
+Ragurain
+Ragy rag
Rahamasin
Rahamies
+Raharu
RahbHurt
Rahdyxc
+Rahedo
+Rahimo
+Rahis
Rahjer
+Rahy King
+Rai
Rai_3
+Raibu
+Raichue
Raicun
Raid
+Raid Lewis
+Raid My Body
Raideris
Raiderrediar
+RaidriarTGK
Raien
Raihan
+Raihou
Raii
+Raiicrow
Raikesy
Railee
Raimar1
Raimiss
Rain
+Rain Days
+Rain Please
+Rain ee
+Rainbird
+Rainbow
RainbowBeast
Raine
Rainer
Rainforest
Raining
Rainingbroz
+Rainingmeltz
Rainman446
+Rainnos
Rainold
+Rainshower
Raintown17
Raisedbycows
Raiskausrapu
Raisson
+Raisson X
Raistlin
RaistlinFasa
+Raisya
Raivan90
Raizerr
Rajat76
Raje
+Rajgo
+Rajs
+Rajvir
Rakaah
RakadB3
+Rakblood
+Rake
+Rake ur weed
Rakettikala
RakiRaki
+Rakiata
+RakingPurple
+Rakkir
Rakoins
+Rakru1
Rakuko
Rakun Rakan
Rakupenda
+Ralalallei
+Ralgurr
Ralle1208
Rallis
RalorLeetor
+Ralos Rise
Ralp
+RalphLauren
Ralphed
Ralphie3
+Ralphy Jnr
Raltsz
RalvekZul
RamYe
+Ramae
+Ramallah
Ramathorn
+Rambling
Rambo
+Rambo Prods
+Rambo The 3
+Rambo The 4
+RamboBrad
RamboDaddy
+RamboKiddo
+RamboOmega
+RamboSambo
+Rame
+Rame s
Ramen
+Rameses B
Rami
+Rami Tsunami
Ramleh
Rammdude
+Rammmsteinn
RamonZera
Ramonix
Rampa
+RampageOnly
Rampauttaja
+Rampenisse
Ramrod
Ramsas
+Ramsay
RamsayGrejoy
+Ramxious
Ramzis
Ramztad
+Ran-D
RanShakHazar
+Rana pipiens
Ranamen7
Ranarr
+Ranarr Bowl
+Ranarr Czar
RanarrScape
RanarrSmoke
+Ranarrjuice
Ranarrseole
Randalf
Randalfen
Randalicious
+RandallOG
+Randdall
Randeaux
Randecker
Randinator42
+RandlesAlt
+Random Day
+Random763
+RandomGuy771
RandomLemon1
Randomguy38
Randomized
+Randomkul
Randomojojo
+Randsoms
+Randy Rawdog
Randy Rolex
RandyBanger
Randyke
+Randys
+Ranestumies
Rang
+Rang3d Xp
+RangPang
Rangahhh
+Rangatan44
Range
+Range 4 mage
+Range AR
+Range Kiing2
Range4Free
RangeGawd
RangePs
Rangeddddddd
Rangedly
Ranger
+Ranger Fain
+Ranger Hood
+Ranger Uhle
Ranger82592
RangerBoots
+RangerFain
Rangerofgold
+Rangerrr
Rangish
+RangoII
RanjaForLife
Rank
+Rank 1
+Rank 1 Gamer
+Rank 1 Korea
+Rank 1 Norge
+Rank 1337
Rank1Espada
Rank1NA
+Rank350
Rank62
RankOneTurk
+Ranox
Ranty
+Ranul Oracle
+Ranusian
+Ranzo
+Raoul
+Rap50Cents
Rapasuu
+Rapid
RapidCycling
+RapidPancake
+Rapidd
Rapiers
Rapolas
Rapolu
+Rapt0ram
+Rapterzz99
Rapthor
Raptor
+Raptor Jesuz
RaptorLuck
Raptorcaw
+Raptorjk
+Raptorman
Raptorsin6ix
Raptz
Rapu
+Raquelo
Rare
+Rare Arugula
+Rare Chance
+Rare Doggo
+Rare Hat
+Rare Panda
+Rare Pets
+Rare Vibes
+Rareinpepe
Raresocks
Rarity
+Rarity Belle
+Rarma
Rasa
Rascus
+Raseni
+Rasenkage
Rashford
+Raskasta
Raspatil
Rasput1n2k13
RaspyLemon
+Rassaasolo
+Rasta Panda
Rastaclat
+Rastafarlion
Rastamain
Rastaman
+Rat Digward
+Rat Flicker
+Rat Has Dice
+Rat Hunter23
+Rat L Traps
+Rat Lettuce
+Rat Sensei
+RatKing365
+RatWithAGat
+Rata
+Ratchet48
Ratcliffe
+Ratdrin
+Ratenda
RathianSP
Rathmai
+Ratikka07
+Ratlifenerd
Ratlordmax
Ratm
+Ratpno
Ratrace12345
Ratrero
+Ratsy J
RattleSsnake
+Rattled
Rattlerskill
Rattlesnake
+Rauhanrekka
Rauokse
Raur
+Raurshank
+Rauski696
+Rauss
Rauta
+Rauta Juoppo
+Rauta Sorsa
+Rauta Tuomo
+Rauta Urho
+RautaGoblin
+RautaLeksa
+RautaPertti
+RautaPizza
+Rauta_Kessu
Rautafantic
Rautakuma
Rautis
+Rauzee
Ravac
+Ravangerous
Ravanth
+Rave Pants
+RaveBoy21k
Ravedeath
Ravemaste476
Raven
+Raven Frost
Ravency
Ravensword
+Raventodt
Ravers
Ravesyy
Raving
@@ -18924,121 +39127,267 @@ Ravlar
Ravs
RawPhazon
RawRyan
+RawToast_13
+Rawbean
+Rawduggie
Rawest
+Rawke
Rawr
RawrItsKirby
Rawrr
Rawsome
Rawssss
Rawst
+Rawwr Austin
Raxen Light
+Raxorn
+Ray Btw
+Ray Kurzweil
+Ray Rwars
+Ray Sensei
+Ray Squared
+RayCon
+RayMarshall
Rayfort
+RayiiRios
Rayjin_Storm
+Raykin
Rayleighs
Rayleight
RaymanXo
+Raymo
Raymone
Rayne
+Rayne Drop
+Raynel
Raynelie
Rayner91
+Rayo McFly
RayofLight2
+Raypac
+Rayrunner
+Rays Max
+Rayye
+Raz Wolf
+Razaia
+Raze
+RazenOh
Razer
+Razer Elite
Razeren
+Razguld
Razie
+Razih
RazleBadazle
Razor
+Razor Beast
Razor654991
Razorblat
Razoriginal
+Razorshark
+Razrback
Razz1eDazz1e
+Razzle
Razzzoor
+Rb Salvation
Rb2790
+Rc
+Rc Dark Rang
+Rc_Power
+Rcardio
Rcer
+Rckr
Rddrz
+Rds 44
+Rds Nerd
+Rdushi
ReDrOc
+ReFueld
RePeTiiTioN
+ReRemakeAndy
+Re_Rauzo
ReachAround
Reachinator
+Reactate
+Reaction Tec
Reactionary
+Reactionss
+Reactor15
+Read Art
+Ready 123
Ready4pwnage
ReadyToReap
Reah
Reaks
Real
+Real Cute
+Real Earth
+Real Friends
+Real Jesiah
+Real Kev
+Real Me
+Real Reasonn
+Real Skyline
+Real Umbreon
+Real Unlucky
+RealAndBased
RealBoobs
+RealBruceU
+RealDrSeuss
RealJonner
RealKing11
+RealKingBee
+RealLifeBot
+RealLyre
RealMemeVPJr
+RealPeelBoat
RealRicFlair
RealScythe
RealShyGuy
+RealSpeed
RealStoney
Realcorkpig
Realdent
Realflamesss
Realismi
Realissm
+Realist Knut
+Realistg
+Reality
RealitysGod
Really
-ReallyBongs
+Really Spicy
+ReallyToxic
Realpk2004
+Realtank
+Realtor R1
Reap
Reapa
Reaper
Reaper0321
ReaperLucid
Reaperkiller
+Reaping Inc
+Rearrange
+Reaver Tru5t
+Reavus
+Rebaulten
Rebel
+Rebel Serj
+Rebelatto9
Rebelgian
Rebelican
+Rebellgutt
Rebelqt
+Rebir7h
Rebirth
+RebirthFlame
+Rebis
+ReboKhaihang
+Rebooting
Reborn
+RebornMuscle
+RebornNips
+Reborninc
+Rebounder234
Rebuild
Rebuild4free
RebuildLewi
RebuildMitch
Rebuildep
Rebuilders
+Recable
RecentKill
+Recess
Recharge
+Recited
+Recker1o1
Reckless
+Reckless Ell
+Reckless Fyb
+Reckless Lad
Reclaimar
Reclaiming
+Recline
+Reclined
+Recnamalad
+Reco Fam
+Recolddone
Reconjack
Recore
Recover
+RectalRoni
RectalRumble
Rectophobia
Recuder
+RecyclePls
Recyr
+Red Asia
+Red Cavalier
+Red Courier
+Red Duke
+Red Hick
+Red Hippo
+Red Hood
+Red Hot Go
+Red Kool-Aid
+Red Nine
+Red Osrs
+Red Pepper65
+Red Rays
+Red Rockin
+Red Simon
+Red Staal
+Red Style
+Red The Pom
+Red Wings
+Red XIII FF7
+Red hat
+Red partyhat
Red3
+Red6
RedCavalier
RedDwarf
RedGraceful
+RedMare
+RedRambler
RedRatedGame
+RedRathalos
RedRegent
RedRusker
RedTwisted
RedWarlock31
+RedWol
+Red__Mage9
Redael
+Redarekun
+Redbackpker
Redben45
+RedberryLean
Redbull
+Redbull Od
Reddo
Reddragon884
Redflame
+Redgit
Redikarp
+Redisleft
Redius
RedkaWodbull
Redland
+Redlonghorn
RedneckYoshi
+Rednecks
Rednex
+Redninja02
Rednipplee
Redo
+Redo Undo
Redouan94
Redrevolve11
Reds
Redshapes
+Redshok
Redshoker
Redsk1ns
Redskin
@@ -19047,12 +39396,16 @@ Reduced
Reductive
Redus
Redux
+Redux Lux
Redz
Redza14
+Ree Mastered
Reeb
Reececup
Reecesoa
+Reecie
ReedBadass
+Reee
Reeebow
ReeeeZ
Reeeps
@@ -19063,7 +39416,10 @@ ReefyReefer
Reel_Arphios
Reels
Reemov3d
+Reer
Reeyu
+Reeze Tech
+Reflection44
Refleksfrode
Refleksi
Refluxerino
@@ -19072,168 +39428,346 @@ Reformer
Refried
Regal
Regan
+Regelios
Regement
+Regent Pve
+ReggieWeggie
+Reggin Cx
Regie
+Regiis
+Regio
Regular
+Regular Iron
RegularJerry
RegularPlank
+RegulusAurum
+Rehbein
RehlapzZ
Rehoboam
+Rehst
+Rehzzy
Rei-chan
Reibnitz
Reichart
Reidar
+Reids
+Reidtheweed
Reign
ReignInBlood
ReignOfThor
Reigns
+ReikenGIMP
Reimie0x
Reimo
ReimuHakurei
+ReinLassen
ReinMoose
Reince
+Reinkmyster
Reipas
Reisnom
Reisy
+Reita
Reizzaz
+Reject q p
+Rejected Alt
+Rejected Son
+Rejected btw
Rejects
+Rejet-01
Rejey8
Rejuvenating
+RekaScape
+Rekans
Rekenz
Rekkaboi
Rekkerta
Rekkt
+Reklats
+Rekna
+Rekt
+RektHavok
Rekunleashed
+Relaaax
+Relapse
Relapses
Relative
Relatived
+Relax to Alt
+Relent1ess
+Relevancys
Relianah
+Reliefed
ReligionBad
Reliinqish
Relik
Relinquishh
+Relit
RelivinYouth
Relizent
+Relizent2
+Relizents
Rellnquish
Relloktion
+Relmu
Reload
ReloadFaster
Reloox
Relrekis
+Reluctants
+Rem Dogg
+Rembs
Remcodingho
Remedial
Remiejj-BV
+Remiel
Remillia
+Reminded
Reminiscon
Remitin
Remix
+Remixed
+Remmos
+Remmyy
+Remn
+Remo
Remorsed
Remspoor
+Remtar74
+Remvrkable
+Remylz
+Remytouille
+Ren to
RenLady
+RenZelus
Ren_Otori
Renacan
+Renall
Renarin
Renas
Renato
Renauddd
+ReneeIsMaxed
Renegor
Renesau
Renewed
+Rengar
+Rengeki
Renger
+RengokuRS
+RengokuSmile
+Renixion
Rennuts
Rennz
Renovato
+Rensafari
Rent
+Rentb0y
+Renzo Bamf
+Repathor
Repeats
+Rephia
Replayroyke
+Replenished
Replikantti
Replo
+Reply To Me
+Report Biden
Reported
+Reporting U
Reppin519
RepresentRS
+Reprexain
Reps4Jesuz
Reptile
+Reptile God
Reptiliano
Reptillian
+Republic55
+RepublicofRS
Reputism
Reqtile
Requaahv
Requilog
Requin
RequireBone
+Reredrum
+Rero
+Resallude
ResenBallZ
+Resentfully
Reseriant
Reserv3D
+Reshop
Resident
+ResignWonki
Resilient
+Resistzz
Resizable
+Resk
+Resoluutio
Respaze
+Respeat
+RespecTheMax
+Respect Me
+RespectMyDab
Respek
Respire
+Responders
+Respy
+Respyy
ResrvdFinest
+Ressara
RestIess
RestInPce
+RestTooLaid
Restinp3ace
+Restless99
RestoredIron
Restrial
+Restrio
+Resultss
Resultzs
Resupplying
Retendous
Rethie
+Retired Dead
+RetiredMaboe
+RetiredStic
+Retr0virus11
Retro
+Retro PvM
+RetroDeviant
+RetroRaz
+Retrohiili
+Retrovision
Rettent
+RetuKettu
Retupelle
ReturnToOne
Reub
+Reubon
+Reuborn
+Reudo
+Rev Hayter
+RevDragon
RevZamorak
Revamp
+Revamp cF
Revanche
+Revellius
Revelwood
+Revenant MKX
+Revenant Rag
RevenantBoy
RevengerII
Revent
ReveredB3ard
Reverenciar
Reverenz
+ReverieDC
+ReversEffort
+Reversedd
Revi21
+Revilia
Revofev
Revoke
Revolted
Revolving
Revs
+RevsRebuild
Revus
+Revvanth
Revx
Revzvy
+Revzy
+Rewbs
+Rewinds Iron
Rewnlite
Rewns
+Rewo
+Rewriting
+RexCox
RexM
+RexMouser
Rexicur
+Rexkat
Rexun
+RexxNotReal
+Rexxasaurus
+Rexxer69
+Reyes407
Reyko
ReynoldsWrap
+Reystov
+Reyswaldo
+Rez X
+Rezi
+Rezident
Rezka
+Rezki
+Reznx
+Rezy
+Rezz Main
Rezz79
+Rezzn
+Rfsu
+Rgimenez007
+Rgk
+Rgnfrg
Rhaegalion
Rhaegar
Rhaegard
+Rhaegor
+Rhagaea
+Rhastae
+Rhcprule6
+Rheal
Rheece
Rhette
+Rhezmyn
+Rhianne
+Rhien
+Rhiley
+Rhino
+Rhino Art
+Rhino Prime
RhinoNuts
+Rhit
Rhiyia
+Rhk
+Rho Ur Boat
Rhoads
+Rhocky
Rhodesia
Rhogue
Rhondda
+Rhorrn
+RhuBarb3
+Rhubarbino
Rhuina
+Rhyio
Rhyl
+Rhyme
Rhyming
+Rhyninn
Rhynoob
+Rhys Irl
+Rhys25
RhysieBoy
Rhysos
Rhythm
+Rhythm Games
Rhythms
+Rhyw Peth
+Ri v en
+RiJect
RiKoCheP
+Riaever
+Riamo
+Rias
Ribb
+Ribeye1611
Ribinha
Ribitz
Riboku
@@ -19247,31 +39781,63 @@ Riccario
Rice
RiceAndTacos
RiceWrangler
+Ricefishie
+Ricepicker89
Rich
+Rich 1 Hita
+Rich Noob
+Rich Snoe
+Rich13
RichAround
RichGuy X
RichHarambe9
+RichMansDrip
+Richaard
Richard
+Richard Baer
+Richard Moss
+Richard12391
Richards2705
+Richart 123
Richguy3213
Richie
Richterr
+Richxrd
Richy
+Richy Rich
Rick
-Rick420blaze
+Rick scape0
RickAndVorki
+RickDeckard
RickEscobar
RickRab
+Rick_NLD
+Rickard
+Rickeh 1
+RicketyReck
Rickhs
+Rickky Bobbi
+Ricklet
+Ricklewinks
+Rickness666
+RicknessAlt
Rickolas
+Rickos
Ricksking
+Rickstaverse
Ricky
+Ricky Bob E
RickydeRoach
+Rickyj13
+Rickyrevine
+RicoMangos
Ricoo
Ricotayqueso
Riddim
RidePine
+Ridemyhomies
Rider
+Rider Galara
RiderOfRohan
Rider_99
RidgeRacerR4
@@ -19280,168 +39846,309 @@ Ridley
Ridley1990
Ridored
Rie1yReid
+Riektanminol
Ries2
+RiesBatsbak
+Rif
+Rif T
+Rifampicin
Rifen
+Rift Archer
RiftOversoul
+Rig Pig
Riga
+Rigelius
+Riggas
Rigged1
Riggerlyworm
+Righ
Right
RightKnight5
Rightthisway
+Rigid Tony
Riglr
+Rigondead
Rigondeaux
Rigourlas
Rigr
Rigtop25
Rihmakallo5
+Rihsky
Riickkert
Riiggs
Riii
+Riiico Suave
+RiimuRatigan
Riippptttt
Riisi
Riitasointu
Rijst
+Rik M
+RikCastle
RikSavage
+Rikador
Rikalero
+Rikeez
+Rikka-kun
+Rikka-san
+Rikky Flames
+Riksaah btw
+Rikten X
+Riku887
RikuLehDeku
RikuRNG
RikvWesting
Rilah1212
+Riled Up
RilesWright
+Riles_Nation
+Riley Mort
+Riley1098
RileyReidx
RileyVoelkel
+Riltor Storm
Rimbton
Rimorix
+Rimppa97
+Rimuru BTW
+Rinby
Rindos
Ringboi5
+Rinhx
+Rini Keeper
+Rinky
+Rinoa
Rinrus
Rinsumageast
+Rio-Dono
Riolu
+Riona
Riot
+Riot Breaker
+Riot Starter
Riotdeath
+Riotz v4
+Riou
Riouha
+Rip David
+Rip25kChins
RipBigDoinks
+RipFeKeenan
RipLo
RipMagikarp
RipRoidie
RipSnorter46
+RipTheBilly
Ripd
RipePineappl
Ripper
Ripperhino
RippleBear
+Rippn
Ripsin
-Ripsnorter69
Ripstart
Ripulieinari
Ripulirulla
Riri488
RiseOfTerror
+Risencambrie
+Rishhh
Rishloo
+Rising serum
RisingHonour
Risingodslay
Risk
Risker
RiskinPixelz
+Riskule
+Risky Pete
+Risky Ryan
+Riskz92
Rislearn
Rismani
+Risotto
Risperdal
+Risque Moose
Risqy
+Ritchi026
Ritle
Ritopikachu
Ritrole1
+Ritthback
Rittz
Riubuli
RivalIron
+RivalTitan
Rivalguy25
Rive
RivenGasm
+River Kelda
+River OSRS
RiverOfIron
RiverOut
+RiverToSea
+Riveriea
RiverzRaging
Rivy
Riwer
Rixhy
+Riyazzz
RiyuK
RizeNSkrine
+Rizi Bizi
+Rizla King
Rizos
+RizzardWizrd
Rizzhole
+Rizzzoo
Rizzzyisback
Rj8532
Rjtyyi
+Rkaksi
RlCE
+RlCEHEAD
RlFK
RlGBY
+RlP Harambe
RlPMYMANX
+Rlly G
Rmus1
+Rmve
RnBieber
+RnGator
+RnGisFocked
+Rndl
+Rng Depleted
+Rng Maestro
+Rng Rami
Rng4Display
RngIshit
Rngclown
Rnjeesus
+Rnkji
Ro The Boat
+Ro s
Ro2no
RoBoRhino
+RoBoat
RoNNalDis
RoSki
+RoT Nick
+RoT is GAY
Roach
Road
+Road Run
+Road sign 73
+Road to kek
RoadBoat
RoadSpartan
RoadToALLPet
Roadbiker15
+RoadetoMax
+Roadways
Roadz
Roam
+Roaming Sky
Roanen97
Roastedsteak
-RobC69
+Rob Aero
+Rob Hot Dog
+Rob Iron
+Rob Pooner
+Rob Zombie
+Rob2G
+Rob94401
RobDirkson
RobThePole
+RobWilliams
RobWorker
Robb
+Robb uwu
Robbbana
+Robbbbb
Robbiboi
+Robbie EN
+RobbieJ547
Robbin
+RobbinDaHood
Robbo
Robby
+RobbyMatrix
+RobbyRott3n
Robeartoe
Robejose
Roben
+Roben Jr
Robert
+Robert Pires
+Robert Stein
+Robert T
+Robert1f
Roberto700
+Robidoux
Robigo
Robin
+Robin Van H
+Robin564
Robinhoodnow
Robjee
+Robjon7
+Roblit
Robln
+Robln l-l00d
+Robodinho
Robodyx
Robok0p
+Robokiller86
Robolisten
Robologist
Robot
Robpar6
RobsonV
+Robtoe123
Robust
Robyn550
+Roc3
RocheLimit
Rochette
Rock
+Rock Knight
+Rock Nin
+Rock Rage
+Rock The Red
+Rock Wizard3
+Rockabbages
Rockadelic
Rockafellah1
RocketRock88
Rockfists1
Rockford
+RockfordT
Rockin
+Rockin Ness
Rockland
Rocklore
+Rockmaker
Rockrets
+Rocktail
+Rockwell
Rocky
+Rocky 1535
+RockyYourMom
+Rockydig
Rocokoko
Roczor
+Rod Goesinya
+Rod Man
+Rod Monan
+Rod My O
+Rod i
+Rodefe
Rodeva
Rodimus55
+Rodje
Rodney
+Rodney Farva
Rodnirt
Rodnizzle
Rodrick
@@ -19450,77 +40157,133 @@ Roe2
RoeGut
Roebie1
Roei
+Roekoeloos
Roel
Roerbakei
+Roexzy
Roff
+RoffXD
+Roffie
Roffy
Rofie
RoflOs
+Roflaye
Roflmao
+Roflmaomg
Roflologist
Roga
Rogerthatxd
+Rogier504
Rogiertjuuuh
RogretheOger
Rogue
Rogue nr2
+RogueSoul03
Roguestoney
+Roguor
+Rohafin
Rohekonn
+Rohman
Rohmu
+Rohr
Roice
Roid
Roidsy
+Roihuvuori
+Roithamer
+Roixie
+Rojas
+Rokec993
Rokki
Rokushoo
Rolann
+Rolav
+Rold
Rolde
Roldeh
Roldie
Rolex
+RollOurOwnJs
Rolla
+RollandSmash
+Rolleston
Rollin
+Rollin Clean
Rolling
+Rolling Kush
Rolling2Hard
Rollingo
+Rolls
Rollsie
Rolluik
Rolly83
+Rolpharoni
Rolson
+Rom3
Roma
Romad
+Romare
Romarigo
+Romboy619
Rome
+Romein
Romen
+Romen Ranges
+Romeo for u
+Romeos GIM
RomeowL
Romic
Romka
Romo
RompLord
Rompmaninov
+Romway
+Ron Swansong
RonBurgundy
+RonCumtastic
Ronald
+RonaldReagan
Ronbiara
Ronch
Ronco6
+RondVierkant
Rondey
+RoneRackal
Ronescape
+Ronggo
Rongor
Rongrongie
+Roni Hagert
RoniKysh
+Ronn Coleman
Ronnicle
Ronnie
+Ronnie Fe
+Ronnie Ponny
Ronnie518
RonnieKray
+Ronniebob
Ronny
Ronokroo
+Ronpoo
Ronti
Rony
Ronz
Roof
+Rooftop Laps
+RooieRotzak
+Roolon
+Roomhoorntje
Roommaster1
+Roon2h
+RooneyDUNX
+Roonscape
Roosa
Roosevelt19
+Roosevelt69
Roosevelt79
+Roost Coffee
+Root Exoi
Rootman34
Roover
Rooxy
@@ -19528,77 +40291,146 @@ Roozom
Rope
RopeDart88
Ropemaker
+Ropew
+RoqeSVK
+RorannoaZ
+Rorek
RorekMalc
Rorr
Rorvis
+Rory Gall
+Rory Stone
RoryBurnout
+RoryJb
Rorys
+Rosalktha
+Rosco Jenkn
Rose
+Rose Fritz
+Rose of May
+Rose tiara
RoseGold_A
+RoseOnCasket
+Roseanne
+Rosemarrie
Rosemary
+Roses R Red
+RosetaStoned
Roshidragon
+Roshyz
RosieBtw
+Rosieflower
+Rosin0nly
RosinHead710
RosinScape
+Roskamaster
Ross
+RossOSRS
Rossaboy
Rossed
Rossssi
Rossys
+Rosters
+RostiKz
Rosv0
Rot3x
+RotJofaJofa
Rotagilla
+Rotated
Rotation
+Rotelli
Rothen
RothesLatrin
+Rothgor
RotiPrata
Rotiforms
Rotom
Rotta
Rottapoju
Rotten
+Rotten Vale
+Rotten Wang
+RottenEyeMoe
+RottenGurl
Rottencotten
+Rottenzotten
+Rotterdam
+Rotzschrank
Rouge
RougeDev
RougeManiac
RougeThief02
Rough
+Rough Games
RoughINSERT
Rounded
+Rounded Xp
Rounder
+Rounding
Rousey
Rousseau88
Route
Rova
Rove
+Rovicus
+Rovka
+Row Sripple
+Rowdy Tobias
+Rowe5000
Roweeee
Rowg
+Rowinovich92
Rowls
Rowoep
RoxanX
Roxasroxs564
Roxer
+Roxie Valor
+Roxxe
Roy385
RoyLay
RoyZay
Roya2Face
Royal
+Royal 69
+Royal Chief
+Royal Death
+Royal Rain
+Royal Violet
+Royal Wax
RoyalD3sire
RoyalMess
RoyalPurps
RoyalRolf
+RoyalScumbag
RoyalShaco
+Royal_Shock
+Royal_inc
Royan
+Royboy16
Roye
+Royo
Royollie
Roysrols
Roytang5
RoyyyAfca
+Rozensho
+RozirPanda
Rozkol
Rozlucka
Roztomily
Rozzaa
RricketyREKT
+Rro
+Rs Bartender
+Rs But Afk
+Rs D
+Rs God
+Rs Jamal
+Rs Kajcsa
+Rs Olm
+Rs Pikachu
+Rs Wiki
RsBryce
RsGoku
RsOverGirls
@@ -19608,59 +40440,116 @@ Rs_ReeCe
Rsanaded
Rsebb
Rset
+Rsh Katje
Rsh10
+Rsky B
+Rsn Kmt
+Rsn_Adam
Rsn_Dillon
Rtlo18918B
+Rtslash
+Rty
+Ru Ru
+Ru2uo
+Ru6
RuMoRRs
+RuRu-nyan
RuRu09
+Ruan
Rubber
+Rubber Alt
+Rubber Apple
+Rubber Luffy
RubberApple
Rubbery
+Rubbery Ra
Rubee
RubenD
+Rubenich
RubiconGuy
+RubikMouse
+Rubinx81
Rubish
Rubrek
RubsSandwich
Rubss
Ruby
+Ruby Opal
+Ruby Runes
Ruby5001
RubyBlue
RubyBoltSpec
RubyEvelyn
RubyLvledUp
+Rubystealer
+Ruck
+Rucked Faw
Ruckus
Ructions
Rudadoodadoo
Rude
+RudeBoiElj
Rudekid1035
Rudetopia
+Rudi Andre
+Rudii
Rudin
+Rudin Alt
Rudolph
Rudy
RudyGiuliani
Rueben
+Ruel
Rufie
+Rufles
Rufu
+Rufus Shaw
+Rufus xD
+Rug Klachten
Ruge
Rugg0064
+Rugpijn
Rugrat
Ruhl
+Ruhpetitive
Ruhtrik
+Rui HIMimura
+Rui Sand
RuiMariz
Ruimte
RuimteMan
Ruinationnn
+Ruined
+Ruined Kap
+Ruint
+Ruizoeki
Ruk1a
+Rukavi
Ruker
+Rukias Feet
Rukusama
+Ruky
+Rule Elite
+Rule34 Grogu
Rulesy
Rulesyy
Rullmane
+Rum Lad
+RumJeDobry
+Rumble519
RumbleYT
+Rump
+Rump Kicker
+Rumpetask
+Rumpkondens
Rumpleminze
Rumpstag
+Run Alt
+Run Down Mid
+Run n Alch
Run1t3
+Run1t3 Cape
+Run2paradise
RunCMP
RunFreek
RunNhideZom
@@ -19671,104 +40560,199 @@ Runcatsmith
Rundamental
Rundi
Rune
+Rune Scimmy6
+Rune Strg
+Rune Toi
+Rune Trophy
+Rune Tunes
+Rune Woolf
+Rune l Scape
+Rune lennyFe
+Rune mendigo
+Rune-Taneli
RuneAlt1
RuneArguero
RuneBri
RuneFiend
RuneKing2h
+RuneLight
RunePuuro
+RuneShape
+RuneWeems
Runebie93
Runeblaizer
+Runebryter
Runechi
Runecraft
+Runecrafts
+Runed Ltd
Runeiro
Runely
Runeman3134
+RunenSohn
Runepalmu
Runeranta1
RunesCrafted
RunescepxD
RunescepxDD
+Runeshaft16
+Runesniffer2
+Runesr4nerds
Runester9999
Runeukko431
+Runeveeti
+Runeventure
Runey
+Runey Toons
Rungne14
RunicXanadu
Runita
Runite
+Runite Ricky
RuniteNerves
+RunkoPalkki
RunnerTwoD2
RunninBlood1
Runnn
+Runny Rectum
Runnynumber2
+Runolf
Runs
+Runs Laps
Runtellthat4
+Runtu Reiska
+Rup
+RupOSRS
+Rupea
Ruperd
+Rupert Whale
Rupiss
+Ruptured
+Rupus
+RureScape
Ruri
+Rus s
Rush618
+RushAl0t
Rushana
Rushflame555
+Rushing
RushnSuch
+Rushoo
Rusinahousu
+Rusinapulla
Ruskajan
+Ruskeareika
+Russano
RussianLives
+Russian_Fire
Russkill1000
Rust
+Rust Oxide
RustLasagna
+Rustaaaagh
Rusted
+Rusted Ape
Rustee
+Rusticis
Rusticus
Rustig
Rustigggggg
Rustix
Rustu
Rusty
+Rusty Spoons
Rusty99
RustyFoot
+RustyPlastic
RustySimon
RustyStipps
RustyTuna
+Rustydog125
Rustynice
Rustyw
Rusy002
Rut469
+Rutgar
+Ruthacus
Ruthers
+Rutje
Ruto
+Rutten
+Ruttuperse
Rutu
+Ruudcz
+Ruuddie
+Ruup
Ruut
Ruutana
+Ruwe Dollo
Ruzafa
Ruzy
+Rvght
Rvilleboy
+Rvndy
+RvneHQ
RvrseGiraffe
+Rvsta
+Rvvvy
Rwkw
+Rwolfe
+Rx bones
Rx-ll
+RxHarmacist
+Rx_Sparky
+Rxscro
+Rxzm
Ry Jones 21
+Ry T
+Ry n
+Ry-07
RyGuyyy1
+RyKush
RyQzz
+RyRgrMcFrly
+Ryaite
Ryalae
Ryan
+Ryan 178
Ryan8529
RyanApollo
+RyanC203
+RyanFar25
RyanKristoph
+RyanNagato
+RyanPick
RyanTW
Ryanandneal
Ryaneal
RyangalO
+Ryanmattin0
Ryann737
Ryanpage
RyansRebuild
Ryanwouldsay
+Ryawh08
+Rybizzle
Ryca
+Rycerz Arek
+Ryd
Ryder
Ryders
+Ryderwear
+Rydwarf
RyeAnn
RyeEx
+RyePie
+RyeYun
+Ryeron
+Rygelon
Rygo111
Ryhan
+Ryi
Ryjgar
Ryking
+RylanIsLive
Ryleegh
Ryley
Rylios
@@ -19780,78 +40764,216 @@ Ryokojin
Ryolm
Ryoma
Ryougi
+Ryougi Shiki
+Ryouma
Ryoush
+Ryronman
+Rystaloid
+RystyRane
Rytacus
+Rytis
+Ryu Deadass
+Ryu L
Ryugo
Ryuk
Ryukiral
+Ryuko
+Ryul Silvyr
Ryvik
Ryxidius
+Ryyd
Ryzelf
Ryzema
Ryzho
Ryzloh
Ryzou
Rzasa
+Rzy4k
+S 0 R A
+S A S H O
+S A VV A G E
+S C N
+S C U Z Z
+S E T C H
+S G M B
+S I N
+S J H
+S M A S H ER
+S M I L E S
+S O Z O
+S P E E E D
+S Q5
+S Rye
+S Spirit
+S T ACK E D
+S T E F AN
+S T E N
+S T I L L
+S T R 4 ever
+S T R Pwnz5
+S U F F
+S V N E
+S W A N N
+S a z z y
+S acrificed
+S aevar
+S aii
+S ammmy
+S co t t
+S cruffy
+S e 7 e n s
+S e a f o
+S e e j
+S ebbe
+S emi
+S enu
+S err
+S h a n e oo
+S hadw
+S hayzz
+S hea
+S hep
+S imply
+S k u ll y
+S kari
+S l M B A
+S l3
+S nipz
+S ofa
+S offa
+S ofus
+S orrow
+S oulz
+S outh
+S p00ky
+S secy dy
+S t e v e n
+S t i
+S t i g
+S t i x
+S tas
+S u b j e ct
+S uffa
+S unz
+S wan
S-525
+S-Market ll
S00000O0000k
+S0FTPUPPY
S0L0
+S0L0 SL0AN
S0MALISLAYER
S0O0O0O0O00S
+S0S JERRY
+S0UVLAKI
+S0Z4
S0ar
+S0ciety
+S0dra
+S0gg3
S0ldern
S0lomon44
S0lty
+S0nical
S0phie
S0tg
+S0thra
+S11om
+S1MPSLAYER
S1N6
+S1NA
+S1ORM
S1SU
+S1ayzAllDay
S1n0fWrath
S1ngul4rity
+S287
S2u2
+S3 Matt
S3ID
S3W3RSLVT
+S3n4_Hc
+S3oulful
S4M0HT
+S4M20N
+S4v4s
S5peedy
S60RDesign
+S7arburst
+SA alter ego
SAAB_Toxic
SAAIXX
SAGLAM
SAINt
+SAINt Steff
SALM00O00N
SALM00OOON
SAMCRO
SAMMMMMY
+SANDFROG53
+SANFEWLUVR78
SANO
+SANRIPOSYCHO
SANTERCOMTER
+SANTO5
+SANYANOSTRAH
SAPl
SARAH
SARPBC
+SATAN GOD
+SATORIIN
SAUCEnJUICE
SAVVON
SAWPREME
SAlNT
SAlNTS
+SAlYAJlN
+SB DRIFT
+SB Luke
+SB Mac
+SB Mully
SB2K
SBSBSBSBSBSB
+SC0V
SCARED
SCHOOTSFIRED
SCOTUS John
+SCR0TUM
+SCRAMMMBLED
SCRIMS
+SCRT SAUCE
SCYukino
+SC_Josh
+SClarky
+SDC Thursday
+SDV
SDVX
SDemotivated
+SE Alaska
+SE N SE
SECDEF
SELF
+SEMI CHUB ON
+SEMl DEAD
SEPTlC
+SESACO
SETU
+SEXY GRETA
+SFTYALWYSOFF
+SG
+SGNG
SGTA
-SH1T
-SH1TGAME
+SGTX
SH333S
+SH5
SHAD0WBANN
+SHAGED
+SHANK SAMA
SHELDOR
+SHERMnNATOR
+SHElD-HEDA
SHIA
+SHIA_WIRE
SHIDDED0N
SHIIIELDS
SHINY
@@ -19859,76 +40981,143 @@ SHINZ0N
SHOTGUNSUGE
SHRIIlIlIIMP
SHlESTY
+SHlFTER
SHlNl
SHlVER
SIBS
SIDB
+SIGMA MALE69
SIGNZ
SIKKaudio
SILENT
SIMAA
+SIR KIRSI
+SIR_WHAT_NOW
SISDIS
+SIayer
+SIoopie
+SJ7
+SK octorock
SKBToast
+SKBerk
+SKD
+SKDMRX
+SKDee
+SKEEZUZ
SKKi63
+SKlDMARK
SKlNNY
+SKlTZO
SL0AN
SL1T
+SL3DNECK
SL3VEN
+SL90
+SLAAYEEER
SLAP
+SLAP A SL0TH
SLAY
SLAYER
+SLBM
+SLE Casper2
SLEEEZY
+SLNT
SLOpro
+SLV
+SM Esura
+SM Tech N9ne
SM0KE
SMANisonfire
+SMEGMAEATER
+SMGO
SMHeMbRBoB
+SMKoolin
SMOrc
+SMOrc Weeds
SMOrc3000
+SMRT KO
SN0W
SN0WBUSH
SN3AKBO
SNAX
SNAlIlIlIlIL
+SNUIVEEEEEH
+SOCIAL SCARE
+SOLO D0L0
+SOLlD
SOMALISTEVE9
+SOUL MASTER
+SP1NK
+SPAICC
SPANKWlRE
SPLEEBTEZ
SPLODGE
+SPOODERMENNN
SPOOKAH
SPlCER
+SPlCY RAMEN
+SPlDER-MAN
+SQLite
SQSHD
SR0o0RM
SR20
+SRH IM
+SRSwiper
+SS Iron
+SSF Fe BTW
+SSJ2 GhostMO
SSS-Latch
SSamm
SSco0by1
SSironMage
+SSlavic
+SSnakeling
ST0n3
ST3AKS
STAIGZOR
STALlN
STAMPEE
+STARSZSZ
+STAUNCHEST
STEEZ
+STEEZ UwU
STERGS
+STEVEYZERMAN
STEVIO
STElNSGATE
+STElNSGATE 0
STIFT
+STM32 F103
+STOERE OMA
+STPN
+STR m8
+STRZI
STRlCKEN
STRlDERMAN
STSTSTSTSTST
+STUB0RN
STYG
STZY
STlFFMElSTER
+STlNGRAY
SUBAROO
+SUJET0
+SUP3RCLAUDIA
SUPA
SUPERSET q
SUPERTAIKURI
SUPREME
SURPRlSED
+SV_Exon
+SW3GG3RZ
SWAGL0RD
+SWE4TY
+SWlPE LEFT
SYMBI0TE
SYMPATHY
SYRpaperclip
SZP-Qlimax
+S_nacky
SaHiB
SaItbender
SaSoeur
@@ -19937,61 +41126,144 @@ SaZz
Saagarius
SaakeliMies
Saambellah
+Saaq
Saarinen
Saassz
+Sabba
Sabbatix
+Sabbelaar
+Sabeket
Sabel26
Sabelt
+Sabeltann26
Saber
+Saber Alter
+Saber Lilli
+Saber Six
Saberloco
+Saberos
+Sabich
Sabina
+Sabitoo
Sabler
Sabo
+Sabor Fresa
+Sabotaging
+Sabre Doge
Sabretooth
Sabu549
+Sabuwu
+Sac
Sacck
+Sacha Boeyy
Sachets
+Sack 2 Dirty
Sack_Lunch
Sackofeyes
+Sacolyn
+Sacre
Sacred
+Sacred Eli
+SacredArtist
+Sacrificed
+Sad Boi J
+Sad Fat Ugly
+Sad Juggler
+Sad Leaf
+Sad43
SadClownP
+SadJB
+SadPanda94
SadWhiteFalc
SadamBHangin
Sadass
Sadcatxd
+Sadge Izzy
+Sadge2407
+SadgeCry
+Sadgetseg
Sadiq
Sadism
+Sadistic
Sadivy
Sadness
+Sadting
Sadystic
Sadz
+Sadz Rax
+Sae Bae
+Saena
+Saenmin
Saeph
Saerdna97
Saerom
+Saetama
Saetre
+Safavid
+Safcon
+Safe N Sound
SafeFromWork
+SafeUp YOLO
Safecamp
+Safelyfast
+Saff
+Saffat
Saffi
Safiir
+Saftsack8
+Saga
+Sagar
Sage
+Sage Lao Tzu
+Sage Lily
+Sage North
Sage Vegas
SageO6
Sageinventor
Sageme
Sager
+Sager Main
+Sagev
Saggy
+Saggy Weenis
+Sagittarios
Sags
+Saguaro Joe
+Sah D
+Sahin
+Sahonym
Sahra
+Sai
+Sai Chosis
+Sai Saici
Sai1420
+SaiPhai
Said
Saifphire
+Saigyouji
Saiin
Saika
Saikoh
+Saikoo
+Saikou
Saikshin
+Sail Door
+Sailing Prod
Sain
Sainola
Saint
+Saint 7
+Saint Acura
+Saint Andrew
+Saint Bjorn
+Saint Fabioo
+Saint Fellow
+Saint Hatred
+Saint Hyde
+Saint JJJ
+Saint Silver
+Saint Tmi
+Saint Zero
SaintBurgs
SaintDienda
SaintDovey
@@ -20000,255 +41272,466 @@ SaintMilk
SaintPablo68
SaintShiba
Sainted
+Saintri
Saitam
Saitama
Saivaa
Saiyajin
Saiyan
+SaiyanSkinn
Saiyanns
Saiyans
Sajjad
+Sajzi
Sakhmett
+Saki Nikaido
+Sakix
Sakk
+Sakke
Sakkyun
+Sakobi
SakooR
Saksa
+Sakuragi
+Sal Magluta
SalBobo
Salacity
Salad
+Salad Car
+Salad Kareem
Saladhead25
Saladsoup
SalamPacanam
Salamalion98
+Salbo
Salcal
Salda
Saledor
Saleen
Salford
+SaliBronze
+Salih
+Salii
+Saliis Main
Salista
Sallad
+Sallariina
+Salllamander
Salma
Salmelainen
Salmo
Salmon
+Salmon Ikura
SalmonCookr7
+SalmonsRule
Salmos33
Salms
Salomon
Salomon666
+Salone
Salorassi
Salsa
SalsaMurango
Salt
+Salt Mines
SaltInTheCut
SaltPJ
SaltasVolfas
Salte 55
SaltedCorona
+Salten
Saltia
Saltigast
Salty
+Salty 4 Life
+Salty Cris
+Salty First
+Salty Fooker
+Salty Gimp
+Salty Guava
+Salty Slimy
+SaltyNakul
SaltyPears
SaltyPilgrim
SaltyQuackr
+SaltyShrimp
+Saltydivo
Saltzpyre
+Saluskenas
+Salvats
+Sam Biddle
+Sam F
+Sam II
+Sam Knight
+Sam S
+Sam Tha Man
+Sam Zi
+Sam btw
+Sam1
Sam5453
SamFC
+SamGaspacho
SamManSnow
SamV007
SamW
+SamWisely
+Sama ntha
Samadier
Samadieron
Samaji
Samalorian
Samanthix
+Samantics
Samay
Samb0Slice
+Sambal Sauce
Samblader
+Sambwo
+Same Deal
+Same Kid
+Same Thanks
+SameerM0
+Sameling
Samfew
Samfundet
Samgonz3
SammGemm
Sammi80
+SammieRose
Sammito2
Sammjoey
+Sammstera
Sammuel
+SammyGer
Samo
Samoski
+Samphet
+Sample size
SampleText
Samprini
Samps0n
Sampson
Samqqa
Samri
+Sams Main
+Samsara Kama
Samsoniene
Samsora
+Samster8812
+Samu Saukko
Samubidladin
+Samuel Hall
+SamuelBrian
+SamuelP223
+Samuell C
Samurai
Samusar7481
Samwse
Samxy
Samzh
+Samzju
Samzor
+Samzy
+San Quentin
San0
+San200
SanHolo
SanPaid
SanSheng
SanTie
+Sana
Sanada
+Sanark
+Sanbir
Sancta
Sancte
Sand
+Sand Raider
+Sand Shrew
+Sandal Slap
Sandbar
+Sanddemon527
Sandelzi
+Sanderr
+SandhillFrog
Sandhog
+Sandhur
Sandiey
Sandman1
Sandmannen9
Sandogan
Sandokan
+Sandoval Btw
Sands
+Sandviper40
SandwichBag
Sandwichfish
Sandy
+Sandy Claps
+Sandy Land
+Sandy OS
+SandyLand
+SandyMonkey
SandyWexler
+Sane Panda
+SanePizza
+Sanellyyy
+Sanfew Serun
Sangers
+Sangi
Sangotha
Sangtuary
+Sanguinala
+SanguineHawk
Sanguinezti
+SanguisDurus
+Sanitary Poo
SanityCntrl
Sanjachi
+Sanjai13
Sanjin
+Sanka
+Sanka93
SanodersNL
Sanoske13
+Sanphew
+Sans Soleil
Sanshou
Sansos
Santa
+Santa 07
+Santa Chielt
+SantaChristo
+Santapwner
Santasos
Santeri
Santeri333
Santhacine
Sanzoku
+Sanzoku HC
+Sanzu_o
SaoriHayami
Saoro
Saosiiin
+SaphiTheBear
Saphie
+Saphirakush
Saphiro
Sapin
+SapphicDiana
+SapphicEmmmy
+SapphicJade
Sapphirebear
+Sapphirelove
SappieWappie
+Sappihron
Sappphire
+Sappx
+Saqi
Saqib
+Sar a
Sara
+SaraNotDomin
Saradominas
Saradontmin
+Saragomin
Sarah
+Sarah Hagan
SarahWalker
+Sarahsaurus
Saraie
Saran
+Saran07
+Sarangae
Saraph
+Saras BBD
Saratomi
Saraziel
Sarbles
+Sarcasmder
Sarctopus
+Sarcy Csp
Sardaukar
Sardlz
+Sarecren
Sarfar
Sarge
+Sargon III
Sariel
Sarkie
Sarmagedonas
+Sarms Knight
+Sarodin
Sarrafo
+Sarrdukar
+Sarri
Sarriesque
Sarro
Sarrz
+SarthaMewart
Sarthe
+Sarthinox
Sarthorm
Sarumite
Saryit
+Sarytis
Sascha
+Saserdoti
Sash
Sashadow
Saskel
SaskiaNaka
Sasser
Sasslax
+Sasssie
Sassy
+Sassy Rookie
Satada88
Satamari
Satan
+Satan Claus
SatanSquared
-SatanicFart
+SatanarchyXX
SatanicGrill
+Sataniciocus
+Satans Ktten
Satchmoi
Satchyl
Satisfyed
+SativaDreams
Satizfy
+Satoo
+Saturdayxz
SaturnHippo
Saty
+SauLau
+Sauce McBoss
+Saucestad
+SauceyFox
+SauceyHorsey
Saucy
Saug
+Saugy
Saul
+Saul Bloom
+Saul Pvm
SaulMozarela
Sault
Sauna
+SaunaPaska
Saund
Saunders
SaundersRNG0
Saundo
Saunty92
Saurogar
+Sauroiv
SauronsTower
Saus
+SausageRyder
+Savabeel
Savage
+Savage City
+Savage Gamer
+Savage Kush
Savage Mind
+Savage Pimpn
+Savage Titan
+Savage izJkD
+SavageBigL
SavageSource
Savaged
Savakuda
Savalar
Saved
+Saved Me
Savg
Savilahti99
Savior
+Saviour
+Savj
Savjry
Savoureux
Savpryan
Savu
+Savu Nahka
Savustettu
+Savvo
+Savvune
+Savvvy
Savvy
Savy
+Savy Neals
+Saw Em Off
+Saw Siege
Sawanne
Sawaz1
+Sawbonez
Sawdey
+Sawrik
Sawzall12
+Sax
+Saxerpillar
+Saxlord2500
Saxon
+Saxon_knight
+Say Allo
+Say Freeze
+Say Geronimo
+Say Go Put
+Say Gz Rn
+Say aligh
SayMyName
+SayNo2Ebola
Saya
Sayadzin
Sayersi
+Saylorbtw
Saymouseart
Sayonara
+Sayooo
+Saypa
Sayrim
Sayrr
+SaysNiceAlot
+Sazch
+Sazere
Sazme
Sazzarull
-Sbeatz420
+Sboy_90
Sbraga
+Sc ruffy
+Sc0nesy
Sc0ttishDave
Sc1ttl3
ScOx
+ScOx ChrisM
+Scabrick
Scaf
Scaggy
+Scaha
ScalerSlut
+Scales
+Scampr
ScandalousHC
ScannerBen
Scape
+Scape Jam
+Scape Snake
+Scape Steve
+ScapeChad
ScapesGhxst
Scapeskater
+Scapin
Scaping
Scar
+Scar TNL
+Scar of Time
+Scarb OS
Scare077
Scared
+Scared Jr
+Scared Zebra
ScaredOfAll
Scarfade
Scargut
@@ -20257,63 +41740,99 @@ Scarlett
ScarredScape
Scarsx
Scarves
+Scary Face
+Scary Me
+Scary Parrot
+ScaryBrandon
ScaryShadows
ScaryTerry
ScaryVacoom
Scat
Scat19
+Scatheful
+Scatter
+Scea
+Scemblix
SceneGfX
Sceneryy
Sceptile
Scew
Schaapers
+Schams
Scharnhorst
+Scheemz
+Schepo
Scheubz
Schienenwulf
SchijnWerper
+Schildkroote
Schildpad
+Schileru
Schiller1994
Schimy
Schiphol
+Schismo
+Schizphrenia
+Schlaide
Schlak182
Schlanged
+SchlipityDop
+Schlitz
Schlock
Schlowmo
Schlynn
Schmaltz
+Schmelting
Schmidtty641
Schmokeyboii
Schmoovin
+Schmuck
Schmuel
Schmuk
+Schneemann90
+Schnei Yo
Schneidster7
Schneyy
Schnitzel
Schnitzl
+Schnocks
+Schnoob
Schnops
Schnozz
Scholi
Schoolies
Schools
+SchoonCombat
Schooner
Schoonzoon
Schoopity
Schorr
Schout
Schovaval
+Schretty
+Schricky
+Schrodingus
Schuabinator
Schuck
Schuyler
SchwanzLord
+Schweiaos
Schweigende
+Schwiemann
Schwingy
+Schwog
Schwoopity
+SciCloan
+Sciamachy
Sciario
Scids
Scils
Scimi
+Scimista
Scimmy2face
+Scion 1T
ScizR
+Scizorp
Sclass707
Scodran
Scoffs
@@ -20321,81 +41840,160 @@ Scofiz
ScoobaQ
ScoobiedO0
Scooby
+Scooby T1
+Scooby Yew
+ScoobySnack
+ScoobySnacks
+ScoochPoooch
Scoopie
Scoops12
+Scooter999
+Scootr
+Scoots
Scoped
Scorchbeast
Score
+Scoreox
+Scoreyy
+Scori
+Scorial
Scorialator
Scorlibran
Scorpiex
ScorpioBoy
+Scorpslay
+Scorqion
Scortyx
+Scot ty
ScotianHerbz
Scotse
Scott
+Scott 0888
+Scott Men
ScottJ
+ScottKZ
Scotteh
Scottie
ScottieP
ScottsTotlol
+Scottsdale
+Scottvc
Scotty
ScottyPippen
+ScottyThrall
Scottyx
Scourging
+Scouse Lyfe
+ScouseBandit
+ScouseThanos
Scout
+Scout Dorvis
+Scout Troopr
+Scout a raid
+Scouting UIM
ScoutnStake
Scowder
+Scp-2786
Scr0t
Scradmaster
Scraex
+Scrafo
Scrambledleg
Scrap
Scrappy666
+ScratchGolfr
Scratchzilla
+ScreamIM
ScreamSavor
Screeb
Screen
Screws
+Screws Floor
ScrewstonTex
+Scrig
+Scringo
Scrkidzl12
Scrotboy
-Scrotum
+Scrotetseg
Scrruff
Scrub
-ScrubOfOsrs
Scruba10
+Scrubgod
Scruffy
+Scrums
Scryzen
SctyDsntKnow
+Scuba Steev7
ScubaSnacks
+ScubaSteveOG
+ScubaStweeb
Scuff
Scuffed
+Scuffed Jesu
+Scuffed Ming
+Scuffed Sire
ScuffedGoose
+Scuggie
ScumBagAlex
Scumbag
+Scumbag Joe
Scummy
ScummyMonkey
+Scumpi
Scurlll
+Scuro
Scurrilous
Scuto
ScuttleAway
+Scuzz OS
Scvthe
Scwubs
Scybin
+Scyld
Scythe
ScytheOrNeck
+ScytheShreds
+Scytheer
Scytheplease
Scythes
Sdelta230
+Sdsdsd789
Sduckk
+Se Ki
+Se rena
+Se7en Rye
SeBambi
+SeDzz
SeLeV
+Sea 7urtle
+Sea Anemone
+Sea Buoy
+Sea Hawkins
+Sea Lobster
+Sea Monk
+Sea More
+Sea Saint
+Sea Slugs
+Sea Turtle
+Sea Turtles
+SeaManTaster
+SeaShanty
+SeaShellKing
Seagal
+Seagaru
+Seagate
Seal
Sealab
+Sealegs Btw
+Seamlessly
+Sean E
+Sean Is
Sean278
+SeanIsHiding
+SeanRich1
+Sean_C
Seande4
+Seangie 91
Seanii
Seantjl
Seany4444
@@ -20403,22 +42001,54 @@ Seanye
Seanz
Seapy
Searched
+SearingPain
+Searob
Seas
+SeasTheDay
+SeatGeek
+Seated
Seater
+Seater HC
Seath1552
+Seatoad
Seaweed
+Seazeee
+Seb Fe
+Seb Lt
+Seb Sob
+SebBTW
+Seba Iron
+Sebis
Sebla
+Seboeber
+Seboobs
+Sebukai
+Sebzy
+SecBongToke
Secho
+SecondMars
SecondStage
+Secondary
+Secondes
Secret
+SecretlyACat
Secretly_Bad
+Sectokin
+Sector Six
Seculish
Secwai
Sedap
Sedentary
+Sedlom
+Sedrf23
+See Too Far
+See u em
+SeeMeGoing
SeeYou
Seed
+Seed Of Dee
Seed386
+Seeeek
Seeejay
Seek
SeekerofIron
@@ -20426,224 +42056,425 @@ Seekerz
Seeking
Seeliss
Seems
+Seems Legit
SeemsFair
Seen
+Seen A Babe
Seenoevil
+Seery
Seerz
Seffer Kover
+Sefirah
+Sefka Sil
+Segelpaatti
+Segma
Sego
+Segs69
SeibaRaion
+Seifeltz
+Seifer666666
Seig91
Seighilde
+Seigneur5000
+Sein Blut
Seiskalehti
Seiverna
+Seiya216
+Seize
Sejaeek
+Seje
Sejj
SejjNesta
+Sek Loso
+Sekaiyatra
+Sekava
Seko
SektorQ
Selaphiell
+Selastiri
+Selbyen
Seldrium
Selectic
+Selena Gomes
+Selesi
Self
+Self Attempt
SelfStanding
Selfie
+Selina Kyle
Selj
SellMaxMain
+Sellerz
Selling ROTS
+Sello_Hunter
Sellu
Selmer
Selostaja
+Selyk
+Semantic
+Sembient
+Seme
Semestro
Semeul
Semi
+Semi-Stable
SemiReliable
Semih
Seminary
Seministi
Seminoles
+Semirare
Semlan
+Semours
Semper
SemperOP
+Semperlex
Senarii
Senbonzakra
Sencillo
+Send Backup
SendItKing
+Sengster
Senhor
+Senhor Prego
Senia
+Seniab88
Senior
+Senior Wells
+SeniorCui
SeniorLep
+Senis6
Senjor
Senkaiye
Senkuu
+Sennno
+Senny Bridge
+Seno 45
Senor
+Senor Grumpy
+Senor Nub
+Senor Patata
SenorMarcSux
Senpai
+Senpai Avv
SenpaiDecer
SenpaiiGod
+Senpenbanka
Senpukyaku
+Sens Army
Sens249
+Sensas
Senses
+Senses Fail
Senses12
+Sensie
SensualSnail
Sentinel
Sentristi
Sentrosi
Senturia
Senzel
+Seoyeonnie
+Separi
Sephiore
+Sepi testaa
Sepper
Seppiee
+Seps
+September 26
Septic
Septimus
+Sepv
+Sequenced
Sequin
Sequinex
Sequissimo
SequissuAnau
+Ser Bone
+Ser Boris
+Ser Kelvin
+Ser Paddles
+Ser Percy
+Ser dracarys
Seracid
+Seraff Fe
Seraph
+Seraphine BF
+Serblicious
SerenShadows
+SereneMarine
Serenity
+Serenity Now
+Sereri
+Serfival
SergeiSativa
+Sergonomicus
Serial
+Serialist
Serine
+Serioga One
SerionKiller
SeriousLip
Seriousruss
+Serkr
Serkus
+Serls
+Sernara
Sero87
+Seroplex
Serori
SerotoninBTW
+Serpent Sin
+Serpico
Serpula
+Serpy
+Serros
SertCocuk
Server
Servia
Service
+Service Jobs
+Service user
Sese
Sese778
Sesil
+Sessanna
+Set h
SetItToWumbo
Seta
Seth
+Seth1711
Seth6191
+SethH350
Sethalas
Sethliu
Sethmare
+Setko
Seto292
Settled
+Setzal
Seut
Sevadeg
Sevalt
Seved223
+Sevenation
Seventh
+Seventh Son
Seveoon
Seveoonn
+Severith
Sevie
Sevvy
Sewdri
+Sex Beast
+Sex Gods
+Sex Sea
+Sex Vibe
+SexEZ
SexFerguson
+Sexi Rat
+Sexperience
+Sexsi
Sext0n
Sextor
-Sexy
-SexyBish
+Sextuple
+Sexy Carl
+Sexy Cholo
+Sexy Style
+Sexy Will
+SexyFatGirls
+SexyLefty
+SexyPeaches
+SexyShooterr
+Sexyteurs
+SeymourAses
Seyriu
+Seytan
Sfa05
Sfannie
+Sfd
Sfen
+Sfouf
+Sg Mini
+Sgn
+Sgs flames
+Sgt
+Sgt J0hns0n
+Sgt Jacques
+Sgt Moogoo
+Sgt Ru642
+Sgt Salliss
+Sgt SaltySac
+Sgt-Sub0_99s
SgtBuurman
+SgtSausy
+SgtSlaughtur
+Sgtbea93
Sgtfatboy
Sgtsoldier
Sh00t3r2O2O
+Sh0rt Lived
Sh0rty
Sh0w
Sh3pathome
Sh4d0w009
Sh4dowfox
Sh4rice
+Sha r k
Shaan
ShabooBopWoW
Shabot
+Shaboun
Shabuski
Shaco
+Shaco Bot
ShaddyB
+Shade T
ShadeSlay
+ShadedWizard
Shadedmedic
Shadeknightt
+Shadesypoo
Shado
+Shado Man69
+Shadonnon
Shadow
Shadow Flare
+Shadow Left
+Shadow Specs
ShadowBobado
ShadowBoy001
+ShadowFink
+ShadowGodEU
+ShadowJosh
ShadowMakerz
+ShadowPrism9
ShadowSinz
ShadowSniper
+Shadow_006R
Shadowclysm
Shadowcra
Shadowlimes
+Shadowmax666
+Shadows Fall
Shadowscreen
+Shadowsun
+Shadowwheel
Shadsnp2017
+Shadum
ShadwRoca
Shady
+Shady 716
+Shady Glade
+Shady Shin
+Shady417
Shady78
ShadyMilkMan
+ShadyMinkins
+Shadys Bro
+Shadysider
ShaftyKrafty
Shafu
Shagnarok
+Shags Bussy
Shagzy
+Shahe D
+Shahub
ShakaLakaInU
Shake
+Shakeem
+Shakeman
ShakenSoda
Shakkas
Shakuuuur
+Shalamaar
Shalendra
Shallistera
+Shalomga
+Shalysa
+Sham on Osrs
+ShamSavior
Shaman
ShamanJon
ShamanLizard
Shamanletics
Shambler96
Shame
+Shamiina
Shampoe
+Shampoo
Shamsal
+Shamu
+Shandaie
+Shandooobie
Shane
+Shane F3
ShaneSJ
Shanee-oo
+Shanem24co
Shaneobrahhh
Shaner
Shanfew
Shania
+Shania Twain
+Shanizmo
Shanked
+Shanked it
Shanks
+Shanks Haki
Shanksen
+Shantaaa
+Shantar
+Shanteven
Shantideva
+Shapalo
Shapaz
Shape
Shaper
Shapii
Shaqs
+Shaqster1k
+Shaquayquay
Shard
+Shard 2
+Share E R
+Share Sucks
Shareit
Sharing
Sharingan
+Sharingan x
SharishaXd
Shark
SharkTheBait
+SharkiFan
Sharkie200
+Sharkie92
Sharktail
Sharkyyyyy
Sharmac
Sharmz
+Sharn
Sharoxi
Sharp
Sharpeyy
Sharpgut
+Sharpi e
+Sharpie
Sharpman767
SharpyClaw
Shart
+ShartEnjoyer
+Sharven
+Shasan501
+Shat 2 Hard
Shatllef
Shatter
+Shatter Day
Shaun
+Shaun R
Shaun135961
+Shauna Vayne
+Shaunhunni
Shaunni1
Shaunrnm3
Shaunyx
@@ -20654,236 +42485,460 @@ ShawnBW
ShawnBay
ShawnXL
Shawni
+Shawnoh
+Shawrysx
+Shay Kirbuti
Shaya
+Shaya Rene
+Shayd
Shaykolade
Shaymuz
ShaynRS
Shayne
+Shayne 1
+Shayne Topp
+ShayneW
+Shaziyen
+Shaznon
Shazu00
Shazzys
+Shckizm
+She Moist
+She Slackin
+She is lvl18
+Sheashanera
Shebbi
+Sheep
SheepKhalifa
SheepTrainer
+Sheepi
Sheeppo
+Sheer freeze
+SheeshSkicka
+Sheeshlor
Sheetm3tal
Sheetz
+Sheev
+Sheff-Rah
+ShegoSimp
Sheguey
+Sheikk
Sheilaaaa2
Sheivattu
+Shelbgasm
Shelbi
+Shelburz
Sheldore
Sheldozer
Sheli
Shelios
+Shelkun
ShellBeRight
ShellLeeBee
Shelldunk
Shen
+Shen Btw
+Shen-pai
Shenfu
Shenkie
Shep
+ShepShep95
+Shepher
+Shepherdess
Sheq
+Sherbert96
+Sherkey
Sherlock
+Sherlock 07
+Sherlockness
+Shernz
Sherry
+Shertie
+Shes Nasty
+Shes Royal
+Shesterkin
Shev64
+Shevzzz
+Shewolf Nova
Shezwick
+Shh
+Shh Im Maxed
ShiaLaBuff
Shiba
+Shiba Miyuki
+Shibidy
Shiddy
+Shieldy
+ShiftWorker
+Shifteroo
+Shifterr
Shiftless
Shifty
Shiftynifty
Shiftyy
Shifu
+Shigure
+Shihyi
Shiifty
Shiiftyy
Shiit
+Shiit head
Shikhar
Shilo
+Shilo Void
Shilomies
+Shilvah
+Shimmeister
Shimosh
+Shin Nohara
ShinMalphur
Shinchi
+Shine tales
Shing
+Shinichiro
Shinigami
+Shinigami 07
+Shininess
ShiningStar0
+Shining_Bind
ShinnGee
Shino
+Shinobi
Shinook
+Shinox
Shintaz
Shintygod
Shiny
+Shiny Dragon
+Shiny Glue
+Shiny Mew
+Shiny Olm
ShinyMimikyu
ShinyNoctowl
ShinyShyvana
Shionono
+Shioshii
+Ship I
+Ship s
+ShipCaptCrew
+Shipoden
+Shipppo
+Shippy
+Shir
+Shir0u Emiya
+Shirakami
Shiramasen
Shiranaii
+Shire Fox
+Shiredragon
Shiri
+Shirlan
Shirts
+Shishkemax
Shiskey
+Shiv HD
+Shivals
Shivered
+Shiveron
Shivers888
Shivoc
-Shiz
+Shiyah
+Shizlo
+Shizzus
+Shmazza
+Shmeckington
+Shmecko
+Shmelf
+Shmerlin
+Shmew
+Shmexy
+Shmidtie
+Shmo
Shmoah7
+Shneeb
Shnoobed
+ShoToy
+Shoarma
Shoarmadyl
Shocka
+Shocked
Shockedme
+ShockerMe
+Shockzeyy
Shogaol
+Shompy
Shongrislomg
Shonion
+ShooK em
Shoog
+Shook
Shoopdiesel
ShootYaSkool
Shootem40
+Shooty Tater
Shop
+Shopferix
Shora57
Shore
+Shorelyy
+Shorez
Short
+Short Mike
+Short Tale
ShortHoppe
+Shortec
Shortguy
Shortstop819
+Shortz360
Shot
Shot1200
Shotixx
Shotoer
+Shotzz
+Shoulderr
Shouto
Show
+ShowFeet
+ShowUrPits
Showby14
Shower
+Shower Maxed
Shown
Showtek
Shozen
Shpee
Shpikey
+Shpongle
+Shrabbaa
Shran
Shredded
+ShreddedMD
Shregz
Shreikkiller
Shrek
+Shrek 6
+Shrek BTW
+Shrek2
ShrekLovr
+ShrekazoidPR
Shreksalot
Shrik
Shrikems
+Shrimp 72
ShrimpForx
ShrimpStick
Shrimpa
+Shrimping
Shrimpster
Shrimpy5
Shroden
+ShrogTheBarb
Shromik
Shromu
+Shroom God
+ShroomLord17
Shroomjak
Shrtct
+Shrumes
Shtankybruce
+ShuZ
Shuaston
Shuckle
Shuddie
Shuffleee
Shuiin
Shultzy
+Shun Conery
+Shundo Mew
+Shungite Bar
Shuno
+Shunolog
Shunpown
Shunrai
Shunseh
Shupa
+Shure
Shurty
Shut
+Shut Up Megg
+Shut Up Mmeg
Shutnik
+Shv
Shvne
Shwift
+Shwiftzy741
+Shwoompy
Shwoop
+Shxtn
+Shy Kirino
+Shy Mew
+ShyElfTrap
ShySphincter
+Shyhorsegirl
+Shyphii
+Shypsena
+Si Ya
+Si d
+Si mp
SiFu
+SiIver Fang
SiRzZ Zeref
+Sia
+Siallus
+Siamees
SiameseCat
Siamogale
+Siane
+Sianna
Siber
Sibling
+Sic Mundus
SicSolaFide
+Sicariiarum
Sicily
Sick
+Sick Degen
+Sick Ego
+Sick Giraffe
+Sick Irony
+Sick Main
+Sick Mark
+Sick Pet
+Sick Skill
+SickFam
+SickGainsBru
SickNasty
SickPete
+SickPump
Sicka
Sicker
Sickhuman
+Sickhunt
+Sickle76
Sicknez
Sicko
+Sicko Stronk
+Sickvibe
+Sicxness
+Sid and Geno
Sidabras
+Side B
+SideChump
+SideMeatt
+Sidecutters
Sides
Sidewinder15
Sidge
SidijuS
+Sidin1
+Sidka60
Sido
Sidocahn
+Sidro
+Sie
SiebScho
+Siegmeyer14
+Sielunveli
+Siemke
SiennaEhtycs
+Sierra Echo
Sierzant
Sierzy
Siesta
Sifu
+SifuPlankton
+Sig Man
+SigSauer
Sigarda206
-Sigg69
+SigeFrid
+Sigefride
Siggen
Siggie
Sigh
Sighlent
SightUn
+SightUn Seen
Sighted
SightlessDog
Sightlines
Sigiis
Sigin
+Sigma Blood
+Sigma Oasis
+Sigma Seven
+Sigmarz
Sigmazeous
Sigmet
Sign
Signd0g
+Signoth
+Sigrudson
Sihana
+Sihl
SihuiRS
Sihva
+Sihva Dark
Siida
+Siiiiiiix
Siimon3
Siimse
Sijmen
Sika
Sika-Mika
Sikauss
+Sikerrim
Sikko
+Sikko NL
Sikkosaurus
Sikn
Sikruz
Siks
Sikskilla
Silanz
+Silasco
Silavex
Silcaria
Silcooper
Sild
SilenceSC2
+SilencedAF
Silent
+Silent Sky
Silent too
SilentEnmity
SilentFabric
SilentFaux
+SilentQ
Silentzsword
Silicon Z
+Silinsh
Silixi
Silky
+Silky Beauts
Silly
+Silly Asian
+Silly Kev
+Silly Rum
+Silly Virgin
+Silly Zilly
SillyPsybin
Sillyibexe
Silmarilli
+Siloxane
SilvaAlzir42
Silvaa
Silvado
+Silvanla
Silver
+Silver Cave
+Silver King
+Silver Lugia
SilverForM
SilverLining
+SilverPuni
SilverRizlas
SilverTeej
+Silverado
Silverang
Silverbluds
Silvercrux
@@ -20893,89 +42948,244 @@ Silverimo
Silverxlion
Silviii
Silvoan
+SilvrLining
Sim Aero
Simeeon
Simel
Simetra
+Similuck
+Simmcheck
Simmi091
+Simmie
Simmololol
+Simmondz
+Simmumah
+Simno Karys
+Simoggy
+Simon Bruh
Simon Jnrr
SimonCookie
+SimonCowell
+Simone Weil
+Simp Andy
+Simp4Jessy
+Simp4Science
Simp4Tanz
+Simpa
+Simpinz
Simple
+Simple Helm
+SimpleSlays
+Simplekinz
Simplest
+Simplex
+SimplexDabs
Simplicitey
Simplicityx
Simply
+Simply Quiet
+Simply Sam
+SimplyBadass
SimplyBetter
SimplyFresh
SimplyLlama
+SimplyNikki
SimplyPro
+SimplyRiolu
SimplySendIt
+Simply_JS
+SimppCatcher
+Simpson
+Simse
SimulatedYou
Simutrans
+Sin Cena
+Sin Cere
+Sin City
+Sin Dragon
Sin0fWrath
SinCrux
+Sinappihauki
Sinasappel
Sinatra
Sinbad
Sinbvd
Since
SinceOldDays
+Sinclair Oil
Sincoura
Sindo
+Sinefeld
Sinerule
Sinetine
+Sinferna
SinfulDesire
+SinfulDingo
Singerderek
+Singulares
+SingulariTx
+Singularry
+SinikOG
Sinister
+Sinister C6Z
+Sinister Key
SinisterLeft
Sinisterz06
+Sinistr Dave
Sinitank
Sinixx
Sink
Sinka
+SinkingUnder
+SinnerUK
Sinner_Blue
Sins
+Sins of Thor
+Sint Truien
Sinta
+Sinterglass
+SiontC100mph
Siorri
Sioux
+Sip Cleeko
+Sipa
SippinBeers
Sippy
+Sippy 1
+Sipsta
+Sipuliparoni
+Sir Zhao
+Sir 0wnalot
+Sir Ali
+Sir Ante
+Sir Boberton
+Sir Botje
+Sir Brandito
+Sir Burritoe
+Sir Chancho
+Sir Colossos
+Sir Daven
+Sir Deedge
+Sir Delwin
+Sir Doland
+Sir Doobies
+Sir Elusive
Sir Epic 3rd
+Sir Ferreus
+Sir Fire Ki
+Sir Frekkel
+Sir Fudmire
+Sir FurDude
+Sir Galleth
+Sir Godfree
+Sir Graj
+Sir Ial
+Sir Idwaly
+Sir Iron 4th
+Sir Jamie N
+Sir Jinhai
+Sir Junn
+Sir LafaLafa
+Sir Lanofg
+Sir Leadfoot
+Sir Lidd
+Sir Lobster
+Sir Luke1627
+Sir Max Tb
+Sir Mordacai
+Sir Mr Bro I
+Sir Nak
Sir NichoIas
+Sir Nuggers
+Sir O Tonin
+Sir One Shot
+Sir Peg
+Sir Poisonfa
+Sir Pur Paul
+Sir Queeffin
+Sir Reflex
+Sir Reos Lee
+Sir Rhaenir
+Sir Rolf exe
+Sir Seifer
+Sir Shrimps
+Sir Slyck
+Sir Son Goku
+Sir Sparhawk
+Sir Stidi
+Sir Stitch
+Sir Sucellus
+Sir Sven
+Sir Tanner
+Sir Ton4
+Sir Towliee
+Sir Truble
+Sir Var4
+Sir Ving
+Sir Vkk
+Sir Whipit
+Sir Wismar
+Sir Wojtek
+Sir Zakar
+Sir friezer
+Sir philippe
+SirAirik
SirAmikVarze
SirAngo
SirArcAngel
+SirArimal
+SirBabbers
SirBerus
+SirBjustice
SirBoma
+SirBoopin
SirBroderick
SirCapper
+SirChknNuget
SirCoolAsian
+SirCumsAlil
+SirDanSolo55
SirDarrBear
SirDeimos
+SirDouglass
SirDougles
+SirDoyvid
+SirDude
SirEfficient
+SirEskimo
+SirFroggits
+SirGillespie
SirGoki
+SirGrimsby
SirGrizzly
SirHines
SirHmm
SirHollywood
SirHumanBean
+SirIronyMan
SirKakoiml
SirKefir
SirKill
SirKulls
+SirLarry55
SirLoinalot0
SirLunarias
SirNexALot
+SirOcean
+SirPegAsians
+SirPhockQ
SirPoo
SirPwn
SirRebs
+SirRuck
+SirSanders
+SirSchmoopy
SirShakes
SirSilky
SirSlayalot
SirSpicius
+SirSplinge
+SirSunTitan
SirSwaggzz
SirTrea
SirVenompool
@@ -20985,49 +43195,92 @@ SirYiffer
Sir_massmo
Siraxis3310
Siraz
+Sircamm
+Sircarenot2
+Sirdedalot
+Sire Edward
SireSucks
+SirenMan
Sirhca
Sirius
Sirixen
+Sirjoshihad2
+Sirkuspelle
Sirlagger
Sirlightboy
Sirmordred44
Sirnuclear
+Sirroyce
+Sirsa
+Sirsteve99
Sirstynkalot
Sirswish4
Sirtippy23
+SisiJones
Siste
+Sit Quietly
+Sit xD
+Sita Koll
+Sita Rama
+Sitharii
Sithlord
Sitinduck
Sitt
+SiuMan
Sivior000
+Six 3 Ohh
+Six Dix
+Six Kills
+Six Seasons
+Six Sen6e
+SixFootAmigo
SixOhFour
Sixcess
+Sixfoot0001
Sixint
Sixpkabs
Sixpounders
+Sixten106
+Sixthflag
Sixty
+Sixty N9ne
SixtyNine73
+Siynistr
Sizashi
SizeMan
Sizer
+Sizzle Cat
+Sjaak
+Sjak
Sjakk
+Sjakk Spill
Sjappy
Sjeb
Sjele
Sjenjatje
Sjenkie
+Sjokoladebit
Sjoni
SjonnieDon
+Sjonsen
Sjotha
Sjulstad99
+Sk Gollum
+Sk Scooter
+Sk ky
+Sk u lly
Sk1llzy_RS
Sk1ttlz
Sk8rgrl474
SkHiCharisma
+Skaaddoosh
+Skaane
Skachoo
Skada
+Skada N
+Skade
Skaduw99
+Skaf
SkaffeAgent
Skaicius
Skaikru
@@ -21035,69 +43288,124 @@ Skailas
Skakkae
Skal95
Skanderbeg
+Skank Hunt32
+Skarboeblie
+Skarking
SkarmBliss
+Skars Iron
Skaryth
Skate
+Skate Squirt
+Skatemyboard
+Skater 1299
+SkaterJord
SkaterSkillz
Skatergod
Skaterlegs
Skaterune3
+Skaufel
+Skcoot
+Skedeby
Skedsauce
Skeeb
Skeer
+Skeesh
+Skeeterstein
SkeetlzPopz
Skeff
Skeggy
Skelebral
Skelethon
+SkeletonSex
Skelex
Skelnik
+Skelpy
Skely527
+Skelytom
+Skepp
+SkeptasMum
+Skeptical
+SkepticalSol
Skere
+Skere Bert
Skermy
Skerp_Perp
Skertt
Sketch1e
+Sketchiin
+Sketti Water
+Skewp
Skezi
+Ski Gim
+Skiba
+Skibidi Tob
Skibidibills
Skidoodlee
SkiemLord
Skifree
+Skilane
Skill
+Skill Will
+Skill issues
+SkillFatigue
SkilldSkitzo
Skilldriver
Skilled
+Skilled Boof
+Skilled Roy
Skiller
SkillerC4
+Skillerbabes
+Skillersj
+Skilless
+Skillexi
Skillhunter1
Skillian89
Skillius
Skilll
+Skilllzdan
Skilln
+Skillpace
Skillpadden
Skills
+Skills Ahoy
+Skills Boss
+SkillsPets
SkillzGainz
SkillzLmao
Skillza
Skillzzz
Skilor
+Skimer
SkinStitches
SkinTone5
SkinnedYoshi
Skinny
+Skinny Mage
Skinthix
Skinyoualive
+SkipTheTask
Skipi
Skipper996
+SkipperMcgoo
SkipperPing
Skippy
+Skiptutorial
+Skito
+Skittlz Doc
SkitzRs
+Skitzad
Skitzpatrick
+Skizzles
+Skj
Skjaera
Skjeberg
Skjelve
Skkarpz
+Sknnywhteboy
Sknor
+Sko Birds
+SkoalSnus
Skodem
Skoh
Skol
@@ -21105,6 +43413,7 @@ Skold
Skolder
Skolzera
SkoobiDooby
+Skooier Bibs
SkoomaPls
Skopix
Skopusnik
@@ -21114,22 +43423,37 @@ Skorne
Skorned
Skotten
Skov
+Skovduen
Skovtt
+Skox
+Skral
+Skramlan99
Skreecher
Skreeeech
+Skreeeech Z
Skriptz
Skritman
Skrl
SkroTam
+Skroooodge
Skrote
+Skrrrtle
Skrudzas
Skruf
SkrumpKing
Skrychi
Skryze
+Skubert
Skuddar
+Skul
SkulbIaka
Skuldebrev
+Skull 2148
+Skull Cove
+Skull64
+SkullDemise
+SkullFkdNex
+SkullFricker
SkullTrailYT
SkullTricked
Skulled
@@ -21137,46 +43461,77 @@ Skullhead6
Skullking199
Skullpit
Skulls
+Skulls Jr
+Skumbag Xell
Skummi
Skummy
Skumpy
Skundos
Skunk
+SkunkAsylum
+Skunkerinho
Skunkieblow
+Skwat MD
+Skwurtle
+Sky BIues
+Sky Em
+Sky Mages
+Sky Satan
+Sky VR46
+Sky and Sea
+Sky is mine
SkyBouncer
+SkyBroadband
SkyFlyPie
SkyKnight
+SkyRizzy1
SkySailing
SkySkyClover
+Skyblownet
+Skybussa
Skyda
SkyeKuro
Skyenss
+Skygirl Tami
Skyleosaurus
Skymonster77
Skymore
Skynet1188
+Skyom
+Skype Call
Skyreacher
Skyrider
Skyrider50
Skyrion993
Skywalkingyo
Sl yx
+SlGURD
SlGlL
SlLPH
+SlRCUMSlZE
Slaats
SlabOfCorona
Slabs
Slackington
Slacky
+Sladdbarn
Slade9100
+Sladist
+Slagter
Slain
+SlainThemis
+Slaked
Slakito
Slakje
Slakoth
Slam
+Slam Daddy
Slambo
+Slamdabooty
+Slamdark
Slamer1993
SlammDaddy
+SlammalS
Slamz
Slance
Slap
@@ -21185,35 +43540,71 @@ SlapShot777
Slapen
Slaphead28
Slapmeister
+SlappChopped
SlappaBogan
+SlappeStront
Slappenn
+Slappers
SlappinMango
+SlappybagsFC
Slaps
+Slaps Nuts
Slapzinger
Slaqk
+Slarkan
Slash
Slasher
+Slasher z99
Slasher0708
Slaskepott
+Slate Snake
+Slats
Slaughta
+Slaughtered
+SlaughtrMeat
+Slav Kings
Slava
Slave
Slavish
Slavtonio
Slay
+Slay Addict
+Slay More
+Slay Or Bust
+Slay Pets
+Slay R
+Slay Tim
Slay0rDie
Slay3rmate
SlayAChicken
SlayEeryDay
SlayForFame
SlayForJoy
+SlayImpulses
SlayIsMyfame
SlaySir
+SlayToSkill
Slayaholic
Slayborhood
Slaycation
+Slaydenoob
Slaydo
+Slayem Maul
Slayer
+Slayer 247
+Slayer 267O
+Slayer Azye
+Slayer Clues
+Slayer Helmz
+Slayer King
+Slayer L0G
+Slayer Mid
+Slayer Rome
+Slayer Shark
+Slayer Task
+Slayer XPs
+Slayer bond
+Slayer n gp
Slayer314
Slayer360
Slayer7515
@@ -21222,6 +43613,8 @@ SlayerKingv2
SlayerRyan
Slayerburger
Slayerdog
+Slayerg1g
+SlayerisGame
Slayerknox
Slayerman
Slayers
@@ -21231,22 +43624,32 @@ Slayhades383
Slayic
Slayin
SlayinSkills
+Slaying Poon
SlayingBooty
SlayingDave
Slayingit14
Slayn
+Slayology
Slayosaur
Slayr
Slays
SlaysIronman
+Slayscaped
+Slayter
+Slaytr
+Slayv
Slaywolf
Slayyer59
SlayzyDayz
+Slck Mark
SleanClate
SleazySEAL
+Sleazyscape
Sledgendaddy
Sleeep
Sleep
+Sleep Cycle
+Sleep When
Sleepercell
Sleepgoood
Sleepierz
@@ -21254,181 +43657,376 @@ Sleepiness
Sleeping
SleepingCow
Sleepinonice
+SleeplessC47
+Sleepnaut
Sleeps
Sleepy
+Sleepy Fr0st
+Sleepy Hoop
+Sleepy Mulli
+Sleepy Tired
+Sleepy sound
SleepyPlantz
SleepySus
Sleepybear
Sleepzy31
Sleet56
Sleete
+Sleighbor
Sleightyyy
+Sleighyour
Slemmy
Slender
SlepinHose
+Slepinn
Slepping123
+SleppySnek
+Sletmar Kets
+Slettenbak
+Sleuth
+Slev711
+Sleve
+Slevenderrrr
Slewwyy
Sleya
+Slibbon
Slice
+Slice Dice85
+Sliced1Bread
+Slicer3 0
Sliceseau
Slick
+Slickslipply
+Slicore
+Slidecast
Slides
Slidpanther
Slidz
+SlieNinja
+Slienced
+Slievemore
+SlihgtyWrong
+Slikjee
Slim
+Slim Gandalf
+Slim Paul
+Slim Yogurt
SlimJD
+SlimeShat
+Slimey Fish
+Slimjim
Slimy
+Slimy Uim
+Slingin
Slinkeh
Slinky
+Slioter
+Slipery Peet
Slipory
SlipperySnek
Slise745
Slit
Slizzle
+Sll8
SlnOfWrath
+Slo
Slo w th
+Sloanee
SlobOnMy
+Slojsarn
Slokei
Sloopie
Sloothy
Sloper
+Sloppy Joey
+Sloppy WAP
+Sloppy Zoot
+SloppyGnomes
+Sloppyninj
Slorkie
+Sloshpack
+Slotche
+Sloth
+Slothenly
+Slothery
Slothhs
+Slothly
Sloths
Slothy
SlottedPig
+Slough
Slow
+Slow Down
+Slow Spirits
+Slow blow
+SlowRoaster
+Slowky
+Slowly Dying
Slowpoke
SlowrolI
+Slowxpgamer
Sludgy1
+Slug Kiss
+Slugggy
+Slugjob
Slugr
+Slum Village
SlumberGoose
Slumptality
Slurggi
+SlurmsMcnzie
+Slurmz
+SlurpDaTerp
Slurpez
+SlurpinBrews
Slus
Slush
Slushhy
Slushii
Slushiiii
Slushyy
+Slusserbust
Sluthra
Slutism
+Slutzilla
Sluwe
+Sluwe Odin
Slxpz
+Sly CHRlS
+Sly Guy Matt
+Sly Shy Guy
+Sly Spyro
+SlyPancakes
Slyfocs
Slyjack
Slymax
Slypes
Slythiren
+Slyzuh
Sm0keyMcpot
+Sm0rc420
+Sm1thyy
+Sm6
+Sm8 AJ
+Smaarips
Smac
+Smack Snr
+Smacka Fish
+Smackatosh
+Smacking 0s
Smackintoshh
Smaeow
+Smai
Smajli
+Smal Iron
Small
+Small Chief
+Small Idea
+Small Iron
+Small Paul
Small3y
SmallBlock
SmallBrained
+SmallPepino
+Smallemans
+Smalley
+Sman
Smang
+Smart Dog
+Smart Foam
+Smart One
Smartbabe
SmarteeRS
SmarterMop
+Smartfon
Smartiest
Smartyross
+Smash Vials
Smashing
Smaug
SmaugSlayer
+Sme Cape
Smeared
Smecher
+Smeeezy
Smeegoles
+SmegGIM Gr8
Smeggyweggie
SmegmaJesus
SmegmaL0rd66
Smegmatism
+Smegmboy123
+Smekkes
Smeklius
Smeli0das
Smelix3
SmellMyClam
+SmellingMill
Smelly
+Smelly Butt
+Smelly Guy
+Smelly Kip
SmellyGymSox
+Smellyjeans
Smellypillow
Smess
+Smetvrees
+SmexyBaker
+Smezzie
SmiTHSaNiTy
Smiddels
Smiddle
Smidjorgen
Smii
Smil
+Smil3r
+Smile My Boy
SmileBro
Smiled
+Smilee
Smiles
+Smiley AK
SmileyCyrus
+SmileymanTim
Smilf
+Smiliprophet
Smilts
+Smimi Smumu
SmiqelAngelo
+Smirk
Smit
+Smite Bait
Smite4Ags
SmiteForAgs
+Smited Time
+Smites
Smith
+Smith Inc
+Smith a Cat
Smith2109
SmithRebirth
Smithin
+SmithingWhip
Smithinz
Smithoxmagic
Smithy
+Smithy NZ
Smittyk15
+Smo3
Smoak
Smob
+Smoel Dicht
SmoggyB
+Smokahontaz
Smoke
+Smoke A Bag
+Smoke Brb
+Smoke J Brb
+Smoke Oil
Smoke2Fly
+SmokeChedFTM
+SmokeCheds
+SmokeM0B
SmokeSocial
+SmokeandCum
+Smoked Bacon
+Smoked Ed 92
Smokedale
Smokee
SmokeeLoki
SmokerOfDank
Smokes
Smokey
+Smokey Eyes
Smokey201
+Smokeynutz
Smokeynz
+Smokiecat
+Smokin Clans
+Smokin Perks
SmokinBlunts
SmokinChills
Smoking
+Smoking Hash
SmokingFlax
SmoknDReefer
Smol
+Smol Big Toe
+Smol Kupo
+Smol Lyra
+Smol Pikachu
+SmolDeer
Smoland
+Smolrice
Smooooove
Smooth
+Smooth Draft
+SmoothRabbi
+Smoothlu
Smoothpossum
+SmoqueWeed
+Smork It
+Smoss
+Smot Poking
Smpli
Smuddy
Smug
+Smug Advice
+Smug Grin
+Smulknul
Smurf
+Smurfboard
Smurfed
Smurfingt0n
+Smurfman254
Smurfukas
+Smurghilda
+Smurky Maart
Smurphington
+Smush
+Smush Things
+Smushma
SmushyCows
+Smuvies
+Smuzzle
+Smythy
Sn0op
Sn0rkath420
+Sn0wb4ll
Sn1p3
SnYp
Snabba
+Snack Bar
SnackJack
+Snackspace
Snacktime
SnafuPC
Snaggapus
+Snaghyrnd
+SnailNipples
Snake
+Snake Boss
+Snake Jazz
SnakeSpec
Snakebite37
+Snakebites
Snakedeath2
Snakedogbear
Snakeling
+SnakeskinRag
+Snaks
Snaky
+Snaky Snake
SnapMyCarot
+Snapa7
+Snapboog1e
+Snape Grass
+Snapeeh
+SnapperSnafu
+SnappySplash
SnarTheCook
+Snarbo
+Snarf
Snarflaxus
Snarfsnah
Snarglefox
@@ -21436,62 +44034,110 @@ Snarl
Snarx
SnaszAndrejj
Snatchquatch
+SnazzyLt
Sneak Dissin
SneakEnergy
SneakKhajit
+Sneakbo
Sneakee
Sneaky
+Sneaky Chair
+Sneaky IM
+Sneaky Shark
+Sneaky47
SneakyBaloup
SneakyCake
SneakyEmu
+SneakyFrogg
SneakyGnomne
SneakyOD
SneakyPete
SneakyTay
+SneakyZoot
Sneakymag3
Sneakyvicn
Sneakywaffle
+Sneakz
Snee
Sneekerz
Sneekey
SneekyBeeky
+Sneekydied
+Sneeuwpoeper
Snefnuk
+Sneide O_o
+Snek zy
SnekInMyBewt
Snekkerboden
Snekling
Snekty
+Snekty Jr
+Snelms Deep
Snelmz
Snibzy
Snickers
Snickersbite
+Snicklesz
Snide
+Snide Senpai
+Sniff K
+Sniff this L
+Sniffi
+Sniffin 24-7
+Sniffin Bags
SniffinBags
+SniffingClue
Snifflematt
SniffmySmoje
SniffyMonkey
Snike4
Snikepaven
Snipe
+SnipeOne045
Sniper
+Sniperfrank1
Sniping
Snipor
+SnkyGreninja
+Snlly
+Snny
SnoWorm
Snobby
+Snobby Elite
Snoep
+Snollen
Snoobsteri
+Snoogens
+Snookies
Snoop
+Snoop D9
+SnoopSiah
+Snoopfyzle
Snoopy
Snoot Boops
+SnoozeBolton
SnoozingBear
+Snoper
+SnoreLunaLax
Snorff1
Snorklarn
Snorlax
Snorlax9030
+Snorlaxz iLy
Snorona
Snot
+Snotlapje
Snow
+Snow Day
+Snow Poff
+SnowBunnyhvn
+SnowEmpress6
+SnowManSam
+Snowangel18
Snowballerz
+Snowbaru
Snowclub
+Snowdaze
Snowearth
Snowelle
Snowfall
@@ -21501,72 +44147,144 @@ Snowiest
Snowii
Snowmen
Snowscythe
+Snowsmith43
Snowvof
+Snowy Winter
Snowy2653
Snowyo26
+Snowys Main
SnuSnuShi
Snubby
+SnugLikeABug
Snuge
+SnuggleSnail
Snugglez
+Snugins
Snuift
+Snuite
SnusMumr1ken
Snuskig
+Snusti
+Snuup
Snuus
Snuuska
+Snype_U
+So Far To Go
+So Flattered
+So Inagawa
+So Iron BRUH
+So Jamiezing
+So OSRS
+So Quiche
+So Warm
SoHighhhh
+SoLoH DoLoH
SoMoist
SoSimPol
SoSleepy
SoStronk
SoUhBtw
SoVeryInvis
+Soaa7
Soad
+Soally
Soap013
Soaphia
+Soapybubble
Sobe
+Sobe VII
Sober
SoberFarmer
+Sobibor
+Sobotka
Soburin
+Sobzy
Socca
Soccerc12
Soccermom02
+Soccy
SocialAnxty
+Socialism
SocialistGuy
+Sociality
+Sock Jesus
+Sock Starch
+Sock Stealer
Socket
+Sockks
Socks
Sockum
Socrates
Socrates001
+Socratestes
Soctch
+SodaGrab
SodaLambz
SodaPopPunk
Sodaseg
Sodasokwa
+Sodd
+Sodo Pop
Sodobrasil1
+Soecara
+SoegLeppel
SofaKingHI6H
+Sofakingdom
Soffachka
Sofia
+Sofia Cooper
+SofiaVergara
Sofiero
+Sofoni
Soft
+Soft Chicken
Soft Dump
+Soft Geeves
+Soft Jesus
+Soft to Hard
+Softboil
+Softcorejmac
Softer
Softest
+SoftestFox
+Softice
SogSteelrock
Sogeking
Soggy
+Soggy Napkin
SogxNeutro
-Sohanisgay
Sohcahtoa090
Sohh
Sohl
Sohrac
+Soi
+Soi Cowboy
Soija
+Soisox
+Soivio
Sojuah
+Sol Buendia
+Sol Heredic
+Sol Heretit
+Sol Leo
+Sol Rock
+Sol o
+SolTeevo
+SolaDuaeManu
+Solakoust
Solan
+Solar Stone
+Solar754
+Solarized
+Solarrr
Solaryohm
Solarys
+SolasLexeth
Sold
+Sold GF 4Gp
+Sold My Name
SoldMyRNG
+SoldMyWife
SoldUrDad4GP
Soldaat
Soldaat824
@@ -21575,80 +44293,169 @@ Soldjer
Soldtheman
Sole226
Solek
+Solely
Soley
Solibiobois
Solid
+Solid Snack
Solid Stache
SolidSnape
+Solidtag
Soliform
+Solimanx
Solitary
+Solkrieg
+Sollor
+Solmlet
Solo
+Solo A7X
+Solo Aero
+Solo Arron
+Solo Blitzy
+Solo CM
+Solo Chumb
+Solo Dani
+Solo Foxy
+Solo Geeber
+Solo Gira48
+Solo H3llz
+Solo Hayden
+Solo Herbo
+Solo Idenn
+Solo Jawn
+Solo Jones
+Solo Jord
+Solo Kev
+Solo Mace
+Solo Mus
+Solo Road
+Solo Romte
+Solo Russian
+Solo Sieb
Solo Sirva
+Solo Trojan
+Solo Umbreon
+Solo Ward
+Solo Wind
Solo Xenopus
+Solo Yoyo
+Solo kris
+Solo snapper
Solo2424
+SoloBandit
+SoloBongo
SoloCanadian
SoloDeicide
+SoloDeth
SoloDynamix
SoloFireFist
+SoloFlar
SoloFletcher
+SoloHotDog
+SoloIron30
+SoloMerx
SoloMishMosh
SoloMission
+SoloNotAlone
SoloProject
SoloRob
SoloShow
SoloSloop
SoloSmackbar
SoloSnhaas
+SoloSupOnly
SoloTibbs
Soloable
+Solobussy
+Solocek
+SolohellRat
SoloingLife
Soloman50
Solomasi
+Solomon
+Solomon Kane
+Solomopp
+Solos Turn
Solowerkz
Soloyo
Solsa
+Solucki
+Solufana
Solus
+Solus RS
Solvent
+Solvent less
+Soly Handal
SomalianRats
Somalor
+Somavrana
Some
+Some Pets
+Some Ranger
+Some Use
Some mad dog
+Some1youno
SomeDirtyOar
SomeGoldDust
SomeRSIdiot
Somix
+Somniac One
Somnolent
+Somoshoho
Somppup
+Son Goku MF
+Son Huntr
+Son LeGeND
+Son o Rous
+Son of Akkha
+Son of Hail
SonArtorias
SonBuns
SonIron
+SonNamedBort
SonOfDecay
SonOfGandalf
SonOfWright
SonVsStepmom
+Son_Jo
Sonc
+Sondey
+Sondr
Sondra
Sonekta
Sonett
Song
+Songs Of
+Songsteel
Sonhov
+Sonia Strumm
+Sonic 513
+Sonic Kp3
+SonicYouth
Sonicgg1
Sonics
+Sonics Alt
+Sonidoo
Sonjini
SonneTeufel
+Sonol
Sonsofkyuss
+Sonx
SonyVegas17
Sonycboom
SooCrispyy
SooUnlucky
+Sookadiik
Soolo
Soon
SoonAHusband
Soonifer
+Soop Pock
Soop3rpig
SootSpritez
Soothe
SootyWhale32
+Soph
Sophinx
Sophlex
Sophomaniac
@@ -21659,18 +44466,31 @@ Sora
Soraaxle
Soradin
Sorado6
+Sorarpegius
Sorbits
Sorbosander
Sorcere10
Sorcerer5555
SorcererOdin
+Sorcerio
SorceryFish
+Sordnatra
+Sore
Sorec
+Sorenisbad
Sorenn
+Sorgrum
+Sorinvv
+Sormeton
Sorose
Sorry
+Sorry Iron
+Sorry1mLate
+Sorryganster
Sortable
Sorted
+SorthIon
+Soruve
SosBoerrr
Sosig
Soskiller6k
@@ -21679,131 +44499,244 @@ Sosraid
Soss
Sossukorva
Sossumafia
+Sosuke Aizen
+Sotamage
+Sotetseg
Sothe1
+SotonSteve
+Sottetseg
Soujy
Soul
+Soul Burger
+Soul Scaper
+Soul Sleep
+Soul v9
SoulEater957
+SoulMadness
+SoulOfMidir
SoulSteala
SoulUnleash
+Soulbarrier
Soulbearer
+Soulcape
+Souldia
+Souled 0ut
+Soulja Lance
Soulkilled3
Soulkn
+Soulles
SoullessMask
SoullessWood
+Souloh0
Soulololol
Soulplay Gee
+Souls Mate
+SoulsRampart
+Soultiller
Soulxicution
+Sound Soul
Soundbar
+SoundsOfSoul
Soup
+SoupEyes
+SoupOfTheDay
+SoupTheDuck
+Soupshi
Sour
Sourzilla
SousChefLuna
Sousse
South
+South Dakota
+South Park55
SouthPillar
SouthSide
Southampton
Southenders
Southern
+Southp0le
Souvenierr
Souvis
+Souvis5
Soux
+Sovacam
Sovakat
Soveth
+Sovetskie
+Sovi
Soviet
+Soviet Union
Sovryn
Sow Love
Sowodasoap
Sox207
+Soxinder
+Soy Duro
+Soy Sauce
+SoyBhoy
SoyJuanEuro
SoySoySoySoy
Soyez
+Soylemagne
Soylo
+Soz Misclick
Sozan
Sp00n
Sp1cy
+Sp1cy Ramen
+Sp1cyAvocado
+Sp33Dkillz
Sp33dy
+Sp3c Deck
Sp3nC
SpARioN
SpBongile
+Spaar Lampje
Spaca
Space
+Space Bussy
+Space Lily
+Space Marine
+Space Orbs
SpaceC
+SpaceEnter
+SpaceScape
SpaceToker
Spacealt
+SpacedPinata
+SpaceeCowboy
+Spacejumper0
+Spacing Outt
+Spade-e
Spadey
Spag
+SpagBolCol
SpagHacked
Spaget1111
Spagett
Spajina
Spalling
+Spam Lite
SpangeBerb
Spangebob
Spangl
+Spangledbun
Spanish
+Spanish Dave
+SpankFox
+Spankies Lit
Spanky
+Spann
Sparacino916
Sparc
+Sparc Mac
SpardaWallet
Spare
Spark
+SparkRS
Sparkles
Sparklesbean
+Sparky3433
+SparkyD5
Sparkyo
+Sparre
+Sparta2
+Spartac_us
+Spartacus855
SpartanDrgon
SpartanSheep
SpartanSlick
+Sparte
Spartin028
Sparty
Spasian
+Spat Fastic
+SpatialMagic
+Spattu
+Spaustin80
+Spauz
Spaynce
Spctwm
+SpdrBiteJosh
Speak
Speakerbocks
+SpearRue
Speat
+Speats
+Spebi
+Spec A Ho
+Spec Master
+SpecAgent713
Special
SpecialBus
SpecialGuest
SpecialPVM
Speciiik
+Speckles
SpectrlHeist
Specz
Speechwriter
+Speed Colas
+Speed Wobble
SpeedPony44
+SpeedSouls
+Speedalot ak
Speedball1
Speede
+Speedlund
+Speedrun
Speedster
+Speedy Cd
+Speedy Click
+Speedy Rulzz
Speedy9921
SpeedySpider
Speeldoos
+Speen Big
Speeze
SpejsonNM
Spek
+SpekKas
Spektur
Spellgoth
Spenc
+SpenceSuh
+Spencee
Spenceey
Spencer
+Spencer O
Spencerr
Spencerz
Spend
+Spendlove
Spengineer
Spennel
+Spennel V2
+Spenno 1
+Spensaurus
Sper
Spermlet
Spero
Speshal
+Speshl
+Spesho
Spettkaka1
+Spewis
Spewler
+Spewlie
Spezza
Sphere
Sphinx
+Sphinx66
Sphooner
Spice
+SpicelessJoe
SpiceyBoy39
Spici
+Spici Boi
Spicy
+Spicy Noods
+Spicy Rahman
SpicyMemeGod
SpicyMoney
SpicyPepe
@@ -21811,41 +44744,71 @@ SpicyVitus
Spide
Spider
Spider1357
+SpiderPhenom
Spiderhead
+Spiderpig
Spidersnot8
Spiderw5
+Spiderz 3
SpideyC
+Spidoo
+Spiering
+Spierpijn
+Spigniv
+Spike05
+SpikesterHC
+Spillage
+Spillingx
Spin911
Spineweilder
+Spinkle
+Spinnenking
Spinnenweb
Spinolyp
Spirit
+Spirit Box
+Spirit Cube
+Spirit Owner
+Spirit Rok
+Spirit Sin
Spiritcraft
Spisek
+Spit man
SpitfireSR
+Spitiz
Spizazzy
SpizzyMarz
Splarf
Splarn
+Splash LT
Splash-8
Splashattak
+Splashcarrot
Splasher
+Splashes
Splashley
Splashworlds
Splasion
Splatter300
Spleaner
+Splessp
+Splezaa
SpliceTFY6H
Splidge
SpliffMaster
+Spliffore
+Spliiffy
Splinta
+Splinterhand
Splitarellie
Splitfaction
Sploof
+Spluge
Splyce
Spo0n
Spocuch
Spodey
+Spoice
Spoilted
Spoka
Sponch
@@ -21854,17 +44817,36 @@ Sponkz
Spoodersussi
Spoog
Spookachtig
+Spookadoodle
Spookfish
+SpookiBoogi9
+Spooky Beech
+Spooky Ramen
SpookyCarl
SpookyMain
Spookyou
Spookytoot
Spoon
+Spoon Full
+SpoonFedFred
+SpoonFedii
+SpoonMePlz
+SpoonTracker
Spoonay
+Spooncera
Spoondow
Spooned
+Spooned Simp
+SpoonedBunni
+SpoonedNormi
+SpoonedWhen
+Spoonfed BTW
Spoonihomo
+Spoonku
+Spoonletics
Spoonmannn
+Spoons
+Spoood
Spoookems
SpoopyDooToo
SpoopyNooper
@@ -21872,194 +44854,365 @@ Spoorwijk
Spooxky
Spop
Sporer
+Sport Leader
+Sport425
+Sports Bike
+Sportsnut911
Spotifee
+Spotmaster 5
SpottedBass
Spottednoble
SpotterN
Spottie
SpowSaus
+Spr1ditis
SprLemonHaze
Spraahz
Sprattet
SprayM0re
+SpraynMantis
SpreadButter
+Spreader
Spria
Sprice
Springer
Springii
+Sprinty
+Spritbilist
+Spro max
+Sprog Legend
+Sprogdor
Sprooti
Spruit
Spry
Spubb
Spud
+Spudalumps
Spudge
Spudinator
Spuge
+Spuhcific
+Spuhgetti
+Spuitopbruid
Spunknik
SpunkyLlama
Spurted
+SputtyBTW
+Spyder Sin
+Spydig
Spyike270
+SpykeZim
Spykes
Spyriano
Spyro
+Spyro 3
Spyrooooooo
Spytech44
+Sq Head
Sqe3zy
Sqeat
Sqiit
+Sqix
+Sqoub
+Sqreech
+Sqrwl
+Squab Cat
Squabs
+Squad of one
Squadleader
+Squaire
Squall
Squall44444
Squallicious
+SquanUK
+Squanch Rat
Squanchhy
Square
+Square One
Squarebodies
+Squat Slav
SquatCobbler
SquatJogsBro
SquatNation
Squatting
Squaw
Squeakes_x
+Squeaky Cow
+Squeedly
+Squeeeegs
SqueegeeLord
Squeeze
+SquidNumber0
SquidSquad
+SquidTofu
Squidby
Squiddle
+Squidgling
Squidie
+Squidler
+Squigiglius
Squigs
+Squigtime
+Squinch
+Squinch Alt
+Squinton
Squintts
SquintyNinja
+Squire Yaper
Squirlruler
+Squirly69
+Squirrel
+Squirrel Pop
SquirrelTM
Squirreled8
+Squirrely W
+Squirt2God
+SquirtsAlot
SquirtyHersh
SquirtyMcD
+SquishySir
Squonking
Sqwalle
Sqwarka
SqwezMyLemon
+Sr Dipper
Sr8d
+SrBambino
SrMick
SrMuerte
Sraracha
+Srelek
+Sri
Srogi Wujek
+Srs
SrslyTired
SryAFK
+Sshscaptain
Sshuggi05
+Sssnakepit
+St Chrewin
+St Liam
+St Newman
+St eve
+St itch
+St un
+St0kStaartj3
St0ney
St0oge
St4bU
+St4rCh11d
+St8hunter
+StBasilthGr8
StDecker
+Sta Mama
StaIemate
StaJeOvo
Staasi
Stab3r
-StabbingFart
+Stabalot
+Stabobis
Stacii100
Stackdude
+Stackey
Stackieks
Stackin Dosh
+StagBeer
Stagden
Stagmuss
StagnantAlt
Stagnation
Stago
+Stahlinski
+Stain Master
Stak
+Stake Me
StakeOrQuit
+Stakebril
Stakens
Staker
+StakerOhWait
Stalactites
Stale
+Stale Chips
+Stale Dough
+StaleBagle
Stalefloe
Staley
+Stalifax
Stalk
+Staller
Stalline
Stalphie
Stamin
+Stamina Pot
+Stamkoz
Stammer
+Stampie
Stams
Stamuhnuh
Stan
StancedMK
Standard
+Stanimal
Stanimal244
+Stanjuuh
Stank
+Stank Rat
StankBreath
+Stankfist
Stanley
Stanleye
Stanlux
Staparik
+Staparik Lt
Stapper6
Star
-StarDawgg420
+Star Doctor
+Star Say 962
+Star Scourge
+Star Spoon
+Star zy
StarDreamSam
StarFell
StarGlimmy
StarKist
+StarSnitcher
Starboyyyyy
+Starbuckss
Starcharts
+Starchild
Starcry
Starfallx
+Starfight789
+Starfish
+Starjoker8
+Stark Btw
+Starlette
Starlighte
+Starmaker
Starmemoria
Staropramen
Starr
Starrlightss
Starryfina
Stars
+Stars Hockey
+Starshark
+Start Game
+Started Late
StarvedLlama
+Starvi
Starwulf
+Starzhine
Stash
+Stashes
Stasik25
+Stasik77
Static
+Static Peak
+Staticshook
Statoke
StatsisZero
Stattelsson
Statuhs
+Status Bar
Statutory
Statykk
+Statzy
+Staubach
+Staunch
+Staunch_BJD
+Stax I
Stay
+Stay Breezy
+Stay Frosty
+Stay Hurt
+Stay Hustlin
+Stay Ready
+Stay Salty
+Stay Shady
+Stay Sic
+Stay West
+Stay wise
+StayFinessed
StayPulls
+StayPullsBTW
+StayThirsty
+StayinClassy
StaysmallEZ
+Ste Gerrard
+Ste f
SteSkillalt
Steady
+Steady Loot
+Steady Mobn
+SteadyFlexin
SteadyetiBTW
+Steak Ramen
+SteakWitWiz
+Steaked
+StealCutOats
+Steals
+StealsThings
Stealth
+Stealth Ownz
StealthChop
Stealthcy
Stealthi
Stealthweed
+Stealthwolf
Stealy
Stealy Boi
Steam
+SteamboatJim
+Steamed H4ms
+Steamfitting
+Steammm
+SteamyBuns
SteamyCreams
Steanox
-Stebs69
+Steb
Stedy
Steeam
Steebert
Steeermy
+Steekkha
Steel
+Steel Gods
+Steel Stud
+Steel Tarkus
+Steel VIK
SteelRoxas
+Steelbird16
+Steeleos
+Steelpan
Steen
Steenkoe
Steezed0ut
Steezi
Stef
+Stef West
Stefan
StefanLivNo1
+Stefar
Stefen
Steff
SteffenHax
Stefo
+Stego
+Steiger
Steikluet
+Steinbeck
Steinphite
Stela
+Stelisss
Stellacea
+Stellamara
StellarLG
StellarWhey
Stellard
+Stellas Dad
+Stelli
StembaWalker
Stenfen
Stengo
@@ -22067,61 +45220,111 @@ Stenicki
Stenny
Stenuism
Step
+Step Barrow
+Step mummy
StepBroHung
+StepBroImZuk
+StepDabs
+Stepbro
+Stepbro Paul
+Steph Browne
+Steph a nee
Stephan
+Stephand
Stephane
Stephen9320
StephenMoore
Stephenns
StephhRS
+Steppage
Steppaz
Steppenwulf
+Stepy
Stereofuzz
Sterlander
Sterlington
Sterrenstof
+Stervolz15
+Stetko
+Steum
Stev
+Stev en
Steve
+Steve Beanie
+Steve Tobs
+Steve Tombs
+Steve Zissou
+Steve ffs
+Steve is Pro
+Steve07
Steve51
SteveAustin
SteveChamp
SteveGuy241
SteveMCOG
SteveMerch
-SteveOwner07
+SteveOwner09
SteveSnow15
+SteveStamos
+SteveTheGimp
SteveTheMuss
Stevee
Stevefr3nch
Stevemck
Stevenrds
+Steves Blade
Stevet7125
Stevey
+Stevie ESQ
Stevo
+Stevo Lad
Stevo29
Stevoguy
+Stewge
Stexie
Stian
+Stian Olsen
Stian2
Stibby
+Stickasaurus
+Sticker
Stickers
Stickman
+Stickman Zeb
Stickman0011
Stickmeister
SticksNbugs
Sticky
+Sticky Icky
+Sticky Nut
StickyBeardo
+StickyShroom
+Sticky_BIBLE
+Sticky_Lip
Stickypooman
+Stickz Alt
StierK
+Stieren Lul
+Stiffies
Stiffish
+Stifighter X
+Stiflers mum
+Stigel
Stigiam
+Stigmaster
Stijco
+Stijf Stefke
Stijin
StikSt0f
+Stikjob
Stil
Still
+StillANormie
+StillCoughin
+StillFap2ash
StillFarmin
StillNoBan
+StillNoTBOW
StillRemains
Stillblazing
Stillen
@@ -22131,16 +45334,24 @@ Stiltz
Stimu
Stimulated
Stin
+Stindebinde
StingWisher
Stingy
Stink
+Stink Soep
Stinka
Stinker
Stinks
Stinkwiener
Stinky
+Stinky Adam
+Stinky Wench
StinkyFatBoy
+Stinkyfeat1
+Stinkypooper
Stinkywon
+Stino33
+Stiorra
Stipples
StirG29
Stirner
@@ -22148,118 +45359,222 @@ Stitcha
Stiven117
Stixc
Stiznai
+StlthyPanda
Stnmn
Stnyzky
StockMyRam
+StockOlm
+Stocker T
+Stockphish
+Stocksund
Stocktone
+Stockyard
Stodie
Stoel
+Stoere Kip
+Stoerebos11
+Stoern
Stoffer
Stoffins
+Stoggy188
+Stoic Christ
+Stoic Sloth
+StoicGod
Stoke
+StokedMaggot
Stolen
+Stolen Ego
Stolen Grunt
Stolen Herbs
Stoli
+Stoli za
Stolid
Stolpz
Stolte
+Stoltzkin
+StolzRS
+StompaHhh
+Stompadile
+Stompea
+Stomped
+Ston3d Arrow
Stone
StoneDwarf
StoneOkami
Stoneator
Stonebeech
Stoned
+Stoned Abra
+Stoned Sober
+StonedGSXR
+StonedNormie
StonedTTD
+StonedTurtle
Stonedtime
+Stoneplus
Stoner
+Stoner Morty
+Stoner Pov
+StonerGod
+StonerL0ve
+Stonerling
Stonesoul15
Stoneyvangel
Stonkx
+Stony 420
Stoobie
Stoogaroni
Stooley
+Stoolz
Stoonly
Stoopy
+Stoopy Scape
+Stoovey
Stop
+Stop Acts
+Stop Mules
+Stop Now
+Stop StepDad
+StopCapping
+StopDabs
StopDontDoIt
+StopStepSis
Stopitjoe
Storgie
Stories
Storkie
Storm
+Storm Monkey
+StormFly
+Stormlight
+Stormmaker98
+Stormy RS
Stormzy
Storn42
Stortford
Story
+Story Arc
+Story of Man
Storybot
StoryofPete
Storys
+Stothelayer
Stouse
+Stouty
+Stovall_9
Stover
+Stovete
+Stowa
Stowty
Stox7k
+Str Owner07
+Str Takes U
Str0ng8ad
Str8
+Str8 Maxed
Str8backatya
Strabz
Stradarts
+Stradinger
Straf
Strafe
+Strafes
+Straffen
+Strafi n
StraightSimp
+Straighter
+Straka
Stralia
+StralianBtw
+StrangeChris
+Stranger bud
Stranger56
+Strangerz
Stranges10
Strangler
Strap
Stratazz
+Straton
Stratty
StratusQc
Straubrey
Strauss
Strav
Straven89
+StrawHatMatt
+Strawbs
+Strawhat01
Straya
Strayday
Straynaneeee
+Streakin
+Streammmmmmz
+Streammz
Streepken419
Street
+Street Fever
+StreetSweepa
+Strefi
Stregano
Strelitzea
StrenIron
Strength
+Strength Lvl
Strengthy43
Strepski
Stresset
Stretch
+Stretch 07
Stretchy
Strickend
+StrictNein
Strictly
Striddle
+Strideless
Strife
Strijden
Strijder
Strikedown
+Striker796
Striker8
+Striker8 0
Strikes
Strikingvipr
+String Benis
StringsLogic
+Strip Club x
+Stripa
+Stripgwyn
+Stripred
+Strive
Strix Tactic
+Stro Sr
Strobax
Strocks3
Strocules
+Strohs
StrokeMuh
StrokeMyWand
Strokemon
StrokmyGroot
Stroller
StrollerBaby
+Stroma
Stromboli
+Strong Chonk
+Strong Left
StrongKush
Stronger
+Strongman613
Strongrune
+Strongsad Jr
Strongtank11
+Stronkmoscle
Stronku
+Stroople
+Stroppy
+Strosity
+Stroxers
Strr
Strubber
Strudelis
@@ -22270,47 +45585,82 @@ StrydarGrim
Strykijzer
Stryneguten2
Strytegy
+Stu Pid
+StuartLittle
+Stubo
Stud
+StudMonster
Studderd
Student
+Student t
+Student tort
+Study Hours
+Stuffe
Stuffed
+Stuffed Hog
Stuffmypanda
+StufnDatMufn
Stugey
Stuggo
+StuieShadez
Stukatz
Stuksken
Stumbles
+Stunflame
+Stunlax
+Stunnaz
Stunts
+StunuuR
Stupendous
+Stupid My
+Stupid Swagg
+Stupid444
StupidMagnet
+StupidTrader
Stupidcoin2
Stupsus
+Sturdy Base
+Sturdy Wrist
+StureStork
Stureplan
Sturminator3
Stussy
Stuxi
+Stuzington
StvnSmth
+Stvx
Stxrbursts
Stye
Style
StylesP
+Stylistx
StyxHatred
SuBRifleS
SuNnY_AuStiN
SuRviVoR
SuaNorte
Suadela
+Suavity
+Sub Ironman
+Sub Taz
+Sub3Marathon
SubEntity
Sub_Void
Subaru
+Subaru Bow
Subarue
Subarus
Subatinijo
SubiSpeed
Subiaco
+Subiaco Oval
Subie
+Subie_rex22
+Subigrl
+Subkultured
Sublanza
Sublimation6
+Submerging
Submug
Subnautica
Subnet
@@ -22321,56 +45671,103 @@ SubtleAsnTrt
Subtotal
Suburu
Subwaysurfer
+Subwooferman
Subwrx
+Suc
+SuccMyMilk
Succeed
Successful
Succulent
Such
+Such Mlg
Suchislifee
Sucjk
+Suck At Zuk
+Suck my dig
+SuckItBrandn
SuckMyBot
SuckMyDuels
SuckTube
Suckle
+SucksTehSuck
SucksToSuck
+Sucuk
Sudan7a7
+Sudas
SudoBash
SudoFox
+Sudsy Mule
+Sudz
+Sue Lynder
Suede
Suedezor
+Suemi
+Suephoria
Suffer
Sufferance
+Sufferi
+Suffering
+Suffi
Sufflavus
+Suffspector
Sufwah
SugaNoCoffee
+Sugab
Sugar
+Sugar Leafs
+Sugar Lily
+Sugar STR
+Sugar Shilo
SugarDaddyNL
SugarFr3
+SugarFre
+Sugarbunny
+Sugaree
Sugarly
Sugge
+Sugma Newt
Sugmabum
+Sugru
Suhado
Suhec
Suhgundees
+SuhhP
Suhk
+Suhkmedaddy
Sui29
+SuiSaii
Suikerwafel
Suing
Suited
+Suizy
+Sujn
+Suket
+Sukit Trevek
+Sukiti
SukkerLyn
Sukondikis
Sukoru_VIII
Sukotto-Sama
Sukz
+Sulcius
+Suldan Serar
Sulg
Sulliusceps
Sully
+Sully Bear
+Sult an
Sultan
+SultricMY
Sulu34
+Sum
+Sum 1
+Sum Tuum
Sum41
+SumBeers
Sumh
Sumin
Sumlettuce
+Summ
Summah
Summer
Summerson1
@@ -22378,8 +45775,16 @@ Summit
Summit603
Summon
Summond
+Summoneering
Sumper1
Sumuinen
+SumwanSpeshl
+Sun Devi1
+Sun Isukki
+Sun Muijja
+Sun Riser
+Sun Rising
+Sun Sioux
SunBar
SunG0han
SunaLAD
@@ -22387,34 +45792,84 @@ Sunbite
Sunchester
Sunda0wner1
Sunday
+Sundo
+Sundxy
SundyWundy
SunflowerMan
+Sungravel
+Sunguinesti
+Sunine
+Sunky Kong
+Sunlust
Sunni
Sunny
+Sunny Boy
+Sunny Coast
+Sunny Otso
+Sunnyi
+Sunoric
+SunriseEagle
+Sunrises
+Suns in 2025
SunsShine
Sunsa
Sunscape6
+Sunset
+Sunset Riot
+Sunshadow
Sunshine
+SunshineBus
+Sunskit
Sunta
Sunti
Sunuwar
Sunyikata
+Sunzz
Suola
Suolane
Suolitussari
Suomen
SuomiKP
Suomiprkl
+Sup Mike
+Sup3r Ziko
+SupAndSupply
SupDutch
Supa
+Supa Saper
+SupaHottFiya
+SupaWarmFire
+Supaidahman
Supdude
Supeerbusy
Super
+Super 16
+Super Bossy
+Super Cinos
+Super Cool
+Super Duke
+Super Fish
+Super Fr3ak
+Super Katze
+Super Tails
Super4
+SuperChunk3
+SuperFlow
SuperHeroWiz
+SuperJoy
SuperJuicy
+SuperKoi
+SuperKriss
+SuperMcFresh
+SuperMiika
+SuperMuffins
SuperNJ
+SuperNinja0
+SuperPPMan
+SuperPochaco
SuperScaper7
+SuperSem1
+SuperShane
SuperShif
SuperT0aster
SuperTussu
@@ -22424,353 +45879,759 @@ Superb
Superbigblnt
Superbusy
Superdoer
+Superdrol 50
Superfire444
+Superguaygix
Superior
Superjim111
Superjoden
+Superkman12
Superkoi3000
Supernate91
Supernatti
Supernova
Supersam142
+Superstition
Superstuffz
+Superwarz96
+Superzu 0ne
Supo
+Suppertmain
+Supple Flaps
+Suppp
Suppression
Supra
Supra2JZ
SupraTurbo
+Supragirl94
Supreeme
Supreme
+Supreme Iron
+Supreme NYC
SupremeDanz
SupremeSpike
SupremeTeam
+SupremeWoody
+Suprie
Suprreme
Supsep
+Supultura
+Suq Maddic
+SurNtly
+Sura Lust
+Suraato
+Surah An-Nas
Suraii
Sure
SureDeth
+Sureal
Surfboarder
Surg1n
Surge
SurgeHunter
+Suricate
Suris
+Suriv
Surkastunut
+Surkee pelaa
Surlygrump2
Surok
Surrey
Suruinen
+Surullista
+Susan Boyle
Suse
+Susej Dog
Susell
+Sushi Cult
+Sushi Eater
+Sushi Life
+Sushi Water
+SushiToyota
Sushidame
Susilapsi
+Suspence
Suspiria
+Susser Tod
Susurrous
Sutdellen
Sutho15
Sutty
+Suur L6vi
+Suvalkietis
Suvorexant
Suxe
Suzakuin
Suzn
Suzshenron
+Sv
+Svampus
SvartaOdhner
Svartalvheim
Sveden
Sveitsi
+Sveka
Sven
+Sven med D
Svenpai
Svenskafyren
Sverd
Svetta
+Svikkipedia
+Svinepels
+Svisha
+Svt500
+Svurt
+SvvK
+Sw0llenPlums
Sw3Frost
Swaars
+Swabby
Swabski
Swacked
Swadloon
+Swaffeldomin
Swag
+Swag Ponu
Swag420
Swagbopeep
Swageroneus
Swagex
+Swagg Goat
Swagger
+Swagger Pkr
+Swaggy Ballz
SwaggyMaggee
+Swagittarius
+Swagohod
+Swagomancer
Swagslicer
Swagturtle
Swagunit
Swahilson
SwamiNate
+SwammyHolds5
Swamp
+Swamp Crotch
+Swamp People
Swampy
+Swampy Sloth
+SwampyAce
Swan
+SwangleSauce
Swanheart
Swanney
+Swanni D
Swanny
Swapski
Swarm243
Swarme
+Swarme d
Swarmyard
Swatfighter7
Swatson
Swaxel
+Swe Flame
+Swe Fred
+Swe Jerry
+Sweatiest Xp
Sweatscaper
Sweaty
+Sweaty G0OCH
+Sweaty King
+Sweaty Nurse
+SweatyBeard
+SweatyBurger
+SweatyMoobs
+SweatyScrot
SweatySockZz
SweatySunday
Sweden
Swedgeville
Swedish
+Swedish Fika
+Swedish Myth
Swedushi
Sweensicle
+Sweepstakes
Sweepyjoe
+Sweeqy
Sweet
+Sweet Boyy
+Sweet Dee
+Sweet Es Mmm
+Sweet Guy 94
+Sweet Pigeon
+Sweet Potato
+Sweet Vodka
+SweetSugR
SweetVan420
+Sweetchild0m
Sweetermanz
Swell
Swer
Swerve
Swerve0311
SwerveJ
+Swervy
+Swerze
Swift
+Swift btw
Swift738
SwiftCobra08
SwiftSteps
Swiftamine
+Swiftly546
Swiftmend
Swiggitywall
SwiggyMcSwig
+Swiigs
+Swiim Shady
+Swiirl
Swild0
Swilza
Swimfatman
+Swimmor908
Swimpa
Swine
Swingers
+Swip3rR
+SwipeMyCard
Swirly
Swirly248
Swishers
SwissPigeon
+Switch Dropz
SwoIe
+Swole Milk
SwoleBadguy
Swolerbear
SwoleyGhost
+Swolga
+Swoli
SwollSoul
Swollbroham
Swolverine
Swoofii
+Swootz
Sword
+SwordBoy110
+Swordcode205
Swordied
Swordillo3
Swordlord524
Swordman1173
Swordmank
Swordmast756
+Swordmother
Swords
+Sworzis
+Swoule
+Swown
Swtbnd
+Swtshrt
+Swuido
Swurl
Swxv
+Swyxia
+Sxng
+Sxrup
Sxstyl
Sxves
+Sy
Syaniide
Sybe
Sybke
+Sybr
Sycamore
+Syche
Sycily
Syck Memes
Sycrem
Sycther
Syed
+Syfer
+Syh
Syjac
Sykeaux
Sykes
+Sykes Xo
+Sykes33
+Sykezer
Syliith
Sylist
+Sylite
Sylixx13
Sylosis
Sylph Rings
Sylth
+Sylthrakis
+Sylvaria
+Sylvee Serum
Sylveon700
Sylveonn
Sylvian
+Sylwia
Symb
Symba12
Symblic
Sympathize
Symphonicx
Symtai
+Syn-er-gy
+SynGates07
SynTechRS
Synacyde
+Synaii
Synced
+Synchronizer
+Synchronous
Syncire
Syncronia
Syncshot
Synd
+SyndaXatrix
Syndalen
+Syndicete
Syndok
Syndra
Syndrious
Synepxd
Synepxo
+Synergy Sam
Synesthesian
Synfidel
+Synister9090
+Synizta
SynkNZ
Synn
Synnri
+Synoz
Synq
Syntax
+Synthy
Syntipukki
+Synyster
+Sypanite
Syphikins
Syracusa
Syrile
Syrilius
+Syringe
Syrius
Syrups
Syrus
+Syrus Virus
+SyrusDaVirus
+SysTeM 07
Sysf
+Sysfea
+Syssla
System_Fail
+Syte
+Syvette
+Syzgy
+SzechuanJuan
+Szenarien
+Szethe
+Sznd
Sztarky
+Sztr
+Szyrup
+Szyther
+T 0 0 A S T
+T 0 B
+T 1 ta n i c
+T A B S
+T A R O
+T Bagmotion
+T C 3
+T C J
+T D
+T E L O
+T H C
+T H O R M
+T IV
+T McLeod
+T Montana
+T Nymphadora
+T O M M M Y
+T O N N l
+T O N Y N Z
+T OXI C
+T P I E
+T R A V
+T R U 3
+T S M
+T S O M
+T Shadow T
+T T E X X
+T U B M A N
+T U R K 96
+T U U M A
+T W I S T Y
+T W l C E
+T a v e r
+T alon
+T aqn
+T emby
+T enrin
+T h a w
+T imboy
+T imm
+T omahawk
+T otem
+T otz
+T r as h
+T rigger
+T ripwyre
+T rist an
+T u m p p i
+T ubby
+T ylor
+T yrr
+T-A nina
+T-BONE STEAK
T-Hugs
+T-Lai
+T-Rabb
T-city
+T0 BE FRANK
+T00K3N
+T00LB0X
T00ManyCooks
T0AD
+T0KEN
T0KK
+T0M
+T0M ATO
+T0RB3N
+T0RlN
T0bbbE
+T0ber
+T0fi
T0ilah
+T0lne
T0mbak
+T0mz
+T0oth
T0othbrush
T0ry
+T0tally lll
T0vergasje
+T1gBits
+T1m
+T1mmaayy
+T2NK
T3KT0N
+T3T
+T3URASTAJA46
T3mu
T3vas
+T4TE
+T4a
+T7
+T70TYE
T7mon
+T8OW
+TA Greenie
+TA xBravo
TAA66
TAARA
+TABS1E
+TANK ED
TANKTOPTIGER
TANRfromHS
+TARFUII
+TARV05
+TATERT1TS04
TB12
+TB3N
+TBA Ness
+TBA Poppi
+TBAC
TBNinja
TBOW
+TBSE Stupid
TBSG-Baine
TBonFirstCoX
TBoneZzzz
TBoyd4138
+TC NeverLift
TCHAMl
TDPred
TDRS
TDie
+TDog
+TE Omni
+TE-toimisto
+TEAMFORTDUDE
+TEATMCBRIEF
+TEAxBAGGER
+TEBA
+TEDDl
+TEEMUXXD
TERMlNATE
+TERRORHYPE
+TESTOKEIJU
+TFS
TFreeze
+TGCONCEPTION
TGDekuTree
+TGI Vendredi
TGOBS
+TGSH
TGSpaghettiM
+TH0MAS
TH0MM0
+TH0TDETECT0R
+TH5
+THA CHR0NIC
THANIT0
+THANKS D0C
THATSCARCASM
+THAl LADYB0Y
+THC BOOSTED
+THC and EXP
THCGods
+THCiron
+THE CH1N0
+THE JEDl
+THE MOOR
+THE MUUMI
+THE TOSH
THEHAZE
THEIKOS
THEST0RM
+THEchronic 8
THICC
+THICC UIM
+THICCCBWANA
+THIIIIITH
THRALLGOBRRR
+THT
THUMBTHUCKER
TIIIIIIK
+TIM BEREN
TIMBO
TIOTEEE
+TITr fishy
+TJ UCF
TJay
+TKO Rage
+TKOsh
TKfromNC
TLT5
TLTBT
+TM Riddle
+TM8
+TNA INUS
+TNDSH
+TNF
+TNT Stealth
TN_Biscuits
+TOA Main
+TOA Rebuild
+TOA3
TOASTA
+TOB Inc
TOBplank
+TOHIGH2FLY
TOLIPTSET
+TOM RlDDLE
TOMMMY
+TOMMYSHELBEY
TOMMonyzzz
+TONNI re mix
+TOOlateN0B
+TOR0
+TORVA BTW
+TPD-Vladik
TPGG
+TR Ugur
+TR0UT CURS0R
TR0X
+TR3N ABUS3R
TR75
+TR9
+TRABZ10
+TRAJANO RD
+TRAPH0UZE
+TRAPorGTFO
+TRAVllS
+TRCSup
TRESTOLONE
TRI0DE
TRIPPlE
TRUMP
+TRUMPbtw
+TRUTH OF JFK
+TRXeatsRAPTR
TRYNAHANGWU
+TSA
+TSI
TSMCharizard
TSMsOAZ
+TSR Mishiah
+TST
TSWRX
+TSwiftSucks
+TT17
TTBtw
+TTT
TTTSpiceTTT
TTTTT
TTVCardyUK
TTVPandaBear
+TTommynator
+TTurret
+TTyrannical
+TULK4S
+TURBOPEN59
TURDENATOR
TURK
+TURKISH HERO
TURM0IL22
TVAnime
+TWISTED T
TWITTERSUPP
+TWL
+TWO000
+TWlNKE
+TX Bonefrog
+TX-15
+TXR3
+TYC Beatrice
TYCANN
TYEY
+TYL0RD
+TYTYTYYYTTYT
+TZTOKHUGEKOK
+T_ShelbyLtd
T_Swishh
+T_apka
+Ta C oS
+Ta ks
+Ta1ntzilla
Ta2kaz
+Ta7e
+Taakxic
+Taargus
Taathum
Taavik6iv
+Taavit
Tabagie
TabascoGrind
Tabbed
Tabbscoot
+Tabby Cat4
+TabbyCat97
Taberknackle
Tabesco
+Tabiun
+TableLamp
+Taboo Tim
+Tac
+Tach
+Tachr
Tachycardy
+TackTick
Tacklebox
Taco
+Taco Bit
+Taco Krydder
+Taco Log
+Taco Paws
+TacoCat
+TacoKittenz
+TacoTimma
TacoWithGuac
+Tacos Pump
Tacotueaday
Tactic
TacticNoodle
Tactical-RSP
-TacticalFart
Tactics
+Tactics Ogre
Taders
+Tadz
Taekwon-Do
+Taekwondoo
+Taelium
Taelos
+Tafboy
Taffarell
+Tafff
+Tag 7
Tagei
Taggeman
Tagi
+Tagz
Tahdeton
+Tahdonvoima
+Tahfi
+Tahimik
+Tahm83
+Tahuna Beach
+Tahx
+Tai
+Tai Mai Shuu
Taikajim
Taikanz
Taikapoika
+Tail Gory
+Tail Raiser
Tailight
Tails
Tailsnake
Tainoo1
Taint
-TaintSaint69
+TaintFondler
+Taintedhappy
+Taintehds
Tairoun
Taiwan
Taiyi2
Taizur
+Taj Mahballz
+Takalaaaa
Takaloo
Take
+Take My Sp3c
+TakeARedPill
TakeNaps
TakeUhSeat
Takea12
+Takedown Jr
Takeitilslay
Takens
+Takeout24
Taker
Takfil
Takimoto
+TakingADab
Takis
Takji
+Takobocchi
+Taks
Taky
Talal
+Talaxim
Talcron
+Taleah
+TalenteDK
Tali
Talia
Talito
Talk
+Talkamar TT
+TalkingMoose
+Tall Greg
+Tall Vince
TallChair
TallPaul24
Talla
+Talla Keyali
Tallented
TallerKiwi
Tallink
@@ -22779,57 +46640,104 @@ Tally
Taloroar101
Talos
Talppa
+Talrith
+Taltt4
Talu
Talvedon
+Talviel
Taly
+Talzn
+Tam Ranch
+Tam The Bae
+Tam k0nijn
+Tamacti
Tamadra
Tamaki
Tamale
+Tamara
+Tamaraa
+Tamayura
Tamber
+Tamberi
Tame
Tamerr
+Tamis
Tamjam
Tamlin
Tammii
Tamminga
+Tammy
TampaTHC
+Tampered
+Tan Toad
+TanDumb
Tanatos
+Tandanus
Tanden
+Tanduay Rum
+Taneesha
+Tang Eater
Tangar
+Tangela
+Tangelo T
TangerineFly
+Tangibility
Tangle
+Tangle Root
+TangleEllis
+Tangleboot
Tangledroot
Tango
+Tangshan
Tangzu
+Tanie
+Tanime
+Tanis513
+Tanjiro
Tank
+Tank VS Bear
TankMageJon
TankProphecy
Tankarino
Tanked
TankedAgain
Tanker
+Tanker 685
Tanker773
+Tankerton
+Tankkimies
Tankky
+Tanknique69
Tankster360
Tankytank
+Tanna
Tannnk
Tanny
Tanoak
+Tanoak alt
TanqueRamos
+TantusV
Tantza
+Tanuliina
Tanz
+Tanz Mutagen
+TanzFang
Tanza
Tanzagen
TanzerReborn
Tanzoo
Tanzu
Taozi
+Tapanui
Tapas
Tapdaddy
Tape
Tapir
+Tapir Squad
Tapirslayer6
Taplop
+Taplu
+TapoinItteni
Tapu
Taqi
Taradrial
@@ -22838,122 +46746,262 @@ Tardysoap
Tarezed
Taringa
Tarki
+Tarkista Hv
Tarlach
Tarns
Taro
+Taro Buns
TaronRS
+Taroshik69
+Tarouco
Tarpon
Tarroo
TarzanNinja
Tarzzan
Tasarorm
+Tascar
+Tase T
Tashee
Tashkas 007
TaskMan
+Tasset Man
Tassoth
Tassy
+TastefulNote
Tasty
+Tasty Burger
+Tasty Nan
TastyBoiMilk
TastyKnight
TastyToilet
Tata
Tataa
Tatanchis
+Tatankaa
Tatapie
Tatepon
Tater
+Tatertots
Tatimary
Tato
+Tatorz
Tattoo
+TattrTots
Tatuu
+Tau Lord45
+Tau Neutrino
+Tau Tau
Taucher
+TaunkChicken
+Tauno
Taunos
Taurideum
Tauros
Taut
Tautvif
Tava
+Tava Monster
+Tavern slut
+Tavernic
Tavi
Tawa
Tawakoni
Tawer
+Tawhid
Tawny
+Tax Audit
+Tax Wax
+Tax Wizard
+Taxing
+Tay Lore
Tay3rell
TayMoney
Tayleth
Taylor
Taylor672
TaylorMarcus
+Taylort07
Tayluh
+Taynq
+Tayri
Tays
+Tayunu
Taz762009
+Tazmina90
+Tazner
+Tazplan
Tazy420
+Tazz2006
+Tazzin
+TazzoTezz
+Tb knakworst
+Tbix
+Tbk
Tbone5876
Tbow
+Tbow Joe
+Tbow Todd
+TbowCourtois
Tbrs6
+Tchambz
+TdTapsa
+Tdblindmonke
Tddun
+Tdmiro
Tdogg31
Tdurocher
+Te
+Te Awa
+Te x a s
+Te zzz
TeBroHimself
TeCurt
TeJay
TeMuD
+TeQuiL A
+Tea Farmer
+Tea Witch
+Tea n Milk
+Tea on Wayne
+TeaIe
+TeaMerchant
+Teaandliquor
Teabz
Teachan
+Teadribble69
+Teafuse
Teagan
TeagueDaBoss
+Teal AV
Tealer
Team
+Team Chubby
+Team Flow
+Team Rocket
+TeamCleaned
+TeamJono
TeamSoloMid
+TeamVaChimpy
Teamwork
+Teand
Tears
+Tears of Avo
+TearsOfWeezy
+Teazor
Tebal1
Tebowowns
+Tebus
+Tec-Grind-95
+Tecc Legacy
Tecco
+TechCo
+TechColor
TechContraps
+TechFreakTwo
+TechOnMaxed
+Techart
TechiePicker
Techmenjoe
+Technician
Techno177
Techno9
+Techo
+Techtonique
+Teckczar
Teckerz
Teckie16
+Tector OSRS
+Ted Beneke
+Ted Striker
+TedRS
+Teddii Bear
Teddy
+Teddy Brum
+Teddybareman
TeddysMoo
+Tedication
Tedsticles
+Tedua
+Tedzudo
+TeeBee
+TeeBee11
TeeSchaf
+TeeTee1772
+Teebo 727
Teegious
+Teegzie
+Teekiz
Teemu
+Teemu126
+Teemuz
+Teena
+Teenagers
Teenyduck
+Teequoze
Teeqy
Teeray
Teetoh
+Tefak
Teff
+Tefilah
TeflonCancer
+TeflonJavon
TegridyF4rmz
+Tegriidy
Teh Only God
+Teh W H I P
+Teh Yumm
+TehBigNub
TehBriBri
+TehKillaaa
+TehPum
TehShowerMan
+Tehebow
Tehh
+Teigur
Teittinen
+Teivanna
Teixo
Tejmaster
+Tekannan
+Teke Toucher
+Tekkenfury
Tekkies
+Tekkies nub
Tekknow
Tekkuza
Teknoid
Tekoflex
+Tekryael
+TekstPlekshT
Teksti-TV666
+Tektiny
+Tektom
Tektonio
Tektons
TektonsTaint
+Tektos
+Tel3
Telboy
Teledogs
Telee
+Teleport 125
+Teleportoise
TelesBehindU
+Telesh69
+Tellum
Telluric
+Telope
+TemBROross
+Temdom
Temeria
+Temmer
+Temmie
TempVVS
+Tempal2
Tempest
+Tempesta1
+Tempick
Templaris
Temple
Templooit
@@ -22962,179 +47010,477 @@ Tempoctrl
Temponazz
TemporaryBls
Temppuliina
+TempstRimuru
Tempthric
Tempz
+Ten Letters
TenOnTheFlop
TenPieceNug
+TenPly Bud
Tenacious
+Tender Nuts
Tenderrrrr
Tendinosis
TendoTheTux
+Tendulkun
+Tenebri
TenebrisMeam
+Tenenwasser
Tenereus
Tenga
Tenh1s
Tenhou
Tennis
+Tennis Socks
TennisLad
+Tennnessee
+Tennu
Tennysee
Tenorman
Tenraikash1
+TenryuuKaiNi
+Tensilean
Tensor
+Tensor Trace
+Tentacle
+Tentpolepie
Tenya
Teotl
+Tep3lstreel
Tepeksi
+Tepezki
+Teplan
+Tepoa
Tepponen
Teqila
Teqq
TeraLokien
+TeraVit
Teras
Terbleg
Terial117
Tering
+Tering Tiete
Term
Termite
Termiz
TermnaLcpL
Termoil
Tero
+TerpWrangler
Terpedout
+Terpily
+Terppa1775
TerpySlurpy
TerraToffey
+TerraTony
TerresFatum
+Terrible Edd
+Terro
Terror
+Terror Earth
+TerrorJaxx
Terrorise
Terroristi
Terry
+Terry Munro
+Terry61RS
Terrybear
Terva
Tes Iron
Tesaticles
+Tesco
Teserve
+Tesla bot
TeslaDiva
+TeslaHero
+Tesni
+Tessei
Tesseria
+Tessies Bits
Test
+Test Dummy
+Test Strip
TestStrip
Testate
TesticularCa
+Testikeln
+Testoepa
+Testsubject
TetYun
+Tete3 0
Tetragrams
+Tetrah Blue
Tetsu
+Tetsu Nurtaw
+Tetsu Steel
Tetsu2
Tetsunohigan
Tettekop
+Tettezotteke
Teurastamo
Teus
Teus777
Tev0
+Tevreden
Tewocp
+Tewty
Tewwer
+Tex Zen
TexanzOS
Texas
+Texas Hou
+TexasAggie
TexasPlayer
+Texasholdems
+Texastea2
Texman
Text
Texx
Teyrill
+Teyzr
+Tezyn
Tflo
+Tfue
Tfulkyou
+TgMofo
+Th Abigor
+Th0m
+Th3 K1ng P1n
+Th3 Wolf
Th3IronMan
Th3KiNG
+Th3KiNG_Paul
+Th3Tool
+Th3Villager
+Th3_DoN
Th3uns
+ThAngelSlayr
ThEDievolved
+ThSheerman
+Tha Bser
+Tha Crazy L
+Tha Decided
ThaDankantor
ThaDragonSM
+ThaGiz
ThaLawl
+ThaNewArcher
+ThaRealRambo
ThaStepBro
ThaaMunchies
+ThaaOne
Thaerokem
Thai
+Thai Girl
+Thai ler
Thaichili
Thalarios
ThaliN1
Thamasta47
Thameslink
ThanaWee
+ThanatosRise
Thangkang
Thanked
Thanks
+Thanks Jeans
+Thanks4Pet
+Thankz Mom
+Thano
+Thanos btw
ThanosIsLife
Tharendel
Tharic
+Tharin
+Tharok
+Tharrogant
+Thasos
That
+That Noob
+That RNG
ThatBoiii
ThatBoyBurly
+ThatDamAss
ThatFishhGuy
+ThatGuyGoob
ThatGuyJordy
+ThatLipGrip
ThatLuck
+ThatManBez
ThatOldskool
+ThatOlmlet
+ThatOneAsian
ThatSandNoob
ThatSickBoi
+Thatonesock
Thats
+Thats Gang
+Thats Not PC
+Thats Thicc
ThatsNotRite
+Thaumat
+Thaurison
Thav022
+Thawk410
+The 0ld Nite
+The 0xymoron
+The 1 liquid
+The 11th
+The 2nd GIM
+The 3rd Main
+The 90s
+The Actuary
+The Aegis
+The Aod
+The Apina
+The Atreus
+The BPO
+The Baad Man
+The Big Chum
+The Bleez
+The Blue Owl
+The Blyat
+The Bonk
+The Booger
+The Boys
+The Brawler
+The Broskie
+The Bubbsy
+The Buffalo
+The Cage
+The Catowl
+The Champy
+The Chopper
+The Cleaned
+The Cleaning
+The Coffin
+The Comeup
The Crogamer
+The Crows
+The Dabbler
+The Danny
+The Dark
+The Dark165
+The Data Guy
+The Debated
+The Decided
+The Deli
+The Diamond
+The Dink
+The Dipshit
+The Dothraki
+The DrNick
+The Dragona
+The Dre
+The DripLord
+The Duffman
+The DwOrfe
+The Echo
+The Eco
+The Effected
+The Em8
+The End
+The Engine
+The Ex Zerkr
+The Expanse
+The Fat Toad
+The Fe Woman
+The Fig
+The Fisher
+The Fugitive
+The Gas Tank
+The Ginga
+The Giznooch
+The Grouch
+The Grower
+The Guppy
+The HRE
+The Half Man
+The Harambae
+The Havok
+The Hibbs
+The Hivemind
The Hobo
+The Hoffner
+The Hundred
+The Hunter
+The I Am
+The Iron Cpt
The Iron Era
+The Is0lated
+The Jedi Way
+The King 023
+The Kiwi
+The Labfreak
+The Lager
+The Last Act
+The Latvian
+The Law 98
+The Locust
+The Logger
+The Long Day
+The Lope
+The Lord Ra
+The Lovers
+The Lurifax
+The MCG
+The Magic
+The Maiden
+The Marco
+The Maskara
+The Matth
+The Mediator
+The Midlands
+The Mks
+The Mouldy
+The Mr Spec
+The Murder21
+The Muscles
+The Nexian
+The Nicollai
+The Noob
+The OSU
+The Office
+The Old Fonz
+The Old Kite
+The Old Mike
+The Omun
+The Onceler
+The Only Sin
+The OnlyPyro
+The Paladin
+The Peak Pro
+The Pet Farm
+The Playoffs
+The Pocket
+The Proline
+The Prophet
+The Ptolemy
+The Pwnes
+The Qwinner
+The Real Cat
+The Sabre5
+The Sarge
+The Schnopps
+The Sea Bee
+The Seahawks
+The Serval
+The Shy Guy
+The Shy Oni
+The Sly Fox
+The Snail34
+The Snapback
+The Steele
+The Steward
+The Stranger
+The Surveyor
+The Tardis
+The Thanator
+The Tils
+The Tiny Dog
+The Trap
+The Triple T
+The Use
+The Victory
+The W0rst
+The Wael
+The Warp
+The Wraith
+The Wupp
+The keho
+The thin 1ce
+The-Wind-Up
The0G
The1
+The1_2watch
+The1stmage
+The3dge
The3rdOlive
+The3rdTrike
The888
TheAdzz
TheAirIsDead
TheAlbatross
TheAllSorts
TheApe
+TheArcheType
+TheArchthief
+TheAsic
TheAssailant
+TheAusSpade
TheAvenger56
TheAvgJon
TheAzimuth
TheBandit777
TheBassIsRaw
+TheBazaBrown
TheBean
TheBearJ3w
+TheBeltMan
TheBezal
TheBidness
+TheBigShield
TheBigZofNYC
+TheBlackest
TheBlindy
+TheBlueShore
+TheBlueWrath
TheBoltzy
-TheBong
-TheBong2
TheBoomfire
TheBopp10
TheBotReaper
TheBowJob
+TheBrain
+TheBranFlake
TheBrundone
TheBudWiser
+TheC0W
+TheCanada
TheCapist
+TheCarrotMan
TheCaseAce
TheCheezywiz
+TheChosnOnes
TheCokeFiend
TheCollected
TheCondemned
TheCorrupt
TheCuckening
+TheCzarnian
TheDaedalus
TheDalek
TheDampBush
+TheDangs
TheDankShow
TheDawg
+TheDayWalker
TheDayman
TheDeadMann
+TheDeadTeam
TheDeen
TheDisgusten
TheDog
+TheDoubee
TheDreamKing
TheDrips
+TheDry
TheDuckChris
+TheDuckDaddy
TheDucksNut
TheDuud
TheDyr61
+TheEricShaun
TheEstonian
+TheEvaElfie
TheEvlManRay
+TheExtracted
+TheF0rg0ten9
TheF1ash
TheFabDabber
+TheFallen1x
TheFeOdyssey
+TheFeres
TheFizzCC
TheFlammers
TheFlopyTaco
@@ -23146,52 +47492,78 @@ TheFunkyHomo
TheFunnyLove
TheFuzzball
TheGaGee
-TheGayFarmer
+TheGaryy
TheGiggleMan
TheGlawce
+TheGodFathxr
TheGodGuthix
TheGodfather
+TheGoodLife
TheGoonie
TheGordinfla
+TheGoryGlory
TheGr8Jimbo
TheGrainGoat
TheGreat
+TheGreat One
TheGreatThor
TheGreenBowl
TheGugguru
+TheGurrag
+TheHabduL
TheHackedOne
+TheHapa
TheHartstopr
TheHerbSack
+TheHuffDaddy
+TheHugLife
TheHungOne
TheHungRoid
+TheHydra69
TheInilator
+TheIronBarra
+TheIronBoy
TheIronDolan
+TheIronHoser
+TheIronMouse
TheIronTwist
TheIronVault
TheIronZoid
TheIsamaru
+TheJele
TheJosephe
+TheKappaCorn
TheKhun
TheKid
TheKillerB
TheKnight
TheKnightman
TheKolector
+TheKop
+TheLaggyDad
TheLampKing
+TheLastTheef
+TheLaxBrah
TheLazyNinja
TheLewhole
TheLionn
TheMaadKing
TheMachine39
TheMadWolf
+TheMainZeus
TheMamba
TheManInBush
+TheManJordo
TheManatee
+TheMaskie
TheMavrick
TheMaxPvMer
TheMayne
+TheMetaNow
TheMikkel
+TheMorloc8
TheMuel
+TheMuffin8or
TheMursk
TheNegative
TheNerve
@@ -23199,48 +47571,80 @@ TheNewLue220
TheNewMonkey
TheNexu
TheNinjaH0b0
+TheNoPurp
+TheNooby
+TheOG Logo
TheOGGrimm
+TheOGslacker
TheOSRSWiki
+TheOllieBoi
TheOlmlet
+TheOne772
TheOneMatrix
TheOperative
ThePTWY
+ThePaceAce
ThePardos
+ThePariah
+ThePerfect G
+ThePolak
+ThePraetors
ThePrenti
+ThePrestiege
+ThePrideS1n
TheProfess0r
TheProvider
ThePureRingR
TheRanger
+TheRealBean
TheRealBew
TheRealDest
TheRealIdean
TheRealKanye
+TheRealKush
+TheRealKyle
TheRealKyle9
TheRealMidus
TheRealShway
TheRedNas
+TheRedRaider
TheRevRip
+TheRewriter
+TheRobin129
TheRoulette
TheRsBug
TheSaggyOne
+TheSaltyYew
+TheSandFoxx
TheShadyMile
TheShyFn
TheSimpSonny
TheSinner
TheSkippyBoy
+TheSlim1
+TheSneakyOne
TheSoggyOne
+TheSoloHades
+TheSpaceSaus
TheStonedElf
+TheSwumpMan
+TheTKsmith
TheTankProd
TheTerug
+TheTimeLord
TheTinPeach
+TheToyMaster
TheTree7
+TheTrue Goku
TheTrueNorth
+TheTrueOOGA
TheTrueSatan
TheTruthOnly
TheUnbeloved
TheUndified
TheUnluckyIM
TheValuable
+TheVerve
TheVeryBest
TheVnom
TheVoodoo2
@@ -23248,315 +47652,603 @@ TheW1tcher
TheWerebear
TheWetDuck
TheWhlteWolf
+TheWiseLoner
TheWitcherr
TheWizaad
TheWrongName
+TheYahtzee
TheYak
+TheYimYim
TheYugo
TheZoracks
TheZurvan
The_Dave666
The_Dunster
+The_Eoline
The_Hillboy
The_Jimmy
+The_Krang
+The_Man146
+The_Sturg
The_Zob
+Thea1a
Theatres
Thebano
+Thebig76
Thecascade
+TheclawMVP
Theconn
Thedriesj11
+Thedyolf
+Thee Khed
TheeMohican
TheeSkill
+Theel
Theem
Theeweaver
Theez
+Theezak
Thefunto
Theguymann
Thejessman1
ThelAvent
+Thelastmane
+Thelegend4uk
+Thelmacat342
Thelvereas
ThemanwhoisB
Themenchman
Thengalin
Theoatrix
+Theodensa
+Theodora605
Theohhhh
Theoklitos
Theoneburger
Theophobia
+Theorized
+Theory
Theoryist
+Thepawgchamp
Thepiefour
+Theracords
+Theralion
+TherapyGroup
+Theravasa
ThereTheyre
Therealhook
Therens1
+Therer
Thermynator
Theruler333
Thery
Thesaurusus
+These
+Thesonicking
+Thespok
Theunfrgiven
Thew
Thewoodle
They
TheyTukMyJob
+TheyXciteMe
+Theynika
+Thgll
Thibaut
Thibi
+Thic Glizzy
ThicBudget
+ThicCreature
ThicKoontang
Thicc
+Thicc Aku
+Thicc Budget
+Thicc Fil A
+Thicc Flair
+Thicc Momma
ThiccBird91
+ThiccCowboys
ThiccDaddyXL
ThiccDonut
+ThiccQueen
ThiccSkips
ThiccZwans
Thiccapedia
Thick
+Thick Cut
+Thick Nick
+Thick Red
+Thick nun
Thick2g
Thick4Head
+ThickGlute
+ThickIronBum
+ThickMike
ThickSenpai
ThickSpak
+Thickenei
Thickest
Thickkmommy
Thics
+Thiery
Thies
Thiesen
+Thievette
ThievinKills
ThievingL
+Thievs
Thigh
Thighhighs
ThiiComplex
+Thiibaut
Thillam
+ThinBlueL1ne
ThinPeepoSad
ThinkB4Hit
Thinkoclet
+Thinxo
Third
+Third-ages
+ThirdAge
ThirdAgeBoss
ThirdEye
Thirdborn
+Thirsty 4PvM
+Thirtys
This
+This Gimp
+This Leo
+This Schmuck
ThisAint
+ThisAint-Wow
ThisAintSkil
+ThisGuySkip
ThisPieIsDry
Thisious
+Thissa
Thlrd
Thoakline
+Thocasu
Thogdad
+Thogidar
+Thohon
Thom
Thomarse
Thomas
+Thomas Juice
ThomasticIM
+Thomastic_1
+Thombstone
+ThomiusTeGr8
Thommetje
+Thommyy
Thonack
Thonq
Thoomin
Thor
Thoradin
+Thoraldd
ThoraxPurple
-Thorbuttuxth
Thordej
+Thorgal
+Thorgoth1
Thorkar96
+Thorn
Thornet
Thornnforge
+ThorntonM
Thorvesta
+Thot Jadiels
Thotalopolis
Thoth
+Thotmince48
Thotscape
+Thoughting
+Thoughtseize
Thounde
Thoupeppi
Thrasmion
+Thrax OS
+Three Twelve
ThreeOneNine
+Threemars
+Threesunders
+Threkeld
Threno
ThreshDaOg
Thrihyrne
Thrilbo
+Thrilerrr
Thrillhousee
+Thrisel
Thrivaldi
Thrlll
Throat
+ThrobGodTod
Throbba
Throbbing
Thrombi
+Thromur
+Throupled
+ThrownFury
+Throxx
Thru
+Thru ur poo
ThruDaStorm
Thrust
Thrustaxe1
Thueh
Thug
+Thug bone4
Thugbug808
Thugg
+Thugge
ThugsBunny
+Thugsbunny73
Thulean
Thumb
ThumbBwana
+Thumper
+Thunadaja
+ThundaBear
ThundaJunk
+Thundac
Thundahcatz4
Thunder Dog
Thunder Gate
+Thunder Nerd
+Thunder Zeus
ThunderBirdz
ThunderRolts
+Thunderbo1tz
Thundercat
Thunderite
+Thunderoxgod
Thunderpb28
+Thunderst0rm
+Thundito
+Thur go
Thurbs
Thurison
Thusly
Thutmose
+Thuvian
Thuzd
Thve1ivan
+Thwart
+Thy Odama
+Thy Victory
ThyIronGiant
+ThyLegend
ThyVonR
+Thybo
Thyclops
Thyhead
+Thyming
+Thyreus
+Thys
Thysa
Thyymabotnus
+Ti Blade
TiXN
+Tia
Tiaan
Tiaeuth
+Tiafoe
+TiagoM
Tiak
+Tian Guo
+Tianzi
Tiazen
+Tibadis
Tibador
+Tibaul
+Tibbsyy
+Tiberium SvK
+Tiboot
+Tic Fart
+TicImperfect
TicTacSensei
Ticano
Tice300
Ticina
Tick
+Tick Behind
+Tick Ma Nip
+Tick Manips
TickAteUrMom
TickTickRun
Tickable
+TicketGoblin
Tickets
+Tickflow
+TicklMySickl
TickleBerry
+TicklesIM
Tickmark
Ticks
+Ticks missed
Tict
Tictacdingus
+Tid Eez
Tidders
Tiddy
+Tiddy Winks
TiddyLactate
Tidev
Tidy
Tiedemanns
+Tiedustelija
+Tiegra
Tielemans
Tier
+Tier 05
Tierney
+Tierra Bella
+Tiesto
+TifaL123
Tiffs
Tiftanlar
+Tig Bittty
TigTheWelder
+Tigas TT
Tiger
+Tiger Tea
+Tiger Trap
+TigerYouDied
Tigerheart07
+Tigerheart09
Tigerlady
Tigerlady203
Tigerr
Tigersrule23
Tigerwolf
+TiggoGnomes
+Tiggrat
+Tighe
Tight
+Tight Helmet
+TightSpace42
+Tigor
+TigreRosso
Tigrio
+Tigy
+Tiiimon
+Tiimari
Tiistai
Tiistia
+Tiit Hepa
Tiivo
Tijmen
Tijn040
Tijs
Tijskid
Tijuude
+Tiki Haha
TikiTyrant
Tikk1s
+Tikka
+Tikkix
Tikru
Tiktok
+Tikwah
+Tila
Tilburg
+Tild0
+Tilfreds
+Tilidin
+Till Bored
Tillah
+TillerPloww
Tillykke
Tilted
+Tilted I Am
+TiltedGoblin
+TiltedIM
Tilur
+Tim Pedwar
+Tim Puri
+Tim The Jedi
+Tim bo Slice
+Tim-O-thy
+TimShutDown
TimSkilling
+TimTheLegend
+Timaaaay
+Timaaay
+TimbaWimba
Timbeettius
Timber
+Timbertail
Timbito
Timboball
+Timbuktu25
+Timbulz
Time
+Time For Me
+Time Leap
+Time Voyager
Time2Lose1
TimeFlies
+TimeIsStrnge
TimeLion
TimeMuffins
+TimeSink2000
+TimeSpan
TimeZebra
+TimedxBeast
Timespacing
Timetokill19
Timew8ster
Timex
+Timex 07
Timka
Timkempp
Timm
Timmay111865
Timmeh
Timmies
+Timmuuhh
Timmy
+Timmy Jim
+Timmy Tbow
+Timmy Tiime
TimmysCoffee
TimnI2
+Timonkey
Timos
TimosTime
+Timotej
Timsey
+Timzee
+TinFoil Joe
TinHongetech
+Tincoinco
Tincup
+Tindatinn
Tindell23
+Tinder lvl 1
TinderMatch
Tine
Tinfawn
TinfoiledHat
Tinfoilhat
+TingSumWong
TingleTingle
+TingleUwU
Tingot
+Tingsha
Tink
Tink200345
+Tinkelsia
+Tinmanone
+TinnMan
+Tinnitus
Tinsmith
+Tinted Rock
Tintti218
+Tinuvial
+Tinvicuna
Tiny
Tiny Bagel
-TinyCat69
+Tiny Buddha
+Tiny Bun
+Tiny Dck
+Tiny Feet
+Tiny Lego
+Tiny Secrets
+Tiny Teemo
+Tiny Triceps
TinyFnRick
+TinyIronDong
TinyLebowski
+TinyLes
+TinyTaro
TinyToasters
TinymafaRick
Tinypns
+Tinytiger17
Tinzo
+Tip Zee
+Tip of Dik
TipTheTank
+TipeF
Tipeeee
Tipit
+Tipoz
Tipper
+Tippin_toes
+Tips Iron
+Tips Touched
+Tipsy PvMer
TipsyBeard
+TiptopSundae
Tipu
Tiqu
+Tiques
TiramisuTart
+Tire Slayer
Tired
+Tired Hero
+Tired of IRL
TiredPidgeon
+Tirex
Tiring
TirmenaT
TironTula
Tironade
+Tirpz
+Tirsonek
Tisalia
Tisch
+Tism Tanner
+Tit Bow
TitMcghee
TitPoker
Titan
+Titan Luke
TitaniteSlab
+Titanium Mag
+Titas P
TitePoire
Title
+Title Fight
Titsferdayz
Tittsnbiches
+Tittyboi5
Titus
+Titus Furius
+Tivaaa
Tivinter
+Tizra
+Tizzcdn
+Tj Russo
+Tj Watt
+Tj0epert
+Tjaa
Tjabalabaaa
+Tjalo
Tjar
Tjarie
+Tjarles
Tjbakel
+Tjf12
+Tjob
TjockaBengt
+Tjs109
Tjuv
Tkit
Tksquad
Tktn
+TlCK LOST
+TlLLER
+TlLT
+TlME 2 QUlT
+TlNUS
+TlTANlC
Tliltocatl
TmSmT
Tman
Tmarvy
+Tmilllz
+Tmm
+Tmmm
Tmoe
Tmoe123
+Tmoneyyyy123
+Tmppa
+Tmtiger16
+Tnt Harder
+To Ashes
+To Be Sure
+ToAPlanker
+ToBeAgile
+ToLoNi
+ToMyTailFin
+ToNFisKrs07
ToTheRanch
+Toad Pond
+ToadKar TV
Toas20
Toast
ToastBTW
@@ -23569,126 +48261,239 @@ Toasterly
Toastie
Toasty
Toat
+Tob Braidy
+Tob Carvery
+Tob Marley
+TobOnMyCox
+TobSpoon69
+Tobak
+Tobbeloba
Tobias
TobiasFate
+Tobiasz
Toboogan3
Tobser
Toby
+Toby Raz3
+Toby1889
TobyMcCrier
+TobyRax
+TodWhispers
+Todays N00B
Toddlet
Toddo25
+Todt Thot
+Toe Biden
+Toe Crocs
+Toe Moss
+ToeRag
+Toedeloe
Toedels
+Toeh5
Toek
+Toekie
+Toeristje
+Toermalijn
+Toes B4 Bros
Toets
Toews
Toffenboi
Toffer_99
+Toffffu
+Toffoli
Tofs4pk
+Tofthagen
Tofu
+Tofu Python
+Tog
+Toge6343
+Togepi
+Togica
+Togo Mouri
+Tohni
Tohveli
Toilet
+Toilet Humor
ToiletBowlbb
+Toiletpaper9
Toimin
+Toiney
Toinzy
Toivo_43
Tojosodope
+Tok in
+Tok-xik-Hex
TokHaar
Tokah
Toke
+TokeSevere
Tokedaddy
Toker11
Tokin
+Tokin Ranarr
Tokin99
TokkHaar
Tokkie01
+Tokonu
+Tokoya
Tokoya11
+Toktz-ma-cox
Tokyo
+Tokyo Ghost
+Tokyo Prose
+Toldasor
+Tolhuis
ToljaSo
+Tolo Ar Nin
+Tolweg
+Tom Adamo
+Tom Cx
+Tom Decoene
Tom Fn Brady
+Tom Is Huge
+Tom Shanks
+Tom T
+Tom Vercetti
+Tom Waited
+Tom btw
+Tom from 561
+Tom is Sharp
+Tom o_0
+Tom vs Log
Tom9
TomAce
+TomFlinn7
TomHilRigour
TomMazilian
TomMerrilin
TomOfTheWest
TomTehCat
Toma
+TomaMvp
+Tomaatti169
Tomarti
Tomastor
TomatoAndEgg
+TomatoFarm19
TomatoTom9
Tomazon
+Tomb
+TombLooter
+Tomba
Tombalo
Tombat
Tombazv2
-Tombea07
+Tombea09
+Tombing
Tomdabom
+Tomdoc14
+Tome
TomehhG
TomiL
Tomiee
Tomik85
+Tomlyn
Tomm
TommieSalami
+Tommm
Tommmo
Tommy
+Tommy 901
+Tommy J C
Tommy2Tick
TommyGunn204
TommyJay
TommyTalapia
Tommyhawk
Tommyyy
+Tomn
Tomo
Tomori
Tomorrowlxnd
Tompi
+Tompp1
Tompsi
Toms
+Toms PvM
Tomsdk
Tomson177
Tomtastrophe
Tomtom032
Tomukas
+Tomvdh
Tomxi
+TomzodoubleO
+Tond3
TondeK18
Tone
+Toneez
Tonester03
Tonfa
Tong
Tongo
+Tongue Baths
Toni
Tonicto
+Tonk A Wiz
Tonka742
+Tonkade
TonkatsuLife
+TonkerEx
Tonnie
Tony
+Tony D
+Tony Gwynn
+Tony P
+Tony Soap
+Tony Soprano
+Tony Tuna
Tony23
TonyCaawk
Tonyde
Tonydidles
Tonyhood
Tonzaww
+Too Original
TooBasic
TooBigDad
+TooManyCooks
+TooManyKinks
TooMuchIan
+TooMuchSauce
TooMuchTuna
TooReal
TooShredded
+TooWhite4You
Toobias
+ToogaTank
Tooheys
Tookkul
+TookyDaWooky
+Tool
Toolbox
+Tools1977
ToomBooii
Toomas
-Toominator69
+Toomi
Toonic
Tooodley
Tooomo
Tooq
+Tooqan
Toortles
Toostie
Tooterz
+ToothhurtyPM
Tooves
+Top Gear
+Top Glock
Top Milk
+Top Monents
+Top Mong
+Top Trends
+Top V1
+Top Vestain
+Top10
Top5Worst
TopGlitch
TopGunt
@@ -23698,34 +48503,58 @@ Topez
Topgolf
Topi
Topkeklethal
+Topkerel
Topman
Toppavenger
Topstad
TopsyTurve
+Tor Btw
+Tor Cool Guy
+TorBlueJays
+Torag Tony
Torags
+Torags The C
Torchbringer
+Torchfall
Torchiclover
Torchpix
+Tordenknold
Tordue
Toreador
Toreransu
+Torgonis
Tori
Torille
+Torille btw
Toris
Torkoal
+Torky Bow
+Torlux
+Torm
TormentingU
+Tormood
+Tornaddyne
+Tornado Kim
TornadoGang
TornadoShit
Torned
Tornjak
TornoDB
+Torok
Toronto
TorontoOVO
Torr3nHunt3r
Torra
+TorraTwo
+Torretto
+Torrfly
+Torrud
Torsinclair
Torso
+Torstol
+Torstol Todd
Tortanium
+Tortcher
Tortelini
Tortew
TortiIIa
@@ -23733,36 +48562,68 @@ TortillaChip
Torttunaama
TortugaBooga
Tortugas
+Tortuous
+Torture Iron
+Torva boy
Torvee
Torvesta
+Toseki
Tosetti
+Toshiba
+Tossin
Tostada
+Tot1
Total
+Total Lvl
Total Pede
+Total Spoof
+Total Vanity
+Total Zero
Totaldumm
Totaled3
Totalis
+Totallymad20
+Totalxq
+Totato
Tote
+Totemas
Totnum
+Tott
+Totti
+Tottie
Toucan
Toucann
+Touch My Wii
+Touch Tablet
+Touch Touch
TouchPinis
TouchedByXp
Touchkin
Touchmydig
Touchpad
+TougeAttack
Tough
Tounii
+Tour Guide
Tourino
Tournx72
Tousart
Tove
Towely
+Tower Guard
TowerOfGod
Towerbros
Town
+Town Square
+Towney Stark
+Towton II
Toxic
+Toxic Dice
Toxic Emre
+Toxic Joda
+Toxic Mfer
+Toxic Outlaw
+Toxic Waltz
Toxic017
Toxic125
ToxicBropipe
@@ -23770,12 +48631,22 @@ ToxicDroPipe
ToxicKenny
ToxicSimp
ToxicWaster
+Toxzeek
+Toy Chest
Toycutter
Toyger
Toyne
Toyocoma
ToysRusK1d
Toysalami
+TozzinSalads
+Tpc Chris
+Tpc Jimmy
+Tpc Ken
+Tqnks
+Tqrb
+Tr Farmer
+Tr hoca
Tr0gdor
Tr1ckyD1cky
Trabelco
@@ -23783,85 +48654,164 @@ Trac
Trace
Tracing
Trackpad
+Tracktix
Trackzor
+Tracto r
+Tractorjoe13
+Tracxy
Trad
Trade
+Trade Me 70k
+Trade Parade
+TradeForItem
TradeMeBro
TradeMeUWont
+Tradebarrier
Tradeophobia
Trae47
+Traenalai
+Trage Gast
Tragick
+Tragon33X
+Trail
+Trail Sodas
+Train Track
+Traincore
Trained Fish
Trainer
+Trainer Bad
Trainin
+TrainingDay
TrainingDays
+TrainingWill
+Trainor BTW
Trains
Traiths
+Trakiya
Traktori
Traktorman
Tralan
+Tralfamadori
Tramayne
Tramfix
Trample
+TranSfused
Trance
+Trance Heals
+Trance666
TranquilGod
+TranquilHaze
Tranquillia
Transfer
Transgressor
+Transpiler
Transpose
Tranziztance
Trap
+Trap Carrot
+Trap the Cat
+Trap-A-Holic
TrapGdReptar
TrapGood93
Trap_Capo
Trapking
+Trapking 8
+Trapping
Trapski
Trasclart
Trash
+Trash Pvmer
+TrashBlast
+TrashManJ0hn
+TrashServers
Trashu2
+Trashua
Trashy
Traumahh
Travee
Traveler
Travis
+Travis 42
+Travis on Rs
Travis473
TravisThott
Travish
Travor
TravviePatty
+Travy D Law
+Traxic
Traxxed
+Trayvon King
Trazaeth
+Trazez
+Trazza001
Trebluh
Trebyzond
+Tredderss
Tree
+Tree Form
+Tree Oils
+Tree43210
Tree50
TreeNut11
+TreeTopsFart
+TreeWeasel
+Treedemption
+Treehuggers
Treelo23
Treenut
Treinen
+Treio
Trejoracine
Trekhoar
+Treldinn
+Trem Bao Uai
+TremensInc
Tremorx00
+Tremzy
+Tren Culture
+Tren Hex
TrenbolonAce
+Trench Ben
Trendeon
+Trendiness
Trenl
Trennel7
Treno
Trensational
+Trentovitch
Trentt
Trepa
Trepador
Treps
Tresemmee
Trev
+Trev the dog
+Trevenant
Trevo
Trevor
+Trevor Died
+Trevor M
+Trewg
+Trews
Trey
+Trey is
Treygor
+Treyvor
+Trezler
+Trgx2
+Tri Flamingo
+Tri-P0LAR
Tri9py_J
TriBalanced
+TriFlea
Tribe
+Tribe Leader
+Tribe of 123
+Tribryd26
Trick
+Trick Blue
+Trick Statue
Trick-demon
TrickRoom
Trickiac
@@ -23871,11 +48821,15 @@ Trickster122
Tricomb
Trictagon1
Trictagon2
+Tricx
+Trid3nt
Trieuce
Triforce13
Trigamy
+TriggaTriggs
Triggadd
Triggahappy
+Trigger Me
TriggeredMot
Triggeredm3
Triggering
@@ -23885,22 +48839,44 @@ TrikiRiki
TrikyCutworm
Trikzed
Tril
+Trilipe
Trilligy
+Trillogy
Trillotani
+Trilogies
TrilogyXO
Trim
+Trim Jr
+TrimmedGrimm
Trimmedguy
TrinitySauce
Trinix
Trio
+Trio MF
Trip
+Trip Machine
+Trip Masta
+TripEatIRL
+TripJaw
+TripSquad
Tripachu
+Tripae
Triple
+Triple Deuce
+Triple Dex
+Triple U
TripleBeans
+TripleHyphen
+TripleNeck
Triplet
+Tripod Neb
TripodDog
+Trippie Damo
Trippinsac
+TrippleMarty
Trippy
+Trippy Mind
+Trippy Troll
TrippyReefer
TrippyScapee
TrippyTony
@@ -23908,78 +48884,155 @@ Trips
TripssAcid
TrisomyMumky
Triss123456
+Trissee
TristV1
Tristann
+Trito
+Triton Blue
+TritonSaber
Triumph
Trivi Beast
Trivit
Trivium
Trixcet
Trizak
+Trizepz
Trldude7
TrocSan
+Trocko4
TrodOnLego
Troetelbeer
Trogbite
+Trojan Steed
Trok
+Trolerage
+Troll Chad
+Troll464
TrolleVV
TrolletTruls
+Trollevv
+Trollface
+Trollheimusk
+Trolli
TrollinPony
TrollinTony
+Trollinguy
+Trollzzy
Trololosaur
Tromal
+Trombalski
+TronixxIM
+Tronkshark
Tronse
+TroopIronman
Trooperke
Tropec
TrophieTyler
Tropical97
+Tropicaux
+Tropidelics
Tropsic
Troskals
Tross
Trottero
Trottington
+Troulis180
Trounced
TrousrMonstr
+Trout Wallet
+Trovam
+Trovo
+Troxicus
+Troy Buckle
+TroyPolamalu
+Trreezz
Trrrpfosdss
+Tru3Iron
+Trublians
Truce
TruckTruck
+TruckYacht
+TruckerLiam
+TruckerTuck
TruckersLife
+Trucki
+Truckstop0
True
+True Flex
+True Joker
+True Knight
+True Owl
+True Repent
+True Tones
TrueBadApple
TrueBank
+TrueNorth95
+TrueSatan
TrueTech
TrueTeller77
+TrueYoshi
Truegreed
Trueplaya
+Truers
Trueth
Trulieve
Truly
+Truly Lifted
+Truly Loving
TrulyForever
+Trump
TrumpCard
TrumpSuxAss
Trumpet
+Trundholm
Trunker
Truno
Trunsa
+Trusejageren
TrustIssues
+TrustNoOne
Trusted
Trustifarian
+Trustin
+TrustyThrust
+Truth Hurtts
+Truth Seekir
+Truxy One
+TrveKvlt
+Try Casual
+Try Die Cry
+Try Hard Jr
Try2IronMan
TryAltF4
+TryCBD
TryHard
+TryHard DBag
TryHardi
Tryactin
+TrygveLegend
Tryh4rder
Tryhard
+TryinNot2Die
+Trym
+TrymeTrick
+Tryna Max
+Tryna match
+Tryndaflex77
Trynottodie2
Trypophobia
Tryptamind
Tryptopane
Tryuumph
+Trzaskowski
+Ts Danne
+Ts Me
+TsMaxed
Tsakahele
Tsar
+Tsar Douglas
Tsarina
Tschinelas
+Tshotz
Tsiquli
Tsitika
Tsjok
@@ -23993,27 +49046,42 @@ Tsudo
TsukasaS
TsukiAkuma
Tsukihi
+TsukikoBaka
Tsukiya
Tsuku
+Tsuku yomi
Tsukuyomi
Tsumikitty
+Tsumoso
+Tsurubebi
Tsyphoid
Ttffdd
Ttoz
TuNxZbs
Tubbless
+Tubbzzy
+Tube Dood021
Tubmasta95
+Tubs
Tubz
Tuca
+Tucker Jeb
Tuckerajf
+TudoLaDentro
Tuerro
Tuexo
Tufan
Tuffa
Tufs
+TugBoatWilly
+TugMeTwice
+TugMyCox
+Tuga9
Tugboat
Tugboats
+Tuii
Tuisku
+Tuittu
Tukeldaja
Tukkairti
Tulf
@@ -24021,21 +49089,37 @@ Tulip
Tulipssonmyd
Tully03
Tulppu
+Tumbdownlog
TumbleDore
+TumblingSand
+Tumeken Tay
+TumekenToday
+Tumma Paahto
+Tumms
+Tumnus
Tumppe
Tuna
-Tunafish69
+Tuna Juice
+Tuna Shuffle
Tunaking420
+Tunasafarii
Tunda
TunderBog
Tundra
+Tunez
Tung
+Tung Fu Rue
Tungsten
+TungstenGyro
+Tunguska
+Tunkky
Tunnellord
Tunppii
Tunsberg
Tuntun
+Tuoppi1230
TupacShaakur
+Tupackid
Tupakki
Tupeli
Tuperrovski
@@ -24043,98 +49127,188 @@ Tupla Olut
Tuplaa
Tupoopsa
Tuppu
+Tuppu hoitaa
+Tuppuu
+Turambarr
TurangaNui
+Turb0uu
Turbanator
Turbie
+Turbin
Turbo
+Turbo IM
+Turbo Junkie
+Turbo Toes
+Turbo Zero
TurboMilf
+TurboSoak
+TurboTez
TurboWet
Turbokjepp
-Turd
+Turbotymer
+TurdFlicker
TurdFurgeson
Tured
Turha
Turiak
+Turjilin
+Turk Monsta
Turk3H
+Turk3HH
TurkBird
+TurkeyPro
+Turkije
+Turkish One
Turkish3agle
Turkled
Turkos06
Turks
Turn
+Turn It Left
TurnMagic
+Turnalar
Turner Coach
Turnii
Turnt
+Turqish
+Turqy
Turri
Turrner
Turrox
Turskaa
Turso
+Turssuttaja
+Turtelloo
Turtle
+Turtle Rak
+Turtle s
Turtle7
+TurtleCoddlr
TurtleWurdle
Turtlebutt
+Turtledog
Turtleliest
+TurtlesClimb
TurtlesRdank
Turtleso3o
+Turts
+Turuii
+Turvasana
Tusc
+Tushy Taker
+Tusk
Tusondude25
Tusseladd92
+Tustea Kossu
+Tutorial
Tutoroo
+Tutta
Tutter
TuttiFruttii
+Tuttimango
Tuttimelon
Tuuri
+Tuuri haukka
Tuvisitt
+Tux
Tuxy
Tuya
Tuzle
+Tvanderlaan1
+Tvb Cx
+Tw0Pack
Tw1ZzT
+Tw1nsPurr
+Tw1nz
+Tw1st3d_B0W
Tw1stedBow
TwTv
Twald10
Twas
+Twas Xmas
+Twashua
Twaste
+Tweaky
+Twee Barkie
Tweeder
Tweek
+Tweekzor
Tweetart
Tweeznap
+Tweezr
TweezyShadow
Twelvyy
+Twenie Wan
Twerk
+Twerk 132
Twet
Twice
+Twice Flo
TwickerTweet
Twiddle
+Twiddle Twix
+Twidgets
+Twiested
+Twift
Twigbert
+Twigglet
TwiggyC
Twigler
Twigster
Twiisted
Twilight2326
TwilightPony
+Twilly Spree
+Twillz
Twin
+Twin Fists
+Twin Kinz
+Twin Peaks
Twinflip
+Twinick
Twink
+Twink Ripper
Twinkle
+Twinkle Park
+Twinklekat
Twinr0va
Twins
+Twist2K
Twist3d
Twist3dData
Twisted
+Twisted Boog
+Twisted Bung
+Twisted Cook
+Twisted Echo
+Twisted Jam
+Twisted Matt
+Twisted Titt
+Twisted cat
+Twisted garg
TwistedAegis
+TwistedBeer
+TwistedBerns
+TwistedBowlz
TwistedBr0
TwistedCybrg
TwistedGuard
TwistedHeart
+TwistedLike
TwistedOffer
TwistedWally
Twisted_Ry
+Twisted_newf
TwistedxAura
+Twister Nips
+Twister XIII
Twistertjeee
+Twistie
TwistsedT
Twitch
+Twitch Fear
+Twitch simp
+Twitch507
TwitchFear
TwitchSeljan
Twitchen004
@@ -24142,221 +49316,491 @@ Twitchin
TwixTM
Twizler74
Twizzlers88
+Twnkles
Twntythree23
+Two Elites
+Two Fears
+Two Ounces
+Two2SixToo
TwoBeerBuzz
TwoDigitJish
TwoDogs
TwoInTheSink
TwoLegedDog
TwoShue
+TwoTwentyTwo
+Twoconch
TwojaStara
+Twoy
Twpz
Twstd
Twum
+Tx2
+Tx3 Poseidon
+TxNock
+Txbor
Txfr
Txga
+Txh
+Txlon
+Txture
+TxunaTuna
Txyus
+Ty
+Ty God
+Ty Sit Idiot
+Ty bears
Ty1er
Ty4F
+TyDyPooFingr
+TySkidmore23
Tybear575
Tyberium
+Tybones
Tycen
+Tycens
Tydigidy
Tydollatree
TyeMeUp
Tyelca
Tyepo
+Tyfr
Tyfus
+Tyfus Bende
+Tyfus Mug
Tyfuslija
Tyga
+Tygr
+Tyhger
Tyin
Tyixx
+Tyjes1
Tykaman
+Tyl r
Tyler
+Tyler Razz
+Tyler Stone
Tyler051095
-TylerOSRS
+Tyler4rs
+TylerGBR
+TylerMike
Tylerknight3
Tylerton
+TylerxBandit
+Tylo54
Tylooor
Tylz2
Tym8
+Tyney
+Tyngre
Tyom
Tyontaja
+TypOneg4tive
Typhose
Typical
Typisch
+Typto
+Typtooka
+Tyq
+Tyr 24
+Tyr Ara
Tyra
Tyrael
+Tyrael OG
Tyran88bid
+Tyraniana
Tyranids
TyrannicaI
Tyrants
Tyrep
+Tyrex
Tyro
Tyrus
Tysh
Tyskie
+Tyskie38
Tyskn
Tysn
+Tyson11
Tysonn
Tyst
+Tysterisk
+Tytastic
Tythle
+Tytto
Tywonia
+Tz-Kek-Twang
Tz-Ket-Kush
TzCal
TzCok
+TzCok-Hard
TzDeez
+TzDeez-Nuts
TzHaar
+TzHaar Meej
+TzHaar-Doug
TzJal
TzKal
+TzKal Majora
+TzKal-AszZuk
+TzKal-Cumsok
+TzKal-Gio
+TzKal-Mike
+TzKal-Thad
+TzKal-Zuky
TzKalFatkok
TzKalSuk
TzKarl
+TzSuk-Dis2
TzTok
+TzTok Chris
TzTok-1gBud
+TzTok-Fart
+TzTok-Flame
+TzTok-Izzy
+TzTok-Jaffa
+TzTok-Jahd
TzTok-Jeffy
TzTok-Joka
+TzTok-Kekw
+TzTok-KetKok
TzTok-Ladz
+TzTokTitties
Tzek
+Tzhaar Bower
+TzhaarThicc
+Tzhaar_PvP
Tzharzh
+Tziis
Tzikit
+Tzkal Edgar
+Tzkal Tygo
+Tzkal-Reborn
+Tzok-GigaKok
Tzoski
+Tztok Shaz
Tztok-Met-Al
+Tzuyuwu
+U A E
+U A V Online
U Ded Boi
+U Mirin Brah
U N X
+U R Lame
+U Tele Nub
+U W8
+U n I f Y
+U nknown
+U0Q
U0sunpeh
+U3
+U4
+U71Q
+UAWMAN
UB02
+UBWare
UBaKr
UConn
UENDELIG
+UFOTurtle
UFOs
+UG Juppa
UGLYMONKEY58
UGLYS
UGam3zOS
+UI GOKUU
+UI UC
+UIM BUTT3RS
+UIM Brah
+UIM Burni
+UIM Chayula
+UIM Illusive
+UIM Liar
+UIM Lobotomy
+UIM Log
+UIM Loki
+UIM Nathanjb
+UIM Ori
+UIM Paperbag
UIM Pepper
+UIM Pidbull
+UIM Shen
+UIM Shrift
+UIM Sorrows
+UIM Spongie
+UIM Stephan
UIM Thor
+UIM Vas
+UIM Warriorh
+UIM Wedey
+UIM Yoga
+UIM Zoldyck
+UIM whozan
+UIM7
+UIMBerg
+UIMaqtpai
+UIMatti
+UIMpostor
+UIPanda
+UIdahoKush
+UIspice
+UKB0b449
UKnowItsB
+UL7RA
+ULF Tagger
ULTMA
ULTRA
+UN-FAZED
UNBIQUOUS
UNC0RN
UNCEL
UNCLE
+UNCLE LEET
+UNCLESAMY
+UNDEAD EXO
+UNDERURBED4
UNEX1ST
UNH0IY
UNLOADED999
+UPDOGS
+UPSdeliveree
+UQV
+UR 0 HP LMAO
+URA Noob
URAMESHl
URSS
+US Postal
+USA Tyler
+USA USA USA
+USA is Dev1l
USAF
USAO
USBthe2th
USMARINEHYDE
+USNavyOver70
USSpaceForce
USTreasury
+USirHaveLost
USirHaveWon
+UTT
+UWCB
+UWF
+UWUSTELIJA
+UZY VS JAD
Ualt
+Uamee
Ubar
Ubaru
Uber
Uber Logan
+Uber Yeats
Uberamazing
+Ubersmind
+Ubicorn
+Ubu
+Uccino
Uchiwa
+Uchr
Udacity
+Uderp
Udhariol2
Udingus
+Ufda
+Uffe Persson
UgliestIncel
Ugly
+Ugly Hipster
+UglyFishArm
Uglybeetle27
Uglyyo93
UgranDag
+Ugursuz IT
Uh-0h
Uhbove
UhhhBoneless
+Uhhhh Wut
+Uhm
Uhscended
+Uidi One
+Uim Beyonce
+Uim IRL also
+Uim Zuko
UimSian
+Uimakoulu
+Uk Bristol
+Uki Kukkamaa
+Uki Skillz
Ukko
+Ukko-Pekka
+Ukkonenn
+Uknow Yunho
UknowPotter
Ukonvasara
+Ulappa
+Ulibarri
+Ulik madiq
+Ulillillia
Uliss
Ulizius
+Ullerton
UltDrewes
+UltRise
Ultebor
+Ulthane120
Ultima
+Ultimat3ly
Ultimate
+Ultimate Low
+UltimateH0bo
UltimateSami
+UltimateWare
+UltimateZe
Ultist
Ultistic
+Ultorman
Ultra
+Ultra Miami
+Ultra Primal
+Ultra Sloth
+Ultra Space
+Ultra Teuz
+UltraGOOP
UltraJack
UltrasTomi
+Ulvhilde
Ulyanyx
UmUUmuUmU
+Umarra
Umbr
+Umbrah
Umea
Umek
Umiland
+Ummfufu
+Ummz
+Un Dutchable
+Un M-U-T-3-D
+Un puma
+Un-Expected
UnDutchable
+UnGoof
UnHoLyxMaTTy
+UnOrderly
+UnRuleD
+UnTaMed X
+Una999
Unacceptab1e
+Unaclogger
+Unaided
Unass1sted
Unassisted
Unavailable
Unbacked
+Unbann me
Unbiased
+UnboundLeaf
Unbreakable
Unc1e
+UncJo
Uncaged1776
UncagedOne
Uncandled
Uncel
+Uncel Ben
+Unchunk Man
Uncle
+Uncle Exci
+Uncle Julien
+Uncle Rocho
+Uncle Solo
+Uncle Somnus
+Uncle THC
+Uncle Trippy
+UncleBigBob1
+UncleCuckle
UncleDaddiii
+UncleGuy
UncleSlappy1
+Unclear
+Unclesam137
Uncode
UncomfyPants
Uncommon
Uncooker
+Uncool Gary
+Uncr3at1ve
Uncut
Uncy Duncy
Und3r0ath
Undead
UndeadElk333
+UndeadYenny
Undeadd
Undefeated
+Undelivered
Undeniable
Under
UnderExiled
+Underaged
Undercatt
Underlogged
Underoos
+Underrs
+Understars
Understated
Underverse
Undine
Undoubtful
+Undra
+UndrgrndSalt
Undulaatti94
Unemati02
+Unemployed
Unequalized
Uneven
+Uneven Mango
+Unexposed
Unfair
Unfearful
+Unfergetable
+Unfi
+Unfollowing
Unfriended
+Unfunno
+Ung
Ungolianty
Unhappy
+Unhapytuna
Unhealthy
UnhingedE
Unho
+Unholy Bains
+Unholy Cult
UnholyAbyss
Unholybucket
+Uni Mike
+UniQ
+Unicat
Unicorn
Unids
Unii
+Unik
+Unimaginary
+Unimander
Unintended
+Union Dixie
+Uniqlorn
Unique
+Unique Am I
Unit
+Unit Tests
United
+UnitedLeeds
Uniteds
+Unity 3D
Universe
Unkh
+UnkindPastry
UnkindledTwo
Unknown
UnknownBeing
@@ -24365,159 +49809,353 @@ UnknownValue
Unknownchuck
UnkoPlayer
Unkoly
+Unkownkiller
+Unlash
Unlds
+UnlimitedHC
+Unlit Sky
+Unlock Death
+Unluckerdile
Unluckers
Unlucky
+Unlucky Jord
+Unlucky lmp
UnluckyNGay
+Unlugy
+Unluigi
Unmasked
Unmaxed
Unmerkable
Unmoist
Unnerving
Unohdettu2
+Unomia
+UnorthodoxGF
Unorthodoxfo
+Unown397
Unprofitable
+Unread
+UnrealGecko
+Unrecord
+Unreliab1e
Unrot
Unruliest
Unsafest
Unsainted
+Unsavior
Unscuff
+Unscythed
Unseen
+Unshaven Cat
+UnstopFork
Unstrung
+Unsubscribed
Unsung
Untameable
+Unthinkable
Until
+Until Dawn
+UntrimCraft
Untrimmed
+Unus Divinus
+Unv
+Unwiii
Unzkiboi
+Uoziz
+Uozu
+Up N Ur Mom
+Up ya mom jr
+UpBad
+UpNorthCha
UpRoaRs
UpThaSaints
Upeo
+Upi
Uploading
Upluk
+Upper Four
+Uppercuts
+Uppotukki
Upriser
Uprising
Uproot
Upsi
+Upthe1rons
Uptime
+Ur Exp 2 Me
+Ur Obsession
+Ur a baish
UrASalmon
UrBabyzDaddy
+UrBoyBilbo
+UrDadsLov3r
UrJustXpToMe
UrMomLvedIt
UrNansMan
UrPureSucks
UrScr3wed
+UrSuchaShita
+UrWifeLuvzMe
+UrYe
UrZoggy
+Ura Juanker
+Uragaan Dude
Urakas
Urakkapallo
+Urallia
+Uran ium
Uranus
UrbanMerza
Urbdayy
+Urbn
Urdead
Urea
Urek
+Urekzera
+Urfe
+Urheiluiatka
Urheilujatka
+UricOddball
Urkchar
+Urked
Urkerhard
Urock16
+Uross
+Urotsuki
+Urpokarhu
+Urri
+Urs
+Ursa
UrsaOmega
+Urskog
Urthron
+Uru p
+UsainBloat
+Usb Doe Tin
+Usb Flies
+Use
+Use Tongue
+Use2bHC
UseToBeGood
Useable
+Usecsythang
UsedApplePie
+UsedLube
+UsedRubbers
Useless
+Useless Main
User
+User 27
UserApproved
+Useranme
Usos
Ussin
+UsualAntZ
Usva
+Utahime
+Utahn
Utareita
Utca
Utini
Utis
Utsuwu
Utter
+Utter Pleb
Utvisa
Uunijutsku
Uunipelti
+Uuo
+Uus kaust
Uuti3
+UwU Leo
+UwU Noctis
+UwU Otaku
UxXwpasdiioa
+Uzin
Uzot
+UzrielBoi
Uzunar
+V 3
+V 9
+V A K U
+V A L O R
+V A M 0 S
+V A N D E R
+V Bros
+V E F
+V E H
+V G
+V GK
+V Gamemaniac
+V L A D Y
+V Lestat V
+V NL
+V Nichushkin
+V OO D 00
+V R I L
+V e c n a
+V endetta
+V ergetend
+V ezi
+V i 1 e
+V r o l ij k
+V the Victim
+V-43
+V-EuSoto
+V-SaTanjiro9
+V-Tek
+V-olRagnarok
V043
+V0F
+V0WZ
V0XA
+V1BER
V2int5
V3NQM
+V3XY
V3lnias
V3n3natis
+V3rtigo btw
+V43
V4SKI
V4sia
+V5C 2
+VAIDUOKL1S
+VALH0WLA
+VALHA LL A
VALK0
VALORANTJETT
+VAMPYRlC
+VANlLLA RUM
+VB TINNS
VB24PK
+VBoss
+VBsec
+VDB Niffooo
VDHG
VEDA
VEGANDIET
+VEN0M13
+VENNY MOCKER
+VERYBANANNA
+VET DMaZ
+VHS or DVD
+VIAL1
+VIE T
+VIII
+VIIVII
+VIKING0
+VILIONKKAA
VLEERMUlS
+VODKANATOR
+VODs
VOIVID
VOREVERAIONV
VORKl
+VOlDWAKER
+VP N1ck
+VPSxSam
VPixels
VRScotty
+VS0P
VS367
VUNDA
VVDance
VVJuul
+VVS1
VVStoner
+VVade
VVanderer
VVarden
+VVeems
+VVhite0ut
VViggle
+VVilson
+VVinni
+VVintage
VVona
VVoods
+VW Crafter
Va1ynx
Vaal
Vaalbara9
Vaalberg
Vaandah
+Vaca Preta
+Vacant V
Vache
+Vache Verte
Vad3
Vader
Vado
Vaealin
+Vaelleruen
+Vaelte Peter
Vafan
+Vafthruthnir
+VagAngler
+Vagabond
+Vagina Bad
+Vahagis
+Vahagn
Vahidil
Vahlyte
+Vahn
+Vaikuttava
Vailokas
Vain
Vainis
Vaishe
+Vaisu
VaitkiS
Vaizki
Vajengo
+Vakstu
+Val Rex
+Val3ntlne
+ValOnMyChest
Vala
Valadrak
+Valarfax
Valaron
Valdevon
Valdomiro B
+Valdyra
Valendale
+Valentijn
+ValentinaLuv
Valete
-ValgeHunt07
+ValgeHunt09
ValheraUK
Valhk
+Valiant Nite
+Validde
Valiente
+Valienton
Valiiim
Valiralith
+Valirion
Valivill
Valknir
+Valkore
+ValkyraeS1MP
+Valkyrie btw
+Valkyrie xo
ValkyrieNora
Vall
Valliance
+Valliate
+Vallies
Vallk
Valluu
Valmar
+Valmora
Valo
+Valo Ville
Valo247
Valor
ValorantJohn
+Valorate
Valorisatie
Valorise
Valorpoint
@@ -24527,10 +50165,17 @@ Valverdi
Valxn
Valzar
Valzor
+Vam pire
Vamo
Vampeodia
+Vampire Bob
+Vampirehunt
Vampiress
Vampurr
+Vampyire
+Vampza
+Van Cold
+Van Hellsing
VanDarkhome
VanHeisma
Vanaic
@@ -24539,79 +50184,154 @@ Vandahl
Vandaine
Vandalize
Vandalized
+Vanderhek
+Vanderstorm
+Vandery
Vandetto
Vandmand
Vandorann
Vanek
+Vanek-26
Vang
Vanh0
VanhaKettu
Vanhal000
+Vanilla Best
+VanillaBum
VanillaDonut
+VanillaFlow
VanillaSwirl
+Vanillawaifu
Vanity
+Vanity Fair
+VanityNugett
+VanityRS
+Vanityyh
Vanja
+Vanja M
+Vanki
+Vannara
+Vanskid
Vanss
Vantiron
Vanupimphi
Vape99
VapeMonster
+VapeNGapeLLC
Vapeape1
Vaperan
+Vapid H
VapinTiger
+Vaping Cloud
+Vaporion
Vaporized
+Vapsjeeee
+Var Laslore
+Varamyr
+Vardorfister
+VardorvisSux
+Vardovish
+Varduka
+Varenagan
+Vargen96
+Vargo
+Vargrmoon
Variabulls
Varixed
+Varlanazz
+Varlot4
Varm
+Varm Kaffe
Varnilla
VarockVirgin
+Varonom
+Varpu
+Varradero
+Varro
Varrock
+Varrok Obama
Varroq
+VarrrokObama
Varsa
Varsii
+Varthon
Varulven
Varxas
Varz
+Vas R
Vasar23
Vasd
Vasdeffernce
Vaskapotti
Vaskekort
Vasquez
+Vassaa
+Vassago0111
+Vassal
+Vastrakal
+Vastuuvapaus
Vasuki
Vasyliev
+Vatenkeist
Vatix
Vauderus
Vaull
+Vault Hunter
+VaultTecs
+Vautumn
+Vaux
+Vava471
Vaveti
+VawnHeuf
Vaxx
+Vaxxil
+Vaxyr
VayQ
Vayda
Vaynon98
Vaz0r
+Vazier
Vazoo
+Vb Panther
Vbiqve
+VeKnow
+VeZuu
Veas
Vector
+Vedam
Veddunreal
Vedroulian
+Veecal
Veeena
+Veekkuu
+Veerpalu
Veersnof
Veetu76
Vefsn
+Vegabond
Vegakargdon
Vegan
+VeganFemboy
VeganVibes
Veganstho
Vegard
Vegas
+Vegas Gunman
+Vegas Mike
+Vege-Mauri
Vegeetta
Vegeta
+Vegeta MF
Vegetah
+Vegetas Veng
Vegetunks
+Veggie Mate
Veghan
+Vegitation
Vegito
+Vegito Meta
Vegolse
+Vehicle Tech
Vehms
Vehru
Vehtamin
@@ -24621,205 +50341,416 @@ Veinin
VeitiKKa
Vekie
Vekuuu
+Velaynx
Velbain
+Veld
Velegro
Velek
Velgreed
+Velhote
Veli
+Veli Iron
+Velikan
Veliki
+Velite12
+Velkennar
Velkija
Velli
Velmir
+Velociraptor
+Veloxrapt0r
Velreth
+Veltsi
+Velvetgunner
+Velvsy
+Velzun
+Vemba
Venado
Vendall2
+Vender
Venderik
Vendet27
+Vendum
+Venemies
Venenatis
+Venerate
Venereology
Venetsia
+Venfour
Veng
+Veng BTW
+Veng Me Not
+Veng Waster
VengDeezNutz
Venganza
+VengeMeDaddy
Vengeance013
VengeanceTR
Vengeancen
Vengeful
+Venizar
+Venkeltje
+Vennythizer
Vennyv99
Venom
+Venom Vegeta
Venom00
VenomTears
+Venomousbite
+Venomxkillz
+Venous Cobra
+Venpu
+Ventia
Ventile
+Ventril0qist
+Venus Nyan
+Venzdroid
Venze
+Venzy
+Veo s
Veos
+Verac Obama
+Veracs
Veracthus
+Veraen
Veratyr
+Verbac
Verbal
+Verbal Kint
+VerbalIrony
+Verbia
Verbo
Verche
Verdantys
+Verdoemd
Verdux
Vereco
Verelya
+Vereoris
+Vergi Drakan
+Veri Eze
+Vericity
+Verify
Verin
+Verissimum
Veritasium
Verity
+Verix
Verjj
Verkyz
+Verliax
+Vermachelen
+Vermeill
+Vermithrax91
+Vermont Iron
+Vermyapyre
+Vern29
+VernalTDevil
+Vernon
+Vernossiel
+Vernyxitas
+Vernz1337
Verokostaja
+Veromnis
+Verrario
Verrtus
+Verruckt
VersGrind
+Versacce
VersaceGuap
+VersaceSofa
Versalix
Versatio
Versily
+Vertigo 2
+Vertsu1
+Vervyyy
Verweel
VerxaRS
Very
+Very AFK
+Very Typical
VeryAvgRNG
VeryGoodRNG
+VeryLarry
VeryLilRng
Veryloo
Verysharp988
+Verywarm2246
+Veryx
+Verzicky
Verzik
+Verzik BTW
+VerzikDaCuck
+Verzika
Verzy
+Verzy Werzy
Vesal
Vesaris
Vesipiisami
Vesku
Vesley
+Vespina
Vespulia
Vesqu
Vesryn
+Vessim
Vest
+Vesta 1000
Veste
Vestergaard
+Vestorius
Vesture
+Vesunna
+Vetala
+Vetem
VeteranGamer
+Vetilation
+Vetinari37
+Vetionarian
+Vetr Skaoi
+VettePolle
+Vex Viper
+Vex Virus
Vex8
Vexare
+Vexed Viper
+Vexeed
+Vexer07
Vexero
Vexers
+Vexflame
Vexing
Vexinity
Vexrip
+Vexstrom
Veylantz
Veyron
Veysel
+VezTa
Vezka
+Vezon
+VgbndUnicorn
ViIlageIdiot
+ViaCarter
Vial
+Viallinen
Viat
+Vib3Ch3ck3r
Vib8
Vibby
Vibe
+VibeCentral
+Vibeke Gar
+Vibeology
+Vibes Check
VibesTooWavy
+Vicardi
+Viccuri
Vicente1111
+Vicenza 173
Vices
+Vicious Dest
+ViciousPawg
Vickies
Vicky
VictheStud
+Victimised
Victor
+Victor Dogg
+Victor Lim
VictorHo
+Victorize
Victorp75
Victoryw
Victreebel
+Victur
Vida
Vidacks
+Viddii
+Video Gamic
+Videogam3r
+Vidlmao
Vidy
Vidz
Viech
+Viema
Vienas
Viera22
+Viesker
Viesty
Vietnamees
View
+View Bot
View0
ViezNegertje
+Vieze Jongen
Viggi
+Vigi V
Vigilamus
+Vigly
Viguro
Vii23
+ViiPV
ViiViiVii
Viiduus
Viiiral
+Viikonloppu
Viiksi-Vallu
ViinaGoblin
Viinakramppi
ViisYsiKuus
+Vijand
Vijay
+VikSC
Vikat
VikeSkol
Vikerne666
+VikiLord
Viking
+Viking Dad
+Viking768
+VikingKnees
Vikingfe
+VikkiVance
+Viklok
Vikram
Viktor
+Viktor Wins
VilainLutin
Vilbeee
Vile
+Vile Arcane
+Vile Cabbage
+Vile Squid
Vileblood
Vilemaw
+Viliant
Vilke
+Villagers
+Villain Dude
+VillainLife
Villanovaguy
Villanovan
Ville
Ville921
+VilleGallle
Villix
Villllu
+Villosa
+Villrix
Vilnis
Vilty
Vilunki
Vimpsen
Vims
+Vin 08
+Vin B
+Vin Vista
+Vinaegre
+Vinbum43
+VinceBennett
+VinceOfMince
Vincen
Vincent
+Vincent D2
VincentDaMan
+Vincentimetr
+Vinceut
Vinchops
+Vindi IM
+Vindruen
+Vindruva
+Vinh y
+Vinish
Vinkmaster1
Vinland
+Vinloxx
+Vinn28
+VinnFrazz
Vinneh
Vinnie
+Vinnie Dabs
+Vinnie Pazz
Vinnie526
Vinny
+Vinny NZ
+Vinny Speedy
+Vinny Verac
+Vinny-G
+Vinnyaldo
Vinoloog
Vinopenkki
Vinostondis
Vinous
VinsanityGG
Vintage
+Vintages
Vintner
+Vinxe
+Vinxion x
Violas
Violent
+ViolentPudd
+ViolentToxin
ViolentWaves
Violetti
+Violon
+VipStar
Viper
+Viper Aurora
+Viper G40
VirZuk
Viral
+Virbatum
Virbliud
+Virelith
+Virgin Creep
VirginGirl
+VirginHunteh
+VirginUwU
+Virginism
+Viriato
VirtRemnants
Virtaheepo
Virtuaalnuss
+Virtual
+VirtualAhri
Virtuart
Virtuous
Virunypel
Virus
+Virus LSSZ
+Virus Soup
+Viruss
ViruzTehNub
+Virzik
VisagePlease
+Visarin
+Viscera
Viscx
Visdom
Vishno
+Vishnu
Visibly
Visigothic
Visine
Vision
+Viskan
+VismaBlet
+Vister
Vistopherson
VisuallyMatt
Viswiel
Vita
VitaLemonTea
VitaMineralz
+Vital Dude
+Vital Hope
+Vitality
+Vitamin See
+VitaminCnote
+Vithark
Vito
Vitor
Vitreous
@@ -24827,262 +50758,535 @@ Vitrified
Vitruvio2
Vitryssen
Viturbio
+Viturscy
Viva
+Viva La Vida
+Viva Mehico
VivaLaWeegee
Vivalask8r
Vivalla
Vivants
+Vivascape
VividAzura
VividDreamss
+Vivido
+Vivij
+Vivk
+VivziePop
+Vixca
Viyrew
Vize Senpai
+Vizima
+Viziyo
+Vjee
+Vk
VlBZ
+VlGGAN
VlNTER
+VlRAL
+VlVID
VlaamsePlank
Vlad
+VladTheBwana
+VladThePaler
Vlada
Vladek284
Vladi
Vladibjoern
Vladictorian
+Vlaendren
Vlambare
Vlast1n
+Vlncent
Vloxx
+VnG Lynds
+VnG Zenyte
+Vnce
VngH
+VnilaGorilla
+Vo Amice
VoHiYo_Nami
Vobia
Vocaloida
+Vodbi
Vodec
Vodka
+Vodka ice
VodkaBarrage
+VodkaBreath
VodkaPlz
Vodke
Voekus
Voetbalkous
+Vogefur
Vogues
+Vogven
Void
+Void Fanatic
+Void XVII
+Void-Cho
VoidMySoul
+VoidOnyx22
VoidWraith
Voidberg
Voidnight
Voidpaw
+Voidrow
Voidseeker
+Voidwaker op
Voittosumma
Vokon
+VolProMan
Volai
Volantis
Volary
+Volblaffen
+Volc
Volcan
+Volcance
Volcanos
+Volco
Volcwinder
Voldesad
Volgos
Volkert
+Volkie
Volkrah
Volkzy
Volmortt
Volrod
Volrum
+Volt
+Volt OSRS
+Volt268
+Voltimolt
Voltz Tzkek
Volucris
+Volunteer
Volux
+Volzo
Vomiting
+Vomiting Cat
+Vompiainen
Vomuao
+Vomure
+Von Beck
+Von Dylan 2
+Von Locke
+Von Reibnitz
VonThaine
Vonbony
Vonderhaar
+Vondoom
Voneirus
+Vonhinten
Vono
+VonoV
+Vonschatten
+Vonsv
Vonty
VooLis
VoodooCells
Voodookie
Voorheees
Vopi
+Vor The Ape
VorGole
Vorare
+Vorarlberg
+Vorcan
+Vorikar
Vork
+Vork Planker
VorkathsMate
Vorki
VorkiAlt
Vorkscaping
+Voroth
Vorpal
Vorpeo
+Vorsamu
Vorschlag
Vorso
Vortob4
+VosOc
+Voss V2
Vossen
+Vosty
Voted4Kanye
+Vovi
+Vox Whoppa
+VoxMachina
Voxna
Vozion
Vpdz
+Vrauri
Vrayl
Vreaper
Vref
+Vrekked
Vriendschap
Vriix
+Vrijer
+Vrillionaire
+Vroeg
VroomMasheen
Vrzn
+Vsian
Vsmoke
+Vsnn
Vt Flavourss
+Vt99
Vuallis
+Vubbe
+Vud
Vueko
Vukodlak
+Vuku Doll
Vulcan
Vulcant
+VulcunLogik
Vule
Vuleka
+VulfRS
+Vulia
+Vulklet
+Vulm
+Vulo Lives
Vulp
Vulpes
+Vulpes Audax
+Vuohi
Vurx
+Vurzik
+Vus
Vusa
+Vuto
+Vutox
+Vuuln
Vuur
Vuuututututu
+VvM Otter
+Vxmm
+Vxus
Vyagruhh
+Vyaraeaen
Vyaza
Vyby
+Vycarious
Vycos
+Vyluxian
Vymera
Vynlx
+Vyrelady Em
Vyrza
Vysaraine
Vyseri
+Vytauts
+Vyukris
+Vzb
Vzla
+Vzr
+W 0 R D
+W A G M I
+W A G U S
+W A V V E S
+W E K A
+W I L L 777
+W I N 3 D
+W J M V
+W L F
+W O W S K I
+W Rizz
+W a r s
+W ak
+W amo
+W anted
+W e r
+W elfare
+W i i
+W i l l y
+W i r e tap
+W ifi
+W iggly
+W illy
+W ilmer
+W l S E
+W ll Z A R D
+W olf
+W orx
+W-2 Form
+W-A-M-M-E-R
W00D
+W00DINTUNA
+W00X W0N DMM
W0MB
+W0RY
W0SS
W0fle
W0nderwall
+W0t Rng
+W141 Legends
W1ETzakje
+W1F
+W1G
+W1Z3
W1ldman
W1nch
+W1ngedDragon
+W2P_III
W330
+W349
W370
+W3SL3T7
W3ST0RZ
W420
+W489
W4R3
+W4T3RM3L0N
+W4Wumbo
+W56
W5O7
W7uQs7s1uKyS
W7uQsTu1KsyS
+W8 letme pot
+W88SSKILLER
+W8ST UF TIME
+W8ing4Name
+W91 forever
+WA2
WAGINGWARS
+WAKANDA JEFF
WAKEUPSWEATN
+WAP Munchlax
WAQQQ
WARLOCKTIN
WAZABl
+WAxsTAche
+WBA Scott
+WBMA
WE0DEND
+WE3N
+WEEDY Woody
WEGOINGCRAZY
WEGSIR
+WFH Gains
WFTWP
+WG Affect
+WGWGWGW6W6W6
WH1TECHAP3L
+WHITE E92
WHITEEEEEEEY
+WIMThighs
WINNINGrng
+WIRE PULLING
+WISEB0LDMAN
WIZRD6
+WLJ
+WM94
+WMAF
+WMATA
WO0DSIE
WOMYNAREDUMB
WONT
+WOOGLlN
+WPNsuper
+WS Hubris
+WS Kyzza
+WS Phora
WSOP
+WTB GF 1 GP
+WTF No Luck
+WTF S7VEN
+WUDS
+WV Boi
+WW I
+WW2 Champs
WYBD
+WYD STEP M0M
WYDStpSis
+WZ95
Wa Wa Master
+Wa t
WaIk
WaVy
+Waaaan
WaaduuuHek
+Waafty
Waager
+Waai Do
+Waassssaaap
+Wabanaki Son
Wabbert
+Wabo
+Wack Sparrow
+Wackabie
+Wacko Swaami
Wacoltx
Wadbot
Waddlez
+Wadee
Wadeo369
Waderik
+Waem
Wafcfreak
+Wafe
+Waffle Cone
+Waffle Jr
Waffleboy
+Waffleici
Wafflekin
Waffles700
+WafflesYo
Wagada
+Wagblump
Waggit
WaggsTheDog
Waggz
Wagit
Wagn1984
WagnBurner
+Wagyu
Wahb
Wahido11
+Wahpahp
Wahpan
Waifuism
Waifus
WaikatoChris
+Waikit8
+Waine
Wait
+Wait Quick
+Waitforit14
Waitin
Wajiiro
Wake
+Wake Boarder
WakeAndDrake
+WakeUpF1lthy
+WakeUpGirl
+Wakey Wines
Wakisaka
+Walborg
Waldrin
Waldron530
+Wales164
Walker
Walkin
+Walkofshane
WalksOG
Walktellfox
+Wall-enberg
Wallabies
+Wallabillah
+Wallace D S
WallaceTusk
+Wallah Krise
+Wallah Lag
+Wallahper
Walleen
Wallerz
Wallex
Walli
+Wallstboi69
+Wallsunny
WallyGator
Walnutt
+Walo CZ
+Walpie6
+Walsamer
Walshy
Walshy00
Walshyo
+WaltJnr
Walter
WaltersPub
+Waltt
Waltzz
Waluigi
+Walzu
Wampire
+Wan E
WanPanMan
Wandel
+WanderTheSee
Wandereer
+Wanem
WangSohLong
+Wanhe
+Wanistan
Wanna
WannaBeE-tje
WannaGetABag
+Wannebet
Want
Want2beIron
Want2mess2
+WantTacos
Wantsome909
Waonnman
Wapf
+WapitiSmackr
+Wapol
Wapsi
+War Dwr
+War Force
War12Ready
WarFawk
+WarHawKVJ
WarOnOurMind
WarSoc
+War_x
Warbler
Warchee
+Warcloud
Warclown
+WarcraftOSRS
Ward988
Warden
+WardensFe
Wardle101
+Wardless 1
+Wardy791
+Ware Adelaar
Warfeh
+Warforged
Warg
Wargames11
Wargowitto
Warhammer70
WarheadZ91
+Warking 5099
+Warlolz
Warlord
+Warlord Kek
+Warlord Oli
+Warlord Papi
+Warlord Sage
+Warlord Tyth
Warlordjinx
Warm
+Warm Alfredo
+Warm Beer
+Warm Donuts
+Warm Pasta
+Warm Pillows
WarmLoaf
WarmManBlast
Warmantus
Warmly
+Warmongoloid
Warmouth
Warnac
+Warney
Warnings
+WarpedDeath
WarpedMatrix
Warph
+WarrgMG
Warrior
-Warrior07rs
+Warrior09rs
WarriorHome
Warstroy
Wartika
@@ -25092,41 +51296,66 @@ WartoysCandy
Wartt
Warwick 1080
WasHcimLoL
+Wasabeh
Wasbeertjes
WashMachine
+Washed CJ
Washyleopard
Waspoeder
Waspraa
Wasserohne
Wassillie
+Wasstyr
WasteOfBond
Wasted
+Wasted Toxic
+Wasted Xj
+WastedSpecs
+Wastedgr1ny
WastingTicks
Wastinmylyfe
Wastoid
Wasup725
+WasupMyBwana
Watafara
Watamei
Watamelun
Watanuki
+Watardid
Water
+Water Skink
+Water-T
Waterbender
Waterbury
+Watercress
+Waterdrop
WatermelonTV
+Waterpijp
+WaterrBoy
+WatersHorse
Watertodt
+Waterwraith
Watr
Watschi
Watson92
Wattledaub
WattsyMain
+Wattua
Waugh
Waulez
Wauzemaus
+Wave 10
+Wave 69
WaveBtw
WaveSkill
WavesOnMars
Wavezz
Wavy
+Wax Dabs
+Wax i
+Waxby
+WaxbyDonkey
+Waxing Sun
Waxtap
Waxy
WayOfKings
@@ -25137,119 +51366,240 @@ Wayabove
Wayde
Waydens
Wayert
+Wayfarers
+Waylor
Wayne
+Wayne1149
WayneBretzky
+WayneMain
WayneStated
Wayney
WayofWonder
+Waypanaator
+Waypastfear
+Wayt
Wayward
+Wayward Soul
+Waza131
Wazp
+Wazup31
Wazupfighter
Wazzlewop
+Wbd
+Wcrocks
Wcs139
+Wct
+Wdfamidoing
+Wdges
+We B Trollin
+We Feed
+We Grinded
+We Guard
+We Love Dogs
+We Tad
+We The Team
+We sley
+We0921
WeAllGucci
WeAreDoomed
WeAreGroot
WeAreMoksi
WeChat
+WeDaBstMusic
+WeLoveToB
WeRageAsTwo
+WeTheCha
WeTsHaDoW
+WeWanking
+Wea Boo
WeaIth
+Weak Iaugh
+Weak Mindset
+Weak Terror
+Weak Wrists
WeakLesss
+WeakSpot
Weakcob
Weaker
+Weaki
Weaky
+Wealth herbs
Wealthy
+Wealthy Pro
+WeaponNovice
WeardBeird
Wearwolf
Weasel07
+Weasel09
WeaselToast
+WeaselTuco
Weaselious
+Weatherwatch
+Weatherzx
Weav
+Web 2
Webb
+Webbe
+Webben
Webdow
Webs
Webstar
+Webtastic
+Weby Elite
Wecanmakeit
Weddn
Weder
WedhusGembel
+Wee
Wee Seapy
WeeDRekT
+WeeMissSlays
+WeeWab
Weebcrusher
Weebmurderer
Weed
-WeedDoctor
-WeedOverWax
+Weed B0Y
+Weed Barrage
+Weed Farm
+Weed OG
+Weed PhD
+Weed Strains
+Weed VIII
WeedWizzard
-WeedleSmoker
+Weedbucks
+Weedle
+WeeeWoooo
+WeekndWorior
+Weel
Weelechts
WeenieHut
Weeperz
+Wehby3K
Wehsing
+Weichey
Weight
Weighting
+Weightless
Weighty
WeirdChimp
Weirhere
+Weis578
+Weistalief
Weki
WelbyBree
+Welcome
+Welcome Beck
Weld
+Weld Arc
Weldar
+Welfare PvM
+Well Done
+Well-ChromeD
+Wellar21
Wellbutrin
Welld
Wellfence18
Wellpower10
+Wellrun1076
+Wellschit
WellyWonka
+Weloy
+Welp
Welsh
+WelshNProud
+Welshfuryy
Welshhy
+Welshy 07
+Welshy94
WelshyRhys
+Wemh
Wench
+Wendy Page
Wendyy
Weng
Wenja
Wenkey
+Wenzhou
Were2341
+WereWaffles
+WereWolf II
Werebanana
+Werk
+Werknemer
+Wermin
+Werrett
Werrtus
+Weru
Wery
Wesh
Weshzz
Weslee
Wesley
+Wesper
Wessen
+Wesss
West
+West Mids
+West Shiv
+West Tigers
+West Varrock
WestFlag
WestTxBoyz
+Westardythot
Western
+Western PA
WesternBlot
Westleafer
Westly
Westwich
Weszie
-WetAssPenis
+Wet Boxes
+Wet Garbage
+Wet Land
+Wet Ottr
+Wet P
+Wet Sneeze
+Wet Thot
+Wet and oily
WetDreamMeme
WetForPet
WetRnG
Wetex
Wetone2880p
+Wetta
+WetterPussy
+Wevile
Wexom
+Wexs
+Wexxorz
Weyerbacher
Wezl
Wh1teSox
WhaIe
+Whaddup
+Whag
Whai
Whale
WhaleeWatch
+Whaletorsk
Whalkatraz
+Whamburgers
+Wharebadjer
Wharncliffe
+What Da Hell
+What if
WhatASpoon
WhatAThot
+WhatAreDrops
WhatItDoBoo
WhatSheZed
WhatTheDaze
Whatapure101
Whats
+Whats Canada
+Whats Good
+Whats Reddit
+Whats Trade
WhatsHonour
WhatsRsSober
WhatsThisRNG
@@ -25260,263 +51610,501 @@ Whavenlad
Whaxt
Wheatleyprop
Wheel
+Wheelchair
+Wheelied
Wheelies152
+Whees
+Wheesnaw
WhenPigsFly
WhenRuneLife
WhenYouCute
Whensfull
+Where is GE
WhereAreWe
WhereIsPeace
WhereTheCats
+Whereisme7
Wheremeballs
+WheresMyPets
+WheresMyPurp
+WheresMyRNG
WheresPurple
WhersMyPet
Whesh
Whey
+Whey God
Whiff
+WhiityTosser
WhilyWhip
Whimsicat
Whina
Whinnie
+Whipppy
WhippyMong
Whipsaw
Whiskerfish
Whiskey
+WhiskeyWhip
WhiskyVault
Whiskywayne
Whisp3r
+Whisper_2
Whitah
White
+White Beauty
+White Mage
+White Mantis
+White Owl
+White Rnger
+White Shark
+White Soul
+White Wolf
WhiteBTW
+WhiteBoySam
+WhiteChuky
+WhiteCricket
+WhiteDeathh1
WhiteMagnet
+WhiteMaleHre
WhitePilled
WhiteProdigy
WhiteWolf216
WhiteZephyr
+WhiteZetsu
Whiteboy016
+Whitecoast
+Whitecrow
Whitefire68
Whiteflashh
Whitemambz
+Whitetoes
+WhizsuJr
+Who Add
+Who Nose
+Who8mypaint
+WhoDatDJ
WhoDoICatch
+WhoHaxdMe
WhoLikesIron
Whoa
+Whoa Gaming
WhoaKemosabe
Whole
+Wholelottabk
Whomp923
Whomst
+Whomst MD
Whoratile
+Whorrid
Whos
+Whos Jo3
+WhosUrDabby
+Whosjason
Whosyourmac
Whothehell
+Whruum
+WhtKndofCake
+WhteLilySeed
Whuo
Whurse
+Whurse Meat
+Why 8ank
+Why Play
+Why SkaR
+Why Try Guy
+Why are u ge
+Why u N0ob
WhyBank
WhyCantIPick
WhyIsRumGone
+WhyNevaLucky
+WhyRyan
WhySleeping
+WhyTryAtOsrs
+Whyase
Whydoubother
+Whymcie
+WhyteGoodman
+Whyto
+Wibbity
+Wibbix
Wibbleforce
Wicea
+Wichel
+Wick3d Bet
Wickaboag
WickedKlowns
+Wict
Widdly
Wide
+Wide Client
+Wide Vibe
+WideBoyy
+WideDommy
Widmee
+Widows Kiss
+WiebMasterly
Wiebah
Wiebere
Wiebren
Wiebstar003
Wiegedood
+Wielebny
WienerWipe
+Wierie
+Wiesel
Wife
+Wife or RS
Wifi
+Wifi Beater
+Wig Lops
WigWacker
Wigan
WiganRS
+Wiggety
Wiggie
WiggleMcTuff
Wiggly
+Wiggly Woo
Wiggoth
Wigins
+Wihbane
+Wihwy
+Wiigg
Wiiillllsonn
Wiiize
+Wiji
Wijji
Wijsheid
+Wikas1337
+Wiki Flipper
WikiLiex
WikiWorm
+Wikinger
Wikingpedia
+Wikked
+WikuliK
+Wilby
Wild
+Wild Bill 71
+Wild Clicks
+Wild Cowboys
+Wild Fury
+Wild Orange
+Wild Pump
+Wild Raven
Wild Rivers
+Wild Spirit
+Wild Squidi
+Wild Stylez
+Wild Whim
+Wild chickie
WildAbandon
+WildGothGirl
WildSF
WildSnorlax
+WildTokes
Wilda83as7
Wildapple
+Wildbasher
Wildboy181
+Wildcard
+Wildcatface
+Wilde Bizon
Wildfire
Wildlands
Wildly
Wildmon
+Wildy Back
Wilk
Will
+Will Compton
+Will Smif
+Will T
+Will i b
+Will man
+WillCosby69
WillG
WillNight
+Willasaurus
WillfulNomad
WillfulTiger
+Willi
William
+William Way
William2133
+WilliamChris
Williamsburg
Williamwrc
+Williamwurld
+Willianderma
Williard
Willicous
Willie
WillieP
+Willlowsap
Willo
+Willoweeper2
Willowisp
+Willsy_828
Willy
WillyMonka
+WillySneeze
WillyTickles
WillyVanilly
+Willyams
Willymule
WilmaCokfit
Wilnafe
+Wilpu
Wilro
+Wilso
Wilson
+WilsonBro
WilsousGoods
Wilters
Wiltings
+Wilwork4stuf
Wilza
Wilzy
Wimm
+Wimpy Hulk
+Wimpy Worm
+Wimpy127
Winanda
Wind
+Wind River
+Wind the ham
Windal
+Winded
+WindexWipes
Windi
+WindmillBoy
Windowpie
Windows10
Windrun
+Winds Tormnt
Windwaker
Wine
Wineapple
Winedolphin
WinexBlaze
+Wing Daddy
+Wing Reaper
+WingToe
Winged
+Wingedlemur
Wingednebula
Wingknutts
Wingless
+Wingman Skre
Wingmanfire
+Wingmastah
Wingnut
Wingnut277v2
Wingoficarus
WingsXIcarus
Wingz
Wink
+Winner Chris
Winner1Class
+Winning Life
Wintage
+Wintaj
Winter
+Winter Slays
+Winter Woede
+Winter mage
Winterpropht
+Wintersaurus
+Wintertarwe
Wintertoad
+Wintis
WintonOS
Winze
Wipe
WipeRZ
+Wippy Spuds
Wipzed
+Wirbi
Wirusas14
+Wis
+WisCheez
Wisdem
Wise
+Wise Andy
+Wise Bloke
+Wise New Man
+Wise OlMan
+Wise Old Guy
+Wise Old Roy
+Wise Pug
+Wise Up
+Wise9884
+WiseBlackMan
WiseOIdMan
WiseOld
+WiseOldCam
WiseOldNeef
+WiseOldNut
WiseOldSimp
+WiseOldWench
+WiseYoungOne
+Wish
+Wishen
Wishidie
+Wishies
+Wishwandewe
+Wishy Walshy
+Wispa
WispyWolf
Wissfx1
+Wisundaz
Witch
+Witch Aileen
+Witch Elf
+Witchkraft
+Witchprick
+Witchz
+Witeout LLC
+With Skills
Witha
+WithoutAGe
+Witicism
Witkus
WitlessFox
Witness
+Witte
WitteLijnen
Witteri
+Wittu
Wittytoad
Wixsie
Wixxa
+Wiz master
WizKaleeba
WizKawifa
Wizard
+Wizard Weird
+Wizard of Oz
Wizard012345
+WizardFish11
WizardIRL
WizardKing
WizardMascot
WizardSleeve
+Wizardmatt6
Wizardspike
Wizfujin
Wizidross
Wizreefer
+Wizyweirdo
+Wizz Z
Wizzie
Wizzti
Wizzy
Wizzypoop
Wizzzard
+Wkd Br0
+Wkedjester
+Wkndr
WlLDERSGEERT
WlLL
+WlLL1am
WlLSO
+Wlatt
Wlsperingeye
+WnB
WnnB
+Woadblu
Woah
+WoahDudeNice
Wobbery
WobbleyPOP
+Woblin
Wobos
Wobs
Wobufett
+Wocka
Wocky
Wodka
+Wodka Orange
+Woe Woe
Woedipoe
Woemance
+Woeppa
Woes
Wofford
+Wofford2
Wohdii
Wohrx
Woikaz
+WojoWins
Wojtas
WokeUp
Wokkel
+Wokki
Wolf
+Wolf Berserk
+Wolf66
WolfApple
WolfLucifer
Wolf_Hunter
Wolfazal
Wolfboi70
Wolfboy1209
+Wolfden95
Wolfeena
Wolferno
+WolfgarrX
+Wolfgarth
Wolfhearth
Wolfie
+Wolfie Daddy
Wolfiezzz
Wolfinger
+Wolfique
Wolfjob
Wolfman
+Wolfman00777
Wolfmans
WolfnBane
WolframOxide
Wolfshade
Wolfshook
+Wolfspeed
Wolfy3777
Wolfz
Wolles
+Wolq poW
+Wolverine V8
Wolvesy
Wolwa
WomanScorn
+Womaz
WombatLife
+Wombats
Wombayaga
+Won Alll Day
Wonderful
+Wondo
+Wonka44
WonkyShlonky
+Wonn
Wonnawonka
+WonterJodt
+Woo Hee
+WooGGi
Wood
Wood Choppin
+Wood Scimmy
+Wood Style
+Wood VI
Wood4all
WoodJablowm3
Woodcrest
+WoodcutterQw
+WoodenSword
Woodland
Woodsboro
Woodson
@@ -25525,31 +52113,57 @@ WoodsySmells
Woody
Woody540
Woody8
+WoodyBussy69
Woodys
Woodz90
Woof
+Woof Woof Jr
Woofaire
+Woofi
Wooh
+WookieBread
+Wool Socks
+Wool Tar
+Wooli
+WoollffMain
Woolly
+Wooo Blod
+Wooody125
+Woooglets
+Wooogy
Wooooo91
+Woopie Doop
Woopsx10
Woopuh
Woord
+Woorm
+Woos
Woosa
Woot
Woowoh
Woox
+WooxFromWlSH
Wooz
Woozie400
+Wophel Iron
Word
+Word Bird
Word2urmum
+WordCheck
Work
+WorkUkko
Workahaulix
Workath
Workin
+Working Man
+Working Poor
Workouts
Worland
World
+World 46
+World 526
+World 61
+World Of Rat
World345
WorldEndero
WorldWarTwo
@@ -25559,23 +52173,39 @@ WormInHeaven
Wormeater66
Worms
Worning
+Worning Mood
+Worst Herp
+Worzo
Worzord
+Wosby
Woshy
+Woste
Wostyn
WotCee
+Wotnel
+Woudie
Woul
Wounded
+Wounds
Wourlow
WouterMarni
+WouterPils
Woutertje
+Woutertje 93
WowAUnicorn
WowDerek
+WowoW
Woww
Wowzer1482
+Woz X
+Wozi
+Wozol
Wozzah
+Wozzy
Wqlq
Wrackbar
WraithSx
+Wramn
Wrap
Wrap5
Wrath
@@ -25583,11 +52213,17 @@ Wrath0fMath
Wrathchildxd
Wrathinsea
Wrav
+WreXham AFC
+Wreck These
+WreckAndRoll
Wreckage
Wreckanism
+Wrecked
Wreckfull
Wreckin4Days
Wreckon
+Wreckonize
+Wrecky
Wreckzu
Wrekdum
Wrektem
@@ -25595,141 +52231,283 @@ WrektumRalph
Wrenny
Wrigzer
Wrijo
+Wrinkle Meat
Wripzi
+Writing
+Written
+WrmFzy
+Wroggi
Wrong
+Wrong Focus
Wrot
Wruumze
Wryd
+Wrynn
Wsupden
+Wtf Burgers
+Wtf Bwana
+Wtf Is Elmo
+Wtf Michael
+Wtf happen
WtfJad
Wtf_Stake
+Wtfisabook
Wtfxcreepy1
+WuLuZ
+WuTangDan
WuTangRs
WuTangflame
WubbaRs
Wubj
+WuceBrayne
+WuckFeeaboos
Wucky
Wudkip
+Wueu
Wuhan
Wulfeh
Wulkanaz
Wullets
+Wulong Rush
+Wumbolii
+Wumox
Wundy
Wungz
+Wunk
+Wuntch Meat
Wur1
Wurgon
Wurj
+Wurrior
Wurstfest
Wurtziite
Wuteng
Wutlife
Wutru
+Wutta Beast
Wuuluu
+Wuz H
Wuzn
Wuzzi99
Wwalrus
Wwarlock
Wxll
Wxyz
+Wy 1853
Wyan
Wyard
+Wyatte
+Wybb
Wybo
Wyborowa
+Wyd
+Wydie
+Wyel
+Wyiphi
Wyldar
WyldeKirito
Wylie
Wyliecoyote2
Wylyne
Wynand
+Wynmao123
WyoFletch
WyrdStoned
+Wyrlor
WyvernBreath
+WyvernMage
WyvernSlayer
+Wz Karmish
Wzurd
+X X V
+X 0H
+X Axis
+X Bullet X
+X Dsmith X
+X E L E X
+X E R 0
+X Ecuted
+X I L E
+X Ice Break
+X Japan
+X King Jehu
+X Landie X
+X Mars
+X Mathiew X
+X OUT OF RS
+X Robert X
+X Rorschach
+X SUR X13
+X Seabridge
+X WAVE 70 X
+X Y P O
+X e x i m
+X pelz
+X-Jabs
+X-Man
+X-SVNTH
+X0N3X
X1xfa11enx1x
+X65
+X9Y
XAAXAA
+XANSEB
XARlQUE
XATHD
XAyYxlMaOxX
-XB0NG
XCShark
XCortezX
+XD XDDD XD
XD8D
+XDQ
XDamage
XERTNARG
+XESPIS
XEback
XFitVapeVegn
+XHCD
+XI J
+XI5
+XIBT
+XIX Zeta XIX
+XIXIXIXVXIVI
XIXXI
+XJT
XKappaX
+XL Peen
+XL Succ
+XL itikka
+XMR
XNovaCainX
-XNublord69X
XOBLIN
XORB
+XP All Night
+XP Hobo
+XP Jake
+XP Thieving
+XP for gains
+XPOQ
+XRP Glandorf
+XRV
+XRay Mike
+XS3X
XSandwich18
XSapocalypse
XTCarlo
XTIF
XUJ0RKI
XV73J
+XXGrimorgXX
+XXTENTACI0N
+XXaan
XXera
+XZoTicTB
+X_Ouchies_X
+X_Streetz
+Xa1e
Xaaan
+Xaberphel
+Xadia
+Xaeram
Xafirox
+Xahp
+Xaint
+Xalastar
+Xalcvs
Xalrir
+Xam Renz
Xambitz
+Xamphion
+Xan Gogh
+XanaxXR
+Xandahr
+Xandayn
+Xanefeo
Xanfan
Xann
+XanomaliuX
Xanq
Xanthophylle
+XanthousKing
Xantiasto
+Xar
Xarigue
Xarious
+Xarkus
Xarnathos
Xarov
+Xarpus Decay
+Xarqn
+Xartes253
Xaryn
Xasdaxs
XaskiM
+Xasthur
Xatar
Xaud
Xaussiemaulx
Xav777
+XavieerL
Xavieerr
Xayrus
Xazz12
Xbalan
Xbogaerts
Xbox
+Xbox Account
Xbox kid 99
Xboxkid33
+XcL ady kila
XcalenX
Xcalumet
Xcelorin
Xcuuuse
XeNeaxaxa
+Xebstrika
Xecki
+Xedoria
Xeem
+Xeet
+Xefi
+Xefn
Xelas
Xelcab
Xeldin
Xelian
Xelzathar
+Xemnax
+Xems
Xen0phyte
XenaDior
Xenastry
Xendel
+Xenece
Xenethos
Xenfire
+Xeniat
+XenithStar
+Xenlon
+Xennofobia
+Xeno X Human
Xenofiel
Xenofile
Xenoforms
+Xenorith
XenoviaZhao
+Xenria
Xenses
Xentric
+Xentric I
Xenzah
XeoX
Xeqo
Xeretus
Xeric
Xerics
+Xerics Exile
+Xerics Solo
+Xerile
+Xerkom
Xerloz
Xero
XeroBlitzAce
@@ -25739,15 +52517,25 @@ Xerona
Xeroscape
Xerosenkio
Xeroso
+Xerphias
Xertrius
+Xerxe
Xestox
-Xev0n420
+Xetarillos
+Xewne
+Xeyler
Xfebruari23X
Xflowerz1
Xgen2004
Xghostbx
XgodofironX
+Xhaloz
+Xhq
+Xi Bogan iX
+Xianerth
Xiang
+Xiang Ying
+Xiao Wei
Xick
XicoDoAnzoL
Xidos
@@ -25755,19 +52543,37 @@ Xielt
Xiff
XigZig
Xiglaan
+Xijaxer
Xilamz
Xillious
Xilphy
XinXani
+Xinbonddon
Xinck
Xiom
+Xiphoz
+Xipi
+Xipo
+Xirenia
+Xists
+Xityx
+Xiuol
Xizor
+Xizxuka
Xizz
+Xj Driver
+Xl Pat lX
+Xl Tango lX
+Xlarss
+Xlogmore
+Xmas Santa
+Xmasvibes
Xmerl
Xnam
Xname4
Xniklaz
XoXdr34mzXoX
+Xofal
Xoir
Xojix
Xolca
@@ -25779,320 +52585,739 @@ Xoobs
Xorphas
Xorx
XoutofRunes
+XpTitan
+Xpect2die
Xpelz
Xperiencer
Xplay2slayX
+Xplicits
+XploitClamps
+Xpm
+Xpreme
+Xqcksilverx
Xqkiller
Xquick
+XrRipple
Xsk1l3rX
Xskillz
XslayerkingX
+Xsy
+Xtan
+Xterioz
+Xternal VZ
+Xteven
+Xth
+Xtian
Xtopheris
+Xtreme Kill
+Xu
+Xu3
+XuRuP1Ta
Xufo
Xuhe
+Xulaa
Xulreh
Xupafion
+Xuro
Xutera
+Xuxe
Xuxy97
XvalQ
+XvalentiX
XvegetaX
Xvim
+Xwb
Xwoprl
+Xx A ll y xX
XxBABY
+XxBriDGExX
XxCoponerxX
XxJIMBUSKID
XxKaakkimusx
+XxMOPExX
XxPoliSwagxX
XxRXZ60xX
Xxhel
+Xxpyroxx20
XxrigourXx
+Xxsagexx30
+Xyagrius
+Xylarium
Xyler
Xylr
+Xylym_pilot
Xymox
Xynamic
Xyrath
Xyresic
Xyryu
Xyzcanon
+Xz8
Xzavier
Xzil
+Xzpect
+Y DynHaearn
+Y Fx
+Y O D A
+Y O K A I
+Y arok
+Y ellow
+Y em
+Y ogo
+Y oshi
Y0N3
Y0l0mees
Y0usless
+Y2K38
+Y2k Survivor
Y3RBA
+Y3w
+Y4P
+YBank_Mak 69
YCTH
+YCantPigsFly
YChewyYOS
+YEEEZY
YERTII
+YExTI
+YGBigTank
+YKW
+YM
+YMJFL
+YNW Kushy
YOKiki
+YONGWOLRANG
+YOOOH JOEE
+YORJ
YOTJ
YOUR
+YOURMOMSMAN
+YS3
+YSL
+YSL for Life
+YSinpo
+YTPO
YTrySoHard
+YUSEF
+YWM
+YYST
YYose
+Ya Boi Suff
+Ya Boy Lachy
+Ya Boy Ryan
+Ya9
+YaBoiCrisps
YaBoiSlip
YaBoiWestie
+YaBoiiQuan
YaBoyCosmo
+YaDoons
YaLilMupp1t
YaOldHeffer
+YaSillyRAT
+Yabai
+Yabbary
+Yabbie Pump
Yaboiskee
Yaboitrek
Yaboku
Yabui
Yachi
Yachiri
+Yackill
+Yackity Yak
+Yackley C
Yagyu
+YahRamen
Yahe
+Yahtz3
Yahtz3e
Yahya10100
Yaik
+Yaimzz
+Yak Elves
+Yak of Iron
YakYak
+YakimaValey
+Yakka Stacka
Yakosu
+Yakushima
+Yakuza
+YakuzaDragon
+Yalazar
+Yall Raycist
Yalloune
Yalomi
+YamR6
+Yama XCII
Yamagata
Yamakato
Yamata
Yamda
Yami
+Yami Bakura
+Yammed
Yampay
+Yampay II
Yamsaretasty
YanKeDooDle
+Yand0
Yang
Yangtze
Yangus456
Yani
+Yanilla
+Yanilla Kush
+Yank on This
+Yankee Run C
+Yann78
Yannick177
+YannickH
Yannis
+Yao Yo Xin
+Yaossynx
+Yaprakdal
+Yardi
+Yarfn
Yaribel
Yarne
Yarny
+Yaseki
+Yasen 105
Yasuos
+Yasuuo
Yato1God
+Yaukai
Yauz
Yavrum
Yawan
Yawgg
YawningPanda
+Yawp
+Yaxfe
YayItzTyler
+Yaysuo
+YazanBates
Yaziro
Yazo
Yazuki
Yberi
Ycinho
+Ydmyk
Ydorog
Ydrasil
+Ye Magekilla
+Ye Mate
+Ye Olde Ace
+Ye Olde Ned
+Ye Olde Oak
+Ye ti
YeBankWicked
YeBoi
+Yea UrBanned
YeaAiiiiite
+YeahIMineIM
+Year
YearUp
YeastPocket
YeastyPussey
+Yeblehs
+Yechs
Yeda
YeebusGeebus
+Yeeeeehaww
Yeeetist
Yeeetscape
+Yeern 101
Yeeska
+Yeet Dan
+Yeet Thyself
YeetMemes
+Yeeted One
+Yeetu
+Yeezy
YefTalks
Yefim
Yehtii
Yeiw
+Yek
Yekhsad
Yekouri
+Yeland
YeldariIII
Yeli
+Yelling
YelllowFlash
Yellow
+YellowForest
+Yellowfox21
Yellowhoody
+Yem o
+Yemly
+Yemrisnen
+Yenie
+Yenil
+Yenofthunder
Yenom
Yentelke1998
Yeoubi
Yeoz
+Yep Cup
+Yerbal Tea
Yerd
+Yeren
Yerico Tsu
Yerkinoff
+Yerm da worm
Yeroen
YerrBanned
+Yerradu
Yerrrrey
+Yes Click Me
+Yes No Maybe
YesOk
+YesYesYall
+YeshuaShalom
+Yeso Pro
Yessir
Yesze
Yetagaindied
Yeteri
Yeti
+Yetiburger
+Yetlon
+Yetsu
Yettiez
+Yetzne
+Yevop
+Yevral
+Yew 2
+Yew Burn
+Yew Root
+Yew Tree
+Yew Wu
+Yew a sloot
+YewEssBee
+YewGnomeSayn
Yewcutter
Yewise
Yewna
Yewp
+Yews pnas
Yewsanity
Yewse
YexaC
Yezzi
+Yfer
+Yffud Gnik
+Yggdrasverre
+Ygh
+Ygritte8686
+Yharnam Soul
+Yhul
Yiatse
+Yid
+Yidy
+YikesScooby
+Yilver
Yimo
+Yinlin Simp
+Yippe
+Yippiyak
+Yisabela
+Yja
+Yke
Ykeykey
YlFF
Ylikivaa
+Yllattyneet
Yllig
Ylmn
+Ylpistynyt
Ylulawo
+YmanThe1
Ymbyydi
+Ynastra
+Yne
+Yng Xehanort
Ynka
+Ynun
+Ynza
+Yo Caspian
+Yo Griff
+Yo Its Devo
+Yo Kev
+Yo L
+Yo MyUSD
+Yo Soy Dios
+Yo lm Lee
+Yo uu
+Yo wyd
Yo2021
+YoCerberus
+YoGurttt
YoHighRoller
YoHimiiTsu
YoIronManBtw
+YoKristaps
+YoMomsFavBF
YoSinNow
+Yobew
Yocan
+Yoco
Yoda
+Yoda Adf
+Yoda Corona
+Yoda NSZ
YodaEvans
+YodaPen
+Yodamainn
YodasNo1Fan
YodasYoda
+Yodasquad
Yodati
+Yoder
+Yoerias
Yoeshua
Yofang
Yoghurtis
Yogi
+Yogi DMT
+Yogi Surfer
Yogololo
+Yogusun
Yohny
Yoink
+YoinkYoink
Yojak3
Yokie
Yolkysky
YoloSwagHope
+Yolp
+Yolvert
+Yomaku
YomamaPro
+Yomashu
Yomdo
Yondu
+Yondu Poppin
+Yonemid
+YongZhong
+YongZonnegod
+Yonkers
+Yonko Buggy
+YooDuragon
Yoodish
+Yoooord
Yoorah
+Yor
Yorga
Yorick
Yorick095
YorickMorty
+Yoriichan
Yorinky
+York Rite
+Yorkson
Yoru
Yosep
Yoshi
+Yoshi Man17
+Yoshi Suyumi
Yoshi6380
+YoshiThick
YoshisStory
+Yoshiwaptor
+Yoshizilla
+Yotaak
+Yoteii
+Yotsuya Miko
+Yottie
+You Are Zach
+You Be Love
+You Die71
+You Ok Fam
+You R D3d
+You rc 2
+YouGotRoll3d
YouGotSeabed
YouNeverKnow
YouOverThink
+YouSuck
YouWontScare
YouareGE
Youbartonz
+Youme
+Youncies
Young
+Young Bucket
+Young G4
+Young Guthix
+Young Krazed
+Young Logic
+Young Mooch
+Young Mullet
Young Tango
+Young li
+YoungCatFish
+YoungNoot
+YoungScuba
YoungThugga
+Youngdaddyg
Younge
+Younglleff
+Youngn
Youngsters
Youngvet
Your
Your Amity
+Your Future
+Your Idol
+Your Misery
+Your Mom67
+Your Mothers
+Your Toilet
YourDadIsMe
YourFrenRen
YourObsessed
YourPaperm8
YourSolution
+Youre Joshin
YoureAllTalk
YoureIgnored
YoureMySam
+YoureSoCool
Youssef
+Youthful
+Youtube Luck
Youwillcower
Youxi37
Yowarrior40
+Yowch
Yowzer
Yoxz
Yoyaaaaaaaaa
Yoyo
Yoyo502
+Yoyoma007
+Yrasa
+Yrdna
+Yre
Yrjo
+Yrok
+Yrrabo
+YsL Dom
Ysdragos
+Yshtola
+Ysr
Yster
+Yster Bunny
+Ysuke
+Yu Seolha
Yu Stinkipu2
+Yu Zi Jiang
Yubs
+Yubz
+Yucan Tucan
Yuck
+Yuck Aroma
YuckFou
YuckMouth
+YuckNoYums
Yudi
Yuengllng
+Yug Cipe
+YugiMoto666
Yugioh
+Yuhai
Yuigahama
+Yuiii
Yuiku
Yuipster
+Yuka Takaya
Yukaiaiaiai
+Yuki Kitsume
Yukika
Yukionna
YuliusCaesar
Yulong
+YumYumSauce
+Yuma az
+Yumaad
Yumbo
+Yumhumgao
Yumiko
Yummy
Yumped
Yundastan
+Yundruh
+Yuneekh
Yunery
Yung
+Yung Belial
+Yung Birdie
+Yung Deaner
+Yung Nice
+Yung Swoosh
+Yung Zach
+YungDuski
+YungIron
YungMoistGod
YungPredator
+YungSlick
YungThimothy
YungTungsten
YungWhiteBoy
Yungsik
+Yungsingteng
+Yungyonder
YunnT
Yuno
+Yuno Yuno
Yunozen
+Yunq
Yunthers
+Yuoni
YupImMadBro
Yupal
-YuriandWeed
+Yuqi Dab
+YuqiShuhua
Yurimo
Yurix
+Yuriy
Yusaris
Yusko
Yutorgborm
+Yutzz
Yuudachi
YuugeJohnson
Yuuki
Yuuma
+Yuuuuurd me
Yuuzu
Yuyevon2003
+Yuyu Shirai
+Yuzumii
Yveaux
Yvno
+Yvoa100
Yvon
+Yvuar
+YxY
Yxskaft
+Yzanagi
+Yzap
Yzyszn8
+Z 0 D I A C
+Z 84
+Z A D O
+Z A R G O T
+Z A V Y
+Z Barrows
+Z E R0
+Z I K O
+Z Jay
+Z M P
+Z O R 0
+Z O V K O
+Z O ZO
+Z Rowz
+Z a a K i R
+Z aeBae
+Z e e e f
+Z e x
+Z ebak
+Z edd
+Z erkie
+Z ev
+Z i g g e h
+Z igZag
+Z ion
+Z y g y
+Z ygis
Z-TheReaper
+Z00STER
+Z0K0
Z0MBI3
+Z0MBIFIED
+Z0NK3D
+Z0RB0
Z0bbey
+Z0deac
Z0ops
Z1pn
Z1pn_xD
+Z26 Man
+Z3
+Z3FRAN
+Z3R0 CO0L
Z3ds
+Z3ymour1
Z4phy
+Z4ppie
+Z6L
Z7Z7Z777ZZ
+Z900
+ZACCU
+ZADDYGANG
ZALCANOPET
ZALGlRlS
+ZAQWRY
ZB84
+ZBLOCKA
ZEIVI
ZEKEDAFREAK
ZELDRIS0
+ZER0 EHP
+ZER0Z
+ZGJ
+ZHG
ZIARED
ZILLER
+ZJ
+ZL1 Devin
+ZLA
+ZMB Scary
ZMithrilMan
+ZNDX
+ZOEY 101 FAN
ZPWUZZLED122
+ZRegi
+ZSYD230207
ZUCK
+ZUK EXPERT
ZUwUBI
ZWUNK
+ZWlFT
+ZX
+ZY
+ZZ
+Z_Z
ZaPhiRoxD
+ZaadTeef
Zaane
Zaanstad
+Zaatar
Zabe
+Zabey
Zabini
+Zabky
Zaboxi
ZacAynsley
+ZacBallsHard
+ZacFx
+Zacariah D
+Zaccchhh
+Zaccy
Zacflame
Zach
+Zach 6464
+Zach Patino
+Zach est13
+Zach q p
+Zach07
Zach314
+Zach4211
Zachagawea
Zachatank
Zachawy
@@ -26102,38 +53327,86 @@ Zachs
ZachsAccount
Zachulous
Zack0ry
+Zack504
+ZackAsch
ZackSparrow
ZackWasTaken
+Zackary
+Zackle Berry
Zackly
Zackman
Zackology
+Zackree
+Zacky P
Zacoron
+Zacxion
+Zaddy Bully
+Zaddy Zo
+ZaddyCool
+Zadek
Zadior
Zadok
+Zae
+Zae The Bae
+Zaenil
+Zaeres
+Zaf
Zafaron
Zaff
+Zafrot
+Zaga911
Zaggly
+Zagustin
+Zagz
+Zahard Army
ZahellGlarus
Zahellina
+Zahiirr
Zahnae
+Zahrani
+Zaion
Zairin
Zairx
Zaitsev
Zaixii
+Zaixyyuu
+Zakhary
+Zakje Pep
+Zaku Rs
Zakz
+Zala
+Zalaberto
Zalar
+Zalat
Zaleander
Zalen
Zalerae
+Zalotus
Zalphyrus
+Zalse
+ZaltyPretzel
Zalux
+Zam
ZamPeZu
+Zaman
Zamanr
Zameul
+Zami
Zamianx
+Zamicxus
+Zamirok
+Zammiy Slay
Zammy
ZammyHasjta
+ZammyJesus
+Zammys Flame
Zamorak
+Zamorak 61
+Zamorak Book
+Zamorak Tome
+Zamorak808
+ZamorakBrews
+Zamorakz
Zamorangue
Zamorizzle
Zamowrecked
@@ -26147,226 +53420,461 @@ Zandous
Zane
Zanfew
Zanfis
+ZangKeera
Zangola
Zaniels
+Zanimoto
Zanithic
Zanity
+ZannyBatsbak
Zanryu
+Zans
Zansus
Zantaril
Zanwk
+Zanzu
+Zaom
Zaon
ZapWasTakn
+Zapah
+Zapatos
+ZaphiasTM
Zaphyan
+Zaphyrim
+Zapii
Zapio
Zapky
Zapleno
Zapletics
+Zappaforever
Zappman123
Zapppy
+ZappyLand
+ZappyWabbit
+Zapsticle
+Zaque
+Zara Mobile
Zaraffa
Zararod
Zarasth
Zarathos
+Zarchonias
Zardee
Zardua
+Zarf
+Zarfa
+Zargole
+Zariah
+Zariky
+Zariser
+Zarke
+Zarkh
+Zarkino
Zarkoz
+Zarley
Zarliona
+Zarmos
Zaro
+Zaro M
+Zaroki
Zaros
+Zaros2k
+ZarosCorrupt
+ZarosRex
Zarosadomin
+Zarosian Rat
+Zaroux
Zarov
Zarpedon
+Zarrix
+Zarude
+Zarvern
Zary
+ZaryteKnight
Zasi
+Zasilus
+Zastava Ak47
+Zastavo
+Zatailex
Zatch175
Zathul
Zatom
+Zattix
Zauberbiest
+Zausbaus
Zav555
Zavaren
+Zavikk
Zavilia
Zavinor
Zavorak
+Zavvia
+ZavylonCG
+Zawro
+Zawts
Zaxbys
Zaxcord
Zaxm1
Zaxxxsoldier
Zaza9119
Zazian
+ZbraCakez
Zbychu
+Zch
+Zcj
+Zcu
+Zdawg
+Ze Golo
+Ze Own
+Ze Punheteir
+Ze Ubernoob
ZeOblitz
+ZeProx
+ZeQuYaa
+ZeZienMaar
+Ze_balla
Zea1ous
Zeal
+Zealandra
Zealea
Zealicious
Zealoe
+Zealous Love
+Zeals Max
Zeather
+Zeb Slays
+Zebak
+Zebak Acid
+Zebaks Jugs
+Zebedank
+Zebede
Zebest605
Zebras
+Zebs main
+Zebs scuffed
Zebu
Zebuck
+Zecca
Zechuchith
Zect
+Zed7
+Zed_11
Zedanko
Zedar
Zedd
+Zedd UwU
Zedd180
Zedek
Zedirex
Zeds
+Zedz
ZeeAyyBee
ZeeEL
+ZeeZeeZee
Zeebers
+Zeec
Zeedith
+Zeehox
+Zeeke
Zeekheart
Zeelmaekers
+Zeemoee
+Zeeny
+Zeeon
+Zeep
+Zeepra
Zeerkel
+Zeeshan
Zeeshan01
+Zeeuun
Zeeuws
+Zeeuws Tuig
Zeeve
Zeeyk
Zeezki
Zeffe
+Zefrank
+ZefyX3
Zegetable
+Zeh Zimah
ZehThijs
Zehbu
+Zehf
+Zehiret
Zehv
+Zeilex
Zeinovyah
+Zeious
+Zeitgaist
Zeithex
Zeken
+ZekimusPrime
Zekje
Zekkels
+Zekley
Zeko01
+Zekrom
ZelaooReturn
Zelatrix
+Zelcano
Zelcode
Zelda
+ZeldaHaxor42
+Zeldamen
Zeldaza
+Zelle Me GP
Zelnite53
+Zelroy2
+Zelten
+Zelzoy
+Zemiak
+Zemie
Zemix
Zemmy
Zemoko
Zemps
+Zemyrrah
+Zen Moments
+ZenBtw
+ZenRaidz
+Zena96
+Zenathrius
+Zenci
Zenearys
+Zenemz
+Zenez
Zenfor
+Zeni Master
Zenithina
+Zenitsu
+Zenium
Zenki
+Zenki RS
+Zennyte
Zeno
+Zeno Pho Bia
+Zenoce
Zenpep
+Zenqii
+Zenqs
+Zenrrrr
+Zensai
+Zentae
Zentra
Zenytum
Zenzulo
+Zeon Clone
+Zeorun
+Zeos
Zeoth
+Zeou
Zeoxr
Zeph
Zeph0s
Zepher138
+Zepherahs
+Zephere16
Zephrinne
+Zephxa
Zephylius
Zephyren
+Zephyrhills
+Zephyric
Zephyrot
Zeplin1
+Zeppelin IV
Zer0Requiem
Zer0Tw0
Zer0mancer
ZerUmh
+Zeratul259
+Zerbeh
+Zerberous
+Zeref
Zerendipity
+Zergonaut
+Zeri0n
ZerkByDay
ZerkInDaYard
+ZerkMeOffPlz
+Zerkeee
Zerker
+Zerker fe
Zerkism
+Zerkom
Zernag
Zero
+Zero Cals
+Zero DeNiros
+Zero Saber
+Zero Scope
+Zero Suit
+Zero Talent
+Zero Tol
+Zero Zeros
Zero92922
ZeroAltruism
+ZeroBodies
+ZeroCake
ZeroDignity
+ZeroFox8576
ZeroGravity3
ZeroHour
+ZeroHpAgain
+ZeroTheKing
+ZeroValor
ZeroXJD
ZeroZero
Zerobeat
Zerodareborn
Zeroeagle
+Zeroen
+Zerololz
Zeroly2
Zeroswift
Zerq
Zerrilis
Zerro
+Zersers
+ZertUwU
+Zerx
+Zesima
Zeskater
Zesty
+Zesty Bvrnsy
+Zesty Senpai
+Zesu
+Zet_RS
Zetani
Zetardo
Zetore
Zetreker
Zetrus
+ZetsuboSekai
Zetsubou
Zetta
Zettty
Zeug
Zeus
+Zeus Jr
Zeus07
+Zeus09
Zeusvdl
+Zeven
Zeveria
+Zevlim
Zevosh
Zevvo
Zewx
+Zexma
+Zexra
+Zexual
+Zeyora
Zeyzima
+Zezaroth
Zezergz
+Zezima Simp
+Zezima W q p
+Zezimaislife
Zezimas
Zezime
+Zezus
+Zezynx
+Zfg Fan Girl
Zfsalt
+ZgeL
Zgrite
+Zgzi
Zhacarn
Zhaoyl
Zhava
Zhinky
Zhiqth
+Zhonny
+Zhops
+Zhotaro
Zhqith
+Zhuxiong
Zhuzh
Zhykiel
ZhyloFlex
+Zi P
+Zi1y
+ZiNikor
Ziauze
+Zick Licker
+Ziclone
Zidi
Ziega
+Zierikzee
+Zigfrid
+Ziggey
Ziggurattus
Ziggydog7
+Ziglar
+Zigory
Zigzagoonfmt
Ziicatela
+Ziidz
Ziinc
Ziincor
Ziisus69
+Zijwiel Iron
Zikry
+Zil o
Zilandraa
Zilanthra
Zilex
+Zilexion777
Zilly
ZillyLovesMe
Zillya
Zilpha
Zilvia
Zilyana
+Zilyana Gr
+Zilyana Jr
+Zilyanas Dad
+Zilyarma
+Zim
Zim8
ZimFlare0003
+Zimak
+Zimaterasu
+Ziminiar
+ZimnyZielony
+Zimpathizer
Zinc
Zinct
Zing
Zingg
Zinixon
Ziniy
+Ziniyy
+Zinnialexis
Zinogre
Zinoto
+Zinryia
+Zinshaw
+Zinsmaster
+Zinsmeistro
Zioh
Zion
+Zion Fire
Zioo
Zip Lynx
+Zipacna
Zipit
+Zipm
Zipo259
+Zipp0Fluid
Zippeeee
+ZipperTrout
Zippy909090
Zipsap
Ziqs
Zireal
+Zireb
ZireneV2
Zirkisi
Zirn
@@ -26374,74 +53882,143 @@ Ziron
Zirrub
Zirvzaa
Zisam
+Zitaya
+Ziti Sauce
+Zitri
Zittte
+Zivile
Zixcon
+Zixon
Zixxen
+Zixxty
Ziyai
+ZizZazZuz
Zizarius
Zizou
Zizzle
+Zji
+Zjoelini
+Zkilrr
+Zkyui
ZlGGEY
ZlNQK
+ZlZl
Zlap
Zlatan
+Zleek
+Zleepeey
+Zlig
+Zlomble
Zlote
+Zlug
Zmancool
Zmanonthego
+Zmazek
ZmaziWasHere
ZmbieShepard
Znked
Znorox
+Zo e y
+Zo m B
+Zo nk
Zo7al
Zoak
Zoanthids
Zoaxyl
Zobbe
+Zobny
Zoca
+Zoca BD
+Zodden
ZodiacIsTed
Zoeh
Zoet
Zoey
Zofad
+Zofu
+Zogggii
+Zoggy Marley
+Zogloid
Zogurk
+Zohi
+Zoik
Zoil
+Zojun
+Zok
+Zoka
Zolarf
+Zolaris
Zolcome
+Zoli
+Zolkaria
Zollo
Zolon
Zolrisma
Zolruh
+Zolt09
+Zoltan Uk
Zoltanious
+ZolwoZ
Zombah
+Zombi Zack
Zombie
+Zombie Cody
+Zombie Zack
Zombiezparty
+Zomboide
+Zombrons
Zomi
Zomimi
+Zomp
+Zone Red
ZonichGG
Zonir
+ZonlyAlex
+Zonnedael
+ZonoxRS
Zonse
Zonum_Knight
+Zoo Orleans
+Zoo scape
+Zoobloo7
+Zookly
+Zool
+Zoolander
Zoolander011
+Zoom
Zooming
Zoommaster97
+Zoonix
+Zooted
Zoppy
Zorb49
Zorblet
+Zorcar
Zoret
Zorg
Zorh
+Zorie
Zorin
+Zorkath
+Zorkz
ZornDurag
ZoroRoronoa
Zorolith
+Zoros son
Zorrac
Zorrita
Zorros
Zoryov
+Zos
+Zosc
+Zossssssssss
Zostok
Zoteize
Zotetz
Zoudrex
+Zoumok
+Zouns
+Zown
Zowski
Zozma
Zozo1232
@@ -26449,54 +54026,116 @@ Zpizz
Zqw6
ZrankerF
Zrax
+Zriv
+Zrr
Zsedcx
+Ztneff
+Ztxch9
+Zubaritis
Zubora
+Zubsolv
Zuburus
Zucchini3
+Zuchini
+ZuckZyZock
Zucu
+Zuel
+Zuened
Zuggster
+Zugmah
Zugs
Zuibbi
+Zuiox
Zuipe
Zuipen
Zuipvlek
+Zuk
+Zuk Bot
+Zuk Cucker
+Zuk Meh Off
+Zuk My Toa
+Zuk Sucks
+Zuk a Duck
+Zuk a Zik
+Zuk at 1 Kc
+Zuk my Tzok
+Zuk was here
+ZukDisLilZik
ZukMadic
+ZukMyAss
ZukOrBust
+Zukala
Zukmos
+ZukoTheMcoon
+Zul-Bot Farm
+Zul-tul
+Zulandra
Zulax
Zulex
Zullander
Zullrah
Zullu
+Zulrah Goat
ZulrahSlave
Zultora
Zulu
ZuluLippen
+Zum
Zumaz
+Zumaz Her
+Zumb ass
+Zumwalt
Zundaddy
Zundix
Zunkrah
+Zup Rap1
+Zurad
+Zuramaru
Zurcal
+Zure Kut
Zuremate
Zuriel
Zuriel321
Zurius
Zurkzes
+Zurlofix
+Zurn
+Zurper
Zurqos
+Zurthur
+Zurvan
+Zurxas
Zuubi
Zuuqe
+Zuurkast
+Zuv Arik
+Zuviel
+Zuwy
Zuxar
+Zuxf
+Zuxi
Zuzad
Zuzas23
+Zvg
Zvirbulis
+Zvotne
Zw3d
Zw4rtjoekel
+Zwabba
+ZwangerePapa
Zwanneke
+Zwartbeast
Zwartbest
+Zwarte Iron
+Zwarte dief
+ZwarteAapMan
+Zwartehand
Zwef
ZweiBeer
Zwei_02
Zwerky
+Zwette Draak
+Zwieber Vos
Zwiers
Zwift13
Zwijg
@@ -26505,65 +54144,152 @@ Zwimps
Zwinter
Zwlr
Zwwwnbeast
+Zx J3SS3 xZ
+ZxFe
+ZxbeeRs
+Zxeon
Zxirl
Zyad
Zybes
+Zyck o
Zydecolarry
Zyer
Zyev
Zygalo
+Zygameux
Zygy
Zykaite
Zykonic
+Zyl
Zylco
Zyleta
+Zyliana
+Zyllami
+ZynGardener
Zynerith
+Zynnocent
Zynthe
Zyntixero
Zyper89
+Zyrem
+Zyrinth
Zyrok
+Zyrona
Zyrpex
ZyruviasDied
+Zyunkko
Zyxla
Zyxuz
Zyyra
+Zyz
Zyzziima
+Zyzzy
+Zyzzz brahh
+ZzJ0SH
Zzanoss
Zzayo
+Zzuma6
Zzyzzx
Zzzax
Zzzd
ZzzzG
+[#OA0VWICQ8]
+[#SG1JGUXTW]
+_Untrimmah
+_gria
+a Cairn
+a Dang
+a Mikey
+a Miko
+a Venenatis
+a Venny
+a Weeman
+a bean
+a black cod
+a casul
+a cooky
+a cool bug
+a eu
+a f o
+a gentle sir
+a little sad
+a ndo
+a p p l e
+a pathetic
+a pb
+a sad kraken
+a sad waffle
+a sk y
+a the sniper
+a tnQ
+a trash cat
+a zo
+a-x51
+a07
+a1liez
+aDome
+aDuNaz
aGamerGaming
+aGamingDad
+aGlasgowGrin
+aGoober
aIIfather
+aKSU nPC
aKash20i3
+aMiniDude
aMiniGorilla
+aMiniHitMark
+aNERDYsloth
+aNStarFury
aPinkBunny
+aPinkKitten
+aShavedLlama
aSnowTiger
aSunnyPotato
aSwiftyBoi
aThoms
aTinyChimp
+aVolk
aWildSeal
a_SaladKing
+a_duncan
+aa noob
+aaah
aaahChu
aalucard
+aanmaken
+aanwaz1g
+aaron_diaz
aaronparkerr
+aatudoz
aaty
ab0u
+aballer09
abbruzi
+abbruzie
abcz
abdi
abdimajiid
abdulllah
abis
+abk144
abni
+about blank
+abqve
abra238
+abrakadabraZ
+abray
+abu hassani
acceleratism
+ace375
acecoffee2
acerkush
achillies
+achillies zy
+achinadav
+achterkamer
acidshit
+actionbob
actlater
actofvalor24
acuile
@@ -26571,41 +54297,78 @@ adPEXtwinDnG
addaaam
adem6792
adizzle444
+adogg0323
adopt
adrian
adsdadasdgtd
+adsh55
+adue
adul
+adul t
+advia
+advies
+advit
+aeej
+aeggefar
aejfd
aenpaa
aezthetic1
+afatslug
aferraro
+afh
+afk 2 2277
+afk a bunch
+afk n doc
+afkayscape
afkdontattac
afkingRS
afkvsehp
afkwarriorzz
+aflk
afraid2boss
afraid2boss2
african
aftrthxght
+afzi
agent_of_fox
+agentdd_4
agfdbzIM
+aggain
agic
+agieee
agoraphob1a
+agrovation
agsmanpro11
+agytagtyewaq
+ah oh uh
ahahah
ahippi3
ahokusa
ahrlhyrslylh
+ai eye q
ai3i42Iaaskl
+aiden m8
aidibohx
+air strikes
+airborn frog
aito
+aitoBeruna
+aiwodas
+ajiffniff
ak47afghan1
+ak47ags
akaExploit
akaNorman
akae
akbennyboy
+akeep
+akidnamdjrmy
akipf
+akirahokuto
+akkha kum
akleb
+akq
+akspew
aksta
aku aku1212
al0x
@@ -26613,82 +54376,139 @@ alabasta1
alabthemoola
alans
alaric
+alaxam
+albersson
albiguerra
albioon
alchetraz
alders0n
+aldi warrior
aldrichmax
+aldrichs
alecbeats
aledank
+alexjberroc
+alexlangman
alexs99s
alfafa20
alfhershey
algotrader
+alias ilias
alic3
alimpweenus
+alipandh
alittlepig
alkaizerx
alkkis
+alkkis pk
+all en
+all love man
+all to 200m
+all4four20
+allcaps
+allebylund
+allenbb3
allez
allluminati
+allomax3
allora76
allowitplz
allzeras
+almoggar
+alpacathund1
+alpacka toke
alpalmchal
alpha
alphabosss
already
also
alsobosspros
+alt f4 gn
+alt maxed
+alt rite
alt0n
+alt2kil
+altairanezio
altehnub
altforusa
altiarblade
+alvexn ltu
alvinhic
+always win
alwayscurius
alwrighty
+am sam
+am so sleepy
amagna
amay
+amfoine
+amheeh
+amikiri
ampharos61
amputated
anasacez21
ancapistan
anchor
+anchor seb
+ancientskye
andhetakes
andhim
+andmcadams
andreable
andriuttt
+andtony
+andynew2007
anelebar
+angel995
angeline1711
angrydump
+aniki chan
anime
+anime member
animeF3tish
animegirl73
anizan
+anklez
ankou4smokin
annie
+annie r u ok
+annni
annull
anoldfatdude
+anon1606
+anotha 0ne
+another gay
anti
antibully
+antituuri
antivaxer
antombomb
anttimage3
anxiousbeef
+any1
anygirls
+anyma
+ao
aocha
+aod retired
ap1ska
+ap3xOo
apacifist789
+apcays
apeman8731
apenzoon
+aperts
aphr0
+apikeppa
apina
apiph3ny
apou
appelkneuz
applee
+aqp frog
aqqqqqqqqqqq
aquafx
+araenel13
aratsanus
arcane
archyiop
@@ -26696,350 +54516,692 @@ arcvnaxiii
arcwriter
ard lad 06
ardazz
+ardy guardy
arengs
+arevles
arexmeister
arfih
argilah
+ari abdul
+ari shaffir
ariman22
+arkoudaphile
+armadyyyyldo
armyofkids
+arnr
+arocardo
arookie
+arouze
arreydn
arrowbob2
+arrows2ashes
+art possible
+artaax
artan
arteefact
+arth urr
+arthadeos
arthurdebart
+artist_60
+artizia
+artogoes
arvothepure
arzier
ascipulus
ascott1
+asdafsdafsd
asdasdasdf1
asdsdafsa
asedviss
asfand
ashster25
asian
+asianbunnyx
asibioass
+asidb
+asm
asmoooo
+ason jones
aspiraring1
asrdftgffdsh
+ass chance
+ass jiggles
assaultvests
+assbergerler
+assdrag
+asseaterbtw
assoffire
+astgferallah
asuhcuh
+at0
+atob7
atoma619
attaaM
attack2much
auditore28
audrey
+audrey horne
auma
+aus j osh
+aussieyobbo
+aut AT5
aut1st1c
autism
+autisticboiz
autumnbound
+av av
av8bgo
+avantoeftish
avewy
+avg Jake
+avg gov ee
+avg idiot
+avikntos
avmech31
avocabo
awple
+aww fk
+axeleebob
+axeli
+axetoons
axoblaster
axperson808
ay96
aydrian
+ayeetbix
+ayhank
aynull
+ayos ayo
+ayrball
+ayshinx
ayte
ayvz
ayyreynolds
+az3r bulbul
+azerke
azilim
+aziz8mohd
+azj
azura
+b a g
+b a l r a j
+b b o x x
+b eeg
+b enjy
+b ezos
+b i g s t
+b kuz
+b l u rr
+b oe
+b on ass
+b oo n
+b ooth
+b u l
+b ulba
b-ray29
b00ty
+b00tyw1zard
b0btehcool
+b0dybilder
+b0gadu
+b0nelesstofu
b0rn2grill
+b0urb0n_kid
b1ackcoxdown
b1apoody
+b2bpurple
b2bs
+b33 rabbit
+b39
b3cc
b3kiy
+b3rgo
b4Mb00B0NGG0
+b4iforget
b4nyluckypvm
b5 s4 0000
bIack
bIrkaoff
bLeatzker
+bMat95
bSteeezy
bVibin
bZabii
+ba1tti
+baIIs3
+baami
+babewatch
babstah
babugo
baby
+baby peb
+baby peba
babybuffalo
babygirl
+bacbacbacbac
+baccybaxter
backseatrs
bacodie
+bacroonX
+bad bee
+bad boy602
+bad british
+bad data
badalts
+badass1337
badat3tick
badcold611
+badderjari
+baddspella
+badger fan 7
badsadmac
+badtechnique
+bag milk
+bagans
baglokale
bahumat
baile
-baishunpu69
+baile y
baitmem8
+baj69
+bajadam
bajj
+bak3d bean5
bakareru
bakesome
bakkerbtw
+bakplaat11
balding
+balisongg
+balkare
ballenbak
+ballerbebbo
+balsson
+bam
bam-BA-lamb
-bambii69
+bambera2
bamfhitman
bamsi
banana
bantrok
+baraho
barakozle
+barcrestboy
bard006
bardj
+baritone888
+bark bark
+bark f0r 0ff
+barkirion rs
barkmeat
+baron nash
+barou
barry
+barrybacon
+barrysdad
barryslet
bartelbarel
based
+based af
+bash the rat
bashong
basic
basically
basiel
+basispiloot6
bassdrum
bassfortexx
+basspro76
bastukid
+bat flack di
batchela
batdog183
bates
batje vier
batseflats
+batterym1es
+battlebus33
+battleman36
battried
+baumannii
bawky
bawsi
+bawz zaa
+baywest
+bazjunior
+bbALL
+bbb
bbest
bblood
bbones
bboyalec
bbtarget
+bbully
+bc22
bcguppy
+bck2kickass
bcollier94
+bdb
+bdw reborn
+be one
+bean flick3r
beanbag173
beanieton
beanskunk
bear
+bear66881
+beard3djesus
beardZy
+bearia
+bearitimus
bearjack
+bearplusiron
beatthebot
+beaver 5
+beaver 9
+beaver win
beaverboy47
-beberfan69
+beavitte
bec0me
+becarius
+becca boooo
beckles96
+bedabin247
bedburn
bedtime
beech
beeelake
beenus42
+beer sweats
beggar
+behaardezak
belanin
belgibeer
beliver96
+belizianos
bellatarius
+bello0
+belub
bemw
bendy
+bengnomonkey
+benisbutts69
benjabii
+benjimin
benjiswaggod
+benlovesyo
+benrj91
+benroxo
bent
benyatta1
berd007
berkut87
berrytrials
+berseke1
+berserkbear
+berserkku
bertucci2575
berzerks
+besouley
+best bojji
+betleejuice
betonimuna
+betty wu
+beverlly
beverwijk
bevh
+bevsteve
+bff
+bfxrturbo
+bg s
+bgs ownez
+bhicks
bhuffs3434
+bibilush
+biccc
bicycle666
+bidls
bidof
bieltanman
+biffsy
bifket
+big bad jon
big bojangle
+big gay ig
+big gmbino
+big head
+big man shaq
+big rart
+big snood
big tree 63
+bigbadheskey
+bigbig horse
bigbigbone
bigblade28
bigbluntbrnr
bigbologna31
+bigboybarlow
+bigboybrips
+bigboymansir
+bigbud
bigchoocher
+bigcuff
bigdbandioto
bigdoggtrock
+bigdoinks42
+bigg bud
biggest
+biggest fan
+biggiefries7
biggledoinkz
biggreenbush
biggs
+bigjuicybutt
bigl
+biglenz
+bigmoney jim
bignipnik
bigonevs
+bigotslayer
+bigpkz
bigpompom
+bigreddogV2
bigschlong33
bigsee
bigshrub45
+bigsnail
+bigspick
+bigsugoi
bigtuner
bigz4p
bike
+bike trail
+bilbsay
bilet92
bilfey
+bill one
+billbosaurus
+billsta46
billy
+billy g0at
+billy mayne
billy5454
+billyj0e
billyjoewo
+bilo xd
+bimblebunk
+binaev12
binch
bincho420
bindi
bingels
binkie
+biolemonhaze
biozahard
+bipiee
bipoc
+biq pp gamer
+bir d
birbeon
+birdieputt
birkki
+bisp
+bisse
bitten by
bitter
+bitter fruit
bj0rne
bjassen
bjpc
bjuti
+bkguytd6
+bl00d twinz
bl00dShaman
bl0wMyPlpe
+bl0wdakushh
+bl4ckdelt4
black
+black coffee
+black cum24
+blackbelt
blackburrito
+blackedmarko
+blacksshad0w
+blackstyl579
blackzranger
blade2k9
+bladee
blaktraksoot
+blame war
blankownz
blarbydoo
blastmaster6
+blawblaw
+blazar58
blaze59
blazed
blazekin
blazertrail4
+bleenkie
+blessn
bleu
+bleu kayn
+bleubeard
bliksem269
bliksuiker
blind
+blind idiot
+blink 1 8 2
blinkforlife
+bliss
blky
bloQQe
blobaman
+blockteleing
blonkie45
bloo37
blood
bloodhound96
bloodrain202
+bloodredd
bloodtheatre
blothbather
+blowmebuddy
blubbystr699
blue
-blue cat69
+blue in vain
+blue max6
+blueTofu
blueWagonMan
bluebean2596
+blueberry624
+blueberrydev
bluebop
blueergon059
+bluetrane
bluewahfull
+blunt tank
+blurite boy4
blutorch
blvckstvrr
blynaas
+bman5
+bmeow
bnff
+bnndt
+bnqy
+bo bby
+bo nk
bo2Lawrence
bo3rke
bo4r
+bob bob bob
+bobby ross
bobby45153
+bobbyb727
bobbyitsme
bobbyjoe
+bobbytronx
+bober vvittu
+bobfish66
+bobness
+bobondowski
bobsushi6396
boer
bofflepopper
bogie297
+boglad4ket
boident
+boinkerton
+boke smowls
+boksepoeper1
bollocksed
+boltwitdick
+boltzy
bombadinski
bombycrahan
+bon4ri
+bonSwole
bond
bondalorian
-bong
+bonderoeven
+bonelessrice
+bonfire
bongohonkers
-bongs
-bongz
bonkbonk
bonna1994
boo0ty
+boob boob
+boob nut
boodje1993
boofablebass
+book of ra
boom
boomboom
booogieoogie
+boooosh
+boorito
boosbear
+bootn98
bootylips
+bootyters
boratas13
bored
+boring hobby
born
+borpxatu
borsi
boss
+boss hogs
+bossboy420
bosscat56
bossdemon88
+bossdog99
+bossedit123
bossy momma
+bostonbb2g
+bosway
bota2
-botter69
+botchx
+botilabaca
+botleFluff
bottleo
+bottn
bottomfeed
bottypedpsw
+bounsn
bouquetboy
bouwjaar1990
+bouzouki
+bowfa bob
+bowfaaddict
bowl
+bowl loaded
+bownd
boxofbears
+boxtrapgod
boycie420
+boydi
+boydt
+boyuniverse
+boz pwr
boze
+bozo
+bp9
br0wnardRS
+braap poster
+bradrian
bragegutten
brain
+brain rotted
brainbusterr
+branderx gim
+brandom lol
+bratnt
brawling
+brb cigy
bread
breakingood
brecht181
bree
breeze
+brejch
+brekitutta
brett
+brett 69
bretthomas3
brettiz
+brettjournal
brettmanx7
brettrae
+brew bar
brewi
brexit
+brian285
+brian289
brianknight7
briareus
brics
bridder
bridgeport
brika
+bring ya ass
brisingr vin
briskyhot
+brixs22
brizzle
+brky
+bro its hamz
+brock soup
broetie
broker
+bronson99
+bronzelvl
bronzenohkie
brooskii
+brotha in Ra
brotherkjell
brothervoid7
brown
brownell
brownjesus
brtsbrg
+bruh
+brushy1
brutals
bryike
+bsavs
bsct
+bskiller10
+btc
btd6king
+btw Im Nakey
+btway
+bu bla
buIberpikmin
bubbakush
+bubbith
+buckethead12
bucketnipple
buckul
budabaii
@@ -27048,51 +55210,108 @@ budge1
budhato
buds
buff
+buff T O N Y
+buff boobies
+buff outlaw
+bug salesman
+bugeye freak
bugsijs
-buh6969
+buhm
buldog89
+bulk up
+bulpster
+bumbler
bumpyD
+bumpywalnut8
+bunchface0
+bundun
bungaku
+buornos
+burakaflocka
burlyman
+burnedpotato
burnindank
burnsalinas
+burntfish55
+burntjar
burt
buryafriend
bushkada
+bussi eater
bussmandrew
+busta bunny
butlesha
-butt
-buttboy
+butt boobies
+butt chug
+buttercord
+buttonbags
buup
buurman111
buurtvader2
buwatt
+buying ai gf
+buying girls
+buying sloth
+buzzin
+bwaby
+bwana69man
bxhxdir
+bxmbi little
+bxther
+by Juddy
byEmilsson
+byll
byrny
bzerk
+c a b l a y
+c bro
+c greyson
+c h u c kles
+c hainz
+c j t
+c m l
+c o 1 a
+c onorr
+c rompt
+c ubic
+c xx zz c
c-ross93
+c00lbeer
c0vid
c11ntz
+c3h8 seller
+c95
c9hype
cBold
cDive
cFraze
cMehuu
+cMoney62
+cRunX
+cT Kura
+ca mel
caaaazaaa
cache
cad5112
+cadeano
+caesarsantin
cafedenbas
+cagasaurio
cage
cagesitter
caiomhinnn
cajzbi
-cakefartsbtw
+cakemusclez
cakepillows
+cala mity
+calamity meg
calgore10
+calisme
call
+call me Q
callbackc4ll
calliott14
+callmedaddie
callmeqel
callmeson
callum23394
@@ -27102,150 +55321,291 @@ calvo
camberland
cameindamail
cameliorate
+camellia
+camognome
camrbidge
+can o fish
+can smoker
canadian
canalope
cancer
+cancer ruin
canman794
+cannot pvp
cantgetdrops
cantsoloraid
+canyon crab
+cap byakuya
cap3r
+cape kraken
capinkiller1
cappin
captn_dabbin
car oussel
+carbonclock
carefree
+carltonking1
carlwalter
+carmito999
+caronita
carrotepic
carrus65
+carti stan
+carx
casadri
cash pls
+cash19400
+cashcache
+cashflowgwap
+caspar O8
casperium
+cass
cassa
+cassidyz
+cast iron 99
+cat goose
+cat the rat
+cat yo quack
catJAMgif
catdog183
+catdog184
caterpie
+catgirl41
catlice
catlover68
+catmummy18
cats
+cats go meow
catsandogs
catsarepeopl
catsntatts
+cattierjam
cattsts
causey
+cave zizil5
+cawn man
caykk
+caza
+cb0ndy
cbbr
+cbf maxing
+ccc kyle
ccc kyle BTW
+cccccc
+cce
ccoinstar
ccvtw
+cdryz
+ceef
ceerial
ceh9
+celery dog
+celestial177
celliott94
certifythat
+cestlez
ceus
+cgmirin
+ch oi
ch00s3n
chach47
+chadduker
+chadmaro
chadsmurfin
chaffedlips
chakra
+chamby
+champagnedon
champinjon
champions
champrocks
chamskillz
+changa nndmt
changemyrng
+chao keng
+chaossarim2
+chaoswizzard
+chaps on
chargnar
+charliety
charlyzard
charred
chat
chatandinan
+chats 0ff
+chavito_mobi
+chazsti
+cheapscape
+cheddaphile
cheekraider
+cheenos
cheese
+cheese nuts
+cheese tots
cheesed
cheesesmoka
+cheesesnake
+cheesie odst
cheesy05
cheetboyx90
+cheetodust
cheffffffa
chemistmike
chemistryphd
+chenswok
chent
+chenzoh
+cherenkov
+cherrygrove
chessboxing
chewbacca814
chewybeaver
+chi huahua
chickenarise
chickenbyrd
+chickennug74
chicknsoup3
+chicknugets
chicom
+chicom shill
chidavantlez
chie
+chie na wei
+chien belge
+chigas
+chilli
chillimayo
chillscape99
chillummen
+chimney15
chimonas
+chinchinchin
chinkbox
chinorondon1
+chipndale
chirspls
+chisssa
+chlodotexe
+chnged
+chobby bong
+chochise
+chodell13
chogey
chokemepleas
chokemysword
-chongsbong
choobocka5
chook1e
choppers
+chopsbwana
+chorkin
+chr0nic k0
chris
chriscrossz3
chrisdude
+chriskr9
chriskys
christimgood
christinet
+chronicwax
+chuI2ch
+chubbybeagle
chubysack
+chum god
+chumboyee
chunkydaddy
+chvi123
chxpo
+ciggen3
+cigonusargas
+cimmins
cimsoK
+cindur
+cinekmiszcz
cinim
circa445
cityless
+civo
cjim
+cjrr3
cjskillet
cjuul
clabby
clac
clancy272
+clangy544
+clara ravens
+clardiiii
claryzz
class1k
clayylmao
cleanhell
+cleann
+cleanscape
clevesbch2
click
+click boss
+clickin boss
+clickrtraind
+clienting
cliff
clifsideGang
+clig fish
+clini
+clippng
+clodoaldo23
+clogs please
closeline194
cloudroamer
clouds
+clownViking
+clownsrus2
+clownzeta
+clrjones964
clubsammich
cluemaster7
+cmer
cmiite
+cmiuehye
cml852
cmm6364
coatria
+coats
cobrafrost
cobraslyer
coco
+coco coconut
+cocoa
codga123
+cody curls
+coffeechuno
coffeemug91
+coin btw
+cojestkuwa
colafanboy
+colb 45
coldumber
coleeeeee
colekay
+colemak
+collect butt
collessin
colon
colt
+coltsfan1287
+coma afk
come
+come in bum
commandrsnow
+compact cat
+concert
conig
connie
connor420sit
+connorkwl
connorosrs
containment
+content days
+continental
contra145
conww
cookiedunker
@@ -27253,60 +55613,118 @@ cookiekill
cookieman
cookys
cooldude2845
+cooleodotty
coolgasje
+coolish funt
+coop ananas
+coozin_killa
copy166
+cor tapijt
cordnog
core63
corgi
+corgi fan73
+corgsterr
corn
+corn8holio7
+cornstarchII
coronel
coronieverus
corps
corpse
+corpslave18
+correctmymis
cosec
cosineeee
cosmic
cosmicphetus
+coszzyy
+council pops
+count beck
+countjupiter
covid
covidconvict
covidsurvivo
+cow abandon
+cow cede
+cow20
+cowpigj
cowpker4life
cowpoo99
+cowpuncher19
+cows
+cox finisher
+cox for cash
coxchambers
+coxfcksme
+coxnass
+cp5
cpenn
+cpt-cujo
+cr ai g
+crZbY
crab
+crad le guy
cradleguys
+crag slayer
+craigbr-1994
craigobaker
+craigs cool
craj
+crajan
crannerz
crash
+crayfish1
crazecanuck
crazycow913
+crazyloLer14
+crcsofkrks
+creamiboi
crenux1st
crep
+crevebach
crew-z
+criddd
+crimsonlily
+cringis khan
+crinkes
cripsystrips
+cris7ronaldo
+crisVao
+crisp damage
criticism
critiode
cross
crownchyfled
+crppironman
+crueship
cruisingmap
+crumble
+crunchyfrog6
+crunchyrolll
crushsquid
crustymcfk
cruuton
crybcdry
+cryme wave
crypto
crystalbluu
crzybrady
cskt
csramsus
+cstk1Ng
ctmv
+ctq
ctraltdelet
+ctsRasta
+cu ck
cub1c
+cubbear
cubezor99
cucked
-cum6
+cumstrosity
cunnys
+cupma
cupofpeepee
cups
cursed_angeI
@@ -27314,43 +55732,94 @@ curt
cus345
cuscusrevers
cute
+cute lil elf
+cutekitten7
cutemuppit
+cutepenguin9
cutetoeluvr
+cutie cat24
+cutie frog
cuvae
+cvbj
+cvl
+cwazi
+cxir
cyanicide
cyberdunk
cyberyux
+cyi
+cynth ia
cyxxa
czaroiemao
czechit
+d arb
+d e v o u t
+d io r
+d urrin
+d y lan
d00she
+d0g eat d0g
+d0gz
+d0nnie-d0rk0
+d0rq
d0ugjudy
d1sh
+d216
+d2n
d3mot10n
d4rkk
+dDillyDilly
dEAd0dhz
dEdjamaL
dXLeamXb
da jiin
+da ph
da6god
daMteG
daPeanut
+dab 710
+dab face
+dab marino
+dabaig
+dabbtheslab
+dabilitation
daboiz
daboo420
+dabs n smoke
dabtchel
+dad bad
+dad tree
+dadcoma
+daddds
+daddy sharky
daddyfred
daddys
daddywaluigi
+dadfcker69
+dads bulge
+dadsbelt
dadsilou
+dadson23
daedbent
+daft plonker
+dagens mand
dagg3
+daggry
daghostwoman
+dagond0rk1
+dahhyunnee
dahlinho
+dahlukeh
dainiux2014
daisyfletchy
dallas
+dallee
+dalunk
+dalvik
+damage222
damo332
dan73
+dan_hua
dance
dancol00
dandy man
@@ -27358,129 +55827,251 @@ danielccm
danielfanacc
dank
dankburgers
+dankin606
+danklingt0n
danliciouso
+danny4490
dannytjuhhh
danthebankid
danzing
+dapipelaya
daprincess21
+daredevildog
+daretodair
darigondeath
darius_v_2
dark
+dark binding
dark hays
dark0hawk
dark5pac3r
darkandrew7
+darkanimal86
darkclues
+darkcyco
darkgirl79
darkhex0
darkjustin54
+darklordc
+darkmagicdad
darkness
darkstagx
darkxaotik
darkyChao
+darranegobli
+darranekarhu
+darranekives
+darth gainz
darthbuddatv
darthv102
+darvan
+dascarytaco
dasor012
dataenz
datakrash
+datalogi
datboi2456
+datstonerlal
datweekaz74
davadof
daveb123
+david442p
+davidpain
dawaj
dawningofwar
+dawnsend4
+dawocar
+day of dog
dayoh
+daysack
daystar
+daystar 0-0
+daz 11
+dballl
dbau
+dbopp
dbow4pking
dbstf94
dc22000
+dc22000_1509
dcPain
dcfgs4
+dcing always
+dcross9999
ddSyndrome
dddvlot
+ddr
ddsfornubs
+de Fe Dad
+de em tee
+de metro
de00
deZoet
+de_rono
dead
+dead tee
dead2Mfarmer
deadazztec
deadcentred
deadfrompvm
deadfrontier
-deadlyfeet69
deadlymoth
-deadlyone69
deadmau5
deadmeadow
deadskiller7
deadwildyXD
dear
+dear sleeper
+dearlola1
death
+death to wdr
death0183
deathax10
deathchecks
deathe
+deathlifiron
debbie
+deci m8
deciphered
+declaw3d
+decoy110
+ded R N G
+ded pixels
+dedarec
+dedcell
+dedfin
+dee2801
+deeezey
deep
+deepbowlz
deeptechouse
deesnertz
deetuu
+deez ntz
+defblacklawl
+defender3355
defenderCX
degie
degraded
degryser
dehula
deivvn
+dekane
deketamingo
deku
delboy1964
delete
+delete from
demaguz
+demerstrand
+demon ssss
+den n y
dennyispro
densenuggett
denver
+denver nugs
denzarr
+departusa
deperni Jr
+derdepoging
derrybarry
+des9re
+deserved pet
+desksitter
despotroast
dessverre
desteezdubs
+detnia f
+detrater mi
+detzy detzy
+deuce
+deuzzz
+dev rat
devils
+devilz ashes
+devious man
devonjt1
dewsh
dexaur
+dexless 4eva
+dfkjgkjfdgj
+dfordumm1ed
dftba
+dg eco
+dgndfgjnmfdh
dgro
dgwiD
dharokjonsin
+dhe
+dhl
+di Trevi
+diK
+diabolicdth
diamanda
+dibdabber33
dibdibdibdib
+dickchair
+dickenbals
+dickfield
+dickin
+didak
diddy420
+didnt rwt
dids
didugetrekt
-digdoge69
+dieHosen
+dies at zuk
+dietc0ke
+difjnuee
+difluenz
+digigrind
+digimonOtis
digthat
diguper
dikke
+dikke vogel
dikorbut
+dilaudid dad
+dilbertt
dill
+dill picklez
+dinklebrah
+dinwy
dioshka
+dirt box
dirty
+dirty rat420
+dirtyman
+dirtyydan
+disc o
+disco sminny
disdudsauf
disease
disrespected
distracktion
diti
+diu nay lomo
dive
divibee
+dixon butts
+dizma
+dizzee l0l
+dj en sander
+dj poolboi
+dj roblox
+dj1111
dj_khaaaled
+djawns
djerfen
+djfistingodx
djhonnyc22
+djk1168
+djm 0813
djschaum
dkb15
dkirk
+dlaldus
+dmersaregay
dmgx
dmh3464
dmmeguy
@@ -27488,172 +56079,340 @@ dmmskuhled
dmolishall
dmorgzz
dmxbutwhite
+dnb demon
+dnd5
+do o d
+dobiz
+doctorbeefus
doctorkrysis
doctorstig
+doeby1
doesnt
+dog dog baby
+dog rs
+dog yum
dog22
dogGoesMeow
+dogluvr42
dogofrivers
+dogongod
+doing time
+dokus
dom1nation97
dominicpm008
+domiuxas52
dommegekke1
+don paro
+don3tsc3m
donaldsocool
+dong bone
+dongiebong
+donkeykong2
donmaners
donnyr2hcim
+donohuey
dont
+dont eatass
+dont relax
dontiane
dontpickme24
+dontsmokemid
donzy
doobie8
doogleweed
dookie
+dooknukem3d
doom
+doomcat67
doominizer
+doomsiclepop
doorbel
doors
+doot scooter
+dop
dopa
+dopey smurfy
dopeyaf
+doris negra
dorkSine
+dormanth
+dorschbag10
+doteslintrrc
double99
+doublecross
+doublegulps
+dox
+doyc15
dp23wnnabe
+dpi
+dps7
+dr crabman
+dr evil
+dr smurf
dr3wst3rk
dr4ll1m
drag
drag0n
dragneel132
+drago_jr555
dragonizer11
dragtom
draind
drakh
drakonic
+dratini213
draxyboo
drazil7
drdrinkwater
+dreads iron
+dreadthefate
dreamworld
+dreiph
+drewsky
drickvatten
drillbit_10
+drink toilet
dripcuck
drogodon
+droidfarmer
+droopsnoot
drotRS
drouzeee
drphil10203
+druedainx
drug_yew
+drugandbass
drugs
drugsrbad
drunk
+drunk f00l
drunkwpants
drwilly92
drxfluffeeee
dssctn
+dstortion
+dstroyd
dsvgs
+dt duby
dtfmslogan
duMonster
-dualipafan69
+dubba z
dubdubbronco
+dubies4days
+duckwax
+dudash
dude
duder
+dudrid BTW
dudylson
+duedeman
duel
duets
+duette
duff skill
duffman1992
duhpho
+duked
+dulitrai
+dull needle
+dulle00
dumb
+dumbass hick
+dumbweeb22
+dumple
+dumpy rat
+dun2kaz
+duncan c
+dunerat
+dung_eater31
dunnman
+dunt
+duo virgin
+durche93
durgs
duriol
+durkology
+dusp
dusq
+duve melker
+dvnny
+dwarFcaNnOn4
dwayne
+dwvb
+dylaaan6
+dyldied
+dylodide
+dymo
dynastyzero
+dyrachyo
+dyskletiker
dyssection
+dyzi
dzhy
+dzmomolungma
+e LFa s
+e acc
+e c e e R
+e c stasy
+e ji
+e med
e pinke
+e rui
+e031420e
e1ght
+e50
e500
+e621net
eKaleb
+eL Lavish
eLSD
+eLas
eLeeT
eLqTLN
+eM Be
+eMiSk AU
eNCH
ePicnicEMan
+eSquence
eStimatic
+eXtr3Mer btw
eacy
eaekk
eagl393
+eagle shed
+easily thero
easterparty
easyMEDIA
+eat a udon
+eat my bewty
eatcox
+eathelwulf
eatmyfries
+eatmypie
+eatsdonut49
eazybreazy
eazygps
eazyws
ebbe
ebijah
+eboy gamer57
ecce
+echo cooks
+eckla
ecofine
+eddimunstr
+eddyb
edgarsjm
edible
+edilot
+edmu
edunit
+eegor
+eek monkey
+een pint aub
eenzeven
eerx
+eesau
eetbordleeg
eetuliiniBTW
+efcherry
+efci
effectiiveRS
+effing sheet
+efog
efren189
egcept
+eggo death
+eggu
eggzotic
egirl qt314
+egirl tile
egirl73
egyptasaurus
egypton
egzoff
ehdion
ehoov92
+eiaraieaieai
+eid ola
+eiflA
eigh
+eilhart
+ein Bier
+einu miegot
ejobs
ekcivtec
+ekhoplex
+ekm
+el Laneo
+el is
+el peppo
+el tubo
elDiablo666
elGoblino
elbo
+eldanari
+elden lawd
elder
+elder jam
+elder poul
elderimpking
eldestlance
+eldrich ball
elefantsrul
elfje185
elitharion
+elkcarc
elkcark
+elletwo
elli
+ellias
elliott1650
+ellipsism
ello
ellran
elm43
elmeroguero
elon
eloquent
+elsieh
+eltomatero12
elyaxo
email12345
emaq
emaru
emaw
emiiru
+emilviperHIM
emilyqt666
emiracle
+emm
+emokid93
emopapi
emptyhead
emptysoul88
emuulzzz
emvelienenko
+en Au
encoa
endless
endlessgrnd
+eneco
enemy2mad269
+enen
energymango
+eneslannn
+engrave
+enjoiskate
enlmatek
enlot
enneUni
enormousguy
+enservices
+entiesman
envetoids
eocri
+eow btw
epcr
epic
epickayle
@@ -27662,63 +56421,123 @@ epocsorekiM
eptul
er2002
eraie
+eric verdonc
erik020
+erikj20
+erilthil
+erk is cute
+erlendolstad
ermer
+ermer fudd
ernestoch
ernieK
erniethecat
+erpponen
+errikkold5
error
+error nope
+error occurd
errorwithnam
+ersatzquatch
+eruze
ervin
+erzin
+esc
eseeg
+esportspker
espress
+esssaa
+estra jen
+eteelS
eternatus
etha
+ether-or
+etsii naista
eujamaispkei
euonym
+euphoria btw
+eureka 4
euxy
+ev tesla
evanthenewb
-evengayeruim
evidencez
evil
+evil drudge
+evils ault
evirgin
evoL
evol
evonaabi
evoshiva
+ew its paul
+ewechoose
ewenn
ewgility
+ewmu
+ewvn
ex0dus
ex_shadow
+excalipoodle
excitedz
exila
exile
exodiass
exolyte
+exp waste 07
extesyturtle
extinct
extra
+extra big pp
extrastark
extratrippy
+eyes fire2
+eygs
+eyniss
ezAce
+ezzychu
ezzymc
+f a r r r
+f ainted
+f c gee
+f d b
+f ern
+f q
+f r o st y
+f reS
+f0r 20
f0rbes
f0rev3r
+f0rzca
f1elder
+f1ll2
+f1oh
f1sh1ngcrazy
f2pkiller420
f3n1kz
+f41r unknown
+f4az
+f4fight
+f8
fEmshi
fJack
fa1lure
fa2kil
+fa43ws5gdrxn
fabsku
+faceeee
+facehunt
fadc2
failbloug
+fairies ring
+faiyaz911
+faka jackson
fake
+fakeironman
+falcon30040
fallen
fallenbouse
fallengodxx
+falneek
falsehope
familypp22
famousbutnot
@@ -27726,65 +56545,123 @@ famousdavies
famwell
fan3to
fancybunny84
-fart
-fartass
+fanof
+fanook kill
+fansh
+fapital one
+fapyqt
+farmerman111
+fart taker
farth4lyf
-fartsogood
+fartypants64
farva5001
fastfoodguy
fastsalmon34
+fat bish0p
+fat miso
+fat n ugly
fatalzgs
fatalzick92
+fatblimp
+fatcactus99
fatdabz
fatdemon
+fatfish44
fatiimma
fatpapi
fatrat095
fattig
fatty
+fatty_ironmn
fattymcthick
fawaka
fawkin
fawnt
+fayeuk
+fayfey
fazIlioilol
fbah2
fcemee
+fdegierr
fdsd
+fe ar none
+fe fi fo ben
+fe fleton
+fe hessu
+fe shredder
+fe unclefro
+fe-ma-le
+feaker
fearma
+fearnooaths
+fearsome
+fech
+fed the rat
+fedposting
+feed water
+feet r neat
+feet shui
+feet tickle
fegorus
feinkostbob
fellman250
felsic
+femaledhide
+femboy fever
femiketyson
+femra
fems
+femtanyl
fenimore133
fenty
+ferbies
+ferderb
fergina
-fergus69x
ferkyy
fernezi
fernibosh
+ferric thane
+ferrotopamin
+ferrousnub
fettnerd
+ffa btw
+ffakin roids
+ffs cmon
ffun15
+fghtmeirl
+fhb ruby
fhisher9
+fi1LMma8Ke7R
fiddy
+fieryflame55
fifiz
+figey
figgiolly
+fighter8888
fighttme
fighu
figit
fiiks
+fiishcat
+fijurgt
fiko
+fikset
fill2
+filma kraken
filnrozdor
+filthiefrank
+fin hupu
final dip
finalkid
finally
+finance king
+findmydog4
finerunes7
finfinnegan
fingerd
finn
fire
+fire skull99
firebrotha2
firebwan
fireflyman3
@@ -27792,67 +56669,145 @@ firemadara
firewood149
firework19
first
+fish cook
+fish slut34
+fishbomb83
+fisher ilhan
+fishfiinger
fishnforfun
fist
+fist n twist
fistaah
fistofzeuz
+fitjamal
+fixedmanose
+fixx ur face
fizoo
+fjuc
+fk bud
+fkMushrooms
+fkWiiz
fkn seale
fl0ppy
+fl0rals
fl0xen
flabb
flaccid
+flacidzillaa
flaggeding
flaminstu
flapdrol2000
flatbroke
+flatjack78
flatpancakes
+flawskee
flax somker
+flenis
+fleqk
+flexmaniac
flexxygreen
+fligh4
+flimzzy
+flink1145
flint
+flip555
flipdoggydog
flipouu
+flipperkid69
+flke
+floch
floie
floopily
+florda v2
+florida1992
flow
+flow states
flowerbunz
+flowers
+flowerworks
+flowing past
+flpi
fluffy
+flunkerr
+flwc
flyingfather
flyingpigs
+flymouse
+flywoodhead
fmPalm
fo77y
+fo_of
+focusor
foldoutchair
+folklore
+fondledeez
fonytergus0n
food
+foom
+foookz
+foot fe tish
footbag
+footgobble9
+forbiddengol
forcestealer
forevercc
+forfun_ED
+forgeleader4
forkheals
formazion
+formerly act
fornitesweat
forrestriley
forss1
+fortnitecuum
forty7
fortyfour44
fortyfours
fotjonxd
+found RS2019
fourecks
+fowrt
+foxMcCl0udd
+foxair
foxdude909
+foxi melissa
+foxmr2
foxological
+foxspirit
foxxit
+fp
fp4bank
+fpsbowser
+fr0stys
fr0zen46
+fractalion
+frail
+franklinzule
frantam
+frawzti
+fredz1
free
+free rations
+free willy1
freeheadbutt
freekek
freekface99
freepknub337
freeze4peeps
+fremenik
+freshaf
+freshdougie
fressi
+friccSailing
+friday x
+friedz
friendlyduck
+frierenfan69
+frodobaggens
+frog37
frogggggggg7
frogmeme420x
+frogposting
froock
frootl00p233
froppy
@@ -27860,150 +56815,269 @@ frosteazz
frostfire089
frostkatss
frothsy
+froxey
frozen
+frqke
fruitdeeps
fryguy20
frzen
+fskencha219
+fsnack
fsteve
fsxd
ftSlimShady
+ftmg
fubar
fudkingname
+fuhrari
fukduelarena
fuktig
+full service
+fullrune383
+fun e name
+fund issues
+funk
+funk it
funky
+furi xD
+fusarium5
+future days
+fuwamoco fan
fuzzlumpkin
fuzzydenuts
-fwft07
+fuzzypapi
+fuzzypupz
+fwapdokopjai
+fwft09
+fwip
fxck
fxck versace
+fxdb
fyfaen
+fymcgee
+fyr irony
fyromaniac
+g arre
g o o w
+g u L z
g00dz
+g0_ober
g0d slayer19
g0dofgames
+g0dz target
g0ld
+g0rgelzak
g1g1tyg0o0
g1n00tj3
+g1o
+g4rug
gIassy
gOWObs
+ga zr
gaaaaleth
gabba-jabba
gabbe314
gadnukB0W
gaffel
+gagifidi
gaht
+gaht dangit
+gainsaid
gainz
+gainz no
gainztrain9
+gallidogs
galx37
game
+gamedbroski
gamelsbad
gamer
gamer63738
gamerb0y
+games sheet
gamesalright
+gamin hard
gang
+gang gastino
ganger34u
+gangstersfly
ganjah lord
ganoze
+gapin ass
gaping
+gargalonmyd
+garn woolies
+garra
+garymunzen
+gas watah
gasang
+gatekeepr
gatlin
+gatorbait61
gatorclue
+gaumcat14
gavin
-gay4gp
-gaypoika08
+gay avenger
+gay corn
+gb
+gd5
ge1uk
gecs
gege4646
+gegebee
geitz4
general_a3
generalneos
genghys
+geniuswinner
gentle
geof
+georgemonger
gerdlol
gestrikt
+get pregnant
+getcance
+geten30
getpixelz
getsnipez
getting
geusjj
+geve en neme
gewoonhendri
gezzle
+gfink
+gg Goombas
gggochu
ggremlin
ggroeffus
+ggrr
ggwpezgame
+gherkins
+ghliz
ghost
+ghost of CVS
+ghostlyjon
ghostmahi
+ghrimdrakan
+ghxstboy
gianni025
+giannnnni
giant
giantsbane10
+gibsons dog
+giffnamepls
giga
+giga zooted
+gigglybear
gijsro
gilgir
+gim Bam
+gim ajuin
+gim so bad
+gimeurgpm8
+gimhunter02
+gimmey bear
+gimpeta
gimpinator14
+gimtmbj
gingasnapz
+gingerr
ginjembre
gino2315
gintoki
+gioh
girl
girlbossed
girthing
+git gud kekw
give
+give in
+give me 1 gp
giveortake
givmemonyplz
giza
gizmywizz
+gkfdhsjbgpas
+gl barnie
+gl gf i win
+gl lmfao
gl0s2n
gladwin97
glazura
glgl
glica
glingster
+glitch1128
+glooboowhoo
glotis420
glowmastree
glumburger
+gmac33
gmtn
+gnak
+gnariska
gnarrrkilll
+gnobo
+gnome pegger
goGETTER87
+goal freak
goat
goated
goatflocker
goblinsyler
+gochugaru
+godblaster69
godfreeB
godmiljaar
godmysavior
godofvoid
-godsmack69
+godsdankweed
godss
godver
+going2maxnow
+gokhanakan
goku9172
+gokublk409
golaguard
+goldenN0B0DY
+goldest cat2
goldiepawper
gomikasu
+gon dor
gonarusinat
+gone numb
+gonewild
gonsoLE
+gonz o
good
+good duck 4
+goodboi525
goodlife
+goonette
goontuna
gooootsby
+goos fah bah
goose
goosegoose22
gor7
goranfr
+goreshitfan
+gorgewkush
goroka
+got u m8
+goth mime
gothic
gothorian
gotmadtree
gotoschool
gottaRash
gotzeeben
+goy street
gp294
gpawshaft02
gpf93
gr0ve
+grace life
graftosh
gramss
gran chorizo
@@ -28011,311 +57085,648 @@ grandp4
grandpa
grandpashome
grandslamhit
+graphist II
grashuis
+grass hopper
gratis
gravetheif
+gray ass
+greasy bacon
greasyguy19
great
+great bazza
+great blazer
+great keith
+great pkay
greeaf
green
greenbuds1
greenfleet1
greenie14
greenm4444
+greeny4
+greenzyyy
greg
+greg btw
grey
+grilecheese
+grillmagnum
grindin2bond
grinschen
grizzy77
grlobe
+grogybog12
gronoc
+groogns
+grossedinde6
gruelsipper
grumpyy
+gt i
gtrpower3
+guardy
gucci
guirkle
gularies
gulibleidiot
+gullefjun2
+gulp my knob
+gumlord54
+gunbladelh
gungaman3
+gunnmoses
gunnybear
gunzip
+gurz
guttsberserk
+guuvin
+guy123452345
+guyfranklin
guyhasaname
+guyladriel
+guzzlinbrews
gvfsa
+gwaph
gwaphics
+gwapo gwapo
+gwb
+gwen-artemis
+gwiffdakid
+gwogoudain
+gwug
gypzys
+gyxl
+h ertog
+h re
+h ugo
h00cares
h0rseZ
+h2j
h3hz
+h4h4h
h4ndshake
+h8browns
+h8dip
+h9g
hEAdGLiTcH
hOsujaRS
+haaksrikko
+haam
habitus
hacchi
hackening
hadibaam
hagerlund
haha
+haha lul
+haha nice xd
hahaLMAOlol
hahaa
+hahaa-ukko
hahaha
+hahaha LOL
+haiiG
hairahcaz
hairy
hairyraccoon
hairytaent
haistavittu9
+hakuikoyori
+hakumaata
halal
+haldfhaklfa2
half
halfcrimp
+halfrightfox
+halftimegod
halling1
halo
+halo 238
+halo is scum
+haloumbs
hamdrip
hamers
+hamhand
hamilton
+hamilton fan
hammade
hammershark
hammu666
hamptonboys
hamthenoob
hamzullah
+han sohee
hanakarjala
+handi 0_0
handi9900
+hangry_bird
hanh
+happi hippo
+happyprophet
+har tig
hard3x
hardcoresque
+hardstuck gp
+hareby
harelmatlaw1
+haringbata
hark
harleybegum
+harmony
+harmony w
harrpp
harryderoest
harts0295
harziol
+hasansahl
hasbulla
hash
hassbulla
+hat foe
+haterz
havfherter
+haw yee
hawkesbay
+hayati enta
+hayden787
+hazel nut
+hc pilszen
hc_karadeniz
hcgoldslaye
+hcim gud btw
hclirongang
hcmemekiller
hdhd
+he a 1O but
+he box jonge
+he r b
+he4
+heGee
hear
+heartvessels
+heast oida
+heatassnugs
+heatwave305
+heavygim
+heavyiron94
+hebrewmytea
heca
+heckn frick
hedonismbot
+hee haw 255
heegeer
heel
heelgoed
heeming
heeyhallozeg
+heftZEUS
hehe
+hehe heheh
hehehehe
hei954
+heimy22
+heizenberg11
helgrimm
+helicopta12
hellobob488
hellofpures
hellohello
+hellohelloom
+hellper
hellreaper25
help
+helpa
+helpusobi1
+hembree
+hemmingsson
+hemmy
+hemran
+hemstad
henkka89
henkleingeld
+hennnin
henson23
henzer
heppytako
+her mager
herb
+herb btw
+herb l0rd
+herb l0rd jr
+herbdean0981
herbi
herbibear
here
herezacsko
herkimer
heros
+herrasmies68
+hesedona
+hesi pullup
hestakuken
heuj speulen
hexergeralt
+hexxers
+hexzie
+hey axel
hey im ben
+hey its zul
+hey_imgrump
+hey_rayray
heywoodya
+hh r
hhdrgu
+hi im miku
+hidde xddd
hiddeboven
+hidesonkush
hidlandboys
high
+high bonsai
+highIMcamila
highelolux
+higher man
+highfly94
highprice
+highright
highsassy
hightoo99
highventure
+hih
hiiggiinss_5
hiirihaukka
hikipastori
+himokarpaasi
himself99
+hiphopdied
hipocracy
+hippofart27
hippyjump3
hippytrippin
hirai
+hirai momo
his7
+hit trees
hitchclimber
+hitsumabushi
hitto
hitz
hiunknown
+hiya jase
+hizli maymun
+hlen
+hlua
hlucky
hm08
+hn k
+hnge
+hnsky
hoangbach456
+hobbit head
hobosloveme
+hodl link
hoffnungslos
+hol my got
holdadoor
holden21
holdenrulz6
+holidayRus
+hollowking
holonomy
holy
+holy chad
+holyfizz
holypalo
+home2get
homestank
homie jaquan
+hompkerbenis
honda
honeywheat
honourpig48
+honscy
hooah89D
hooliganism
+hoonyboony
hoosier4life
+hootis4
hopOFFbish
+hopeakettu25
hopeless0ne
horkkaaja18
horror
horsedik7
+hos
hoswoo
+hot otter
hotdogmum99
hotpants
+hotyogapants
+how 2 use ge
+howliett
+hows it garn
howyadurrr
+howyodo
hrby
-hsgs69
+hrsn
+hs
+hs3
huang9296
hub154
+huealldaym8
huge
+huge cog
+huge man big
+huge ovaries
hugh
+hugh_who
+hugheberto
hughjazznut
hugjam02
+hulikopteeri
hulikopteri
hulken532
hulrikon94
+human6000
humble
+humjiboi
+hummerspeck
humpmedumpty
hunden
+hungrypit
hungwonglow
hunter
+hunter01132
+hunter123216
+huntin_pets
+huor4hansu
+huoranpenska
hurt
+hurtswhenip
+husbandowo
hush
huskyheaven
+hut dugs
huutonaurua
hwow
+hxdd
+hxzy
+hyasf
+hycoda
hydra
hydraboss
hymke
hypez
hyphynx
+hypofelix10
hyprmax
hyung
+hyvintoimii
hzpascal
i 0nly skill
+i Bmx
+i C D
+i Kelly
+i Kyle
+i Shin Chan
+i Spartan
i Stugbert i
+i URNn
+i Val
+i am hua ren
+i am iron xd
+i am nickle
+i am rocky
+i am soo dry
+i bets i
+i ch i
+i dandy
+i dcd 4 sets
+i disabled
+i done
+i eat noods
+i forte
+i gag
+i gor
+i got dust
+i grug
+i hit 420z
+i i i i
+i john 96
+i look great
+i lose gp
+i need top
+i need you
+i ok can win
+i poop alone
i praise mvp
+i preferhead
i r muffin
+i r4piid i
+i ronman
+i vexterr
i-i-istutter
i0 strength
i0am0the0one
+i126
i2eally
i2legit
i2me
+i3nd Legends
i420u
+i50
+i8 2 l8
+i9
iAIex
+iAM Pleb
iAUSSIE
iAdriaan
iAlch
+iAlchedNieve
+iAmNotSharky
+iAmaWiseAss
+iAmen
+iAttributes
+iB Lifted
+iBal
iBallr
+iBeDorky
iBeanie93
+iBeast It Up
iBeatNavy
+iBeleti
+iBelg
+iBlack Zeus
iBlake
+iBloodsicle
iBlurks
iBosstastic
iBoughtpizza
+iBrandon
iBukowski
iBunZoot
+iBurkie
+iBurn Dro
iBustedaNUT
+iCakoRS
iCarna
iCbarr93
iCh0sen
+iChangeling
iCheezedOff
iCheze
+iChugBleach
+iCiga
+iClickYellow
iCmurda
+iCoconut
+iCrank a lot
iCrash
+iCreeme
iCyantist
+iD Dazza
+iDH
+iDabbedOut
iDan
iDanny13oy
+iDark Jesus
iDashio
iDashwood
iDeathlok
iDerpo
+iDez
+iDo RageQuit
iDoNot
iDontWinSad
iDrankCOFFEE
iDrebin
+iDrexler
+iDrops
+iDuiveltje
+iElfy
+iElysian
iEmery
iEpa
iEprod
iEuph
iEuroVamp
iEvergarden
+iFailAgainnn
iFatalFoei
iFerrumMan
+iFeud
+iFightClouds
+iFightGiants
iFire
+iFoRGe
+iFrads
+iFradz
+iFrogs
+iFry
+iFucter
iFukFatChix
+iFurb
+iGab
+iGarns
+iGlaceon
+iGlitched
iGlowGreen
iGohan
iGotDds
+iGotDibs
iGotem
iGreig
+iGuDMaFF
iGuessUrNew
+iHazelnut
iHenrie
iHenry
+iHiyori
iHockey
+iHolydude
+iHuntie
iHydroxity
+iHydroxityv2
+iIimesiahiIi
+iJ0HN
+iJ4CK
+iJCLEE X
iJake
iJamPancake
iJesslag
+iJezuss
iJfr
iJohn
+iJomm
iJwu
iKHole
iKILLN
+iKantu
iKarl1s
iKerry
iKitch
iKitz
+iKonijn
iKoning
+iKozak
iKristov
iKurko
iKushUp
+iLEFTmyGF4RS
+iLL Sushi
iLeftHer4XP
+iLegacyX20
+iLetaker
+iLeveled
+iLikeTacos
+iLikeTheStok
iLikeuAlatte
iLoner
iLove
iLoveYou3OOO
iLuckout
+iLuv Pandas
iLuvMyMilf
+iLuvSubs
+iM3RKEDu
iMADbro
iMahjarrat
iManiac
+iMark 1
+iMarkl
iMartin11
iMatey
+iMeeger
iMellek
iMelli
iMementoMori
iMeo
iMichaelN
+iMikail
+iMikey
+iMogUCope
+iMotown
+iMushh
+iMuste
+iMx
+iN3K0
+iNamaste
iNeedBeaver
iNeverMor3
+iNewbcake
+iNewton
+iNibble Bats
+iNz
+iOPeveryday
+iOhmz
+iOsmumten
iOwl
iOwnU4ss
+iP1
iPIMP
iPKedEpstein
+iPacmanSam
iPaki
+iPalumor
iPatrickN
iPegAsians
iPerfectoX
@@ -28325,6 +57736,7 @@ iPink
iPlugg
iPod
iPop
+iPray_Guthix
iPresident
iPunchCones
iPure
@@ -28337,9 +57749,14 @@ iQuittedCiao
iRNGizzed
iRekt
iRepToronto
+iReue
+iRev Man
iRezlo
+iRoN cUj0
iRoNmAnSdUmB
+iRonAllot
iRunTh3World
+iRunzo
iRycoda
iSaran
iScape
@@ -28349,116 +57766,255 @@ iScream03
iScrewedUp
iShibby
iSkane
+iSkript
+iSlay Girls
iSlayCookies
iSlayGoat
+iSlenderMann
+iSmashUrGF
iSniffCows
+iSnowmobile
iSoulReap
+iSpare
iStayLowKey
iStealSex
iSteele
+iStick2Corp
+iStonee
iStream
+iStreetfight
+iSuhdle
+iSwarly
+iSweat
+iSweatyYeti
iT0m
+iTan
+iTaz
+iTed2cold
+iTheDarkKing
+iTheodore
iThiellie
iTisk
iTmetzo
+iToxic
+iTrin
iTunder
+iTw1sted
iTyler
+iTz Command
+iTz Frosty
+iTzBoo420
iTzGoinInDry
iTzKATalyzt
iTzSnypah
+iTzTurtlexD
iTzTyLeRXD
+iTzWho
iTzZ
+iTzxLiMiiTz
iTzzVanquish
iUberz
+iUsed2Corp
+iUub
+iWilkel
+iWillz
+iWithdrawal
+iWonderWhy
iWyatt
iYahwehi
+iYellowClick
iYunis
+iZ4
iZorru
+iZuny
+i_murder_bh
iafx
iain19
+iamAFK
iamCanadian
iamMcLovin
iamfish
+iamfried247
+iamfuss0100
iamgreatrng
iamlucas19
iamonfiyaaaa
iamperkins
+iamvery cool
iamvoldemort
iamzed
+iandrehehexD
iateyourpie
ibbenbueren
+ibn Mukhtar
+iboomedyou
+iboyfly
ibr4him
iburythebone
+ibushmani
ic3d
+ic3d c0ffee
icannotboss
+icanread321
icantspelle
+ice beam
+ice juice
+ice-nine9
+icearrow28
icebolt19987
iceburg189
icecoldbreez
iced
+iced marbles
iceman000
icewall0w
+ichau
icjbi
+icky sticky
icutL0g5
+icy ded ppl
icyT
icydilldos
+icypolarbear
+id c
+idc
idcy
+idfap
+ididnthither
idiedonmyhc
+idiom
idiot
+idiot game
+idiothead
+idk chill
idkgoogleit
-idkhow2osrs
+idkh0wtoplay
+idkwhatdo
idle
+idle1
idpoen
idrater
+iduggz10
+iekaajer
iekgaa
+ienai
+ifantomas6
+ifarted42000
ifootfondle
+ight
igiddeni
+iglo16
igotdaice
igotnolifee
igotnoolife
+igotwingz
igotyour99s
+igrimmerz
+igugh
ih8urkind
ihan
ihaveanxiety
ihavitunopee
+iheartBBLs
+ihopeurope
+ii Sahir ii
+ii am teaser
+ii bad guy
+ii forte ii
+ii love cats
+iiBink
iiDivine
iiDrackidii
iiGallardoo
iiHydra
+iiLuckyVibes
+iiTz Nothing
+iiZEEii
+iiZno
+ii_TrYHaRd
iiaannaa
+iiiRood
+iijelloo
+iikasoyi
+iimperious
+iinsin
iioktb
iirc
+iitsjarod
+iitz deebz
+iitzz Ryan
+iivy11
iizoneout
+ijoinedthis
ijust
ijustgotreal
+ijzer ali
+ijzer vreter
ijzeren
ijzerenman1
+ik itachi ik
ikea
ikeep1r0lled
ikil
ikillstuff
+ikiroz
ikoyouboy
+ikp0wnsz
+ikpakjou
ikrr
iksalion
iksd
iksdeee
+il malocchio
ila161
ilapaR
ileax
ileft
ilegalTruble
ileppmot
+ilfi
ilike2gamble
ililliiilli
+iljang
+ill Dottore
+ill-Money
illadelph
illenials
+illisible
+illmaister
+illmatic
+illmindhop5
illotex
illumea
illuminavi
illyreia
+illysia
+ilookcat
+ilovecitywok
+iloveinsulin
ilswisa
+iluvducks
+ily stepmom
ilyakchuk
+im 1v9
+im Jaacob
+im Noah
+im Z a n e
+im a learner
+im a pur8
+im at cox
+im bad tbh
+im batu kham
+im cats
+im dandy
+im huge
+im in charge
+im nlf
+im pogging
+im ruben
im solo rose
+im tr4vis
+im ttZ
im4everxerox
imAcidic
imAhri
@@ -28469,126 +58025,302 @@ imJT
imNEWY
imPapu
imStef
+imWebby
+im_pro_jones
+ima big boy
+ima survivor
imafatscaper
+imago loop
imaybegod
imbaconyum
+imbueddog212
imbutz
imbuyingf
+imcahos
imcaprise
+imdrunkashit
imdud
+imfi
imflavio
imho
imhuge
iminarager
-imm0rtalb0ng
+imjeremy
+immachin
+immaturely
immef
+immirgant
+immmersion
immortalz
+imnotdani
impaired
impartial
+impek
+imteddybear
+imthenalls
+imtogepi
+imusualyhigh
+imzahikell
+in africa
+inSec
inTheSlum
+inb4elysian
+inc
incant
+incci
+inclibe
includingtea
+ind
+indebara
+indian
inescate
+inf nick
infamousO775
+infamousjew
+infare
+infernalwhen
+infessian
infragant
+initiator
iniu
inject
+injinourme
inked
inldgwetrust
innSink
+inner child
insaned17
+instagation
+intja
intwystis
+invictecum
+invirtua
+invisybl
+invynsable
inwervs
inwnucleus
inxx
+ioe
iojerfwpjiof
ioliteKnight
iolm
-ionly420XD
+ioncolliderz
ionlypickadc
+ionman
iorcsrox
-ipickweed
+iownw69
+ipfreely939
+ipwnkthxbai
ir0nschlong
+irak93
+ireq
+irhunter
+iriee NZ
iron
+iron Dreven
+iron Fapkin
+iron Nido
+iron bewts
+iron carly65
+iron chur g
+iron colb
iron cuzibro
+iron d
+iron dafanek
+iron dumle
+iron evoo
+iron gariks
+iron grogu
+iron hobbs
+iron i jad i
+iron imp 89
+iron kobe
+iron kydrol
+iron mazie
+iron nakno
+iron nkellen
+iron sfgiant
+iron snak3s
+iron snurd
+iron t2
+iron te_un
+iron to main
+iron tylerr1
+iron veil902
+iron veyydot
+iron vow
iron xarcher
iron0
+iron0_o
ironBellukka
iron_day54
ironandwhine
+ironarrow
ironbandiit
ironbass
+ironclimber1
irond
ironderp
+irondude686
ironerextion
ironerrosann
ironeye
+ironfara
+ironfather8
+ironfyi
irongaga
+ironguxiz
+ironhuuu
+ironic it is
ironikcronik
ironinfinite
ironjssnoob
ironjustice
+ironjutku
ironkendall
+ironkevkev
ironlizrdfuk
+ironlog215
ironlooks
+ironly fans
ironmortel85
+ironoujust
ironpower29
ironpuni
ironskunkki
ironspig
irontsuki
+ironvesku
ironwortel
ironwoss
irradiated
+irregularly
+iruste
+is an option
is skimpin
isCatrileo
+isayswegyolo
+isleepwith3s
islugo
+isoPROpain
istealyoloot
isuwu
+it do be
+it ends now
it0b
it0keup
itachi9113
itbch
+itirof
+itisdre
+itmeautim
+itroy v2
+its Bread
+its DeFib
+its Hoffman
+its Knetter
+its Mewtwo
+its Polle
+its a ginger
+its aight
+its an 8th
+its leviosaa
+its not mine
+its the game
+its20after4
+itsAden
+itsErnie
itsGLD
itsJayy
itsNoki
+itsSt1cky
itsWum
+itsa
itsa_feature
itsaart
+itsalic
+itsbenny
itsbill
+itsdanlol
+itself
+itsfwhobar
itsmewarreng
+itspajamaday
itsthedirtyJ
+itwasme
ityttmom
+itz Ozie
+itz Tastey
itzjaycie
+iua
iusedtosleep
ivao
ivibondivi
ivlr
+iw
iwearIRONirl
iwinulosety
+ix7
+ixGOONIExi
ixJake
ixoniron
iyyghg
izmibence
j e company
+j o h n z
+j o l s
+j sta1in
+j uddr
+j wet
j0rd
+j0rdb98
j0shNZ
+j0shwah
+j1nx
+j311yb311y97
+j3ffmaill3
+j3rvi5
+jDaledge
+j_mes
jaakqoo
+jaatzy
+jackBingus
jackLonghorn
jackancoke7
jackjester
+jacksonlol
+jacola
+jae Bee
jaguarundi
+jagweed
+jagweedle
jahan
+jahmelo
jahnjo
jahrezeiten
+jaitt075
jajademonrat
+jajajad
jake92
+jake9549
+jakeyvil
jakkaru
+jakste r
+jaksterlite
+jakuusa24
+jallon
jalucox
jamaz8
james1234269
james68889
+james9f
+jamesishere
+jamesw
jamflex
+jamgyo
+jamie g 456
+jamjarrrs
+jamm
janguy
jani
jankywanky
@@ -28597,51 +58329,104 @@ jaq0
jargonship
jarjoevis
jarngrimre
+jarno561
jarnrisi
+jarnwoodchck
+jarsko
jaseDemon
+jaseGrumpy
+jauu
+jaxta
+jay 6ird
+jay oh kay
jayst1n
+jayveedee
jaza
+jaza maxwell
+jbirrd
+jd345
+jdockett
jdore
jdsgsxrthou
jeREEEEEmy
jedi
+jeeeeee
jeep
jeezuschrxst
jef skhiii
jeff
jeffswifty
jegerklog
+jehhjr
jekkujaba
+jellyfish49
+jellyjam20
+jem is cool
jerome
+jerrys ags
+jerrys venny
jerzieboy18
+jesjesjo
+jesus bone
+jesus vape
jesus4gives
jesusiswrong
+jesust
+jetalexnder
+jettyrr
+jewellski
jewjoking
jfan
+jfc
+jfrank127
+jfy
+jfyulopaef
jheezuz
+jhinnessy
jhonlee48
+jhoog
+ji mbo
jibmask
+jicc
+jigx
+jihal2020
+jikrak
jiksee
+jim jones it
jimbob1
jimbobeda
jimdeut06
jimmy
+jinjji
jippey
+jjammerweer
+jjerrbo
+jjingx
jjpanther95
+jkfizzy
jkre
jkthekilla
jman
+jmjmjt01
jmusilli11
jmw1031
+jndi
+jnjo
+jnlffs
+jnyjny
jobljobl123
jochieboy6
jodilynne
+jodo wollos
+joe the pop4
+joepie
+joestrider2
joey0343
joeyisstoned
johhny2hatz
-johnbie69
johndalton95
johnnyandtam
+johnsmain
johnstaLoL
joje9
joji
@@ -28649,7 +58434,10 @@ jojojo357
jokaranpampu
jokemyster
jokerpoker
+jokkefar
jokr
+jolle rmm
+jon ko
jonehehe
jones
jonk33n
@@ -28657,56 +58445,106 @@ jonko
jonnetuinen1
jonnywormy99
jonppeli
+jonwillbert
+jonyants
jonzii90
joohhhnnn
joop59
jordaaaan
jordlar
jords
+jordy8878
jordymans
jorfee
+jorge w
+jorma heat
jortdebonobo
+josheroni
joshuab98
joshy872
+joshykun uwu
jossejoks123
+jossiee9
joster
jouv
+jovic
joygi
+jozn
+jp s
+jpjpj
+jpmonkeyboy
+jpruee
jqzz
jre257
+jrwheelyy
+jslashk
+jsoaksdawg
jstrot
jta1992
ju1ce
+juaco torta
juan09gon
jubbediah
juggernaught
+jugiwow
juice
juicy jones
juicyj03
+juicyjoystic
juju
+juke
+juketsauli13
juks
+julia uwu
jullbrew
+jumpe
jumpshot7
+junami14
jungle
jupi234
+jupilersjuk
jupl234
jusiuke
just
+just living
just2own
justJust
justLush
+just_willie
justamemerr
+justaname20
+justapethunt
+justarabbit
+justin5454
justinttu
+justluxy
+justsomenoob
justsomewood
justwin4head
+justwitching
jutku22
+jutmeister
juwgrehg8w30
+jwalty
jwheaties900
+jwles
jwov
+jxdoo
+jye2014
jynzziii
jyripetteri
jyyhnas
+jzhua
jzm0
+k a p s
+k anao
+k e y e r
+k ep
+k ian
+k oga
+k u h
+k um man
+k-rock94
k0ed y0oh
k0mpact
k0nch
@@ -28714,76 +58552,145 @@ k0nna
k0rrup7i0n
k1dnam3dcud1
k1lla
+k1lla cam
+k1ngzinho
k3yblade
+k6k3
k80may
k9k9k9k9k9k
+kFlipsta
kMikey
kUwUmiko
+ka r el
+ka vi
+ka wa
+kaaf
kaali
+kaalwo
+kaaskrok3t
+kab000m123
kabal1995
+kacy
+kaffetime
kahleparta
kahvi
kahzaohimark
+kaii tangata
+kaimann
kaiokenz
+kaizen1
+kajyboyyy
+kak_kis
kakes
kako666
+kako666 ii
kaksaking
+kalacaodan
kalev
+kalijaveikko
kaljunaama
kaloopsia
+kalusto123
+kalxb
kamekazi
+kamerucito
kamika
kammoooooon
+kanchazi
+kandids
+kanga roe
kangaroo
kannv
+kanyefan22
kapot
+kappachino
kappaross420
-karambaa69
+karambamb
karelzzzz
karibola
karil
+karilol
+karma dies
kaspery0
kasperyo1
kasrug
+kassi
kastekann007
+katelate
+katiegore
katinnekke
+kavachi
kavinskie
+kawasakki
kawi
kawkky
+kawnoz
kaynori
kayxiv
kbest777
kbuns
+kc3
+kc3477
kcaaJ
kcmeatlover
+kdani
+kdawg710
+kdog420
kdw27
+ke-bun
keatonboss
-kechhunter69
keegan789
keekluulz
keep
+keep going33
+keepitdedpls
keesie7
keezuth
kehd
keilaaa
+keiniks
keittokinkku
keittoo
+keiwa
kejo
kekipua
+kekw9001
kela
+kela fan
kelan
+kelan miehii
+kellapea
+kemabi
kembot
+kemosabi
kempster8
+kenchuuuu
+kendawwwg
kennynoodles
+kenya help
kepijuku
keppuli
+kepwontmax
+kerekewere
+kerm jump
kerwin
+keskorian567
+ket boof
+ketaccino
ketawuss
ketchupfles
kevin
+kevinator41
+kevinnnggg
kevpurp
+kevvaGG
+keyggre
+kferd
+khaki cuffs
khxn
+kiba420
kibeleza
+kibsy
kica7
kickback
kiddoseta
@@ -28791,102 +58698,169 @@ kids
kidsteve18
kidz
kiefcheef
+kiiiiiiiiid
kiix
+kil lu a
kill
kill3r
killah
+killakristy
+killanoob93
killconey84
+killcrab
killd0zer666
killedual0t
killerline
+killnack
killthatree
+killwi5e
killy
kilpi
+kimachevich
kimbo
kimpsa
+kinako4
kind
+kinda soft
kindaanxious
kindocool
king
+king lee166
+king stuff1
+king-tiddus
+king420smokn
kingblackops
kingcuzh
+kingdaddyIM
kingdale26
kingerr
+kinghrvatska
kingknightf3
kingkong1211
kingofmanse
+kingprince
kingrizzla2
kingsardine9
kingsje
kingswood
kingvoid1083
+kinky fish
kinobi
kinzyyy
kipitril
kirby421blzt
kire7693
+kireeh
kiri2kun
kirkaye
+kirky 127
kisipicka
kisses
kissmyassetz
kitashan
+kitkats GIM
kittymeow556
+kivipaska
kiwidson
kiwie
+kiwiibear
+kjekken
kjellingeee
kjeltringen
kjems
+kk lol
kkDV
kkangaroo
+kkarl
kkjamin
+kkman45
kl00g
+klaaore
klacen
klampo
+klankerclean
+klassiskt
klef
+kleshkebem
kleu
klexosfox
+kleyver22
+kliefhead
kll4mee9
kloh510
klojo103
klojo105
klopt
+kluizen
klycko
+kms fast lol
+kn0ws beers
knani
+kneel2me
kneeslapperr
+knickname
+knifemanha
knight
+knightnate8
knobb
knobby
knokro
+knotts
knox
kodakid98
+kofelad
+kojak1211
kokimon
kokinaattori
kolb
komari_k
+konar simp
+konb
konch99
+koning broer
+kontiainen
+kony
+koo de gras
+kooks only
+kooltrickz
+koronaaaa
kosiq
koudekroket
kounga
koyhalaulaa
kozel
+kozina
+kozzuu
+kpt
+krZ
+krab meat
krad
+krakenwsn
+krakim
krakkakkak
krakodile
krat
+krazyfaken
+krb 16
+kreepingdeth
kreeq
+kreesie
+krewl
krikenator
krillzscape
krioyo
kripu
krisaaferfi
+krnjellytv
+krobi
kronicganj
kronopes
kroodjebaass
+krp
+kruizin
kruuuuben
krxW
kryptocookie
-ksap69
ksdnklowdss
ksiadz
ksko
@@ -28894,159 +58868,344 @@ ksubbi
ktsmo
kudryavtseva
kugelencas
+kujan2
kukerino
+kukko soosi
kukrishikari
kulers
+kulers bsk
kulju
kulso
kulwreck
+kumiko okada
+kurasaki21
kurdikana
-kurmeli69
kuro 275
+kuromi irl
+kursa sucks
kurtebener
kush
+kush tacos
kushmas
+kusib
kusimursu24
kuvaiti
+kuwait333
kveemanne
kwak
+kwak eend
+kwall
+kwarkje
kwdn
kwinus
+kwuantadyme
+kxde
+kxlle
+kxzu
kyaa
+kyanochaites
kybl
kyfu
+kyle of pvm
kylehwog
kyles
kylop
kyssysmeua
kyurem_vrah
kyykanhenki
+l Am Mathew
+l Athena l
+l BTW Envy l
+l Buzzsaw l
+l Click l
+l Darken l
+l EARN MAN
+l Elija
+l Fam l
+l Feather l
+l Floss Fish
+l Flynn
+l Freya le
+l Hav Ligma
+l Kelpie l
+l Killua l
+l Lena
+l Love You
+l Macca l
+l Misfit l
+l Mister l
+l Nz l
+l RSK l
+l RWT l
+l Snus l
+l Steph l
+l Succubus l
+l Sw0rdm3n l
+l Viz l
+l am RON
+l am cute
+l cup
+l failex
+l lemon
+l u g i a
+l unchbo x
+l-LEVY-l
+l-Relinquish
l-l-L_l-lL_l
l0H3aV3nLy0l
l0ne0ne
l0rellai
+l21
+l23
+l33tsuperh4x
l3LACK
l3W0FPI
+l3en
l3enjie
+l3ezzerk
l3ishop
+l4n
+l5h
l7ivine
l8tenite
l995
+lA R R O Wl
+lAlexAnderl
lAnomaIy
lBaecob
+lBakin
lBrent
lCEBERGSLIM
+lCONlC
+lD an
+lDFC
lDalel
lDanilo
lDark
+lDark ice
lDerby
lDezzy
lDokkum
+lE N VY
lGuess
lHawke
+lHong Kongl
+lI pv M l
+lIHlIIlHIllI
lIIIlIlIIII
+lIIlllllIlll
lJWl
lJoynerl
+lKanel
+lKeith
+lKenna
lKenny
+lKlas
+lKyle
+lLY Harambe
lLewis
+lLupo
+lM Nathan
lMarkl
+lMercyl
+lMr Zaros
+lNSF
+lNTOXlCATlNG
lNerdRage
lNolan
+lPaleHorsel
+lParticle
lPeriphery
+lPoe
+lR0NM4N
lREKEEN
lReece
+lRossy
lRyan
+lSaiyanl
+lSellFeetPix
+lSkinny
+lSlayer
+lTS ON SIGHT
lTedl
lTextbookl
lTlTITlTlTIT
+lVIaGiK
+lVictorl
lVitor
lVlango
lYungPlaguel
l_Thunder_l
+l_wyverns_l
+la flare
+lacefield07
lactosebad
+ladsquiron
lady-yoshi78
ladyspartin
+lafreniere13
lagamuffin
+laggium
lakde99
+lakey peak
+lakeypooh
laks
+lala u death
lamJason
+lambar
lambreturns
lame
lamepun3than
-lampen69
+lamironben
lamshnarf
+lamyourdeath
+lanch
+lanthe
+lapyflapy
laqsative
lardosio
large
+large moist
+large nob
large pox
+largewillow9
larinen
larl
larsbeuk99
larsnjun
larvacorium
lash209
+lasseboi
last
+last katana
lastdcplz
lasyy
+later gater
+latinamx
+laughingbisc
laura
+laura froggy
lawkingkong
+lawo1
+laxasia
lazarus
+lazy aiz
+lazydj2
lazyhitman
lazzabazza11
+lcefiend
lckle
+ldy
+le iromax
leafsevens
+leak organs
+learncox123
+least toxic
leather74
+lebanon d0n
lebusoft
+ledy0710
leech
+leech iron
+leech keeper
leechyGP
+leehi
+leesha locks
leetjojo
leevi22
leewhiffy
leewi
leggie
+legioen
+legionbgbear
leglizeRanch
+legn-dary
legohuis99
leipo
leivonnainen
lejhobs
+lejhonni
+lekkergras
+leld
+leliwuz1837
lellikedraak
lemeborrowgp
+lemm y
lemon
+lemon 25
+lemon cookie
lenda
+lengf
+leo vzla
+leos main
+leoshnoire
lepetitpois
+lepicklenick
lepo
+lerpledore
+lesel
+letos111
lettam
+lettername
level-103
+level-125
level-596
levendi
levon
lewcifer8118
+lewdogg
lexi
+lexi bell3
lexicon7
lguana
+lhommerun
liamde
+libad5343
libertador
liberteeeee
+licdik21
lick
+lick my chad
+life is shit
lifesalaugh
lifter
light
+light year
lightfader96
lightningess
ligma
ligma2
ligmadich
lihaamm
+lihavadino69
+liisa
liisankissa
+lijkenpikker
+like cooking
+lil Mamacita
+lil b
+lil bumpp
+lil chris 15
+lil ducky69
+lil gay cat
+lil jev
+lil mage013
+lil zeze
+lil zuck
lilBula
+lilJacklil
lilNoob2341
lilbitlifted
lilchiken
+lilcjay11
lilcuff
lilgreasy
+lilkcough
+lill misfit
lillelar92
lilliilillil
lilmasterOG
+lilmuscles
lilseveron
lilsquiddy
liltunechi
@@ -29055,196 +59214,385 @@ lima
limona5
lindyman
line
+linebacker
linkhg100
linlithgow
lintydeer
linusforsman
lionking-PVM
+lip length
+liquidchese
+lirska
lisher100
+listentonano
+litger
litheum
+litranmaito
+littering an
+little boat
+little man 9
littlebumble
+littleman699
littlemc14
liubei4444
livdumb
livil
liz_mar70
ljjjt
+ljzerenmes
lkalgo
lkaoz
+lkeaurhteakl
lkigai
lkjhsdfglkjh
+lkkle
+ll Grey ll
+ll Zeke ll
+ll jacob ll
+llBear
llIIIlIIIlII
+llIIllIIll
llKaren
+llKris
+llNephilim
+llRevenantll
llStevell
llab
+llaurune
llerb
+lletya sugma
lleygo
llhan
+lliigmanuts
+llitl
+lllIlIlIll
lllPeppalll
lllnifflll
lllogical
+lllustrious
+llo yd
+lloytronn
lluH
+lm Drunk69
+lm H o T
+lm Jard
+lm Scoob
+lm Stark
+lm Washed
+lm batman
+lm scrub
lm2fas4u
lmAddicted
lmBarryAllen
+lmTrash
lmao
+lmaonation
+lmfao ffs
lmgur
+lmmorral
+lmmortall
+lmpart
+lmpatiences
lmperishable
+lmplication
lmplode
+lmpostar
lmposter
+lnSpectre
lnYourDreams
+lnc
+lncendie
+lncest Steve
+lncestralTop
lncline
+lncredibilis
lndain
lndecisive
lndika
lnfa
lnfernal
+lnfiltrate
lnfinitesoul
lnformed
lnitial
+lnitialed
lnkd
lnquisitor
lnsanewolfy
+lnsec
lnsertname
lnspect
lnspiration
+lnv
lnvictxs
lnya
+lo0o0lo0o0l
loadedhuggie
loadingman
loasted
lobi
+lobssss
+lobster pot4
+lobswordie
local
+lockluster
+lococonut92
lococsgo
+locustchrist
+lofi cow
+log item
logMs
logger2222
+loggiee
logic
+login down
loginxtor
+loisakurvi
+lokdead
+lolaskiller
lolbert
+loldatfunny
+lolekx6969x
+lolerrofl
loli
loliconflict
loliron2main
+loller63
lollydeepthr
+lolnicebank
loloharqia
lolol
+lolw
+lolwhoplays1
lolxdmeme
lolzzii
lone
lonely
+lonely rider
+lonelybutter
lonewolf200s
+lonewolf99s
long
+long hcaeb
longbodd
+longlabia
lonko
look1nAzz
look2thepast
look4clues
+looking ass
loopyloos
loose
+loota-criss
lootshark
loox
lopiwer
lopldopl
loraxkiller
lord
-lordbong
+lord bimby
+lord boozer
+lordlazzy
lordrandomZE
lordrunekeys
lordsamzju
lordzyzzbrah
lore2
lory
+losbandito
losee1
losing
lost
+lost to time
lostchuck
+lostingame
lostpanda21
+lostwithiel
+lotion on my
loucks
loueyyy
+louisa
loumit
louw
love
+love bees
+love haaze
loveNfungus
loveT0spooge
loveablepand
+lovebeastx
+lovebite
lovegoroe
loveh8hero
+loves a beug
+loves moms
+loveyoub1tc8
lovezz2pwn
+low lQ gamer
+lower caste
+lowlyworm
+lowrandom
+lowstat
lowwpower
lpman
+lreful
lrin
lron
+lron Bladder
+lron Fill
+lron Kev
+lron Mar
+lron Mennis
+lron Paladin
+lron PvM
+lron Taint
+lron Tom
+lron patriot
lronBud
lronConquer
lronman
+lronmanBtw
lronmanCraig
+lronnan
ls32o0
lsdx
lssabella
ltachi
+ltachi_01
ltaychi
ltsJor
+ltsJustified
ltsMiller
ltsYaBoi
ltsYourBoi
ltsuki
+lu is
+lu1gi00
+luc1d dream
+lucaniste
lucid
+lucid olm
lucifer290
+luck wheelie
+luckeG
+luckey7744
+lucknesshcim
lucky
lucky female
+lucky never
luckyweeb13
+luckyy vii
lucuh
lucyramon
ludaftpitbul
+lufteohl
+luierick
luis
lukas
+lukas2518
+luke the npc
lukehm8o
lukek22
+lukem0n
lukewarmrod
lukey
+lukey pookey
lukis159
+lukutty
+lulllopiet
+lulu
+lummby fam
lummywk17
lunamelina
+lunar frost
lunch roll
lunchbox
lung
luolapeikko
luthas
luut
+luv da grind
luwl
+luxyy
+lv ie
lvan
lvarLothbrok
+lvl 1 sleep
lvl3
+lvon
+lwesche
lweyffaM
lxli
lymitz
+lynx zan
+lynxix13
lysander640
lyzolda
lzrdlvr1
+m 62
+m e e p y
+m i d s
+m i n i m
+m i t s u
+m inimum
+m miq
+m nice guy
+m x e
m-moi
+m00fen
+m00fin
+m00nrock
+m0ker
m0mentum
+m0saic
+m0stert
m1ssing
m1xos
+m3g4m4n
+m3nd3nhall
m3rkzz
m3tku
m4ge4life4
m4gi
+m4n
m4ttay
+m5q
+m6ngel112
m8tio
m8zi
+mBucket
+mGu
+ma shnibbla
+ma61187
+ma7shee
+maadar sag
maahhtt
maawee
mabeltwinkle
mac_moneyy
macflag
+macgleeznorg
machurrohard
+macjonge
mackbhamRS
macke064
+maclean93
+mad bor
+mad dogs son
+mad hjorn
+mad4cashh
madara666
+madeustilde
+madgamer45
madhat86
+madironman45
madman456789
+madmat38
madnijz
madpaul1
madwebbie
+mady I green
+madzey
maeonia
mafiaz
mafiz
@@ -29253,13 +59601,21 @@ magerageftw7
magesticx
maggpagg
magic
+magic me92
+magicarp420
+magick pp
magicmike117
+magiskt het
magnacarta
+magnum0008
magnumdong94
magyarok3
+mah nickel
+mahamoho1
maiden
mainCallum
mainyMCmain
+maiy
makarena
makemon
makenator
@@ -29272,58 +59628,103 @@ malmstrom
malte313
mamadou11
mamatriceps
-mangay123
+man spreader
+manaakitanga
+manameisjeff
mangkj
mango
+mangocry
+mangoszn
manmeowmagic
+mansbridge
mantequille
+manwhofish
+manxster
manyfac3god
+mao
maon
maori
maplegamer6
+mapletits
maqr
marbelo
+marchdog
marcinrulz
marcmaralou
marcwins123
marioflame
marioswe7
+mark uk
marketmoney
+markobae
markypoo
+marmO0n
+marmalarm
+marr66
marrab
marrciee
+marrrcoman
marshyymarsh
marth2king
+martickle
marvypoo
+mas koff
+masdebator
+masonkillem
+masta132
mastafarmer
master
master9782
+master_box
masterloveme
+mastermisch
masterpi314
masterseppi
masteryi01
+matata23
+matiks
matis6080
matiteusz
mats
+mats643
matsxe
matt182xx
+matteuce W
matthew6500
matthoot88
+mattrabbit
mattv
matzRRR
matzkia1
mauberries
+maulnak
maupz
+mauriveitaas
mausre
+mav daddy
mavrooo
+max acc btw
+max all max
+max pet hunt
+max yet jake
maxcapealt7
maxed
+maxed nelis
+maxedtheaxe
+maxgt96
+maxiicano
maxiwiz
+maxiyogi
+maxplayer
maxrevenue
+may him
+may lay
+may thai
maybe
maybejarrod
mayhemrs
mazzahS
+mb
mcbig12
mcbreeeeee
mcdonald
@@ -29331,233 +59732,502 @@ mcgigity
mcmadpac
mcnuggetcons
mcrane1202
+mcsoftee
mdawg
+me disabled
+me espresso
+me handicap
+me ineffable
+me no bueno
+meOwNYXx
+meat jun
+meatball47
+mebigbob
mechmillz
+medicmain
+medictbh
+medium cloos
+medium unit
+meds bad
meekmook
+meemimestari
meepify
meerks
meermaijer
meetoihi22
mega
+megabass
megajoeck
megatricks
megoodpvmer
megret
+megxolotl
mehloncoly
+mehmuss
mehunder
+mei
meinen
+melangina
melborn44
+meldrahn
meleonlyslay
mellaa98
+mellagro
mellonman
+mellow jack
+melncholy
melog
+melog dog
+melvin quit
memephis
+menaceirl
+menarehot69
+mendier btw
+mentasltu
+meow for gp
+meow for raf
+meowthc
+meowtism
merryrice
meskil
+metblo
meth0d
+methcathione
+method888
+mettleman149
meurtpo
+mewby
mezins
+mf Catleesi
+mf Giggle
+mf neeko
+mf yappin
mfHank
+mfHank Hill
+mferJones
+mg
mhe00
miTzy
+mia celtic7
+miaka yuki
+mianbaoroll
+miceworkteam
+michaelma4
micheal
michixranged
+microham 69
microwave62
+mid clicker
+midget man
+midzy
mie19
+mielas
+migboincan
+migidi
migilicuty
mihalys
mikbea
+mike 6
mike2290
mikefizzled
mikeohtran
mikh
+mikko2112
mikkoyy
miko
mikomiko
miksuwu
+miku qwq
milahreigne
mild farm
+mildMuscaria
milfnmybed
+milkpatty
milkthegoat
milkuwu
milkybestdog
+million sof
miltryguy248
mims2dank4me
+minato
minatokill
+mind goblin
+mindislost
+mini booty
+mini r00d
+mini rocklee
+miningas
+mininimum
+minit
+minky
+minmax
+minni mile
+minor flex
+minorhazzard
+minsy
minty1981
+mintyale
mintyclintyy
minus
+minus Left
minyhitsk0
miokaen
mippim
miqli
+miramyra
+miregal1
mirhagk
+miriti
+mis
+misery2018
missingIink
+missuy
mister
+mitchelle1
mitchrocks
mitchvvs
+mixed snacky
+mk6
+mkden2
mkl782
mks200
+mksu
+mkvo
+mlars300
mlbg
mlgb
mlgkittycat
-mlkia07
+mlkia09
mlong06
+mmaxie
mmigo
+mmmkay02
mmmmmmmmhmm
mmmmmmnmmnm
mmmuurrddaaa
+mndo
mniml
+mno
+mnt
+mo an
mobile
+moer
+mogwire
mohak45
mohrs0
moist
+moist P00P
+moistSwan43
+moistcltoras
+moithab
mokkakulli44
moksi
+mol 99
moldsack
mole
moleflair
molkyrion
mologgi
+molten ass
mombasaa
+mombasaa D
mondklapje
+monero gay
moneybandz
moneypants
+mongelman11
monkaS
+monkasusdog
+monkegrip
monkey
+monkeybisz
+monkeymatt
monkeywilly
monkieturd
monnan56
+monstaa
+monsterje11
montaxus
monteurtje
+moo vo4life
mooblesyrup
+mooch86
moocowfish
+moogz
mooiboy
+mookixx
moomoocrab
moonlighterr
+moonona
+moonpapa
+moonrat2
+moonwyrms
mooofy
moor
morPL8morD8S
+morgan renee
morgf
morsotiikeri
morty
mortymoo
+mos f
+moscuz
moska
most
+mostalpha
+mothaload
motmyfanny
+motorbichael
mountcaedo
mpathetic
+mpel
+mpxd
+mpz00ne
mqaccat
+mr atheist
+mr boobrie
+mr buying gf
+mr mage t
+mr pink1
+mr rob iron
mr shroom
+mr triggerd
mr10inches
mr12345
mrDragon2009
+mr_adore
mrb97
mrbreadst1ck
+mrdickbals
+mrfox2
+mrgeck
mrkaramazov
-mrkarl69
+mrpurpdrank
mrvortex3
mrwoffy2
msHyde
+msb2595
msimmo93
+mss
mstfu
+mstr nay nay
mtash96
+mthic
+muchderanged
mucserup
mudbitedlite
mufassa
muffing
muggfac
mugii
+muh
+muh sheen
muhName
muhnamezjeff
+muhnkydluffy
+muin101
mulletman360
+multi genius
+mum ranger
+munalutkutin
+mungero
+mungkee
munney
munoz316
muovaz
murders
murphy
+murphy XD
musashi2109
musei
+mushpinator
+musnew
+musta_matto
mustaa
+mustardsurma
+musterdsauce
+musty04
mustypill0w
muta
mutanen
mutsCateer
muufaanchu
+muy bien
+mv3
+mvgatron
+mx
mxgali41
+mxpurp
+mxq
+my fruit
myballskin
mychaelven
+mycrazy life
+mydmallsick
myexdidntrs
+mygf
mykohchoo
+mymoonkeyz
+myname Borat
mynamesDog
+mypp
+myrtlecat
+mys_try
mystic
myturngranny
mzsc
+n a g a
+n k h
+n o m i s
+n oge
+n os
+n00b tax
n00btube
+n00dIe
n0DaT
+n0n Believer
n0ns3nse
n0rthmemphis
+n1ch0las
n1ghtmares
n3cromans3r
+n4ts
+n8m
+n8n
+nSubordinate
nVox
+nYer
+n_koo
+na cba
naamarihomo
+naapurintati
+nabritches
+nachoss
+nae drops
nagezz
+nagoog
+nah cba tbh
nahbo
nahhhh
nahka
+nahkasaurus1
nahkasohva
nakneemo
naksuu89
+naldy
nalon34
+nalyD yrraB
nambourian
+name is damo
namelessRS
+nami skin
namnori00
namtar elite
+nancyy
naner
+naniichan
naomi
+naoshika
napkins r us
nappera
+narbsta
+nas xy
+nashmvpx2
naskend
+nassikka
nasty
natalya
nathank498
+nattte krant
+natty nest
natur3za
naturesque
+natuurhuisje
+naughty ruz
naunas
naven
+navi my dude
+nawilsi
+naxe
nayo123jo
+nbyo
ndrs
+ne cro
+ne hi
+nebegyd1k
nebula3
+nechs minute
+neck bungee
+neckals
+nedpvm
+nee ceri
+neebzor
need
+need drops
+need panoche
+needs tips
+neeeefe
+neeloy
neenisneen
+neeshmow
+negative
neggibo
neil
+neil v
neiti
+neitsytkulli
+nekemaribo
nelrb
nemofishtits
neocritter
+neoneu
+neophyte8
+nerdneck irl
nerf
nerpkin
netsh
neuber
+neukbare
neutekind
neuz
+never lucker
+never s0ber
+never subtle
+neverblume
nevercash
+neverenought
+neviilz
+new pfp
newaccbtch
newallmaster
+news
+newt merch
next
+next 99
nexus
+ney spook
+nezumileo
+nfandango
+nh0x
nhy0x
+ni ox
niaya
+nibbla
nice
-nicecumshot
+nice to game
+nicelah
niceslime
nick
+nick at nite
nickdv
nickel
nickfx
+nicky
+nicnad
nico
nicoxpico
+nieve nooooo
+nightmareram
nigriV
nikhil
nikler
@@ -29569,20 +60239,53 @@ nimlif
nioem
nipsunaapuri
nishkid64
+nisq
nitro
nitsuj315
nivk420
nizmoNL
+njitram
+nk spy
+nko
+nl Airo
+nmb
nmhbu
+nmzcow
nnick999
+nnko
nnmf
+no birds
+no engraving
+no flek zone
+no gag
+no gay ok
+no l00t
+no purp bug
+no use
+no1evrnos69
noDDD
+noTheOwNeR
noThumbz
+no_odles
noahcous
nobankpin
+nobjockey400
+nochoc
+nodeLT
+nodropman
noek1
+noeyi
+noice garrry
+noiteerIW
+noki keppi
noldaddy
+nomiS
+nominMaxCape
+nomlaS norI
nomorelies22
+nona nona
+nonamechange
+nondedjuu
nont0xic
nonuboko
noob
@@ -29592,21 +60295,41 @@ noodle
noong
nopies
noplanhere
+nor so osrs
+norI Ryan
+nora cat
nori
+norm HARDY
normal
normie
nornavsoc
norrisi
+nos
nosemar
nosepack
noskilljoe
nosnhojgib
+nosoberday
nostalgiaeng
noswaL
+not Duncan
+not chop
+not cumingbk
+not gods
+not heppi
+not herbo
+not him dude
+not shaken
+not tiv
+not tk
+not today m9
+not ual
not1stepbak
notEdited
notPape
notRoyal
+notanjiro
+notazerk
notbennie
notdead91
notefficient
@@ -29614,54 +60337,119 @@ notepad0164
notepad14
notlikedis
notsoB
+notsosmart11
nottrade
+notwack
noutonme
novali1
+novike
+novikid
nrakneS
+nrdz
+nt combos
ntarallucci
nthing
+ntrstng
+nucnad
nufnufaz
nuggeets
nugs
+nullbeing
nulluserid
+numb3r go up
number
+number 11
+numbly
numnut
+nuoli tulta
nuopisa
nurbaya
nurriez
nusta
+nusta but
+nut low
+nut5ack
nutes
+nutpeanut
+nuubbaa
+nuubii
+nvcu
+nvrpurplight
+nwate
nyareet
+nyc ramme
nyet
+nymue
nysyGG
nzskater
+o Buffy o
+o Galaxy
+o Jay o
+o NEK o
+o Pug o
+o SiLeNce o
+o Steven o
+o c c u l t
+o chem
+o n e i n v
+o tp
+o tu
+o0 Rang0r 0o
o00dan00o
o0Ganktank0o
o0mni
+o3d
+o9
oAQu1LeSs
oAlsen
+oAmber
oBugz
+oBuster
+oChezzeRo
oClairebearo
oClay
+oColeeey
+oDemko
+oDriew
+oDrizzyyy
oFelipe
+oGMRKay
oGreene
+oGun Smokeo
+oHEXo
oHoriizon
oHxD
+oIce Teak
oKsirf
oMDmA
+oMalevolence
oMoJo
oOGeorgeOo
oORagnarOo
oOoITITIoOo
+oRonde
+oSanta
+oSea
oSpecialx
+oTARNAo
+oWags
+o_o SEMA o_o
+oaenii
oaflion
oaisjgljlak
+oaj
+oakypinkre
oatenz
obama
+obamas ass
+obbE x
obees
+obej
+obese_man61
obican
obitokun
obosk
+obvi_no_gf
ocbslim
ocian
ocruT
@@ -29669,104 +60457,222 @@ octazookaa94
octopussi11
od1np1ck
odafan
+odd woof
oddfinn
+oddniffler
odenthas
+odinsjourney
odio
odlolien
+odty
odyssey
oerinn
+of a china
+of booze
+off balance
+offends
offshore
+og kasi
+ogag
+ogbrittney
+ogeesus
ogg25the2nd
ogned
ogogog
ogteleblock
+oh no fuse
+ohSmelly
+ohai ohai
oheesnose
ohgoshyjoshy
ohh_man200
+ohhh nooooo
ohhnnnoooo
ohia
+ohio is for
ohioisonfire
ohiostate347
+ohly
+ohmyrod
ohtukurva
+ohyep
+oi ranga
oids
+oigia
+oily rod
+oilysurprise
+oixi
+ok baba
okannah
+oke
oksen32
+ol Twizted1
+ol kq
+ol pleb
+ol_l
olatrekuk
+old Soul rs
+old kind 911
+old man agst
+old man zedd
+old meat
+old mem
older
+older fruit
oldsports
oleNeilyBob
+olen lahe
olindaelostz
oljon112
ollie
+olliedamage
olliethekat
olllllllo
+olllllllo TJ
olmec
olmmmmm
+olms beach
+olovi kolome
olsyboi
+olvia
omavi
omegaOnepump
+omff
+omgbabestop
omgimacarrot
+ompahelppoo
omrip96
+omwtotob
+omyefge
+on 9
+on the fella
onalite
+onbak1992
oncenterlink
+one 69
+one1one1one
oneblade
onelifehaze
onespringday
oneticktony
onex
+ongelmanuori
+onizuka
onle
onlinetares
only
only4pvm
+onnetar
+ons va
+onthebook
+ontspan maat
ontv1992
onyo
+onyx no
oo7jordan
oobent
ooblued
+oof mikael
+oofbored
+ooi
+ook Thunder
+ookbye
ooli
+ooo Papi
oooRush99ooo
+ooooby
oooopsiee
+op
+op P
openyoarmpit
+opiumwet ii
opneemvot
opticsnail
opzu
+orangeluke
orangetree34
orb in bag
+orb knob
ordy
orebac
+oreo lil
oreru
+orexinergic
orez66
+org asms
+orgasmdonor
+orielor
orig
+orir
+oritx
orkans
+orkut
+ormz
+orophyr
+orra
orrichimaru
+os SlayScape
osJuhiss
osbhuda
ose420
-osgp
-oskaren
-osrs
-osrstimex
+osmati
+osn
+ososrswhen
+osquiver
+osrs Apathy
+osrs MCFS
+osrsbilly
ossaciM
+osu
+osynlig
otallone
+otdog
+oteb
otherguy3668
otoboR
+ottledread
ottx
+ouic
+oum
ouououuoouuu
outohere2k
+outsmart3d
outsourced
ouwe
+ovas bis
+overact
+oversize rat
ovox
+owen4boro
owenwilson
ownsome1
+ownt by flan
owo0
+ox
+oxifaze
oxoxoxoxox
+oxtale
+oxyy
+oysni tu
ozos
+ozztrevor
+p hd
+p n g
+p x v x m
+p000r
+p0ge
+p0tat0_baked
p0w3r
p0werSinn
+p0werliftin
p2pell
+pAj4ri
pHqiXfQb5rpO
pRandgris
pRiesty
+p_tane
+paatttxxi
+pacack
pacbackpack
paccerz
pack
@@ -29778,19 +60684,29 @@ padq
pagakoning
pahe
painter2020
+pajiaobin
pakgg
+pakkohoito
pakoonjuokse
+pakwatch
palacePier
paladylan
panda
pandahands
+pandas flail
pandascapes
-pandobaby69
+panel v2
+panelupgrade
+papa jjinx
papaisthatu
papatec
paper
+paperbutter
parB
para1911
+parsakeito
+party-joiker
+partyinferno
partymonkey
partypooyan
partypossum
@@ -29798,6 +60714,8 @@ pashol
pasismi
paskapylly6
pastry
+pat summitt
+patbeerpants
patches4623
patnazNkryme
patriciogmz
@@ -29805,9 +60723,18 @@ patrol
paul94nl
paulimvitor
paulmacawk
+paw fetish
+pay peru
payout
pazmar
+pb tiramisu
+pbagel
+pbj eater
pbjt
+pcce
+pd3
+pdi
+peace love h
peaceofbread
peaceoverwar
peacsenur
@@ -29815,155 +60742,280 @@ peajy
peakyberry
pebbles256
pecemker99
-pecker
+pecker neck
pecko517
pedagoog
peeje
peenwa
+peepeepeepe
peepichu
peepoGamer
+peepoParker
peerks
pegfemboys
+pegge jr
peksi
pelaan
peliken2
pellemaailma
+pelmot
+pemmex
+pen gee23
penakonda
penally
+penile pain
+penny 4 thot
penteroinen
+peoples0123
+pepe max
+perc ceo
+perc5
perckey
+perigor22
perlecta
perm
+pernieuw
+pernix
+persepullo
persesreign
+persisted
person
personajay22
personal
+pesto pasta
+pet melon
+pet my mole
+petc0
+peternguin
petesmcskeet
petlucksucks
+pettyrogue
pewbs
+pezzler
pfiati
phatpunch
+phatsocallum
phattymaster
phen0mXD
phenotype
pheras
phetagoras
+pheyyw
phinex
+phlayme
phonon
phoop
phorme
photolstamp
+pi n g
pibbi
+pickle llama
pieater_314
pierke
pietu
pietun
pieww
+pigeonkisser
pigeontoeman
+piggybosspen
pigusvaistai
+pihseurc
+piia potka
+piie
pikir
+pikknu
+pikkukala
+pikkupeppi
pillman
+pilludemoni
+pimmscup
+pineapples56
+pink soup
+pink spoon7
+pink4
pinkdragon76
pinna67
piomon
+pipiopi
+pippelisurma
+pippy 429
pipratoos
pir0tekniq
+piraat bwana
+piratedog7
+pisk naxui
pixelpeat
+pixiedrank
+pizano
pizzaforce33
pizzaloksi
pizzalord321
pizzerr
pj137137
+pjmonkey03
pk3rsh34v3ns
+pk_all_pk1
pk_by_me
+pkdrwho2
pkdude116
pker
+pker ice
pkerdude559
pkew
pkpk
+pkshitomario
+pkwy
+pl33k_supa
pl3d
plaatshouder
planetflat
+plank r
+plankforsure
platygirl
play
player198792
+plea
pleadingface
pleadtha5th
please
pleasebuyckb
+pleb Remains
pleb166
-plebhunter69
+pleben
plebminister
pletsjer
ploomert
plopko
plszulpet
+plum lee
+pluma
plumb
+plumb bum420
+plumit
+plumpy nut
+plz dont kry
plzl
+plzvenmome
+pm 2 spy
+pm4 boost
+pmax
pmmefeetpics
+pneck
+pnn
+po0z
+poachpenguin
+pocar
+podginator
+podolskee
poesiewoesi
poesiwoesie
poffdragon1
+pogarmyy
+pogdoor
poggersgif
poggie
pogglewogger
pohaku
+pohwe
pointn
+pointright
+poire
+pok758758
pokas
pokemonsunim
+polentusmax
politieman
+polo gee
poly
ponderer
-poni69
pontlarge
+ponyika
+poo from bum
poobutton
pooga
poohwell
poolbadger
+poon fisher
+poon nanny
poop81
poopeepeeman
poopsm0ke
+poorlyhung
pop-tato
pope
popstantot
popwig
porkchop-kun
+porkchop87
+poro600500
+porpleRanger
poseidon0928
post
+post nut sad
potato
+potato pleb
+potatogod62
+potatolove20
potatoplayer
potholderz
potionsell3r
-potweedsmoke
power
+power helmie
+powercheck6
+powerpluging
powerslide
+pp 73
+ppb
+ppdandelions
ppengu
ppfighter
+ppidd
pr0jectcarry
+pr0kkeh
pr1est
+prQmethazine
practice
+praskiepas
+prayfx
preachably
pregnant
pretty
prillage
+princesstktk
pripps0
prkr
prncss
pro90
problitz1
+progmog
+project eggs
prom
+prostate
proud2bbalin
prtck
prut257
+ps1 jrpg
+pshot25
+psp 11O6
pssssssh
psykotic12
pt37
+ptdn
pubnroh
+puddskape69
pudgy
pugginSpooky
+pugmen
+puhkipantu
+pul uk
+pulinaseppo
+puljulaine
+pullo viinaa
pulpfree
+pumiss
pummi984
pumpkinslaye
+puncher
punchlineNL
pungur
punken
@@ -29971,63 +61023,137 @@ puny
pur3gh0st99
purEvil808
pure
+pure owns al
+pure wood23
pure10693
pureblackid
puregluttony
+purity
purpfanatic
+pusha tree
pvm bioodz
pvm-owning
+pvmingbr0
pvmrob
pvpmirage
+pvtRyansPvts
pvvm
+pwn me plox
pwn0grapphy
pwn2b3w1ld
pwnnya
+pwuh
px yra
pxls
+pxtchy
+py ze
pynergy
pyro
pyro255
+pyromaangast
+pyttyyn
+pz
pzqlpwbma
+q Aleks
+q Nossie p
+q b0nkerz q
+q f z
+q l l u
+q sl
+q-Mini-p
+q0k
q9q9q
qJezza
qOsMoSiSq
qPepsi
qQazp
qTiger
+qazi
qazio
+qbc
+qbi
+qbt
qckr
+qerw22
+qez
+qi e
+qiany
qiunc
qiyamah
qlxxlp
qnzjosh
+qoao
+qooo
+qop
+qorbin
+qp
+qpwoei1029
+qqgoat
qsse
+qtAlice
+qtb
qtei
quazepam
+quekchose
+questarila
queundas
+quickiies
+quickmoist
quickster61
+quit afking
+quit cry
quitb42k
quiver81
quky
+qwaylub
+qwerps
qwertralph
+qwerty2431
+qwertyboll93
qwertyuiozxc
+qwl 2
+qwopr8
qwruqwpourqr
+qy
+qz
qzxz
+r a i n i n
+r a i q
+r d x
+r eflex
+r ehab
+r i ley
+r n g o d
+r o c h i
+r pt
+r u a pussy
r0adh0g
r0jasss
r0mera
+r0p3_tv
r0yalrag3r
+r1ch3r mitch
+r1chmond
+r1ddlbox
+r1z1n
r3laxed
+r3mov3k3bab
r4cky
rAEbl88
+rIcHmAn4
rMatey
rVino
+r_rl
+raando
rabid
+raccy rac
+rackee chan
rackelzz
rackemballz
rackzcity
racoon96
raddawgg
+rademakertj3
radox
rafa2424
rafnek1
@@ -30037,29 +61163,45 @@ ragegoon206
raid
raiden
raildex
+raisin canes
rakete
+rallikaar
ralliss
+ram this
+ramafie
ramblin
+rambo 1206
rambombon
+rambroze
+ramjamyelham
ramsesthecat
ranarr
ranarrbiss
random
rang2d
range
+rangedp00wns
rangoraus
ransty
+rarefleas
rarekia
rarru
rarurrer
+rat catcher4
+rat ritual
ratboysteve
rateddd
-raterd69
+ratirl
+ratirlAlfred
rats
+rattiyanee
ratzzzzzzzzz
+rautamon
+raves m4ck
raving
ravioliwren
rawheadshot
+rawkneedong
rawr
rawrsmashh
rayhoon
@@ -30067,338 +61209,663 @@ raymanvh
razorwheels1
razzdnutz
razzex
+razzmatazz23
+rb winter
rbjk
rbootsGOD
+rcr333
+rcyy
rdrluvr77
+re-frozen
reBoosted
real boyo
real-derin
realAxu
+reallityfail
reallyhigh
realpcooktho
reamillion
rebirthofyay
rebuildd
+rec me
reclinedgmr
recognizable
+reconjack
+red eye jedi
+red fox8
red504
+redank
redberry
redditlucio
+reddragon950
+redeye q p
redgorilla12
+redhunter193
redman211
+redpatch
redracecar27
+redrumyliad
+redsheik
redsox216
+redsp3c
redwagon9
+reenur
reese
+reetznutz
reflexlols
refurb99
+reggie v2
+reggieblunts
+regorydog
+regular ph
+rei1315
reikimastr
reilaria
reistje
reitan2k
-rekkerboi420
rekordlaunh1
rekrog
rektum
relac
relaxed
+relaxed now
+rellu riku
+reluf
+remind
remind309498
+remko maxed
+renaissance
+renasue
+renruB
+reopened
+report you
+reptil51
+reptile reas
reptilepoop8
+repulz
resU
resetcentral
+resupplyalt
+retern
retrrd
+retuson
retzc
reznas5
+rezpek
+rfr0sti
+rg44
rgfji
rhey
rhiller83
rhygan1
+rhys c
ribalibali
+ribe4
ricard0live
ricardos78
richarb14
richy
+richy rain
rickrko
+rickthick73
+rickystackss
+ridewitme
riilis
+riipx
+rikkertik
riksa123
riku230
+rikuirl
riller
rils2
rimpati
+ringo794
ringosting0
rino
+rip dj
ripHuyy11
ripbobthecat
+ripend
+ripsrc
+risbarn
+riskbizz
+risker
+ritcey
rithvik
ritotrisoto
riuCooler
+rizn
+rjh300
rjweb
rl9g10rs
+rlkgfseorhfe
rnatt
+rng god x
+rng limey
rnom
rnue
+rnv
+ro0b0
road2broke
rob nagle
+robbinator27
+robhode
robilo123
robinchris
robo
+robombalt
+rockcrabpvmr
rockeroHN
+rocketberg
rockhead7746
+rockstarwht
+rocky leeg
rockyandtaz
+rockyou 2
+roest
roflbaker
roggy
roldan_one
roldunogene
+rollsyy
+rommmey
romper
+roofy
rornburst
+ros n
+rosati924
+roshambee
rossdark1234
+rossmain
rostiefrosti
+rosullivan8
+rot popstar
+rotceleS
rouge
+round cat
+round kc
+royalpanda53
+royce ranger
rqkrtzjvbsuh
rrautamies
+rriot
rrrpR
rrrrrrc
rryutie
+rs3 blows
+rs3dansgame
rsoby
rsruinmelife
+rstr expert
+rsyux
rthgo200
+ru-ne
rubengouveia
rubikslayer
rubj3llyonme
rubtuge
+ruck ur dad
+ruding
ruikkuapina
+rukdingme
+rullakebaani
+run amuk
+run its bc
+runaru
+runaway iron
rune
+rune dogger
+rune enjoyer
+rune poon
runedongs783
runedragslay
+runeferyearz
runehol1st1
runeika
runep3
runequeen163
+runesc4pe
+runesoftime
runetraction
runite
+runite bars
rupt
+russien
rusted
+rusted shaft
+rustigggggg
+rustinged
+rustys word
rusvet
rvrse
rxbi
+rxylvrn
ry1n
+ryh
ryppyreika
rythail1
+s h l o o p
+s hok
+s i r tinly
+s k i p o w
+s laack
+s n u f f e
+s nekk
+s t i l
+s tress
+s0spwnz
s0uln0te
s0ultage
s10w
s11gm4
s1ayerg0d
+s1pa
+s1r maximus
+s3fa
s3nna
s3nt
s3ppa
s3vuu
s4mu
+s4nc
s7v7nty
-sCUM
+s7vey
+sCUM Runner
sKDestine
+sNEXyBaker
sSahm
sSpring
+sTs W33D
sTxje
+sYo
+s_ck it
+sa ko
+sa-ku
+sabfas
+sackiltrog22
+sackmen
sackmyduck
+sacredchange
+sad nmad
saddest
sadgeboi
sadnmad
sadnmad666
+safe bunnys
safermoon
saffyO1
saffyO2
safino
-saggen69
saguyuyu
saiko
+sailsouls
saintffs
saiyansmithy
+saknoM rD
+sakuyaaa
salad
+saltia
saltycups
saltynads
saltypepper
+saltysealife
+sam ofc
samdegreat
same
+same hada
+samo0o
+samoht10
samothon
samqwop
samtatt1
samuraigod13
samwise1133
+sandai korky
+sande108
sanooJ
+santa cloud
+santa ho ho
+santorio
saphinix
sara
+sara 35
+saralandry
sarcasmz
+sari essayah
+sarppatsu
sashamii
saskecas1
+sassy fool
+satisfried
+satsuJima
+saturos159
+sauna41
sausage
savPalestine
+savage_grey
+savi 2
+savukorilas
sawb
+sawb0ssnl
+sawl7
+sawshoulders
sawyfabj
+saynototofu
sayyless
sbrand0n8300
+sburzz
+sc arlett
sc00ben
scaffidi
scallicci
scape for 1
scape4ever20
+scapey123
+scaredbunny1
+scat wagon
+scb
+sccrub
+sce nes
scerp
+schaamlap
scherzmfromz
schetts
+schiggs
schildknaap
schmashmu
+schneeple
schneky
+schnibbyy
schzu
scidder123
+scitles
scnick
scone99
scoobydooby9
scoobysdooby
+scotian 902
+scottslipper
scottuzamaki
+scottydo27
scout
+scout robot
+scrollspirit
scrotumfart
scrubEE
scuffedbrain
scuffi
+scumbag 66
scuterholmes
scythe
scytheXI
sdfsd125
+sdotmaxedout
sdzl
+seBlait
+sea owl
+seabird
seachrome
+seacowcow
seamondemon
+search0
seared
+seawolfsam
+sebbe osrs
secs
securite
+see attached
+see me whip
+see4limbs
+seepah
seetod
sefeeee
+seffimz
seizure
sekkuso
selfShow
selfcurse
+selfish coal
selling
+sembino
semper
+semperstrik3
senZe
senapsgasen
sendu2edge
+sendykap
+senggg
senpai
+senpai btw
senseyf
+sentterih
seppem
seppes121
seppevb
seppohaa
septynetas
+ser angus
+ser tugger
+seraphine jo
+serbuttkiss
serious
seriouslee98
serpentSmelt
+servix
+sessarrow
settyboy66
-sexhaver420x
+settyz
+sex mum
+sexy skuxz
sexypersian
seyed
+sezery94
+sfinx71
sfnative
sfsdfg
+sgaben
+sgf419
sgg9779
+sgk
+sgq
+sgurdevolii
+sh-Y-ft
sh1nan1gans
+sh1ttyrng
sha0ski
sha7y
shabado
+shad y
shadex94
shadow
+shadow brr
+shadow btw
shadow77440
+shadow926629
+shadowarmy
+shadracker
+shafli
+shakedabooti
+shaking irl
+shamabeast
shamans
+shambbles
shanemck
shantyklawsh
+shape
share
sharingbox
+sharkey_32
sharpshot776
sharto86
+sharyn cox
shasd whip
shawnn1
+shayge
+she btw
+shed dabber
+sheep5
sheev85
shekelgoblin
+shelfy 2
+shents
+shere khan1
+shes sleepy
shezze
shhit
+shiddingpant
+shields_zzz
+shift drop
shifty
+shiftydaboss
shigha
+shiky
shio
+shishiodoshi
shisui
+shizcake
+shkoB0
shliure
shmoopaladoo
+shnizzlebear
shoarmamama
shokki
+shoopa
shoot162
+shordilele
+shore
+shortsleeves
shortstroked
shower
+shoyu
shreddin
shredness
+shredskater
shrek5
+shrigma
shrlmp
+shrooon
shroooooooms
+shrootfarm
shroudyroudy
+shtos
+shturpants
shumili
shushlik
shvxstxchla
shxg
+shxyzzz
+shy lo
siNusas
+sibeepboop
sickGeneral
sicklyhare
sideways640
sidney3241
sienna
+sienna sleep
sieracki
sigh
sign0ut
siik
siimzz97
+siiz
+sikatopi62
+sikazz
+silburr
+silemani
+silenthenk69
silentical
+silenttrew
+silim acac
silk
+silly cowboy
silvar93
+silver bean1
silveraze123
+silverwar33
+silvethril
+silvio lol
+simi sai
simmeg
+simp 4 life
+simple
+sims Hsp
+simz
+sinannani
sinappi688
sindicalism
+sindulis
sinfulnature
+singlemom34
sinsofmany
sippin
siptar
+sir ecnar
sir skau
sirlotje
+sirmesoulier
sirpaul
sirpoopball5
sissijuustox
sisuwu
sitonmaface7
+six2midnight
sixanddagger
sixerr
sixovercrest
sjaq
sk0me
+sk1rttt
sk9bord
skaiii
+skaios24
skandaali
+skaring kids
+skateenjoi
skaterdogz
skatermatt91
skatterpunk1
+skaugi
+skcusxegaj
+skedie
+skeide
skek
skeletoon
skeli
sketchdreams
+ski
skidipoppop
skilgrave
skill
+skillachris2
skiller270
+skilleuhjong
skillmaster
+skillngbot41
skills2millz
+skillz davoo
+skin suit
skinny227419
skinnypimp71
skipz1419
+skittels
+skittlesour
+skiu_21
skizzurp
+skizzy sammy
sknzor
+skoalintry
+skoowu
skorthen
+skowotek
skranzii
+skrenne
skrtskrtpvdb
-skubasteve69
+sks110
skuccy
+skuirk
+skunk nugs
+skunkpaste
skunkskillzz
skyE
skyelar27
@@ -30406,53 +61873,101 @@ skyffoxx
skyz
skzs912lav
slaack
+slack austin
+slacky456
slajdaren
+slap her box
+slappfisken
slartiste
slavhouse
slay
+slayJTIaster
slayer
slayer92
slayerfrog57
+slayerxp
+slayetd
slayhore
slaying
-slayz420
+slayzerot
sle3k
+sleek2d
+sleepinonice
sleept1ght
+sleepy 940
sleepysleeky
sleepyweasel
+sleightest
+slemgaedda
slice
+slice O pie
+slickstick21
+slickvick21
slidesteps
slidtegitte
slight
slight7
sliginz
sliim
+slim in dar
+slim j3sus
slimski
+slinnGimme
+slippaa
+slipstrides
slobthyknob
+slowmopwns
sludgebag
+slundersc0re
+slurpeeboi9
slurpeeking9
slurpy40
slurpydong15
sluz
+slvtty slvt
+sly seyda
+slyhitman
slypupper
+slyr4ng3d
+sm0ke herbs
sm0kebeers
smChi
smackbo
+smaddz
+smaggd
+smalcano
+small boaty
smallmichell
smallppbigxp
-smalpenis
+smalsey
smasher12121
+smasher95
smaugs
-smegmafarts
+smbonn2005
+smeerpijper
smel
+smelly fuss
smellyducks
+smerq
+smettjes1
+smh Monkey
smiithy
smirqqel
smithdarts
smittty2009
smoe
smoke
+smoke buds
+smokesIetsgo
smokin
+smokin turdz
+smokingalone
+smol bat
+smol chris
+smolBen29
+smoothcamel
+smoothlover
+smote
smoug007
smrgn
smuqu
@@ -30460,142 +61975,276 @@ smurfrookie
smurpfy
smushman
snaggle
+snagnURkill
snailydog
snakehuntr94
snakenbaked
+snaplocket
+snapped neck
snarfoo
snck
+sneakY geeB
+sneakyleazrd
+sneakyyj
+sneekeysnek
sneeky
snek
+snek killa69
+snek man_44
+snidletics
sniff
sniffmapouch
snikkels
+snipper143
+snoogensss
snoppen97
+snorlax481
+snot aap
+snow dude678
+snowdance
+snowfild
+snowkeepuh
snowy
+snowyhawk45
snowysonic
snoxxyl
+snp500
snubsnub
+snurtfe
snuskfet
+snuskukken
+snusnuending
+snygg o smal
+so joe
+so jung mijo
+so much ass
+soarix
+sobsk
soccerdog
+soccermom82
soccerrad177
sock
socopb
sodChamp
+soderfalk
sodynamic
soft
+soft dab
+softer bugg
+sofus64
soggybread4u
soggywaffel9
+sohju
soiled
sojraal
+sokoudjou
solfam
solidon
solo
solodiyloner
+solodoloyolo
+soloeraut
solopops
solos
solost7
+sombb
+somber
some
some1saybags
someBODY325
+somos papaya
sondrep
sonera
+sonoboymw
+sonofablitz
+soobli
+soombie
+soon2bxwife
+sophiebear69
soppel
+sorris alt
+sorry
+sorry pls no
sorrymatey
+sotaneekeri
soul
+soul et luna
souldrainer
soulkamikazi
soulkra
+soundspeeds
+soupnbannock
+sourkraut
soxx
+sp3edie
+spOnsOrr
+space craft
+spacemanriff
spaceonion44
+spagh bol
spam123
spangulation
spankmoi
sparkoftruth
+spartan1137
+sparterrang9
+special k258
+specialton
specuri
speed
speeder269
+speedtrain
speeeeeen
spell
+spenmaso
spete
+sphicologo
spiLLLLL
spicke21
+spiderman 13
+spidey
spigems
spinova
+spiwit twee
spladay
+spleiner
spletcher2
spliffens
sploobie
+spoiled mayo
+spondonicles
+spooki xd
spookib
spoon
+spoondrngplz
spoonfed
+spoontarded
spoonyg
+spoooficus
spootineftw
spord8
spozz
+sppak
sppoh
+spratel
springAnonce
springplant
springsteen3
+sprite zero
spritelum
sprits
+sprsp
+spudmyster
+spugEddi
spunkontitz
+spyde96
+spyrolegend4
+sq shield
sqad
+sqrls
+squareheadfk
squatlownslo
squidnstab
+squirrel1991
+squirt fan
+squirts
+sralisas
+sray
+srd
srgynt
+ssA taE
ssei
+ssh keys
ssj3
sspiriNut
sssu
ssttaann
ssyd
+st aeryn
st4k3l0rd
staarii
stabbycut
stabekk
stackables
+stackagawea
+stahldog
stainalt
+staleburrit0
+stan darshhh
+stannaz
+stannum
star
starcrosdlvr
+starfalI
starknightsy
starshoppinn
+starvn-marvn
+static void
steadiskill
stealthwolf
steckubnU
steel
+steel slime
+steeljake
steelplums
steeveee
steezybear
+steezyledge
stefanopt
+steflon don
stekkeT
stella1
stepbro
+steph n
stephvn
steponnopets
+stereos
sterre1ch
+stertanz
steveagogoo
stevenovak6
+stew thru
stewiii
stfn
sticc
stickuppix
sticky clay
sticky holes
+stickygirl
stiff
+stig sucks
+stiice
+stikybandit3
still
+stingray2018
stinky
+stinkybunny9
+stinkymooner
+stokstaart
stoned
stoned84
stonedowned
+stonerwelds
+stoneybolgne
stony
stoodzy
+stop log
+stopbegging
+stopy wersow
+stor m
storkis95
storm
stormynight
+stouterikk
+stp3ach
str3tch33
+str8 balling
straangeDayz
+stradiSlay
stranglege
+strap locks
strateigo
+straw cup
strawbery
strawnk5
streetshark2
@@ -30604,64 +62253,125 @@ striker
strnagetamer
stroudlee
strp0tzz
+stugex
+stuntti
stupid
+stupid game
stupidcape
stupot845
stylebend3r
styrkekram
styxRYAN
+sub merge
sub2purple
sublime
+submunculus
subooptimal
+substring
subzero
+suchti
+sudden sloth
suga
+sugar d0nkey
sugarfreeman
+sugarwater
+sugme nob
+suheil69
suhuan123
+sukau
sukc
+sukidarkra
sukii
+sullz
+sum1elsecall
summa
+summa arte
+sumsy
+sun delusion
sunaert
+sunday tea
+sundburgaren
+sung101
sunkir
+sunkirrr
sunny
+sunny sponge
+sunrakuz
+sunris
+sunu
+suolahappo
+sup J
sup3r0n3
supagorilla
+supalordwar
supbruh
super
+super slooow
+super system
+super-thoms
superbuds
supercolds
superj4
+superlisko
superlonely
supermanJJ
+supermarket
supermaxx
+supermoist
superr
supnoobs10
suppertmain
+suppus
supra
surfboardcat
susanno
+susdog
+suspect12
suss
suwo
+suxc
+suzuky
svedanya
svennepen
svenskeren80
+svettnisse
+svimmelskam
svoji
svrN
+svstre
+svti
svver
+sw x
swag
+swag dr
+swagburgler
+swaggabawz93
swaggb0y0wnz
swaggie365
swagscape666
+swake420
swamp
+swamp man_43
swampertman8
swampwitchx
-swearwords69
+swampy fool
+swansoup
+swasian
sweaty
swed
+swed 420
+sweet ass
sweetpissin
+sweety 77
sweggdaddy1
+swerve q p
+swfc50
swfc51
swftz
+swiet
+swiftmango21
swissbagette
+swol
swolelord
swooinc
sword
@@ -30669,134 +62379,256 @@ swordngun3
swordsplay62
swxasxx
sxkes
+sxtt0
+sxybro
sycp
+syklo
symmm
synack
+syndra007
+synnistra
synterrafox
syua
syytu
+szer
szeth17
sztuk
+t iel
+t imbo
+t r a m
+t rio
+t u k e
+t ux
+t-Wrench
t-painn
+t0_valhalla
+t0ast mal0ne
t0c00l
t0nni
+t0xicpoptart
+t1n3
t1tz1
t4aker
+t4t frot dog
tOxI
tRIPdoubt
tRNA
+tSessa
tZiMiNt
+ta det lugnt
taasen
+tabbionny
+tabulast
taco
+tad3j
+taeyeon
tage3xx
+tak0981
take
+takimoto
+takotime
+tala 7t
talinklion
talisam
tallest
+tallwhitebr1
+tamesh
+tandem dooks
tanfastics
tanguay478
tanklesss
tankyster
tanuliina
+tanzfangplz
+tar
targ119
targa
tarpGC
+tastenz
tatarsauce
tatuwah
taxed2
taybonejones
+taysmehu
tayyab
+tazzen
+tazzzz31
+tb 3O3
tbaballers
tbach
tboowscouter
tbow
+tbradz
tbrey24
+tcorky
tcroft
+tdawgthekid
tdoe
+tdogtsw
+tdslaterG
tdufflebags
+teagantime
teakte00
+techev
techeverria
technitions
+teem0her0
teemerco
+teh_new_guy
tehe302
tehskoozy
teini_horo
+tellymantel
+temmi69
temx
tenac
tentacion
+tentacruel38
tepaseohijo
terenerd
teroy
terrence
+terroristiI9
+terrryfold
+tescoworker6
+tess tlckles
+testokersa
+tetinhaaa
tetsundo
teum
+tevlevdeR
+tewwowism
tezje
tfortal3nt
tfsi
+tfw
+tfzx
tgchick3n
+tgkiller
+th0my188
+th3engineers
th3m0nrr0
+th3physicis7
thaiboygoon
thajokerkid
+thames1000
thasonn
that1stoner
+thatbaldkid1
thatbuttguy
thats
+thats bone
thatthicksix
+the 2 of us
+the G herbo
+the Unreal
+the Zec
+the afg-gun
+the assail
+the big girl
+the capt
+the creaper
+the girls
+the kleeborp
+the lupo
+the lurkkii
+the mighty R
+the ocean
+the suns
theDazzling
theFish
theH0witzer
+theHNC
theMatan123
theSuperb0wl
theWOODchpr
+the_blindguy
theachaian
thealemdar92
thebestgf
-theboobguy
thebrucelee
+thecoolbro97
thecwakecake
+thedamoes
+thedarclit
thedarklit
thedyermaker
theebeker
+theeib
+theforkster
+thefunkmonk
thegamebad
+theguyman160
+thehow112
theironlotus
thejonsson
+thekingkane1
thelanco
theletterbla
themaestrox
thematrixgg
themrgiggles
+theon
theonebrova
thepirateman
therangetank
+thereal bi n
+therealAxu
+therealchr1s
+therealinfex
+therealramba
therminy
thes5016
+thesavior315
theserpent
-thestar420
+thesmurfster
+thetibo
thetoday
thewooshh
+they gave up
thezucc
thhxd
+thicassglass
+thicc dady
thicccc
thicchode
thiever05
-thilygoose69
+thijssb
thinker
thinky
this
+this blunder
+this gu y
thiseku
thisthat2019
thongmasterb
+thoomed
+thosma777
thot
+thot tub834
thotortiana
thoughtz
thrakataluk
+thrashcan86
+three2one0
+thricer
+throat queen
thrynandwen
+thug z9
thugger
+thugli
thundeman999
+thurgo pie
+thwison
thx4zloot
+tibbs plural
+ticklemesack
+tidnabregdab
tienermoeder
+tigerturtle0
tightteen97
tijgertje3
+tiktok rizz
timaye56
timejumpsolo
timmaxio
@@ -30807,189 +62639,376 @@ timmyjoe643O
tinmer
tinnaytookit
tintaria13
+tippystick
tipua
+tipyt0p
tire
+tiredcloth
tisbea
tissiliisa
+titches wit
titsanddrags
titty
tittyjuggler
+tj44
tjappko
+tjcombro
tjd1233
tjomka
tksnevrlucky
tmahones
tmeer
+tmeer 18
+tmjdx
tmued
+to dd
to0Oldf0r1t
to_o
toad
toad03
+toasted max
toastfinder
toastypoast
+toatsme42
+tobiasalex4r
tobinoo
+todd crosset
todtplanker
+toe2
toebumper
+toes
+toesmeller87
toff
+toff haha
+toffelboy
+toffij
tojo228
toks
+tolerable 24
+tom hutch
+tom widdle
tombaum
tombradynfl
tominator87
tommybun
+tommys488
tomrichmond9
-tomriddle07
+tomriddle09
+tonko
tonttitonder
+tony danza
tony el gros
+too bad
+too known
+toolbar
toomastoomas
toonits
tooowise
toot
+top her 1000
+topdollar
topgun 17
topgun343
+topie
+toptom90
toqs1986
+torfy
tormutrose
+toronomans
torpedox1
+tosspot12
+tossta
tostaempo
+totip46
+tottti
touhutimppa
+touma
+toxi
+toxicburn13
+toxiclun
toxicsaitama
+toy Owner
+tozmic
+tq
tr0nberg
tr0nd
tra1nwr3ck13
trade
tradescreen
+trading law
traevitz
traffic
+trafficly
trainman222
+tramayne
+tranquiltoad
tranqzz
+trans
trapbag
+trapizium01
trashy
trattqunnar
+trav50
travym66
+trcky americ
treboolks
treetardo
+treezy
tremmu
+trenboloneyy
trevor4ever
trevs
+trevs iron
+treyblob
triangle28
+trickyerrr
trickyricky
+trickytoad59
triggaevery1
trikyricky
trilla
-triniboy6969
tripin
+triple fin
triple pre
+triple zero
triplefiter
triplelmao
+trippel agen
+triv hamzy
trojan break
troll
trolling
+tropiiix
trout
troutking96
+troy the mak
trso
tru3
trucker74
truskey
trustfundcat
trustsfund
+truucas
+try the wiki
+trying2quit
+tryksta
trytohuntme
+ts4ever
+tsqq
tstrong5689
tsukemen
+tsumino
tsurie
+tsw
tswiftfan82
tthe
ttnq
+tubu
+tuggly
tuhdhuderr
+tulieee
tum0ppi
+tumeken jyra
+tumme
tummytickler
-tunadickrick
+tumunduktu
tunalife
tunnepelaaja
turban911
turbo
+turbo nut
+turboChett
+turboboost93
turboed son
+turbogamer12
turbojoey
turbothots
turkishh
+turkles ahmo
turn the 6
+turnt
turntBurrito
turntgod711
turtl111
tututu
tuumas
+tv_vt
tvmv
twasnotready
+twelve bags
+twelvecharac
+twelveswords
twiceascool
+twink irl
+twinr0va
+twisted tina
+twistedgirls
twisty
twitterclans
+twixinthemix
twiztid5000
two4nine
+twohandedfap
+twotoedsloth
twrangles
+twubble
+ty RuneLite
+ty zmith
ty4flail
tyguy
tyler1041
tylorLotus
+typage
typedef
typto
tyrant
+tz13
+tztok-worm
tzuyah
tzuyufan14
-u dead now07
+u dead now09
+u got a dart
+u got beaned
+u itachi
+u kno de wae
+u r gay 4 rs
+u0h
uEnv
uKnoTheRules
uLiveButOnce
+uRattt
uSnAvYsEaLs7
uTBER
+u_u sunshine
+uberHasu btw
uberstunts
ubiquitous96
ubug
+uchar
+udq
+udr
uetzcayotl
+ufnn
+uganstolfin
ugivahrimjob
+ugly 67
uglyandfat
+uiaF
+uiliuiliu
+uilz
+uimi
+ukn0w
ukwolf1
ukzharry
ulab
+uliuli reps
+ult u fk jzs
ultimo0se
+ultracet
+um Cya
+uma pyoi
+umer
+umexx
+umr
+umw
+un deux
un1versa1
+unFolly
+unaroc
unawareaxe
+unazegamoth
uncle
+unclefro
uncleskrt
+und
und3adedd
undeadgun
underslept
+undoc
uneek2you
+ungafknbunga
+unholyblood
unitewankers
unkyjay
unla
unless
unlucky2020
+unluki
unravel
+unravelslapz
+unreaL294
unrequited
+unsoy
+untc
untilnextyea
untitled
unwarranted
+unzips
uppahoods
upset
+upset berry
upwindnofear
+uqx
+ur a bird
+ur buttugly
+ur cool
+ur so mad
+ur stinky
+ur6
+urBunsRDone
urNANS
+urano O_o
+urashitpker
urfault
urgirlisf2p
+urgnah8me
urondelekk
+urqt
urvinis1
urza
+usainb0ltrag
+uselessbozo
+uselessmap
+user187
usergoeshere
+userjman1428
+usinlefthand
usma6100
+utiliser
+utpaatur
utsw
+uu Sauce
+uub
uubaidaus
+uul
uuuoouuououo
+uuuuhhh
+uwja
+uwu merchant
+uwu noises
+uwu24
uxbridgekid
+uyakO
+uz x
uzei
+uzis akimbo
+uzui
+v Simba v
+v olksu
+v oltage
+v tsng
+v uka
+v yp
v-yordan0702
v0i kehveli
v0mbat
+v13
v3kz
v453
+vAnthony
+vBlankie
vCamel
+vDragzi
vFoley
vJace
vJordxn
@@ -30998,316 +63017,662 @@ vLeqacy
vNicholas
vPikis
vRoso
+vSnoop
vSpectre
vTaqq
vaderex-1
+vaflyga
vageet
vaghairs
+vagtap
+val val val
valeriaT3amo
valithi
+vallihauta96
+vampfrog
vampir
vampiremiyo
+van est
+van soi
vanVoren
+vanacis
vanacularr
+varla phase
vasia
+vasxx
+vaux One
+vavmaster
+vb cannsss
+vb1
vbehn44
vbhos
+vc
+vcl
+vcnyew
+vcw
+veEXP
veergolio
+veetuli10
vega591
+vegiebobs
vegiitto
+vekter1
veldow
+velek
+ven g
+venazuelan
vene
venefae
veneruuti
venezuelan76
+vengedclaws
vengedurmom
+vennie123
+venom nate
vent
venturo
venzano
vepie
+veri2222
verlord
vernonb2688
versacejean5
versatility4
+vertigo love
vertztheone
+verychillguy
+verzikius
+vesikulho22
vesq
vestapol
+vftvmv
vgtrs
+vibe check
vibing
victoriauwu
video
+video peli
videogamer
+viento suave
+vierges
+viet dragon
+vieze sjomp
vigilant
+vihervasuri
+viikzt
+viilipytty
viki
+viktor main
viktoras300
+villavolta80
villeh
vinigha
+vinke00
vippaa
virtualsucks
+visdayox
viserbro
+vislegis
vispikauha
vissiman
visualduck
visuna
vitunhomo
+vitunkoyha
+vitunneekers
+vitur scythe
vitutor
+vituvahe35
vivaa
vizzN
+vkt
vlaamsbelang
+vlees petje
vllekoo
vlyn
+vmooo829
vmxn
+voddeman
vodka
vodkapro
vodke
+voi vattu
void-e-d
void5
+volconhammer
voldersnort
volga34
vomax
vork4sh
vorosity
+vosol
+vougz
+voui
voxi6
+voyage_zjo
+voyej
vpxl
+vraakmanus
+vriskafan888
+vro
+vubervos
vulnaamin
vulxe
vunts
vuokko22
vurn
+vursa
vutr
vuur
+vuzvuz
+vvBearded
vval
vvtt
-w33nerlord69
+vw
+vzi
+vzkg
+w Danko
+w e b r l
+w en
+w ert
+w vy
+w00_88
+w00d pecker
+w00tgh0st
+w00x titan
+w00xy
+w0Ive
+w0ked
+w0lcomcz
+w33dplanter
+w3n
+w4kenbak3
+w5s
+w6rst
wYungen
waaayneee
+waaluigii
+wack pack
+wacup
+waga iron
wagen
wagween
waitwhyudead
+wakecub
+wakingupsad
wakuser
walk
+walker80
+walli
+walloftime39
wallyally13
+walmart nuts
+walmart used
walnutmonkey
+waltjrs legs
+wanShy
+wana corp
+wanna quit
wanolo
-wantUR69fart
wapwap
warcauser33
+warcraftgame
+wardongs
warestoteles
+warface125
warm
+warm cuddles
+warm is vuur
+warmclouds
warrior
warteryyy
+waseem76786
+waste of alt
watch
-watercum
+watch hp ty
+waterbender
+waterdrink
+wathx
+wavej4
wawuweewa
waxRS
+waxhitwonder
+wayabove
+wayne s new
+wcdak
+wdx
+we died fast
+weThoom
+weak dummy
weaknd
+wealldiesoon
wealthletics
weaponman54
+wear croc
+weary pigeon
wechilling
wednesdvy
weeb
+weeb doggo
weebew
-weebgod420
-weedsmoke163
+weedkillsppl
+weegthe32nd
+weekendfun
weenscape
weh8ironmen
+wehde
weight4
weir19
+weirdo
+wekkes
+wenwick
weoh
weppend
weregild
werkd
+wermz8
+werndoggaa
wertyer2
wesley 256
+wesley biets
+wesrrules92
westsider011
+wet da bed
+wet oven
weve
weweweweoox
wewkek
+wf_solo123
+wfh atm
+wfsdfvwwfsdq
+wfsn
wh1tey95
whale
+whale come
+whathitu
whatiswork
whats
+whats skills
+whatsoup
when
+when I chant
where
+where ask
+where moon
+where noon
+where yat
+wheresyaboy
whip2b
whipbanned
whiskey bow
+whisoserious
whispery
white
+whitedog8
+whitless
+whizprjazpxr
+whk
+who is react
whoawhoami
+whodo
+whodoyouknow
whololo30
whoopdidy
whoppinknob
whoscherry
+whotf
whtmicrowave
+whuchaka v
+why afk
+why ego
whyaintyoume
whyamisofat
whynotp2p
+whyuboolyme
whyzerkbro
+wi f
+wibeton
widefang
+wiegehtsmir
wienerbread
wife4sale
wifes
wifibananas
+wiidziss
wikedfix
+wil je ket
wildarko
+wildberryRS
wildcheery77
wildystuff6
will
+will vv
+will win 2
will_mello
willc893
willeehawk
willie432
willis28
+willmissit
willmott
willsand2405
willsuck4GMK
win we must
+winnur
+winterburnI
winterdaze
+wiseguy2187
+wiseoldPapi
wiseoldnam
wispykarma
+wistfulgyre
witchbladezz
witeboi
+witenry
with
+witnesspower
+wiw
wizard129
+wizardyoda7
wizkid499
wjsn
wkurtin
wlkerTXrangr
wndow
+wndy
+wngo
woah
wocket
+wodg
woesh0
wohc
+wokkejzzbak
+wolfbless
wolfy
+wolrus
wombo_zombo
womp
wonder_wenis
wonnie
wonniwonkaka
woodchopp
+woofmaster
+wooohooo
wooooom
woopingcrab
+wooski43
+wootex
woox
woox10k
+wormple
woshishabi
+wowda
woxzard
+wrdd
wrdflexoke
-wrighty420
wrong ranger
wrsrule
+wruhtra
wsodonnell76
+wsvolt
wtbzenyte
+wtffixthis
wtfix
wubzh8black
+wucebrilllis
+wuckedenergy
+wucy
+wudi
+wudup9696
+wuil10
wulfwulfson
wussupfool
wutzgood
wutzit
wwTakun
wweadge2
+www
+wwwMusic-Map
wyat
wyattearp99
wyked
wytch
wyverns4days
+wzav423
wzrdddddyo
+wzrds
+wzs
+x 0lev x
+x ABBlE
+x Argonath x
+x Chainz x
+x Chelli
+x D E E x
+x Dante
+x Fabinho
+x FiFi
+x Flux
x GS Cookies
+x Haste
+x Kane x
+x Kierac x
+x L i o n
+x Lady
+x Lafferty x
+x LostBoy
+x Mayhem
+x Ndo
+x Nex
+x Not blue x
+x Nym
+x Pho
+x Red Rum
+x Ryu
+x Ryuu
+x Sorvete
+x Verzik x
x Zela
+x Zink
+x a t
+x e l a b
+x gladiat0r
+x husla
x iNtrigue
+x iyad x
+x lollage x
+x mk ultra
+x preska x
+x r
+x warri0r121
+x zi
+x zn
+x073x
+x0Mag
x0Tub
x12ob1n
+x1deag
+x1flyx
+x235
+x2u mania
+x3 nuzzle
+x7 Curvelo
+x86
+x8737
x8mz3hg7zm5f
+xAFK_BTWx
+xAbysss
xAddictive
+xAeroWolf
+xAndrew
+xBL00DSTREAM
xBaNeSoldier
+xBarlah
xBayLiss
+xBeefStonks
xBeerbear
xBehavior
xBellax
xBenny
xBlackDahlia
+xBongzilla
+xBootySlayer
xBottleCap
+xBotty
+xBowlofPhox
xBrendyy
+xBrimz
xBrown
xBusse
+xCUFFSx
xCallT0Armsx
+xCarter
+xCastiiel
xCheeseheadx
+xChemistry
+xCherish
+xChew
xChiro
+xChyeaa
xClf
+xClifffff
xCloudie
xCodeh
xComposure
+xD1E
xDCx152
+xDOMIN1C
+xDRAYx
xDab of Iron
+xDaf
xDagon
+xDapzz
xDat
xDevastor
+xDevil
+xDied
xDieter
xDijon
+xDilexro
+xDingy
+xDora
+xDoremonx
xDrawingDead
xDuckyV
xET99
+xElliott
xElsa
+xEnforcerx
+xEtiquette
xExclusive
xFMSx
xFailBoatx
+xFirespiritx
+xFlea
+xFloaty
+xFranku
xFraz
+xFremmy
xFruity
xGallarzax
xGigz
xGoat
+xGongo
xGrant
xGusBus
xH1ckz
xH4rry
xHades
xHamzha
+xHannna
xHartliss
xHarty
+xHayez
+xHearTBow
+xHerp
xHmongHerox
+xHugsi
xHussla
xI3reeze
+xIron Senpai
+xJeb
xJiren
xJlN
+xJolt
xJord
xJordd
xJulia
xJuve
+xKAJJEx
+xKadi
+xKdpunx
xKing
xKodai
xKrab
+xKril
+xL2MUZZx
+xLayLay
+xLelooToo
+xLester
+xLrc
xLuXx
xLumby
xLunatiQ
xLynn
xMBx
xMEKANIKx
+xMMGx
xMardy
xMarkos
+xMassx
xMatah
+xMatty
+xMedicate
xMentalXx
+xMetharos
+xMewzic
+xMochiix
xMonkey
+xMp5
xMyrupz
+xN I K Ex
+xNatureladx
xNeilzus
xNerevar
+xNgocdol
+xNickaap
xNova
+xO Poe
xOBG
+xOG420
xOnetickFap
xPager
+xPedu
xPhil
+xPortgas
+xPussSmasher
xQSS
xQuantumxx
+xRICK OWENSx
+xRadagonx
xRakine
xRaptor
+xReaperx666x
xReckless
+xRedGlow
+xRefactor
+xRektByAMain
xRemyLacroix
xRipple
+xRivv
xRobdebankx
xRobertox22
+xRobscapes
xRxmeo
xSPAGHETTIx
xSamR
xScooter
+xScribbz
+xScrimp
xSecret
xSeized
xServing
@@ -31321,185 +63686,419 @@ xSleepgoodx
xSlysoft
xSnaytronSx
xSnvw
+xSoKi
+xSteezy
xSweetHopex
xSword
+xSxAxMx
xSynn
+xT o m
+xT0A
+xTERRIBLEx
xTKOx
xTWM
xTerpenes
+xThirlmere
+xTopher
+xTorsti
xTransfer
xTrigger
xTwister
xVektor
xVenomx9
xVoidRange
+xW R A T Hx
+xWANNTEDx
xWar
+xWarface
+xWillowTreex
xWillx93
xWoke
xWoodChopx
+xX Bez Xx
xXBlitzO
xXCaBiDeXx
+xXDurryXx
+xXGIMP420Xx
xXJoshUKXxHD
+xXNaliXx
xXightx
+xXshadowz7Xx
+xYogibear
xZAKATAKx
xZCH
xZITOx
+xZayin
+xZeeBaby
xZuk
x_Goddess_xz
+x_Huzy_x
+x_Theron
+x_x Fish
+x_xMGKx_x
+xaa2
+xaarpus
+xal din
+xangoose
xansinmybody
xaoeu
xapd
xaro
xaxon
xbox
+xboxkid
xc00lxDawgx
+xceasea
xcoda
+xcrolles
xcvbg
+xd domi
+xd jumper
+xdamanx
+xeem
xegaF
+xemulate
+xenaines
xeney
+xenomuslol
xenvzi
xeravier
xerkin
+xexezinh0
+xfishngrillx
+xfxe
xgamerxx
+xhamstr
xhard82x
xhennamariax
xhoq
+xi execut3 x
+xi li er
+xiBubbax
+xiaohongshu
+xiaolingxiao
+xienn
+ximix
+xinnox
xir0nm4skx
+xirampagezz
xironluckx
+xiwitl
+xjawz1e
+xl Aaron lx
+xl cook
+xlDerekxl
+xlReversal
xlibrio
xlr704
+xlxl xlxl
+xmikeyx
+xmxxmx56
xoKt
xoRUNExo
+xolindseyxo
+xoreZ
xoro
xoxoverdose
xozoca
+xp per hour
+xp waster 47
+xpabax
+xpcumsez
xpeyotex
+xplo it
+xpoltergiest
xpwast3d
+xrated
xslayerbobx
xson
xspacedoll
xstic
xtcoming999
+xthn
+xtothedee
xttx
xtyrantix
+xvn
+xvrph
+xvza
+xwl
xwuwesxdrf
+xx darkminer
xxDerp
xxMatter
+xxREVENANTxx
xxSabin09xx
xxSe7en
+xxTanner
+xxcombatgodx
+xxero
+xxok
xxpurskillxx
xxx2sp3cuxxx
+xyujah
xyzn
+xzanle
+xzb
+xzizzil
+xzn 2
+xzwu
+y om
+y w
+y0y0keepitup
+y37ir
y8s1
+yTried
+ya pig
+ya winning
yaJaeT
yaboyalex
+yack daniels
yacobson99
+yae
yahn
yai5
yamawaro
yamb0
+yamsauze
yankmynads
yannickal4
+yanq10
+yaowiee
+yapgragim
+yasuo god69
yayasquirrel
ydoc
+ye idc
+ye ki M
+ye p to
+yea im jebus
yeahboi9992
+yeahsmitty
+yeahyoink
yearstowaste
+yeastyboys
yechu
+yedgy
+yee yee fkrs
yeet
+yellow car01
yeniL
yerrakunt
yesigame
yesy0u
yinghao870
+yinksnerf
yinonormal
yipcl
yippie1317
yispaulcute
+ykO Ops
+ykeL
+yleisradio
ylliB
+ym y
ymca4life
+yna
+yo eight
+yo itz ep
+yobacha
yodA
yoda
-yogurtnuts69
+yoda monkey
yohaha123
yolomuffin
+yonex
+yonghoon
+yooyeet
+yorkietootz
+yorue
+you died123
+you r a qt
youb1n
+youneedcope
+young meows
+young vibby
+youngbriks
+youngmachine
youngtrop21
youngwings
+youpougou
your
+your thrall
youralterego
+youssef
+yowasupppbra
+yoyoma361
+yp
+ypoodle
+ypool4
ypools
+yragbackward
+yrhs
yribbles
+ytsud mi
+ytuiop
+yugiiii
+yuh huh
+yum
+yummybolete
yung
+yung chubs
+yung cody
yung inf
+yungando
+yungcozzy
+yuor
yurciq
+yuy165
+yves klein
+yvonko
ywwoT
yxow
+yyknaH J
+yyttam
yyzanadu94
+yzyzyzy
+z 5 x
+z Animal z
+z Rhodes
+z Shane
+z a p s
+z iQ
+z man827
z0nk
+z0rrda
z0up
+z1ftz
+z4np
+z5p
+z7co
+zBando
zBenn
zBonesz
zCocoa
zDaremeth
zDeku
+zFalcone68
+zGameDance
+zGanj
+zGibao
+zGz
zJenga
zKamp
+zKno
zKuru
zLost
+zMonchi
+zNico
+zNolan
zRarePiece
+zRavenx
zSlay
+zSpaceRaptor
+zSwanny
zTitan
zWxLF
+za2
za33erklan
zaaza
zacharial
+zachhy
zachte
zack
+zack_0333
+zacyy
zaddy
+zak vol zalm
zakaru9999
+zakk0
+zakrey
+zakrobgames
zalem
+zancan2
+zapper920
zarehp
zarfeq
+zartrez
zasmaru
+zatch_maxed
+zazalover69
+zazazhizhma
zazyga
+zbra
zclx
zcollins
+zdi
zdin
+zdya
ze4l
zeKrD
zeachh
zeall
+zeano
+zebakkes
+zeccStake
+zedabranca
zeddicus676
zedisabled
zedzke
+zeeebak
zeeno
zegg
+zehstee
+zeikhannes
zeker
zeldris
+zelo1
zendendead
zenmort
zensix
+zenuk zay
zenyte4money
+zeppelin0ooh
zeqha
zer0
zer0sirisFHK
+zerker seven
zerkhelm
zero
zero gd
+zero u_u
+zeroblade81
zeroixx
zerotwonine
zeroz136
zerzerz
+zeus energy
zewos
+zewzh
+zhengu
+zhipowerz
zi0n1
+zibri7
+ziewe
zifyr
+ziggy man 77
+ziily
zilyana
zina
+zina n chill
zinax
+ziniD
+zinzares
+zionari
+zippp
zirreael
+ziurbtw
+ziuys
ziyi_wangler
+zjh
+zjind
+zlayaa
zlink10
zlliM
+zlowden
zmakisan
znap5
zoan
@@ -31507,36 +64106,55 @@ zoboz
zohcysp
zokunashi
zole
+zomff
zomgrick
zonares
zookwaa
zoomixd
zop1
zorkie
+zoro u
zouse
+zparky
+zppr
+zq0
zreL
+zrl
zruG
zrzwns
ztaM
ztkfps
+zu b
zubor1
zuenzima
+zujal
+zuk a cuck
+zuk xd
+zuk2hard4me
+zukushichi
+zulogz
zulrah
zuluTriPig
zummorak
zurcc
zurlond
zuuryy
-zuuzieosrs
+zw
zwah
zwint
zwolle
zwqpDEOXl23
+zxpf
zyeetz
+zygarde92
zygis323
+zykez
zymaa
zymz
zysuna
+zzad
zzai
+zzben
zzero
-zzigma
\ No newline at end of file
+zzigma
+zzzJonno
diff --git a/Server/data/botdata/ge_bot_appearances_and_equipment.json b/Server/data/botdata/ge_bot_appearances_and_equipment.json
new file mode 100644
index 000000000..a4a1bef50
--- /dev/null
+++ b/Server/data/botdata/ge_bot_appearances_and_equipment.json
@@ -0,0 +1,68 @@
+{
+ "noob": [
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"3","id":"1265"},{"amount":"1","charge":"1000","slot":"5","id":"1171"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"0"},{"color":"0","look":"11"},{"color":"16","look":"18"},{"color":"0","look":"27"},{"color":"0","look":"34"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1169"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"9183"},{"amount":"1","charge":"1000","slot":"4","id":"1131"},{"amount":"1","charge":"1000","slot":"7","id":"2495"},{"amount":"1","charge":"1000","slot":"9","id":"2491"},{"amount":"1","charge":"1000","slot":"10","id":"88"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"106"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1163"},{"amount":"1","charge":"1000","slot":"2","id":"1725"},{"amount":"1","charge":"1000","slot":"3","id":"5698"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"10","id":"3105"}]},
+ {"appearance":{"appearance_cache":[{"color":"9","look":"266"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"3","id":"1333"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"5","id":"1201"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"10","id":"11019"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"2"},{"color":"0","look":"13"},{"color":"1","look":"18"},{"color":"0","look":"28"},{"color":"0","look":"33"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"2910"},{"amount":"1","charge":"1000","slot":"1","id":"10499"},{"amount":"1","charge":"1000","slot":"2","id":"552"},{"amount":"1","charge":"1000","slot":"3","id":"861"},{"amount":"1","charge":"1000","slot":"4","id":"544"},{"amount":"1","charge":"1000","slot":"7","id":"2497"},{"amount":"1","charge":"1000","slot":"9","id":"7458"},{"amount":"1","charge":"1000","slot":"10","id":"2904"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"1007"},{"amount":"1","charge":"1000","slot":"3","id":"1381"},{"amount":"1","charge":"1000","slot":"4","id":"426"},{"amount":"1","charge":"1000","slot":"7","id":"428"}]},
+{"appearance":{"appearance_cache":[{"color":"20","look":"267"},{"color":"0","look":"12"},{"color":"0","look":"18"},{"color":"0","look":"31"},{"color":"4","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"3","id":"6908"},{"amount":"1","charge":"1000","slot":"4","id":"1135"},{"amount":"1","charge":"1000","slot":"7","id":"428"}]},
+{"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"6","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1161"},{"amount":"1","charge":"1000","slot":"3","id":"1287"},{"amount":"1","charge":"1000","slot":"4","id":"1123"},{"amount":"1","charge":"1000","slot":"5","id":"1199"},{"amount":"1","charge":"1000","slot":"7","id":"1073"}]},
+{"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"16"},{"color":"6","look":"18"},{"color":"0","look":"27"},{"color":"0","look":"84"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1153"},{"amount":"1","charge":"1000","slot":"3","id":"1363"},{"amount":"1","charge":"1000","slot":"4","id":"6184"},{"amount":"1","charge":"1000","slot":"5","id":"1540"},{"amount":"1","charge":"1000","slot":"7","id":"6185"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"16"},{"color":"6","look":"18"},{"color":"0","look":"27"},{"color":"0","look":"84"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"11021"},{"amount":"1","charge":"1000","slot":"1","id":"4411"},{"amount":"1","charge":"1000","slot":"2","id":"1725"},{"amount":"1","charge":"1000","slot":"3","id":"1333"},{"amount":"1","charge":"1000","slot":"4","id":"11020"},{"amount":"1","charge":"1000","slot":"5","id":"1185"},{"amount":"1","charge":"1000","slot":"7","id":"11022"},{"amount":"1","charge":"1000","slot":"10","id":"11019"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"16"},{"color":"6","look":"18"},{"color":"0","look":"27"},{"color":"0","look":"84"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1949"},{"amount":"1","charge":"1000","slot":"1","id":"1007"},{"amount":"1","charge":"1000","slot":"3","id":"1381"},{"amount":"1","charge":"1000","slot":"4","id":"426"},{"amount":"1","charge":"1000","slot":"5","id":"1540"},{"amount":"1","charge":"1000","slot":"7","id":"428"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"16"},{"color":"6","look":"18"},{"color":"0","look":"27"},{"color":"0","look":"84"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"10774"},{"amount":"1","charge":"1000","slot":"1","id":"10069"},{"amount":"1","charge":"1000","slot":"2","id":"1725"},{"amount":"1","charge":"1000","slot":"3","id":"1333"},{"amount":"1","charge":"1000","slot":"4","id":"1125"},{"amount":"1","charge":"1000","slot":"7","id":"1077"},{"amount":"1","charge":"1000","slot":"9","id":"2997"},{"amount":"1","charge":"1000","slot":"10","id":"7114"}]}
+
+ ],
+ "intermediate": [
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"3","id":"1265"},{"amount":"1","charge":"1000","slot":"5","id":"1171"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"1"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"2637"},{"amount":"1","charge":"1000","slot":"1","id":"6568"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1305"},{"amount":"1","charge":"1000","slot":"4","id":"3140"},{"amount":"1","charge":"1000","slot":"5","id":"6524"},{"amount":"1","charge":"1000","slot":"7","id":"4087"},{"amount":"1","charge":"1000","slot":"9","id":"3060"},{"amount":"1","charge":"1000","slot":"10","id":"11732"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"1"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"11674"},{"amount":"1","charge":"1000","slot":"1","id":"10720"},{"amount":"1","charge":"1000","slot":"2","id":"1725"},{"amount":"1","charge":"1000","slot":"3","id":"1387"},{"amount":"1","charge":"1000","slot":"4","id":"8839"},{"amount":"1","charge":"1000","slot":"7","id":"8840"},{"amount":"1","charge":"1000","slot":"9","id":"8842"},{"amount":"1","charge":"1000","slot":"10","id":"11732"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"261"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"16","look":"38"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"9805"},{"amount":"1","charge":"1000","slot":"4","id":"10348"},{"amount":"1","charge":"1000","slot":"10","id":"1837"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"261"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"16","look":"38"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"10392"},{"amount":"1","charge":"1000","slot":"1","id":"1007"},{"amount":"1","charge":"1000","slot":"2","id":"11113"},{"amount":"1","charge":"1000","slot":"3","id":"1387"},{"amount":"1","charge":"1000","slot":"4","id":"1117"},{"amount":"1","charge":"1000","slot":"5","id":"1173"},{"amount":"1","charge":"1000","slot":"7","id":"1075"},{"amount":"1","charge":"1000","slot":"10","id":"4129"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"3"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"3755"},{"amount":"1","charge":"1000","slot":"1","id":"2412"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1383"},{"amount":"1","charge":"1000","slot":"4","id":"4091"},{"amount":"1","charge":"1000","slot":"7","id":"4093"},{"amount":"1","charge":"1000","slot":"9","id":"7462"},{"amount":"1","charge":"1000","slot":"10","id":"10696"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"3"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9755"},{"amount":"1","charge":"1000","slot":"1","id":"9754"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1275"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"10","id":"88"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"106"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"11665"},{"amount":"1","charge":"1000","slot":"1","id":"9807"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"13290"},{"amount":"1","charge":"1000","slot":"4","id":"8839"},{"amount":"1","charge":"1000","slot":"5","id":"1201"},{"amount":"1","charge":"1000","slot":"7","id":"8840"},{"amount":"1","charge":"1000","slot":"9","id":"8842"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"106"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9672"},{"amount":"1","charge":"1000","slot":"1","id":"9783"},{"amount":"1","charge":"1000","slot":"2","id":"1725"},{"amount":"1","charge":"1000","slot":"3","id":"4587"},{"amount":"1","charge":"1000","slot":"4","id":"9674"},{"amount":"1","charge":"1000","slot":"7","id":"2497"},{"amount":"1","charge":"1000","slot":"9","id":"7458"},{"amount":"1","charge":"1000","slot":"10","id":"3105"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"106"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"10828"},{"amount":"1","charge":"1000","slot":"1","id":"9763"},{"amount":"1","charge":"1000","slot":"2","id":"1725"},{"amount":"1","charge":"1000","slot":"3","id":"4587"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"5","id":"8850"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"10","id":"3105"}]},
+ {"appearance":{"appearance_cache":[{"color":"9","look":"266"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"10828"},{"amount":"1","charge":"1000","slot":"1","id":"2414"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"4587"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"5","id":"1201"},{"amount":"1","charge":"1000","slot":"7","id":"4087"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"2"},{"color":"0","look":"13"},{"color":"1","look":"18"},{"color":"0","look":"28"},{"color":"0","look":"33"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"9802"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"2"},{"color":"0","look":"13"},{"color":"1","look":"18"},{"color":"0","look":"28"},{"color":"0","look":"33"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"6182"},{"amount":"1","charge":"1000","slot":"1","id":"4355"},{"amount":"1","charge":"1000","slot":"2","id":"1478"},{"amount":"1","charge":"1000","slot":"3","id":"9185"},{"amount":"1","charge":"1000","slot":"4","id":"544"},{"amount":"1","charge":"1000","slot":"7","id":"2497"}]} ,
+ {"appearance":{"appearance_cache":[{"color":"1","look":"1"},{"color":"0","look":"10"},{"color":"14","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"20","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"10071"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"8872"},{"amount":"1","charge":"1000","slot":"9","id":"1059"},{"amount":"1","charge":"1000","slot":"10","id":"88"}]},
+{"appearance":{"appearance_cache":[{"color":"20","look":"278"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"0","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1149"},{"amount":"1","charge":"1000","slot":"1","id":"6568"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1305"},{"amount":"1","charge":"1000","slot":"4","id":"2623"},{"amount":"1","charge":"1000","slot":"5","id":"6524"},{"amount":"1","charge":"1000","slot":"7","id":"4087"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]},
+ {"appearance":{"appearance_cache":[{"color":"20","look":"1"},{"color":"0","look":"14"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"4413"},{"amount":"1","charge":"1000","slot":"3","id":"1271"},{"amount":"1","charge":"1000","slot":"4","id":"1123"},{"amount":"1","charge":"1000","slot":"7","id":"1073"}]},
+{"appearance":{"appearance_cache":[{"color":"20","look":"1"},{"color":"0","look":"14"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"3751"},{"amount":"1","charge":"1000","slot":"1","id":"10499"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"4587"},{"amount":"1","charge":"1000","slot":"4","id":"546"},{"amount":"1","charge":"1000","slot":"5","id":"1201"},{"amount":"1","charge":"1000","slot":"7","id":"548"},{"amount":"1","charge":"1000","slot":"10","id":"3105"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"14120"},{"amount":"1","charge":"1000","slot":"2","id":"9470"},{"amount":"1","charge":"1000","slot":"3","id":"1305"},{"amount":"1","charge":"1000","slot":"4","id":"10822"},{"amount":"1","charge":"1000","slot":"5","id":"1540"},{"amount":"1","charge":"1000","slot":"7","id":"10824"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"5","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1153"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"4153"},{"amount":"1","charge":"1000","slot":"4","id":"1115"},{"amount":"1","charge":"1000","slot":"7","id":"1067"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"5","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"3751"},{"amount":"1","charge":"1000","slot":"1","id":"6568"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"5698"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"5","id":"8847"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"10","id":"4131"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"5","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1163"},{"amount":"1","charge":"1000","slot":"2","id":"3853"},{"amount":"1","charge":"1000","slot":"3","id":"1373"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"5","id":"1201"},{"amount":"1","charge":"1000","slot":"7","id":"1079"}]} ,
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"5","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"11021"},{"amount":"1","charge":"1000","slot":"2","id":"3853"},{"amount":"1","charge":"1000","slot":"3","id":"1373"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"5","id":"1201"},{"amount":"1","charge":"1000","slot":"7","id":"1079"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"5","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"11021"},{"amount":"1","charge":"1000","slot":"1","id":"14081"},{"amount":"1","charge":"1000","slot":"2","id":"3853"},{"amount":"1","charge":"1000","slot":"3","id":"1373"},{"amount":"1","charge":"1000","slot":"4","id":"6184"},{"amount":"1","charge":"1000","slot":"7","id":"6185"},{"amount":"1","charge":"1000","slot":"10","id":"3107"}]},
+{"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"6","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"6182"},{"amount":"1","charge":"1000","slot":"1","id":"10636"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1371"},{"amount":"1","charge":"1000","slot":"4","id":"10633"},{"amount":"1","charge":"1000","slot":"5","id":"3122"},{"amount":"1","charge":"1000","slot":"7","id":"6181"}]},
+{"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"16"},{"color":"6","look":"18"},{"color":"0","look":"27"},{"color":"0","look":"84"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"10071"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1381"},{"amount":"1","charge":"1000","slot":"10","id":"88"}]}
+
+ ],
+ "veteran": [
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1038"},{"amount":"1","charge":"1000","slot":"1","id":"6570"},{"amount":"1","charge":"1000","slot":"2","id":"10360"},{"amount":"1","charge":"1000","slot":"3","id":"3053"},{"amount":"1","charge":"1000","slot":"4","id":"3140"},{"amount":"1","charge":"1000","slot":"5","id":"1171"},{"amount":"1","charge":"1000","slot":"7","id":"10394"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"4","look":"48"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"0","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1038"},{"amount":"1","charge":"1000","slot":"1","id":"6570"},{"amount":"1","charge":"1000","slot":"2","id":"10360"},{"amount":"1","charge":"1000","slot":"3","id":"3053"},{"amount":"1","charge":"1000","slot":"4","id":"3140"},{"amount":"1","charge":"1000","slot":"5","id":"1171"},{"amount":"1","charge":"1000","slot":"7","id":"10394"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"4","look":"48"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"0","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9950"},{"amount":"1","charge":"1000","slot":"1","id":"6570"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"7668"},{"amount":"1","charge":"1000","slot":"4","id":"2503"},{"amount":"1","charge":"1000","slot":"7","id":"2497"},{"amount":"1","charge":"1000","slot":"9","id":"5556"},{"amount":"1","charge":"1000","slot":"10","id":"11732"},{"amount":"293","charge":"1000","slot":"13","id":"877"}]},
+ {"appearance":{"appearance_cache":[{"color":"12","look":"261"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"16","look":"38"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"9805"},{"amount":"1","charge":"1000","slot":"4","id":"10348"},{"amount":"1","charge":"1000","slot":"10","id":"1837"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"3"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"9807"},{"amount":"1","charge":"1000","slot":"2","id":"1656"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"9","id":"7462"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"3"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9758"},{"amount":"1","charge":"1000","slot":"1","id":"9757"},{"amount":"1","charge":"1000","slot":"2","id":"1656"},{"amount":"1","charge":"1000","slot":"3","id":"1387"},{"amount":"1","charge":"1000","slot":"4","id":"10378"},{"amount":"1","charge":"1000","slot":"5","id":"1183"},{"amount":"1","charge":"1000","slot":"7","id":"10380"},{"amount":"1","charge":"1000","slot":"9","id":"7462"},{"amount":"1","charge":"1000","slot":"10","id":"10696"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"3"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"10828"},{"amount":"1","charge":"1000","slot":"1","id":"10635"},{"amount":"1","charge":"1000","slot":"2","id":"9470"},{"amount":"1","charge":"1000","slot":"3","id":"9185"},{"amount":"1","charge":"1000","slot":"4","id":"10386"},{"amount":"1","charge":"1000","slot":"5","id":"3842"},{"amount":"1","charge":"1000","slot":"7","id":"10388"},{"amount":"1","charge":"1000","slot":"10","id":"1837"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"3"},{"color":"0","look":"16"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9755"},{"amount":"1","charge":"1000","slot":"1","id":"9754"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"1275"},{"amount":"1","charge":"1000","slot":"4","id":"1127"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"10","id":"88"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9764"},{"amount":"1","charge":"1000","slot":"1","id":"9763"},{"amount":"1","charge":"1000","slot":"2","id":"1704"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"108"},{"color":"3","look":"34"},{"color":"16","look":"38"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9814"},{"amount":"1","charge":"1000","slot":"1","id":"10662"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"16","look":"18"},{"color":"0","look":"108"},{"color":"3","look":"34"},{"color":"16","look":"38"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"9749"},{"amount":"1","charge":"1000","slot":"1","id":"10662"},{"amount":"1","charge":"1000","slot":"2","id":"6585"},{"amount":"1","charge":"1000","slot":"3","id":"5016"},{"amount":"1","charge":"1000","slot":"4","id":"13858"},{"amount":"1","charge":"1000","slot":"5","id":"7053"},{"amount":"1","charge":"1000","slot":"7","id":"13861"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"2"},{"color":"0","look":"13"},{"color":"1","look":"18"},{"color":"0","look":"28"},{"color":"0","look":"33"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"11718"},{"amount":"1","charge":"1000","slot":"1","id":"10499"},{"amount":"1","charge":"1000","slot":"2","id":"87"},{"amount":"1","charge":"1000","slot":"3","id":"9185"},{"amount":"1","charge":"1000","slot":"4","id":"11720"},{"amount":"1","charge":"1000","slot":"5","id":"11283"},{"amount":"1","charge":"1000","slot":"7","id":"11722"},{"amount":"1","charge":"1000","slot":"9","id":"7458"},{"amount":"1","charge":"1000","slot":"10","id":"6920"}]},
+ {"appearance":{"appearance_cache":[{"color":"1","look":"2"},{"color":"0","look":"13"},{"color":"1","look":"18"},{"color":"0","look":"28"},{"color":"0","look":"33"},{"color":"16","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"6918"},{"amount":"1","charge":"1000","slot":"1","id":"9771"},{"amount":"1","charge":"1000","slot":"2","id":"87"},{"amount":"1","charge":"1000","slot":"3","id":"1387"},{"amount":"1","charge":"1000","slot":"4","id":"6916"},{"amount":"1","charge":"1000","slot":"5","id":"11283"},{"amount":"1","charge":"1000","slot":"7","id":"6924"},{"amount":"1","charge":"1000","slot":"9","id":"6922"},{"amount":"1","charge":"1000","slot":"10","id":"6920"}]},
+{"appearance":{"appearance_cache":[{"color":"0","look":"45"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"6","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"2637"},{"amount":"1","charge":"1000","slot":"1","id":"9769"},{"amount":"1","charge":"1000","slot":"2","id":"1478"},{"amount":"1","charge":"1000","slot":"3","id":"4151"},{"amount":"1","charge":"1000","slot":"4","id":"10460"},{"amount":"1","charge":"1000","slot":"5","id":"3842"},{"amount":"1","charge":"1000","slot":"7","id":"10394"},{"amount":"1","charge":"1000","slot":"9","id":"2912"},{"amount":"1","charge":"1000","slot":"10","id":"2904"}]},
+ {"appearance":{"appearance_cache":[{"color":"0","look":"45"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"6","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"8903"},{"amount":"1","charge":"1000","slot":"1","id":"9807"},{"amount":"1","charge":"1000","slot":"2","id":"6585"},{"amount":"1","charge":"1000","slot":"3","id":"4151"},{"amount":"1","charge":"1000","slot":"4","id":"14479"},{"amount":"1","charge":"1000","slot":"5","id":"1187"},{"amount":"1","charge":"1000","slot":"7","id":"4087"},{"amount":"1","charge":"1000","slot":"9","id":"2912"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]},
+{"appearance":{"appearance_cache":[{"color":"20","look":"278"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"0","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"1","id":"10635"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"4151"},{"amount":"1","charge":"1000","slot":"4","id":"4757"},{"amount":"1","charge":"1000","slot":"5","id":"7053"},{"amount":"1","charge":"1000","slot":"7","id":"4759"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]},
+ {"appearance":{"appearance_cache":[{"color":"20","look":"278"},{"color":"0","look":"1000"},{"color":"0","look":"56"},{"color":"0","look":"61"},{"color":"0","look":"68"},{"color":"0","look":"70"},{"color":"0","look":"79"}],"gender":"1"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"1163"},{"amount":"1","charge":"1000","slot":"1","id":"9766"},{"amount":"1","charge":"1000","slot":"2","id":"1704"},{"amount":"1","charge":"1000","slot":"3","id":"4587"},{"amount":"1","charge":"1000","slot":"4","id":"10551"},{"amount":"1","charge":"1000","slot":"5","id":"8850"},{"amount":"1","charge":"1000","slot":"7","id":"1079"},{"amount":"1","charge":"1000","slot":"9","id":"7455"}]},
+{"appearance":{"appearance_cache":[{"color":"12","look":"2"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"0","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"2643"},{"amount":"1","charge":"1000","slot":"1","id":"10446"},{"amount":"1","charge":"1000","slot":"2","id":"6585"},{"amount":"1","charge":"1000","slot":"3","id":"4151"},{"amount":"1","charge":"1000","slot":"4","id":"4712"},{"amount":"1","charge":"1000","slot":"5","id":"8850"},{"amount":"1","charge":"1000","slot":"7","id":"4714"},{"amount":"1","charge":"1000","slot":"9","id":"7461"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]},
+{"appearance":{"appearance_cache":[{"color":"0","look":"0"},{"color":"0","look":"10"},{"color":"0","look":"18"},{"color":"0","look":"26"},{"color":"6","look":"33"},{"color":"0","look":"36"},{"color":"0","look":"42"}],"gender":"0"},"equipment":[{"amount":"1","charge":"1000","slot":"0","id":"10828"},{"amount":"1","charge":"1000","slot":"1","id":"2414"},{"amount":"1","charge":"1000","slot":"2","id":"6585"},{"amount":"1","charge":"1000","slot":"3","id":"4587"},{"amount":"1","charge":"1000","slot":"4","id":"10551"},{"amount":"1","charge":"1000","slot":"5","id":"1187"},{"amount":"1","charge":"1000","slot":"7","id":"4087"},{"amount":"1","charge":"1000","slot":"9","id":"7462"},{"amount":"1","charge":"1000","slot":"10","id":"11732"}]}
+
+
+ ]
+}
\ No newline at end of file
diff --git a/Server/data/cache/main_file_cache.dat2 b/Server/data/cache/main_file_cache.dat2
index 5658efe32..245fa6081 100644
--- a/Server/data/cache/main_file_cache.dat2
+++ b/Server/data/cache/main_file_cache.dat2
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2985b1eac72527b3badb3316d61ba0043310f3c38dd6a5626ae2bfb082fee200
-size 91621090
+oid sha256:b5431211b019b9403b4cfca933f4c9635c1d5278d3730995dced0d8672b1cc91
+size 91702293
diff --git a/Server/data/cache/main_file_cache.idx19 b/Server/data/cache/main_file_cache.idx19
index e46de80f4..853d55e14 100644
--- a/Server/data/cache/main_file_cache.idx19
+++ b/Server/data/cache/main_file_cache.idx19
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4de110552ac35ab5395e44b79133450ba04eac1fa36c4eceb7271cda858024f1
+oid sha256:3e8d1f3dd00aed753029371a37eb75f2068a6bfb902d481891a2e15afd3a9f34
size 348
diff --git a/Server/data/cache/main_file_cache.idx255 b/Server/data/cache/main_file_cache.idx255
index 4c00d4443..6e504259a 100644
--- a/Server/data/cache/main_file_cache.idx255
+++ b/Server/data/cache/main_file_cache.idx255
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ad2c31c2f1ce536aee407c59c733ece2809e4ee9b930108f13e149744521ed56
+oid sha256:83a2292c515596af0423764c48e41dfe1aac482920dca0b89ecb343db6dd4c30
size 174
diff --git a/Server/data/cache/main_file_cache.idx5 b/Server/data/cache/main_file_cache.idx5
index dad8dfec7..f19fd00c7 100644
--- a/Server/data/cache/main_file_cache.idx5
+++ b/Server/data/cache/main_file_cache.idx5
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9ef6807f6653e09be9b6e2299055f1132c34dc6108e8b92fbae5add2233c2d64
-size 22092
+oid sha256:32bda84b31731cd60f7bc4e90caf7d55671e966fa958d60f2ec91da16340743d
+size 22188
diff --git a/Server/data/configs/account_limit_exceptions.conf b/Server/data/configs/account_limit_exceptions.conf
new file mode 100644
index 000000000..c412ca256
--- /dev/null
+++ b/Server/data/configs/account_limit_exceptions.conf
@@ -0,0 +1,2 @@
+[exceptions]
+"127.0.0.1" = 5
\ No newline at end of file
diff --git a/Server/data/configs/ammo_configs.json b/Server/data/configs/ammo_configs.json
index c0f6437e0..4cc7dbc0a 100644
--- a/Server/data/configs/ammo_configs.json
+++ b/Server/data/configs/ammo_configs.json
@@ -546,7 +546,7 @@
{
"itemId": "2866",
"name": "Ogre arrow",
- "start_graphic": "243,96",
+ "start_graphic": "243,60",
"darkbow_graphic": "",
"projectile": "242,40,36,41,46,5,0",
"poison_damage": "0"
diff --git a/Server/data/configs/clue_rewards.json b/Server/data/configs/clue_rewards.json
new file mode 100644
index 000000000..5554b133b
--- /dev/null
+++ b/Server/data/configs/clue_rewards.json
@@ -0,0 +1,2182 @@
+{
+ "rare": [
+ {
+ "minAmount": 1,
+ "weight": 50,
+ "id": 10362,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 30,
+ "id": 3486,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 30,
+ "id": 3481,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 30,
+ "id": 3483,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 30,
+ "id": 3485,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 30,
+ "id": 3488,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10330,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10332,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10334,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10336,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10338,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10340,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10342,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10344,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10346,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10348,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10350,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": 10,
+ "id": 10352,
+ "maxAmount": 1
+ }
+ ],
+ "medium": [
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2605,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2599,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2601,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2603,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3474,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2613,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2607,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2609,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3475,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2611,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2647,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2645,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2649,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2577,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2579,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7319,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7321,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7323,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7325,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7327,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7372,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7380,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7370,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7378,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13103,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13097,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10282,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13109,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13107,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13111,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13113,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13115,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10364,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10420,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10422,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10400,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10402,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10416,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10418,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10436,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10438,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10296,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10298,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10300,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10302,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10304,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7334,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7340,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7346,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7352,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7358,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10446,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10448,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10450,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10452,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10454,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10456,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1161,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1123,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1073,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1091,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1199,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1183,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1111,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1211,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1271,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1287,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1301,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1317,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1357,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1371,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1430,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 10,
+ "weight": "5",
+ "id": 4823,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 9183,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1393,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1099,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1135,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 857,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 10,
+ "weight": "5",
+ "id": 8781,
+ "maxAmount": 43
+ },
+ {
+ "minAmount": 6,
+ "weight": "5",
+ "id": 374,
+ "maxAmount": 23
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 380,
+ "maxAmount": 43
+ },
+ {
+ "minAmount": 500,
+ "weight": "5",
+ "id": 995,
+ "maxAmount": 7000
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 10326,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7329,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7331,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7330,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 10327,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10476,
+ "maxAmount": 27
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 556,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 554,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 557,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 555,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3827,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3828,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3829,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3830,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3831,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3832,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3833,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3834,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3835,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3836,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3837,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3838,
+ "maxAmount": 1
+ }
+ ],
+ "hard": [
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10284,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13101,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13099,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10470,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10472,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10474,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10440,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10442,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10444,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2627,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2623,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2625,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3477,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2629,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2619,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2615,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2617,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3476,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2621,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2673,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2669,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2671,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3480,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2675,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2657,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2653,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2655,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3478,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2659,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2665,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2661,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2663,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3479,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2667,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10286,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7336,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10288,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7342,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10290,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7348,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10292,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7354,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10294,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7360,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7376,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7384,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7374,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7382,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10374,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10368,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10370,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10372,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10382,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10376,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10378,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10380,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10390,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10384,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10386,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10388,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2651,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2581,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2639,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2641,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2643,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1163,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1127,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1079,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1093,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1201,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1185,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1213,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1275,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1289,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1303,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1319,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1359,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1373,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1432,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 10,
+ "weight": "5",
+ "id": 4824,
+ "maxAmount": 43
+ },
+ {
+ "minAmount": 6,
+ "weight": "5",
+ "id": 9144,
+ "maxAmount": 23
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 9185,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2497,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2503,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 861,
+ "maxAmount": 2
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 859,
+ "maxAmount": 2
+ },
+ {
+ "minAmount": 6,
+ "weight": "5",
+ "id": 8783,
+ "maxAmount": 27
+ },
+ {
+ "minAmount": 16,
+ "weight": "5",
+ "id": 380,
+ "maxAmount": 38
+ },
+ {
+ "minAmount": 7,
+ "weight": "5",
+ "id": 386,
+ "maxAmount": 32
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7398,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7399,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7400,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 500,
+ "weight": "5",
+ "id": 995,
+ "maxAmount": 7000
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 10326,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7329,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7331,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7330,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 10327,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10476,
+ "maxAmount": 27
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 556,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 554,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 557,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 555,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3827,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3828,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3829,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3830,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3831,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3832,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3833,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3834,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3835,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3836,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3837,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3838,
+ "maxAmount": 1
+ }
+ ],
+ "easy": [
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2633,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2635,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2637,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2587,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2583,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2585,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3472,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2589,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2595,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2591,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2593,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3473,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2597,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10306,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10308,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10310,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10312,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10314,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7332,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7338,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7344,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7350,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7356,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 2631,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7392,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7396,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7388,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7390,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7386,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7394,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7362,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7366,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7364,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 7368,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10404,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10406,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10424,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10426,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10408,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10410,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10428,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10430,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10412,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10414,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10432,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10434,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10316,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10318,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10320,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10322,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10324,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10392,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10394,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10396,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10398,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10366,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10458,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10464,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10462,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10466,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10460,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10468,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13095,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 13105,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10280,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1077,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1089,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1107,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1125,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1151,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1165,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1179,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1195,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1217,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1283,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1297,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1313,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1327,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1341,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1361,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1367,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1426,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3098,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 4821,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 4,
+ "weight": "5",
+ "id": 8779,
+ "maxAmount": 38
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 850,
+ "maxAmount": 4
+ },
+ {
+ "minAmount": 4,
+ "weight": "5",
+ "id": 334,
+ "maxAmount": 19
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1169,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1059,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1061,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1063,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1095,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1129,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1167,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1131,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 858,
+ "maxAmount": 4
+ },
+ {
+ "minAmount": 3,
+ "weight": "5",
+ "id": 330,
+ "maxAmount": 23
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1441,
+ "maxAmount": 3
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1443,
+ "maxAmount": 3
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1270,
+ "maxAmount": 3
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1097,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 1133,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 500,
+ "weight": "5",
+ "id": 995,
+ "maxAmount": 7000
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 10326,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7329,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7331,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 7330,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 15,
+ "weight": "5",
+ "id": 10327,
+ "maxAmount": 40
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 10476,
+ "maxAmount": 27
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 556,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 554,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 557,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 555,
+ "maxAmount": 228
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3827,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3828,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3829,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3830,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3831,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3832,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3833,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3834,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3835,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3836,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3837,
+ "maxAmount": 1
+ },
+ {
+ "minAmount": 1,
+ "weight": "5",
+ "id": 3838,
+ "maxAmount": 1
+ }
+ ]
+}
diff --git a/Server/data/configs/door_configs.json b/Server/data/configs/door_configs.json
index 21568f895..ec17288a2 100644
--- a/Server/data/configs/door_configs.json
+++ b/Server/data/configs/door_configs.json
@@ -73,7 +73,7 @@
},
{
"id": "92",
- "replaceId": "17317",
+ "replaceId": "91",
"fence": "false",
"metal": "false"
},
@@ -193,7 +193,7 @@
},
{
"id": "1553",
- "replaceId": "1552",
+ "replaceId": "1556",
"fence": "true",
"metal": "false"
},
@@ -301,7 +301,7 @@
},
{
"id": "2025",
- "replaceId": "1534",
+ "replaceId": "2026",
"fence": "false",
"metal": "false"
},
@@ -312,14 +312,14 @@
"metal": "false"
},
{
- "id": "2036",
+ "id": "1530",
"replaceId": "1531",
"fence": "false",
"metal": "false"
},
{
"id": "2039",
- "replaceId": "1561",
+ "replaceId": "1560",
"fence": "false",
"metal": "true"
},
@@ -332,13 +332,13 @@
{
"id": "2050",
"replaceId": "15511",
- "fence": "false",
+ "fence": "true",
"metal": "false"
},
{
"id": "2051",
"replaceId": "15513",
- "fence": "false",
+ "fence": "true",
"metal": "false"
},
{
@@ -896,12 +896,12 @@
{
"id": "3725",
"replaceId": "3727",
- "fence": "false",
+ "fence": "true",
"metal": "false"
},
{
"id": "3726",
- "replaceId": "3727",
+ "replaceId": "3728",
"fence": "true",
"metal": "false"
},
@@ -925,7 +925,7 @@
},
{
"id": "3747",
- "replaceId": "1534",
+ "replaceId": "3748",
"fence": "false",
"metal": "false"
},
@@ -943,7 +943,7 @@
},
{
"id": "4148",
- "replaceId": "4248",
+ "replaceId": "4246",
"fence": "false",
"metal": "false"
},
@@ -979,19 +979,19 @@
},
{
"id": "4423",
- "replaceId": "4429",
+ "replaceId": "4425",
"fence": "false",
"metal": "false"
},
{
"id": "4424",
- "replaceId": "11382",
+ "replaceId": "4426",
"fence": "false",
"metal": "false"
},
{
"id": "4427",
- "replaceId": "11380",
+ "replaceId": "4429",
"fence": "false",
"metal": "false"
},
@@ -1238,12 +1238,12 @@
{
"id": "7049",
"replaceId": "7051",
- "fence": "false",
+ "fence": "true",
"metal": "false"
},
{
"id": "7050",
- "replaceId": "23919",
+ "replaceId": "7052",
"fence": "true",
"metal": "false"
},
@@ -1340,7 +1340,7 @@
{
"id": "8810",
"replaceId": "8812",
- "fence": "false",
+ "fence": "true",
"metal": "false"
},
{
@@ -1759,7 +1759,7 @@
},
{
"id": "14245",
- "replaceId": "14248",
+ "replaceId": "14246",
"fence": "true",
"metal": "false"
},
@@ -1983,7 +1983,15 @@
"id": "20391",
"replaceId": "28518",
"fence": "false",
- "metal": "true"
+ "metal": "true",
+ "autowalk": "true"
+ },
+ {
+ "id": "28514",
+ "replaceId": "28518",
+ "fence": "false",
+ "metal": "true",
+ "autowalk": "true"
},
{
"id": "21065",
@@ -2144,13 +2152,13 @@
{
"id": "24369",
"replaceId": "24373",
- "fence": "true",
+ "fence": "false",
"metal": "false"
},
{
"id": "24370",
"replaceId": "24374",
- "fence": "true",
+ "fence": "false",
"metal": "false"
},
{
@@ -2177,18 +2185,6 @@
"fence": "false",
"metal": "false"
},
- {
- "id": "24560",
- "replaceId": "15515",
- "fence": "false",
- "metal": "false"
- },
- {
- "id": "24561",
- "replaceId": "15517",
- "fence": "false",
- "metal": "false"
- },
{
"id": "24565",
"replaceId": "36316",
@@ -2357,11 +2353,25 @@
"fence": "false",
"metal": "true"
},
+ {
+ "id": "26081",
+ "replaceId": "26083",
+ "fence": "false",
+ "metal": "true",
+ "autowalk": "true"
+ },
+ {
+ "id": "26082",
+ "replaceId": "26084",
+ "fence": "false",
+ "metal": "true",
+ "autowalk": "true"
+ },
{
"id": "26130",
"replaceId": "26132",
"fence": "false",
- "metal": "false"
+ "metal": "true"
},
{
"id": "26131",
@@ -2507,12 +2517,6 @@
"fence": "false",
"metal": "false"
},
- {
- "id": "28514",
- "replaceId": "28518",
- "fence": "true",
- "metal": "true"
- },
{
"id": "28589",
"replaceId": "28588",
@@ -2671,7 +2675,7 @@
},
{
"id": "31815",
- "replaceId": "31816",
+ "replaceId": "31817",
"fence": "false",
"metal": "false"
},
@@ -2798,7 +2802,7 @@
{
"id": "34780",
"replaceId": "34778",
- "fence": "false",
+ "fence": "true",
"metal": "false"
},
{
diff --git a/Server/data/configs/drop_tables.json b/Server/data/configs/drop_tables.json
index 3c1a53643..b726152c4 100644
--- a/Server/data/configs/drop_tables.json
+++ b/Server/data/configs/drop_tables.json
@@ -16,187 +16,121 @@
}
],
"charm": [],
- "ids": "1,2,3,16,24,170,351,359,663,726,727,728,729,730,1086,2675,3223,3224,3225,3915,5923",
+ "ids": "1,2,3,16,24,170,351,359,663,726,727,728,729,730,1081,1084,1085,1086,1087,1088,1089,2675,2683,3223,3224,3225,3915,5923",
"description": "",
"main": [
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "555",
- "maxAmount": "7"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "4"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "9",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "9"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "562",
- "maxAmount": "2"
- },
- {
- "minAmount": "7",
- "weight": "5.0",
- "id": "559",
- "maxAmount": "7"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "12"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1381",
+ "weight": "1.0",
+ "id": "1203",
"maxAmount": "1"
},
+ {
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
+ },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "23.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "37.0",
"id": "995",
- "maxAmount": "40"
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1438",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "436",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "438",
+ "weight": "2.0",
+ "id": "1440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
}
]
@@ -211,180 +145,120 @@
}
],
"charm": [],
- "ids": "4,5,6,25,352,353,354,360,361,362,363,2776,3226,3227,5924",
+ "ids": "4,5,6,25,352,353,354,360,361,362,363,2776,2684,3226,3227,5924",
"description": "",
"main": [
{
- "minAmount": "7",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "7"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "12"
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1139",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1203",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
},
{
"minAmount": "7",
- "weight": "25.0",
- "id": "555",
+ "weight": "3.0",
+ "id": "882",
"maxAmount": "7"
},
{
"minAmount": "4",
- "weight": "25.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "4"
},
{
"minAmount": "6",
- "weight": "25.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "6"
},
{
"minAmount": "9",
- "weight": "25.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "9"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "2"
},
- {
- "minAmount": "7",
- "weight": "5.0",
- "id": "559",
- "maxAmount": "7"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "3",
+ "weight": "37.0",
"id": "995",
- "maxAmount": "400"
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1965",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "436",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "438",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1438",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
@@ -403,185 +277,107 @@
"ids": "7,1377,1757,1758,1759,1760,1761,7128,7129,7130",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5345",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5341",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5329",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5331",
- "maxAmount": "1"
- },
{
"minAmount": "4",
- "weight": "25.0",
- "id": "5324",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "5323",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5318",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5322",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "12148",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "313",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "2"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "556",
+ "weight": "2.0",
+ "id": "557",
"maxAmount": "4"
},
{
"minAmount": "6",
- "weight": "25.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "6"
},
{
"minAmount": "9",
- "weight": "25.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "9"
},
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "11.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "27.0",
+ "id": "14430",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "38.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "27.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "313",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "5341",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "1440",
"maxAmount": "1"
},
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "12"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1139",
+ "weight": "2.0",
+ "id": "5345",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1203",
+ "weight": "2.0",
+ "id": "5343",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "436",
+ "weight": "1.0",
+ "id": "5329",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "207",
+ "weight": "1.0",
+ "id": "5340",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "5320",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5319",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "15"
}
]
},
@@ -1032,190 +828,167 @@
"ids": "12,3246,3247,3248,3249,3250,3251,3252,3253,3255,3256,3257,3258,3259,3260,3261,3262,3263,5909",
"description": "",
"main": [
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "5"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "6"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "2"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "5"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "5"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1379",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1351",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1375",
- "maxAmount": "1"
- },
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "882",
- "maxAmount": "18"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1349",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
+ "id": "1379",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1375",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1420",
"maxAmount": "1"
},
+ {
+ "minAmount": "15",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "15"
+ },
{
"minAmount": "8",
- "weight": "50.0",
+ "weight": "3.0",
"id": "884",
"maxAmount": "8"
},
{
- "minAmount": "58",
- "weight": "50.0",
+ "minAmount": "3",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "3.0",
+ "id": "557",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "8",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "10",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "5",
+ "weight": "41.0",
"id": "995",
- "maxAmount": "315"
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "8",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "25",
+ "weight": "5.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "32",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "32"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "440",
+ "weight": "36.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "438",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1917",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "2142",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "948",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1592",
+ "weight": "1.0",
+ "id": "1917",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "9004",
+ "weight": "1.0",
+ "id": "2142",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1595",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1619",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1623",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2714",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "956",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2349",
+ "weight": "1.0",
+ "id": "1592",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
}
]
},
{
- "default": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
"charm": [
{
"minAmount": "1",
@@ -1253,153 +1026,177 @@
"main": [
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "556",
"maxAmount": "5"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "556",
"maxAmount": "12"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "554",
"maxAmount": "5"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "12"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "555",
"maxAmount": "5"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "555",
"maxAmount": "12"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "557",
"maxAmount": "5"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "12"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "559",
"maxAmount": "5"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "559",
"maxAmount": "12"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "558",
"maxAmount": "5"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "12"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "8.0",
"id": "562",
"maxAmount": "2"
},
{
"minAmount": "10",
- "weight": "5.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "10"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "8.0",
"id": "561",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "1.0",
"id": "563",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "1.0",
"id": "565",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "1379",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "30"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1448",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1444",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "579",
+ "weight": "3.0",
+ "id": "1440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1442",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "20.0",
+ "id": "995",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "18",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "18"
+ },
+ {
+ "minAmount": "30",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "577",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "579",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -1470,175 +1267,115 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "556",
+ "weight": "2.0",
+ "id": "1139",
"maxAmount": "1"
},
{
- "minAmount": "9",
- "weight": "50.0",
- "id": "558",
- "maxAmount": "9"
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1203",
+ "maxAmount": "1"
},
{
- "minAmount": "6",
- "weight": "50.0",
- "id": "554",
- "maxAmount": "6"
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
},
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "4"
},
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "563",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1139",
- "maxAmount": "1"
- },
- {
- "minAmount": "7",
- "weight": "50.0",
- "id": "882",
- "maxAmount": "7"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1137",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "37.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
"id": "995",
"maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "436",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
@@ -1908,147 +1645,105 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "1281",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1295",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1157",
"maxAmount": "1"
},
{
"minAmount": "30",
- "weight": "50.0",
+ "weight": "13.0",
"id": "555",
"maxAmount": "30"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "565",
"maxAmount": "1"
},
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "2"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "8"
- },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "9.0",
"id": "2351",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2359",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "2353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1458",
+ "weight": "1.0",
+ "id": "2359",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "16.0",
+ "id": "995",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "8",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "15",
+ "weight": "18.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "48",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "48"
+ },
+ {
+ "minAmount": "120",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "120"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "5733",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
}
]
},
@@ -2062,58 +1757,9 @@
}
],
"charm": [],
- "ids": "21",
+ "ids": "21,1072",
"description": "",
- "main": [
- {
- "minAmount": "200",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "200"
- },
- {
- "minAmount": "300",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "300"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "444",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1993",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "569",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1601",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -2130,7 +1776,13 @@
"main": [
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "127.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
@@ -2178,25 +1830,19 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "32.0",
"id": "0",
"maxAmount": "1"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "64.0",
"id": "314",
"maxAmount": "5"
},
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "314",
- "maxAmount": "10"
- },
{
"minAmount": "15",
- "weight": "25.0",
+ "weight": "32.0",
"id": "314",
"maxAmount": "15"
}
@@ -2248,14 +1894,14 @@
"main": [
{
"minAmount": "1",
- "weight": "12.0",
- "id": "12070",
+ "weight": "126.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "88.0",
- "id": "0",
+ "weight": "2.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -2307,6 +1953,20 @@
"maxAmount": "4"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "7980",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "127.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ],
"ids": "50,2642",
"description": "",
"main": [
@@ -2444,7 +2104,7 @@
},
{
"minAmount": "1",
- "weight": "0.154",
+ "weight": "0.20404",
"id": "11286",
"maxAmount": "1"
},
@@ -2528,181 +2188,127 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1369",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1315",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1355",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1369",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1123",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "10.0",
+ "weight": "1.0",
"id": "1303",
"maxAmount": "1"
},
{
"minAmount": "20",
- "weight": "50.0",
+ "weight": "20.0",
"id": "828",
"maxAmount": "20"
},
{
"minAmount": "4",
- "weight": "25.0",
+ "weight": "8.0",
"id": "892",
"maxAmount": "4"
},
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "811",
- "maxAmount": "8"
- },
{
"minAmount": "4",
- "weight": "25.0",
+ "weight": "5.0",
"id": "563",
"maxAmount": "4"
},
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "5"
- },
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "4.0",
"id": "565",
"maxAmount": "2"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
+ "minAmount": "8",
+ "weight": "3.0",
+ "id": "811",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "5",
+ "weight": "3.0",
+ "id": "560",
+ "maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
+ "minAmount": "196",
+ "weight": "36.0",
+ "id": "995",
+ "maxAmount": "196"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
+ "minAmount": "330",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "330"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "30",
- "weight": "100.0",
+ "minAmount": "690",
+ "weight": "1.0",
"id": "995",
"maxAmount": "690"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1897",
"maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "2361",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "15.8",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "150.0",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
+ "weight": "0.25",
"id": "12477",
"maxAmount": "1"
}
@@ -2760,153 +2366,159 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1361",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1355",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1369",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1315",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "1355",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "1369",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1123",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "6.0",
+ "weight": "1.0",
"id": "1303",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "6.0",
+ "weight": "1.0",
"id": "1113",
"maxAmount": "1"
},
- {
- "minAmount": "16",
- "weight": "50.0",
- "id": "810",
- "maxAmount": "16"
- },
{
"minAmount": "30",
- "weight": "50.0",
+ "weight": "20.0",
"id": "829",
"maxAmount": "30"
},
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "868",
- "maxAmount": "2"
- },
- {
- "minAmount": "75",
- "weight": "8.0",
- "id": "556",
- "maxAmount": "75"
- },
- {
- "minAmount": "15",
- "weight": "8.0",
- "id": "565",
- "maxAmount": "15"
- },
{
"minAmount": "50",
"weight": "8.0",
"id": "554",
"maxAmount": "50"
},
+ {
+ "minAmount": "16",
+ "weight": "7.0",
+ "id": "816",
+ "maxAmount": "16"
+ },
{
"minAmount": "10",
- "weight": "4.0",
+ "weight": "5.0",
"id": "563",
"maxAmount": "10"
},
+ {
+ "minAmount": "2",
+ "weight": "3.0",
+ "id": "868",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "15",
+ "weight": "3.0",
+ "id": "565",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "75",
+ "weight": "1.0",
+ "id": "556",
+ "maxAmount": "75"
+ },
{
"minAmount": "10",
- "weight": "8.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "10"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "2361",
- "maxAmount": "2"
+ "minAmount": "196",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "196"
},
{
- "minAmount": "170",
- "weight": "50.0",
+ "minAmount": "330",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "330"
+ },
+ {
+ "minAmount": "690",
+ "weight": "1.0",
"id": "995",
"maxAmount": "690"
},
{
"minAmount": "1",
- "weight": "6.0",
+ "weight": "3.0",
+ "id": "2361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "1897",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "4.0",
- "id": "12070",
+ "weight": "3.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "4.0",
- "id": "12480",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "12.6",
+ "weight": "2.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.0562",
- "id": "11286",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "75.0",
- "id": "0",
+ "weight": "0.25",
+ "id": "12480",
"maxAmount": "1"
},
{
- "minAmount": "3",
- "weight": "4.0",
- "id": "563",
- "maxAmount": "3"
+ "minAmount": "1",
+ "weight": "0.0128",
+ "id": "11286",
+ "maxAmount": "1"
}
]
},
@@ -2962,187 +2574,151 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1069",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1243",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1355",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1197",
+ "weight": "3.0",
+ "id": "1365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1245",
+ "weight": "2.0",
+ "id": "1243",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1161",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
+ "weight": "1.0",
+ "id": "1197",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1245",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1213",
"maxAmount": "1"
},
{
"minAmount": "75",
- "weight": "50.0",
+ "weight": "8.0",
"id": "555",
"maxAmount": "75"
},
{
"minAmount": "15",
- "weight": "25.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "15"
},
- {
- "minAmount": "37",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "37"
- },
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "3.0",
"id": "563",
"maxAmount": "3"
},
+ {
+ "minAmount": "37",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "37"
+ },
{
"minAmount": "8",
- "weight": "25.0",
+ "weight": "1.0",
"id": "565",
"maxAmount": "8"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
+ "minAmount": "11",
+ "weight": "5.0",
+ "id": "995",
+ "maxAmount": "11"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
+ "minAmount": "44",
+ "weight": "26.0",
+ "id": "995",
+ "maxAmount": "44"
},
{
- "minAmount": "1",
+ "minAmount": "132",
"weight": "25.0",
- "id": "205",
- "maxAmount": "1"
+ "id": "995",
+ "maxAmount": "132"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
+ "minAmount": "200",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "200"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "100.0",
+ "minAmount": "440",
+ "weight": "1.0",
"id": "995",
"maxAmount": "440"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "449",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "12070",
+ "weight": "4.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "15.0",
+ "weight": "1.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "125.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "10.0",
+ "weight": "0.25",
"id": "12478",
"maxAmount": "1"
}
@@ -3182,126 +2758,120 @@
"maxAmount": "1"
}
],
- "ids": "59,60,4400",
+ "ids": "59,60",
"description": "",
"main": [
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "556",
- "maxAmount": "6"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "4"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "559",
- "maxAmount": "7"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1139",
- "maxAmount": "1"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "8"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "11"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "839",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
+ "id": "1139",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1189",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
+ "minAmount": "8",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "8",
+ "weight": "3.0",
+ "id": "877",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "556",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "7",
+ "weight": "2.0",
+ "id": "559",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "6",
+ "weight": "1.0",
+ "id": "558",
+ "maxAmount": "6"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "19.0",
+ "id": "995",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "12",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "20",
+ "weight": "1.0",
"id": "995",
"maxAmount": "20"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "2307",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1444",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1438",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "1955",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1009",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
"id": "229",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "3.0",
+ "id": "2307",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1009",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "30.0",
"id": "0",
"maxAmount": "1"
}
@@ -3341,7 +2911,7 @@
"maxAmount": "1"
}
],
- "ids": "61,1004,1221,1473,1474,4401,7207",
+ "ids": "61,1004,1221,1473,1474,4400,4401,7207",
"description": "",
"main": [
{
@@ -3353,123 +2923,52 @@
]
},
{
- "default": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6291",
+ "maxAmount": "1"
+ }
+ ],
"charm": [],
"ids": "62,1478,2491,2492,6376,6377",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "2.0",
+ "id": "1233",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
+ "minAmount": "17",
+ "weight": "8.0",
+ "id": "9288",
+ "maxAmount": "17"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "808",
- "maxAmount": "1"
+ "minAmount": "12",
+ "weight": "8.0",
+ "id": "814",
+ "maxAmount": "12"
},
{
"minAmount": "13",
- "weight": "25.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "13"
},
- {
- "minAmount": "20",
- "weight": "25.0",
- "id": "9141",
- "maxAmount": "20"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "11766",
+ "weight": "8.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "11767",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "11768",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "11769",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "11764",
+ "weight": "100.0",
+ "id": "0",
"maxAmount": "1"
}
]
@@ -3579,176 +3078,176 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1307",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "3190",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1279",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1309",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1375",
"maxAmount": "1"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "4.0",
+ "id": "806",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "3190",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1321",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1337",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "4.0",
"id": "807",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
+ "id": "1293",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1420",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1323",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1239",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1353",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "1207",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1155",
+ "weight": "4.0",
+ "id": "1424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1075",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
+ "id": "1155",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1075",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "1101",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1141",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
+ "minAmount": "5",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "8",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "10",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "12",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "23",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "23"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "946",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "1",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "5105",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "25.0",
+ "id": "14424",
"maxAmount": "1"
}
]
@@ -3763,277 +3262,187 @@
}
],
"charm": [],
- "ids": "73,74,75,76,419,420,421,422,423,424,1826,2714,2863,2866,2869,2878,3622,4392,4393,4394,5293,5294,5295,5296,5297,5298,5299,5300,5301,5302,5303,5304,5305,5306,5307,5308,5309,5310,5311,5312,5313,5314,5315,5316,5317,5318,5319,5320,5321,5322,5323,5324,5325,5326,5327,5328,5329,5330,5331,5375,5376,5377,5378,5379,5380,5393,5394,5395,5396,5397,5398,5399,5400,5401,5402,5403,5404,5405,5406,5407,5408,5409,5410,6099,6100,6131",
+ "ids": "73,74,75,419,420,421,422,423,424,2714,2863,2866,2869,2878,3622,4392,4393,4394,5293,5294,5295,5296,5297,5298,5299,5300,5301,5302,5303,5304,5305,5306,5307,5308,5309,5310,5311,5312,5313,5314,5315,5316,5317,5318,5319,5320,5321,5322,5323,5324,5325,5326,5327,5328,5329,5330,5331,5375,5376,5377,5378,5379,5380,5393,5394,5395,5396,5397,5398,5399,5400,5401,5402,5403,5404,5405,5406,5407,5408,5409,5410,6099,6100,6131",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1351",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1291",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1189",
+ "weight": "3.0",
+ "id": "1420",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "1291",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1189",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1349",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1420",
- "maxAmount": "1"
+ "minAmount": "5",
+ "weight": "7.0",
+ "id": "884",
+ "maxAmount": "5"
},
{
- "minAmount": "58",
- "weight": "25.0",
+ "minAmount": "8",
+ "weight": "4.0",
"id": "884",
- "maxAmount": "58"
+ "maxAmount": "8"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "2.0",
"id": "886",
- "maxAmount": "32"
+ "maxAmount": "5"
},
{
- "minAmount": "12",
- "weight": "25.0",
- "id": "888",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
+ "minAmount": "6",
"weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
+ "id": "559",
+ "maxAmount": "6"
},
{
- "minAmount": "3",
- "weight": "50.0",
- "id": "559",
- "maxAmount": "11"
+ "minAmount": "5",
+ "weight": "5.0",
+ "id": "558",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "13",
+ "weight": "4.0",
+ "id": "556",
+ "maxAmount": "13"
+ },
+ {
+ "minAmount": "7",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "6",
+ "weight": "1.0",
+ "id": "561",
+ "maxAmount": "6"
},
{
"minAmount": "4",
- "weight": "25.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "4"
},
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "556",
- "maxAmount": "3"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "84"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "7"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "5"
- },
{
"minAmount": "2",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
+ "weight": "1.0",
"id": "564",
"maxAmount": "2"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "6476",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "7863",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "4",
+ "weight": "4.0",
"id": "995",
- "maxAmount": "82"
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "10",
+ "weight": "11.0",
+ "id": "995",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "18",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "18"
+ },
+ {
+ "minAmount": "26",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "26"
+ },
+ {
+ "minAmount": "35",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "35"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "25.0",
"id": "313",
- "maxAmount": "7"
+ "maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "590",
+ "weight": "4.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "966",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1917",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "436",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "438",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "592",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "221",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1594",
+ "weight": "1.0",
+ "id": "590",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "2331",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "4.0",
+ "id": "1351",
"maxAmount": "1"
}
]
@@ -4095,20 +3504,7 @@
],
"ids": "78,1005,2482,3711",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7829",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -4220,170 +3616,116 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1325",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1157",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1313",
+ "weight": "3.0",
+ "id": "1325",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1109",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1147",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "1195",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
+ "minAmount": "60",
+ "weight": "8.0",
"id": "554",
- "maxAmount": "120"
+ "maxAmount": "60"
},
{
- "minAmount": "6",
- "weight": "25.0",
+ "minAmount": "12",
+ "weight": "5.0",
"id": "562",
- "maxAmount": "24"
+ "maxAmount": "12"
},
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "3.0",
"id": "560",
- "maxAmount": "6"
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "30",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "30"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
+ "weight": "1.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "7.0",
"id": "995",
- "maxAmount": "630"
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "40",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "40"
+ },
+ {
+ "minAmount": "120",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "120"
+ },
+ {
+ "minAmount": "200",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "200"
+ },
+ {
+ "minAmount": "450",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "450"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "445",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1993",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "12070",
+ "weight": "2.0",
+ "id": "444",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "93.9387",
- "id": "0",
+ "weight": "4.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -4434,110 +3776,128 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1311",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1353",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "1365",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1313",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1073",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1317",
+ "weight": "1.0",
+ "id": "1163",
"maxAmount": "1"
},
- {
- "minAmount": "10",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "630"
- },
{
"minAmount": "75",
- "weight": "50.0",
+ "weight": "8.0",
"id": "554",
"maxAmount": "75"
},
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "3.0",
"id": "562",
"maxAmount": "15"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "3.0",
"id": "560",
"maxAmount": "5"
},
{
- "minAmount": "10",
- "weight": "25.0",
- "id": "1734",
- "maxAmount": "10"
+ "minAmount": "37",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "37"
+ },
+ {
+ "minAmount": "11",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "11"
+ },
+ {
+ "minAmount": "44",
+ "weight": "28.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "132",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "220",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "460",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "460"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "361",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "2357",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "1",
- "maxAmount": "1"
+ "minAmount": "10",
+ "weight": "1.0",
+ "id": "1734",
+ "maxAmount": "10"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -4588,200 +3948,146 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1361",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1283",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1313",
+ "weight": "3.0",
+ "id": "1365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
+ "id": "1361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1165",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1147",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1113",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1185",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
{
"minAmount": "50",
- "weight": "50.0",
+ "weight": "8.0",
"id": "556",
- "maxAmount": "75"
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "10",
+ "weight": "7.0",
+ "id": "562",
+ "maxAmount": "10"
},
{
"minAmount": "7",
- "weight": "25.0",
+ "weight": "4.0",
"id": "565",
"maxAmount": "7"
},
{
"minAmount": "37",
- "weight": "50.0",
+ "weight": "1.0",
"id": "554",
- "maxAmount": "40"
- },
- {
- "minAmount": "10",
- "weight": "50.0",
- "id": "562",
- "maxAmount": "10"
+ "maxAmount": "37"
},
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "1.0",
"id": "563",
- "maxAmount": "5"
+ "maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "2361",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "20",
- "weight": "5.0",
- "id": "454",
- "maxAmount": "20"
+ "minAmount": "30",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "44",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "44"
},
{
"minAmount": "132",
- "weight": "50.0",
+ "weight": "38.0",
"id": "995",
- "maxAmount": "1100"
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "220",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "460",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "460"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "379",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "2361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "133",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -4845,14 +4151,7 @@
"charm": [],
"ids": "89,987",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7821",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -4900,296 +4199,158 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "6.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "6.0",
"id": "1137",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "882",
- "maxAmount": "11"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1420",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1349",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "884",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "25.0",
- "id": "884",
- "maxAmount": "15"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1279",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
+ "id": "1349",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1323",
"maxAmount": "1"
},
+ {
+ "minAmount": "5",
+ "weight": "4.0",
+ "id": "882",
+ "maxAmount": "5"
+ },
{
"minAmount": "1",
- "weight": "5.0",
- "id": "886",
+ "weight": "4.0",
+ "id": "884",
"maxAmount": "1"
},
{
- "minAmount": "12",
- "weight": "50.0",
+ "minAmount": "15",
+ "weight": "2.0",
"id": "556",
"maxAmount": "15"
},
{
- "minAmount": "2",
- "weight": "50.0",
- "id": "555",
- "maxAmount": "9"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "3",
+ "weight": "2.0",
"id": "557",
"maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "2"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "558",
- "maxAmount": "25"
+ "minAmount": "3",
+ "weight": "2.0",
+ "id": "562",
+ "maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "561",
"maxAmount": "3"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "564",
- "maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "2"
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "886",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "560",
- "maxAmount": "50"
+ "weight": "20.0",
+ "id": "14424",
+ "maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "2",
+ "weight": "18.0",
"id": "995",
- "maxAmount": "65"
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "4",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "12",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "16",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "16"
+ },
+ {
+ "minAmount": "25",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "33",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "33"
+ },
+ {
+ "minAmount": "48",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "48"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1925",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "2",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1947",
+ "weight": "18.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "438",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2349",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "1442",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1623",
+ "weight": "1.0",
+ "id": "440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "4440",
+ "weight": "1.0",
+ "id": "1947",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "121",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "3036",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "175",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "155",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "90.3666",
- "id": "0",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -5213,12 +4374,6 @@
"ids": "94,3844,3850,3851",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1391",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "50.0",
@@ -5523,338 +4678,224 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "16",
- "weight": "50.0",
- "id": "882",
- "maxAmount": "16"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1139",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1237",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1173",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1103",
+ "weight": "3.0",
+ "id": "1351",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1155",
+ "weight": "3.0",
+ "id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "1203",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1139",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1189",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1277",
+ "weight": "1.0",
+ "id": "1155",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1291",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1009",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "884",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1351",
- "maxAmount": "1"
- },
- {
- "minAmount": "5",
- "weight": "5.0",
- "id": "825",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1153",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1141",
+ "weight": "1.0",
+ "id": "1239",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1129",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1917",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "2307",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2138",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "556",
- "maxAmount": "10"
- },
- {
- "minAmount": "27",
- "weight": "50.0",
- "id": "559",
- "maxAmount": "27"
- },
- {
- "minAmount": "4",
- "weight": "5.0",
- "id": "557",
- "maxAmount": "4"
- },
{
"minAmount": "6",
- "weight": "50.0",
+ "weight": "5.0",
"id": "555",
"maxAmount": "6"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "19"
+ "minAmount": "7",
+ "weight": "5.0",
+ "id": "559",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "3.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "8",
+ "weight": "3.0",
+ "id": "877",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "5",
+ "weight": "2.0",
+ "id": "825",
+ "maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "565",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "561",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "199",
+ "weight": "2.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1438",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1949",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "995",
- "maxAmount": "24"
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "35.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "9",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "15",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "20",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "20"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "15.0",
+ "id": "2347",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
"id": "288",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1440",
+ "weight": "3.0",
+ "id": "1949",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1987",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1442",
+ "weight": "2.0",
+ "id": "1965",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "1917",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "10999",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "7812",
+ "weight": "1.0",
+ "id": "1009",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "1987",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "438",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1438",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "946",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "1448",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "438",
+ "id": "0",
"maxAmount": "1"
}
]
@@ -5914,20 +4955,7 @@
],
"ids": "105,1195",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7815",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -5984,20 +5012,7 @@
],
"ids": "106",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7815",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -6040,212 +5055,154 @@
"maxAmount": "1"
}
],
- "ids": "110,1582,1583,1584,1585,1586,7003,7004",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1181",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1393",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "25.0",
- "id": "892",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "1333",
- "maxAmount": "1"
- },
- {
- "minAmount": "37",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "37"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "5"
- },
- {
- "minAmount": "5",
- "weight": "8.0",
- "id": "565",
- "maxAmount": "5"
- },
- {
- "minAmount": "2",
- "weight": "8.0",
- "id": "563",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "25",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "25"
- },
- {
- "minAmount": "60",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "60"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7872",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "379",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "117",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "10976",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "10977",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
+ "weight": "9973.0",
"id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1145",
+ "id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "2.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "110,1582,1583,1584,1585,1586,7003,7004",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "1353",
"maxAmount": "1"
},
{
- "minAmount": "100",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "100"
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1181",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1393",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1333",
+ "maxAmount": "1"
},
{
"minAmount": "150",
- "weight": "25.0",
+ "weight": "10.0",
"id": "554",
"maxAmount": "150"
+ },
+ {
+ "minAmount": "5",
+ "weight": "7.0",
+ "id": "562",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "12",
+ "weight": "5.0",
+ "id": "892",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "5",
+ "weight": "4.0",
+ "id": "565",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "37",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "37"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "19.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "60",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "60"
+ },
+ {
+ "minAmount": "15",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "300",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "300"
+ },
+ {
+ "minAmount": "50",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "379",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2353",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "117",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "11.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "31",
+ "maxAmount": "1"
}
]
},
@@ -6290,302 +5247,196 @@
"maxAmount": "1"
}
],
- "ids": "111,3072,4685,4686,4687",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1363",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1067",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1309",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1195",
- "maxAmount": "1"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "890",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1181",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1428",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "50.0",
- "id": "555",
- "maxAmount": "12"
- },
- {
- "minAmount": "24",
- "weight": "50.0",
- "id": "558",
- "maxAmount": "24"
- },
- {
- "minAmount": "37",
- "weight": "50.0",
- "id": "559",
- "maxAmount": "37"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "564",
- "maxAmount": "4"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "3"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "6"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "560",
- "maxAmount": "4"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "565",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5293",
+ "weight": "9973.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "450"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7875",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1963",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1993",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "447",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1454",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "10977",
"maxAmount": "1"
- },
+ }
+ ],
+ "ids": "111,3072,4685,4686,4687",
+ "description": "",
+ "main": [
{
"minAmount": "1",
"weight": "5.0",
+ "id": "1309",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1195",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1353",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1281",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1067",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1181",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "6.0",
+ "id": "890",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "6",
+ "weight": "4.0",
+ "id": "561",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "24",
+ "weight": "3.0",
+ "id": "558",
+ "maxAmount": "24"
+ },
+ {
+ "minAmount": "37",
+ "weight": "3.0",
+ "id": "559",
+ "maxAmount": "37"
+ },
+ {
+ "minAmount": "3",
+ "weight": "2.0",
+ "id": "563",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "12",
+ "weight": "1.0",
+ "id": "555",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "4",
+ "weight": "1.0",
+ "id": "564",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "3",
+ "weight": "1.0",
+ "id": "560",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "565",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "117",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "117"
+ },
+ {
+ "minAmount": "53",
+ "weight": "12.0",
+ "id": "995",
+ "maxAmount": "53"
+ },
+ {
+ "minAmount": "196",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "196"
+ },
+ {
+ "minAmount": "8",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "22",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "22"
+ },
+ {
+ "minAmount": "400",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "400"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "1993",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "447",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1963",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "5733",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "45.9587",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -6630,373 +5481,183 @@
"maxAmount": "1"
}
],
- "ids": "112,1587,1588,1681,4534,4688,4706",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1389",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1243",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1285",
- "maxAmount": "1"
- },
- {
- "minAmount": "30",
- "weight": "50.0",
- "id": "886",
- "maxAmount": "30"
- },
- {
- "minAmount": "15",
- "weight": "50.0",
- "id": "884",
- "maxAmount": "15"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1287",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1165",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1179",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1141",
+ "weight": "9973.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1193",
- "maxAmount": "1"
- },
- {
- "minAmount": "18",
- "weight": "50.0",
- "id": "556",
- "maxAmount": "18"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "564",
- "maxAmount": "3"
- },
- {
- "minAmount": "27",
- "weight": "50.0",
- "id": "557",
- "maxAmount": "27"
- },
- {
- "minAmount": "6",
- "weight": "50.0",
- "id": "561",
- "maxAmount": "6"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "1"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "7"
- },
- {
- "minAmount": "13",
- "weight": "5.0",
- "id": "560",
- "maxAmount": "13"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "4206",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "500"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "2353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7871",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "453",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1969",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1442",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "10977",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
"id": "10976",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "112,1587,1588,1681,4534,4688,4706",
+ "description": "",
+ "main": [
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "1179",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "61.6452",
- "id": "0",
+ "weight": "2.0",
+ "id": "1389",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1141",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1285",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1243",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1193",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "4.0",
+ "id": "563",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "18",
+ "weight": "3.0",
+ "id": "556",
+ "maxAmount": "18"
+ },
+ {
+ "minAmount": "27",
+ "weight": "3.0",
+ "id": "557",
+ "maxAmount": "27"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "562",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "6",
+ "weight": "3.0",
+ "id": "561",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "3",
+ "weight": "2.0",
+ "id": "564",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "15",
+ "weight": "2.0",
+ "id": "884",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "30",
+ "weight": "1.0",
+ "id": "886",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "3",
+ "weight": "1.0",
+ "id": "560",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "565",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "35.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "37",
+ "weight": "19.0",
+ "id": "995",
+ "maxAmount": "37"
+ },
+ {
+ "minAmount": "2",
+ "weight": "8.0",
+ "id": "995",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "119",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "119"
+ },
+ {
+ "minAmount": "300",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "300"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "2353",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "453",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1969",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -7047,291 +5708,141 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "30.0",
"id": "1237",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1239",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "2.0",
"id": "827",
"maxAmount": "5"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "10.0",
"id": "561",
"maxAmount": "2"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "2.0",
"id": "561",
"maxAmount": "5"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
+ "minAmount": "10",
+ "weight": "2.0",
+ "id": "561",
+ "maxAmount": "10"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
"id": "1533",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "1525",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "203",
+ "weight": "8.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "15.0",
+ "id": "14422",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "946",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "2114",
- "maxAmount": "2"
- },
{
"minAmount": "22",
- "weight": "50.0",
+ "weight": "20.0",
"id": "6306",
"maxAmount": "22"
},
- {
- "minAmount": "22",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "22"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7847",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "532",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "526",
- "maxAmount": "1"
- },
{
"minAmount": "2",
- "weight": "50.0",
- "id": "526",
+ "weight": "4.0",
+ "id": "2114",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1963",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "12070",
+ "weight": "1.0",
+ "id": "946",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "3.0",
+ "id": "526",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "2.0",
+ "id": "526",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "532",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "2.0",
+ "id": "532",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "6",
+ "weight": "1.0",
+ "id": "532",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "536",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "2.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "5733",
+ "maxAmount": "1"
}
]
},
@@ -7347,205 +5858,165 @@
"charm": [
{
"minAmount": "1",
- "weight": "100.0",
- "id": "12158",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12159",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12160",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
+ "weight": "1000.0",
"id": "0",
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "4986.5",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "12.5",
+ "id": "10976",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
"ids": "114",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "7844",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "10977",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "10976",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "3.0",
+ "weight": "39.0625",
"id": "6666",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
+ "weight": "78.125",
"id": "6665",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "13.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "13.0",
+ "id": "14430",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "156.25",
+ "id": "345",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "156.25",
+ "id": "327",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "156.25",
+ "id": "371",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "156.25",
+ "id": "372",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "1",
+ "weight": "156.25",
+ "id": "359",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "156.25",
+ "id": "360",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "1",
+ "weight": "39.0625",
+ "id": "383",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "39.0625",
+ "id": "349",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "39.0625",
+ "id": "331",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "156.25",
+ "id": "313",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "1",
+ "weight": "156.25",
+ "id": "1511",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "39.0625",
+ "id": "1383",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "78.125",
+ "id": "407",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "4",
+ "weight": "78.125",
+ "id": "402",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "5",
+ "weight": "4.0",
+ "id": "555",
+ "maxAmount": "18"
+ },
+ {
+ "minAmount": "3",
+ "weight": "78.125",
+ "id": "6664",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "1",
+ "weight": "39.0625",
+ "id": "401",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "39.0625",
+ "id": "6667",
+ "maxAmount": "1"
}
]
},
@@ -7590,162 +6061,38 @@
"maxAmount": "1"
}
],
- "ids": "115,374,2801,3419",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "7844",
+ "weight": "9973.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "10977",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "5323",
+ "weight": "2.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "115,374,852,2801,3419,5174",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "19.0",
+ "id": "14422",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
+ "weight": "109.0",
"id": "0",
"maxAmount": "1"
}
@@ -8279,298 +6626,184 @@
"weight": "1.0",
"id": "12163",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "489.0",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "117,4689,4690,4691,4692,4693",
"description": "",
"main": [
{
- "minAmount": "3",
- "weight": "50.0",
- "id": "884",
- "maxAmount": "3"
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "1153",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1153",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "12.5",
- "id": "886",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1191",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1295",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "1309",
- "maxAmount": "1"
- },
{
"minAmount": "3",
- "weight": "8.0",
- "id": "888",
+ "weight": "6.0",
+ "id": "884",
"maxAmount": "3"
},
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "1207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "1119",
- "maxAmount": "1"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "555",
- "maxAmount": "7"
- },
{
"minAmount": "15",
- "weight": "8.0",
+ "weight": "3.0",
"id": "554",
"maxAmount": "15"
},
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "555",
+ "maxAmount": "7"
+ },
{
"minAmount": "2",
- "weight": "8.0",
- "id": "564",
+ "weight": "3.0",
+ "id": "563",
"maxAmount": "2"
},
{
- "minAmount": "2",
- "weight": "8.0",
- "id": "563",
- "maxAmount": "3"
- },
- {
- "minAmount": "6",
- "weight": "8.0",
- "id": "561",
- "maxAmount": "6"
+ "minAmount": "10",
+ "weight": "2.0",
+ "id": "886",
+ "maxAmount": "10"
},
{
"minAmount": "3",
- "weight": "8.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "8.0",
- "id": "560",
+ "weight": "2.0",
+ "id": "564",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "8.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "2"
},
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5322",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5318",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5319",
- "maxAmount": "4"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "5319",
- "maxAmount": "8"
- },
{
"minAmount": "2",
- "weight": "25.0",
- "id": "5323",
+ "weight": "1.0",
+ "id": "560",
"maxAmount": "2"
},
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5324",
- "maxAmount": "4"
- },
{
"minAmount": "1",
- "weight": "8.0",
- "id": "5100",
+ "weight": "7.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "3",
- "weight": "8.0",
- "id": "5320",
- "maxAmount": "3"
+ "minAmount": "1",
+ "weight": "18.0",
+ "id": "14430",
+ "maxAmount": "1"
},
{
- "minAmount": "1",
+ "minAmount": "38",
+ "weight": "14.0",
+ "id": "995",
+ "maxAmount": "38"
+ },
+ {
+ "minAmount": "52",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "52"
+ },
+ {
+ "minAmount": "15",
"weight": "8.0",
- "id": "5321",
- "maxAmount": "4"
+ "id": "995",
+ "maxAmount": "15"
},
{
"minAmount": "8",
- "weight": "50.0",
+ "weight": "6.0",
"id": "995",
- "maxAmount": "80"
+ "maxAmount": "8"
},
{
- "minAmount": "80",
- "weight": "8.0",
+ "minAmount": "88",
+ "weight": "2.0",
"id": "995",
- "maxAmount": "300"
+ "maxAmount": "88"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "11.0",
"id": "225",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "6.0",
"id": "1917",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
+ "weight": "2.0",
"id": "1446",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.6544",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.32",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "0.0256",
"id": "10977",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "15",
- "weight": "12.5",
- "id": "886",
- "maxAmount": "15"
- },
- {
- "minAmount": "1",
- "weight": "1400.0",
- "id": "0",
- "maxAmount": "1"
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "561",
+ "maxAmount": "6"
}
]
},
@@ -8620,129 +6853,129 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "10.0",
"id": "1265",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "438",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "2349",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1267",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "453",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2351",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "561",
- "maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "562",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1375",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "1267",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1363",
"maxAmount": "1"
},
{
- "minAmount": "2",
- "weight": "25.0",
+ "minAmount": "1",
+ "weight": "7.0",
"id": "877",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "4.0",
+ "id": "562",
"maxAmount": "2"
},
{
- "minAmount": "11",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "11"
+ "minAmount": "2",
+ "weight": "4.0",
+ "id": "561",
+ "maxAmount": "2"
},
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "20.0",
"id": "995",
"maxAmount": "4"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "15.0",
"id": "995",
"maxAmount": "10"
},
+ {
+ "minAmount": "30",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "30"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "20.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
"id": "2347",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "7.0",
+ "id": "2349",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "438",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "2351",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "453",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "1913",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -8792,171 +7025,147 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "1157",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "1299",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1165",
- "maxAmount": "1"
- },
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "1.0",
"id": "555",
"maxAmount": "10"
},
- {
- "minAmount": "12",
- "weight": "50.0",
- "id": "556",
- "maxAmount": "12"
- },
{
"minAmount": "24",
- "weight": "50.0",
+ "weight": "3.0",
"id": "556",
"maxAmount": "24"
},
{
"minAmount": "37",
- "weight": "50.0",
+ "weight": "3.0",
"id": "558",
"maxAmount": "37"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "2.0",
"id": "564",
"maxAmount": "3"
},
- {
- "minAmount": "6",
- "weight": "50.0",
- "id": "564",
- "maxAmount": "6"
- },
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "3.0",
"id": "562",
"maxAmount": "10"
},
- {
- "minAmount": "37",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "37"
- },
{
"minAmount": "9",
- "weight": "25.0",
+ "weight": "3.0",
"id": "561",
"maxAmount": "9"
},
- {
- "minAmount": "18",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "18"
- },
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "4.0",
"id": "563",
"maxAmount": "3"
},
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "6"
- },
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "1.0",
"id": "560",
"maxAmount": "3"
},
- {
- "minAmount": "6",
- "weight": "5.0",
- "id": "560",
- "maxAmount": "6"
- },
- {
- "minAmount": "25",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "25"
- },
- {
- "minAmount": "47",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "47"
- },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "453",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "7.0",
"id": "991",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1985",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "6.0",
"id": "2359",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1982",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "207",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "0",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
+ "minAmount": "15",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "11.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "47",
+ "weight": "13.0",
+ "id": "995",
+ "maxAmount": "47"
+ },
+ {
+ "minAmount": "92",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "92"
+ },
+ {
+ "minAmount": "150",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "150"
+ },
+ {
+ "minAmount": "350",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "350"
}
]
},
@@ -9417,303 +7626,87 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "50.0",
- "id": "557",
- "maxAmount": "12"
- },
- {
- "minAmount": "60",
- "weight": "50.0",
- "id": "557",
- "maxAmount": "60"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "563",
- "maxAmount": "2"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "561",
- "maxAmount": "3"
- },
- {
- "minAmount": "6",
- "weight": "50.0",
- "id": "561",
- "maxAmount": "6"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "3"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "565",
- "maxAmount": "2"
- },
- {
- "minAmount": "45",
- "weight": "5.0",
- "id": "556",
- "maxAmount": "45"
- },
- {
- "minAmount": "6",
- "weight": "5.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5300",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "12"
- },
- {
- "minAmount": "24",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "24"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1385",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1241",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "6808",
+ "weight": "2.0",
+ "id": "1385",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "12",
+ "weight": "13.0",
+ "id": "557",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "3",
+ "weight": "9.0",
+ "id": "561",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "3",
+ "weight": "7.0",
+ "id": "562",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "2",
+ "weight": "6.0",
+ "id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "2",
+ "weight": "4.0",
+ "id": "560",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "60",
+ "weight": "3.0",
+ "id": "557",
+ "maxAmount": "60"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "565",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "14.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "18.0",
+ "id": "14422",
"maxAmount": "1"
},
+ {
+ "minAmount": "12",
+ "weight": "18.0",
+ "id": "995",
+ "maxAmount": "12"
+ },
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "28.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "14426",
+ "maxAmount": "1"
}
]
},
@@ -9756,344 +7749,146 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1363",
"maxAmount": "1"
},
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "888",
- "maxAmount": "3"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1428",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "890",
- "maxAmount": "2"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "890",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1309",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1281",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1195",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "1428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "564",
- "maxAmount": "4"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "562",
- "maxAmount": "3"
- },
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "10.0",
"id": "561",
"maxAmount": "4"
},
{
- "minAmount": "2",
- "weight": "50.0",
- "id": "563",
- "maxAmount": "4"
+ "minAmount": "3",
+ "weight": "8.0",
+ "id": "562",
+ "maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "7.0",
+ "id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "2",
+ "weight": "5.0",
+ "id": "564",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "3",
+ "weight": "5.0",
+ "id": "888",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "2",
+ "weight": "3.0",
"id": "560",
"maxAmount": "2"
},
+ {
+ "minAmount": "2",
+ "weight": "2.0",
+ "id": "890",
+ "maxAmount": "2"
+ },
{
"minAmount": "5",
- "weight": "25.0",
- "id": "560",
+ "weight": "1.0",
+ "id": "890",
"maxAmount": "5"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "1.0",
"id": "565",
- "maxAmount": "50"
- },
- {
- "minAmount": "24",
- "weight": "5.0",
- "id": "558",
- "maxAmount": "24"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "4694",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5291",
+ "weight": "10.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5293",
+ "weight": "18.0",
+ "id": "14422",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
+ "minAmount": "4",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "4"
},
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "18.0",
"id": "995",
"maxAmount": "15"
},
{
- "minAmount": "465",
- "weight": "50.0",
+ "minAmount": "125",
+ "weight": "2.0",
"id": "995",
- "maxAmount": "465"
+ "maxAmount": "125"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "447",
+ "weight": "13.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "5733",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "53.6086",
- "id": "0",
+ "weight": "2.0",
+ "id": "447",
"maxAmount": "1"
}
]
@@ -10106,176 +7901,98 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "1391",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1428",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1391",
- "maxAmount": "1"
- },
- {
- "minAmount": "15",
- "weight": "5.0",
- "id": "888",
- "maxAmount": "15"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1357",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "1432",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "561",
+ "maxAmount": "5"
},
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "8.0",
"id": "562",
"maxAmount": "4"
},
{
- "minAmount": "2",
- "weight": "50.0",
- "id": "564",
- "maxAmount": "2"
+ "minAmount": "15",
+ "weight": "8.0",
+ "id": "888",
+ "maxAmount": "15"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "7.0",
"id": "563",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "5.0",
+ "id": "564",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "2",
+ "weight": "4.0",
"id": "560",
"maxAmount": "2"
},
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "10"
- },
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "1.0",
"id": "565",
"maxAmount": "2"
},
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
{
"minAmount": "15",
"weight": "50.0",
"id": "995",
- "maxAmount": "40"
+ "maxAmount": "15"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "995",
+ "weight": "18.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1454",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "355",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "1641",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "355",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -10546,7 +8263,7 @@
{
"minAmount": "1",
"weight": "100.0",
- "id": "3186",
+ "id": "526",
"maxAmount": "1"
},
{
@@ -10590,20 +8307,7 @@
],
"ids": "132,1463,1464,1487,2301,4344,4363,5852,6943,7211,7213,7215,7217,7219,7221,7223,7225,7227",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7856",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -10654,20 +8358,7 @@
],
"ids": "133",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7821",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -10729,333 +8420,165 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "96.0",
"id": "1371",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "24.0",
"id": "1289",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "1303",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "24.0",
"id": "1432",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "1113",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "1147",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "1185",
"maxAmount": "1"
},
{
"minAmount": "20",
- "weight": "50.0",
+ "weight": "48.0",
"id": "4699",
"maxAmount": "40"
},
{
"minAmount": "20",
- "weight": "50.0",
+ "weight": "24.0",
"id": "560",
"maxAmount": "40"
},
- {
- "minAmount": "10",
- "weight": "50.0",
- "id": "565",
- "maxAmount": "20"
- },
{
"minAmount": "20",
- "weight": "25.0",
+ "weight": "16.0",
"id": "563",
"maxAmount": "40"
},
{
- "minAmount": "8",
- "weight": "25.0",
- "id": "200",
- "maxAmount": "10"
+ "minAmount": "10",
+ "weight": "48.0",
+ "id": "565",
+ "maxAmount": "20"
},
{
"minAmount": "8",
- "weight": "25.0",
- "id": "202",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "204",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "206",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "208",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "210",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "212",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "214",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "216",
- "maxAmount": "10"
- },
- {
- "minAmount": "8",
- "weight": "25.0",
- "id": "2486",
+ "weight": "144.0",
+ "id": "14424",
"maxAmount": "10"
},
{
"minAmount": "4",
- "weight": "25.0",
- "id": "5323",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5292",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5295",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5300",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5302",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5304",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5311",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "10"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "5282",
+ "weight": "144.0",
+ "id": "14422",
"maxAmount": "10"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "16.0",
"id": "385",
"maxAmount": "15"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "16.0",
"id": "163",
"maxAmount": "6"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "139",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "50.0",
- "id": "2362",
+ "weight": "24.0",
+ "id": "2361",
"maxAmount": "5"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "16.0",
"id": "1602",
"maxAmount": "5"
},
{
"minAmount": "2",
- "weight": "25.0",
- "id": "1443",
+ "weight": "24.0",
+ "id": "1442",
"maxAmount": "5"
},
{
- "minAmount": "3000",
- "weight": "100.0",
+ "minAmount": "11000",
+ "weight": "216.0",
"id": "995",
"maxAmount": "13000"
},
{
"minAmount": "1",
- "weight": "6.75",
+ "weight": "4.0",
"id": "14484",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.6825",
+ "weight": "1.0",
"id": "14472",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.6825",
+ "weight": "1.0",
"id": "14474",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.6825",
+ "weight": "1.0",
"id": "14476",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5733",
+ "weight": "64.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "32.0",
"id": "31",
"maxAmount": "1"
},
{
- "minAmount": "3",
- "weight": "11.0653",
+ "minAmount": "1",
+ "weight": "1.0",
"id": "0",
- "maxAmount": "3"
+ "maxAmount": "1"
}
]
},
@@ -11098,147 +8621,99 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1217",
+ "weight": "1.0",
+ "id": "1233",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "869",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1165",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1297",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "1.0",
+ "id": "1428",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "1.0",
+ "id": "1245",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "203",
+ "weight": "1.0",
+ "id": "581",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
+ "weight": "18.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "9.0",
"id": "564",
"maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "4.0",
"id": "560",
"maxAmount": "2"
},
{
"minAmount": "45",
- "weight": "25.0",
+ "weight": "4.0",
"id": "556",
"maxAmount": "45"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "6.0",
"id": "565",
"maxAmount": "2"
},
{
"minAmount": "8",
- "weight": "50.0",
+ "weight": "46.0",
"id": "995",
"maxAmount": "8"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "2359",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "187",
+ "weight": "8.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
+ "weight": "22.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "187",
+ "maxAmount": "1"
}
]
},
@@ -11257,87 +8732,99 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "2169",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "2102",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "2128",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "2120",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2164",
+ "weight": "2.0",
+ "id": "2128",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2026",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2165",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2167",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2025",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2166",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "2171",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "2167",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2164",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2165",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2166",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2026",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2025",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "2023",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "5733",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "50.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "10",
+ "weight": "49.0",
+ "id": "995",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "125",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "125"
}
]
},
@@ -11356,188 +8843,182 @@
"main": [
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "3.0",
"id": "557",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "18"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "3.0",
"id": "556",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "2.0",
"id": "556",
"maxAmount": "18"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "3.0",
"id": "555",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "2.0",
"id": "555",
"maxAmount": "18"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "3.0",
"id": "554",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "18"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "3.0",
"id": "558",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "18"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "3.0",
"id": "559",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "2.0",
"id": "559",
"maxAmount": "18"
},
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "6.0",
"id": "562",
"maxAmount": "4"
},
{
- "minAmount": "5",
- "weight": "50.0",
- "id": "562",
- "maxAmount": "5"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
+ "minAmount": "4",
+ "weight": "7.0",
"id": "561",
- "maxAmount": "5"
+ "maxAmount": "4"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "1.0",
"id": "563",
"maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "1.0",
"id": "564",
"maxAmount": "2"
},
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "564",
- "maxAmount": "4"
- },
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "2.0",
"id": "565",
"maxAmount": "2"
},
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "565",
- "maxAmount": "4"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "30"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "1379",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1444",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "1442",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1448",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1383",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
+ "weight": "3.0",
"id": "581",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "10.0",
+ "weight": "4.0",
"id": "1017",
"maxAmount": "1"
},
+ {
+ "minAmount": "36",
+ "weight": "4.0",
+ "id": "557",
+ "maxAmount": "36"
+ },
{
"minAmount": "1",
+ "weight": "17.0",
+ "id": "995",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "16.0",
+ "id": "995",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "4",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "29",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "29"
+ },
+ {
+ "minAmount": "30",
"weight": "1.0",
- "id": "987",
+ "id": "995",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "1",
+ "weight": "15.0",
+ "id": "0",
"maxAmount": "1"
}
]
@@ -11570,153 +9051,99 @@
"description": "",
"main": [
{
- "minAmount": "4",
- "weight": "25.0",
+ "minAmount": "2",
+ "weight": "27.0",
"id": "877",
- "maxAmount": "11"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1139",
- "maxAmount": "1"
+ "maxAmount": "12"
},
{
"minAmount": "6",
- "weight": "25.0",
+ "weight": "2.0",
"id": "555",
"maxAmount": "6"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "5"
},
{
"minAmount": "9",
- "weight": "5.0",
+ "weight": "3.0",
"id": "558",
"maxAmount": "9"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "13.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "5"
- },
- {
- "minAmount": "10",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "39.0",
"id": "954",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "436",
+ "weight": "13.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "6.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1965",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "946",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "2.0",
+ "id": "1139",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "12.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
}
]
@@ -12026,238 +9453,136 @@
"ids": "181,2547,7105",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "222",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "238",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "226",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "1939",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "224",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "1581",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "1976",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
- "id": "240",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "2152",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "9737",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "219",
- "maxAmount": "2"
- },
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "7.0",
"id": "563",
"maxAmount": "2"
},
{
- "minAmount": "9",
- "weight": "50.0",
- "id": "559",
- "maxAmount": "9"
+ "minAmount": "2",
+ "weight": "4.0",
+ "id": "9142",
+ "maxAmount": "12"
},
{
- "minAmount": "9",
- "weight": "50.0",
+ "minAmount": "36",
+ "weight": "3.0",
"id": "556",
"maxAmount": "36"
},
{
"minAmount": "9",
- "weight": "50.0",
+ "weight": "2.0",
+ "id": "559",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
"id": "557",
"maxAmount": "9"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "12"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "1.0",
"id": "561",
"maxAmount": "3"
},
+ {
+ "minAmount": "1",
+ "weight": "35.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
{
"minAmount": "2",
- "weight": "50.0",
- "id": "995",
+ "weight": "11.0",
+ "id": "14424",
"maxAmount": "2"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "5.0",
"id": "995",
"maxAmount": "3"
},
{
- "minAmount": "2",
- "weight": "50.0",
- "id": "9142",
- "maxAmount": "12"
+ "minAmount": "8",
+ "weight": "5.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "29",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "29"
+ },
+ {
+ "minAmount": "35",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "35"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "30.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
"id": "227",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1291",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "231",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1594",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1454",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1137",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1627",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "1137",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1454",
"maxAmount": "1"
}
]
@@ -12277,135 +9602,141 @@
"main": [
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "2.0",
"id": "556",
"maxAmount": "10"
},
{
"minAmount": "9",
- "weight": "50.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "9"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "5"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "6.0",
"id": "562",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "1.0",
"id": "563",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "565",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1321",
"maxAmount": "1"
},
- {
- "minAmount": "9",
- "weight": "50.0",
- "id": "882",
- "maxAmount": "12"
- },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "6.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "10.0",
"id": "9140",
- "maxAmount": "10"
+ "maxAmount": "12"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1115",
"maxAmount": "1"
},
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "55"
- },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "12.0",
"id": "1025",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "2351",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1949",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "225",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "590",
- "maxAmount": "1"
+ "minAmount": "9",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "12",
+ "weight": "2.0",
+ "id": "882",
+ "maxAmount": "12"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "946",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
+ "minAmount": "4",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "7",
+ "weight": "8.0",
+ "id": "995",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "12",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "25",
+ "weight": "13.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "35",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "35"
+ },
+ {
+ "minAmount": "55",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "55"
}
]
},
@@ -12455,189 +9786,141 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1137",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1363",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1139",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1309",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "13.0",
"id": "561",
- "maxAmount": "4"
+ "maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "4.0",
"id": "562",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "1.0",
"id": "564",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "1.0",
"id": "560",
"maxAmount": "2"
},
{
- "minAmount": "1",
- "weight": "25.0",
+ "minAmount": "2",
+ "weight": "1.0",
"id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "24.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "2351",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "453",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "167",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "161",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "25.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "8",
+ "weight": "23.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "15",
+ "weight": "11.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "20",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "30",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "30"
}
]
},
@@ -12680,152 +9963,122 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1115",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1381",
- "maxAmount": "1"
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
+ "minAmount": "3",
+ "weight": "36.0",
+ "id": "995",
+ "maxAmount": "3"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "5",
+ "weight": "9.0",
"id": "995",
"maxAmount": "5"
},
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
{
"minAmount": "25",
- "weight": "50.0",
+ "weight": "1.0",
"id": "995",
"maxAmount": "25"
},
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
{
"minAmount": "1",
"weight": "5.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1965",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1993",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1523",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
}
]
@@ -13058,153 +10311,123 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1151",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "1420",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1426",
"maxAmount": "1"
},
{
"minAmount": "8",
- "weight": "50.0",
+ "weight": "4.0",
"id": "882",
"maxAmount": "8"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "3.0",
"id": "558",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "555",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "2",
+ "weight": "1.0",
"id": "557",
- "maxAmount": "1"
+ "maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "1.0",
"id": "562",
"maxAmount": "2"
},
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "2.0",
"id": "561",
"maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "3.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "20"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "325",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "18.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "31.0",
+ "id": "995",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "20.0",
+ "id": "995",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "6",
+ "weight": "20.0",
+ "id": "995",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "13",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "13"
+ },
+ {
+ "minAmount": "20",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "30",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "30"
}
]
},
@@ -13216,164 +10439,128 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "2"
- },
- {
- "minAmount": "36",
- "weight": "50.0",
- "id": "556",
- "maxAmount": "36"
- },
- {
- "minAmount": "9",
- "weight": "50.0",
- "id": "557",
- "maxAmount": "9"
- },
- {
- "minAmount": "12",
- "weight": "50.0",
- "id": "554",
- "maxAmount": "12"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "3"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1217",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1313",
- "maxAmount": "1"
+ "minAmount": "12",
+ "weight": "5.0",
+ "id": "554",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "2",
+ "weight": "4.0",
+ "id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "36",
+ "weight": "1.0",
+ "id": "556",
+ "maxAmount": "36"
},
{
"minAmount": "3",
- "weight": "50.0",
- "id": "995",
+ "weight": "1.0",
+ "id": "561",
"maxAmount": "3"
},
- {
- "minAmount": "13",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "13"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "235",
+ "weight": "34.0",
+ "id": "14424",
"maxAmount": "1"
},
+ {
+ "minAmount": "2",
+ "weight": "10.0",
+ "id": "14424",
+ "maxAmount": "2"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
"id": "239",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "231",
+ "weight": "2.0",
+ "id": "235",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "225",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "225",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "3",
+ "weight": "1.0",
"id": "225",
"maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "227",
+ "weight": "1.0",
+ "id": "231",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "227",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "15.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "10",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "29",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "29"
+ },
+ {
+ "minAmount": "1",
+ "weight": "37.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "167",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -13729,7 +10916,7 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.417",
"id": "1",
"maxAmount": "1"
},
@@ -13890,170 +11077,98 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
+ "weight": "1.0",
+ "id": "1217",
"maxAmount": "1"
},
{
"minAmount": "12",
- "weight": "50.0",
+ "weight": "5.0",
"id": "555",
"maxAmount": "12"
},
- {
- "minAmount": "36",
- "weight": "5.0",
- "id": "554",
- "maxAmount": "36"
- },
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "4.0",
"id": "563",
"maxAmount": "2"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "1.0",
"id": "561",
"maxAmount": "3"
},
+ {
+ "minAmount": "36",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "36"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1291",
+ "weight": "39.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "1217",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "9142",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "830",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1137",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "227",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
"id": "239",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "231",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "227",
+ "maxAmount": "1"
+ },
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "5.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "10",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "24",
+ "weight": "3.0",
"id": "995",
"maxAmount": "24"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "37.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "11.0",
"id": "167",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1454",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "10.0",
"id": "993",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -14271,47 +11386,11 @@
"weight": "100.0",
"id": "526",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "1506",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "6065",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "6067",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "6069",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "6068",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "6070",
- "maxAmount": "1"
}
],
"charm": [],
- "ids": "347,348,357,369,370,371,372,717,718,719,2349,2350,2351,2373,2374,2784,3216",
- "description": "",
+ "ids": "370,357,348,369,347,371",
+ "description": "all combat mourners",
"main": []
},
{
@@ -14351,223 +11430,126 @@
"ids": "412",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7833",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "100.0",
- "id": "0",
+ "id": "530",
"maxAmount": "1"
}
]
},
{
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "526",
- "maxAmount": "1"
- }
- ],
+ "default": [],
"charm": [],
- "ids": "438,439,440,441,442,443,655,4470",
+ "ids": "438,439,440,441,442,443,4470",
"description": "Tree Spirit (Hostile Woodcutting Random Event/Enchanted Valley)",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
+ "id": "1351",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "1349",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
+ "id": "1361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
"id": "1355",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "1357",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "13.0",
+ "weight": "4.0",
"id": "1359",
"maxAmount": "1"
},
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "561",
- "maxAmount": "22"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5300",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "5304",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "946",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "3051",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "3049",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "19.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "18.0",
- "id": "205",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "12.0",
- "id": "207",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
- "id": "209",
+ "weight": "14.0",
+ "id": "14428",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
- "id": "211",
+ "weight": "1.0",
+ "id": "946",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
- "id": "213",
+ "weight": "8.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
+ "weight": "6.0",
+ "id": "3051",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "3049",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "16.0",
+ "id": "561",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "10",
+ "weight": "8.0",
+ "id": "561",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "22",
"weight": "2.0",
- "id": "215",
- "maxAmount": "1"
+ "id": "561",
+ "maxAmount": "22"
+ },
+ {
+ "minAmount": "28",
+ "weight": "2.0",
+ "id": "561",
+ "maxAmount": "28"
},
{
"minAmount": "1",
- "weight": "1.5",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.5",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "3.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "1963",
"maxAmount": "1"
}
]
@@ -14613,7 +11595,7 @@
"maxAmount": "1"
}
],
- "ids": "490,1958,1959,1961,1962,1963,1964,1965,1966,1967,1968,2015,2016,2017,2018,2019,6753,6754,6755,6756,6757,6758,6759,6760",
+ "ids": "490,1959,1962,1963,1964,1965,1966,1967,1968,2015,2016,2017,2018,2019,6753,6754,6755,6756,6757,6758,6759,6760",
"description": "",
"main": [
{
@@ -14628,12 +11610,6 @@
"id": "1185",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4675",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "50.0",
@@ -14820,12 +11796,6 @@
"id": "12070",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6808",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "5.0",
@@ -14950,7 +11920,7 @@
{
"minAmount": "1",
"weight": "100.0",
- "id": "526",
+ "id": "592",
"maxAmount": "1"
},
{
@@ -16210,75 +13180,6 @@
"description": "",
"main": []
},
- {
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "532",
- "maxAmount": "1"
- }
- ],
- "charm": [],
- "ids": "852,5174",
- "description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5304",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5296",
- "maxAmount": "1"
- }
- ]
- },
{
"default": [],
"charm": [
@@ -16615,193 +13516,133 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1069",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
+ "id": "1365",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "1355",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1243",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1145",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1161",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1213",
"maxAmount": "1"
},
{
"minAmount": "75",
- "weight": "50.0",
+ "weight": "8.0",
"id": "555",
"maxAmount": "75"
},
- {
- "minAmount": "37",
- "weight": "50.0",
- "id": "554",
- "maxAmount": "37"
- },
{
"minAmount": "15",
- "weight": "25.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "15"
},
- {
- "minAmount": "30",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "30"
- },
- {
- "minAmount": "75",
- "weight": "5.0",
- "id": "561",
- "maxAmount": "75"
- },
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "3.0",
"id": "563",
"maxAmount": "3"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
+ "minAmount": "37",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "37"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "11",
- "weight": "50.0",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "11"
+ },
+ {
+ "minAmount": "44",
+ "weight": "23.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "132",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "200",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "200"
+ },
+ {
+ "minAmount": "440",
+ "weight": "1.0",
"id": "995",
"maxAmount": "440"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "449",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "5733",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "15.5",
- "id": "31",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "150.0",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
+ "weight": "0.25",
"id": "12479",
"maxAmount": "1"
}
@@ -17482,104 +14323,80 @@
"main": [
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "13.0",
"id": "556",
- "maxAmount": "20"
+ "maxAmount": "15"
},
{
"minAmount": "2",
- "weight": "50.0",
- "id": "562",
- "maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
+ "weight": "9.0",
"id": "561",
"maxAmount": "2"
},
+ {
+ "minAmount": "2",
+ "weight": "7.0",
+ "id": "562",
+ "maxAmount": "2"
+ },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "6.0",
"id": "563",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "560",
"maxAmount": "1"
},
+ {
+ "minAmount": "20",
+ "weight": "3.0",
+ "id": "556",
+ "maxAmount": "20"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "565",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "14.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "12",
+ "weight": "36.0",
+ "id": "995",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "42",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "42"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1381",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "2.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "28.0",
+ "id": "0",
"maxAmount": "1"
}
]
@@ -17597,130 +14414,95 @@
"ids": "1022",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "13.0",
"id": "555",
- "maxAmount": "20"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "563",
- "maxAmount": "1"
+ "maxAmount": "15"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "9.0",
"id": "561",
"maxAmount": "2"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "7.0",
"id": "562",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "6.0",
+ "id": "563",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "560",
"maxAmount": "1"
},
+ {
+ "minAmount": "20",
+ "weight": "3.0",
+ "id": "555",
+ "maxAmount": "20"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "565",
"maxAmount": "1"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "14.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "12",
+ "weight": "36.0",
"id": "995",
- "maxAmount": "40"
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "42",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "42"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1383",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "2.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "28.0",
+ "id": "0",
"maxAmount": "1"
}
]
},
{
- "default": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3325",
+ "maxAmount": "1"
+ }
+ ],
"charm": [
{
"minAmount": "1",
@@ -17986,7 +14768,7 @@
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "6.7715",
"id": "5733",
"maxAmount": "1"
},
@@ -18856,135 +15638,6 @@
}
]
},
- {
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "526",
- "maxAmount": "1"
- }
- ],
- "charm": [],
- "ids": "1087",
- "description": "",
- "main": [
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "9"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "12"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "25"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "313",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7767",
- "maxAmount": "1"
- }
- ]
- },
{
"default": [
{
@@ -19029,178 +15682,136 @@
"ids": "1096",
"description": "",
"main": [
- {
- "minAmount": "16",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "16"
- },
- {
- "minAmount": "25",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "25"
- },
- {
- "minAmount": "65",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "65"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "4"
- },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1119",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1339",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1183",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1341",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1347",
+ "weight": "3.0",
+ "id": "1339",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "1183",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "3122",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "199",
+ "weight": "1.0",
+ "id": "1121",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
+ "weight": "1.0",
+ "id": "1347",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
+ "minAmount": "80",
+ "weight": "8.0",
+ "id": "557",
+ "maxAmount": "80"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "10976",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "10977",
- "maxAmount": "1"
+ "minAmount": "16",
+ "weight": "5.0",
+ "id": "561",
+ "maxAmount": "16"
},
{
"minAmount": "4",
- "weight": "25.0",
- "id": "362",
+ "weight": "3.0",
+ "id": "563",
"maxAmount": "4"
},
{
- "minAmount": "6",
+ "minAmount": "65",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "65"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "15.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "40",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "40"
+ },
+ {
+ "minAmount": "135",
"weight": "25.0",
+ "id": "995",
+ "maxAmount": "135"
+ },
+ {
+ "minAmount": "190",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "190"
+ },
+ {
+ "minAmount": "20",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "420",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "420"
+ },
+ {
+ "minAmount": "6",
+ "weight": "3.0",
"id": "454",
"maxAmount": "6"
},
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "360",
+ "maxAmount": "4"
+ },
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "69.0",
- "id": "0",
+ "weight": "2.0",
+ "id": "1357",
"maxAmount": "1"
}
]
@@ -19251,86 +15862,134 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1183",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1341",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "3122",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1121",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1347",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1119",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1341",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "1339",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1357",
+ "weight": "1.0",
+ "id": "1183",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "995",
+ "weight": "1.0",
+ "id": "3122",
"maxAmount": "1"
},
{
- "minAmount": "4",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "4"
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1121",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1347",
+ "maxAmount": "1"
},
{
"minAmount": "80",
- "weight": "25.0",
+ "weight": "8.0",
"id": "557",
"maxAmount": "80"
},
+ {
+ "minAmount": "16",
+ "weight": "5.0",
+ "id": "561",
+ "maxAmount": "16"
+ },
+ {
+ "minAmount": "4",
+ "weight": "3.0",
+ "id": "563",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "65",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "65"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "10976",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
+ {
+ "minAmount": "40",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "40"
+ },
+ {
+ "minAmount": "135",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "135"
+ },
+ {
+ "minAmount": "190",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "190"
+ },
+ {
+ "minAmount": "20",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "420",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "420"
+ },
+ {
+ "minAmount": "6",
+ "weight": "3.0",
+ "id": "454",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "360",
+ "maxAmount": "4"
+ },
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "2.0",
+ "id": "1357",
"maxAmount": "1"
}
]
@@ -19381,74 +16040,134 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1341",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "3122",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1347",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1119",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1341",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "1339",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "995",
+ "weight": "1.0",
+ "id": "1183",
"maxAmount": "1"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "2"
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3122",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1121",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1347",
+ "maxAmount": "1"
},
{
"minAmount": "80",
- "weight": "25.0",
+ "weight": "8.0",
"id": "557",
"maxAmount": "80"
},
+ {
+ "minAmount": "16",
+ "weight": "5.0",
+ "id": "561",
+ "maxAmount": "16"
+ },
+ {
+ "minAmount": "4",
+ "weight": "3.0",
+ "id": "563",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "65",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "65"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "5323",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
+ {
+ "minAmount": "40",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "40"
+ },
+ {
+ "minAmount": "135",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "135"
+ },
+ {
+ "minAmount": "190",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "190"
+ },
+ {
+ "minAmount": "20",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "420",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "420"
+ },
+ {
+ "minAmount": "6",
+ "weight": "3.0",
+ "id": "454",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "360",
+ "maxAmount": "4"
+ },
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "2.0",
+ "id": "1357",
"maxAmount": "1"
}
]
@@ -19468,218 +16187,140 @@
"main": [
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5291",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1141",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1145",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
"id": "1339",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
"id": "1341",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "1145",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1345",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "8"
- },
- {
- "minAmount": "35",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "35"
- },
- {
- "minAmount": "25",
- "weight": "25.0",
+ "minAmount": "60",
+ "weight": "8.0",
"id": "557",
- "maxAmount": "25"
- },
- {
- "minAmount": "45",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "45"
+ "maxAmount": "60"
},
{
"minAmount": "7",
- "weight": "25.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "7"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "3.0",
"id": "563",
"maxAmount": "2"
},
+ {
+ "minAmount": "45",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "45"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "15.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "19.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "8",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "35",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "35"
+ },
+ {
+ "minAmount": "50",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "100",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "250",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "250"
+ },
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "3.0",
"id": "454",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "2.0",
"id": "354",
"maxAmount": "3"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.32",
+ "id": "10976",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.0256",
+ "id": "10977",
"maxAmount": "1"
}
]
@@ -19699,321 +16340,141 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5291",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5323",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5295",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1341",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1339",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1141",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
+ "id": "1339",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "1341",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1145",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1345",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1361",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1183",
- "maxAmount": "1"
+ "minAmount": "60",
+ "weight": "8.0",
+ "id": "557",
+ "maxAmount": "60"
},
{
"minAmount": "7",
- "weight": "50.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "7"
},
- {
- "minAmount": "25",
- "weight": "50.0",
- "id": "557",
- "maxAmount": "25"
- },
- {
- "minAmount": "45",
- "weight": "50.0",
- "id": "557",
- "maxAmount": "45"
- },
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "3.0",
"id": "563",
"maxAmount": "2"
},
+ {
+ "minAmount": "45",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "45"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "15.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "19.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
{
"minAmount": "8",
- "weight": "50.0",
+ "weight": "7.0",
"id": "995",
"maxAmount": "8"
},
{
"minAmount": "35",
- "weight": "50.0",
+ "weight": "29.0",
"id": "995",
"maxAmount": "35"
},
+ {
+ "minAmount": "50",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "100",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "250",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "250"
+ },
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "3.0",
"id": "454",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "2.0",
"id": "354",
"maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.32",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "0.0256",
"id": "10977",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7884",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
}
]
},
@@ -20063,195 +16524,147 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1119",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1339",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1341",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1121",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1357",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1183",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1347",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "830",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "3122",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1121",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1347",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "80",
+ "weight": "8.0",
+ "id": "557",
+ "maxAmount": "80"
+ },
{
"minAmount": "16",
- "weight": "50.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "16"
},
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "3.0",
"id": "563",
"maxAmount": "4"
},
- {
- "minAmount": "25",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "25"
- },
{
"minAmount": "65",
- "weight": "25.0",
+ "weight": "1.0",
"id": "557",
"maxAmount": "65"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1462",
- "maxAmount": "1"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "360",
- "maxAmount": "4"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "6"
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "20",
- "weight": "25.0",
+ "weight": "4.0",
"id": "995",
"maxAmount": "20"
},
{
"minAmount": "40",
- "weight": "25.0",
+ "weight": "29.0",
"id": "995",
"maxAmount": "40"
},
{
- "minAmount": "1",
+ "minAmount": "135",
"weight": "25.0",
+ "id": "995",
+ "maxAmount": "135"
+ },
+ {
+ "minAmount": "190",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "190"
+ },
+ {
+ "minAmount": "420",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "420"
+ },
+ {
+ "minAmount": "6",
+ "weight": "3.0",
+ "id": "454",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "360",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.32",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "0.0256",
"id": "10977",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -20609,218 +17022,140 @@
"main": [
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5291",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1141",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1145",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
"id": "1339",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
"id": "1341",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "1145",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1345",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "8"
- },
- {
- "minAmount": "35",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "35"
- },
- {
- "minAmount": "25",
- "weight": "25.0",
+ "minAmount": "60",
+ "weight": "8.0",
"id": "557",
- "maxAmount": "25"
- },
- {
- "minAmount": "45",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "45"
+ "maxAmount": "60"
},
{
"minAmount": "7",
- "weight": "25.0",
+ "weight": "5.0",
"id": "561",
"maxAmount": "7"
},
{
"minAmount": "2",
- "weight": "5.0",
+ "weight": "3.0",
"id": "563",
"maxAmount": "2"
},
+ {
+ "minAmount": "45",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "45"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "557",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "15.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "19.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "8",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "35",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "35"
+ },
+ {
+ "minAmount": "50",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "100",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "250",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "250"
+ },
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "3.0",
"id": "454",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "5.0",
+ "weight": "2.0",
"id": "354",
"maxAmount": "3"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "31",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.32",
+ "id": "10976",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.0256",
+ "id": "10977",
"maxAmount": "1"
}
]
@@ -21374,278 +17709,134 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1197",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1183",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1147",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1113",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1127",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1185",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1285",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1365",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1355",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "1211",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1331",
+ "weight": "1.0",
+ "id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1319",
+ "weight": "1.0",
+ "id": "1147",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1373",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1289",
+ "weight": "1.0",
+ "id": "1113",
"maxAmount": "1"
},
{
"minAmount": "50",
- "weight": "25.0",
+ "weight": "8.0",
"id": "556",
"maxAmount": "50"
},
+ {
+ "minAmount": "10",
+ "weight": "7.0",
+ "id": "562",
+ "maxAmount": "10"
+ },
{
"minAmount": "7",
- "weight": "25.0",
+ "weight": "4.0",
"id": "565",
- "maxAmount": "19"
+ "maxAmount": "7"
},
{
"minAmount": "37",
- "weight": "25.0",
+ "weight": "1.0",
"id": "554",
"maxAmount": "37"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "1.0",
"id": "563",
"maxAmount": "3"
},
- {
- "minAmount": "45",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "45"
- },
- {
- "minAmount": "18",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "18"
- },
- {
- "minAmount": "28",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "28"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "10"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "829",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "564",
- "maxAmount": "2"
- },
- {
- "minAmount": "42",
- "weight": "25.0",
- "id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "28",
- "weight": "50.0",
+ "minAmount": "132",
+ "weight": "40.0",
"id": "995",
- "maxAmount": "3000"
+ "maxAmount": "132"
},
{
- "minAmount": "12",
- "weight": "25.0",
+ "minAmount": "30",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "44",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "220",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "460",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "460"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "379",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "163",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "145",
+ "weight": "1.0",
+ "id": "133",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "157",
- "maxAmount": "1"
- },
- {
- "minAmount": "24",
- "weight": "25.0",
- "id": "3139",
- "maxAmount": "24"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "5.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -21684,14 +17875,28 @@
"maxAmount": "6"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "255.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "7981",
+ "maxAmount": "1"
+ }
+ ],
"ids": "1158,1159,1160,3835,3836,4234",
"description": "",
"main": [
{
- "minAmount": "2",
+ "minAmount": "1",
"weight": "50.0",
- "id": "1247",
- "maxAmount": "2"
+ "id": "1245",
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -21715,23 +17920,11 @@
"minAmount": "1",
"weight": "25.0",
"id": "1347",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1301",
"maxAmount": "1"
},
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "3053",
- "maxAmount": "2"
- },
{
"minAmount": "1",
- "weight": "10.0",
+ "weight": "3.2737",
"id": "7158",
"maxAmount": "1"
},
@@ -21739,11 +17932,11 @@
"minAmount": "1",
"weight": "50.0",
"id": "1113",
- "maxAmount": "4"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.5",
+ "weight": "3.2737",
"id": "3140",
"maxAmount": "1"
},
@@ -21754,16 +17947,10 @@
"maxAmount": "500"
},
{
- "minAmount": "1",
+ "minAmount": "350",
"weight": "50.0",
"id": "884",
- "maxAmount": "355"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "886",
- "maxAmount": "150"
+ "maxAmount": "350"
},
{
"minAmount": "100",
@@ -21772,100 +17959,88 @@
"maxAmount": "100"
},
{
- "minAmount": "250",
- "weight": "75.0",
- "id": "565",
- "maxAmount": "300"
- },
- {
- "minAmount": "200",
+ "minAmount": "75",
"weight": "75.0",
"id": "561",
- "maxAmount": "285"
+ "maxAmount": "75"
},
{
"minAmount": "20",
- "weight": "75.0",
+ "weight": "25.0",
"id": "563",
- "maxAmount": "45"
- },
- {
- "minAmount": "250",
- "weight": "75.0",
- "id": "563",
- "maxAmount": "250"
- },
- {
- "minAmount": "200",
- "weight": "50.0",
- "id": "560",
- "maxAmount": "300"
- },
- {
- "minAmount": "200",
- "weight": "50.0",
- "id": "564",
- "maxAmount": "300"
+ "maxAmount": "20"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1607",
+ "id": "1301",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1605",
+ "id": "1185",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "1131",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1603",
+ "id": "2501",
"maxAmount": "1"
},
- {
- "minAmount": "40",
- "weight": "25.0",
- "id": "414",
- "maxAmount": "40"
- },
- {
- "minAmount": "20",
- "weight": "50.0",
- "id": "246",
- "maxAmount": "40"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1731",
- "maxAmount": "1"
- },
- {
- "minAmount": "341",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "75000"
- },
- {
- "minAmount": "7",
- "weight": "50.0",
- "id": "379",
- "maxAmount": "7"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
+ "weight": "6.5475",
"id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "10.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "600",
+ "weight": "25.0",
+ "id": "554",
+ "maxAmount": "600"
+ },
+ {
+ "minAmount": "50",
+ "weight": "50.0",
+ "id": "565",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "20",
+ "weight": "25.0",
+ "id": "246",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "8",
+ "weight": "25.0",
+ "id": "379",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "3053",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1560",
+ "weight": "50.0",
+ "id": "995",
+ "maxAmount": "1560"
}
]
},
@@ -21910,7 +18085,7 @@
"maxAmount": "1"
}
],
- "ids": "1183,1184,1201,2359,2360,2361,2362,7438,7439,7440,7441",
+ "ids": "1183,1184,1201,2359,2360,2361,2362,2373,7438,7439,7440,7441",
"description": "",
"main": [
{
@@ -22246,20 +18421,7 @@
],
"ids": "1196,1197",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7815",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -22328,170 +18490,116 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1311",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
+ "id": "1365",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1073",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1135",
+ "weight": "1.0",
+ "id": "1163",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1065",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1099",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "220"
- },
{
"minAmount": "75",
- "weight": "25.0",
+ "weight": "8.0",
"id": "554",
"maxAmount": "75"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "361",
- "maxAmount": "1"
- },
{
"minAmount": "15",
- "weight": "25.0",
+ "weight": "5.0",
"id": "562",
"maxAmount": "15"
},
+ {
+ "minAmount": "5",
+ "weight": "3.0",
+ "id": "560",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "37",
+ "weight": "1.0",
+ "id": "554",
+ "maxAmount": "37"
+ },
+ {
+ "minAmount": "132",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "44",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "220",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "11",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "11"
+ },
+ {
+ "minAmount": "460",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "460"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2357",
+ "maxAmount": "1"
+ },
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1734",
"maxAmount": "10"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -22599,13 +18707,13 @@
"main": [
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "5733",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "127.0",
"id": "0",
"maxAmount": "1"
}
@@ -22627,7 +18735,7 @@
}
],
"charm": [],
- "ids": "1227,1232",
+ "ids": "1227",
"description": "",
"main": []
},
@@ -22647,7 +18755,7 @@
}
],
"charm": [],
- "ids": "1228,1233",
+ "ids": "1228",
"description": "",
"main": []
},
@@ -22667,7 +18775,7 @@
}
],
"charm": [],
- "ids": "1229,1234",
+ "ids": "1229",
"description": "",
"main": []
},
@@ -22687,7 +18795,7 @@
}
],
"charm": [],
- "ids": "1230,1235",
+ "ids": "1230",
"description": "",
"main": []
},
@@ -22891,10 +18999,10 @@
"maxAmount": "1"
},
{
- "minAmount": "110",
+ "minAmount": "30",
"weight": "5.0",
"id": "313",
- "maxAmount": "30"
+ "maxAmount": "110"
},
{
"minAmount": "1",
@@ -23056,10 +19164,10 @@
"maxAmount": "1"
},
{
- "minAmount": "110",
+ "minAmount": "30",
"weight": "5.0",
"id": "313",
- "maxAmount": "30"
+ "maxAmount": "110"
},
{
"minAmount": "1",
@@ -23971,72 +20079,244 @@
"charm": [
{
"minAmount": "1",
- "weight": "28.0",
+ "weight": "55.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "13.0",
"id": "12158",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "14.0",
+ "weight": "6.0",
"id": "12159",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "56.0",
+ "weight": "25.0",
"id": "12160",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.0",
+ "weight": "1.0",
"id": "12163",
"maxAmount": "1"
}
],
- "ids": "2455,2456",
- "description": "Waterbirth Dagannoths",
+ "ids": "1338",
+ "description": "Chaos Tunnels / Lighthouse Dagannoths",
"main": [
{
"minAmount": "1",
- "weight": "60.0",
- "id": "1353",
+ "weight": "5.0",
+ "id": "1237",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "60.0",
+ "weight": "5.0",
+ "id": "1239",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1243",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "555",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "15",
+ "weight": "2.0",
"id": "886",
- "maxAmount": "30"
+ "maxAmount": "15"
},
{
"minAmount": "3",
- "weight": "16.0",
+ "weight": "1.0",
"id": "828",
"maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "16.0",
- "id": "1243",
+ "weight": "18.0",
+ "id": "14428",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "24.0",
- "id": "3758",
+ "weight": "12.0",
+ "id": "301",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "4.0",
+ "id": "345",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "4.0",
+ "id": "327",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "311",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "15",
+ "weight": "2.0",
+ "id": "314",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "50",
+ "weight": "2.0",
+ "id": "313",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "377",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "24.0",
- "id": "3748",
+ "weight": "2.0",
+ "id": "359",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "10",
+ "weight": "2.0",
+ "id": "402",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "413",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "411",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "56",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "56"
+ },
+ {
+ "minAmount": "25",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "44",
+ "weight": "8.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "41",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "41"
+ },
+ {
+ "minAmount": "12",
+ "weight": "2.0",
+ "id": "45",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "405",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "16.0",
- "id": "3757",
+ "weight": "1.0",
+ "id": "5733",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "14426",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "55.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "13.0",
+ "id": "12158",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "12159",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "12160",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "12163",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "2455",
+ "description": "Waterbirth Dagannoths (Melee Variant)",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3749",
"maxAmount": "1"
},
{
@@ -24045,12 +20325,6 @@
"id": "3751",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "3749",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "1.0",
@@ -24065,75 +20339,433 @@
},
{
"minAmount": "1",
- "weight": "64.0",
- "id": "199",
+ "weight": "160.0",
+ "id": "1353",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "64.0",
- "id": "201",
- "maxAmount": "1"
+ "minAmount": "3",
+ "weight": "160.0",
+ "id": "828",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "15",
+ "weight": "80.0",
+ "id": "886",
+ "maxAmount": "15"
},
{
"minAmount": "1",
- "weight": "64.0",
- "id": "203",
+ "weight": "48.0",
+ "id": "3748",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "48.0",
- "id": "209",
+ "id": "3757",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "48.0",
+ "id": "3758",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "32.0",
- "id": "2485",
+ "id": "3767",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "32.0",
- "id": "211",
+ "id": "3761",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "32.0",
- "id": "217",
+ "id": "3799",
"maxAmount": "1"
},
+ {
+ "minAmount": "10",
+ "weight": "160.0",
+ "id": "555",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "1",
+ "weight": "160.0",
+ "id": "561",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "1",
+ "weight": "160.0",
+ "id": "563",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "1",
+ "weight": "32.0",
+ "id": "565",
+ "maxAmount": "10"
+ },
{
"minAmount": "1",
"weight": "64.0",
- "id": "207",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "14428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "160.0",
+ "id": "6155",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "160.0",
+ "id": "590",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "112.0",
+ "id": "411",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "80.0",
+ "id": "377",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "47",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "47"
+ },
+ {
+ "minAmount": "3",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "38",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "38"
+ },
+ {
+ "minAmount": "26",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "26"
+ },
+ {
+ "minAmount": "81",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "81"
+ },
+ {
+ "minAmount": "1",
+ "weight": "32.0",
+ "id": "3801",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1438",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1442",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1444",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1446",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1448",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "8.0",
- "id": "5296",
+ "id": "1454",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
- "id": "5300",
+ "weight": "4.0",
+ "id": "1452",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1462",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "5733",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "14426",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "55.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "13.0",
+ "id": "12158",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "12159",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "12160",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "12163",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "2456",
+ "description": "Waterbirth Dagannoths (Ranged Variant)",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3749",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3751",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3753",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3755",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "30",
+ "weight": "160.0",
+ "id": "886",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "1",
+ "weight": "48.0",
+ "id": "3748",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "48.0",
+ "id": "3757",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "48.0",
+ "id": "3758",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "32.0",
- "id": "215",
+ "id": "3767",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "146.0",
+ "weight": "32.0",
+ "id": "3761",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "32.0",
+ "id": "3799",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "32.0",
+ "id": "828",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "1",
+ "weight": "32.0",
+ "id": "6149",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "32.0",
+ "id": "6143",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "128.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "14428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "10",
+ "weight": "480.0",
+ "id": "402",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "20",
+ "weight": "160.0",
+ "id": "45",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "47",
+ "weight": "32.0",
"id": "995",
- "maxAmount": "74"
+ "maxAmount": "47"
+ },
+ {
+ "minAmount": "3",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "38",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "38"
+ },
+ {
+ "minAmount": "26",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "26"
+ },
+ {
+ "minAmount": "81",
+ "weight": "32.0",
+ "id": "995",
+ "maxAmount": "81"
+ },
+ {
+ "minAmount": "5",
+ "weight": "128.0",
+ "id": "403",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "1",
+ "weight": "80.0",
+ "id": "405",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "80.0",
+ "id": "413",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "80.0",
+ "id": "363",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "32.0",
+ "id": "6169",
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -24149,172 +20781,64 @@
},
{
"minAmount": "1",
- "weight": "56.0",
- "id": "407",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "56.0",
- "id": "413",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "3.0",
- "id": "1440",
+ "weight": "32.0",
+ "id": "3801",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
+ "weight": "10.0",
"id": "1438",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
+ "weight": "10.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
"id": "1442",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
+ "weight": "10.0",
+ "id": "1444",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1446",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
"id": "1448",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.0",
+ "weight": "8.0",
+ "id": "1454",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1452",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "1462",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "3.0",
- "id": "1446",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "80.0",
- "id": "45",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "16.0",
- "id": "3761",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "16.0",
- "id": "3767",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "16.0",
- "id": "3799",
- "maxAmount": "1"
- },
- {
- "minAmount": "15",
- "weight": "80.0",
- "id": "555",
- "maxAmount": "15"
- },
- {
- "minAmount": "6",
- "weight": "80.0",
- "id": "561",
- "maxAmount": "6"
- },
- {
- "minAmount": "10",
- "weight": "32.0",
- "id": "565",
- "maxAmount": "10"
- },
- {
- "minAmount": "5",
- "weight": "80.0",
- "id": "563",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "80.0",
- "id": "590",
- "maxAmount": "1"
- },
- {
- "minAmount": "15",
- "weight": "32.0",
- "id": "314",
- "maxAmount": "15"
- },
- {
- "minAmount": "50",
- "weight": "16.0",
- "id": "313",
- "maxAmount": "50"
- },
- {
- "minAmount": "100",
- "weight": "16.0",
- "id": "313",
- "maxAmount": "100"
- },
- {
- "minAmount": "1",
- "weight": "16.0",
- "id": "311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "16.0",
- "id": "301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "80.0",
- "id": "377",
- "maxAmount": "1"
- },
- {
- "minAmount": "5",
- "weight": "40.0",
- "id": "327",
- "maxAmount": "5"
- },
- {
- "minAmount": "3",
- "weight": "40.0",
- "id": "345",
- "maxAmount": "3"
- },
- {
- "minAmount": "10",
- "weight": "240.0",
- "id": "401",
- "maxAmount": "10"
- },
- {
- "minAmount": "10",
- "weight": "32.0",
- "id": "3711",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "16.0",
- "id": "31",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "16.0",
@@ -24323,8 +20847,8 @@
},
{
"minAmount": "1",
- "weight": "1400.0",
- "id": "0",
+ "weight": "16.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -24922,208 +21446,154 @@
"ids": "1590",
"description": "",
"main": [
- {
- "minAmount": "30",
- "weight": "50.0",
- "id": "829",
- "maxAmount": "30"
- },
- {
- "minAmount": "60",
- "weight": "50.0",
- "id": "829",
- "maxAmount": "60"
- },
- {
- "minAmount": "16",
- "weight": "25.0",
- "id": "810",
- "maxAmount": "16"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1355",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1315",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1355",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "1369",
"maxAmount": "1"
},
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "9142",
- "maxAmount": "8"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "9142",
- "maxAmount": "10"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "868",
- "maxAmount": "2"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "868",
- "maxAmount": "5"
- },
{
"minAmount": "1",
- "weight": "5.0",
- "id": "830",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1373",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1123",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1185",
+ "weight": "1.0",
+ "id": "1303",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "0.45",
- "id": "4585",
- "maxAmount": "1"
+ "minAmount": "30",
+ "weight": "20.0",
+ "id": "829",
+ "maxAmount": "30"
},
{
- "minAmount": "1",
- "weight": "0.45",
- "id": "4087",
- "maxAmount": "1"
+ "minAmount": "50",
+ "weight": "8.0",
+ "id": "554",
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "16",
+ "weight": "7.0",
+ "id": "816",
+ "maxAmount": "16"
+ },
+ {
+ "minAmount": "2",
+ "weight": "6.0",
+ "id": "9142",
+ "maxAmount": "12"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "5.0",
"id": "563",
"maxAmount": "10"
},
- {
- "minAmount": "45",
- "weight": "50.0",
- "id": "563",
- "maxAmount": "45"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "150"
- },
{
"minAmount": "15",
- "weight": "25.0",
+ "weight": "3.0",
"id": "565",
"maxAmount": "15"
},
{
- "minAmount": "30",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "30"
- },
- {
- "minAmount": "67",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "67"
+ "minAmount": "2",
+ "weight": "3.0",
+ "id": "868",
+ "maxAmount": "2"
},
{
"minAmount": "25",
- "weight": "25.0",
+ "weight": "1.0",
"id": "560",
"maxAmount": "25"
},
{
- "minAmount": "45",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "45"
+ "minAmount": "196",
+ "weight": "39.0",
+ "id": "995",
+ "maxAmount": "196"
+ },
+ {
+ "minAmount": "330",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "330"
+ },
+ {
+ "minAmount": "690",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "690"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "3.0",
"id": "2361",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "2363",
- "maxAmount": "1"
- },
- {
- "minAmount": "168",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "3000"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "minAmount": "2",
+ "weight": "2.0",
"id": "373",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "1.0",
+ "id": "373",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "4.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.0625",
+ "id": "4087",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.0625",
+ "id": "4585",
"maxAmount": "1"
}
]
@@ -25180,183 +21650,153 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1317",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1371",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1357",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1371",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1183",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "1432",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
+ "weight": "1.0",
"id": "1147",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
- "id": "1163",
+ "weight": "1.0",
+ "id": "1373",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "0.75",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "0.75",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "9143",
- "maxAmount": "12"
- },
- {
- "minAmount": "2",
- "weight": "8.0",
- "id": "9144",
- "maxAmount": "12"
- },
- {
- "minAmount": "9",
- "weight": "25.0",
- "id": "811",
- "maxAmount": "9"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "868",
- "maxAmount": "5"
+ "minAmount": "4",
+ "weight": "20.0",
+ "id": "830",
+ "maxAmount": "4"
},
{
"minAmount": "15",
- "weight": "25.0",
+ "weight": "15.0",
"id": "560",
"maxAmount": "15"
},
{
- "minAmount": "15",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "15"
+ "minAmount": "9",
+ "weight": "7.0",
+ "id": "817",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "6.0",
+ "id": "9143",
+ "maxAmount": "12"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "5.0",
"id": "566",
"maxAmount": "3"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "2361",
- "maxAmount": "2"
+ "minAmount": "5",
+ "weight": "3.0",
+ "id": "868",
+ "maxAmount": "5"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "161",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "145",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "165",
- "maxAmount": "1"
+ "minAmount": "3",
+ "weight": "5.0",
+ "id": "566",
+ "maxAmount": "3"
},
{
"minAmount": "270",
- "weight": "50.0",
+ "weight": "19.0",
"id": "995",
"maxAmount": "270"
},
{
"minAmount": "550",
- "weight": "50.0",
+ "weight": "10.0",
"id": "995",
"maxAmount": "550"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
+ "id": "161",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "9431",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "3.0",
+ "id": "2361",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "2011",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "9431",
+ "weight": "3.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.07994",
+ "weight": "1.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.0128",
"id": "11286",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "0.125",
+ "id": "4087",
"maxAmount": "1"
},
{
- "minAmount": "4",
- "weight": "50.0",
- "id": "830",
- "maxAmount": "4"
+ "minAmount": "1",
+ "weight": "0.125",
+ "id": "4585",
+ "maxAmount": "1"
}
]
},
@@ -25412,177 +21852,147 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1317",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1371",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1183",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "1359",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
+ "weight": "4.0",
"id": "1432",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
- "id": "1147",
+ "weight": "2.0",
+ "id": "1199",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
+ "weight": "2.0",
+ "id": "1359",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1163",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "1.4",
- "id": "4585",
- "maxAmount": "1"
+ "minAmount": "7",
+ "weight": "20.0",
+ "id": "830",
+ "maxAmount": "7"
},
{
- "minAmount": "1",
- "weight": "1.4",
- "id": "4087",
- "maxAmount": "1"
+ "minAmount": "15",
+ "weight": "15.0",
+ "id": "565",
+ "maxAmount": "15"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "9143",
+ "minAmount": "12",
+ "weight": "7.0",
+ "id": "817",
"maxAmount": "12"
},
{
"minAmount": "2",
- "weight": "8.0",
+ "weight": "6.0",
"id": "9144",
"maxAmount": "12"
},
- {
- "minAmount": "12",
- "weight": "25.0",
- "id": "811",
- "maxAmount": "12"
- },
- {
- "minAmount": "7",
- "weight": "8.0",
- "id": "868",
- "maxAmount": "7"
- },
- {
- "minAmount": "20",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "20"
- },
{
"minAmount": "5",
- "weight": "8.0",
+ "weight": "5.0",
"id": "566",
"maxAmount": "5"
},
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "2361",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "161",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "12.0",
- "id": "145",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "12.0",
- "id": "165",
- "maxAmount": "1"
- },
{
"minAmount": "470",
- "weight": "50.0",
+ "weight": "20.0",
"id": "995",
"maxAmount": "470"
},
{
"minAmount": "650",
- "weight": "50.0",
+ "weight": "10.0",
"id": "995",
"maxAmount": "650"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "2011",
- "maxAmount": "2"
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "145",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "8.0",
"id": "9431",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "12070",
+ "weight": "3.0",
+ "id": "2363",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "6.0",
+ "weight": "3.0",
+ "id": "165",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "2011",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "2011",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.0728",
+ "weight": "1.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.0128",
"id": "11286",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "0.25",
+ "id": "4087",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.25",
+ "id": "4585",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "868",
+ "maxAmount": "7"
}
]
},
@@ -25926,207 +22336,87 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5300",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5304",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "207",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "209",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "211",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "213",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "3051",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "12.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "3053",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1073",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "4.0",
"id": "1163",
"maxAmount": "1"
},
- {
- "minAmount": "278",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "487"
- },
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "4103",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "130.0",
+ "id": "14424",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
+ "minAmount": "2",
+ "weight": "130.0",
+ "id": "14424",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "3",
+ "weight": "47.0",
+ "id": "14424",
+ "maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "76.0",
+ "id": "14428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "460",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "460"
+ },
+ {
+ "minAmount": "1",
+ "weight": "72.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "20.0",
+ "id": "14426",
+ "maxAmount": "1"
}
]
},
@@ -26171,296 +22461,232 @@
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "2999.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "7978",
+ "maxAmount": "1"
+ }
+ ],
"ids": "1608,1609,4229",
"description": "",
"main": [
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "30"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "6"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "16"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "9143",
- "maxAmount": "19"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1355",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "4160",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1123",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "239",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "225",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "3.0",
+ "id": "1123",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "3.0",
+ "id": "1303",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5300",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5304",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1963",
- "maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "2114",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2289",
- "maxAmount": "1"
- },
- {
- "minAmount": "22",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "748"
- },
- {
- "minAmount": "20",
- "weight": "50.0",
- "id": "1780",
- "maxAmount": "30"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "161",
- "maxAmount": "1"
- },
- {
- "minAmount": "12",
- "weight": "25.0",
- "id": "526",
- "maxAmount": "12"
- },
- {
- "minAmount": "12",
- "weight": "25.0",
- "id": "532",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4111",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "13290",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "1.0",
+ "id": "4111",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "7978",
+ "weight": "2.0",
+ "id": "4160",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "13280",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "20",
+ "weight": "2.0",
+ "id": "13278",
+ "maxAmount": "60"
+ },
+ {
+ "minAmount": "20",
+ "weight": "2.0",
+ "id": "13279",
+ "maxAmount": "60"
+ },
+ {
+ "minAmount": "5",
+ "weight": "2.0",
+ "id": "9143",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "5",
+ "weight": "10.0",
+ "id": "561",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "6.0",
+ "id": "561",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "30",
+ "weight": "2.0",
+ "id": "561",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "1",
+ "weight": "18.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "15.0",
+ "id": "14422",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "8.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "22",
+ "weight": "8.0",
+ "id": "995",
+ "maxAmount": "22"
+ },
+ {
+ "minAmount": "748",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "748"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "239",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "3.0",
+ "id": "225",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "2",
+ "weight": "3.0",
+ "id": "2114",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1963",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "2.0",
+ "id": "1963",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "20",
+ "weight": "2.0",
+ "id": "1780",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2289",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "2.0",
+ "id": "526",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "4",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "2",
+ "weight": "2.0",
+ "id": "532",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "4",
+ "weight": "1.0",
+ "id": "532",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "161",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "173",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "4",
+ "weight": "4.0",
+ "id": "558",
+ "maxAmount": "16"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "560",
+ "maxAmount": "5"
}
]
},
@@ -26503,129 +22729,147 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "16.0",
"id": "1311",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "12.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "4153",
+ "weight": "12.0",
+ "id": "1365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "4.0",
"id": "4129",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1157",
+ "weight": "4.0",
+ "id": "1163",
"maxAmount": "1"
},
{
- "minAmount": "37",
- "weight": "50.0",
- "id": "554",
- "maxAmount": "37"
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "4153",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "4101",
+ "maxAmount": "1"
},
{
"minAmount": "75",
- "weight": "50.0",
+ "weight": "32.0",
"id": "554",
"maxAmount": "75"
},
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "12.0",
"id": "562",
"maxAmount": "15"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "12.0",
"id": "560",
"maxAmount": "5"
},
{
- "minAmount": "11",
- "weight": "50.0",
+ "minAmount": "37",
+ "weight": "4.0",
+ "id": "554",
+ "maxAmount": "37"
+ },
+ {
+ "minAmount": "132",
+ "weight": "160.0",
"id": "995",
- "maxAmount": "498"
+ "maxAmount": "132"
},
{
- "minAmount": "35",
- "weight": "25.0",
- "id": "7937",
- "maxAmount": "35"
+ "minAmount": "44",
+ "weight": "108.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "220",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "11",
+ "weight": "28.0",
+ "id": "995",
+ "maxAmount": "11"
+ },
+ {
+ "minAmount": "460",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "460"
},
{
"minAmount": "3",
- "weight": "25.0",
- "id": "2359",
- "maxAmount": "3"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
+ "weight": "8.0",
"id": "2353",
"maxAmount": "3"
},
+ {
+ "minAmount": "3",
+ "weight": "8.0",
+ "id": "2359",
+ "maxAmount": "3"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "2357",
"maxAmount": "1"
},
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1734",
"maxAmount": "10"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "4101",
+ "weight": "4.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "20.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
+ "weight": "1.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "35",
+ "weight": "8.0",
+ "id": "7937",
+ "maxAmount": "35"
}
]
},
@@ -26827,207 +23071,123 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "16.0",
"id": "1420",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "16.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "1191",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1199",
- "maxAmount": "1"
- },
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "23.0",
"id": "556",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "16.0",
"id": "562",
"maxAmount": "3"
},
{
"minAmount": "6",
- "weight": "50.0",
+ "weight": "8.0",
"id": "562",
"maxAmount": "6"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "23.0",
"id": "564",
"maxAmount": "2"
},
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
{
"minAmount": "7",
- "weight": "25.0",
+ "weight": "8.0",
"id": "554",
"maxAmount": "7"
},
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
{
"minAmount": "13",
- "weight": "50.0",
+ "weight": "80.0",
"id": "995",
"maxAmount": "13"
},
{
"minAmount": "26",
- "weight": "50.0",
+ "weight": "64.0",
"id": "995",
- "maxAmount": "35"
+ "maxAmount": "26"
},
{
"minAmount": "13",
- "weight": "50.0",
+ "weight": "176.0",
"id": "7937",
"maxAmount": "13"
},
- {
- "minAmount": "23",
- "weight": "50.0",
- "id": "7937",
- "maxAmount": "23"
- },
{
"minAmount": "7",
- "weight": "50.0",
+ "weight": "40.0",
"id": "313",
"maxAmount": "7"
},
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "176.0",
"id": "313",
"maxAmount": "15"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "221",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "4105",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "4105",
+ "weight": "8.0",
+ "id": "1",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "12070",
+ "weight": "272.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "16.0",
+ "id": "14426",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
+ "minAmount": "35",
+ "weight": "64.0",
+ "id": "995",
+ "maxAmount": "35"
}
]
},
@@ -27077,189 +23237,135 @@
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1073",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1197",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "4131",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1311",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
+ "id": "1353",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "1365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1353",
+ "weight": "1.0",
+ "id": "1197",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1073",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1163",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "4131",
"maxAmount": "1"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "3.0",
"id": "560",
"maxAmount": "5"
},
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "3.0",
"id": "560",
"maxAmount": "10"
},
- {
- "minAmount": "3",
- "weight": "12.5",
- "id": "562",
- "maxAmount": "3"
- },
{
"minAmount": "37",
- "weight": "12.5",
+ "weight": "1.0",
"id": "562",
"maxAmount": "37"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "8.0",
- "id": "5303",
+ "id": "14428",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "8.0",
- "id": "5302",
- "maxAmount": "1"
+ "minAmount": "132",
+ "weight": "40.0",
+ "id": "995",
+ "maxAmount": "132"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "44",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "220",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "11",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "11"
+ },
+ {
+ "minAmount": "460",
+ "weight": "1.0",
"id": "995",
"maxAmount": "460"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "361",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "2357",
+ "maxAmount": "1"
+ },
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1734",
"maxAmount": "10"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
+ "weight": "1.0",
"id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "16.0",
+ "weight": "4.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "31",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "5300",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "8.0",
- "id": "5304",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5295",
- "maxAmount": "1"
}
]
},
@@ -27304,193 +23410,177 @@
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "7979",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4999.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ],
"ids": "1615,4230",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1283",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
+ "id": "1365",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "1361",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1197",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1113",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1147",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "1.0",
+ "id": "1113",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "19.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "50",
- "weight": "25.0",
+ "weight": "8.0",
"id": "556",
"maxAmount": "50"
},
{
"minAmount": "7",
- "weight": "25.0",
+ "weight": "4.0",
"id": "565",
"maxAmount": "7"
},
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "6.0",
"id": "562",
"maxAmount": "10"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "1.0",
"id": "563",
"maxAmount": "3"
},
- {
- "minAmount": "30",
- "weight": "100.0",
- "id": "995",
- "maxAmount": "690"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "379",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1454",
- "maxAmount": "1"
- },
{
"minAmount": "60",
- "weight": "50.0",
+ "weight": "5.0",
"id": "7937",
"maxAmount": "60"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "2361",
"maxAmount": "1"
},
+ {
+ "minAmount": "30",
+ "weight": "7.0",
+ "id": "995",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "44",
+ "weight": "6.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "132",
+ "weight": "35.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "220",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "460",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "460"
+ },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "379",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1454",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1452",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "133",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "12070",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "22.0",
+ "weight": "2.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.2",
- "id": "4151",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "0.25",
+ "id": "4151",
"maxAmount": "1"
}
]
@@ -27536,6 +23626,20 @@
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "7977",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1999.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ],
"ids": "1616,1617,4228",
"description": "",
"main": [
@@ -27713,12 +23817,6 @@
"id": "4109",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "7977",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "5.0",
@@ -27785,200 +23883,158 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1353",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1325",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "1157",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "1325",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1181",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1109",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "4125",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1147",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1163",
- "maxAmount": "1"
- },
{
"minAmount": "60",
- "weight": "50.0",
+ "weight": "8.0",
"id": "554",
"maxAmount": "60"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "3.0",
"id": "565",
"maxAmount": "3"
},
{
"minAmount": "10",
- "weight": "25.0",
+ "weight": "5.0",
"id": "565",
"maxAmount": "10"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
+ "minAmount": "30",
+ "weight": "1.0",
+ "id": "565",
+ "maxAmount": "30"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "1.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "7.0",
"id": "995",
"maxAmount": "10"
},
{
"minAmount": "40",
- "weight": "50.0",
+ "weight": "25.0",
"id": "995",
"maxAmount": "40"
},
+ {
+ "minAmount": "120",
+ "weight": "20.0",
+ "id": "995",
+ "maxAmount": "120"
+ },
+ {
+ "minAmount": "200",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "200"
+ },
+ {
+ "minAmount": "450",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "450"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "444",
+ "weight": "10.0",
+ "id": "526",
"maxAmount": "1"
},
{
- "minAmount": "2",
- "weight": "25.0",
- "id": "526",
+ "minAmount": "1",
+ "weight": "7.0",
+ "id": "532",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "3.0",
+ "id": "532",
"maxAmount": "3"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "532",
- "maxAmount": "1"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "532",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "2293",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1635",
+ "weight": "2.0",
+ "id": "444",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "4.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "2.0",
+ "id": "5104",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "11072",
"maxAmount": "1"
}
]
@@ -28024,283 +24080,165 @@
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "114872.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "128.0",
+ "id": "7976",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "13000.0",
+ "id": "12109",
+ "maxAmount": "1"
+ }
+ ],
"ids": "1620,1621,4227",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "12.0",
"id": "1279",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "12.0",
"id": "1207",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1295",
+ "weight": "4.0",
+ "id": "4121",
"maxAmount": "1"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "4.0",
"id": "826",
"maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1069",
+ "weight": "3.0",
+ "id": "1295",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "4121",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1147",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "4117",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "2",
+ "weight": "24.0",
+ "id": "561",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "4",
+ "weight": "16.0",
+ "id": "561",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "2",
+ "weight": "12.0",
+ "id": "563",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "6",
+ "weight": "8.0",
+ "id": "561",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "2",
+ "weight": "8.0",
"id": "555",
"maxAmount": "2"
},
{
"minAmount": "7",
- "weight": "50.0",
+ "weight": "8.0",
"id": "554",
"maxAmount": "7"
},
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "561",
- "maxAmount": "2"
- },
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "561",
- "maxAmount": "4"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "563",
- "maxAmount": "2"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "563",
- "maxAmount": "3"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "50"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "40.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "72.0",
+ "id": "14430",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "5318",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "5319",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "5324",
- "maxAmount": "4"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "5322",
- "maxAmount": "3"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "5308",
- "maxAmount": "3"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "5309",
- "maxAmount": "2"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "5320",
- "maxAmount": "3"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "5323",
- "maxAmount": "4"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "5321",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5096",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "minAmount": "15",
+ "weight": "64.0",
"id": "995",
- "maxAmount": "1"
+ "maxAmount": "15"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "48.0",
"id": "995",
"maxAmount": "5"
},
+ {
+ "minAmount": "28",
+ "weight": "48.0",
+ "id": "995",
+ "maxAmount": "28"
+ },
+ {
+ "minAmount": "62",
+ "weight": "16.0",
+ "id": "995",
+ "maxAmount": "62"
+ },
+ {
+ "minAmount": "42",
+ "weight": "12.0",
+ "id": "995",
+ "maxAmount": "42"
+ },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "84.0",
"id": "225",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "12109",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "5733",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "447",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "7983",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "88.9239",
- "id": "0",
+ "weight": "8.0",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -28598,12 +24536,6 @@
"weight": "100.0",
"id": "526",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "592",
- "maxAmount": "1"
}
],
"charm": [
@@ -28648,16 +24580,10 @@
"maxAmount": "1"
},
{
- "minAmount": "12",
+ "minAmount": "15",
"weight": "50.0",
"id": "892",
- "maxAmount": "12"
- },
- {
- "minAmount": "24",
- "weight": "50.0",
- "id": "892",
- "maxAmount": "24"
+ "maxAmount": "15"
},
{
"minAmount": "1",
@@ -28673,22 +24599,10 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "15.0",
"id": "1213",
"maxAmount": "1"
},
- {
- "minAmount": "5",
- "weight": "5.0",
- "id": "830",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "1353",
- "maxAmount": "1"
- },
{
"minAmount": "37",
"weight": "50.0",
@@ -28709,21 +24623,15 @@
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "15.0",
"id": "566",
"maxAmount": "2"
},
{
- "minAmount": "3",
+ "minAmount": "5",
"weight": "25.0",
"id": "566",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "563",
- "maxAmount": "1"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -28781,7 +24689,7 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "213",
"maxAmount": "1"
},
@@ -28793,13 +24701,13 @@
},
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "25.0",
"id": "995",
"maxAmount": "15"
},
{
"minAmount": "25",
- "weight": "50.0",
+ "weight": "25.0",
"id": "995",
"maxAmount": "25"
},
@@ -28817,13 +24725,13 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "15.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "0.02822962",
"id": "3140",
"maxAmount": "1"
},
@@ -28832,6 +24740,24 @@
"weight": "100.0",
"id": "0",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "300",
+ "weight": "15.0",
+ "id": "554",
+ "maxAmount": "300"
+ },
+ {
+ "minAmount": "60",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "60"
+ },
+ {
+ "minAmount": "300",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "300"
}
]
},
@@ -28844,39 +24770,14 @@
"maxAmount": "1"
}
],
- "charm": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12158",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12159",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12160",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12163",
- "maxAmount": "1"
- }
- ],
+ "charm": [],
"ids": "1631,1632",
"description": "",
"main": [
{
"minAmount": "1",
"weight": "0.07",
- "id": "4105",
+ "id": "4115",
"maxAmount": "1"
},
{
@@ -29545,15 +25446,23 @@
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "511.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "7975",
+ "maxAmount": "1"
+ }
+ ],
"ids": "1648,1649,1650,1651,1652,1653,1654,1655,1656,1657",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1059",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "25.0",
@@ -29681,8 +25590,8 @@
"maxAmount": "1"
}
],
- "ids": "1665,6006,6007,6008,6009,6010,6011,6012,6013,6014,6015,6016,6017,6018,6019,6020,6021,6022,6023,6024,6025,6212,6213",
- "description": "",
+ "ids": "6006,6007,6008,6009,6010,6011,6012,6013,6014,6015,6016,6017,6018,6019,6020,6021,6022,6023,6024,6025,6026,6027,6028,6029,6030,6031,6032,6033,6034,6035,6036,6037,6038,6039,6040,6041,6042,6043,6044,6045,6212,6213",
+ "description": "Werewolves (and human form for Canifis)",
"main": [
{
"minAmount": "5",
@@ -30259,12 +26168,6 @@
"id": "686",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4170",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "25.0",
@@ -30545,12 +26448,6 @@
"id": "1129",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4170",
- "maxAmount": "1"
- },
{
"minAmount": "2",
"weight": "50.0",
@@ -31179,12 +27076,6 @@
"weight": "100.0",
"id": "526",
"maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "100.0",
- "id": "526",
- "maxAmount": "2"
}
],
"charm": [],
@@ -31238,12 +27129,6 @@
"weight": "50.0",
"id": "995",
"maxAmount": "15"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7910",
- "maxAmount": "1"
}
]
},
@@ -31527,7 +27412,7 @@
"maxAmount": "1"
}
],
- "ids": "1832,5750",
+ "ids": "5750",
"description": "",
"main": [
{
@@ -32047,7 +27932,7 @@
"maxAmount": "1"
}
],
- "ids": "1960,5360",
+ "ids": "1958,1961,1960,5360",
"description": "",
"main": [
{
@@ -32064,7 +27949,7 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "4675",
"maxAmount": "1"
},
@@ -32254,12 +28139,6 @@
"id": "5733",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6808",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "5.0",
@@ -32535,20 +28414,7 @@
],
"ids": "2033,4920,4921",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "7824",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [],
@@ -32586,14 +28452,7 @@
],
"ids": "2035",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -32610,60 +28469,10 @@
"maxAmount": "1"
}
],
- "charm": [
- {
- "minAmount": "1",
- "weight": "85.8093",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "10.9113",
- "id": "12158",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.6775",
- "id": "12159",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.6019",
- "id": "12160",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "0.0",
- "id": "12163",
- "maxAmount": "1"
- }
- ],
- "ids": "2044,2045,2046,2047,2048,2049,2051,2052,2053,2054,2055",
+ "charm": [],
+ "ids": "2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,2055,2056,2057",
"description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7850",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "85.8093",
- "id": "0",
- "maxAmount": "1"
- }
- ]
+ "main": []
},
{
"default": [
@@ -33072,13 +28881,13 @@
"main": [
{
"minAmount": "100",
- "weight": "50.0",
+ "weight": "99.0",
"id": "995",
"maxAmount": "100"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
@@ -33220,7 +29029,7 @@
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "6.11111",
"id": "5733",
"maxAmount": "1"
},
@@ -33597,6 +29406,18 @@
"id": "1438",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1456",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1450",
+ "maxAmount": "1"
+ },
{
"minAmount": "1",
"weight": "25.0",
@@ -33769,6 +29590,18 @@
"id": "1438",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1456",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1450",
+ "maxAmount": "1"
+ },
{
"minAmount": "1",
"weight": "25.0",
@@ -33941,6 +29774,18 @@
"id": "1438",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1456",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1450",
+ "maxAmount": "1"
+ },
{
"minAmount": "1",
"weight": "25.0",
@@ -34876,22 +30721,23 @@
},
{
"default": [],
- "charm": [],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "40.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "88.0",
+ "id": "12168",
+ "maxAmount": "1"
+ }
+ ],
"ids": "2591,2592,2593,2594,2595,2596,2597,7753",
"description": "",
"main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1387",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "6568",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "1.0",
@@ -34899,300 +30745,266 @@
"maxAmount": "1"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6568",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "25",
+ "weight": "256.0",
"id": "557",
- "maxAmount": "80"
+ "maxAmount": "25"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "25",
+ "weight": "256.0",
"id": "554",
- "maxAmount": "80"
+ "maxAmount": "25"
},
{
- "minAmount": "10",
- "weight": "25.0",
+ "minAmount": "25",
+ "weight": "128.0",
"id": "556",
- "maxAmount": "80"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "555",
- "maxAmount": "80"
+ "maxAmount": "25"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "64.0",
"id": "562",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "561",
- "maxAmount": "8"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "563",
"maxAmount": "5"
},
{
- "minAmount": "1",
- "weight": "5.0",
+ "minAmount": "2",
+ "weight": "64.0",
+ "id": "561",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "2",
+ "weight": "32.0",
"id": "560",
- "maxAmount": "6"
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "565",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4697",
- "maxAmount": "10"
- },
- {
- "minAmount": "10",
- "weight": "5.0",
- "id": "4699",
- "maxAmount": "40"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1442",
+ "weight": "8.0",
+ "id": "1617",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "32.0",
+ "id": "1619",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "64.0",
+ "id": "1621",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "128.0",
+ "id": "1623",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "160.0",
+ "id": "9194",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "100",
+ "weight": "1280.0",
+ "id": "6529",
+ "maxAmount": "1000"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1622.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "40.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "88.0",
+ "id": "12168",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "2598,2599,2600,2601,2602,2603,7754,7767,7768,7769",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "2347",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "1755",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "946",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "1935",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "1931",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1617",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1619",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "1621",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "1623",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "20.0",
+ "id": "9194",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "100",
+ "weight": "160.0",
"id": "6529",
"maxAmount": "700"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "12168",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "9194",
- "maxAmount": "1"
- },
- {
- "minAmount": "4",
- "weight": "5.0",
- "id": "7936",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "263.0",
+ "id": "0",
"maxAmount": "1"
}
]
},
{
"default": [],
- "charm": [],
- "ids": "2598,2599,2600,2601,2602,2603,7754,7767,7768,7769",
- "description": "",
- "main": [
- {
- "minAmount": "150",
- "weight": "50.0",
- "id": "6529",
- "maxAmount": "800"
- },
+ "charm": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "12168",
+ "weight": "40.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "88.0",
"id": "12168",
"maxAmount": "2"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "1775",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "149",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "161",
- "maxAmount": "1"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "1780",
- "maxAmount": "12"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1391",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "5.0",
- "id": "1744",
- "maxAmount": "3"
- },
- {
- "minAmount": "3",
- "weight": "5.0",
- "id": "1741",
- "maxAmount": "3"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "1738",
- "maxAmount": "8"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "7936",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "379",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "9194",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
}
- ]
- },
- {
- "default": [],
- "charm": [],
+ ],
"ids": "2604,2605,2606,2607,2608,2609,7755",
"description": "",
"main": [
{
"minAmount": "9",
- "weight": "0.665",
+ "weight": "1.0",
"id": "6522",
- "maxAmount": "19"
+ "maxAmount": "29"
},
{
"minAmount": "1",
- "weight": "0.665",
+ "weight": "1.0",
"id": "6523",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.665",
+ "weight": "1.0",
"id": "6525",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.665",
+ "weight": "1.0",
"id": "6568",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "149",
+ "weight": "1.0",
+ "id": "1617",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "161",
+ "weight": "4.0",
+ "id": "1619",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "167",
- "maxAmount": "1"
- },
- {
- "minAmount": "100",
- "weight": "50.0",
- "id": "6529",
- "maxAmount": "2000"
- },
- {
- "minAmount": "15000",
- "weight": "0.665",
- "id": "6529",
- "maxAmount": "15000"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "12168",
+ "weight": "8.0",
+ "id": "1621",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "7054",
+ "weight": "16.0",
+ "id": "1623",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "379",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "20.0",
"id": "9194",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
+ "minAmount": "100",
+ "weight": "160.0",
+ "id": "6529",
+ "maxAmount": "2000"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "299.0",
"id": "0",
"maxAmount": "1"
}
@@ -35200,420 +31012,85 @@
},
{
"default": [],
- "charm": [],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "40.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "88.0",
+ "id": "12168",
+ "maxAmount": "2"
+ }
+ ],
"ids": "2610,2611,2612,2613,2614,2615,2616,2624,2625",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "0.675",
+ "weight": "1.0",
"id": "6528",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.675",
+ "weight": "1.0",
"id": "6524",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.675",
+ "weight": "1.0",
"id": "6568",
"maxAmount": "1"
},
- {
- "minAmount": "12",
- "weight": "5.0",
- "id": "562",
- "maxAmount": "12"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "149",
+ "weight": "1.0",
+ "id": "1617",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "161",
+ "weight": "4.0",
+ "id": "1619",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "167",
+ "weight": "8.0",
+ "id": "1621",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "1623",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "20.0",
+ "id": "9194",
"maxAmount": "1"
},
{
"minAmount": "100",
- "weight": "50.0",
+ "weight": "160.0",
"id": "6529",
"maxAmount": "2000"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "12168",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7054",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "379",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "9194",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "300.0",
"id": "0",
"maxAmount": "1"
}
]
},
- {
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "526",
- "maxAmount": "1"
- }
- ],
- "charm": [],
- "ids": "2683",
- "description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "313",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12070",
- "maxAmount": "1"
- }
- ]
- },
- {
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "526",
- "maxAmount": "1"
- }
- ],
- "charm": [],
- "ids": "2684",
- "description": "",
- "main": [
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1139",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "313",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- }
- ]
- },
{
"default": [
{
@@ -36255,211 +31732,183 @@
"maxAmount": "1"
}
],
- "ids": "2783",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1367",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1313",
+ "weight": "9973.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1361",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1183",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1113",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1163",
- "maxAmount": "1"
- },
- {
- "minAmount": "47",
- "weight": "25.0",
- "id": "556",
- "maxAmount": "47"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "10"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "7"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "2"
- },
- {
- "minAmount": "64",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "64"
- },
- {
- "minAmount": "95",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "95"
- },
- {
- "minAmount": "152",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "152"
- },
- {
- "minAmount": "220",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "220"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "121",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "385",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1456",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2361",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "10977",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "26.6",
- "id": "31",
+ "weight": "2.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "2783",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "1313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.13",
+ "weight": "12.0",
+ "id": "1367",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "1361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1183",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1113",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1163",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "11235",
"maxAmount": "1"
},
+ {
+ "minAmount": "47",
+ "weight": "32.0",
+ "id": "556",
+ "maxAmount": "47"
+ },
+ {
+ "minAmount": "10",
+ "weight": "28.0",
+ "id": "562",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "3",
+ "weight": "20.0",
+ "id": "560",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "7",
+ "weight": "16.0",
+ "id": "565",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "5",
+ "weight": "4.0",
+ "id": "560",
+ "maxAmount": "5"
+ },
{
"minAmount": "1",
- "weight": "150.0",
- "id": "0",
+ "weight": "60.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "16.0",
+ "id": "14424",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "152",
+ "weight": "159.0",
+ "id": "995",
+ "maxAmount": "152"
+ },
+ {
+ "minAmount": "64",
+ "weight": "24.0",
+ "id": "995",
+ "maxAmount": "64"
+ },
+ {
+ "minAmount": "95",
+ "weight": "24.0",
+ "id": "995",
+ "maxAmount": "95"
+ },
+ {
+ "minAmount": "220",
+ "weight": "20.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "1",
+ "weight": "12.0",
+ "id": "385",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "2361",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1456",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "121",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "4.0",
+ "id": "385",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "12.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "12.0",
+ "id": "31",
"maxAmount": "1"
}
]
@@ -37522,298 +32971,190 @@
"description": "",
"main": [
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1357",
- "maxAmount": "1"
+ "minAmount": "25",
+ "weight": "10.0",
+ "id": "866",
+ "maxAmount": "50"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1303",
+ "weight": "7.0",
+ "id": "2489",
"maxAmount": "1"
},
{
- "minAmount": "1",
+ "minAmount": "5",
"weight": "5.0",
+ "id": "805",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "10",
+ "weight": "5.0",
+ "id": "810",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "200",
+ "weight": "5.0",
+ "id": "863",
+ "maxAmount": "500"
+ },
+ {
+ "minAmount": "50",
+ "weight": "5.0",
+ "id": "865",
+ "maxAmount": "150"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "3757",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1373",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1319",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6724",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "6739",
- "maxAmount": "1"
- },
- {
- "minAmount": "218",
- "weight": "50.0",
- "id": "884",
- "maxAmount": "590"
- },
- {
- "minAmount": "54",
- "weight": "50.0",
- "id": "886",
- "maxAmount": "98"
- },
- {
- "minAmount": "214",
- "weight": "35.0",
- "id": "863",
- "maxAmount": "500"
- },
- {
- "minAmount": "54",
- "weight": "35.0",
- "id": "865",
- "maxAmount": "90"
- },
- {
- "minAmount": "31",
- "weight": "35.0",
- "id": "866",
- "maxAmount": "69"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "805",
- "maxAmount": "7"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "830",
- "maxAmount": "10"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "9144",
- "maxAmount": "14"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2489",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "6133",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "6135",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "3758",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "3748",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "3758",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6724",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6739",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "3749",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6133",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6135",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6733",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "5.0",
+ "id": "9144",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "50",
+ "weight": "5.0",
+ "id": "886",
+ "maxAmount": "250"
+ },
+ {
+ "minAmount": "200",
+ "weight": "4.0",
+ "id": "884",
+ "maxAmount": "500"
+ },
+ {
+ "minAmount": "1",
+ "weight": "7.0",
+ "id": "14428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "156",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "156"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "413",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "10",
+ "weight": "5.0",
+ "id": "45",
+ "maxAmount": "30"
+ },
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "5.0",
"id": "385",
"maxAmount": "5"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1438",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1448",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1442",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1446",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1454",
- "maxAmount": "1"
- },
- {
- "minAmount": "246",
- "weight": "75.0",
- "id": "995",
- "maxAmount": "3000"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "45",
- "maxAmount": "3"
- },
- {
- "minAmount": "94",
- "weight": "25.0",
- "id": "1516",
- "maxAmount": "94"
- },
- {
- "minAmount": "91",
- "weight": "25.0",
- "id": "1518",
- "maxAmount": "125"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "413",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
"id": "207",
"maxAmount": "1"
},
{
- "minAmount": "1",
+ "minAmount": "50",
"weight": "5.0",
- "id": "314",
- "maxAmount": "200"
+ "id": "1518",
+ "maxAmount": "150"
+ },
+ {
+ "minAmount": "50",
+ "weight": "3.0",
+ "id": "1516",
+ "maxAmount": "150"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "9431",
"maxAmount": "1"
},
+ {
+ "minAmount": "250",
+ "weight": "1.0",
+ "id": "314",
+ "maxAmount": "500"
+ },
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
"id": "31",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6733",
- "maxAmount": "1"
}
]
},
@@ -37838,207 +33179,195 @@
"main": [
{
"minAmount": "1",
- "weight": "75.0",
- "id": "1397",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "75.0",
+ "weight": "10.0",
"id": "1399",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "75.0",
+ "weight": "5.0",
"id": "1395",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "6562",
+ "weight": "4.0",
+ "id": "1397",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1392",
"maxAmount": "10"
},
{
"minAmount": "1",
- "weight": "20.0",
- "id": "6739",
+ "weight": "1.0",
+ "id": "3757",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1439",
- "maxAmount": "80"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1441",
- "maxAmount": "80"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1445",
- "maxAmount": "80"
- },
- {
- "minAmount": "155",
- "weight": "25.0",
- "id": "556",
- "maxAmount": "155"
- },
- {
- "minAmount": "32",
- "weight": "25.0",
- "id": "4698",
- "maxAmount": "32"
- },
- {
- "minAmount": "22",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "85"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "3758",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "3748",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "3758",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6562",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6739",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3755",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "6139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "6141",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "3755",
+ "weight": "1.0",
+ "id": "6731",
"maxAmount": "1"
},
{
- "minAmount": "256",
- "weight": "75.0",
- "id": "995",
- "maxAmount": "3000"
+ "minAmount": "100",
+ "weight": "6.0",
+ "id": "556",
+ "maxAmount": "200"
},
{
"minAmount": "50",
- "weight": "75.0",
- "id": "7937",
+ "weight": "5.0",
+ "id": "557",
"maxAmount": "100"
},
+ {
+ "minAmount": "25",
+ "weight": "2.0",
+ "id": "565",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "25",
+ "weight": "2.0",
+ "id": "563",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "25",
+ "weight": "2.0",
+ "id": "561",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "25",
+ "weight": "2.0",
+ "id": "560",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "25",
+ "weight": "2.0",
+ "id": "4698",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "1",
+ "weight": "7.0",
+ "id": "14428",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "25",
+ "weight": "10.0",
+ "id": "1441",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "25",
+ "weight": "7.0",
+ "id": "1439",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "25",
+ "weight": "7.0",
+ "id": "1445",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "5",
+ "weight": "10.0",
+ "id": "385",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "413",
+ "maxAmount": "1"
+ },
{
"minAmount": "150",
- "weight": "50.0",
+ "weight": "5.0",
"id": "7937",
"maxAmount": "150"
},
{
"minAmount": "1",
- "weight": "75.0",
+ "weight": "5.0",
"id": "207",
"maxAmount": "1"
},
+ {
+ "minAmount": "972",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "972"
+ },
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5281",
+ "weight": "10.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "31",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6731",
- "maxAmount": "1"
}
]
},
@@ -38063,223 +33392,223 @@
"main": [
{
"minAmount": "1",
- "weight": "55.0",
- "id": "3757",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1343",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1357",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1315",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1359",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1373",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
- "id": "6739",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "17.0",
"id": "1193",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "11.0",
+ "id": "1343",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "7.0",
+ "id": "1357",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
"id": "1119",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1273",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
"id": "1123",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "3758",
+ "weight": "2.0",
+ "id": "3757",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
+ "id": "1359",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6739",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "3748",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "6737",
+ "weight": "1.0",
+ "id": "3758",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "6735",
+ "weight": "1.0",
+ "id": "1315",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "2570",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "6129",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "6130",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "147",
+ "weight": "1.0",
+ "id": "6737",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "159",
+ "weight": "1.0",
+ "id": "6735",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "165",
+ "weight": "1.0",
+ "id": "2456",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "1.0",
"id": "141",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "191",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "129",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2361",
+ "weight": "1.0",
+ "id": "147",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "159",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "165",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "191",
"maxAmount": "1"
},
{
"minAmount": "25",
- "weight": "25.0",
+ "weight": "10.0",
"id": "448",
"maxAmount": "25"
},
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "2361",
+ "maxAmount": "1"
+ },
{
"minAmount": "100",
- "weight": "25.0",
+ "weight": "2.0",
"id": "454",
"maxAmount": "100"
},
{
"minAmount": "150",
- "weight": "5.0",
+ "weight": "1.0",
"id": "441",
"maxAmount": "150"
},
{
"minAmount": "15",
- "weight": "5.0",
+ "weight": "1.0",
"id": "2354",
- "maxAmount": "38"
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "156",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "156"
+ },
+ {
+ "minAmount": "1",
+ "weight": "7.0",
+ "id": "207",
+ "maxAmount": "1"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "7.0",
"id": "365",
"maxAmount": "5"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "4.0",
"id": "373",
"maxAmount": "5"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "1.0",
"id": "385",
"maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "207",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "75.0",
- "id": "1446",
+ "weight": "10.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "75.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "156",
- "weight": "75.0",
- "id": "995",
- "maxAmount": "3000"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "31",
"maxAmount": "1"
}
@@ -38599,260 +33928,196 @@
"maxAmount": "2"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "9999.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "11286",
+ "maxAmount": "1"
+ }
+ ],
"ids": "3068,3069,3070,3071",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1285",
+ "weight": "16.0",
+ "id": "1283",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "1361",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1357",
+ "weight": "8.0",
+ "id": "6324",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "4.0",
"id": "1399",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "6809",
"maxAmount": "1"
},
+ {
+ "minAmount": "2",
+ "weight": "8.0",
+ "id": "8882",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "2",
+ "weight": "8.0",
+ "id": "9142",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "2",
+ "weight": "8.0",
+ "id": "9144",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "10",
+ "weight": "28.0",
+ "id": "566",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "30",
+ "weight": "16.0",
+ "id": "556",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "30",
+ "weight": "16.0",
+ "id": "555",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "7",
+ "weight": "16.0",
+ "id": "565",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "3",
+ "weight": "4.0",
+ "id": "563",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "1",
+ "weight": "48.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "16.0",
+ "id": "14422",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "132",
+ "weight": "139.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "220",
+ "weight": "36.0",
+ "id": "995",
+ "maxAmount": "220"
+ },
+ {
+ "minAmount": "30",
+ "weight": "28.0",
+ "id": "995",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "44",
+ "weight": "24.0",
+ "id": "995",
+ "maxAmount": "44"
+ },
+ {
+ "minAmount": "460",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "460"
+ },
{
"minAmount": "60",
- "weight": "25.0",
+ "weight": "20.0",
"id": "7937",
"maxAmount": "60"
},
- {
- "minAmount": "11",
- "weight": "25.0",
- "id": "556",
- "maxAmount": "64"
- },
- {
- "minAmount": "13",
- "weight": "25.0",
- "id": "555",
- "maxAmount": "33"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "10"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "563",
- "maxAmount": "5"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "11"
- },
- {
- "minAmount": "5",
- "weight": "5.0",
- "id": "566",
- "maxAmount": "14"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "8882",
- "maxAmount": "26"
- },
- {
- "minAmount": "8",
- "weight": "50.0",
- "id": "9142",
- "maxAmount": "32"
- },
- {
- "minAmount": "7",
- "weight": "50.0",
- "id": "9143",
- "maxAmount": "29"
- },
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "9144",
- "maxAmount": "22"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5300",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "5295",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "20",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "420"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "379",
- "maxAmount": "3"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "149",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "133",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "4.0",
"id": "9463",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5680",
+ "weight": "8.0",
+ "id": "379",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "4.0",
+ "id": "1454",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1452",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "133",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "12070",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "20.0",
+ "id": "14426",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
"id": "31",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "0.12",
- "id": "11286",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -39018,153 +34283,93 @@
"main": [
{
"minAmount": "1",
- "weight": "100.0",
- "id": "1215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
+ "weight": "6.0",
"id": "7158",
"maxAmount": "1"
},
{
"minAmount": "500",
- "weight": "98.0",
+ "weight": "50.0",
"id": "556",
"maxAmount": "500"
},
{
- "minAmount": "75",
- "weight": "98.0",
+ "minAmount": "50",
+ "weight": "25.0",
"id": "565",
- "maxAmount": "75"
+ "maxAmount": "50"
},
{
- "minAmount": "250",
- "weight": "98.0",
+ "minAmount": "100",
+ "weight": "50.0",
"id": "562",
- "maxAmount": "250"
+ "maxAmount": "100"
},
{
- "minAmount": "125",
- "weight": "98.0",
+ "minAmount": "50",
+ "weight": "25.0",
"id": "560",
- "maxAmount": "125"
+ "maxAmount": "50"
+ },
+ {
+ "minAmount": "200",
+ "weight": "25.0",
+ "id": "892",
+ "maxAmount": "200"
+ },
+ {
+ "minAmount": "1",
+ "weight": "100.0",
+ "id": "464",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "100.0",
+ "id": "2446",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "100.0",
+ "id": "187",
+ "maxAmount": "1"
},
{
"minAmount": "300",
- "weight": "100.0",
- "id": "809",
+ "weight": "150.0",
+ "id": "995",
"maxAmount": "300"
},
- {
- "minAmount": "150",
- "weight": "100.0",
- "id": "892",
- "maxAmount": "150"
- },
{
"minAmount": "1",
- "weight": "10.0",
- "id": "199",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
- "id": "201",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
- "id": "203",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "7.5",
- "id": "205",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "3.0",
- "id": "209",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "2.0",
- "id": "211",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "2.0",
- "id": "213",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "215",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "2485",
- "maxAmount": "4"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "100.0",
- "id": "465",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "98.0",
- "id": "5952",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "98.0",
- "id": "5940",
- "maxAmount": "1"
- },
- {
- "minAmount": "7500",
- "weight": "105.0",
- "id": "995",
- "maxAmount": "7500"
- },
- {
- "minAmount": "1",
- "weight": "10.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "8.0",
- "id": "5733",
+ "weight": "6.0",
+ "id": "12070",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "400",
+ "weight": "50.0",
+ "id": "809",
+ "maxAmount": "400"
+ },
+ {
+ "minAmount": "500",
+ "weight": "25.0",
+ "id": "884",
+ "maxAmount": "500"
+ },
+ {
+ "minAmount": "1000",
+ "weight": "25.0",
+ "id": "884",
+ "maxAmount": "1000"
}
]
},
@@ -39397,352 +34602,245 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "555",
- "maxAmount": "7"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "4"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "9",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "9"
- },
- {
- "minAmount": "2",
- "weight": "5.0",
- "id": "562",
- "maxAmount": "2"
- },
- {
- "minAmount": "7",
- "weight": "5.0",
- "id": "559",
- "maxAmount": "7"
- },
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "12"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1381",
+ "weight": "1.0",
+ "id": "1203",
"maxAmount": "1"
},
+ {
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
+ },
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "23.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "37.0",
"id": "995",
- "maxAmount": "40"
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1438",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "436",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "438",
+ "weight": "2.0",
+ "id": "1440",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
]
},
{
- "default": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
"charm": [],
"ids": "3237",
"description": "",
"main": [
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "12"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "4"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "9",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "13"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "3"
- },
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1440",
+ "weight": "1.0",
+ "id": "1203",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "313",
- "maxAmount": "1"
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "436",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
+ {
+ "minAmount": "3",
+ "weight": "37.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1965",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "2714",
+ "id": "313",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
}
]
@@ -39760,171 +34858,117 @@
"ids": "3238",
"description": "",
"main": [
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "2"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
- "id": "557",
- "maxAmount": "4"
- },
- {
- "minAmount": "6",
- "weight": "25.0",
- "id": "554",
- "maxAmount": "6"
- },
- {
- "minAmount": "9",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "9"
- },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1203",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "22.0",
"id": "877",
"maxAmount": "12"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "37.0",
"id": "995",
"maxAmount": "3"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "9.0",
"id": "995",
"maxAmount": "5"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "313",
- "maxAmount": "1"
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
+ "id": "313",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
@@ -39943,293 +34987,246 @@
"ids": "3239",
"description": "",
"main": [
- {
- "minAmount": "7",
- "weight": "25.0",
- "id": "882",
- "maxAmount": "7"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "877",
- "maxAmount": "12"
- },
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1203",
"maxAmount": "1"
},
{
"minAmount": "2",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "2"
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
},
{
"minAmount": "4",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "4"
- },
- {
- "minAmount": "4",
- "weight": "25.0",
+ "weight": "2.0",
"id": "557",
"maxAmount": "4"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
{
"minAmount": "6",
- "weight": "25.0",
+ "weight": "2.0",
"id": "554",
"maxAmount": "6"
},
{
"minAmount": "9",
- "weight": "25.0",
+ "weight": "2.0",
"id": "558",
"maxAmount": "9"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "23.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "37.0",
"id": "995",
"maxAmount": "3"
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "9.0",
"id": "995",
"maxAmount": "5"
},
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1965",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
"id": "313",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
]
},
{
- "default": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
"charm": [],
"ids": "3240,5025,5048",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "3"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "995",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "2.0",
"id": "1139",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "436",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "1.0",
"id": "1203",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "1965",
- "maxAmount": "1"
+ "minAmount": "2",
+ "weight": "22.0",
+ "id": "877",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "7",
+ "weight": "3.0",
+ "id": "882",
+ "maxAmount": "7"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "554",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "9",
+ "weight": "2.0",
+ "id": "558",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "2",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "313",
+ "weight": "23.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "37.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "5",
+ "weight": "9.0",
+ "id": "995",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "15",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "25",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
+ "id": "313",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "436",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1965",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "1",
"maxAmount": "1"
}
@@ -40253,7 +35250,7 @@
"minAmount": "1",
"weight": "100.0",
"id": "7418",
- "maxAmount": "6"
+ "maxAmount": "3"
}
],
"charm": [
@@ -40345,18 +35342,6 @@
"id": "1369",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1373",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1319",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "50.0",
@@ -40365,7 +35350,7 @@
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "25.0",
"id": "1147",
"maxAmount": "1"
},
@@ -40375,24 +35360,6 @@
"id": "1725",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1185",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2359",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "385",
- "maxAmount": "5"
- },
{
"minAmount": "100",
"weight": "25.0",
@@ -40401,31 +35368,25 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "6.0",
"id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "413",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "6.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "6.0",
"id": "10977",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
},
@@ -40434,6 +35395,30 @@
"weight": "25.0",
"id": "441",
"maxAmount": "100"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "1315",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "2359",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "407",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "4",
+ "weight": "25.0",
+ "id": "385",
+ "maxAmount": "4"
}
]
},
@@ -40811,14 +35796,7 @@
]
},
{
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "592",
- "maxAmount": "1"
- }
- ],
+ "default": [],
"charm": [
{
"minAmount": "1",
@@ -40854,238 +35832,46 @@
"ids": "3406,6217,7714,7715",
"description": "",
"main": [
- {
- "minAmount": "2",
- "weight": "50.0",
- "id": "882",
- "maxAmount": "9"
- },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "877",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1155",
+ "weight": "111.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1351",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1139",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1277",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1265",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "884",
+ "weight": "4.0",
+ "id": "555",
"maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1101",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1349",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1267",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "886",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1141",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1353",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1269",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1381",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1383",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "288",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1993",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1913",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1891",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1917",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6794",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "1.0",
"id": "556",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "555",
- "maxAmount": "11"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "562",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "560",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "4.0",
"id": "995",
- "maxAmount": "40"
+ "maxAmount": "30"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "2355",
+ "weight": "4.0",
+ "id": "995",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "442",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1718",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1444",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5733",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6691",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "193",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1716",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "5.0",
- "id": "2",
- "maxAmount": "40"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "1",
"maxAmount": "1"
}
]
@@ -42375,7 +37161,7 @@
{
"minAmount": "4",
"weight": "25.0",
- "id": "4150",
+ "id": "4160",
"maxAmount": "5"
},
{
@@ -42981,12 +37767,6 @@
"id": "1129",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4170",
- "maxAmount": "1"
- },
{
"minAmount": "2",
"weight": "50.0",
@@ -43411,7 +38191,7 @@
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1197",
"maxAmount": "1"
},
@@ -43421,12 +38201,6 @@
"id": "1213",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1247",
- "maxAmount": "1"
- },
{
"minAmount": "1",
"weight": "25.0",
@@ -43435,19 +38209,19 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "1199",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.5",
+ "weight": "2.73581",
"id": "8901",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "25.0",
"id": "5281",
"maxAmount": "1"
},
@@ -43459,7 +38233,7 @@
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "25.0",
"id": "5296",
"maxAmount": "1"
},
@@ -43471,7 +38245,7 @@
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "25.0",
"id": "5297",
"maxAmount": "1"
},
@@ -43489,7 +38263,7 @@
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "10.0",
"id": "5106",
"maxAmount": "1"
},
@@ -43543,25 +38317,25 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
"id": "5321",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "10.0",
"id": "5302",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
"id": "5303",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
"id": "5304",
"maxAmount": "1"
},
@@ -43615,43 +38389,43 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "215",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
"id": "217",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
"id": "2485",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "50.0",
+ "weight": "25.0",
"id": "561",
- "maxAmount": "6"
+ "maxAmount": "3"
},
{
"minAmount": "50",
- "weight": "5.0",
+ "weight": "25.0",
"id": "554",
"maxAmount": "50"
},
{
"minAmount": "44",
- "weight": "50.0",
+ "weight": "25.0",
"id": "995",
- "maxAmount": "495"
+ "maxAmount": "44"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "100.0",
"id": "225",
"maxAmount": "1"
},
@@ -43665,37 +38439,55 @@
"minAmount": "2",
"weight": "25.0",
"id": "6332",
- "maxAmount": "4"
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "5733",
+ "weight": "12.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "10977",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
+ "minAmount": "4",
+ "weight": "25.0",
+ "id": "561",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "6",
+ "weight": "25.0",
+ "id": "561",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "132",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "440",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "440"
}
]
},
@@ -44668,171 +39460,155 @@
]
},
{
- "default": [],
- "charm": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "532",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "14426",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "9016",
+ "maxAmount": "1"
+ }
+ ],
"ids": "4418,6218",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1083",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1069",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1147",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1113",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1309",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "3.0",
"id": "3192",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
+ "id": "1309",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
"id": "802",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1365",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "3.0",
"id": "803",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "199",
+ "weight": "2.0",
+ "id": "5670",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "201",
+ "weight": "1.0",
+ "id": "1365",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "203",
+ "weight": "1.0",
+ "id": "1083",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "205",
+ "weight": "1.0",
+ "id": "1199",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "207",
+ "weight": "1.0",
+ "id": "1113",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
+ "weight": "16.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "27",
- "weight": "50.0",
+ "weight": "5.0",
"id": "995",
"maxAmount": "27"
},
{
"minAmount": "97",
- "weight": "50.0",
+ "weight": "5.0",
"id": "995",
"maxAmount": "97"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "9016",
- "maxAmount": "1"
+ "minAmount": "104",
+ "weight": "29.0",
+ "id": "995",
+ "maxAmount": "104"
+ },
+ {
+ "minAmount": "132",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "132"
+ },
+ {
+ "minAmount": "286",
+ "weight": "10.0",
+ "id": "995",
+ "maxAmount": "286"
+ },
+ {
+ "minAmount": "475",
+ "weight": "8.0",
+ "id": "995",
+ "maxAmount": "475"
+ },
+ {
+ "minAmount": "4",
+ "weight": "2.0",
+ "id": "5625",
+ "maxAmount": "4"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "2570",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "id": "14426",
"maxAmount": "1"
}
]
@@ -45027,7 +39803,20 @@
]
},
{
- "default": [],
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "532",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "9080",
+ "maxAmount": "1"
+ }
+ ],
"charm": [
{
"minAmount": "1",
@@ -45095,7 +39884,7 @@
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "2.12595",
"id": "12070",
"maxAmount": "1"
},
@@ -45956,430 +40745,232 @@
"ids": "5361",
"description": "",
"main": [
- {
- "minAmount": "90",
- "weight": "50.0",
- "id": "555",
- "maxAmount": "90"
- },
- {
- "minAmount": "4",
- "weight": "50.0",
- "id": "565",
- "maxAmount": "12"
- },
- {
- "minAmount": "9",
- "weight": "25.0",
- "id": "560",
- "maxAmount": "19"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "4695",
- "maxAmount": "10"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "4698",
- "maxAmount": "9"
- },
- {
- "minAmount": "3",
- "weight": "25.0",
- "id": "4694",
- "maxAmount": "12"
- },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "5298",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5281",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5280",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5301",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5294",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5297",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5104",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5299",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5302",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5100",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5292",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5106",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "12176",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5323",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5293",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5296",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5105",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5311",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "5321",
- "maxAmount": "9"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5295",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "5303",
- "maxAmount": "1"
- },
- {
- "minAmount": "90",
- "weight": "50.0",
- "id": "888",
- "maxAmount": "90"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1111",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1159",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "9419",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1343",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1147",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
+ "weight": "6.0",
"id": "1383",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "4.0",
"id": "1395",
"maxAmount": "1"
},
{
- "minAmount": "15",
- "weight": "25.0",
- "id": "9337",
- "maxAmount": "15"
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1111",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
+ "id": "1343",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1159",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "9418",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1147",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "2487",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "1123",
"maxAmount": "1"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "10"
+ "minAmount": "90",
+ "weight": "8.0",
+ "id": "888",
+ "maxAmount": "90"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
+ "minAmount": "90",
+ "weight": "6.0",
+ "id": "555",
+ "maxAmount": "90"
},
{
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "2"
+ "minAmount": "15",
+ "weight": "5.0",
+ "id": "9337",
+ "maxAmount": "15"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
+ "minAmount": "9",
+ "weight": "5.0",
+ "id": "560",
+ "maxAmount": "19"
},
{
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "445",
- "maxAmount": "6"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "448",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "8"
- },
- {
- "minAmount": "2",
- "weight": "25.0",
- "id": "2359",
- "maxAmount": "2"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1624",
- "maxAmount": "4"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "377",
+ "minAmount": "4",
+ "weight": "3.0",
+ "id": "565",
"maxAmount": "12"
},
{
"minAmount": "3",
- "weight": "25.0",
- "id": "383",
- "maxAmount": "6"
+ "weight": "2.0",
+ "id": "4695",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "3",
+ "weight": "2.0",
+ "id": "4698",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "3",
+ "weight": "1.0",
+ "id": "4694",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "2",
+ "weight": "9.0",
+ "id": "14424",
+ "maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "385",
+ "weight": "4.0",
+ "id": "14422",
"maxAmount": "1"
},
{
- "minAmount": "97",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "5321",
+ "maxAmount": "9"
+ },
+ {
+ "minAmount": "96",
+ "weight": "10.0",
"id": "995",
- "maxAmount": "692"
+ "maxAmount": "696"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "448",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "3",
+ "weight": "1.0",
+ "id": "2354",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "2",
+ "weight": "2.0",
+ "id": "2359",
+ "maxAmount": "2"
},
{
"minAmount": "5",
- "weight": "50.0",
+ "weight": "8.0",
"id": "572",
"maxAmount": "10"
},
- {
- "minAmount": "20",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "20"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "407",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "402",
- "maxAmount": "29"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1444",
- "maxAmount": "1"
- },
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "4.0",
"id": "228",
"maxAmount": "10"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "6672",
+ "weight": "4.0",
+ "id": "1444",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "3.0",
+ "id": "377",
+ "maxAmount": "12"
+ },
+ {
+ "minAmount": "3",
+ "weight": "3.0",
+ "id": "383",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "385",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "20",
+ "weight": "2.0",
+ "id": "232",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "10",
+ "weight": "2.0",
+ "id": "402",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "407",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "193",
- "maxAmount": "1"
- },
- {
- "minAmount": "11",
- "weight": "5.0",
- "id": "2",
- "maxAmount": "27"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "6691",
+ "weight": "2.0",
+ "id": "6667",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "2.0",
+ "id": "1624",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "0",
+ "weight": "1.0",
+ "id": "5295",
"maxAmount": "1"
}
]
@@ -46860,13 +41451,13 @@
},
{
"minAmount": "1",
- "weight": "0.0768",
+ "weight": "0.07570993",
"id": "11286",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.025",
+ "weight": "0.0236593552",
"id": "11335",
"maxAmount": "1"
},
@@ -48861,280 +43452,6 @@
}
]
},
- {
- "default": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "2859",
- "maxAmount": "1"
- }
- ],
- "charm": [
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12158",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12159",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12160",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "12163",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
- }
- ],
- "ids": "6028",
- "description": "",
- "main": [
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "2138",
- "maxAmount": "5"
- },
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "2132",
- "maxAmount": "5"
- },
- {
- "minAmount": "5",
- "weight": "50.0",
- "id": "2136",
- "maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1993",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1325",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "1353",
- "maxAmount": "1"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "886",
- "maxAmount": "50"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1157",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1329",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1181",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1109",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1147",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "830",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "209",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "10",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "10"
- },
- {
- "minAmount": "90",
- "weight": "50.0",
- "id": "995",
- "maxAmount": "90"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "6814",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "958",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "7868",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
- "id": "227",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "245",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "983",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "239",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1925",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "440",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "31",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "0",
- "maxAmount": "1"
- }
- ]
- },
{
"default": [],
"charm": [],
@@ -50329,71 +44646,71 @@
}
],
"ids": "6203",
- "description": "",
+ "description": "K'ril Tsutsaroth (Zamorak GWD Boss)",
"main": [
{
"minAmount": "1",
- "weight": "1.45",
+ "weight": "8.112",
"id": "11716",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.85",
+ "weight": "1.92128",
"id": "11708",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.7",
+ "weight": "1.352",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.7",
+ "weight": "1.352",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.7",
+ "weight": "1.352",
"id": "11714",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.45",
+ "weight": "8.0",
"id": "11736",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "3.3",
+ "weight": "25.0",
"id": "5698",
"maxAmount": "1"
},
{
"minAmount": "295",
- "weight": "25.0",
+ "weight": "100.0",
"id": "5626",
"maxAmount": "300"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "100.0",
"id": "1333",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1123",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "15.0",
+ "weight": "100.0",
"id": "1079",
"maxAmount": "1"
},
@@ -50431,7 +44748,7 @@
"minAmount": "80",
"weight": "25.0",
"id": "565",
- "maxAmount": "90"
+ "maxAmount": "85"
},
{
"minAmount": "10",
@@ -50446,26 +44763,20 @@
"maxAmount": "3"
},
{
- "minAmount": "19500",
- "weight": "37.0",
+ "minAmount": "19000",
+ "weight": "100.0",
"id": "995",
- "maxAmount": "20000"
+ "maxAmount": "21000"
},
{
"minAmount": "1",
- "weight": "55.6",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "8.0",
"id": "12070",
"maxAmount": "1"
}
@@ -50484,100 +44795,94 @@
"ids": "6204",
"description": "",
"main": [
- {
- "minAmount": "98",
- "weight": "250.0",
- "id": "808",
- "maxAmount": "98"
- },
{
"minAmount": "1",
- "weight": "1.0",
- "id": "11736",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11716",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11714",
"maxAmount": "1"
},
{
- "minAmount": "1",
+ "minAmount": "1300",
"weight": "500.0",
"id": "995",
- "maxAmount": "1"
+ "maxAmount": "1500"
},
{
- "minAmount": "7",
- "weight": "250.0",
- "id": "246",
- "maxAmount": "7"
- },
- {
- "minAmount": "98",
- "weight": "250.0",
+ "minAmount": "95",
+ "weight": "500.0",
"id": "886",
- "maxAmount": "98"
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "560",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "565",
+ "maxAmount": "10"
},
{
"minAmount": "3",
- "weight": "250.0",
+ "weight": "500.0",
"id": "385",
"maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "250.0",
+ "weight": "500.0",
"id": "7060",
"maxAmount": "2"
},
{
- "minAmount": "1",
- "weight": "250.0",
- "id": "157",
- "maxAmount": "1"
+ "minAmount": "10",
+ "weight": "500.0",
+ "id": "246",
+ "maxAmount": "10"
},
{
"minAmount": "1",
- "weight": "250.0",
+ "weight": "500.0",
"id": "145",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "250.0",
- "id": "189",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "250.0",
- "id": "5733",
+ "weight": "500.0",
+ "id": "157",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "50.0",
- "id": "31",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -50595,39 +44900,27 @@
"ids": "6206",
"description": "",
"main": [
- {
- "minAmount": "96",
- "weight": "250.0",
- "id": "808",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "1.0",
- "id": "11736",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11716",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11714",
"maxAmount": "1"
},
@@ -50639,56 +44932,62 @@
},
{
"minAmount": "95",
- "weight": "250.0",
+ "weight": "500.0",
"id": "886",
"maxAmount": "100"
},
{
- "minAmount": "5",
- "weight": "250.0",
- "id": "565",
- "maxAmount": "10"
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
},
{
"minAmount": "5",
- "weight": "250.0",
+ "weight": "500.0",
"id": "560",
"maxAmount": "10"
},
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "565",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "3",
+ "weight": "500.0",
+ "id": "385",
+ "maxAmount": "3"
+ },
{
"minAmount": "2",
- "weight": "250.0",
+ "weight": "500.0",
"id": "7060",
"maxAmount": "2"
},
{
- "minAmount": "1",
- "weight": "250.0",
- "id": "157",
- "maxAmount": "1"
- },
- {
- "minAmount": "5",
- "weight": "250.0",
+ "minAmount": "10",
+ "weight": "500.0",
"id": "246",
"maxAmount": "10"
},
{
- "minAmount": "2",
- "weight": "250.0",
- "id": "385",
- "maxAmount": "2"
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "145",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "5733",
+ "weight": "500.0",
+ "id": "157",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "50.0",
- "id": "31",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -50706,82 +45005,94 @@
"ids": "6208",
"description": "",
"main": [
- {
- "minAmount": "98",
- "weight": "250.0",
- "id": "808",
- "maxAmount": "98"
- },
{
"minAmount": "1",
- "weight": "1.0",
- "id": "11736",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11716",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.37566",
"id": "11714",
"maxAmount": "1"
},
{
- "minAmount": "3",
- "weight": "250.0",
- "id": "246",
+ "minAmount": "1300",
+ "weight": "500.0",
+ "id": "995",
+ "maxAmount": "1500"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "560",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "565",
"maxAmount": "10"
},
{
"minAmount": "3",
- "weight": "250.0",
+ "weight": "500.0",
"id": "385",
"maxAmount": "3"
},
{
"minAmount": "2",
- "weight": "250.0",
+ "weight": "500.0",
"id": "7060",
"maxAmount": "2"
},
{
- "minAmount": "98",
- "weight": "250.0",
- "id": "886",
- "maxAmount": "100"
+ "minAmount": "10",
+ "weight": "500.0",
+ "id": "246",
+ "maxAmount": "10"
},
{
"minAmount": "1",
- "weight": "250.0",
- "id": "157",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "250.0",
+ "weight": "500.0",
"id": "145",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "250.0",
- "id": "1",
+ "weight": "500.0",
+ "id": "157",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -50915,7 +45226,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "5733",
+ "id": "12070",
"maxAmount": "1"
},
{
@@ -51031,7 +45342,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "1",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -51230,7 +45541,7 @@
}
],
"ids": "6222",
- "description": "",
+ "description": "Kree'arra (Armadyl GWD Boss)",
"main": [
{
"minAmount": "1",
@@ -51240,25 +45551,25 @@
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "100.0",
"id": "9185",
"maxAmount": "1"
},
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "100.0",
"id": "9144",
"maxAmount": "25"
},
{
"minAmount": "80",
- "weight": "25.0",
+ "weight": "50.0",
"id": "892",
"maxAmount": "100"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "100.0",
"id": "9244",
"maxAmount": "15"
},
@@ -51276,19 +45587,19 @@
},
{
"minAmount": "1",
- "weight": "1.96",
+ "weight": "2.98342",
"id": "11718",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.96",
+ "weight": "2.98342",
"id": "11720",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.96",
+ "weight": "2.98342",
"id": "11722",
"maxAmount": "1"
},
@@ -51306,97 +45617,85 @@
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "5315",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.17",
+ "weight": "2.11985",
"id": "11702",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.932",
+ "weight": "1.49174",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.932",
+ "weight": "1.49174",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.932",
+ "weight": "1.49174",
"id": "11714",
"maxAmount": "1"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "50.0",
"id": "169",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "50.0",
"id": "163",
"maxAmount": "3"
},
{
"minAmount": "5",
- "weight": "5.0",
+ "weight": "25.0",
"id": "218",
- "maxAmount": "20"
+ "maxAmount": "25"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "989",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "8.0",
"id": "10977",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "385",
- "maxAmount": "20"
- },
{
"minAmount": "18000",
- "weight": "50.0",
+ "weight": "100.0",
"id": "995",
"maxAmount": "20000"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "8.0",
"id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "75.0",
- "id": "0",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "20.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
}
@@ -51417,51 +45716,39 @@
"main": [
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "0.902405",
+ "id": "11718",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.902405",
"id": "11720",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
- "id": "11718",
+ "weight": "0.902405",
+ "id": "11722",
"maxAmount": "1"
},
{
- "minAmount": "95",
- "weight": "500.0",
- "id": "886",
- "maxAmount": "100"
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11710",
+ "maxAmount": "1"
},
{
- "minAmount": "15",
- "weight": "250.0",
- "id": "4697",
- "maxAmount": "25"
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11712",
+ "maxAmount": "1"
},
{
- "minAmount": "2",
- "weight": "250.0",
- "id": "391",
- "maxAmount": "2"
- },
- {
- "minAmount": "3",
- "weight": "250.0",
- "id": "7058",
- "maxAmount": "3"
- },
- {
- "minAmount": "3",
- "weight": "250.0",
- "id": "7056",
- "maxAmount": "3"
- },
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11714",
+ "maxAmount": "1"
},
{
"minAmount": "1300",
@@ -51469,28 +45756,52 @@
"id": "995",
"maxAmount": "1500"
},
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "15",
+ "weight": "500.0",
+ "id": "4697",
+ "maxAmount": "25"
+ },
{
"minAmount": "2",
- "weight": "250.0",
+ "weight": "500.0",
+ "id": "391",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "3",
+ "weight": "500.0",
+ "id": "7058",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "2",
+ "weight": "500.0",
"id": "6694",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "250.0",
- "id": "213",
+ "weight": "500.0",
+ "id": "214",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "50.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "11722",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -51510,45 +45821,45 @@
"main": [
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "0.902405",
+ "id": "11718",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.902405",
"id": "11720",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
- "id": "11718",
+ "weight": "0.902405",
+ "id": "11722",
"maxAmount": "1"
},
{
- "minAmount": "3",
- "weight": "250.0",
- "id": "7056",
- "maxAmount": "3"
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11710",
+ "maxAmount": "1"
},
{
- "minAmount": "2",
- "weight": "250.0",
- "id": "391",
- "maxAmount": "2"
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11712",
+ "maxAmount": "1"
},
{
- "minAmount": "3",
- "weight": "250.0",
- "id": "7058",
- "maxAmount": "3"
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11714",
+ "maxAmount": "1"
},
{
- "minAmount": "13",
+ "minAmount": "1300",
"weight": "500.0",
- "id": "4697",
- "maxAmount": "25"
- },
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
+ "id": "995",
+ "maxAmount": "1500"
},
{
"minAmount": "95",
@@ -51557,10 +45868,28 @@
"maxAmount": "100"
},
{
- "minAmount": "1300",
+ "minAmount": "95",
"weight": "500.0",
- "id": "995",
- "maxAmount": "1500"
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "15",
+ "weight": "500.0",
+ "id": "4697",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "2",
+ "weight": "500.0",
+ "id": "391",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "3",
+ "weight": "500.0",
+ "id": "7058",
+ "maxAmount": "3"
},
{
"minAmount": "2",
@@ -51571,38 +45900,14 @@
{
"minAmount": "1",
"weight": "500.0",
- "id": "213",
+ "id": "214",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
- "id": "11710",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "11712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "11714",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "50.0",
"id": "12070",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "11722",
- "maxAmount": "1"
}
]
},
@@ -51619,53 +45924,95 @@
"ids": "6227",
"description": "",
"main": [
- {
- "minAmount": "2",
- "weight": "250.0",
- "id": "391",
- "maxAmount": "2"
- },
- {
- "minAmount": "3",
- "weight": "250.0",
- "id": "7058",
- "maxAmount": "3"
- },
- {
- "minAmount": "1006",
- "weight": "500.0",
- "id": "995",
- "maxAmount": "1500"
- },
- {
- "minAmount": "2",
- "weight": "250.0",
- "id": "6694",
- "maxAmount": "2"
- },
{
"minAmount": "1",
- "weight": "250.0",
- "id": "1",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
- "id": "11720",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "0.902405",
"id": "11718",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "0.902405",
+ "id": "11720",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.902405",
"id": "11722",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11710",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11712",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.70721",
+ "id": "11714",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1300",
+ "weight": "500.0",
+ "id": "995",
+ "maxAmount": "1500"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "15",
+ "weight": "500.0",
+ "id": "4697",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "2",
+ "weight": "500.0",
+ "id": "391",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "3",
+ "weight": "500.0",
+ "id": "7058",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "2",
+ "weight": "500.0",
+ "id": "6694",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "214",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "12070",
+ "maxAmount": "1"
}
]
},
@@ -51688,166 +46035,118 @@
"ids": "6232,6233,6234,6235,6236,6237,6238,6239,6240,6241,6242,6243,6244,6245,6246",
"description": "",
"main": [
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1229",
+ "maxAmount": "1"
+ },
{
"minAmount": "15",
- "weight": "50.0",
+ "weight": "18.0",
"id": "556",
- "maxAmount": "30"
+ "maxAmount": "15"
},
{
"minAmount": "30",
- "weight": "50.0",
+ "weight": "13.0",
"id": "555",
"maxAmount": "30"
},
{
"minAmount": "2",
- "weight": "25.0",
+ "weight": "4.0",
"id": "563",
"maxAmount": "2"
},
{
"minAmount": "9",
- "weight": "25.0",
+ "weight": "4.0",
"id": "561",
"maxAmount": "9"
},
- {
- "minAmount": "5",
- "weight": "25.0",
- "id": "558",
- "maxAmount": "5"
- },
- {
- "minAmount": "11",
- "weight": "25.0",
- "id": "565",
- "maxAmount": "11"
- },
{
"minAmount": "3",
- "weight": "25.0",
+ "weight": "3.0",
"id": "562",
"maxAmount": "3"
},
- {
- "minAmount": "16",
- "weight": "25.0",
- "id": "562",
- "maxAmount": "16"
- },
{
"minAmount": "12",
- "weight": "25.0",
+ "weight": "2.0",
"id": "559",
"maxAmount": "12"
},
+ {
+ "minAmount": "11",
+ "weight": "2.0",
+ "id": "565",
+ "maxAmount": "11"
+ },
+ {
+ "minAmount": "5",
+ "weight": "1.0",
+ "id": "558",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "16",
+ "weight": "1.0",
+ "id": "562",
+ "maxAmount": "16"
+ },
{
"minAmount": "1",
- "weight": "50.0",
- "id": "442",
+ "weight": "15.0",
+ "id": "14424",
"maxAmount": "1"
},
{
"minAmount": "4",
- "weight": "50.0",
+ "weight": "30.0",
"id": "2362",
"maxAmount": "4"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "10.0",
+ "id": "442",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
"id": "9431",
"maxAmount": "1"
},
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "203",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "205",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "201",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "199",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "215",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "211",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2485",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "217",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "209",
- "maxAmount": "1"
- },
{
"minAmount": "5",
- "weight": "25.0",
- "id": "373",
- "maxAmount": "5"
- },
- {
- "minAmount": "5",
- "weight": "25.0",
+ "weight": "5.0",
"id": "175",
"maxAmount": "5"
},
+ {
+ "minAmount": "5",
+ "weight": "3.0",
+ "id": "0",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "5",
+ "weight": "2.0",
+ "id": "373",
+ "maxAmount": "5"
+ },
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1",
+ "weight": "3.0",
+ "id": "14426",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "31",
+ "weight": "1.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -51894,144 +46193,132 @@
}
],
"ids": "6247",
- "description": "",
+ "description": "Commander Zilyana (Saradomin GWD Boss)",
"main": [
{
"minAmount": "1",
- "weight": "0.7",
+ "weight": "1.92128",
"id": "11706",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.55",
+ "weight": "1.352",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.55",
+ "weight": "1.352",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "0.55",
+ "weight": "1.352",
"id": "11714",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.21",
+ "weight": "8.112",
"id": "11730",
"maxAmount": "1"
},
{
"minAmount": "35",
- "weight": "20.0",
+ "weight": "50.0",
"id": "811",
"maxAmount": "40"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "100.0",
"id": "1093",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "100.0",
"id": "1201",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "50.0",
"id": "1123",
"maxAmount": "1"
},
{
"minAmount": "95",
- "weight": "20.0",
+ "weight": "50.0",
"id": "563",
"maxAmount": "100"
},
{
"minAmount": "3",
- "weight": "20.0",
- "id": "3026",
+ "weight": "25.0",
+ "id": "3024",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "20.0",
+ "weight": "25.0",
"id": "163",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "20.0",
+ "weight": "25.0",
"id": "3042",
"maxAmount": "3"
},
{
"minAmount": "3",
- "weight": "10.0",
+ "weight": "25.0",
"id": "6687",
"maxAmount": "3"
},
- {
- "minAmount": "3",
- "weight": "10.0",
- "id": "3024",
- "maxAmount": "3"
- },
{
"minAmount": "5",
- "weight": "20.0",
+ "weight": "50.0",
"id": "208",
"maxAmount": "5"
},
{
"minAmount": "2",
- "weight": "20.0",
+ "weight": "50.0",
"id": "5295",
"maxAmount": "2"
},
{
"minAmount": "1",
- "weight": "2.0",
+ "weight": "8.0",
"id": "5316",
"maxAmount": "1"
},
- {
- "minAmount": "6",
- "weight": "20.0",
- "id": "1602",
- "maxAmount": "6"
- },
{
"minAmount": "19000",
- "weight": "30.0",
+ "weight": "100.0",
"id": "995",
- "maxAmount": "20000"
+ "maxAmount": "21000"
},
{
"minAmount": "1",
- "weight": "20.0",
+ "weight": "25.0",
"id": "31",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "44.0",
- "id": "0",
+ "weight": "8.0",
+ "id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "11.8",
- "id": "12070",
+ "weight": "25.0",
+ "id": "2434",
"maxAmount": "1"
}
]
@@ -52049,51 +46336,27 @@
"ids": "6248",
"description": "",
"main": [
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "3.04143",
"id": "11730",
"maxAmount": "1"
},
- {
- "minAmount": "7",
- "weight": "500.0",
- "id": "563",
- "maxAmount": "10"
- },
- {
- "minAmount": "97",
- "weight": "500.0",
- "id": "886",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "500.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11714",
"maxAmount": "1"
},
@@ -52101,7 +46364,49 @@
"minAmount": "1300",
"weight": "500.0",
"id": "995",
- "maxAmount": "2000"
+ "maxAmount": "1500"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "563",
+ "maxAmount": "10"
+ },
+ {
+ "minAmount": "3",
+ "weight": "500.0",
+ "id": "7946",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "7218",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "208",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "6",
+ "weight": "500.0",
+ "id": "238",
+ "maxAmount": "6"
},
{
"minAmount": "5",
@@ -52109,22 +46414,10 @@
"id": "232",
"maxAmount": "5"
},
- {
- "minAmount": "6",
- "weight": "250.0",
- "id": "238",
- "maxAmount": "6"
- },
- {
- "minAmount": "3",
- "weight": "250.0",
- "id": "7946",
- "maxAmount": "3"
- },
{
"minAmount": "1",
- "weight": "250.0",
- "id": "1",
+ "weight": "50.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -52142,45 +46435,27 @@
"ids": "6250",
"description": "",
"main": [
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11730",
"maxAmount": "1"
},
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "886",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "250.0",
- "id": "207",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11714",
"maxAmount": "1"
},
@@ -52191,17 +46466,53 @@
"maxAmount": "1500"
},
{
- "minAmount": "4",
- "weight": "250.0",
- "id": "232",
- "maxAmount": "4"
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "250.0",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "563",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "7946",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
"id": "7218",
"maxAmount": "1"
},
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "208",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "238",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "232",
+ "maxAmount": "1"
+ },
{
"minAmount": "1",
"weight": "50.0",
@@ -52225,25 +46536,25 @@
"main": [
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11730",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.04143",
"id": "11714",
"maxAmount": "1"
},
@@ -52255,32 +46566,56 @@
},
{
"minAmount": "1",
- "weight": "250.0",
- "id": "592",
+ "weight": "500.0",
+ "id": "886",
"maxAmount": "1"
},
{
- "minAmount": "6",
- "weight": "250.0",
- "id": "238",
- "maxAmount": "6"
- },
- {
- "minAmount": "5",
- "weight": "250.0",
- "id": "232",
- "maxAmount": "5"
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "250.0",
+ "weight": "500.0",
+ "id": "563",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "7946",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
"id": "7218",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "250.0",
- "id": "1",
+ "weight": "500.0",
+ "id": "208",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "238",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "232",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -52292,18 +46627,25 @@
"weight": "100.0",
"id": "526",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "5733",
- "maxAmount": "1"
}
],
"charm": [],
"ids": "6254",
"description": "",
- "main": []
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "127.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "5733",
+ "maxAmount": "1"
+ }
+ ]
},
{
"default": [
@@ -52405,64 +46747,58 @@
}
],
"ids": "6260",
- "description": "",
+ "description": "General Graardor (Bandos GWD Boss)",
"main": [
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "1289",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1303",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
- "id": "1373",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "100.0",
"id": "1319",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "100.0",
"id": "1127",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1275",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.1",
+ "weight": "2.5756",
"id": "11724",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.1",
+ "weight": "2.5756",
"id": "11726",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.1",
+ "weight": "2.5756",
"id": "11728",
"maxAmount": "1"
},
{
- "minAmount": "40",
+ "minAmount": "65",
"weight": "50.0",
"id": "561",
"maxAmount": "70"
@@ -52480,8 +46816,8 @@
"maxAmount": "20"
},
{
- "minAmount": "3000",
- "weight": "50.0",
+ "minAmount": "19000",
+ "weight": "100.0",
"id": "995",
"maxAmount": "21000"
},
@@ -52523,31 +46859,31 @@
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.2878",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.2878",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.2878",
"id": "11714",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.25",
+ "weight": "1.83004",
"id": "11704",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "8.0",
"id": "12070",
"maxAmount": "1"
},
@@ -52556,12 +46892,6 @@
"weight": "25.0",
"id": "31",
"maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "75.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -52578,48 +46908,60 @@
"ids": "6261",
"description": "",
"main": [
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11724",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11726",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11728",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11714",
"maxAmount": "1"
},
+ {
+ "minAmount": "1300",
+ "weight": "500.0",
+ "id": "995",
+ "maxAmount": "1500"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
{
"minAmount": "25",
"weight": "500.0",
@@ -52630,19 +46972,25 @@
"minAmount": "20",
"weight": "500.0",
"id": "561",
- "maxAmount": "28"
+ "maxAmount": "25"
},
{
- "minAmount": "95",
+ "minAmount": "5",
"weight": "500.0",
- "id": "886",
- "maxAmount": "100"
+ "id": "226",
+ "maxAmount": "5"
},
{
- "minAmount": "1300",
+ "minAmount": "2",
"weight": "500.0",
- "id": "995",
- "maxAmount": "1450"
+ "id": "385",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "7054",
+ "maxAmount": "3"
},
{
"minAmount": "1",
@@ -52653,25 +47001,19 @@
{
"minAmount": "1",
"weight": "500.0",
- "id": "1025",
+ "id": "157",
"maxAmount": "1"
},
{
- "minAmount": "2",
+ "minAmount": "1",
"weight": "500.0",
- "id": "385",
- "maxAmount": "2"
- },
- {
- "minAmount": "3",
- "weight": "500.0",
- "id": "7054",
- "maxAmount": "3"
+ "id": "1971",
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "50.0",
- "id": "1",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -52689,90 +47031,90 @@
"ids": "6263",
"description": "",
"main": [
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11724",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11726",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11728",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11714",
"maxAmount": "1"
},
- {
- "minAmount": "25",
- "weight": "500.0",
- "id": "564",
- "maxAmount": "30"
- },
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "886",
- "maxAmount": "100"
- },
{
"minAmount": "1300",
"weight": "500.0",
"id": "995",
"maxAmount": "1500"
},
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "886",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "95",
+ "weight": "500.0",
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "25",
+ "weight": "500.0",
+ "id": "564",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "25",
+ "weight": "500.0",
+ "id": "561",
+ "maxAmount": "30"
+ },
{
"minAmount": "5",
"weight": "500.0",
"id": "226",
"maxAmount": "5"
},
- {
- "minAmount": "1",
- "weight": "500.0",
- "id": "1917",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "500.0",
- "id": "1971",
- "maxAmount": "1"
- },
{
"minAmount": "2",
"weight": "500.0",
"id": "385",
"maxAmount": "2"
},
+ {
+ "minAmount": "3",
+ "weight": "500.0",
+ "id": "7054",
+ "maxAmount": "3"
+ },
{
"minAmount": "1",
"weight": "500.0",
@@ -52782,19 +47124,19 @@
{
"minAmount": "1",
"weight": "500.0",
- "id": "1025",
+ "id": "157",
"maxAmount": "1"
},
{
- "minAmount": "3",
+ "minAmount": "1",
"weight": "500.0",
- "id": "7054",
- "maxAmount": "3"
+ "id": "1917",
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "50.0",
- "id": "1",
+ "id": "12070",
"maxAmount": "1"
}
]
@@ -52812,66 +47154,42 @@
"ids": "6265",
"description": "",
"main": [
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "808",
- "maxAmount": "100"
- },
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11724",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11726",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "1.23663",
"id": "11728",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11710",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11712",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "3.70988",
"id": "11714",
"maxAmount": "1"
},
- {
- "minAmount": "25",
- "weight": "500.0",
- "id": "564",
- "maxAmount": "30"
- },
- {
- "minAmount": "15",
- "weight": "500.0",
- "id": "561",
- "maxAmount": "20"
- },
- {
- "minAmount": "95",
- "weight": "500.0",
- "id": "886",
- "maxAmount": "100"
- },
{
"minAmount": "1300",
"weight": "500.0",
@@ -52879,16 +47197,34 @@
"maxAmount": "1500"
},
{
- "minAmount": "1",
+ "minAmount": "95",
"weight": "500.0",
- "id": "9741",
- "maxAmount": "1"
+ "id": "886",
+ "maxAmount": "100"
},
{
- "minAmount": "1",
+ "minAmount": "95",
"weight": "500.0",
- "id": "1025",
- "maxAmount": "1"
+ "id": "808",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "25",
+ "weight": "500.0",
+ "id": "564",
+ "maxAmount": "30"
+ },
+ {
+ "minAmount": "20",
+ "weight": "500.0",
+ "id": "561",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "5",
+ "weight": "500.0",
+ "id": "226",
+ "maxAmount": "5"
},
{
"minAmount": "2",
@@ -52902,6 +47238,24 @@
"id": "7054",
"maxAmount": "3"
},
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "9741",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "157",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "500.0",
+ "id": "1025",
+ "maxAmount": "1"
+ },
{
"minAmount": "1",
"weight": "50.0",
@@ -53323,7 +47677,7 @@
"main": [
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "1213",
"maxAmount": "1"
},
@@ -53347,13 +47701,13 @@
},
{
"minAmount": "1",
- "weight": "25.0",
+ "weight": "5.0",
"id": "1333",
"maxAmount": "1"
},
{
"minAmount": "100",
- "weight": "50.0",
+ "weight": "100.0",
"id": "995",
"maxAmount": "100"
},
@@ -54832,10 +49186,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6604,6635,6655,6666,6677,6697,6703,6715",
- "description": "",
+ "description": "Revenant imp",
"main": [
{
"minAmount": "1",
@@ -54928,28 +49288,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -54960,32 +49314,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -54994,16 +49348,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -55025,9 +49373,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -55045,31 +49393,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -55078,34 +49426,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -55118,12 +49454,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -55153,10 +49483,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6605,6612,6616,6620,6636,6637,6638,6639,6651,6656,6657,6658,6667,6678,6679,6680,6681,6693,6698,6699,6704,6705,6706,6707,6716,6717,6718,6719",
- "description": "",
+ "description": "Revenant goblin",
"main": [
{
"minAmount": "1",
@@ -55249,28 +49585,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -55281,32 +49611,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -55315,16 +49645,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -55346,9 +49670,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -55366,31 +49690,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -55399,34 +49723,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -55438,13 +49750,7 @@
"minAmount": "5",
"weight": "25.0",
"id": "7061",
- "maxAmount": "20"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
+ "maxAmount": "5"
}
]
},
@@ -55474,10 +49780,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6606,6621,6628,6640,6659,6682,6694,6708,6720",
- "description": "",
+ "description": "Revenant icefiend",
"main": [
{
"minAmount": "1",
@@ -55570,28 +49882,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -55602,32 +49908,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -55636,16 +49942,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -55667,9 +49967,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -55687,31 +49987,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -55720,34 +50020,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -55759,13 +50047,7 @@
"minAmount": "5",
"weight": "25.0",
"id": "7061",
- "maxAmount": "20"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
+ "maxAmount": "5"
}
]
},
@@ -55795,10 +50077,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6607,6609,6614,6617,6625,6632,6644,6663,6675,6686,6701,6712,6724,6728",
- "description": "",
+ "description": "Revenant werewolf",
"main": [
{
"minAmount": "1",
@@ -55891,28 +50179,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -55923,32 +50205,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -55957,10 +50239,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
"minAmount": "10",
@@ -56008,31 +50290,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -56041,34 +50323,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -56081,12 +50351,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -56116,10 +50380,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6608,6642,6661,6684,6710,6722,6727",
- "description": "",
+ "description": "Revenant hobgoblin",
"main": [
{
"minAmount": "1",
@@ -56212,28 +50482,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -56244,32 +50508,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -56278,16 +50542,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -56309,9 +50567,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -56329,31 +50587,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -56362,34 +50620,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -56402,12 +50648,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -56437,10 +50677,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6610,6615,6618,6624,6626,6629,6633,6648,6653,6664,6670,6672,6690,6696,6702,6713,6725,6729",
- "description": "",
+ "description": "Revenant ork",
"main": [
{
"minAmount": "1",
@@ -56451,25 +50697,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -56563,28 +50791,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -56595,32 +50817,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -56629,16 +50851,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -56660,9 +50876,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -56680,31 +50896,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -56713,34 +50929,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -56753,12 +50957,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -56788,10 +50986,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6611,6619,6627,6630,6634,6650,6654,6665,6673,6676,6692,6714,6726,6730",
- "description": "",
+ "description": "Revenant knight",
"main": [
{
"minAmount": "1",
@@ -56802,25 +51006,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -56914,28 +51100,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -56946,32 +51126,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -56980,16 +51160,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -57011,9 +51185,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -57031,31 +51205,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -57064,34 +51238,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -57110,12 +51272,6 @@
"weight": "25.0",
"id": "995",
"maxAmount": "5000"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -57145,10 +51301,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6613,6623,6643,6652,6662,6669,6671,6674,6685,6695,6700,6711,6723",
- "description": "",
+ "description": "Revenant vampire",
"main": [
{
"minAmount": "1",
@@ -57241,28 +51403,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -57273,32 +51429,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -57307,16 +51463,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -57338,9 +51488,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -57358,31 +51508,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -57391,34 +51541,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -57437,12 +51575,6 @@
"weight": "25.0",
"id": "995",
"maxAmount": "5000"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -57472,10 +51604,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6622,6631,6641,6660,6668,6683,6709,6721",
- "description": "",
+ "description": "Revenant pyrefiend",
"main": [
{
"minAmount": "1",
@@ -57574,28 +51712,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -57606,32 +51738,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -57640,16 +51772,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -57671,9 +51797,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -57691,31 +51817,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -57724,34 +51850,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -57763,13 +51877,7 @@
"minAmount": "5",
"weight": "25.0",
"id": "7061",
- "maxAmount": "20"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
+ "maxAmount": "5"
}
]
},
@@ -57799,10 +51907,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6645,6687",
- "description": "",
+ "description": "Revenant cyclops",
"main": [
{
"minAmount": "1",
@@ -57813,31 +51927,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "11732",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -57931,28 +52021,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -57963,32 +52047,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -57997,16 +52081,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -58028,9 +52106,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -58048,31 +52126,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -58081,34 +52159,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -58121,12 +52187,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -58156,10 +52216,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6646,6688",
- "description": "",
+ "description": "Revenant hellhound",
"main": [
{
"minAmount": "1",
@@ -58170,25 +52236,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -58282,28 +52330,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -58314,32 +52356,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -58348,16 +52390,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -58379,9 +52415,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -58399,31 +52435,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -58432,35 +52468,23 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
"maxAmount": "150"
},
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
- },
{
"minAmount": "4",
"weight": "25.0",
@@ -58472,12 +52496,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -58507,10 +52525,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6647,6689",
- "description": "",
+ "description": "Revenant demon",
"main": [
{
"minAmount": "1",
@@ -58521,25 +52545,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -58633,28 +52639,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -58665,32 +52665,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -58699,16 +52699,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -58730,9 +52724,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -58750,31 +52744,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -58783,34 +52777,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -58823,12 +52805,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -58858,10 +52834,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6649,6691",
- "description": "",
+ "description": "Revenant dark beast",
"main": [
{
"minAmount": "1",
@@ -58872,25 +52854,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -58984,28 +52948,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -59016,32 +52974,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -59050,16 +53008,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -59081,9 +53033,9 @@
},
{
"minAmount": "5",
- "weight": "25.0",
+ "weight": "50.0",
"id": "1516",
- "maxAmount": "10"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -59101,31 +53053,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -59134,34 +53086,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -59174,12 +53114,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -60327,10 +54261,16 @@
"weight": "100.0",
"id": "12163",
"maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.6",
+ "id": "0",
+ "maxAmount": "1"
}
],
"ids": "6998,6999",
- "description": "",
+ "description": "Revenant dragon",
"main": [
{
"minAmount": "1",
@@ -60341,25 +54281,7 @@
{
"minAmount": "1",
"weight": "5.0",
- "id": "4087",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "4585",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "1712",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2572",
+ "id": "1704",
"maxAmount": "1"
},
{
@@ -60453,28 +54375,22 @@
"maxAmount": "1000"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "563",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "565",
- "maxAmount": "500"
+ "maxAmount": "200"
},
{
- "minAmount": "50",
+ "minAmount": "15",
"weight": "25.0",
"id": "560",
- "maxAmount": "500"
- },
- {
- "minAmount": "50",
- "weight": "25.0",
- "id": "454",
- "maxAmount": "250"
+ "maxAmount": "200"
},
{
"minAmount": "1",
@@ -60485,32 +54401,32 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1602",
- "maxAmount": "50"
+ "id": "1618",
+ "maxAmount": "5"
},
{
"minAmount": "10",
"weight": "25.0",
- "id": "2358",
- "maxAmount": "125"
+ "id": "445",
+ "maxAmount": "30"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "50.0",
"id": "114",
- "maxAmount": "15"
+ "maxAmount": "4"
},
{
"minAmount": "1",
"weight": "25.0",
"id": "208",
- "maxAmount": "15"
+ "maxAmount": "10"
},
{
- "minAmount": "10",
- "weight": "50.0",
+ "minAmount": "1",
+ "weight": "5.0",
"id": "450",
- "maxAmount": "75"
+ "maxAmount": "5"
},
{
"minAmount": "1",
@@ -60519,16 +54435,10 @@
"maxAmount": "5"
},
{
- "minAmount": "5",
+ "minAmount": "1",
"weight": "25.0",
"id": "3050",
- "maxAmount": "15"
- },
- {
- "minAmount": "10",
- "weight": "25.0",
- "id": "232",
- "maxAmount": "500"
+ "maxAmount": "10"
},
{
"minAmount": "20",
@@ -60570,31 +54480,31 @@
"minAmount": "1",
"weight": "5.0",
"id": "5315",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5316",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
"weight": "5.0",
"id": "5300",
- "maxAmount": "5"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5289",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
+ "weight": "5.0",
"id": "5288",
- "maxAmount": "10"
+ "maxAmount": "1"
},
{
"minAmount": "1",
@@ -60603,34 +54513,22 @@
"maxAmount": "50"
},
{
- "minAmount": "100",
+ "minAmount": "50",
"weight": "25.0",
"id": "9144",
- "maxAmount": "100"
+ "maxAmount": "50"
},
{
- "minAmount": "300",
+ "minAmount": "75",
"weight": "25.0",
"id": "9143",
- "maxAmount": "300"
+ "maxAmount": "75"
},
{
- "minAmount": "150",
+ "minAmount": "75",
"weight": "25.0",
"id": "892",
- "maxAmount": "150"
- },
- {
- "minAmount": "100",
- "weight": "25.0",
- "id": "441",
- "maxAmount": "500"
- },
- {
- "minAmount": "1000",
- "weight": "25.0",
- "id": "12183",
- "maxAmount": "15000"
+ "maxAmount": "75"
},
{
"minAmount": "4",
@@ -60643,12 +54541,6 @@
"weight": "25.0",
"id": "7061",
"maxAmount": "5"
- },
- {
- "minAmount": "1",
- "weight": "5600.0",
- "id": "0",
- "maxAmount": "1"
}
]
},
@@ -60693,30 +54585,44 @@
"maxAmount": "1"
}
],
+ "tertiary": [
+ {
+ "minAmount": "1",
+ "weight": "9973.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "10976",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
"ids": "7078",
"description": "",
"main": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "12570",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
+ "weight": "2.0",
"id": "1239",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1",
+ "weight": "2.0",
+ "id": "12570",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "124.0",
"id": "0",
"maxAmount": "1"
}
@@ -60763,30 +54669,38 @@
"maxAmount": "1"
}
],
- "ids": "7079,7080",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "50.0",
- "id": "1239",
+ "weight": "9973.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "50.0",
- "id": "12570",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
+ "weight": "25.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "2.0",
+ "id": "10977",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "7079,7081",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "12570",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "126.0",
"id": "0",
"maxAmount": "1"
}
@@ -60833,36 +54747,38 @@
"maxAmount": "1"
}
],
- "ids": "7081,7082",
- "description": "",
- "main": [
+ "tertiary": [
{
"minAmount": "1",
- "weight": "25.0",
- "id": "12570",
+ "weight": "9973.0",
+ "id": "0",
"maxAmount": "1"
},
{
"minAmount": "1",
"weight": "25.0",
- "id": "1239",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
"id": "10976",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "2.0",
"id": "10977",
"maxAmount": "1"
+ }
+ ],
+ "ids": "7080,7082",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "1239",
+ "maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "126.0",
"id": "0",
"maxAmount": "1"
}
@@ -60876,21 +54792,27 @@
"main": [
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "12070",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "15.0",
"id": "1147",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "35.0",
"id": "31",
"maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "77.0",
+ "id": "0",
+ "maxAmount": "1"
}
]
},
@@ -60933,13 +54855,13 @@
"main": [
{
"minAmount": "1",
- "weight": "5.0",
+ "weight": "1.0",
"id": "5733",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.0266",
+ "weight": "127.0",
"id": "0",
"maxAmount": "1"
}
@@ -60953,67 +54875,61 @@
"main": [
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "2.371541",
"id": "14497",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "2.371541",
"id": "14499",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "2.371541",
"id": "14501",
"maxAmount": "1"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "25.0",
"id": "557",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "25.0",
"id": "557",
"maxAmount": "18"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "25.0",
"id": "556",
- "maxAmount": "36"
+ "maxAmount": "10"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "25.0",
"id": "559",
- "maxAmount": "36"
+ "maxAmount": "10"
},
{
"minAmount": "10",
- "weight": "50.0",
+ "weight": "25.0",
"id": "554",
- "maxAmount": "36"
+ "maxAmount": "10"
},
{
"minAmount": "10",
- "weight": "50.0",
- "id": "555",
- "maxAmount": "18"
- },
- {
- "minAmount": "10",
- "weight": "50.0",
+ "weight": "25.0",
"id": "558",
"maxAmount": "10"
},
{
"minAmount": "18",
- "weight": "50.0",
+ "weight": "25.0",
"id": "558",
"maxAmount": "18"
},
@@ -61068,26 +54984,56 @@
{
"minAmount": "1",
"weight": "25.0",
- "id": "1213",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "25.0",
- "id": "1333",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "50.0",
"id": "995",
"maxAmount": "1"
},
{
"minAmount": "2",
- "weight": "50.0",
+ "weight": "25.0",
"id": "995",
"maxAmount": "2"
+ },
+ {
+ "minAmount": "4",
+ "weight": "25.0",
+ "id": "995",
+ "maxAmount": "4"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "581",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "25.0",
+ "id": "1017",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "36",
+ "weight": "25.0",
+ "id": "556",
+ "maxAmount": "36"
+ },
+ {
+ "minAmount": "36",
+ "weight": "25.0",
+ "id": "559",
+ "maxAmount": "36"
+ },
+ {
+ "minAmount": "36",
+ "weight": "25.0",
+ "id": "554",
+ "maxAmount": "36"
+ },
+ {
+ "minAmount": "36",
+ "weight": "25.0",
+ "id": "558",
+ "maxAmount": "36"
}
]
},
@@ -62686,181 +56632,163 @@
"main": [
{
"minAmount": "1",
- "weight": "1.0",
+ "weight": "0.4",
+ "id": "13752",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.2",
"id": "13746",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "1.0",
- "id": "13748",
- "maxAmount": "1"
- },
- {
- "minAmount": "1",
- "weight": "1.0",
+ "weight": "0.2",
"id": "13750",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "2.0",
- "id": "13752",
+ "weight": "0.2",
+ "id": "13748",
"maxAmount": "1"
},
- {
- "minAmount": "10000",
- "weight": "125.0",
- "id": "995",
- "maxAmount": "20000"
- },
{
"minAmount": "20000",
- "weight": "100.0",
- "id": "995",
- "maxAmount": "30000"
- },
- {
- "minAmount": "30000",
- "weight": "50.0",
+ "weight": "12.0",
"id": "995",
"maxAmount": "50000"
},
{
"minAmount": "1",
- "weight": "100.0",
- "id": "1624",
- "maxAmount": "10"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "1622",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "100.0",
- "id": "1620",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "75.0",
- "id": "1618",
- "maxAmount": "8"
- },
- {
- "minAmount": "1",
- "weight": "5.0",
- "id": "2366",
+ "weight": "12.0",
+ "id": "1401",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "5.0",
- "id": "1250",
+ "weight": "12.0",
+ "id": "1403",
"maxAmount": "1"
},
{
"minAmount": "1",
- "weight": "100.0",
+ "weight": "12.0",
+ "id": "1405",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "12.0",
+ "id": "1407",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "11133",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
"id": "13734",
"maxAmount": "1"
},
{
"minAmount": "750",
- "weight": "75.0",
+ "weight": "17.0",
"id": "890",
"maxAmount": "750"
},
{
"minAmount": "250",
- "weight": "175.0",
+ "weight": "24.0",
"id": "9144",
"maxAmount": "250"
},
{
"minAmount": "2000",
- "weight": "100.0",
+ "weight": "17.0",
"id": "2",
"maxAmount": "2000"
},
{
"minAmount": "175",
- "weight": "100.0",
+ "weight": "20.0",
"id": "9245",
"maxAmount": "175"
},
{
"minAmount": "2500",
- "weight": "100.0",
+ "weight": "21.0",
"id": "7937",
"maxAmount": "2500"
},
{
"minAmount": "250",
- "weight": "100.0",
+ "weight": "17.0",
"id": "563",
"maxAmount": "250"
},
{
"minAmount": "500",
- "weight": "100.0",
+ "weight": "17.0",
"id": "564",
"maxAmount": "500"
},
{
- "minAmount": "209",
- "weight": "125.0",
+ "minAmount": "300",
+ "weight": "22.0",
"id": "560",
"maxAmount": "300"
},
{
"minAmount": "250",
- "weight": "80.0",
+ "weight": "32.0",
"id": "566",
"maxAmount": "250"
},
{
"minAmount": "70",
- "weight": "80.0",
+ "weight": "21.0",
"id": "384",
"maxAmount": "70"
},
{
"minAmount": "120",
- "weight": "80.0",
+ "weight": "17.0",
"id": "240",
"maxAmount": "120"
},
{
"minAmount": "120",
- "weight": "80.0",
+ "weight": "17.0",
"id": "9738",
"maxAmount": "120"
},
{
"minAmount": "24",
- "weight": "25.0",
+ "weight": "15.0",
"id": "5321",
"maxAmount": "24"
},
{
"minAmount": "10",
- "weight": "100.0",
+ "weight": "5.0",
"id": "5295",
"maxAmount": "10"
},
{
"minAmount": "30",
- "weight": "75.0",
+ "weight": "20.0",
"id": "7061",
"maxAmount": "30"
},
{
"minAmount": "40",
- "weight": "75.0",
+ "weight": "10.0",
"id": "2449",
"maxAmount": "40"
},
@@ -62871,10 +56799,64 @@
"maxAmount": "1"
},
{
- "minAmount": "13",
- "weight": "3.1496",
- "id": "0",
- "maxAmount": "13"
+ "minAmount": "1",
+ "weight": "18.0",
+ "id": "4091",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "18.0",
+ "id": "4093",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "125",
+ "weight": "17.0",
+ "id": "450",
+ "maxAmount": "125"
+ },
+ {
+ "minAmount": "35",
+ "weight": "18.0",
+ "id": "2362",
+ "maxAmount": "35"
+ },
+ {
+ "minAmount": "20",
+ "weight": "12.0",
+ "id": "452",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "100",
+ "weight": "12.0",
+ "id": "8781",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "150",
+ "weight": "12.0",
+ "id": "8836",
+ "maxAmount": "150"
+ },
+ {
+ "minAmount": "100",
+ "weight": "18.0",
+ "id": "1754",
+ "maxAmount": "100"
+ },
+ {
+ "minAmount": "75",
+ "weight": "12.0",
+ "id": "1514",
+ "maxAmount": "75"
+ },
+ {
+ "minAmount": "1",
+ "weight": "8.0",
+ "id": "31",
+ "maxAmount": "1"
}
]
},
@@ -63581,7 +57563,7 @@
{
"minAmount": "1",
"weight": "100.0",
- "id": "3179",
+ "id": "526",
"maxAmount": "1"
}
],
@@ -63600,7 +57582,7 @@
}
],
"charm": [],
- "ids": "1904,6368,6367,912,913,914,255,256,27,34,35,689,690,691,3814,3816,4402,4403",
+ "ids": "1904,6368,6367,912,913,914,253,254,255,256,258,27,34,35,689,690,691,3814,3816,4402,4403",
"description": "",
"main": [
{
@@ -63611,13 +57593,6 @@
}
]
},
- {
- "default": [],
- "charm": [],
- "ids": "61,47",
- "description": "",
- "main": []
- },
{
"default": [
{
@@ -64115,5 +58090,750 @@
"maxAmount": "1"
}
]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "2892",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1480",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "4910",
+ "description": "Earth Elemental",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "565",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "560",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "563",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "12.0",
+ "id": "562",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "15",
+ "weight": "12.0",
+ "id": "557",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "10.0",
+ "id": "561",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "1385",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "14",
+ "weight": "45.0",
+ "id": "995",
+ "maxAmount": "42"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "31",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "2892",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1480",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "4911",
+ "description": "Elemental Rock",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [],
+ "charm": [],
+ "ids": "1020",
+ "description": "Wandering earth elemental",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "31",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "565",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "560",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "6.0",
+ "id": "563",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "12.0",
+ "id": "562",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "15",
+ "weight": "12.0",
+ "id": "557",
+ "maxAmount": "20"
+ },
+ {
+ "minAmount": "1",
+ "weight": "10.0",
+ "id": "1440",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "2",
+ "weight": "10.0",
+ "id": "561",
+ "maxAmount": "2"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "1385",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "14",
+ "weight": "45.0",
+ "id": "995",
+ "maxAmount": "42"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ],
+ "ids": "4396,4415",
+ "description": "Rat (Stronghold)",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3363",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3355",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "1232",
+ "description": "Pointed",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3367",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3357",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "1233",
+ "description": "Pointed",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3363",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3359",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "1234",
+ "description": "Pointed",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3367",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "3361",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "1235",
+ "description": "Pointed",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1019",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "180",
+ "description": "Old-Highwayman",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "837",
+ "description": "Shantay Guard",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1019",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "2677",
+ "description": "New-Highwayman",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "995",
+ "maxAmount": "25"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "9141",
+ "maxAmount": "15"
+ },
+ {
+ "minAmount": "1",
+ "weight": "23.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "447,448,449,917",
+ "description": "Jail Guard",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "2337",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "48",
+ "description": "",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "76",
+ "description": "Entrana Zombie",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "1139",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1291",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "50.0",
+ "id": "1351",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1349",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "556",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "4.0",
+ "id": "882",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "561",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "5",
+ "weight": "50.0",
+ "id": "313",
+ "maxAmount": "5"
+ },
+ {
+ "minAmount": "18",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "18"
+ },
+ {
+ "minAmount": "28",
+ "weight": "2.0",
+ "id": "995",
+ "maxAmount": "28"
+ },
+ {
+ "minAmount": "1",
+ "weight": "7.0",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "1993",
+ "description": "",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "532",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "6779",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "0.25",
+ "id": "10976",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "0.02",
+ "id": "10977",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "99.73",
+ "id": "0",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [],
+ "charm": [],
+ "ids": "1832",
+ "description": "Cave Bug (Level 6)",
+ "main": [
+ {
+ "minAmount": "8",
+ "weight": "5.0",
+ "id": "555",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "561",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "6",
+ "weight": "2.0",
+ "id": "557",
+ "maxAmount": "6"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "561",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "23.0",
+ "id": "14424",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "235",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "221",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "2.0",
+ "id": "223",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "225",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "231",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "3",
+ "weight": "8.0",
+ "id": "995",
+ "maxAmount": "3"
+ },
+ {
+ "minAmount": "1",
+ "weight": "64.0",
+ "id": "0",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "8",
+ "weight": "3.0",
+ "id": "995",
+ "maxAmount": "8"
+ },
+ {
+ "minAmount": "1",
+ "weight": "5.0",
+ "id": "36",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "3.0",
+ "id": "590",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "4527",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "3057,3059,3058,3060,3061,3062,3063,3064,3065,3066",
+ "description": "Champion's Challenge NPC - activity",
+ "main": []
+ },
+ {
+ "default": [],
+ "charm": [],
+ "ids": "2459,2460,2461,2462",
+ "description": "Pheasant NPC (level 4) - Freaky Forester - Random event",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "6178",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "4184",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "1676",
+ "description": "Experiment (level 51)",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "3672,3673,5168,5169,5170",
+ "description": "Ram",
+ "main": []
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "526",
+ "maxAmount": "1"
+ },
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1583",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "6108",
+ "description": "",
+ "main": []
+ },
+ {
+ "default": [],
+ "charm": [],
+ "ids": "795",
+ "description": "",
+ "main": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "1580",
+ "maxAmount": "1"
+ }
+ ]
+ },
+ {
+ "default": [
+ {
+ "minAmount": "1",
+ "weight": "1.0",
+ "id": "592",
+ "maxAmount": "1"
+ }
+ ],
+ "charm": [],
+ "ids": "8127",
+ "description": "Dark energy core",
+ "main": []
}
]
\ No newline at end of file
diff --git a/Server/data/configs/ground_spawns.json b/Server/data/configs/ground_spawns.json
index 56335db0a..ca2b6f773 100644
--- a/Server/data/configs/ground_spawns.json
+++ b/Server/data/configs/ground_spawns.json
@@ -1,598 +1,670 @@
[
{
- "item_id": "28",
- "loc_data": "{1,2807,3450,0,7864410}"
- },
- {
- "item_id": "33",
- "loc_data": "{1,2547,3114,0,983050}-{1,3208,3395,1,3932190}"
- },
- {
- "item_id": "39",
- "loc_data": "{1,2672,3433,0,7209050}"
- },
- {
- "item_id": "41",
- "loc_data": "{1,3125,9997,0,7209050}"
- },
- {
- "item_id": "88",
- "loc_data": "{1,2654,9767,0,4587583}"
- },
- {
- "item_id": "90",
- "loc_data": "{1,2570,9604,0,5898270}"
- },
- {
- "item_id": "185",
- "loc_data": "{1,2467,3176,0,7209050}"
- },
- {
- "item_id": "223",
- "loc_data": "{1,3128,9956,0,7864410}-{1,3129,9954,0,7864410}-{1,3126,9958,0,7864410}-{1,3117,9951,0,7864410}-{1,3118,9948,0,7864410}-{1,3119,9949,0,7864410}-{1,3179,9881,0,7864410}-{1,3177,9880,0,7864410}"
- },
- {
- "item_id": "229",
- "loc_data": "{1,2809,3342,0,7864420}-{1,2808,3343,0,7864420}-{1,2588,3090,2,7209050}-{1,2587,3090,2,7209050}-{1,3195,3849,0,6553660}-{1,3186,3836,0,6553660}"
- },
- {
- "item_id": "231",
- "loc_data": "{1,2905,3297,0,1310730}-{1,2907,3295,0,1310730}-{1,2553,3751,0,7864410}-{1,2553,3754,0,7864410}-{1,2552,3757,0,7864410}-{1,2546,3763,0,7864410}-{1,2542,3765,0,7864410}-{1,2540,3765,0,7864410}-{1,2528,3716,0,7864410}-{1,2501,3727,0,7864410}-{1,2502,3726,0,7864410}-{1,2501,3729,0,7864410}-{1,2500,3730,0,7864410}-{1,2500,3731,0,7864410}-{1,2501,3732,0,7864410}-{1,2503,3733,0,7864410}-{1,2504,3732,0,7864410}-{1,2506,3731,0,7864410}-{1,2529,3735,0,7864410}-{1,2531,3736,0,7864410}-{1,2527,3746,0,7864410}-{1,2525,3751,0,7864410}-{1,2532,3762,0,7864410}-{1,2503,3757,0,5898270}-{1,2502,3756,0,5898270}-{1,2502,3754,0,5898270}-{1,2502,3752,0,5898270}-{1,2503,3751,0,5898270}-{1,2505,3753,0,5898270}"
- },
- {
- "item_id": "239",
- "loc_data": "{1,3217,3812,0,196610}-{1,3210,3808,0,196610}"
- },
- {
- "item_id": "243",
- "loc_data": "{1,2910,9809,0,196610}-{1,2908,9805,0,196610}-{1,2902,9806,0,196610}-{1,2906,9796,0,196610}-{1,2905,9801,0,196610}"
- },
- {
- "item_id": "245",
- "loc_data": "{1,2931,3515,0,4587570}"
- },
- {
- "item_id": "247",
- "loc_data": "{1,2512,3080,0,5898270}-{1,2517,3082,0,5898270}-{1,2509,3088,0,5898270}-{1,2508,3084,0,5898270}"
- },
- {
- "item_id": "272",
- "loc_data": "{1,3108,3356,1,10485900}"
- },
- {
- "item_id": "273",
- "loc_data": "{1,3097,3366,0,10485900}"
- },
- {
- "item_id": "276",
- "loc_data": "{1,3111,3367,0,4587570}"
- },
- {
- "item_id": "277",
- "loc_data": "{1,3092,9755,0,4587570}"
- },
- {
- "item_id": "278",
- "loc_data": "{1,2604,3358,0,4587570}"
- },
- {
- "item_id": "301",
- "loc_data": "{1,2608,3397,0,7209050}"
- },
- {
- "item_id": "303",
- "loc_data": "{1,3245,3155,0,10485900}-{1,3244,3159,0,10485900}"
- },
- {
- "item_id": "305",
- "loc_data": "{1,2605,3395,0,7209050}"
- },
- {
- "item_id": "307",
- "loc_data": "{1,2860,3335,0,13762750}"
- },
- {
- "item_id": "311",
- "loc_data": "{1,2605,3396,0,7209050}"
- },
- {
- "item_id": "347",
- "loc_data": "{1,2563,9511,0,5898270}"
- },
- {
- "item_id": "357",
- "loc_data": "{1,2820,3453,0,7209050}"
- },
- {
- "item_id": "401",
- "loc_data": "{1,2810,3387,0,11796640}-{1,2809,3388,0,11796640}-{1,2809,3385,0,11796640}-{1,2807,3386,0,11796640}-{1,2804,3385,0,11796640}-{1,2807,3384,0,11796640}-{1,2805,3384,0,11796640}-{1,2802,3382,0,11796640}-{1,2805,3381,0,11796640}-{1,2804,3380,0,11796640}-{1,3829,3053,0,11796640}-{1,3813,3066,0,11796640}-{1,3814,3064,0,11796640}-{1,3808,3060,0,11796640}-{1,2693,3727,0,11796640}-{1,2698,3729,0,11796640}-{1,2700,3731,0,11796640}-{1,2708,3728,0,11796640}-{1,2725,3731,0,11796640}-{1,2721,3730,0,11796640}-{1,2719,3733,0,11796640}-{1,2714,3733,0,11796640}-{1,2712,3732,0,11796640}-{1,2896,3119,0,11796640}-{1,2914,3111,0,11796640}-{1,2926,3110,0,11796640}-{1,2939,3102,0,11796640}-{1,2938,3073,0,11796640}-{1,2945,3068,0,11796640}-{1,2975,3013,0,11796640}-{1,2955,3010,0,11796640}-{1,2959,2959,0,11796640}-{1,2943,2950,0,11796640}-{1,2866,2976,0,11796640}-{1,2854,2977,0,11796640}-{1,2840,2974,0,11796640}-{1,2757,2947,0,11796640}-{1,2755,2952,0,11796640}-{1,2786,2960,0,11796640}-{1,2782,2987,0,11796640}-{1,2771,2995,0,11796640}-{1,2761,3000,0,11796640}-{1,2755,3008,0,11796640}-{1,2754,3017,0,11796640}-{1,2756,3060,0,11796640}-{1,2755,3070,0,11796640}-{1,2756,3074,0,11796640}-{1,2806,3128,0,11796640}-{1,2864,3195,0,11796640}-{1,2764,3131,0,11796640}-{1,2753,3125,0,11796640}-{1,2757,3109,0,11796640}"
- },
- {
- "item_id": "444",
- "loc_data": "{1,3195,9821,0,11141270}-{1,3231,3739,0,19661050}-{1,3236,3741,0,19661050}"
- },
- {
- "item_id": "480",
- "loc_data": "{1,3298,3313,0,5898270}"
- },
- {
- "item_id": "526",
- "loc_data": "{1,2917,9796,0,7864410}-{1,2914,9796,0,7864410}-{1,2910,9797,0,7864410}-{1,2908,9794,0,7864410}-{1,3103,9953,0,7864410}-{1,3104,9950,0,7864410}-{1,3110,9952,0,7864410}-{1,3111,9956,0,7864410}-{1,3110,9958,0,7864410}-{1,3111,9959,0,7864410}-{1,3116,9950,0,7864410}-{1,3127,9957,0,7864410}-{1,2926,9801,0,7864410}-{1,2924,9801,0,7864410}-{1,2924,9804,0,7864410}-{1,2927,9805,0,7864410}-{1,2929,9807,0,7864410}-{1,2938,9792,0,7864410}-{1,2938,9796,0,7864410}-{1,2935,9799,0,7864410}-{1,2930,9794,0,7864410}-{1,2932,9792,0,7864410}-{1,2966,9772,0,7864410}-{1,2968,9771,0,7864410}-{1,2903,9826,0,7864410}-{1,2906,9823,0,7864410}-{1,2906,9825,0,7864410}-{1,2907,9824,0,7864410}-{1,2910,9825,0,7864410}-{1,3101,9825,0,7864410}-{1,3107,9823,0,7864410}-{1,3109,9823,0,7864410}-{1,3110,9825,0,7864410}-{1,3138,9880,0,7864410}-{1,3141,9879,0,7864410}-{1,3142,9880,0,7864410}-{1,3143,9878,0,7864410}-{1,3097,9902,0,7864410}-{1,3094,9907,0,7864410}-{1,3093,9884,0,7864410}-{1,3098,9886,0,7864410}-{1,3093,9879,0,7864410}-{1,3122,9891,0,7864410}-{1,3116,9891,0,7864410}-{1,3119,9894,0,7864410}-{1,3120,9894,0,7864410}-{1,2831,9766,0,7864410}-{1,2829,9764,0,7864410}-{1,2510,3080,0,5898270}-{1,2516,3084,0,5898270}-{1,2509,3090,0,5898270}-{1,2512,3084,0,5898270}-{1,2510,3084,0,5898270}-{1,2505,3114,0,5898270}-{1,2507,3116,0,5898270}-{1,2503,3118,0,5898270}-{1,2510,3114,0,5898270}-{1,3238,3606,0,9830500}-{1,3236,3605,0,9830500}-{1,3238,3603,0,9830500}-{1,3240,3603,0,9830500}-{1,3242,3604,0,9830500}-{1,3244,3611,0,9830500}-{1,3247,3614,0,9830500}-{1,3238,3610,0,9830500}-{1,3238,3608,0,9830500}"
- },
- {
- "item_id": "528",
- "loc_data": "{1,3182,3848,0,6553650}-{1,3178,3851,0,6553660}-{1,3179,3853,0,6553660}-{1,3185,3857,0,6553660}-{1,3187,3853,0,6553660}-{1,3211,3822,0,6553660}-{1,3212,3819,0,6553660}-{1,3217,3816,0,6553660}-{1,3218,3813,0,6553660}"
- },
- {
- "item_id": "542",
- "loc_data": "{1,3059,3488,1,7209050}"
- },
- {
- "item_id": "544",
- "loc_data": "{1,3059,3487,1,7209050}"
- },
- {
- "item_id": "554",
- "loc_data": "{1,3303,3311,0,5898270}-{1,3026,3636,0,19661000}"
- },
- {
- "item_id": "555",
- "loc_data": "{1,3297,3316,0,5898270}-{1,3028,3636,0,19661000}"
- },
- {
- "item_id": "556",
- "loc_data": "{1,2938,3158,0,8519790}-{1,3030,3636,0,19661000}"
- },
- {
- "item_id": "557",
- "loc_data": "{1,3032,3636,0,19661000}"
- },
- {
- "item_id": "558",
- "loc_data": "{1,3206,3208,0,5898280}-{1,3023,3640,0,19661000}"
- },
- {
- "item_id": "559",
- "loc_data": "{1,3089,3866,0,5898270}-{1,3021,3637,0,19661000}-{1,3233,3573,0,19661000}-{1,3234,3578,0,19661000}-{1,3230,3582,0,19661000}"
- },
- {
- "item_id": "561",
- "loc_data": "{1,2671,3737,0,19661000}-{1,2672,3738,0,19661000}"
- },
- {
- "item_id": "562",
- "loc_data": "{1,3021,3640,0,19661000}"
- },
- {
- "item_id": "590",
- "loc_data": "{1,3112,3369,2,10485900}-{1,3209,3734,0,13107300}"
- },
- {
- "item_id": "687",
- "loc_data": "{1,2655,3424,0,6553680}-{1,2665,3424,0,6553680}-{1,2669,3423,0,6553680}-{1,2668,3419,0,6553680}-{1,2671,3420,0,6553680}-{1,2677,3423,0,6553680}-{1,2676,3425,0,6553680}-{1,2676,3422,0,6553680}-{1,2679,3424,0,6553680}-{1,2678,3426,0,6553680}-{1,2679,3423,0,6553680}-{1,2680,3424,0,6553680}-{1,2672,3427,0,6553680}-{1,2676,3430,0,6553680}-{1,2673,3428,0,6553680}-{1,2670,3437,0,6553680}"
- },
- {
- "item_id": "712",
- "loc_data": "{1,2887,3412,0,5898270}-{1,2903,3441,0,5898270}"
- },
- {
- "item_id": "767",
- "loc_data": "{1,3245,3385,1,4587570}-{1,3243,3383,1,4587570}"
- },
- {
- "item_id": "882",
- "loc_data": "{1,3135,9916,0,10485900}-{3,3130,9903,0,10485900}-{1,3205,3227,0,10485900}-{1,2957,3205,0,5898270}-{1,2944,3332,0,5898270}-{1,3104,3599,0,13107300}-{1,3103,3596,0,13107300}-{1,3100,3593,0,13107300}-{1,3096,3595,0,13107300}-{1,3094,3598,0,13107300}-{1,3100,3609,0,13107300}-{1,3104,3610,0,13107300}-{1,3107,3611,0,13107300}-{1,3108,3603,0,13107300}"
- },
- {
- "item_id": "946",
- "loc_data": "{1,3218,9887,0,6553680}{1,2700,3407,0,6553680}-{1,3205,3212,0,6553680}-{1,3215,9625,0,6553680}-{1,3224,3202,0,6553680}-{1,2903,3148,0,6553680}-{1,2820,3450,0,7209050}-{1,3218,3416,1,7864410}-{1,3106,3956,0,5242940}-{1,2566,9526,0,5898270}"
- },
- {
- "item_id": "952",
- "loc_data": "{1,3120,3359,0,8519790}-{1,2981,3370,0,9830490}-{1,3572,3312,0,3276830}-{1,3571,3310,0,3276830}-{1,3218,3412,1,5898270}-{1,1951,4964,0,5898270}"
- },
- {
- "item_id": "954",
- "loc_data": "{1,2094,3152,0,11141270}"
- },
- {
- "item_id": "960",
- "loc_data": "{1,2846,3384,0,11796640}-{1,2848,3383,0,11796640}-{1,2851,3239,0,11796640}-{1,2847,3238,0,11796640}-{1,2845,3232,0,11796640}-{1,2856,3231,0,11796640}-{1,2857,3236,0,11796640}-{1,3216,3665,0,16384200}-{1,3224,3668,0,16384200}-{1,3245,3678,0,16384200}-{1,3230,3686,0,16384200}-{1,3216,3677,0,16384200}-{1,3219,3680,0,16384200}"
- },
- {
- "item_id": "966",
- "loc_data": "{1,3237,3696,0,13107350}"
- },
- {
- "item_id": "970",
- "loc_data": "{1,3290,3033,1,7864410}"
- },
- {
- "item_id": "983",
- "loc_data": "{1,3131,9862,0,7209050}"
- },
- {
- "item_id": "995",
- "loc_data": "{1,2909,9800,0,11141270}-{4,2912,9801,0,11141270}-{8,2910,9803,0,11141270}-{5,2907,9807,0,11141270}-{6,2913,9806,0,11141270}-{1,2922,9820,0,11141270}-{1,2934,9834,0,11141270}-{1,2917,9850,0,11141270}-{1,2914,9849,0,11141270}-{4,3088,9898,0,11141270}-{1,3088,9899,0,11141270}-{1,3091,9899,0,11141270}-{3,3195,9834,0,11141270}-{4,3195,9820,0,11141270}-{66,3191,9821,0,11141270}-{56,3190,9819,0,11141270}-{26,3188,9819,0,11141270}-{26,3188,9820,0,11141270}-{35,3189,9819,0,11141270}-{384,3224,3830,0,6553650}-{384,3220,3824,0,6553650}-{2,3106,3547,0,13107300}-{1,3104,3558,0,13107300}-{1,3106,3534,0,13107300}-{2,3101,3564,0,13107300}-{4,3103,3579,0,13107300}-{2,3234,3560,0,13107300}"
- },
- {
- "item_id": "1005",
- "loc_data": "{1,3014,3227,0,3276830}-{1,3009,3204,0,3276830}"
- },
- {
- "item_id": "1009",
- "loc_data": "{1,3122,9881,0,3276830}"
- },
- {
- "item_id": "1059",
- "loc_data": "{1,3242,3385,1,7209050}-{1,3097,3486,0,7864410}-{1,3148,3177,0,5898270}"
- },
- {
- "item_id": "1061",
- "loc_data": "{1,3244,3386,1,13762750}-{1,3208,9620,0,13762750}-{1,3210,9615,0,13762750}-{1,3111,3159,0,13762750}-{1,3112,3155,0,7864420}-{1,3302,3190,0,5898270}"
- },
- {
- "item_id": "1119",
- "loc_data": "{1,3084,3859,0,6553660}"
- },
- {
- "item_id": "1137",
- "loc_data": "{1,3242,3688,0,13107350}"
- },
- {
- "item_id": "1139",
- "loc_data": "{1,3122,3360,0,13762750}"
- },
- {
- "item_id": "1171",
- "loc_data": "{1,3217,3514,0,2949150}"
- },
- {
- "item_id": "1191",
- "loc_data": "{1,3250,3797,0,13107350}"
- },
- {
- "item_id": "1203",
- "loc_data": "{1,3242,3383,1,17039600}-{1,3248,3245,0,13107380}-{1,3216,3695,0,13107350}"
- },
- {
- "item_id": "1205",
- "loc_data": "{1,3213,3216,1,13762750}"
- },
- {
- "item_id": "1207",
- "loc_data": "{1,3213,3682,0,13107300}"
- },
- {
- "item_id": "1217",
- "loc_data": "{1,3180,3821,0,6553660}"
- },
- {
- "item_id": "1265",
- "loc_data": "{1,3081,3429,0,6553650}-{1,3288,9442,0,7864410}-{1,3288,9431,0,7864410}-{1,2963,3216,0,5898270}-{1,3229,3218,2,100}"
- },
- {
- "item_id": "1321",
- "loc_data": "{1,2965,3211,1,5898270}"
- },
- {
- "item_id": "1351",
- "loc_data": "{1,2795,3161,0,17039600}-{1,2970,3376,1,5898270}"
- },
- {
- "item_id": "1385",
- "loc_data": "{1,3099,3862,0,58983299}"
- },
- {
- "item_id": "1422",
- "loc_data": "{1,3320,3137,0,11141270}"
- },
- {
- "item_id": "1511",
- "loc_data": "{1,3205,3226,2,11796640}-{1,3205,3224,2,11796640}-{1,3208,3225,2,11796640}-{1,3209,3224,2,11796640}-{1,3106,3160,0,11796640}-{1,3106,3159,0,11796640}-{1,3105,3159,0,11796640}-{1,2958,3205,0,5898270}-{1,2959,3205,0,5898270}"
- },
- {
- "item_id": "1523",
- "loc_data": "{1,2614,9570,0,5898270}"
- },
- {
- "item_id": "1550",
- "loc_data": "{1,2714,3478,0,5898270}"
- },
- {
- "item_id": "1573",
- "loc_data": "{1,2740,3637,0,5898270}-{1,2736,3638,0,5898270}-{1,2735,3636,0,5898270}-{1,2743,3636,0,5898270}-{1,2739,3634,0,5898270}-{1,2743,3640,0,5898270}-{1,2741,3639,0,5898270}-{1,2736,3641,0,5898270}-{1,2738,3641,0,5898270}-{1,2734,3640,0,5898270}-{1,2738,3636,0,5898270}"
- },
- {
- "item_id": "1590",
- "loc_data": "{1,2900,9766,0,7209050}"
- },
- {
- "item_id": "1592",
- "loc_data": "{1,2935,3283,1,7209050}"
- },
- {
- "item_id": "1595",
- "loc_data": "{1,2928,3290,0,7209050}"
- },
- {
- "item_id": "1597",
- "loc_data": "{1,2932,3287,1,7209050}"
- },
- {
- "item_id": "1599",
- "loc_data": "{1,2931,3287,1,7209050}"
- },
- {
- "item_id": "1607",
- "loc_data": "{1,3169,3887,0,32768400}-{1,3169,3887,0,32768400}-{1,2679,3740,0,32768400}"
- },
- {
- "item_id": "1641",
- "loc_data": "{1,3196,9822,0,11141270}"
- },
- {
- "item_id": "1654",
- "loc_data": "{1,3192,9821,0,11141270}"
- },
- {
- "item_id": "1734",
- "loc_data": "{1,3286,3491,0,4587570}"
- },
- {
- "item_id": "1735",
- "loc_data": "{1,3192,3272,0,10485900}-{1,3126,3356,0,10485900}-{1,2930,3285,1,7209050}-{1,3152,3306,0,5898270}"
- },
- {
- "item_id": "1755",
- "loc_data": "{1,2935,3286,0,7209050}"
- },
- {
- "item_id": "1785",
- "loc_data": "{1,2822,3355,0,11141270}"
- },
- {
- "item_id": "1856",
- "loc_data": "{1,2638,3292,0,11141270}"
- },
- {
- "item_id": "1887",
- "loc_data": "{1,3141,3452,1,7209050}"
- },
- {
- "item_id": "1917",
- "loc_data": "{1,2799,3156,0,11141270}-{1,2796,3165,0,11141270}-{1,3080,3438,0,4587565}-{1,3286,3033,1,7864410}-{1,3077,3439,0,5898270}-{1,3077,3443,0,5898270}-{1,3049,3257,0,11141270}"
- },
- {
- "item_id": "1919",
- "loc_data": "{1,2798,3156,0,11141270}-{1,2799,3155,0,11141270}-{1,2795,3160,0,11141270}-{1,2798,3160,0,11141270}-{1,2798,3161,0,11141270}-{1,2795,3165,0,11141270}-{1,2794,3165,0,11141270}"
- },
- {
- "item_id": "1921",
- "loc_data": "{1,3291,3034,0,7209050}"
- },
- {
- "item_id": "1923",
- "loc_data": "{1,3208,3214,0,6553680}-{1,3140,3452,1,7209050}"
- },
- {
- "item_id": "1925",
- "loc_data": "{1,3225,3294,0,6553680}-{1,3121,3359,0,6553660}-{1,3216,9625,0,6553680}-{1,3026,3289,0,6553680}-{1,2958,3510,0,6553680}-{1,3221,3497,1,6553680}-{1,2958,3510,0,6553680}-{1,3222,3491,1,6553680}-{1,3307,3195,0,5898270}-{1,1941,4956,0,5898270}"
- },
- {
- "item_id": "1929",
- "loc_data": "{1,2820,3452,0,7209050}-{1,2823,3449,0,7209050}"
- },
- {
- "item_id": "1931",
- "loc_data": "{1,3209,3214,0,6553680}-{1,3144,3449,2,7209050}-{1,3166,3310,0,7864410}"
- },
- {
- "item_id": "1935",
- "loc_data": "{1,3211,3212,0,6553680}-{1,3211,9625,0,6553680}-{1,2905,3146,0,6553680}-{1,2936,3292,0,7209050}-{1,3142,3447,2,7209050}"
- },
- {
- "item_id": "1939",
- "loc_data": "{1,3193,3181,0,11141270}-{1,3194,3168,0,11141270}-{1,3191,3162,0,11141270}-{1,3189,3163,0,11141270}-{1,3185,3161,0,11141270}-{1,3182,3165,0,11141270}-{1,3172,3166,0,11141270}-{1,3170,3167,0,11141270}-{1,3164,3169,0,11141270}-{1,3171,3177,0,11141270}-{1,3173,3178,0,11141270}-{1,3164,3180,0,11141270}-{1,3165,3187,0,11141270}-{1,3171,3191,0,11141270}-{1,3178,3190,0,11141270}-{1,3181,3193,0,11141270}-{1,3182,3181,0,11141270}-{1,3493,3408,0,3932190}-{1,3494,3402,0,3932190}-{1,3494,3396,0,3932190}-{1,3499,3401,0,3932190}"
- },
- {
- "item_id": "1944",
- "loc_data": "{1,3229,3299,0,3604515}-{1,3226,3301,0,3604515}-{1,3191,3276,0,3604515}-{1,2853,3370,0,3604515}-{1,2852,3369,0,3604515}-{1,2851,3372,0,3604515}-{1,3015,3295,0,5898270}-{1,3016,3295,0,5898270}"
- },
- {
- "item_id": "1955",
- "loc_data": "{1,3141,3447,1,7209050}-{1,3140,3447,1,7209050}-{1,3141,3447,2,7209050}"
- },
- {
- "item_id": "1963",
- "loc_data": "{1,2907,3146,0,11141270}-{1,3009,3207,0,11141270}"
- },
- {
- "item_id": "1965",
- "loc_data": "{1,3217,9622,0,7209050}"
- },
- {
- "item_id": "1971",
- "loc_data": "{1,2843,3369,0,11796640}"
- },
- {
- "item_id": "1973",
- "loc_data": "{1,3143,3453,0,5242920}-{1,2384,4440,0,5242920}"
- },
- {
- "item_id": "1982",
- "loc_data": "{1,3085,3261,0,11141270}-{1,3039,3706,0,1310735}"
- },
- {
- "item_id": "1985",
- "loc_data": "{1,3083,3260,0,11141270}-{1,3039,3707,0,1310735}"
- },
- {
- "item_id": "1987",
- "loc_data": "{1,3237,9761,0,7209050}-{1,3144,3450,2,7209050}"
- },
- {
- "item_id": "1993",
- "loc_data": "{1,3291,3033,1,7864410}"
- },
- {
- "item_id": "2025",
- "loc_data": "{1,2449,3510,1,7864410}"
- },
- {
- "item_id": "2026",
- "loc_data": "{1,2483,3482,1,7864410}-{1,2489,3489,1,7864410}"
- },
- {
- "item_id": "2140",
- "loc_data": "{1,2971,3382,1,5898270}"
- },
- {
- "item_id": "2142",
- "loc_data": "{1,3080,3443,0,5898270}-{1,3077,3441,0,5898270}"
- },
- {
- "item_id": "2150",
- "loc_data": "{1,2418,3511,0,3932190}-{1,2417,3512,0,3932190}-{1,2416,3512,0,5898270}-{1,2412,3511,0,5898270}-{1,2411,3519,0,5898270}-{1,2415,3518,0,5898270}-{1,2417,3516,0,5898270}-{1,2417,3515,0,5898270}-{1,2421,3519,0,5898270}-{1,2424,3517,0,5898270}-{1,2424,3514,0,5898270}-{1,2428,3510,0,5898270}-{1,2407,3516,0,5898270}-{1,2907,3393,0,5898270}-{1,2903,3400,0,5898270}-{1,2908,3410,0,5898270}"
- },
- {
- "item_id": "2162",
- "loc_data": "{1,2425,3515,0,5898270}-{1,2415,3517,0,5898270}-{1,2414,3518,0,5898270}-{1,2419,3511,0,5898270}-{1,2415,3511,0,5898270}-{1,2414,3510,0,5898270}-{1,2427,3508,0,5898270}-{1,2426,3507,0,5898270}-{1,2408,3518,0,5898270}-{1,2896,3414,0,5898270}"
- },
- {
- "item_id": "2313",
- "loc_data": "{1,3142,3447,1,7209050}-{1,2820,3455,0,7209050}-{1,3222,3494,0,7864410}"
- },
- {
- "item_id": "2347",
- "loc_data": "{1,2934,3286,0,7209050}-{1,2579,3463,0,5242920}-{1,2975,3368,1,5898270}-{1,1953,4974,0,5898270}"
- },
- {
- "item_id": "2351",
- "loc_data": "{1,3062,3657,0,11141270}"
- },
- {
- "item_id": "2357",
- "loc_data": "{1,3192,9822,0,11141270}"
- },
- {
- "item_id": "2398",
- "loc_data": "{1,2517,3049,0,6553650}-{1,2511,3045,0,6553650}"
- },
- {
- "item_id": "2407",
- "loc_data": "{1,2935,3460,0,5}"
- },
- {
- "item_id": "2408",
- "loc_data": "{1,2903,3471,0,5}"
- },
- {
- "item_id": "3109",
- "loc_data": "{1,2893,3565,0,1441794}"
- },
- {
- "item_id": "3110",
- "loc_data": "{1,2893,3564,0,1441794}"
- },
- {
- "item_id": "3111",
- "loc_data": "{1,2893,3561,0,1441794}"
- },
- {
- "item_id": "3112",
- "loc_data": "{1,2893,3563,0,1441794}"
- },
- {
- "item_id": "3113",
- "loc_data": "{1,2893,3562,0,1441794}"
- },
- {
- "item_id": "3138",
- "loc_data": "{1,3463,9478,2,3932205}-{1,3461,9480,2,3932205}-{1,3461,9482,2,3932205}-{1,3461,9484,2,3932205}"
- },
- {
- "item_id": "3711",
- "loc_data": "{1,2660,3676,0,196}"
- },
- {
- "item_id": "3803",
- "loc_data": "{1,2658,3676,0,1966}"
- },
- {
- "item_id": "3805",
- "loc_data": "{1,2659,3676,0,196}"
- },
- {
- "item_id": "4707",
- "loc_data": "{1,3571,3312,0,3932200}"
- },
- {
- "item_id": "5523",
- "loc_data": "{1,2935,3282,1,7209050}"
- },
- {
- "item_id": "6291",
- "loc_data": "{1,2681,3111,0,5898270}-{1,2673,3112,0,5898270}-{1,2674,3094,0,5898270}-{1,2671,3089,0,5898270}"
- },
- {
- "item_id": "6662",
- "loc_data": "{1,2984,3112,0,8519770}"
- },
- {
- "item_id": "6663",
- "loc_data": "{1,2984,3114,0,8519770}"
- },
- {
- "item_id": "11065",
- "loc_data": "{1,2928,3289,0,7209050}"
- },
- {
- "item_id": "12494",
- "loc_data": "{1,2762,2973,0,7864380}"
- },
- {
- "item_id": "5008",
- "loc_data": "{1,3230,9609,0,300}"
- },
- {
- "item_id": "7510",
- "loc_data": "{1,2867,9875,0,300}"
- },
- {
- "item_id": "1913",
- "loc_data": "{1,2863,9875,0,300}-{1,2861,9878,0,300}"
- },
- {
- "item_id": "4619",
- "loc_data": "{1,2713,4913,0,2}"
- },
- {
- "item_id": "2964",
- "loc_data": "{1,3437,3337,0,100}"
- },
- {
- "item_id": "2957",
- "loc_data": "{1,3443,9742,0,100}-{1,3443,9742,1,100}"
+ "item_id": "20",
+ "loc_data": "{1,2577,9655,0,100}-"
},
{
"item_id": "21",
- "loc_data": "{1,2613,9639,0,100}"
- },
- {
- "item_id": "23",
- "loc_data": "{1,2583,9613,0,100}"
- },
- {
- "item_id": "24",
- "loc_data": "{1,2564,9662,0,100}"
- },
- {
- "item_id": "20",
- "loc_data": "{1,2577,9655,0,100}"
+ "loc_data": "{1,2613,9639,0,100}-"
},
{
"item_id": "22",
- "loc_data": "{1,2574,9633,0,100}"
+ "loc_data": "{1,2574,9633,0,100}-"
+ },
+ {
+ "item_id": "23",
+ "loc_data": "{1,2583,9613,0,100}-"
+ },
+ {
+ "item_id": "24",
+ "loc_data": "{1,2564,9662,0,100}-"
+ },
+ {
+ "item_id": "28",
+ "loc_data": "{1,2807,3450,0,90}-"
+ },
+ {
+ "item_id": "33",
+ "loc_data": "{1,2547,3114,0,10}-{1,3208,3395,1,30}-"
+ },
+ {
+ "item_id": "39",
+ "loc_data": "{1,2672,3433,0,90}-"
+ },
+ {
+ "item_id": "41",
+ "loc_data": "{1,3125,9997,0,90}-"
+ },
+ {
+ "item_id": "53",
+ "loc_data": "{3,3240,3940,0,44}-{2,3237,3948,0,44}-{3,3235,3949,0,44}-"
+ },
+ {
+ "item_id": "83",
+ "loc_data": "{1,2637,9819,0,30}-"
+ },
+ {
+ "item_id": "84",
+ "loc_data": "{1,2638,9906,0,30}-"
+ },
+ {
+ "item_id": "85",
+ "loc_data": "{1,2628,9859,0,30}-"
+ },
+ {
+ "item_id": "88",
+ "loc_data": "{1,2654,9767,0,63}-"
+ },
+ {
+ "item_id": "90",
+ "loc_data": "{1,2570,9604,0,30}-"
+ },
+ {
+ "item_id": "185",
+ "loc_data": "{1,2467,3176,0,90}-"
+ },
+ {
+ "item_id": "223",
+ "loc_data": "{1,3179,9881,0,90}-{1,3177,9880,0,90}-{1,3128,9956,0,90}-{1,3129,9954,0,90}-{1,3126,9958,0,90}-{1,3117,9951,0,90}-{1,3118,9948,0,90}-{1,3119,9949,0,90}-"
+ },
+ {
+ "item_id": "229",
+ "loc_data": "{1,2588,3090,2,90}-{1,2587,3090,2,90}-{1,2809,3342,0,100}-{1,2808,3343,0,100}-{1,3186,3836,0,60}-{1,3195,3849,0,60}-"
+ },
+ {
+ "item_id": "231",
+ "loc_data": "{1,2905,3297,0,10}-{1,2907,3295,0,10}-{1,2553,3751,0,90}-{1,2553,3754,0,90}-{1,2552,3757,0,90}-{1,2546,3763,0,90}-{1,2542,3765,0,90}-{1,2540,3765,0,90}-{1,2528,3716,0,90}-{1,2501,3727,0,90}-{1,2502,3726,0,90}-{1,2501,3729,0,90}-{1,2500,3730,0,90}-{1,2500,3731,0,90}-{1,2501,3732,0,90}-{1,2503,3733,0,90}-{1,2504,3732,0,90}-{1,2506,3731,0,90}-{1,2529,3735,0,90}-{1,2531,3736,0,90}-{1,2527,3746,0,90}-{1,2525,3751,0,90}-{1,2532,3762,0,90}-{1,2503,3757,0,30}-{1,2502,3756,0,30}-{1,2502,3754,0,30}-{1,2502,3752,0,30}-{1,2503,3751,0,30}-{1,2505,3753,0,30}-"
+ },
+ {
+ "item_id": "239",
+ "loc_data": "{1,3217,3812,0,2}-{1,3210,3808,0,2}-"
+ },
+ {
+ "item_id": "243",
+ "loc_data": "{1,2910,9809,0,30}-{1,2908,9805,0,30}-{1,2902,9806,0,30}-{1,2906,9796,0,30}-{1,2905,9801,0,30}-"
+ },
+ {
+ "item_id": "245",
+ "loc_data": "{1,2931,3515,0,50}-"
+ },
+ {
+ "item_id": "247",
+ "loc_data": "{1,2512,3080,0,30}-{1,2517,3082,0,30}-{1,2509,3088,0,30}-{1,2508,3084,0,30}-"
+ },
+ {
+ "item_id": "272",
+ "loc_data": "{1,3108,3356,1,140}-"
+ },
+ {
+ "item_id": "273",
+ "loc_data": "{1,3097,3366,0,140}-"
+ },
+ {
+ "item_id": "276",
+ "loc_data": "{1,3111,3367,0,50}-"
+ },
+ {
+ "item_id": "277",
+ "loc_data": "{1,3092,9755,0,50}-"
+ },
+ {
+ "item_id": "278",
+ "loc_data": "{1,2604,3358,0,50}-"
+ },
+ {
+ "item_id": "301",
+ "loc_data": "{1,2608,3397,0,90}-"
+ },
+ {
+ "item_id": "303",
+ "loc_data": "{1,3245,3155,0,140}-{1,3244,3159,0,140}-{1,3429,4784,0,75}-{1,3432,4783,0,75}-{1,3414,4768,0,75}-{1,3429,4769,0,75}-{1,3431,4772,0,75}-{1,3415,4786,0,75}-{1,3412,4784,0,75}-"
+ },
+ {
+ "item_id": "305",
+ "loc_data": "{1,2605,3395,0,90}-"
+ },
+ {
+ "item_id": "307",
+ "loc_data": "{1,2860,3335,0,190}-"
+ },
+ {
+ "item_id": "311",
+ "loc_data": "{1,2605,3396,0,90}-"
+ },
+ {
+ "item_id": "347",
+ "loc_data": "{1,2563,9511,0,30}-"
+ },
+ {
+ "item_id": "357",
+ "loc_data": "{1,2820,3453,0,90}-"
+ },
+ {
+ "item_id": "401",
+ "loc_data": "{1,2959,2959,0,160}-{1,2943,2950,0,160}-{1,2866,2976,0,160}-{1,2854,2977,0,160}-{1,2839,2975,0,160}-{1,2757,2947,0,160}-{1,2755,2952,0,160}-{1,2786,2960,0,160}-{1,2782,2987,0,160}-{1,2771,2995,0,160}-{1,2761,3000,0,160}-{1,3829,3053,0,160}-{1,3813,3066,0,160}-{1,3814,3064,0,160}-{1,3808,3060,0,160}-{1,2945,3068,0,160}-{1,2975,3013,0,160}-{1,2955,3010,0,160}-{1,2755,3008,0,160}-{1,2754,3017,0,160}-{1,2756,3060,0,160}-{1,2755,3070,0,160}-{1,2896,3119,0,160}-{1,2914,3111,0,160}-{1,2926,3110,0,160}-{1,2939,3102,0,160}-{1,2938,3073,0,160}-{1,2756,3074,0,160}-{1,2806,3128,0,160}-{1,2764,3131,0,160}-{1,2753,3125,0,160}-{1,2757,3109,0,160}-{1,2864,3195,0,160}-{1,2810,3387,0,160}-{1,2809,3388,0,160}-{1,2809,3385,0,160}-{1,2807,3386,0,160}-{1,2804,3385,0,160}-{1,2807,3384,0,160}-{1,2805,3384,0,160}-{1,2802,3382,0,160}-{1,2805,3381,0,160}-{1,2804,3380,0,160}-{1,2693,3727,0,160}-{1,2698,3729,0,160}-{1,2700,3731,0,160}-{1,2708,3728,0,160}-{1,2725,3731,0,160}-{1,2721,3730,0,160}-{1,2719,3733,0,160}-{1,2714,3733,0,160}-{1,2712,3732,0,160}-"
+ },
+ {
+ "item_id": "444",
+ "loc_data": "{1,3231,3739,0,250}-{1,3236,3741,0,250}-{1,3195,9821,0,150}-"
+ },
+ {
+ "item_id": "480",
+ "loc_data": "{1,3298,3313,0,30}-"
+ },
+ {
+ "item_id": "526",
+ "loc_data": "{1,2510,3080,0,30}-{1,2516,3084,0,30}-{1,2509,3090,0,30}-{1,2512,3084,0,30}-{1,2510,3084,0,30}-{1,2505,3114,0,30}-{1,2507,3116,0,30}-{1,2503,3118,0,30}-{1,2510,3114,0,30}-{1,3238,3606,0,100}-{1,3236,3605,0,100}-{1,3238,3603,0,100}-{1,3240,3603,0,100}-{1,3242,3604,0,100}-{1,3244,3611,0,100}-{1,3247,3614,0,100}-{1,3238,3610,0,100}-{1,3238,3608,0,100}-{1,3232,3948,0,100}-{1,3237,3938,0,100}-{1,3250,3952,0,100}-{1,2966,9772,0,90}-{1,2968,9771,0,90}-{1,2831,9766,0,90}-{1,2829,9764,0,90}-{1,2917,9796,0,90}-{1,2914,9796,0,90}-{1,2910,9797,0,90}-{1,2908,9794,0,90}-{1,2926,9801,0,90}-{1,2924,9801,0,90}-{1,2924,9804,0,90}-{1,2927,9805,0,90}-{1,2929,9807,0,90}-{1,2938,9792,0,90}-{1,2938,9796,0,90}-{1,2935,9799,0,90}-{1,2930,9794,0,90}-{1,2932,9792,0,90}-{1,2903,9826,0,90}-{1,2906,9823,0,90}-{1,2906,9825,0,90}-{1,2907,9824,0,90}-{1,2910,9825,0,90}-{1,3101,9825,0,90}-{1,3107,9823,0,90}-{1,3109,9823,0,90}-{1,3110,9825,0,90}-{1,3138,9880,0,90}-{1,3141,9879,0,90}-{1,3142,9880,0,90}-{1,3143,9878,0,90}-{1,3097,9902,0,90}-{1,3094,9907,0,90}-{1,3093,9884,0,90}-{1,3098,9886,0,90}-{1,3093,9879,0,90}-{1,3122,9891,0,90}-{1,3116,9891,0,90}-{1,3119,9894,0,90}-{1,3120,9894,0,90}-{1,3103,9953,0,90}-{1,3104,9950,0,90}-{1,3110,9952,0,90}-{1,3111,9956,0,90}-{1,3110,9958,0,90}-{1,3111,9959,0,90}-{1,3116,9950,0,90}-{1,3127,9957,0,90}-"
+ },
+ {
+ "item_id": "528",
+ "loc_data": "{1,3211,3822,0,60}-{1,3212,3819,0,60}-{1,3217,3816,0,60}-{1,3218,3813,0,60}-{1,3182,3848,0,50}-{1,3178,3851,0,60}-{1,3179,3853,0,60}-{1,3185,3857,0,60}-{1,3187,3853,0,60}-"
+ },
+ {
+ "item_id": "542",
+ "loc_data": "{1,3059,3488,1,90}-"
+ },
+ {
+ "item_id": "544",
+ "loc_data": "{1,3059,3487,1,90}-"
+ },
+ {
+ "item_id": "554",
+ "loc_data": "{1,3303,3311,0,30}-{1,3026,3636,0,200}-"
+ },
+ {
+ "item_id": "555",
+ "loc_data": "{1,3297,3316,0,30}-{1,3028,3636,0,200}-{3,2960,3899,0,200}-"
+ },
+ {
+ "item_id": "556",
+ "loc_data": "{1,2938,3158,0,110}-{1,3030,3636,0,200}-"
+ },
+ {
+ "item_id": "557",
+ "loc_data": "{1,3032,3636,0,200}-"
+ },
+ {
+ "item_id": "558",
+ "loc_data": "{1,3206,3208,0,40}-{1,3023,3640,0,200}-"
+ },
+ {
+ "item_id": "559",
+ "loc_data": "{1,3233,3573,0,200}-{1,3234,3578,0,200}-{1,3230,3582,0,200}-{1,3021,3637,0,200}-{1,3089,3866,0,30}-"
+ },
+ {
+ "item_id": "561",
+ "loc_data": "{1,2671,3737,0,200}-{1,2672,3738,0,200}-"
+ },
+ {
+ "item_id": "562",
+ "loc_data": "{1,3021,3640,0,200}-{1,3137,3833,0,200}-{1,3139,3814,0,200}-{1,3145,3814,0,200}-{1,3144,3826,0,200}-{1,3149,3823,0,200}-{1,3151,3831,0,200}-"
+ },
+ {
+ "item_id": "564",
+ "loc_data": "{3,2947,3898,0,200}-"
+ },
+ {
+ "item_id": "590",
+ "loc_data": "{1,2368,3135,0,140}-{1,2431,3072,0,140}-{1,3112,3369,2,140}-{1,3209,3734,0,100}-"
+ },
+ {
+ "item_id": "677",
+ "loc_data": "{1,3369,3378,0,150}-"
+ },
+ {
+ "item_id": "687",
+ "loc_data": "{1,2655,3424,0,80}-{1,2665,3424,0,80}-{1,2669,3423,0,80}-{1,2668,3419,0,80}-{1,2671,3420,0,80}-{1,2677,3423,0,80}-{1,2676,3425,0,80}-{1,2676,3422,0,80}-{1,2679,3424,0,80}-{1,2678,3426,0,80}-{1,2679,3423,0,80}-{1,2680,3424,0,80}-{1,2672,3427,0,80}-{1,2676,3430,0,80}-{1,2673,3428,0,80}-{1,2670,3437,0,80}-{1,2649,9854,0,80}-{1,2643,9853,0,80}-{1,2644,9851,0,80}-"
+ },
+ {
+ "item_id": "708",
+ "loc_data": "{1,3368,9770,0,30}-{1,3364,9764,0,30}-{1,3363,9831,0,30}-{1,3370,9826,0,30}-"
+ },
+ {
+ "item_id": "712",
+ "loc_data": "{1,2887,3412,0,30}-{1,2903,3441,0,30}-"
+ },
+ {
+ "item_id": "767",
+ "loc_data": "{1,3245,3385,1,50}-{1,3243,3383,1,50}-"
+ },
+ {
+ "item_id": "882",
+ "loc_data": "{1,3205,3227,0,140}-{1,2957,3205,0,30}-{1,2944,3332,0,30}-{1,3104,3599,0,100}-{1,3103,3596,0,100}-{1,3100,3593,0,100}-{1,3096,3595,0,100}-{1,3094,3598,0,100}-{1,3100,3609,0,100}-{1,3104,3610,0,100}-{1,3107,3611,0,100}-{1,3108,3603,0,100}-{1,3135,9916,0,140}-{3,3130,9903,0,140}-"
+ },
+ {
+ "item_id": "946",
+ "loc_data": "{1,2903,3148,0,80}-{1,3205,3212,0,80}-{1,3224,3202,0,80}-{1,3218,3416,1,90}-{1,2820,3450,0,90}-{1,3106,3956,0,60}-{1,2566,9526,0,30}-{1,3215,9625,0,80}-{1,3218,9887,0,33}-{1,2700,3407,0,100}-"
+ },
+ {
+ "item_id": "952",
+ "loc_data": "{1,3572,3312,0,30}-{1,3571,3310,0,30}-{1,3120,3359,0,110}-{1,2566,3330,0,100}-{1,2981,3370,0,90}-{1,3218,3412,1,30}-{1,1951,4964,0,30}-"
+ },
+ {
+ "item_id": "954",
+ "loc_data": "{1,2094,3152,0,150}-{1,2785,3279,0,150}-{1,2786,3287,0,150}-{1,2786,3286,0,150}-"
+ },
+ {
+ "item_id": "960",
+ "loc_data": "{1,2851,3239,0,160}-{1,2847,3238,0,160}-{1,2845,3232,0,160}-{1,2856,3231,0,160}-{1,2857,3236,0,160}-{1,2846,3384,0,160}-{1,2848,3383,0,160}-{1,2550,3575,0,200}-{1,2553,3576,0,200}-{1,2554,3575,0,200}-{1,2556,3573,0,200}-{1,3216,3665,0,200}-{1,3224,3668,0,200}-{1,3245,3678,0,200}-{1,3230,3686,0,200}-{1,3216,3677,0,200}-{1,3219,3680,0,200}-"
+ },
+ {
+ "item_id": "966",
+ "loc_data": "{1,3237,3696,0,150}-"
+ },
+ {
+ "item_id": "970",
+ "loc_data": "{1,3290,3033,1,90}-"
+ },
+ {
+ "item_id": "983",
+ "loc_data": "{1,3131,9862,0,90}-"
+ },
+ {
+ "item_id": "995",
+ "loc_data": "{2,3234,3560,0,100}-{2,3106,3547,0,100}-{1,3104,3558,0,100}-{1,3106,3534,0,100}-{2,3101,3564,0,100}-{4,3103,3579,0,100}-{384,3224,3830,0,50}-{384,3220,3824,0,50}-{1,2909,9800,0,150}-{4,2912,9801,0,150}-{8,2910,9803,0,150}-{5,2907,9807,0,150}-{6,2913,9806,0,150}-{1,2922,9820,0,150}-{1,2934,9834,0,150}-{1,2917,9850,0,150}-{1,2914,9849,0,150}-{3,3195,9834,0,150}-{4,3195,9820,0,150}-{66,3191,9821,0,150}-{56,3190,9819,0,150}-{26,3188,9819,0,150}-{26,3188,9820,0,150}-{35,3189,9819,0,150}-{4,3088,9898,0,150}-{1,3088,9899,0,150}-{1,3091,9899,0,150}-"
+ },
+ {
+ "item_id": "1005",
+ "loc_data": "{1,3014,3227,0,30}-{1,3009,3204,0,30}-"
+ },
+ {
+ "item_id": "1009",
+ "loc_data": "{1,3122,9881,0,30}-"
+ },
+ {
+ "item_id": "1059",
+ "loc_data": "{1,3148,3177,0,30}-{1,3242,3385,1,90}-{1,3097,3486,0,90}-"
+ },
+ {
+ "item_id": "1061",
+ "loc_data": "{1,3111,3159,0,190}-{1,3112,3155,0,100}-{1,3302,3190,0,30}-{1,3244,3386,1,190}-{1,3208,9620,0,190}-{1,3210,9615,0,190}-"
+ },
+ {
+ "item_id": "1069",
+ "loc_data": "{1,3249,3740,0,90}-"
+ },
+ {
+ "item_id": "1119",
+ "loc_data": "{1,3084,3859,0,60}-"
+ },
+ {
+ "item_id": "1137",
+ "loc_data": "{1,3242,3688,0,150}-"
+ },
+ {
+ "item_id": "1139",
+ "loc_data": "{1,3122,3360,0,190}-"
+ },
+ {
+ "item_id": "1171",
+ "loc_data": "{1,3217,3514,0,30}-"
+ },
+ {
+ "item_id": "1191",
+ "loc_data": "{1,3250,3797,0,150}-"
+ },
+ {
+ "item_id": "1203",
+ "loc_data": "{1,3248,3245,0,180}-{1,3242,3383,1,240}-{1,3216,3695,0,150}-"
+ },
+ {
+ "item_id": "1205",
+ "loc_data": "{1,3213,3216,1,190}-"
+ },
+ {
+ "item_id": "1207",
+ "loc_data": "{1,3213,3682,0,100}-"
+ },
+ {
+ "item_id": "1217",
+ "loc_data": "{1,3180,3821,0,60}-"
+ },
+ {
+ "item_id": "1265",
+ "loc_data": "{1,3229,3218,2,100}-{1,2963,3216,0,30}-{1,3081,3429,0,50}-{1,3288,9442,0,90}-{1,3288,9431,0,90}-"
+ },
+ {
+ "item_id": "1321",
+ "loc_data": "{1,2965,3211,1,30}-"
+ },
+ {
+ "item_id": "1351",
+ "loc_data": "{1,2795,3161,0,240}-{1,2970,3376,1,30}-"
+ },
+ {
+ "item_id": "1385",
+ "loc_data": "{1,3099,3862,0,131}-"
+ },
+ {
+ "item_id": "1422",
+ "loc_data": "{1,3320,3137,0,150}-"
+ },
+ {
+ "item_id": "1467",
+ "loc_data": "{1,2784,3289,0,0}-"
+ },
+ {
+ "item_id": "1469",
+ "loc_data": "{1,2766,3277,0,100}-{1,2766,3289,0,100}-"
+ },
+ {
+ "item_id": "1510",
+ "loc_data": "{1,2576,3334,0,100}-"
+ },
+ {
+ "item_id": "1511",
+ "loc_data": "{1,3106,3160,0,160}-{1,3106,3159,0,160}-{1,3105,3159,0,160}-{1,3205,3226,2,160}-{1,3205,3224,2,160}-{1,3208,3225,2,160}-{1,3209,3224,2,160}-{1,2958,3205,0,30}-{1,2959,3205,0,30}-"
+ },
+ {
+ "item_id": "1523",
+ "loc_data": "{1,2614,9570,0,30}-"
+ },
+ {
+ "item_id": "1550",
+ "loc_data": "{1,2714,3478,0,30}-"
+ },
+ {
+ "item_id": "1573",
+ "loc_data": "{1,2559,2975,0,10}-{1,2560,2974,0,10}-{1,2561,2973,0,10}-{1,2561,2976,0,10}-{1,2740,3637,0,30}-{1,2736,3638,0,30}-{1,2735,3636,0,30}-{1,2743,3636,0,30}-{1,2739,3634,0,30}-{1,2743,3640,0,30}-{1,2741,3639,0,30}-{1,2736,3641,0,30}-{1,2738,3641,0,30}-{1,2734,3640,0,30}-{1,2738,3636,0,30}-"
+ },
+ {
+ "item_id": "1590",
+ "loc_data": "{1,2900,9766,0,90}-"
+ },
+ {
+ "item_id": "1592",
+ "loc_data": "{1,2935,3283,1,90}-"
+ },
+ {
+ "item_id": "1595",
+ "loc_data": "{1,2928,3290,0,90}-"
+ },
+ {
+ "item_id": "1597",
+ "loc_data": "{1,2932,3287,1,90}-"
+ },
+ {
+ "item_id": "1599",
+ "loc_data": "{1,2931,3287,1,90}-"
+ },
+ {
+ "item_id": "1607",
+ "loc_data": "{1,2679,3740,0,144}-{1,3169,3887,0,144}-{1,3169,3887,0,144}-"
+ },
+ {
+ "item_id": "1641",
+ "loc_data": "{1,3196,9822,0,150}-"
+ },
+ {
+ "item_id": "1654",
+ "loc_data": "{1,3192,9821,0,150}-"
+ },
+ {
+ "item_id": "1734",
+ "loc_data": "{1,3286,3491,0,50}-"
+ },
+ {
+ "item_id": "1735",
+ "loc_data": "{1,2930,3285,1,90}-{1,3192,3272,0,140}-{1,3152,3306,0,30}-{1,3126,3356,0,140}-"
+ },
+ {
+ "item_id": "1755",
+ "loc_data": "{1,2935,3286,0,90}-"
+ },
+ {
+ "item_id": "1785",
+ "loc_data": "{1,2822,3355,0,150}-"
+ },
+ {
+ "item_id": "1856",
+ "loc_data": "{1,2638,3292,0,150}-"
+ },
+ {
+ "item_id": "1887",
+ "loc_data": "{1,3141,3452,1,90}-"
+ },
+ {
+ "item_id": "1913",
+ "loc_data": "{1,2863,9875,0,44}-{1,2861,9878,0,44}-"
+ },
+ {
+ "item_id": "1917",
+ "loc_data": "{1,3286,3033,1,90}-{1,2799,3156,0,150}-{1,2796,3165,0,150}-{1,3049,3257,0,150}-{1,3080,3438,0,45}-{1,3077,3439,0,30}-{1,3077,3443,0,30}-"
+ },
+ {
+ "item_id": "1919",
+ "loc_data": "{1,2798,3156,0,150}-{1,2799,3155,0,150}-{1,2795,3160,0,150}-{1,2798,3160,0,150}-{1,2798,3161,0,150}-{1,2795,3165,0,150}-{1,2794,3165,0,150}-"
+ },
+ {
+ "item_id": "1921",
+ "loc_data": "{1,3291,3034,0,90}-"
+ },
+ {
+ "item_id": "1923",
+ "loc_data": "{1,3208,3214,0,80}-{1,3140,3452,1,90}-"
+ },
+ {
+ "item_id": "1925",
+ "loc_data": "{1,2428,3079,0,80}-{1,2428,3080,0,80}-{1,2371,3128,0,80}-{1,2371,3127,0,80}-{1,3307,3195,0,30}-{1,3225,3294,0,80}-{1,3026,3289,0,80}-{1,3121,3359,0,60}-{1,2564,3332,0,100}-{1,3221,3497,1,80}-{1,3222,3491,1,80}-{1,2958,3510,0,80}-{1,2958,3510,0,80}-{1,1941,4956,0,30}-{1,3216,9625,0,80}-{1,2633,9908,0,100}-"
+ },
+ {
+ "item_id": "1927",
+ "loc_data": "{1,2685,3683,0,174}-"
+ },
+ {
+ "item_id": "1929",
+ "loc_data": "{1,2820,3452,0,90}-{1,2823,3449,0,90}-"
+ },
+ {
+ "item_id": "1931",
+ "loc_data": "{1,3209,3214,0,80}-{1,3166,3310,0,90}-{1,3144,3449,2,90}-"
+ },
+ {
+ "item_id": "1935",
+ "loc_data": "{1,2905,3146,0,80}-{1,3211,3212,0,80}-{1,2936,3292,0,90}-{1,3142,3447,2,90}-{1,3211,9625,0,80}-"
+ },
+ {
+ "item_id": "1939",
+ "loc_data": "{1,3193,3181,0,150}-{1,3194,3168,0,150}-{1,3191,3162,0,150}-{1,3189,3163,0,150}-{1,3185,3161,0,150}-{1,3182,3165,0,150}-{1,3172,3166,0,150}-{1,3170,3167,0,150}-{1,3164,3169,0,150}-{1,3171,3177,0,150}-{1,3173,3178,0,150}-{1,3164,3180,0,150}-{1,3165,3187,0,150}-{1,3171,3191,0,150}-{1,3178,3190,0,150}-{1,3181,3193,0,150}-{1,3182,3181,0,150}-{1,3493,3408,0,30}-{1,3494,3402,0,30}-{1,3494,3396,0,30}-{1,3499,3401,0,30}-"
+ },
+ {
+ "item_id": "1944",
+ "loc_data": "{1,3191,3276,0,35}-{1,3229,3299,0,35}-{1,3226,3301,0,35}-{1,3015,3295,0,30}-{1,3016,3295,0,30}-{1,2853,3370,0,35}-{1,2852,3369,0,35}-{1,2851,3372,0,35}-{1,2453,4476,0,1}-"
+ },
+ {
+ "item_id": "1955",
+ "loc_data": "{1,3141,3447,1,90}-{1,3140,3447,1,90}-{1,3141,3447,2,90}-"
+ },
+ {
+ "item_id": "1963",
+ "loc_data": "{1,2907,3146,0,150}-{1,3009,3207,0,150}-"
+ },
+ {
+ "item_id": "1965",
+ "loc_data": "{1,3217,9622,0,90}-"
+ },
+ {
+ "item_id": "1971",
+ "loc_data": "{1,2843,3369,0,160}-"
+ },
+ {
+ "item_id": "1973",
+ "loc_data": "{1,3143,3453,0,40}-{1,2384,4440,0,40}-"
+ },
+ {
+ "item_id": "1982",
+ "loc_data": "{1,2584,2966,0,10}-{1,3085,3261,0,150}-{1,3039,3706,0,15}-"
+ },
+ {
+ "item_id": "1985",
+ "loc_data": "{1,3083,3260,0,150}-{1,3039,3707,0,15}-"
+ },
+ {
+ "item_id": "1987",
+ "loc_data": "{1,3144,3450,2,90}-{1,3237,9761,0,90}-"
+ },
+ {
+ "item_id": "1993",
+ "loc_data": "{1,3291,3033,1,90}-"
+ },
+ {
+ "item_id": "2025",
+ "loc_data": "{1,2449,3510,1,90}-"
+ },
+ {
+ "item_id": "2026",
+ "loc_data": "{1,2483,3482,1,90}-{1,2489,3489,1,90}-"
+ },
+ {
+ "item_id": "2126",
+ "loc_data": "{1,2661,3478,0,100}-{1,2638,3480,0,100}-{1,2632,3492,0,100}-{1,2648,3498,0,100}-{1,2669,3497,0,100}-"
+ },
+ {
+ "item_id": "2128",
+ "loc_data": "{1,2648,2963,0,10}-{1,2647,2956,0,10}-{1,2638,2949,0,10}-"
+ },
+ {
+ "item_id": "2140",
+ "loc_data": "{1,2971,3382,1,30}-"
+ },
+ {
+ "item_id": "2142",
+ "loc_data": "{1,3080,3443,0,30}-{1,3077,3441,0,30}-"
+ },
+ {
+ "item_id": "2150",
+ "loc_data": "{1,2907,3393,0,30}-{1,2903,3400,0,30}-{1,2908,3410,0,30}-{1,2418,3511,0,30}-{1,2417,3512,0,30}-{1,2416,3512,0,30}-{1,2412,3511,0,30}-{1,2411,3519,0,30}-{1,2415,3518,0,30}-{1,2417,3516,0,30}-{1,2417,3515,0,30}-{1,2421,3519,0,30}-{1,2424,3517,0,30}-{1,2424,3514,0,30}-{1,2428,3510,0,30}-{1,2407,3516,0,30}-"
+ },
+ {
+ "item_id": "2162",
+ "loc_data": "{1,2896,3414,0,30}-{1,2425,3515,0,30}-{1,2415,3517,0,30}-{1,2414,3518,0,30}-{1,2419,3511,0,30}-{1,2415,3511,0,30}-{1,2414,3510,0,30}-{1,2427,3508,0,30}-{1,2426,3507,0,30}-{1,2408,3518,0,30}-"
+ },
+ {
+ "item_id": "2313",
+ "loc_data": "{1,2820,3455,0,90}-{1,3142,3447,1,90}-{1,3222,3494,0,90}-"
+ },
+ {
+ "item_id": "2333",
+ "loc_data": "{1,3042,3952,0,100}-"
+ },
+ {
+ "item_id": "2347",
+ "loc_data": "{1,2934,3286,0,90}-{1,2975,3368,1,30}-{1,2579,3463,0,40}-{1,1953,4974,0,30}-"
+ },
+ {
+ "item_id": "2357",
+ "loc_data": "{1,3192,9822,0,150}-"
+ },
+ {
+ "item_id": "2398",
+ "loc_data": "{1,2517,3049,0,50}-{1,2511,3045,0,50}-"
+ },
+ {
+ "item_id": "2407",
+ "loc_data": "{1,2935,3460,0,5}-"
+ },
+ {
+ "item_id": "2408",
+ "loc_data": "{1,2903,3471,0,5}-"
+ },
+ {
+ "item_id": "2957",
+ "loc_data": "{1,3443,9742,0,100}-{1,3443,9742,1,100}-"
+ },
+ {
+ "item_id": "2964",
+ "loc_data": "{1,3437,3337,0,100}-"
+ },
+ {
+ "item_id": "3109",
+ "loc_data": "{1,2893,3565,0,2}-"
+ },
+ {
+ "item_id": "3110",
+ "loc_data": "{1,2893,3564,0,2}-"
+ },
+ {
+ "item_id": "3111",
+ "loc_data": "{1,2893,3561,0,2}-"
+ },
+ {
+ "item_id": "3112",
+ "loc_data": "{1,2893,3563,0,2}-"
+ },
+ {
+ "item_id": "3113",
+ "loc_data": "{1,2893,3562,0,2}-"
+ },
+ {
+ "item_id": "3138",
+ "loc_data": "{1,3463,9478,2,45}-{1,3461,9480,2,45}-{1,3461,9482,2,45}-{1,3461,9484,2,45}-"
+ },
+ {
+ "item_id": "3711",
+ "loc_data": "{1,2660,3676,0,196}-"
+ },
+ {
+ "item_id": "3803",
+ "loc_data": "{1,2658,3676,0,174}-"
+ },
+ {
+ "item_id": "3805",
+ "loc_data": "{1,2659,3676,0,196}-"
+ },
+ {
+ "item_id": "4199",
+ "loc_data": "{1,3492,3474,0,0}-"
+ },
+ {
+ "item_id": "4615",
+ "loc_data": "{1,3479,3092,0,0}-"
+ },
+ {
+ "item_id": "4619",
+ "loc_data": "{1,2713,4913,0,2}-"
+ },
+ {
+ "item_id": "4707",
+ "loc_data": "{1,3571,3312,0,40}-"
+ },
+ {
+ "item_id": "4838",
+ "loc_data": "{1,2593,3103,1,40}-"
+ },
+ {
+ "item_id": "5008",
+ "loc_data": "{1,3230,9609,0,44}-"
+ },
+ {
+ "item_id": "5523",
+ "loc_data": "{1,2935,3282,1,90}-"
+ },
+ {
+ "item_id": "5586",
+ "loc_data": "{1,2473,4941,0,90}-"
+ },
+ {
+ "item_id": "6291",
+ "loc_data": "{1,2681,3111,0,30}-{1,2673,3112,0,30}-{1,2674,3094,0,30}-{1,2671,3089,0,30}-"
+ },
+ {
+ "item_id": "6662",
+ "loc_data": "{1,2984,3112,0,90}-"
+ },
+ {
+ "item_id": "6663",
+ "loc_data": "{1,2984,3114,0,90}-"
+ },
+ {
+ "item_id": "7510",
+ "loc_data": "{1,2867,9875,0,44}-"
+ },
+ {
+ "item_id": "11065",
+ "loc_data": "{1,2928,3289,0,90}-"
+ },
+ {
+ "item_id": "12494",
+ "loc_data": "{1,2762,2973,0,60}-"
}
-]
+]
\ No newline at end of file
diff --git a/Server/data/configs/interface_configs.json b/Server/data/configs/interface_configs.json
index bb3d2219d..95087003a 100644
--- a/Server/data/configs/interface_configs.json
+++ b/Server/data/configs/interface_configs.json
@@ -1,7 +1,7 @@
[
{
"id": "5",
- "interfaceType": "1",
+ "interfaceType": "8",
"walkable": "true",
"tabIndex": "-1"
},
@@ -25,7 +25,49 @@
},
{
"id": "24",
- "interfaceType": "1",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "34",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "38",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "42",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "46",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "57",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "58",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "59",
+ "interfaceType": "8",
"walkable": "true",
"tabIndex": "-1"
},
@@ -53,6 +95,30 @@
"walkable": "false",
"tabIndex": "-1"
},
+ {
+ "id": "68",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "69",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "70",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "71",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
{
"id": "74",
"interfaceType": "4",
@@ -125,6 +191,12 @@
"walkable": "true",
"tabIndex": "-1"
},
+ {
+ "id": "139",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "140",
"interfaceType": "4",
@@ -137,6 +209,12 @@
"walkable": "true",
"tabIndex": "3"
},
+ {
+ "id": "169",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "172",
"interfaceType": "4",
@@ -197,9 +275,33 @@
"walkable": "true",
"tabIndex": "6"
},
+ {
+ "id": "194",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "195",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "196",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "198",
- "interfaceType": "1",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "209",
+ "interfaceType": "8",
"walkable": "true",
"tabIndex": "-1"
},
@@ -257,6 +359,12 @@
"walkable": "false",
"tabIndex": "-1"
},
+ {
+ "id": "240",
+ "interfaceType": "3",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "241",
"interfaceType": "4",
@@ -281,6 +389,36 @@
"walkable": "false",
"tabIndex": "-1"
},
+ {
+ "id": "245",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "246",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "247",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "248",
+ "interfaceType": "4",
+ "walkable": "false",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "256",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "259",
"interfaceType": "2",
@@ -371,6 +509,12 @@
"walkable": "false",
"tabIndex": "-1"
},
+ {
+ "id": "328",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "336",
"interfaceType": "3",
@@ -395,6 +539,12 @@
"walkable": "true",
"tabIndex": "-1"
},
+ {
+ "id": "377",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "380",
"interfaceType": "1",
@@ -449,12 +599,24 @@
"walkable": "true",
"tabIndex": "4"
},
+ {
+ "id": "418",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "421",
"interfaceType": "4",
"walkable": "false",
"tabIndex": "-1"
},
+ {
+ "id": "428",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "430",
"interfaceType": "2",
@@ -473,6 +635,30 @@
"walkable": "true",
"tabIndex": "-1"
},
+ {
+ "id": "485",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "486",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "487",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
+ {
+ "id": "488",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "498",
"interfaceType": "0",
@@ -493,7 +679,7 @@
},
{
"id": "532",
- "interfaceType": "1",
+ "interfaceType": "8",
"walkable": "true",
"tabIndex": "-1"
},
@@ -605,9 +791,15 @@
"walkable": "false",
"tabIndex": "-1"
},
+ {
+ "id": "653",
+ "interfaceType": "8",
+ "walkable": "true",
+ "tabIndex": "-1"
+ },
{
"id": "656",
- "interfaceType": "1",
+ "interfaceType": "8",
"walkable": "true",
"tabIndex": "-1"
},
@@ -721,7 +913,7 @@
},
{
"id": "809",
- "interfaceType": "1",
+ "interfaceType": "8",
"walkable": "true",
"tabIndex": "-1"
}
diff --git a/Server/data/configs/item_configs.json b/Server/data/configs/item_configs.json
index f965bfcba..3c29faaa8 100644
--- a/Server/data/configs/item_configs.json
+++ b/Server/data/configs/item_configs.json
@@ -30,8 +30,6 @@
"durability": null,
"name": "Cannonball",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2"
},
@@ -48,10 +46,7 @@
"requirements": "{13,35}",
"shop_price": "5",
"examine": "Used to make cannon ammunition.",
- "durability": null,
"name": "Ammo mould",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "4.5",
"archery_ticket_price": "0",
"id": "4"
@@ -61,8 +56,6 @@
"examine": "An old note book.",
"durability": null,
"name": "Instruction manual",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.51",
"archery_ticket_price": "0",
"id": "5"
@@ -75,8 +68,6 @@
"durability": null,
"name": "Cannon base",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"weight": "7",
"archery_ticket_price": "0",
"id": "6"
@@ -88,8 +79,6 @@
"durability": null,
"name": "Cannon base",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"archery_ticket_price": "0",
"id": "7"
},
@@ -101,8 +90,6 @@
"durability": null,
"name": "Cannon stand",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"weight": "7",
"archery_ticket_price": "0",
"id": "8"
@@ -114,8 +101,6 @@
"durability": null,
"name": "Cannon stand",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"archery_ticket_price": "0",
"id": "9"
},
@@ -127,8 +112,6 @@
"durability": null,
"name": "Cannon barrels",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"weight": "7",
"archery_ticket_price": "0",
"id": "10"
@@ -140,8 +123,6 @@
"durability": null,
"name": "Cannon barrels",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"archery_ticket_price": "0",
"id": "11"
},
@@ -153,8 +134,6 @@
"durability": null,
"name": "Cannon furnace",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"weight": "7",
"archery_ticket_price": "0",
"id": "12"
@@ -166,8 +145,6 @@
"durability": null,
"name": "Cannon furnace",
"tradeable": "true",
- "low_alchemy": "75000",
- "high_alchemy": "112500",
"archery_ticket_price": "0",
"id": "13"
},
@@ -183,8 +160,6 @@
"examine": "A cloth given to me by Sir Galahad.",
"durability": null,
"name": "Holy table napkin",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "15"
},
@@ -192,8 +167,6 @@
"examine": "A small tin whistle.",
"durability": null,
"name": "Magic whistle",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "16"
@@ -202,8 +175,6 @@
"examine": "I wonder what happens when I ring it?",
"durability": null,
"name": "Grail bell",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "17"
},
@@ -211,7 +182,6 @@
"examine": "It will point the way for me.",
"durability": null,
"name": "Magic gold feather",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "18"
},
@@ -281,8 +251,6 @@
"examine": "Drives away all known 6 legged creatures.",
"durability": null,
"name": "Insect repellent",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "28"
},
@@ -290,8 +258,6 @@
"examine": "It's a bucket of wax.",
"durability": null,
"name": "Bucket of wax",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "30"
@@ -306,8 +272,6 @@
"examine": "A spooky candle.",
"durability": null,
"name": "Lit black candle",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "32"
},
@@ -318,8 +282,6 @@
"durability": null,
"name": "Lit candle",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "33"
},
@@ -330,8 +292,6 @@
"durability": null,
"name": "Lit candle",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "34"
},
@@ -340,8 +300,6 @@
"examine": "This used to belong to King Arthur.",
"has_special": "true",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "2.2",
"attack_speed": "5",
"weapon_interface": "6",
@@ -363,8 +321,6 @@
"durability": null,
"name": "Candle",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "36"
},
@@ -382,8 +338,6 @@
"examine": "A spooky candle.",
"durability": null,
"name": "Black candle",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "38"
},
@@ -395,8 +349,6 @@
"durability": null,
"name": "Bronze arrowtips",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "39"
},
@@ -408,8 +360,6 @@
"durability": null,
"name": "Iron arrowtips",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "40"
},
@@ -421,8 +371,6 @@
"durability": null,
"name": "Steel arrowtips",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"archery_ticket_price": "0",
"id": "41"
},
@@ -434,8 +382,6 @@
"durability": null,
"name": "Mithril arrowtips",
"tradeable": "true",
- "low_alchemy": "27",
- "high_alchemy": "40",
"archery_ticket_price": "0",
"id": "42"
},
@@ -447,8 +393,6 @@
"durability": null,
"name": "Adamant arrowtips",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "43"
},
@@ -460,8 +404,6 @@
"durability": null,
"name": "Rune arrowtips",
"tradeable": "true",
- "low_alchemy": "184",
- "high_alchemy": "276",
"archery_ticket_price": "0",
"id": "44"
},
@@ -472,8 +414,6 @@
"durability": null,
"name": "Opal bolt tips",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "45"
},
@@ -484,8 +424,6 @@
"durability": null,
"name": "Pearl bolt tips",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "46"
},
@@ -497,8 +435,6 @@
"durability": null,
"name": "Barb bolttips",
"tradeable": "false",
- "low_alchemy": "38",
- "high_alchemy": "57",
"destroy": "true",
"archery_ticket_price": "5",
"id": "47"
@@ -510,8 +446,6 @@
"durability": null,
"name": "Longbow (u)",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "48"
},
@@ -531,8 +465,6 @@
"durability": null,
"name": "Shortbow (u)",
"tradeable": "true",
- "low_alchemy": "9",
- "high_alchemy": "13",
"weight": "1",
"archery_ticket_price": "0",
"id": "50"
@@ -553,8 +485,6 @@
"durability": null,
"name": "Arrow shaft",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "52"
},
@@ -576,8 +506,6 @@
"durability": null,
"name": "Oak shortbow (u)",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1",
"archery_ticket_price": "0",
"id": "54"
@@ -598,8 +526,6 @@
"durability": null,
"name": "Oak longbow (u)",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "1",
"archery_ticket_price": "0",
"id": "56"
@@ -621,8 +547,6 @@
"durability": null,
"name": "Willow longbow (u)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "58"
},
@@ -643,8 +567,6 @@
"durability": null,
"name": "Willow shortbow (u)",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "60"
},
@@ -664,8 +586,6 @@
"durability": null,
"name": "Maple longbow (u)",
"tradeable": "true",
- "low_alchemy": "128",
- "high_alchemy": "192",
"weight": "1.2",
"archery_ticket_price": "0",
"id": "62"
@@ -686,8 +606,6 @@
"durability": null,
"name": "Maple shortbow (u)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "64"
@@ -708,8 +626,6 @@
"durability": null,
"name": "Yew longbow (u)",
"tradeable": "true",
- "low_alchemy": "256",
- "high_alchemy": "384",
"weight": "1.32",
"archery_ticket_price": "0",
"id": "66"
@@ -730,8 +646,6 @@
"durability": null,
"name": "Yew shortbow (u)",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "1.32",
"archery_ticket_price": "0",
"id": "68"
@@ -753,8 +667,6 @@
"durability": null,
"name": "Magic longbow (u)",
"tradeable": "true",
- "low_alchemy": "512",
- "high_alchemy": "768",
"weight": "1",
"archery_ticket_price": "0",
"id": "70"
@@ -776,8 +688,6 @@
"durability": null,
"name": "Magic shortbow (u)",
"tradeable": "true",
- "low_alchemy": "320",
- "high_alchemy": "480",
"archery_ticket_price": "0",
"id": "72"
},
@@ -795,12 +705,12 @@
"shop_price": "10",
"examine": "A helmet, as worn by the minions of General Khazard.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "2.7",
+ "destroy": "true",
"equipment_slot": "0",
"destroy_message": "I can borrow another from the armoury near the Fight Arena.",
"name": "Khazard helmet",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "74",
"bonuses": "0,0,0,0,0,4,5,3,0,0,0,0,0,0,0"
@@ -809,13 +719,13 @@
"shop_price": "12",
"examine": "Armour, as worn by the minions of General Khazard.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.5",
+ "destroy": "true",
"equipment_slot": "4",
"destroy_message": "I can borrow another from the armoury near the Fight Arena.",
"remove_sleeves": "true",
"name": "Khazard armour",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "75",
"bonuses": "0,0,0,0,0,9,11,10,0,0,0,0,0,0,0"
@@ -836,9 +746,7 @@
"examine": "A bottle of Khazard's worst brew.",
"durability": null,
"name": "Khali brew",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"weight": "0.1",
"archery_ticket_price": "0",
@@ -851,13 +759,19 @@
"durability": null,
"name": "Ice arrows",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "78",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
"equipment_slot": "13"
},
+ {
+ "examine": "A lever to open something perhaps?",
+ "durability": null,
+ "name": "Lever",
+ "archery_ticket_price": "0",
+ "id": "83"
+ },
{
"destroy_message": "You can reclaim this item from the place you found it.",
"examine": "The power in this staff causes it to vibrate gently.",
@@ -881,8 +795,6 @@
"examine": "An amulet made by Lucien.",
"durability": null,
"name": "Pendant of lucien",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "86",
"equipment_slot": "2"
@@ -891,8 +803,6 @@
"examine": "Yet another amulet.",
"durability": null,
"name": "Armadyl pendant",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "87",
"equipment_slot": "2"
@@ -901,8 +811,6 @@
"examine": "Magic boots that make you lighter than normal.",
"durability": null,
"name": "Boots of lightness",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "-4.5",
"archery_ticket_price": "0",
"id": "88",
@@ -913,8 +821,6 @@
"examine": "Magic boots that make you lighter than normal.",
"durability": null,
"name": "Boots of lightness",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "89",
@@ -925,8 +831,6 @@
"examine": "It's very soft!",
"durability": null,
"name": "Child's blanket",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "90"
@@ -938,8 +842,6 @@
"durability": null,
"name": "Guam potion(unf)",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "91"
},
@@ -959,8 +861,6 @@
"durability": null,
"name": "Marrentill potion(unf)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "93"
},
@@ -980,8 +880,6 @@
"durability": null,
"name": "Tarromin potion(unf)",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "95"
},
@@ -1002,8 +900,6 @@
"durability": null,
"name": "Harralander potion(unf)",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "97"
},
@@ -1023,8 +919,6 @@
"durability": null,
"name": "Ranarr potion(unf)",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "1",
"archery_ticket_price": "0",
"id": "99"
@@ -1045,8 +939,6 @@
"durability": null,
"name": "Irit potion(unf)",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "101"
},
@@ -1066,8 +958,6 @@
"durability": null,
"name": "Avantoe potion(unf)",
"tradeable": "true",
- "low_alchemy": "19",
- "high_alchemy": "28",
"archery_ticket_price": "0",
"id": "103"
},
@@ -1087,8 +977,6 @@
"durability": null,
"name": "Kwuarm potion(unf)",
"tradeable": "true",
- "low_alchemy": "21",
- "high_alchemy": "32",
"archery_ticket_price": "0",
"id": "105"
},
@@ -1108,8 +996,6 @@
"durability": null,
"name": "Cadantine potion(unf)",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "39",
"archery_ticket_price": "0",
"id": "107"
},
@@ -1129,8 +1015,6 @@
"durability": null,
"name": "Dwarf weed potion(unf)",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"archery_ticket_price": "0",
"id": "109"
},
@@ -1150,8 +1034,6 @@
"durability": null,
"name": "Torstol potion(unf)",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "111"
},
@@ -1172,8 +1054,6 @@
"durability": null,
"name": "Strength potion(4)",
"tradeable": "true",
- "low_alchemy": "600",
- "high_alchemy": "900",
"archery_ticket_price": "0",
"id": "113"
},
@@ -1194,8 +1074,6 @@
"durability": null,
"name": "Strength potion(3)",
"tradeable": "true",
- "low_alchemy": "600",
- "high_alchemy": "900",
"archery_ticket_price": "0",
"id": "115"
},
@@ -1216,8 +1094,6 @@
"durability": null,
"name": "Strength potion(2)",
"tradeable": "true",
- "low_alchemy": "600",
- "high_alchemy": "900",
"archery_ticket_price": "0",
"id": "117"
},
@@ -1238,8 +1114,6 @@
"durability": null,
"name": "Strength potion(1)",
"tradeable": "true",
- "low_alchemy": "600",
- "high_alchemy": "900",
"archery_ticket_price": "0",
"id": "119"
},
@@ -1260,8 +1134,6 @@
"durability": null,
"name": "Attack potion(3)",
"tradeable": "true",
- "low_alchemy": "224",
- "high_alchemy": "336",
"archery_ticket_price": "0",
"id": "121"
},
@@ -1282,8 +1154,6 @@
"durability": null,
"name": "Attack potion(2)",
"tradeable": "true",
- "low_alchemy": "224",
- "high_alchemy": "336",
"archery_ticket_price": "0",
"id": "123"
},
@@ -1304,8 +1174,6 @@
"durability": null,
"name": "Attack potion(1)",
"tradeable": "true",
- "low_alchemy": "224",
- "high_alchemy": "336",
"archery_ticket_price": "0",
"id": "125"
},
@@ -1326,8 +1194,6 @@
"durability": null,
"name": "Restore potion(3)",
"tradeable": "true",
- "low_alchemy": "35",
- "high_alchemy": "52",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "127"
@@ -1349,8 +1215,6 @@
"durability": null,
"name": "Restore potion(2)",
"tradeable": "true",
- "low_alchemy": "35",
- "high_alchemy": "52",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "129"
@@ -1372,8 +1236,6 @@
"durability": null,
"name": "Restore potion(1)",
"tradeable": "true",
- "low_alchemy": "35",
- "high_alchemy": "52",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "131"
@@ -1395,8 +1257,6 @@
"durability": null,
"name": "Defence potion(3)",
"tradeable": "true",
- "low_alchemy": "352",
- "high_alchemy": "528",
"archery_ticket_price": "0",
"id": "133"
},
@@ -1417,8 +1277,6 @@
"durability": null,
"name": "Defence potion(2)",
"tradeable": "true",
- "low_alchemy": "352",
- "high_alchemy": "528",
"archery_ticket_price": "0",
"id": "135"
},
@@ -1439,8 +1297,6 @@
"durability": null,
"name": "Defence potion(1)",
"tradeable": "true",
- "low_alchemy": "352",
- "high_alchemy": "528",
"archery_ticket_price": "0",
"id": "137"
},
@@ -1460,8 +1316,6 @@
"durability": null,
"name": "Prayer potion(3)",
"tradeable": "true",
- "low_alchemy": "61",
- "high_alchemy": "91",
"archery_ticket_price": "0",
"id": "139"
},
@@ -1481,8 +1335,6 @@
"durability": null,
"name": "Prayer potion(2)",
"tradeable": "true",
- "low_alchemy": "61",
- "high_alchemy": "91",
"archery_ticket_price": "0",
"id": "141"
},
@@ -1502,8 +1354,6 @@
"durability": null,
"name": "Prayer potion(1)",
"tradeable": "true",
- "low_alchemy": "61",
- "high_alchemy": "91",
"archery_ticket_price": "0",
"id": "143"
},
@@ -1523,8 +1373,6 @@
"durability": null,
"name": "Super attack(3)",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "145"
},
@@ -1544,8 +1392,6 @@
"durability": null,
"name": "Super attack(2)",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "147"
},
@@ -1565,8 +1411,6 @@
"durability": null,
"name": "Super attack(1)",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "149"
},
@@ -1586,8 +1430,6 @@
"durability": null,
"name": "Fishing potion(3)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "151"
@@ -1608,8 +1450,6 @@
"durability": null,
"name": "Fishing potion(2)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "153"
@@ -1630,8 +1470,6 @@
"durability": null,
"name": "Fishing potion(1)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "155"
@@ -1652,8 +1490,6 @@
"durability": null,
"name": "Super strength(3)",
"tradeable": "true",
- "low_alchemy": "88",
- "high_alchemy": "132",
"archery_ticket_price": "0",
"id": "157"
},
@@ -1673,8 +1509,6 @@
"durability": null,
"name": "Super strength(2)",
"tradeable": "true",
- "low_alchemy": "88",
- "high_alchemy": "132",
"archery_ticket_price": "0",
"id": "159"
},
@@ -1694,8 +1528,6 @@
"durability": null,
"name": "Super strength(1)",
"tradeable": "true",
- "low_alchemy": "88",
- "high_alchemy": "132",
"archery_ticket_price": "0",
"id": "161"
},
@@ -1715,8 +1547,6 @@
"durability": null,
"name": "Super defence(3)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "163"
},
@@ -1736,8 +1566,6 @@
"durability": null,
"name": "Super defence(2)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "165"
},
@@ -1757,8 +1585,6 @@
"durability": null,
"name": "Super defence(1)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "167"
},
@@ -1778,8 +1604,6 @@
"durability": null,
"name": "Ranging potion(3)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "169"
},
@@ -1799,8 +1623,6 @@
"durability": null,
"name": "Ranging potion(2)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "171"
},
@@ -1820,8 +1642,6 @@
"durability": null,
"name": "Ranging potion(1)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "173"
},
@@ -1842,8 +1662,6 @@
"durability": null,
"name": "Antipoison(3)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "175"
},
@@ -1864,8 +1682,6 @@
"durability": null,
"name": "Antipoison(2)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "177"
},
@@ -1886,8 +1702,6 @@
"durability": null,
"name": "Antipoison(1)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "179"
},
@@ -1907,8 +1721,6 @@
"durability": null,
"name": "Super antipoison(3)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "181"
},
@@ -1928,8 +1740,6 @@
"durability": null,
"name": "Super antipoison(2)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "183"
},
@@ -1949,8 +1759,6 @@
"durability": null,
"name": "Super antipoison(1)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "185"
},
@@ -1970,8 +1778,6 @@
"durability": null,
"name": "Weapon poison",
"tradeable": "true",
- "low_alchemy": "57",
- "high_alchemy": "86",
"archery_ticket_price": "0",
"id": "187"
},
@@ -1991,8 +1797,6 @@
"durability": null,
"name": "Zamorak brew(3)",
"tradeable": "true",
- "low_alchemy": "70",
- "high_alchemy": "105",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "189"
@@ -2013,8 +1817,6 @@
"durability": null,
"name": "Zamorak brew(2)",
"tradeable": "true",
- "low_alchemy": "70",
- "high_alchemy": "105",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "191"
@@ -2035,8 +1837,6 @@
"durability": null,
"name": "Zamorak brew(1)",
"tradeable": "true",
- "low_alchemy": "70",
- "high_alchemy": "105",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "193"
@@ -2077,8 +1877,6 @@
"durability": null,
"name": "Poison chalice",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "197"
},
@@ -2319,8 +2117,6 @@
"durability": null,
"name": "Eye of newt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "221"
},
@@ -2340,8 +2136,6 @@
"durability": null,
"name": "Red spiders' eggs",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "223"
},
@@ -2361,8 +2155,6 @@
"durability": null,
"name": "Limpwurt root",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "225"
},
@@ -2383,8 +2175,6 @@
"durability": null,
"name": "Vial of water",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.02",
"archery_ticket_price": "0",
"id": "227"
@@ -2406,8 +2196,6 @@
"durability": null,
"name": "Vial",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "229"
},
@@ -2428,8 +2216,6 @@
"durability": null,
"name": "Snape grass",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "231"
},
@@ -2450,8 +2236,6 @@
"durability": null,
"name": "Pestle and mortar",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "233"
@@ -2472,8 +2256,6 @@
"durability": null,
"name": "Unicorn horn dust",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "235"
},
@@ -2493,8 +2275,6 @@
"durability": null,
"name": "Unicorn horn",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1",
"archery_ticket_price": "0",
"id": "237"
@@ -2515,8 +2295,6 @@
"durability": null,
"name": "White berries",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "239"
},
@@ -2536,8 +2314,6 @@
"durability": null,
"name": "Dragon scale dust",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "31",
"archery_ticket_price": "0",
"id": "241"
},
@@ -2557,8 +2333,6 @@
"durability": null,
"name": "Blue dragon scale",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.01",
"archery_ticket_price": "0",
"id": "243"
@@ -2618,8 +2392,6 @@
"durability": null,
"name": "Clean guam",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "249"
},
@@ -2639,8 +2411,6 @@
"durability": null,
"name": "Clean marrentill",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "251"
},
@@ -2660,8 +2430,6 @@
"durability": null,
"name": "Clean tarromin",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "253"
},
@@ -2681,8 +2449,6 @@
"durability": null,
"name": "Clean harralander",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "255"
},
@@ -2702,8 +2468,6 @@
"durability": null,
"name": "Clean ranarr",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "257"
},
@@ -2723,8 +2487,6 @@
"durability": null,
"name": "Clean irit",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "259"
},
@@ -2744,8 +2506,6 @@
"durability": null,
"name": "Clean avantoe",
"tradeable": "true",
- "low_alchemy": "19",
- "high_alchemy": "28",
"archery_ticket_price": "0",
"id": "261"
},
@@ -2765,8 +2525,6 @@
"durability": null,
"name": "Clean kwuarm",
"tradeable": "true",
- "low_alchemy": "21",
- "high_alchemy": "32",
"archery_ticket_price": "0",
"id": "263"
},
@@ -2786,8 +2544,6 @@
"durability": null,
"name": "Clean cadantine",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "39",
"archery_ticket_price": "0",
"id": "265"
},
@@ -2807,8 +2563,6 @@
"durability": null,
"name": "Clean dwarf weed",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"archery_ticket_price": "0",
"id": "267"
},
@@ -2828,8 +2582,6 @@
"durability": null,
"name": "Clean torstol",
"tradeable": "true",
- "low_alchemy": "30",
- "high_alchemy": "45",
"archery_ticket_price": "0",
"id": "269"
},
@@ -2889,9 +2641,7 @@
"examine": "It's pretty full.",
"durability": null,
"name": "Oil can",
- "low_alchemy": "1",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -2901,8 +2651,6 @@
"examine": "A sharp cattleprod.",
"durability": null,
"name": "Cattleprod",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "278",
@@ -2951,8 +2699,6 @@
"examine": "This should protect me from the plague, I hope!",
"durability": null,
"name": "Plague jacket",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "284",
@@ -2962,8 +2708,6 @@
"examine": "A thick pair of leather trousers. or These should protect me from the plague, I hope!",
"durability": null,
"name": "Plague trousers",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "285",
@@ -2973,8 +2717,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Orange goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "286",
@@ -2984,8 +2726,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Blue goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "287",
@@ -2995,16 +2735,14 @@
"shop_price": "16",
"ge_buy_limit": "100",
"examine": "Armour designed to fit goblins.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "weight": "3.6",
- "equipment_slot": "4",
"grand_exchange_price": "398",
+ "durability": null,
"name": "Goblin mail",
"tradeable": "true",
+ "weight": "3.6",
"archery_ticket_price": "0",
- "id": "288"
+ "id": "288",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -3032,10 +2770,9 @@
"id": "291"
},
{
- "examine": "A book on elven history in northern RuneScape.",
+ "examine": "A book on elven history in northern 2009Scape.",
"durability": null,
"name": "Book on baxtorian",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "292"
},
@@ -3076,8 +2813,6 @@
"durability": null,
"name": "Mithril seeds",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "299"
},
@@ -3086,9 +2821,7 @@
"examine": "A bit of rat.",
"durability": null,
"name": "Rat's tail",
- "low_alchemy": "1",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "300"
@@ -3098,13 +2831,11 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "Useful for catching lobsters.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
"grand_exchange_price": "100",
+ "durability": null,
"name": "Lobster pot",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "301"
},
@@ -3125,8 +2856,6 @@
"durability": null,
"name": "Small fishing net",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "4.5",
"archery_ticket_price": "0",
"id": "303"
@@ -3145,13 +2874,11 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "Useful for catching lots of fish.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "8.1",
"grand_exchange_price": "329",
+ "durability": null,
"name": "Big fishing net",
"tradeable": "true",
+ "weight": "8.1",
"archery_ticket_price": "0",
"id": "305"
},
@@ -3169,13 +2896,11 @@
"shop_price": "5",
"ge_buy_limit": "100",
"examine": "Useful for catching sardine or herring.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "1.3",
"grand_exchange_price": "74",
+ "durability": null,
"name": "Fishing rod",
"tradeable": "true",
+ "weight": "1.3",
"archery_ticket_price": "0",
"id": "307"
},
@@ -3192,14 +2917,12 @@
"requirements": "{20,10}",
"shop_price": "5",
"ge_buy_limit": "100",
- "examine": "Useful for catching salmon or trout.In Daemonhiem: Just add feathers.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "1.3",
+ "examine": "Useful for catching salmon or trout.",
"grand_exchange_price": "123",
+ "durability": null,
"name": "Fly fishing rod",
"tradeable": "true",
+ "weight": "1.3",
"archery_ticket_price": "0",
"id": "309"
},
@@ -3217,13 +2940,11 @@
"shop_price": "45",
"ge_buy_limit": "5000",
"examine": "Useful for catching big fish.",
- "durability": null,
- "low_alchemy": "18",
- "high_alchemy": "27",
- "weight": "1.3",
"grand_exchange_price": "235",
+ "durability": null,
"name": "Harpoon",
"tradeable": "true",
+ "weight": "1.3",
"archery_ticket_price": "0",
"id": "311"
},
@@ -3244,8 +2965,6 @@
"durability": null,
"name": "Fishing bait",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "313"
},
@@ -3257,8 +2976,6 @@
"durability": null,
"name": "Feather",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "314"
},
@@ -3269,8 +2986,6 @@
"durability": null,
"name": "Shrimps",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "315"
@@ -3292,8 +3007,6 @@
"durability": null,
"name": "Raw shrimps",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "317"
@@ -3314,8 +3027,6 @@
"durability": null,
"name": "Anchovies",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "319"
@@ -3337,8 +3048,6 @@
"durability": null,
"name": "Raw anchovies",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "321"
@@ -3367,8 +3076,6 @@
"durability": null,
"name": "Sardine",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.12",
"archery_ticket_price": "0",
"id": "325"
@@ -3390,8 +3097,6 @@
"durability": null,
"name": "Raw sardine",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.12",
"archery_ticket_price": "0",
"id": "327"
@@ -3413,8 +3118,6 @@
"durability": null,
"name": "Salmon",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "329"
@@ -3436,8 +3139,6 @@
"durability": null,
"name": "Raw salmon",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "55",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "331"
@@ -3459,8 +3160,6 @@
"durability": null,
"name": "Trout",
"tradeable": "true",
- "low_alchemy": "27",
- "high_alchemy": "40",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "333"
@@ -3482,8 +3181,6 @@
"durability": null,
"name": "Raw trout",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "335"
@@ -3501,8 +3198,6 @@
"examine": "Some nicely cooked giant carp.",
"durability": null,
"name": "Giant carp",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "337"
},
@@ -3510,8 +3205,6 @@
"examine": "I should try cooking this.",
"durability": null,
"name": "Raw giant carp",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "338"
},
@@ -3523,8 +3216,6 @@
"durability": null,
"name": "Cod",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.33",
"archery_ticket_price": "0",
"id": "339"
@@ -3546,8 +3237,6 @@
"durability": null,
"name": "Raw cod",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "341"
@@ -3575,8 +3264,6 @@
"durability": null,
"name": "Raw herring",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "345"
@@ -3598,8 +3285,6 @@
"durability": null,
"name": "Herring",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "347"
@@ -3620,8 +3305,6 @@
"durability": null,
"name": "Raw pike",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "349"
@@ -3642,8 +3325,6 @@
"durability": null,
"name": "Pike",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "351"
@@ -3665,8 +3346,6 @@
"durability": null,
"name": "Raw mackerel",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "353"
@@ -3688,8 +3367,6 @@
"durability": null,
"name": "Mackerel",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "10",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "355"
@@ -3717,8 +3394,6 @@
"durability": null,
"name": "Raw tuna",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.379",
"archery_ticket_price": "0",
"id": "359"
@@ -3740,8 +3415,6 @@
"durability": null,
"name": "Tuna",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "361"
@@ -3757,13 +3430,11 @@
},
{
"ge_buy_limit": "20000",
- "examine": "Wow, this is a big fish.",
+ "examine": "I should try cooking this.",
"grand_exchange_price": "490",
"durability": null,
"name": "Raw bass",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "363"
},
@@ -3784,8 +3455,6 @@
"durability": null,
"name": "Bass",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "365"
@@ -3820,8 +3489,6 @@
"durability": null,
"name": "Raw swordfish",
"tradeable": "true",
- "low_alchemy": "136",
- "high_alchemy": "204",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "371"
@@ -3843,8 +3510,6 @@
"durability": null,
"name": "Swordfish",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "373"
@@ -3872,8 +3537,6 @@
"durability": null,
"name": "Raw lobster",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "377"
@@ -3895,8 +3558,6 @@
"durability": null,
"name": "Lobster",
"tradeable": "true",
- "low_alchemy": "107",
- "high_alchemy": "160",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "379"
@@ -3924,8 +3585,6 @@
"durability": null,
"name": "Raw shark",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.7",
"archery_ticket_price": "0",
"id": "383"
@@ -3933,6 +3592,7 @@
{
"ge_buy_limit": "20000",
"grand_exchange_price": "1615",
+ "examine": "",
"durability": null,
"name": "Raw shark",
"tradeable": "true",
@@ -3946,8 +3606,6 @@
"durability": null,
"name": "Shark",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.6",
"archery_ticket_price": "0",
"id": "385"
@@ -3970,13 +3628,11 @@
},
{
"ge_buy_limit": "20000",
- "examine": "Tastier when cooked.",
+ "examine": "A rare catch.",
"grand_exchange_price": "2114",
"durability": null,
"name": "Raw manta ray",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "389"
@@ -3997,8 +3653,6 @@
"durability": null,
"name": "Manta ray",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "391"
@@ -4021,13 +3675,11 @@
},
{
"ge_buy_limit": "20000",
- "examine": "Looks wrinkly.",
+ "examine": "A rare catch.",
"grand_exchange_price": "2397",
"durability": null,
"name": "Raw sea turtle",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "395"
@@ -4048,8 +3700,6 @@
"durability": null,
"name": "Sea turtle",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.35",
"archery_ticket_price": "0",
"id": "397"
@@ -4078,7 +3728,6 @@
"durability": null,
"name": "Seaweed",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "401"
@@ -4099,7 +3748,6 @@
"durability": null,
"name": "Edible seaweed",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "403"
@@ -4120,8 +3768,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "405"
@@ -4142,8 +3788,6 @@
"durability": null,
"name": "Oyster",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "407"
},
@@ -4157,11 +3801,11 @@
"id": "408"
},
{
+ "shop_price": "5",
"examine": "Aww, it's empty.",
"durability": null,
"name": "Empty oyster",
- "low_alchemy": "2",
- "high_alchemy": "3",
+ "tradeable": "true",
"weight": "0.08",
"archery_ticket_price": "0",
"id": "409"
@@ -4181,8 +3825,6 @@
"durability": null,
"name": "Oyster pearl",
"tradeable": "true",
- "low_alchemy": "44",
- "high_alchemy": "67",
"archery_ticket_price": "0",
"id": "411",
"equipment_slot": "5"
@@ -4203,8 +3845,6 @@
"durability": null,
"name": "Oyster pearls",
"tradeable": "true",
- "low_alchemy": "560",
- "high_alchemy": "840",
"archery_ticket_price": "0",
"id": "413",
"equipment_slot": "5"
@@ -4222,8 +3862,6 @@
"examine": "An expensive colourless liquid.",
"durability": null,
"name": "Ethenea",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "415"
},
@@ -4269,8 +3907,6 @@
"examine": "Yup. It's an amulet.",
"durability": null,
"name": "Lathas' amulet",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "421",
"equipment_slot": "2"
@@ -4300,15 +3936,19 @@
"id": "425"
},
{
- "remove_sleeves": "true",
"ge_buy_limit": "100",
- "grand_exchange_price": "55",
+ "shop_price": "5",
+ "examine": "Top half of a priest suit.",
"durability": null,
+ "weight": "2",
+ "equipment_slot": "4",
+ "remove_sleeves": "true",
+ "grand_exchange_price": "55",
"name": "Priest gown",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "426",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,3,0,0",
- "equipment_slot": "4"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,3,0,0"
},
{
"ge_buy_limit": "100",
@@ -4321,9 +3961,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "5",
+ "examine": "Bottom half of a priest suit.",
"grand_exchange_price": "14",
"durability": null,
"name": "Priest gown",
+ "tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "428",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,3,0,0",
@@ -4343,8 +3987,6 @@
"examine": "Medical looking.",
"durability": null,
"name": "Doctors' gown",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "1",
"archery_ticket_price": "0",
"id": "430",
@@ -4355,8 +3997,6 @@
"examine": "A very strong spirit brewed in Karamja.",
"durability": null,
"name": "Karamjan rum",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "431"
},
@@ -4396,8 +4036,6 @@
"durability": null,
"name": "Copper ore",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "2",
"archery_ticket_price": "0",
"id": "436"
@@ -4415,14 +4053,12 @@
"shop_price": "6",
"ge_buy_limit": "25000",
"examine": "This needs refining.",
+ "grand_exchange_price": "80",
"tokkul_price": "4",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
- "grand_exchange_price": "80",
"name": "Tin ore",
"tradeable": "true",
+ "weight": "2.25",
"archery_ticket_price": "0",
"id": "438"
},
@@ -4443,8 +4079,6 @@
"durability": null,
"name": "Iron ore",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "10",
"weight": "2.25",
"archery_ticket_price": "0",
"id": "440"
@@ -4462,14 +4096,12 @@
"shop_price": "82",
"ge_buy_limit": "25000",
"examine": "This needs refining.",
+ "grand_exchange_price": "180",
"tokkul_price": "112",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "weight": "2",
- "grand_exchange_price": "180",
"name": "Silver ore",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "442"
},
@@ -4490,8 +4122,6 @@
"durability": null,
"name": "Gold ore",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "444"
@@ -4509,8 +4139,6 @@
"examine": "This needs refining.",
"durability": null,
"name": "'perfect' gold ore",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "446"
},
@@ -4518,14 +4146,12 @@
"shop_price": "243",
"ge_buy_limit": "25000",
"examine": "This needs refining.",
+ "grand_exchange_price": "420",
"tokkul_price": "243",
"durability": null,
- "low_alchemy": "64",
- "high_alchemy": "97",
- "weight": "1.75",
- "grand_exchange_price": "420",
"name": "Mithril ore",
"tradeable": "true",
+ "weight": "1.75",
"archery_ticket_price": "0",
"id": "447"
},
@@ -4542,14 +4168,12 @@
"shop_price": "1300",
"ge_buy_limit": "25000",
"examine": "This needs refining.",
+ "grand_exchange_price": "1160",
"tokkul_price": "600",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "2.7",
- "grand_exchange_price": "1160",
"name": "Adamantite ore",
"tradeable": "true",
+ "weight": "2.7",
"archery_ticket_price": "0",
"id": "449"
},
@@ -4570,8 +4194,6 @@
"durability": null,
"name": "Runite ore",
"tradeable": "true",
- "low_alchemy": "1280",
- "high_alchemy": "1920",
"weight": "2.25",
"archery_ticket_price": "0",
"id": "451"
@@ -4593,8 +4215,6 @@
"durability": null,
"name": "Coal",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "27",
"weight": "2.25",
"archery_ticket_price": "0",
"id": "453"
@@ -4620,95 +4240,87 @@
"examine": "It's empty!",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.15",
"id": "456"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There is 1 scorpion inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.175",
"id": "457"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There are 2 scorpions inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.2",
"id": "458"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There is 1 scorpion inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.175",
"id": "459"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There are 2 scorpions inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.2",
"id": "460"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There is 1 scorpion inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.175",
"id": "461"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There are 2 scorpions inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.2",
"id": "462"
},
{
"destroy_message": "You will need to speak to Thormac to get another cage.",
- "examine": "It's empty!",
+ "examine": "There are 3 scorpions inside.",
"durability": null,
"name": "Scorpion cage",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
+ "weight": "0.225",
"id": "463"
},
{
@@ -4738,8 +4350,6 @@
"durability": null,
"name": "Pickaxe handle",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"archery_ticket_price": "0",
"id": "466",
"equipment_slot": "3"
@@ -4757,8 +4367,6 @@
"durability": null,
"name": "Broken pickaxe",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "468",
@@ -4777,8 +4385,6 @@
"durability": null,
"name": "Broken pickaxe",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "470",
@@ -4797,8 +4403,6 @@
"durability": null,
"name": "Broken pickaxe",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "472",
@@ -4817,8 +4421,6 @@
"durability": null,
"name": "Broken pickaxe",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "474",
@@ -4837,8 +4439,6 @@
"durability": null,
"name": "Broken pickaxe",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "476",
@@ -4857,8 +4457,6 @@
"durability": null,
"name": "Broken pickaxe",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "478",
@@ -4877,8 +4475,6 @@
"durability": null,
"name": "Bronze pick head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "480"
},
@@ -4895,8 +4491,6 @@
"durability": null,
"name": "Iron pick head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "482"
},
@@ -4913,8 +4507,6 @@
"durability": null,
"name": "Steel pick head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "484"
},
@@ -4931,8 +4523,6 @@
"durability": null,
"name": "Mithril pick head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "486"
},
@@ -4949,8 +4539,6 @@
"durability": null,
"name": "Adamant pick head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "488"
},
@@ -4967,8 +4555,6 @@
"durability": null,
"name": "Rune pick head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "490"
},
@@ -4999,8 +4585,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "494",
@@ -5017,8 +4601,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "496",
@@ -5035,8 +4617,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "498",
@@ -5053,8 +4633,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "500",
@@ -5071,8 +4649,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "502",
@@ -5089,8 +4665,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "504",
@@ -5107,8 +4681,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "506",
@@ -5125,7 +4697,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "508"
},
@@ -5140,7 +4711,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "510"
},
@@ -5155,7 +4725,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "512"
},
@@ -5170,7 +4739,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "514"
},
@@ -5185,7 +4753,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "516"
},
@@ -5200,7 +4767,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "518"
},
@@ -5215,7 +4781,6 @@
"examine": "A piece of ancient goblin axe.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "520"
},
@@ -5251,8 +4816,6 @@
"examine": "I don't fancy eating this now.",
"durability": null,
"name": "Enchanted chicken",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "525"
@@ -5363,7 +4926,7 @@
},
{
"ge_buy_limit": "10000",
- "examine": "These would feed a dog for months.",
+ "examine": "These would feed a dog for months!",
"grand_exchange_price": "1300",
"durability": null,
"name": "Dragon bones",
@@ -5388,8 +4951,6 @@
"durability": null,
"name": "Druid's robe",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "538",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,4,0,0",
@@ -5405,19 +4966,17 @@
"id": "539"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "100",
"examine": "I feel closer to the gods when I am wearing this.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "328",
+ "durability": null,
"name": "Druid's robe",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "540",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,4,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,4,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -5474,8 +5033,6 @@
"examine": "I feel closer to the gods when I am wearing this. (Top) If a shade had knees, this would keep them nice and warm. (Bottom)",
"durability": null,
"name": "Shade robe",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "2",
"archery_ticket_price": "0",
"id": "546",
@@ -5486,8 +5043,6 @@
"examine": "I feel closer to the gods when I am wearing this. (Top) If a shade had knees, this would keep them nice and warm. (Bottom)",
"durability": null,
"name": "Shade robe",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "2",
"archery_ticket_price": "0",
"id": "548",
@@ -5497,7 +5052,7 @@
{
"shop_price": "1",
"ge_buy_limit": "100",
- "examine": "Issued by RuneScape Council to all new citizens.",
+ "examine": "Issued by 2009Scape Council to all new citizens.",
"grand_exchange_price": "123",
"durability": null,
"name": "Newcomer map",
@@ -5520,8 +5075,6 @@
"durability": null,
"name": "Ghostspeak amulet",
"tradeable": "false",
- "low_alchemy": "14",
- "high_alchemy": "21",
"archery_ticket_price": "0",
"id": "552",
"equipment_slot": "2"
@@ -5545,8 +5098,6 @@
"durability": null,
"name": "Fire rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "554"
},
@@ -5559,8 +5110,6 @@
"durability": null,
"name": "Water rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "555"
},
@@ -5573,8 +5122,6 @@
"durability": null,
"name": "Air rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "556"
},
@@ -5587,8 +5134,6 @@
"durability": null,
"name": "Earth rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "557"
},
@@ -5601,8 +5146,6 @@
"durability": null,
"name": "Mind rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "558"
},
@@ -5615,8 +5158,6 @@
"durability": null,
"name": "Body rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "559"
},
@@ -5629,8 +5170,6 @@
"tokkul_price": "270",
"name": "Death rune",
"tradeable": "true",
- "low_alchemy": "41",
- "high_alchemy": "62",
"archery_ticket_price": "0",
"id": "560"
},
@@ -5642,8 +5181,6 @@
"durability": null,
"name": "Nature rune",
"tradeable": "true",
- "low_alchemy": "49",
- "high_alchemy": "74",
"archery_ticket_price": "0",
"id": "561"
},
@@ -5656,8 +5193,6 @@
"tokkul_price": "135",
"name": "Chaos rune",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "28",
"archery_ticket_price": "0",
"id": "562"
},
@@ -5669,8 +5204,6 @@
"durability": null,
"name": "Law rune",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"archery_ticket_price": "0",
"id": "563"
},
@@ -5682,8 +5215,6 @@
"durability": null,
"name": "Cosmic rune",
"tradeable": "true",
- "low_alchemy": "30",
- "high_alchemy": "46",
"archery_ticket_price": "0",
"id": "564"
},
@@ -5695,8 +5226,6 @@
"durability": null,
"name": "Blood rune",
"tradeable": "true",
- "low_alchemy": "73",
- "high_alchemy": "110",
"archery_ticket_price": "0",
"id": "565"
},
@@ -5708,8 +5237,6 @@
"durability": null,
"name": "Soul rune",
"tradeable": "true",
- "low_alchemy": "54",
- "high_alchemy": "82",
"archery_ticket_price": "0",
"id": "566"
},
@@ -5720,8 +5247,6 @@
"durability": null,
"name": "Unpowered orb",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "567"
@@ -5742,8 +5267,6 @@
"durability": null,
"name": "Fire orb",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "569"
@@ -5764,8 +5287,6 @@
"durability": null,
"name": "Water orb",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "571"
@@ -5786,8 +5307,6 @@
"durability": null,
"name": "Air orb",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "573"
@@ -5808,8 +5327,6 @@
"durability": null,
"name": "Earth orb",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "575"
@@ -5828,8 +5345,6 @@
"ge_buy_limit": "100",
"examine": "I can do magic better in this.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -5854,8 +5369,6 @@
"ge_buy_limit": "100",
"examine": "A silly pointed hat.",
"durability": null,
- "low_alchemy": "0",
- "high_alchemy": "1",
"weight": "0.45",
"equipment_slot": "0",
"grand_exchange_price": "361",
@@ -5873,8 +5386,6 @@
"durability": null,
"name": "Wizard hat",
"tradeable": "true",
- "low_alchemy": "0",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "580"
},
@@ -5883,8 +5394,6 @@
"ge_buy_limit": "100",
"examine": "I can do magic better in this.",
"durability": null,
- "low_alchemy": "5",
- "high_alchemy": "7",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -5910,8 +5419,6 @@
"durability": null,
"name": "Bailing bucket",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "583"
@@ -5929,8 +5436,6 @@
"durability": null,
"name": "Bailing bucket",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "585"
@@ -5994,7 +5499,6 @@
"durability": null,
"name": "Ashes",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.056",
"archery_ticket_price": "0",
"id": "592"
@@ -6024,8 +5528,6 @@
"durability": null,
"name": "Unlit torch",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "596"
@@ -6046,8 +5548,6 @@
"durability": null,
"name": "Bronze fire arrows",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "598",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7",
@@ -6055,13 +5555,11 @@
},
{
"ge_buy_limit": "100",
- "examine": "A book on the history of astronomy in RuneScape.",
+ "examine": "A book on the history of astronomy in 2009Scape.",
"grand_exchange_price": "658",
"durability": null,
"name": "Astronomy book",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "600"
@@ -6091,9 +5589,7 @@
"examine": "A perfectly circular disc of glass.",
"durability": null,
"name": "Observatory lens",
- "low_alchemy": "1",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "603"
@@ -6118,7 +5614,6 @@
"examine": "A stone plaque with carved letters in it.",
"durability": null,
"name": "Stone-plaque",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "606"
},
@@ -6209,7 +5704,7 @@
},
{
"bankable": "false",
- "examine": "100,000 or more: \"X x coins\" where X is the exact number of coins in the stack.",
+ "examine": "Lovely money!",
"durability": null,
"name": "Coins",
"archery_ticket_price": "0",
@@ -6224,7 +5719,7 @@
},
{
"shop_price": "35",
- "examine": "Allows you to rest in the luxurious Paramayer[sic] Inn.",
+ "examine": "Allows you to rest in the luxurious Paramayer Inn.",
"durability": null,
"name": "Paramaya ticket",
"archery_ticket_price": "0",
@@ -6232,7 +5727,7 @@
},
{
"shop_price": "35",
- "examine": "Allows you to rest in the luxurious Paramayer[sic] Inn.",
+ "examine": "Allows you to rest in the luxurious Paramayer Inn.",
"durability": null,
"name": "Paramaya ticket",
"archery_ticket_price": "0",
@@ -6242,8 +5737,6 @@
"examine": "Sold in Shilo Village for passage on the 'Lady of the Waves'.",
"durability": null,
"name": "Ship ticket",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "621"
},
@@ -6270,9 +5763,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "200",
+ "examine": "They're soft, silky and pink.",
"grand_exchange_price": "558",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "626",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -6289,9 +5786,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "200",
+ "examine": "They're soft, silky and green.",
"grand_exchange_price": "397",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "628",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -6308,9 +5809,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "200",
+ "examine": "They're soft, silky and blue.",
"grand_exchange_price": "612",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "630",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -6327,9 +5832,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "200",
+ "examine": "They're soft, silky and cream.",
"grand_exchange_price": "496",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "632",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -6346,9 +5855,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "200",
+ "examine": "They're soft, silky and turquoise.",
"grand_exchange_price": "226",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "634",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -6366,10 +5879,8 @@
{
"shop_price": "180",
"ge_buy_limit": "100",
- "examine": "The ultimate in gnome design, now in [colour].",
+ "examine": "The ultimate in gnome design, now in pink.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -6392,10 +5903,8 @@
{
"shop_price": "180",
"ge_buy_limit": "100",
- "examine": "The ultimate in gnome design, now in [colour].",
+ "examine": "The ultimate in gnome design, now in green.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -6418,10 +5927,8 @@
{
"shop_price": "180",
"ge_buy_limit": "100",
- "examine": "The ultimate in gnome design, now in [colour].",
+ "examine": "The ultimate in gnome design, now in blue.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -6444,10 +5951,8 @@
{
"shop_price": "180",
"ge_buy_limit": "100",
- "examine": "The ultimate in gnome design, now in [colour].",
+ "examine": "The ultimate in gnome design, now in cream.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -6470,10 +5975,8 @@
{
"shop_price": "180",
"ge_buy_limit": "100",
- "examine": "The ultimate in gnome design, now in [colour].",
+ "examine": "The ultimate in gnome design, now in turquoise.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -6495,9 +5998,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "180",
+ "examine": "Made by tree gnomes with a thing for pink.",
"grand_exchange_price": "249",
"durability": null,
"name": "Robe bottoms",
+ "tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "646",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -6514,9 +6021,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "180",
+ "examine": "Made by tree gnomes with a thing for green.",
"grand_exchange_price": "210",
"durability": null,
"name": "Robe bottoms",
+ "tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "648",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -6533,9 +6044,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "180",
+ "examine": "Made by tree gnomes with a thing for blue.",
"grand_exchange_price": "453",
"durability": null,
"name": "Robe bottoms",
+ "tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "650",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -6552,9 +6067,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "180",
+ "examine": "Made by tree gnomes with a thing for cream.",
"grand_exchange_price": "348",
"durability": null,
"name": "Robe bottoms",
+ "tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "652",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -6571,9 +6090,13 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "180",
+ "examine": "Made by tree gnomes with a thing for turquoise.",
"grand_exchange_price": "92",
"durability": null,
"name": "Robe bottoms",
+ "tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "654",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -6591,10 +6114,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "677",
- "examine": "A silly pointed hat.",
+ "examine": "A silly, pink pointed hat.",
"durability": null,
"name": "Hat",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.4",
"hat": "true",
"id": "656",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
@@ -6612,10 +6137,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "480",
- "examine": "A silly pointed hat.",
+ "examine": "A silly, green pointed hat.",
"durability": null,
"name": "Hat",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.4",
"hat": "true",
"id": "658",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
@@ -6633,10 +6160,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "421",
- "examine": "A silly pointed hat.",
+ "examine": "A silly, blue pointed hat.",
"durability": null,
"name": "Hat",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.4",
"hat": "true",
"id": "660",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
@@ -6654,10 +6183,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1102",
- "examine": "A silly pointed hat.",
+ "examine": "A silly, cream pointed hat.",
"durability": null,
"name": "Hat",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.4",
"hat": "true",
"id": "662",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
@@ -6675,9 +6206,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "295",
+ "examine": "A silly, turquoise pointed hat.",
"durability": null,
"name": "Hat",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.4",
"hat": "true",
"id": "664",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
@@ -6685,7 +6219,6 @@
},
{
"ge_buy_limit": "100",
- "examine": "A silly pointed hat.",
"grand_exchange_price": "295",
"durability": null,
"name": "Hat",
@@ -6706,13 +6239,12 @@
"examine": "A Faladian Knight's sword.",
"walk_anim": "819",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"turn90ccw_anim": "822",
"attack_speed": "5",
"weapon_interface": "6",
"turn180_anim": "820",
+ "equip_audio": "2248",
"render_anim": "292",
"defence_anim": "397",
"equipment_slot": "3",
@@ -6730,8 +6262,6 @@
"examine": "Definitely blue.",
"durability": null,
"name": "Blurite ore",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "668"
@@ -6755,7 +6285,6 @@
"durability": null,
"name": "Animal skull",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "671"
@@ -6792,7 +6321,6 @@
"examine": "A small pick for digging.",
"durability": null,
"name": "Rock pick",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "675",
"equipment_slot": "3"
@@ -6808,7 +6336,6 @@
"examine": "An empty tray for panning.",
"durability": null,
"name": "Panning tray",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "677"
},
@@ -6816,7 +6343,6 @@
"examine": "This tray contains gold nuggets.",
"durability": null,
"name": "Panning tray",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "678"
},
@@ -6824,7 +6350,6 @@
"examine": "This tray contains mud.",
"durability": null,
"name": "Panning tray",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "679"
},
@@ -7012,8 +6537,6 @@
"examine": "A strong chemical.",
"durability": null,
"name": "Nitroglycerin",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "703"
@@ -7025,11 +6548,29 @@
"archery_ticket_price": "0",
"id": "704"
},
+ {
+ "shop_price": "1",
+ "examine": "A mixture of strong chemicals.",
+ "durability": null,
+ "name": "Mixed chemicals",
+ "weight": "0.03",
+ "archery_ticket_price": "0",
+ "id": "705"
+ },
+ {
+ "shop_price": "1",
+ "examine": "A mixture of strong chemicals.",
+ "durability": null,
+ "name": "Mixed chemicals",
+ "weight": "0.035",
+ "archery_ticket_price": "0",
+ "id": "706"
+ },
{
"examine": "A mixture of strong chemicals.",
"durability": null,
"name": "Chemical compound",
- "weight": "2",
+ "weight": "0.035",
"archery_ticket_price": "0",
"id": "707"
},
@@ -7062,8 +6603,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "712"
@@ -7114,8 +6653,6 @@
"examine": "A rough sketch of a bowl shaped vessel given to you by Gujuo.",
"durability": null,
"name": "Sketch",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "720"
},
@@ -7123,8 +6660,6 @@
"examine": "A specially made bowl constructed out of pure gold.",
"durability": null,
"name": "Gold bowl",
- "low_alchemy": "280",
- "high_alchemy": "420",
"archery_ticket_price": "0",
"id": "721"
},
@@ -7132,8 +6667,6 @@
"examine": "A specially made bowl constructed out of pure gold and blessed.",
"durability": null,
"name": "Blessed gold bowl",
- "low_alchemy": "280",
- "high_alchemy": "420",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "722"
@@ -7142,8 +6675,6 @@
"examine": "A blessed golden bowl. It has pure sacred water in it.",
"durability": null,
"name": "Golden bowl",
- "low_alchemy": "280",
- "high_alchemy": "420",
"weight": "1",
"archery_ticket_price": "0",
"id": "723"
@@ -7152,8 +6683,6 @@
"examine": "A blessed golden bowl. It has pure sacred water in it.",
"durability": null,
"name": "Golden bowl",
- "low_alchemy": "280",
- "high_alchemy": "420",
"weight": "1",
"archery_ticket_price": "0",
"id": "724"
@@ -7162,8 +6691,6 @@
"examine": "A blessed golden bowl. It has pure sacred water in it.",
"durability": null,
"name": "Golden bowl",
- "low_alchemy": "280",
- "high_alchemy": "420",
"weight": "1",
"archery_ticket_price": "0",
"id": "725"
@@ -7172,8 +6699,6 @@
"examine": "A blessed golden bowl. It has pure sacred water in it.",
"durability": null,
"name": "Golden bowl",
- "low_alchemy": "280",
- "high_alchemy": "420",
"weight": "1",
"archery_ticket_price": "0",
"id": "726"
@@ -7182,7 +6707,6 @@
"examine": "One of nature's pipes.",
"durability": null,
"name": "Hollow reed",
- "high_alchemy": "1",
"weight": "0.012",
"archery_ticket_price": "0",
"id": "727"
@@ -7191,7 +6715,6 @@
"examine": "One of nature's pipes.",
"durability": null,
"name": "Hollow reed",
- "high_alchemy": "1",
"weight": "0.012",
"archery_ticket_price": "0",
"id": "728"
@@ -7277,18 +6800,16 @@
{
"shop_price": "160",
"examine": "A silly, blue pointed hat.",
- "durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
- "weight": "0.4",
- "equipment_slot": "0",
"grand_exchange_price": "472",
+ "durability": null,
"name": "Blue hat",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"hat": "true",
"id": "740",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"examine": "It looks like it's been snapped off of something.",
@@ -7330,24 +6851,26 @@
"id": "745"
},
{
- "attack_anims": "400,400,400,400",
"examine": "A black obsidian dagger, it has a strange aura about it.",
- "attack_audios": "2517,2517,2500,2517",
"durability": null,
+ "weapon_interface": "5",
+ "equip_audio": "2248",
+ "render_anim": "2584",
+ "defence_anim": "378",
+ "equipment_slot": "3",
+ "attack_anims": "400,400,400,400",
+ "attack_audios": "2517,2517,2500,2517",
"name": "Dark dagger",
"archery_ticket_price": "0",
"id": "746",
- "weapon_interface": "5",
- "bonuses": "5,3,-4,1,0,0,0,0,1,0,0,0,0,0,0",
- "render_anim": "2584",
- "defence_anim": "378",
- "equipment_slot": "3"
+ "bonuses": "5,3,-4,1,0,0,0,0,1,0,0,0,0,0,0"
},
{
"examine": "A black obsidian dagger, it has a strange aura about it - it seems to be glowing.",
"durability": null,
"attack_speed": "6",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -7444,8 +6967,6 @@
"examine": "An intelligence report.",
"durability": null,
"name": "Intel report",
- "low_alchemy": "2",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "761"
@@ -7475,12 +6996,12 @@
"examine": "Second-rate crossbow, former property of the Phoenix Gang.",
"walk_anim": "4226",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "3",
"turn90ccw_anim": "822",
+ "attack_speed": "6",
"weapon_interface": "17",
"turn180_anim": "4227",
+ "equip_audio": "2244",
"render_anim": "175",
"defence_anim": "424",
"equipment_slot": "3",
@@ -7515,9 +7036,7 @@
"examine": "A limb of the fabled Dramen tree.",
"durability": null,
"name": "Dramen branch",
- "low_alchemy": "6",
"tradeable": "false",
- "high_alchemy": "9",
"destroy": "true",
"weight": "2.2",
"archery_ticket_price": "0",
@@ -7528,13 +7047,12 @@
"examine": "Crafted from a Dramen tree branch.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -7553,8 +7071,6 @@
"examine": "A perfect ruby ring.",
"durability": null,
"name": "'perfect' ring",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "773",
"equipment_slot": "12"
@@ -7563,35 +7079,29 @@
"examine": "A perfect ruby necklace.",
"durability": null,
"name": "'perfect' necklace",
- "low_alchemy": "870",
- "high_alchemy": "1305",
"archery_ticket_price": "0",
"id": "774",
"equipment_slot": "2"
},
{
+ "destroy_message": "You can obtain another set of Cooking gauntlets from Dimintheis.",
"examine": "These gauntlets empower with a greater ability to cook fish.",
"durability": null,
- "low_alchemy": "75000",
- "high_alchemy": "75000",
- "destroy": "true",
- "weight": "0.2",
- "equipment_slot": "9",
- "destroy_message": "You can obtain another set of Cooking gauntlets from Dimintheis.",
"name": "Cooking gauntlets",
"tradeable": "false",
+ "destroy": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "775",
- "bonuses": "2,2,2,0,0,8,9,7,0,0,3,2,0,0,0"
+ "bonuses": "2,2,2,0,0,8,9,7,0,0,3,2,0,0,0",
+ "equipment_slot": "9"
},
{
"destroy_message": "You can obtain another set of Goldsmith gauntlets from Dimintheis.",
"examine": "These gauntlets empower the bearer whilst making gold.",
"durability": null,
"name": "Goldsmith gauntlets",
- "low_alchemy": "75000",
"tradeable": "false",
- "high_alchemy": "75000",
"destroy": "true",
"archery_ticket_price": "0",
"id": "776",
@@ -7603,9 +7113,7 @@
"examine": "These gauntlets empower spell casters.",
"durability": null,
"name": "Chaos gauntlets",
- "low_alchemy": "75000",
"tradeable": "false",
- "high_alchemy": "75000",
"destroy": "true",
"archery_ticket_price": "0",
"id": "777",
@@ -7665,7 +7173,6 @@
"examine": "Perhaps I should read it and see what Glough is up to!",
"durability": null,
"name": "Glough's journal",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "785"
},
@@ -7682,7 +7189,6 @@
"examine": "An order from the Karamja shipyard.",
"durability": null,
"name": "Lumber order",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "787"
},
@@ -7761,7 +7267,6 @@
"examine": "A model of a Karamja warship",
"durability": null,
"name": "War ship",
- "high_alchemy": "1",
"weight": "0.01",
"archery_ticket_price": "0",
"id": "795"
@@ -7771,14 +7276,14 @@
"ge_buy_limit": "1000",
"examine": "A finely balanced throwing axe.",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"attack_speed": "5",
"weapon_interface": "18",
+ "equip_audio": "2232",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "3",
+ "attack_audios": "2706,2706,2706",
"name": "Bronze thrownaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -7790,14 +7295,14 @@
"ge_buy_limit": "1000",
"examine": "A finely balanced throwing axe.",
"durability": null,
- "low_alchemy": "5",
- "high_alchemy": "7",
"attack_speed": "5",
"weapon_interface": "18",
+ "equip_audio": "2232",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "14",
+ "attack_audios": "2706,2706,2706",
"name": "Iron thrownaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -7810,14 +7315,14 @@
"ge_buy_limit": "1000",
"examine": "A finely balanced throwing axe.",
"durability": null,
- "low_alchemy": "15",
- "high_alchemy": "22",
"attack_speed": "5",
"weapon_interface": "18",
+ "equip_audio": "2232",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "60",
+ "attack_audios": "2706,2706,2706",
"name": "Steel thrownaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -7830,14 +7335,14 @@
"ge_buy_limit": "1000",
"examine": "A finely balanced throwing axe.",
"durability": null,
- "low_alchemy": "28",
- "high_alchemy": "42",
"attack_speed": "5",
"weapon_interface": "18",
+ "equip_audio": "2232",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "135",
+ "attack_audios": "2706,2706,2706",
"name": "Mithril thrownaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -7850,14 +7355,14 @@
"ge_buy_limit": "1000",
"examine": "A finely balanced throwing axe.",
"durability": null,
- "low_alchemy": "104",
- "high_alchemy": "157",
"attack_speed": "5",
"weapon_interface": "18",
+ "equip_audio": "2232",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "138",
+ "attack_audios": "2706,2706,2706",
"name": "Adamant thrownaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -7871,14 +7376,14 @@
"examine": "A finely balanced throwing axe.",
"has_special": "true",
"durability": null,
- "low_alchemy": "176",
- "high_alchemy": "264",
"attack_speed": "5",
"weapon_interface": "18",
+ "equip_audio": "2232",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "243",
+ "attack_audios": "2706,2706,2706",
"name": "Rune thrownaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -7891,6 +7396,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -7906,9 +7412,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an iron tip.",
"durability": null,
- "high_alchemy": "1",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -7925,10 +7431,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a steel tip.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -7945,10 +7450,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a mithril tip.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -7965,10 +7469,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an adamantite tip.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "39",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -7985,10 +7488,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a rune tip.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8006,6 +7508,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8021,9 +7524,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an iron tip.",
"durability": null,
- "high_alchemy": "1",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8040,10 +7543,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a steel tip.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8060,10 +7562,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a mithril tip.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8080,10 +7581,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an adamantite tip.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "39",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8100,10 +7600,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a rune tip.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -8121,6 +7620,7 @@
"name": "Poisoned dart(p)",
"archery_ticket_price": "0",
"id": "818",
+ "equip_audio": "2244",
"equipment_slot": "3"
},
{
@@ -8142,8 +7642,6 @@
"durability": null,
"name": "Iron dart tip",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "820"
},
@@ -8155,8 +7653,6 @@
"durability": null,
"name": "Steel dart tip",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "821"
},
@@ -8168,8 +7664,6 @@
"durability": null,
"name": "Mithril dart tip",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "822"
},
@@ -8181,8 +7675,6 @@
"durability": null,
"name": "Adamant dart tip",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"archery_ticket_price": "0",
"id": "823"
},
@@ -8194,8 +7686,6 @@
"durability": null,
"name": "Rune dart tip",
"tradeable": "true",
- "low_alchemy": "70",
- "high_alchemy": "105",
"archery_ticket_price": "0",
"id": "824"
},
@@ -8204,10 +7694,9 @@
"ge_buy_limit": "1000",
"examine": "A bronze-tipped javelin.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8223,10 +7712,9 @@
"ge_buy_limit": "1000",
"examine": "An iron-tipped javelin.",
"durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8243,10 +7731,9 @@
"ge_buy_limit": "1000",
"examine": "A steel-tipped javelin.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "22",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8263,10 +7750,9 @@
"ge_buy_limit": "1000",
"examine": "A mithril tipped javelin.",
"durability": null,
- "low_alchemy": "39",
- "high_alchemy": "58",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8283,10 +7769,9 @@
"ge_buy_limit": "1000",
"examine": "An adamant tipped javelin.",
"durability": null,
- "low_alchemy": "98",
- "high_alchemy": "147",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8303,10 +7788,9 @@
"ge_buy_limit": "1000",
"examine": "A rune tipped javelin.",
"durability": null,
- "low_alchemy": "249",
- "high_alchemy": "374",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8322,10 +7806,9 @@
"ge_buy_limit": "1000",
"examine": "A bronze-tipped javelin.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8341,10 +7824,9 @@
"ge_buy_limit": "1000",
"examine": "An iron-tipped javelin.",
"durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8361,10 +7843,9 @@
"ge_buy_limit": "1000",
"examine": "A steel-tipped javelin.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "22",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8381,10 +7862,9 @@
"ge_buy_limit": "1000",
"examine": "A mithril tipped javelin.",
"durability": null,
- "low_alchemy": "39",
- "high_alchemy": "58",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8401,10 +7881,9 @@
"ge_buy_limit": "1000",
"examine": "An adamant tipped javelin.",
"durability": null,
- "low_alchemy": "98",
- "high_alchemy": "147",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8421,10 +7900,9 @@
"ge_buy_limit": "1000",
"examine": "A rune tipped javelin.",
"durability": null,
- "low_alchemy": "249",
- "high_alchemy": "374",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8440,7 +7918,6 @@
"turn90cw_anim": "821",
"examine": "This fires crossbow bolts.",
"walk_anim": "4226",
- "low_alchemy": "28",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "4227",
@@ -8457,9 +7934,9 @@
"bonuses": "0,0,0,0,6,0,0,0,0,0,0,0,0,0,0",
"shop_price": "70",
"durability": null,
- "high_alchemy": "42",
"weight": "8",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Crossbow"
@@ -8478,7 +7955,6 @@
"turn90cw_anim": "821",
"examine": "A nice sturdy bow.",
"walk_anim": "819",
- "low_alchemy": "32",
"turn90ccw_anim": "822",
"attack_speed": "6",
"two_handed": "true",
@@ -8496,9 +7972,9 @@
"bonuses": "0,0,0,0,8,0,0,0,0,0,0,0,0,0,0",
"shop_price": "80",
"durability": null,
- "high_alchemy": "48",
"weight": "1.8",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "1",
"attack_audios": "2700,0,0,0",
"name": "Longbow"
@@ -8517,7 +7993,6 @@
"turn90cw_anim": "821",
"examine": "A shortbow made of wood.",
"walk_anim": "819",
- "low_alchemy": "20",
"turn90ccw_anim": "822",
"attack_speed": "4",
"two_handed": "true",
@@ -8535,9 +8010,9 @@
"bonuses": "0,0,0,0,8,0,0,0,0,0,0,0,0,0,0",
"shop_price": "50",
"durability": null,
- "high_alchemy": "30",
"weight": "1.33",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "1",
"attack_audios": "2700,0,0,0",
"name": "Shortbow"
@@ -8557,12 +8032,11 @@
"ge_buy_limit": "5000",
"examine": "A shortbow made out of oak, still effective.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1.8",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8590,12 +8064,11 @@
"ge_buy_limit": "5000",
"examine": "A nice sturdy bow made out of oak.",
"durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
"weight": "2",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8623,12 +8096,11 @@
"ge_buy_limit": "5000",
"examine": "A nice sturdy bow made out of willow.",
"durability": null,
- "low_alchemy": "128",
- "high_alchemy": "192",
"weight": "1.5",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8656,12 +8128,11 @@
"ge_buy_limit": "5000",
"examine": "A shortbow made out of willow, still effective.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8689,12 +8160,11 @@
"ge_buy_limit": "5000",
"examine": "A nice sturdy bow made out of maple.",
"durability": null,
- "low_alchemy": "256",
- "high_alchemy": "384",
"weight": "1.8",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8723,12 +8193,11 @@
"ge_buy_limit": "5000",
"examine": "A shortbow made out of maple, still effective.",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "1",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8757,12 +8226,11 @@
"ge_buy_limit": "5000",
"examine": "A nice sturdy bow made out of yew.",
"durability": null,
- "low_alchemy": "512",
- "high_alchemy": "768",
"weight": "1.8",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8790,12 +8258,11 @@
"ge_buy_limit": "5000",
"examine": "A shortbow made out of yew, still effective.",
"durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "1",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8825,12 +8292,11 @@
"examine": "A nice sturdy magical bow.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1024",
- "high_alchemy": "1536",
"weight": "1.8",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8860,12 +8326,11 @@
"examine": "Short and magical, but still effective.",
"has_special": "true",
"durability": null,
- "low_alchemy": "640",
- "high_alchemy": "960",
"weight": "1.3",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2244",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
@@ -8893,10 +8358,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "23",
- "high_alchemy": "34",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8913,10 +8377,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8934,10 +8397,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "27",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8954,10 +8416,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "16",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8974,10 +8435,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -8994,10 +8454,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "66",
- "high_alchemy": "100",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9015,10 +8474,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "7",
- "high_alchemy": "11",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9035,10 +8493,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9055,10 +8512,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "23",
- "high_alchemy": "34",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9076,10 +8532,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "27",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9096,10 +8551,9 @@
"ge_buy_limit": "100",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "16",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9117,10 +8571,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "7",
- "high_alchemy": "11",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9137,10 +8590,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9157,10 +8609,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "66",
- "high_alchemy": "100",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -9176,31 +8627,27 @@
"shop_price": "3",
"ge_buy_limit": "10000",
"examine": "Bronze crossbow bolts.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "12",
+ "durability": null,
"name": "Bronze bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "877",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"shop_price": "3",
"ge_buy_limit": "10000",
"examine": "Bronze crossbow bolts.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "38",
+ "durability": null,
"name": "Bronze bolts(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "878",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"ge_buy_limit": "25000",
@@ -9209,8 +8656,6 @@
"durability": null,
"name": "Opal bolts",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "879",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,14",
@@ -9220,219 +8665,191 @@
"requirements": "{4,26}",
"ge_buy_limit": "25000",
"examine": "Pearl tipped Iron crossbow bolts.",
- "durability": null,
- "low_alchemy": "5",
- "high_alchemy": "7",
- "equipment_slot": "13",
"grand_exchange_price": "32",
+ "durability": null,
"name": "Pearl bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "880",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,48"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,48",
+ "equipment_slot": "13"
},
{
"shop_price": "80",
"ge_buy_limit": "10000",
"examine": "Great if you have a crossbow!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "equipment_slot": "13",
"grand_exchange_price": "42",
+ "durability": null,
"name": "Barbed bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "881",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,12"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,12",
+ "equipment_slot": "13"
},
{
"shop_price": "7",
"ge_buy_limit": "10000",
"examine": "Arrows with bronze heads.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "10",
+ "durability": null,
"name": "Bronze arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "882",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7",
+ "equipment_slot": "13"
},
{
"shop_price": "7",
"ge_buy_limit": "10000",
"examine": "Arrows with bronze heads.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "39",
+ "durability": null,
"name": "Bronze arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "883",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7",
+ "equipment_slot": "13"
},
{
"shop_price": "20",
"ge_buy_limit": "10000",
"examine": "Arrows with iron heads.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "10",
+ "durability": null,
"name": "Iron arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "884",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"shop_price": "20",
"ge_buy_limit": "10000",
"examine": "Arrows with iron heads.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "41",
+ "durability": null,
"name": "Iron arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "885",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"requirements": "{4,5}",
"shop_price": "46",
"ge_buy_limit": "10000",
"examine": "Arrows with steel heads.",
- "durability": null,
- "low_alchemy": "18",
- "high_alchemy": "27",
- "equipment_slot": "13",
"grand_exchange_price": "25",
+ "durability": null,
"name": "Steel arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "886",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{4,5}",
"shop_price": "46",
"ge_buy_limit": "10000",
"examine": "Arrows with steel heads.",
- "durability": null,
- "low_alchemy": "18",
- "high_alchemy": "27",
- "equipment_slot": "13",
"grand_exchange_price": "69",
+ "durability": null,
"name": "Steel arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "887",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{4,20}",
"shop_price": "76",
"ge_buy_limit": "10000",
"examine": "Arrows with mithril heads.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "equipment_slot": "13",
"grand_exchange_price": "30",
+ "durability": null,
"name": "Mithril arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "888",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,20}",
"shop_price": "76",
"ge_buy_limit": "10000",
"examine": "Arrows with mithril heads.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "equipment_slot": "13",
"grand_exchange_price": "69",
+ "durability": null,
"name": "Mithril arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "889",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"shop_price": "172",
"ge_buy_limit": "10000",
"examine": "Arrows with adamantite heads.",
- "durability": null,
- "low_alchemy": "68",
- "high_alchemy": "103",
- "equipment_slot": "13",
"grand_exchange_price": "111",
+ "durability": null,
"name": "Adamant arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "890",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"shop_price": "172",
"ge_buy_limit": "10000",
"examine": "Arrows with adamantite heads.",
- "durability": null,
- "low_alchemy": "68",
- "high_alchemy": "103",
- "equipment_slot": "13",
"grand_exchange_price": "109",
+ "durability": null,
"name": "Adamant arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "891",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31",
+ "equipment_slot": "13"
},
{
"requirements": "{4,40}",
"shop_price": "510",
"ge_buy_limit": "10000",
"examine": "Arrows with rune heads.",
- "durability": null,
- "low_alchemy": "204",
- "high_alchemy": "306",
- "equipment_slot": "13",
"grand_exchange_price": "212",
+ "durability": null,
"name": "Rune arrow",
"tradeable": "true",
"archery_ticket_price": "40",
"id": "892",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"requirements": "{4,40}",
"shop_price": "510",
"ge_buy_limit": "10000",
"examine": "Arrows with rune heads.",
- "durability": null,
- "low_alchemy": "204",
- "high_alchemy": "306",
- "equipment_slot": "13",
"grand_exchange_price": "257",
+ "durability": null,
"name": "Rune arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "893",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"ge_buy_limit": "10000",
@@ -9441,18 +8858,17 @@
"durability": null,
"name": "Bronze fire arrows",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "942",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7",
"equipment_slot": "13"
},
{
- "examine": "Some meaty worms.",
+ "shop_price": "0",
+ "examine": "Ugh! It's wriggling!",
"durability": null,
"name": "Worm",
- "tradeable": "false",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"id": "943"
@@ -9479,8 +8895,6 @@
"durability": null,
"name": "Knife",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "946"
@@ -9502,8 +8916,6 @@
"durability": null,
"name": "Bear fur",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "3",
"archery_ticket_price": "0",
"id": "948"
@@ -9525,8 +8937,6 @@
"durability": null,
"name": "Silk",
"tradeable": "true",
- "low_alchemy": "22",
- "high_alchemy": "33",
"weight": "1",
"archery_ticket_price": "0",
"id": "950"
@@ -9548,8 +8958,6 @@
"durability": null,
"name": "Spade",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "952"
@@ -9571,8 +8979,6 @@
"durability": null,
"name": "Rope",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "954"
@@ -9590,7 +8996,6 @@
"examine": "Get your axes from Bob's Axes.",
"durability": null,
"name": "Flier",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "956"
},
@@ -9602,8 +9007,6 @@
"durability": null,
"name": "Grey wolf fur",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "3",
"archery_ticket_price": "0",
"id": "958"
@@ -9625,8 +9028,6 @@
"durability": null,
"name": "Plank",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "960"
@@ -9675,8 +9076,6 @@
"durability": null,
"name": "Papyrus",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "970"
},
@@ -9696,8 +9095,6 @@
"durability": null,
"name": "Papyrus",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "972"
},
@@ -9709,8 +9106,6 @@
"durability": null,
"name": "Charcoal",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "27",
"archery_ticket_price": "0",
"id": "973"
},
@@ -9728,8 +9123,6 @@
"ge_buy_limit": "100",
"examine": "A jungle specific slashing device.",
"durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "1.3",
"attack_speed": "5",
"weapon_interface": "6",
@@ -9766,8 +9159,6 @@
"durability": null,
"name": "Disk of returning",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "2",
"archery_ticket_price": "0",
"id": "981"
@@ -9897,7 +9288,7 @@
"id": "994"
},
{
- "examine": "100,000 or more: \"X x coins\" where X is the exact number of coins in the stack.",
+ "examine": "Lovely money!",
"durability": null,
"name": "Coins",
"tradeable": "true",
@@ -9912,7 +9303,6 @@
"durability": null,
"name": "White apron",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.45",
"archery_ticket_price": "0",
"id": "1005",
@@ -9931,17 +9321,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A bright red cape.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "187",
+ "durability": null,
"name": "Cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "1007",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -9960,8 +9348,6 @@
"durability": null,
"name": "Brass necklace",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "1009",
"equipment_slot": "2"
@@ -9979,16 +9365,15 @@
"shop_price": "2",
"ge_buy_limit": "100",
"examine": "Leg covering favored by women and wizards.",
- "durability": null,
- "high_alchemy": "1",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "208",
+ "durability": null,
"name": "Blue skirt",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "1011",
- "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0"
+ "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -10003,16 +9388,15 @@
"shop_price": "3",
"ge_buy_limit": "100",
"examine": "A ladies skirt.",
- "durability": null,
- "high_alchemy": "1",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "216",
+ "durability": null,
"name": "Pink skirt",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "1013",
- "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0"
+ "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -10027,16 +9411,15 @@
"shop_price": "2",
"ge_buy_limit": "100",
"examine": "Clothing favoured by women and dark wizards.",
- "durability": null,
- "high_alchemy": "1",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "30",
+ "durability": null,
"name": "Black skirt",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "1015",
- "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0"
+ "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -10051,17 +9434,15 @@
"shop_price": "2",
"ge_buy_limit": "100",
"examine": "A silly pointed hat.",
- "durability": null,
- "low_alchemy": "0",
- "high_alchemy": "1",
- "equipment_slot": "0",
"grand_exchange_price": "280",
+ "durability": null,
"name": "Wizard hat",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": "true",
"id": "1017",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -10076,17 +9457,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A warm black cape.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "209",
+ "durability": null,
"name": "Cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "1019",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -10102,17 +9481,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A thick blue cape.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "504",
+ "durability": null,
"name": "Cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "1021",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -10128,17 +9505,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A thick yellow cape.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "439",
+ "durability": null,
"name": "Cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "1023",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -10158,8 +9533,6 @@
"durability": null,
"name": "Eyepatch",
"tradeable": "true",
- "low_alchemy": "0",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1025",
"equipment_slot": "0"
@@ -10177,17 +9550,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A thick green cape.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1061",
+ "durability": null,
"name": "Cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "1027",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -10203,17 +9574,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A thick purple cape.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "955",
+ "durability": null,
"name": "Cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "1029",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -10230,8 +9599,6 @@
"ge_buy_limit": "100",
"examine": "A thick orange cape.",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"destroy": "true",
"weight": "0.4",
"equipment_slot": "1",
@@ -10255,17 +9622,15 @@
"shop_price": "30",
"ge_buy_limit": "2",
"examine": "A robe worn by worshippers of Zamorak.",
- "durability": null,
- "low_alchemy": "12",
- "high_alchemy": "18",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "2481",
+ "durability": null,
"name": "Zamorak robe",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "1033",
- "bonuses": "0,0,0,2,0,0,0,0,3,0,0,0,3,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,3,0,0,0,3,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "2",
@@ -10281,8 +9646,6 @@
"ge_buy_limit": "2",
"examine": "A robe worn by worshippers of Zamorak.",
"durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "0.9",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -10303,35 +9666,31 @@
"id": "1036"
},
{
+ "destroy_message": "You can get a replacement from Diango.",
"shop_price": "1",
"examine": "A rabbit-like adornment.",
"durability": null,
- "low_alchemy": "0",
- "high_alchemy": "0",
- "destroy": "true",
- "weight": "0.2",
- "equipment_slot": "0",
- "destroy_message": "You can get a replacement from Diango.",
"name": "Bunny ears",
"tradeable": "false",
+ "destroy": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
- "id": "1037"
+ "id": "1037",
+ "equipment_slot": "0"
},
{
+ "lendable": "true",
"shop_price": "1",
"ge_buy_limit": "2",
"examine": "A nice hat from a cracker.",
- "durability": null,
- "low_alchemy": "0",
- "high_alchemy": "0",
- "weight": "0.05",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "10",
+ "durability": null,
"name": "Red partyhat",
"tradeable": "true",
+ "weight": "0.05",
"archery_ticket_price": "0",
- "id": "1038"
+ "id": "1038",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -10462,8 +9821,6 @@
"ge_buy_limit": "2",
"examine": "It's a Santa hat.",
"durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
"weight": "0.1",
"equipment_slot": "0",
"lendable": "true",
@@ -10488,8 +9845,6 @@
"examine": "The cape worn by members of the Legends Guild.",
"durability": null,
"name": "Cape of legends",
- "low_alchemy": "180",
- "high_alchemy": "270",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "1052",
@@ -10502,8 +9857,6 @@
"ge_buy_limit": "2",
"examine": "Aaaarrrghhh ... I'm a monster.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -10528,8 +9881,6 @@
"ge_buy_limit": "2",
"examine": "Aaaarrrghhh ... I'm a monster.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -10554,8 +9905,6 @@
"ge_buy_limit": "2",
"examine": "Aaaarrrghhh ... I'm a monster.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -10578,17 +9927,15 @@
"shop_price": "6",
"ge_buy_limit": "5000",
"examine": "These will keep my hands warm!",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "0.23",
- "equipment_slot": "9",
"grand_exchange_price": "12",
+ "durability": null,
"name": "Leather gloves",
"tradeable": "true",
+ "weight": "0.23",
"archery_ticket_price": "0",
"id": "1059",
- "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "5000",
@@ -10603,17 +9950,15 @@
"shop_price": "6",
"ge_buy_limit": "5000",
"examine": "Comfortable leather boots.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "0.34",
- "equipment_slot": "10",
"grand_exchange_price": "144",
+ "durability": null,
"name": "Leather boots",
"tradeable": "true",
+ "weight": "0.34",
"archery_ticket_price": "0",
"id": "1061",
- "bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "5000",
@@ -10628,17 +9973,15 @@
"shop_price": "18",
"ge_buy_limit": "5000",
"examine": "Better than no armour!",
- "durability": null,
- "low_alchemy": "7",
- "high_alchemy": "10",
- "weight": "0.22",
- "equipment_slot": "9",
"grand_exchange_price": "13",
+ "durability": null,
"name": "Leather vambraces",
"tradeable": "true",
+ "weight": "0.22",
"archery_ticket_price": "0",
"id": "1063",
- "bonuses": "0,0,0,0,4,2,2,1,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,4,2,2,1,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "5000",
@@ -10655,9 +9998,8 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "0.28",
+ "equip_audio": "2241",
"equipment_slot": "9",
"lendable": "true",
"grand_exchange_price": "1407",
@@ -10681,10 +10023,9 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "112",
- "high_alchemy": "168",
"weight": "9",
"absorb": "1,0,1",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "55",
"name": "Iron platelegs",
@@ -10708,10 +10049,9 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "9",
"absorb": "1,0,1",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "426",
"name": "Steel platelegs",
@@ -10735,10 +10075,9 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "1040",
- "high_alchemy": "1560",
"weight": "7.7",
"absorb": "1,0,2",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "1391",
"name": "Mithril platelegs",
@@ -10762,10 +10101,9 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "2560",
- "high_alchemy": "3840",
"weight": "10",
"absorb": "1,0,3",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "3649",
"name": "Adamant platelegs",
@@ -10788,9 +10126,8 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "9",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "34",
"name": "Bronze platelegs",
@@ -10814,10 +10151,9 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "9",
"absorb": "1,0,2",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "4995",
"name": "Black platelegs",
@@ -10841,10 +10177,9 @@
"ge_buy_limit": "100",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "38500",
@@ -10867,17 +10202,15 @@
"shop_price": "280",
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
- "durability": null,
- "low_alchemy": "112",
- "high_alchemy": "168",
- "weight": "8.1",
- "equipment_slot": "7",
"grand_exchange_price": "86",
+ "durability": null,
"name": "Iron plateskirt",
"tradeable": "true",
+ "weight": "8.1",
"archery_ticket_price": "0",
"id": "1081",
- "bonuses": "0,0,0,-21,-7,11,10,10,-4,10,0,0,0,0,0"
+ "bonuses": "0,0,0,-21,-7,11,10,10,-4,10,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -10894,8 +10227,6 @@
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "8.1",
"equipment_slot": "7",
"grand_exchange_price": "514",
@@ -10920,8 +10251,6 @@
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
"durability": null,
- "low_alchemy": "1040",
- "high_alchemy": "1560",
"weight": "7.2",
"absorb": "1,0,2",
"equipment_slot": "7",
@@ -10945,17 +10274,15 @@
"shop_price": "80",
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
- "durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
- "weight": "8.1",
- "equipment_slot": "7",
"grand_exchange_price": "113",
+ "durability": null,
"name": "Bronze plateskirt",
"tradeable": "true",
+ "weight": "8.1",
"archery_ticket_price": "0",
"id": "1087",
- "bonuses": "0,0,0,-21,-7,8,7,6,-4,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-21,-7,8,7,6,-4,7,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -10972,8 +10299,6 @@
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "8",
"absorb": "1,0,2",
"equipment_slot": "7",
@@ -10999,8 +10324,6 @@
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
"durability": null,
- "low_alchemy": "2560",
- "high_alchemy": "3840",
"weight": "9",
"absorb": "1,0,3",
"equipment_slot": "7",
@@ -11026,8 +10349,6 @@
"ge_buy_limit": "100",
"examine": "Designer leg protection.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "8",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -11052,17 +10373,15 @@
"shop_price": "23",
"ge_buy_limit": "5000",
"examine": "Better than no armour!",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "3",
- "equipment_slot": "7",
"grand_exchange_price": "5",
+ "durability": null,
"name": "Leather chaps",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
"id": "1095",
- "bonuses": "0,0,0,0,4,2,2,1,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,4,2,2,1,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "5000",
@@ -11079,8 +10398,6 @@
"ge_buy_limit": "1000",
"examine": "Those studs should provide a bit more protection.",
"durability": null,
- "low_alchemy": "300",
- "high_alchemy": "450",
"weight": "4.5",
"absorb": "0,2,1",
"equipment_slot": "7",
@@ -11106,10 +10423,9 @@
"ge_buy_limit": "5000",
"examine": "100% real dragonhide.",
"durability": null,
- "low_alchemy": "1560",
- "high_alchemy": "2340",
"weight": "5.4",
"absorb": "0,4,2",
+ "equip_audio": "2241",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "2228",
@@ -11132,17 +10448,15 @@
"shop_price": "210",
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
- "durability": null,
- "low_alchemy": "84",
- "high_alchemy": "126",
- "weight": "6.8",
- "equipment_slot": "4",
"grand_exchange_price": "76",
+ "durability": null,
"name": "Iron chainbody",
"tradeable": "true",
+ "weight": "6.8",
"archery_ticket_price": "0",
"id": "1101",
- "bonuses": "0,0,0,-15,0,10,15,19,-3,12,5,0,0,0,0"
+ "bonuses": "0,0,0,-15,0,10,15,19,-3,12,5,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -11157,17 +10471,15 @@
"shop_price": "60",
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
- "durability": null,
- "low_alchemy": "24",
- "high_alchemy": "36",
- "weight": "6.8",
- "equipment_slot": "4",
"grand_exchange_price": "37",
+ "durability": null,
"name": "Bronze chainbody",
"tradeable": "true",
+ "weight": "6.8",
"archery_ticket_price": "0",
"id": "1103",
- "bonuses": "0,0,0,-15,0,7,11,13,-3,9,5,0,0,0,0"
+ "bonuses": "0,0,0,-15,0,7,11,13,-3,9,5,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -11184,8 +10496,6 @@
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
"durability": null,
- "low_alchemy": "300",
- "high_alchemy": "450",
"weight": "6",
"equipment_slot": "4",
"grand_exchange_price": "265",
@@ -11210,8 +10520,6 @@
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
"durability": null,
- "low_alchemy": "576",
- "high_alchemy": "864",
"weight": "6.8",
"absorb": "1,0,2",
"equipment_slot": "4",
@@ -11237,8 +10545,6 @@
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
"durability": null,
- "low_alchemy": "780",
- "high_alchemy": "1170",
"weight": "5.8",
"absorb": "1,0,3",
"equipment_slot": "4",
@@ -11264,8 +10570,6 @@
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
"durability": null,
- "low_alchemy": "1920",
- "high_alchemy": "2880",
"weight": "7.7",
"absorb": "2,0,4",
"equipment_slot": "4",
@@ -11291,8 +10595,6 @@
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6.8",
"absorb": "3,0,6",
"equipment_slot": "4",
@@ -11318,9 +10620,8 @@
"ge_buy_limit": "500",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"weight": "9.95",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "434",
@@ -11344,9 +10645,8 @@
"ge_buy_limit": "500",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
"weight": "9.5",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "36",
@@ -11371,9 +10671,8 @@
"ge_buy_limit": "500",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "9.9",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "1077",
@@ -11398,10 +10697,9 @@
"ge_buy_limit": "500",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "2080",
- "high_alchemy": "3120",
"weight": "8.6",
"absorb": "1,0,3",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "2965",
@@ -11426,10 +10724,9 @@
"ge_buy_limit": "500",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "6656",
- "high_alchemy": "9984",
"weight": "11",
"absorb": "2,0,4",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "9790",
@@ -11454,10 +10751,9 @@
"ge_buy_limit": "500",
"examine": "Provides Excellent protection.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.9",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "4915",
@@ -11482,10 +10778,9 @@
"ge_buy_limit": "100",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.9",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -11509,17 +10804,15 @@
"shop_price": "20",
"ge_buy_limit": "1000",
"examine": "Better than no armour!",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.7",
- "equipment_slot": "4",
"grand_exchange_price": "34",
+ "durability": null,
"name": "Leather body",
"tradeable": "true",
+ "weight": "2.7",
"archery_ticket_price": "0",
"id": "1129",
- "bonuses": "0,0,0,-2,2,8,9,10,4,9,5,0,0,0,0"
+ "bonuses": "0,0,0,-2,2,8,9,10,4,9,5,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "1000",
@@ -11536,8 +10829,6 @@
"ge_buy_limit": "1000",
"examine": "Harder than normal leather.",
"durability": null,
- "low_alchemy": "68",
- "high_alchemy": "102",
"weight": "3.6",
"absorb": "0,2,1",
"equipment_slot": "4",
@@ -11563,8 +10854,6 @@
"ge_buy_limit": "1000",
"examine": "These studs should provide a bit more protection.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5",
"absorb": "0,3,1",
"equipment_slot": "4",
@@ -11590,10 +10879,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "3120",
- "high_alchemy": "4680",
"weight": "6.8",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"lendable": "true",
"grand_exchange_price": "4544",
@@ -11618,9 +10906,8 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "33",
- "high_alchemy": "50",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "22",
"name": "Iron med helm",
@@ -11644,9 +10931,8 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "9",
- "high_alchemy": "14",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "39",
"name": "Bronze med helm",
@@ -11671,9 +10957,8 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "52",
"name": "Steel med helm",
@@ -11698,9 +10983,8 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "312",
- "high_alchemy": "468",
"weight": "1.3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "272",
"name": "Mithril med helm",
@@ -11725,10 +11009,9 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "1.8",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1024",
"name": "Adamant med helm",
@@ -11753,10 +11036,9 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "7680",
- "high_alchemy": "11520",
"weight": "1.8",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "11400",
@@ -11781,10 +11063,9 @@
"ge_buy_limit": "100",
"examine": "Makes the wearer pretty intimidating.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"weight": "1.3",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "60500",
@@ -11810,9 +11091,8 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "230",
- "high_alchemy": "345",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "242",
"name": "Black med helm",
@@ -11836,9 +11116,8 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "61",
- "high_alchemy": "92",
"weight": "2.7",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "56",
@@ -11863,9 +11142,8 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "17",
- "high_alchemy": "26",
"weight": "2.7",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "67",
@@ -11891,9 +11169,8 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "220",
- "high_alchemy": "330",
"weight": "2.7",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "195",
@@ -11919,9 +11196,8 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "572",
- "high_alchemy": "858",
"weight": "2.2",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "675",
@@ -11947,10 +11223,9 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "2.7",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "1911",
@@ -11975,10 +11250,9 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2.7",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -12005,9 +11279,8 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "548",
- "high_alchemy": "823",
"weight": "2.7",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "731",
@@ -12032,8 +11305,6 @@
"ge_buy_limit": "5000",
"examine": "Better than no armour!",
"durability": null,
- "low_alchemy": "9",
- "high_alchemy": "14",
"weight": "0.9",
"equipment_slot": "0",
"grand_exchange_price": "9",
@@ -12059,9 +11330,8 @@
"ge_buy_limit": "5000",
"examine": "Light weight head protection.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.9",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "56",
"name": "Coif",
@@ -12083,16 +11353,15 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "A solid wooden shield.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "5",
"grand_exchange_price": "483",
+ "durability": null,
"name": "Wooden shield",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1171",
- "bonuses": "0,0,0,0,0,4,5,3,1,4,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,4,5,3,1,4,0,0,0,0,0",
+ "equip_audio": "2250",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "100",
@@ -12108,9 +11377,8 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "19",
- "high_alchemy": "28",
"weight": "3",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "12",
"name": "Bronze sq shield",
@@ -12133,9 +11401,8 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "67",
- "high_alchemy": "100",
"weight": "3.6",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "39",
"name": "Iron sq shield",
@@ -12159,9 +11426,8 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "3",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "185",
"name": "Steel sq shield",
@@ -12185,10 +11451,9 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "460",
- "high_alchemy": "691",
"weight": "4",
"absorb": "1,0,2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "511",
"name": "Black sq shield",
@@ -12212,10 +11477,9 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "624",
- "high_alchemy": "936",
"weight": "3.1",
"absorb": "2,0,4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "744",
"name": "Mithril sq shield",
@@ -12238,10 +11502,9 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "4",
"absorb": "3,0,6",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "2136",
"name": "Adamant sq shield",
@@ -12264,10 +11527,9 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "15360",
- "high_alchemy": "23040",
"weight": "3.64",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "22800",
@@ -12291,10 +11553,9 @@
"ge_buy_limit": "10",
"examine": "An ancient and powerful looking Dragon Square shield.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"weight": "3",
"absorb": "5,0,11",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "431900",
@@ -12318,9 +11579,8 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "27",
- "high_alchemy": "40",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "18",
"name": "Bronze kiteshield",
@@ -12343,9 +11603,8 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "95",
- "high_alchemy": "142",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "57",
"name": "Iron kiteshield",
@@ -12369,9 +11628,8 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "354",
"name": "Steel kiteshield",
@@ -12395,10 +11653,9 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "848",
- "high_alchemy": "1272",
"weight": "5.4",
"absorb": "1,0,2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "3311",
"name": "Black kiteshield",
@@ -12421,10 +11678,9 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "884",
- "high_alchemy": "1326",
"weight": "4.5",
"absorb": "2,0,4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "1128",
"name": "Mithril kiteshield",
@@ -12447,10 +11703,9 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5.8",
"absorb": "3,0,6",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "3066",
"name": "Adamant kiteshield",
@@ -12473,10 +11728,9 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "35600",
@@ -12500,11 +11754,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12531,11 +11784,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12555,7 +11807,8 @@
"name": "Bronze dagger",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "1206"
+ "id": "1206",
+ "equip_audio": ""
},
{
"requirements": "{0,5}",
@@ -12563,11 +11816,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12595,11 +11847,10 @@
"ge_buy_limit": "100",
"examine": "A dangerous dagger.",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "0.3",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12627,11 +11878,10 @@
"ge_buy_limit": "100",
"examine": "Short and deadly.",
"durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12659,11 +11909,10 @@
"ge_buy_limit": "100",
"examine": "A powerful dagger.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12693,11 +11942,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "397",
"equipment_slot": "3",
@@ -12726,11 +11974,10 @@
"ge_buy_limit": "100",
"examine": "A vicious black dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12757,11 +12004,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12788,11 +12034,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12820,11 +12065,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12852,11 +12096,10 @@
"ge_buy_limit": "100",
"examine": "A dangerous dagger.",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "0.3",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12884,11 +12127,10 @@
"ge_buy_limit": "100",
"examine": "Short and deadly.",
"durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12916,11 +12158,10 @@
"ge_buy_limit": "100",
"examine": "A powerful dagger.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -12950,11 +12191,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "397",
"equipment_slot": "3",
@@ -12983,11 +12223,10 @@
"ge_buy_limit": "100",
"examine": "A vicious black dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -13027,7 +12266,6 @@
"turn90cw_anim": "1207",
"examine": "A bronze tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "10",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13045,9 +12283,9 @@
"bonuses": "5,5,5,0,0,1,1,0,0,0,0,6,0,0,0",
"shop_price": "26",
"durability": null,
- "high_alchemy": "15",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Bronze spear"
},
@@ -13065,7 +12303,6 @@
"turn90cw_anim": "1207",
"examine": "An iron tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "36",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13082,9 +12319,9 @@
"stand_turn_anim": "1209",
"bonuses": "8,8,8,0,0,1,1,0,0,0,0,10,0,0,0",
"durability": null,
- "high_alchemy": "54",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Iron spear"
},
@@ -13102,7 +12339,6 @@
"turn90cw_anim": "1207",
"examine": "A steel tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "130",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13120,9 +12356,9 @@
"bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0",
"requirements": "{0,5}",
"durability": null,
- "high_alchemy": "195",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Steel spear"
},
@@ -13140,7 +12376,6 @@
"turn90cw_anim": "1207",
"examine": "A mithril tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "338",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13158,9 +12393,9 @@
"bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0",
"requirements": "{0,20}",
"durability": null,
- "high_alchemy": "507",
"weight": "1.8",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Mithril spear"
},
@@ -13178,7 +12413,6 @@
"turn90cw_anim": "1207",
"examine": "An adamant tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "832",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13196,9 +12430,9 @@
"bonuses": "24,24,24,0,0,1,1,0,0,0,0,28,0,0,0",
"requirements": "{0,30}",
"durability": null,
- "high_alchemy": "1248",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Adamant spear"
},
@@ -13216,7 +12450,6 @@
"turn90cw_anim": "1207",
"examine": "A rune tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "8320",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13234,9 +12467,9 @@
"bonuses": "36,36,36,0,0,1,1,0,0,0,0,42,0,0,0",
"requirements": "{0,40}",
"durability": null,
- "high_alchemy": "12480",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Rune spear"
@@ -13256,7 +12489,6 @@
"examine": "A dragon tipped spear.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "24960",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13274,9 +12506,9 @@
"bonuses": "55,55,55,0,0,5,5,5,5,5,0,60,0,0,0",
"requirements": "{0,60}",
"durability": null,
- "high_alchemy": "37440",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Dragon spear"
@@ -13296,7 +12528,6 @@
"turn90cw_anim": "1207",
"examine": "A bronze tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "10",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13313,9 +12544,9 @@
"stand_turn_anim": "1209",
"bonuses": "5,5,5,0,0,1,1,0,0,0,0,6,0,0,0",
"durability": null,
- "high_alchemy": "15",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Bronze spear(p)"
},
@@ -13333,7 +12564,6 @@
"turn90cw_anim": "1207",
"examine": "An iron tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "36",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13350,9 +12580,9 @@
"stand_turn_anim": "1209",
"bonuses": "8,8,8,0,0,1,1,0,0,0,0,10,0,0,0",
"durability": null,
- "high_alchemy": "54",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Iron spear(p)"
},
@@ -13370,7 +12600,6 @@
"turn90cw_anim": "1207",
"examine": "A steel tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "130",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13387,9 +12616,9 @@
"bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0",
"requirements": "{0,5}",
"durability": null,
- "high_alchemy": "195",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Steel spear(p)"
},
@@ -13407,7 +12636,6 @@
"turn90cw_anim": "1207",
"examine": "A mithril tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "338",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13425,9 +12653,9 @@
"bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0",
"requirements": "{0,20}",
"durability": null,
- "high_alchemy": "507",
"weight": "1.8",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Mithril spear(p)"
},
@@ -13445,7 +12673,6 @@
"turn90cw_anim": "1207",
"examine": "An adamant tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "832",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13463,9 +12690,9 @@
"bonuses": "24,24,24,0,0,1,1,0,0,0,0,28,0,0,0",
"requirements": "{0,30}",
"durability": null,
- "high_alchemy": "1248",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Adamant spear(p)"
},
@@ -13483,7 +12710,6 @@
"turn90cw_anim": "1207",
"examine": "A rune tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "8320",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13501,9 +12727,9 @@
"bonuses": "36,36,36,0,0,1,1,0,0,0,0,42,0,0,0",
"requirements": "{0,40}",
"durability": null,
- "high_alchemy": "12480",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Rune spear(p)"
@@ -13523,7 +12749,6 @@
"examine": "A dragon tipped spear.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "24960",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -13541,9 +12766,9 @@
"bonuses": "55,55,55,0,0,5,5,5,5,5,0,60,0,0,0",
"requirements": "{0,60}",
"durability": null,
- "high_alchemy": "37440",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Dragon spear(p)"
@@ -13565,6 +12790,7 @@
"weight": "2.25",
"attack_speed": "5",
"weapon_interface": "4",
+ "equip_audio": "2232",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
@@ -13590,11 +12816,10 @@
"ge_buy_limit": "100",
"examine": "Used for mining.",
"durability": null,
- "low_alchemy": "56",
- "high_alchemy": "84",
"weight": "2.25",
"attack_speed": "5",
"weapon_interface": "4",
+ "equip_audio": "2232",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
@@ -13621,11 +12846,10 @@
"ge_buy_limit": "100",
"examine": "Used for mining.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2.25",
"attack_speed": "5",
"weapon_interface": "4",
+ "equip_audio": "2232",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
@@ -13652,11 +12876,10 @@
"ge_buy_limit": "100",
"examine": "Used for mining.",
"durability": null,
- "low_alchemy": "1280",
- "high_alchemy": "1920",
"weight": "2.7",
"attack_speed": "5",
"weapon_interface": "4",
+ "equip_audio": "2232",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
@@ -13683,11 +12906,10 @@
"ge_buy_limit": "100",
"examine": "Used for mining.",
"durability": null,
- "low_alchemy": "520",
- "high_alchemy": "780",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "4",
+ "equip_audio": "2232",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
@@ -13714,11 +12936,10 @@
"ge_buy_limit": "100",
"examine": "Used for mining.",
"durability": null,
- "low_alchemy": "12800",
- "high_alchemy": "19200",
"weight": "2.2",
"attack_speed": "5",
"weapon_interface": "4",
+ "equip_audio": "2232",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
@@ -13745,7 +12966,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "10",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13762,9 +12982,9 @@
"bonuses": "4,3,-2,0,0,0,2,1,0,0,0,5,0,0,0",
"shop_price": "33",
"durability": null,
- "high_alchemy": "15",
"weight": "1",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"attack_audios": "2500,2500,2517,2500",
"name": "Bronze sword"
@@ -13783,7 +13003,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "36",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13800,9 +13019,9 @@
"bonuses": "6,4,-2,0,0,0,2,1,0,0,0,7,0,0,0",
"shop_price": "91",
"durability": null,
- "high_alchemy": "54",
"weight": "1.8",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"attack_audios": "2500,2500,2517,2500",
"name": "Iron sword"
@@ -13821,7 +13040,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "130",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13839,9 +13057,9 @@
"requirements": "{0,5}",
"shop_price": "412",
"durability": null,
- "high_alchemy": "195",
"weight": "1",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"attack_audios": "2500,2500,2517,2500",
"name": "Steel sword"
@@ -13860,7 +13078,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "249",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13878,9 +13095,9 @@
"requirements": "{0,10}",
"shop_price": "624",
"durability": null,
- "high_alchemy": "374",
"weight": "1",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"attack_audios": "2500,2500,2517,2500",
"name": "Black sword"
@@ -13899,7 +13116,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "338",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13917,9 +13133,9 @@
"requirements": "{0,20}",
"shop_price": "266",
"durability": null,
- "high_alchemy": "507",
"weight": "1.5",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"attack_audios": "2500,2500,2517,2500",
"name": "Mithril sword"
@@ -13938,7 +13154,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "832",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13956,9 +13171,9 @@
"requirements": "{0,30}",
"shop_price": "2080",
"durability": null,
- "high_alchemy": "1248",
"weight": "1",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"attack_audios": "2500,2500,2517,2500",
"name": "Adamant sword"
@@ -13977,7 +13192,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "8320",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -13995,9 +13209,9 @@
"requirements": "{0,40}",
"shop_price": "20800",
"durability": null,
- "high_alchemy": "12480",
"weight": "1.8",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"lendable": "true",
"attack_audios": "2500,2500,2517,2500",
@@ -14017,7 +13231,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "16",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14034,9 +13247,9 @@
"bonuses": "4,5,-2,0,0,0,3,2,0,0,0,7,0,0,0",
"shop_price": "23",
"durability": null,
- "high_alchemy": "24",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,2500,2517,2500",
"name": "Bronze longsword"
@@ -14055,7 +13268,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "56",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14072,9 +13284,9 @@
"bonuses": "6,8,-2,0,0,0,3,2,0,0,0,10,0,0,0",
"shop_price": "177",
"durability": null,
- "high_alchemy": "84",
"weight": "2",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,2500,2517,2500",
"name": "Iron longsword"
@@ -14093,7 +13305,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "200",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14111,9 +13322,9 @@
"requirements": "{0,5}",
"shop_price": "500",
"durability": null,
- "high_alchemy": "300",
"weight": "2",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,2500,2517,2500",
"name": "Steel longsword"
@@ -14132,7 +13343,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "384",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14150,9 +13360,9 @@
"requirements": "{0,10}",
"shop_price": "960",
"durability": null,
- "high_alchemy": "576",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,2500,2517,2500",
"name": "Black longsword"
@@ -14171,7 +13381,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "520",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14189,9 +13398,9 @@
"requirements": "{0,20}",
"shop_price": "1074",
"durability": null,
- "high_alchemy": "780",
"weight": "1.5",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,2500,2517,2500",
"name": "Mithril longsword"
@@ -14210,7 +13419,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "1280",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14228,9 +13436,9 @@
"requirements": "{0,30}",
"shop_price": "3200",
"durability": null,
- "high_alchemy": "1920",
"weight": "2",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,2500,2517,2500",
"name": "Adamant longsword"
@@ -14249,7 +13457,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword",
"walk_anim": "819",
- "low_alchemy": "12800",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14267,9 +13474,9 @@
"requirements": "{0,40}",
"shop_price": "32000",
"durability": null,
- "high_alchemy": "19200",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"lendable": "true",
"attack_audios": "2500,2500,2517,2500",
@@ -14290,7 +13497,6 @@
"examine": "A very powerful sword.",
"walk_anim": "1146",
"has_special": "true",
- "low_alchemy": "40000",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -14308,9 +13514,9 @@
"requirements": "{0,60}",
"shop_price": "100000",
"durability": null,
- "high_alchemy": "60000",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1426",
"lendable": "true",
"attack_audios": "2500,2500,2517,2500",
@@ -14330,7 +13536,6 @@
"turn90cw_anim": "7044",
"examine": "A two-handed sword.",
"walk_anim": "7046",
- "low_alchemy": "32",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14348,9 +13553,9 @@
"bonuses": "-4,9,8,-4,0,0,0,0,0,-1,0,10,0,0,0",
"shop_price": "160",
"durability": null,
- "high_alchemy": "48",
"weight": "3.6",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "Bronze 2h sword"
@@ -14369,7 +13574,6 @@
"turn90cw_anim": "7044",
"examine": "A two handed sword.",
"walk_anim": "7046",
- "low_alchemy": "112",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14387,9 +13591,9 @@
"bonuses": "-4,13,10,-4,0,0,0,0,0,-1,0,14,0,0,0",
"shop_price": "260",
"durability": null,
- "high_alchemy": "168",
"weight": "3.6",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "Iron 2h sword"
@@ -14408,7 +13612,6 @@
"turn90cw_anim": "7044",
"examine": "A two handed sword.",
"walk_anim": "7046",
- "low_alchemy": "400",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14427,9 +13630,9 @@
"requirements": "{0,5}",
"shop_price": "1000",
"durability": null,
- "high_alchemy": "600",
"weight": "3",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "Steel 2h sword"
@@ -14448,7 +13651,6 @@
"turn90cw_anim": "7044",
"examine": "A two-handed sword.",
"walk_anim": "7046",
- "low_alchemy": "768",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14467,9 +13669,9 @@
"requirements": "{0,10}",
"shop_price": "2400",
"durability": null,
- "high_alchemy": "1152",
"weight": "3.6",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "Black 2h sword"
@@ -14488,7 +13690,6 @@
"turn90cw_anim": "7044",
"examine": "A two-handed sword.",
"walk_anim": "7046",
- "low_alchemy": "1040",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14507,9 +13708,9 @@
"requirements": "{0,20}",
"shop_price": "3000",
"durability": null,
- "high_alchemy": "1560",
"weight": "3.1",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "Mithril 2h sword"
@@ -14528,7 +13729,6 @@
"turn90cw_anim": "7044",
"examine": "A two-handed sword.",
"walk_anim": "7046",
- "low_alchemy": "2560",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14547,9 +13747,9 @@
"requirements": "{0,30}",
"shop_price": "6400",
"durability": null,
- "high_alchemy": "3840",
"weight": "4",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "Adamant 2h sword"
@@ -14568,7 +13768,6 @@
"turn90cw_anim": "7044",
"examine": "A two handed sword.",
"walk_anim": "7046",
- "low_alchemy": "25600",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -14587,9 +13786,9 @@
"requirements": "{0,40}",
"shop_price": "40000",
"durability": null,
- "high_alchemy": "38400",
"weight": "3.6",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "2503,0,2504,0",
@@ -14609,7 +13808,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "12",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14626,9 +13824,9 @@
"bonuses": "1,7,-2,0,0,0,1,0,0,0,0,6,0,0,0",
"shop_price": "40",
"durability": null,
- "high_alchemy": "18",
"weight": "1",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "Bronze scimitar"
@@ -14647,7 +13845,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "44",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14664,9 +13861,9 @@
"bonuses": "2,10,-2,0,0,0,1,0,0,0,0,9,0,0,0",
"shop_price": "112",
"durability": null,
- "high_alchemy": "67",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "Iron scimitar"
@@ -14685,7 +13882,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "160",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14703,9 +13899,9 @@
"requirements": "{0,5}",
"shop_price": "400",
"durability": null,
- "high_alchemy": "240",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "Steel scimitar"
@@ -14724,7 +13920,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "307",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14741,9 +13936,9 @@
"bonuses": "4,19,-2,0,0,0,1,0,0,0,0,14,0,0,0",
"requirements": "{0,10}",
"durability": null,
- "high_alchemy": "460",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "Black scimitar"
@@ -14762,7 +13957,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "416",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14780,9 +13974,9 @@
"requirements": "{0,20}",
"shop_price": "1040",
"durability": null,
- "high_alchemy": "624",
"weight": "1.5",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "Mithril scimitar"
@@ -14801,7 +13995,6 @@
"turn90cw_anim": "821",
"examine": "A viciously curved sword",
"walk_anim": "819",
- "low_alchemy": "1024",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14819,9 +14012,9 @@
"requirements": "{0,30}",
"shop_price": "2304",
"durability": null,
- "high_alchemy": "1536",
"weight": "2",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "Adamant scimitar"
@@ -14840,7 +14033,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "10240",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -14857,9 +14049,9 @@
"bonuses": "7,45,-2,0,0,0,1,0,0,0,0,44,0,0,0",
"requirements": "{0,40}",
"durability": null,
- "high_alchemy": "15360",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"lendable": "true",
"attack_audios": "2500,0,2517,0",
@@ -14879,7 +14071,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "89",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -14896,9 +14087,9 @@
"bonuses": "-4,-4,11,-4,0,0,0,0,0,0,0,9,0,0,0",
"shop_price": "224",
"durability": null,
- "high_alchemy": "134",
"weight": "1.8",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"attack_audios": "2504,0,0,0",
"name": "Iron warhammer"
@@ -14917,7 +14108,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "24",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -14934,9 +14124,9 @@
"bonuses": "-4,-4,10,-4,0,0,0,0,0,0,0,8,0,0,0",
"shop_price": "59",
"durability": null,
- "high_alchemy": "36",
"weight": "1",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"attack_audios": "2504,0,0,0",
"name": "Bronze warhammer"
@@ -14955,7 +14145,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "256",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -14973,9 +14162,9 @@
"requirements": "{0,5}",
"shop_price": "832",
"durability": null,
- "high_alchemy": "384",
"weight": "1",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"attack_audios": "2504,0,0,0",
"name": "Steel warhammer"
@@ -14994,7 +14183,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "509",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -15012,8 +14200,8 @@
"requirements": "{0,10}",
"shop_price": "1274",
"durability": null,
- "high_alchemy": "764",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"attack_audios": "2504,0,0,0",
"name": "Black warhammer"
@@ -15032,7 +14220,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "863",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -15050,9 +14237,9 @@
"requirements": "{0,20}",
"shop_price": "2158",
"durability": null,
- "high_alchemy": "1294",
"weight": "1.5",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"attack_audios": "2504,0,0,0",
"name": "Mithril warhammer"
@@ -15071,7 +14258,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "2142",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -15089,9 +14275,9 @@
"requirements": "{0,30}",
"shop_price": "5356",
"durability": null,
- "high_alchemy": "3213",
"weight": "2",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"attack_audios": "2504,0,0,0",
"name": "Adamant warhammer"
@@ -15110,7 +14296,6 @@
"turn90cw_anim": "821",
"examine": "I don't think it's intended for joinery.",
"walk_anim": "819",
- "low_alchemy": "16600",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -15128,9 +14313,9 @@
"requirements": "{0,40}",
"shop_price": "41000",
"durability": null,
- "high_alchemy": "24900",
"weight": "1.8",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1430",
"lendable": "true",
"attack_audios": "2504,0,0,0",
@@ -15150,15 +14335,15 @@
"ge_buy_limit": "100",
"examine": "A woodcutter's axe.",
"durability": null,
- "low_alchemy": "22",
- "high_alchemy": "33",
"weight": "1.3",
"attack_speed": "5",
"weapon_interface": "2",
+ "equip_audio": "2229",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "8",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Iron axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15179,16 +14364,16 @@
"ge_buy_limit": "100",
"examine": "A woodcutter's axe.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1.35",
"attack_speed": "5",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "44",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Bronze axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15210,16 +14395,16 @@
"ge_buy_limit": "100",
"examine": "A woodcutter's axe.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1.3",
"attack_speed": "5",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "36",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Steel axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15241,16 +14426,16 @@
"ge_buy_limit": "100",
"examine": "A powerful axe.",
"durability": null,
- "low_alchemy": "208",
- "high_alchemy": "312",
"weight": "1.1",
"attack_speed": "5",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "141",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Mithril axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15272,16 +14457,16 @@
"ge_buy_limit": "100",
"examine": "A powerful axe.",
"durability": null,
- "low_alchemy": "512",
- "high_alchemy": "768",
"weight": "2",
"attack_speed": "5",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "592",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Adamant axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15302,14 +14487,14 @@
"ge_buy_limit": "100",
"examine": "A powerful axe.",
"durability": null,
- "low_alchemy": "5120",
- "high_alchemy": "7680",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "7495",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Rune axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15330,16 +14515,16 @@
"ge_buy_limit": "100",
"examine": "A sinister looking axe.",
"durability": null,
- "low_alchemy": "153",
- "high_alchemy": "230",
"weight": "2",
"attack_speed": "5",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "335",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Black axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15360,16 +14545,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "109",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "21",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Iron battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15391,16 +14576,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "208",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Steel battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15422,16 +14607,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "499",
- "high_alchemy": "748",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "556",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Black battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15453,16 +14638,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "676",
- "high_alchemy": "1014",
"weight": "2",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "809",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Mithril battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15484,16 +14669,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "1664",
- "high_alchemy": "2496",
"weight": "3",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "2311",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Adamant battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15514,17 +14699,17 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "16640",
- "high_alchemy": "24960",
"weight": "2",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"lendable": "true",
"grand_exchange_price": "24800",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Rune battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15545,16 +14730,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "31",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,401,395",
"grand_exchange_price": "15",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Bronze battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15577,8 +14762,6 @@
"examine": "A vicious looking axe.",
"has_special": "true",
"durability": null,
- "low_alchemy": "80000",
- "high_alchemy": "120000",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
@@ -15588,6 +14771,7 @@
"attack_anims": "395,395,401,395",
"lendable": "true",
"grand_exchange_price": "123200",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Dragon battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -15611,7 +14795,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "6",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15628,9 +14811,9 @@
"bonuses": "0,-1,7,4,0,2,3,1,4,0,0,3,0,0,0",
"shop_price": "15",
"durability": null,
- "high_alchemy": "9",
"weight": "2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff"
@@ -15649,7 +14832,6 @@
"turn90cw_anim": "1207",
"examine": "A Magical staff.",
"walk_anim": "1205",
- "low_alchemy": "600",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15666,10 +14848,9 @@
"bonuses": "0,-1,7,10,0,2,3,1,10,0,0,3,0,0,0",
"shop_price": "1500",
"durability": null,
- "high_alchemy": "900",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of air"
@@ -15688,7 +14869,6 @@
"turn90cw_anim": "1207",
"examine": "A Magical staff.",
"walk_anim": "1205",
- "low_alchemy": "600",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15705,10 +14885,9 @@
"bonuses": "0,-1,7,10,0,2,3,1,10,0,0,3,0,0,0",
"shop_price": "1500",
"durability": null,
- "high_alchemy": "900",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of water"
@@ -15727,7 +14906,6 @@
"turn90cw_anim": "1207",
"examine": "A Magical staff.",
"walk_anim": "1205",
- "low_alchemy": "600",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15744,10 +14922,9 @@
"bonuses": "1,-1,9,10,0,2,3,1,10,0,0,5,0,0,0",
"shop_price": "1500",
"durability": null,
- "high_alchemy": "900",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of earth"
@@ -15765,8 +14942,7 @@
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A Magical staff.",
- "walk_anim": "1146",
- "low_alchemy": "600",
+ "walk_anim": "1205",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15774,7 +14950,7 @@
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "1330",
- "stand_anim": "809",
+ "stand_anim": "813",
"tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
@@ -15783,11 +14959,10 @@
"bonuses": "3,-1,9,10,0,2,3,1,10,0,0,6,0,0,0",
"shop_price": "1500",
"durability": null,
- "high_alchemy": "900",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
- "render_anim": "1426",
+ "equip_audio": "2247",
+ "render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of fire"
},
@@ -15805,7 +14980,6 @@
"turn90cw_anim": "1207",
"examine": "A Magical staff.",
"walk_anim": "1205",
- "low_alchemy": "80",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15822,9 +14996,9 @@
"bonuses": "2,-1,10,10,0,2,3,1,10,0,0,7,0,0,0",
"shop_price": "200",
"durability": null,
- "high_alchemy": "120",
"weight": "2.2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Magic staff"
@@ -15843,7 +15017,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "2800",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15861,9 +15034,9 @@
"requirements": "{0,30}-{6,30}",
"shop_price": "7000",
"durability": null,
- "high_alchemy": "4200",
"weight": "2.25",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Battlestaff"
@@ -15882,7 +15055,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "6200",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15900,10 +15072,9 @@
"requirements": "{0,30}-{6,30}",
"shop_price": "19600",
"durability": null,
- "high_alchemy": "9300",
"weight": "2.25",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Fire battlestaff"
@@ -15922,7 +15093,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "6200",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15939,10 +15109,9 @@
"bonuses": "7,-1,28,12,0,2,3,1,12,0,0,35,0,0,0",
"requirements": "{0,30}-{6,30}",
"durability": null,
- "high_alchemy": "9300",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Water battlestaff"
@@ -15961,7 +15130,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "6200",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -15979,10 +15147,9 @@
"requirements": "{0,30}-{6,30}",
"shop_price": "7000",
"durability": null,
- "high_alchemy": "9300",
"weight": "2.25",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Air battlestaff"
@@ -16001,7 +15168,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "6200",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -16019,10 +15185,9 @@
"requirements": "{0,30}-{6,30}",
"shop_price": "1500",
"durability": null,
- "high_alchemy": "9300",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Earth battlestaff"
@@ -16041,7 +15206,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "17000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -16058,9 +15222,9 @@
"bonuses": "10,-1,40,14,0,2,3,1,14,0,0,50,0,0,0",
"requirements": "{0,40}-{6,40}",
"durability": null,
- "high_alchemy": "25500",
"weight": "2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic fire staff"
@@ -16079,7 +15243,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "17000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -16096,8 +15259,8 @@
"bonuses": "10,-1,40,14,0,2,3,1,14,0,0,50,0,0,0",
"requirements": "{0,40}-{6,40}",
"durability": null,
- "high_alchemy": "25500",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic water staff"
@@ -16116,7 +15279,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "17000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -16133,9 +15295,9 @@
"bonuses": "10,-1,40,14,0,2,3,1,14,0,0,50,0,0,0",
"requirements": "{0,40}-{6,40}",
"durability": null,
- "high_alchemy": "25500",
"weight": "2.2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic air staff"
@@ -16154,7 +15316,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "17000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -16172,9 +15333,9 @@
"requirements": "{0,40}-{6,40}",
"shop_price": "40000",
"durability": null,
- "high_alchemy": "25500",
"weight": "2.2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic earth staff"
@@ -16193,13 +15354,12 @@
"examine": "An ancient staff, formerly the property of Iban.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "17000",
- "high_alchemy": "25500",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -16218,8 +15378,6 @@
"attack_audios": "2555,0,0,0",
"durability": null,
"name": "Iban's staff",
- "low_alchemy": "17000",
- "high_alchemy": "25500",
"weight": "2.2",
"archery_ticket_price": "0",
"attack_speed": "5",
@@ -16287,11 +15445,13 @@
"two_handed": "true",
"weapon_interface": "22",
"turn180_anim": "820",
+ "equip_audio": "2247",
"render_anim": "1383",
"defence_anim": "383",
"equipment_slot": "3",
- "attack_anims": "382,382,382,382",
+ "attack_anims": "440,440,438,382",
"stand_anim": "847",
+ "attack_audios": "2524,2524,2522,2524",
"name": "Scythe",
"run_anim": "824",
"archery_ticket_price": "0",
@@ -16304,15 +15464,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "25",
- "high_alchemy": "37",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"grand_exchange_price": "7",
+ "attack_audios": "2508,2508,25092508",
"name": "Iron mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16333,15 +15493,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "7",
- "high_alchemy": "10",
"weight": "1.79",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"grand_exchange_price": "12",
+ "attack_audios": "2508,2508,25092508",
"name": "Bronze mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16363,15 +15523,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "90",
- "high_alchemy": "135",
"weight": "1.79",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"grand_exchange_price": "31",
+ "attack_audios": "2508,2508,25092508",
"name": "Steel mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16392,15 +15552,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "172",
- "high_alchemy": "258",
"weight": "1.79",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"grand_exchange_price": "954",
+ "attack_audios": "2508,2508,25092508",
"name": "Black mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16422,15 +15582,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "234",
- "high_alchemy": "351",
"weight": "1.5",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"grand_exchange_price": "157",
+ "attack_audios": "2508,2508,25092508",
"name": "Mithril mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16452,15 +15612,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "576",
- "high_alchemy": "864",
"weight": "2",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"grand_exchange_price": "673",
+ "attack_audios": "2508,2508,25092508",
"name": "Adamant mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16482,16 +15642,16 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "5760",
- "high_alchemy": "8640",
"weight": "1.79",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"lendable": "true",
"grand_exchange_price": "8380",
+ "attack_audios": "2508,2508,25092508",
"name": "Rune mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16514,16 +15674,16 @@
"examine": "A spiky mace.",
"has_special": "true",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "403",
"equipment_slot": "3",
"attack_anims": "401,401,400,401",
"lendable": "true",
"grand_exchange_price": "29300",
+ "attack_audios": "2508,2508,25092508",
"name": "Dragon mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -16549,8 +15709,6 @@
"durability": null,
"name": "Rune essence",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1436"
},
@@ -16571,8 +15729,6 @@
"durability": null,
"name": "Air talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "1",
"archery_ticket_price": "0",
"id": "1438"
@@ -16595,8 +15751,6 @@
"durability": null,
"name": "Earth talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1440"
},
@@ -16618,8 +15772,6 @@
"durability": null,
"name": "Fire talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1442"
},
@@ -16641,8 +15793,6 @@
"durability": null,
"name": "Water talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1444"
},
@@ -16664,8 +15814,6 @@
"durability": null,
"name": "Body talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1446"
},
@@ -16687,8 +15835,6 @@
"durability": null,
"name": "Mind talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1448"
},
@@ -16709,8 +15855,6 @@
"durability": null,
"name": "Blood talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1450"
},
@@ -16732,8 +15876,6 @@
"durability": null,
"name": "Chaos talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1452"
},
@@ -16755,8 +15897,6 @@
"durability": null,
"name": "Cosmic talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1454"
},
@@ -16777,8 +15917,6 @@
"durability": null,
"name": "Death talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1456"
},
@@ -16800,8 +15938,6 @@
"durability": null,
"name": "Law talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1458"
},
@@ -16830,8 +15966,6 @@
"durability": null,
"name": "Nature talisman",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1462"
},
@@ -16851,8 +15985,6 @@
"durability": null,
"name": "Archery ticket",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "1464"
},
@@ -16862,8 +15994,6 @@
"durability": null,
"name": "Weapon poison",
"tradeable": "true",
- "low_alchemy": "57",
- "high_alchemy": "86",
"archery_ticket_price": "0",
"id": "1465"
},
@@ -16895,8 +16025,6 @@
"durability": null,
"name": "Red bead",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1470"
},
@@ -16916,8 +16044,6 @@
"durability": null,
"name": "Yellow bead",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1472"
},
@@ -16937,8 +16063,6 @@
"durability": null,
"name": "Black bead",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1474"
},
@@ -16958,8 +16082,6 @@
"durability": null,
"name": "White bead",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1476"
},
@@ -16976,16 +16098,14 @@
"shop_price": "1000",
"ge_buy_limit": "100",
"examine": "Wizard Mizgog sells these aim-enhancing amulets.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "equipment_slot": "2",
"grand_exchange_price": "2870",
+ "durability": null,
"name": "Amulet of accuracy",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1478",
- "bonuses": "4,4,4,4,4,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "4,4,4,4,4,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "100",
@@ -17000,8 +16120,6 @@
"examine": "A magical sphere that glimmers within.",
"durability": null,
"name": "Orb of light",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "5",
"archery_ticket_price": "0",
"id": "1481"
@@ -17010,8 +16128,6 @@
"examine": "A magical sphere that glimmers within.",
"durability": null,
"name": "Orb of light",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "5",
"archery_ticket_price": "0",
"id": "1482"
@@ -17020,8 +16136,6 @@
"examine": "A magical sphere that glimmers within.",
"durability": null,
"name": "Orb of light",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "5",
"archery_ticket_price": "0",
"id": "1483"
@@ -17030,8 +16144,6 @@
"examine": "A magical sphere that glimmers within.",
"durability": null,
"name": "Orb of light",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "5",
"archery_ticket_price": "0",
"id": "1484"
@@ -17040,8 +16152,6 @@
"examine": "A damp, wet cloth.",
"durability": null,
"name": "Damp cloth",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1485"
},
@@ -17049,8 +16159,6 @@
"examine": "A broken piece of railing.",
"durability": null,
"name": "Piece of railing",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "2",
"archery_ticket_price": "0",
"id": "1486"
@@ -17061,8 +16169,6 @@
"durability": null,
"name": "Unicorn horn",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1",
"archery_ticket_price": "0",
"id": "1487"
@@ -17071,8 +16177,6 @@
"examine": "A coat of arms of the Ardougne Paladins.",
"durability": null,
"name": "Paladin's badge",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1488"
},
@@ -17080,8 +16184,6 @@
"examine": "A coat of arms of the Ardougne Paladins.",
"durability": null,
"name": "Paladin's badge",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1489"
},
@@ -17089,8 +16191,6 @@
"examine": "A coat of arms of the Ardougne Paladins.",
"durability": null,
"name": "Paladin's badge",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1490"
},
@@ -17130,8 +16230,6 @@
"examine": "Strong dwarvish gloves.",
"durability": null,
"name": "Klank's gauntlets",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "1495",
@@ -17174,7 +16272,8 @@
"durability": null,
"name": "Iban's shadow",
"archery_ticket_price": "0",
- "id": "1500"
+ "id": "1500",
+ "equip_audio": ""
},
{
"examine": "Smells stronger than most spirits.",
@@ -17195,8 +16294,6 @@
"examine": "A search warrant for a house in West Ardougne.",
"durability": null,
"name": "Warrant",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1503"
},
@@ -17204,7 +16301,6 @@
"examine": "It doesn't look very tasty.",
"durability": null,
"name": "Hangover cure",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "1504"
@@ -17213,6 +16309,7 @@
"examine": "Maybe I should read this...",
"durability": null,
"name": "A magic scroll",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "1505"
},
@@ -17221,7 +16318,6 @@
"examine": "Stops me from breathing nasty stuff!",
"durability": null,
"name": "Gas mask",
- "high_alchemy": "1",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "1506",
@@ -17229,7 +16325,7 @@
"equipment_slot": "0"
},
{
- "examine": "Quite a small key (Plague City).",
+ "examine": "Quite a small key.",
"durability": null,
"name": "A small key",
"archery_ticket_price": "0",
@@ -17242,6 +16338,13 @@
"archery_ticket_price": "0",
"id": "1508"
},
+ {
+ "examine": "Turnip growing for beginners.",
+ "durability": null,
+ "name": "Book",
+ "archery_ticket_price": "0",
+ "id": "1509"
+ },
{
"examine": "A picture of a lady called Elena.",
"durability": null,
@@ -17258,8 +16361,6 @@
"durability": null,
"name": "Logs",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "2",
"archery_ticket_price": "0",
"id": "1511"
@@ -17280,8 +16381,6 @@
"durability": null,
"name": "Magic logs",
"tradeable": "true",
- "low_alchemy": "128",
- "high_alchemy": "192",
"weight": "2",
"archery_ticket_price": "0",
"id": "1513"
@@ -17302,8 +16401,6 @@
"durability": null,
"name": "Yew logs",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"weight": "2",
"archery_ticket_price": "0",
"id": "1515"
@@ -17324,8 +16421,6 @@
"durability": null,
"name": "Maple logs",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "2",
"archery_ticket_price": "0",
"id": "1517"
@@ -17346,8 +16441,6 @@
"durability": null,
"name": "Willow logs",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "2",
"archery_ticket_price": "0",
"id": "1519"
@@ -17368,8 +16461,6 @@
"durability": null,
"name": "Oak logs",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "2",
"archery_ticket_price": "0",
"id": "1521"
@@ -17391,8 +16482,6 @@
"durability": null,
"name": "Lockpick",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "1523"
},
@@ -17416,8 +16505,6 @@
"examine": "A fresh herb.",
"durability": null,
"name": "Clean snake weed",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1526"
},
@@ -17433,8 +16520,6 @@
"examine": "A fresh herb.",
"durability": null,
"name": "Clean ardrigal",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "1528"
@@ -17450,8 +16535,6 @@
"examine": "A fresh herb.",
"durability": null,
"name": "Clean sito foil",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1530"
},
@@ -17466,8 +16549,6 @@
"examine": "A fresh herb.",
"durability": null,
"name": "Clean volencia moss",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1532"
},
@@ -17482,8 +16563,6 @@
"examine": "A fresh herb.",
"durability": null,
"name": "Clean rogue's purse",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1534"
},
@@ -17523,25 +16602,21 @@
"durability": null,
"name": "Steel nails",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "31",
"archery_ticket_price": "0",
"id": "1539"
},
{
"ge_buy_limit": "100",
"examine": "This provides partial protection from dragon-breath attacks.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "5.4",
- "equipment_slot": "5",
"grand_exchange_price": "637",
+ "durability": null,
"name": "Anti-dragon shield",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "1540",
- "bonuses": "0,0,0,0,0,7,9,8,2,8,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,7,9,8,2,8,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "100",
@@ -17578,8 +16653,6 @@
"durability": null,
"name": "Garlic",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1550"
},
@@ -17596,9 +16669,7 @@
"examine": "Sardine flavoured with doogle leaves.",
"durability": null,
"name": "Doogle sardine",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "1552"
@@ -17733,7 +16804,6 @@
"examine": "A tasty herb good for seasoning.",
"durability": null,
"name": "Doogle leaves",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1573"
},
@@ -17741,8 +16811,6 @@
"examine": "For feline training expertise.",
"durability": null,
"name": "Cat training medal",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
"id": "1575",
"equipment_slot": "2"
@@ -17752,8 +16820,6 @@
"durability": null,
"name": "Pete's candlestick",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1577"
},
@@ -17768,7 +16834,6 @@
"examine": "This denotes a Master Thief.",
"durability": null,
"name": "Thieves' armband",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1579"
},
@@ -17794,8 +16859,6 @@
"examine": "Made from the finest snail slime.",
"durability": null,
"name": "Blamish oil",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1582"
},
@@ -17807,7 +16870,7 @@
"id": "1583"
},
{
- "examine": "Apparently my name is Hartigan",
+ "examine": "Apparently my name is Hartigen.",
"durability": null,
"name": "Id papers",
"tradeable": "false",
@@ -17819,8 +16882,6 @@
"examine": "Useful for catching lava eels.",
"durability": null,
"name": "Oily fishing rod",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1",
"archery_ticket_price": "0",
"id": "1585"
@@ -17871,8 +16932,6 @@
"durability": null,
"name": "Ring mould",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1592"
@@ -17890,8 +16949,6 @@
"examine": "Used to make unholy symbols.",
"durability": null,
"name": "Unholy mould",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "1594"
},
@@ -17903,8 +16960,6 @@
"durability": null,
"name": "Amulet mould",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1595"
@@ -17926,8 +16981,6 @@
"durability": null,
"name": "Necklace mould",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1597"
@@ -17949,8 +17002,6 @@
"durability": null,
"name": "Holy mould",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1599"
@@ -17971,8 +17022,6 @@
"durability": null,
"name": "Diamond",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"archery_ticket_price": "0",
"id": "1601"
},
@@ -17993,8 +17042,6 @@
"durability": null,
"name": "Ruby",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "1603"
},
@@ -18015,8 +17062,6 @@
"durability": null,
"name": "Emerald",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "1605"
},
@@ -18037,8 +17082,6 @@
"durability": null,
"name": "Sapphire",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "1607"
},
@@ -18053,13 +17096,12 @@
},
{
"ge_buy_limit": "1000",
+ "shop_price": "100",
"examine": "A semi precious stone.",
"grand_exchange_price": "44",
"durability": null,
"name": "Opal",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "1609"
},
@@ -18074,9 +17116,12 @@
},
{
"ge_buy_limit": "1000",
+ "shop_price": "150",
"grand_exchange_price": "84",
+ "examine": "A semi precious stone.",
"durability": null,
"name": "Jade",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "1611"
},
@@ -18091,13 +17136,12 @@
},
{
"ge_buy_limit": "1000",
+ "shop_price": "200",
"examine": "A semi precious stone.",
"grand_exchange_price": "120",
"durability": null,
"name": "Red topaz",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "1613"
@@ -18119,8 +17163,6 @@
"durability": null,
"name": "Dragonstone",
"tradeable": "true",
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "1615"
@@ -18142,8 +17184,6 @@
"durability": null,
"name": "Uncut diamond",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "1617"
},
@@ -18164,8 +17204,6 @@
"durability": null,
"name": "Uncut ruby",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "1619"
},
@@ -18187,8 +17225,6 @@
"durability": null,
"name": "Uncut emerald",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "1621"
},
@@ -18210,8 +17246,6 @@
"durability": null,
"name": "Uncut sapphire",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "1623"
},
@@ -18231,8 +17265,6 @@
"durability": null,
"name": "Uncut opal",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "1625"
},
@@ -18252,8 +17284,6 @@
"durability": null,
"name": "Uncut jade",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "1627"
},
@@ -18273,8 +17303,6 @@
"durability": null,
"name": "Uncut red topaz",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "1629"
@@ -18292,14 +17320,12 @@
"shop_price": "75000",
"ge_buy_limit": "100",
"examine": "An uncut dragonstone.",
+ "grand_exchange_price": "31700",
"tokkul_price": "1500",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
- "weight": "0.3",
- "grand_exchange_price": "31700",
"name": "Uncut dragonstone",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "1631"
},
@@ -18334,8 +17360,6 @@
"durability": null,
"name": "Gold ring",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"destroy": "false",
"archery_ticket_price": "0",
"id": "1635",
@@ -18357,8 +17381,6 @@
"durability": null,
"name": "Sapphire ring",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "1637",
"equipment_slot": "12"
@@ -18379,8 +17401,6 @@
"durability": null,
"name": "Emerald ring",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "1639",
"equipment_slot": "12"
@@ -18402,8 +17422,6 @@
"durability": null,
"name": "Ruby ring",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "1641",
"equipment_slot": "12"
@@ -18425,8 +17443,6 @@
"durability": null,
"name": "Diamond ring",
"tradeable": "true",
- "low_alchemy": "1410",
- "high_alchemy": "2115",
"archery_ticket_price": "0",
"id": "1643",
"equipment_slot": "12"
@@ -18448,8 +17464,6 @@
"durability": null,
"name": "Dragonstone ring",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1645",
"equipment_slot": "12"
@@ -18469,8 +17483,6 @@
"durability": null,
"name": "Sapphire ring",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "1649"
},
@@ -18480,8 +17492,6 @@
"durability": null,
"name": "Emerald ring",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "1650"
},
@@ -18492,8 +17502,6 @@
"durability": null,
"name": "Ruby ring",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "1651"
},
@@ -18504,8 +17512,6 @@
"durability": null,
"name": "Diamond ring",
"tradeable": "true",
- "low_alchemy": "1410",
- "high_alchemy": "2115",
"archery_ticket_price": "0",
"id": "1652"
},
@@ -18516,8 +17522,6 @@
"durability": null,
"name": "Dragonstone ring",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1653"
},
@@ -18529,8 +17533,6 @@
"durability": null,
"name": "Gold necklace",
"tradeable": "true",
- "low_alchemy": "180",
- "high_alchemy": "270",
"archery_ticket_price": "0",
"id": "1654",
"equipment_slot": "2"
@@ -18552,8 +17554,6 @@
"durability": null,
"name": "Sapphire necklace",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "1656",
"equipment_slot": "2"
@@ -18575,8 +17575,6 @@
"durability": null,
"name": "Emerald necklace",
"tradeable": "true",
- "low_alchemy": "570",
- "high_alchemy": "855",
"archery_ticket_price": "0",
"id": "1658",
"equipment_slot": "2"
@@ -18598,8 +17596,6 @@
"durability": null,
"name": "Ruby necklace",
"tradeable": "true",
- "low_alchemy": "870",
- "high_alchemy": "1305",
"archery_ticket_price": "0",
"id": "1660",
"equipment_slot": "2"
@@ -18621,8 +17617,6 @@
"durability": null,
"name": "Diamond necklace",
"tradeable": "true",
- "low_alchemy": "1470",
- "high_alchemy": "2205",
"archery_ticket_price": "0",
"id": "1662",
"equipment_slot": "2"
@@ -18643,8 +17637,6 @@
"durability": null,
"name": "Dragon necklace",
"tradeable": "true",
- "low_alchemy": "7350",
- "high_alchemy": "11025",
"archery_ticket_price": "0",
"id": "1664",
"equipment_slot": "2"
@@ -18665,8 +17657,6 @@
"durability": null,
"name": "Sapphire necklace",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "1668"
},
@@ -18677,8 +17667,6 @@
"durability": null,
"name": "Emerald necklace",
"tradeable": "true",
- "low_alchemy": "570",
- "high_alchemy": "855",
"archery_ticket_price": "0",
"id": "1669"
},
@@ -18689,8 +17677,6 @@
"durability": null,
"name": "Ruby necklace",
"tradeable": "true",
- "low_alchemy": "870",
- "high_alchemy": "1305",
"archery_ticket_price": "0",
"id": "1670"
},
@@ -18701,8 +17687,6 @@
"durability": null,
"name": "Diamond necklace",
"tradeable": "true",
- "low_alchemy": "1470",
- "high_alchemy": "2205",
"archery_ticket_price": "0",
"id": "1671"
},
@@ -18712,8 +17696,6 @@
"durability": null,
"name": "Dragon necklace",
"tradeable": "true",
- "low_alchemy": "7350",
- "high_alchemy": "11025",
"archery_ticket_price": "0",
"id": "1672"
},
@@ -18725,8 +17707,6 @@
"durability": null,
"name": "Gold amulet",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
"id": "1673"
},
@@ -18747,8 +17727,6 @@
"durability": null,
"name": "Sapphire amulet",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "1675"
},
@@ -18769,8 +17747,6 @@
"durability": null,
"name": "Emerald amulet",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "1677"
},
@@ -18791,8 +17767,6 @@
"durability": null,
"name": "Ruby amulet",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"destroy": "true",
"archery_ticket_price": "0",
"id": "1679"
@@ -18814,8 +17788,6 @@
"durability": null,
"name": "Diamond amulet",
"tradeable": "true",
- "low_alchemy": "1410",
- "high_alchemy": "2115",
"archery_ticket_price": "0",
"id": "1681"
},
@@ -18835,8 +17807,6 @@
"durability": null,
"name": "Dragonstone ammy",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1683"
},
@@ -18856,8 +17826,6 @@
"durability": null,
"name": "Sapphire amulet",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "1687"
},
@@ -18868,8 +17836,6 @@
"durability": null,
"name": "Emerald amulet",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "1688"
},
@@ -18880,8 +17846,6 @@
"durability": null,
"name": "Ruby amulet",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"destroy": "true",
"archery_ticket_price": "0",
"id": "1689"
@@ -18893,8 +17857,6 @@
"durability": null,
"name": "Diamond amulet",
"tradeable": "true",
- "low_alchemy": "1410",
- "high_alchemy": "2115",
"archery_ticket_price": "0",
"id": "1690"
},
@@ -18904,8 +17866,6 @@
"durability": null,
"name": "Dragonstone ammy",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1691"
},
@@ -18917,8 +17877,6 @@
"durability": null,
"name": "Gold amulet",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
"id": "1692",
"equipment_slot": "2"
@@ -18940,8 +17898,6 @@
"durability": null,
"name": "Sapphire amulet",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "1694",
"equipment_slot": "2"
@@ -18963,8 +17919,6 @@
"durability": null,
"name": "Emerald amulet",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "1696",
"equipment_slot": "2"
@@ -18982,16 +17936,14 @@
"shop_price": "2025",
"ge_buy_limit": "5000",
"examine": "I wonder if I can get this enchanted.",
- "durability": null,
- "low_alchemy": "810",
- "high_alchemy": "1215",
- "destroy": "true",
- "equipment_slot": "2",
"grand_exchange_price": "1115",
+ "durability": null,
"name": "Ruby amulet",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
- "id": "1698"
+ "id": "1698",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "5000",
@@ -19010,8 +17962,6 @@
"durability": null,
"name": "Diamond amulet",
"tradeable": "true",
- "low_alchemy": "1410",
- "high_alchemy": "2115",
"archery_ticket_price": "0",
"id": "1700",
"equipment_slot": "2"
@@ -19032,8 +17982,6 @@
"durability": null,
"name": "Dragonstone ammy",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1702",
"equipment_slot": "2"
@@ -19054,8 +18002,6 @@
"durability": null,
"name": "Amulet of glory",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1704",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -19077,8 +18023,6 @@
"durability": null,
"name": "Amulet of glory(1)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1706",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -19098,8 +18042,6 @@
"durability": null,
"name": "Amulet of glory(2)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1708",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -19119,8 +18061,6 @@
"durability": null,
"name": "Amulet of glory(3)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1710",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -19141,8 +18081,6 @@
"durability": null,
"name": "Amulet of glory(4)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "1712",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -19166,8 +18104,6 @@
"durability": null,
"name": "Unstrung symbol",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "1714"
},
@@ -19188,8 +18124,6 @@
"durability": null,
"name": "Unblessed symbol",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "1716",
"equipment_slot": "2"
@@ -19207,16 +18141,14 @@
"shop_price": "300",
"ge_buy_limit": "5000",
"examine": "A blessed holy symbol of Saradomin.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "2",
"grand_exchange_price": "88",
+ "durability": null,
"name": "Holy symbol",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1718",
- "bonuses": "0,0,0,0,0,2,2,2,2,2,3,0,8,0,0"
+ "bonuses": "0,0,0,0,0,2,2,2,2,2,3,0,8,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "5000",
@@ -19234,8 +18166,6 @@
"durability": null,
"name": "Unstrung emblem",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "1720"
},
@@ -19256,8 +18186,6 @@
"durability": null,
"name": "Unpowered symbol",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "1722",
"equipment_slot": "2"
@@ -19275,16 +18203,14 @@
"shop_price": "135",
"ge_buy_limit": "5000",
"examine": "An unholy symbol of Zamorak.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "equipment_slot": "2",
"grand_exchange_price": "57",
+ "durability": null,
"name": "Unholy symbol",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1724",
- "bonuses": "2,2,2,2,2,0,0,0,0,0,0,0,8,0,0"
+ "bonuses": "2,2,2,2,2,0,0,0,0,0,0,0,8,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "5000",
@@ -19293,8 +18219,6 @@
"durability": null,
"name": "Amulet of strength",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "1725",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,10,0,0,0",
@@ -19313,16 +18237,14 @@
"shop_price": "900",
"ge_buy_limit": "5000",
"examine": "An enchanted sapphire amulet of magic.",
- "durability": null,
- "low_alchemy": "360",
- "high_alchemy": "540",
- "equipment_slot": "2",
"grand_exchange_price": "519",
+ "durability": null,
"name": "Amulet of magic",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1727",
- "bonuses": "0,0,0,10,0,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,10,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "5000",
@@ -19337,16 +18259,14 @@
"shop_price": "1275",
"ge_buy_limit": "5000",
"examine": "An enchanted emerald amulet of protection.",
- "durability": null,
- "low_alchemy": "510",
- "high_alchemy": "765",
- "equipment_slot": "2",
"grand_exchange_price": "721",
+ "durability": null,
"name": "Amulet of defence",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1729",
- "bonuses": "0,0,0,0,0,7,7,7,7,7,7,0,0,0,0"
+ "bonuses": "0,0,0,0,0,7,7,7,7,7,7,0,0,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "5000",
@@ -19361,16 +18281,14 @@
"shop_price": "3525",
"ge_buy_limit": "5000",
"examine": "An enchanted diamond amulet of power.",
- "durability": null,
- "low_alchemy": "1410",
- "high_alchemy": "2115",
- "equipment_slot": "2",
"grand_exchange_price": "2573",
+ "durability": null,
"name": "Amulet of power",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "1731",
- "bonuses": "6,6,6,6,6,6,6,6,6,6,6,6,1,0,0"
+ "bonuses": "6,6,6,6,6,6,6,6,6,6,6,6,1,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "5000",
@@ -19400,8 +18318,6 @@
"durability": null,
"name": "Thread",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1734"
},
@@ -19513,8 +18429,6 @@
"durability": null,
"name": "Green d-leather",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "1745"
@@ -19535,8 +18449,6 @@
"durability": null,
"name": "Black dragonhide",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "1747"
@@ -19557,8 +18469,6 @@
"durability": null,
"name": "Red dragonhide",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "1749"
@@ -19579,8 +18489,6 @@
"durability": null,
"name": "Blue dragonhide",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "1751"
@@ -19601,8 +18509,6 @@
"durability": null,
"name": "Green dragonhide",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "1753"
@@ -19624,8 +18530,6 @@
"durability": null,
"name": "Chisel",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1755"
@@ -19647,7 +18551,6 @@
"durability": null,
"name": "Brown apron",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.45",
"archery_ticket_price": "0",
"id": "1757",
@@ -19669,8 +18572,6 @@
"durability": null,
"name": "Ball of wool",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1759"
},
@@ -19690,7 +18591,6 @@
"durability": null,
"name": "Soft clay",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "1761"
@@ -19712,8 +18612,6 @@
"durability": null,
"name": "Red dye",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1763"
},
@@ -19734,8 +18632,6 @@
"durability": null,
"name": "Yellow dye",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1765"
},
@@ -19756,8 +18652,6 @@
"durability": null,
"name": "Blue dye",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "1",
"archery_ticket_price": "0",
"id": "1767"
@@ -19779,8 +18673,6 @@
"durability": null,
"name": "Orange dye",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1769"
@@ -19802,8 +18694,6 @@
"durability": null,
"name": "Green dye",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1771"
},
@@ -19824,8 +18714,6 @@
"durability": null,
"name": "Purple dye",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1773"
},
@@ -19845,8 +18733,6 @@
"durability": null,
"name": "Molten glass",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "1775"
@@ -19867,8 +18753,6 @@
"durability": null,
"name": "Bow string",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1777"
},
@@ -19889,8 +18773,6 @@
"durability": null,
"name": "Flax",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1779"
@@ -19911,7 +18793,6 @@
"durability": null,
"name": "Soda ash",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.09",
"archery_ticket_price": "0",
"id": "1781"
@@ -19932,7 +18813,6 @@
"durability": null,
"name": "Bucket of sand",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "1783"
@@ -19954,8 +18834,6 @@
"durability": null,
"name": "Glassblowing pipe",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "1785"
@@ -19995,8 +18873,6 @@
"durability": null,
"name": "Unfired pie dish",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1789"
},
@@ -20017,7 +18893,6 @@
"durability": null,
"name": "Unfired bowl",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1791"
},
@@ -20039,7 +18914,8 @@
"name": "Woad leaf",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "1793"
+ "id": "1793",
+ "equip_audio": ""
},
{
"ge_buy_limit": "100",
@@ -20048,8 +18924,6 @@
"durability": null,
"name": "Bronze wire",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "1794"
},
@@ -20311,8 +19185,6 @@
"durability": null,
"name": "Waterskin(4)",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1823"
@@ -20333,8 +19205,6 @@
"durability": null,
"name": "Waterskin(3)",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1825"
@@ -20353,8 +19223,6 @@
"durability": null,
"name": "Waterskin(2)",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1827"
@@ -20373,8 +19241,6 @@
"durability": null,
"name": "Waterskin(1)",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1829"
@@ -20394,8 +19260,6 @@
"durability": null,
"name": "Waterskin(0)",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1831"
@@ -20410,20 +19274,18 @@
"id": "1832"
},
{
+ "remove_sleeves": "true",
"shop_price": "40",
"ge_buy_limit": "100",
"examine": "A cool, light desert shirt.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "weight": "0.5",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "93",
+ "durability": null,
"name": "Desert shirt",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
- "id": "1833"
+ "id": "1833",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -20438,16 +19300,14 @@
"shop_price": "40",
"ge_buy_limit": "100",
"examine": "A cool, light desert robe.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "74",
+ "durability": null,
"name": "Desert robe",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
- "id": "1835"
+ "id": "1835",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -20462,16 +19322,14 @@
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "Comfortable desert shoes.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "10",
"grand_exchange_price": "257",
+ "durability": null,
"name": "Desert boots",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
- "id": "1837"
+ "id": "1837",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -20526,8 +19384,6 @@
"examine": "A filthy, smelly, flea infested shirt.",
"durability": null,
"name": "Slave shirt",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "1844",
@@ -20537,8 +19393,6 @@
"examine": "A filthy, smelly, flea infested robe.",
"durability": null,
"name": "Slave robe",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "1845",
@@ -20557,8 +19411,6 @@
"examine": "A piece of paper with barely legible writing - looks like a recipe!",
"durability": null,
"name": "Scrumpled paper",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1847"
},
@@ -20567,7 +19419,6 @@
"examine": "Very important information.",
"durability": null,
"name": "Shantay disclaimer",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1848"
},
@@ -20619,8 +19470,6 @@
"examine": "Allows you to pass through the Shantay pass into the Kharid Desert.",
"durability": null,
"name": "Shantay pass",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1854"
},
@@ -20637,8 +19486,6 @@
"examine": "The Rantuki tribe's totem.",
"durability": null,
"name": "Totem",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "3",
"archery_ticket_price": "0",
"id": "1857"
@@ -20652,13 +19499,11 @@
},
{
"ge_buy_limit": "1000",
- "examine": "I need to cook this first / Freshly cooked ugthanki meat.",
+ "examine": "I need to cook this first.",
"grand_exchange_price": "486",
"durability": null,
"name": "Raw ugthanki meat",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.75",
"archery_ticket_price": "0",
"id": "1859"
@@ -20679,8 +19524,6 @@
"durability": null,
"name": "Ugthanki meat",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.75",
"archery_ticket_price": "0",
"id": "1861"
@@ -20702,8 +19545,6 @@
"durability": null,
"name": "Pitta dough",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.14",
"archery_ticket_price": "0",
"id": "1863"
@@ -20724,8 +19565,6 @@
"durability": null,
"name": "Pitta bread",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1865"
},
@@ -20738,6 +19577,14 @@
"archery_ticket_price": "0",
"id": "1866"
},
+ {
+ "examine": "It's all burnt.",
+ "durability": null,
+ "name": "Burnt pitta bread",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "1867"
+ },
{
"durability": null,
"name": "Burnt pitta bread",
@@ -20752,8 +19599,6 @@
"durability": null,
"name": "Chopped tomato",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "1869"
@@ -20774,8 +19619,6 @@
"durability": null,
"name": "Chopped onion",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1871"
@@ -20796,8 +19639,6 @@
"durability": null,
"name": "Chopped ugthanki",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1873"
},
@@ -20817,8 +19658,6 @@
"durability": null,
"name": "Onion & tomato",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "1875"
},
@@ -20839,8 +19678,6 @@
"durability": null,
"name": "Ugthanki & onion",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "1877"
},
@@ -20860,8 +19697,6 @@
"durability": null,
"name": "Ugthanki & tomato",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "1879"
@@ -20882,8 +19717,6 @@
"durability": null,
"name": "Kebab mix",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"archery_ticket_price": "0",
"id": "1881"
},
@@ -20902,8 +19735,6 @@
"durability": null,
"name": "Ugthanki kebab",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1883"
@@ -20923,8 +19754,6 @@
"durability": null,
"name": "Ugthanki kebab",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1885"
@@ -20946,8 +19775,6 @@
"durability": null,
"name": "Cake tin",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1887"
@@ -20968,8 +19795,6 @@
"durability": null,
"name": "Uncooked cake",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1889"
@@ -21121,7 +19946,6 @@
"durability": null,
"name": "Asgarnian ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1905"
},
@@ -21142,7 +19966,6 @@
"durability": null,
"name": "Wizard's mind bomb",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1907"
},
@@ -21163,7 +19986,6 @@
"durability": null,
"name": "Greenman's ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1909"
},
@@ -21184,7 +20006,6 @@
"durability": null,
"name": "Dragon bitter",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "1911"
@@ -21206,7 +20027,6 @@
"durability": null,
"name": "Dwarven stout",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1913"
},
@@ -21227,8 +20047,6 @@
"durability": null,
"name": "Grog",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "1915"
@@ -21249,7 +20067,6 @@
"durability": null,
"name": "Beer",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "1917",
@@ -21272,7 +20089,6 @@
"durability": null,
"name": "Beer glass",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "1919"
@@ -21293,8 +20109,6 @@
"durability": null,
"name": "Bowl of water",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "1921"
@@ -21316,8 +20130,6 @@
"durability": null,
"name": "Bowl",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "1923"
@@ -21339,7 +20151,6 @@
"durability": null,
"name": "Bucket",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "1925"
@@ -21361,8 +20172,6 @@
"durability": null,
"name": "Bucket of milk",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "1927"
@@ -21378,13 +20187,11 @@
},
{
"ge_buy_limit": "100",
- "examine": "Common bucket: It's a bucket of water.2008 Easter event: It's a bucket of water from the Easter Bunny's warren. Regular bucket filled from Braindeath Island: It's a bucket of... water?",
+ "examine": "It's a bucket of water.",
"grand_exchange_price": "72",
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "1929"
@@ -21427,8 +20234,6 @@
"durability": null,
"name": "Pot of flour",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "1933"
@@ -21502,8 +20307,6 @@
"durability": null,
"name": "Raw swamp paste",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "1940"
},
@@ -21515,8 +20318,6 @@
"durability": null,
"name": "Swamp paste",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "1941"
},
@@ -21528,8 +20329,6 @@
"durability": null,
"name": "Potato",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1942"
@@ -21551,8 +20350,6 @@
"durability": null,
"name": "Egg",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "1944"
},
@@ -21572,8 +20369,6 @@
"durability": null,
"name": "Flour",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "1946"
@@ -21586,7 +20381,6 @@
"durability": null,
"name": "Grain",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.6",
"archery_ticket_price": "0",
"id": "1947"
@@ -21608,7 +20402,6 @@
"durability": null,
"name": "Chef's hat",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "1949",
@@ -21631,8 +20424,6 @@
"durability": null,
"name": "Redberries",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "1951"
@@ -21674,8 +20465,6 @@
"durability": null,
"name": "Cooking apple",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"archery_ticket_price": "0",
"id": "1955"
},
@@ -21696,8 +20485,6 @@
"durability": null,
"name": "Onion",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1957"
@@ -21718,8 +20505,6 @@
"durability": null,
"name": "Pumpkin",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "1959"
@@ -21740,8 +20525,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "1961"
},
@@ -21762,7 +20545,6 @@
"durability": null,
"name": "Banana",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1963",
"equipment_slot": "3"
@@ -21778,7 +20560,7 @@
},
{
"ge_buy_limit": "1000",
- "examine": "On ground: Cabbage... yuck!In inventory: Yuck, I don't like cabbage.",
+ "examine": "Yuck, I don't like cabbage.",
"grand_exchange_price": "41",
"durability": null,
"name": "Cabbage",
@@ -21797,7 +20579,7 @@
"id": "1966"
},
{
- "examine": "On ground: Cabbage... yuck!In inventory: Yuck, I don't like cabbage.",
+ "examine": "Yuck, a cabbage from Draynor Manor. I don't like cabbage.",
"grand_exchange_price": "55",
"durability": null,
"name": "Cabbage",
@@ -21830,8 +20612,6 @@
"durability": null,
"name": "Kebab",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1971"
},
@@ -21852,8 +20632,6 @@
"durability": null,
"name": "Chocolate bar",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "1973",
"equipment_slot": "5"
@@ -21875,8 +20653,6 @@
"durability": null,
"name": "Chocolate dust",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "1975"
},
@@ -21893,8 +20669,6 @@
"examine": "Milk with chocolate in it.",
"durability": null,
"name": "Chocolatey milk",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "1977"
@@ -21907,8 +20681,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "1978"
@@ -21930,7 +20702,6 @@
"durability": null,
"name": "Empty cup",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "1980"
},
@@ -21951,8 +20722,6 @@
"durability": null,
"name": "Tomato",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "1982"
},
@@ -21981,8 +20750,6 @@
"durability": null,
"name": "Cheese",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "1985"
@@ -22040,7 +20807,6 @@
"examine": "Oh dear, this wine is terrible!",
"durability": null,
"name": "Jug of bad wine",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "1991"
@@ -22049,7 +20815,6 @@
"examine": "Oh dear, this wine is terrible!",
"durability": null,
"name": "Jug of bad wine",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "1992"
@@ -22062,8 +20827,6 @@
"durability": null,
"name": "Jug of wine",
"tradeable": "true",
- "low_alchemy": "51",
- "high_alchemy": "76",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "1993"
@@ -22081,8 +20844,6 @@
"examine": "This wine needs to ferment before it can be drunk.",
"durability": null,
"name": "Unfermented wine",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "1995"
@@ -22091,8 +20852,6 @@
"examine": "This wine needs to ferment before it can be drunk.",
"durability": null,
"name": "Unfermented wine",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "1996"
@@ -22139,8 +20898,6 @@
"durability": null,
"name": "Uncooked stew",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "2001"
@@ -22162,8 +20919,6 @@
"durability": null,
"name": "Stew",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "2003"
@@ -22192,8 +20947,6 @@
"durability": null,
"name": "Spice",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2007"
@@ -22214,8 +20967,6 @@
"durability": null,
"name": "Uncooked curry",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "2009"
},
@@ -22235,8 +20986,6 @@
"durability": null,
"name": "Curry",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "2011"
@@ -22250,6 +20999,14 @@
"archery_ticket_price": "0",
"id": "2012"
},
+ {
+ "examine": "Eew, it's horribly burnt.",
+ "durability": null,
+ "name": "Burnt curry",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "2013"
+ },
{
"durability": null,
"name": "Burnt curry",
@@ -22265,8 +21022,6 @@
"durability": null,
"name": "Vodka",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "2015"
@@ -22288,8 +21043,6 @@
"durability": null,
"name": "Whisky",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "1",
"archery_ticket_price": "0",
"id": "2017"
@@ -22311,8 +21064,6 @@
"durability": null,
"name": "Gin",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "1",
"archery_ticket_price": "0",
"id": "2019"
@@ -22334,8 +21085,6 @@
"durability": null,
"name": "Brandy",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2021"
},
@@ -22354,7 +21103,6 @@
"durability": null,
"name": "Cocktail guide",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2023"
@@ -22372,7 +21120,6 @@
"durability": null,
"name": "Cocktail shaker",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2025"
@@ -22401,8 +21148,6 @@
"durability": null,
"name": "Premade blurb' sp.",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2028"
@@ -22424,8 +21169,6 @@
"durability": null,
"name": "Premade choc s'dy",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2030"
@@ -22447,8 +21190,6 @@
"durability": null,
"name": "Premade dr' dragon",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2032"
@@ -22470,8 +21211,6 @@
"durability": null,
"name": "Premade fr' blast",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2034"
@@ -22493,8 +21232,6 @@
"durability": null,
"name": "Premade p' punch",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2036"
@@ -22516,8 +21253,6 @@
"durability": null,
"name": "Premade sgg",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2038"
@@ -22539,8 +21274,6 @@
"durability": null,
"name": "Premade wiz blz'd",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2040"
@@ -22559,8 +21292,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2042"
},
@@ -22576,8 +21307,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2044"
},
@@ -22593,8 +21322,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2046"
},
@@ -22613,8 +21340,6 @@
"durability": null,
"name": "Pineapple punch",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "2048"
},
@@ -22632,8 +21357,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2050"
},
@@ -22649,8 +21372,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2052"
},
@@ -22669,8 +21390,6 @@
"durability": null,
"name": "Wizard blizzard",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "2054"
@@ -22689,8 +21408,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2056"
},
@@ -22706,8 +21423,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2058"
},
@@ -22723,8 +21438,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2060"
},
@@ -22740,8 +21453,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2062"
},
@@ -22760,8 +21471,6 @@
"durability": null,
"name": "Blurberry special",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "2064"
},
@@ -22779,8 +21488,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2066"
},
@@ -22796,8 +21503,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2068"
},
@@ -22813,8 +21518,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2070"
},
@@ -22830,8 +21533,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2072"
},
@@ -22850,8 +21551,6 @@
"durability": null,
"name": "Choc saturday",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "2074"
@@ -22870,8 +21569,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2076"
},
@@ -22887,8 +21584,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2078"
},
@@ -22907,8 +21602,6 @@
"durability": null,
"name": "Short green guy",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "2080"
},
@@ -22926,8 +21619,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2082"
},
@@ -22946,8 +21637,6 @@
"durability": null,
"name": "Fruit blast",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "2084"
},
@@ -22965,8 +21654,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2086"
},
@@ -22982,8 +21669,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2088"
},
@@ -22999,8 +21684,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2090"
},
@@ -23019,8 +21702,6 @@
"durability": null,
"name": "Drunk dragon",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "2092"
},
@@ -23038,8 +21719,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2094"
},
@@ -23055,8 +21734,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2096"
},
@@ -23072,8 +21749,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2098"
},
@@ -23089,8 +21764,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2100"
},
@@ -23109,7 +21782,6 @@
"durability": null,
"name": "Lemon",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2102"
@@ -23130,7 +21802,6 @@
"durability": null,
"name": "Lemon chunks",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2104"
},
@@ -23150,7 +21821,6 @@
"durability": null,
"name": "Lemon slices",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2106"
},
@@ -23171,8 +21841,6 @@
"durability": null,
"name": "Orange",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2108"
@@ -23193,7 +21861,6 @@
"durability": null,
"name": "Orange chunks",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2110"
},
@@ -23213,7 +21880,6 @@
"durability": null,
"name": "Orange slices",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2112"
},
@@ -23234,7 +21900,6 @@
"durability": null,
"name": "Pineapple",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.15",
"archery_ticket_price": "0",
"id": "2114"
@@ -23294,7 +21959,6 @@
"durability": null,
"name": "Lime",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2120"
@@ -23334,7 +21998,6 @@
"durability": null,
"name": "Lime slices",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2124"
},
@@ -23355,8 +22018,6 @@
"durability": null,
"name": "Dwellberries",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "2126"
},
@@ -23377,7 +22038,6 @@
"durability": null,
"name": "Equa leaves",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2128"
},
@@ -23398,8 +22058,6 @@
"durability": null,
"name": "Pot of cream",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "11",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2130"
@@ -23421,8 +22079,6 @@
"durability": null,
"name": "Raw beef",
"tradeable": "true",
- "low_alchemy": "23",
- "high_alchemy": "35",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "2132"
@@ -23444,8 +22100,6 @@
"durability": null,
"name": "Raw rat meat",
"tradeable": "true",
- "low_alchemy": "15",
- "high_alchemy": "23",
"weight": "1",
"archery_ticket_price": "0",
"id": "2134"
@@ -23467,8 +22121,6 @@
"durability": null,
"name": "Raw bear meat",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "1",
"archery_ticket_price": "0",
"id": "2136"
@@ -23490,8 +22142,6 @@
"durability": null,
"name": "Raw chicken",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "0.15",
"archery_ticket_price": "0",
"id": "2138"
@@ -23513,8 +22163,6 @@
"durability": null,
"name": "Cooked chicken",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2140"
@@ -23536,8 +22184,6 @@
"durability": null,
"name": "Cooked meat",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "2142"
@@ -23577,8 +22223,6 @@
"examine": "A very strange eel.",
"durability": null,
"name": "Raw lava eel",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2148"
@@ -23587,8 +22231,6 @@
"examine": "Strange, it looks cooler now it's been cooked.",
"durability": null,
"name": "Lava eel",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.15",
"archery_ticket_price": "0",
"id": "2149"
@@ -23600,7 +22242,6 @@
"durability": null,
"name": "Swamp toad",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2150"
@@ -23621,7 +22262,6 @@
"durability": null,
"name": "Toad's legs",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2152"
@@ -23640,7 +22280,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2154"
@@ -23657,7 +22296,6 @@
"durability": null,
"name": "Spicy toad's legs",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2156"
@@ -23674,7 +22312,6 @@
"durability": null,
"name": "Seasoned legs",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2158"
@@ -23691,7 +22328,6 @@
"durability": null,
"name": "Spicy worm",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2160"
@@ -23710,7 +22346,6 @@
"durability": null,
"name": "King worm",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2162"
@@ -23729,8 +22364,7 @@
"examine": "A deep tin used to make gnome battas in.",
"durability": null,
"name": "Batta tin",
- "low_alchemy": "4",
- "high_alchemy": "6",
+ "tradeable": "true",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2164"
@@ -23741,8 +22375,6 @@
"durability": null,
"name": "Crunchy tray",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2165"
@@ -23753,8 +22385,6 @@
"durability": null,
"name": "Gnomebowl mould",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2166"
@@ -23764,7 +22394,6 @@
"durability": null,
"name": "Gianne's cook book",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2167"
@@ -23784,7 +22413,6 @@
"durability": null,
"name": "Gnome spice",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.14",
"archery_ticket_price": "0",
"id": "2169"
@@ -23806,7 +22434,6 @@
"durability": null,
"name": "Gianne dough",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2171"
@@ -23846,7 +22473,6 @@
"examine": "This gnomebowl is in the early stages of preparation.",
"durability": null,
"name": "Half baked bowl",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2177"
@@ -23856,7 +22482,6 @@
"durability": null,
"name": "Raw gnomebowl",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2178"
},
@@ -23864,7 +22489,6 @@
"examine": "This unfinished XX needs YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2179"
},
@@ -23879,7 +22503,6 @@
"examine": "This unfinished XX needs YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2181"
},
@@ -23894,7 +22517,6 @@
"examine": "This unfinished XX needs YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2183"
},
@@ -23913,7 +22535,6 @@
"durability": null,
"name": "Chocolate bomb",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "2185"
@@ -23934,7 +22555,6 @@
"durability": null,
"name": "Tangled toads' legs",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "2187"
@@ -23952,7 +22572,6 @@
"examine": "This unfinished XX needs YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2189"
},
@@ -23970,7 +22589,6 @@
"durability": null,
"name": "Worm hole",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2191"
},
@@ -23987,7 +22605,6 @@
"examine": "This unfinished XX needs YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2193"
},
@@ -24005,7 +22622,6 @@
"durability": null,
"name": "Veg ball",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2195"
},
@@ -24045,7 +22661,6 @@
"durability": null,
"name": "Half baked crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2201"
},
@@ -24056,7 +22671,6 @@
"durability": null,
"name": "Raw crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2202"
},
@@ -24065,7 +22679,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2203"
},
@@ -24084,7 +22697,6 @@
"durability": null,
"name": "Worm crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2205"
},
@@ -24102,7 +22714,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2207"
},
@@ -24121,7 +22732,6 @@
"durability": null,
"name": "Chocchip crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2209"
},
@@ -24139,7 +22749,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2211"
},
@@ -24158,7 +22767,6 @@
"durability": null,
"name": "Spicy crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2213"
},
@@ -24176,7 +22784,6 @@
"durability": null,
"name": "Picture",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2215"
},
@@ -24194,7 +22801,6 @@
"durability": null,
"name": "Toad crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2217"
@@ -24215,8 +22821,6 @@
"durability": null,
"name": "Premade w'm batta",
"tradeable": "true",
- "low_alchemy": "78",
- "high_alchemy": "117",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2219"
@@ -24237,8 +22841,6 @@
"durability": null,
"name": "Premade t'd batta",
"tradeable": "true",
- "low_alchemy": "78",
- "high_alchemy": "117",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2221"
@@ -24259,8 +22861,6 @@
"durability": null,
"name": "Premade c+t batta",
"tradeable": "true",
- "low_alchemy": "78",
- "high_alchemy": "117",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2223"
@@ -24281,8 +22881,6 @@
"durability": null,
"name": "Premade fr't batta",
"tradeable": "true",
- "low_alchemy": "78",
- "high_alchemy": "117",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2225"
@@ -24303,8 +22901,6 @@
"durability": null,
"name": "Premade veg batta",
"tradeable": "true",
- "low_alchemy": "78",
- "high_alchemy": "117",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2227"
@@ -24325,8 +22921,6 @@
"durability": null,
"name": "Premade choc bomb",
"tradeable": "true",
- "low_alchemy": "180",
- "high_alchemy": "270",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2229"
@@ -24347,8 +22941,6 @@
"durability": null,
"name": "Premade ttl",
"tradeable": "true",
- "low_alchemy": "180",
- "high_alchemy": "270",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2231"
@@ -24369,8 +22961,6 @@
"durability": null,
"name": "Premade worm hole",
"tradeable": "true",
- "low_alchemy": "108",
- "high_alchemy": "162",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2233"
@@ -24391,8 +22981,6 @@
"durability": null,
"name": "Premade veg ball",
"tradeable": "true",
- "low_alchemy": "108",
- "high_alchemy": "162",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2235"
@@ -24413,8 +23001,6 @@
"durability": null,
"name": "Premade w'm crun",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2237"
@@ -24435,8 +23021,6 @@
"durability": null,
"name": "Premade ch' crunch",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2239"
@@ -24457,8 +23041,6 @@
"durability": null,
"name": "Premade s'y crunch",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2241"
@@ -24480,8 +23062,6 @@
"durability": null,
"name": "Premade t'd crunch",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2243"
@@ -24521,7 +23101,6 @@
"examine": "This gnome batta is in the early stages of preparation.",
"durability": null,
"name": "Half baked batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2249"
},
@@ -24530,7 +23109,6 @@
"examine": "This gnome batta needs cooking.",
"durability": null,
"name": "Raw batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2250"
},
@@ -24539,7 +23117,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2251"
},
@@ -24577,7 +23154,6 @@
"durability": null,
"name": "Toad batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2255"
@@ -24596,7 +23172,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2257"
},
@@ -24614,7 +23189,6 @@
"durability": null,
"name": "Cheese+tom batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2259"
@@ -24633,7 +23207,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2261"
},
@@ -24649,7 +23222,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2263"
},
@@ -24665,7 +23237,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2265"
},
@@ -24681,7 +23252,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2267"
},
@@ -24697,7 +23267,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2269"
},
@@ -24713,7 +23282,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2271"
},
@@ -24729,7 +23297,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2273"
},
@@ -24745,7 +23312,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2275"
},
@@ -24763,7 +23329,6 @@
"durability": null,
"name": "Fruit batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2277"
@@ -24782,7 +23347,6 @@
"examine": "This XX batta needs garnishing with YY.",
"durability": null,
"name": "Picture",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2279"
},
@@ -24800,7 +23364,6 @@
"durability": null,
"name": "Vegetable batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2281"
@@ -24822,8 +23385,6 @@
"durability": null,
"name": "Pizza base",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2283"
@@ -24844,8 +23405,6 @@
"durability": null,
"name": "Incomplete pizza",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "2285"
},
@@ -24866,8 +23425,6 @@
"durability": null,
"name": "Uncooked pizza",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "2287"
},
@@ -24889,8 +23446,6 @@
"durability": null,
"name": "Plain pizza",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.66",
"archery_ticket_price": "0",
"id": "2289"
@@ -24913,8 +23468,6 @@
"durability": null,
"name": "1/2 plain pizza",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.66",
"archery_ticket_price": "0",
"id": "2291"
@@ -24936,8 +23489,6 @@
"durability": null,
"name": "Meat pizza",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.83",
"archery_ticket_price": "0",
"id": "2293"
@@ -24959,8 +23510,6 @@
"durability": null,
"name": "1/2 meat pizza",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.83",
"archery_ticket_price": "0",
"id": "2295"
@@ -24982,8 +23531,6 @@
"durability": null,
"name": "Anchovy pizza",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "0.83",
"archery_ticket_price": "0",
"id": "2297"
@@ -25005,8 +23552,6 @@
"durability": null,
"name": "1/2 anchovy pizza",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "0.83",
"archery_ticket_price": "0",
"id": "2299"
@@ -25028,8 +23573,6 @@
"durability": null,
"name": "Pineapple pizza",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.83",
"archery_ticket_price": "0",
"id": "2301"
@@ -25078,8 +23621,6 @@
"durability": null,
"name": "Bread dough",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "2307"
},
@@ -25100,8 +23641,6 @@
"durability": null,
"name": "Bread",
"tradeable": "true",
- "low_alchemy": "9",
- "high_alchemy": "14",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2309"
@@ -25130,8 +23669,6 @@
"durability": null,
"name": "Pie dish",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2313"
@@ -25152,8 +23689,6 @@
"durability": null,
"name": "Pie shell",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "2315"
},
@@ -25173,8 +23708,6 @@
"durability": null,
"name": "Uncooked apple pie",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2317"
@@ -25196,8 +23729,6 @@
"durability": null,
"name": "Uncooked meat pie",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2319"
@@ -25219,8 +23750,6 @@
"durability": null,
"name": "Uncooked berry pie",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2321"
@@ -25243,8 +23772,6 @@
"durability": null,
"name": "Apple pie",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2323"
@@ -25266,8 +23793,6 @@
"durability": null,
"name": "Redberry pie",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2325"
@@ -25339,8 +23864,6 @@
"durability": null,
"name": "Half a redberry pie",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2333"
@@ -25363,8 +23886,6 @@
"durability": null,
"name": "Half an apple pie",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2335"
@@ -25386,8 +23907,6 @@
"durability": null,
"name": "Raw oomlie",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "2337"
@@ -25405,8 +23924,6 @@
"examine": "A thick green palm leaf used by natives to cook meat.",
"durability": null,
"name": "Palm leaf",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2339"
@@ -25415,8 +23932,6 @@
"examine": "A thick green palm leaf used by natives to cook meat.",
"durability": null,
"name": "Palm leaf",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2340"
@@ -25428,8 +23943,6 @@
"durability": null,
"name": "Wrapped oomlie",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "2341"
@@ -25450,8 +23963,6 @@
"durability": null,
"name": "Cooked oomlie wrap",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "2343"
@@ -25480,8 +23991,6 @@
"durability": null,
"name": "Hammer",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "2347"
@@ -25503,8 +24012,6 @@
"durability": null,
"name": "Bronze bar",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "2349"
@@ -25525,8 +24032,6 @@
"durability": null,
"name": "Iron bar",
"tradeable": "true",
- "low_alchemy": "11",
- "high_alchemy": "16",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "2351"
@@ -25547,8 +24052,6 @@
"durability": null,
"name": "Steel bar",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1.81",
"archery_ticket_price": "0",
"id": "2353"
@@ -25569,8 +24072,6 @@
"durability": null,
"name": "Silver bar",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "1.81",
"archery_ticket_price": "0",
"id": "2355"
@@ -25591,8 +24092,6 @@
"durability": null,
"name": "Gold bar",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1.81",
"archery_ticket_price": "0",
"id": "2357"
@@ -25614,8 +24113,6 @@
"durability": null,
"name": "Mithril bar",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1.6",
"archery_ticket_price": "0",
"id": "2359"
@@ -25636,8 +24133,6 @@
"durability": null,
"name": "Adamantite bar",
"tradeable": "true",
- "low_alchemy": "256",
- "high_alchemy": "384",
"weight": "2.04",
"archery_ticket_price": "0",
"id": "2361"
@@ -25658,8 +24153,6 @@
"durability": null,
"name": "Runite bar",
"tradeable": "true",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "2",
"archery_ticket_price": "0",
"id": "2363"
@@ -25677,8 +24170,6 @@
"examine": "It's a 'perfect' golden bar.",
"durability": null,
"name": "'perfect' gold bar",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"archery_ticket_price": "0",
"id": "2365"
@@ -25691,8 +24182,6 @@
"durability": null,
"name": "Shield left half",
"tradeable": "true",
- "low_alchemy": "44000",
- "high_alchemy": "66000",
"weight": "2",
"archery_ticket_price": "0",
"id": "2366"
@@ -25711,13 +24200,11 @@
"shop_price": "750000",
"ge_buy_limit": "100",
"examine": "The right half of a dragon square shield.",
- "durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
- "weight": "2",
"grand_exchange_price": "743100",
+ "durability": null,
"name": "Shield right half",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "2368"
},
@@ -25738,8 +24225,6 @@
"durability": null,
"name": "Steel studs",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "1",
"archery_ticket_price": "0",
"id": "2370"
@@ -25884,8 +24369,6 @@
"durability": null,
"name": "Vial",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2389"
},
@@ -25897,8 +24380,6 @@
"durability": null,
"name": "Vial",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2390"
},
@@ -25909,8 +24390,6 @@
"durability": null,
"name": "Ground bat bones",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2391"
@@ -25949,8 +24428,6 @@
"examine": "A dangerous magical liquid.",
"durability": null,
"name": "Magic ogre potion",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "2395",
"equipment_slot": "3"
@@ -25974,8 +24451,6 @@
"examine": "Deadly.",
"durability": null,
"name": "Cave nightshade",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "2398"
},
@@ -25984,8 +24459,6 @@
"examine": "The magical sword 'Silverlight'. / The magical sword 'Silverlight', stained black with mushroom ink. (during Shadow of the Storm)",
"walk_anim": "819",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1.8",
"turn90ccw_anim": "822",
"attack_speed": "5",
@@ -26016,8 +24489,6 @@
"examine": "Decorative armour; an heirloom of the Carnillean family.",
"durability": null,
"name": "Carnillean armour",
- "low_alchemy": "26",
- "high_alchemy": "39",
"weight": "9",
"archery_ticket_price": "0",
"id": "2405",
@@ -26050,8 +24521,6 @@
"examine": "A very attractive magnet.",
"durability": null,
"name": "Magnet",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2410"
},
@@ -26060,8 +24529,6 @@
"durability": null,
"name": "Saradomin cape",
"tradeable": "false",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2412",
@@ -26073,8 +24540,6 @@
"durability": null,
"name": "Guthix cape",
"tradeable": "false",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2413",
@@ -26086,8 +24551,6 @@
"durability": null,
"name": "Zamorak cape",
"tradeable": "false",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2414",
@@ -26098,11 +24561,10 @@
"shop_price": "80000",
"examine": "A magical staff imbued with the power of Saradomin.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"weight": "2.2",
"attack_speed": "4",
"weapon_interface": "1",
+ "equip_audio": "2247",
"defence_anim": "420",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
@@ -26117,11 +24579,10 @@
"shop_price": "80000",
"examine": "A magical staff imbued with the power of Guthix.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"weight": "2",
"attack_speed": "4",
"weapon_interface": "1",
+ "equip_audio": "2247",
"defence_anim": "420",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
@@ -26133,31 +24594,37 @@
"bonuses": "-1,-1,6,6,0,2,3,1,6,0,0,2,0,0,0"
},
{
+ "shop_price": "80000",
"turn90cw_anim": "1207",
"examine": "A magical staff imbued with the power of Zamorak.",
"walk_anim": "1205",
- "low_alchemy": "32000",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "4",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "420",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"stand_anim": "813",
+ "attack_audios": "2555,0,0,0",
"tradeable": "false",
+ "name": "Zamorak staff",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "2417",
"stand_turn_anim": "1209",
- "bonuses": "-1,-1,6,6,0,2,3,1,6,0,0,2,0,0,0",
- "shop_price": "80000",
+ "bonuses": "-1,-1,6,6,0,2,3,1,6,0,0,2,0,0,0"
+ },
+ {
+ "examine": "A heavy key made of bronze. (Prince Ali Rescue).",
"durability": null,
- "high_alchemy": "48000",
- "weight": "2.2",
- "weapon_interface": "1",
- "render_anim": "28",
- "attack_audios": "2555,0,0,0",
- "name": "Zamorak staff"
+ "name": "Bronze key",
+ "archery_ticket_price": "0",
+ "id": "2418"
},
{
"examine": "A grey woollen wig.",
@@ -26193,8 +24660,6 @@
"examine": "A bottle of skin coloured paste.",
"durability": null,
"name": "Paste",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2424"
},
@@ -26220,8 +24685,6 @@
"durability": null,
"name": "Attack potion(4)",
"tradeable": "true",
- "low_alchemy": "224",
- "high_alchemy": "336",
"archery_ticket_price": "0",
"id": "2428"
},
@@ -26242,8 +24705,6 @@
"durability": null,
"name": "Restore potion(4)",
"tradeable": "true",
- "low_alchemy": "35",
- "high_alchemy": "52",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "2430"
@@ -26265,8 +24726,6 @@
"durability": null,
"name": "Defence potion(4)",
"tradeable": "true",
- "low_alchemy": "352",
- "high_alchemy": "528",
"archery_ticket_price": "0",
"id": "2432"
},
@@ -26286,8 +24745,6 @@
"durability": null,
"name": "Prayer potion(4)",
"tradeable": "true",
- "low_alchemy": "61",
- "high_alchemy": "91",
"archery_ticket_price": "0",
"id": "2434"
},
@@ -26308,8 +24765,6 @@
"durability": null,
"name": "Super attack(4)",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "2436"
},
@@ -26330,8 +24785,6 @@
"durability": null,
"name": "Fishing potion(4)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.03",
"archery_ticket_price": "0",
"id": "2438"
@@ -26353,8 +24806,6 @@
"durability": null,
"name": "Super strength(4)",
"tradeable": "true",
- "low_alchemy": "88",
- "high_alchemy": "132",
"archery_ticket_price": "0",
"id": "2440"
},
@@ -26376,8 +24827,6 @@
"durability": null,
"name": "Super defence(4)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "2442"
},
@@ -26398,8 +24847,6 @@
"durability": null,
"name": "Ranging potion(4)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "2444"
},
@@ -26420,8 +24867,6 @@
"durability": null,
"name": "Antipoison(4)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "2446"
},
@@ -26441,8 +24886,6 @@
"durability": null,
"name": "Super antipoison(4)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "2448"
},
@@ -26462,8 +24905,6 @@
"durability": null,
"name": "Zamorak brew(4)",
"tradeable": "true",
- "low_alchemy": "70",
- "high_alchemy": "105",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2450"
@@ -26484,8 +24925,6 @@
"durability": null,
"name": "Antifire potion(4)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "2452"
},
@@ -26505,8 +24944,6 @@
"durability": null,
"name": "Antifire potion(3)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "2454"
},
@@ -26526,8 +24963,6 @@
"durability": null,
"name": "Antifire potion(2)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "2456"
},
@@ -26547,8 +24982,6 @@
"durability": null,
"name": "Antifire potion(1)",
"tradeable": "true",
- "low_alchemy": "105",
- "high_alchemy": "158",
"archery_ticket_price": "0",
"id": "2458"
},
@@ -26566,8 +24999,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26597,8 +25028,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26628,8 +25057,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26659,8 +25086,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26690,8 +25115,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26721,8 +25144,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26752,8 +25173,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26783,8 +25202,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26814,8 +25231,6 @@
"ge_buy_limit": "100",
"examine": "A posy of flowers.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.02",
"attack_speed": "4",
"weapon_interface": "12",
@@ -26847,8 +25262,6 @@
"durability": null,
"name": "Clean lantadyme",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "40",
"archery_ticket_price": "0",
"id": "2481"
},
@@ -26868,8 +25281,6 @@
"durability": null,
"name": "Lantadyme potion(unf)",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "40",
"archery_ticket_price": "0",
"id": "2483"
},
@@ -26907,9 +25318,8 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "0.2",
+ "equip_audio": "2241",
"equipment_slot": "9",
"lendable": "true",
"grand_exchange_price": "1705",
@@ -26933,9 +25343,8 @@
"ge_buy_limit": "5000",
"examine": "Vambraces made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1440",
- "high_alchemy": "2160",
"weight": "0.25",
+ "equip_audio": "2241",
"equipment_slot": "9",
"lendable": "true",
"grand_exchange_price": "2046",
@@ -26959,9 +25368,8 @@
"ge_buy_limit": "5000",
"examine": "Vambraces made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1728",
- "high_alchemy": "2592",
"weight": "0.25",
+ "equip_audio": "2241",
"equipment_slot": "9",
"lendable": "true",
"grand_exchange_price": "2506",
@@ -26985,10 +25393,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1728",
- "high_alchemy": "2592",
"weight": "5.4",
"absorb": "0,5,2",
+ "equip_audio": "2241",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "2504",
@@ -27012,10 +25419,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "2072",
- "high_alchemy": "3108",
"weight": "5.4",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "3142",
@@ -27039,10 +25445,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "2488",
- "high_alchemy": "3732",
"weight": "5.4",
"absorb": "0,7,3",
+ "equip_audio": "2241",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "4744",
@@ -27066,10 +25471,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "3744",
- "high_alchemy": "5616",
"weight": "6.8",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"lendable": "true",
"grand_exchange_price": "5420",
@@ -27093,10 +25497,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "4492",
- "high_alchemy": "6738",
"weight": "6.8",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"lendable": "true",
"grand_exchange_price": "6680",
@@ -27120,10 +25523,9 @@
"ge_buy_limit": "5000",
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "5392",
- "high_alchemy": "8088",
"weight": "6.8",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"lendable": "true",
"grand_exchange_price": "8098",
@@ -27149,8 +25551,6 @@
"durability": null,
"name": "Blue d-leather",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "2505"
@@ -27171,8 +25571,6 @@
"durability": null,
"name": "Red dragon leather",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"weight": "3",
"archery_ticket_price": "0",
"id": "2507"
@@ -27193,8 +25591,6 @@
"durability": null,
"name": "Black d-leather",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "2509"
@@ -27215,26 +25611,22 @@
"durability": null,
"name": "Logs",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "2",
"archery_ticket_price": "0",
"id": "2511"
},
{
+ "lendable": "true",
"examine": "A series of connected metal rings.",
+ "grand_exchange_price": "2902937",
"rare_item": "true",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
- "weight": "6.8",
- "absorb": "4,0,9",
- "lendable": "true",
- "grand_exchange_price": "2902937",
"name": "Dragon chainbody",
"tradeable": "true",
+ "weight": "6.8",
"archery_ticket_price": "0",
"id": "2513",
+ "absorb": "4,0,9",
"bonuses": "0,0,0,-15,0,81,93,98,-3,82,50,0,0,0,0"
},
{
@@ -27244,8 +25636,6 @@
"durability": null,
"name": "Raw shrimps",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "2514"
@@ -27264,8 +25654,6 @@
"durability": null,
"name": "Pot of flour",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "2516"
@@ -27283,8 +25671,6 @@
"durability": null,
"name": "Rotten tomato",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2518"
},
@@ -27301,8 +25687,6 @@
"durability": null,
"name": "Toy horsey",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2520"
},
@@ -27319,8 +25703,6 @@
"durability": null,
"name": "Toy horsey",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2522"
},
@@ -27337,8 +25719,6 @@
"durability": null,
"name": "Toy horsey",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2524"
},
@@ -27355,8 +25735,6 @@
"durability": null,
"name": "Toy horsey",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2526"
},
@@ -27380,8 +25758,6 @@
"examine": "A magical sphere that glimmers within.",
"durability": null,
"name": "Orb of light",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "5",
"archery_ticket_price": "0",
"id": "2529"
@@ -27389,6 +25765,7 @@
{
"shop_price": "140",
"grand_exchange_price": "140",
+ "examine": "Bones are for burying!",
"durability": null,
"name": "Bones",
"tradeable": "true",
@@ -27410,8 +25787,6 @@
"durability": null,
"name": "Iron fire arrows",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "2532",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
@@ -27424,8 +25799,6 @@
"durability": null,
"name": "Iron fire arrows",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "2533",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
@@ -27435,121 +25808,105 @@
"requirements": "{4,5}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with steel heads and oil-soaked cloth. lit: An easy to make, steel-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "325",
+ "durability": null,
"name": "Steel fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2534",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{4,5}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with steel heads and oil-soaked cloth. lit: An easy to make, steel-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "327",
+ "durability": null,
"name": "Steel fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2535",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{4,20}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with mithril heads and oil-soaked cloth. lit: An easy to make, mithril-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "9",
+ "durability": null,
"name": "Mithril fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2536",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,20}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with mithril heads and oil-soaked cloth. lit: An easy to make, mithril-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "63",
+ "durability": null,
"name": "Mithril fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2537",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with adamant heads and oil-soaked cloth.lit: An easy-to-make, Adamant-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "90",
+ "durability": null,
"name": "Adamant fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2538",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with adamant heads and oil-soaked cloth.lit: An easy-to-make, Adamant-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "127",
+ "durability": null,
"name": "Adamant fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2539",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31",
+ "equipment_slot": "13"
},
{
"requirements": "{4,40}",
"ge_buy_limit": "10000",
"examine": "An easy to make, rune-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "539",
+ "durability": null,
"name": "Rune fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2540",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"requirements": "{4,40}",
"ge_buy_limit": "10000",
"examine": "An easy to make, rune-headed fire arrow.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "682",
+ "durability": null,
"name": "Rune fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2541",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"ge_buy_limit": "5000",
@@ -27558,8 +25915,6 @@
"durability": null,
"name": "Ring of recoil",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "2550",
"equipment_slot": "12"
@@ -27581,8 +25936,6 @@
"durability": null,
"name": "Ring of duelling(8)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2552",
"equipment_slot": "12"
@@ -27603,8 +25956,6 @@
"durability": null,
"name": "Ring of duelling(7)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2554",
"equipment_slot": "12"
@@ -27623,8 +25974,6 @@
"durability": null,
"name": "Ring of duelling(6)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2556",
"equipment_slot": "12"
@@ -27643,8 +25992,6 @@
"durability": null,
"name": "Ring of duelling(5)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2558",
"equipment_slot": "12"
@@ -27663,8 +26010,6 @@
"durability": null,
"name": "Ring of duelling(4)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2560",
"equipment_slot": "12"
@@ -27683,8 +26028,6 @@
"durability": null,
"name": "Ring of duelling(3)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2562",
"equipment_slot": "12"
@@ -27703,8 +26046,6 @@
"durability": null,
"name": "Ring of duelling(2)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2564",
"equipment_slot": "12"
@@ -27724,8 +26065,6 @@
"durability": null,
"name": "Ring of duelling(1)",
"tradeable": "true",
- "low_alchemy": "510",
- "high_alchemy": "765",
"archery_ticket_price": "0",
"id": "2566",
"equipment_slot": "12"
@@ -27746,8 +26085,6 @@
"durability": null,
"name": "Ring of forging",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "2568",
"equipment_slot": "12"
@@ -27769,8 +26106,6 @@
"durability": null,
"name": "Ring of life",
"tradeable": "true",
- "low_alchemy": "1410",
- "high_alchemy": "2115",
"archery_ticket_price": "0",
"id": "2570",
"equipment_slot": "12"
@@ -27789,8 +26124,6 @@
"durability": null,
"name": "Ring of wealth",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "2572",
"equipment_slot": "12"
@@ -27803,7 +26136,7 @@
"id": "2573"
},
{
- "examine": "Used by navigators to find their position in RuneScape.",
+ "examine": "Used by navigators to find their position in 2009Scape.",
"durability": null,
"name": "Sextant",
"weight": "0.2",
@@ -27814,14 +26147,12 @@
"examine": "A fine looking time piece.",
"durability": null,
"name": "Watch",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "2575"
},
{
- "examine": "A navigator's chart of RuneScape.",
+ "examine": "A navigator's chart of 2009Scape.",
"durability": null,
"name": "Chart",
"archery_ticket_price": "0",
@@ -27832,8 +26163,6 @@
"ge_buy_limit": "2",
"examine": "Lightweight boots ideal for rangers.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.2",
"equipment_slot": "10",
"lendable": "true",
@@ -27858,8 +26187,6 @@
"ge_buy_limit": "2",
"examine": "Slightly magical boots.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"equipment_slot": "10",
"lendable": "true",
@@ -27884,8 +26211,6 @@
"ge_buy_limit": "2",
"examine": "Endorsed by Robin Hood.",
"durability": null,
- "low_alchemy": "180",
- "high_alchemy": "270",
"weight": "0.2",
"equipment_slot": "0",
"lendable": "true",
@@ -27911,10 +26236,9 @@
"ge_buy_limit": "2",
"examine": "Black platebody with trim.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.07",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "74900",
@@ -27938,9 +26262,8 @@
"ge_buy_limit": "2",
"examine": "Black platelegs with trim.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "9",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "39900",
"name": "Black platelegs (t)",
@@ -27964,9 +26287,8 @@
"ge_buy_limit": "100",
"examine": "Black full helmet with trim.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "2",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "82200",
@@ -27991,10 +26313,9 @@
"ge_buy_limit": "2",
"examine": "Black kiteshield with trim.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "5",
"absorb": "1,0,2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "73000",
"name": "Black kiteshield (t)",
@@ -28017,10 +26338,9 @@
"ge_buy_limit": "2",
"examine": "Black platebody with gold trim.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.07",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "589000",
@@ -28044,9 +26364,8 @@
"ge_buy_limit": "2",
"examine": "Black platelegs with gold trim.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "9",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "216700",
"name": "Black platelegs (g)",
@@ -28070,9 +26389,8 @@
"ge_buy_limit": "100",
"examine": "Black full helmet with gold trim.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "2.7",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "364800",
@@ -28096,10 +26414,9 @@
"ge_buy_limit": "2",
"examine": "Black kiteshield with gold trim.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "5",
"absorb": "1,0,2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "355600",
"name": "Black kiteshield (g)",
@@ -28122,10 +26439,9 @@
"ge_buy_limit": "2",
"examine": "Adamant platebody with trim.",
"durability": null,
- "low_alchemy": "5120",
- "high_alchemy": "7680",
"weight": "9.07",
"absorb": "2,0,4",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "104000",
@@ -28150,10 +26466,9 @@
"ge_buy_limit": "2",
"examine": "These look heavy",
"durability": null,
- "low_alchemy": "2560",
- "high_alchemy": "3840",
"weight": "10",
"absorb": "1,0,3",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "23200",
"name": "Adam platelegs (t)",
@@ -28176,10 +26491,9 @@
"ge_buy_limit": "2",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5.8",
"absorb": "3,0,6",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "49100",
"name": "Adam kiteshield (t)",
@@ -28203,10 +26517,9 @@
"ge_buy_limit": "2",
"examine": "Adamant full helm with trim",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "2.7",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "85000",
@@ -28230,10 +26543,9 @@
"ge_buy_limit": "2",
"examine": "Adamant platebody with gold trim.",
"durability": null,
- "low_alchemy": "5120",
- "high_alchemy": "7680",
"weight": "9.07",
"absorb": "2,0,4",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "359500",
@@ -28258,10 +26570,9 @@
"ge_buy_limit": "2",
"examine": "Adamant platelegs with gold trim.",
"durability": null,
- "low_alchemy": "2560",
- "high_alchemy": "3840",
"weight": "10",
"absorb": "1,0,3",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "94300",
"name": "Adam platelegs (g)",
@@ -28284,10 +26595,9 @@
"ge_buy_limit": "2",
"examine": "Adamant kiteshield with gold trim.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "6",
"absorb": "3,0,6",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "170100",
"name": "Adam kiteshield (g)",
@@ -28311,10 +26621,9 @@
"ge_buy_limit": "2",
"examine": "Adamant full helmet with gold trim.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "2.7",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "222400",
@@ -28338,10 +26647,9 @@
"ge_buy_limit": "2",
"examine": "Rune platebody with gold trim.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -28367,10 +26675,9 @@
"ge_buy_limit": "2",
"examine": "Rune platelegs with gold trim.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "243400",
@@ -28396,10 +26703,9 @@
"ge_buy_limit": "100",
"examine": "Rune full helmet with gold trim.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -28424,10 +26730,9 @@
"ge_buy_limit": "2",
"examine": "Rune kiteshield with gold trim",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "392700",
@@ -28451,10 +26756,9 @@
"ge_buy_limit": "2",
"examine": "Rune platebody with trim.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -28479,10 +26783,9 @@
"ge_buy_limit": "2",
"examine": "Rune platelegs with trim!",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "95400",
@@ -28507,10 +26810,9 @@
"ge_buy_limit": "2",
"examine": "Rune full helmet with trim.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2.7",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -28535,11 +26837,11 @@
"ge_buy_limit": "2",
"examine": "A large, metal shield with a nice trim.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
+ "attack_anims": "",
"lendable": "true",
"grand_exchange_price": "160300",
"name": "Rune kiteshield (t)",
@@ -28565,8 +26867,6 @@
"durability": null,
"name": "Highwayman mask",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "2631",
"equipment_slot": "0"
@@ -28581,19 +26881,17 @@
"id": "2632"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "Parlez-vous francais? (Do you speak French?)",
- "durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "34300",
+ "durability": null,
"name": "Blue beret",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "2633"
+ "id": "2633",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -28605,19 +26903,17 @@
"id": "2634"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "Parlez-vous francais?(Do you speak French?)",
- "durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "117500",
+ "durability": null,
"name": "Black beret",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "2635"
+ "id": "2635",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -28629,19 +26925,17 @@
"id": "2636"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "Parlez-vous francais? (Do you speak French?)",
- "durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "328000",
+ "durability": null,
"name": "White beret",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "2637"
+ "id": "2637",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -28653,19 +26947,17 @@
"id": "2638"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "All for one and one for all!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "29100",
+ "durability": null,
"name": "Tan cavalier",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "2639"
+ "id": "2639",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -28677,19 +26969,17 @@
"id": "2640"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "All for one and one for all!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "23600",
+ "durability": null,
"name": "Dark cavalier",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "2641"
+ "id": "2641",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -28701,19 +26991,17 @@
"id": "2642"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "All for one and one for all!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "384500",
+ "durability": null,
"name": "Black cavalier",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "2643"
+ "id": "2643",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -28732,8 +27020,6 @@
"durability": null,
"name": "Red headband",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "2645",
"equipment_slot": "0"
@@ -28755,8 +27041,6 @@
"durability": null,
"name": "Black headband",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "2647",
"equipment_slot": "0"
@@ -28778,8 +27062,6 @@
"durability": null,
"name": "Brown headband",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "2649",
"equipment_slot": "0"
@@ -28800,8 +27082,6 @@
"durability": null,
"name": "Pirate's hat",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"hat": "true",
"id": "2651",
@@ -28821,10 +27101,9 @@
"ge_buy_limit": "2",
"examine": "Rune platebody in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -28849,10 +27128,9 @@
"ge_buy_limit": "2",
"examine": "Rune platelegs in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "281500",
@@ -28877,10 +27155,9 @@
"ge_buy_limit": "2",
"examine": "A full helmet in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -28905,10 +27182,9 @@
"ge_buy_limit": "2",
"examine": "A Rune kiteshield in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "499500",
@@ -28932,10 +27208,9 @@
"ge_buy_limit": "2",
"examine": "Rune platebody in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -28960,10 +27235,9 @@
"ge_buy_limit": "2",
"examine": "Rune platelegs in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "444000",
@@ -28988,10 +27262,9 @@
"ge_buy_limit": "2",
"examine": "Rune full helmet in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -29016,10 +27289,9 @@
"ge_buy_limit": "2",
"examine": "Rune kiteshield in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "795900",
@@ -29043,10 +27315,9 @@
"ge_buy_limit": "2",
"examine": "Rune platebody in the colours of Guthix.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -29071,10 +27342,9 @@
"ge_buy_limit": "2",
"examine": "Rune platelegs in the colours of Guthix.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "169900",
@@ -29099,10 +27369,9 @@
"ge_buy_limit": "2",
"examine": "A rune full helmet in the colours of Guthix.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -29127,10 +27396,9 @@
"ge_buy_limit": "2",
"examine": "Rune kiteshield in the colours of Guthix.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "247300",
@@ -29151,7 +27419,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29159,7 +27427,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29167,7 +27435,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29175,7 +27443,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29183,7 +27451,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29191,7 +27459,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29199,7 +27467,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29207,7 +27475,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29215,7 +27483,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29223,7 +27491,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29231,7 +27499,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29239,7 +27507,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29247,7 +27515,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29255,7 +27523,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29263,7 +27531,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29271,7 +27539,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29279,7 +27547,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29287,7 +27555,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29295,7 +27563,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29303,7 +27571,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29311,7 +27579,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29319,7 +27587,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29327,7 +27595,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29335,7 +27603,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29343,7 +27611,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29351,7 +27619,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29359,7 +27627,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29367,7 +27635,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29375,7 +27643,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29383,7 +27651,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29391,7 +27659,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29399,7 +27667,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29407,7 +27675,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29415,7 +27683,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29423,7 +27691,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29431,7 +27699,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29439,7 +27707,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29451,8 +27719,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2714"
@@ -29463,15 +27729,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2715"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29483,8 +27747,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2717"
@@ -29495,15 +27757,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2718"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29515,8 +27775,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2720"
@@ -29527,15 +27785,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2721"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29543,7 +27799,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29555,15 +27811,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2724"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29575,15 +27829,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2726"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29595,15 +27847,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2728"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29615,15 +27865,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2730"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29635,15 +27883,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2732"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29655,15 +27901,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2734"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29675,15 +27919,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2736"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29695,15 +27937,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2738"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29715,15 +27955,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2740"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29735,15 +27973,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2742"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29755,15 +27991,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2744"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29775,15 +28009,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2746"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29795,15 +28027,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2748"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29811,7 +28041,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29823,15 +28053,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2775"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29843,15 +28071,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2777"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29863,15 +28089,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2779"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29883,15 +28107,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2781"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29899,7 +28121,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29911,15 +28133,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2784"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29927,7 +28147,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29939,15 +28159,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2787"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29959,15 +28177,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2789"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29979,15 +28195,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2791"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -29995,7 +28209,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30003,7 +28217,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30015,14 +28229,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2795"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30030,7 +28242,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30042,14 +28254,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2798"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30061,14 +28271,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "2800"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30080,15 +28288,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2802"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30100,15 +28306,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2804"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30120,15 +28324,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2806"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30140,15 +28342,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2808"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30160,15 +28360,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2810"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30180,15 +28378,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2812"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30200,15 +28396,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2814"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30220,15 +28414,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2816"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30240,15 +28432,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2818"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30260,15 +28450,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2820"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30280,15 +28468,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2822"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30300,15 +28486,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2824"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30320,15 +28504,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2826"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30340,15 +28522,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2828"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30360,15 +28540,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "2830"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30376,7 +28554,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30384,7 +28562,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30392,7 +28570,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30400,7 +28578,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30408,7 +28586,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30423,7 +28601,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30438,7 +28616,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30453,7 +28631,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30461,7 +28639,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30469,7 +28647,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30484,7 +28662,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30499,7 +28677,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30514,7 +28692,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30522,7 +28700,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30530,7 +28708,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30538,7 +28716,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -30572,8 +28750,6 @@
"durability": null,
"name": "Wolfbone arrowtips",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "2861"
},
@@ -30584,8 +28760,6 @@
"durability": null,
"name": "Achey tree logs",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "1",
"archery_ticket_price": "0",
"id": "2862"
@@ -30624,16 +28798,14 @@
"shop_price": "25",
"ge_buy_limit": "1000",
"examine": "A large ogre arrow with a bone tip.",
- "durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
- "equipment_slot": "13",
"grand_exchange_price": "49",
+ "durability": null,
"name": "Ogre arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "2866",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"examine": "A large pair of ogre bellows. If filled with gas (1-3): A large pair of ogre bellows, it has x load(s) of swamp gas in it.",
@@ -30665,6 +28837,7 @@
"id": "2874"
},
{
+ "bankable": "false",
"examine": "An inflated toad.",
"durability": null,
"name": "Bloated toad",
@@ -30681,8 +28854,6 @@
"durability": null,
"name": "Raw chompy",
"tradeable": "true",
- "low_alchemy": "34",
- "high_alchemy": "51",
"weight": "10",
"archery_ticket_price": "0",
"id": "2876"
@@ -30704,8 +28875,6 @@
"durability": null,
"name": "Cooked chompy",
"tradeable": "true",
- "low_alchemy": "52",
- "high_alchemy": "78",
"weight": "10",
"archery_ticket_price": "0",
"id": "2878"
@@ -30739,8 +28908,6 @@
"shop_price": "500",
"examine": "More powerful than a normal bow, useful against large game birds.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1",
"attack_speed": "8",
"two_handed": "true",
@@ -30786,17 +28953,15 @@
"shop_price": "2000",
"ge_buy_limit": "100",
"examine": "A shield made in the Elemental Workshop.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "5",
"grand_exchange_price": "709",
+ "durability": null,
"name": "Elemental shield",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "2890",
- "bonuses": "0,0,0,0,0,0,0,0,6,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,6,0,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "100",
@@ -30811,8 +28976,6 @@
"examine": "This needs refining.",
"durability": null,
"name": "Elemental ore",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "2892"
@@ -30820,10 +28983,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "1570",
"examine": "Very stylish!",
+ "grand_exchange_price": "1570",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "2894",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -30844,8 +29009,6 @@
"ge_buy_limit": "100",
"examine": "Some fine werewolf clothing.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -30869,11 +29032,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "741",
"examine": "Made by werewolves for werewolves.",
+ "grand_exchange_price": "741",
"durability": null,
"name": "Robe bottoms",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "2898",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -30892,16 +29056,17 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "844",
"examine": "A silly pointed hat.",
"durability": null,
+ "weight": "0.4",
+ "equipment_slot": "0",
+ "grand_exchange_price": "844",
"name": "Hat",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": "true",
"id": "2900",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
- "equipment_slot": "0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -30916,11 +29081,12 @@
{
"shop_price": "650",
"ge_buy_limit": "10",
- "grand_exchange_price": "1039",
"examine": "These gloves from Canifis will keep my hands warm!",
+ "grand_exchange_price": "1039",
"durability": null,
"name": "Gloves",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "2902",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
@@ -30939,11 +29105,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "1359",
"examine": "Very stylish!",
+ "grand_exchange_price": "1359",
"durability": null,
"name": "Boots",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "2904",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -30964,8 +29131,6 @@
"ge_buy_limit": "100",
"examine": "Some fine werewolf clothing.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -30989,11 +29154,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "474",
"examine": "Made by werewolves for werewolves.",
+ "grand_exchange_price": "474",
"durability": null,
"name": "Robe bottoms",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "2908",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -31012,15 +29178,17 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "1445",
"examine": "A silly pointed hat.",
"durability": null,
+ "weight": "0.4",
+ "equipment_slot": "0",
+ "grand_exchange_price": "1445",
"tradeable": "true",
"name": "Hat",
"archery_ticket_price": "0",
+ "hat": "true",
"id": "2910",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
- "equipment_slot": "0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -31035,11 +29203,12 @@
{
"shop_price": "650",
"ge_buy_limit": "10",
- "grand_exchange_price": "1254",
"examine": "These gloves from Canifis will keep my hands warm!",
+ "grand_exchange_price": "1254",
"durability": null,
"name": "Gloves",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "2912",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
@@ -31058,11 +29227,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "1054",
"examine": "Very stylish!",
+ "grand_exchange_price": "1054",
"durability": null,
"name": "Boots",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "2914",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -31083,8 +29253,6 @@
"ge_buy_limit": "100",
"examine": "Some fine werewolf clothing.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -31108,11 +29276,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "603",
"examine": "Made by werewolves for werewolves.",
+ "grand_exchange_price": "603",
"durability": null,
"name": "Robe bottoms",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "2918",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -31131,15 +29300,17 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "997",
"examine": "A silly pointed hat.",
"durability": null,
+ "weight": "0.4",
+ "equipment_slot": "0",
+ "grand_exchange_price": "997",
"name": "Hat",
"tradeable": "true",
"archery_ticket_price": "0",
+ "hat": "true",
"id": "2920",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
- "equipment_slot": "0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -31154,11 +29325,12 @@
{
"shop_price": "650",
"ge_buy_limit": "10",
- "grand_exchange_price": "1221",
"examine": "These gloves from Canifis will keep my hands warm!",
+ "grand_exchange_price": "1221",
"durability": null,
"name": "Gloves",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "2922",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
@@ -31177,11 +29349,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "737",
"examine": "Very stylish!",
+ "grand_exchange_price": "737",
"durability": null,
"name": "Boots",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "2924",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -31202,8 +29375,6 @@
"ge_buy_limit": "100",
"examine": "Some fine werewolf clothing.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -31227,11 +29398,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "637",
"examine": "Made by werewolves for werewolves.",
+ "grand_exchange_price": "637",
"durability": null,
"name": "Robe bottoms",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "2928",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -31250,15 +29422,17 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "925",
"examine": "A silly pointed hat.",
"durability": null,
+ "weight": "0.4",
+ "equipment_slot": "0",
+ "grand_exchange_price": "925",
"name": "Hat",
"tradeable": "true",
"archery_ticket_price": "0",
+ "hat": "true",
"id": "2930",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
- "equipment_slot": "0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -31273,11 +29447,12 @@
{
"shop_price": "650",
"ge_buy_limit": "10",
- "grand_exchange_price": "1829",
"examine": "These gloves from Canifis will keep my hands warm!",
+ "grand_exchange_price": "1829",
"durability": null,
"name": "Gloves",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "2932",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
@@ -31296,11 +29471,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "988",
"examine": "Very stylish!",
+ "grand_exchange_price": "988",
"durability": null,
"name": "Boots",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "2934",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
@@ -31321,8 +29497,6 @@
"ge_buy_limit": "100",
"examine": "Some fine werewolf clothing.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -31346,11 +29520,12 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "927",
"examine": "Made by werewolves for werewolves.",
+ "grand_exchange_price": "927",
"durability": null,
"name": "Robe bottoms",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "2938",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
@@ -31369,15 +29544,17 @@
{
"shop_price": "650",
"ge_buy_limit": "100",
- "grand_exchange_price": "1209",
"examine": "A silly pointed hat.",
"durability": null,
+ "weight": "0.4",
+ "equipment_slot": "0",
+ "grand_exchange_price": "1209",
"name": "Hat",
"tradeable": "true",
"archery_ticket_price": "0",
+ "hat": "true",
"id": "2940",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
- "equipment_slot": "0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -31392,11 +29569,12 @@
{
"shop_price": "650",
"ge_buy_limit": "10",
- "grand_exchange_price": "634",
"examine": "These gloves from Canifis will keep my hands warm!",
+ "grand_exchange_price": "634",
"durability": null,
"name": "Gloves",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "2942",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
@@ -31430,8 +29608,6 @@
"examine": "A replica tinderbox made of solid gold.",
"durability": null,
"name": "Golden tinderbox",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "2946"
},
@@ -31439,9 +29615,7 @@
"examine": "A replica candle made of solid gold.",
"durability": null,
"name": "Golden candle",
- "low_alchemy": "120",
"tradeable": "false",
- "high_alchemy": "180",
"destroy": "true",
"archery_ticket_price": "0",
"id": "2947"
@@ -31468,16 +29642,12 @@
"examine": "A replica needle made of solid gold.",
"durability": null,
"name": "Golden needle",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "2951"
},
{
"examine": "A silver dagger that can prevent werewolves changing form.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
@@ -31498,8 +29668,6 @@
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "2953"
@@ -31510,8 +29678,6 @@
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "2954"
@@ -31524,8 +29690,6 @@
"durability": null,
"name": "Moonlight mead",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2955"
},
@@ -31542,8 +29706,6 @@
"examine": "An empty druid pouch.",
"durability": null,
"name": "Druid pouch",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2957"
},
@@ -31551,8 +29713,6 @@
"examine": "A druid pouch.",
"durability": null,
"name": "Druid pouch",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "2958"
},
@@ -31576,8 +29736,6 @@
"ge_buy_limit": "100",
"examine": "It's a silver sickle.",
"durability": null,
- "low_alchemy": "70",
- "high_alchemy": "105",
"weight": "1.6",
"weapon_interface": "6",
"defence_anim": "397",
@@ -31600,27 +29758,23 @@
"id": "2962"
},
{
+ "attack_anims": "390,390,381,390",
"examine": "It's a blessed silver sickle.",
"durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "1.5",
- "weapon_interface": "6",
- "defence_anim": "397",
- "equipment_slot": "3",
- "attack_anims": "390,390,381,390",
"name": "Silver sickle(b)",
+ "weight": "1.5",
"archery_ticket_price": "0",
+ "weapon_interface": "6",
"id": "2963",
- "bonuses": "0,0,0,0,0,0,1,1,1,1,0,1,5,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,1,1,0,1,5,0,0",
+ "defence_anim": "397",
+ "equipment_slot": "3"
},
{
"shop_price": "1",
"examine": "Used for washing your face, amongst other things.",
"durability": null,
"name": "Washing bowl",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2964"
@@ -31713,8 +29867,6 @@
"durability": null,
"name": "Sickle mould",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "2976"
@@ -31901,17 +30053,15 @@
"shop_price": "800",
"ge_buy_limit": "10",
"examine": "You should see the shark...",
- "durability": null,
- "low_alchemy": "35",
- "high_alchemy": "53",
- "weight": "0.3",
- "equipment_slot": "9",
"grand_exchange_price": "1500000",
+ "durability": null,
"name": "Pirate's hook",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "2997",
- "bonuses": "0,0,0,0,0,1,5,3,0,0,1,0,0,0,0"
+ "bonuses": "0,0,0,0,0,1,5,3,0,0,1,0,0,0,0",
+ "equipment_slot": "9"
},
{
"shop_price": "3",
@@ -31921,8 +30071,6 @@
"durability": null,
"name": "Clean toadflax",
"tradeable": "true",
- "low_alchemy": "19",
- "high_alchemy": "28",
"archery_ticket_price": "0",
"id": "2998"
},
@@ -31943,8 +30091,6 @@
"durability": null,
"name": "Clean snapdragon",
"tradeable": "true",
- "low_alchemy": "23",
- "high_alchemy": "35",
"archery_ticket_price": "0",
"id": "3000"
},
@@ -31964,8 +30110,6 @@
"durability": null,
"name": "Toadflax potion(unf)",
"tradeable": "true",
- "low_alchemy": "19",
- "high_alchemy": "28",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "3002"
@@ -31986,8 +30130,6 @@
"durability": null,
"name": "Snapdragon potion(unf)",
"tradeable": "true",
- "low_alchemy": "23",
- "high_alchemy": "35",
"archery_ticket_price": "0",
"id": "3004"
},
@@ -32006,8 +30148,6 @@
"durability": null,
"name": "Firework",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "3006"
},
@@ -32026,8 +30166,6 @@
"durability": null,
"name": "Energy potion(4)",
"tradeable": "true",
- "low_alchemy": "44",
- "high_alchemy": "66",
"archery_ticket_price": "0",
"id": "3008"
},
@@ -32048,8 +30186,6 @@
"durability": null,
"name": "Energy potion(3)",
"tradeable": "true",
- "low_alchemy": "44",
- "high_alchemy": "66",
"archery_ticket_price": "0",
"id": "3010"
},
@@ -32070,8 +30206,6 @@
"durability": null,
"name": "Energy potion(2)",
"tradeable": "true",
- "low_alchemy": "44",
- "high_alchemy": "66",
"archery_ticket_price": "0",
"id": "3012"
},
@@ -32092,8 +30226,6 @@
"durability": null,
"name": "Energy potion(1)",
"tradeable": "true",
- "low_alchemy": "44",
- "high_alchemy": "66",
"archery_ticket_price": "0",
"id": "3014"
},
@@ -32114,8 +30246,6 @@
"durability": null,
"name": "Super energy(4)",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"archery_ticket_price": "0",
"id": "3016"
},
@@ -32136,8 +30266,6 @@
"durability": null,
"name": "Super energy(3)",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"archery_ticket_price": "0",
"id": "3018"
},
@@ -32157,8 +30285,6 @@
"durability": null,
"name": "Super energy(2)",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"archery_ticket_price": "0",
"id": "3020"
},
@@ -32178,8 +30304,6 @@
"durability": null,
"name": "Super energy(1)",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"archery_ticket_price": "0",
"id": "3022"
},
@@ -32200,8 +30324,6 @@
"durability": null,
"name": "Super restore(4)",
"tradeable": "true",
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "3024"
@@ -32223,8 +30345,6 @@
"durability": null,
"name": "Super restore(3)",
"tradeable": "true",
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "3026"
@@ -32245,8 +30365,6 @@
"durability": null,
"name": "Super restore(2)",
"tradeable": "true",
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "3028"
@@ -32267,8 +30385,6 @@
"durability": null,
"name": "Super restore(1)",
"tradeable": "true",
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "3030"
@@ -32369,8 +30485,6 @@
"durability": null,
"name": "Magic potion(4)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "3040"
},
@@ -32390,8 +30504,6 @@
"durability": null,
"name": "Magic potion(3)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "3042"
},
@@ -32411,8 +30523,6 @@
"durability": null,
"name": "Magic potion(2)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "3044"
},
@@ -32432,8 +30542,6 @@
"durability": null,
"name": "Magic potion(1)",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "3046"
},
@@ -32498,7 +30606,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "6800",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -32515,10 +30622,9 @@
"bonuses": "7,-1,28,12,0,2,3,1,12,0,0,35,0,0,0",
"requirements": "{0,30}-{6,30}",
"durability": null,
- "high_alchemy": "10200",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Lava battlestaff"
@@ -32528,7 +30634,6 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "18000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -32546,10 +30651,9 @@
"requirements": "{0,40}-{6,40}",
"shop_price": "160",
"durability": null,
- "high_alchemy": "27000",
"weight": "2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic lava staff"
@@ -32627,6 +30731,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -32645,6 +30750,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -32661,8 +30767,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "19",
- "high_alchemy": "28",
"weight": "0.9",
"attack_speed": "4",
"two_handed": "true",
@@ -32673,6 +30777,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "702",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Bronze claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32684,8 +30789,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"attack_speed": "4",
"two_handed": "true",
@@ -32696,6 +30799,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "13",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Iron claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32708,8 +30812,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "70",
- "high_alchemy": "105",
"weight": "0.9",
"attack_speed": "4",
"two_handed": "true",
@@ -32720,6 +30822,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "20",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Steel claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32731,8 +30834,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "144",
- "high_alchemy": "216",
"weight": "6",
"attack_speed": "4",
"two_handed": "true",
@@ -32743,6 +30844,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "940",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Black claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32754,8 +30856,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "190",
- "high_alchemy": "285",
"weight": "0.9",
"attack_speed": "4",
"two_handed": "true",
@@ -32766,6 +30866,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "114",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Mithril claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32777,8 +30878,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "480",
- "high_alchemy": "720",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "9",
@@ -32788,6 +30887,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "649",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Adamant claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32800,8 +30900,6 @@
"examine": "A set of fighting claws.",
"has_special": "true",
"durability": null,
- "low_alchemy": "4800",
- "high_alchemy": "7200",
"weight": "0.9",
"attack_speed": "4",
"two_handed": "true",
@@ -32813,6 +30911,7 @@
"attack_anims": "390,390,390,390",
"lendable": "true",
"grand_exchange_price": "6939",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Rune claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -32845,13 +30944,13 @@
"ge_buy_limit": "100",
"examine": "Boots made for general climbing; rocks a speciality.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "7",
"destroy": "true",
"weight": "0.3",
+ "equip_audio": "2237",
"equipment_slot": "10",
"grand_exchange_price": "51400",
"name": "Climbing boots",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "3105",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,2,0,0,0"
@@ -32869,12 +30968,11 @@
"examine": "Climbing boots with spikes.",
"durability": null,
"name": "Spiked boots",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "3107",
"bonuses": "0,0,0,0,0,0,2,2,0,0,0,2,0,0,0",
+ "equip_audio": "2237",
"equipment_slot": "10"
},
{
@@ -32973,8 +31071,6 @@
"ge_buy_limit": "10",
"examine": "A solid stone shield.",
"durability": null,
- "low_alchemy": "22400",
- "high_alchemy": "33600",
"weight": "6.8",
"absorb": "5,0,10",
"equipment_slot": "5",
@@ -33030,55 +31126,62 @@
"examine": "These blackened Jogre bones have been somehow burnt.",
"durability": null,
"name": "Burnt jogre bones",
+ "tradeable": "false",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "3127"
},
{
- "examine": "See article",
+ "examine": "Burnt Jogre bones smothered with raw Karambwanji Paste.",
"durability": null,
"name": "Pasty jogre bones",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "0.8",
"archery_ticket_price": "0",
"id": "3128"
},
{
- "examine": "See article",
+ "examine": "Burnt Jogre bones smothered with cooked Karambwanji paste.",
"durability": null,
"name": "Pasty jogre bones",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "0.8",
"archery_ticket_price": "0",
"id": "3129"
},
{
- "examine": "Burnt Jogre bones marinated in lovely Karambwanji sauce. Perfect./Burnt Jogre bones marinated in lovely Karabwanji sauce. Not quite right.",
+ "examine": "Burnt Jogre bones marinated in a lovely Karambwanji sauce. Perfect.",
"durability": null,
"name": "Marinated j' bones",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "0.8",
"archery_ticket_price": "0",
"id": "3130"
},
{
- "examine": "See article",
+ "examine": "Jogre bones smothered with raw Karambwanji paste.",
"durability": null,
"name": "Pasty jogre bones",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "0.8",
"archery_ticket_price": "0",
"id": "3131"
},
{
- "examine": "See article",
+ "examine": "Jogre bones smothered with cooked Karambwanji paste.",
"durability": null,
"name": "Pasty jogre bones",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "0.8",
"archery_ticket_price": "0",
"id": "3132"
},
{
- "examine": "Burnt Jogre bones marinated in lovely Karambwanji sauce. Perfect./Burnt Jogre bones marinated in lovely Karabwanji sauce. Not quite right.",
+ "examine": "Jogre Bones marinated in Karambwanji sauce. Not quite right.",
"durability": null,
"name": "Marinated j' bones",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "0.8",
"archery_ticket_price": "0",
"id": "3133"
},
@@ -33133,8 +31236,6 @@
"examine": "A series of connected metal rings.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"weight": "6.8",
"absorb": "4,0,9",
"equipment_slot": "4",
@@ -33164,8 +31265,6 @@
"durability": null,
"name": "Raw karambwan",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "3142"
@@ -33187,8 +31286,6 @@
"durability": null,
"name": "Cooked karambwan",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "3144"
@@ -33206,8 +31303,6 @@
"examine": "Cooked octopus. It looks poorly cooked and quite dangerous.",
"durability": null,
"name": "Poison karambwan",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "3146"
@@ -33219,8 +31314,6 @@
"durability": null,
"name": "Cooked karambwan",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "3147"
@@ -33236,8 +31329,6 @@
"examine": "Small brightly coloured tropical fish.",
"durability": null,
"name": "Raw karambwanji",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "3150"
},
@@ -33245,8 +31336,6 @@
"examine": "Small brightly coloured tropical fish.",
"durability": null,
"name": "Karambwanji",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.99",
"archery_ticket_price": "0",
"id": "3151"
@@ -33255,8 +31344,6 @@
"examine": "Freshly made octopus paste. It smells quite nauseating.",
"durability": null,
"name": "Karambwan paste",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "3152"
},
@@ -33264,8 +31351,6 @@
"examine": "Freshly made octopus paste. It smells quite nauseating.",
"durability": null,
"name": "Karambwan paste",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "3153"
},
@@ -33273,8 +31358,6 @@
"examine": "Freshly made octopus paste. It smells quite nauseating.",
"durability": null,
"name": "Karambwan paste",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "3154"
},
@@ -33282,8 +31365,6 @@
"examine": "This paste smells of raw fish./This paste smells of cooked fish.",
"durability": null,
"name": "Karambwanji paste",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "3155"
},
@@ -33291,8 +31372,6 @@
"examine": "This paste smells of raw fish./This paste smells of cooked fish.",
"durability": null,
"name": "Karambwanji paste",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "3156"
},
@@ -33301,16 +31380,14 @@
"shop_price": "5",
"ge_buy_limit": "100",
"examine": "A wide bodied and thin necked vessel, encrusted with sea salt. / The Karambwan Vessel is loaded with Karambwanji",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "3",
- "equipment_slot": "3",
"grand_exchange_price": "221",
+ "durability": null,
"name": "Karambwan vessel",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "3157"
+ "id": "3157",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "100",
@@ -33329,8 +31406,6 @@
"durability": null,
"name": "Karambwan vessel",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "3159"
@@ -33356,7 +31431,6 @@
"durability": null,
"name": "Sliced banana",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "3162"
},
@@ -33374,8 +31448,6 @@
"examine": "A very strong spirit brewed in Karamja.",
"durability": null,
"name": "Karamjan rum",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "3164"
},
@@ -33384,8 +31456,6 @@
"examine": "A very strong spirit brewed in Karamja.",
"durability": null,
"name": "Karamjan rum",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "3165"
},
@@ -33401,8 +31471,6 @@
"examine": "It's the skin of a (hopefully) dead monkey.",
"durability": null,
"name": "Monkey skin",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "3167"
},
@@ -33425,177 +31493,163 @@
},
{
"turn90cw_anim": "1207",
- "examine": "A bronze tipped spear.",
+ "examine": "A Karambwan poisoned bronze tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "10",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "266",
"stand_anim": "813",
- "tradeable": "true",
+ "name": "Bronze spear(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3170",
"stand_turn_anim": "1209",
- "bonuses": "5,5,5,0,0,1,1,0,0,0,0,6,0,0,0",
- "durability": null,
- "high_alchemy": "15",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Bronze spear(kp)"
+ "bonuses": "5,5,5,0,0,1,1,0,0,0,0,6,0,0,0"
},
{
"turn90cw_anim": "1207",
- "examine": "An iron tipped spear.",
+ "examine": "A Karambwan poisoned iron tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "36",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "304",
"stand_anim": "813",
- "tradeable": "true",
+ "name": "Iron spear(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3171",
"stand_turn_anim": "1209",
- "bonuses": "8,8,8,0,0,1,1,0,0,0,0,10,0,0,0",
- "durability": null,
- "high_alchemy": "54",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Iron spear(kp)"
+ "bonuses": "8,8,8,0,0,1,1,0,0,0,0,10,0,0,0"
},
{
+ "requirements": "{0,5}",
"turn90cw_anim": "1207",
- "examine": "A steel tipped spear.",
+ "examine": "A Karambwan poisoned steel tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "130",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "503",
"stand_anim": "813",
- "tradeable": "true",
+ "name": "Steel spear(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3172",
"stand_turn_anim": "1209",
- "bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0",
- "requirements": "{0,5}",
- "durability": null,
- "high_alchemy": "195",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Steel spear(kp)"
+ "bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0"
},
{
+ "requirements": "{0,20}",
"turn90cw_anim": "1207",
- "examine": "A mithril tipped spear.",
+ "examine": "A Karambwan poisoned mithril tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "338",
+ "durability": null,
+ "weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "368",
"stand_anim": "813",
- "tradeable": "true",
+ "name": "Mithril spear(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3173",
"stand_turn_anim": "1209",
- "bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0",
- "requirements": "{0,20}",
- "durability": null,
- "high_alchemy": "507",
- "weight": "1.8",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Mithril spear(kp)"
+ "bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0"
},
{
+ "requirements": "{0,30}",
"turn90cw_anim": "1207",
- "examine": "An adamant tipped spear.",
+ "examine": "A Karambwan poisoned adamant tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "832",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "1093",
"stand_anim": "813",
- "tradeable": "true",
+ "name": "Adamant spear(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3174",
"stand_turn_anim": "1209",
- "bonuses": "24,24,24,0,0,1,1,0,0,0,0,28,0,0,0",
- "requirements": "{0,30}",
- "durability": null,
- "high_alchemy": "1248",
- "weight": "2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Adamant spear(kp)"
+ "bonuses": "24,24,24,0,0,1,1,0,0,0,0,28,0,0,0"
},
{
+ "requirements": "{0,40}",
"turn90cw_anim": "1207",
- "examine": "A rune tipped spear.",
+ "examine": "\tA Karambwan poisoned rune tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "8320",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "12089",
"stand_anim": "813",
- "tradeable": "true",
+ "name": "Rune spear(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3175",
"stand_turn_anim": "1209",
- "bonuses": "36,36,36,0,0,1,1,0,0,0,0,42,0,0,0",
- "requirements": "{0,40}",
- "durability": null,
- "high_alchemy": "12480",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "lendable": "true",
- "name": "Rune spear(kp)"
+ "bonuses": "36,36,36,0,0,1,1,0,0,0,0,42,0,0,0"
},
{
"turn90cw_anim": "1207",
- "examine": "A dragon tipped spear.",
+ "examine": "A Karambwan poisoned dragon tipped spear.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "24960",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -33605,7 +31659,6 @@
"attack_anims": "2080,2081,2082,2080",
"grand_exchange_price": "37446",
"stand_anim": "813",
- "tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "3176",
@@ -33613,11 +31666,10 @@
"bonuses": "55,55,55,0,0,5,5,5,5,5,0,60,0,0,0",
"requirements": "{0,60}",
"durability": null,
- "high_alchemy": "37440",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
- "lendable": "true",
"name": "Dragon spear(kp)"
},
{
@@ -33635,7 +31687,7 @@
"id": "3178"
},
{
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are smallish monkey bones.",
"grand_exchange_price": "383",
"durability": null,
"name": "Monkey bones",
@@ -33645,7 +31697,7 @@
"id": "3179"
},
{
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are medium sized monkey bones.",
"grand_exchange_price": "383",
"durability": null,
"name": "Monkey bones",
@@ -33655,7 +31707,7 @@
"id": "3180"
},
{
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are quite large monkey bones.",
"grand_exchange_price": "383",
"durability": null,
"name": "Monkey bones",
@@ -33665,7 +31717,7 @@
"id": "3181"
},
{
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are quite large monkey bones.",
"grand_exchange_price": "383",
"durability": null,
"name": "Monkey bones",
@@ -33676,7 +31728,7 @@
},
{
"ge_buy_limit": "10000",
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are small monkey bones.",
"grand_exchange_price": "588",
"durability": null,
"name": "Monkey bones",
@@ -33695,7 +31747,7 @@
"id": "3184"
},
{
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are smallish monkey bones. They smell extremely nauseating.",
"grand_exchange_price": "383",
"durability": null,
"name": "Monkey bones",
@@ -33705,7 +31757,7 @@
"id": "3185"
},
{
- "examine": "These are small/medium sized monkey bones.",
+ "examine": "These are small monkey bones. They smell extremely nauseating.",
"grand_exchange_price": "383",
"durability": null,
"name": "Monkey bones",
@@ -33732,8 +31784,6 @@
"durability": null,
"name": "Cleaning cloth",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "1",
"archery_ticket_price": "0",
"id": "3188"
@@ -33752,7 +31802,6 @@
"turn90cw_anim": "1207",
"examine": "A bronze halberd.",
"walk_anim": "1205",
- "low_alchemy": "32",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -33770,9 +31819,9 @@
"bonuses": "7,8,0,-4,0,-1,1,2,0,0,0,8,0,0,0",
"shop_price": "104",
"durability": null,
- "high_alchemy": "48",
"weight": "3",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Bronze halberd"
},
@@ -33790,7 +31839,6 @@
"turn90cw_anim": "1207",
"examine": "An iron halberd.",
"walk_anim": "1205",
- "low_alchemy": "145",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -33808,9 +31856,9 @@
"bonuses": "9,12,0,-4,0,-1,1,2,0,0,0,12,0,0,0",
"shop_price": "364",
"durability": null,
- "high_alchemy": "218",
"weight": "3.1",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Iron halberd"
},
@@ -33828,7 +31876,6 @@
"turn90cw_anim": "1207",
"examine": "A steel halberd.",
"walk_anim": "1205",
- "low_alchemy": "400",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -33847,9 +31894,9 @@
"requirements": "{0,5}",
"shop_price": "1300",
"durability": null,
- "high_alchemy": "600",
"weight": "3",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Steel halberd"
},
@@ -33867,7 +31914,6 @@
"turn90cw_anim": "1207",
"examine": "A black halberd.",
"walk_anim": "1205",
- "low_alchemy": "768",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -33883,12 +31929,12 @@
"id": "3196",
"stand_turn_anim": "1209",
"bonuses": "19,25,0,-4,0,-1,2,3,0,0,0,20,0,0,0",
- "requirements": "{0,5}-{2,10}",
+ "requirements": "{0,10}-{2,5}",
"shop_price": "2496",
"durability": null,
- "high_alchemy": "1152",
"weight": "3",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Black halberd"
},
@@ -33906,7 +31952,6 @@
"turn90cw_anim": "1207",
"examine": "A mithril halberd.",
"walk_anim": "1205",
- "low_alchemy": "1352",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -33925,9 +31970,9 @@
"requirements": "{0,20}-{2,10}",
"shop_price": "3380",
"durability": null,
- "high_alchemy": "2028",
"weight": "2.7",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Mithril halberd"
},
@@ -33945,7 +31990,6 @@
"turn90cw_anim": "1207",
"examine": "An adamant halberd.",
"walk_anim": "1205",
- "low_alchemy": "3328",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -33964,9 +32008,9 @@
"requirements": "{0,30}-{2,15}",
"shop_price": "8320",
"durability": null,
- "high_alchemy": "4992",
"weight": "3.6",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Adamant halberd"
},
@@ -33984,7 +32028,6 @@
"turn90cw_anim": "1207",
"examine": "A rune halberd.",
"walk_anim": "1205",
- "low_alchemy": "51200",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -34003,9 +32046,9 @@
"requirements": "{0,40}-{2,20}",
"shop_price": "128000",
"durability": null,
- "high_alchemy": "76800",
"weight": "3",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Rune halberd"
@@ -34025,7 +32068,6 @@
"examine": "A dragon halberd.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "130000",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -34044,9 +32086,9 @@
"requirements": "{0,60}-{2,30}",
"shop_price": "325000",
"durability": null,
- "high_alchemy": "195000",
"weight": "3.1",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Dragon halberd"
@@ -34078,8 +32120,6 @@
"examine": "Lord Iorwerth's crystal pendant.",
"durability": null,
"name": "Crystal pendant",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "3208",
"equipment_slot": "2"
@@ -34100,8 +32140,6 @@
"durability": null,
"name": "Limestone",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "3211"
@@ -34119,8 +32157,6 @@
"examine": "Some quicklime.",
"durability": null,
"name": "Quicklime",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "3213"
@@ -34137,8 +32173,6 @@
"examine": "A pile of ground sulphur.",
"durability": null,
"name": "Ground sulphur",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "3215"
@@ -34217,8 +32251,6 @@
"examine": "A strip of cloth.",
"durability": null,
"name": "Strip of cloth",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "3224"
},
@@ -34230,8 +32262,6 @@
"durability": null,
"name": "Raw rabbit",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "3226"
@@ -34253,8 +32283,6 @@
"durability": null,
"name": "Cooked rabbit",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "11",
"archery_ticket_price": "0",
"id": "3228"
},
@@ -34324,7 +32352,7 @@
"id": "3240"
},
{
- "examine": "One of RuneScape's many citizens. In Karamja or South of Falador: One of RuneScape's many citizens, apparently trying to be an explorer. In Lumbridge: One of Lumbridge's many citizens. In a Falador home: One of RuneScape's many citizens. He looks worried ",
+ "examine": "One of 2009Scape's many citizens.",
"durability": null,
"name": "Man",
"archery_ticket_price": "0",
@@ -34469,7 +32497,6 @@
"durability": null,
"name": "Vampire dust",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "3325"
},
@@ -34486,17 +32513,15 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "An easy-to-make, marshy-coloured, Mort Myre snail shell helmet.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "56",
+ "durability": null,
"name": "Myre snelm",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "3327",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34513,8 +32538,6 @@
"ge_buy_limit": "100",
"examine": "Rounded: A red and black snail shell helmet. Pointed: A red and black pointed snail shell helmet.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"equipment_slot": "0",
"grand_exchange_price": "291",
@@ -34538,16 +32561,14 @@
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "An easy-to-make, muddy-yellow, Mort Myre snail shell helmet.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "0",
"grand_exchange_price": "57",
+ "durability": null,
"name": "Ochre snelm",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3331",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34562,17 +32583,15 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "A moody blue snail shell helmet, mort myre snail shell helm",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "1.9",
- "equipment_slot": "0",
"grand_exchange_price": "73",
+ "durability": null,
"name": "Bruise blue snelm",
"tradeable": "true",
+ "weight": "1.9",
"archery_ticket_price": "0",
"id": "3333",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34587,17 +32606,15 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "An easy-to-make, orange-and-bark coloured, Mort Myre snail shell helmet.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "63",
+ "durability": null,
"name": "Broken bark snelm",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "3335",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34612,17 +32629,15 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "An easy-to-make, marshy-coloured, Mort Myre snail shell helmet.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "58",
+ "durability": null,
"name": "Myre snelm",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "3337",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34639,8 +32654,6 @@
"ge_buy_limit": "100",
"examine": "Rounded: A red and black snail shell helmet. Pointed: A red and black pointed snail shell helmet.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"equipment_slot": "0",
"grand_exchange_price": "147",
@@ -34664,16 +32677,14 @@
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "An easy-to-make, muddy-yellow, Mort Myre snail shell helmet.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "0",
"grand_exchange_price": "54",
+ "durability": null,
"name": "Ochre snelm",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3341",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34688,17 +32699,15 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "A moody blue snail shell helmet, mort myre snail shell helm",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "1.9",
- "equipment_slot": "0",
"grand_exchange_price": "248",
+ "durability": null,
"name": "Bruise blue snelm",
"tradeable": "true",
+ "weight": "1.9",
"archery_ticket_price": "0",
"id": "3343",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -34716,8 +32725,6 @@
"durability": null,
"name": "Blamish myre shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3345"
@@ -34738,8 +32745,6 @@
"durability": null,
"name": "Blamish red shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3347"
@@ -34760,8 +32765,6 @@
"durability": null,
"name": "Blamish ochre shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3349"
@@ -34782,8 +32785,6 @@
"durability": null,
"name": "Blamish blue shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "3351"
},
@@ -34803,8 +32804,6 @@
"durability": null,
"name": "Blamish bark shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3353"
@@ -34825,8 +32824,6 @@
"durability": null,
"name": "Blamish myre shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3355"
@@ -34847,8 +32844,6 @@
"durability": null,
"name": "Blamish red shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3357"
@@ -34869,8 +32864,6 @@
"durability": null,
"name": "Blamish ochre shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "3359"
@@ -34891,8 +32884,6 @@
"durability": null,
"name": "Blamish blue shell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "3361"
},
@@ -34913,8 +32904,6 @@
"durability": null,
"name": "Thin snail",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "2",
"archery_ticket_price": "0",
"id": "3363"
@@ -34935,8 +32924,6 @@
"durability": null,
"name": "Lean snail",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "2",
"archery_ticket_price": "0",
"id": "3365"
@@ -34958,8 +32945,6 @@
"durability": null,
"name": "Fat snail",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "3367"
},
@@ -34979,8 +32964,6 @@
"durability": null,
"name": "Thin snail meat",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "3",
"archery_ticket_price": "0",
"id": "3369"
@@ -35001,8 +32984,6 @@
"durability": null,
"name": "Lean snail meat",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "3371"
},
@@ -35022,8 +33003,6 @@
"durability": null,
"name": "Fat snail meat",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "4.5",
"archery_ticket_price": "0",
"id": "3373"
@@ -35052,8 +33031,6 @@
"durability": null,
"name": "Sample bottle",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "3377"
},
@@ -35092,7 +33069,7 @@
"grand_exchange_price": "274",
"durability": null,
"name": "Cooked slimy eel",
- "tradeable": "false",
+ "tradeable": "true",
"destroy": "false",
"weight": "2",
"archery_ticket_price": "0",
@@ -35112,8 +33089,6 @@
"ge_buy_limit": "100",
"examine": "A wooden helmet.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.9",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -35139,8 +33114,6 @@
"ge_buy_limit": "100",
"examine": "Provides good protection.",
"durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
"weight": "4.5",
"absorb": "6,3,0",
"equipment_slot": "4",
@@ -35167,8 +33140,6 @@
"ge_buy_limit": "100",
"examine": "These should protect my legs.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3.6",
"absorb": "4,2,0",
"equipment_slot": "7",
@@ -35194,8 +33165,6 @@
"ge_buy_limit": "100",
"examine": "These should keep my hands safe.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "0.9",
"equipment_slot": "9",
"lendable": "true",
@@ -35220,9 +33189,8 @@
"ge_buy_limit": "100",
"examine": "Wooden foot protection.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "0.9",
+ "equip_audio": "2237",
"equipment_slot": "10",
"lendable": "true",
"grand_exchange_price": "3808",
@@ -35346,8 +33314,6 @@
"durability": null,
"name": "Ash potion(unf)",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "3406"
},
@@ -35364,8 +33330,6 @@
"examine": "4 doses serum 207 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 207 (4)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3408"
},
@@ -35373,8 +33337,6 @@
"examine": "3 doses serum 207 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 207 (3)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3410"
},
@@ -35382,8 +33344,6 @@
"examine": "2 doses serum 207 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 207 (2)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3412"
},
@@ -35391,8 +33351,6 @@
"examine": "1 dose serum 207 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 207 (1)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3414"
},
@@ -35401,8 +33359,6 @@
"examine": "3 doses permanent serum 208 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 208 (4)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3416"
},
@@ -35411,8 +33367,6 @@
"examine": "3 doses permanent serum 208 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 208 (3)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3417"
},
@@ -35421,8 +33375,6 @@
"examine": "2 doses permanent serum 208 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 208 (2)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3418"
},
@@ -35431,8 +33383,6 @@
"examine": "1 dose permanent serum 208 as described in Herbi Flax's diary.",
"durability": null,
"name": "Serum 208 (1)",
- "low_alchemy": "5",
- "high_alchemy": "8",
"archery_ticket_price": "0",
"id": "3419"
},
@@ -35444,8 +33394,6 @@
"durability": null,
"name": "Limestone brick",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "3420"
@@ -35467,8 +33415,6 @@
"durability": null,
"name": "Olive oil(4)",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "3422"
},
@@ -35489,8 +33435,6 @@
"durability": null,
"name": "Olive oil(3)",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "3424"
},
@@ -35511,8 +33455,6 @@
"durability": null,
"name": "Olive oil(2)",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "3426"
},
@@ -35533,8 +33475,6 @@
"durability": null,
"name": "Olive oil(1)",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "3428"
},
@@ -35554,8 +33494,6 @@
"durability": null,
"name": "Sacred oil(4)",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3430"
},
@@ -35575,8 +33513,6 @@
"durability": null,
"name": "Sacred oil(3)",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3432"
},
@@ -35596,8 +33532,6 @@
"durability": null,
"name": "Sacred oil(2)",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3434"
},
@@ -35617,8 +33551,6 @@
"durability": null,
"name": "Sacred oil(1)",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3436"
},
@@ -35638,8 +33570,6 @@
"durability": null,
"name": "Pyre logs",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "3438"
},
@@ -35659,8 +33589,6 @@
"durability": null,
"name": "Oak pyre logs",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "3440"
},
@@ -35680,8 +33608,6 @@
"durability": null,
"name": "Willow pyre logs",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "3442"
@@ -35702,8 +33628,6 @@
"durability": null,
"name": "Maple pyre logs",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "3444"
@@ -35724,8 +33648,6 @@
"durability": null,
"name": "Yew pyre logs",
"tradeable": "true",
- "low_alchemy": "192",
- "high_alchemy": "288",
"weight": "1",
"archery_ticket_price": "0",
"id": "3446"
@@ -35746,8 +33668,6 @@
"durability": null,
"name": "Magic pyre logs",
"tradeable": "true",
- "low_alchemy": "256",
- "high_alchemy": "384",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "3448"
@@ -35908,8 +33828,6 @@
"durability": null,
"name": "Fine cloth",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1",
"archery_ticket_price": "0",
"id": "3470"
@@ -35927,41 +33845,35 @@
"requirements": "{1,10}",
"ge_buy_limit": "2",
"examine": "Black plateskirt with trim.",
- "durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
- "weight": "8",
- "equipment_slot": "7",
"grand_exchange_price": "3077",
+ "durability": null,
"name": "Black plateskirt (t)",
"tradeable": "true",
+ "weight": "8",
"archery_ticket_price": "0",
"id": "3472",
- "bonuses": "0,0,0,-21,-7,21,20,19,-4,20,3,0,0,0,0"
+ "bonuses": "0,0,0,-21,-7,21,20,19,-4,20,3,0,0,0,0",
+ "equipment_slot": "7"
},
{
"requirements": "{1,10}",
"ge_buy_limit": "2",
"examine": "Black plateskirt with gold trim.",
- "durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
- "weight": "9",
- "equipment_slot": "7",
"grand_exchange_price": "10600",
+ "durability": null,
"name": "Black plateskirt (g)",
"tradeable": "true",
+ "weight": "9",
"archery_ticket_price": "0",
"id": "3473",
- "bonuses": "0,0,0,-21,-7,21,20,19,-4,20,3,0,0,0,0"
+ "bonuses": "0,0,0,-21,-7,21,20,19,-4,20,3,0,0,0,0",
+ "equipment_slot": "7"
},
{
"requirements": "{1,30}",
"ge_buy_limit": "2",
"examine": "Adamant plateskirt with trim.",
"durability": null,
- "low_alchemy": "2560",
- "high_alchemy": "3840",
"weight": "9",
"absorb": "1,0,3",
"equipment_slot": "7",
@@ -35977,8 +33889,6 @@
"ge_buy_limit": "2",
"examine": "Adamant plateskirt with gold trim.",
"durability": null,
- "low_alchemy": "2560",
- "high_alchemy": "3840",
"weight": "9",
"absorb": "1,0,3",
"equipment_slot": "7",
@@ -35994,8 +33904,6 @@
"ge_buy_limit": "2",
"examine": "Rune plateskirt with gold trim.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -36013,8 +33921,6 @@
"ge_buy_limit": "2",
"examine": "Rune plateskirt with trim.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "8",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -36031,8 +33937,6 @@
"ge_buy_limit": "2",
"examine": "Rune plateskirt in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -36049,8 +33953,6 @@
"ge_buy_limit": "2",
"examine": "Rune plateskirt in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -36067,8 +33969,6 @@
"ge_buy_limit": "2",
"examine": "Rune plateskirt in the colours of Guthix.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -36083,12 +33983,11 @@
{
"requirements": "{1,40}",
"ge_buy_limit": "2",
- "examine": "Rune platebody with complete gold trim & plating.",
+ "examine": "Rune platebody with complete gold trim & plating.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "10",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -36113,10 +34012,9 @@
"ge_buy_limit": "2",
"examine": "Rune platelegs with gold plate.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "2200000",
@@ -36140,8 +34038,6 @@
"ge_buy_limit": "2",
"examine": "Rune plateskirt with gold plate.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -36159,10 +34055,9 @@
"ge_buy_limit": "2",
"examine": "Rune full helmet with gold plate.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -36187,10 +34082,9 @@
"ge_buy_limit": "2",
"examine": "Rune kiteshield with gold plate.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "515400",
@@ -36211,7 +34105,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36219,7 +34113,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36227,7 +34121,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36235,7 +34129,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36243,7 +34137,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36251,7 +34145,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36259,7 +34153,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36267,7 +34161,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36275,7 +34169,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36283,7 +34177,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36291,7 +34185,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36299,7 +34193,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36307,7 +34201,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36315,7 +34209,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36323,7 +34217,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36331,7 +34225,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36339,7 +34233,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36347,7 +34241,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36355,7 +34249,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36363,7 +34257,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36371,7 +34265,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36383,15 +34277,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3511"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36399,7 +34291,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36407,7 +34299,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36415,7 +34307,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36423,7 +34315,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36435,15 +34327,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3517"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36455,15 +34345,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3519"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36475,15 +34363,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3521"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36495,15 +34381,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3523"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36511,7 +34395,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36519,7 +34403,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36531,15 +34415,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3527"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36551,15 +34433,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3529"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36571,15 +34451,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3531"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36591,15 +34469,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3533"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36611,15 +34487,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3535"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36631,15 +34505,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3537"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36651,15 +34523,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3539"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36671,15 +34541,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3541"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36691,15 +34559,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3543"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36711,15 +34577,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3545"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36731,15 +34595,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3547"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36751,15 +34613,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3549"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36771,15 +34631,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3551"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36791,15 +34649,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3553"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36811,15 +34667,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3555"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36831,15 +34685,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3557"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36851,15 +34703,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3559"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36871,15 +34721,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3561"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36891,15 +34739,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3563"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36911,14 +34757,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3565"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36930,14 +34774,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3567"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36949,14 +34791,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3569"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36968,14 +34808,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3571"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36983,7 +34821,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36991,7 +34829,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -36999,7 +34837,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37011,14 +34849,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3576"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37030,14 +34866,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "3578"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37045,7 +34879,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37057,15 +34891,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3581"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37077,15 +34909,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3583"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37097,15 +34927,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3585"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37117,15 +34945,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3587"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37137,15 +34963,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3589"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37157,15 +34981,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3591"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37177,15 +34999,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3593"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37197,15 +35017,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3595"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37217,15 +35035,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3597"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37233,7 +35049,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37245,15 +35061,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3600"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37261,7 +35075,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37273,15 +35087,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "3603"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37289,7 +35101,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37297,7 +35109,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37305,7 +35117,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37313,7 +35125,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37321,7 +35133,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37329,7 +35141,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37337,7 +35149,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37345,7 +35157,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37353,7 +35165,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37361,7 +35173,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37369,7 +35181,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37377,7 +35189,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -37458,8 +35270,6 @@
"examine": "An exquisitely shaped tool specially designed for fixing temples.",
"durability": null,
"name": "Flamtaer hammer",
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "3678"
@@ -37483,33 +35293,27 @@
"equipment_slot": "3"
},
{
- "examine": "This will teleport me to Rellekka when I play it. A musical intrument that I can magically play.",
+ "examine": "A musical intrument that I can magically play.",
"durability": null,
"name": "Lyre",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "3689",
"equipment_slot": "3"
},
{
- "examine": "This will teleport me to Rellekka when I play it. A musical intrument that I can magically play.",
+ "examine": "This will teleport me to Rellekka when I play it.",
"durability": null,
"name": "Enchanted lyre",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "3690",
"equipment_slot": "3"
},
{
- "examine": "This will teleport me to Rellekka when I play it. A musical intrument that I can magically play.",
+ "examine": "This will teleport me to Rellekka when I play it.",
"durability": null,
"name": "Enchanted lyre(1)",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "3691",
@@ -37545,7 +35349,9 @@
"examine": "The lowest maintenance pet you will ever have.",
"walk_anim": "6658",
"durability": null,
+ "weight": "1",
"turn90ccw_anim": "6663",
+ "two_handed": "true",
"turn180_anim": "6659",
"render_anim": "792",
"equipment_slot": "3",
@@ -37672,8 +35478,6 @@
"durability": null,
"name": "Keg of beer",
"tradeable": "true",
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "20",
"archery_ticket_price": "0",
"id": "3711"
@@ -37722,8 +35526,6 @@
"examine": "A very attractive magnet.",
"durability": null,
"name": "Magnet",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "3718"
},
@@ -37796,7 +35598,6 @@
"durability": null,
"name": "Empty bucket",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "3727"
@@ -37957,6 +35758,7 @@
"examine": "Yup, it's sticky, it's red and it's goop.",
"durability": null,
"name": "Sticky red goop",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "3746"
},
@@ -37965,20 +35767,20 @@
"name": "Sticky red goop",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "3747"
+ "id": "3747",
+ "alchemizable": "true"
},
{
"remove_head": "true",
"examine": "A sturdy helm worn only by Fremennik clan members.",
"durability": null,
"name": "Fremennik helm",
- "low_alchemy": "2600",
- "high_alchemy": "3900",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "3748",
"absorb": "1,0,2",
"bonuses": "0,0,0,-6,-2,19,21,16,-1,19,6,0,0,0,0",
+ "alchemizable": "true",
"equipment_slot": "0"
},
{
@@ -37988,8 +35790,6 @@
"ge_buy_limit": "100",
"examine": "This helmet is worn by archers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2",
"absorb": "0,3,1",
"equipment_slot": "0",
@@ -38018,8 +35818,6 @@
"ge_buy_limit": "100",
"examine": "This helmet is worn by berserkers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -38048,8 +35846,6 @@
"ge_buy_limit": "100",
"examine": "This helm is worn by warriors.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -38078,8 +35874,6 @@
"ge_buy_limit": "100",
"examine": "This helm is worn by farseers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -38104,11 +35898,10 @@
{
"examine": "A sword used only by Fremennik warriors.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "6",
+ "alchemizable": "true",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
@@ -38121,29 +35914,26 @@
"examine": "A shield worn by Fremennik warriors.",
"durability": null,
"name": "Fremennik shield",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"destroy": "true",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "3758",
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,30,0,0,0,0",
+ "alchemizable": "true",
"equipment_slot": "5"
},
{
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "697",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3759",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38158,16 +35948,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "54",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3761",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38182,16 +35970,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "581",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3763",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38206,16 +35992,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "912",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3765",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38227,20 +36011,18 @@
"id": "3766"
},
{
+ "remove_sleeves": "true",
"shop_price": "325",
"ge_buy_limit": "100",
"examine": "The latest in Fremennik fashion.",
- "durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "100",
+ "durability": null,
"name": "Fremennik shirt",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3767",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -38252,20 +36034,18 @@
"id": "3768"
},
{
+ "remove_sleeves": "true",
"shop_price": "325",
"ge_buy_limit": "100",
"examine": "The latest in Fremennik fashion.",
- "durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "486",
+ "durability": null,
"name": "Fremennik shirt",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3769",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -38277,20 +36057,18 @@
"id": "3770"
},
{
+ "remove_sleeves": "true",
"shop_price": "325",
"ge_buy_limit": "100",
"examine": "The latest in Fremennik fashion.",
- "durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "242",
+ "durability": null,
"name": "Fremennik shirt",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3771",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -38302,20 +36080,18 @@
"id": "3772"
},
{
+ "remove_sleeves": "true",
"shop_price": "325",
"ge_buy_limit": "100",
"examine": "The latest in Fremennik fashion.",
- "durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "500",
+ "durability": null,
"name": "Fremennik shirt",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3773",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -38327,20 +36103,18 @@
"id": "3774"
},
{
+ "remove_sleeves": "true",
"shop_price": "325",
"ge_buy_limit": "100",
"examine": "The latest in Fremennik fashion.",
- "durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "450",
+ "durability": null,
"name": "Fremennik shirt",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3775",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -38355,16 +36129,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "674",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3777",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38379,16 +36151,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "809",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3779",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38403,16 +36173,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "632",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3781",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38427,16 +36195,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "517",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3783",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38451,16 +36217,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "398",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3785",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38475,16 +36239,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "283",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3787",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38499,16 +36261,14 @@
"shop_price": "325",
"ge_buy_limit": "1000",
"examine": "The latest fashion in Rellekka.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "equipment_slot": "1",
"grand_exchange_price": "966",
+ "durability": null,
"name": "Fremennik cloak",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "3789",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "1000",
@@ -38523,17 +36283,15 @@
"shop_price": "650",
"ge_buy_limit": "100",
"examine": "Very stylish!",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "0.5",
- "equipment_slot": "10",
"grand_exchange_price": "205",
+ "durability": null,
"name": "Fremennik boots",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
"id": "3791",
- "bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -38549,8 +36307,6 @@
"ge_buy_limit": "100",
"examine": "The latest fashion of Rellekka.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"weight": "0.9",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -38574,17 +36330,15 @@
"shop_price": "650",
"ge_buy_limit": "100",
"examine": "The latest fashion of Rellekka.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "663",
+ "durability": null,
"name": "Fremennik skirt",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "3795",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -38599,17 +36353,15 @@
"shop_price": "650",
"ge_buy_limit": "100",
"examine": "A silly pointed hat.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "2380",
+ "durability": null,
"name": "Fremennik hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "3797",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -38622,9 +36374,13 @@
},
{
"ge_buy_limit": "10",
+ "shop_price": "650",
+ "examine": "These will keep my hands warm!",
"grand_exchange_price": "172",
"durability": null,
"name": "Gloves",
+ "tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "3799",
"bonuses": "0,0,0,0,0,0,1,2,0,0,1,0,0,0,0",
@@ -38647,8 +36403,6 @@
"durability": null,
"name": "Keg of beer",
"tradeable": "true",
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "20",
"archery_ticket_price": "0",
"id": "3801"
@@ -38669,7 +36423,6 @@
"durability": null,
"name": "Beer",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "3803"
@@ -38689,8 +36442,6 @@
"durability": null,
"name": "Tankard",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "3805"
},
@@ -38708,8 +36459,6 @@
"durability": null,
"name": "Saradomin page 1",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3827"
},
@@ -38720,8 +36469,6 @@
"durability": null,
"name": "Saradomin page 2",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3828"
},
@@ -38732,8 +36479,6 @@
"durability": null,
"name": "Saradomin page 3",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3829"
},
@@ -38744,8 +36489,6 @@
"durability": null,
"name": "Saradomin page 4",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3830"
},
@@ -38756,8 +36499,6 @@
"durability": null,
"name": "Zamorak page 1",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3831"
},
@@ -38768,8 +36509,6 @@
"durability": null,
"name": "Zamorak page 2",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3832"
},
@@ -38780,8 +36519,6 @@
"durability": null,
"name": "Zamorak page 3",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3833"
},
@@ -38792,8 +36529,6 @@
"durability": null,
"name": "Zamorak page 4",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3834"
},
@@ -38804,8 +36539,6 @@
"durability": null,
"name": "Guthix page 1",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3835"
},
@@ -38816,8 +36549,6 @@
"durability": null,
"name": "Guthix page 2",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3836"
},
@@ -38828,8 +36559,6 @@
"durability": null,
"name": "Guthix page 3",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3837"
},
@@ -38840,8 +36569,6 @@
"durability": null,
"name": "Guthix page 4",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "3838"
},
@@ -38850,8 +36577,6 @@
"examine": "An incomplete book of Saradomin.",
"durability": null,
"name": "Damaged book",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "3839",
@@ -38863,8 +36588,6 @@
"examine": "The Holy book of Saradomin.",
"durability": null,
"name": "Holy book",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "3840",
@@ -38876,8 +36599,6 @@
"examine": "An incomplete book of Zamorak.",
"durability": null,
"name": "Damaged book",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "3841",
@@ -38888,8 +36609,6 @@
"examine": "The unholy book of Zamorak.",
"durability": null,
"name": "Unholy book",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "3842",
@@ -38901,8 +36620,6 @@
"examine": "An incomplete book of Guthix.",
"durability": null,
"name": "Damaged book",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "3843",
@@ -38913,8 +36630,6 @@
"examine": "The holy book of Guthix.",
"durability": null,
"name": "Book of balance",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "3844",
@@ -38963,8 +36678,6 @@
"durability": null,
"name": "Games necklace(8)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3853",
"equipment_slot": "2"
@@ -38985,8 +36698,6 @@
"durability": null,
"name": "Games necklace(7)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3855",
"equipment_slot": "2"
@@ -39005,8 +36716,6 @@
"durability": null,
"name": "Games necklace(6)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3857",
"equipment_slot": "2"
@@ -39025,8 +36734,6 @@
"durability": null,
"name": "Games necklace(5)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3859",
"equipment_slot": "2"
@@ -39045,8 +36752,6 @@
"durability": null,
"name": "Games necklace(4)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3861",
"equipment_slot": "2"
@@ -39065,8 +36770,6 @@
"durability": null,
"name": "Games necklace(3)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3863",
"equipment_slot": "2"
@@ -39085,8 +36788,6 @@
"durability": null,
"name": "Games necklace(2)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3865",
"equipment_slot": "2"
@@ -39106,8 +36807,6 @@
"durability": null,
"name": "Games necklace(1)",
"tradeable": "true",
- "low_alchemy": "420",
- "high_alchemy": "630",
"archery_ticket_price": "0",
"id": "3867",
"equipment_slot": "2"
@@ -39157,7 +36856,6 @@
"examine": "For making a giant pen.",
"durability": null,
"name": "Giant nib",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "3897"
},
@@ -39165,7 +36863,6 @@
"examine": "The king should be able to use this.",
"durability": null,
"name": "Giant pen",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "3898"
},
@@ -39174,8 +36871,6 @@
"examine": "Not as good as a pet frog.",
"durability": null,
"name": "Iron sickle",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1.6",
"archery_ticket_price": "0",
"id": "3899",
@@ -39195,9 +36890,7 @@
"examine": "A pile of gout tubers suitable for use in mountainous terrain.",
"durability": null,
"name": "Hardy gout tuber",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "4001"
@@ -39230,8 +36923,6 @@
"examine": "Magical monkey talking dentures! What more can we say? Ook!",
"durability": null,
"name": "Monkey dentures",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "4006"
@@ -39240,8 +36931,6 @@
"examine": "A gold bar with a talkative monkey spirit.",
"durability": null,
"name": "Enchanted bar",
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "2",
"archery_ticket_price": "0",
"id": "4007"
@@ -39251,8 +36940,6 @@
"examine": "It's... the eye of a gnome! Now what on earth could one do with this?",
"durability": null,
"name": "Eye of gnome",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "4008"
@@ -39262,8 +36949,6 @@
"examine": "It's... the eye of a gnome! Now what on earth could one do with this?",
"durability": null,
"name": "Eye of gnome",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "4009"
@@ -39273,8 +36958,6 @@
"examine": "They are Monkey Nuts. Yummy.",
"durability": null,
"name": "Monkey nuts",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4012"
},
@@ -39283,8 +36966,6 @@
"examine": "It's a monkey bar. It looks highly nutritious.",
"durability": null,
"name": "Monkey bar",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "4014"
},
@@ -39293,8 +36974,6 @@
"examine": "It's a bowl full of mushy banana",
"durability": null,
"name": "Banana stew",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "4016"
},
@@ -39302,8 +36981,6 @@
"examine": "It's an amulet mould shaped like a monkey head.",
"durability": null,
"name": "M'amulet mould",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "4020"
@@ -39330,8 +37007,6 @@
"examine": "A magic talisman in shape of a monkey head.",
"durability": null,
"name": "Monkey talisman",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.25",
"archery_ticket_price": "0",
"id": "4023"
@@ -39340,8 +37015,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4024",
"equipment_slot": "3"
@@ -39350,8 +37023,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4025",
"equipment_slot": "3"
@@ -39360,8 +37031,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4026",
"equipment_slot": "3"
@@ -39370,8 +37039,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4027",
"equipment_slot": "3"
@@ -39380,8 +37047,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4028",
"equipment_slot": "3"
@@ -39390,8 +37055,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4029",
"equipment_slot": "3"
@@ -39400,8 +37063,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4030",
"equipment_slot": "3"
@@ -39410,8 +37071,6 @@
"examine": "A magical talisman in the shape of a Karamjan monkey head.",
"durability": null,
"name": "Monkey greegree",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "4031",
"equipment_slot": "3"
@@ -39452,6 +37111,7 @@
"equipment_slot": "3",
"stand_anim": "1421",
"name": "Saradomin banner",
+ "tradeable": "false",
"run_anim": "1427",
"archery_ticket_price": "0",
"id": "4037",
@@ -39460,7 +37120,7 @@
{
"durability": null,
"name": "Saradomin banner",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "4038"
},
@@ -39477,6 +37137,7 @@
"equipment_slot": "3",
"stand_anim": "1421",
"name": "Zamorak banner",
+ "tradeable": "false",
"run_anim": "1427",
"archery_ticket_price": "0",
"id": "4039",
@@ -39485,7 +37146,7 @@
{
"durability": null,
"name": "Zamorak banner",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "4040"
},
@@ -39616,13 +37277,13 @@
"examine": "A very decorative sword.",
"walk_anim": "819",
"durability": null,
- "low_alchemy": "520",
- "high_alchemy": "780",
"weight": "1",
"turn90ccw_anim": "822",
"weapon_interface": "6",
"turn180_anim": "820",
+ "equip_audio": "2248",
"render_anim": "1",
+ "castle_wars_ticket_price": "5",
"equipment_slot": "3",
"stand_anim": "808",
"name": "Decorative sword",
@@ -39640,6 +37301,7 @@
"archery_ticket_price": "0",
"id": "4069",
"bonuses": "0,0,0,-30,-10,32,31,24,-6,31,5,0,0,0,0",
+ "castle_wars_ticket_price": "8",
"equipment_slot": "4"
},
{
@@ -39649,6 +37311,7 @@
"archery_ticket_price": "0",
"id": "4070",
"bonuses": "0,0,0,-21,-7,17,16,15,-4,16,2,0,0,0,0",
+ "castle_wars_ticket_price": "6",
"equipment_slot": "7"
},
{
@@ -39657,14 +37320,13 @@
"shop_price": "40",
"examine": "A very decorative helm.",
"durability": null,
- "low_alchemy": "312",
- "high_alchemy": "468",
- "weight": "1",
- "equipment_slot": "0",
"name": "Decorative helm",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "4071",
- "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,3,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,7,8,6,-1,7,3,0,0,0,0",
+ "castle_wars_ticket_price": "4",
+ "equipment_slot": "0"
},
{
"requirements": "{1,5}",
@@ -39675,6 +37337,7 @@
"archery_ticket_price": "0",
"id": "4072",
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0",
+ "castle_wars_ticket_price": "6",
"equipment_slot": "5"
},
{
@@ -39716,8 +37379,6 @@
"examine": "A gift from Santa.",
"durability": null,
"name": "Yo-yo",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4079"
},
@@ -39725,8 +37386,6 @@
"examine": "Increases the wearer's strength and accuracy by 15% when fighting the undead.",
"durability": null,
"name": "Salve amulet",
- "low_alchemy": "75000",
- "high_alchemy": "75000",
"weight": "0.6",
"archery_ticket_price": "0",
"id": "4081",
@@ -39744,8 +37403,6 @@
"examine": "Unwaxed: It needs waxing before I can use it. Waxed: A waxed sled.",
"durability": null,
"name": "Sled",
- "low_alchemy": "70",
- "high_alchemy": "105",
"archery_ticket_price": "0",
"attack_speed": "4",
"id": "4083",
@@ -39756,8 +37413,6 @@
"examine": "Unwaxed: It needs waxing before I can use it. Waxed: A waxed sled.",
"walk_anim": "1468",
"durability": null,
- "low_alchemy": "70",
- "high_alchemy": "105",
"turn90ccw_anim": "1468",
"attack_speed": "4",
"two_handed": "true",
@@ -39775,8 +37430,6 @@
"examine": "I can use this to wax my sled.",
"durability": null,
"name": "Wax",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "4085",
"equipment_slot": "5"
@@ -39785,8 +37438,6 @@
"examine": "These pale flowers have a pungent odour.",
"durability": null,
"name": "Trollweiss",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"attack_speed": "5",
"id": "4086",
@@ -39799,10 +37450,10 @@
"ge_buy_limit": "10",
"examine": "Looks pretty heavy.",
"durability": null,
- "low_alchemy": "108000",
- "high_alchemy": "162000",
+ "rare_item": "true",
"weight": "9",
"absorb": "3,0,6",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "190500",
@@ -39822,13 +37473,11 @@
"id": "4088"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "15000",
"ge_buy_limit": "100",
"examine": "Blue: A magical hat. ",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "0.4",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -39851,13 +37500,11 @@
"id": "4090"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "120000",
"ge_buy_limit": "100",
"examine": "The upper half of a magical robe.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"weight": "2.7",
"absorb": "3,1,0",
"equipment_slot": "4",
@@ -39880,13 +37527,11 @@
"id": "4092"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "80000",
"ge_buy_limit": "100",
"examine": "The lower half of a magical robe.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"absorb": "4,2,0",
"equipment_slot": "7",
"lendable": "true",
@@ -39907,13 +37552,11 @@
"id": "4094"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "10000",
"ge_buy_limit": "100",
"examine": "Magical gloves.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.4",
"equipment_slot": "9",
"lendable": "true",
@@ -39934,13 +37577,11 @@
"id": "4096"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "10000",
"ge_buy_limit": "100",
"examine": "Magical boots.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.4",
"equipment_slot": "10",
"lendable": "true",
@@ -39961,13 +37602,11 @@
"id": "4098"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "15000",
"ge_buy_limit": "100",
"examine": "Black: A magical hat. ",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "0.4",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -39990,13 +37629,11 @@
"id": "4100"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "120000",
"ge_buy_limit": "100",
"examine": "The upper half of a magical robe.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"weight": "2.7",
"absorb": "3,1,0",
"equipment_slot": "4",
@@ -40019,13 +37656,11 @@
"id": "4102"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "80000",
"ge_buy_limit": "100",
"examine": "The lower half of a magical robe.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"absorb": "4,2,0",
"equipment_slot": "7",
"lendable": "true",
@@ -40046,13 +37681,11 @@
"id": "4104"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "10000",
"ge_buy_limit": "100",
"examine": "Dark magical gloves.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.4",
"equipment_slot": "9",
"lendable": "true",
@@ -40073,13 +37706,11 @@
"id": "4106"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "10000",
"ge_buy_limit": "100",
"examine": "Magical boots.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.4",
"equipment_slot": "10",
"lendable": "true",
@@ -40100,13 +37731,11 @@
"id": "4108"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "15000",
"ge_buy_limit": "100",
"examine": "White: A magical hat. ",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "0.4",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -40129,13 +37758,11 @@
"id": "4110"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "120000",
"ge_buy_limit": "100",
"examine": "The upper half of a magical robe.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"weight": "2.7",
"absorb": "3,1,0",
"equipment_slot": "4",
@@ -40158,13 +37785,11 @@
"id": "4112"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "80000",
"ge_buy_limit": "100",
"examine": "The lower half of a magical robe.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"absorb": "4,2,0",
"equipment_slot": "7",
"lendable": "true",
@@ -40185,13 +37810,11 @@
"id": "4114"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "10000",
"ge_buy_limit": "100",
"examine": "Bright magical gloves.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.4",
"equipment_slot": "9",
"lendable": "true",
@@ -40212,13 +37835,11 @@
"id": "4116"
},
{
- "requirements": "{1,20}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"shop_price": "10000",
"ge_buy_limit": "100",
"examine": "Magical boots.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.4",
"equipment_slot": "10",
"lendable": "true",
@@ -40241,17 +37862,16 @@
{
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
- "durability": null,
- "low_alchemy": "9",
- "high_alchemy": "14",
- "weight": "1.3",
- "equipment_slot": "10",
"grand_exchange_price": "359",
+ "durability": null,
"name": "Bronze boots",
"tradeable": "true",
+ "weight": "1.3",
"archery_ticket_price": "0",
"id": "4119",
- "bonuses": "0,0,0,-3,-1,1,2,3,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,1,2,3,0,0,0,0,0,0,0",
+ "equip_audio": "2237",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -40265,17 +37885,16 @@
{
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
- "durability": null,
- "low_alchemy": "33",
- "high_alchemy": "50",
- "weight": "1.3",
- "equipment_slot": "10",
"grand_exchange_price": "17000",
+ "durability": null,
"name": "Iron boots",
"tradeable": "true",
+ "weight": "1.3",
"archery_ticket_price": "0",
"id": "4121",
- "bonuses": "0,0,0,-3,-1,2,3,4,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,2,3,4,0,0,0,0,0,0,0",
+ "equip_audio": "2237",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -40291,9 +37910,8 @@
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1.3",
+ "equip_audio": "2237",
"equipment_slot": "10",
"grand_exchange_price": "258",
"name": "Steel boots",
@@ -40316,9 +37934,8 @@
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "230",
- "high_alchemy": "345",
"weight": "1.3",
+ "equip_audio": "2237",
"equipment_slot": "10",
"grand_exchange_price": "317",
"name": "Black boots",
@@ -40341,9 +37958,8 @@
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "312",
- "high_alchemy": "468",
"weight": "1",
+ "equip_audio": "2237",
"equipment_slot": "10",
"grand_exchange_price": "580",
"name": "Mithril boots",
@@ -40366,9 +37982,8 @@
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "1.3",
+ "equip_audio": "2237",
"equipment_slot": "10",
"grand_exchange_price": "1336",
"name": "Adamant boots",
@@ -40391,9 +38006,8 @@
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "5000",
- "high_alchemy": "7500",
"weight": "1.3",
+ "equip_audio": "2237",
"equipment_slot": "10",
"lendable": "true",
"grand_exchange_price": "7474",
@@ -40547,8 +38161,6 @@
"examine": "Arrows with a wider than normal tip.",
"durability": null,
"name": "Broad arrows",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4150",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,28,0,0"
@@ -40560,14 +38172,12 @@
"walk_anim": "1660",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "48000",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
"defence_anim": "1659",
"equipment_slot": "3",
"attack_anims": "1658,1658,1658,1658",
- "destroy_message": "",
"grand_exchange_price": "413500",
"stand_anim": "808",
"tradeable": "true",
@@ -40578,7 +38188,6 @@
"bonuses": "0,82,0,0,0,0,0,0,0,0,0,82,0,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "72000",
"weight": "0.45",
"weapon_interface": "11",
"equip_audio": "2249",
@@ -40603,7 +38212,6 @@
"walk_anim": "1663",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "20000",
"turn90ccw_anim": "1663",
"attack_speed": "7",
"two_handed": "true",
@@ -40621,7 +38229,6 @@
"bonuses": "0,0,81,0,0,0,0,0,0,0,0,79,0,0,0",
"requirements": "{0,50}-{2,50}",
"durability": null,
- "high_alchemy": "30000",
"weight": "4.5",
"weapon_interface": "10",
"render_anim": "27",
@@ -40652,8 +38259,6 @@
"ge_buy_limit": "100",
"examine": "I can just about see things in this shield's reflection.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "2.2",
"equipment_slot": "5",
"grand_exchange_price": "3318",
@@ -40673,31 +38278,30 @@
"id": "4157"
},
{
+ "requirements": "{0,55}-{18,50}",
+ "shop_price": "31000",
"turn90cw_anim": "1207",
"examine": "A spear with a leaf-shaped point.",
"walk_anim": "1205",
- "low_alchemy": "12400",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "2079",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
"stand_anim": "813",
+ "name": "Leaf-bladed spear",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4158",
"stand_turn_anim": "1209",
- "bonuses": "47,42,36,0,0,1,1,0,0,0,0,50,0,0,0",
- "requirements": "{0,55}-{18,50}",
- "shop_price": "31000",
- "durability": null,
- "high_alchemy": "18600",
- "weight": "2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Leaf-bladed spear"
+ "bonuses": "47,42,36,0,0,1,1,0,0,0,0,50,0,0,0"
},
{
"requirements": "{0,55}-{18,50}",
@@ -40705,12 +38309,11 @@
"examine": "A spear with a leaf-shaped point.",
"durability": null,
"name": "Leaf-bladed spear",
- "low_alchemy": "12400",
- "high_alchemy": "18600",
"weight": "2",
"archery_ticket_price": "0",
"attack_speed": "5",
"id": "4159",
+ "equip_audio": "2247",
"equipment_slot": "3"
},
{
@@ -40719,8 +38322,6 @@
"examine": "Arrows with a wider than normal tip.",
"durability": null,
"name": "Broad arrow",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4160",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,28",
@@ -40734,8 +38335,6 @@
"durability": null,
"name": "Bag of salt",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4161"
},
@@ -40743,16 +38342,14 @@
"shop_price": "500",
"ge_buy_limit": "100",
"examine": "I can even smash stone with this.",
- "durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
- "weight": "2.2",
- "equipment_slot": "3",
"grand_exchange_price": "140",
+ "durability": null,
"name": "Rock hammer",
"tradeable": "true",
+ "weight": "2.2",
"archery_ticket_price": "0",
- "id": "4162"
+ "id": "4162",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "100",
@@ -40768,16 +38365,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "Stops me breathing in too much dust.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "615",
+ "durability": null,
"name": "Face mask",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "4164"
+ "id": "4164",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -40793,16 +38388,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "These will protect my ears from loud noise.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "2.6",
- "equipment_slot": "0",
"grand_exchange_price": "484",
+ "durability": null,
"name": "Earmuffs",
"tradeable": "true",
+ "weight": "2.6",
"archery_ticket_price": "0",
- "id": "4166"
+ "id": "4166",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -40818,16 +38411,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "Protects me from any bad smells.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "8",
- "equipment_slot": "0",
"grand_exchange_price": "523",
+ "durability": null,
"name": "Nose peg",
"tradeable": "true",
+ "weight": "8",
"archery_ticket_price": "0",
- "id": "4168"
+ "id": "4168",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -40843,7 +38434,6 @@
"turn90cw_anim": "1207",
"examine": "An old and magical staff.",
"walk_anim": "1205",
- "low_alchemy": "8400",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -40861,9 +38451,9 @@
"requirements": "{18,55}-{6,50}",
"shop_price": "21000",
"durability": null,
- "high_alchemy": "12600",
"weight": "1.8",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Slayer's staff"
@@ -40882,8 +38472,6 @@
"examine": "Arrows with a wider than normal tip.",
"durability": null,
"name": "Broad arrows",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4172",
"equipment_slot": "13"
@@ -40893,8 +38481,6 @@
"examine": "Arrows with a wider than normal tip.",
"durability": null,
"name": "Broad arrows",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4173",
"equipment_slot": "13"
@@ -40904,8 +38490,6 @@
"examine": "Arrows with a wider than normal tip.",
"durability": null,
"name": "Broad arrows",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4174",
"equipment_slot": "13"
@@ -40915,8 +38499,6 @@
"examine": "Arrows with a wider than normal tip.",
"durability": null,
"name": "Broad arrows",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4175",
"equipment_slot": "13"
@@ -40925,8 +38507,6 @@
"examine": "A weapon from the Abyss.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"weight": "0.45",
"attack_speed": "4",
"render_anim": "620",
@@ -40947,18 +38527,16 @@
"id": "4179"
},
{
- "examine": "Looks pretty heavy.",
- "durability": null,
- "low_alchemy": "108000",
- "high_alchemy": "162000",
- "weight": "9",
- "absorb": "3,0,6",
"lendable": "true",
+ "examine": "Looks pretty heavy.",
"grand_exchange_price": "165900",
+ "durability": null,
"name": "Dragon platelegs",
"tradeable": "true",
+ "weight": "9",
"archery_ticket_price": "0",
"id": "4180",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-21,-7,68,66,63,-4,65,20,0,0,0,0"
},
{
@@ -41026,7 +38604,7 @@
"id": "4189"
},
{
- "examine": "See article",
+ "examine": "A typical garden brush.",
"durability": null,
"name": "Garden brush",
"weight": "1",
@@ -41034,7 +38612,7 @@
"id": "4190"
},
{
- "examine": "See article",
+ "examine": "A typical garden brush, with a cane tied to it.",
"durability": null,
"name": "Extended brush",
"weight": "1",
@@ -41042,7 +38620,7 @@
"id": "4191"
},
{
- "examine": "See article",
+ "examine": "A typical garden brush, with two canes tied to it.",
"durability": null,
"name": "Extended brush",
"weight": "1",
@@ -41050,7 +38628,7 @@
"id": "4192"
},
{
- "examine": "See article",
+ "examine": "A typical garden brush, with three canes tied to it.",
"durability": null,
"name": "Extended brush",
"weight": "1",
@@ -41064,14 +38642,16 @@
"name": "Arms",
"weight": "2",
"archery_ticket_price": "0",
- "id": "4195"
+ "id": "4195",
+ "alchemizable": "true"
},
{
"examine": "A pair of lifeless, rotting legs.",
"durability": null,
"name": "Legs",
"archery_ticket_price": "0",
- "id": "4196"
+ "id": "4196",
+ "alchemizable": "true"
},
{
"examine": "No brain: A gruesome, decapitated head, whose brain has rotted away. Brain: A gruesome, decapitated head - its eyes stare lifelessly at nothing.",
@@ -41079,7 +38659,8 @@
"name": "Decapitated head",
"weight": "3",
"archery_ticket_price": "0",
- "id": "4197"
+ "id": "4197",
+ "alchemizable": "true"
},
{
"examine": "No brain: A gruesome, decapitated head, whose brain has rotted away. Brain: A gruesome, decapitated head - its eyes stare lifelessly at nothing.",
@@ -41087,7 +38668,8 @@
"name": "Decapitated head",
"weight": "3",
"archery_ticket_price": "0",
- "id": "4198"
+ "id": "4198",
+ "alchemizable": "true"
},
{
"shop_price": "50",
@@ -41095,7 +38677,8 @@
"durability": null,
"name": "Pickled brain",
"archery_ticket_price": "0",
- "id": "4199"
+ "id": "4199",
+ "alchemizable": "true"
},
{
"examine": "A mould for making silver lightning conductors.",
@@ -41114,7 +38697,7 @@
},
{
"destroy_message": "Another can be received from pickpocketing Dr. Fenkenstrain in the tower.",
- "examine": "Unactivated: The Ring of charos.Activated: The power within this ring has been activated.",
+ "examine": "The Ring of charos",
"durability": null,
"name": "Ring of charos",
"tradeable": "false",
@@ -41160,7 +38743,6 @@
"examine": "A book on Cadarn clan history.",
"durability": null,
"name": "Cadarn lineage",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4209"
},
@@ -41174,13 +38756,15 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "905300",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "New crystal bow",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "4212",
"bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
@@ -41203,12 +38787,13 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow full",
"archery_ticket_price": "0",
"id": "4214",
@@ -41223,16 +38808,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 9/10",
"archery_ticket_price": "0",
"id": "4215",
- "bonuses": "0,0,0,0,96,0,0,0,0,0,0,0,0,0,68"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41243,16 +38829,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 8/10",
"archery_ticket_price": "0",
"id": "4216",
- "bonuses": "0,0,0,0,92,0,0,0,0,0,0,0,0,0,66"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41263,16 +38850,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 7/10",
"archery_ticket_price": "0",
"id": "4217",
- "bonuses": "0,0,0,0,88,0,0,0,0,0,0,0,0,0,64"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41283,16 +38871,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 6/10",
"archery_ticket_price": "0",
"id": "4218",
- "bonuses": "0,0,0,0,84,0,0,0,0,0,0,0,0,0,62"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41303,16 +38892,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 5/10",
"archery_ticket_price": "0",
"id": "4219",
- "bonuses": "0,0,0,0,80,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41323,16 +38913,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 4/10",
"archery_ticket_price": "0",
"id": "4220",
- "bonuses": "0,0,0,0,76,0,0,0,0,0,0,0,0,0,58"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41343,16 +38934,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 3/10",
"archery_ticket_price": "0",
"id": "4221",
- "bonuses": "0,0,0,0,72,0,0,0,0,0,0,0,0,0,56"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41363,16 +38955,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 2/10",
"archery_ticket_price": "0",
"id": "4222",
- "bonuses": "0,0,0,0,68,0,0,0,0,0,0,0,0,0,54"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{4,70}-{16,50}",
@@ -41383,16 +38976,17 @@
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "16",
+ "equip_audio": "2238",
"render_anim": "2588",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "426,426,426,426",
"grand_exchange_price": "901019",
- "attack_audios": "2700,0,0,0",
+ "attack_audios": "1352,1352,1352,0",
"name": "Crystal bow 1/10",
"archery_ticket_price": "0",
"id": "4223",
- "bonuses": "0,0,0,0,64,0,0,0,0,0,0,0,0,0,52"
+ "bonuses": "0,0,0,0,100,0,0,0,0,0,0,0,0,0,70"
},
{
"requirements": "{1,70}-{16,50}",
@@ -41405,6 +38999,7 @@
"equipment_slot": "5",
"grand_exchange_price": "756900",
"name": "New crystal shield",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "4224",
"bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0"
@@ -41434,7 +39029,7 @@
"archery_ticket_price": "0",
"id": "4226",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,49,52,51,0,78,68,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41448,7 +39043,7 @@
"archery_ticket_price": "0",
"id": "4227",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,47,50,49,0,76,66,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41462,7 +39057,7 @@
"archery_ticket_price": "0",
"id": "4228",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,45,48,47,0,74,65,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41476,7 +39071,7 @@
"archery_ticket_price": "0",
"id": "4229",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,43,46,45,0,72,63,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41490,7 +39085,7 @@
"archery_ticket_price": "0",
"id": "4230",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,41,44,43,0,70,61,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41504,7 +39099,7 @@
"archery_ticket_price": "0",
"id": "4231",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,39,42,41,0,68,59,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41518,7 +39113,7 @@
"archery_ticket_price": "0",
"id": "4232",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,37,40,39,0,66,58,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41532,7 +39127,7 @@
"archery_ticket_price": "0",
"id": "4233",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,35,38,37,0,64,56,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41546,7 +39141,7 @@
"archery_ticket_price": "0",
"id": "4234",
"absorb": "6,0,12",
- "bonuses": "0,0,0,-10,-10,33,36,35,0,62,54,0,0,0,0",
+ "bonuses": "0,0,0,-10,-10,51,54,53,0,80,70,0,0,0,0",
"equipment_slot": "5"
},
{
@@ -41560,8 +39155,6 @@
"requirements": "{4,5}",
"examine": "This bow has been signed by Robin, Master Bowman.",
"durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
"weight": "2",
"attack_speed": "6",
"two_handed": "true",
@@ -41577,8 +39170,6 @@
"examine": "It's a bowl of water, with some nettles in it.",
"durability": null,
"name": "Nettle-water",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4237"
@@ -41587,8 +39178,6 @@
"examine": "It's a bowl of (milky) nettle tea.",
"durability": null,
"name": "Nettle tea",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4239"
@@ -41597,8 +39186,6 @@
"examine": "It's a bowl of (milky) nettle tea.",
"durability": null,
"name": "Nettle tea",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4240"
@@ -41607,8 +39194,6 @@
"examine": "(In inventory) A handful of nettles (In ground) I better not get stung/I wouldn't like to get stung/I wish I could sting other people/Dock leaves at the ready/These may hurt/nettles sting my leggies(Draynor Village nettles)",
"durability": null,
"name": "Nettles",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4241"
},
@@ -41619,8 +39204,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4242"
@@ -41632,8 +39215,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4243"
@@ -41652,8 +39233,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4245"
@@ -41665,8 +39244,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4246"
@@ -41700,8 +39277,6 @@
"examine": "The amulet of ghostspeak glows green from the crone's enchantment.",
"durability": null,
"name": "Ghostspeak amulet",
- "low_alchemy": "14",
- "high_alchemy": "21",
"archery_ticket_price": "0",
"id": "4250",
"equipment_slot": "2"
@@ -41712,7 +39287,6 @@
"durability": null,
"name": "Ectophial",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4251"
},
@@ -41722,7 +39296,6 @@
"durability": null,
"name": "Ectophial",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4252"
},
@@ -41741,7 +39314,7 @@
"id": "4254"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41749,7 +39322,7 @@
"id": "4255"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed small ninja monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41757,7 +39330,7 @@
"id": "4256"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed wolf bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41765,7 +39338,7 @@
"id": "4257"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed burnt bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41773,7 +39346,7 @@
"id": "4258"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed burnt jogre bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41781,7 +39354,7 @@
"id": "4259"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41789,7 +39362,7 @@
"id": "4260"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed bat bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41797,7 +39370,7 @@
"id": "4261"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed big bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41805,7 +39378,7 @@
"id": "4262"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed jogre bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41813,7 +39386,7 @@
"id": "4263"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed zogre bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41821,7 +39394,7 @@
"id": "4264"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed shaikahan bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41829,7 +39402,7 @@
"id": "4265"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed baby dragon bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41837,7 +39410,7 @@
"id": "4266"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed wyvern bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41845,7 +39418,7 @@
"id": "4267"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed dragon bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41861,7 +39434,7 @@
"id": "4269"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed medium ninja monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41869,7 +39442,7 @@
"id": "4270"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed Dagannoth-king bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -41963,8 +39536,6 @@
"durability": null,
"name": "Raw beef",
"tradeable": "true",
- "low_alchemy": "23",
- "high_alchemy": "35",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "4287"
@@ -41986,8 +39557,6 @@
"durability": null,
"name": "Raw chicken",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "0.15",
"archery_ticket_price": "0",
"id": "4289"
@@ -42009,8 +39578,6 @@
"durability": null,
"name": "Cooked chicken",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4291"
@@ -42032,8 +39599,6 @@
"durability": null,
"name": "Cooked meat",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "4293"
@@ -42062,20 +39627,18 @@
"id": "4297"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "100",
"examine": "The label says 'Vivid Crimson', but it looks like pink to me!",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "weight": "0.9",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "19",
+ "durability": null,
"name": "Ham shirt",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "4298",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -42089,17 +39652,15 @@
{
"ge_buy_limit": "100",
"examine": "The label says 'Vivid Crimson', but it looks like pink to me!",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "11",
+ "durability": null,
"name": "Ham robe",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "4300",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -42114,17 +39675,15 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "Light-weight head protection and eye shield.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "weight": "0.4",
- "equipment_slot": "0",
"grand_exchange_price": "400",
+ "durability": null,
"name": "Ham hood",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4302",
- "bonuses": "0,0,0,0,0,0,1,2,0,1,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,2,0,1,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -42138,17 +39697,15 @@
{
"ge_buy_limit": "100",
"examine": "A HAM cape.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "25",
+ "durability": null,
"name": "Ham cloak",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4304",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42166,9 +39723,8 @@
"durability": null,
"name": "H.a.m logo",
"tradeable": "true",
- "low_alchemy": "30",
- "high_alchemy": "45",
"archery_ticket_price": "0",
+ "weight": "0.5",
"id": "4306",
"equipment_slot": "2"
},
@@ -42183,9 +39739,12 @@
},
{
"ge_buy_limit": "10",
+ "examine": "Gloves worn by the Humans Against Monsters group.",
"grand_exchange_price": "59",
"durability": null,
"name": "Gloves",
+ "tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4308",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
@@ -42202,12 +39761,16 @@
},
{
"ge_buy_limit": "100",
+ "examine": "Boots worn by the Humans Against Monsters group.",
"grand_exchange_price": "323",
"durability": null,
"name": "Boots",
+ "tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4310",
"bonuses": "0,0,0,0,0,0,1,1,0,0,0,0,0,0,0",
+ "equip_audio": "",
"equipment_slot": "10"
},
{
@@ -42224,7 +39787,6 @@
"durability": null,
"name": "Crystal of seren",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4313"
},
@@ -42232,17 +39794,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "2342",
+ "durability": null,
"name": "Team-1 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4315",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42257,17 +39817,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1145",
+ "durability": null,
"name": "Team-2 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4317",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42282,17 +39840,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "141",
+ "durability": null,
"name": "Team-3 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4319",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42307,17 +39863,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "973",
+ "durability": null,
"name": "Team-4 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4321",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42332,17 +39886,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1294",
+ "durability": null,
"name": "Team-5 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4323",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42357,17 +39909,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "124",
+ "durability": null,
"name": "Team-6 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4325",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42382,17 +39932,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1264",
+ "durability": null,
"name": "Team-7 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4327",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42407,17 +39955,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1824",
+ "durability": null,
"name": "Team-8 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4329",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42432,17 +39978,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "841",
+ "durability": null,
"name": "Team-9 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4331",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42457,17 +40001,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1127",
+ "durability": null,
"name": "Team-10 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4333",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42482,17 +40024,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "2011",
+ "durability": null,
"name": "Team-11 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4335",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42507,17 +40047,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1591",
+ "durability": null,
"name": "Team-12 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4337",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42532,17 +40070,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "308",
+ "durability": null,
"name": "Team-13 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4339",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42557,17 +40093,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1504",
+ "durability": null,
"name": "Team-14 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4341",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42582,17 +40116,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1462",
+ "durability": null,
"name": "Team-15 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4343",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42607,17 +40139,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "313",
+ "durability": null,
"name": "Team-16 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4345",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42632,17 +40162,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1231",
+ "durability": null,
"name": "Team-17 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4347",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42657,17 +40185,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1678",
+ "durability": null,
"name": "Team-18 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4349",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42682,17 +40208,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1041",
+ "durability": null,
"name": "Team-19 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4351",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42707,17 +40231,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "703",
+ "durability": null,
"name": "Team-20 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4353",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42732,17 +40254,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1292",
+ "durability": null,
"name": "Team-21 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4355",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42757,17 +40277,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1368",
+ "durability": null,
"name": "Team-22 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4357",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42782,17 +40300,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "280",
+ "durability": null,
"name": "Team-23 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4359",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42807,17 +40323,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1512",
+ "durability": null,
"name": "Team-24 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4361",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42832,17 +40346,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1395",
+ "durability": null,
"name": "Team-25 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4363",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42857,17 +40369,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "191",
+ "durability": null,
"name": "Team-26 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4365",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42882,17 +40392,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1420",
+ "durability": null,
"name": "Team-27 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4367",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42907,17 +40415,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1920",
+ "durability": null,
"name": "Team-28 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4369",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42932,17 +40438,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1175",
+ "durability": null,
"name": "Team-29 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4371",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42957,17 +40461,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "552",
+ "durability": null,
"name": "Team-30 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4373",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -42982,17 +40484,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1385",
+ "durability": null,
"name": "Team-31 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4375",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43007,17 +40507,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1168",
+ "durability": null,
"name": "Team-32 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4377",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43032,17 +40530,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "211",
+ "durability": null,
"name": "Team-33 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4379",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43057,17 +40553,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1128",
+ "durability": null,
"name": "Team-34 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4381",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43082,17 +40576,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1140",
+ "durability": null,
"name": "Team-35 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4383",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43107,17 +40599,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "84",
+ "durability": null,
"name": "Team-36 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4385",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43132,17 +40622,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1010",
+ "durability": null,
"name": "Team-37 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4387",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43157,17 +40645,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1833",
+ "durability": null,
"name": "Team-38 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4389",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43182,17 +40668,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "914",
+ "durability": null,
"name": "Team-39 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4391",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43207,17 +40691,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "582",
+ "durability": null,
"name": "Team-40 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4393",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43232,17 +40714,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1471",
+ "durability": null,
"name": "Team-41 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4395",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43257,17 +40737,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1072",
+ "durability": null,
"name": "Team-42 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4397",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43282,17 +40760,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "298",
+ "durability": null,
"name": "Team-43 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4399",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43307,17 +40783,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1268",
+ "durability": null,
"name": "Team-44 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4401",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43332,17 +40806,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1371",
+ "durability": null,
"name": "Team-45 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4403",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43357,17 +40829,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "140",
+ "durability": null,
"name": "Team-46 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4405",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43382,17 +40852,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1233",
+ "durability": null,
"name": "Team-47 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4407",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43407,17 +40875,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1836",
+ "durability": null,
"name": "Team-48 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4409",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43432,17 +40898,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1185",
+ "durability": null,
"name": "Team-49 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4411",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43457,17 +40921,15 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "Ooohhh look at the pretty colours...",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "708",
+ "durability": null,
"name": "Team-50 cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4413",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -43482,8 +40944,6 @@
"examine": "A jungle forester's blunt axe.",
"durability": null,
"name": "Blunt axe",
- "low_alchemy": "22",
- "high_alchemy": "33",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "4415"
@@ -43503,8 +40963,6 @@
"durability": null,
"name": "Guthix rest(4)",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "4417"
},
@@ -43524,8 +40982,6 @@
"durability": null,
"name": "Guthix rest(3)",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "4419"
},
@@ -43545,8 +41001,6 @@
"durability": null,
"name": "Guthix rest(2)",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "4421"
},
@@ -43566,8 +41020,6 @@
"durability": null,
"name": "Guthix rest(1)",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "4423"
},
@@ -43608,8 +41060,6 @@
"examine": "An animate rock spell is written on this parchment.",
"durability": null,
"name": "Animate rock scroll",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "4428"
},
@@ -43648,8 +41098,6 @@
"durability": null,
"name": "Airtight pot",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "4436"
@@ -43670,8 +41118,6 @@
"durability": null,
"name": "Unfired pot lid",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4438"
},
@@ -43691,8 +41137,6 @@
"durability": null,
"name": "Pot lid",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "4440"
},
@@ -43724,8 +41168,6 @@
"examine": "A jungle forester's super sharp axe.",
"durability": null,
"name": "Sharpened axe",
- "low_alchemy": "22",
- "high_alchemy": "33",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "4444"
@@ -43765,8 +41207,6 @@
"durability": null,
"name": "Bowl of hot water",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4456"
@@ -43787,8 +41227,6 @@
"durability": null,
"name": "Cup of water",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4458"
},
@@ -43808,8 +41246,6 @@
"durability": null,
"name": "Cup of hot water",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4460"
},
@@ -43827,8 +41263,6 @@
"durability": null,
"name": "Ruined herb tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4462"
},
@@ -43846,8 +41280,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4464"
},
@@ -43867,8 +41299,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4466"
},
@@ -43888,8 +41318,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4468"
},
@@ -43909,8 +41337,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4470"
},
@@ -43930,8 +41356,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4472"
},
@@ -43951,8 +41375,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4474"
},
@@ -43972,8 +41394,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4476"
},
@@ -43993,8 +41413,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4478"
},
@@ -44014,8 +41432,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4480"
},
@@ -44035,8 +41451,6 @@
"durability": null,
"name": "Herb tea mix",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4482"
},
@@ -44138,8 +41552,6 @@
"durability": null,
"name": "Rope",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "4498",
@@ -44190,14 +41602,14 @@
"examine": "A very decorative sword.",
"walk_anim": "819",
"durability": null,
- "low_alchemy": "520",
- "high_alchemy": "780",
"weight": "1",
"turn90ccw_anim": "822",
"weapon_interface": "6",
"turn180_anim": "820",
+ "equip_audio": "2248",
"render_anim": "1",
"defence_anim": "397",
+ "castle_wars_ticket_price": "50",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
"stand_anim": "808",
@@ -44216,6 +41628,7 @@
"archery_ticket_price": "0",
"id": "4504",
"bonuses": "0,0,0,-30,-10,46,44,38,-6,44,20,0,0,0,0",
+ "castle_wars_ticket_price": "80",
"equipment_slot": "4"
},
{
@@ -44225,6 +41638,7 @@
"archery_ticket_price": "0",
"id": "4505",
"bonuses": "0,0,0,-21,-7,24,22,20,-4,22,5,0,0,0,0",
+ "castle_wars_ticket_price": "60",
"equipment_slot": "7"
},
{
@@ -44233,14 +41647,13 @@
"shop_price": "40",
"examine": "A very decorative helm.",
"durability": null,
- "low_alchemy": "312",
- "high_alchemy": "468",
- "weight": "1",
- "equipment_slot": "0",
"name": "Decorative helm",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "4506",
- "bonuses": "0,0,0,-3,-1,10,11,9,-1,10,5,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,10,11,9,-1,10,5,0,0,0,0",
+ "castle_wars_ticket_price": "40",
+ "equipment_slot": "0"
},
{
"requirements": "{1,20}",
@@ -44251,6 +41664,7 @@
"archery_ticket_price": "0",
"id": "4507",
"bonuses": "0,0,0,-8,-2,18,22,20,-1,20,20,0,0,0,0",
+ "castle_wars_ticket_price": "60",
"equipment_slot": "5"
},
{
@@ -44260,14 +41674,14 @@
"examine": "A very decorative sword.",
"walk_anim": "819",
"durability": null,
- "low_alchemy": "520",
- "high_alchemy": "780",
"weight": "1",
"turn90ccw_anim": "822",
"weapon_interface": "6",
"turn180_anim": "820",
+ "equip_audio": "2248",
"render_anim": "1",
"defence_anim": "397",
+ "castle_wars_ticket_price": "500",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
"stand_anim": "808",
@@ -44286,6 +41700,7 @@
"archery_ticket_price": "0",
"id": "4509",
"bonuses": "0,0,0,-30,-10,65,63,55,-6,63,30,0,0,0,0",
+ "castle_wars_ticket_price": "800",
"equipment_slot": "4"
},
{
@@ -44295,6 +41710,7 @@
"archery_ticket_price": "0",
"id": "4510",
"bonuses": "0,0,0,-21,-7,33,31,29,-4,31,10,0,0,0,0",
+ "castle_wars_ticket_price": "600",
"equipment_slot": "7"
},
{
@@ -44303,14 +41719,13 @@
"shop_price": "40",
"examine": "A very decorative helm.",
"durability": null,
- "low_alchemy": "312",
- "high_alchemy": "468",
- "weight": "1",
- "equipment_slot": "0",
"name": "Decorative helm",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "4511",
- "bonuses": "0,0,0,-3,-1,14,15,13,-1,14,6,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,14,15,13,-1,14,6,0,0,0,0",
+ "castle_wars_ticket_price": "400",
+ "equipment_slot": "0"
},
{
"requirements": "{1,30}",
@@ -44321,6 +41736,7 @@
"archery_ticket_price": "0",
"id": "4512",
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,30,0,0,0,0",
+ "castle_wars_ticket_price": "600",
"equipment_slot": "5"
},
{
@@ -44330,6 +41746,7 @@
"archery_ticket_price": "0",
"id": "4513",
"bonuses": "0,0,0,0,0,0,1,2,0,1,0,0,0,0,0",
+ "castle_wars_ticket_price": "10",
"equipment_slot": "0"
},
{
@@ -44338,6 +41755,7 @@
"archery_ticket_price": "0",
"id": "4514",
"bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "castle_wars_ticket_price": "10",
"equipment_slot": "1"
},
{
@@ -44347,6 +41765,7 @@
"archery_ticket_price": "0",
"id": "4515",
"bonuses": "0,0,0,0,0,0,1,2,0,1,0,0,0,0,0",
+ "castle_wars_ticket_price": "10",
"equipment_slot": "0"
},
{
@@ -44355,6 +41774,7 @@
"archery_ticket_price": "0",
"id": "4516",
"bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "castle_wars_ticket_price": "10",
"equipment_slot": "1"
},
{
@@ -44364,8 +41784,6 @@
"durability": null,
"name": "Giant frog legs",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "4517"
@@ -44384,13 +41802,11 @@
"shop_price": "10",
"ge_buy_limit": "100",
"examine": "Empty: An oil lamp with no oil in it.Filled: Not the genie sort.",
- "durability": null,
- "low_alchemy": "11",
- "high_alchemy": "16",
- "weight": "0.4",
"grand_exchange_price": "1575",
+ "durability": null,
"name": "Oil lamp",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4522"
},
@@ -44410,8 +41826,6 @@
"durability": null,
"name": "Oil lamp",
"tradeable": "true",
- "low_alchemy": "11",
- "high_alchemy": "16",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "4524"
@@ -44421,13 +41835,11 @@
"shop_price": "10",
"ge_buy_limit": "100",
"examine": "Empty: An oil lamp with no oil in it.Filled: Not the genie sort.",
- "durability": null,
- "low_alchemy": "11",
- "high_alchemy": "16",
- "weight": "0.4",
"grand_exchange_price": "2",
+ "durability": null,
"name": "Oil lamp",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "4525"
},
@@ -44448,8 +41860,6 @@
"durability": null,
"name": "Candle lantern",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4527"
@@ -44471,8 +41881,6 @@
"durability": null,
"name": "Candle lantern",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4529"
@@ -44492,8 +41900,6 @@
"durability": null,
"name": "Candle lantern",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4531"
@@ -44505,8 +41911,6 @@
"durability": null,
"name": "Candle lantern",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4532"
@@ -44524,8 +41928,6 @@
"durability": null,
"name": "Candle lantern",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4534"
@@ -44538,8 +41940,6 @@
"durability": null,
"name": "Oil lantern",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4535"
@@ -44561,8 +41961,6 @@
"durability": null,
"name": "Oil lantern",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4537"
@@ -44582,8 +41980,6 @@
"durability": null,
"name": "Oil lantern",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4539"
@@ -44596,8 +41992,6 @@
"durability": null,
"name": "Oil lantern frame",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "4540"
},
@@ -44618,8 +42012,6 @@
"durability": null,
"name": "Lantern lens",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"archery_ticket_price": "0",
"id": "4542"
},
@@ -44639,9 +42031,7 @@
"grand_exchange_price": "88",
"durability": null,
"name": "Bullseye lantern",
- "low_alchemy": "168",
"tradeable": "true",
- "high_alchemy": "252",
"weight": "1",
"archery_ticket_price": "0",
"id": "4544"
@@ -44660,13 +42050,11 @@
"shop_price": "400",
"ge_buy_limit": "100",
"examine": "You need to add lamp oil before you can use it.",
- "durability": null,
- "low_alchemy": "168",
- "high_alchemy": "252",
- "weight": "1",
"grand_exchange_price": "158",
+ "durability": null,
"name": "Bullseye lantern",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "4546"
},
@@ -44684,13 +42072,11 @@
"shop_price": "400",
"ge_buy_limit": "100",
"examine": "A sturdy steel lantern.",
- "durability": null,
- "low_alchemy": "168",
- "high_alchemy": "252",
- "weight": "1",
"grand_exchange_price": "1345",
+ "durability": null,
"name": "Bullseye lantern",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "4548"
},
@@ -44709,22 +42095,18 @@
"grand_exchange_price": "1235",
"durability": null,
"name": "Bullseye lantern",
- "low_alchemy": "168",
"tradeable": "false",
- "high_alchemy": "252",
"weight": "1",
"archery_ticket_price": "0",
"id": "4550"
},
{
"remove_head": "true",
- "requirements": "{1,5}-{18,35}",
+ "requirements": "{1,5}",
"shop_price": "650",
"ge_buy_limit": "100",
"examine": "You don't want to wear it inside-out.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"weight": "2.2",
"remove_beard": "true",
"equipment_slot": "0",
@@ -44771,8 +42153,6 @@
"durability": null,
"name": "Purple sweets",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "4561"
},
@@ -44819,15 +42199,17 @@
"stand_turn_anim": "823"
},
{
- "examine": "Perhaps not the most powerful weapon in RuneScape.",
+ "examine": "Perhaps not the most powerful weapon in 2009Scape.",
"durability": null,
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "12",
+ "equip_audio": "2238",
"defence_anim": "1834",
"equipment_slot": "3",
"attack_anims": "1833,1833,1833,1833",
"fun_weapon": "true",
+ "attack_audios": "2257,2257,2257",
"name": "Rubber chicken",
"archery_ticket_price": "0",
"id": "4566",
@@ -44894,31 +42276,30 @@
"id": "4574"
},
{
+ "requirements": "{0,10}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A black tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "260",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "536",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Black spear",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4580",
"stand_turn_anim": "1209",
- "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0",
- "requirements": "{0,10}",
- "durability": null,
- "high_alchemy": "390",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Black spear"
+ "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -44930,31 +42311,30 @@
"id": "4581"
},
{
+ "requirements": "{0,10}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A black tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "260",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "2808",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Black spear(p)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4582",
"stand_turn_anim": "1209",
- "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0",
- "requirements": "{0,10}",
- "durability": null,
- "high_alchemy": "390",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Black spear(p)"
+ "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -44968,23 +42348,21 @@
{
"requirements": "{0,10}",
"turn90cw_anim": "1207",
- "examine": "A black tipped spear.",
+ "examine": "A Karambwan poisoned black tipped spear.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "309",
"stand_anim": "813",
"name": "Black spear(kp)",
- "tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4584",
@@ -44996,8 +42374,7 @@
"ge_buy_limit": "10",
"examine": "This looks pretty heavy.",
"durability": null,
- "low_alchemy": "108000",
- "high_alchemy": "162000",
+ "rare_item": "true",
"weight": "9",
"absorb": "3,0,6",
"equipment_slot": "7",
@@ -45024,7 +42401,6 @@
"examine": "A vicious, curved sword.",
"walk_anim": "819",
"has_special": "true",
- "low_alchemy": "40000",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -45042,9 +42418,9 @@
"requirements": "{0,60}",
"shop_price": "100000",
"durability": null,
- "high_alchemy": "60000",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"lendable": "true",
"attack_audios": "2500,0,2517,0",
@@ -45099,8 +42475,6 @@
"durability": null,
"name": "Note",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "4597"
},
@@ -45110,8 +42484,6 @@
"durability": null,
"name": "Note",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "4598"
},
@@ -45119,26 +42491,28 @@
"shop_price": "1",
"examine": "A handy little club made out of oak.",
"durability": null,
- "name": "Oak-blackjack",
"weight": "1.8",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "4599",
"weapon_interface": "10",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,2,0,0,0",
- "equipment_slot": "3"
+ "defence_anim": "425",
+ "equipment_slot": "3",
+ "attack_anims": "395,395,395,395",
+ "name": "Oak-blackjack",
+ "archery_ticket_price": "0",
+ "id": "4599",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,2,0,0,0"
},
{
"shop_price": "600",
"ge_buy_limit": "100",
"examine": "A handy little club made out of willow.",
"durability": null,
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
+ "defence_anim": "425",
"equipment_slot": "3",
+ "attack_anims": "395,395,395,395",
"grand_exchange_price": "321",
"name": "Willow-blackjack",
"tradeable": "true",
@@ -45184,7 +42558,6 @@
"examine": "Makes a hissing sound.",
"durability": null,
"name": "Snake charm",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4605",
@@ -45213,8 +42586,6 @@
"durability": null,
"name": "Super kebab",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "4608"
@@ -45258,8 +42629,6 @@
"examine": "It has a picture of a dragon on it.",
"durability": null,
"name": "Spinning plate",
- "low_alchemy": "30",
- "high_alchemy": "45",
"archery_ticket_price": "0",
"id": "4613"
},
@@ -45292,7 +42661,7 @@
"id": "4619"
},
{
- "examine": "It looks horrible.On ground: Not good for eating.",
+ "examine": "It looks horrible.",
"durability": null,
"name": "Black mushroom",
"weight": "1",
@@ -45338,8 +42707,6 @@
"durability": null,
"name": "Bandit's brew",
"tradeable": "true",
- "low_alchemy": "260",
- "high_alchemy": "390",
"archery_ticket_price": "0",
"id": "4627"
},
@@ -45356,8 +42723,6 @@
"examine": "A copy of the engravings found on a mysterious stone tablet.",
"durability": null,
"name": "Etchings",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "4654"
},
@@ -45365,8 +42730,6 @@
"examine": "A rough translation made from archaeological etchings.",
"durability": null,
"name": "Translation",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "1",
"archery_ticket_price": "0",
"id": "4655"
@@ -45375,8 +42738,6 @@
"examine": "This key is unusally warm to the touch.",
"durability": null,
"name": "Warm key",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "4656"
},
@@ -45389,7 +42750,7 @@
"equipment_slot": "12"
},
{
- "examine": "Frank's shiny silver coated pot.",
+ "examine": "A silver pot made by Ruantun.",
"durability": null,
"name": "Silver pot",
"tradeable": "false",
@@ -45406,7 +42767,7 @@
"id": "4659"
},
{
- "examine": "Frank's shiny silver coated pot.",
+ "examine": "A silver pot made by Ruantun filled with your blood.",
"durability": null,
"name": "Silver pot",
"tradeable": "false",
@@ -45415,7 +42776,7 @@
"id": "4660"
},
{
- "examine": "A silver pot made by Ruantun and blessed on Entrana.",
+ "examine": "A blessed silver pot made by Ruantun filled with your blood.",
"durability": null,
"name": "Blessed pot",
"weight": "2",
@@ -45423,7 +42784,7 @@
"id": "4661"
},
{
- "examine": "Frank's shiny silver coated pot.",
+ "examine": "A silver pot made by Ruantun filled with blood and garlic.",
"durability": null,
"name": "Silver pot",
"tradeable": "false",
@@ -45432,7 +42793,7 @@
"id": "4662"
},
{
- "examine": "A silver pot made by Ruantun and blessed on Entrana.",
+ "examine": "A blessed silver pot filled with blood and garlic.",
"durability": null,
"name": "Blessed pot",
"weight": "2",
@@ -45440,7 +42801,7 @@
"id": "4663"
},
{
- "examine": "Frank's shiny silver coated pot.",
+ "examine": "A silver pot made by Ruantun filled with blood and spices.",
"durability": null,
"name": "Silver pot",
"tradeable": "false",
@@ -45449,7 +42810,7 @@
"id": "4664"
},
{
- "examine": "A silver pot made by Ruantun and blessed on Entrana.",
+ "examine": "A blessed silver pot filled with blood and spices.",
"durability": null,
"name": "Blessed pot",
"weight": "2",
@@ -45457,7 +42818,7 @@
"id": "4665"
},
{
- "examine": "Frank's shiny silver coated pot.",
+ "examine": "A silver pot made by Ruantun filled with blood, garlic and spices.",
"durability": null,
"name": "Silver pot",
"tradeable": "false",
@@ -45466,7 +42827,7 @@
"id": "4666"
},
{
- "examine": "A silver pot made by Ruantun and blessed on Entrana.",
+ "examine": "A blessed silver pot filled with blood, garlic and spices.",
"durability": null,
"name": "Blessed pot",
"weight": "2",
@@ -45477,8 +42838,6 @@
"examine": "Finely ground garlic powder.",
"durability": null,
"name": "Garlic powder",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "4668"
},
@@ -45516,8 +42875,6 @@
"examine": "An old and strangely shaped metal cross.",
"durability": null,
"name": "Gilded cross",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "4674"
},
@@ -45526,7 +42883,6 @@
"turn90cw_anim": "1207",
"examine": "A magical staff of ancient origin...",
"walk_anim": "1205",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -45544,9 +42900,9 @@
"requirements": "{0,50}-{6,50}",
"shop_price": "80000",
"durability": null,
- "high_alchemy": "60000",
"weight": "2.25",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"attack_audios": "2555,0,0,0",
@@ -45609,8 +42965,6 @@
"durability": null,
"name": "Holy symbol",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "4682",
"bonuses": "0,0,0,0,0,2,2,2,2,2,3,0,0,8,0"
@@ -45622,8 +42976,6 @@
"durability": null,
"name": "Unholy symbol",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "4683",
"bonuses": "2,2,2,2,2,0,0,0,0,0,0,0,0,8,0"
@@ -45633,8 +42985,6 @@
"examine": "One sheet of mummy wrap.",
"durability": null,
"name": "Linen",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "4684"
@@ -45650,8 +43000,6 @@
"examine": "It's a bucket of sap.",
"durability": null,
"name": "Bucket of sap",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "2",
"archery_ticket_price": "0",
"id": "4687"
@@ -45660,8 +43008,6 @@
"examine": "A little heap of salt.",
"durability": null,
"name": "Pile of salt",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "4689"
},
@@ -45679,8 +43025,6 @@
"durability": null,
"name": "Gold leaf",
"tradeable": "true",
- "low_alchemy": "52000",
- "high_alchemy": "78000",
"weight": "1",
"archery_ticket_price": "0",
"id": "4692"
@@ -45700,8 +43044,6 @@
"durability": null,
"name": "Steam rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4694"
},
@@ -45713,8 +43055,6 @@
"durability": null,
"name": "Mist rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4695"
},
@@ -45726,8 +43066,6 @@
"durability": null,
"name": "Dust rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4696"
},
@@ -45739,8 +43077,6 @@
"durability": null,
"name": "Smoke rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4697"
},
@@ -45752,8 +43088,6 @@
"durability": null,
"name": "Mud rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4698"
},
@@ -45765,8 +43099,6 @@
"durability": null,
"name": "Lava rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4699"
},
@@ -45774,8 +43106,6 @@
"examine": "You need to add lamp oil before you can use it.",
"durability": null,
"name": "Sapphire lantern",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "4700"
@@ -45784,8 +43114,6 @@
"examine": "A bullseye lantern with a sapphire for a lens.",
"durability": null,
"name": "Sapphire lantern",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "4701"
@@ -45794,22 +43122,18 @@
"examine": "A lantern casting a bright blue beam.",
"durability": null,
"name": "Sapphire lantern",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "4702"
},
{
- "shop_price": "975000",
- "examine": "A magic stone to make high-level furniture.",
- "grand_exchange_price": "977755",
+ "shop_price": "1",
+ "examine": "Doesn't look very special.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Magic stone",
- "tradeable": "true",
- "low_alchemy": "390000",
- "high_alchemy": "585000",
- "weight": "1",
+ "tradeable": "false",
+ "weight": "2.267",
"archery_ticket_price": "0",
"id": "4703"
},
@@ -45836,8 +43160,6 @@
"examine": "This book must be really old!",
"durability": null,
"name": "Crumbling tome",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "4707"
},
@@ -45848,8 +43170,6 @@
"examine": "Ahrim the Blighted's leather hood.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "0.9",
"absorb": "5,2,0",
"equipment_slot": "0",
@@ -45876,7 +43196,6 @@
"examine": "Ahrim the Blighted's quarterstaff.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "34000",
"turn90ccw_anim": "1208",
"attack_speed": "6",
"two_handed": "true",
@@ -45894,9 +43213,9 @@
"bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0",
"requirements": "{0,70}-{6,70}",
"durability": null,
- "high_alchemy": "51000",
"weight": "2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Ahrim's staff"
@@ -45917,8 +43236,6 @@
"examine": "Ahrim the Blighted's armoured robe top.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "5",
"absorb": "10,5,0",
"equipment_slot": "4",
@@ -45946,8 +43263,6 @@
"examine": "Ahrim the Blighted's armoured robe skirt.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "18800",
- "high_alchemy": "28200",
"weight": "12",
"absorb": "7,3,0",
"equipment_slot": "7",
@@ -45975,10 +43290,9 @@
"examine": "Dharok the Wretched's helm.",
"durability": "1",
"rare_item": "true",
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1300000",
"name": "Dharok's helm",
@@ -46003,7 +43317,6 @@
"examine": "Dharok the Wretched's greataxe.",
"walk_anim": "2064",
"rare_item": "true",
- "low_alchemy": "83200",
"turn90ccw_anim": "822",
"attack_speed": "7",
"two_handed": "true",
@@ -46021,9 +43334,9 @@
"bonuses": "-4,103,95,-4,0,0,0,0,0,-1,0,105,0,0,0",
"requirements": "{0,70}-{2,70}",
"durability": null,
- "high_alchemy": "124800",
"weight": "13",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "134",
"name": "Dharok's greataxe"
},
@@ -46043,10 +43356,9 @@
"examine": "Dharok the Wretched's platebody armour.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9.9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "511400",
@@ -46072,10 +43384,9 @@
"examine": "Dharok the Wretched's plate leg armour.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "10",
"absorb": "3,0,7",
+ "equip_audio": "2243",
"equipment_slot": "7",
"grand_exchange_price": "748800",
"name": "Dharok's platelegs",
@@ -46101,10 +43412,9 @@
"examine": "Guthan the Infested's helm",
"durability": null,
"rare_item": "true",
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "2",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "396300",
@@ -46130,7 +43440,6 @@
"examine": "Guthan the Infested's warspear.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -46148,9 +43457,9 @@
"bonuses": "75,75,75,0,0,7,7,7,0,0,0,75,0,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "60000",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Guthan's warspear"
},
@@ -46170,10 +43479,9 @@
"examine": "Guthan the Infested's platebody armour.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "316800",
@@ -46199,10 +43507,9 @@
"examine": "Guthan the Infested's chainskirt.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "8",
"absorb": "3,0,7",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "315600",
"name": "Guthan's chainskirt",
@@ -46228,9 +43535,8 @@
"examine": "Karil the Tainted's coif.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"absorb": "0,5,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "38900",
@@ -46256,7 +43562,6 @@
"examine": "Karil the Tainted's repeating crossbow.",
"walk_anim": "2076",
"rare_item": "true",
- "low_alchemy": "64000",
"turn90ccw_anim": "2076",
"attack_speed": "4",
"two_handed": "true",
@@ -46274,9 +43579,9 @@
"bonuses": "0,0,0,0,84,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "372",
"attack_audios": "2700,0,0,0",
"name": "Karil's crossbow"
@@ -46297,10 +43602,9 @@
"examine": "Karil the Tainted's leather body armour.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6",
"absorb": "0,10,5",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "1800000",
@@ -46326,10 +43630,9 @@
"examine": "Karil the Tainted's leather skirt.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "18800",
- "high_alchemy": "28200",
"weight": "2",
"absorb": "0,7,3",
+ "equip_audio": "2238",
"equipment_slot": "7",
"grand_exchange_price": "217000",
"name": "Karil's leatherskirt",
@@ -46353,16 +43656,14 @@
"shop_price": "420",
"ge_buy_limit": "10000",
"examine": "Must need a special type of crossbow to use this.",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "equipment_slot": "13",
"grand_exchange_price": "238",
+ "durability": null,
"name": "Bolt rack",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4740",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,55"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,55",
+ "equipment_slot": "13"
},
{
"remove_head": "true",
@@ -46371,10 +43672,9 @@
"examine": "Torag the Corrupted's helm.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "5",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "139000",
@@ -46400,12 +43700,11 @@
"examine": "Torag the Corrupted's twin hammers.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "3",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "2068,2068,2068,2068",
@@ -46433,10 +43732,9 @@
"examine": "Torag the Corrupted's platebody armour.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "346200",
@@ -46462,10 +43760,9 @@
"examine": "Torag the Corrupted's plate leg armour.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "9",
"absorb": "3,0,7",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "427200",
"name": "Torag's platelegs",
@@ -46491,10 +43788,9 @@
"examine": "Verac the Defiled's helm.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "687200",
@@ -46520,7 +43816,6 @@
"examine": "Verac the Defiled's flail.",
"walk_anim": "1830",
"rare_item": "true",
- "low_alchemy": "64000",
"turn90ccw_anim": "2060",
"attack_speed": "5",
"two_handed": "true",
@@ -46538,9 +43833,9 @@
"bonuses": "68,-2,82,0,0,0,0,0,0,0,0,72,6,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "8",
+ "equip_audio": "2246",
"render_anim": "1426",
"attack_audios": "1323,0,0,0",
"name": "Verac's flail"
@@ -46561,10 +43856,9 @@
"examine": "Verac the Defiled's brassard.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "5",
"absorb": "5,0,10",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "270000",
@@ -46590,10 +43884,9 @@
"examine": "Verac the Defiled's plate skirt.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "411400",
"name": "Verac's plateskirt",
@@ -46616,114 +43909,99 @@
"requirements": "{4,30}",
"ge_buy_limit": "1000",
"examine": "Blunt bronze arrow...ouch",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "equipment_slot": "13",
"grand_exchange_price": "39",
+ "durability": null,
"name": "Bronze brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4773",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,11"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,11",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"ge_buy_limit": "1000",
"examine": "Blunt iron arrow...ouch",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "equipment_slot": "13",
"grand_exchange_price": "14",
+ "durability": null,
"name": "Iron brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4778",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,13"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,13",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"ge_buy_limit": "1000",
"examine": "Blunt steel arrow...ouch",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "20",
+ "durability": null,
"name": "Steel brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4783",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,19"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,19",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"ge_buy_limit": "1000",
"examine": "Blunt black arrow...ouch",
- "durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
- "equipment_slot": "13",
"grand_exchange_price": "63",
+ "durability": null,
"name": "Black brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4788",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"shop_price": "20",
"ge_buy_limit": "1000",
"examine": "Blunt mithril arrow...ouch",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "equipment_slot": "13",
"grand_exchange_price": "80",
+ "durability": null,
"name": "Mithril brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4793",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,34"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,34",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"ge_buy_limit": "1000",
"examine": "Blunt adamant arrow...ouch",
- "durability": null,
- "low_alchemy": "38",
- "high_alchemy": "57",
- "equipment_slot": "13",
"grand_exchange_price": "154",
+ "durability": null,
"name": "Adamant brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4798",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,45"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,45",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"shop_price": "180",
"ge_buy_limit": "1000",
"examine": "Blunt rune arrow...ouch",
- "durability": null,
- "low_alchemy": "180",
- "high_alchemy": "270",
- "equipment_slot": "13",
"grand_exchange_price": "188",
+ "durability": null,
"name": "Rune brutal",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "4803",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"examine": "A very black prism.",
"durability": null,
"name": "Black prism",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "4808"
},
@@ -46815,8 +44093,6 @@
"durability": null,
"name": "Bronze nails",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "4819"
},
@@ -46828,8 +44104,6 @@
"durability": null,
"name": "Iron nails",
"tradeable": "true",
- "low_alchemy": "13",
- "high_alchemy": "19",
"archery_ticket_price": "0",
"id": "4820"
},
@@ -46840,8 +44114,6 @@
"durability": null,
"name": "Black nails",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "4821"
},
@@ -46852,8 +44124,6 @@
"durability": null,
"name": "Mithril nails",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"archery_ticket_price": "0",
"id": "4822"
},
@@ -46864,8 +44134,6 @@
"durability": null,
"name": "Adamantite nails",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "27",
"archery_ticket_price": "0",
"id": "4823"
},
@@ -46876,8 +44144,6 @@
"durability": null,
"name": "Rune nails",
"tradeable": "true",
- "low_alchemy": "88",
- "high_alchemy": "132",
"archery_ticket_price": "0",
"id": "4824"
},
@@ -46888,8 +44154,6 @@
"durability": null,
"name": "Unstrung comp bow",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "4825"
},
@@ -46908,8 +44172,6 @@
"ge_buy_limit": "100",
"examine": "A composite ogre bow.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "1.8",
"attack_speed": "5",
"two_handed": "true",
@@ -47024,8 +44286,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "4838"
@@ -47044,8 +44304,6 @@
"durability": null,
"name": "Rogue's purse potion(unf)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "4840"
},
@@ -47145,8 +44403,6 @@
"durability": null,
"name": "Ogre coffin key",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "4850"
},
@@ -47160,7 +44416,7 @@
"id": "4851"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed fayrg bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -47168,7 +44424,7 @@
"id": "4852"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed raurg bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -47176,7 +44432,7 @@
"id": "4853"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed ourg bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -47184,7 +44440,7 @@
"id": "4854"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed gorilla monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -47195,65 +44451,57 @@
"remove_head": "true",
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's leather hood.",
- "durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
- "weight": "0.9",
- "absorb": "5,2,0",
- "equipment_slot": "0",
"grand_exchange_price": "77678",
+ "durability": null,
"name": "Ahrim's hood 100",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "4856",
- "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0"
+ "absorb": "5,2,0",
+ "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's leather hood.",
- "durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
- "weight": "0.9",
- "absorb": "5,2,0",
- "equipment_slot": "0",
"grand_exchange_price": "77678",
+ "durability": null,
"name": "Ahrim's hood 75",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "4857",
- "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0"
+ "absorb": "5,2,0",
+ "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's leather hood.",
- "durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
- "weight": "0.9",
- "absorb": "5,2,0",
- "equipment_slot": "0",
"grand_exchange_price": "77678",
+ "durability": null,
"name": "Ahrim's hood 50",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "4858",
- "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0"
+ "absorb": "5,2,0",
+ "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's leather hood.",
- "durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
- "weight": "0.9",
- "absorb": "5,2,0",
- "equipment_slot": "0",
"grand_exchange_price": "77678",
+ "durability": null,
"name": "Ahrim's hood 25",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "4859",
- "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0"
+ "absorb": "5,2,0",
+ "bonuses": "0,0,0,6,-2,15,13,16,6,0,15,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
@@ -47261,8 +44509,6 @@
"ge_buy_limit": "10",
"examine": "Ahrim the Blighted's leather hood.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "0.9",
"absorb": "5,2,0",
"equipment_slot": "0",
@@ -47283,112 +44529,108 @@
"id": "4861"
},
{
+ "requirements": "{0,70}-{6,70}",
"turn90cw_anim": "1207",
"examine": "Ahrim the Blighted's quarterstaff.",
"walk_anim": "1205",
- "low_alchemy": "34000",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "6",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "420",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "50655",
"stand_anim": "813",
+ "attack_audios": "2555,0,0,0",
+ "name": "Ahrim's staff 100",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4862",
"stand_turn_anim": "1209",
- "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0",
- "requirements": "{0,70}-{6,70}",
- "durability": null,
- "high_alchemy": "51000",
- "weight": "2",
- "weapon_interface": "1",
- "render_anim": "28",
- "attack_audios": "2555,0,0,0",
- "name": "Ahrim's staff 100"
+ "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0"
},
{
+ "requirements": "{0,70}-{6,70}",
"turn90cw_anim": "1207",
"examine": "Ahrim the Blighted's quarterstaff.",
"walk_anim": "1205",
- "low_alchemy": "34000",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "6",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "420",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "50655",
"stand_anim": "813",
+ "attack_audios": "2555,0,0,0",
+ "name": "Ahrim's staff 75",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4863",
"stand_turn_anim": "1209",
- "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0",
- "requirements": "{0,70}-{6,70}",
- "durability": null,
- "high_alchemy": "51000",
- "weight": "2",
- "weapon_interface": "1",
- "render_anim": "28",
- "attack_audios": "2555,0,0,0",
- "name": "Ahrim's staff 75"
+ "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0"
},
{
+ "requirements": "{0,70}-{6,70}",
"turn90cw_anim": "1207",
"examine": "Ahrim the Blighted's quarterstaff.",
"walk_anim": "1205",
- "low_alchemy": "34000",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "6",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "420",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "50655",
"stand_anim": "813",
+ "attack_audios": "2555,0,0,0",
+ "name": "Ahrim's staff 50",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4864",
"stand_turn_anim": "1209",
- "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0",
- "requirements": "{0,70}-{6,70}",
- "durability": null,
- "high_alchemy": "51000",
- "weight": "2",
- "weapon_interface": "1",
- "render_anim": "28",
- "attack_audios": "2555,0,0,0",
- "name": "Ahrim's staff 50"
+ "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0"
},
{
+ "requirements": "{0,70}-{6,70}",
"turn90cw_anim": "1207",
"examine": "Ahrim the Blighted's quarterstaff.",
"walk_anim": "1205",
- "low_alchemy": "34000",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "6",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "420",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "50655",
"stand_anim": "813",
+ "attack_audios": "2555,0,0,0",
+ "name": "Ahrim's staff 25",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4865",
"stand_turn_anim": "1209",
- "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0",
- "requirements": "{0,70}-{6,70}",
- "durability": null,
- "high_alchemy": "51000",
- "weight": "2",
- "weapon_interface": "1",
- "render_anim": "28",
- "attack_audios": "2555,0,0,0",
- "name": "Ahrim's staff 25"
+ "bonuses": "12,-1,65,15,0,3,5,2,15,0,0,68,0,0,0"
},
{
"requirements": "{0,70}-{6,70}",
@@ -47397,13 +44639,12 @@
"examine": "Ahrim the Blighted's quarterstaff.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "34000",
- "high_alchemy": "51000",
"weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "6",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "50600",
@@ -47428,75 +44669,65 @@
},
{
"requirements": "{1,70}-{6,70}",
- "examine": "Ahrim the Blighted's armoured robe top.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "weight": "5",
- "absorb": "10,5,0",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "Ahrim the Blighted's armoured robe top.",
"grand_exchange_price": "1458307",
+ "durability": null,
"name": "Ahrim's top 100",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4868",
- "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0"
+ "absorb": "10,5,0",
+ "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0",
+ "equipment_slot": "4"
},
{
"requirements": "{1,70}-{6,70}",
- "examine": "Ahrim the Blighted's armoured robe top.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "weight": "5",
- "absorb": "10,5,0",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "Ahrim the Blighted's armoured robe top.",
"grand_exchange_price": "1458307",
+ "durability": null,
"name": "Ahrim's top 75",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4869",
- "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0"
+ "absorb": "10,5,0",
+ "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0",
+ "equipment_slot": "4"
},
{
"requirements": "{1,70}-{6,70}",
- "examine": "Ahrim the Blighted's armoured robe top.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "weight": "5",
- "absorb": "10,5,0",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "Ahrim the Blighted's armoured robe top.",
"grand_exchange_price": "1458307",
+ "durability": null,
"name": "Ahrim's top 50",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4870",
- "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0"
+ "absorb": "10,5,0",
+ "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0",
+ "equipment_slot": "4"
},
{
"requirements": "{1,70}-{6,70}",
- "examine": "Ahrim the Blighted's armoured robe top.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "weight": "5",
- "absorb": "10,5,0",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "Ahrim the Blighted's armoured robe top.",
"grand_exchange_price": "1458307",
+ "durability": null,
"name": "Ahrim's top 25",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4871",
- "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0"
+ "absorb": "10,5,0",
+ "bonuses": "0,0,0,30,-10,52,37,63,30,0,60,0,0,0,0",
+ "equipment_slot": "4"
},
{
"requirements": "{1,70}-{6,70}",
"ge_buy_limit": "10",
"examine": "Ahrim the Blighted's armoured robe top.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "5",
"absorb": "10,5,0",
"equipment_slot": "4",
@@ -47520,78 +44751,68 @@
{
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's armoured robe skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "12",
- "absorb": "7,3,0",
- "equipment_slot": "7",
"grand_exchange_price": "1561591",
+ "durability": null,
"name": "Ahrim's skirt 100",
+ "weight": "12",
"archery_ticket_price": "0",
"id": "4874",
- "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0"
+ "absorb": "7,3,0",
+ "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's armoured robe skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "12",
- "absorb": "7,3,0",
- "equipment_slot": "7",
"grand_exchange_price": "1561591",
+ "durability": null,
"name": "Ahrim's skirt 75",
+ "weight": "12",
"archery_ticket_price": "0",
"id": "4875",
- "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0"
+ "absorb": "7,3,0",
+ "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's armoured robe skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "12",
- "absorb": "7,3,0",
- "equipment_slot": "7",
"grand_exchange_price": "1561591",
+ "durability": null,
"name": "Ahrim's skirt 50",
+ "weight": "12",
"archery_ticket_price": "0",
"id": "4876",
- "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0"
+ "absorb": "7,3,0",
+ "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{6,70}",
"examine": "Ahrim the Blighted's armoured robe skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "12",
- "absorb": "7,3,0",
- "equipment_slot": "7",
"grand_exchange_price": "1561591",
+ "durability": null,
"name": "Ahrim's skirt 25",
+ "weight": "12",
"archery_ticket_price": "0",
"id": "4877",
- "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0"
+ "absorb": "7,3,0",
+ "bonuses": "0,0,0,22,-7,33,30,36,22,0,30,0,0,0,0",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{6,70}",
"ge_buy_limit": "10",
"examine": "Ahrim the Blighted's armoured robe skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "12",
- "absorb": "7,3,0",
- "equipment_slot": "7",
"grand_exchange_price": "1500000",
+ "durability": null,
"name": "Ahrim's skirt 0",
"tradeable": "true",
+ "weight": "12",
"archery_ticket_price": "0",
- "id": "4878"
+ "id": "4878",
+ "absorb": "7,3,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "10",
@@ -47608,10 +44829,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1355582",
"name": "Dharok's helm 100",
@@ -47624,10 +44844,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1355582",
"name": "Dharok's helm 75",
@@ -47640,10 +44859,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1355582",
"name": "Dharok's helm 50",
@@ -47656,10 +44874,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1355582",
"name": "Dharok's helm 25",
@@ -47673,10 +44890,9 @@
"ge_buy_limit": "10",
"examine": "Dharok the Wretched's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "1300000",
"name": "Dharok's helm 0",
@@ -47698,7 +44914,6 @@
"turn90cw_anim": "2064",
"examine": "Dharok the Wretched's greataxe.",
"walk_anim": "2064",
- "low_alchemy": "83200",
"turn90ccw_anim": "2064",
"attack_speed": "7",
"two_handed": "true",
@@ -47715,9 +44930,9 @@
"bonuses": "-4,103,95,-4,0,0,0,0,0,-1,0,105,0,0,0",
"requirements": "{0,70}-{2,70}",
"durability": null,
- "high_alchemy": "124800",
"weight": "13",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "134",
"attack_audios": "1320,0,0,0",
"name": "Dharok's axe 100"
@@ -47726,7 +44941,6 @@
"turn90cw_anim": "2064",
"examine": "Dharok the Wretched's greataxe.",
"walk_anim": "2064",
- "low_alchemy": "83200",
"turn90ccw_anim": "2064",
"attack_speed": "7",
"two_handed": "true",
@@ -47743,9 +44957,9 @@
"bonuses": "-4,103,95,-4,0,0,0,0,0,-1,0,105,0,0,0",
"requirements": "{0,70}-{2,70}",
"durability": null,
- "high_alchemy": "124800",
"weight": "13",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "134",
"attack_audios": "1320,0,0,0",
"name": "Dharok's axe 75"
@@ -47754,7 +44968,6 @@
"turn90cw_anim": "2064",
"examine": "Dharok the Wretched's greataxe.",
"walk_anim": "2064",
- "low_alchemy": "83200",
"turn90ccw_anim": "2064",
"attack_speed": "7",
"two_handed": "true",
@@ -47771,9 +44984,9 @@
"bonuses": "-4,103,95,-4,0,0,0,0,0,-1,0,105,0,0,0",
"requirements": "{0,70}-{2,70}",
"durability": null,
- "high_alchemy": "124800",
"weight": "13",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "134",
"attack_audios": "1320,0,0,0",
"name": "Dharok's axe 50"
@@ -47782,7 +44995,6 @@
"turn90cw_anim": "2064",
"examine": "Dharok the Wretched's greataxe.",
"walk_anim": "2064",
- "low_alchemy": "83200",
"turn90ccw_anim": "2064",
"attack_speed": "7",
"two_handed": "true",
@@ -47799,39 +45011,38 @@
"bonuses": "-4,103,95,-4,0,0,0,0,0,-1,0,105,0,0,0",
"requirements": "{0,70}-{2,70}",
"durability": null,
- "high_alchemy": "124800",
"weight": "13",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "134",
"attack_audios": "1320,0,0,0",
"name": "Dharok's axe 25"
},
{
+ "requirements": "{0,70}-{2,70}",
"ge_buy_limit": "10",
"turn90cw_anim": "2064",
"examine": "Dharok the Wretched's greataxe.",
"walk_anim": "2064",
- "low_alchemy": "83200",
+ "durability": null,
+ "weight": "13",
"turn90ccw_anim": "2064",
"attack_speed": "7",
"two_handed": "true",
+ "weapon_interface": "2",
"turn180_anim": "2064",
+ "equip_audio": "2232",
+ "render_anim": "134",
"equipment_slot": "3",
"grand_exchange_price": "442600",
"stand_anim": "2065",
+ "attack_audios": "1320,0,0,0",
"tradeable": "true",
+ "name": "Dharok's axe 0",
"run_anim": "824",
"archery_ticket_price": "0",
"id": "4890",
- "stand_turn_anim": "823",
- "requirements": "{0,70}-{2,70}",
- "durability": null,
- "high_alchemy": "124800",
- "weight": "13",
- "weapon_interface": "2",
- "render_anim": "134",
- "attack_audios": "1320,0,0,0",
- "name": "Dharok's axe 0"
+ "stand_turn_anim": "823"
},
{
"ge_buy_limit": "10",
@@ -47847,10 +45058,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9.9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "481600",
@@ -47863,10 +45073,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9.9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "481600",
@@ -47879,10 +45088,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9.9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "481600",
@@ -47895,10 +45103,9 @@
"requirements": "{1,70}",
"examine": "Dharok the Wretched's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9.9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "481600",
@@ -47912,10 +45119,9 @@
"ge_buy_limit": "10",
"examine": "Dharok the Wretched's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9.9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "438200",
@@ -47937,72 +45143,67 @@
{
"requirements": "{1,70}",
"examine": "Dharok the Wretched's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "10",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "897451",
+ "durability": null,
"name": "Dharok's legs 100",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "4898",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2243",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Dharok the Wretched's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "10",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "897451",
+ "durability": null,
"name": "Dharok's legs 75",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "4899",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2243",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Dharok the Wretched's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "10",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "897451",
+ "durability": null,
"name": "Dharok's legs 50",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "4900",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2243",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Dharok the Wretched's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "10",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "897451",
+ "durability": null,
"name": "Dharok's legs 25",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "4901",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2243",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"ge_buy_limit": "10",
"examine": "Dharok the Wretched's plate leg armour.",
"durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "10",
"absorb": "3,0,7",
+ "equip_audio": "2243",
"equipment_slot": "7",
"grand_exchange_price": "676000",
"name": "Dharok's legs 0",
@@ -48025,10 +45226,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's helm",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "2",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "232455",
@@ -48042,10 +45242,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's helm",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "2",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "232455",
@@ -48059,10 +45258,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's helm",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "2",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "232455",
@@ -48076,10 +45274,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's helm",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "2",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "232455",
@@ -48094,10 +45291,9 @@
"ge_buy_limit": "10",
"examine": "Guthan the Infested's helm",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "2",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "368200",
@@ -48120,7 +45316,6 @@
"turn90cw_anim": "1207",
"examine": "Guthan the Infested's warspear.",
"walk_anim": "1205",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -48137,9 +45332,9 @@
"bonuses": "75,75,75,0,0,7,7,7,0,0,0,75,0,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "60000",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "1316,0,0,0",
"name": "Guthan's spear 100"
@@ -48148,7 +45343,6 @@
"turn90cw_anim": "1207",
"examine": "Guthan the Infested's warspear.",
"walk_anim": "1205",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -48165,9 +45359,9 @@
"bonuses": "75,75,75,0,0,7,7,7,0,0,0,75,0,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "60000",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "1316,0,0,0",
"name": "Guthan's spear 75"
@@ -48176,7 +45370,6 @@
"turn90cw_anim": "1207",
"examine": "Guthan the Infested's warspear.",
"walk_anim": "1205",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -48193,9 +45386,9 @@
"bonuses": "75,75,75,0,0,7,7,7,0,0,0,75,0,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "60000",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "1316,0,0,0",
"name": "Guthan's spear 50"
@@ -48204,7 +45397,6 @@
"turn90cw_anim": "1207",
"examine": "Guthan the Infested's warspear.",
"walk_anim": "1205",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -48221,39 +45413,38 @@
"bonuses": "75,75,75,0,0,7,7,7,0,0,0,75,0,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "60000",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "1316,0,0,0",
"name": "Guthan's spear 25"
},
{
+ "requirements": "{0,70}",
"ge_buy_limit": "10",
"turn90cw_anim": "1207",
"examine": "Guthan the Infested's warspear.",
"walk_anim": "1205",
- "low_alchemy": "40000",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "379500",
"stand_anim": "813",
+ "attack_audios": "1316,0,0,0",
"tradeable": "true",
+ "name": "Guthan's spear 0",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "4914",
- "stand_turn_anim": "1209",
- "requirements": "{0,70}",
- "durability": null,
- "high_alchemy": "60000",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "attack_audios": "1316,0,0,0",
- "name": "Guthan's spear 0"
+ "stand_turn_anim": "1209"
},
{
"ge_buy_limit": "10",
@@ -48269,10 +45460,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "241605",
@@ -48285,10 +45475,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "241605",
@@ -48301,10 +45490,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "241605",
@@ -48317,10 +45505,9 @@
"requirements": "{1,70}",
"examine": "Guthan the Infested's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "241605",
@@ -48334,10 +45521,9 @@
"ge_buy_limit": "10",
"examine": "Guthan the Infested's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "245900",
@@ -48359,72 +45545,67 @@
{
"requirements": "{1,70}",
"examine": "Guthan the Infested's chainskirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "8",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "224030",
+ "durability": null,
"name": "Guthan's skirt 100",
+ "weight": "8",
"archery_ticket_price": "0",
"id": "4922",
- "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Guthan the Infested's chainskirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "8",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "224030",
+ "durability": null,
"name": "Guthan's skirt 75",
+ "weight": "8",
"archery_ticket_price": "0",
"id": "4923",
- "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Guthan the Infested's chainskirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "8",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "224030",
+ "durability": null,
"name": "Guthan's skirt 50",
+ "weight": "8",
"archery_ticket_price": "0",
"id": "4924",
- "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Guthan the Infested's chainskirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "8",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "224030",
+ "durability": null,
"name": "Guthan's skirt 25",
+ "weight": "8",
"archery_ticket_price": "0",
"id": "4925",
- "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-14,-7,75,72,73,-4,82,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"ge_buy_limit": "10",
"examine": "Guthan the Infested's chainskirt.",
"durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "8",
"absorb": "3,0,7",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "240900",
"name": "Guthan's skirt 0",
@@ -48447,9 +45628,8 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's coif.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"absorb": "0,5,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "7520",
@@ -48463,9 +45643,8 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's coif.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"absorb": "0,5,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "7520",
@@ -48479,9 +45658,8 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's coif.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"absorb": "0,5,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "7520",
@@ -48495,9 +45673,8 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's coif.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"absorb": "0,5,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "7520",
@@ -48512,9 +45689,8 @@
"ge_buy_limit": "1",
"examine": "Karil the Tainted's coif.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"absorb": "0,5,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "7557",
@@ -48537,7 +45713,6 @@
"turn90cw_anim": "2076",
"examine": "Karil the Tainted's repeating crossbow.",
"walk_anim": "2076",
- "low_alchemy": "64000",
"turn90ccw_anim": "2076",
"attack_speed": "4",
"two_handed": "true",
@@ -48554,9 +45729,9 @@
"bonuses": "0,0,0,0,84,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "372",
"attack_audios": "2700,0,0,0",
"name": "Karil's x-bow 100"
@@ -48565,7 +45740,6 @@
"turn90cw_anim": "2076",
"examine": "Karil the Tainted's repeating crossbow.",
"walk_anim": "2076",
- "low_alchemy": "64000",
"turn90ccw_anim": "2076",
"attack_speed": "4",
"two_handed": "true",
@@ -48582,9 +45756,9 @@
"bonuses": "0,0,0,0,84,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "372",
"attack_audios": "2700,0,0,0",
"name": "Karil's x-bow 75"
@@ -48593,7 +45767,6 @@
"turn90cw_anim": "2076",
"examine": "Karil the Tainted's repeating crossbow.",
"walk_anim": "2076",
- "low_alchemy": "64000",
"turn90ccw_anim": "2076",
"attack_speed": "4",
"two_handed": "true",
@@ -48610,9 +45783,9 @@
"bonuses": "0,0,0,0,84,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "372",
"attack_audios": "2700,0,0,0",
"name": "Karil's x-bow 50"
@@ -48621,7 +45794,6 @@
"turn90cw_anim": "2076",
"examine": "Karil the Tainted's repeating crossbow.",
"walk_anim": "2076",
- "low_alchemy": "64000",
"turn90ccw_anim": "2076",
"attack_speed": "4",
"two_handed": "true",
@@ -48638,9 +45810,9 @@
"bonuses": "0,0,0,0,84,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "372",
"attack_audios": "2700,0,0,0",
"name": "Karil's x-bow 25"
@@ -48652,14 +45824,13 @@
"examine": "Karil the Tainted's repeating crossbow.",
"walk_anim": "2076",
"durability": null,
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "2",
"turn90ccw_anim": "2076",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "17",
"turn180_anim": "2076",
+ "equip_audio": "2244",
"render_anim": "372",
"equipment_slot": "3",
"grand_exchange_price": "106300",
@@ -48679,16 +45850,16 @@
"name": "Karil's x-bow 0",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "4939"
+ "id": "4939",
+ "equip_audio": ""
},
{
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather body armour.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6",
"absorb": "0,10,5",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "983428",
@@ -48701,10 +45872,9 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather body armour.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6",
"absorb": "0,10,5",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "983428",
@@ -48717,10 +45887,9 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather body armour.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6",
"absorb": "0,10,5",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "983428",
@@ -48733,10 +45902,9 @@
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather body armour.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6",
"absorb": "0,10,5",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "983428",
@@ -48750,10 +45918,9 @@
"ge_buy_limit": "1",
"examine": "Karil the Tainted's leather body armour.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "6",
"absorb": "0,10,5",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "1500000",
@@ -48775,72 +45942,67 @@
{
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "2",
- "absorb": "0,7,3",
- "equipment_slot": "7",
"grand_exchange_price": "85135",
+ "durability": null,
"name": "Karil's skirt 100",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "4946",
- "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0"
+ "absorb": "0,7,3",
+ "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0",
+ "equip_audio": "2238",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "2",
- "absorb": "0,7,3",
- "equipment_slot": "7",
"grand_exchange_price": "85135",
+ "durability": null,
"name": "Karil's skirt 75",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "4947",
- "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0"
+ "absorb": "0,7,3",
+ "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0",
+ "equip_audio": "2238",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "2",
- "absorb": "0,7,3",
- "equipment_slot": "7",
"grand_exchange_price": "85135",
+ "durability": null,
"name": "Karil's skirt 50",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "4948",
- "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0"
+ "absorb": "0,7,3",
+ "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0",
+ "equip_audio": "2238",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{4,70}",
"examine": "Karil the Tainted's leather skirt.",
- "durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
- "weight": "2",
- "absorb": "0,7,3",
- "equipment_slot": "7",
"grand_exchange_price": "85135",
+ "durability": null,
"name": "Karil's skirt 25",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "4949",
- "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0"
+ "absorb": "0,7,3",
+ "bonuses": "0,0,0,-10,17,26,20,28,35,33,30,0,0,0,0",
+ "equip_audio": "2238",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}-{4,70}",
"ge_buy_limit": "1",
"examine": "Karil the Tainted's leather skirt.",
"durability": null,
- "low_alchemy": "18800",
- "high_alchemy": "28200",
"weight": "2",
"absorb": "0,7,3",
+ "equip_audio": "2238",
"equipment_slot": "7",
"grand_exchange_price": "153100",
"name": "Karil's skirt 0",
@@ -48863,10 +46025,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "5",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "71798",
@@ -48880,10 +46041,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "5",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "71798",
@@ -48897,10 +46057,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "5",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "71798",
@@ -48914,10 +46073,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "5",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "71798",
@@ -48932,10 +46090,9 @@
"ge_buy_limit": "10",
"examine": "Torag the Corrupted's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "5",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "78200",
@@ -48958,12 +46115,11 @@
"requirements": "{0,70}-{2,70}",
"examine": "Torag the Corrupted's twin hammers.",
"durability": null,
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "3",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "2068,2068,2068,2068",
@@ -48978,12 +46134,11 @@
"requirements": "{0,70}-{2,70}",
"examine": "Torag the Corrupted's twin hammers.",
"durability": null,
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "3",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "2068,2068,2068,2068",
@@ -48998,12 +46153,11 @@
"requirements": "{0,70}-{2,70}",
"examine": "Torag the Corrupted's twin hammers.",
"durability": null,
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "3",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "2068,2068,2068,2068",
@@ -49018,12 +46172,11 @@
"requirements": "{0,70}-{2,70}",
"examine": "Torag the Corrupted's twin hammers.",
"durability": null,
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "3",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "2068,2068,2068,2068",
@@ -49039,12 +46192,11 @@
"ge_buy_limit": "10",
"examine": "Torag the Corrupted's twin hammers.",
"durability": null,
- "low_alchemy": "64000",
- "high_alchemy": "96000",
"weight": "3",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"equipment_slot": "3",
"grand_exchange_price": "95600",
"attack_audios": "1332,0,0,0",
@@ -49067,10 +46219,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2240",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "297733",
@@ -49083,10 +46234,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2240",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "297733",
@@ -49099,10 +46249,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2240",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "297733",
@@ -49115,10 +46264,9 @@
"requirements": "{1,70}",
"examine": "Torag the Corrupted's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2240",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "297733",
@@ -49132,10 +46280,9 @@
"ge_buy_limit": "10",
"examine": "Torag the Corrupted's platebody armour.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "9",
"absorb": "5,0,10",
+ "equip_audio": "2240",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "271600",
@@ -49157,72 +46304,67 @@
{
"requirements": "{1,70}",
"examine": "Torag the Corrupted's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "9",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "384813",
+ "durability": null,
"name": "Torag's legs 100",
+ "weight": "9",
"archery_ticket_price": "0",
"id": "4970",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Torag the Corrupted's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "9",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "384813",
+ "durability": null,
"name": "Torag's legs 75",
+ "weight": "9",
"archery_ticket_price": "0",
"id": "4971",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Torag the Corrupted's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "9",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "384813",
+ "durability": null,
"name": "Torag's legs 50",
+ "weight": "9",
"archery_ticket_price": "0",
"id": "4972",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Torag the Corrupted's plate leg armour.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "9",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "384813",
+ "durability": null,
"name": "Torag's legs 25",
+ "weight": "9",
"archery_ticket_price": "0",
"id": "4973",
- "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,-4,92,30,0,0,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"ge_buy_limit": "10",
"examine": "Torag the Corrupted's plate leg armour.",
"durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "9",
"absorb": "3,0,7",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "371300",
"name": "Torag's legs 0",
@@ -49245,10 +46387,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "459537",
@@ -49262,10 +46403,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "459537",
@@ -49279,10 +46419,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "459537",
@@ -49296,10 +46435,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "459537",
@@ -49314,10 +46452,9 @@
"ge_buy_limit": "10",
"examine": "Verac the Defiled's helm.",
"durability": null,
- "low_alchemy": "41200",
- "high_alchemy": "61800",
"weight": "1",
"absorb": "2,0,5",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "648900",
@@ -49340,7 +46477,6 @@
"turn90cw_anim": "2060",
"examine": "Verac the Defiled's flail.",
"walk_anim": "1830",
- "low_alchemy": "64000",
"turn90ccw_anim": "2060",
"attack_speed": "5",
"two_handed": "true",
@@ -49357,9 +46493,9 @@
"bonuses": "68,-2,82,0,0,0,0,0,0,0,0,72,6,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "8",
+ "equip_audio": "2246",
"render_anim": "1426",
"attack_audios": "1323,0,0,0",
"name": "Verac's flail 100"
@@ -49368,7 +46504,6 @@
"turn90cw_anim": "2060",
"examine": "Verac the Defiled's flail.",
"walk_anim": "1830",
- "low_alchemy": "64000",
"turn90ccw_anim": "2060",
"attack_speed": "5",
"two_handed": "true",
@@ -49385,9 +46520,9 @@
"bonuses": "68,-2,82,0,0,0,0,0,0,0,0,72,6,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "8",
+ "equip_audio": "2246",
"render_anim": "1426",
"attack_audios": "1323,0,0,0",
"name": "Verac's flail 75"
@@ -49396,7 +46531,6 @@
"turn90cw_anim": "2060",
"examine": "Verac the Defiled's flail.",
"walk_anim": "1830",
- "low_alchemy": "64000",
"turn90ccw_anim": "2060",
"attack_speed": "5",
"two_handed": "true",
@@ -49413,9 +46547,9 @@
"bonuses": "68,-2,82,0,0,0,0,0,0,0,0,72,6,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "8",
+ "equip_audio": "2246",
"render_anim": "1426",
"attack_audios": "1323,0,0,0",
"name": "Verac's flail 50"
@@ -49424,7 +46558,6 @@
"turn90cw_anim": "2060",
"examine": "Verac the Defiled's flail.",
"walk_anim": "1830",
- "low_alchemy": "64000",
"turn90ccw_anim": "2060",
"attack_speed": "5",
"two_handed": "true",
@@ -49441,39 +46574,38 @@
"bonuses": "68,-2,82,0,0,0,0,0,0,0,0,72,6,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "96000",
"weight": "2",
"weapon_interface": "8",
+ "equip_audio": "2246",
"render_anim": "1426",
"attack_audios": "1323,0,0,0",
"name": "Verac's flail 25"
},
{
+ "requirements": "{0,70}",
"ge_buy_limit": "10",
"turn90cw_anim": "2060",
"examine": "Verac the Defiled's flail.",
"walk_anim": "1830",
- "low_alchemy": "64000",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "2060",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "8",
"turn180_anim": "2060",
+ "equip_audio": "2246",
+ "render_anim": "1426",
"equipment_slot": "3",
"grand_exchange_price": "95500",
"stand_anim": "1832",
+ "attack_audios": "1323,0,0,0",
"tradeable": "true",
+ "name": "Verac's flail 0",
"run_anim": "1831",
"archery_ticket_price": "0",
"id": "4986",
- "stand_turn_anim": "823",
- "requirements": "{0,70}",
- "durability": null,
- "high_alchemy": "96000",
- "weight": "2",
- "weapon_interface": "8",
- "render_anim": "1426",
- "attack_audios": "1323,0,0,0",
- "name": "Verac's flail 0"
+ "stand_turn_anim": "823"
},
{
"ge_buy_limit": "10",
@@ -49489,10 +46621,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's brassard.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "5",
"absorb": "5,0,10",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "177963",
@@ -49505,10 +46636,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's brassard.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "5",
"absorb": "5,0,10",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "177963",
@@ -49521,10 +46651,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's brassard.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "5",
"absorb": "5,0,10",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "177963",
@@ -49537,10 +46666,9 @@
"requirements": "{1,70}",
"examine": "Verac the Defiled's brassard.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "5",
"absorb": "5,0,10",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "177963",
@@ -49554,10 +46682,9 @@
"ge_buy_limit": "10",
"examine": "Verac the Defiled's brassard.",
"durability": null,
- "low_alchemy": "112000",
- "high_alchemy": "168000",
"weight": "5",
"absorb": "5,0,10",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "174000",
@@ -49579,72 +46706,67 @@
{
"requirements": "{1,70}",
"examine": "Verac the Defiled's plate skirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "5",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "297540",
+ "durability": null,
"name": "Verac's skirt 100",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4994",
- "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Verac the Defiled's plate skirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "5",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "297540",
+ "durability": null,
"name": "Verac's skirt 75",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4995",
- "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Verac the Defiled's plate skirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "5",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "297540",
+ "durability": null,
"name": "Verac's skirt 50",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4996",
- "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"examine": "Verac the Defiled's plate skirt.",
- "durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
- "weight": "5",
- "absorb": "3,0,7",
- "equipment_slot": "7",
"grand_exchange_price": "297540",
+ "durability": null,
"name": "Verac's skirt 25",
+ "weight": "5",
"archery_ticket_price": "0",
"id": "4997",
- "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0"
+ "absorb": "3,0,7",
+ "bonuses": "0,0,0,-21,-7,85,82,83,0,84,30,0,4,0,0",
+ "equip_audio": "2242",
+ "equipment_slot": "7"
},
{
"requirements": "{1,70}",
"ge_buy_limit": "10",
"examine": "Verac the Defiled's plate skirt.",
"durability": null,
- "low_alchemy": "110000",
- "high_alchemy": "165000",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2242",
"equipment_slot": "7",
"grand_exchange_price": "321600",
"name": "Verac's skirt 0",
@@ -49669,8 +46791,6 @@
"durability": null,
"name": "Raw cave eel",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5001"
@@ -49682,8 +46802,6 @@
"durability": null,
"name": "Cave eel",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5003"
@@ -49692,8 +46810,6 @@
"examine": "That's disgusting!",
"durability": null,
"name": "Frog spawn",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5004"
},
@@ -49742,27 +46858,23 @@
},
{
"shop_price": "900",
- "examine": "Unlit: A helmet with an unlit lamp on it. Lit: A helmet with a lamp on it.",
- "durability": null,
- "low_alchemy": "360",
- "high_alchemy": "540",
- "weight": "1",
- "equipment_slot": "0",
+ "examine": "A helmet with a lamp on it.",
"grand_exchange_price": "380",
+ "durability": null,
"name": "Mining helmet",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "5013",
- "bonuses": "0,0,0,-3,-1,4,5,3,-1,4,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,4,5,3,-1,4,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"requirements": "{11,65}",
"shop_price": "900",
"ge_buy_limit": "100",
- "examine": "Unlit: A helmet with an unlit lamp on it. Lit: A helmet with a lamp on it.",
+ "examine": "A helmet with an unlit lamp on it.",
"durability": null,
- "low_alchemy": "360",
- "high_alchemy": "540",
"weight": "1",
"equipment_slot": "0",
"grand_exchange_price": "342",
@@ -49783,30 +46895,29 @@
},
{
"ge_buy_limit": "100",
+ "shop_price": "600",
"turn90cw_anim": "1207",
"examine": "Basic but brutal!",
"walk_anim": "1205",
- "low_alchemy": "240",
+ "durability": null,
+ "weight": "1.3",
"turn90ccw_anim": "1208",
"attack_speed": "6",
"two_handed": "false",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "219",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Bone spear",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5016",
"stand_turn_anim": "1209",
- "bonuses": "11,11,11,0,0,1,1,0,0,0,0,13,0,0,0",
- "shop_price": "600",
- "durability": null,
- "high_alchemy": "360",
- "weight": "1.3",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Bone spear"
+ "bonuses": "11,11,11,0,0,1,1,0,0,0,0,13,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -49823,12 +46934,12 @@
"ge_buy_limit": "100",
"examine": "Basic but brutal!",
"durability": null,
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "0.9",
"attack_speed": "6",
"weapon_interface": "10",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"grand_exchange_price": "384",
"name": "Bone club",
"tradeable": "true",
@@ -49883,19 +46994,18 @@
"id": "5023"
},
{
+ "remove_sleeves": "true",
"shop_price": "812",
"ge_buy_limit": "100",
- "examine": "Blue top, very tiny.",
- "durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
- "equipment_slot": "4",
- "remove_sleeves": "true",
+ "examine": "Far too small to wear.",
"grand_exchange_price": "710",
+ "durability": null,
"name": "Woven top",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "5024"
+ "id": "5024",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -49907,19 +47017,18 @@
"id": "5025"
},
{
+ "remove_sleeves": "true",
"shop_price": "812",
"ge_buy_limit": "100",
- "examine": "Blue top, very tiny.",
- "durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
- "equipment_slot": "4",
- "remove_sleeves": "true",
+ "examine": "Yellow top, too small for me.",
"grand_exchange_price": "908",
+ "durability": null,
"name": "Woven top",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "5026"
+ "id": "5026",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -49931,19 +47040,18 @@
"id": "5027"
},
{
+ "remove_sleeves": "true",
"shop_price": "812",
"ge_buy_limit": "100",
"examine": "Blue top, very tiny.",
- "durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "1357",
+ "durability": null,
"name": "Woven top",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "5028"
+ "id": "5028",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -49958,9 +47066,12 @@
"remove_sleeves": "true",
"ge_buy_limit": "100",
"grand_exchange_price": "867",
+ "examine": "Tiny!",
"durability": null,
"name": "Shirt",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5030",
"equipment_slot": "4"
},
@@ -49977,9 +47088,12 @@
"remove_sleeves": "true",
"ge_buy_limit": "100",
"grand_exchange_price": "1023",
+ "examine": "Tiny!",
"durability": null,
"name": "Shirt",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5032",
"equipment_slot": "4"
},
@@ -49996,9 +47110,12 @@
"remove_sleeves": "true",
"ge_buy_limit": "100",
"grand_exchange_price": "1282",
+ "examine": "Tiny!",
"durability": null,
"name": "Shirt",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5034",
"equipment_slot": "4"
},
@@ -50014,9 +47131,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "746",
+ "examine": "A pair of long dwarven trousers... long for dwarves, of course.",
"durability": null,
"name": "Trousers",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5036",
"equipment_slot": "7"
},
@@ -50032,9 +47152,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "378",
+ "examine": "A pair of long dwarven trousers... long for dwarves, of course.",
"durability": null,
"name": "Trousers",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5038",
"equipment_slot": "7"
},
@@ -50050,9 +47173,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "442",
+ "examine": "A pair of long dwarven trousers... long for dwarves, of course.",
"durability": null,
"name": "Trousers",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5040",
"equipment_slot": "7"
},
@@ -50068,9 +47194,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1191",
+ "examine": "These look great, on dwarves!",
"durability": null,
"name": "Shorts",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5042",
"equipment_slot": "7"
},
@@ -50086,9 +47215,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1229",
+ "examine": "Yellow shorts. Far too small for you.",
"durability": null,
"name": "Shorts",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5044",
"equipment_slot": "7"
},
@@ -50104,9 +47236,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "2582",
+ "examine": "Blue shorts, these would look great on dwarves!",
"durability": null,
"name": "Shorts",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5046",
"equipment_slot": "7"
},
@@ -50120,16 +47255,19 @@
"id": "5047"
},
{
- "ge_buy_limit": "2",
+ "ge_buy_limit": "100",
"grand_exchange_price": "681",
+ "examine": "A brown skirt. Size small!",
"durability": null,
"name": "Skirt",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5048",
"equipment_slot": "7"
},
{
- "ge_buy_limit": "2",
+ "ge_buy_limit": "100",
"grand_exchange_price": "681",
"durability": null,
"name": "Skirt",
@@ -50138,16 +47276,19 @@
"id": "5049"
},
{
- "ge_buy_limit": "2",
+ "ge_buy_limit": "100",
"grand_exchange_price": "1151",
+ "examine": "A blue skirt.",
"durability": null,
"name": "Skirt",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5050",
"equipment_slot": "7"
},
{
- "ge_buy_limit": "2",
+ "ge_buy_limit": "100",
"grand_exchange_price": "1151",
"durability": null,
"name": "Skirt",
@@ -50156,16 +47297,19 @@
"id": "5051"
},
{
- "ge_buy_limit": "2",
+ "ge_buy_limit": "100",
"grand_exchange_price": "803",
+ "examine": "Lilac skirt.",
"durability": null,
"name": "Skirt",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5052",
"equipment_slot": "7"
},
{
- "ge_buy_limit": "2",
+ "ge_buy_limit": "100",
"grand_exchange_price": "803",
"durability": null,
"name": "Skirt",
@@ -50177,6 +47321,7 @@
"examine": "A short angry guy.",
"durability": null,
"name": "Dwarf",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "5054"
},
@@ -50221,6 +47366,7 @@
"name": "Dwarven battleaxe",
"archery_ticket_price": "0",
"id": "5060",
+ "equip_audio": "2232",
"equipment_slot": "3"
},
{
@@ -50229,6 +47375,7 @@
"name": "Dwarven battleaxe",
"archery_ticket_price": "0",
"id": "5061",
+ "equip_audio": "2232",
"equipment_slot": "3"
},
{
@@ -50290,7 +47437,6 @@
"durability": null,
"name": "Bird's nest",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5070"
},
@@ -50299,7 +47445,6 @@
"durability": null,
"name": "Bird's nest",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5071"
},
@@ -50308,7 +47453,6 @@
"durability": null,
"name": "Bird's nest",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5072"
},
@@ -50317,7 +47461,6 @@
"durability": null,
"name": "Bird's nest",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5073"
},
@@ -50326,7 +47469,6 @@
"durability": null,
"name": "Bird's nest",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5074"
},
@@ -50335,7 +47477,6 @@
"durability": null,
"name": "Bird's nest",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5075"
},
@@ -51005,8 +48146,6 @@
"durability": null,
"name": "Gardening trowel",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "5325"
},
@@ -51043,8 +48182,6 @@
"durability": null,
"name": "Secateurs",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5329",
"equipment_slot": "3"
@@ -51061,13 +48198,13 @@
{
"shop_price": "8",
"ge_buy_limit": "100",
- "examine": "See article",
+ "examine": "This watering can is empty.",
"grand_exchange_price": "298",
"durability": null,
"name": "Watering can",
- "low_alchemy": "3",
- "high_alchemy": "4",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "5331"
},
{
@@ -51081,90 +48218,82 @@
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": " This watering can is almost empty.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(1)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.2",
"id": "5333"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": "This watering can is three-quarters empty.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(2)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.3",
"id": "5334"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": "This watering can is just under half-full.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(3)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.4",
"id": "5335"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": " Some would say this watering can is half-full, others half-empty.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(4)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.5",
"id": "5336"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": "This watering can is just over half-full.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(5)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.6",
"id": "5337"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": " This watering can is three quarters full.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(6)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.7",
"id": "5338"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": " This watering can is almost completely full.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(7)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.8",
"id": "5339"
},
{
"shop_price": "8",
- "examine": "See article",
+ "examine": " This watering can is completely full.",
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can(8)",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
+ "weight": "0.9",
"id": "5340"
},
{
@@ -51175,8 +48304,6 @@
"durability": null,
"name": "Rake",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "5341"
@@ -51198,8 +48325,6 @@
"durability": null,
"name": "Seed dibber",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5343"
},
@@ -51219,8 +48344,6 @@
"durability": null,
"name": "Gardening boots",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "1",
"archery_ticket_price": "0",
"id": "5345",
@@ -51254,7 +48377,7 @@
{
"shop_price": "1",
"ge_buy_limit": "100",
- "examine": "A plant pot filled with soil.",
+ "examine": "An empty plant pot.",
"grand_exchange_price": "20",
"durability": null,
"name": "Plant pot",
@@ -51360,7 +48483,6 @@
"examine": "A yew seed has been sown in the plant pot",
"durability": null,
"name": "Yew seedling",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5361"
@@ -51408,7 +48530,6 @@
"examine": "A yew seed has been sown in the plant pot",
"durability": null,
"name": "Yew seedling",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5367"
@@ -51656,8 +48777,6 @@
"durability": null,
"name": "Oranges(5)",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "5396"
@@ -51677,7 +48796,6 @@
"durability": null,
"name": "Strawberries(1)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "5398"
@@ -51695,7 +48813,6 @@
"durability": null,
"name": "Strawberries(2)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "5400"
@@ -51713,7 +48830,6 @@
"durability": null,
"name": "Strawberries(3)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "5402"
@@ -51731,7 +48847,6 @@
"durability": null,
"name": "Strawberries(4)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "5404"
@@ -51750,7 +48865,6 @@
"durability": null,
"name": "Strawberries(5)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "5406"
@@ -51770,7 +48884,6 @@
"durability": null,
"name": "Bananas(1)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "5408"
@@ -51788,7 +48901,6 @@
"durability": null,
"name": "Bananas(2)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "5410"
@@ -51806,7 +48918,6 @@
"durability": null,
"name": "Bananas(3)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "5412"
@@ -51825,7 +48936,6 @@
"durability": null,
"name": "Bananas(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5414"
},
@@ -51844,7 +48954,6 @@
"durability": null,
"name": "Bananas(5)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5416"
},
@@ -51879,7 +48988,7 @@
"id": "5419"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There is one potato in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(1)",
@@ -51896,7 +49005,7 @@
"id": "5421"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are two potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(2)",
@@ -51913,7 +49022,7 @@
"id": "5423"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are three potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(3)",
@@ -51930,7 +49039,7 @@
"id": "5425"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are four potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(4)",
@@ -51947,7 +49056,7 @@
"id": "5427"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are five potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(5)",
@@ -51964,7 +49073,7 @@
"id": "5429"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are six potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(6)",
@@ -51981,7 +49090,7 @@
"id": "5431"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are seven potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(7)",
@@ -51998,7 +49107,7 @@
"id": "5433"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are eight potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(8)",
@@ -52015,7 +49124,7 @@
"id": "5435"
},
{
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are nine potatoes in this sack.",
"grand_exchange_price": "1276",
"durability": null,
"name": "Potatoes(9)",
@@ -52033,7 +49142,7 @@
},
{
"ge_buy_limit": "1000",
- "examine": "There are <number of potatoes> in this sack.",
+ "examine": "There are ten potatoes in this sack.",
"grand_exchange_price": "1052",
"durability": null,
"name": "Potatoes(10)",
@@ -52225,7 +49334,7 @@
"id": "5459"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There is one cabbage in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(1)",
@@ -52241,7 +49350,7 @@
"id": "5461"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are two cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(2)",
@@ -52257,7 +49366,7 @@
"id": "5463"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are three cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(3)",
@@ -52273,7 +49382,7 @@
"id": "5465"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are four cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(4)",
@@ -52289,7 +49398,7 @@
"id": "5467"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are five cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(5)",
@@ -52305,7 +49414,7 @@
"id": "5469"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are six cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(6)",
@@ -52321,7 +49430,7 @@
"id": "5471"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are seven cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(7)",
@@ -52337,7 +49446,7 @@
"id": "5473"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are eight cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(8)",
@@ -52353,7 +49462,7 @@
"id": "5475"
},
{
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are nine cabbages in this sack.",
"grand_exchange_price": "1304",
"durability": null,
"name": "Cabbages(9)",
@@ -52370,7 +49479,7 @@
},
{
"ge_buy_limit": "1000",
- "examine": "There are <number of cabbages> in this sack.",
+ "examine": "There are ten cabbages in this sack.",
"grand_exchange_price": "917",
"durability": null,
"name": "Cabbages(10)",
@@ -52584,8 +49693,6 @@
"durability": null,
"name": "Strawberry",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"weight": "1",
"archery_ticket_price": "0",
"id": "5504"
@@ -52632,8 +49739,6 @@
"examine": "A medium-sized pouch used for storing essence.",
"durability": null,
"name": "Medium pouch",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1",
"archery_ticket_price": "0",
"id": "5510"
@@ -52642,8 +49747,6 @@
"examine": "A medium-sized pouch used for storing essence.",
"durability": null,
"name": "Medium pouch",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1",
"archery_ticket_price": "0",
"id": "5511"
@@ -52653,8 +49756,6 @@
"examine": "A large pouch used for storing essence.",
"durability": null,
"name": "Large pouch",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1",
"archery_ticket_price": "0",
"id": "5512"
@@ -52664,8 +49765,6 @@
"examine": "A large pouch used for storing essence.",
"durability": null,
"name": "Large pouch",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1",
"archery_ticket_price": "0",
"id": "5513"
@@ -52675,8 +49774,6 @@
"examine": "A giant-sized pouch used for storing essence.",
"durability": null,
"name": "Giant pouch",
- "low_alchemy": "480",
- "high_alchemy": "720",
"weight": "1",
"archery_ticket_price": "0",
"id": "5514"
@@ -52686,8 +49783,6 @@
"examine": "A giant-sized pouch used for storing essence.",
"durability": null,
"name": "Giant pouch",
- "low_alchemy": "480",
- "high_alchemy": "720",
"weight": "1",
"archery_ticket_price": "0",
"id": "5515"
@@ -52699,8 +49794,6 @@
"durability": null,
"name": "Elemental talisman",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "5516"
},
@@ -52714,7 +49807,7 @@
"id": "5517"
},
{
- "examine": "When empty:",
+ "examine": "This contains mystical teleport information...",
"durability": null,
"name": "Scrying orb",
"weight": "1",
@@ -52722,7 +49815,7 @@
"id": "5518"
},
{
- "examine": "When empty:",
+ "examine": "This orb apparently contains a cypher spell.",
"durability": null,
"name": "Scrying orb",
"weight": "1",
@@ -52734,8 +49827,6 @@
"durability": null,
"name": "Abyssal book",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "5520"
},
@@ -52746,8 +49837,6 @@
"durability": null,
"name": "Binding necklace",
"tradeable": "true",
- "low_alchemy": "570",
- "high_alchemy": "855",
"weight": "1",
"archery_ticket_price": "0",
"id": "5521",
@@ -52770,8 +49859,6 @@
"durability": null,
"name": "Tiara mould",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"archery_ticket_price": "0",
"id": "5523"
@@ -52792,8 +49879,6 @@
"durability": null,
"name": "Tiara",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"archery_ticket_price": "0",
"id": "5525",
@@ -52815,8 +49900,6 @@
"durability": null,
"name": "Air tiara",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"archery_ticket_price": "0",
"id": "5527",
@@ -52832,19 +49915,16 @@
"id": "5528"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of the mind.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "10",
+ "durability": null,
"name": "Mind tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5529"
+ "id": "5529",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -52856,19 +49936,16 @@
"id": "5530"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of water.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "1351",
+ "durability": null,
"name": "Water tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5531"
+ "id": "5531",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -52880,19 +49957,16 @@
"id": "5532"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of the body.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "5",
+ "durability": null,
"name": "Body tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5533"
+ "id": "5533",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -52904,19 +49978,16 @@
"id": "5534"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of the earth.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Earth tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5535"
+ "id": "5535",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -52928,19 +49999,16 @@
"id": "5536"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of fire.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "8",
+ "durability": null,
"name": "Fire tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5537"
+ "id": "5537",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -52952,19 +50020,16 @@
"id": "5538"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of the cosmos.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "8",
+ "durability": null,
"name": "Cosmic tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5539"
+ "id": "5539",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -52976,19 +50041,16 @@
"id": "5540"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of nature.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "10",
+ "durability": null,
"name": "Nature tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5541"
+ "id": "5541",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -53000,19 +50062,16 @@
"id": "5542"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of chaos.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "10",
+ "durability": null,
"name": "Chaos tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5543"
+ "id": "5543",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -53024,19 +50083,16 @@
"id": "5544"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of law.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "11",
+ "durability": null,
"name": "Law tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5545"
+ "id": "5545",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -53048,19 +50104,16 @@
"id": "5546"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of death.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "65",
+ "durability": null,
"name": "Death tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5547"
+ "id": "5547",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -53072,19 +50125,16 @@
"id": "5548"
},
{
- "requirements": "",
"ge_buy_limit": "100",
"examine": "A tiara infused with the properties of Blood.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "1058",
+ "durability": null,
"name": "Blood tiara",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "5549"
+ "id": "5549",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -53096,9 +50146,13 @@
"id": "5550"
},
{
+ "ge_buy_limit": "100",
+ "examine": " A tiara infused with the properties of the soul.",
"durability": null,
"name": "Soul tiara",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "5551",
"equipment_slot": "0"
},
@@ -53114,8 +50168,6 @@
"examine": "Black banded leather armour, a rogue's dream!",
"durability": null,
"name": "Rogue top",
- "low_alchemy": "250",
- "high_alchemy": "375",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "5553",
@@ -53127,8 +50179,6 @@
"examine": "Black banded leather armour, a rogue's dream!",
"durability": null,
"name": "Rogue mask",
- "low_alchemy": "150",
- "high_alchemy": "225",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5554",
@@ -53140,8 +50190,6 @@
"examine": "Black banded leather armour, a rogue's dream!",
"durability": null,
"name": "Rogue trousers",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "5555",
@@ -53152,8 +50200,6 @@
"examine": "Black banded leather gloves, a rogue's dream!",
"durability": null,
"name": "Rogue gloves",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "5556",
@@ -53164,8 +50210,6 @@
"examine": "Black banded leather boots, a rogue's dream!",
"durability": null,
"name": "Rogue boots",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "5557",
@@ -53177,8 +50221,6 @@
"examine": "It can do almost anything!",
"durability": null,
"name": "Rogue kit",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "5558"
},
@@ -53195,8 +50237,6 @@
"examine": "A useful hearing aid.",
"durability": null,
"name": "Stethoscope",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "5560",
"equipment_slot": "5"
@@ -53223,8 +50263,6 @@
"ge_buy_limit": "100",
"examine": "An initiate Temple Knight's helm.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "2.2",
"remove_beard": "true",
"equipment_slot": "0",
@@ -53241,8 +50279,6 @@
"ge_buy_limit": "100",
"examine": "An initiate Temple Knight's Armour.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "8",
"absorb": "1,0,3",
"equipment_slot": "4",
@@ -53260,8 +50296,6 @@
"ge_buy_limit": "100",
"examine": "An initiate Temple Knight's leg armour.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "7",
"absorb": "1,0,2",
"equipment_slot": "7",
@@ -53343,10 +50377,18 @@
"id": "5584"
},
{
- "examine": "It's a metal spade without a handle.",
+ "examine": "I hope the mould was accurate enough...",
+ "durability": null,
+ "name": "Bronze Key",
+ "weight": "0.01",
+ "archery_ticket_price": "0",
+ "id": "5585"
+ },
+ {
+ "examine": "It's a metal spade with a wooden handle.",
"durability": null,
"name": "Metal spade",
- "weight": "2.5",
+ "weight": "1.814",
"archery_ticket_price": "0",
"id": "5586"
},
@@ -53354,7 +50396,7 @@
"examine": "It's a metal spade without a handle.",
"durability": null,
"name": "Metal spade",
- "weight": "2.5",
+ "weight": "1.814",
"archery_ticket_price": "0",
"id": "5587"
},
@@ -53366,119 +50408,101 @@
"id": "5588"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "A tin layered with some stuff from a vial.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5592"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "It's full of a white lumpy mixture that seems to be hardening.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5593"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "There is an impression of a key embedded in it.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5594"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "There is an impression of a key, filled with tin ore.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5595"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "There is an impression of a key, filled with copper ore.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5596"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "There is an impression of a key, filled with tin and copper ore.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5597"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "There is a bronze key surrounded by plaster in this tin.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5598"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "20",
+ "examine": "There is a strange concoction filling this tin.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.101",
"archery_ticket_price": "0",
"id": "5599"
},
{
- "shop_price": "6",
- "examine": "This needs refining.",
- "grand_exchange_price": "42",
+ "shop_price": "10",
+ "examine": "I could probably pour something into this.",
+ "grand_exchange_price": "0",
"durability": null,
"name": "Tin",
- "tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "2.25",
+ "tradeable": "false",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "5600"
},
@@ -53489,8 +50513,6 @@
"durability": null,
"name": "Chisel",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "5601"
@@ -53501,8 +50523,6 @@
"durability": null,
"name": "Bronze wire",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "5602"
},
@@ -53512,8 +50532,8 @@
"grand_exchange_price": "41",
"durability": null,
"name": "Shears",
- "tradeable": "true",
- "weight": "0.1",
+ "tradeable": "false",
+ "weight": "0.113",
"archery_ticket_price": "0",
"id": "5603"
},
@@ -53521,8 +50541,6 @@
"examine": "A very attractive magnet.",
"durability": null,
"name": "Magnet",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5604"
},
@@ -53533,8 +50551,6 @@
"durability": null,
"name": "Knife",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "5605"
@@ -53554,7 +50570,6 @@
"durability": null,
"name": "Grain",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.6",
"archery_ticket_price": "0",
"id": "5607",
@@ -53623,7 +50638,7 @@
"stand_turn_anim": "330"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed bearded gorilla monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -53634,189 +50649,165 @@
"shop_price": "7",
"ge_buy_limit": "10000",
"examine": "Arrows with bronze heads.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "127",
+ "durability": null,
"name": "Bronze arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5616",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7",
+ "equipment_slot": "13"
},
{
"shop_price": "20",
"ge_buy_limit": "10000",
"examine": "Arrows with iron heads.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "138",
+ "durability": null,
"name": "Iron arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5617",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"requirements": "{4,5}",
"shop_price": "46",
"ge_buy_limit": "10000",
"examine": "Arrows with steel heads.",
- "durability": null,
- "low_alchemy": "18",
- "high_alchemy": "27",
- "equipment_slot": "13",
"grand_exchange_price": "159",
+ "durability": null,
"name": "Steel arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5618",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{4,20}",
"shop_price": "76",
"ge_buy_limit": "10000",
"examine": "Arrows with mithril heads.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "equipment_slot": "13",
"grand_exchange_price": "176",
+ "durability": null,
"name": "Mithril arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5619",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"shop_price": "172",
"ge_buy_limit": "10000",
"examine": "Arrows with adamantite heads.",
- "durability": null,
- "low_alchemy": "68",
- "high_alchemy": "103",
- "equipment_slot": "13",
"grand_exchange_price": "211",
+ "durability": null,
"name": "Adamant arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5620",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31",
+ "equipment_slot": "13"
},
{
"requirements": "{4,40}",
"shop_price": "510",
"ge_buy_limit": "10000",
"examine": "Arrows with rune heads.",
- "durability": null,
- "low_alchemy": "204",
- "high_alchemy": "306",
- "equipment_slot": "13",
"grand_exchange_price": "415",
+ "durability": null,
"name": "Rune arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5621",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"shop_price": "7",
"ge_buy_limit": "10000",
"examine": "Arrows with bronze heads.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "1076",
+ "durability": null,
"name": "Bronze arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5622",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,7",
+ "equipment_slot": "13"
},
{
"shop_price": "20",
"ge_buy_limit": "10000",
"examine": "Arrows with iron heads.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "1037",
+ "durability": null,
"name": "Iron arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5623",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"requirements": "{4,5}",
"shop_price": "46",
"ge_buy_limit": "10000",
"examine": "Arrows with steel heads.",
- "durability": null,
- "low_alchemy": "18",
- "high_alchemy": "27",
- "equipment_slot": "13",
"grand_exchange_price": "1038",
+ "durability": null,
"name": "Steel arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5624",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{4,20}",
"shop_price": "76",
"ge_buy_limit": "10000",
"examine": "Arrows with mithril heads.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "equipment_slot": "13",
"grand_exchange_price": "718",
+ "durability": null,
"name": "Mithril arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5625",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,22",
+ "equipment_slot": "13"
},
{
"requirements": "{4,30}",
"shop_price": "172",
"ge_buy_limit": "10000",
"examine": "Arrows with adamantite heads.",
- "durability": null,
- "low_alchemy": "68",
- "high_alchemy": "103",
- "equipment_slot": "13",
"grand_exchange_price": "101",
+ "durability": null,
"name": "Adamant arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5626",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,31",
+ "equipment_slot": "13"
},
{
"requirements": "{4,40}",
"shop_price": "510",
"ge_buy_limit": "10000",
"examine": "Arrows with rune heads.",
- "durability": null,
- "low_alchemy": "204",
- "high_alchemy": "306",
- "equipment_slot": "13",
"grand_exchange_price": "1300",
+ "durability": null,
"name": "Rune arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "5627",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"ge_buy_limit": "1000",
@@ -53824,6 +50815,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53839,9 +50831,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an iron tip.",
"durability": null,
- "high_alchemy": "1",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53858,10 +50850,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a steel tip.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53880,6 +50871,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53896,10 +50888,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a mithril tip.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53916,10 +50907,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an adamantite tip.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "39",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53936,10 +50926,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a rune tip.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53957,6 +50946,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53972,9 +50962,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an iron tip.",
"durability": null,
- "high_alchemy": "1",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -53991,10 +50981,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a steel tip.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -54013,6 +51002,7 @@
"durability": null,
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -54029,10 +51019,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a mithril tip.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -54049,10 +51038,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with an adamantite tip.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "39",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -54069,10 +51057,9 @@
"ge_buy_limit": "1000",
"examine": "A deadly throwing dart with a rune tip.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "582,582,582,582",
@@ -54089,10 +51076,9 @@
"ge_buy_limit": "1000",
"examine": "A bronze-tipped javelin.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54108,10 +51094,9 @@
"ge_buy_limit": "1000",
"examine": "An iron-tipped javelin.",
"durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54128,10 +51113,9 @@
"ge_buy_limit": "1000",
"examine": "A steel-tipped javelin.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "22",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54148,10 +51132,9 @@
"ge_buy_limit": "1000",
"examine": "A mithril tipped javelin.",
"durability": null,
- "low_alchemy": "39",
- "high_alchemy": "58",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54163,28 +51146,31 @@
"bonuses": "0,0,0,0,17,0,0,0,0,0,0,0,0,0,18"
},
{
- "attack_anims": "806,806,806,806",
"requirements": "{4,30}",
"ge_buy_limit": "100",
- "grand_exchange_price": "179",
+ "shop_price": "100",
+ "examine": "An adamant tipped javelin.",
"durability": null,
+ "weapon_interface": "18",
+ "equip_audio": "2244",
+ "defence_anim": "424",
+ "equipment_slot": "3",
+ "attack_anims": "806,806,806,806",
+ "grand_exchange_price": "179",
"name": "Adamant javelin(p+)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "5646",
- "weapon_interface": "18",
- "bonuses": "0,0,0,0,24,0,0,0,0,0,0,0,0,0,28",
- "defence_anim": "424",
- "equipment_slot": "3"
+ "bonuses": "0,0,0,0,24,0,0,0,0,0,0,0,0,0,28"
},
{
"shop_price": "624",
"ge_buy_limit": "1000",
"examine": "A rune tipped javelin.",
"durability": null,
- "low_alchemy": "249",
- "high_alchemy": "374",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54200,8 +51186,6 @@
"ge_buy_limit": "100",
"examine": "A bronze-tipped javelin.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"attack_speed": "6",
"weapon_interface": "18",
"defence_anim": "424",
@@ -54219,10 +51203,9 @@
"ge_buy_limit": "1000",
"examine": "An iron-tipped javelin.",
"durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54239,10 +51222,9 @@
"ge_buy_limit": "1000",
"examine": "A steel-tipped javelin.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "22",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54259,10 +51241,9 @@
"ge_buy_limit": "1000",
"examine": "A mithril tipped javelin.",
"durability": null,
- "low_alchemy": "39",
- "high_alchemy": "58",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54274,18 +51255,22 @@
"bonuses": "0,0,0,0,17,0,0,0,0,0,0,0,0,0,18"
},
{
- "attack_anims": "806,806,806,806",
"requirements": "{4,30}",
"ge_buy_limit": "100",
- "grand_exchange_price": "1514",
+ "shop_price": "100",
+ "examine": "An adamant tipped javelin.",
"durability": null,
+ "weapon_interface": "18",
+ "equip_audio": "2244",
+ "defence_anim": "424",
+ "equipment_slot": "3",
+ "attack_anims": "806,806,806,806",
+ "grand_exchange_price": "1514",
"name": "Adamant javelin(p++)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "5652",
- "weapon_interface": "18",
- "bonuses": "0,0,0,0,24,0,0,0,0,0,0,0,0,0,28",
- "defence_anim": "424",
- "equipment_slot": "3"
+ "bonuses": "0,0,0,0,24,0,0,0,0,0,0,0,0,0,28"
},
{
"requirements": "{4,40}",
@@ -54293,10 +51278,9 @@
"ge_buy_limit": "1000",
"examine": "A rune tipped javelin.",
"durability": null,
- "low_alchemy": "249",
- "high_alchemy": "374",
"attack_speed": "6",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54312,10 +51296,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54332,10 +51315,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "23",
- "high_alchemy": "34",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54353,10 +51335,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "27",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54373,10 +51354,9 @@
"ge_buy_limit": "100",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "16",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54394,10 +51374,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "7",
- "high_alchemy": "11",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54414,10 +51393,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "26",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54434,10 +51412,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "66",
- "high_alchemy": "100",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54454,10 +51431,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54474,10 +51450,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "23",
- "high_alchemy": "34",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54495,10 +51470,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "27",
- "high_alchemy": "40",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54515,10 +51489,9 @@
"ge_buy_limit": "100",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "16",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54536,10 +51509,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "7",
- "high_alchemy": "11",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54554,14 +51526,17 @@
{
"requirements": "{4,30}",
"ge_buy_limit": "100",
+ "examine": "A finely balanced throwing knife.",
"durability": null,
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
"grand_exchange_price": "1505",
"attack_audios": "2704,0,0,0",
"name": "Adamant knife(p++)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "5666",
"bonuses": "0,0,0,0,15,0,0,0,0,0,0,0,0,0,14"
@@ -54571,10 +51546,9 @@
"ge_buy_limit": "10000",
"examine": "A finely balanced throwing knife.",
"durability": null,
- "low_alchemy": "66",
- "high_alchemy": "100",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"defence_anim": "424",
"equipment_slot": "3",
"attack_anims": "806,806,806,806",
@@ -54591,11 +51565,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "483",
@@ -54620,11 +51593,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "350",
@@ -54650,11 +51622,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "575",
@@ -54680,11 +51651,10 @@
"ge_buy_limit": "100",
"examine": "A dangerous dagger.",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "0.3",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "538",
@@ -54707,16 +51677,18 @@
{
"requirements": "{0,30}",
"ge_buy_limit": "100",
+ "durability": null,
+ "weapon_interface": "5",
+ "equip_audio": "2248",
+ "render_anim": "2584",
+ "equipment_slot": "3",
"grand_exchange_price": "800",
"attack_audios": "2517,2517,2500,2517",
- "durability": null,
"name": "Adamant dagger(p+)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "5676",
- "weapon_interface": "5",
- "bonuses": "15,8,-4,1,0,0,0,0,1,0,0,14,0,0,0",
- "render_anim": "2584",
- "equipment_slot": "3"
+ "bonuses": "15,8,-4,1,0,0,0,0,1,0,0,14,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -54733,11 +51705,10 @@
"ge_buy_limit": "100",
"examine": "A powerful dagger.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"lendable": "true",
@@ -54765,11 +51736,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "397",
"equipment_slot": "3",
@@ -54801,11 +51771,10 @@
"ge_buy_limit": "100",
"examine": "A vicious black dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "664",
@@ -54833,6 +51802,7 @@
"id": "5684",
"weapon_interface": "5",
"bonuses": "10,5,-4,1,0,0,0,0,1,0,0,7,0,0,0",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3"
},
@@ -54848,11 +51818,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "4128",
@@ -54877,11 +51846,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "5088",
@@ -54907,11 +51875,10 @@
"ge_buy_limit": "100",
"examine": "Short but pointy.",
"durability": null,
- "low_alchemy": "50",
- "high_alchemy": "75",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "4729",
@@ -54937,11 +51904,10 @@
"ge_buy_limit": "100",
"examine": "A dangerous dagger.",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "0.3",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "3476",
@@ -54964,16 +51930,18 @@
{
"requirements": "{0,30}",
"ge_buy_limit": "100",
+ "durability": null,
+ "weapon_interface": "5",
+ "equip_audio": "2248",
+ "render_anim": "2584",
+ "equipment_slot": "3",
"grand_exchange_price": "4612",
"attack_audios": "2517,2517,2500,2517",
- "durability": null,
"name": "Adamant dagger(p++)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "5694",
- "weapon_interface": "5",
- "bonuses": "15,8,-4,1,0,0,0,0,1,0,0,14,0,0,0",
- "render_anim": "2584",
- "equipment_slot": "3"
+ "bonuses": "15,8,-4,1,0,0,0,0,1,0,0,14,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -54990,11 +51958,10 @@
"ge_buy_limit": "100",
"examine": "A powerful dagger.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"lendable": "true",
@@ -55022,11 +51989,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "397",
"equipment_slot": "3",
@@ -55058,11 +52024,10 @@
"ge_buy_limit": "100",
"examine": "A vicious black dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "4921",
@@ -55090,6 +52055,7 @@
"id": "5702",
"weapon_interface": "5",
"bonuses": "10,5,-4,1,0,0,0,0,1,0,0,7,0,0,0",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3"
},
@@ -55106,14 +52072,13 @@
"examine": "A bronze tipped spear.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "861",
@@ -55141,14 +52106,13 @@
"examine": "An iron tipped spear.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "36",
- "high_alchemy": "54",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "676",
@@ -55171,31 +52135,30 @@
"id": "5707"
},
{
+ "requirements": "{0,5}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A steel tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "130",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "596",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Steel spear(p+)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5708",
"stand_turn_anim": "1209",
- "bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0",
- "requirements": "{0,5}",
- "durability": null,
- "high_alchemy": "195",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Steel spear(p+)"
+ "bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55207,31 +52170,30 @@
"id": "5709"
},
{
+ "requirements": "{0,20}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A mithril tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "338",
+ "durability": null,
+ "weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "802",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Mithril spear(p+)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5710",
"stand_turn_anim": "1209",
- "bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0",
- "requirements": "{0,20}",
- "durability": null,
- "high_alchemy": "507",
- "weight": "1.8",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Mithril spear(p+)"
+ "bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55243,31 +52205,30 @@
"id": "5711"
},
{
+ "requirements": "{0,30}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "An adamant tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "832",
+ "durability": null,
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "1394",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Adamant spear(p+)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5712",
"stand_turn_anim": "1209",
- "bonuses": "24,24,24,0,0,1,1,0,0,0,0,28,0,0,0",
- "requirements": "{0,30}",
- "durability": null,
- "high_alchemy": "1248",
- "weight": "2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Adamant spear(p+)"
+ "bonuses": "24,24,24,0,0,1,1,0,0,0,0,28,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55283,7 +52244,6 @@
"turn90cw_anim": "1207",
"examine": "A rune tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "8320",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -55299,9 +52259,9 @@
"bonuses": "36,36,36,0,0,1,1,0,0,0,0,42,0,0,0",
"requirements": "{0,40}",
"durability": null,
- "high_alchemy": "12480",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Rune spear(p+)"
@@ -55321,7 +52281,6 @@
"examine": "A dragon tipped spear.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "24960",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -55339,9 +52298,9 @@
"bonuses": "55,55,55,0,0,5,5,5,5,5,0,60,0,0,0",
"requirements": "{0,60}",
"durability": null,
- "high_alchemy": "37440",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Dragon spear(p+)"
@@ -55363,14 +52322,13 @@
"examine": "A bronze tipped spear.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "7557",
@@ -55398,14 +52356,13 @@
"examine": "An iron tipped spear.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "36",
- "high_alchemy": "54",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "8394",
@@ -55428,31 +52385,30 @@
"id": "5721"
},
{
+ "requirements": "{0,5}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A steel tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "130",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "8336",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Steel spear(p++)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5722",
"stand_turn_anim": "1209",
- "bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0",
- "requirements": "{0,5}",
- "durability": null,
- "high_alchemy": "195",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Steel spear(p++)"
+ "bonuses": "12,12,12,0,0,1,1,0,0,0,0,12,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55464,31 +52420,30 @@
"id": "5723"
},
{
+ "requirements": "{0,20}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A mithril tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "338",
+ "durability": null,
+ "weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "7035",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Mithril spear(p++)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5724",
"stand_turn_anim": "1209",
- "bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0",
- "requirements": "{0,20}",
- "durability": null,
- "high_alchemy": "507",
- "weight": "1.8",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Mithril spear(p++)"
+ "bonuses": "17,17,17,0,0,1,1,0,0,0,0,18,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55503,17 +52458,20 @@
"requirements": "{0,30}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
+ "examine": "An adamant tipped spear.",
"walk_anim": "1205",
"durability": null,
"turn90ccw_anim": "1208",
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "7530",
"stand_anim": "813",
"name": "Adamant spear(p++)",
+ "tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5726",
@@ -55534,7 +52492,6 @@
"turn90cw_anim": "1207",
"examine": "A rune tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "8320",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -55550,9 +52507,9 @@
"bonuses": "36,36,36,0,0,1,1,0,0,0,0,42,0,0,0",
"requirements": "{0,40}",
"durability": null,
- "high_alchemy": "12480",
"weight": "2.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Rune spear(p++)"
@@ -55572,7 +52529,6 @@
"examine": "A dragon tipped spear.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "24960",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -55590,9 +52546,9 @@
"bonuses": "55,55,55,0,0,5,5,5,5,5,0,60,0,0,0",
"requirements": "{0,60}",
"durability": null,
- "high_alchemy": "37440",
"weight": "2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Dragon spear(p++)"
@@ -55623,31 +52579,30 @@
"id": "5733"
},
{
+ "requirements": "{0,10}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A black tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "260",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "3351",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Black spear(p+)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5734",
"stand_turn_anim": "1209",
- "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0",
- "requirements": "{0,10}",
- "durability": null,
- "high_alchemy": "390",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Black spear(p+)"
+ "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55659,31 +52614,30 @@
"id": "5735"
},
{
+ "requirements": "{0,10}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A black tipped spear.",
"walk_anim": "1205",
- "low_alchemy": "260",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "9065",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Black spear(p++)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "5736",
"stand_turn_anim": "1209",
- "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0",
- "requirements": "{0,10}",
- "durability": null,
- "high_alchemy": "390",
- "weight": "2.2",
- "weapon_interface": "14",
- "render_anim": "28",
- "name": "Black spear(p++)"
+ "bonuses": "15,15,15,0,0,1,1,0,0,0,0,16,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -55711,7 +52665,6 @@
"durability": null,
"name": "Asgarnian ale(m)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5739"
},
@@ -55731,7 +52684,6 @@
"durability": null,
"name": "Mature wmb",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5741"
},
@@ -55751,7 +52703,6 @@
"durability": null,
"name": "Greenman's ale(m)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5743"
@@ -55772,7 +52723,6 @@
"durability": null,
"name": "Dragon bitter(m)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5745"
},
@@ -55792,7 +52742,6 @@
"durability": null,
"name": "Dwarven stout(m)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5747"
},
@@ -55812,8 +52761,6 @@
"durability": null,
"name": "Moonlight mead(m)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5749"
},
@@ -55833,7 +52780,6 @@
"durability": null,
"name": "Axeman's folly",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5751"
},
@@ -55853,7 +52799,6 @@
"durability": null,
"name": "Axeman's folly(m)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5753"
},
@@ -55873,7 +52818,6 @@
"durability": null,
"name": "Chef's delight",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5755"
},
@@ -55893,7 +52837,6 @@
"durability": null,
"name": "Chef's delight(m)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5757"
},
@@ -55913,7 +52856,6 @@
"durability": null,
"name": "Slayer's respite",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5759"
},
@@ -55933,7 +52875,6 @@
"durability": null,
"name": "Slayer's respite(m)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5761"
},
@@ -55954,7 +52895,6 @@
"durability": null,
"name": "Cider",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5763"
@@ -55975,7 +52915,6 @@
"durability": null,
"name": "Mature cider",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5765"
},
@@ -55996,8 +52935,6 @@
"durability": null,
"name": "Ale yeast",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2",
"archery_ticket_price": "0",
"id": "5767"
@@ -56038,7 +52975,6 @@
"durability": null,
"name": "Dwarven stout(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5771"
},
@@ -56059,7 +52995,6 @@
"durability": null,
"name": "Dwarven stout(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5773"
},
@@ -56080,7 +53015,6 @@
"durability": null,
"name": "Dwarven stout(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5775"
},
@@ -56101,7 +53035,6 @@
"durability": null,
"name": "Dwarven stout(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5777"
},
@@ -56122,7 +53055,6 @@
"durability": null,
"name": "Asgarnian ale(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5779"
},
@@ -56143,7 +53075,6 @@
"durability": null,
"name": "Asgarnian ale(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5781"
},
@@ -56164,7 +53095,6 @@
"durability": null,
"name": "Asgarnian ale(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5783"
},
@@ -56185,7 +53115,6 @@
"durability": null,
"name": "Asgarnian ale(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5785"
},
@@ -56206,7 +53135,6 @@
"durability": null,
"name": "Greenmans ale(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5787"
},
@@ -56227,7 +53155,6 @@
"durability": null,
"name": "Greenmans ale(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5789"
},
@@ -56248,7 +53175,6 @@
"durability": null,
"name": "Greenmans ale(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5791"
},
@@ -56269,7 +53195,6 @@
"durability": null,
"name": "Greenmans ale(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5793"
},
@@ -56290,7 +53215,6 @@
"durability": null,
"name": "Mind bomb(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5795"
},
@@ -56311,7 +53235,6 @@
"durability": null,
"name": "Mind bomb(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5797"
},
@@ -56332,7 +53255,6 @@
"durability": null,
"name": "Mind bomb(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5799"
},
@@ -56353,7 +53275,6 @@
"durability": null,
"name": "Mind bomb(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5801"
},
@@ -56374,7 +53295,6 @@
"durability": null,
"name": "Dragon bitter(1)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5803"
@@ -56396,7 +53316,6 @@
"durability": null,
"name": "Dragon bitter(2)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5805"
@@ -56418,7 +53337,6 @@
"durability": null,
"name": "Dragon bitter(3)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5807"
@@ -56440,7 +53358,6 @@
"durability": null,
"name": "Dragon bitter(4)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5809"
@@ -56462,8 +53379,6 @@
"durability": null,
"name": "Moonlight mead(1)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5811"
},
@@ -56484,8 +53399,6 @@
"durability": null,
"name": "Moonlight mead(2)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5813"
},
@@ -56506,8 +53419,6 @@
"durability": null,
"name": "Moonlight mead(3)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5815"
},
@@ -56528,8 +53439,6 @@
"durability": null,
"name": "Moonlight mead(4)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5817"
},
@@ -56549,7 +53458,6 @@
"durability": null,
"name": "Axeman's folly(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5819"
},
@@ -56569,7 +53477,6 @@
"durability": null,
"name": "Axeman's folly(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5821"
},
@@ -56589,7 +53496,6 @@
"durability": null,
"name": "Axeman's folly(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5823"
},
@@ -56609,7 +53515,6 @@
"durability": null,
"name": "Axeman's folly(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5825"
},
@@ -56629,7 +53534,6 @@
"durability": null,
"name": "Chef's delight(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5827"
},
@@ -56649,7 +53553,6 @@
"durability": null,
"name": "Chef's delight(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5829"
},
@@ -56669,7 +53572,6 @@
"durability": null,
"name": "Chef's delight(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5831"
},
@@ -56689,7 +53591,6 @@
"durability": null,
"name": "Chef's delight(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5833"
},
@@ -56709,7 +53610,6 @@
"durability": null,
"name": "Slayer's respite(1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5835"
},
@@ -56729,7 +53629,6 @@
"durability": null,
"name": "Slayer's respite(2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5837"
},
@@ -56749,7 +53648,6 @@
"durability": null,
"name": "Slayer's respite(3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5839"
},
@@ -56769,7 +53667,6 @@
"durability": null,
"name": "Slayer's respite(4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5841"
},
@@ -56790,7 +53687,6 @@
"durability": null,
"name": "Cider(1)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5843"
@@ -56812,7 +53708,6 @@
"durability": null,
"name": "Cider(2)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5845"
@@ -56834,7 +53729,6 @@
"durability": null,
"name": "Cider(3)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5847"
@@ -56856,7 +53750,6 @@
"durability": null,
"name": "Cider(4)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "5849"
@@ -56877,7 +53770,6 @@
"durability": null,
"name": "Dwarven stout(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5851"
},
@@ -56897,7 +53789,6 @@
"durability": null,
"name": "Dwarven stout(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5853"
},
@@ -56917,7 +53808,6 @@
"durability": null,
"name": "Dwarven stout(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5855"
},
@@ -56937,7 +53827,6 @@
"durability": null,
"name": "Dwarven stout(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5857"
},
@@ -56957,7 +53846,6 @@
"durability": null,
"name": "Asgarnian ale(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5859"
},
@@ -56977,7 +53865,6 @@
"durability": null,
"name": "Asgarnian ale(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5861"
},
@@ -56997,7 +53884,6 @@
"durability": null,
"name": "Asgarnian ale(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5863"
},
@@ -57017,7 +53903,6 @@
"durability": null,
"name": "Asgarnian ale(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5865"
},
@@ -57037,7 +53922,6 @@
"durability": null,
"name": "Greenmans ale(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5867"
@@ -57058,7 +53942,6 @@
"durability": null,
"name": "Greenmans ale(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5869"
@@ -57079,7 +53962,6 @@
"durability": null,
"name": "Greenmans ale(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5871"
@@ -57100,7 +53982,6 @@
"durability": null,
"name": "Greenmans ale(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "5873"
@@ -57121,7 +54002,6 @@
"durability": null,
"name": "Mind bomb(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5875"
},
@@ -57141,7 +54021,6 @@
"durability": null,
"name": "Mind bomb(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5877"
},
@@ -57161,7 +54040,6 @@
"durability": null,
"name": "Mind bomb(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5879"
},
@@ -57181,7 +54059,6 @@
"durability": null,
"name": "Mind bomb(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5881"
},
@@ -57201,7 +54078,6 @@
"durability": null,
"name": "Dragon bitter(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5883"
},
@@ -57221,7 +54097,6 @@
"durability": null,
"name": "Dragon bitter(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5885"
},
@@ -57241,7 +54116,6 @@
"durability": null,
"name": "Dragon bitter(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5887"
},
@@ -57261,7 +54135,6 @@
"durability": null,
"name": "Dragon bitter(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5889"
},
@@ -57282,8 +54155,6 @@
"durability": null,
"name": "M'light mead(m1)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5891"
},
@@ -57303,8 +54174,6 @@
"durability": null,
"name": "M'light mead(m2)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5893"
},
@@ -57324,8 +54193,6 @@
"durability": null,
"name": "M'light mead(m3)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5895"
},
@@ -57345,8 +54212,6 @@
"durability": null,
"name": "M'light mead(m4)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "5897"
},
@@ -57366,7 +54231,6 @@
"durability": null,
"name": "Axeman's folly(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5899"
},
@@ -57386,7 +54250,6 @@
"durability": null,
"name": "Axeman's folly(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5901"
},
@@ -57406,7 +54269,6 @@
"durability": null,
"name": "Axeman's folly(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5903"
},
@@ -57426,7 +54288,6 @@
"durability": null,
"name": "Axeman's folly(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5905"
},
@@ -57446,7 +54307,6 @@
"durability": null,
"name": "Chef's delight(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5907"
},
@@ -57466,7 +54326,6 @@
"durability": null,
"name": "Chef's delight(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5909"
},
@@ -57486,7 +54345,6 @@
"durability": null,
"name": "Chef's delight(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5911"
},
@@ -57506,7 +54364,6 @@
"durability": null,
"name": "Chef's delight(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5913"
},
@@ -57526,7 +54383,6 @@
"durability": null,
"name": "Slayer respite(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5915"
},
@@ -57546,7 +54402,6 @@
"durability": null,
"name": "Slayer respite(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5917"
},
@@ -57566,7 +54421,6 @@
"durability": null,
"name": "Slayer respite(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5919"
},
@@ -57586,7 +54440,6 @@
"durability": null,
"name": "Slayer respite(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5921"
},
@@ -57606,7 +54459,6 @@
"durability": null,
"name": "Cider(m1)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5923"
},
@@ -57626,7 +54478,6 @@
"durability": null,
"name": "Cider(m2)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5925"
},
@@ -57646,7 +54497,6 @@
"durability": null,
"name": "Cider(m3)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5927"
},
@@ -57666,7 +54516,6 @@
"durability": null,
"name": "Cider(m4)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "5929"
},
@@ -57686,8 +54535,6 @@
"durability": null,
"name": "Jute fibre",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "5931"
@@ -57708,7 +54555,6 @@
"durability": null,
"name": "Willow branch",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "5933"
@@ -57739,8 +54585,6 @@
"durability": null,
"name": "Weapon poison+",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "5937"
},
@@ -57760,8 +54604,6 @@
"durability": null,
"name": "Weapon poison++",
"tradeable": "true",
- "low_alchemy": "172",
- "high_alchemy": "259",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "5940"
@@ -57782,8 +54624,6 @@
"durability": null,
"name": "Antipoison+(4)",
"tradeable": "true",
- "low_alchemy": "144",
- "high_alchemy": "216",
"weight": "1",
"archery_ticket_price": "0",
"id": "5943"
@@ -57804,8 +54644,6 @@
"durability": null,
"name": "Antipoison+(3)",
"tradeable": "true",
- "low_alchemy": "144",
- "high_alchemy": "216",
"weight": "1",
"archery_ticket_price": "0",
"id": "5945"
@@ -57826,8 +54664,6 @@
"durability": null,
"name": "Antipoison+(2)",
"tradeable": "true",
- "low_alchemy": "144",
- "high_alchemy": "216",
"weight": "1",
"archery_ticket_price": "0",
"id": "5947"
@@ -57848,8 +54684,6 @@
"durability": null,
"name": "Antipoison+(1)",
"tradeable": "true",
- "low_alchemy": "144",
- "high_alchemy": "216",
"weight": "1",
"archery_ticket_price": "0",
"id": "5949"
@@ -57870,8 +54704,6 @@
"durability": null,
"name": "Antipoison++(4)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "5952"
},
@@ -57891,8 +54723,6 @@
"durability": null,
"name": "Antipoison++(3)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "5954"
},
@@ -57912,8 +54742,6 @@
"durability": null,
"name": "Antipoison++(2)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "5956"
},
@@ -57933,8 +54761,6 @@
"durability": null,
"name": "Antipoison++(1)",
"tradeable": "true",
- "low_alchemy": "115",
- "high_alchemy": "172",
"archery_ticket_price": "0",
"id": "5958"
},
@@ -58037,8 +54863,6 @@
"durability": null,
"name": "Curry leaf",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "11",
"archery_ticket_price": "0",
"id": "5970"
},
@@ -58058,8 +54882,6 @@
"durability": null,
"name": "Papaya fruit",
"tradeable": "true",
- "low_alchemy": "25",
- "high_alchemy": "38",
"archery_ticket_price": "0",
"id": "5972"
},
@@ -58079,8 +54901,6 @@
"durability": null,
"name": "Coconut",
"tradeable": "true",
- "low_alchemy": "34",
- "high_alchemy": "52",
"archery_ticket_price": "0",
"id": "5974"
},
@@ -58100,8 +54920,6 @@
"durability": null,
"name": "Coconut",
"tradeable": "true",
- "low_alchemy": "34",
- "high_alchemy": "52",
"archery_ticket_price": "0",
"id": "5976"
},
@@ -58140,8 +54958,6 @@
"durability": null,
"name": "Calquat fruit",
"tradeable": "true",
- "low_alchemy": "21",
- "high_alchemy": "32",
"archery_ticket_price": "0",
"id": "5980"
},
@@ -58162,8 +54978,6 @@
"durability": null,
"name": "Watermelon",
"tradeable": "true",
- "low_alchemy": "19",
- "high_alchemy": "28",
"weight": "0.111",
"archery_ticket_price": "0",
"id": "5982"
@@ -58184,8 +54998,6 @@
"durability": null,
"name": "Watermelon slice",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "5984"
},
@@ -58205,8 +55017,6 @@
"durability": null,
"name": "Sweetcorn",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"archery_ticket_price": "0",
"id": "5986"
},
@@ -58226,8 +55036,6 @@
"durability": null,
"name": "Cooked sweetcorn",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"archery_ticket_price": "0",
"id": "5988"
},
@@ -58254,8 +55062,6 @@
"durability": null,
"name": "Apple mush",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "5992"
},
@@ -58275,8 +55081,6 @@
"durability": null,
"name": "Hammerstone hops",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "5994"
},
@@ -58296,8 +55100,6 @@
"durability": null,
"name": "Asgarnian hops",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "1",
"archery_ticket_price": "0",
"id": "5996"
@@ -58318,8 +55120,6 @@
"durability": null,
"name": "Yanillian hops",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "5998"
},
@@ -58340,8 +55140,6 @@
"durability": null,
"name": "Krandorian hops",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "6000"
},
@@ -58376,8 +55174,10 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "219",
+ "examine": "A Bittercap Mushroom",
"durability": null,
"name": "Mushroom",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "6004"
},
@@ -58397,8 +55197,6 @@
"durability": null,
"name": "Barley",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "6006"
},
@@ -58418,8 +55216,6 @@
"durability": null,
"name": "Barley malt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "6008"
},
@@ -58458,8 +55254,6 @@
"durability": null,
"name": "Nasturtiums",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "6012"
},
@@ -58479,7 +55273,6 @@
"durability": null,
"name": "Rosemary",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "6014"
},
@@ -58518,8 +55311,6 @@
"durability": null,
"name": "Poison ivy berries",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "39",
"archery_ticket_price": "0",
"id": "6018"
},
@@ -58654,8 +55445,6 @@
"durability": null,
"name": "Compost",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "3",
"archery_ticket_price": "0",
"id": "6032"
@@ -58676,8 +55465,6 @@
"durability": null,
"name": "Supercompost",
"tradeable": "true",
- "low_alchemy": "34",
- "high_alchemy": "51",
"weight": "3",
"archery_ticket_price": "0",
"id": "6034"
@@ -58699,8 +55486,6 @@
"durability": null,
"name": "Plant cure",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "6036"
},
@@ -58900,7 +55685,6 @@
"examine": "This should scare the birds.",
"durability": null,
"name": "Scarecrow",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "6059"
},
@@ -58915,38 +55699,32 @@
"shop_price": "3",
"ge_buy_limit": "10000",
"examine": "Bronze crossbow bolts.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "134",
+ "durability": null,
"name": "Bronze bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6061",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"shop_price": "3",
"ge_buy_limit": "10000",
"examine": "Bronze crossbow bolts.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "1162",
+ "durability": null,
"name": "Bronze bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6062",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,10",
+ "equipment_slot": "13"
},
{
"examine": "How do I wash blood stains out?",
"durability": null,
"name": "Bloody mourner top",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "2.72",
"archery_ticket_price": "0",
"id": "6064"
@@ -58956,28 +55734,22 @@
"examine": "A thick heavy leather top.",
"durability": null,
"name": "Mourner top",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "6065",
"equipment_slot": "4"
},
{
- "examine": "Damaged: These are in need of a good tailor.Repaired: A pair of mourner trousers.",
+ "examine": "These are in need of a good tailor.",
"durability": null,
"name": "Mourner trousers",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "2.25",
"archery_ticket_price": "0",
"id": "6066"
},
{
- "examine": "Damaged: These are in need of a good tailor.Repaired: A pair of mourner trousers.",
+ "examine": "A pair of mourner trousers.",
"durability": null,
"name": "Mourner trousers",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "2.25",
"archery_ticket_price": "0",
"id": "6067",
@@ -58988,8 +55760,6 @@
"examine": "These will keep my hands warm.",
"durability": null,
"name": "Mourner gloves",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "2.3",
"archery_ticket_price": "0",
"id": "6068",
@@ -59001,8 +55771,6 @@
"examine": "Comfortable leather boots.",
"durability": null,
"name": "Mourner boots",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1.36",
"archery_ticket_price": "0",
"id": "6069",
@@ -59013,8 +55781,6 @@
"examine": "A dull brown cape.",
"durability": null,
"name": "Mourner cloak",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2.25",
"archery_ticket_price": "0",
"id": "6070",
@@ -59032,8 +55798,6 @@
"examine": "A bar of soap taken from Tegid.",
"durability": null,
"name": "Tegid's soap",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6072"
@@ -59049,7 +55813,6 @@
"examine": "A book on the exploration of the eastern realm.",
"durability": null,
"name": "Eastern discovery",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "6075"
},
@@ -59066,7 +55829,6 @@
"examine": "A book about the great divide.",
"durability": null,
"name": "The great divide",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6079"
@@ -59085,8 +55847,6 @@
"examine": "A device for firing dye.",
"walk_anim": "2317",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "4",
"turn90ccw_anim": "2320",
"attack_speed": "4",
@@ -59113,8 +55873,6 @@
"examine": "A large pair of ogre bellows filled with red dye.",
"durability": null,
"name": "Red dye bellows",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "6085"
},
@@ -59122,8 +55880,6 @@
"examine": "A large pair of ogre bellows filled with blue dye.",
"durability": null,
"name": "Blue dye bellows",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "6086"
},
@@ -59131,8 +55887,6 @@
"examine": "A large pair of ogre bellows filled with yellow dye.",
"durability": null,
"name": "Yellow dye bellows",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "6087"
},
@@ -59140,8 +55894,6 @@
"examine": "A large pair of ogre bellows filled with green dye.",
"durability": null,
"name": "Green dye bellows",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "6088"
},
@@ -59211,8 +55963,6 @@
"examine": "It's a sieve.",
"durability": null,
"name": "Sieve",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "6097"
},
@@ -59220,8 +55970,6 @@
"examine": "A pile of toxic powder.",
"durability": null,
"name": "Toxic powder",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "6098"
},
@@ -59272,8 +56020,6 @@
"examine": "They seem to be not quite of this world...",
"durability": null,
"name": "Ghostly boots",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "6106",
"bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
@@ -59303,8 +56049,6 @@
"examine": "A ghostly hood, fit for a ghostly head.",
"durability": null,
"name": "Ghostly hood",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "6109",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0",
@@ -59314,8 +56058,6 @@
"examine": "They seem to fade in and out of existence...",
"durability": null,
"name": "Ghostly gloves",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "6110",
"bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
@@ -59325,8 +56067,6 @@
"examine": "Made of a strange, ghostly material...",
"durability": null,
"name": "Ghostly cloak",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "6111",
"bonuses": "0,0,0,5,0,0,0,0,5,0,0,0,0,0,0",
@@ -59347,9 +56087,7 @@
"examine": "A handful of Kelda Hops.",
"durability": null,
"name": "Kelda hops",
- "low_alchemy": "1",
"tradeable": "false",
- "high_alchemy": "2",
"destroy": "true",
"weight": "0.01",
"archery_ticket_price": "0",
@@ -59360,7 +56098,6 @@
"examine": "A pint of bluish beer.",
"durability": null,
"name": "Kelda stout",
- "high_alchemy": "1",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6118"
@@ -59395,7 +56132,6 @@
"durability": null,
"name": "Beer glass",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "6123",
@@ -59409,33 +56145,27 @@
"id": "6124"
},
{
- "examine": "This will teleport me to Rellekka when I play it. A musical intrument that I can magically play.",
+ "examine": "This will teleport me to Rellekka when I play it.",
"durability": null,
"name": "Enchanted lyre(2)",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "6125",
"equipment_slot": "3"
},
{
- "examine": "This will teleport me to Rellekka when I play it. A musical intrument that I can magically play.",
+ "examine": "This will teleport me to Rellekka when I play it.",
"durability": null,
"name": "Enchanted lyre(3)",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "6126",
"equipment_slot": "3"
},
{
- "examine": "This will teleport me to Rellekka when I play it. A musical intrument that I can magically play.",
+ "examine": "This will teleport me to Rellekka when I play it.",
"durability": null,
"name": "Enchanted lyre(4)",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "6127",
@@ -59447,8 +56177,6 @@
"ge_buy_limit": "100",
"examine": "Protective headwear made from crabs. Better than it sounds.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -59461,12 +56189,14 @@
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,6,0,0,0,0"
},
{
- "remove_sleeves": "true",
+ "lendable": "true",
"requirements": "{1,40}",
+ "remove_sleeves": "true",
"ge_buy_limit": "100",
"grand_exchange_price": "40600",
"durability": null,
"name": "Rock-shell plate",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "6129",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,30,0,0,0,0",
@@ -59477,8 +56207,6 @@
"ge_buy_limit": "100",
"examine": "Some tough leggings made from rock crab parts.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "9",
"absorb": "2,0,4",
"equipment_slot": "7",
@@ -59496,8 +56224,6 @@
"ge_buy_limit": "100",
"examine": "A helm fit for any Fremennik ranger.",
"durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1",
"absorb": "0,3,1",
"remove_beard": "true",
@@ -59524,8 +56250,6 @@
"ge_buy_limit": "100",
"examine": "A constant reminder that I'm above a Dagannoth in the food chain.",
"durability": null,
- "low_alchemy": "3000",
- "high_alchemy": "4500",
"weight": "6",
"absorb": "0,6,3",
"equipment_slot": "4",
@@ -59552,8 +56276,6 @@
"ge_buy_limit": "100",
"examine": "Stylish leg armour for rangers with a lingering smell of raw fish...",
"durability": null,
- "low_alchemy": "1560",
- "high_alchemy": "2340",
"weight": "5",
"absorb": "0,4,2",
"equipment_slot": "7",
@@ -59580,8 +56302,6 @@
"ge_buy_limit": "100",
"examine": "Make your foes cower by wearing a skull as a helmet!",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "1.3",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -59607,8 +56327,6 @@
"ge_buy_limit": "100",
"examine": "The bones in this armour seems to vibrate with a magic quality...",
"durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
"weight": "4.9",
"absorb": "6,3,0",
"equipment_slot": "4",
@@ -59635,8 +56353,6 @@
"ge_buy_limit": "100",
"examine": "A superior set of strengthened slacks for any self respecting seer.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "4",
"absorb": "4,2,0",
"equipment_slot": "7",
@@ -59661,9 +56377,8 @@
"ge_buy_limit": "100",
"examine": "Some finely crafted Fremennik boots, made from spined dagannoth hide.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"weight": "3",
+ "equip_audio": "2237",
"equipment_slot": "10",
"lendable": "true",
"grand_exchange_price": "1671",
@@ -59686,9 +56401,8 @@
"ge_buy_limit": "100",
"examine": "Some Fremennik boots, made from the shards of a rock crab's shell.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"weight": "3.1",
+ "equip_audio": "2237",
"equipment_slot": "10",
"lendable": "true",
"grand_exchange_price": "756",
@@ -59708,20 +56422,18 @@
"id": "6146"
},
{
+ "lendable": "true",
"ge_buy_limit": "100",
"examine": "Some finely crafted Fremennik boots, made from the bones of a Wallasalki.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "3.1",
- "equipment_slot": "10",
- "lendable": "true",
"grand_exchange_price": "4958",
+ "durability": null,
"name": "Skeletal boots",
"tradeable": "true",
+ "weight": "3.1",
"archery_ticket_price": "0",
"id": "6147",
- "bonuses": "0,0,0,0,0,0,1,1,0,0,1,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,0,1,0,0,0,0",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -59733,20 +56445,18 @@
"id": "6148"
},
{
+ "lendable": "true",
"ge_buy_limit": "100",
"examine": "Fremennik gloves stitched together from spined dagannoth hide.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "3",
- "equipment_slot": "9",
- "lendable": "true",
"grand_exchange_price": "955",
+ "durability": null,
"name": "Spined gloves",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
"id": "6149",
- "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -59758,20 +56468,18 @@
"id": "6150"
},
{
+ "lendable": "true",
"ge_buy_limit": "100",
"examine": "Fremennik gloves stitched together from rock crab shell shards.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "2",
- "equipment_slot": "9",
- "lendable": "true",
"grand_exchange_price": "951",
+ "durability": null,
"name": "Rock-shell gloves",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "6151",
- "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -59783,20 +56491,18 @@
"id": "6152"
},
{
+ "lendable": "true",
"ge_buy_limit": "100",
"examine": "Fremennik gloves stitched together from wallasalki bones fragments.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "3.1",
- "equipment_slot": "9",
- "lendable": "true",
"grand_exchange_price": "21800",
+ "durability": null,
"name": "Skeletal gloves",
"tradeable": "true",
+ "weight": "3.1",
"archery_ticket_price": "0",
"id": "6153",
- "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -59814,8 +56520,6 @@
"durability": null,
"name": "Dagannoth hide",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6155"
@@ -59836,8 +56540,6 @@
"durability": null,
"name": "Rock-shell chunk",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3",
"archery_ticket_price": "0",
"id": "6157"
@@ -59858,8 +56560,6 @@
"durability": null,
"name": "Rock-shell shard",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "6159"
},
@@ -59879,8 +56579,6 @@
"durability": null,
"name": "Rock-shell splinter",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3",
"archery_ticket_price": "0",
"id": "6161"
@@ -59901,8 +56599,6 @@
"durability": null,
"name": "Skull piece",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6163"
@@ -59923,8 +56619,6 @@
"durability": null,
"name": "Ribcage piece",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6165"
@@ -59945,8 +56639,6 @@
"durability": null,
"name": "Fibula piece",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6167"
@@ -59967,8 +56659,6 @@
"durability": null,
"name": "Circular hide",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6169"
@@ -59989,8 +56679,6 @@
"durability": null,
"name": "Flattened hide",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6171"
@@ -60011,8 +56699,6 @@
"durability": null,
"name": "Stretched hide",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3.1",
"archery_ticket_price": "0",
"id": "6173"
@@ -60034,10 +56720,12 @@
"id": "6175"
},
{
+ "examine": "A sturdy body armour made from rock crab pieces.",
"durability": null,
"name": "Rock-shell plate",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "9",
"id": "6176"
},
{
@@ -60223,8 +56911,6 @@
"durability": null,
"name": "Small fishing net",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "4.5",
"archery_ticket_price": "0",
"id": "6209"
@@ -60236,8 +56922,6 @@
"durability": null,
"name": "Teak pyre logs",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"archery_ticket_price": "0",
"id": "6211"
@@ -60258,8 +56942,6 @@
"durability": null,
"name": "Mahogany pyre log",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "6213"
@@ -60278,8 +56960,6 @@
"ge_buy_limit": "100",
"examine": "A scary broodoo shield.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "5.4",
"absorb": "4,2,0",
"equipment_slot": "5",
@@ -60302,18 +56982,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (9)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6217",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60325,18 +57003,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (8)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6219",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60348,18 +57024,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (7)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6221",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60371,18 +57045,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (6)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6223",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60394,18 +57066,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (5)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6225",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60417,18 +57087,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (4)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6227",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60440,18 +57108,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (3)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6229",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60463,18 +57129,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (2)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6231",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60486,18 +57150,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (1)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6233",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60511,8 +57173,6 @@
"ge_buy_limit": "100",
"examine": "A scary broodoo shield.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "5.4",
"absorb": "4,2,0",
"equipment_slot": "5",
@@ -60537,8 +57197,6 @@
"ge_buy_limit": "100",
"examine": "A scary broodoo shield.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "5.4",
"absorb": "4,2,0",
"equipment_slot": "5",
@@ -60561,18 +57219,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (9)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6239",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60584,18 +57240,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (8)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6241",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60607,18 +57261,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (7)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6243",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60630,18 +57282,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (6)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6245",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60653,18 +57303,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (5)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6247",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60676,18 +57324,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (4)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6249",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60699,18 +57345,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (3)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6251",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60722,18 +57366,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (2)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6253",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60745,18 +57387,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (1)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6255",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60770,8 +57410,6 @@
"ge_buy_limit": "100",
"examine": "A scary broodoo shield.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "5.4",
"absorb": "4,2,0",
"equipment_slot": "5",
@@ -60796,8 +57434,6 @@
"ge_buy_limit": "100",
"examine": "A scary broodoo shield.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "5.4",
"absorb": "4,2,0",
"equipment_slot": "5",
@@ -60821,18 +57457,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (9)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6261",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60844,18 +57478,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (8)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6263",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60867,18 +57499,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (7)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6265",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60890,18 +57520,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (6)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6267",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60913,18 +57541,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (5)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6269",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60936,18 +57562,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (4)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6271",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60959,18 +57583,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (3)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6273",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -60982,18 +57604,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (2)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6275",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -61005,18 +57625,16 @@
{
"requirements": "{1,25}-{6,25}",
"examine": "A scary broodoo shield.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "5.4",
- "absorb": "4,2,0",
- "equipment_slot": "5",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Broodoo shield (1)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "6277",
- "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0"
+ "absorb": "4,2,0",
+ "bonuses": "0,0,0,3,-7,10,10,15,5,0,20,0,5,0,0",
+ "equipment_slot": "5"
},
{
"durability": null,
@@ -61030,8 +57648,6 @@
"ge_buy_limit": "100",
"examine": "A scary broodoo shield.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "5.4",
"absorb": "4,2,0",
"equipment_slot": "5",
@@ -61121,8 +57737,6 @@
"durability": null,
"name": "Snake hide",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6287"
@@ -61143,8 +57757,6 @@
"durability": null,
"name": "Snakeskin",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6289"
@@ -61165,8 +57777,6 @@
"durability": null,
"name": "Spider carcass",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "6291"
@@ -61188,8 +57798,6 @@
"durability": null,
"name": "Spider on stick",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "6293"
@@ -61211,8 +57819,6 @@
"durability": null,
"name": "Spider on shaft",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "1",
"archery_ticket_price": "0",
"id": "6295"
@@ -61234,8 +57840,6 @@
"durability": null,
"name": "Spider on stick",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "6297"
@@ -61257,8 +57861,6 @@
"durability": null,
"name": "Spider on shaft",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "1",
"archery_ticket_price": "0",
"id": "6299"
@@ -61286,8 +57888,6 @@
"durability": null,
"name": "Spider on shaft",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "1",
"archery_ticket_price": "0",
"id": "6303"
@@ -61306,8 +57906,6 @@
"durability": null,
"name": "Skewer stick",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "6305"
},
@@ -61346,8 +57944,6 @@
"ge_buy_limit": "100",
"examine": "A jungle specific slashing device.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1.35",
"weapon_interface": "6",
"render_anim": "2554",
@@ -61373,8 +57969,6 @@
"ge_buy_limit": "100",
"examine": "A jungle specific slashing device.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weapon_interface": "6",
"render_anim": "2554",
"equipment_slot": "3",
@@ -61399,8 +57993,6 @@
"ge_buy_limit": "100",
"examine": "A jungle specific slashing device.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1.3",
"attack_speed": "4",
"weapon_interface": "6",
@@ -61430,8 +58022,6 @@
"durability": null,
"name": "Proboscis",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6319"
},
@@ -61441,8 +58031,6 @@
"ge_buy_limit": "100",
"examine": "Made from 100% real snakeskin.",
"durability": null,
- "low_alchemy": "500",
- "high_alchemy": "750",
"weight": "10",
"absorb": "0,4,2",
"equipment_slot": "4",
@@ -61468,8 +58056,6 @@
"ge_buy_limit": "100",
"examine": "Made from 100% real snake.",
"durability": null,
- "low_alchemy": "470",
- "high_alchemy": "705",
"weight": "3.6",
"absorb": "0,3,1",
"equipment_slot": "7",
@@ -61495,8 +58081,6 @@
"ge_buy_limit": "100",
"examine": "Lightweight head protection.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.9",
"absorb": "0,2,1",
"equipment_slot": "0",
@@ -61520,17 +58104,15 @@
"requirements": "{1,30}-{4,30}",
"ge_buy_limit": "100",
"examine": "Made from snakes.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "0.3",
- "equipment_slot": "10",
"grand_exchange_price": "10800",
+ "durability": null,
"name": "Snakeskin boots",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "6328",
- "bonuses": "0,0,0,-10,3,1,1,2,1,0,9,0,0,0,0"
+ "bonuses": "0,0,0,-10,3,1,1,2,1,0,9,0,0,0,0",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -61545,17 +58127,15 @@
"requirements": "{1,30}-{4,30}",
"ge_buy_limit": "10000",
"examine": "Made from 100% real snake.",
- "durability": null,
- "low_alchemy": "173",
- "high_alchemy": "260",
- "weight": "1",
- "equipment_slot": "9",
"grand_exchange_price": "914",
+ "durability": null,
"name": "Snakeskin v'brace",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "6330",
- "bonuses": "0,0,0,-5,6,2,2,2,1,0,1,0,0,0,0"
+ "bonuses": "0,0,0,-5,6,2,2,2,1,0,1,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "10000",
@@ -61573,8 +58153,6 @@
"durability": null,
"name": "Mahogany logs",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1.33",
"archery_ticket_price": "0",
"id": "6332"
@@ -61586,8 +58164,6 @@
"durability": null,
"name": "Teak logs",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1.35",
"archery_ticket_price": "0",
"id": "6333"
@@ -61608,8 +58184,6 @@
"durability": null,
"name": "Tribal mask",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2",
"archery_ticket_price": "0",
"id": "6335",
@@ -61631,8 +58205,6 @@
"durability": null,
"name": "Tribal mask",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2",
"archery_ticket_price": "0",
"id": "6337",
@@ -61654,8 +58226,6 @@
"durability": null,
"name": "Tribal mask",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2",
"archery_ticket_price": "0",
"id": "6339",
@@ -61671,20 +58241,18 @@
"id": "6340"
},
{
+ "remove_sleeves": "true",
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "Local dress.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "3331",
+ "durability": null,
"name": "Tribal top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6341"
+ "id": "6341",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -61699,16 +58267,14 @@
"shop_price": "250",
"ge_buy_limit": "100",
"examine": "A brightly coloured robe prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "2",
- "equipment_slot": "7",
"grand_exchange_price": "1382",
+ "durability": null,
"name": "Villager robe",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "6343"
+ "id": "6343",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -61723,16 +58289,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "A brightly coloured hat prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "2337",
+ "durability": null,
"name": "Villager hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6345"
+ "id": "6345",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -61746,17 +58310,15 @@
{
"shop_price": "150",
"ge_buy_limit": "100",
- "examine": "A <colour> armband, as worn by the Tai Bwo Wannai locals.",
- "durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "weight": "0.5",
- "equipment_slot": "9",
+ "examine": "A brown armband, as worn by the Tai Bwo Wannai locals.",
"grand_exchange_price": "734",
+ "durability": null,
"name": "Villager armband",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
- "id": "6347"
+ "id": "6347",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -61771,16 +58333,14 @@
"shop_price": "100",
"ge_buy_limit": "100",
"examine": "A brightly coloured pair of local sandals.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.6",
- "equipment_slot": "10",
"grand_exchange_price": "2793",
+ "durability": null,
"name": "Villager sandals",
"tradeable": "true",
+ "weight": "0.6",
"archery_ticket_price": "0",
- "id": "6349"
+ "id": "6349",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -61792,20 +58352,18 @@
"id": "6350"
},
{
+ "remove_sleeves": "true",
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "Local dress.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "3171",
+ "durability": null,
"name": "Tribal top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6351"
+ "id": "6351",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -61820,16 +58378,14 @@
"shop_price": "250",
"ge_buy_limit": "100",
"examine": "A brightly coloured robe prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "2",
- "equipment_slot": "7",
"grand_exchange_price": "1416",
+ "durability": null,
"name": "Villager robe",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "6353"
+ "id": "6353",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -61844,16 +58400,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "A brightly coloured hat prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "2785",
+ "durability": null,
"name": "Villager hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6355"
+ "id": "6355",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -61868,16 +58422,14 @@
"shop_price": "100",
"ge_buy_limit": "100",
"examine": "A brightly coloured pair of local sandals.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.6",
- "equipment_slot": "10",
"grand_exchange_price": "944",
+ "durability": null,
"name": "Villager sandals",
"tradeable": "true",
+ "weight": "0.6",
"archery_ticket_price": "0",
- "id": "6357"
+ "id": "6357",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -61891,17 +58443,15 @@
{
"shop_price": "150",
"ge_buy_limit": "100",
- "examine": "A <colour> armband, as worn by the Tai Bwo Wannai locals.",
- "durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "weight": "0.5",
- "equipment_slot": "9",
+ "examine": "A blue armband, as worn by the Tai Bwo Wannai locals.",
"grand_exchange_price": "672",
+ "durability": null,
"name": "Villager armband",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
- "id": "6359"
+ "id": "6359",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -61913,20 +58463,18 @@
"id": "6360"
},
{
+ "remove_sleeves": "true",
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "Local dress.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "2484",
+ "durability": null,
"name": "Tribal top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6361"
+ "id": "6361",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -61941,16 +58489,14 @@
"shop_price": "250",
"ge_buy_limit": "100",
"examine": "A brightly coloured robe prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "2",
- "equipment_slot": "7",
"grand_exchange_price": "499",
+ "durability": null,
"name": "Villager robe",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "6363"
+ "id": "6363",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -61965,16 +58511,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "A brightly coloured hat prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "2440",
+ "durability": null,
"name": "Villager hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6365"
+ "id": "6365",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -61989,16 +58533,14 @@
"shop_price": "100",
"ge_buy_limit": "100",
"examine": "A brightly coloured pair of local sandals.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.6",
- "equipment_slot": "10",
"grand_exchange_price": "1479",
+ "durability": null,
"name": "Villager sandals",
"tradeable": "true",
+ "weight": "0.6",
"archery_ticket_price": "0",
- "id": "6367"
+ "id": "6367",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -62012,17 +58554,15 @@
{
"shop_price": "150",
"ge_buy_limit": "100",
- "examine": "A <colour> armband, as worn by the Tai Bwo Wannai locals.",
- "durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "weight": "0.5",
- "equipment_slot": "9",
+ "examine": "A yellow armband, as worn by the Tai Bwo Wannai locals.",
"grand_exchange_price": "823",
+ "durability": null,
"name": "Villager armband",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
- "id": "6369"
+ "id": "6369",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -62034,20 +58574,18 @@
"id": "6370"
},
{
+ "remove_sleeves": "true",
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "Local dress.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "2683",
+ "durability": null,
"name": "Tribal top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6371"
+ "id": "6371",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -62062,16 +58600,14 @@
"shop_price": "250",
"ge_buy_limit": "100",
"examine": "A brightly coloured robe prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "2",
- "equipment_slot": "7",
"grand_exchange_price": "331",
+ "durability": null,
"name": "Villager robe",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "6373"
+ "id": "6373",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -62086,16 +58622,14 @@
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "A brightly coloured hat prized by the Tai Bwo Wannai peoples.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "3010",
+ "durability": null,
"name": "Villager hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6375"
+ "id": "6375",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -62110,16 +58644,14 @@
"shop_price": "100",
"ge_buy_limit": "100",
"examine": "A brightly coloured pair of local sandals.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.6",
- "equipment_slot": "10",
"grand_exchange_price": "2310",
+ "durability": null,
"name": "Villager sandals",
"tradeable": "true",
+ "weight": "0.6",
"archery_ticket_price": "0",
- "id": "6377"
+ "id": "6377",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -62133,17 +58665,15 @@
{
"shop_price": "150",
"ge_buy_limit": "100",
- "examine": "A <colour> armband, as worn by the Tai Bwo Wannai locals.",
- "durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "weight": "0.5",
- "equipment_slot": "9",
+ "examine": "A pink armband, as worn by the Tai Bwo Wannai locals.",
"grand_exchange_price": "1697",
+ "durability": null,
"name": "Villager armband",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
- "id": "6379"
+ "id": "6379",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -62158,16 +58688,14 @@
"shop_price": "24",
"ge_buy_limit": "100",
"examine": "A fez hat. Juss like that.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "0",
"grand_exchange_price": "690",
+ "durability": null,
"name": "Fez",
"tradeable": "true",
"archery_ticket_price": "0",
"hat": true,
- "id": "6382"
+ "id": "6382",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -62179,20 +58707,18 @@
"id": "6383"
},
{
+ "remove_sleeves": "true",
"shop_price": "15",
"ge_buy_limit": "100",
"examine": "A bit itchy.",
- "durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "649",
+ "durability": null,
"name": "Desert top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6384"
+ "id": "6384",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -62211,8 +58737,6 @@
"durability": null,
"name": "Desert robes",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "6386",
"equipment_slot": "7"
@@ -62227,20 +58751,18 @@
"id": "6387"
},
{
+ "remove_sleeves": "true",
"shop_price": "15",
"ge_buy_limit": "100",
"examine": "A bit itchy.",
- "durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "1016",
+ "durability": null,
"name": "Desert top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "6388"
+ "id": "6388",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -62259,8 +58781,6 @@
"durability": null,
"name": "Desert legs",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "6390",
"equipment_slot": "7"
@@ -62279,15 +58799,13 @@
"shop_price": "35",
"ge_buy_limit": "100",
"examine": "Good for keeping the sun off my neck.",
- "durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
- "equipment_slot": "0",
"grand_exchange_price": "531",
+ "durability": null,
"name": "Menap headgear",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "6392"
+ "id": "6392",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -62299,19 +58817,17 @@
"id": "6393"
},
{
+ "remove_sleeves": "true",
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "Colourful.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "650",
+ "durability": null,
"name": "Menaphite top",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "6394"
+ "id": "6394",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -62330,8 +58846,6 @@
"durability": null,
"name": "Menaphite robe",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "6396",
"equipment_slot": "7"
@@ -62353,8 +58867,6 @@
"durability": null,
"name": "Menap action kilt",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "6398",
"equipment_slot": "7"
@@ -62373,15 +58885,13 @@
"shop_price": "35",
"ge_buy_limit": "100",
"examine": "Good for keeping the sun off my neck.",
- "durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
- "equipment_slot": "0",
"grand_exchange_price": "484",
+ "durability": null,
"name": "Menap headgear",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "6400"
+ "id": "6400",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -62393,19 +58903,17 @@
"id": "6401"
},
{
+ "remove_sleeves": "true",
"shop_price": "20",
"ge_buy_limit": "100",
"examine": "Colourful.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "557",
+ "durability": null,
"name": "Menaphite top",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "6402"
+ "id": "6402",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -62424,8 +58932,6 @@
"durability": null,
"name": "Menaphite robe",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "6404",
"equipment_slot": "7"
@@ -62447,8 +58953,6 @@
"durability": null,
"name": "Menap action kilt",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "6406",
"equipment_slot": "7"
@@ -62468,8 +58972,6 @@
"ge_buy_limit": "100",
"examine": "An offensive blackjack.",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
@@ -62495,8 +58997,6 @@
"ge_buy_limit": "100",
"examine": "An defensive blackjack.",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
@@ -62522,8 +59022,6 @@
"ge_buy_limit": "100",
"examine": "An offensive blackjack.",
"durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
@@ -62549,8 +59047,6 @@
"ge_buy_limit": "100",
"examine": "A defensive blackjack.",
"durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
@@ -62577,12 +59073,12 @@
"ge_buy_limit": "100",
"examine": "A solid bit of maple.",
"durability": null,
- "low_alchemy": "480",
- "high_alchemy": "720",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "10",
+ "defence_anim": "425",
"equipment_slot": "3",
+ "attack_anims": "395,395,395,395",
"grand_exchange_price": "1432",
"name": "Maple blackjack",
"tradeable": "true",
@@ -62605,8 +59101,6 @@
"ge_buy_limit": "100",
"examine": "An offensive blackjack.",
"durability": null,
- "low_alchemy": "640",
- "high_alchemy": "960",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
@@ -62633,8 +59127,6 @@
"ge_buy_limit": "100",
"examine": "A defensive blackjack.",
"durability": null,
- "low_alchemy": "640",
- "high_alchemy": "960",
"weight": "1",
"attack_speed": "4",
"weapon_interface": "10",
@@ -62662,8 +59154,6 @@
"durability": null,
"name": "Air rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6422"
},
@@ -62681,8 +59171,6 @@
"durability": null,
"name": "Water rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6424"
},
@@ -62700,8 +59188,6 @@
"durability": null,
"name": "Earth rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6426"
},
@@ -62719,8 +59205,6 @@
"durability": null,
"name": "Fire rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6428"
},
@@ -62738,8 +59222,6 @@
"durability": null,
"name": "Chaos rune",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "28",
"archery_ticket_price": "0",
"id": "6430"
},
@@ -62757,8 +59239,6 @@
"durability": null,
"name": "Death rune",
"tradeable": "true",
- "low_alchemy": "41",
- "high_alchemy": "62",
"archery_ticket_price": "0",
"id": "6432"
},
@@ -62776,8 +59256,6 @@
"durability": null,
"name": "Law rune",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"archery_ticket_price": "0",
"id": "6434"
},
@@ -62795,8 +59273,6 @@
"durability": null,
"name": "Mind rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6436"
},
@@ -62814,8 +59290,6 @@
"durability": null,
"name": "Body rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6438"
},
@@ -62830,7 +59304,6 @@
"examine": "A spadeful of refined coal.",
"durability": null,
"name": "Spadeful of coke",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "6448"
@@ -62881,9 +59354,7 @@
"examine": "A delphinium seed.",
"durability": null,
"name": "Delphinium seed",
- "low_alchemy": "1",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "6457"
@@ -62935,7 +59406,7 @@
},
{
"destroy_message": "Another can be received from pickpocketing Dr. Fenkenstrain in the tower.",
- "examine": "Unactivated: The Ring of charos.Activated: The power within this ring has been activated.",
+ "examine": "The power within this ring has been activated.",
"durability": null,
"name": "Ring of charos(a)",
"tradeable": "false",
@@ -62965,8 +59436,6 @@
"durability": null,
"name": "Plant cure",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "6468"
},
@@ -62974,7 +59443,6 @@
"examine": "Looks delicious.",
"durability": null,
"name": "White tree fruit",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "6469"
},
@@ -62985,8 +59453,6 @@
"durability": null,
"name": "Compost potion(4)",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "6470"
},
@@ -63006,8 +59472,6 @@
"durability": null,
"name": "Compost potion(3)",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "6472"
},
@@ -63027,8 +59491,6 @@
"durability": null,
"name": "Compost potion(2)",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "6474"
},
@@ -63048,8 +59510,6 @@
"durability": null,
"name": "Compost potion(1)",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "6476"
},
@@ -63090,8 +59550,6 @@
"examine": "A razor sharp ring of obsidian.",
"durability": null,
"tokkul_price": "375",
- "low_alchemy": "100",
- "high_alchemy": "150",
"attack_speed": "4",
"weapon_interface": "18",
"defence_anim": "424",
@@ -63111,8 +59569,6 @@
"examine": "A razor sharp sword of obsidian.",
"durability": null,
"tokkul_price": "60000",
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "5",
@@ -63133,8 +59589,6 @@
"examine": "A spiked shield of Obsidian.",
"durability": null,
"tokkul_price": "67500",
- "low_alchemy": "18000",
- "high_alchemy": "27000",
"weight": "3.6",
"absorb": "5,0,11",
"equipment_slot": "5",
@@ -63152,8 +59606,6 @@
"examine": "A large knife of Obsidian.",
"durability": null,
"tokkul_price": "37500",
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "6",
@@ -63174,7 +59626,6 @@
"examine": "A staff of obsidian.",
"walk_anim": "1205",
"tokkul_price": "52500",
- "low_alchemy": "14000",
"turn90ccw_anim": "1208",
"attack_speed": "6",
"two_handed": "true",
@@ -63193,7 +59644,6 @@
"requirements": "{0,60}-{6,60}",
"shop_price": "52500",
"durability": null,
- "high_alchemy": "21000",
"weight": "1",
"weapon_interface": "1",
"render_anim": "28",
@@ -63206,8 +59656,6 @@
"examine": "A mace of obsidian.",
"durability": null,
"tokkul_price": "45000",
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "10",
@@ -63227,7 +59675,6 @@
"examine": "A maul of obsidian.",
"walk_anim": "1663",
"tokkul_price": "75000",
- "low_alchemy": "20000",
"turn90ccw_anim": "1663",
"attack_speed": "7",
"two_handed": "true",
@@ -63246,7 +59693,6 @@
"requirements": "{2,60}",
"shop_price": "75000",
"durability": null,
- "high_alchemy": "30000",
"weight": "3.6",
"weapon_interface": "10",
"render_anim": "27",
@@ -63319,7 +59765,7 @@
},
{
"destroy_message": "You will not get a replacement for the present. Open it for your reward.",
- "examine": "Thanks for all your help! Love, Bob & Neite.",
+ "examine": "Thanks for all your help! Love, Bob & Neite.",
"durability": null,
"name": "Present",
"tradeable": "false",
@@ -63481,11 +59927,12 @@
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "6800",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
+ "defence_anim": "420",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "368700",
"stand_anim": "813",
"tradeable": "true",
@@ -63496,10 +59943,9 @@
"bonuses": "7,-1,28,12,0,2,3,1,12,0,0,35,0,0,0",
"requirements": "{0,30}-{6,30}",
"durability": null,
- "high_alchemy": "10200",
"weight": "2.2",
"weapon_interface": "1",
- "equip_audio": "2230",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mud battlestaff"
@@ -63509,11 +59955,11 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "18000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "423100",
"stand_anim": "813",
"tradeable": "true",
@@ -63525,9 +59971,9 @@
"requirements": "{0,40}-{6,40}",
"shop_price": "40000",
"durability": null,
- "high_alchemy": "27000",
"weight": "2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic mud staff"
@@ -63538,8 +59984,6 @@
"durability": null,
"name": "Onyx ring",
"tradeable": "true",
- "low_alchemy": "80400",
- "high_alchemy": "120600",
"archery_ticket_price": "0",
"id": "6564"
},
@@ -63549,8 +59993,6 @@
"durability": null,
"name": "Onyx necklace",
"tradeable": "true",
- "low_alchemy": "80400",
- "high_alchemy": "120600",
"archery_ticket_price": "0",
"id": "6565"
},
@@ -63560,8 +60002,6 @@
"durability": null,
"name": "Onyx amulet",
"tradeable": "true",
- "low_alchemy": "80800",
- "high_alchemy": "121200",
"archery_ticket_price": "0",
"id": "6566"
},
@@ -63571,8 +60011,6 @@
"examine": "A cape woven of obsidian plates.",
"durability": null,
"tokkul_price": "90000",
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1.8",
"equipment_slot": "1",
"lendable": "true",
@@ -63597,8 +60035,6 @@
"durability": null,
"name": "Fire cape",
"tradeable": "false",
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "6570",
@@ -63614,8 +60050,6 @@
"durability": null,
"name": "Uncut onyx",
"tradeable": "true",
- "low_alchemy": "120000",
- "high_alchemy": "180000",
"archery_ticket_price": "0",
"id": "6571"
},
@@ -63635,8 +60069,6 @@
"durability": null,
"name": "Onyx",
"tradeable": "true",
- "low_alchemy": "120000",
- "high_alchemy": "180000",
"archery_ticket_price": "0",
"id": "6573"
},
@@ -63656,8 +60088,6 @@
"durability": null,
"name": "Onyx ring",
"tradeable": "true",
- "low_alchemy": "80400",
- "high_alchemy": "120600",
"archery_ticket_price": "0",
"id": "6575",
"equipment_slot": "12"
@@ -63678,8 +60108,6 @@
"durability": null,
"name": "Onyx necklace",
"tradeable": "true",
- "low_alchemy": "80400",
- "high_alchemy": "120600",
"archery_ticket_price": "0",
"id": "6577",
"equipment_slot": "2"
@@ -63699,8 +60127,6 @@
"durability": null,
"name": "Onyx amulet",
"tradeable": "true",
- "low_alchemy": "80800",
- "high_alchemy": "121200",
"archery_ticket_price": "0",
"id": "6579"
},
@@ -63718,8 +60144,6 @@
"durability": null,
"name": "Onyx amulet",
"tradeable": "true",
- "low_alchemy": "80800",
- "high_alchemy": "121200",
"archery_ticket_price": "0",
"id": "6581",
"equipment_slot": "2"
@@ -63740,8 +60164,6 @@
"durability": null,
"name": "Ring of stone",
"tradeable": "true",
- "low_alchemy": "80800",
- "high_alchemy": "121200",
"archery_ticket_price": "0",
"id": "6583",
"equipment_slot": "12"
@@ -63756,19 +60178,17 @@
"id": "6584"
},
{
+ "lendable": "true",
"ge_buy_limit": "100",
"examine": "A very powerful onyx amulet.",
- "durability": null,
- "low_alchemy": "80800",
- "high_alchemy": "121200",
- "equipment_slot": "2",
- "lendable": "true",
"grand_exchange_price": "9200000",
+ "durability": null,
"name": "Amulet of fury",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6585",
- "bonuses": "10,10,10,10,10,15,15,15,15,15,15,8,5,0,0"
+ "bonuses": "10,10,10,10,10,15,15,15,15,15,15,8,5,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "100",
@@ -63785,8 +60205,6 @@
"ge_buy_limit": "100",
"examine": "A set of fighting claws.",
"durability": null,
- "low_alchemy": "144",
- "high_alchemy": "216",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "9",
@@ -63796,6 +60214,7 @@
"equipment_slot": "3",
"attack_anims": "390,390,390,390",
"grand_exchange_price": "1013",
+ "attack_audios": "2548,2548,2548,2548",
"name": "White claws",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -63817,16 +60236,16 @@
"ge_buy_limit": "100",
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "499",
- "high_alchemy": "748",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
- "attack_anims": "395,395,395,395",
+ "attack_anims": "395,395,401,395",
"grand_exchange_price": "1459",
+ "attack_audios": "2498,2498,2497,2498",
"name": "White battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -63848,11 +60267,10 @@
"ge_buy_limit": "100",
"examine": "A vicious white dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -63880,11 +60298,10 @@
"ge_buy_limit": "100",
"examine": "A vicious white dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "497",
@@ -63910,11 +60327,10 @@
"ge_buy_limit": "100",
"examine": "A vicious white dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "982",
@@ -63940,11 +60356,10 @@
"ge_buy_limit": "100",
"examine": "A vicious white dagger.",
"durability": null,
- "low_alchemy": "96",
- "high_alchemy": "144",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3",
"grand_exchange_price": "8422",
@@ -63969,7 +60384,6 @@
"turn90cw_anim": "1207",
"examine": "A white halberd.",
"walk_anim": "1205",
- "low_alchemy": "768",
"turn90ccw_anim": "1208",
"attack_speed": "7",
"two_handed": "true",
@@ -63985,12 +60399,12 @@
"id": "6599",
"stand_turn_anim": "1209",
"bonuses": "19,25,0,-4,0,-1,2,3,0,0,0,20,1,0,0",
- "requirements": "{0,10}-{5,10}",
+ "requirements": "{0,10}-{2,5}",
"shop_price": "1920",
"durability": null,
- "high_alchemy": "1152",
"weight": "3.1",
"weapon_interface": "15",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "White halberd"
},
@@ -64009,15 +60423,15 @@
"ge_buy_limit": "100",
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "172",
- "high_alchemy": "259",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
"grand_exchange_price": "481",
+ "attack_audios": "2508,2508,25092508",
"name": "White mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -64034,31 +60448,30 @@
"id": "6602"
},
{
+ "requirements": "{0,10}-{5,10}",
"ge_buy_limit": "100",
+ "shop_price": "200",
"turn90cw_anim": "1207",
"examine": "A Magical staff.",
"walk_anim": "1205",
- "low_alchemy": "80",
+ "durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "650",
"stand_anim": "813",
+ "attack_audios": "2555,0,0,0",
"tradeable": "true",
+ "name": "White magic staff",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "6603",
"stand_turn_anim": "1209",
- "bonuses": "2,-1,10,10,0,2,3,1,10,0,0,7,1,0,0",
- "requirements": "{0,10}-{5,10}",
- "shop_price": "200",
- "durability": null,
- "high_alchemy": "120",
- "weight": "2.2",
- "weapon_interface": "1",
- "render_anim": "28",
- "attack_audios": "2555,0,0,0",
- "name": "White magic staff"
+ "bonuses": "2,-1,10,10,0,2,3,1,10,0,0,7,1,0,0"
},
{
"ge_buy_limit": "100",
@@ -64074,7 +60487,6 @@
"turn90cw_anim": "1207",
"examine": "A razor sharp sword.",
"walk_anim": "1205",
- "low_alchemy": "249",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -64092,9 +60504,9 @@
"requirements": "{0,10}-{5,10}",
"shop_price": "624",
"durability": null,
- "high_alchemy": "374",
"weight": "1.8",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "1381",
"name": "White sword"
},
@@ -64112,7 +60524,6 @@
"turn90cw_anim": "821",
"examine": "A razor sharp longsword.",
"walk_anim": "819",
- "low_alchemy": "384",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -64130,9 +60541,9 @@
"requirements": "{0,10}-{5,10}",
"shop_price": "960",
"durability": null,
- "high_alchemy": "576",
"weight": "1.8",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"name": "White longsword"
},
@@ -64150,7 +60561,6 @@
"turn90cw_anim": "7044",
"examine": "A two handed sword.",
"walk_anim": "7046",
- "low_alchemy": "768",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -64169,9 +60579,9 @@
"requirements": "{0,10}-{5,10}",
"shop_price": "1920",
"durability": null,
- "high_alchemy": "1152",
"weight": "3.6",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"attack_audios": "2503,0,2504,0",
"name": "White 2h sword"
@@ -64190,7 +60600,6 @@
"turn90cw_anim": "821",
"examine": "A vicious, curved sword.",
"walk_anim": "819",
- "low_alchemy": "307",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "820",
@@ -64208,9 +60617,9 @@
"requirements": "{0,10}-{5,10}",
"shop_price": "768",
"durability": null,
- "high_alchemy": "460",
"weight": "1",
"weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1",
"attack_audios": "2500,0,2517,0",
"name": "White scimitar"
@@ -64230,11 +60639,10 @@
"ge_buy_limit": "100",
"examine": "I don't think it's intended for joinery.",
"durability": null,
- "low_alchemy": "392",
- "high_alchemy": "588",
"weight": "1.8",
"attack_speed": "6",
"weapon_interface": "10",
+ "equip_audio": "2233",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,395,395",
@@ -64261,8 +60669,6 @@
"ge_buy_limit": "100",
"examine": "A series of connected metal rings.",
"durability": null,
- "low_alchemy": "576",
- "high_alchemy": "864",
"weight": "6.8",
"absorb": "1,0,2",
"equipment_slot": "4",
@@ -64288,10 +60694,9 @@
"ge_buy_limit": "100",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.9",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "5837",
@@ -64316,8 +60721,6 @@
"ge_buy_limit": "100",
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "230",
- "high_alchemy": "345",
"weight": "1.3",
"equipment_slot": "10",
"grand_exchange_price": "1016",
@@ -64343,9 +60746,8 @@
"ge_buy_limit": "100",
"examine": "A medium sized helmet.",
"durability": null,
- "low_alchemy": "230",
- "high_alchemy": "345",
"weight": "1.9",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "853",
"name": "White med helm",
@@ -64370,9 +60772,8 @@
"ge_buy_limit": "100",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "2.7",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "2624",
@@ -64397,8 +60798,6 @@
"ge_buy_limit": "100",
"examine": "Big, white and heavy looking.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "9",
"equipment_slot": "7",
"grand_exchange_price": "2115",
@@ -64423,8 +60822,6 @@
"ge_buy_limit": "100",
"examine": "Big, white, and heavy looking.",
"durability": null,
- "low_alchemy": "768",
- "high_alchemy": "1152",
"weight": "8.1",
"equipment_slot": "7",
"grand_exchange_price": "2000",
@@ -64449,8 +60846,6 @@
"ge_buy_limit": "100",
"examine": "These will keep my hands warm!",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.2",
"equipment_slot": "9",
"grand_exchange_price": "2036",
@@ -64475,10 +60870,9 @@
"ge_buy_limit": "100",
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "460",
- "high_alchemy": "691",
"weight": "3.6",
"absorb": "1,0,2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "1360",
"name": "White sq shield",
@@ -64502,10 +60896,9 @@
"ge_buy_limit": "100",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "5.4",
"absorb": "1,0,2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "2390",
"name": "White kiteshield",
@@ -64725,8 +61118,6 @@
"examine": "The jar keeps shaking... I'm scared.",
"durability": null,
"name": "Fishing explosive",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "6660"
},
@@ -64758,8 +61149,6 @@
"examine": "The jar keeps shaking... I'm scared.",
"durability": null,
"name": "Fishing explosive",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "6664"
},
@@ -64856,9 +61245,7 @@
"examine": "A tiny net for grabbing tiny fish.",
"durability": null,
"name": "Tiny net",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -64892,8 +61279,6 @@
"durability": null,
"name": "Seaweed in a box",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6679"
},
@@ -64902,8 +61287,6 @@
"durability": null,
"name": "Seaweed in a box?",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6680"
},
@@ -64914,7 +61297,6 @@
"durability": null,
"name": "Ground guam",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "6681"
},
@@ -64934,7 +61316,6 @@
"durability": null,
"name": "Ground seaweed",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "6683"
},
@@ -64954,8 +61335,6 @@
"durability": null,
"name": "Saradomin brew(4)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "121",
"archery_ticket_price": "0",
"id": "6685"
},
@@ -64975,8 +61354,6 @@
"durability": null,
"name": "Saradomin brew(3)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "121",
"archery_ticket_price": "0",
"id": "6687"
},
@@ -64996,8 +61373,6 @@
"durability": null,
"name": "Saradomin brew(2)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "121",
"archery_ticket_price": "0",
"id": "6689"
},
@@ -65017,8 +61392,6 @@
"durability": null,
"name": "Saradomin brew(1)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "121",
"archery_ticket_price": "0",
"id": "6691"
},
@@ -65074,8 +61447,6 @@
"durability": null,
"name": "Pat of butter",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "6697"
@@ -65103,8 +61474,6 @@
"durability": null,
"name": "Baked potato",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6701"
@@ -65125,8 +61494,6 @@
"durability": null,
"name": "Potato with butter",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6703"
@@ -65148,8 +61515,6 @@
"durability": null,
"name": "Potato with cheese",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6705"
@@ -65176,8 +61541,6 @@
"examine": "Especially good against diseased arachnids.",
"durability": null,
"name": "Slayer gloves",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "6708",
"bonuses": "0,0,0,0,0,4,5,3,0,0,1,0,0,0,0"
@@ -65210,8 +61573,6 @@
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "6712"
@@ -65220,8 +61581,6 @@
"examine": "A heavy metal wrench.",
"durability": null,
"name": "Wrench",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6713"
},
@@ -65229,8 +61588,6 @@
"examine": "A shining paragon of wrenchly virtue.",
"durability": null,
"name": "Holy wrench",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "6714"
},
@@ -65275,8 +61632,6 @@
"examine": "Especially good against diseased arachnids.",
"durability": null,
"name": "Slayer gloves",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "6720",
"bonuses": "0,0,0,0,0,4,5,3,0,0,1,0,0,0,0",
@@ -65312,8 +61667,6 @@
"has_special": "true",
"durability": null,
"rare_item": "true",
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "1",
"attack_speed": "5",
"two_handed": "true",
@@ -65354,7 +61707,7 @@
"id": "6727"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed small zombie monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -65382,20 +61735,18 @@
"id": "6730"
},
{
+ "lendable": "true",
"ge_buy_limit": "10",
"examine": "A mysterious ring that can fill the wearer with magical power...",
+ "grand_exchange_price": "478800",
"rare_item": "true",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "equipment_slot": "12",
- "lendable": "true",
- "grand_exchange_price": "478800",
"name": "Seers ring",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6731",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,0,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"ge_buy_limit": "10",
@@ -65407,20 +61758,18 @@
"id": "6732"
},
{
+ "lendable": "true",
"ge_buy_limit": "10",
"examine": "A fabled ring that improves the wearer's skill with a bow...",
+ "grand_exchange_price": "1400000",
"rare_item": "true",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "equipment_slot": "12",
- "lendable": "true",
- "grand_exchange_price": "1400000",
"name": "Archers ring",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6733",
- "bonuses": "0,0,0,0,4,0,0,0,0,4,0,0,0,0,0"
+ "bonuses": "0,0,0,0,4,0,0,0,0,4,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"ge_buy_limit": "10",
@@ -65432,20 +61781,18 @@
"id": "6734"
},
{
+ "lendable": "true",
"ge_buy_limit": "10",
"examine": "A legendary ring once worn by Fremennik warriors.",
+ "grand_exchange_price": "178100",
"rare_item": "true",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "equipment_slot": "12",
- "lendable": "true",
- "grand_exchange_price": "178100",
"name": "Warrior ring",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6735",
- "bonuses": "0,4,0,0,0,0,4,0,0,0,0,0,0,0,0"
+ "bonuses": "0,4,0,0,0,0,4,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"ge_buy_limit": "10",
@@ -65457,20 +61804,18 @@
"id": "6736"
},
{
+ "lendable": "true",
"ge_buy_limit": "10",
"examine": "A ring reputed to bring out a berserk fury in its wearer.",
+ "grand_exchange_price": "2700000",
"rare_item": "true",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "equipment_slot": "12",
- "lendable": "true",
- "grand_exchange_price": "2700000",
"name": "Berserker ring",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "6737",
- "bonuses": "0,0,0,0,0,0,0,4,0,0,0,4,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,4,0,0,0,4,0,0,0",
+ "equipment_slot": "12"
},
{
"ge_buy_limit": "10",
@@ -65482,20 +61827,20 @@
"id": "6738"
},
{
- "requirements": "{0,60}-{8,61}",
+ "requirements": "{0,60}",
"ge_buy_limit": "10",
"examine": "A very powerful axe.",
"has_special": "true",
"rare_item": "true",
"durability": null,
- "low_alchemy": "22000",
- "high_alchemy": "33000",
"weapon_interface": "2",
+ "equip_audio": "2229",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "395,395,395,395",
"grand_exchange_price": "813100",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Dragon axe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -65515,8 +61860,6 @@
"examine": "Bob can fix this broken (metal) axe for me.",
"durability": null,
"name": "Broken axe",
- "low_alchemy": "160",
- "high_alchemy": "160",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "6741",
@@ -65539,8 +61882,6 @@
{
"examine": "The magical sword 'Silverlight'. / The magical sword 'Silverlight', stained black with mushroom ink. (during Shadow of the Storm)",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "6",
@@ -65557,8 +61898,6 @@
"examine": "The magical sword Silverlight, enhanced with the blood of Agrith-Naar.",
"has_special": "true",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "6",
@@ -65599,8 +61938,6 @@
"examine": "A desert shirt stained black with mushroom ink.",
"durability": null,
"name": "Black desert shirt",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "6750",
"equipment_slot": "4"
@@ -65609,8 +61946,6 @@
"examine": "A desert robe stained black with mushroom ink.",
"durability": null,
"name": "Black desert robe",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "6752",
"equipment_slot": "7"
@@ -65631,7 +61966,6 @@
"turn90cw_anim": "1207",
"examine": "A Guthix Mjolnir.",
"walk_anim": "1205",
- "low_alchemy": "250",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -65650,7 +61984,6 @@
"bonuses": "0,0,11,0,0,0,0,0,0,0,0,14,0,0,0",
"shop_price": "250",
"durability": null,
- "high_alchemy": "375",
"weight": "2",
"weapon_interface": "3",
"render_anim": "28",
@@ -65670,7 +62003,6 @@
"turn90cw_anim": "1207",
"examine": "A Saradomin Mjolnir.",
"walk_anim": "1205",
- "low_alchemy": "250",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -65689,7 +62021,6 @@
"bonuses": "0,0,11,0,0,0,0,0,0,0,0,14,0,0,0",
"shop_price": "250",
"durability": null,
- "high_alchemy": "375",
"weight": "2",
"weapon_interface": "3",
"render_anim": "28",
@@ -65709,7 +62040,6 @@
"turn90cw_anim": "1207",
"examine": "A Zamorak mjolnir.",
"walk_anim": "1205",
- "low_alchemy": "250",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -65727,7 +62057,6 @@
"stand_turn_anim": "1209",
"bonuses": "0,0,11,0,0,0,0,0,0,0,0,14,0,0,0",
"durability": null,
- "high_alchemy": "375",
"weight": "2",
"weapon_interface": "3",
"render_anim": "28",
@@ -66015,8 +62344,6 @@
"durability": null,
"name": "Choc-ice",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "6794"
},
@@ -66044,8 +62371,6 @@
"grand_exchange_price": "206",
"durability": null,
"name": "Watering can",
- "low_alchemy": "3",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "6797"
},
@@ -66131,8 +62456,6 @@
"ge_buy_limit": "10",
"examine": "These look pretty heavy.",
"durability": null,
- "low_alchemy": "26400",
- "high_alchemy": "39600",
"weight": "15",
"absorb": "2,0,5",
"equipment_slot": "7",
@@ -66145,7 +62468,7 @@
"bonuses": "0,0,0,-31,-18,43,45,41,-4,68,20,0,0,0,0"
},
{
- "examine": "A pot of crushed [type of bones].",
+ "examine": "A pot of crushed large zombie monkey bones.",
"durability": null,
"name": "Bonemeal",
"weight": "1",
@@ -66186,8 +62509,6 @@
"durability": null,
"name": "Fur",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "6814"
@@ -66255,8 +62576,6 @@
"examine": "A large pouch used for storing essence.",
"durability": null,
"name": "Large pouch",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "1",
"archery_ticket_price": "0",
"id": "6819"
@@ -66837,17 +63156,15 @@
"requirements": "{6,60}",
"ge_buy_limit": "10",
"examine": "The magical book of the Mage.",
- "durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
- "weight": "1",
- "equipment_slot": "5",
"grand_exchange_price": "3800000",
+ "durability": null,
"name": "Mage's book",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "6889",
- "bonuses": "0,0,0,15,0,0,0,0,15,0,15,0,0,0,0"
+ "bonuses": "0,0,0,15,0,0,0,0,15,0,15,0,0,0,0",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "10",
@@ -67019,8 +63336,6 @@
"examine": "A beginner level wand",
"walk_anim": "1146",
"durability": null,
- "low_alchemy": "480",
- "high_alchemy": "720",
"weight": "0.2",
"turn90ccw_anim": "822",
"weapon_interface": "1",
@@ -67047,31 +63362,29 @@
"id": "6909"
},
{
+ "requirements": "{6,50}",
"ge_buy_limit": "10",
+ "shop_price": "606060060",
"turn90cw_anim": "821",
"examine": "An apprentice level wand.",
"walk_anim": "1146",
- "low_alchemy": "600",
+ "durability": null,
"turn90ccw_anim": "822",
+ "weapon_interface": "1",
"turn180_anim": "820",
"defence_anim": "420",
+ "render_anim": "1426",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "82000",
"stand_anim": "809",
"tradeable": "true",
+ "name": "Apprentice wand",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "6910",
"stand_turn_anim": "823",
- "bonuses": "0,0,0,10,0,0,0,0,10,0,0,0,0,0,0",
- "requirements": "{6,50}",
- "shop_price": "606060060",
- "durability": null,
- "high_alchemy": "900",
- "weapon_interface": "1",
- "render_anim": "1426",
- "name": "Apprentice wand"
+ "bonuses": "0,0,0,10,0,0,0,0,10,0,0,0,0,0,0"
},
{
"ge_buy_limit": "10",
@@ -67089,8 +63402,6 @@
"examine": "A teacher level wand.",
"walk_anim": "1146",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"turn90ccw_anim": "822",
"weapon_interface": "1",
"turn180_anim": "820",
@@ -67116,31 +63427,29 @@
"id": "6913"
},
{
+ "requirements": "{6,60}",
"ge_buy_limit": "10",
"turn90cw_anim": "821",
"examine": "A master level wand.",
"walk_anim": "1146",
- "low_alchemy": "1000",
+ "durability": null,
+ "weight": "0.1",
"turn90ccw_anim": "822",
+ "weapon_interface": "1",
"turn180_anim": "820",
"defence_anim": "420",
+ "render_anim": "1426",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"grand_exchange_price": "1700000",
"stand_anim": "8980",
"tradeable": "true",
+ "name": "Master wand",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "6914",
"stand_turn_anim": "823",
- "bonuses": "0,0,0,20,0,0,0,0,20,0,0,0,0,0,0",
- "requirements": "{6,60}",
- "durability": null,
- "high_alchemy": "1500",
- "weight": "0.1",
- "weapon_interface": "1",
- "render_anim": "1426",
- "name": "Master wand"
+ "bonuses": "0,0,0,20,0,0,0,0,20,0,0,0,0,0,0"
},
{
"ge_buy_limit": "10",
@@ -67156,8 +63465,6 @@
"ge_buy_limit": "10",
"examine": "Mystical robes.",
"durability": null,
- "low_alchemy": "56000",
- "high_alchemy": "84000",
"weight": "2.2",
"absorb": "3,1,0",
"equipment_slot": "4",
@@ -67183,8 +63490,6 @@
"ge_buy_limit": "10",
"examine": "A mystic hat.",
"durability": null,
- "low_alchemy": "6800",
- "high_alchemy": "10200",
"weight": "0.4",
"absorb": "1,0,0",
"equipment_slot": "0",
@@ -67210,14 +63515,12 @@
"ge_buy_limit": "10",
"examine": "Mystical boots.",
"durability": null,
- "low_alchemy": "4800",
- "high_alchemy": "7200",
"destroy": "true",
"weight": "0.4",
"equipment_slot": "10",
"grand_exchange_price": "1200000",
"name": "Infinity boots",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "6920",
"bonuses": "0,0,0,5,0,0,0,0,5,0,5,0,0,0,0"
@@ -67235,17 +63538,15 @@
"requirements": "{1,25}-{6,50}",
"ge_buy_limit": "10",
"examine": "Mystical gloves.",
- "durability": null,
- "low_alchemy": "4800",
- "high_alchemy": "7200",
- "weight": "0.4",
- "equipment_slot": "9",
"grand_exchange_price": "1900000",
+ "durability": null,
"name": "Infinity gloves",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "6922",
- "bonuses": "0,0,0,5,0,0,0,0,5,0,0,0,0,0,0"
+ "bonuses": "0,0,0,5,0,0,0,0,5,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "10",
@@ -67261,8 +63562,6 @@
"ge_buy_limit": "10",
"examine": "Mystical robes.",
"durability": null,
- "low_alchemy": "36000",
- "high_alchemy": "54000",
"weight": "1.8",
"absorb": "2,1,0",
"equipment_slot": "7",
@@ -67437,14 +63736,12 @@
"ge_buy_limit": "100",
"examine": "Use pink dye on a cape and this is what you get!",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"destroy": "true",
"weight": "0.4",
"equipment_slot": "1",
"grand_exchange_price": "919",
"name": "Cape",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "6959",
"bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
@@ -67462,8 +63759,6 @@
"examine": "A freshly baked baguette.",
"durability": null,
"name": "Baguette",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "6961"
},
@@ -67474,8 +63769,6 @@
"durability": null,
"name": "Triangle sandwich",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "6962"
},
@@ -67483,15 +63776,13 @@
"examine": "A freshly made roll.",
"durability": null,
"name": "Roll",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "6963"
},
{
"bankable": "false",
- "examine": "100,000 or more: \"X x coins\" where X is the exact number of coins in the stack.",
+ "examine": "Lovely money!",
"durability": null,
"name": "Coins",
"archery_ticket_price": "0",
@@ -67501,24 +63792,20 @@
"examine": "A freshly made square sandwich.",
"durability": null,
"name": "Square sandwich",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "6965"
},
{
- "examine": "Makes the wearer pretty intimidating.",
- "durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
- "weight": "1.3",
- "absorb": "2,0,4",
"lendable": "true",
+ "examine": "Makes the wearer pretty intimidating.",
"grand_exchange_price": "61200",
+ "durability": null,
"name": "Dragon med helm",
"tradeable": "true",
+ "weight": "1.3",
"archery_ticket_price": "0",
"id": "6967",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-3,-1,33,35,32,-1,34,10,0,0,0,0"
},
{
@@ -67534,8 +63821,6 @@
"durability": null,
"name": "Shark",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "0.6",
"archery_ticket_price": "0",
"id": "6969"
@@ -67832,8 +64117,6 @@
"durability": null,
"name": "Chisel",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "7004",
@@ -67844,16 +64127,14 @@
"shop_price": "130",
"ge_buy_limit": "100",
"examine": "A lantern to aid attacking Harpie bugs.",
- "durability": null,
- "low_alchemy": "52",
- "high_alchemy": "78",
- "weight": "2.2",
- "equipment_slot": "5",
"grand_exchange_price": "466",
+ "durability": null,
"name": "Unlit bug lantern",
"tradeable": "true",
+ "weight": "2.2",
"archery_ticket_price": "0",
- "id": "7051"
+ "id": "7051",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "100",
@@ -67870,8 +64151,6 @@
"examine": "A lantern to aid attacking Harpie bugs.",
"durability": null,
"name": "Lit bug lantern",
- "low_alchemy": "52",
- "high_alchemy": "78",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "7053",
@@ -67884,8 +64163,6 @@
"durability": null,
"name": "Chilli potato",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7054"
@@ -67906,8 +64183,6 @@
"durability": null,
"name": "Egg potato",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7056"
@@ -67928,8 +64203,6 @@
"durability": null,
"name": "Mushroom potato",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "27",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7058"
@@ -67950,8 +64223,6 @@
"durability": null,
"name": "Tuna potato",
"tradeable": "true",
- "low_alchemy": "45",
- "high_alchemy": "67",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7060"
@@ -67972,8 +64243,6 @@
"durability": null,
"name": "Chilli con carne",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7062"
@@ -67994,8 +64263,6 @@
"durability": null,
"name": "Egg and tomato",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7064"
@@ -68016,8 +64283,6 @@
"durability": null,
"name": "Mushroom & onion",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "27",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7066"
@@ -68038,8 +64303,6 @@
"durability": null,
"name": "Tuna and corn",
"tradeable": "true",
- "low_alchemy": "45",
- "high_alchemy": "67",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7068"
@@ -68060,8 +64323,6 @@
"durability": null,
"name": "Minced meat",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7070"
@@ -68082,8 +64343,6 @@
"durability": null,
"name": "Spicy sauce",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7072"
@@ -68104,8 +64363,6 @@
"durability": null,
"name": "Chopped garlic",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "7074"
},
@@ -68125,8 +64382,6 @@
"durability": null,
"name": "Uncooked egg",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7076"
@@ -68147,8 +64402,6 @@
"durability": null,
"name": "Scrambled egg",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7078"
@@ -68169,8 +64422,6 @@
"durability": null,
"name": "Sliced mushrooms",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "25",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7080"
@@ -68191,8 +64442,6 @@
"durability": null,
"name": "Fried mushrooms",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "25",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7082"
@@ -68213,8 +64462,6 @@
"durability": null,
"name": "Fried onions",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7084"
@@ -68235,8 +64482,6 @@
"durability": null,
"name": "Chopped tuna",
"tradeable": "true",
- "low_alchemy": "41",
- "high_alchemy": "62",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7086"
@@ -68257,8 +64502,6 @@
"durability": null,
"name": "Sweetcorn",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"archery_ticket_price": "0",
"id": "7088"
},
@@ -68314,11 +64557,10 @@
"shop_price": "300",
"ge_buy_limit": "100",
"grand_exchange_price": "48",
+ "examine": "A seaworthy grey shirt.",
"durability": null,
"name": "Stripy pirate shirt",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1",
"archery_ticket_price": "0",
"id": "7110",
@@ -68337,16 +64579,14 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "Essential pirate wear.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "714",
+ "durability": null,
"name": "Pirate bandana",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "7112"
+ "id": "7112",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -68361,16 +64601,14 @@
"shop_price": "350",
"ge_buy_limit": "100",
"examine": "Not for land lubbers.",
- "durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "weight": "4",
- "equipment_slot": "10",
"grand_exchange_price": "2530",
+ "durability": null,
"name": "Pirate boots",
"tradeable": "true",
+ "weight": "4",
"archery_ticket_price": "0",
- "id": "7114"
+ "id": "7114",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -68385,12 +64623,12 @@
"shop_price": "350",
"ge_buy_limit": "100",
"grand_exchange_price": "77",
+ "examine": "Well, okay, they're beige, but they're part of the white pirate clothing set, so...",
"durability": null,
"name": "Pirate leggings",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "7116",
"equipment_slot": "7"
},
@@ -68433,11 +64671,10 @@
"shop_price": "300",
"ge_buy_limit": "100",
"grand_exchange_price": "904",
+ "examine": "A sea worthy shirt.",
"durability": null,
"name": "Stripy pirate shirt",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1",
"archery_ticket_price": "0",
"id": "7122",
@@ -68456,16 +64693,14 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "Essential pirate wear.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "340",
+ "durability": null,
"name": "Pirate bandana",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "7124"
+ "id": "7124",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -68480,12 +64715,12 @@
"shop_price": "350",
"ge_buy_limit": "100",
"grand_exchange_price": "187",
+ "examine": "A sea worthy pair of trousers.",
"durability": null,
"name": "Pirate leggings",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "7126",
"equipment_slot": "7"
},
@@ -68502,11 +64737,10 @@
"shop_price": "300",
"ge_buy_limit": "100",
"grand_exchange_price": "744",
+ "examine": "A sea worthy shirt.",
"durability": null,
"name": "Stripy pirate shirt",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1",
"archery_ticket_price": "0",
"id": "7128",
@@ -68525,16 +64759,14 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "Essential pirate wear.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "154",
+ "durability": null,
"name": "Pirate bandana",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "7130"
+ "id": "7130",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -68549,12 +64781,12 @@
"shop_price": "350",
"ge_buy_limit": "100",
"grand_exchange_price": "253",
+ "examine": "A sea worthy pair of trousers.",
"durability": null,
"name": "Pirate leggings",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "7132",
"equipment_slot": "7"
},
@@ -68571,11 +64803,10 @@
"shop_price": "300",
"ge_buy_limit": "100",
"grand_exchange_price": "421",
+ "examine": "A sea worthy shirt.",
"durability": null,
"name": "Stripy pirate shirt",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "1",
"archery_ticket_price": "0",
"id": "7134",
@@ -68594,16 +64825,14 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "Essential pirate wear.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "469",
+ "durability": null,
"name": "Pirate bandana",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
- "id": "7136"
+ "id": "7136",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -68618,12 +64847,12 @@
"shop_price": "350",
"ge_buy_limit": "100",
"grand_exchange_price": "83",
+ "examine": "A sea worthy pair of trousers.",
"durability": null,
"name": "Pirate leggings",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "7138",
"equipment_slot": "7"
},
@@ -68640,8 +64869,6 @@
"shop_price": "2560",
"examine": "Feels quite lucky.",
"durability": null,
- "low_alchemy": "1024",
- "high_alchemy": "1536",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "6",
@@ -68657,32 +64884,28 @@
"shop_price": "1040",
"examine": "I hope he doesn't want it back.",
"durability": null,
- "low_alchemy": "416",
- "high_alchemy": "624",
+ "name": "Harry's cutlass",
"weight": "1",
+ "archery_ticket_price": "0",
"attack_speed": "4",
"weapon_interface": "6",
- "equipment_slot": "3",
- "name": "Harry's cutlass",
- "archery_ticket_price": "0",
"id": "7141",
- "bonuses": "3,14,0,-5,0,4,4,4,0,0,0,22,0,0,0"
+ "bonuses": "3,14,0,-5,0,4,4,4,0,0,0,22,0,0,0",
+ "equipment_slot": "3"
},
{
"shop_price": "25600",
"examine": "The very butcher of a silk button.",
"durability": null,
- "low_alchemy": "10240",
- "high_alchemy": "15360",
+ "name": "Rapier",
"weight": "1",
+ "archery_ticket_price": "0",
"attack_speed": "4",
"weapon_interface": "5",
- "render_anim": "2622",
- "equipment_slot": "3",
- "name": "Rapier",
- "archery_ticket_price": "0",
"id": "7142",
- "bonuses": "45,7,-2,0,0,0,1,0,0,0,0,44,0,0,0"
+ "bonuses": "45,7,-2,0,0,0,1,0,0,0,0,44,0,0,0",
+ "render_anim": "2622",
+ "equipment_slot": "3"
},
{
"examine": "Looks valuable.",
@@ -68745,8 +64968,6 @@
"durability": null,
"name": "Rope",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "7155"
@@ -68767,8 +64988,6 @@
"examine": "I think it is eating through the bottle.",
"durability": null,
"name": "Braindeath 'rum",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "7157"
@@ -68780,7 +64999,6 @@
"walk_anim": "7046",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "88000",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
@@ -68798,9 +65016,9 @@
"bonuses": "-4,92,80,-4,0,0,0,0,0,-1,0,93,0,0,0",
"requirements": "{0,60}",
"durability": null,
- "high_alchemy": "132000",
"weight": "3",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "2503,0,2504,0",
@@ -68812,8 +65030,6 @@
"ge_buy_limit": "100",
"examine": "They're heavily insulated wellies.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1.3",
"equipment_slot": "10",
"grand_exchange_price": "269",
@@ -68846,8 +65062,6 @@
"durability": null,
"name": "Pie recipe book",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7162"
},
@@ -68868,8 +65082,6 @@
"durability": null,
"name": "Part mud pie",
"tradeable": "true",
- "low_alchemy": "21",
- "high_alchemy": "32",
"archery_ticket_price": "0",
"id": "7164"
},
@@ -68891,8 +65103,6 @@
"durability": null,
"name": "Part mud pie",
"tradeable": "true",
- "low_alchemy": "21",
- "high_alchemy": "32",
"archery_ticket_price": "0",
"id": "7166"
},
@@ -68913,8 +65123,6 @@
"durability": null,
"name": "Raw mud pie",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "16",
"archery_ticket_price": "0",
"id": "7168"
},
@@ -68935,8 +65143,6 @@
"examine": "All the good of the earth.",
"walk_anim": "819",
"durability": null,
- "low_alchemy": "21",
- "high_alchemy": "32",
"turn90ccw_anim": "822",
"weapon_interface": "13",
"turn180_anim": "820",
@@ -68968,8 +65174,6 @@
"durability": null,
"name": "Part garden pie",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "7172"
},
@@ -68990,8 +65194,6 @@
"durability": null,
"name": "Part garden pie",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "7174"
},
@@ -69012,8 +65214,6 @@
"durability": null,
"name": "Raw garden pie",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7176"
@@ -69035,8 +65235,6 @@
"durability": null,
"name": "Garden pie",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "7178"
},
@@ -69057,8 +65255,6 @@
"durability": null,
"name": "Half a garden pie",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "7180"
},
@@ -69079,8 +65275,6 @@
"durability": null,
"name": "Part fish pie",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "7182"
},
@@ -69101,8 +65295,6 @@
"durability": null,
"name": "Part fish pie",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "7184"
},
@@ -69123,8 +65315,6 @@
"durability": null,
"name": "Raw fish pie",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7186"
@@ -69146,8 +65336,6 @@
"durability": null,
"name": "Fish pie",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "7188"
},
@@ -69168,8 +65356,6 @@
"durability": null,
"name": "Half a fish pie",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "7190"
},
@@ -69230,8 +65416,6 @@
"durability": null,
"name": "Raw admiral pie",
"tradeable": "true",
- "low_alchemy": "62",
- "high_alchemy": "93",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7196"
@@ -69293,8 +65477,6 @@
"durability": null,
"name": "Part wild pie",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "7202"
},
@@ -69315,8 +65497,6 @@
"durability": null,
"name": "Part wild pie",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "7204"
},
@@ -69337,8 +65517,6 @@
"durability": null,
"name": "Raw wild pie",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "7206"
},
@@ -69359,8 +65537,6 @@
"durability": null,
"name": "Wild pie",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "7208"
},
@@ -69381,8 +65557,6 @@
"durability": null,
"name": "Half a wild pie",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "7210"
},
@@ -69403,8 +65577,6 @@
"durability": null,
"name": "Part summer pie",
"tradeable": "true",
- "low_alchemy": "56",
- "high_alchemy": "84",
"archery_ticket_price": "0",
"id": "7212"
},
@@ -69425,8 +65597,6 @@
"durability": null,
"name": "Part summer pie",
"tradeable": "true",
- "low_alchemy": "56",
- "high_alchemy": "84",
"archery_ticket_price": "0",
"id": "7214"
},
@@ -69447,8 +65617,6 @@
"durability": null,
"name": "Raw summer pie",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7216"
@@ -69470,8 +65638,6 @@
"durability": null,
"name": "Summer pie",
"tradeable": "true",
- "low_alchemy": "56",
- "high_alchemy": "84",
"archery_ticket_price": "0",
"id": "7218"
},
@@ -69492,8 +65658,6 @@
"durability": null,
"name": "Half a summer pie",
"tradeable": "true",
- "low_alchemy": "56",
- "high_alchemy": "84",
"archery_ticket_price": "0",
"id": "7220"
},
@@ -69514,8 +65678,6 @@
"durability": null,
"name": "Burnt rabbit",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "11",
"archery_ticket_price": "0",
"id": "7222"
},
@@ -69527,8 +65689,6 @@
"durability": null,
"name": "Roast rabbit",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "7223"
},
@@ -69540,8 +65700,6 @@
"durability": null,
"name": "Skewered rabbit",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7224"
@@ -69554,8 +65712,6 @@
"durability": null,
"name": "Iron spit",
"tradeable": "true",
- "low_alchemy": "25",
- "high_alchemy": "38",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7225"
@@ -69575,8 +65731,6 @@
"durability": null,
"name": "Cooked chompy",
"tradeable": "true",
- "low_alchemy": "52",
- "high_alchemy": "78",
"weight": "10",
"archery_ticket_price": "0",
"id": "7228"
@@ -69596,8 +65750,7 @@
"grand_exchange_price": "294",
"durability": null,
"name": "Skewered chompy",
- "low_alchemy": "59",
- "high_alchemy": "89",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7230"
@@ -69639,7 +65792,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69651,15 +65804,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7237"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69667,7 +65818,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69679,15 +65830,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7240"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69699,15 +65848,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7242"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69719,15 +65866,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7244"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69739,15 +65884,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7246"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69755,7 +65898,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69763,7 +65906,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69771,7 +65914,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69779,7 +65922,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69787,7 +65930,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69795,7 +65938,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69803,7 +65946,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69811,7 +65954,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69819,7 +65962,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69831,15 +65974,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7257"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69851,15 +65992,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7259"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69871,15 +66010,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7261"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69891,15 +66028,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7263"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69911,15 +66046,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7265"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69931,15 +66064,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7267"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69954,7 +66085,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69969,7 +66100,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69984,7 +66115,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -69999,7 +66130,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70014,7 +66145,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70029,7 +66160,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70044,7 +66175,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70059,7 +66190,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70074,7 +66205,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70086,15 +66217,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7287"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70106,15 +66235,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7289"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70126,15 +66253,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7291"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70146,15 +66271,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7293"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70166,15 +66289,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7295"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70182,7 +66303,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70190,7 +66311,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70198,7 +66319,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70206,7 +66327,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70214,7 +66335,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70222,7 +66343,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70234,15 +66355,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7306"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70254,15 +66373,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7308"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70274,15 +66391,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7310"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70294,15 +66409,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7312"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70314,15 +66427,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7314"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70334,15 +66445,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7316"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"archery_ticket_price": "0",
@@ -70354,8 +66463,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7318"
@@ -70367,8 +66474,6 @@
"durability": null,
"name": "Red boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "7319",
"equipment_slot": "0"
@@ -70389,8 +66494,6 @@
"durability": null,
"name": "Orange boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "7321",
"equipment_slot": "0"
@@ -70411,8 +66514,6 @@
"durability": null,
"name": "Green boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "7323",
"equipment_slot": "0"
@@ -70433,8 +66534,6 @@
"durability": null,
"name": "Blue boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "7325",
"equipment_slot": "0"
@@ -70455,8 +66554,6 @@
"durability": null,
"name": "Black boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "7327",
"equipment_slot": "0"
@@ -70477,8 +66574,6 @@
"durability": null,
"name": "Red firelighter",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "7329"
},
@@ -70489,8 +66584,6 @@
"durability": null,
"name": "Green firelighter",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "7330"
},
@@ -70501,8 +66594,6 @@
"durability": null,
"name": "Blue firelighter",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "7331"
},
@@ -70511,8 +66602,6 @@
"ge_buy_limit": "2",
"examine": "A black kitesheild with a heraldic design.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "4",
"absorb": "1,0,2",
"equipment_slot": "5",
@@ -70537,8 +66626,6 @@
"ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -70563,10 +66650,9 @@
"ge_buy_limit": "2",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "34200",
"name": "Rune shield(h1)",
@@ -70589,8 +66675,6 @@
"ge_buy_limit": "2",
"examine": "A black kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "6530",
- "high_alchemy": "9795",
"weight": "4",
"absorb": "1,0,2",
"equipment_slot": "5",
@@ -70615,8 +66699,6 @@
"ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -70641,10 +66723,9 @@
"ge_buy_limit": "2",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "32400",
"name": "Rune shield(h2)",
@@ -70667,8 +66748,6 @@
"ge_buy_limit": "2",
"examine": "A black shield with a heraldic design.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "4",
"absorb": "1,0,2",
"equipment_slot": "5",
@@ -70693,8 +66772,6 @@
"ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -70719,10 +66796,9 @@
"ge_buy_limit": "2",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "32700",
"name": "Rune shield(h3)",
@@ -70745,8 +66821,6 @@
"ge_buy_limit": "2",
"examine": "A black shield with a heraldic design.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "4",
"absorb": "1,0,2",
"equipment_slot": "5",
@@ -70771,8 +66845,6 @@
"ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -70797,10 +66869,9 @@
"ge_buy_limit": "2",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "32500",
"name": "Rune shield(h4)",
@@ -70823,8 +66894,6 @@
"ge_buy_limit": "2",
"examine": "A black shield with a heraldic design.",
"durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
"weight": "4",
"absorb": "1,0,2",
"equipment_slot": "5",
@@ -70849,8 +66918,6 @@
"ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -70875,10 +66942,9 @@
"ge_buy_limit": "2",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "32400",
"name": "Rune shield(h5)",
@@ -70888,6 +66954,7 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "",
"ge_buy_limit": "2",
"grand_exchange_price": "32400",
"durability": null,
@@ -70901,8 +66968,6 @@
"ge_buy_limit": "2",
"examine": "Those studs should provide a bit more protection. Nice trim too!",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
"absorb": "0,3,1",
"equipment_slot": "4",
@@ -70927,8 +66992,6 @@
"ge_buy_limit": "2",
"examine": "Those studs should provide a bit more protection. Nice trim too!",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
"absorb": "0,3,1",
"equipment_slot": "4",
@@ -70953,8 +67016,6 @@
"ge_buy_limit": "2",
"examine": "Those studs should provide a bit more protection. Nice trim too!",
"durability": null,
- "low_alchemy": "300",
- "high_alchemy": "450",
"weight": "4.5",
"absorb": "0,2,1",
"equipment_slot": "7",
@@ -70979,8 +67040,6 @@
"ge_buy_limit": "2",
"examine": "Those studs should provide a bit more protection. Nice trim, too!",
"durability": null,
- "low_alchemy": "300",
- "high_alchemy": "450",
"weight": "4.5",
"absorb": "0,2,1",
"equipment_slot": "7",
@@ -71003,13 +67062,17 @@
{
"requirements": "{1,40}-{4,40}",
"ge_buy_limit": "5000",
- "grand_exchange_price": "212400",
+ "examine": "Made from 100% real dragonhide. With colourful trim!",
"durability": null,
+ "weight": "6",
+ "equip_audio": "2241",
+ "equipment_slot": "4",
+ "grand_exchange_price": "212400",
"name": "D'hide body(g)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7370",
- "bonuses": "0,0,0,-15,15,40,32,45,20,40,40,0,0,0,0",
- "equipment_slot": "4"
+ "bonuses": "0,0,0,-15,15,40,32,45,20,40,40,0,0,0,0"
},
{
"ge_buy_limit": "5000",
@@ -71023,13 +67086,17 @@
{
"requirements": "{1,40}-{4,40}",
"ge_buy_limit": "2",
- "grand_exchange_price": "38800",
+ "examine": "Made from 100% real dragonhide. With colourful trim!",
"durability": null,
+ "weight": "6",
+ "equip_audio": "2241",
+ "equipment_slot": "4",
+ "grand_exchange_price": "38800",
"name": "D'hide body (t)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7372",
- "bonuses": "0,0,0,-15,15,40,32,45,20,40,40,0,0,0,0",
- "equipment_slot": "4"
+ "bonuses": "0,0,0,-15,15,40,32,45,20,40,40,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71041,15 +67108,19 @@
"id": "7373"
},
{
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"ge_buy_limit": "2",
- "grand_exchange_price": "6883",
+ "examine": "Made from 100% real dragonhide, with colourful trim!",
"durability": null,
+ "weight": "6",
+ "equip_audio": "2241",
+ "equipment_slot": "4",
+ "grand_exchange_price": "6883",
"name": "D'hide body (g)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7374",
- "bonuses": "0,0,0,-15,20,45,37,50,30,45,45,0,0,0,0",
- "equipment_slot": "4"
+ "bonuses": "0,0,0,-15,20,45,37,50,30,45,45,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71061,15 +67132,19 @@
"id": "7375"
},
{
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"ge_buy_limit": "2",
- "grand_exchange_price": "5268",
+ "examine": "Made from 100% real dragonhide, with colourful trim!",
"durability": null,
+ "weight": "6",
+ "equip_audio": "2241",
+ "equipment_slot": "4",
+ "grand_exchange_price": "5268",
"name": "D'hide body (t)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7376",
- "bonuses": "0,0,0,-15,20,45,37,50,30,45,45,0,0,0,0",
- "equipment_slot": "4"
+ "bonuses": "0,0,0,-15,20,45,37,50,30,45,45,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71083,13 +67158,17 @@
{
"requirements": "{4,40}",
"ge_buy_limit": "2",
- "grand_exchange_price": "1300000",
+ "examine": "Made from 100% real dragonhide, with colourful trim!",
"durability": null,
+ "weight": "5",
+ "equip_audio": "2241",
+ "equipment_slot": "7",
+ "grand_exchange_price": "1300000",
"name": "D'hide chaps (g)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7378",
- "bonuses": "0,0,0,-10,8,22,16,24,8,22,15,0,0,0,0",
- "equipment_slot": "7"
+ "bonuses": "0,0,0,-10,8,22,16,24,8,22,15,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71103,13 +67182,17 @@
{
"requirements": "{4,40}",
"ge_buy_limit": "2",
- "grand_exchange_price": "304300",
+ "examine": "Made from 100% real dragonhide, with colourful trim!",
"durability": null,
+ "weight": "5",
+ "equip_audio": "2241",
+ "equipment_slot": "7",
+ "grand_exchange_price": "304300",
"name": "D'hide chaps (t)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7380",
- "bonuses": "0,0,0,-10,8,22,16,24,8,22,15,0,0,0,0",
- "equipment_slot": "7"
+ "bonuses": "0,0,0,-10,8,22,16,24,8,22,15,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71123,13 +67206,17 @@
{
"requirements": "{4,50}",
"ge_buy_limit": "2",
- "grand_exchange_price": "21300",
+ "examine": "Made from 100% real dragonhide, with colourful trim!",
"durability": null,
+ "weight": "5",
+ "equip_audio": "2241",
+ "equipment_slot": "7",
+ "grand_exchange_price": "21300",
"name": "D'hide chaps (g)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7382",
- "bonuses": "0,0,0,-10,11,25,19,27,14,25,20,0,0,0,0",
- "equipment_slot": "7"
+ "bonuses": "0,0,0,-10,11,25,19,27,14,25,20,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71143,13 +67230,17 @@
{
"requirements": "{4,50}",
"ge_buy_limit": "2",
- "grand_exchange_price": "2554",
+ "examine": "Made from 100% real dragonhide, with colourful trim!",
"durability": null,
+ "weight": "5",
+ "equip_audio": "2241",
+ "equipment_slot": "7",
+ "grand_exchange_price": "2554",
"name": "D'hide chaps (t)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7384",
- "bonuses": "0,0,0,-10,11,25,19,27,14,25,20,0,0,0,0",
- "equipment_slot": "7"
+ "bonuses": "0,0,0,-10,11,25,19,27,14,25,20,0,0,0,0"
},
{
"ge_buy_limit": "2",
@@ -71167,7 +67258,6 @@
"durability": null,
"name": "Blue skirt (g)",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "7386",
@@ -71190,8 +67280,8 @@
"durability": null,
"name": "Blue skirt (t)",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "7388",
"bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0",
"equipment_slot": "7"
@@ -71206,20 +67296,18 @@
"id": "7389"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "I can practise magic better in this.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "1200000",
+ "durability": null,
"name": "Wizard robe (g)",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "7390",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -71231,20 +67319,18 @@
"id": "7391"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "I can do magic better in this.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "244600",
+ "durability": null,
"name": "Wizard robe (t)",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "7392",
- "bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
+ "bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -71258,17 +67344,16 @@
{
"ge_buy_limit": "2",
"examine": "A silly pointed hat with colourful trim.",
- "durability": null,
- "high_alchemy": "1",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "1400000",
+ "durability": null,
"name": "Wizard hat (g)",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"hat": "true",
"id": "7394",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -71282,17 +67367,16 @@
{
"ge_buy_limit": "2",
"examine": "A silly pointed hat, with colourful trim.",
- "durability": null,
- "high_alchemy": "1",
- "weight": "0.4",
- "equipment_slot": "0",
"grand_exchange_price": "352700",
+ "durability": null,
"name": "Wizard hat (t)",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"hat": "true",
"id": "7396",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -71304,12 +67388,10 @@
"id": "7397"
},
{
- "requirements": "{1,40}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"ge_buy_limit": "2",
"examine": "Enchanted Wizards robes.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"weight": "1.8",
"absorb": "2,1,0",
"equipment_slot": "7",
@@ -71321,12 +67403,10 @@
"bonuses": "0,0,0,15,0,0,0,0,15,0,15,0,0,0,0"
},
{
- "requirements": "{1,40}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"ge_buy_limit": "2",
"examine": "Enchanted Wizards robes.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"weight": "1",
"absorb": "3,1,0",
"equipment_slot": "4",
@@ -71340,19 +67420,17 @@
},
{
"remove_head": "true",
- "requirements": "{1,40}-{6,20}",
+ "requirements": "{1,20}-{6,40}",
"ge_buy_limit": "2",
"examine": "A three pointed hat of magic.",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "equipment_slot": "0",
"grand_exchange_price": "8845",
+ "durability": null,
"name": "Enchanted hat",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "7400",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,0,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -71379,8 +67457,6 @@
"examine": "A number of chemical covered wooden logs.",
"durability": null,
"name": "Red logs",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "7404"
},
@@ -71388,8 +67464,6 @@
"examine": "A number of chemical covered wooden logs.",
"durability": null,
"name": "Green logs",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "2",
"archery_ticket_price": "0",
"id": "7405"
@@ -71398,8 +67472,6 @@
"examine": "A number of chemical covered wooden logs.",
"durability": null,
"name": "Blue logs",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "2",
"archery_ticket_price": "0",
"id": "7406"
@@ -71425,8 +67497,6 @@
"shop_price": "40000",
"examine": "The only way to kill a Tanglefoot.",
"durability": null,
- "low_alchemy": "75000",
- "high_alchemy": "75000",
"destroy": "true",
"weight": "0.4",
"attack_speed": "5",
@@ -71462,7 +67532,6 @@
"examine": "Full: ",
"durability": null,
"name": "Bird's nest",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7413"
},
@@ -71488,8 +67557,6 @@
"durability": null,
"name": "Mole claw",
"tradeable": "true",
- "low_alchemy": "240",
- "high_alchemy": "360",
"archery_ticket_price": "0",
"id": "7416"
},
@@ -71509,8 +67576,6 @@
"durability": null,
"name": "Mole skin",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"archery_ticket_price": "0",
"id": "7418"
},
@@ -71537,8 +67602,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71558,8 +67621,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71579,8 +67640,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71600,8 +67659,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71621,8 +67678,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71642,8 +67697,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71663,8 +67716,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71684,8 +67735,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71705,8 +67754,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71726,8 +67773,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71747,8 +67792,6 @@
"examine": "Pumps fungicide.",
"walk_anim": "3334",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "2",
"turn90ccw_anim": "822",
"turn180_anim": "820",
@@ -71767,8 +67810,6 @@
"examine": "Does exactly what it says on the tin. (Kills Fungi.)",
"durability": null,
"name": "Fungicide",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7432"
},
@@ -71777,8 +67818,6 @@
"ge_buy_limit": "100",
"examine": "Spoooooon!",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.4",
"attack_speed": "5",
"weapon_interface": "6",
@@ -71804,8 +67843,6 @@
"ge_buy_limit": "100",
"examine": "A large whisk of death.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"attack_speed": "4",
"weapon_interface": "5",
"equipment_slot": "3",
@@ -71831,8 +67868,6 @@
"ge_buy_limit": "100",
"examine": "Use the spork.",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "5",
@@ -71854,32 +67889,30 @@
"id": "7438"
},
{
+ "requirements": "{0,10}",
"ge_buy_limit": "100",
+ "shop_price": "1728",
"turn90cw_anim": "7044",
"examine": "A large spatula... of doom!",
"walk_anim": "7046",
- "low_alchemy": "768",
+ "durability": null,
+ "weight": "3.6",
"turn90ccw_anim": "7043",
"attack_speed": "7",
"two_handed": "true",
+ "weapon_interface": "7",
"turn180_anim": "7045",
+ "render_anim": "124",
"equipment_slot": "3",
"grand_exchange_price": "953",
"stand_anim": "7047",
"tradeable": "true",
+ "name": "Spatula",
"run_anim": "7039",
"archery_ticket_price": "0",
"id": "7439",
"stand_turn_anim": "7040",
- "bonuses": "-4,27,21,-4,0,0,0,0,0,-1,0,22,0,0,0",
- "requirements": "{0,10}",
- "shop_price": "1728",
- "durability": null,
- "high_alchemy": "1152",
- "weight": "3.6",
- "weapon_interface": "7",
- "render_anim": "124",
- "name": "Spatula"
+ "bonuses": "-4,27,21,-4,0,0,0,0,0,-1,0,22,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -71896,8 +67929,6 @@
"ge_buy_limit": "100",
"examine": "Looks like it's non-stick too!",
"durability": null,
- "low_alchemy": "664",
- "high_alchemy": "996",
"weight": "1.5",
"attack_speed": "6",
"weapon_interface": "10",
@@ -71924,8 +67955,6 @@
"ge_buy_limit": "100",
"examine": "Generally used for impaling fresh meat.",
"durability": null,
- "low_alchemy": "1280",
- "high_alchemy": "1920",
"weight": "2",
"attack_speed": "5",
"weapon_interface": "6",
@@ -71952,8 +67981,6 @@
"ge_buy_limit": "100",
"examine": "That's how I roll!",
"durability": null,
- "low_alchemy": "5760",
- "high_alchemy": "8640",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "10",
@@ -71980,10 +68007,9 @@
"ge_buy_limit": "100",
"examine": "A sharp, dependable knife, for filleting meat.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2244",
"equipment_slot": "3",
"grand_exchange_price": "4686",
"attack_audios": "2704,0,0,0",
@@ -72007,7 +68033,6 @@
"turn90cw_anim": "821",
"examine": "Often used to soften tough meat up.",
"walk_anim": "819",
- "low_alchemy": "16600",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -72025,7 +68050,6 @@
"requirements": "{0,40}",
"shop_price": "41500",
"durability": null,
- "high_alchemy": "24900",
"weight": "1",
"weapon_interface": "10",
"render_anim": "1",
@@ -72046,8 +68070,6 @@
"ge_buy_limit": "100",
"examine": "An effective tool for chopping tough meat.",
"durability": null,
- "low_alchemy": "10240",
- "high_alchemy": "15360",
"weight": "0.5",
"attack_speed": "4",
"weapon_interface": "6",
@@ -72076,12 +68098,11 @@
"examine": "A pair of plain gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7453",
"bonuses": "1,1,1,1,1,1,1,1,1,1,1,1,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72089,12 +68110,11 @@
"examine": "A pair of bronze-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7454",
"bonuses": "2,2,2,1,2,2,2,2,1,2,1,2,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72102,12 +68122,11 @@
"examine": "A pair of iron-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7455",
"bonuses": "3,3,3,2,3,3,3,3,2,3,2,3,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72115,12 +68134,11 @@
"examine": "A pair of steel-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7456",
"bonuses": "4,4,4,2,4,4,4,4,2,4,2,4,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72128,12 +68146,11 @@
"examine": "A pair of black-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7457",
"bonuses": "5,5,5,3,5,5,5,5,3,5,3,5,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72141,11 +68158,10 @@
"examine": "A pair of mithril-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "600",
- "high_alchemy": "900",
"archery_ticket_price": "0",
"id": "7458",
"bonuses": "6,6,6,3,6,6,6,6,3,6,3,6,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72153,12 +68169,11 @@
"examine": "A pair of adamant-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7459",
"bonuses": "7,7,7,4,7,7,7,7,4,7,4,7,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72167,11 +68182,10 @@
"examine": "A pair of rune-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"archery_ticket_price": "0",
"id": "7460",
"bonuses": "8,8,8,4,8,8,8,8,4,8,4,8,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72180,11 +68194,10 @@
"examine": "A pair of dragon-coloured gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"archery_ticket_price": "0",
"id": "7461",
"bonuses": "9,9,9,5,9,9,9,9,5,9,5,9,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72193,12 +68206,11 @@
"examine": "A pair of Barrows-themed gloves.",
"durability": null,
"name": "Gloves",
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "7462",
"bonuses": "12,12,12,6,12,12,12,12,6,12,6,12,0,0,0",
+ "equip_audio": "2236",
"equipment_slot": "9"
},
{
@@ -72220,7 +68232,6 @@
"examine": "Surprise, it looks like a vanilla pod.",
"durability": null,
"name": "Vanilla pod",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7465"
},
@@ -72427,8 +68438,6 @@
"examine": "A cool refreshing fruit mix. With ash in for some reason.",
"durability": null,
"name": "Dirty blast",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "7497"
},
@@ -72496,7 +68505,6 @@
"examine": "There appears to be a coin in the bottom. Liked by dwarves.",
"durability": null,
"name": "Asgoldian ale",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7508"
},
@@ -72520,8 +68528,6 @@
"examine": "Two out of two goblin generals prefer it!",
"durability": null,
"name": "Slop of compromise",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7511"
},
@@ -72529,8 +68535,6 @@
"examine": "Previously a nice crispy loaf of bread. Now just kind of icky.",
"durability": null,
"name": "Soggy bread",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7512"
},
@@ -72538,8 +68542,6 @@
"examine": "They clearly taste so much better this way!",
"durability": null,
"name": "Spicy maggots",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7513"
},
@@ -72548,7 +68550,6 @@
"durability": null,
"name": "Dyed orange",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7514"
},
@@ -72597,8 +68598,6 @@
"durability": null,
"name": "Cooked crab meat",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "7521"
@@ -72618,8 +68617,6 @@
"durability": null,
"name": "Cooked crab meat",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "7523"
@@ -72630,8 +68627,6 @@
"durability": null,
"name": "Cooked crab meat",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "7524"
@@ -72642,8 +68637,6 @@
"durability": null,
"name": "Cooked crab meat",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "7525"
@@ -72654,8 +68647,6 @@
"durability": null,
"name": "Cooked crab meat",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "7526"
@@ -72678,8 +68669,6 @@
"examine": "Would taste nicer if I cooked it.",
"durability": null,
"name": "Raw fishcake",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "7529"
},
@@ -72687,8 +68676,6 @@
"examine": "Mmmm, reminds me of the seaside.",
"durability": null,
"name": "Cooked fishcake",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "7530"
},
@@ -72794,8 +68781,6 @@
"examine": "Egg containing knowledge.",
"durability": null,
"name": "Enchanted egg",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "7544"
},
@@ -72804,8 +68789,6 @@
"examine": "Guiding milk.",
"durability": null,
"name": "Enchanted milk",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "2",
"archery_ticket_price": "0",
"id": "7545"
@@ -72815,9 +68798,7 @@
"examine": "A pot of special flour.",
"durability": null,
"name": "Enchanted flour",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -72827,8 +68808,6 @@
"examine": "A druid pouch.",
"durability": null,
"name": "Druid pouch",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7547"
},
@@ -72873,8 +68852,6 @@
"durability": null,
"name": "Mithril arrow",
"tradeable": "true",
- "low_alchemy": "30",
- "high_alchemy": "45",
"archery_ticket_price": "0",
"id": "7552",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,22,0,0"
@@ -72893,8 +68870,6 @@
"durability": null,
"name": "Fire rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7554"
},
@@ -72912,8 +68887,6 @@
"durability": null,
"name": "Water rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7556"
},
@@ -72931,8 +68904,6 @@
"durability": null,
"name": "Air rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7558"
},
@@ -72950,8 +68921,6 @@
"durability": null,
"name": "Chaos rune",
"tradeable": "true",
- "low_alchemy": "18",
- "high_alchemy": "28",
"archery_ticket_price": "0",
"id": "7560"
},
@@ -73004,8 +68973,6 @@
"durability": null,
"name": "Raw jubbly",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "10",
"archery_ticket_price": "0",
"id": "7566"
@@ -73026,8 +68993,6 @@
"durability": null,
"name": "Cooked jubbly",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "10",
"archery_ticket_price": "0",
"id": "7568"
@@ -73052,8 +69017,6 @@
"examine": "Like a banana only redder.",
"durability": null,
"name": "Red banana",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7572",
"equipment_slot": "5"
@@ -73062,8 +69025,6 @@
"examine": "Like monkey nuts only tchikier.",
"durability": null,
"name": "Tchiki monkey nuts",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7573"
},
@@ -73203,8 +69164,6 @@
"examine": "I look 40,000 years old in this...",
"durability": null,
"name": "Zombie mask",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "7594",
"remove_beard": "true",
@@ -73214,8 +69173,6 @@
"examine": "Smells pretty funky.",
"durability": null,
"name": "Zombie gloves",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "7595",
"equipment_slot": "9"
@@ -73225,8 +69182,6 @@
"examine": "Thrilling.",
"durability": null,
"name": "Zombie boots",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "7596",
"equipment_slot": "10"
@@ -73508,9 +69463,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73531,9 +69487,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73551,27 +69508,26 @@
"examine": "A partialy charged rod.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "400",
+ "durability": null,
+ "destroy": "true",
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
+ "weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"defence_anim": "420",
+ "render_anim": "28",
"equipment_slot": "3",
"attack_anims": "419,419,419,419",
"stand_anim": "813",
+ "name": "Rod of ivandis(8)",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "7641",
"stand_turn_anim": "1209",
- "bonuses": "0,-1,7,4,0,2,3,1,4,0,0,3,0,0,0",
- "durability": null,
- "high_alchemy": "600",
- "destroy": "true",
- "weight": "2",
- "weapon_interface": "1",
- "render_anim": "28",
- "name": "Rod of ivandis(8)"
+ "bonuses": "0,-1,7,4,0,2,3,1,4,0,0,3,0,0,0"
},
{
"turn90cw_anim": "1207",
@@ -73581,9 +69537,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73604,9 +69561,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73627,9 +69585,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73650,9 +69609,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73673,9 +69633,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73696,9 +69657,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73719,9 +69681,10 @@
"durability": null,
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "two_handed": "true",
+ "two_handed": "false",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "420",
"equipment_slot": "3",
@@ -73739,8 +69702,6 @@
"examine": "A mould of the Rod of Ivandis.",
"durability": null,
"name": "Rod clay mould",
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7649"
@@ -73752,8 +69713,6 @@
"durability": null,
"name": "Silver dust",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.33",
"archery_ticket_price": "0",
"id": "7650"
@@ -73770,8 +69729,10 @@
{
"ge_buy_limit": "1000",
"grand_exchange_price": "96",
+ "examine": "An unfinished potion.",
"durability": null,
"name": "Guthix balance(unf)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7652"
},
@@ -73787,8 +69748,10 @@
{
"ge_buy_limit": "1000",
"grand_exchange_price": "77",
+ "examine": "An unfinished potion.",
"durability": null,
"name": "Guthix balance(unf)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7654"
},
@@ -73804,8 +69767,10 @@
{
"ge_buy_limit": "1000",
"grand_exchange_price": "58",
+ "examine": "An unfinished potion.",
"durability": null,
"name": "Guthix balance(unf)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7656"
},
@@ -73821,8 +69786,10 @@
{
"ge_buy_limit": "1000",
"grand_exchange_price": "30",
+ "examine": "An unfinished potion.",
"durability": null,
"name": "Guthix balance(unf)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7658"
},
@@ -73842,8 +69809,6 @@
"durability": null,
"name": "Guthix balance(4)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "7660"
},
@@ -73863,8 +69828,6 @@
"durability": null,
"name": "Guthix balance(3)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "7662"
},
@@ -73884,8 +69847,6 @@
"durability": null,
"name": "Guthix balance(2)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "7664"
},
@@ -73905,8 +69866,6 @@
"durability": null,
"name": "Guthix balance(1)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "7666"
},
@@ -73924,7 +69883,6 @@
"turn90cw_anim": "1663",
"examine": "A specially crafted hammer with strange markings on it.",
"walk_anim": "1663",
- "low_alchemy": "1200",
"turn90ccw_anim": "1663",
"attack_speed": "5",
"two_handed": "true",
@@ -73942,7 +69900,6 @@
"bonuses": "-4,-4,35,-4,0,0,0,0,0,0,0,35,0,0,0",
"shop_price": "3000",
"durability": null,
- "high_alchemy": "1800",
"weight": "1.8",
"weapon_interface": "10",
"render_anim": "27",
@@ -74008,6 +69965,7 @@
"id": "7675",
"weapon_interface": "5",
"bonuses": "4,3,-2,0,0,0,2,1,0,0,0,5,0,0,0",
+ "equip_audio": "2248",
"render_anim": "2584",
"equipment_slot": "3"
},
@@ -74016,6 +69974,7 @@
"name": "Wooden shield",
"archery_ticket_price": "0",
"id": "7676",
+ "equip_audio": "2250",
"equipment_slot": "5"
},
{
@@ -74081,6 +70040,7 @@
"archery_ticket_price": "0",
"attack_speed": "3",
"id": "7684",
+ "equip_audio": "2244",
"equipment_slot": "3"
},
{
@@ -74137,6 +70097,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (4)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7692"
@@ -74152,6 +70113,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (3)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7694"
@@ -74167,6 +70129,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (2)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7696"
@@ -74182,6 +70145,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (1)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7698"
@@ -74197,6 +70161,7 @@
"examine": "Add boiling water to make a tea.",
"durability": null,
"name": "Teapot with leaves",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7700"
@@ -74212,6 +70177,7 @@
"examine": "This teapot is empty.",
"durability": null,
"name": "Teapot",
+ "tradeable": "true",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "7702"
@@ -74227,6 +70193,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (4)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7704"
@@ -74242,6 +70209,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (3)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7706"
@@ -74257,6 +70225,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (2)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7708"
@@ -74272,6 +70241,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (1)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7710"
@@ -74287,6 +70257,7 @@
"examine": "Add boiling water to make a tea.",
"durability": null,
"name": "Teapot with leaves",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7712"
@@ -74302,6 +70273,7 @@
"examine": "This teapot is empty.",
"durability": null,
"name": "Teapot",
+ "tradeable": "true",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "7714"
@@ -74317,6 +70289,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (4)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7716"
@@ -74332,6 +70305,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (3)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7718"
@@ -74347,6 +70321,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (2)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7720"
@@ -74362,6 +70337,7 @@
"examine": "I'd really like a nice cup of tea.",
"durability": null,
"name": "Pot of tea (1)",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7722"
@@ -74377,6 +70353,7 @@
"examine": "Add boiling water to make a tea.",
"durability": null,
"name": "Teapot with leaves",
+ "tradeable": "true",
"weight": "1.5",
"archery_ticket_price": "0",
"id": "7724"
@@ -74392,6 +70369,7 @@
"examine": "This teapot is empty.",
"durability": null,
"name": "Teapot",
+ "tradeable": "true",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "7726"
@@ -74410,7 +70388,6 @@
"durability": null,
"name": "Empty cup",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7728"
},
@@ -74428,8 +70405,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7730"
@@ -74441,8 +70416,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7731"
@@ -74461,8 +70434,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7733"
@@ -74474,8 +70445,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7734"
@@ -74494,8 +70463,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7736"
@@ -74507,8 +70474,6 @@
"durability": null,
"name": "Cup of tea",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "7737"
@@ -74534,7 +70499,6 @@
"durability": null,
"name": "Beer",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "7740"
@@ -74553,7 +70517,6 @@
"durability": null,
"name": "Beer glass",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "7742"
@@ -74572,7 +70535,6 @@
"durability": null,
"name": "Asgarnian ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7744"
},
@@ -74590,7 +70552,6 @@
"durability": null,
"name": "Greenman's ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7746"
},
@@ -74608,7 +70569,6 @@
"durability": null,
"name": "Dragon bitter",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "7748"
@@ -74627,8 +70587,6 @@
"durability": null,
"name": "Moonlight mead",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7750"
},
@@ -74646,7 +70604,6 @@
"durability": null,
"name": "Cider",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "7752"
@@ -74664,7 +70621,6 @@
"durability": null,
"name": "Chef's delight",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7754"
},
@@ -74678,6 +70634,7 @@
{
"durability": null,
"name": "Paintbrush",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "7756",
"equipment_slot": "3"
@@ -74705,8 +70662,6 @@
"durability": null,
"name": "Toy soldier",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7759"
@@ -74726,8 +70681,6 @@
"durability": null,
"name": "Toy soldier (wound)",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7761"
@@ -74741,13 +70694,11 @@
},
{
"ge_buy_limit": "100",
- "examine": "In inventory: Nice bit of crafting! When released: Nice bit of crafting that...",
+ "examine": "Nice bit of crafting!",
"grand_exchange_price": "3236",
"durability": null,
"name": "Toy doll",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7763"
},
@@ -74761,13 +70712,11 @@
"id": "7764"
},
{
- "examine": "In inventory: Nice bit of crafting! When released: Nice bit of crafting that...",
+ "examine": "Nice bit of crafting!",
"grand_exchange_price": "3289",
"durability": null,
"name": "Toy doll (wound)",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7765"
},
@@ -74786,8 +70735,6 @@
"durability": null,
"name": "Toy mouse",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "7767"
@@ -74808,8 +70755,6 @@
"durability": null,
"name": "Toy mouse (wound)",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "7769"
@@ -74828,8 +70773,6 @@
"durability": null,
"name": "Clockwork cat",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -74901,8 +70844,6 @@
"examine": "A tome of learning that focuses on the Fishing skill.",
"durability": null,
"name": "Fishing tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7779"
@@ -74911,8 +70852,6 @@
"examine": "A tome of learning that focuses on the Fishing skill.",
"durability": null,
"name": "Fishing tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7780"
@@ -74921,8 +70860,6 @@
"examine": "A tome of learning that focuses on the Fishing skill.",
"durability": null,
"name": "Fishing tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7781"
@@ -74931,8 +70868,6 @@
"examine": "A tome of learning that focuses on Agility.",
"durability": null,
"name": "Agility tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7782"
@@ -74941,8 +70876,6 @@
"examine": "A tome of learning that focuses on Agility.",
"durability": null,
"name": "Agility tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7783"
@@ -74951,8 +70884,6 @@
"examine": "A tome of learning that focuses on Agility.",
"durability": null,
"name": "Agility tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7784"
@@ -74961,8 +70892,6 @@
"examine": "A tome of learning that focuses on the Thieving skill.",
"durability": null,
"name": "Thieving tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7785"
@@ -74971,8 +70900,6 @@
"examine": "A tome of learning that focuses on the Thieving skill.",
"durability": null,
"name": "Thieving tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7786"
@@ -74981,8 +70908,6 @@
"examine": "A tome of learning that focuses on the Thieving skill.",
"durability": null,
"name": "Thieving tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7787"
@@ -74991,8 +70916,6 @@
"examine": "A tome of learning which focuses on the Slayer skill.",
"durability": null,
"name": "Slayer tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7788"
@@ -75001,8 +70924,6 @@
"examine": "A tome of learning which focuses on the Slayer skill.",
"durability": null,
"name": "Slayer tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7789"
@@ -75011,8 +70932,6 @@
"examine": "A tome of learning which focuses on the Slayer skill.",
"durability": null,
"name": "Slayer tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7790"
@@ -75022,8 +70941,6 @@
"examine": "A tome of learning that focuses on the Mining skill.",
"durability": null,
"name": "Mining tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7791"
@@ -75033,8 +70950,6 @@
"examine": "A tome of learning that focuses on the Mining skill.",
"durability": null,
"name": "Mining tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7792"
@@ -75044,8 +70959,6 @@
"examine": "A tome of learning that focuses on the Mining skill.",
"durability": null,
"name": "Mining tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7793"
@@ -75054,8 +70967,6 @@
"examine": "A tome of learning that focuses on Firemaking.",
"durability": null,
"name": "Firemaking tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7794"
@@ -75064,8 +70975,6 @@
"examine": "A tome of learning that focuses on Firemaking.",
"durability": null,
"name": "Firemaking tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7795"
@@ -75074,8 +70983,6 @@
"examine": "A tome of learning that focuses on Firemaking.",
"durability": null,
"name": "Firemaking tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7796"
@@ -75085,8 +70992,6 @@
"examine": "A tome of learning that focuses on the Woodcutting skill.",
"durability": null,
"name": "Woodcutting tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7797"
@@ -75096,8 +71001,6 @@
"examine": "A tome of learning that focuses on the Woodcutting skill.",
"durability": null,
"name": "Woodcutting tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7798"
@@ -75107,8 +71010,6 @@
"examine": "A tome of learning that focuses on the Woodcutting skill.",
"durability": null,
"name": "Woodcutting tome",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"archery_ticket_price": "0",
"id": "7799"
@@ -75128,8 +71029,6 @@
"durability": null,
"name": "Snake hide",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "7801"
@@ -75191,14 +71090,16 @@
"equipment_slot": "3"
},
{
- "attack_anims": "395,395,395,395",
+ "attack_anims": "395,395,401,395",
"examine": "A heavy duty axe.",
"durability": null,
+ "attack_audios": "2498,2498,2497,2498",
"name": "Anger battleaxe",
"archery_ticket_price": "0",
"id": "7807",
"weapon_interface": "2",
"bonuses": "20,20,20,0,0,0,0,0,0,-1,0,13,0,0,0",
+ "equip_audio": "2232",
"defence_anim": "397",
"equipment_slot": "3"
},
@@ -75223,6 +71124,7 @@
"two_handed": "true",
"weapon_interface": "14",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "2079",
"equipment_slot": "3",
@@ -75260,7 +71162,7 @@
"id": "7812"
},
{
- "examine": "See article",
+ "examine": "There is a goblin bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75268,7 +71170,7 @@
"id": "7813"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Goblin skull",
"archery_ticket_price": "0",
@@ -75282,7 +71184,7 @@
"id": "7815"
},
{
- "examine": "See article",
+ "examine": "There is a bear bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75290,21 +71192,21 @@
"id": "7816"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Bear ribs",
"archery_ticket_price": "0",
"id": "7817"
},
{
- "examine": "Unpolished: This needs a good polish.",
+ "examine": "This needs a good polish.",
"durability": null,
"name": "Ram skull",
"archery_ticket_price": "0",
"id": "7818"
},
{
- "examine": "See article",
+ "examine": "There is a ram bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75312,7 +71214,7 @@
"id": "7819"
},
{
- "examine": "Unpolished: This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Ram skull",
"archery_ticket_price": "0",
@@ -75326,7 +71228,7 @@
"id": "7821"
},
{
- "examine": "See article",
+ "examine": "There is a unicorn bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75334,7 +71236,7 @@
"id": "7822"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Unicorn bone",
"archery_ticket_price": "0",
@@ -75348,7 +71250,7 @@
"id": "7824"
},
{
- "examine": "See article",
+ "examine": "There is a giant rat bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75356,7 +71258,7 @@
"id": "7825"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Giant rat bone",
"archery_ticket_price": "0",
@@ -75371,7 +71273,7 @@
"id": "7827"
},
{
- "examine": "See article",
+ "examine": "There is a giant bat bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75379,7 +71281,7 @@
"id": "7828"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Giant bat wing",
"weight": "0.9",
@@ -75395,7 +71297,7 @@
"id": "7830"
},
{
- "examine": "See article",
+ "examine": "There is a wolf bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75403,7 +71305,7 @@
"id": "7831"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Wolf bone",
"weight": "0.9",
@@ -75419,7 +71321,7 @@
"id": "7833"
},
{
- "examine": "See article",
+ "examine": "There is a bat bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75427,7 +71329,7 @@
"id": "7834"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Bat wing",
"weight": "0.9",
@@ -75443,7 +71345,7 @@
"id": "7836"
},
{
- "examine": "See article",
+ "examine": "There is a rat bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75451,7 +71353,7 @@
"id": "7837"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Rat bone",
"weight": "0.9",
@@ -75467,7 +71369,7 @@
"id": "7839"
},
{
- "examine": "See article",
+ "examine": "There is a baby blue dragon bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75475,7 +71377,7 @@
"id": "7840"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Baby dragon bone",
"weight": "0.9",
@@ -75491,7 +71393,7 @@
"id": "7842"
},
{
- "examine": "See article",
+ "examine": "There is a ogre bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75499,7 +71401,7 @@
"id": "7843"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Ogre ribs",
"weight": "0.9",
@@ -75515,7 +71417,7 @@
"id": "7845"
},
{
- "examine": "See article",
+ "examine": "There is a jogre bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75523,7 +71425,7 @@
"id": "7846"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Jogre bone",
"weight": "0.9",
@@ -75539,7 +71441,7 @@
"id": "7848"
},
{
- "examine": "See article",
+ "examine": "There is a zogre bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75547,7 +71449,7 @@
"id": "7849"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Zogre bone",
"weight": "0.9",
@@ -75563,7 +71465,7 @@
"id": "7851"
},
{
- "examine": "See article",
+ "examine": "There is a mogre bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75571,7 +71473,7 @@
"id": "7852"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Mogre bone",
"weight": "0.9",
@@ -75579,14 +71481,14 @@
"id": "7853"
},
{
- "examine": "This needs a good polish./ This belongs in a museum!",
+ "examine": "This needs a good polish.",
"durability": null,
"name": "Monkey paw",
"archery_ticket_price": "0",
"id": "7854"
},
{
- "examine": "See article",
+ "examine": "There is a monkey bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75594,7 +71496,7 @@
"id": "7855"
},
{
- "examine": "This needs a good polish./ This belongs in a museum!",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Monkey paw",
"archery_ticket_price": "0",
@@ -75609,7 +71511,7 @@
"id": "7857"
},
{
- "examine": "See article",
+ "examine": "There is a Dagannoth bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75617,7 +71519,7 @@
"id": "7858"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Dagannoth ribs",
"weight": "0.9",
@@ -75633,7 +71535,7 @@
"id": "7860"
},
{
- "examine": "See article",
+ "examine": "There is a snake bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75641,7 +71543,7 @@
"id": "7861"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Snake spine",
"weight": "0.9",
@@ -75657,7 +71559,7 @@
"id": "7863"
},
{
- "examine": "See article",
+ "examine": "There is a zombie bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75665,7 +71567,7 @@
"id": "7864"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Zombie bone",
"weight": "0.9",
@@ -75681,7 +71583,7 @@
"id": "7866"
},
{
- "examine": "See article",
+ "examine": "There is a werewolf bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75689,7 +71591,7 @@
"id": "7867"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Werewolf bone",
"weight": "0.9",
@@ -75705,7 +71607,7 @@
"id": "7869"
},
{
- "examine": "See article",
+ "examine": "There is a moss giant bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75713,7 +71615,7 @@
"id": "7870"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Moss giant bone",
"weight": "0.9",
@@ -75729,7 +71631,7 @@
"id": "7872"
},
{
- "examine": "See article",
+ "examine": "There is a fire giant bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75737,7 +71639,7 @@
"id": "7873"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This bone belongs in a museum!",
"durability": null,
"name": "Fire giant bone",
"weight": "0.9",
@@ -75753,7 +71655,7 @@
"id": "7875"
},
{
- "examine": "See article",
+ "examine": "There is an ice giant bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75761,7 +71663,7 @@
"id": "7876"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Ice giant ribs",
"weight": "0.9",
@@ -75777,7 +71679,7 @@
"id": "7878"
},
{
- "examine": "See article",
+ "examine": "There is a terrorbird bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75785,7 +71687,7 @@
"id": "7879"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Terrorbird wing",
"weight": "0.9",
@@ -75801,7 +71703,7 @@
"id": "7881"
},
{
- "examine": "See article",
+ "examine": "There is a ghoul bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75809,7 +71711,7 @@
"id": "7882"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Ghoul bone",
"weight": "0.9",
@@ -75825,7 +71727,7 @@
"id": "7884"
},
{
- "examine": "See article",
+ "examine": "There is a troll bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75833,7 +71735,7 @@
"id": "7885"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Troll bone",
"weight": "0.9",
@@ -75849,7 +71751,7 @@
"id": "7887"
},
{
- "examine": "See article",
+ "examine": "There is a seagull bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75857,7 +71759,7 @@
"id": "7888"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Seagull wing",
"weight": "0.9",
@@ -75873,7 +71775,7 @@
"id": "7890"
},
{
- "examine": "See article",
+ "examine": "There is an undead cow bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75881,7 +71783,7 @@
"id": "7891"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Undead cow ribs",
"weight": "0.9",
@@ -75890,7 +71792,7 @@
},
{
"shop_price": "160",
- "examine": "Unpolished: This needs a good polish. Polished: This bone belongs in a museum!",
+ "examine": "This needs a good polish.",
"durability": null,
"name": "Experiment bone",
"weight": "0.9",
@@ -75898,7 +71800,7 @@
"id": "7893"
},
{
- "examine": "See article",
+ "examine": "There is an experiment bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75907,7 +71809,7 @@
},
{
"shop_price": "160",
- "examine": "Unpolished: This needs a good polish. Polished: This bone belongs in a museum!",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Experiment bone",
"weight": "0.9",
@@ -75923,7 +71825,7 @@
"id": "7896"
},
{
- "examine": "See article",
+ "examine": "There is a rabbit bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75931,7 +71833,7 @@
"id": "7897"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Rabbit bone",
"weight": "0.9",
@@ -75939,7 +71841,7 @@
"id": "7898"
},
{
- "examine": "Dirty:This bone needs a good polish.",
+ "examine": "This bone needs a good polish.",
"durability": null,
"name": "Basilisk bone",
"weight": "0.9",
@@ -75947,7 +71849,7 @@
"id": "7899"
},
{
- "examine": "See article",
+ "examine": "There is a basilisk bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75955,7 +71857,7 @@
"id": "7900"
},
{
- "examine": "Dirty:This bone needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Basilisk bone",
"weight": "0.9",
@@ -75971,7 +71873,7 @@
"id": "7902"
},
{
- "examine": "See article",
+ "examine": "There is a desert lizard bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -75979,7 +71881,7 @@
"id": "7903"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Desert lizard bone",
"weight": "0.9",
@@ -75995,7 +71897,7 @@
"id": "7905"
},
{
- "examine": "See article",
+ "examine": "There is a cave goblin bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -76003,7 +71905,7 @@
"id": "7906"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Cave goblin skull",
"weight": "0.9",
@@ -76019,7 +71921,7 @@
"id": "7908"
},
{
- "examine": "See article",
+ "examine": "There is a big frog bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -76027,7 +71929,7 @@
"id": "7909"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Big frog leg",
"weight": "1",
@@ -76043,7 +71945,7 @@
"id": "7911"
},
{
- "examine": "See article",
+ "examine": "There is a vulture bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -76051,7 +71953,7 @@
"id": "7912"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Vulture wing",
"weight": "0.9",
@@ -76067,7 +71969,7 @@
"id": "7914"
},
{
- "examine": "See article",
+ "examine": "There is a jackal bone in here.",
"durability": null,
"name": "Bone in vinegar",
"weight": "1",
@@ -76075,7 +71977,7 @@
"id": "7915"
},
{
- "examine": "This needs a good polish.",
+ "examine": "This belongs in a museum!",
"durability": null,
"name": "Jackal bone",
"weight": "0.9",
@@ -76110,8 +72012,6 @@
"durability": null,
"name": "Bottle of wine",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1",
"archery_ticket_price": "0",
"id": "7919"
@@ -76127,7 +72027,6 @@
"examine": "This one has clearly been taken down and passed around.",
"durability": null,
"name": "Empty wine bottle",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "7921"
@@ -76136,16 +72035,18 @@
"examine": "The money off voucher has expired.",
"durability": null,
"name": "Al kharid flyer",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "7922"
},
{
"examine": "A ring given to you by the Easter Bunny.",
"durability": null,
+ "attack_audios": "",
"name": "Easter ring",
"archery_ticket_price": "0",
- "id": "7927"
+ "id": "7927",
+ "equip_audio": "",
+ "equipment_slot": "12"
},
{
"examine": "Happy Easter.",
@@ -76153,8 +72054,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7928"
},
@@ -76164,8 +72063,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7929"
},
@@ -76175,8 +72072,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7930"
},
@@ -76186,8 +72081,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7931"
},
@@ -76197,8 +72090,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7932"
},
@@ -76208,8 +72099,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7933"
},
@@ -76221,8 +72110,6 @@
"durability": null,
"name": "Field ration",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "7934"
},
@@ -76243,8 +72130,6 @@
"durability": null,
"name": "Pure essence",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "7936"
},
@@ -76264,8 +72149,6 @@
"durability": null,
"name": "Tortoise shell",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "6.8",
"archery_ticket_price": "0",
"id": "7939"
@@ -76283,8 +72166,6 @@
"examine": "A sturdy sheet of iron.",
"durability": null,
"name": "Iron sheet",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1.75",
"archery_ticket_price": "0",
"id": "7941"
@@ -76293,8 +72174,6 @@
"examine": "Perfect for storing. Not so good for eating.",
"durability": null,
"name": "Fresh monkfish",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "7942"
@@ -76303,21 +72182,17 @@
"examine": "Perfect for storing. Not so good for eating.",
"durability": null,
"name": "Fresh monkfish",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "7943"
},
{
"ge_buy_limit": "20000",
- "examine": "I should try cooking this./Freshly caught. Needs cooking. (Fresh Monkfish)",
+ "examine": "I should try cooking this.",
"grand_exchange_price": "618",
"durability": null,
"name": "Raw monkfish",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "7944"
@@ -76338,8 +72213,6 @@
"durability": null,
"name": "Monkfish",
"tradeable": "true",
- "low_alchemy": "92",
- "high_alchemy": "138",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "7946"
@@ -76407,8 +72280,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "7956"
@@ -76420,7 +72291,6 @@
"durability": null,
"name": "White apron",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.45",
"archery_ticket_price": "0",
"id": "7957"
@@ -76430,9 +72300,7 @@
"examine": "A prop for holding up a tunnel roof.",
"durability": null,
"name": "Mining prop",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7958"
@@ -76442,9 +72310,7 @@
"examine": "A box full of stolen Etceterian items.",
"durability": null,
"name": "Heavy box",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7959"
@@ -76453,8 +72319,6 @@
"examine": "It says 'To the dungeons' on the side.",
"durability": null,
"name": "Empty box",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7960"
},
@@ -76462,8 +72326,6 @@
"examine": "A diary with one/two/three/four/five page(s).",
"durability": null,
"name": "Burnt diary",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7961"
},
@@ -76471,8 +72333,6 @@
"examine": "A diary with one/two/three/four/five page(s).",
"durability": null,
"name": "Burnt diary",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7962"
},
@@ -76480,8 +72340,6 @@
"examine": "A diary with one/two/three/four/five page(s).",
"durability": null,
"name": "Burnt diary",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7963"
},
@@ -76489,8 +72347,6 @@
"examine": "A diary with one/two/three/four/five page(s).",
"durability": null,
"name": "Burnt diary",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7964"
},
@@ -76498,8 +72354,6 @@
"examine": "A diary with one/two/three/four/five page(s).",
"durability": null,
"name": "Burnt diary",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "7965"
},
@@ -76507,9 +72361,7 @@
"examine": "A dwarf-made coal engine. It looks very sturdy.",
"durability": null,
"name": "Engine",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7967"
@@ -76518,8 +72370,6 @@
"examine": "A beam with a pulley attached.",
"durability": null,
"name": "Pulley beam",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7969"
},
@@ -76527,8 +72377,6 @@
"examine": "A long beam with a pulley attached.",
"durability": null,
"name": "Long pulley beam",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7970"
},
@@ -76536,8 +72384,6 @@
"examine": "A very long beam with a pulley attached.",
"durability": null,
"name": "Longer pulley beam",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7971"
},
@@ -76545,9 +72391,7 @@
"examine": "The manual for an AMCE Lift-In-A-Box.",
"durability": null,
"name": "Lift manual",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "7972"
@@ -76556,12 +72400,11 @@
"examine": "A wooden beam.",
"durability": null,
"name": "Beam",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "7973"
},
{
+ "examine": "I should get it stuffed!",
"durability": null,
"name": "Crawling hand",
"archery_ticket_price": "0",
@@ -76572,9 +72415,7 @@
"examine": "I should get it stuffed!",
"durability": null,
"name": "Cockatrice head",
- "low_alchemy": "800",
"tradeable": "false",
- "high_alchemy": "1200",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
@@ -76584,9 +72425,7 @@
"examine": "I should get it stuffed!",
"durability": null,
"name": "Basilisk head",
- "low_alchemy": "1600",
"tradeable": "false",
- "high_alchemy": "2400",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
@@ -76596,9 +72435,7 @@
"examine": "I should get it stuffed!",
"durability": null,
"name": "Kurask head",
- "low_alchemy": "2400",
"tradeable": "false",
- "high_alchemy": "3600",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
@@ -76608,9 +72445,7 @@
"examine": "I should get it stuffed!",
"durability": null,
"name": "Abyssal head",
- "low_alchemy": "4800",
"tradeable": "false",
- "high_alchemy": "7200",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
@@ -76620,9 +72455,7 @@
"examine": "I should get it stuffed!",
"durability": null,
"name": "Kbd heads",
- "low_alchemy": "20000",
"tradeable": "false",
- "high_alchemy": "30000",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
@@ -76636,6 +72469,7 @@
"id": "7981"
},
{
+ "examine": "I could mount this on my wall!",
"durability": null,
"name": "Crawling hand",
"archery_ticket_price": "0",
@@ -76643,67 +72477,57 @@
"id": "7982"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "I could mount this on my wall!",
"durability": null,
"name": "Cockatrice head",
- "low_alchemy": "800",
"tradeable": "false",
- "high_alchemy": "1200",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "7983"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "I could mount this on my wall!",
"durability": null,
"name": "Basilisk head",
- "low_alchemy": "1600",
"tradeable": "false",
- "high_alchemy": "2400",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "7984"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "I could mount this on my wall!",
"durability": null,
"name": "Kurask head",
- "low_alchemy": "2400",
"tradeable": "false",
- "high_alchemy": "3600",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "7985"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "I could mount this on my wall!",
"durability": null,
"name": "Abyssal head",
- "low_alchemy": "4800",
"tradeable": "false",
- "high_alchemy": "7200",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "7986"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "I could mount these on my wall!",
"durability": null,
"name": "Kbd heads",
- "low_alchemy": "20000",
"tradeable": "false",
- "high_alchemy": "30000",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "7987"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "I could mount this on my wall!",
"durability": null,
"name": "Kq head",
"archery_ticket_price": "0",
@@ -76713,18 +72537,14 @@
"examine": "Whopper! I should get this stuffed!",
"durability": null,
"name": "Big bass",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "6",
"archery_ticket_price": "0",
"id": "7989"
},
{
- "examine": "Whopper! I should get this stuffed!",
+ "examine": "I should mount this on my wall!",
"durability": null,
"name": "Big bass",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "6",
"archery_ticket_price": "0",
"id": "7990"
@@ -76733,36 +72553,28 @@
"examine": "Whopper! I should get this stuffed!",
"durability": null,
"name": "Big swordfish",
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"archery_ticket_price": "0",
"id": "7991"
},
{
- "examine": "Whopper! I should get this stuffed!",
+ "examine": "I should mount this on my wall!",
"durability": null,
"name": "Big swordfish",
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"archery_ticket_price": "0",
"id": "7992"
},
{
- "examine": "Its a monster! I should get this stuffed!",
+ "examine": "It's a monster! I should get this stuffed!",
"durability": null,
"name": "Big shark",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "0.7",
"archery_ticket_price": "0",
"id": "7993"
},
{
- "examine": "Its a monster! I should get this stuffed!",
+ "examine": "I should mount this on my wall!",
"durability": null,
"name": "Big shark",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "0.7",
"archery_ticket_price": "0",
"id": "7994"
@@ -76771,8 +72583,6 @@
"examine": "A portrait of King Arthur.",
"durability": null,
"name": "Arthur portrait",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1",
"archery_ticket_price": "0",
"id": "7995"
@@ -76790,8 +72600,6 @@
"examine": "A painting of the staute of King Alvis of Keldagrim",
"durability": null,
"name": "Keldagrim portrait",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1",
"archery_ticket_price": "0",
"id": "7997"
@@ -76809,8 +72617,6 @@
"examine": "The exotic land of the Elves.",
"durability": null,
"name": "Isafdar painting",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"archery_ticket_price": "0",
"id": "8000"
},
@@ -76819,8 +72625,6 @@
"examine": "The tropical coast of karamja.",
"durability": null,
"name": "Karamja painting",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"archery_ticket_price": "0",
"id": "8001"
},
@@ -76850,8 +72654,6 @@
"durability": null,
"name": "Varrock teleport",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "1700",
"archery_ticket_price": "0",
"id": "8007"
},
@@ -76863,8 +72665,6 @@
"durability": null,
"name": "Lumbridge teleport",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "1700",
"archery_ticket_price": "0",
"id": "8008"
},
@@ -76876,8 +72676,6 @@
"durability": null,
"name": "Falador teleport",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "1700",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8009"
@@ -76890,8 +72688,6 @@
"durability": null,
"name": "Camelot teleport",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "1700",
"archery_ticket_price": "0",
"id": "8010"
},
@@ -76903,8 +72699,6 @@
"durability": null,
"name": "Ardougne teleport",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "1700",
"archery_ticket_price": "0",
"id": "8011"
},
@@ -76916,8 +72710,6 @@
"durability": null,
"name": "Watchtower t'port",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "1700",
"archery_ticket_price": "0",
"id": "8012"
},
@@ -77291,8 +73083,6 @@
"durability": null,
"name": "Candles",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "8128"
},
@@ -77369,8 +73159,6 @@
"durability": null,
"name": "Thorny hedge",
"tradeable": "true",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"archery_ticket_price": "0",
"id": "8203"
},
@@ -77380,8 +73168,6 @@
"durability": null,
"name": "Nice hedge",
"tradeable": "true",
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"archery_ticket_price": "0",
"id": "8204"
},
@@ -77391,8 +73177,6 @@
"durability": null,
"name": "Small box hedge",
"tradeable": "true",
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"archery_ticket_price": "0",
"id": "8205"
},
@@ -77402,8 +73186,6 @@
"durability": null,
"name": "Topiary hedge",
"tradeable": "true",
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8206"
@@ -77413,8 +73195,6 @@
"examine": "You can plant this in your garden.",
"durability": null,
"name": "Fancy hedge",
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8207"
@@ -77424,8 +73204,6 @@
"examine": "You can plant this in your garden.",
"durability": null,
"name": "Tall fancy hedge",
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"archery_ticket_price": "0",
"id": "8208"
},
@@ -77435,7 +73213,6 @@
"durability": null,
"name": "Rosemary",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "8210"
},
@@ -77469,7 +73246,6 @@
"durability": null,
"name": "Asgarnian ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "8241"
},
@@ -77480,7 +73256,6 @@
"durability": null,
"name": "Greenman's ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "8242"
},
@@ -77491,7 +73266,6 @@
"durability": null,
"name": "Dragon bitter",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "8243"
@@ -77502,7 +73276,6 @@
"durability": null,
"name": "Chef's delight",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "8244"
},
@@ -77528,6 +73301,7 @@
"id": "8248"
},
{
+ "examine": "A trophy of a mighty slayer!",
"durability": null,
"name": "Crawling hand",
"archery_ticket_price": "0",
@@ -77535,67 +73309,57 @@
"id": "8260"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "A trophy of a mighty slayer!",
"durability": null,
"name": "Cockatrice head",
- "low_alchemy": "800",
"tradeable": "false",
- "high_alchemy": "1200",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "8261"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "A trophy of a mighty slayer!",
"durability": null,
"name": "Basilisk head",
- "low_alchemy": "1600",
"tradeable": "false",
- "high_alchemy": "2400",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "8262"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "A trophy of a mighty slayer!",
"durability": null,
"name": "Kurask head",
- "low_alchemy": "2400",
"tradeable": "false",
- "high_alchemy": "3600",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "8263"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "A trophy of a mighty slayer!!",
"durability": null,
"name": "Abyssal head",
- "low_alchemy": "4800",
"tradeable": "false",
- "high_alchemy": "7200",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "8264"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "A trophy of a mighty dragon-slayer!",
"durability": null,
"name": "Kbd heads",
- "low_alchemy": "20000",
"tradeable": "false",
- "high_alchemy": "30000",
"destroy": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "8265"
},
{
- "examine": "I should get it stuffed!",
+ "examine": "A trophy of a mighty kalphite slayer!",
"durability": null,
"name": "Kq head",
"archery_ticket_price": "0",
@@ -77613,8 +73377,6 @@
"examine": "The magical sword 'Silverlight'. / The magical sword 'Silverlight', stained black with mushroom ink. (during Shadow of the Storm)",
"durability": null,
"name": "Silverlight",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1.8",
"archery_ticket_price": "0",
"attack_speed": "5",
@@ -77625,8 +73387,6 @@
"examine": "This used to belong to King Arthur.",
"durability": null,
"name": "Excalibur",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "2.2",
"archery_ticket_price": "0",
"attack_speed": "5",
@@ -77637,8 +73397,6 @@
"examine": "The magical sword Silverlight, enhanced with the blood of Agrith-Naar.",
"durability": null,
"name": "Darklight",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1.8",
"archery_ticket_price": "0",
"attack_speed": "5",
@@ -77651,8 +73409,6 @@
"durability": null,
"name": "Anti-dragon shield",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "5.4",
"archery_ticket_price": "0",
"id": "8282",
@@ -77664,8 +73420,6 @@
"durability": null,
"name": "Amulet of glory",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "8283",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,0,3,0"
@@ -77675,8 +73429,6 @@
"examine": "The cape worn by members of the Legends Guild.",
"durability": null,
"name": "Cape of legends",
- "low_alchemy": "180",
- "high_alchemy": "270",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "8284",
@@ -77780,8 +73532,6 @@
"durability": null,
"name": "Bagged dead tree",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1",
"archery_ticket_price": "0",
"id": "8417"
@@ -77812,8 +73562,10 @@
},
{
"requirements": "{15,22}",
+ "examine": "You can plant this in your garden.",
"durability": null,
"name": "Bagged oak tree",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "8421"
},
@@ -77848,8 +73600,6 @@
"durability": null,
"name": "Bagged maple tree",
"tradeable": "true",
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8425"
@@ -77868,8 +73618,6 @@
"durability": null,
"name": "Bagged yew tree",
"tradeable": "true",
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8427"
@@ -77888,8 +73636,6 @@
"durability": null,
"name": "Bagged magic tree",
"tradeable": "true",
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8429"
@@ -77909,8 +73655,6 @@
"durability": null,
"name": "Bagged plant 1",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "10",
"archery_ticket_price": "0",
"id": "8431"
@@ -77932,6 +73676,7 @@
"name": "Bagged plant 2",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8433"
},
{
@@ -77949,6 +73694,7 @@
"name": "Bagged plant 3",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8435"
},
{
@@ -77965,9 +73711,8 @@
"durability": null,
"name": "Thorny hedge",
"tradeable": "true",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8437"
},
{
@@ -77984,9 +73729,8 @@
"durability": null,
"name": "Nice hedge",
"tradeable": "true",
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8439"
},
{
@@ -78003,9 +73747,8 @@
"durability": null,
"name": "Small box hedge",
"tradeable": "true",
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8441"
},
{
@@ -78022,8 +73765,6 @@
"durability": null,
"name": "Topiary hedge",
"tradeable": "true",
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8443"
@@ -78041,8 +73782,7 @@
"examine": "You can plant this in your garden.",
"durability": null,
"name": "Fancy hedge",
- "low_alchemy": "10000",
- "high_alchemy": "15000",
+ "tradeable": "true",
"weight": "10",
"archery_ticket_price": "0",
"id": "8445"
@@ -78060,9 +73800,9 @@
"examine": "You can plant this in your garden.",
"durability": null,
"name": "Tall fancy hedge",
- "low_alchemy": "20000",
- "high_alchemy": "30000",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8447"
},
{
@@ -78074,9 +73814,13 @@
},
{
"requirements": "{22,80}",
+ "shop_price": "100000",
+ "examine": "You can plant this in your garden.",
"durability": null,
"name": "Tall box hedge",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8449"
},
{
@@ -78088,9 +73832,13 @@
},
{
"requirements": "{22,66}",
+ "shop_price": "5000",
+ "examine": "You can plant this in your garden.",
"durability": null,
"name": "Bagged rosemary",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8451"
},
{
@@ -78107,9 +73855,8 @@
"durability": null,
"name": "Bagged daffodils",
"tradeable": "true",
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8453"
},
{
@@ -78126,9 +73873,8 @@
"durability": null,
"name": "Bagged bluebells",
"tradeable": "true",
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8455"
},
{
@@ -78145,8 +73891,6 @@
"durability": null,
"name": "Bagged sunflower",
"tradeable": "true",
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8457"
@@ -78165,9 +73909,8 @@
"durability": null,
"name": "Bagged marigolds",
"tradeable": "true",
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"archery_ticket_price": "0",
+ "weight": "10",
"id": "8459"
},
{
@@ -78184,8 +73927,6 @@
"durability": null,
"name": "Bagged roses",
"tradeable": "true",
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "10",
"archery_ticket_price": "0",
"id": "8461"
@@ -78209,11 +73950,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8464",
@@ -78223,11 +73963,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8466",
@@ -78237,11 +73976,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8468",
@@ -78251,11 +73989,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8470",
@@ -78265,11 +74002,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8472",
@@ -78279,11 +74015,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8474",
@@ -78293,11 +74028,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8476",
@@ -78307,11 +74041,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8478",
@@ -78321,11 +74054,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8480",
@@ -78335,11 +74067,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8482",
@@ -78349,11 +74080,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8484",
@@ -78363,11 +74093,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8486",
@@ -78377,11 +74106,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8488",
@@ -78391,11 +74119,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8490",
@@ -78405,11 +74132,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8492",
@@ -78419,11 +74145,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Rune heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8494",
@@ -78434,8 +74159,10 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble crude chair.",
"durability": null,
"name": "Crude wooden chair",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "8496"
},
@@ -78451,9 +74178,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "53",
+ "examine": "A ready-to-assemble wooden chair.",
"durability": null,
"name": "Wooden chair",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8498"
},
{
@@ -78468,9 +74198,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble rocking chair.",
"durability": null,
"name": "Rocking chair",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8500"
},
{
@@ -78485,9 +74218,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "2",
+ "examine": "A ready-to-assemble oak chair.",
"durability": null,
"name": "Oak chair",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8502"
},
{
@@ -78502,9 +74238,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble oak armchair.",
"durability": null,
"name": "Oak armchair",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8504"
},
{
@@ -78519,9 +74258,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble teak armchair.",
"durability": null,
"name": "Teak armchair",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8506"
},
{
@@ -78536,9 +74278,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "8",
+ "examine": "A ready-to-assemble mahogany armchair.",
"durability": null,
"name": "Mahogany armchair",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8508"
},
{
@@ -78553,9 +74298,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble wooden bookcase.",
"durability": null,
"name": "Wooden bookcase",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8510"
},
{
@@ -78570,9 +74318,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble oak bookcase.",
"durability": null,
"name": "Oak bookcase",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8512"
},
{
@@ -78587,9 +74338,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "46",
+ "examine": "A ready-to-assemble mahogany bookcase.",
"durability": null,
"name": "Mahogany b'kcase",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8514"
},
{
@@ -78604,9 +74358,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble beer barrel.",
"durability": null,
"name": "Beer barrel",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8516"
},
{
@@ -78621,9 +74378,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "16900",
+ "examine": "A ready-to-assemble cider barrel.",
"durability": null,
"name": "Cider barrel",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8518"
},
{
@@ -78638,13 +74398,13 @@
{
"shop_price": "3",
"ge_buy_limit": "100",
- "examine": "Probably the finest readily-available ale in Asgarnia.",
+ "examine": "A ready-to-assemble barrel of Asgarnian Ale.",
"grand_exchange_price": "4586",
"durability": null,
"name": "Asgarnian ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8520"
},
{
@@ -78659,13 +74419,13 @@
{
"shop_price": "2",
"ge_buy_limit": "100",
- "examine": "A glass of frothy ale.",
+ "examine": "A ready-to-assemble barrel of Greenman's Ale.",
"grand_exchange_price": "8875",
"durability": null,
"name": "Greenman's ale",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8522"
},
{
@@ -78680,12 +74440,11 @@
{
"shop_price": "2",
"ge_buy_limit": "100",
- "examine": "A glass of bitter.",
+ "examine": "A ready-to-assemble barrel of Dragon Bitter.",
"grand_exchange_price": "10300",
"durability": null,
"name": "Dragon bitter",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "8524"
@@ -78701,13 +74460,13 @@
},
{
"ge_buy_limit": "100",
- "examine": "A fruity, full-bodied ale.",
+ "examine": "A ready-to-assemble barrel of Chef's Delight.",
"grand_exchange_price": "48800",
"durability": null,
"name": "Chef's delight",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8526"
},
{
@@ -78722,9 +74481,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble wooden kitchen table.",
"durability": null,
"name": "Wood kitchen table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8528"
},
{
@@ -78739,9 +74501,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble oak kitchen table.",
"durability": null,
"name": "Oak kitchen table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8530"
},
{
@@ -78756,9 +74521,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble teak kitchen table.",
"durability": null,
"name": "Teak kitchen table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8532"
},
{
@@ -78773,58 +74541,54 @@
{
"durability": null,
"name": "Oak lectern",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8535"
},
{
"durability": null,
"name": "Eagle lectern",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8537"
},
{
"durability": null,
"name": "Demon lectern",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8539"
},
{
"durability": null,
"name": "Teak eagle lectern",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8541"
},
{
"durability": null,
"name": "Teak demon lectern",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8543"
},
{
"durability": null,
"name": "Mahogany eagle",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8545"
},
{
"durability": null,
"name": "Mahogany demon",
- "tradeable": "true",
"archery_ticket_price": "0",
"id": "8547"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble wooden dining table.",
"durability": null,
"name": "Wood dining table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8548"
},
{
@@ -78839,9 +74603,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble oak dining table.",
"durability": null,
"name": "Oak dining table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8550"
},
{
@@ -78856,9 +74623,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble carved oak dining table.",
"durability": null,
"name": "Carved oak table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8552"
},
{
@@ -78873,9 +74643,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "2",
+ "examine": "A ready-to-assemble teak dining table.",
"durability": null,
"name": "Teak table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8554"
},
{
@@ -78890,9 +74663,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "245",
+ "examine": "A ready-to-assemble carved teak dining table.",
"durability": null,
"name": "Carved teak table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8556"
},
{
@@ -78907,9 +74683,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "575",
+ "examine": "A ready-to-assemble mahogany dining table.",
"durability": null,
"name": "Mahogany table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8558"
},
{
@@ -78924,9 +74703,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "379100",
+ "examine": "A ready-to-assemble opulent dining table.",
"durability": null,
"name": "Opulent table",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8560"
},
{
@@ -78941,9 +74723,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "15",
+ "examine": "A ready-to-assemble wooden dining bench.",
"durability": null,
"name": "Wooden bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8562"
},
{
@@ -78958,9 +74743,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "137",
+ "examine": "A ready-to-assemble oak dining bench.",
"durability": null,
"name": "Oak bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8564"
},
{
@@ -78975,9 +74763,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble carved oak dining bench.",
"durability": null,
"name": "Carved oak bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8566"
},
{
@@ -78992,9 +74783,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "18",
+ "examine": "A ready-to-assemble teak dining bench.",
"durability": null,
"name": "Teak dining bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8568"
},
{
@@ -79009,9 +74803,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "2",
+ "examine": "A ready-to-assemble carved teak dining bench.",
"durability": null,
"name": "Carved teak bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8570"
},
{
@@ -79026,9 +74823,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "126",
+ "examine": "A ready-to-assemble mahogany dining bench.",
"durability": null,
"name": "Mahogany bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8572"
},
{
@@ -79043,9 +74843,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "517600",
+ "examine": "A ready-to-assemble gilded mahogany dining bench.",
"durability": null,
"name": "Gilded bench",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8574"
},
{
@@ -79060,9 +74863,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1974",
+ "examine": "A ready-to-assemble wooden bed.",
"durability": null,
"name": "Wooden bed",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8576"
},
{
@@ -79077,9 +74883,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1775",
+ "examine": "A ready-to-assemble oak bed.",
"durability": null,
"name": "Oak bed",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8578"
},
{
@@ -79094,9 +74903,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1433",
+ "examine": "A ready-to-assemble large oak bed.",
"durability": null,
"name": "Large oak bed",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8580"
},
{
@@ -79111,9 +74923,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1442",
+ "examine": "A ready-to-assemble teak bed.",
"durability": null,
"name": "Teak bed",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8582"
},
{
@@ -79128,9 +74943,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "2030",
+ "examine": "A ready-to-assemble large teak bed.",
"durability": null,
"name": "Large teak bed",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8584"
},
{
@@ -79145,9 +74963,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1401",
+ "examine": "A ready-to-assemble four-poster bed.",
"durability": null,
"name": "4-poster",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8586"
},
{
@@ -79162,9 +74983,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "286700",
+ "examine": "A ready-to-assemble gilded four-poster bed.",
"durability": null,
"name": "Gilded 4-poster",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8588"
},
{
@@ -79179,9 +75003,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "384",
+ "examine": "A ready-to-assemble oak clock.",
"durability": null,
"name": "Oak clock",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8590"
},
{
@@ -79196,9 +75023,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "595",
+ "examine": "A ready-to-assemble teak clock.",
"durability": null,
"name": "Teak clock",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8592"
},
{
@@ -79213,9 +75043,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "156100",
+ "examine": "A ready-to-assemble gilded mahogany clock.",
"durability": null,
"name": "Gilded clock",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8594"
},
{
@@ -79230,9 +75063,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "510",
+ "examine": "A ready-to-assemble shaving stand.",
"durability": null,
"name": "Shaving stand",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8596"
},
{
@@ -79247,9 +75083,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "455",
+ "examine": "A ready-to-assemble oak shaving stand.",
"durability": null,
"name": "Oak shaving stand",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8598"
},
{
@@ -79264,9 +75103,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "147",
+ "examine": "A ready-to-assemble oak dresser.",
"durability": null,
"name": "Oak dresser",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8600"
},
{
@@ -79281,9 +75123,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "478",
+ "examine": "A ready-to-assemble teak dresser.",
"durability": null,
"name": "Teak dresser",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8602"
},
{
@@ -79298,9 +75143,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "455",
+ "examine": "A ready-to-assemble fancy teak dresser.",
"durability": null,
"name": "Fancy teak dresser",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8604"
},
{
@@ -79315,9 +75163,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "399",
+ "examine": "A ready-to-assemble mahogany dresser.",
"durability": null,
"name": "Mahogany dresser",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8606"
},
{
@@ -79332,9 +75183,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "138800",
+ "examine": "A ready-to-assemble gilded dresser.",
"durability": null,
"name": "Gilded dresser",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8608"
},
{
@@ -79349,9 +75203,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "21",
+ "examine": "A ready-to-assemble shoe box.",
"durability": null,
"name": "Shoe box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8610"
},
{
@@ -79366,9 +75223,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "47",
+ "examine": "A ready-to-assemble oak chest of drawers.",
"durability": null,
"name": "Oak drawers",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8612"
},
{
@@ -79383,9 +75243,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble oak bedroom wardrobe.",
"durability": null,
"name": "Oak wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8614"
},
{
@@ -79400,9 +75263,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "132",
+ "examine": "A ready-to-assemble teak chest of drawers.",
"durability": null,
"name": "Teak drawers",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8616"
},
{
@@ -79417,9 +75283,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "13",
+ "examine": "A ready-to-assemble teak bedroom wardrobe.",
"durability": null,
"name": "Teak wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8618"
},
{
@@ -79434,9 +75303,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "98",
+ "examine": "A ready-to-assemble mahogany bedroom wardrobe.",
"durability": null,
"name": "Mahogany 'drobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8620"
},
{
@@ -79451,9 +75323,12 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "137700",
+ "examine": "A ready-to-assemble gilded mahogany bedroom wardrobe.",
"durability": null,
"name": "Gilded wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "8622"
},
{
@@ -79830,11 +75705,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8682",
@@ -79844,11 +75718,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8684",
@@ -79858,11 +75731,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8686",
@@ -79872,11 +75744,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8688",
@@ -79886,11 +75757,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8690",
@@ -79900,11 +75770,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8692",
@@ -79914,11 +75783,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8694",
@@ -79928,11 +75796,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8696",
@@ -79942,11 +75809,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8698",
@@ -79956,11 +75822,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8700",
@@ -79970,11 +75835,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8702",
@@ -79984,11 +75848,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8704",
@@ -79998,11 +75861,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8706",
@@ -80012,11 +75874,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8708",
@@ -80026,11 +75887,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8710",
@@ -80040,11 +75900,10 @@
},
{
"remove_head": "true",
+ "requirements": "{1,5}",
"examine": "The colours represent crest.",
"durability": null,
"name": "Steel heraldic helm",
- "low_alchemy": "240",
- "high_alchemy": "360",
"weight": "2.7",
"archery_ticket_price": "0",
"id": "8712",
@@ -80053,12 +75912,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80069,12 +75928,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80085,12 +75944,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80101,12 +75960,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80117,12 +75976,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80133,12 +75992,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80149,12 +76008,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80165,12 +76024,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80181,12 +76040,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80197,12 +76056,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80213,12 +76072,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80229,12 +76088,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80245,12 +76104,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80261,12 +76120,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80277,12 +76136,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80293,12 +76152,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "32583",
@@ -80309,12 +76168,12 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80324,12 +76183,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80339,12 +76198,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80354,12 +76213,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80369,12 +76228,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80384,12 +76243,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80399,12 +76258,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80414,12 +76273,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80429,12 +76288,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80444,12 +76303,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80459,12 +76318,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80474,12 +76333,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80489,12 +76348,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80504,12 +76363,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80519,12 +76378,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80534,12 +76393,12 @@
"bonuses": "0,0,0,-8,-2,13,15,14,-1,14,5,0,0,0,0"
},
{
+ "requirements": "{1,5}",
"shop_price": "850",
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
"weight": "5.4",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "346",
"name": "Steel kiteshield",
@@ -80555,8 +76414,6 @@
"durability": null,
"name": "Oak plank",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "8778"
@@ -80578,8 +76435,6 @@
"durability": null,
"name": "Teak plank",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "8780"
@@ -80601,8 +76456,6 @@
"durability": null,
"name": "Mahogany plank",
"tradeable": "true",
- "low_alchemy": "600",
- "high_alchemy": "900",
"weight": "0.8",
"archery_ticket_price": "0",
"id": "8782"
@@ -80624,8 +76477,6 @@
"durability": null,
"name": "Gold leaf",
"tradeable": "true",
- "low_alchemy": "52000",
- "high_alchemy": "78000",
"weight": "1",
"archery_ticket_price": "0",
"id": "8784"
@@ -80647,8 +76498,6 @@
"durability": null,
"name": "Marble block",
"tradeable": "true",
- "low_alchemy": "130000",
- "high_alchemy": "195000",
"weight": "13.6",
"archery_ticket_price": "0",
"id": "8786"
@@ -80670,8 +76519,6 @@
"durability": null,
"name": "Magic stone",
"tradeable": "true",
- "low_alchemy": "390000",
- "high_alchemy": "585000",
"weight": "1",
"archery_ticket_price": "0",
"id": "8788"
@@ -80693,8 +76540,6 @@
"durability": null,
"name": "Bolt of cloth",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1",
"archery_ticket_price": "0",
"id": "8790"
@@ -80715,8 +76560,6 @@
"durability": null,
"name": "Clockwork",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "1",
"archery_ticket_price": "0",
"id": "8792"
@@ -80734,16 +76577,14 @@
"shop_price": "13",
"ge_buy_limit": "100",
"examine": "Good for cutting wood.",
- "durability": null,
- "low_alchemy": "5",
- "high_alchemy": "7",
- "weight": "1",
- "equipment_slot": "3",
"grand_exchange_price": "64",
+ "durability": null,
"name": "Saw",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "8794"
+ "id": "8794",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "100",
@@ -80782,28 +76623,26 @@
"id": "8838"
},
{
+ "remove_sleeves": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "250",
"examine": "Torso armour from the order of the Void Knights.",
"durability": null,
- "low_alchemy": "19200",
- "high_alchemy": "28800",
- "weight": "6.8",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"name": "Void knight top",
"tradeable": "false",
+ "weight": "6.5",
"archery_ticket_price": "0",
"id": "8839",
- "bonuses": "0,0,0,0,0,45,45,45,45,45,45,0,0,0,0"
+ "bonuses": "0,0,0,0,0,45,45,45,45,45,45,0,0,0,0",
+ "equipment_slot": "4"
},
{
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "250",
"examine": "Leg armour of the order of the Void Knights.",
"durability": null,
"name": "Void knight robe",
"tradeable": "false",
- "low_alchemy": "18000",
- "high_alchemy": "27000",
"weight": "8",
"archery_ticket_price": "0",
"id": "8840",
@@ -80811,16 +76650,18 @@
"equipment_slot": "7"
},
{
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "250",
"examine": "A mace used by the order of the Void Knights.",
"durability": null,
- "low_alchemy": "4800",
- "high_alchemy": "7200",
"weight": "1",
"attack_speed": "5",
"weapon_interface": "1",
+ "equip_audio": "2246",
"render_anim": "2553",
"equipment_slot": "3",
+ "attack_anims": "401,401,401,401",
+ "attack_audios": "2508,2508,25092508",
"name": "Void knight mace",
"tradeable": "false",
"archery_ticket_price": "0",
@@ -80828,13 +76669,12 @@
"bonuses": "22,0,41,8,0,2,2,2,2,2,0,38,6,0,0"
},
{
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "150",
"examine": "Gloves as used by the order of the Void Knights.",
"durability": null,
"name": "Void knight gloves",
"tradeable": "false",
- "low_alchemy": "2420",
- "high_alchemy": "3631",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "8842",
@@ -80849,6 +76689,7 @@
"archery_ticket_price": "0",
"id": "8844",
"bonuses": "3,2,1,-3,-2,3,2,1,-3,-2,1,0,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -80860,6 +76701,7 @@
"archery_ticket_price": "0",
"id": "8845",
"bonuses": "5,4,3,-3,-2,5,4,3,-3,-2,2,0,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -80872,6 +76714,7 @@
"archery_ticket_price": "0",
"id": "8846",
"bonuses": "7,6,5,-3,-2,7,6,5,-3,-2,3,1,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -80884,6 +76727,7 @@
"archery_ticket_price": "0",
"id": "8847",
"bonuses": "9,8,7,-3,-2,9,8,7,-3,-2,4,2,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -80896,6 +76740,7 @@
"archery_ticket_price": "0",
"id": "8848",
"bonuses": "10,9,8,-3,-2,10,9,8,-3,-2,5,3,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -80908,6 +76753,7 @@
"archery_ticket_price": "0",
"id": "8849",
"bonuses": "13,12,11,-3,-2,13,12,11,-3,-2,6,4,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -80920,6 +76766,7 @@
"archery_ticket_price": "0",
"id": "8850",
"bonuses": "20,19,18,-3,-2,20,19,18,-3,-2,8,5,0,0,0",
+ "equip_audio": "2238",
"defence_anim": "4177",
"equipment_slot": "5"
},
@@ -81053,11 +76900,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -81086,11 +76932,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -81119,11 +76964,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -81152,11 +76996,10 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.4",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "378",
"equipment_slot": "3",
@@ -81185,7 +77028,6 @@
"examine": "This fires crossbow bolts.",
"walk_anim": "4226",
"has_special": "true",
- "low_alchemy": "800",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "4227",
@@ -81203,7 +77045,6 @@
"requirements": "{4,28}",
"shop_price": "2000",
"durability": null,
- "high_alchemy": "1200",
"weight": "2.2",
"weapon_interface": "17",
"render_anim": "175",
@@ -81225,16 +77066,14 @@
"shop_price": "4",
"ge_buy_limit": "10000",
"examine": "Good if you have a bone crossbow!",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
- "equipment_slot": "13",
"grand_exchange_price": "12",
+ "durability": null,
"name": "Bone bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "8882",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,49",
+ "equipment_slot": "13"
},
{
"examine": "See article",
@@ -81245,7 +77084,7 @@
},
{
"bankable": "false",
- "examine": "100,000 or more: \"X x coins\" where X is the exact number of coins in the stack.",
+ "examine": "Lovely money!",
"durability": null,
"name": "Coins",
"archery_ticket_price": "0",
@@ -81263,8 +77102,7 @@
"ge_buy_limit": "10",
"examine": "A magic cave horror mask.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
+ "rare_item": "true",
"weight": "10",
"equipment_slot": "0",
"grand_exchange_price": "989400",
@@ -81286,17 +77124,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (9)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8903",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81308,17 +77144,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (8)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8905",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81330,17 +77164,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (7)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8907",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81352,17 +77184,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (6)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8909",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81374,17 +77204,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (5)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8911",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81396,17 +77224,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (4)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8913",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81418,17 +77244,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (3)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8915",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81440,17 +77264,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (2)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8917",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81462,17 +77284,15 @@
{
"requirements": "{1,20}-{2,10}",
"examine": "A magic cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "583700",
+ "durability": null,
"name": "Black mask (1)",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8919",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -81485,17 +77305,15 @@
"requirements": "{1,20}-{2,10}",
"ge_buy_limit": "10",
"examine": "An inert-seeming cave horror mask.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "956100",
+ "durability": null,
"name": "Black mask",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "8921",
- "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0"
+ "bonuses": "0,0,0,-3,-1,9,10,8,-1,9,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "10",
@@ -81512,8 +77330,6 @@
"examine": "A stick on a string... pure style.",
"durability": null,
"name": "Witchwood icon",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "8923",
"bonuses": "0,0,0,1,0,0,0,0,0,0,0,0,1,0,0",
@@ -81521,12 +77337,10 @@
},
{
"remove_head": "true",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A white bandana and a patch for the right eye.",
"durability": null,
"name": "Bandana and eyepatch",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "8924",
@@ -81534,12 +77348,10 @@
},
{
"remove_head": "true",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A red bandana and a patch for the right eye.",
"durability": null,
"name": "Bandana and eyepatch",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "8925",
@@ -81547,12 +77359,10 @@
},
{
"remove_head": "true",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A blue bandana and a patch for the right eye.",
"durability": null,
"name": "Bandana and eyepatch",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "8926",
@@ -81560,12 +77370,10 @@
},
{
"remove_head": "true",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A brown bandana and a patch for the right eye.",
"durability": null,
"name": "Bandana and eyepatch",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "8927",
@@ -81576,8 +77384,6 @@
"durability": null,
"name": "Hat and eyepatch",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "8928",
@@ -81588,8 +77394,6 @@
"examine": "Tied together so they don't come apart.",
"durability": null,
"name": "Crabclaw and hook",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"archery_ticket_price": "0",
"id": "8929",
@@ -81645,8 +77449,6 @@
"durability": null,
"name": "Blue flowers",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8936"
},
@@ -81662,8 +77464,6 @@
"durability": null,
"name": "Red flowers",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8938"
},
@@ -81728,8 +77528,6 @@
"durability": null,
"name": "Pirate bandana",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "8949",
@@ -81741,8 +77539,6 @@
"durability": null,
"name": "Pirate hat",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "8950",
"equipment_slot": "0"
@@ -81760,9 +77556,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Blue naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8952",
@@ -81774,9 +77568,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Green naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8953",
@@ -81788,9 +77580,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Red naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8954",
@@ -81802,9 +77592,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Brown naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8955",
@@ -81816,9 +77604,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Black naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8956",
@@ -81830,9 +77616,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Purple naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8957",
@@ -81844,9 +77628,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Grey naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "8958",
@@ -81857,8 +77639,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Blue tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8959",
"equipment_slot": "0"
@@ -81868,8 +77648,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Green tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8960",
"equipment_slot": "0"
@@ -81879,8 +77657,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Red tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8961",
"equipment_slot": "0"
@@ -81890,8 +77666,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Brown tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8962",
"equipment_slot": "0"
@@ -81901,8 +77675,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Black tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8963",
"equipment_slot": "0"
@@ -81912,8 +77684,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Purple tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8964",
"equipment_slot": "0"
@@ -81923,8 +77693,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Grey tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "8965",
"equipment_slot": "0"
@@ -81935,8 +77703,6 @@
"examine": "The flag of The Cutthroat.",
"walk_anim": "1422",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "6",
"turn90ccw_anim": "1425",
"weapon_interface": "14",
@@ -81956,8 +77722,6 @@
"examine": "The flag of The Guilded Smile.",
"walk_anim": "1422",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "6",
"turn90ccw_anim": "1425",
"attack_speed": "2",
@@ -81978,8 +77742,6 @@
"examine": "The flag of The Bronze Fist.",
"walk_anim": "1422",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"weight": "6",
"turn90ccw_anim": "1425",
"weapon_interface": "14",
@@ -81999,8 +77761,6 @@
"examine": "The flag of The Lucky Shot.",
"walk_anim": "1422",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "6",
"turn90ccw_anim": "1425",
"weapon_interface": "14",
@@ -82141,7 +77901,6 @@
"durability": null,
"name": "Bucket",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "8986"
@@ -82158,8 +77917,6 @@
"examine": "Apparently good for brewing.",
"durability": null,
"name": "The stuff",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "8988"
@@ -82183,8 +77940,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Blue navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8991",
"equipment_slot": "7"
@@ -82194,8 +77949,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Green navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8992",
"equipment_slot": "7"
@@ -82205,8 +77958,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Red navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8993",
"equipment_slot": "7"
@@ -82216,8 +77967,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Brown navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8994",
"equipment_slot": "7"
@@ -82227,8 +77976,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Black navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8995",
"equipment_slot": "7"
@@ -82238,8 +77985,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Purple navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8996",
"equipment_slot": "7"
@@ -82249,8 +77994,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Grey navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "8997",
"equipment_slot": "7"
@@ -82298,7 +78041,6 @@
"durability": null,
"name": "Security book",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9003"
},
@@ -82309,7 +78051,6 @@
"durability": null,
"name": "Stronghold notes",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9004"
},
@@ -82323,6 +78064,7 @@
"archery_ticket_price": "0",
"id": "9005",
"bonuses": "0,0,0,-3,-1,1,2,3,0,0,0,0,0,0,0",
+ "equip_audio": "2237",
"equipment_slot": "10"
},
{
@@ -82403,6 +78145,7 @@
"attack_speed": "5",
"weapon_interface": "3",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "You can obtain another Sceptre by collecting all four pieces from the Stronghold of Security.",
@@ -82433,8 +78176,6 @@
"examine": "Oversized nail clippings.",
"durability": null,
"name": "Gorak claws",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "9016"
},
@@ -82442,8 +78183,6 @@
"examine": "A flower with magical properties.",
"durability": null,
"name": "Star flower",
- "low_alchemy": "30",
- "high_alchemy": "45",
"archery_ticket_price": "0",
"id": "9017"
},
@@ -82451,8 +78190,6 @@
"examine": "Ground-down gorak claws.",
"durability": null,
"name": "Gorak claw powder",
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "1",
"archery_ticket_price": "0",
"id": "9018"
@@ -82482,8 +78219,6 @@
"durability": null,
"name": "Ivory comb",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "9026"
},
@@ -82503,8 +78238,6 @@
"durability": null,
"name": "Golden scarab",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9028"
},
@@ -82524,8 +78257,6 @@
"durability": null,
"name": "Stone scarab",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.07",
"archery_ticket_price": "0",
"id": "9030"
@@ -82546,8 +78277,6 @@
"durability": null,
"name": "Pottery scarab",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "9032"
@@ -82568,8 +78297,6 @@
"durability": null,
"name": "Golden statuette",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9034"
},
@@ -82589,8 +78316,6 @@
"durability": null,
"name": "Pottery statuette",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "9036"
@@ -82611,8 +78336,6 @@
"durability": null,
"name": "Stone statuette",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "9038"
},
@@ -82632,8 +78355,6 @@
"durability": null,
"name": "Gold seal",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9040"
},
@@ -82653,8 +78374,6 @@
"durability": null,
"name": "Stone seal",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "9042"
},
@@ -82668,32 +78387,30 @@
"id": "9043"
},
{
+ "requirements": "{0,30}-{6,30}",
"ge_buy_limit": "10",
"turn90cw_anim": "1207",
- "examine": "Fully charged: This sceptre is fully charged.",
+ "examine": "This sceptre is fully charged.",
"walk_anim": "1205",
- "low_alchemy": "40",
+ "durability": null,
+ "destroy": "true",
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "3",
"turn180_anim": "1206",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "1000000",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Pharaoh's sceptre",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "9044",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0",
- "requirements": "{0,30}-{6,30}",
- "durability": null,
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "2",
- "weapon_interface": "3",
- "render_anim": "28",
- "name": "Pharaoh's sceptre"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0"
},
{
"ge_buy_limit": "10",
@@ -82705,31 +78422,29 @@
"id": "9045"
},
{
+ "requirements": "{0,30}-{6,30}",
"turn90cw_anim": "1207",
- "examine": "Fully charged: This sceptre is fully charged.",
+ "examine": "This sceptre has two charges left.",
"walk_anim": "1205",
- "low_alchemy": "40",
+ "durability": null,
+ "destroy": "true",
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "3",
"turn180_anim": "1206",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "27",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Pharaoh's sceptre",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "9046",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0",
- "requirements": "{0,30}-{6,30}",
- "durability": null,
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "2",
- "weapon_interface": "3",
- "render_anim": "28",
- "name": "Pharaoh's sceptre"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0"
},
{
"durability": null,
@@ -82739,31 +78454,29 @@
"id": "9047"
},
{
+ "requirements": "{0,30}-{6,30}",
"turn90cw_anim": "1207",
- "examine": "Fully charged: This sceptre is fully charged.",
+ "examine": "This sceptre has one charge left.",
"walk_anim": "1205",
- "low_alchemy": "40",
+ "durability": null,
+ "destroy": "true",
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "3",
"turn180_anim": "1206",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "27",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Pharaoh's sceptre",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "9048",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0",
- "requirements": "{0,30}-{6,30}",
- "durability": null,
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "2",
- "weapon_interface": "3",
- "render_anim": "28",
- "name": "Pharaoh's sceptre"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0"
},
{
"durability": null,
@@ -82773,32 +78486,30 @@
"id": "9049"
},
{
+ "requirements": "{0,30}-{6,30}",
"ge_buy_limit": "10",
"turn90cw_anim": "1207",
- "examine": "Fully charged: This sceptre is fully charged.",
+ "examine": "This sceptre has no charges left.",
"walk_anim": "1205",
- "low_alchemy": "40",
+ "durability": null,
+ "destroy": "true",
+ "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
+ "weapon_interface": "3",
"turn180_anim": "1206",
+ "render_anim": "28",
"equipment_slot": "3",
"grand_exchange_price": "985800",
"stand_anim": "813",
"tradeable": "true",
+ "name": "Pharaoh's sceptre",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "9050",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0",
- "requirements": "{0,30}-{6,30}",
- "durability": null,
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "2",
- "weapon_interface": "3",
- "render_anim": "28",
- "name": "Pharaoh's sceptre"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,0,0,0"
},
{
"ge_buy_limit": "10",
@@ -82832,8 +78543,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Red goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "9054",
@@ -82843,8 +78552,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Black goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "9055",
@@ -82854,8 +78561,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Yellow goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "9056",
@@ -82865,8 +78570,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Green goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "9057",
@@ -82876,8 +78579,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Purple goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "9058",
@@ -82887,8 +78588,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "Pink goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "9059",
@@ -82898,8 +78597,6 @@
"examine": "A mystical lantern casting a green beam.",
"durability": null,
"name": "Emerald lantern",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "9064"
@@ -82908,8 +78605,6 @@
"examine": "A mystical lantern casting a green beam.",
"durability": null,
"name": "Emerald lantern",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "9065",
@@ -82919,8 +78614,6 @@
"examine": "A roughly circular disc of glass.",
"durability": null,
"name": "Emerald lens",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "9066"
},
@@ -82937,8 +78630,6 @@
"examine": "Mystical headgear.",
"durability": null,
"name": "Moonclan helm",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "9068",
"bonuses": "0,0,0,3,-5,3,3,3,3,-5,0,0,0,0,0",
@@ -82949,8 +78640,6 @@
"examine": "A mystical hat.",
"durability": null,
"name": "Moonclan hat",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1",
"archery_ticket_price": "0",
"id": "9069",
@@ -82963,8 +78652,6 @@
"examine": "Provides good protection.",
"durability": null,
"name": "Moonclan armour",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "4",
"archery_ticket_price": "0",
"id": "9070",
@@ -82976,8 +78663,6 @@
"examine": "This should protect my legs.",
"durability": null,
"name": "Moonclan skirt",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "3",
"archery_ticket_price": "0",
"id": "9071",
@@ -82989,8 +78674,6 @@
"examine": "These should keep my hands safe.",
"durability": null,
"name": "Moonclan gloves",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "9072",
"bonuses": "0,0,0,2,-5,2,2,2,2,-5,2,0,0,0,0",
@@ -83001,8 +78684,6 @@
"examine": "Groovy foot protection.",
"durability": null,
"name": "Moonclan boots",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "9073",
"bonuses": "0,0,0,2,-5,2,2,2,2,-5,0,0,0,0,0",
@@ -83013,8 +78694,6 @@
"examine": "A mystical cape.",
"durability": null,
"name": "Moonclan cape",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "9074",
"bonuses": "0,0,0,2,-2,0,1,1,2,-2,0,0,0,0,0",
@@ -83028,8 +78707,6 @@
"durability": null,
"name": "Astral rune",
"tradeable": "true",
- "low_alchemy": "29",
- "high_alchemy": "44",
"archery_ticket_price": "0",
"id": "9075"
},
@@ -83064,8 +78741,6 @@
"examine": "The tooth, the whole tooth, and nothing but the tooth.",
"durability": null,
"name": "Suqah tooth",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "9079"
},
@@ -83073,8 +78748,6 @@
"examine": "An untanned piece of suqah hide.",
"durability": null,
"name": "Suqah hide",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "9080"
},
@@ -83082,8 +78755,6 @@
"examine": "A piece of Suqah hide that has been expertly tanned into leather.",
"durability": null,
"name": "Suqah leather",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "3",
"archery_ticket_price": "0",
"id": "9081"
@@ -83108,30 +78779,31 @@
"equipment_slot": "2"
},
{
- "requirements": "{6,65}",
- "shop_price": "30000",
"turn90cw_anim": "1207",
"examine": "A Moonclan staff.",
"walk_anim": "1205",
- "durability": null,
- "destroy": "true",
- "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "weapon_interface": "1",
"turn180_anim": "1206",
- "render_anim": "28",
"equipment_slot": "3",
"destroy_message": "The Oneiromancer might be able to help you get another.",
"stand_anim": "813",
- "attack_audios": "2555,0,0,0",
- "name": "Lunar staff",
"tradeable": "false",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "9084",
"stand_turn_anim": "1209",
- "bonuses": "3,2,16,13,0,2,3,2,13,1,0,15,3,0,0"
+ "bonuses": "3,2,16,13,0,2,3,2,13,1,0,15,3,0,0",
+ "requirements": "{6,65}",
+ "shop_price": "30000",
+ "durability": null,
+ "destroy": "true",
+ "weight": "2.2",
+ "weapon_interface": "1",
+ "equip_audio": "2247",
+ "render_anim": "28",
+ "attack_audios": "2555,0,0,0",
+ "name": "Lunar staff"
},
{
"destroy_message": "You'll have to get another from the Oneiromancer.",
@@ -83150,8 +78822,6 @@
"durability": null,
"name": "Vial of water",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "0.02",
"archery_ticket_price": "0",
"id": "9086"
@@ -83194,13 +78864,12 @@
"examine": "A staff enchanted by air.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"destroy": "true",
"weight": "1",
"turn90ccw_anim": "1208",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "You can reclaim this item from the place you found it.",
@@ -83220,13 +78889,12 @@
"examine": "A staff enchanted by air and fire.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"destroy": "true",
"weight": "1",
"turn90ccw_anim": "1208",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "You can reclaim this item from the place you found it.",
@@ -83246,13 +78914,12 @@
"examine": "A staff enchanted by air, fire and water.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"destroy": "true",
"weight": "1",
"turn90ccw_anim": "1208",
"weapon_interface": "1",
"turn180_anim": "1206",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "You can reclaim this item from the place you found it.",
@@ -83286,8 +78953,6 @@
"shop_price": "15000",
"examine": "A mystical helmet.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.9",
"absorb": "3,1,0",
@@ -83305,8 +78970,6 @@
"shop_price": "120000",
"examine": "Provides good protection.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "4.5",
"absorb": "6,3,0",
@@ -83324,8 +78987,6 @@
"shop_price": "80000",
"examine": "These should protect my legs.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "3.65",
"absorb": "4,2,0",
@@ -83342,8 +79003,6 @@
"shop_price": "10000",
"examine": "These should keep my hands safe.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.9",
"equipment_slot": "9",
@@ -83359,8 +79018,6 @@
"shop_price": "10000",
"examine": "Mystical foot protection.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.9",
"equipment_slot": "10",
@@ -83376,8 +79033,6 @@
"shop_price": "12000",
"examine": "Oooo pretty!",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
"destroy": "true",
"weight": "0.4",
"equipment_slot": "1",
@@ -83389,51 +79044,44 @@
"bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
},
{
+ "destroy_message": "The Oneiromancer might be able to help you get another.",
"requirements": "{1,40}-{6,65}",
"shop_price": "4000",
"examine": "Awesome.",
"durability": null,
- "low_alchemy": "12",
- "high_alchemy": "18",
- "destroy": "true",
- "equipment_slot": "2",
- "destroy_message": "The Oneiromancer might be able to help you get another.",
"name": "Lunar amulet",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
"id": "9102",
- "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0"
+ "bonuses": "0,0,0,1,0,0,0,0,1,0,0,0,0,0,0",
+ "equipment_slot": "2"
},
{
"destroy_message": "The Oneiromancer might be able to help you get another.",
"examine": "I'll be the talk of the town with this... maybe.",
"durability": null,
"name": "A special tiara",
- "low_alchemy": "12",
"tradeable": "false",
- "high_alchemy": "18",
"destroy": "true",
"archery_ticket_price": "0",
"id": "9103"
},
{
+ "destroy_message": "The Oneiromancer might be able to help you get another.",
"requirements": "{1,40}-{6,65}",
"shop_price": "2000",
"examine": "A mysterious ring that can fill the wearer with magical power.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "equipment_slot": "12",
- "destroy_message": "The Oneiromancer might be able to help you get another.",
"name": "Lunar ring",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
"id": "9104",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
- "requirements": "",
"durability": null,
"name": "Astral tiara",
"archery_ticket_price": "0",
@@ -83455,101 +79103,89 @@
"shop_price": "60",
"ge_buy_limit": "25000",
"examine": "Iron crossbow bolts.",
- "durability": null,
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "41",
+ "durability": null,
"name": "Iron bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9140",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46",
+ "equipment_slot": "13"
},
{
"requirements": "{4,31}",
"shop_price": "150",
"ge_buy_limit": "10000",
"examine": "Steel crossbow bolts.",
- "durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "90",
+ "durability": null,
"name": "Steel bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9141",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"shop_price": "32",
"ge_buy_limit": "10000",
"examine": "Mithril crossbow bolts.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "108",
+ "durability": null,
"name": "Mithril bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9142",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
"shop_price": "23",
"ge_buy_limit": "10000",
"examine": "Adamantite crossbow bolts.",
- "durability": null,
- "low_alchemy": "23",
- "high_alchemy": "34",
- "equipment_slot": "13",
"grand_exchange_price": "210",
+ "durability": null,
"name": "Adamant bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9143",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,100"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,100",
+ "equipment_slot": "13"
},
{
"requirements": "{4,61}",
"ge_buy_limit": "10000",
"examine": "Runite crossbow bolts.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "13",
"grand_exchange_price": "627",
+ "durability": null,
"name": "Rune bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9144",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115",
+ "equipment_slot": "13"
},
{
"requirements": "{4,26}",
"shop_price": "6",
"ge_buy_limit": "10000",
"examine": "Silver crossbow bolts.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "equipment_slot": "13",
"grand_exchange_price": "8",
+ "durability": null,
"name": "Silver bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9145",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36",
+ "equipment_slot": "13"
},
{
"ge_buy_limit": "500",
"turn90cw_anim": "821",
"examine": "A bronze crossbow.",
"walk_anim": "4226",
- "low_alchemy": "29",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "4227",
@@ -83566,9 +79202,9 @@
"bonuses": "0,0,0,0,18,0,0,0,0,0,0,0,0,0,0",
"shop_price": "92",
"durability": null,
- "high_alchemy": "43",
"weight": "4",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Bronze crossbow"
@@ -83588,13 +79224,12 @@
"examine": "A blurite crossbow.",
"walk_anim": "4226",
"durability": null,
- "low_alchemy": "37",
- "high_alchemy": "55",
"weight": "4",
"turn90ccw_anim": "822",
"attack_speed": "6",
"weapon_interface": "17",
"turn180_anim": "4227",
+ "equip_audio": "2244",
"render_anim": "175",
"equipment_slot": "3",
"attack_anims": "4230,4230,4230,4230",
@@ -83612,7 +79247,6 @@
"turn90cw_anim": "821",
"examine": "An iron crossbow.",
"walk_anim": "4226",
- "low_alchemy": "62",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "4227",
@@ -83630,9 +79264,9 @@
"requirements": "{4,26}",
"shop_price": "157",
"durability": null,
- "high_alchemy": "94",
"weight": "4",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Iron crossbow"
@@ -83651,7 +79285,6 @@
"turn90cw_anim": "821",
"examine": "A steel crossbow.",
"walk_anim": "4226",
- "low_alchemy": "144",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "4227",
@@ -83668,9 +79301,9 @@
"bonuses": "0,0,0,0,54,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,31}",
"durability": null,
- "high_alchemy": "216",
"weight": "5",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Steel crossbow"
@@ -83689,8 +79322,8 @@
"turn90cw_anim": "821",
"examine": "A mithril crossbow",
"walk_anim": "4226",
- "low_alchemy": "313",
"turn90ccw_anim": "822",
+ "attack_speed": "6",
"turn180_anim": "4227",
"defence_anim": "424",
"equipment_slot": "3",
@@ -83705,9 +79338,9 @@
"bonuses": "0,0,0,0,66,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,36}",
"durability": null,
- "high_alchemy": "469",
"weight": "6",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Mith crossbow"
@@ -83726,7 +79359,6 @@
"turn90cw_anim": "821",
"examine": "An adamantite crossbow.",
"walk_anim": "4226",
- "low_alchemy": "706",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "4227",
@@ -83744,9 +79376,9 @@
"requirements": "{4,46}",
"shop_price": "2244",
"durability": null,
- "high_alchemy": "1060",
"weight": "6",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Adamant crossbow"
@@ -83765,7 +79397,6 @@
"turn90cw_anim": "821",
"examine": "A runite crossbow.",
"walk_anim": "4226",
- "low_alchemy": "6480",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "4227",
@@ -83783,9 +79414,9 @@
"requirements": "{4,61}",
"shop_price": "16200",
"durability": null,
- "high_alchemy": "9720",
"weight": "6",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"lendable": "true",
"attack_audios": "2700,0,0,0",
@@ -83807,8 +79438,6 @@
"durability": null,
"name": "Jade bolt tips",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "9187"
},
@@ -83819,8 +79448,6 @@
"durability": null,
"name": "Topaz bolt tips",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "9188"
},
@@ -83831,8 +79458,6 @@
"durability": null,
"name": "Sapphire bolt tips",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "10",
"archery_ticket_price": "0",
"id": "9189"
},
@@ -83843,8 +79468,6 @@
"durability": null,
"name": "Emerald bolt tips",
"tradeable": "true",
- "low_alchemy": "13",
- "high_alchemy": "19",
"archery_ticket_price": "0",
"id": "9190"
},
@@ -83855,8 +79478,6 @@
"durability": null,
"name": "Ruby bolt tips",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "40",
"archery_ticket_price": "0",
"id": "9191"
},
@@ -83867,8 +79488,6 @@
"durability": null,
"name": "Diamond bolt tips",
"tradeable": "true",
- "low_alchemy": "53",
- "high_alchemy": "79",
"archery_ticket_price": "0",
"id": "9192"
},
@@ -83879,8 +79498,6 @@
"durability": null,
"name": "Dragon bolt tips",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "9193"
},
@@ -83893,8 +79510,6 @@
"durability": null,
"name": "Onyx bolt tips",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "9194"
},
@@ -83905,8 +79520,6 @@
"durability": null,
"name": "Opal bolts (e)",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "4",
"archery_ticket_price": "0",
"id": "9236",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,14",
@@ -83917,8 +79530,6 @@
"examine": "Enchanted Jade tipped Blurite Crossbow Bolts.",
"durability": null,
"name": "Jade bolts (e)",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "9237",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,30",
@@ -83928,122 +79539,106 @@
"requirements": "{4,26}",
"ge_buy_limit": "25000",
"examine": "Enchanted Pearl tipped Iron Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "equipment_slot": "13",
"grand_exchange_price": "36",
+ "durability": null,
"name": "Pearl bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9238",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,48"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,48",
+ "equipment_slot": "13"
},
{
"requirements": "{4,31}",
"ge_buy_limit": "25000",
"examine": "Enchanted Red Topaz tipped Steel Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "44",
+ "durability": null,
"name": "Topaz bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9239",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,66"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,66",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"shop_price": "103",
"ge_buy_limit": "25000",
"examine": "Enchanted Sapphire tipped Mithril Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "equipment_slot": "13",
"grand_exchange_price": "95",
+ "durability": null,
"name": "Sapphire bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9240",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,83"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,83",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"ge_buy_limit": "25000",
"examine": "Enchanted Emerald tipped Mithril Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "23",
- "high_alchemy": "35",
- "equipment_slot": "13",
"grand_exchange_price": "304",
+ "durability": null,
"name": "Emerald bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9241",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,85"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,85",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
"ge_buy_limit": "25000",
"examine": "Enchanted Ruby tipped Adamantite Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "55",
- "high_alchemy": "82",
- "equipment_slot": "13",
"grand_exchange_price": "450",
+ "durability": null,
"name": "Ruby bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9242",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,103"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,103",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
"ge_buy_limit": "25000",
"examine": "Enchanted Diamond tipped Adamantite Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "84",
- "high_alchemy": "126",
- "equipment_slot": "13",
"grand_exchange_price": "1631",
+ "durability": null,
"name": "Diamond bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9243",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,105"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,105",
+ "equipment_slot": "13"
},
{
"requirements": "{4,61}",
"ge_buy_limit": "25000",
"examine": "Enchanted Dragonstone tipped Runite Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "425",
- "high_alchemy": "637",
- "equipment_slot": "13",
"grand_exchange_price": "3217",
+ "durability": null,
"name": "Dragon bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9244",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,117"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,117",
+ "equipment_slot": "13"
},
{
"requirements": "{4,61}",
"ge_buy_limit": "25000",
"examine": "Enchanted Onyx tipped runite Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "equipment_slot": "13",
"grand_exchange_price": "8870",
+ "durability": null,
"name": "Onyx bolts (e)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9245",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,120"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,120",
+ "equipment_slot": "13"
},
{
"requirements": "{4,16}",
@@ -84059,93 +79654,82 @@
"shop_price": "60",
"ge_buy_limit": "25000",
"examine": "Iron crossbow bolts.",
- "durability": null,
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "88",
+ "durability": null,
"name": "Iron bolts (p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9287",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46",
+ "equipment_slot": "13"
},
{
"requirements": "{4,31}",
"ge_buy_limit": "10000",
"examine": "Steel crossbow bolts.",
- "durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "132",
+ "durability": null,
"name": "Steel bolts (p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9288",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"shop_price": "32",
"ge_buy_limit": "10000",
"examine": "Mithril crossbow bolts.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "146",
+ "durability": null,
"name": "Mithril bolts (p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9289",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
"shop_price": "23",
"ge_buy_limit": "10000",
"examine": "Adamantite crossbow bolts.",
- "durability": null,
- "low_alchemy": "23",
- "high_alchemy": "34",
- "equipment_slot": "13",
"grand_exchange_price": "302",
+ "durability": null,
"name": "Adamant bolts (p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9290",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,100"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,100",
+ "equipment_slot": "13"
},
{
"requirements": "{4,61}",
"ge_buy_limit": "10000",
"examine": "Runite crossbow bolts.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "13",
"grand_exchange_price": "734",
+ "durability": null,
"name": "Runite bolts (p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9291",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115",
+ "equipment_slot": "13"
},
{
"requirements": "{4,26}",
"shop_price": "6",
"ge_buy_limit": "10000",
"examine": "Silver crossbow bolts.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "equipment_slot": "13",
"grand_exchange_price": "34",
+ "durability": null,
"name": "Silver bolts (p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9292",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36",
+ "equipment_slot": "13"
},
{
"requirements": "{4,16}",
@@ -84161,46 +79745,41 @@
"shop_price": "60",
"ge_buy_limit": "25000",
"examine": "Iron crossbow bolts.",
- "durability": null,
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "185",
+ "durability": null,
"name": "Iron bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9294",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46",
+ "equipment_slot": "13"
},
{
"requirements": "{4,31}",
"ge_buy_limit": "10000",
"examine": "Steel crossbow bolts.",
- "durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "215",
+ "durability": null,
"name": "Steel bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9295",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"shop_price": "32",
"ge_buy_limit": "10000",
"examine": "Mithril crossbow bolts.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "296",
+ "durability": null,
"name": "Mithril bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9296",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
@@ -84217,32 +79796,28 @@
"requirements": "{4,61}",
"ge_buy_limit": "10000",
"examine": "Runite crossbow bolts.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "13",
"grand_exchange_price": "1130",
+ "durability": null,
"name": "Runite bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9298",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115",
+ "equipment_slot": "13"
},
{
"requirements": "{4,26}",
"shop_price": "6",
"ge_buy_limit": "10000",
"examine": "Silver crossbow bolts.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "equipment_slot": "13",
"grand_exchange_price": "129",
+ "durability": null,
"name": "Silver bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9299",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36",
+ "equipment_slot": "13"
},
{
"requirements": "{4,16}",
@@ -84258,46 +79833,41 @@
"shop_price": "60",
"ge_buy_limit": "25000",
"examine": "Iron crossbow bolts.",
- "durability": null,
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "1136",
+ "durability": null,
"name": "Iron bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9301",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,46",
+ "equipment_slot": "13"
},
{
"requirements": "{4,31}",
"ge_buy_limit": "10000",
"examine": "Steel crossbow bolts.",
- "durability": null,
- "low_alchemy": "3",
- "high_alchemy": "4",
- "equipment_slot": "13",
"grand_exchange_price": "1088",
+ "durability": null,
"name": "Steel bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9302",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,64",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"shop_price": "32",
"ge_buy_limit": "10000",
"examine": "Mithril crossbow bolts.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "903",
+ "durability": null,
"name": "Mithril bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9303",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,82",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
@@ -84314,40 +79884,34 @@
"requirements": "{4,61}",
"ge_buy_limit": "10000",
"examine": "Runite crossbow bolts.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "equipment_slot": "13",
"grand_exchange_price": "1581",
+ "durability": null,
"name": "Runite bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9305",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,115",
+ "equipment_slot": "13"
},
{
"requirements": "{4,26}",
"shop_price": "6",
"ge_buy_limit": "10000",
"examine": "Silver crossbow bolts.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "equipment_slot": "13",
"grand_exchange_price": "1211",
+ "durability": null,
"name": "Silver bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9306",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,36",
+ "equipment_slot": "13"
},
{
"requirements": "{4,16}",
"examine": "Jade tipped blurite bolts.",
"durability": null,
"name": "Jade bolts",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "9335",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,30",
@@ -84358,106 +79922,92 @@
"shop_price": "62",
"ge_buy_limit": "25000",
"examine": "Red Topaz tipped Steel Crossbow Bolts.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "13",
"grand_exchange_price": "60",
+ "durability": null,
"name": "Topaz bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9336",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,66"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,66",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"ge_buy_limit": "25000",
"examine": "Sapphire tipped Mithril crossbow bolts.",
- "durability": null,
- "low_alchemy": "14",
- "high_alchemy": "22",
- "equipment_slot": "13",
"grand_exchange_price": "89",
+ "durability": null,
"name": "Sapphire bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9337",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,83"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,83",
+ "equipment_slot": "13"
},
{
"requirements": "{4,36}",
"ge_buy_limit": "25000",
"examine": "Emerald tipped Mithril crossbow bolts.",
- "durability": null,
- "low_alchemy": "21",
- "high_alchemy": "31",
- "equipment_slot": "13",
"grand_exchange_price": "177",
+ "durability": null,
"name": "Emerald bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9338",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,85"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,85",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
"ge_buy_limit": "25000",
"examine": "Ruby tipped Adamantite crossbow bolts.",
- "durability": null,
- "low_alchemy": "50",
- "high_alchemy": "75",
- "equipment_slot": "13",
"grand_exchange_price": "408",
+ "durability": null,
"name": "Ruby bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9339",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,103"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,103",
+ "equipment_slot": "13"
},
{
"requirements": "{4,46}",
"ge_buy_limit": "25000",
"examine": "Diamond tipped Adamantite crossbow bolts.",
- "durability": null,
- "low_alchemy": "76",
- "high_alchemy": "115",
- "equipment_slot": "13",
"grand_exchange_price": "1545",
+ "durability": null,
"name": "Diamond bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9340",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,105"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,105",
+ "equipment_slot": "13"
},
{
"requirements": "{4,61}",
"ge_buy_limit": "25000",
"examine": "Dragonstone tipped Runite crossbow bolts.",
- "durability": null,
- "low_alchemy": "386",
- "high_alchemy": "580",
- "equipment_slot": "13",
"grand_exchange_price": "3201",
+ "durability": null,
"name": "Dragon bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9341",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,117"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,117",
+ "equipment_slot": "13"
},
{
"requirements": "{4,61}",
"ge_buy_limit": "25000",
"examine": "Onyx tipped Runite crossbow bolts.",
- "durability": null,
- "low_alchemy": "5453",
- "high_alchemy": "8179",
- "equipment_slot": "13",
"grand_exchange_price": "8752",
+ "durability": null,
"name": "Onyx bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "9342",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,120"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,120",
+ "equipment_slot": "13"
},
{
"shop_price": "1",
@@ -84544,8 +80094,6 @@
"durability": null,
"name": "Grapple",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9415"
},
@@ -84556,8 +80104,6 @@
"durability": null,
"name": "Mith grapple tip",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "9416"
@@ -84578,8 +80124,6 @@
"durability": null,
"name": "Mith grapple",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9418"
},
@@ -84590,8 +80134,6 @@
"durability": null,
"name": "Mith grapple",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9419",
"equipment_slot": "13"
@@ -84601,16 +80143,14 @@
"shop_price": "20",
"ge_buy_limit": "5000",
"examine": "A pair of bronze crossbow limbs.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "1",
- "equipment_slot": "5",
"grand_exchange_price": "49",
+ "durability": null,
"name": "Bronze limbs",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "9420"
+ "id": "9420",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "5000",
@@ -84626,8 +80166,6 @@
"examine": "A pair of blurite crossbow limbs.",
"durability": null,
"name": "Blurite limbs",
- "low_alchemy": "13",
- "high_alchemy": "19",
"weight": "1",
"archery_ticket_price": "0",
"id": "9422",
@@ -84638,16 +80176,14 @@
"shop_price": "200",
"ge_buy_limit": "5000",
"examine": "A pair of iron crossbow limbs.",
- "durability": null,
- "low_alchemy": "28",
- "high_alchemy": "42",
- "weight": "1",
- "equipment_slot": "5",
"grand_exchange_price": "34",
+ "durability": null,
"name": "Iron limbs",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "9423"
+ "id": "9423",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "5000",
@@ -84663,16 +80199,14 @@
"shop_price": "900",
"ge_buy_limit": "5000",
"examine": "A pair of steel crossbow limbs.",
- "durability": null,
- "low_alchemy": "100",
- "high_alchemy": "150",
- "weight": "2",
- "equipment_slot": "5",
"grand_exchange_price": "97",
+ "durability": null,
"name": "Steel limbs",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "9425"
+ "id": "9425",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "5000",
@@ -84688,16 +80222,14 @@
"shop_price": "650",
"ge_buy_limit": "5000",
"examine": "A pair of mithril crossbow limbs.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "weight": "2",
- "equipment_slot": "5",
"grand_exchange_price": "347",
+ "durability": null,
"name": "Mithril limbs",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "9427"
+ "id": "9427",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "5000",
@@ -84713,16 +80245,14 @@
"shop_price": "4800",
"ge_buy_limit": "5000",
"examine": "A pair of adamantite crossbow limbs.",
- "durability": null,
- "low_alchemy": "640",
- "high_alchemy": "960",
- "weight": "3",
- "equipment_slot": "5",
"grand_exchange_price": "1434",
+ "durability": null,
"name": "Adamantite limbs",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "9429"
+ "id": "9429",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "5000",
@@ -84737,16 +80267,14 @@
"requirements": "{9,69}",
"ge_buy_limit": "5000",
"examine": "A pair of runite crossbow limbs.",
- "durability": null,
- "low_alchemy": "6400",
- "high_alchemy": "9600",
- "weight": "3",
- "equipment_slot": "5",
"grand_exchange_price": "9441",
+ "durability": null,
"name": "Runite limbs",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "9431"
+ "id": "9431",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "5000",
@@ -84777,8 +80305,6 @@
"durability": null,
"name": "Bolt mould",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9434"
@@ -84799,7 +80325,6 @@
"durability": null,
"name": "Sinew",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9436"
},
@@ -84836,15 +80361,13 @@
"shop_price": "8",
"ge_buy_limit": "1000",
"examine": "A wooden crossbow stock",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "equipment_slot": "3",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Wooden stock",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "9440"
+ "id": "9440",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "1000",
@@ -84859,16 +80382,14 @@
"requirements": "{24,9}",
"ge_buy_limit": "1000",
"examine": "An oak crossbow stock.",
- "durability": null,
- "low_alchemy": "10",
- "high_alchemy": "16",
- "weight": "3",
- "equipment_slot": "3",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Oak stock",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "9442"
+ "id": "9442",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "1000",
@@ -84884,16 +80405,14 @@
"shop_price": "21",
"ge_buy_limit": "1000",
"examine": "A willow crossbow stock.",
- "durability": null,
- "low_alchemy": "21",
- "high_alchemy": "31",
- "weight": "1",
- "equipment_slot": "3",
"grand_exchange_price": "3",
+ "durability": null,
"name": "Willow stock",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "9444"
+ "id": "9444",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "1000",
@@ -84909,15 +80428,13 @@
"shop_price": "231",
"ge_buy_limit": "1000",
"examine": "A teak crossbow stock.",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "46",
- "equipment_slot": "3",
"grand_exchange_price": "6",
+ "durability": null,
"name": "Teak stock",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "9446"
+ "id": "9446",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "1000",
@@ -84936,8 +80453,6 @@
"durability": null,
"name": "Maple stock",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "9448",
"equipment_slot": "3"
@@ -84955,16 +80470,14 @@
"requirements": "{9,61}",
"ge_buy_limit": "1000",
"examine": "A Mahogany crossbow stock.",
- "durability": null,
- "low_alchemy": "53",
- "high_alchemy": "79",
- "weight": "3",
- "equipment_slot": "3",
"grand_exchange_price": "23",
+ "durability": null,
"name": "Mahogany stock",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "9450"
+ "id": "9450",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "1000",
@@ -84979,16 +80492,14 @@
"requirements": "{9,69}",
"ge_buy_limit": "1000",
"examine": "A yew crossbow stock.",
- "durability": null,
- "low_alchemy": "66",
- "high_alchemy": "100",
- "weight": "3",
- "equipment_slot": "3",
"grand_exchange_price": "37",
+ "durability": null,
"name": "Yew stock",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "9452"
+ "id": "9452",
+ "equipment_slot": "3"
},
{
"ge_buy_limit": "1000",
@@ -85007,8 +80518,6 @@
"durability": null,
"name": "Bronze c'bow (u)",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "8",
"archery_ticket_price": "0",
"id": "9454"
@@ -85027,8 +80536,6 @@
"examine": "An unstrung blurite crossbow.",
"durability": null,
"name": "Blurite c'bow (u)",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "8",
"archery_ticket_price": "0",
"id": "9456"
@@ -85040,8 +80547,6 @@
"durability": null,
"name": "Iron c'bow (u)",
"tradeable": "true",
- "low_alchemy": "49",
- "high_alchemy": "73",
"weight": "8",
"archery_ticket_price": "0",
"id": "9457"
@@ -85063,8 +80568,6 @@
"durability": null,
"name": "Steel c'bow (u)",
"tradeable": "true",
- "low_alchemy": "130",
- "high_alchemy": "196",
"weight": "8",
"archery_ticket_price": "0",
"id": "9459"
@@ -85086,8 +80589,6 @@
"durability": null,
"name": "Mithril c'bow (u)",
"tradeable": "true",
- "low_alchemy": "300",
- "high_alchemy": "450",
"archery_ticket_price": "0",
"id": "9461"
},
@@ -85108,8 +80609,6 @@
"durability": null,
"name": "Adamant c'bow (u)",
"tradeable": "true",
- "low_alchemy": "693",
- "high_alchemy": "1039",
"weight": "8",
"archery_ticket_price": "0",
"id": "9463"
@@ -85131,8 +80630,6 @@
"durability": null,
"name": "Runite c'bow (u)",
"tradeable": "true",
- "low_alchemy": "6466",
- "high_alchemy": "9700",
"archery_ticket_price": "0",
"id": "9465"
},
@@ -85168,8 +80665,6 @@
"durability": null,
"name": "Grand seed pod",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "9469"
},
@@ -85180,8 +80675,6 @@
"durability": null,
"name": "Gnome scarf",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9470",
@@ -85203,8 +80696,6 @@
"durability": null,
"name": "Gnome goggles",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "9472",
"equipment_slot": "0"
@@ -85235,8 +80726,6 @@
"durability": null,
"name": "Mint cake",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "9475"
@@ -85262,7 +80751,6 @@
"examine": "This cheese & tomato batta needs baking (and garnishing with equa leaves).",
"durability": null,
"name": "Half made batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9478"
},
@@ -85271,7 +80759,6 @@
"examine": "This cheese & tomato batta needs garnishing with equa leaves.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9479"
},
@@ -85280,7 +80767,6 @@
"examine": "This fruit batta needs baking (and garnishing with gnome spices).",
"durability": null,
"name": "Half made batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9480"
},
@@ -85289,7 +80775,6 @@
"examine": "This fruit batta needs garnishing with gnome spices.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9481"
},
@@ -85298,7 +80783,6 @@
"examine": "This toad batta needs baking.",
"durability": null,
"name": "Half made batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9482"
},
@@ -85307,7 +80791,6 @@
"examine": "This veggie batta needs baking (and garnishing with equa leaves).",
"durability": null,
"name": "Half made batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9483"
},
@@ -85316,7 +80799,6 @@
"examine": "This veggie batta needs garnishing with equa leaves.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9484"
},
@@ -85325,7 +80807,6 @@
"examine": "This worm batta needs baking (and garnishing with equa leaves).",
"durability": null,
"name": "Half made batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9485"
},
@@ -85334,7 +80815,6 @@
"examine": "This worm batta needs garnishing with equa leaves.",
"durability": null,
"name": "Unfinished batta",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9486"
},
@@ -85345,8 +80825,6 @@
"durability": null,
"name": "Wizard blizzard",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "9487"
@@ -85365,8 +80843,6 @@
"durability": null,
"name": "Wizard blizzard",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "9489"
@@ -85378,8 +80854,6 @@
"durability": null,
"name": "Wizard blizzard",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "9508"
@@ -85398,8 +80872,6 @@
"durability": null,
"name": "Short green guy",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9510"
},
@@ -85417,8 +80889,6 @@
"durability": null,
"name": "Pineapple punch",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9512"
},
@@ -85436,8 +80906,6 @@
"durability": null,
"name": "Fruit blast",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9514"
},
@@ -85455,8 +80923,6 @@
"durability": null,
"name": "Drunk dragon",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9516"
},
@@ -85474,8 +80940,6 @@
"durability": null,
"name": "Choc saturday",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"weight": "1",
"archery_ticket_price": "0",
"id": "9518"
@@ -85494,8 +80958,6 @@
"durability": null,
"name": "Blurberry special",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "9520"
},
@@ -85511,8 +80973,7 @@
"examine": "A deep tin used to make gnome battas in.",
"durability": null,
"name": "Batta tin",
- "low_alchemy": "4",
- "high_alchemy": "6",
+ "tradeable": "true",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "9522"
@@ -85529,8 +80990,7 @@
"examine": "A deep tin used to make gnome battas in.",
"durability": null,
"name": "Batta tin",
- "low_alchemy": "4",
- "high_alchemy": "6",
+ "tradeable": "true",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "9524"
@@ -85548,7 +81008,6 @@
"durability": null,
"name": "Fruit batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9527"
@@ -85567,7 +81026,6 @@
"durability": null,
"name": "Toad batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9529"
@@ -85601,7 +81059,6 @@
"durability": null,
"name": "Vegetable batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9533"
@@ -85619,7 +81076,6 @@
"durability": null,
"name": "Cheese+tom batta",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9535"
@@ -85637,7 +81093,6 @@
"durability": null,
"name": "Toad crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9538"
@@ -85656,7 +81111,6 @@
"durability": null,
"name": "Spicy crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9540"
},
@@ -85674,7 +81128,6 @@
"durability": null,
"name": "Worm crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9542"
},
@@ -85692,7 +81145,6 @@
"durability": null,
"name": "Chocchip crunchies",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9544"
},
@@ -85709,7 +81161,6 @@
"durability": null,
"name": "Worm hole",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9547"
},
@@ -85726,7 +81177,6 @@
"durability": null,
"name": "Veg ball",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9549"
},
@@ -85743,7 +81193,6 @@
"durability": null,
"name": "Tangled toads' legs",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "9551"
@@ -85762,7 +81211,6 @@
"durability": null,
"name": "Chocolate bomb",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "9553"
@@ -85778,7 +81226,6 @@
"examine": "This unfinished choco bomb needs baking, and final ingredients",
"durability": null,
"name": "Half made bowl",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9558"
@@ -85787,7 +81234,6 @@
"examine": "This unfinished tangled toad legs bowl needs baking, and final ingredients",
"durability": null,
"name": "Half made bowl",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9559"
@@ -85796,7 +81242,6 @@
"examine": "This unfinished choc bomb needs cream and chocolate dust.",
"durability": null,
"name": "Unfinished bowl",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9560"
},
@@ -85804,7 +81249,6 @@
"examine": "This unfinished veggie ball needs baking, and final ingredients",
"durability": null,
"name": "Half made bowl",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9561"
@@ -85813,7 +81257,6 @@
"examine": "This unfinished veggie ball needs equa leaves.",
"durability": null,
"name": "Unfinished bowl",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9562"
},
@@ -85821,7 +81264,6 @@
"examine": "This unfinished worm hole needs baking, and final ingredients",
"durability": null,
"name": "Half made bowl",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9563"
@@ -85830,7 +81272,6 @@
"examine": "This unfinished worm hole needs equa leaves.",
"durability": null,
"name": "Unfinished bowl",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9564"
},
@@ -85845,7 +81286,6 @@
"examine": "This wizzard blizzard needs pouring, a lime slice, and pineapple chunks.",
"durability": null,
"name": "Mixed blizzard",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9566"
},
@@ -85853,7 +81293,6 @@
"examine": "This short green guy cocktail needs pouring, a lime slice and equa leaves.",
"durability": null,
"name": "Mixed sgg",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9567"
},
@@ -85861,7 +81300,6 @@
"examine": "This fruit blast cocktail needs pouring and a lemon slice.",
"durability": null,
"name": "Mixed blast",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9568"
},
@@ -85869,7 +81307,6 @@
"examine": "This pineapple punch needs pouring, lime and pineapple chunks, and a orange slice.",
"durability": null,
"name": "Mixed punch",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9569"
},
@@ -85877,7 +81314,6 @@
"examine": "This blurberry special needs pouring, orange and lemon chunks, a lime slice and equa leaves.",
"durability": null,
"name": "Mixed blurberry special",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9570"
},
@@ -85886,7 +81322,6 @@
"durability": null,
"name": "Half made crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9577"
},
@@ -85895,7 +81330,6 @@
"durability": null,
"name": "Unfinished crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9578"
},
@@ -85904,7 +81338,6 @@
"durability": null,
"name": "Half made crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9579"
},
@@ -85913,7 +81346,6 @@
"durability": null,
"name": "Unfinished crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9580"
},
@@ -85922,7 +81354,6 @@
"durability": null,
"name": "Half made crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9581"
},
@@ -85931,7 +81362,6 @@
"durability": null,
"name": "Unfinished crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9582"
},
@@ -85940,7 +81370,6 @@
"durability": null,
"name": "Half made crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9583"
},
@@ -85949,7 +81378,6 @@
"durability": null,
"name": "Unfinished crunchy",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "9584"
},
@@ -86253,8 +81681,6 @@
"ge_buy_limit": "100",
"examine": "As used by King Tyras personal guard.",
"durability": null,
- "low_alchemy": "220",
- "high_alchemy": "330",
"weight": "0.9",
"equipment_slot": "0",
"grand_exchange_price": "1406",
@@ -86277,9 +81703,7 @@
"examine": "This needs refining.",
"durability": null,
"name": "Daeyalt ore",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"weight": "2",
"archery_ticket_price": "0",
@@ -86290,8 +81714,6 @@
"ge_buy_limit": "100",
"examine": "Dressing like the Vyrewatch could be a useful disguise in the ghetto of Meiyerditch.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.9",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -86315,17 +81737,15 @@
"shop_price": "635",
"ge_buy_limit": "100",
"examine": "Dress like a powerful Vyrewatch!",
- "durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "1204",
+ "durability": null,
"name": "Vyrewatch legs",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "9636",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -86340,17 +81760,15 @@
"shop_price": "635",
"ge_buy_limit": "100",
"examine": "Dress like a powerful Vyrewatch!",
- "durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
- "weight": "0.9",
- "equipment_slot": "10",
"grand_exchange_price": "2874",
+ "durability": null,
"name": "Vyrewatch shoes",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "9638",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -86366,8 +81784,6 @@
"ge_buy_limit": "100",
"examine": "Could be used as a disguise in the ghetto of Meiyerditch.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.9",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -86391,17 +81807,15 @@
"shop_price": "6",
"ge_buy_limit": "100",
"examine": "Could be used as a disguise in the ghetto of Meiyerditch.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "0.9",
- "equipment_slot": "7",
"grand_exchange_price": "491",
+ "durability": null,
"name": "Citizen trousers",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "9642",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -86416,17 +81830,15 @@
"shop_price": "6",
"ge_buy_limit": "100",
"examine": "Could be used as a disguise in the ghetto of Meiyerditch.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "weight": "0.9",
- "equipment_slot": "10",
"grand_exchange_price": "458",
+ "durability": null,
"name": "Citizen shoes",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "9644",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -86552,8 +81964,6 @@
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "9659"
@@ -86566,7 +81976,6 @@
"durability": null,
"name": "Bucket",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "9660"
@@ -86658,10 +82067,9 @@
"ge_buy_limit": "100",
"examine": "A Proselyte Temple Knight's helm.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"weight": "2",
"absorb": "1,0,2",
+ "equip_audio": "2238",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "4619",
@@ -86686,8 +82094,6 @@
"ge_buy_limit": "100",
"examine": "A Proselyte Temple Knight's armour.",
"durability": null,
- "low_alchemy": "4800",
- "high_alchemy": "7200",
"weight": "8.6",
"absorb": "2,0,4",
"equipment_slot": "4",
@@ -86714,8 +82120,6 @@
"ge_buy_limit": "100",
"examine": "A Proselyte Temple Knight's leg armour",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "7.7",
"absorb": "1,0,3",
"equipment_slot": "7",
@@ -86741,8 +82145,6 @@
"ge_buy_limit": "100",
"examine": "A Proselyte Temple Knight's leg armour.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "9",
"absorb": "1,0,3",
"equipment_slot": "7",
@@ -86867,8 +82269,6 @@
"durability": null,
"name": "Water rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "9691"
},
@@ -86890,8 +82290,6 @@
"durability": null,
"name": "Air rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "9693"
},
@@ -86913,8 +82311,6 @@
"durability": null,
"name": "Earth rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "9695"
},
@@ -86936,8 +82332,6 @@
"durability": null,
"name": "Mind rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "9697"
},
@@ -86959,8 +82353,6 @@
"durability": null,
"name": "Fire rune",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "9699"
},
@@ -86988,10 +82380,12 @@
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "5",
+ "equip_audio": "2248",
"render_anim": "2584",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "381,390,390,390",
+ "attack_audios": "2500,2500,2517,2500",
"name": "Training sword",
"archery_ticket_price": "0",
"id": "9703",
@@ -87127,17 +82521,15 @@
{
"ge_buy_limit": "100",
"examine": "A helmet made in the Elemental Workshop.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "196",
+ "durability": null,
"name": "Elemental helmet",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "9729",
- "bonuses": "0,0,0,0,0,0,0,0,4,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,4,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -87151,17 +82543,15 @@
{
"ge_buy_limit": "100",
"examine": "A shield made in the Elemental Workshop.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "0.2",
- "equipment_slot": "5",
"grand_exchange_price": "8351",
+ "durability": null,
"name": "Mind shield",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "9731",
- "bonuses": "0,0,0,0,0,0,0,0,9,0,25,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,9,0,25,0,0,0,0",
+ "equipment_slot": "5"
},
{
"ge_buy_limit": "100",
@@ -87176,17 +82566,15 @@
"shop_price": "1200",
"ge_buy_limit": "100",
"examine": "A helmet made in the Elemental Workshop.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "weight": "0.1",
- "equipment_slot": "0",
"grand_exchange_price": "1589",
+ "durability": null,
"name": "Mind helmet",
"tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "9733",
- "bonuses": "0,0,0,0,0,0,0,0,6,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,6,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -87204,8 +82592,6 @@
"durability": null,
"name": "Desert goat horn",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9735"
@@ -87217,8 +82603,6 @@
"durability": null,
"name": "Goat horn dust",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9736"
@@ -87247,8 +82631,6 @@
"durability": null,
"name": "Combat potion(4)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "9739"
},
@@ -87269,8 +82651,6 @@
"durability": null,
"name": "Combat potion(3)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "9741"
},
@@ -87291,8 +82671,6 @@
"durability": null,
"name": "Combat potion(2)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "9743"
},
@@ -87313,8 +82691,6 @@
"durability": null,
"name": "Combat potion(1)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "9745"
},
@@ -87328,13 +82704,12 @@
"id": "9746"
},
{
+ "requirements": "{0,99}",
"shop_price": "99000",
"examine": "The cape worn by masters of attack.",
"durability": null,
"name": "Attack cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9747",
@@ -87342,6 +82717,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{0,99}",
"durability": null,
"name": "Attack cape(t)",
"tradeable": "false",
@@ -87352,6 +82728,7 @@
},
{
"remove_head": "true",
+ "requirements": "{0,99}",
"shop_price": "99000",
"examine": "Attack skillcape hood.",
"durability": null,
@@ -87363,13 +82740,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{2,99}",
"shop_price": "99000",
"examine": "The cape only worn by the strongest people.",
"durability": null,
"name": "Strength cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9750",
@@ -87377,6 +82753,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{2,99}",
"durability": null,
"name": "Strength cape(t)",
"tradeable": "false",
@@ -87387,6 +82764,7 @@
},
{
"remove_head": "true",
+ "requirements": "{2,99}",
"shop_price": "99000",
"examine": "Strength skillcape hood.",
"durability": null,
@@ -87398,13 +82776,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{1,99}",
"shop_price": "99000",
"examine": "The cape worn by masters of the art of Defence.",
"durability": null,
"name": "Defence cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9753",
@@ -87412,6 +82789,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{1,99}",
"durability": null,
"name": "Defence cape(t)",
"tradeable": "false",
@@ -87422,6 +82800,7 @@
},
{
"remove_head": "true",
+ "requirements": "{1,99}",
"shop_price": "99000",
"examine": "Defence skillcape hood.",
"durability": null,
@@ -87433,13 +82812,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{4,99}",
"shop_price": "99000",
"examine": "The cape worn by master archers.",
"durability": null,
"name": "Ranging cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9756",
@@ -87447,6 +82825,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{4,99}",
"durability": null,
"name": "Ranging cape(t)",
"tradeable": "false",
@@ -87457,6 +82836,7 @@
},
{
"remove_head": "true",
+ "requirements": "{4,99}",
"shop_price": "99000",
"examine": "Range skillcape hood.",
"durability": null,
@@ -87468,13 +82848,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{5,99}",
"shop_price": "99000",
"examine": "The cape worn by the most pious of heroes.",
"durability": null,
"name": "Prayer cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9759",
@@ -87482,6 +82861,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{5,99}",
"durability": null,
"name": "Prayer cape(t)",
"tradeable": "false",
@@ -87492,6 +82872,7 @@
},
{
"remove_head": "true",
+ "requirements": "{5,99}",
"shop_price": "99000",
"examine": "Prayer skillcape hood.",
"durability": null,
@@ -87503,13 +82884,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{6,99}",
"shop_price": "99000",
"examine": "The cape worn by the most powerful mages.",
"durability": null,
"name": "Magic cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9762",
@@ -87517,6 +82897,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{6,99}",
"durability": null,
"name": "Magic cape(t)",
"tradeable": "false",
@@ -87527,6 +82908,7 @@
},
{
"remove_head": "true",
+ "requirements": "{6,99}",
"shop_price": "99000",
"examine": "Magic skillcape hood.",
"durability": null,
@@ -87538,13 +82920,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{20,99}",
"shop_price": "99000",
"examine": "The cape worn by master runecrafters.",
"durability": null,
"name": "Runecraft cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9765",
@@ -87552,6 +82933,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{20,99}",
"durability": null,
"name": "Runecraft cape(t)",
"tradeable": "false",
@@ -87562,6 +82944,7 @@
},
{
"remove_head": "true",
+ "requirements": "{20,99}",
"shop_price": "99000",
"examine": "Runecrafting skillcape hood.",
"durability": null,
@@ -87573,13 +82956,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{3,99}",
"shop_price": "99000",
"examine": "The cape worn by well-constituted adventurers.",
"durability": null,
"name": "Hitpoints cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9768",
@@ -87587,6 +82969,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{3,99}",
"durability": null,
"name": "Hitpoints cape(t)",
"tradeable": "false",
@@ -87597,6 +82980,7 @@
},
{
"remove_head": "true",
+ "requirements": "{3,99}",
"shop_price": "99000",
"examine": "Constitution skillcape hood.",
"durability": null,
@@ -87608,13 +82992,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{16,99}",
"shop_price": "99000",
"examine": "The cape worn by the most agile of heroes.",
"durability": null,
"name": "Agility cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9771",
@@ -87622,6 +83005,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{16,99}",
"durability": null,
"name": "Agility cape(t)",
"tradeable": "false",
@@ -87632,6 +83016,7 @@
},
{
"remove_head": "true",
+ "requirements": "{16,99}",
"shop_price": "99000",
"examine": "Agility skillcape hood.",
"durability": null,
@@ -87643,13 +83028,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{15,99}",
"shop_price": "99000",
"examine": "The cape worn by the most skilled at the art of herblore.",
"durability": null,
"name": "Herblore cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9774",
@@ -87657,6 +83041,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{15,99}",
"durability": null,
"name": "Herblore cape(t)",
"tradeable": "false",
@@ -87667,6 +83052,7 @@
},
{
"remove_head": "true",
+ "requirements": "{15,99}",
"shop_price": "99000",
"examine": "Herblore skillcape hood.",
"durability": null,
@@ -87678,13 +83064,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{17,99}",
"shop_price": "99000",
"examine": "The cape worn by master thieves.",
"durability": null,
"name": "Thieving cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9777",
@@ -87692,6 +83077,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{17,99}",
"durability": null,
"name": "Thieving cape(t)",
"tradeable": "false",
@@ -87702,6 +83088,7 @@
},
{
"remove_head": "true",
+ "requirements": "{17,99}",
"shop_price": "99000",
"examine": "Thieving skillcape hood.",
"durability": null,
@@ -87713,13 +83100,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{12,99}",
"shop_price": "99000",
"examine": "The cape worn by master craftworkers.",
"durability": null,
"name": "Crafting cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9780",
@@ -87727,6 +83113,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{12,99}",
"durability": null,
"name": "Crafting cape(t)",
"tradeable": "false",
@@ -87737,6 +83124,7 @@
},
{
"remove_head": "true",
+ "requirements": "{12,99}",
"shop_price": "99000",
"examine": "Crafting skillcape hood.",
"durability": null,
@@ -87748,13 +83136,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{9,99}",
"shop_price": "99000",
"examine": "The cape worn by the best of fletchers.",
"durability": null,
"name": "Fletching cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9783",
@@ -87762,6 +83149,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{9,99}",
"durability": null,
"name": "Fletching cape(t)",
"tradeable": "false",
@@ -87772,6 +83160,7 @@
},
{
"remove_head": "true",
+ "requirements": "{9,99}",
"shop_price": "99000",
"examine": "Fletching skillcape hood.",
"durability": null,
@@ -87783,13 +83172,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{18,99}",
"shop_price": "99000",
"examine": "The cape worn by slayer masters.",
"durability": null,
"name": "Slayer cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9786",
@@ -87797,6 +83185,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{18,99}",
"durability": null,
"name": "Slayer cape(t)",
"tradeable": "false",
@@ -87807,6 +83196,7 @@
},
{
"remove_head": "true",
+ "requirements": "{18,99}",
"shop_price": "99000",
"examine": "Slayer skillcape hood.",
"durability": null,
@@ -87818,13 +83208,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{22,99}",
"shop_price": "99000",
"examine": "The cape worn by master builders.",
"durability": null,
"name": "Construct. cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9789",
@@ -87832,6 +83221,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{22,99}",
"durability": null,
"name": "Construct. cape(t)",
"tradeable": "false",
@@ -87842,6 +83232,7 @@
},
{
"remove_head": "true",
+ "requirements": "{22,99}",
"shop_price": "99000",
"examine": "Construction skillcape hood.",
"durability": null,
@@ -87853,13 +83244,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{14,99}",
"shop_price": "99000",
"examine": "The cape worn by the most skilled miners.",
"durability": null,
"name": "Mining cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9792",
@@ -87867,6 +83257,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{14,99}",
"durability": null,
"name": "Mining cape(t)",
"tradeable": "false",
@@ -87877,6 +83268,7 @@
},
{
"remove_head": "true",
+ "requirements": "{14,99}",
"shop_price": "99000",
"examine": "Mining skillcape hood.",
"durability": null,
@@ -87888,13 +83280,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{13,99}",
"shop_price": "99000",
"examine": "The cape worn by master smiths.",
"durability": null,
"name": "Smithing cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9795",
@@ -87902,6 +83293,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{13,99}",
"durability": null,
"name": "Smithing cape(t)",
"tradeable": "false",
@@ -87912,6 +83304,7 @@
},
{
"remove_head": "true",
+ "requirements": "{13,99}",
"shop_price": "99000",
"examine": "Smithing skillcape hood.",
"durability": null,
@@ -87923,13 +83316,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{10,99}",
"shop_price": "99000",
"examine": "The cape worn by the best fishermen.",
"durability": null,
"name": "Fishing cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9798",
@@ -87937,6 +83329,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{10,99}",
"durability": null,
"name": "Fishing cape(t)",
"tradeable": "false",
@@ -87947,6 +83340,7 @@
},
{
"remove_head": "true",
+ "requirements": "{10,99}",
"shop_price": "99000",
"examine": "Fishing skillcape hood.",
"durability": null,
@@ -87958,13 +83352,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{7,99}",
"shop_price": "99000",
"examine": "The cape worn by the world's best chefs.",
"durability": null,
"name": "Cooking cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9801",
@@ -87972,6 +83365,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{7,99}",
"durability": null,
"name": "Cooking cape(t)",
"tradeable": "false",
@@ -87982,6 +83376,7 @@
},
{
"remove_head": "true",
+ "requirements": "{7,99}",
"shop_price": "99000",
"examine": "Cooking skillcape hood.",
"durability": null,
@@ -87993,13 +83388,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{11,99}",
"shop_price": "99000",
"examine": "The cape worn by master firelighters.",
"durability": null,
"name": "Firemaking cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9804",
@@ -88007,6 +83401,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{11,99}",
"durability": null,
"name": "Firemaking cape(t)",
"tradeable": "false",
@@ -88017,6 +83412,7 @@
},
{
"remove_head": "true",
+ "requirements": "{11,99}",
"shop_price": "99000",
"examine": "Firemaking skillcape hood.",
"durability": null,
@@ -88028,13 +83424,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{8,99}",
"shop_price": "99000",
"examine": "The cape worn by master woodcutters (Obtaining level 99 skill)",
"durability": null,
"name": "Woodcutting cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9807",
@@ -88042,6 +83437,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{8,99}",
"durability": null,
"name": "Woodcut. cape(t)",
"tradeable": "false",
@@ -88052,6 +83448,7 @@
},
{
"remove_head": "true",
+ "requirements": "{8,99}",
"shop_price": "99000",
"examine": "Woodcutting skillcape hood.",
"durability": null,
@@ -88063,13 +83460,12 @@
"equipment_slot": "0"
},
{
+ "requirements": "{19,99}",
"shop_price": "99000",
"examine": "The cape worn by master farmers.",
"durability": null,
"name": "Farming cape",
"tradeable": "false",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9810",
@@ -88077,6 +83473,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{19,99}",
"durability": null,
"name": "Farming cape(t)",
"tradeable": "false",
@@ -88087,6 +83484,7 @@
},
{
"remove_head": "true",
+ "requirements": "{19,99}",
"shop_price": "99000",
"examine": "Farming skillcape hood.",
"durability": null,
@@ -88319,177 +83717,243 @@
{
"ge_buy_limit": "100",
"grand_exchange_price": "3",
+ "examine": "A ready-to-assemble oak cape rack.",
"durability": null,
"name": "Oak cape rack",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9843"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "92",
+ "examine": "A ready-to-assemble teak cape rack..",
"durability": null,
"name": "Teak cape rack",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9844"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "111",
+ "examine": "A ready-to-assemble mahogany cape rack.",
"durability": null,
"name": "M'gany cape rack",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9845"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "130900",
+ "examine": "A ready-to-assemble gilded mahogany rack.",
"durability": null,
"name": "Gilded cape rack",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9846"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "329500",
+ "examine": "A ready-to-assemble marble cape rack.",
"durability": null,
"name": "Marble cape rack",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9847"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "1000000",
+ "examine": "A ready-to-assemble magic cape rack.",
"durability": null,
"name": "Magical cape rack",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9848"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "25",
+ "examine": "A ready-to-assemble oak toy box.",
"durability": null,
"name": "Oak toy box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9849"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "165",
+ "examine": "A ready-to-assemble teak toy box.",
"durability": null,
"name": "Teak toy box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9850"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "20",
+ "examine": "A ready-to-assemble mahogany toy box.",
"durability": null,
"name": "Mahogany toy box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9851"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "111",
+ "examine": "A ready-to-assemble oak magic wardrobe.",
"durability": null,
"name": "Oak magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9852"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "1",
+ "examine": "A ready-to-assemble oak magic wardrobe.",
"durability": null,
"name": "Carved oak magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9853"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "133",
+ "examine": "A ready-to-assemble teak magic wardrobe.",
"durability": null,
"name": "Teak magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9854"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "15",
+ "examine": "A ready-to-assemble carved teak magic wardrobe.",
"durability": null,
"name": "Carved teak magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9855"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "129",
+ "examine": "A ready-to-assemble mahogany magic wardrobe.",
"durability": null,
"name": "Mahogany magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9856"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "137700",
+ "examine": "A ready-to-assemble gilded mahogany magic wardrobe.",
"durability": null,
"name": "Gilded magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9857"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "335800",
+ "examine": "A ready-to-assemble marble magic wardrobe.",
"durability": null,
"name": "Marble magic wardrobe",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9858"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "17",
+ "examine": "A ready-to-assemble oak armour case.",
"durability": null,
"name": "Oak armour case",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9859"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "29",
+ "examine": "A ready-to-assemble teak armour case.",
"durability": null,
"name": "Teak armour case",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9860"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "88",
+ "examine": "A ready-to-assemble mahogany armour case.",
"durability": null,
"name": "M'gany arm'r case",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9861"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "24",
+ "examine": "A ready-to-assemble oak treasure chest.",
"durability": null,
"name": "Oak treasure chest",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9862"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "164",
+ "examine": "A ready-to-assemble teak treasure chest.",
"durability": null,
"name": "Teak treas' chest",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9863"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "41",
+ "examine": "A ready-to-assemble mahogany treasure chest.",
"durability": null,
"name": "M'gany treas' chest",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9864"
},
{
@@ -88497,7 +83961,9 @@
"grand_exchange_price": "62",
"durability": null,
"name": "Oak costume box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9865"
},
{
@@ -88505,7 +83971,9 @@
"grand_exchange_price": "135",
"durability": null,
"name": "Teak costume box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9866"
},
{
@@ -88513,7 +83981,9 @@
"grand_exchange_price": "60",
"durability": null,
"name": "Mahogany cos box",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "1",
"id": "9867"
},
{
@@ -88706,9 +84176,7 @@
"examine": "A pile of gout tubers suitable for use in mountainous terrain.",
"durability": null,
"name": "Hardy gout tubers",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "9902"
@@ -88718,9 +84186,7 @@
"examine": "Farmer Gricoller's Farming Manual.",
"durability": null,
"name": "Farming manual",
- "low_alchemy": "8",
"tradeable": "false",
- "high_alchemy": "12",
"destroy": "true",
"archery_ticket_price": "0",
"id": "9903"
@@ -88868,6 +84334,7 @@
"destroy": "true",
"archery_ticket_price": "0",
"id": "9920",
+ "equip_audio": "3227",
"remove_beard": "true",
"equipment_slot": "0"
},
@@ -89061,12 +84528,11 @@
"id": "9947"
},
{
+ "requirements": "{21,99}",
"shop_price": "99000",
"examine": "The cape worn by master hunters.",
"durability": null,
"name": "Hunter cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "9948",
@@ -89074,6 +84540,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{21,99}",
"durability": null,
"name": "Hunter cape(t)",
"archery_ticket_price": "0",
@@ -89083,6 +84550,7 @@
},
{
"remove_head": "true",
+ "requirements": "{21,99}",
"shop_price": "99000",
"examine": "Hunter skillcape hood.",
"durability": null,
@@ -89203,8 +84671,6 @@
"durability": null,
"name": "Red chinchompa",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -89219,8 +84685,6 @@
"durability": null,
"name": "Raw bird meat",
"tradeable": "true",
- "low_alchemy": "25",
- "high_alchemy": "37",
"weight": "0.15",
"archery_ticket_price": "0",
"id": "9978"
@@ -89241,8 +84705,6 @@
"durability": null,
"name": "Roast bird meat",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"archery_ticket_price": "0",
"id": "9980"
},
@@ -89270,8 +84732,6 @@
"durability": null,
"name": "Skewered bird meat",
"tradeable": "true",
- "low_alchemy": "25",
- "high_alchemy": "37",
"weight": "0.15",
"archery_ticket_price": "0",
"id": "9984"
@@ -89292,8 +84752,6 @@
"durability": null,
"name": "Raw beast meat",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2",
"archery_ticket_price": "0",
"id": "9986"
@@ -89314,8 +84772,6 @@
"durability": null,
"name": "Roast beast meat",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2",
"archery_ticket_price": "0",
"id": "9988"
@@ -89343,8 +84799,6 @@
"durability": null,
"name": "Skewered beast",
"tradeable": "true",
- "low_alchemy": "35",
- "high_alchemy": "53",
"weight": "3.5",
"archery_ticket_price": "0",
"id": "9992"
@@ -89365,8 +84819,6 @@
"durability": null,
"name": "Spicy tomato",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "9994"
@@ -89387,8 +84839,6 @@
"durability": null,
"name": "Spicy minced meat",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "4",
"weight": "1",
"archery_ticket_price": "0",
"id": "9996"
@@ -89409,8 +84859,6 @@
"durability": null,
"name": "Hunter potion(4)",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "9998"
},
@@ -89430,8 +84878,6 @@
"durability": null,
"name": "Hunter potion(3)",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10000"
},
@@ -89451,8 +84897,6 @@
"durability": null,
"name": "Hunter potion(2)",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10002"
},
@@ -89472,8 +84916,6 @@
"durability": null,
"name": "Hunter potion(1)",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10004"
},
@@ -89494,8 +84936,6 @@
"durability": null,
"name": "Bird snare",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10006"
@@ -89514,13 +84954,11 @@
"shop_price": "38",
"ge_buy_limit": "100",
"examine": "If a creature goes inside, then the box should slam shut.",
- "durability": null,
- "low_alchemy": "12",
- "high_alchemy": "18",
- "weight": "0.2",
"grand_exchange_price": "308",
+ "durability": null,
"name": "Box trap",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10008"
},
@@ -89534,22 +84972,22 @@
"id": "10009"
},
{
- "requirements": "{15,21}",
+ "requirements": "{21,15}",
"shop_price": "24",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "For catching butterflies...",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.2",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"weapon_interface": "10",
"turn180_anim": "1206",
"render_anim": "28",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"grand_exchange_price": "1",
"stand_anim": "813",
"name": "Butterfly net",
@@ -89569,7 +85007,7 @@
"id": "10011"
},
{
- "requirements": "{15,21}",
+ "requirements": "{21,15}",
"shop_price": "1",
"ge_buy_limit": "100",
"examine": "It's got little holes at the top.",
@@ -89578,6 +85016,7 @@
"name": "Butterfly jar",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.02",
"id": "10012"
},
{
@@ -89592,9 +85031,12 @@
{
"ge_buy_limit": "5000",
"grand_exchange_price": "143",
+ "examine": "There's a black warlock butterfly in here.",
"durability": null,
"name": "Black warlock",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.02",
"id": "10014"
},
{
@@ -89609,9 +85051,12 @@
{
"ge_buy_limit": "5000",
"grand_exchange_price": "227",
+ "examine": "There's a snowy knight butterfly in here.",
"durability": null,
"name": "Snowy knight",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.02",
"id": "10016"
},
{
@@ -89626,9 +85071,12 @@
{
"ge_buy_limit": "5000",
"grand_exchange_price": "180",
+ "examine": "There's a sapphire glacialis butterfly in here.",
"durability": null,
"name": "Sapphire glacialis",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.02",
"id": "10018"
},
{
@@ -89643,9 +85091,12 @@
{
"ge_buy_limit": "5000",
"grand_exchange_price": "1270",
+ "examine": "There's a ruby harvest butterfly in here.",
"durability": null,
"name": "Ruby harvest",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.02",
"id": "10020"
},
{
@@ -89698,13 +85149,11 @@
"shop_price": "720",
"ge_buy_limit": "100",
"examine": "A magical catching box.",
- "durability": null,
- "low_alchemy": "288",
- "high_alchemy": "432",
- "weight": "1",
"grand_exchange_price": "784",
+ "durability": null,
"name": "Magic box",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10025"
},
@@ -89724,8 +85173,6 @@
"durability": null,
"name": "Imp-in-a-box(2)",
"tradeable": "true",
- "low_alchemy": "288",
- "high_alchemy": "432",
"weight": "1",
"archery_ticket_price": "0",
"id": "10027"
@@ -89737,8 +85184,6 @@
"durability": null,
"name": "Imp-in-a-box(1)",
"tradeable": "true",
- "low_alchemy": "288",
- "high_alchemy": "432",
"weight": "1",
"archery_ticket_price": "0",
"id": "10028"
@@ -89749,8 +85194,6 @@
"ge_buy_limit": "100",
"examine": "Reduces the risk of hand severage when poking large, vicious carnivores.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1",
"weapon_interface": "6",
"equipment_slot": "3",
@@ -89775,13 +85218,11 @@
"shop_price": "18",
"ge_buy_limit": "100",
"examine": "The snare will tighten around animals passing through.",
- "durability": null,
- "low_alchemy": "7",
- "high_alchemy": "10",
- "weight": "0.02",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Rabbit snare",
"tradeable": "true",
+ "weight": "0.02",
"archery_ticket_price": "0",
"id": "10031"
},
@@ -89822,8 +85263,6 @@
"examine": "Even more volatile than its vegetarian counterpart.",
"walk_anim": "3177",
"durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
"destroy": "true",
"turn90ccw_anim": "3177",
"attack_speed": "4",
@@ -89845,17 +85284,15 @@
"requirements": "{21,52}",
"ge_buy_limit": "100",
"examine": "These should make me harder to spot in polar areas.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "0.2",
- "equipment_slot": "7",
"grand_exchange_price": "449",
+ "durability": null,
"name": "Kyatt legs",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10035",
- "bonuses": "0,0,0,0,-7,11,10,10,0,10,10,0,0,0,0"
+ "bonuses": "0,0,0,0,-7,11,10,10,0,10,10,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -89871,8 +85308,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in polar areas.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "0.2",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -89898,8 +85333,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in polar areas.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.2",
"equipment_slot": "0",
"grand_exchange_price": "8338",
@@ -89922,17 +85355,15 @@
"requirements": "{21,28}",
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in woodland and jungle areas.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.2",
- "equipment_slot": "7",
"grand_exchange_price": "2889",
+ "durability": null,
"name": "Larupia legs",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10041",
- "bonuses": "0,0,0,0,-7,11,10,10,0,10,5,0,0,0,0"
+ "bonuses": "0,0,0,0,-7,11,10,10,0,10,5,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -89948,8 +85379,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in woodland and jungle areas.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.2",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -89975,8 +85404,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in woodland and jungle areas.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.2",
"equipment_slot": "0",
"grand_exchange_price": "7237",
@@ -90001,8 +85428,6 @@
"ge_buy_limit": "100",
"examine": "These should make me harder to spot in desert areas.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.2",
"equipment_slot": "7",
"grand_exchange_price": "266",
@@ -90027,8 +85452,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in desert areas.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
"weight": "0.2",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -90055,8 +85478,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in desert areas.",
"durability": null,
- "low_alchemy": "300",
- "high_alchemy": "450",
"weight": "0.2",
"equipment_slot": "0",
"grand_exchange_price": "8445",
@@ -90076,20 +85497,18 @@
"id": "10052"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in wooded areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "3527",
+ "durability": null,
"name": "Wood camo top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10053",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,5,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,5,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -90103,17 +85522,15 @@
{
"ge_buy_limit": "100",
"examine": "These should make me harder to spot in wooded areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "7",
"grand_exchange_price": "3228",
+ "durability": null,
"name": "Wood camo legs",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10055",
- "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0"
+ "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -90129,8 +85546,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in jungle areas.",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.2",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -90154,17 +85569,15 @@
"requirements": "{21,4}",
"ge_buy_limit": "100",
"examine": "These should make me harder to spot in jungle areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "7",
"grand_exchange_price": "462",
+ "durability": null,
"name": "Jungle camo legs",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10059",
- "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0"
+ "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -90180,8 +85593,6 @@
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in desert areas.",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.2",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -90205,17 +85616,15 @@
"requirements": "{21,10}",
"ge_buy_limit": "100",
"examine": "These should make me harder to spot in desert areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "7",
"grand_exchange_price": "910",
+ "durability": null,
"name": "Desert camo legs",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10063",
- "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0"
+ "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -90227,20 +85636,18 @@
"id": "10064"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "100",
"examine": "This should make me harder to spot in polar areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "7990",
+ "durability": null,
"name": "Polar camo top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10065",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,5,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,5,0,0,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -90254,17 +85661,15 @@
{
"ge_buy_limit": "100",
"examine": "These should make me harder to spot in polar areas",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "7",
"grand_exchange_price": "8389",
+ "durability": null,
"name": "Polar camo legs",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10067",
- "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0"
+ "bonuses": "0,0,0,0,-7,11,10,10,0,10,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -90279,17 +85684,15 @@
"requirements": "{21,40}",
"ge_buy_limit": "100",
"examine": "A surprisingly aerodynamic cape.",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "-2.2",
- "equipment_slot": "1",
"grand_exchange_price": "1140",
+ "durability": null,
"name": "Spotted cape",
"tradeable": "true",
+ "weight": "-2.2",
"archery_ticket_price": "0",
"id": "10069",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -90304,17 +85707,15 @@
"requirements": "{21,66}",
"ge_buy_limit": "100",
"examine": "A really surprisingly aerodynamic cape.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "-4.5",
- "equipment_slot": "1",
"grand_exchange_price": "1262",
+ "durability": null,
"name": "Spottier cape",
"tradeable": "true",
+ "weight": "-4.5",
"archery_ticket_price": "0",
"id": "10071",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "100",
@@ -90328,48 +85729,42 @@
{
"requirements": "{21,40}",
"examine": "A surprisingly aerodynamic cape.",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "951",
+ "durability": null,
"name": "Spotted cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "10073",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"requirements": "{21,66}",
"examine": "A really surprisingly aerodynamic cape.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "881",
+ "durability": null,
"name": "Spottier cape",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "10074",
- "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,1,0,2,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"requirements": "{21,54}",
"ge_buy_limit": "100",
"examine": "Made from dark kebbit fur, these are perfect for tasks of a stealthier nature.",
- "durability": null,
- "low_alchemy": "240",
- "high_alchemy": "360",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "1063",
+ "durability": null,
"name": "Gloves of silence",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10075",
- "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -90383,17 +85778,16 @@
{
"ge_buy_limit": "100",
"examine": "Attack at your own risk.",
- "durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
- "weight": "1",
- "equipment_slot": "9",
"grand_exchange_price": "80",
+ "durability": null,
"name": "Spiky vambraces",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10077",
- "bonuses": "0,0,0,0,4,2,2,1,0,0,1,2,0,0,0"
+ "bonuses": "0,0,0,0,4,2,2,1,0,0,1,2,0,0,0",
+ "equip_audio": "2241",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -90409,9 +85803,8 @@
"ge_buy_limit": "100",
"examine": "Made from 100% real dragonhide. Now with added spikiness.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"grand_exchange_price": "1353",
"name": "Green spiky vambs",
@@ -90433,16 +85826,15 @@
"requirements": "{4,50}",
"ge_buy_limit": "100",
"examine": "Made from 100% real dragonhide. Now with added spikiness.",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "equipment_slot": "9",
"grand_exchange_price": "1773",
+ "durability": null,
"name": "Blue spiky vambs",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10081",
- "bonuses": "0,0,0,-10,9,4,3,5,4,0,4,2,0,0,0"
+ "bonuses": "0,0,0,-10,9,4,3,5,4,0,4,2,0,0,0",
+ "equip_audio": "2241",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -90458,9 +85850,8 @@
"ge_buy_limit": "100",
"examine": "Vambraces made from 100% real dragonhide. Now with added spikes.",
"durability": null,
- "low_alchemy": "1440",
- "high_alchemy": "2160",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"grand_exchange_price": "1978",
"name": "Red spiky vambs",
@@ -90483,9 +85874,8 @@
"ge_buy_limit": "100",
"examine": "Vambraces made from 100% real dragonhide. Now with added spikiness.",
"durability": null,
- "low_alchemy": "1728",
- "high_alchemy": "2592",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"grand_exchange_price": "2727",
"name": "Black spiky vambs",
@@ -90510,8 +85900,6 @@
"durability": null,
"name": "Stripy feather",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "10087"
},
@@ -90523,8 +85911,6 @@
"durability": null,
"name": "Red feather",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10088"
},
@@ -90535,8 +85921,6 @@
"durability": null,
"name": "Blue feather",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10089"
},
@@ -90547,8 +85931,6 @@
"durability": null,
"name": "Yellow feather",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "10090"
},
@@ -90560,8 +85942,6 @@
"durability": null,
"name": "Orange feather",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10091"
},
@@ -90572,8 +85952,6 @@
"durability": null,
"name": "Tatty larupia fur",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "43",
"weight": "2",
"archery_ticket_price": "0",
"id": "10093"
@@ -90594,8 +85972,6 @@
"durability": null,
"name": "Larupia fur",
"tradeable": "true",
- "low_alchemy": "38",
- "high_alchemy": "57",
"weight": "2",
"archery_ticket_price": "0",
"id": "10095"
@@ -90616,8 +85992,6 @@
"durability": null,
"name": "Tatty graahk fur",
"tradeable": "true",
- "low_alchemy": "43",
- "high_alchemy": "64",
"weight": "2",
"archery_ticket_price": "0",
"id": "10097"
@@ -90638,8 +86012,6 @@
"durability": null,
"name": "Graahk fur",
"tradeable": "true",
- "low_alchemy": "57",
- "high_alchemy": "86",
"weight": "2",
"archery_ticket_price": "0",
"id": "10099"
@@ -90660,8 +86032,6 @@
"durability": null,
"name": "Tatty kyatt fur",
"tradeable": "true",
- "low_alchemy": "57",
- "high_alchemy": "86",
"archery_ticket_price": "0",
"id": "10101"
},
@@ -90682,8 +86052,6 @@
"durability": null,
"name": "Kyatt fur",
"tradeable": "true",
- "low_alchemy": "76",
- "high_alchemy": "115",
"weight": "2",
"archery_ticket_price": "0",
"id": "10103"
@@ -90704,8 +86072,6 @@
"durability": null,
"name": "Kebbit spike",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
"id": "10105"
},
@@ -90725,8 +86091,6 @@
"durability": null,
"name": "Long kebbit spike",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "10107"
},
@@ -90746,8 +86110,6 @@
"durability": null,
"name": "Kebbit teeth",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "10109"
},
@@ -90767,8 +86129,6 @@
"durability": null,
"name": "Kebbit teeth dust",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
"id": "10111"
},
@@ -90788,8 +86148,6 @@
"durability": null,
"name": "Kebbit claws",
"tradeable": "true",
- "low_alchemy": "17",
- "high_alchemy": "25",
"archery_ticket_price": "0",
"id": "10113"
},
@@ -90809,8 +86167,6 @@
"durability": null,
"name": "Dark kebbit fur",
"tradeable": "true",
- "low_alchemy": "84",
- "high_alchemy": "126",
"weight": "1",
"archery_ticket_price": "0",
"id": "10115"
@@ -90832,8 +86188,6 @@
"durability": null,
"name": "Polar kebbit fur",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "7",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10117"
@@ -90854,8 +86208,6 @@
"durability": null,
"name": "Feldip weasel fur",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10119"
@@ -90876,8 +86228,6 @@
"durability": null,
"name": "Common kebbit fur",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10121"
@@ -90898,8 +86248,6 @@
"durability": null,
"name": "Desert devil fur",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10123"
@@ -90920,8 +86268,6 @@
"durability": null,
"name": "Spotted kebbit fur",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "10125"
},
@@ -90941,8 +86287,6 @@
"durability": null,
"name": "Dashing kebbit fur",
"tradeable": "true",
- "low_alchemy": "108",
- "high_alchemy": "162",
"archery_ticket_price": "0",
"id": "10127"
},
@@ -90960,8 +86304,6 @@
"ge_buy_limit": "100",
"examine": "A mighty Hunter weapon. One previous owner.",
"durability": null,
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "1.3",
"attack_speed": "5",
"weapon_interface": "5",
@@ -90990,8 +86332,6 @@
"durability": null,
"name": "Strung rabbit foot",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "10132",
"equipment_slot": "2"
@@ -91012,8 +86352,6 @@
"durability": null,
"name": "Rabbit foot",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "10134"
},
@@ -91034,8 +86372,6 @@
"durability": null,
"name": "Rainbow fish",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"weight": "1",
"archery_ticket_price": "0",
"id": "10136"
@@ -91056,8 +86392,6 @@
"durability": null,
"name": "Raw rainbow fish",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"weight": "5",
"archery_ticket_price": "0",
"id": "10138"
@@ -91082,16 +86416,14 @@
"requirements": "{0,30}-{4,30}-{6,30}",
"ge_buy_limit": "10000",
"examine": "A thick, foul-smelling, tar-like substance with a green tinge",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "equipment_slot": "13",
"grand_exchange_price": "28",
+ "durability": null,
"name": "Guam tar",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10142",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,16",
+ "equipment_slot": "13"
},
{
"requirements": "{0,50}-{4,50}-{6,50}",
@@ -91137,7 +86469,6 @@
"turn90cw_anim": "5245",
"examine": "Slightly slimy, but kind of cute.",
"walk_anim": "5245",
- "low_alchemy": "40",
"turn90ccw_anim": "5245",
"attack_speed": "5",
"two_handed": "true",
@@ -91154,11 +86485,12 @@
"requirements": "{0,50}-{4,50}-{6,50}",
"shop_price": "127",
"durability": null,
- "high_alchemy": "60",
"destroy": "true",
"weight": "4",
"weapon_interface": "21",
+ "equip_audio": "732",
"render_anim": "1277",
+ "attack_audios": "740,735,736,0",
"name": "Orange salamander"
},
{
@@ -91166,7 +86498,6 @@
"turn90cw_anim": "5245",
"examine": "Slightly slimy but certainly striking.",
"walk_anim": "5245",
- "low_alchemy": "60",
"turn90ccw_anim": "5245",
"attack_speed": "5",
"two_handed": "true",
@@ -91183,11 +86514,12 @@
"requirements": "{0,60}-{4,60}-{6,60}",
"shop_price": "190",
"durability": null,
- "high_alchemy": "90",
"destroy": "true",
"weight": "4",
"weapon_interface": "21",
+ "equip_audio": "732",
"render_anim": "1277",
+ "attack_audios": "740,735,736,0",
"name": "Red salamander"
},
{
@@ -91195,7 +86527,6 @@
"turn90cw_anim": "5245",
"examine": "Slightly slimy and somewhat menacing.",
"walk_anim": "5245",
- "low_alchemy": "80",
"turn90ccw_anim": "5245",
"attack_speed": "5",
"two_handed": "true",
@@ -91211,11 +86542,12 @@
"bonuses": "0,59,0,0,69,0,0,0,0,0,0,71,0,0,0",
"requirements": "{0,70}-{4,70}-{6,70}",
"durability": null,
- "high_alchemy": "120",
"destroy": "true",
"weight": "4",
"weapon_interface": "21",
+ "equip_audio": "732",
"render_anim": "1277",
+ "attack_audios": "740,735,736,0",
"name": "Black salamander"
},
{
@@ -91223,7 +86555,6 @@
"turn90cw_anim": "5245",
"examine": "A very slimy and generally disgusting green lizard.",
"walk_anim": "5245",
- "low_alchemy": "20",
"turn90ccw_anim": "5245",
"attack_speed": "5",
"two_handed": "true",
@@ -91239,11 +86570,12 @@
"bonuses": "0,10,0,0,20,0,0,0,0,0,0,22,0,0,0",
"requirements": "{0,30}-{4,30}-{6,30}",
"durability": null,
- "high_alchemy": "30",
"destroy": "true",
"weight": "4",
"weapon_interface": "21",
+ "equip_audio": "732",
"render_anim": "1277",
+ "attack_audios": "740,735,736,0",
"name": "Swamp lizard"
},
{
@@ -91253,8 +86585,6 @@
"examine": "A noose on a stick.",
"walk_anim": "5250",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "4",
@@ -91286,7 +86616,6 @@
"turn90cw_anim": "821",
"examine": "A weapon made of bone and wood.",
"walk_anim": "4226",
- "low_alchemy": "520",
"turn90ccw_anim": "822",
"attack_speed": "4",
"turn180_anim": "4227",
@@ -91302,9 +86631,9 @@
"requirements": "{4,50}",
"shop_price": "1300",
"durability": null,
- "high_alchemy": "780",
"weight": "5",
"weapon_interface": "17",
+ "equip_audio": "2244",
"render_anim": "175",
"attack_audios": "2700,0,0,0",
"name": "Hunters' crossbow"
@@ -91322,31 +86651,27 @@
"requirements": "{4,50}",
"ge_buy_limit": "1000",
"examine": "Bolts made from the spikes of a prickly kebbit.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "10",
- "equipment_slot": "13",
"grand_exchange_price": "28",
+ "durability": null,
"name": "Kebbit bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10158",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,28"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,28",
+ "equipment_slot": "13"
},
{
"requirements": "{4,50}",
"ge_buy_limit": "1000",
"examine": "Bolts made from the spikes of a razor-backed kebbit.",
- "durability": null,
- "low_alchemy": "12",
- "high_alchemy": "18",
- "equipment_slot": "13",
"grand_exchange_price": "352",
+ "durability": null,
"name": "Long kebbit bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10159",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,38"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,38",
+ "equipment_slot": "13"
},
{
"durability": null,
@@ -91454,7 +86779,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91467,15 +86792,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10181"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91488,15 +86811,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10183"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91509,15 +86830,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10185"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91530,15 +86849,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10187"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91551,15 +86868,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10189"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91572,15 +86887,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10191"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91593,15 +86906,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10193"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91614,15 +86925,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10195"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91635,15 +86944,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10197"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91656,15 +86963,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10199"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91677,15 +86982,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10201"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91698,15 +87001,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10203"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91719,15 +87020,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10205"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91740,15 +87039,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10207"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91761,15 +87058,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10209"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91782,15 +87077,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10211"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91803,15 +87096,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10213"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91824,15 +87115,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10215"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91845,15 +87134,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10217"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91866,15 +87153,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10219"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91887,15 +87172,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10221"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91908,15 +87191,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10223"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91929,15 +87210,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10225"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91950,15 +87229,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10227"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91971,15 +87248,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10229"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -91992,15 +87267,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10231"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92013,15 +87286,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10233"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92034,15 +87305,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10235"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92055,15 +87324,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10237"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92076,15 +87343,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10239"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92097,15 +87362,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10241"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92118,15 +87381,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10243"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92139,15 +87400,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10245"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92160,15 +87419,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10247"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92181,15 +87438,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10249"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92202,15 +87457,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10251"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92223,15 +87476,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10253"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92244,15 +87495,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10255"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92265,15 +87514,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10257"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92286,15 +87533,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10259"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92307,15 +87552,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10261"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92328,15 +87571,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10263"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92349,15 +87590,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10265"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92370,15 +87609,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10267"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92391,15 +87628,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10269"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92412,15 +87647,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10271"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92433,15 +87666,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10273"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92454,15 +87685,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10275"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92475,15 +87704,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10277"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -92496,8 +87723,6 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "10279"
@@ -92507,7 +87732,6 @@
"turn90cw_anim": "1207",
"examine": "A powerful bow made from willow.",
"walk_anim": "1205",
- "low_alchemy": "120",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -92523,7 +87747,6 @@
"bonuses": "0,0,0,0,22,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,20}",
"durability": null,
- "high_alchemy": "180",
"weight": "1.8",
"weapon_interface": "16",
"render_anim": "28",
@@ -92545,7 +87768,6 @@
"turn90cw_anim": "1207",
"examine": "A powerful bow made from yew wood.",
"walk_anim": "1205",
- "low_alchemy": "720",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -92561,7 +87783,6 @@
"bonuses": "0,0,0,0,49,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,40}",
"durability": null,
- "high_alchemy": "1080",
"weight": "1.8",
"weapon_interface": "16",
"render_anim": "28",
@@ -92584,7 +87805,6 @@
"examine": "A powerful bow made from magic wood.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "1000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"two_handed": "true",
@@ -92600,7 +87820,6 @@
"bonuses": "0,0,0,0,71,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,50}",
"durability": null,
- "high_alchemy": "1500",
"weight": "1.3",
"weapon_interface": "16",
"render_anim": "28",
@@ -92623,9 +87842,8 @@
"ge_buy_limit": "2",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "23600",
"name": "Rune helm (h1)",
@@ -92649,10 +87867,9 @@
"ge_buy_limit": "2",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "3",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "20800",
"name": "Rune helm (h2)",
@@ -92676,10 +87893,9 @@
"ge_buy_limit": "2",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "4",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "20800",
"name": "Rune helm (h3)",
@@ -92703,10 +87919,9 @@
"ge_buy_limit": "2",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "21100",
"name": "Rune helm (h4)",
@@ -92730,10 +87945,9 @@
"ge_buy_limit": "2",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "24900",
"name": "Rune helm (h5)",
@@ -92757,10 +87971,9 @@
"ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "31500",
"name": "Adamant helm (h1)",
@@ -92784,10 +87997,9 @@
"ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "10100",
"name": "Adamant helm (h2)",
@@ -92811,10 +88023,9 @@
"ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "8797",
"name": "Adamant helm (h3)",
@@ -92838,10 +88049,9 @@
"ge_buy_limit": "2",
"examine": "An Adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "10900",
"name": "Adamant helm (h4)",
@@ -92865,10 +88075,9 @@
"ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "17100",
"name": "Adamant helm (h5)",
@@ -92892,9 +88101,8 @@
"ge_buy_limit": "2",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "20400",
"name": "Black helm (h1)",
@@ -92918,9 +88126,8 @@
"ge_buy_limit": "2",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "7033",
"name": "Black helm (h2)",
@@ -92944,9 +88151,8 @@
"ge_buy_limit": "2",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"grand_exchange_price": "7574",
@@ -92971,9 +88177,8 @@
"ge_buy_limit": "2",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "10100",
"name": "Black helm (h4)",
@@ -92997,9 +88202,8 @@
"ge_buy_limit": "2",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "10400",
"name": "Black helm (h5)",
@@ -93018,19 +88222,17 @@
"id": "10315"
},
{
- "ge_buy_limit": "2",
- "examine": "See table",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "weight": "2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "ge_buy_limit": "2",
+ "examine": "Bob says: 'Never give your password out to anyone.'",
"grand_exchange_price": "8196",
+ "durability": null,
"name": "Bob shirt",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10316"
+ "id": "10316",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -93042,19 +88244,17 @@
"id": "10317"
},
{
- "ge_buy_limit": "2",
- "examine": "See table",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "weight": "2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "ge_buy_limit": "2",
+ "examine": "Bob says: 'Always check the second trade screen.'",
"grand_exchange_price": "14700",
+ "durability": null,
"name": "Bob shirt",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10318"
+ "id": "10318",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -93066,19 +88266,17 @@
"id": "10319"
},
{
- "ge_buy_limit": "2",
- "examine": "See table",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "weight": "2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "ge_buy_limit": "2",
+ "examine": "Bob says: 'Never trade in the wilderness!'",
"grand_exchange_price": "8403",
+ "durability": null,
"name": "Bob shirt",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10320"
+ "id": "10320",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -93090,19 +88288,17 @@
"id": "10321"
},
{
- "ge_buy_limit": "2",
- "examine": "See table",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "weight": "2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "ge_buy_limit": "2",
+ "examine": "Bob says: 'A bank pin will keep your items secure.'",
"grand_exchange_price": "9230",
+ "durability": null,
"name": "Bob shirt",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10322"
+ "id": "10322",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -93114,19 +88310,17 @@
"id": "10323"
},
{
- "ge_buy_limit": "2",
- "examine": "See table",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "weight": "2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "ge_buy_limit": "2",
+ "examine": "Bob says: 'Keep your computer keylogger free and virus scanned.'",
"grand_exchange_price": "8197",
+ "durability": null,
"name": "Bob shirt",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10324"
+ "id": "10324",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -93144,8 +88338,6 @@
"durability": null,
"name": "Purple firelighter",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10326"
},
@@ -93156,8 +88348,6 @@
"durability": null,
"name": "White firelighter",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10327"
},
@@ -93180,8 +88370,6 @@
"ge_buy_limit": "2",
"examine": "Ancient range protection crafted from white dragonhide.",
"durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
"weight": "4",
"absorb": "0,6,3",
"equipment_slot": "4",
@@ -93208,8 +88396,6 @@
"ge_buy_limit": "2",
"examine": "Fabulously ancient range protection crafted from white dragonhide.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "6",
"absorb": "0,4,2",
"equipment_slot": "7",
@@ -93236,10 +88422,9 @@
"ge_buy_limit": "5000",
"examine": "Ancient range protection crafted from white dragonhide.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "6100000",
@@ -93263,9 +88448,8 @@
"ge_buy_limit": "2",
"examine": "Fabulously ancient range protection crafted from white dragonhide.",
"durability": null,
- "low_alchemy": "86000",
- "high_alchemy": "129000",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"lendable": "true",
"grand_exchange_price": "7100000",
@@ -93289,8 +88473,6 @@
"ge_buy_limit": "2",
"examine": "Ancient mage protection enchanted in the Third-Age.",
"durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
"weight": "2.5",
"absorb": "4,2,0",
"equipment_slot": "4",
@@ -93317,8 +88499,6 @@
"ge_buy_limit": "2",
"examine": "Ancient mage protection enchanted in the Third-Age.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "1",
"absorb": "4,2,0",
"equipment_slot": "7",
@@ -93345,8 +88525,6 @@
"ge_buy_limit": "2",
"examine": "Ancient mage protection enchanted in the Third-Age.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"absorb": "2,1,0",
"equipment_slot": "0",
"lendable": "true",
@@ -93367,20 +88545,18 @@
"id": "10343"
},
{
+ "lendable": "true",
"requirements": "{1,30}-{6,65}",
"ge_buy_limit": "2",
"examine": "Ancient mage protection enchanted in the Third-Age.",
- "durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
- "equipment_slot": "2",
- "lendable": "true",
"grand_exchange_price": "20100000",
+ "durability": null,
"name": "3rd age amulet",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10344",
- "bonuses": "0,0,0,15,0,0,0,0,10,0,0,0,0,0,0"
+ "bonuses": "0,0,0,15,0,0,0,0,10,0,0,0,0,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "2",
@@ -93396,10 +88572,9 @@
"ge_buy_limit": "2",
"examine": "Ancient armour beaten from magical silver.",
"durability": null,
- "low_alchemy": "80000",
- "high_alchemy": "120000",
"weight": "2",
"absorb": "3,0,6",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "92800000",
@@ -93423,10 +88598,9 @@
"ge_buy_limit": "2",
"examine": "Ancient armour beaten from magical silver.",
"durability": null,
- "low_alchemy": "80000",
- "high_alchemy": "120000",
"weight": "9",
"absorb": "4,0,9",
+ "equip_audio": "2234",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -93452,10 +88626,9 @@
"ge_buy_limit": "2",
"examine": "Ancient armour beaten from magical silver.",
"durability": null,
- "low_alchemy": "36000",
- "high_alchemy": "54000",
"weight": "1",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "41600000",
@@ -93479,10 +88652,9 @@
"ge_buy_limit": "2",
"examine": "Ancient armour beaten from magical silver.",
"durability": null,
- "low_alchemy": "72000",
- "high_alchemy": "108000",
"weight": "2",
"absorb": "5,0,11",
+ "equip_audio": "2245",
"equipment_slot": "5",
"lendable": "true",
"grand_exchange_price": "65100000",
@@ -93508,8 +88680,6 @@
"durability": null,
"name": "Amulet of glory(t4)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "10354",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -93531,8 +88701,6 @@
"durability": null,
"name": "Amulet of glory(t3)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "10356",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -93552,8 +88720,6 @@
"durability": null,
"name": "Amulet of glory(t2)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "10358",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -93573,8 +88739,6 @@
"durability": null,
"name": "Amulet of glory(t1)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "10360",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -93595,8 +88759,6 @@
"durability": null,
"name": "Amulet of glory(t)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "10362",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -93619,8 +88781,6 @@
"durability": null,
"name": "Strength amulet(t)",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "10364",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,10,0,0,0",
@@ -93642,8 +88802,6 @@
"durability": null,
"name": "Amulet of magic(t)",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "10366",
"bonuses": "0,0,0,10,0,0,0,0,0,0,0,0,0,0,0",
@@ -93663,9 +88821,8 @@
"ge_buy_limit": "2",
"examine": "Zamorak blessed dragonhide vambraces.",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"grand_exchange_price": "116200",
"name": "Zamorak bracers",
@@ -93688,10 +88845,9 @@
"ge_buy_limit": "2",
"examine": "Zamorak blessed dragonhide body armour.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "6",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "155200",
@@ -93711,14 +88867,13 @@
"id": "10371"
},
{
- "requirements": "{4,70}",
+ "requirements": "{1,40}-{4,70}",
"ge_buy_limit": "2",
"examine": "Zamorak blessed dragonhide chaps.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "5",
"absorb": "0,4,2",
+ "equip_audio": "2241",
"equipment_slot": "7",
"grand_exchange_price": "35100",
"name": "Zamorak chaps",
@@ -93742,9 +88897,8 @@
"ge_buy_limit": "2",
"examine": "Zamorak blessed dragonhide coif.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "35900",
"name": "Zamorak coif",
@@ -93763,13 +88917,12 @@
"id": "10375"
},
{
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"ge_buy_limit": "2",
"examine": "Guthix blessed dragonhide vambraces.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"grand_exchange_price": "3181",
"name": "Guthix bracers",
@@ -93793,10 +88946,9 @@
"ge_buy_limit": "2",
"examine": "Guthix blessed dragonhide body armour.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "6",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "39800",
@@ -93816,14 +88968,13 @@
"id": "10379"
},
{
- "requirements": "{4,70}",
+ "requirements": "{1,40}-{4,70}",
"ge_buy_limit": "2",
"examine": "Guthix blessed dragonhide chaps.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "5",
"absorb": "0,4,2",
+ "equip_audio": "2241",
"equipment_slot": "7",
"grand_exchange_price": "7346",
"name": "Guthix chaps",
@@ -93847,10 +88998,9 @@
"ge_buy_limit": "2",
"examine": "Guthix blessed dragonhide coif.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.85",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "27500",
"name": "Guthix coif",
@@ -93873,9 +89023,8 @@
"ge_buy_limit": "2",
"examine": "Saradomin blessed dragonhide vambraces.",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"weight": "1",
+ "equip_audio": "2241",
"equipment_slot": "9",
"grand_exchange_price": "70800",
"name": "Saradomin bracers",
@@ -93899,11 +89048,10 @@
"ge_buy_limit": "2",
"examine": "Saradomin blessed dragonhide body armour.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"destroy": "true",
"weight": "6",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "164100",
@@ -93923,13 +89071,12 @@
"id": "10387"
},
{
- "requirements": "{4,70}",
+ "requirements": "{1,40}-{4,70}",
"ge_buy_limit": "2",
"examine": "Saradomin blessed dragonhide chaps.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"absorb": "0,4,2",
+ "equip_audio": "2241",
"equipment_slot": "7",
"grand_exchange_price": "36600",
"name": "Saradomin chaps",
@@ -93953,9 +89100,8 @@
"ge_buy_limit": "2",
"examine": "Saradomin blessed dragonhide coif.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "28000",
"name": "Saradomin coif",
@@ -93975,19 +89121,17 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "A big 'do about nothing.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "2",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "45400",
+ "durability": null,
"name": "A powdered wig",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10392"
+ "id": "10392",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -93999,19 +89143,17 @@
"id": "10393"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "These'll help me stay alive.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "7",
- "lendable": "true",
"grand_exchange_price": "448900",
+ "durability": null,
"name": "Flared trousers",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10394"
+ "id": "10394",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "2",
@@ -94023,19 +89165,17 @@
"id": "10395"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "Alas, someone has slashed my pantaloons.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "7",
- "lendable": "true",
"grand_exchange_price": "9863",
+ "durability": null,
"name": "Pantaloons",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10396"
+ "id": "10396",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "2",
@@ -94048,19 +89188,17 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "A cap for wearing whil...zzzzzzzzz",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "2",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "276400",
+ "durability": null,
"name": "Sleeping cap",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10398"
+ "id": "10398",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -94072,19 +89210,17 @@
"id": "10399"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant mans' black shirt.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "921500",
+ "durability": null,
"name": "Black ele' shirt",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10400"
+ "id": "10400",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94102,8 +89238,6 @@
"durability": null,
"name": "Black ele' legs",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10402",
@@ -94119,19 +89253,17 @@
"id": "10403"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant men's red shirt.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "118600",
+ "durability": null,
"name": "Red ele' shirt",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10404"
+ "id": "10404",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94149,8 +89281,6 @@
"durability": null,
"name": "Red ele' legs",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10406",
@@ -94166,19 +89296,17 @@
"id": "10407"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant mans' blue shirt.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "134700",
+ "durability": null,
"name": "Blue ele' shirt",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10408"
+ "id": "10408",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94196,8 +89324,6 @@
"durability": null,
"name": "Blue ele' legs",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10410",
@@ -94213,19 +89339,17 @@
"id": "10411"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant men's green shirt.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "162600",
+ "durability": null,
"name": "Green ele' shirt",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10412"
+ "id": "10412",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94243,8 +89367,6 @@
"durability": null,
"name": "Green ele' legs",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10414",
@@ -94260,19 +89382,17 @@
"id": "10415"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant men's purple shirt.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "116200",
+ "durability": null,
"name": "Purple ele' shirt",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10416"
+ "id": "10416",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94290,8 +89410,6 @@
"durability": null,
"name": "Purple ele' legs",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10418",
@@ -94307,19 +89425,17 @@
"id": "10419"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made ladies' elegant white blouse.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "571500",
+ "durability": null,
"name": "White ele' blouse",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10420"
+ "id": "10420",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94337,8 +89453,6 @@
"durability": null,
"name": "White ele' skirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10422",
@@ -94354,19 +89468,17 @@
"id": "10423"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant ladies' red blouse.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "15000",
+ "durability": null,
"name": "Red ele' blouse",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10424"
+ "id": "10424",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94384,8 +89496,6 @@
"durability": null,
"name": "Red ele' skirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10426",
@@ -94401,19 +89511,17 @@
"id": "10427"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made ladies' elegant blue blouse.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "22200",
+ "durability": null,
"name": "Blue ele' blouse",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10428"
+ "id": "10428",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94431,8 +89539,6 @@
"durability": null,
"name": "Blue ele' skirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10430",
@@ -94448,19 +89554,17 @@
"id": "10431"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made ladies' elegant green blouse.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "12300",
+ "durability": null,
"name": "Green ele' blouse",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10432"
+ "id": "10432",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94478,8 +89582,6 @@
"durability": null,
"name": "Green ele' skirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10434",
@@ -94495,19 +89597,17 @@
"id": "10435"
},
{
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "A well made elegant ladies' purple blouse.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "22800",
+ "durability": null,
"name": "Purple ele' blouse",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "10436"
+ "id": "10436",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94525,8 +89625,6 @@
"durability": null,
"name": "Purple ele' skirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10438",
@@ -94542,30 +89640,31 @@
"id": "10439"
},
{
- "requirements": "{5,60}",
"ge_buy_limit": "2",
"turn90cw_anim": "1207",
"examine": "A Saradomin crozier.",
"walk_anim": "1205",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "weapon_interface": "1",
"turn180_anim": "1206",
- "render_anim": "28",
+ "defence_anim": "420",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "8611",
"stand_anim": "813",
- "name": "Saradomin crozier",
"tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "10440",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,6,0,0"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,6,0,0",
+ "requirements": "{5,60}",
+ "durability": null,
+ "weight": "2",
+ "weapon_interface": "1",
+ "render_anim": "28",
+ "attack_audios": "2555,0,0,0",
+ "name": "Saradomin crozier"
},
{
"ge_buy_limit": "2",
@@ -94577,30 +89676,31 @@
"id": "10441"
},
{
- "requirements": "{5,60}",
"ge_buy_limit": "2",
"turn90cw_anim": "1207",
"examine": "A Guthix crozier.",
"walk_anim": "1205",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "weapon_interface": "1",
"turn180_anim": "1206",
- "render_anim": "28",
+ "defence_anim": "420",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "2925",
"stand_anim": "813",
- "name": "Guthix crozier",
"tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "10442",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,6,0,0"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,6,0,0",
+ "requirements": "{5,60}",
+ "durability": null,
+ "weight": "2",
+ "weapon_interface": "1",
+ "render_anim": "28",
+ "attack_audios": "2555,0,0,0",
+ "name": "Guthix crozier"
},
{
"ge_buy_limit": "2",
@@ -94612,32 +89712,34 @@
"id": "10443"
},
{
- "requirements": "{5,60}",
"ge_buy_limit": "2",
"turn90cw_anim": "1207",
"examine": "A Zamorak crozier.",
"walk_anim": "1205",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "weight": "2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
- "weapon_interface": "1",
"turn180_anim": "1206",
- "render_anim": "28",
+ "defence_anim": "420",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "2794",
"stand_anim": "813",
- "name": "Zamorak crozier",
"tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "10444",
"stand_turn_anim": "1209",
- "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,6,0,0"
+ "bonuses": "7,-1,25,10,0,2,3,1,10,0,0,32,6,0,0",
+ "requirements": "{5,60}",
+ "durability": null,
+ "weight": "2",
+ "weapon_interface": "1",
+ "render_anim": "28",
+ "attack_audios": "2555,0,0,0",
+ "name": "Zamorak crozier"
},
{
+ "attack_anims": "",
"ge_buy_limit": "2",
"grand_exchange_price": "2794",
"durability": null,
@@ -94650,17 +89752,15 @@
"requirements": "{5,40}",
"ge_buy_limit": "2",
"examine": "A Saradomin cloak.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1200000",
+ "durability": null,
"name": "Saradomin cloak",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "10446",
- "bonuses": "0,0,0,1,0,3,3,3,3,3,3,0,3,0,0"
+ "bonuses": "0,0,0,1,0,3,3,3,3,3,3,0,3,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "2",
@@ -94675,17 +89775,15 @@
"requirements": "{5,40}",
"ge_buy_limit": "2",
"examine": "A Guthix cloak.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "1",
- "equipment_slot": "1",
"grand_exchange_price": "391000",
+ "durability": null,
"name": "Guthix cloak",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10448",
- "bonuses": "0,0,0,1,0,3,3,3,3,3,3,0,3,0,0"
+ "bonuses": "0,0,0,1,0,3,3,3,3,3,3,0,3,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "2",
@@ -94700,17 +89798,15 @@
"requirements": "{5,40}",
"ge_buy_limit": "2",
"examine": "A Zamorak cloak.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "0.4",
- "equipment_slot": "1",
"grand_exchange_price": "1000000",
+ "durability": null,
"name": "Zamorak cloak",
"tradeable": "true",
+ "weight": "0.4",
"archery_ticket_price": "0",
"id": "10450",
- "bonuses": "0,0,0,1,0,3,3,3,3,3,3,0,3,0,0"
+ "bonuses": "0,0,0,1,0,3,3,3,3,3,3,0,3,0,0",
+ "equipment_slot": "1"
},
{
"ge_buy_limit": "2",
@@ -94726,16 +89822,14 @@
"requirements": "{5,40}-{6,40}",
"ge_buy_limit": "2",
"examine": "A Saradomin mitre.",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "equipment_slot": "0",
"grand_exchange_price": "299200",
+ "durability": null,
"name": "Saradomin mitre",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10452",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,5,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,5,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -94751,16 +89845,14 @@
"requirements": "{5,40}-{6,40}",
"ge_buy_limit": "2",
"examine": "A Guthix mitre.",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "equipment_slot": "0",
"grand_exchange_price": "130300",
+ "durability": null,
"name": "Guthix mitre",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10454",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,5,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,5,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -94777,8 +89869,6 @@
"ge_buy_limit": "2",
"examine": "A Zamorak mitre.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "0.3",
"equipment_slot": "0",
"grand_exchange_price": "346500",
@@ -94799,19 +89889,17 @@
},
{
"requirements": "{5,20}",
+ "remove_sleeves": "true",
"ge_buy_limit": "2",
"examine": "Blessed vestments of Saradomin.",
- "durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "121400",
+ "durability": null,
"name": "Saradomin robe top",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10458",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "2",
@@ -94827,8 +89915,6 @@
"ge_buy_limit": "2",
"examine": "Zamorak Vestments.",
"durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -94853,8 +89939,6 @@
"ge_buy_limit": "2",
"examine": "Blessed vestments of Guthix.",
"durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
"weight": "1",
"equipment_slot": "4",
"remove_sleeves": "true",
@@ -94878,16 +89962,14 @@
"requirements": "{5,20}",
"ge_buy_limit": "2",
"examine": "Leggings from the Saradomin Vestments.",
- "durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
- "equipment_slot": "7",
"grand_exchange_price": "56300",
+ "durability": null,
"name": "Saradomin robe legs",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10464",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "2",
@@ -94902,17 +89984,15 @@
"requirements": "{5,20}",
"ge_buy_limit": "2",
"examine": "Leggings from the Guthix Vestments.",
- "durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
- "weight": "2",
- "equipment_slot": "7",
"grand_exchange_price": "56900",
+ "durability": null,
"name": "Guthix robe legs",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "10466",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "2",
@@ -94927,17 +90007,15 @@
"requirements": "{5,20}",
"ge_buy_limit": "2",
"examine": "Legs of the Zamorak Vestments.",
- "durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
- "weight": "2.7",
- "equipment_slot": "7",
"grand_exchange_price": "79400",
+ "durability": null,
"name": "Zamorak robe legs",
"tradeable": "true",
+ "weight": "2.7",
"archery_ticket_price": "0",
"id": "10468",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,4,0,0",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "2",
@@ -94952,16 +90030,14 @@
"requirements": "{5,60}",
"ge_buy_limit": "2",
"examine": "A Saradomin stole.",
- "durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
- "equipment_slot": "2",
"grand_exchange_price": "14000",
+ "durability": null,
"name": "Saradomin stole",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10470",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,10,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,10,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "2",
@@ -94976,16 +90052,14 @@
"requirements": "{5,60}",
"ge_buy_limit": "2",
"examine": "A blessed stole.",
- "durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
- "equipment_slot": "2",
"grand_exchange_price": "3849",
+ "durability": null,
"name": "Guthix stole",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10472",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,10,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,10,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "2",
@@ -95000,16 +90074,14 @@
"requirements": "{5,60}",
"ge_buy_limit": "2",
"examine": "A Zamorak stole.",
- "durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
- "equipment_slot": "2",
"grand_exchange_price": "13700",
+ "durability": null,
"name": "Zamorak stole",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10474",
- "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,10,0,0"
+ "bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,10,0,0",
+ "equipment_slot": "2"
},
{
"ge_buy_limit": "2",
@@ -95027,8 +90099,6 @@
"durability": null,
"name": "Purple sweets",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"archery_ticket_price": "0",
"id": "10476"
},
@@ -95074,9 +90144,7 @@
"examine": "An iron bar supplied by an insane old crone.",
"durability": null,
"name": "Selected iron",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "10488",
@@ -95087,9 +90155,7 @@
"examine": "A magnet designed for undead chicken use.",
"durability": null,
"name": "Bar magnet",
- "low_alchemy": "6",
"tradeable": "false",
- "high_alchemy": "9",
"destroy": "true",
"archery_ticket_price": "0",
"id": "10489"
@@ -95108,8 +90174,6 @@
{
"examine": "It radiates purity but can still lop off heads.",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"destroy": "true",
"weight": "1.1",
"attack_speed": "5",
@@ -95173,8 +90237,6 @@
"shop_price": "999",
"examine": "A bagged chicken ready to serve you, magnet in claw.",
"durability": null,
- "low_alchemy": "307",
- "high_alchemy": "461",
"destroy": "true",
"weight": "4.5",
"equip_audio": "3284",
@@ -95261,13 +90323,14 @@
"examine": "Made from snow. / It's a ball of snow! Uncanny. / How did this not melt in the box?",
"durability": null,
"name": "Snowball",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "10509"
},
{
"durability": null,
"name": "Snowball",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "10510"
},
@@ -95586,10 +90649,9 @@
"shop_price": "275",
"examine": "A Penance Fighter hat.",
"durability": null,
- "low_alchemy": "7680",
- "high_alchemy": "11520",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"name": "Fighter hat",
"archery_ticket_price": "0",
@@ -95601,41 +90663,36 @@
"shop_price": "275",
"examine": "A Penance Runner hat.",
"durability": null,
- "low_alchemy": "7680",
- "high_alchemy": "11520",
- "weight": "1",
- "absorb": "1,0,3",
- "equipment_slot": "0",
"name": "Runner hat",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10549",
- "bonuses": "0,0,0,0,0,30,32,27,1,30,7,0,0,0,0"
+ "absorb": "1,0,3",
+ "bonuses": "0,0,0,0,0,30,32,27,1,30,7,0,0,0,0",
+ "equipment_slot": "0"
},
{
"requirements": "{1,40}",
"shop_price": "275",
"examine": "A Penance ranger hat.",
"durability": null,
- "low_alchemy": "7680",
- "high_alchemy": "11520",
- "weight": "2",
- "absorb": "0,3,1",
- "equipment_slot": "0",
"name": "Ranger hat",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "10550",
- "bonuses": "-5,-5,-5,-5,7,7,10,11,5,9,7,0,0,0,0"
+ "absorb": "0,3,1",
+ "bonuses": "-5,-5,-5,-5,7,7,10,11,5,9,7,0,0,0,0",
+ "equipment_slot": "0"
},
{
"requirements": "{1,40}",
"shop_price": "375",
"examine": "Penance Fighter torso armour.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"weight": "4",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"name": "Fighter torso",
@@ -95746,8 +90803,6 @@
"ge_buy_limit": "10",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"weight": "22.6",
"absorb": "4,0,8",
"equipment_slot": "4",
@@ -95774,8 +90829,6 @@
"durability": null,
"name": "Fire cape",
"tradeable": "false",
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "10566",
@@ -95911,8 +90964,6 @@
{
"examine": "(Normal) A mystical-feeling dagger. (Poisoned) The twisted blade is covered with a nasty poison.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"destroy": "true",
"weight": "0.4",
"attack_speed": "4",
@@ -95982,9 +91033,7 @@
"examine": "Tarn Razorlor's diary.",
"durability": null,
"name": "Tarn's diary",
- "low_alchemy": "20",
"tradeable": "false",
- "high_alchemy": "30",
"destroy": "true",
"archery_ticket_price": "0",
"id": "10587"
@@ -95993,8 +91042,6 @@
"examine": "Increases the wearer's Strength and Attack by 20% when fighting the undead.",
"durability": null,
"name": "Salve amulet(e)",
- "low_alchemy": "150000",
- "high_alchemy": "150000",
"weight": "1",
"archery_ticket_price": "0",
"id": "10588",
@@ -96007,8 +91054,6 @@
"ge_buy_limit": "10",
"examine": "A stone helmet.",
"durability": null,
- "low_alchemy": "18400",
- "high_alchemy": "27600",
"weight": "4",
"absorb": "2,0,4",
"equipment_slot": "0",
@@ -96103,8 +91148,6 @@
"shop_price": "15000",
"examine": "Blue: A magical hat. ",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "0.4",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -96120,8 +91163,6 @@
"shop_price": "15000",
"examine": "Blue: A magical hat. ",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "0.4",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -96137,8 +91178,6 @@
"shop_price": "15000",
"examine": "Blue: A magical hat. ",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"weight": "0.4",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -96154,8 +91193,6 @@
"remove_head": "true",
"examine": "Make your foes cower by wearing a skull as a helmet!",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "1.3",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -96168,43 +91205,37 @@
"bonuses": "0,0,0,2,-2,10,9,11,3,0,0,0,0,0,0"
},
{
- "examine": "Mystical robes.",
- "durability": null,
- "low_alchemy": "56000",
- "high_alchemy": "84000",
- "weight": "2.2",
- "absorb": "3,1,0",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "Mystical robes.",
"grand_exchange_price": "3932123",
+ "durability": null,
"name": "Infinity top",
"tradeable": "true",
+ "weight": "2.2",
"archery_ticket_price": "0",
"id": "10605",
- "bonuses": "0,0,0,22,0,0,0,0,22,0,0,0,0,0,0"
+ "absorb": "3,1,0",
+ "bonuses": "0,0,0,22,0,0,0,0,22,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "A wooden helmet.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "weight": "0.9",
- "absorb": "3,1,0",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "A wooden helmet.",
"grand_exchange_price": "5623",
+ "durability": null,
"name": "Splitbark helm",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "10606",
- "bonuses": "0,0,0,3,-2,10,9,11,3,0,0,0,0,0,0"
+ "absorb": "3,1,0",
+ "bonuses": "0,0,0,3,-2,10,9,11,3,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"examine": "They seem to be not quite of this world...",
"durability": null,
"name": "Ghostly boots",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10607",
"bonuses": "0,0,0,2,0,0,0,0,2,0,0,0,0,0,0",
@@ -96215,8 +91246,6 @@
"examine": "A mystical hat.",
"durability": null,
"name": "Moonclan hat",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1",
"archery_ticket_price": "0",
"id": "10608",
@@ -96228,8 +91257,6 @@
"shop_price": "15000",
"examine": "A mystical helmet.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.9",
"absorb": "3,1,0",
@@ -96252,27 +91279,24 @@
"equipment_slot": "4"
},
{
+ "remove_sleeves": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "250",
"examine": "Torso armour from the order of the Void Knights.",
"durability": null,
- "low_alchemy": "19200",
- "high_alchemy": "28800",
- "weight": "6.8",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"name": "Void knight top",
"tradeable": "false",
+ "weight": "6.5",
"archery_ticket_price": "0",
"id": "10611",
- "bonuses": "0,0,0,0,0,40,40,40,40,40,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,40,40,40,40,40,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"remove_head": "true",
"examine": "Black banded leather armour, a rogue's dream!",
"durability": null,
"name": "Rogue mask",
- "low_alchemy": "150",
- "high_alchemy": "225",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "10612",
@@ -96282,10 +91306,9 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "Protective headwear made from crabs. Better than it sounds.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -96299,10 +91322,9 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}-{4,40}",
"examine": "A helm fit for any Fremennik ranger.",
"durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1",
"absorb": "0,3,1",
"remove_beard": "true",
@@ -96321,8 +91343,6 @@
"durability": null,
"name": "Tribal mask",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2",
"archery_ticket_price": "0",
"id": "10615",
@@ -96334,8 +91354,6 @@
"durability": null,
"name": "Tribal mask",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2",
"archery_ticket_price": "0",
"id": "10616",
@@ -96347,8 +91365,6 @@
"durability": null,
"name": "Tribal mask",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "2",
"archery_ticket_price": "0",
"id": "10617",
@@ -96358,10 +91374,9 @@
"shop_price": "3840",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.9",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "4595",
@@ -96375,8 +91390,6 @@
"shop_price": "10000",
"examine": "An initiate Temple Knight's Armour.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "8",
"absorb": "1,0,3",
"equipment_slot": "4",
@@ -96392,8 +91405,6 @@
"shop_price": "12000",
"examine": "A Proselyte Temple Knight's armour.",
"durability": null,
- "low_alchemy": "4800",
- "high_alchemy": "7200",
"weight": "8.6",
"absorb": "2,0,4",
"equipment_slot": "4",
@@ -96410,117 +91421,101 @@
"examine": "A thick heavy leather top.",
"durability": null,
"name": "Mourner top",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "10621",
"equipment_slot": "4"
},
{
- "examine": "This should make me harder to spot in polar areas.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "0.2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "This should make me harder to spot in polar areas.",
"grand_exchange_price": "216",
+ "durability": null,
"name": "Kyatt top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10622",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "This should make me harder to spot in woodland and jungle areas.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "0.2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "This should make me harder to spot in woodland and jungle areas.",
"grand_exchange_price": "1793",
+ "durability": null,
"name": "Larupia top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10623",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
+ "remove_sleeves": "true",
"shop_price": "300",
"examine": "This should make me harder to spot in desert areas.",
- "durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "weight": "0.2",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "246",
+ "durability": null,
"name": "Graahk top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10624",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "This should make me harder to spot in wooded areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "This should make me harder to spot in wooded areas.",
"grand_exchange_price": "3883",
+ "durability": null,
"name": "Wood camo top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10625",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "This should make me harder to spot in jungle areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "This should make me harder to spot in jungle areas.",
"grand_exchange_price": "325",
+ "durability": null,
"name": "Jungle camo top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10626",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "This should make me harder to spot in desert areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "This should make me harder to spot in desert areas.",
"grand_exchange_price": "606",
+ "durability": null,
"name": "Desert camo top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10627",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "This should make me harder to spot in polar areas.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "weight": "0.2",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "This should make me harder to spot in polar areas.",
"grand_exchange_price": "5614",
+ "durability": null,
"name": "Polar camo top",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10628",
- "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,10,15,19,0,12,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"examine": "A mime would wear this.",
@@ -96573,8 +91568,6 @@
"examine": "I feel closer to the gods when I am wearing this. (Top) If a shade had knees, this would keep them nice and warm. (Bottom)",
"durability": null,
"name": "Shade robe",
- "low_alchemy": "28",
- "high_alchemy": "42",
"weight": "2",
"archery_ticket_price": "0",
"id": "10634",
@@ -96587,8 +91580,6 @@
"durability": null,
"name": "Cape of legends",
"tradeable": "false",
- "low_alchemy": "180",
- "high_alchemy": "270",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "10635",
@@ -96596,28 +91587,24 @@
"equipment_slot": "1"
},
{
+ "lendable": "true",
"shop_price": "90000",
"examine": "A cape woven of obsidian plates.",
- "durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
- "weight": "1.8",
- "equipment_slot": "1",
- "lendable": "true",
"grand_exchange_price": "38500",
+ "durability": null,
"name": "Obsidian cape",
"tradeable": "true",
+ "weight": "1.8",
"archery_ticket_price": "0",
"id": "10636",
- "bonuses": "0,0,0,0,0,9,9,9,9,9,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,9,9,9,9,9,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"examine": "A cape of fire.",
"durability": null,
"name": "Fire cape",
"tradeable": "false",
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "10637",
@@ -96630,8 +91617,6 @@
"durability": null,
"name": "Team-1 cape",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10638",
@@ -96639,12 +91624,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{0,99}",
"shop_price": "99000",
"examine": "The cape worn by masters of attack.",
"durability": null,
"name": "Attack cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10639",
@@ -96652,12 +91636,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{2,99}",
"shop_price": "99000",
"examine": "The cape only worn by the strongest people.",
"durability": null,
"name": "Strength cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10640",
@@ -96665,12 +91648,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{1,99}",
"shop_price": "99000",
"examine": "The cape worn by masters of the art of Defence.",
"durability": null,
"name": "Defence cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10641",
@@ -96678,12 +91660,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{4,99}",
"shop_price": "99000",
"examine": "The cape worn by master archers.",
"durability": null,
"name": "Ranging cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10642",
@@ -96691,12 +91672,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{5,99}",
"shop_price": "99000",
"examine": "The cape worn by the most pious of heroes.",
"durability": null,
"name": "Prayer cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10643",
@@ -96704,12 +91684,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{6,99}",
"shop_price": "99000",
"examine": "The cape worn by the most powerful mages.",
"durability": null,
"name": "Magic cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10644",
@@ -96717,12 +91696,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{20,99}",
"shop_price": "99000",
"examine": "The cape worn by master runecrafters.",
"durability": null,
"name": "Runecraft cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10645",
@@ -96730,12 +91708,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{21,99}",
"shop_price": "99000",
"examine": "The cape worn by master hunters.",
"durability": null,
"name": "Hunter cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10646",
@@ -96743,12 +91720,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{3,99}",
"shop_price": "99000",
"examine": "The cape worn by well-constituted adventurers.",
"durability": null,
"name": "Hitpoints cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10647",
@@ -96756,12 +91732,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{16,99}",
"shop_price": "99000",
"examine": "The cape worn by the most agile of heroes.",
"durability": null,
"name": "Agility cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10648",
@@ -96769,12 +91744,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{15,99}",
"shop_price": "99000",
"examine": "The cape worn by the most skilled at the art of herblore.",
"durability": null,
"name": "Herblore cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10649",
@@ -96782,12 +91756,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{17,99}",
"shop_price": "99000",
"examine": "The cape worn by master thieves.",
"durability": null,
"name": "Thieving cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10650",
@@ -96795,12 +91768,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{12,99}",
"shop_price": "99000",
"examine": "The cape worn by master craftworkers.",
"durability": null,
"name": "Crafting cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10651",
@@ -96808,12 +91780,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{9,99}",
"shop_price": "99000",
"examine": "The cape worn by the best of fletchers.",
"durability": null,
"name": "Fletching cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10652",
@@ -96821,12 +91792,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{18,99}",
"shop_price": "99000",
"examine": "The cape worn by slayer masters.",
"durability": null,
"name": "Slayer cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10653",
@@ -96834,12 +91804,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{22,99}",
"shop_price": "99000",
"examine": "The cape worn by master builders.",
"durability": null,
"name": "Construct. cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10654",
@@ -96847,12 +91816,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{14,99}",
"shop_price": "99000",
"examine": "The cape worn by the most skilled miners.",
"durability": null,
"name": "Mining cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10655",
@@ -96860,12 +91828,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{13,99}",
"shop_price": "99000",
"examine": "The cape worn by master smiths.",
"durability": null,
"name": "Smithing cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10656",
@@ -96873,12 +91840,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{10,99}",
"shop_price": "99000",
"examine": "The cape worn by the best fishermen.",
"durability": null,
"name": "Fishing cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10657",
@@ -96886,12 +91852,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{7,99}",
"shop_price": "99000",
"examine": "The cape worn by the world's best chefs.",
"durability": null,
"name": "Cooking cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10658",
@@ -96899,12 +91864,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{11,99}",
"shop_price": "99000",
"examine": "The cape worn by master firelighters.",
"durability": null,
"name": "Firemaking cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10659",
@@ -96912,12 +91876,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{8,99}",
"shop_price": "99000",
"examine": "The cape worn by master woodcutters (Obtaining level 99 skill)",
"durability": null,
"name": "Woodcutting cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10660",
@@ -96925,12 +91888,11 @@
"equipment_slot": "1"
},
{
+ "requirements": "{19,99}",
"shop_price": "99000",
"examine": "The cape worn by master farmers.",
"durability": null,
"name": "Farming cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10661",
@@ -96954,8 +91916,6 @@
"durability": null,
"name": "Spotted cape",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10663",
@@ -96968,8 +91928,6 @@
"durability": null,
"name": "Spottier cape",
"tradeable": "true",
- "low_alchemy": "320",
- "high_alchemy": "480",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10664",
@@ -96977,25 +91935,24 @@
"equipment_slot": "1"
},
{
+ "requirements": "{1,10}",
"examine": "A black kitesheild with a heraldic design.",
- "durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
- "weight": "4",
- "absorb": "1,0,2",
- "equipment_slot": "5",
"grand_exchange_price": "15249",
+ "durability": null,
"name": "Black shield(h1)",
"tradeable": "true",
+ "weight": "4",
"archery_ticket_price": "0",
"id": "10665",
- "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0"
+ "absorb": "1,0,2",
+ "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -97007,12 +91964,12 @@
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "35300",
"name": "Rune shield(h1)",
@@ -97022,25 +91979,24 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,0,0,0,0,0"
},
{
+ "requirements": "{1,10}",
"examine": "A black kiteshield with a heraldic design.",
- "durability": null,
- "low_alchemy": "6530",
- "high_alchemy": "9795",
- "weight": "4",
- "absorb": "1,0,2",
- "equipment_slot": "5",
"grand_exchange_price": "9751",
+ "durability": null,
"name": "Black shield(h2)",
"tradeable": "true",
+ "weight": "4",
"archery_ticket_price": "0",
"id": "10668",
- "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0"
+ "absorb": "1,0,2",
+ "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -97052,12 +92008,12 @@
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5.4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "31903",
"name": "Rune shield(h2)",
@@ -97067,25 +92023,24 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,0,0,0,0,0"
},
{
+ "requirements": "{1,10}",
"examine": "A black shield with a heraldic design.",
- "durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
- "weight": "4",
- "absorb": "1,0,2",
- "equipment_slot": "5",
"grand_exchange_price": "6791",
+ "durability": null,
"name": "Black shield(h3)",
"tradeable": "true",
+ "weight": "4",
"archery_ticket_price": "0",
"id": "10671",
- "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0"
+ "absorb": "1,0,2",
+ "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -97097,12 +92052,12 @@
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "32082",
"name": "Rune shield(h3)",
@@ -97112,25 +92067,24 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,0,0,0,0,0"
},
{
+ "requirements": "{1,10}",
"examine": "A black shield with a heraldic design.",
- "durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
- "weight": "4",
- "absorb": "1,0,2",
- "equipment_slot": "5",
"grand_exchange_price": "5159",
+ "durability": null,
"name": "Black shield(h4)",
"tradeable": "true",
+ "weight": "4",
"archery_ticket_price": "0",
"id": "10674",
- "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0"
+ "absorb": "1,0,2",
+ "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -97142,12 +92096,12 @@
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "32351",
"name": "Rune shield(h4)",
@@ -97157,25 +92111,24 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,0,0,0,0,0"
},
{
+ "requirements": "{1,10}",
"examine": "A black shield with a heraldic design.",
- "durability": null,
- "low_alchemy": "652",
- "high_alchemy": "979",
- "weight": "4",
- "absorb": "1,0,2",
- "equipment_slot": "5",
"grand_exchange_price": "8451",
+ "durability": null,
"name": "Black shield(h5)",
"tradeable": "true",
+ "weight": "4",
"archery_ticket_price": "0",
"id": "10677",
- "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0"
+ "absorb": "1,0,2",
+ "bonuses": "0,0,0,-8,-2,17,19,18,-1,18,0,0,0,0,0",
+ "equipment_slot": "5"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "A shield with a heraldic design.",
"durability": null,
- "low_alchemy": "2176",
- "high_alchemy": "3264",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -97187,12 +92140,12 @@
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "A rune kiteshield with a heraldic design.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"weight": "5",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "35200",
"name": "Rune shield(h5)",
@@ -97203,33 +92156,29 @@
},
{
"examine": "Those studs should provide a bit more protection. Nice trim too!",
- "durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
- "weight": "5.4",
- "absorb": "0,3,1",
- "equipment_slot": "4",
"grand_exchange_price": "67430",
+ "durability": null,
"name": "Studded body (g)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "10680",
- "bonuses": "0,0,0,-4,8,18,25,22,8,25,0,0,0,0,0"
+ "absorb": "0,3,1",
+ "bonuses": "0,0,0,-4,8,18,25,22,8,25,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"examine": "Those studs should provide a bit more protection. Nice trim too!",
- "durability": null,
- "low_alchemy": "340",
- "high_alchemy": "510",
- "weight": "5.4",
- "absorb": "0,3,1",
- "equipment_slot": "4",
"grand_exchange_price": "22400",
+ "durability": null,
"name": "Studded body (t)",
"tradeable": "true",
+ "weight": "5.4",
"archery_ticket_price": "0",
"id": "10681",
- "bonuses": "0,0,0,-4,8,18,25,22,8,25,0,0,0,0,0"
+ "absorb": "0,3,1",
+ "bonuses": "0,0,0,-4,8,18,25,22,8,25,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"durability": null,
@@ -97237,6 +92186,7 @@
"archery_ticket_price": "0",
"id": "10682",
"bonuses": "0,0,0,-15,15,40,32,45,20,40,0,0,0,0,0",
+ "equip_audio": "2241",
"equipment_slot": "4"
},
{
@@ -97245,6 +92195,7 @@
"archery_ticket_price": "0",
"id": "10683",
"bonuses": "0,0,0,-15,15,40,32,45,20,40,0,0,0,0,0",
+ "equip_audio": "2241",
"equipment_slot": "4"
},
{
@@ -97253,6 +92204,7 @@
"archery_ticket_price": "0",
"id": "10684",
"bonuses": "0,0,0,-15,20,45,37,50,30,45,0,0,0,0,0",
+ "equip_audio": "2241",
"equipment_slot": "4"
},
{
@@ -97261,6 +92213,7 @@
"archery_ticket_price": "0",
"id": "10685",
"bonuses": "0,0,0,-15,20,45,37,50,30,45,0,0,0,0,0",
+ "equip_audio": "2241",
"equipment_slot": "4"
},
{
@@ -97269,8 +92222,6 @@
"durability": null,
"name": "Wizard robe (g)",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1",
"archery_ticket_price": "0",
"id": "10686",
@@ -97283,8 +92234,6 @@
"durability": null,
"name": "Wizard robe (t)",
"tradeable": "true",
- "low_alchemy": "6",
- "high_alchemy": "9",
"weight": "1",
"archery_ticket_price": "0",
"id": "10687",
@@ -97292,10 +92241,9 @@
"equipment_slot": "4"
},
{
+ "requirements": "{1,20}-{6,40}",
"examine": "Enchanted Wizards robes.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"weight": "1",
"absorb": "3,1,0",
"equipment_slot": "4",
@@ -97305,30 +92253,28 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "10688",
- "bonuses": "0,0,0,20,0,0,0,0,20,0,0,0,0,0,0"
+ "bonuses": "0,0,0,20,0,0,0,0,20,0,20,0,0,0,0"
},
{
- "examine": "Slightly magical boots.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "1",
- "equipment_slot": "10",
"lendable": "true",
+ "examine": "Slightly magical boots.",
"grand_exchange_price": "763602",
+ "durability": null,
"name": "Wizard boots",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10689",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,0,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
+ "requirements": "{1,10}",
"examine": "Black platebody with trim.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.07",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "90744",
@@ -97339,12 +92285,12 @@
"bonuses": "0,0,0,-30,-10,41,40,30,-6,40,0,0,0,0,0"
},
{
+ "requirements": "{1,10}",
"examine": "Black platebody with gold trim.",
"durability": null,
- "low_alchemy": "1536",
- "high_alchemy": "2304",
"weight": "9.07",
"absorb": "1,0,2",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "230800",
@@ -97361,8 +92307,6 @@
"durability": null,
"name": "Highwayman mask",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "10692",
"equipment_slot": "0"
@@ -97374,8 +92318,6 @@
"durability": null,
"name": "Blue beret",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"archery_ticket_price": "0",
"hat": true,
"id": "10693",
@@ -97388,8 +92330,6 @@
"durability": null,
"name": "Black beret",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"archery_ticket_price": "0",
"hat": true,
"id": "10694",
@@ -97402,35 +92342,32 @@
"durability": null,
"name": "White beret",
"tradeable": "true",
- "low_alchemy": "32",
- "high_alchemy": "48",
"archery_ticket_price": "0",
"hat": true,
"id": "10695",
"equipment_slot": "0"
},
{
- "examine": "Lightweight boots ideal for rangers.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "0.2",
- "equipment_slot": "10",
"lendable": "true",
+ "examine": "Lightweight boots ideal for rangers.",
"grand_exchange_price": "11781186",
+ "durability": null,
"name": "Ranger boots",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10696",
- "bonuses": "0,0,0,-10,8,2,3,4,2,0,0,0,0,0,0"
+ "bonuses": "0,0,0,-10,8,2,3,4,2,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "Adamant platebody with trim.",
"durability": null,
- "low_alchemy": "5120",
- "high_alchemy": "7680",
"weight": "9.07",
"absorb": "2,0,4",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "79300",
@@ -97441,12 +92378,13 @@
"bonuses": "0,0,0,-30,-10,65,63,55,-6,63,0,0,0,0,0"
},
{
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "Adamant platebody with gold trim.",
"durability": null,
- "low_alchemy": "5120",
- "high_alchemy": "7680",
"weight": "9.07",
"absorb": "2,0,4",
+ "equip_audio": "2239",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "207912",
@@ -97458,11 +92396,11 @@
},
{
"remove_head": "true",
+ "requirements": "{1,10}",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "22022",
"name": "Black helm (h1)",
@@ -97473,11 +92411,11 @@
},
{
"remove_head": "true",
+ "requirements": "{1,10}",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "11700",
"name": "Black helm (h2)",
@@ -97488,11 +92426,11 @@
},
{
"remove_head": "true",
+ "requirements": "{1,10}",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "10424",
"name": "Black helm (h3)",
@@ -97503,11 +92441,11 @@
},
{
"remove_head": "true",
+ "requirements": "{1,10}",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "12717",
"name": "Black helm (h4)",
@@ -97518,11 +92456,11 @@
},
{
"remove_head": "true",
+ "requirements": "{1,10}",
"examine": "A black helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "422",
- "high_alchemy": "633",
"weight": "1.8",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "17852",
"name": "Black helm (h5)",
@@ -97533,11 +92471,11 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "30298",
"name": "Rune helm (h1)",
@@ -97548,12 +92486,12 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "3",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "26127",
"name": "Rune helm (h2)",
@@ -97564,12 +92502,12 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "4",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "37333",
"name": "Rune helm (h3)",
@@ -97580,12 +92518,12 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "29600",
"name": "Rune helm (h4)",
@@ -97596,12 +92534,12 @@
},
{
"remove_head": "true",
+ "requirements": "{1,40}",
"examine": "A rune helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2",
"absorb": "1,0,3",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "41325",
"name": "Rune helm (h5)",
@@ -97612,12 +92550,13 @@
},
{
"remove_head": "true",
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "28407",
"name": "Adamant helm (h1)",
@@ -97628,12 +92567,13 @@
},
{
"remove_head": "true",
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "9839",
"name": "Adamant helm (h2)",
@@ -97644,12 +92584,13 @@
},
{
"remove_head": "true",
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "8485",
"name": "Adamant helm (h3)",
@@ -97660,12 +92601,13 @@
},
{
"remove_head": "true",
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "An Adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "10774",
"name": "Adamant helm (h4)",
@@ -97676,12 +92618,13 @@
},
{
"remove_head": "true",
+ "requirements": "{1,30}",
+ "ge_buy_limit": "2",
"examine": "An adamant helmet with a heraldic design.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "3",
"absorb": "1,0,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "17390",
"name": "Adamant helm (h5)",
@@ -97697,8 +92640,6 @@
"durability": null,
"name": "Bob shirt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "10714",
@@ -97711,8 +92652,6 @@
"durability": null,
"name": "Bob shirt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "10715",
@@ -97725,8 +92664,6 @@
"durability": null,
"name": "Bob shirt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "10716",
@@ -97739,8 +92676,6 @@
"durability": null,
"name": "Bob shirt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "10717",
@@ -97753,8 +92688,6 @@
"durability": null,
"name": "Bob shirt",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "10718",
@@ -97766,8 +92699,6 @@
"durability": null,
"name": "Amulet of glory(t)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "10719",
"bonuses": "10,10,10,10,10,3,3,3,3,3,3,6,3,0,0",
@@ -97777,8 +92708,6 @@
"examine": "A cape from the almighty god Guthix.",
"durability": null,
"name": "Guthix cape",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10720",
@@ -97817,6 +92746,7 @@
"destroy": "true",
"archery_ticket_price": "0",
"id": "10723",
+ "equip_audio": "3227",
"remove_beard": "true",
"equipment_slot": "0"
},
@@ -97877,7 +92807,9 @@
"durability": null,
"name": "Easter ring",
"archery_ticket_price": "0",
- "id": "10729"
+ "id": "10729",
+ "equip_audio": "",
+ "equipment_slot": ""
},
{
"destroy_message": "You can obtain another marionette in Diango's workshop by the trap door.",
@@ -97898,7 +92830,7 @@
},
{
"turn90cw_anim": "821",
- "examine": "Perhaps not the most powerful weapon in RuneScape.",
+ "examine": "Perhaps not the most powerful weapon in 2009Scape.",
"walk_anim": "1830",
"durability": null,
"weight": "0.4",
@@ -97906,10 +92838,12 @@
"attack_speed": "4",
"weapon_interface": "12",
"turn180_anim": "1830",
+ "equip_audio": "2238",
"render_anim": "182",
"equipment_slot": "3",
"fun_weapon": "true",
"stand_anim": "1832",
+ "attack_audios": "2257,2257,2257",
"name": "Rubber chicken",
"run_anim": "824",
"archery_ticket_price": "0",
@@ -97921,8 +92855,6 @@
"examine": "A gift from Santa.",
"durability": null,
"name": "Yo-yo",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10733"
},
@@ -97945,6 +92877,7 @@
"attack_speed": "7",
"two_handed": "true",
"turn180_anim": "820",
+ "equip_audio": "2247",
"render_anim": "1383",
"equipment_slot": "3",
"stand_anim": "847",
@@ -97961,8 +92894,6 @@
"durability": null,
"name": "Strength amulet(t)",
"tradeable": "true",
- "low_alchemy": "810",
- "high_alchemy": "1215",
"archery_ticket_price": "0",
"id": "10736",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,10,0,0,0",
@@ -97974,8 +92905,6 @@
"durability": null,
"name": "Amulet of magic(t)",
"tradeable": "true",
- "low_alchemy": "360",
- "high_alchemy": "540",
"archery_ticket_price": "0",
"id": "10738",
"bonuses": "0,0,0,10,0,0,0,0,0,0,0,0,0,0,0",
@@ -97983,18 +92912,16 @@
},
{
"remove_head": "true",
- "examine": "A big 'do about nothing.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "2",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "A big 'do about nothing.",
"grand_exchange_price": "36879",
+ "durability": null,
"name": "A powdered wig",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10740"
+ "id": "10740",
+ "equipment_slot": "0"
},
{
"lendable": "true",
@@ -98003,8 +92930,6 @@
"durability": null,
"name": "Flared trousers",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10742",
@@ -98017,8 +92942,6 @@
"durability": null,
"name": "Pantaloons",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10744",
@@ -98026,18 +92949,16 @@
},
{
"remove_head": "true",
- "examine": "A cap for wearing whil...zzzzzzzzz",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "2",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "A cap for wearing whil...zzzzzzzzz",
"grand_exchange_price": "376084",
+ "durability": null,
"name": "Sleeping cap",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
- "id": "10746"
+ "id": "10746",
+ "equipment_slot": "0"
},
{
"remove_sleeves": "true",
@@ -98045,8 +92966,6 @@
"durability": null,
"name": "Elegant shirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10748",
@@ -98058,8 +92977,6 @@
"durability": null,
"name": "Elegant shirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10750",
@@ -98071,8 +92988,6 @@
"durability": null,
"name": "Elegant shirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10752",
@@ -98084,8 +92999,6 @@
"durability": null,
"name": "Elegant shirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10754",
@@ -98097,8 +93010,6 @@
"durability": null,
"name": "Elegant shirt",
"tradeable": "true",
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "1",
"archery_ticket_price": "0",
"id": "10756",
@@ -98110,8 +93021,6 @@
"durability": null,
"name": "Red boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "10758",
"equipment_slot": "0"
@@ -98122,8 +93031,6 @@
"durability": null,
"name": "Orange boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "10760",
"equipment_slot": "0"
@@ -98134,8 +93041,6 @@
"durability": null,
"name": "Green boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "10762",
"equipment_slot": "0"
@@ -98146,8 +93051,6 @@
"durability": null,
"name": "Blue boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "10764",
"equipment_slot": "0"
@@ -98158,8 +93061,6 @@
"durability": null,
"name": "Black boater",
"tradeable": "true",
- "low_alchemy": "90",
- "high_alchemy": "135",
"archery_ticket_price": "0",
"id": "10766",
"equipment_slot": "0"
@@ -98171,8 +93072,6 @@
"durability": null,
"name": "Red headband",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "10768",
"equipment_slot": "0"
@@ -98184,8 +93083,6 @@
"durability": null,
"name": "Black headband",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "10770",
"equipment_slot": "0"
@@ -98197,8 +93094,6 @@
"durability": null,
"name": "Brown headband",
"tradeable": "true",
- "low_alchemy": "16",
- "high_alchemy": "24",
"archery_ticket_price": "0",
"id": "10772",
"equipment_slot": "0"
@@ -98209,19 +93104,17 @@
"durability": null,
"name": "Pirate's hat",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
"id": "10774",
"equipment_slot": "0"
},
{
+ "requirements": "{1,40}",
"examine": "Rune platebody in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -98233,10 +93126,9 @@
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "Rune platebody in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
"equipment_slot": "4",
@@ -98250,12 +93142,12 @@
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "Rune platebody in the colours of Guthix.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -98267,12 +93159,12 @@
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,0,0,0,0,0"
},
{
- "examine": "Rune platebody with complete gold trim & plating.",
+ "requirements": "{1,40}",
+ "examine": "Rune platebody with complete gold trim & plating.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "10",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -98284,54 +93176,50 @@
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,0,0,0,0,0"
},
{
+ "requirements": "{5,20}",
"remove_sleeves": "true",
"examine": "Blessed vestments of Saradomin.",
"grand_exchange_price": "106389",
"durability": null,
"name": "Saradomin robe top",
"tradeable": "true",
- "low_alchemy": "2800",
- "high_alchemy": "4200",
"archery_ticket_price": "0",
"id": "10784",
"bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,4,0,0",
"equipment_slot": "4"
},
{
- "examine": "Zamorak Vestments.",
- "durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
- "weight": "1",
- "equipment_slot": "4",
+ "requirements": "{5,20}",
"remove_sleeves": "true",
+ "examine": "Zamorak Vestments.",
"grand_exchange_price": "151000",
+ "durability": null,
"name": "Zamorak robe top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10786",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,4,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,4,0,0",
+ "equipment_slot": "4"
},
{
- "examine": "Blessed vestments of Guthix.",
- "durability": null,
- "low_alchemy": "2800",
- "high_alchemy": "4200",
- "weight": "1",
- "equipment_slot": "4",
+ "requirements": "{5,20}",
"remove_sleeves": "true",
+ "examine": "Blessed vestments of Guthix.",
"grand_exchange_price": "80181",
+ "durability": null,
"name": "Guthix robe top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "10788",
- "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,4,0,0"
+ "bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,4,0,0",
+ "equipment_slot": "4"
},
{
+ "requirements": "{1,40}-{4,70}",
"examine": "Zamorak blessed dragonhide body armour.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "6",
"absorb": "0,6,3",
"equipment_slot": "4",
@@ -98344,11 +93232,10 @@
"bonuses": "0,0,0,-15,30,55,47,60,50,55,0,0,0,0,0"
},
{
+ "requirements": "{1,40}-{4,70}",
"shop_price": "13000",
"examine": "Saradomin blessed dragonhide body armour.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"destroy": "true",
"weight": "6",
"absorb": "0,6,3",
@@ -98362,11 +93249,10 @@
"bonuses": "0,0,0,-15,30,55,47,60,50,55,0,0,0,0,0"
},
{
+ "requirements": "{1,40}-{4,70}",
"shop_price": "13",
"examine": "Guthix blessed dragonhide body armour.",
"durability": null,
- "low_alchemy": "5200",
- "high_alchemy": "7800",
"weight": "6",
"absorb": "0,6,3",
"equipment_slot": "4",
@@ -98379,27 +93265,26 @@
"bonuses": "0,0,0,-15,30,55,47,60,50,55,0,0,0,0,0"
},
{
- "examine": "Endorsed by Robin Hood.",
- "durability": null,
- "low_alchemy": "180",
- "high_alchemy": "270",
- "weight": "0.2",
- "equipment_slot": "0",
"lendable": "true",
+ "requirements": "{4,40}",
+ "examine": "Endorsed by Robin Hood.",
"grand_exchange_price": "3070557",
+ "durability": null,
"name": "Robin hood hat",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "10796",
- "bonuses": "0,0,0,-10,8,4,6,8,4,4,0,0,0,0,0"
+ "bonuses": "0,0,0,-10,8,4,6,8,4,4,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "requirements": "{1,40}",
"examine": "Rune platebody with gold trim.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -98411,12 +93296,12 @@
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,0,0,0,0,0"
},
{
+ "requirements": "{1,40}",
"examine": "Rune platebody with trim.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"weight": "9.07",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -98434,8 +93319,6 @@
"durability": null,
"name": "Tan cavalier",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "10802",
"equipment_slot": "0"
@@ -98447,8 +93330,6 @@
"durability": null,
"name": "Dark cavalier",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "10804",
"equipment_slot": "0"
@@ -98460,8 +93341,6 @@
"durability": null,
"name": "Black cavalier",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "10806",
"equipment_slot": "0"
@@ -98473,8 +93352,6 @@
"durability": null,
"name": "Arctic pyre logs",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "2",
"archery_ticket_price": "0",
"id": "10808"
@@ -98495,8 +93372,6 @@
"durability": null,
"name": "Arctic pine logs",
"tradeable": "true",
- "low_alchemy": "14",
- "high_alchemy": "21",
"weight": "2",
"archery_ticket_price": "0",
"id": "10810",
@@ -98518,8 +93393,6 @@
"durability": null,
"name": "Split log",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "10812"
@@ -98541,8 +93414,6 @@
"durability": null,
"name": "Hair",
"tradeable": "true",
- "low_alchemy": "48",
- "high_alchemy": "72",
"archery_ticket_price": "0",
"id": "10814"
},
@@ -98563,7 +93434,6 @@
"durability": null,
"name": "Raw yak meat",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "3",
"archery_ticket_price": "0",
"id": "10816"
@@ -98585,8 +93455,6 @@
"durability": null,
"name": "Yak-hide",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10818"
@@ -98607,8 +93475,6 @@
"durability": null,
"name": "Cured yak-hide",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10820"
@@ -98623,16 +93489,19 @@
"id": "10821"
},
{
- "remove_sleeves": "true",
"requirements": "{1,20}",
"ge_buy_limit": "100",
- "grand_exchange_price": "122",
+ "examine": "Smelly yak body armour.",
"durability": null,
+ "weight": "3",
+ "equipment_slot": "4",
+ "remove_sleeves": "true",
+ "grand_exchange_price": "122",
"name": "Yak-hide armour",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "10822",
- "bonuses": "0,0,0,-5,0,25,20,15,-2,25,5,0,0,0,0",
- "equipment_slot": "4"
+ "bonuses": "0,0,0,-5,0,25,20,15,-2,25,5,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -98647,9 +93516,12 @@
"requirements": "{1,20}",
"ge_buy_limit": "100",
"grand_exchange_price": "83",
+ "examine": "Leg protection, made from smelly yak-hide.",
"durability": null,
"name": "Yak-hide armour",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "2",
"id": "10824",
"bonuses": "0,0,0,-5,10,25,20,15,-2,10,0,0,0,0,0",
"equipment_slot": "7"
@@ -98666,15 +93538,14 @@
{
"requirements": "{1,25}",
"ge_buy_limit": "100",
- "examine": "A shield worn by Fremennik warriors.",
+ "examine": "A wooden shield with a rope rim.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"destroy": "true",
- "weight": "2.2",
+ "weight": "3",
"equipment_slot": "5",
"grand_exchange_price": "402",
"name": "Fremennik round shield",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "10826",
"bonuses": "0,0,0,-10,-10,17,17,31,-4,33,20,0,0,0,0"
@@ -98695,10 +93566,9 @@
"ge_buy_limit": "100",
"examine": "A gift from Neitiznot's Burgher.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "2.2",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "44800",
"name": "Helm of neitiznot",
@@ -98728,35 +93598,31 @@
"id": "10831"
},
{
+ "destroy_message": "Are you sure? You can find another in King Sorvott's chest.",
"examine": "A silly hat with bells.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "2.7",
- "equipment_slot": "0",
- "destroy_message": "Are you sure? You can find another in King Sorvott's chest.",
"name": "Silly jester hat",
"tradeable": "false",
+ "destroy": "true",
+ "weight": "2.7",
"archery_ticket_price": "0",
"id": "10836",
- "bonuses": "0,0,0,0,0,0,0,0,5,-5,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,5,-5,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
- "examine": "A jester's jangly top.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "6.8",
- "equipment_slot": "4",
"destroy_message": "Are you sure? You can find another in King Sorvott's chest.",
"remove_sleeves": "true",
+ "examine": "A jester's jangly top.",
+ "durability": null,
"name": "Silly jester top",
"tradeable": "false",
+ "destroy": "true",
+ "weight": "6.8",
"archery_ticket_price": "0",
"id": "10837",
- "bonuses": "0,0,0,0,0,0,0,0,5,-5,5,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,5,-5,5,0,0,0,0",
+ "equipment_slot": "4"
},
{
"destroy_message": "Are you sure? You can find another in King Sorvott's chest.",
@@ -98790,6 +93656,7 @@
"archery_ticket_price": "0",
"id": "10840",
"bonuses": "0,0,0,0,0,0,0,0,5,-5,0,0,0,0,0",
+ "alchemizable": "true",
"equipment_slot": "3"
},
{
@@ -98876,9 +93743,7 @@
"examine": "Her writing is too scrawled to make out what it says.",
"durability": null,
"name": "Sin seer's note",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "10856"
@@ -98906,6 +93771,7 @@
"two_handed": "true",
"weapon_interface": "7",
"turn180_anim": "7045",
+ "equip_audio": "2248",
"render_anim": "124",
"equipment_slot": "3",
"destroy_message": "You can get another one by visiting the cave near the Fishing guild. A friendly ghost will replace it for you. You must be wearing a Ring of visibility, or you cannot get it back.",
@@ -98916,6 +93782,9 @@
"archery_ticket_price": "0",
"id": "10858",
"stand_turn_anim": "7040",
+ "defence_anim": "7050",
+ "attack_anims": "7041,7041,7048,7049",
+ "attack_audios": "2503,0,2504,0",
"bonuses": "-4,27,21,4,0,0,0,0,4,-1,0,26,0,0,0"
},
{
@@ -98947,9 +93816,7 @@
"examine": "Can't get any safer than this.",
"durability": null,
"name": "Hard hat",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"weight": "2",
"archery_ticket_price": "0",
@@ -98957,28 +93824,24 @@
"equipment_slot": "0"
},
{
- "examine": "Very fetching.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "weight": "0.9",
- "equipment_slot": "4",
"destroy_message": "You'll have to find another within the Tower of Life!",
"remove_sleeves": "true",
+ "examine": "Very fetching.",
+ "durability": null,
"name": "Builder's shirt",
"tradeable": "false",
+ "destroy": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
- "id": "10863"
+ "id": "10863",
+ "equipment_slot": "4"
},
{
"destroy_message": "You'll have to find another within the Tower of Life!",
"examine": "Slightly tatty in my opinion.",
"durability": null,
"name": "Builder's trousers",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -98990,9 +93853,7 @@
"examine": "They'll offer good protection for my toes.",
"durability": null,
"name": "Builder's boots",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.4",
"archery_ticket_price": "0",
@@ -99045,7 +93906,6 @@
"examine": "Bound to have some use.",
"durability": null,
"name": "Coloured ball",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "10874"
},
@@ -99067,22 +93927,18 @@
},
{
"shop_price": "128",
- "examine": "I can keep my grub in here.",
+ "examine": "I can keep my items in here, but I'll need a banker to get them out.",
"durability": null,
"name": "Plain satchel",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "10877",
"equipment_slot": "5"
},
{
- "examine": "I can keep my grub in here.",
+ "examine": "I can keep my seeds and herbs in here.",
"durability": null,
"name": "Green satchel",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "10878",
@@ -99090,11 +93946,9 @@
},
{
"shop_price": "128",
- "examine": "I can keep my grub in here.",
+ "examine": "I can keep my summoning charms in here.",
"durability": null,
"name": "Red satchel",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "10879",
@@ -99104,30 +93958,24 @@
"examine": "I can keep my grub in here.",
"durability": null,
"name": "Black satchel",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "10880",
"equipment_slot": "5"
},
{
- "examine": "I can keep my grub in here.",
+ "examine": "I can keep my ores in here.",
"durability": null,
"name": "Gold satchel",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "10881",
"equipment_slot": "5"
},
{
- "examine": "I can keep my grub in here.",
+ "examine": "I can keep my runes in here.",
"durability": null,
"name": "Rune satchel",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "10882",
@@ -99138,9 +93986,7 @@
"examine": "Can't get any safer than this.",
"durability": null,
"name": "Hard hat",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"weight": "2",
"archery_ticket_price": "0",
@@ -99179,34 +94025,31 @@
"examine": "This is likely to put my back out... (when fixed) OR It's broken. I should see if a pirate smith can fix it. (when broken)",
"walk_anim": "5867",
"has_special": "true",
- "low_alchemy": "92000",
+ "durability": null,
+ "weight": "30",
"turn90ccw_anim": "5867",
"attack_speed": "6",
"two_handed": "true",
+ "weapon_interface": "8",
"turn180_anim": "5867",
+ "equip_audio": "2246",
"defence_anim": "5866",
+ "render_anim": "985",
"equipment_slot": "3",
"attack_anims": "5865,5865,5865,5865",
"destroy_message": "If you drop the Anchor it will be destroyed, and you will need to get a new one from Brother Tranquillity, then pay Smith to re",
"stand_anim": "5869",
+ "name": "Barrelchest anchor",
"run_anim": "5868",
"archery_ticket_price": "0",
"id": "10887",
"stand_turn_anim": "823",
- "bonuses": "-2,10,92,0,0,0,0,0,0,0,0,100,0,0,0",
- "durability": null,
- "high_alchemy": "138000",
- "weight": "30",
- "weapon_interface": "8",
- "render_anim": "985",
- "name": "Barrelchest anchor"
+ "bonuses": "-2,10,92,0,0,0,0,0,0,0,0,100,0,0,0"
},
{
"examine": "This is likely to put my back out... (when fixed) OR It's broken. I should see if a pirate smith can fix it. (when broken)",
"durability": null,
"name": "Barrelchest anchor",
- "low_alchemy": "92000",
- "high_alchemy": "138000",
"weight": "30",
"archery_ticket_price": "0",
"attack_speed": "6",
@@ -99322,8 +94165,6 @@
"durability": null,
"name": "Mixture - step 1(4)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10909"
},
@@ -99343,8 +94184,6 @@
"durability": null,
"name": "Mixture - step 1(3)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10911"
},
@@ -99364,8 +94203,6 @@
"durability": null,
"name": "Mixture - step 1(2)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10913"
},
@@ -99385,8 +94222,6 @@
"durability": null,
"name": "Mixture - step 1(1)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10915"
},
@@ -99406,8 +94241,6 @@
"durability": null,
"name": "Mixture - step 2(4)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10917"
},
@@ -99427,8 +94260,6 @@
"durability": null,
"name": "Mixture - step 2(3)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10919"
},
@@ -99448,8 +94279,6 @@
"durability": null,
"name": "Mixture - step 2(2)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10921"
},
@@ -99469,8 +94298,6 @@
"durability": null,
"name": "Mixture - step 2(1)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10923"
},
@@ -99490,8 +94317,6 @@
"durability": null,
"name": "Sanfew serum(4)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10925"
},
@@ -99511,8 +94336,6 @@
"durability": null,
"name": "Sanfew serum(3)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10927"
},
@@ -99532,8 +94355,6 @@
"durability": null,
"name": "Sanfew serum(2)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10929"
},
@@ -99553,8 +94374,6 @@
"durability": null,
"name": "Sanfew serum(1)",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10931"
},
@@ -99571,11 +94390,10 @@
"examine": "You certainly will be alright wearing these.",
"durability": null,
"name": "Lumberjack boots",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "10933",
+ "equip_audio": "2237",
"equipment_slot": "10"
},
{
@@ -99615,8 +94433,6 @@
"durability": null,
"name": "Nail beast nails",
"tradeable": "true",
- "low_alchemy": "120",
- "high_alchemy": "180",
"archery_ticket_price": "0",
"id": "10937"
},
@@ -99634,8 +94450,6 @@
"examine": "You certainly will be alright wearing this.",
"durability": null,
"name": "Lumberjack top",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "10939",
@@ -99645,8 +94459,6 @@
"examine": "You certainly will be alright wearing these.",
"durability": null,
"name": "Lumberjack legs",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.9",
"archery_ticket_price": "0",
"id": "10940",
@@ -99657,8 +94469,6 @@
"examine": "You certainly will be alright wearing this.",
"durability": null,
"name": "Lumberjack hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "10941",
@@ -99699,8 +94509,6 @@
"examine": "You certainly will be alright wearing this.",
"durability": null,
"name": "Lumberjack top",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "10945",
@@ -99729,8 +94537,6 @@
"durability": null,
"name": "Slayer bell",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
"id": "10952"
},
@@ -99749,8 +94555,6 @@
"ge_buy_limit": "100",
"examine": "Armour made out of Frog hide.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "3",
"absorb": "0,3,1",
"equipment_slot": "4",
@@ -99777,8 +94581,6 @@
"ge_buy_limit": "100",
"examine": "Chaps made out of Frog hide.",
"durability": null,
- "low_alchemy": "360",
- "high_alchemy": "540",
"weight": "3",
"absorb": "0,2,1",
"equipment_slot": "7",
@@ -99804,8 +94606,6 @@
"ge_buy_limit": "100",
"examine": "Boots made out of Frog hide.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"equipment_slot": "10",
"grand_exchange_price": "1156",
@@ -99829,8 +94629,6 @@
"examine": "Thick and tasty soup.",
"durability": null,
"name": "Green gloop soup",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10960"
},
@@ -99839,8 +94637,6 @@
"examine": "A big bowl of frogspawn gumbo.",
"durability": null,
"name": "Frogspawn gumbo",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10961"
},
@@ -99849,8 +94645,6 @@
"examine": "A juicy frogburger.",
"durability": null,
"name": "Frogburger",
- "low_alchemy": "4",
- "high_alchemy": "6",
"weight": "1",
"archery_ticket_price": "0",
"id": "10962"
@@ -99859,8 +94653,6 @@
"examine": "Nice and crunchy.",
"durability": null,
"name": "Coated frogs' legs",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10963"
},
@@ -99869,8 +94661,6 @@
"examine": "Bat shish kebab.",
"durability": null,
"name": "Bat shish",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10964"
},
@@ -99879,8 +94669,6 @@
"examine": "Wall beast fingers in a white fern sauce.",
"durability": null,
"name": "Fingers",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "10965"
},
@@ -99888,8 +94676,6 @@
"examine": "A whole roasted frog.",
"durability": null,
"name": "Roast frog",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1",
"archery_ticket_price": "0",
"id": "10967"
@@ -99898,8 +94684,6 @@
"examine": "Tasty saut??ed mushrooms.",
"durability": null,
"name": "Mushrooms",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "10968"
},
@@ -99907,8 +94691,6 @@
"examine": "Chunky cave-crawler fillets.",
"durability": null,
"name": "Fillets",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "10969"
},
@@ -99916,8 +94698,6 @@
"examine": "Steamed cave pond loach.",
"durability": null,
"name": "Loach",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1",
"archery_ticket_price": "0",
"id": "10970"
@@ -99946,8 +94726,6 @@
"durability": null,
"name": "Light orb",
"tradeable": "true",
- "low_alchemy": "140",
- "high_alchemy": "210",
"archery_ticket_price": "0",
"id": "10973"
},
@@ -99982,8 +94760,6 @@
"examine": "A curved Construction bone.",
"durability": null,
"name": "Curved bone",
- "low_alchemy": "2",
- "high_alchemy": "4",
"weight": "1",
"archery_ticket_price": "0",
"id": "10977"
@@ -99995,7 +94771,6 @@
"durability": null,
"name": "Swamp weed",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "10978"
@@ -100013,8 +94788,6 @@
"examine": "Add a wire to complete it.",
"durability": null,
"name": "Empty light orb",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "10980"
},
@@ -100025,8 +94798,6 @@
"durability": null,
"name": "Cave goblin wire",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "1",
"archery_ticket_price": "0",
"id": "10981"
@@ -100152,8 +94923,6 @@
"examine": "A perfect example of a tortoise shell.",
"durability": null,
"name": "Perfect shell",
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "6.8",
"archery_ticket_price": "0",
"id": "10995"
@@ -100194,9 +94963,7 @@
"examine": "The History of Dagon'hai.",
"durability": null,
"name": "Dagon'hai history",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11001"
@@ -100206,9 +94973,7 @@
"examine": "The diary of Sin'keth Magis.",
"durability": null,
"name": "Sin'keth's diary",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11002"
@@ -100238,9 +95003,7 @@
"examine": "A full folder. You should take this back to Rat.",
"durability": null,
"name": "Full folder",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11007"
@@ -100451,8 +95214,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "11027",
"equipment_slot": "3"
@@ -100464,8 +95225,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "11028",
"equipment_slot": "3"
@@ -100477,8 +95236,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "11029",
"equipment_slot": "3"
@@ -100490,8 +95247,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "11030",
"equipment_slot": "3"
@@ -100546,8 +95301,6 @@
"examine": "A salty sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "10400",
- "high_alchemy": "15600",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "6",
@@ -100595,8 +95348,6 @@
"durability": null,
"name": "Rope",
"tradeable": "true",
- "low_alchemy": "7",
- "high_alchemy": "10",
"weight": "1.3",
"archery_ticket_price": "0",
"id": "11046"
@@ -100631,8 +95382,6 @@
"durability": null,
"name": "Axe head",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "11050"
},
@@ -100699,6 +95448,7 @@
},
{
"durability": null,
+ "attack_audios": "2508,2508,25092508",
"name": "Mace",
"archery_ticket_price": "0",
"attack_speed": "5",
@@ -100718,8 +95468,6 @@
"examine": "Oldak's marvellous Moving-over-distance Sphere",
"durability": null,
"name": "Goblin village sphere",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "11060"
@@ -100731,15 +95479,15 @@
"examine": "It has ancient goblin symbols on it.",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
+ "equip_audio": "2246",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
"grand_exchange_price": "4093",
+ "attack_audios": "2508,2508,25092508",
"name": "Ancient mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -100761,8 +95509,6 @@
"durability": null,
"name": "Bracelet mould",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "11065"
@@ -100780,16 +95526,14 @@
"shop_price": "165",
"ge_buy_limit": "5000",
"examine": "I wonder if this is valuable.",
- "durability": null,
- "low_alchemy": "220",
- "high_alchemy": "330",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "223",
+ "durability": null,
"name": "Gold bracelet",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
- "id": "11069"
+ "id": "11069",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "5000",
@@ -100804,16 +95548,14 @@
"shop_price": "1035",
"ge_buy_limit": "5000",
"examine": "I wonder if this is valuable.",
- "durability": null,
- "low_alchemy": "460",
- "high_alchemy": "690",
- "weight": "0.25",
- "equipment_slot": "9",
"grand_exchange_price": "578",
+ "durability": null,
"name": "Sapphire bracelet",
"tradeable": "true",
+ "weight": "0.25",
"archery_ticket_price": "0",
- "id": "11072"
+ "id": "11072",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "5000",
@@ -100832,8 +95574,6 @@
"durability": null,
"name": "Bracelet of clay",
"tradeable": "true",
- "low_alchemy": "506",
- "high_alchemy": "759",
"archery_ticket_price": "0",
"id": "11074",
"equipment_slot": "9"
@@ -100854,8 +95594,6 @@
"durability": null,
"name": "Emerald bracelet",
"tradeable": "true",
- "low_alchemy": "610",
- "high_alchemy": "915",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "11076",
@@ -100877,8 +95615,6 @@
"durability": null,
"name": "Castlewar brace(3)",
"tradeable": "true",
- "low_alchemy": "670",
- "high_alchemy": "1005",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "11079",
@@ -100899,8 +95635,6 @@
"durability": null,
"name": "Castlewar brace(2)",
"tradeable": "true",
- "low_alchemy": "670",
- "high_alchemy": "1005",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "11081",
@@ -100920,8 +95654,6 @@
"durability": null,
"name": "Castlewar brace(1)",
"tradeable": "true",
- "low_alchemy": "670",
- "high_alchemy": "1005",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "11083",
@@ -100944,8 +95676,6 @@
"durability": null,
"name": "Ruby bracelet",
"tradeable": "true",
- "low_alchemy": "930",
- "high_alchemy": "1395",
"archery_ticket_price": "0",
"id": "11085",
"equipment_slot": "9"
@@ -100966,8 +95696,6 @@
"durability": null,
"name": "Inoculation brace",
"tradeable": "true",
- "low_alchemy": "1024",
- "high_alchemy": "1536",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "11088",
@@ -100989,8 +95717,6 @@
"durability": null,
"name": "Phoenix necklace",
"tradeable": "true",
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"archery_ticket_price": "0",
"id": "11090",
"equipment_slot": "2"
@@ -101012,8 +95738,6 @@
"durability": null,
"name": "Diamond bracelet",
"tradeable": "true",
- "low_alchemy": "1530",
- "high_alchemy": "2295",
"archery_ticket_price": "0",
"id": "11092",
"equipment_slot": "9"
@@ -101034,8 +95758,6 @@
"durability": null,
"name": "Forinthry brace(5)",
"tradeable": "true",
- "low_alchemy": "1680",
- "high_alchemy": "2520",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "11095",
@@ -101056,8 +95778,6 @@
"durability": null,
"name": "Forinthry brace(4)",
"tradeable": "true",
- "low_alchemy": "1680",
- "high_alchemy": "2520",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "11097",
@@ -101076,8 +95796,6 @@
"durability": null,
"name": "Forinthry brace(3)",
"tradeable": "true",
- "low_alchemy": "1680",
- "high_alchemy": "2520",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "11099",
@@ -101096,8 +95814,6 @@
"durability": null,
"name": "Forinthry brace(2)",
"tradeable": "true",
- "low_alchemy": "1680",
- "high_alchemy": "2520",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "11101",
@@ -101117,8 +95833,6 @@
"durability": null,
"name": "Forinthry brace(1)",
"tradeable": "true",
- "low_alchemy": "1680",
- "high_alchemy": "2520",
"weight": "0.2",
"archery_ticket_price": "0",
"id": "11103",
@@ -101140,8 +95854,6 @@
"durability": null,
"name": "Skills necklace(4)",
"tradeable": "true",
- "low_alchemy": "8080",
- "high_alchemy": "12120",
"archery_ticket_price": "0",
"id": "11105",
"equipment_slot": "2"
@@ -101161,8 +95873,6 @@
"durability": null,
"name": "Skills necklace(3)",
"tradeable": "true",
- "low_alchemy": "8080",
- "high_alchemy": "12120",
"archery_ticket_price": "0",
"id": "11107",
"equipment_slot": "2"
@@ -101180,8 +95890,6 @@
"durability": null,
"name": "Skills necklace(2)",
"tradeable": "true",
- "low_alchemy": "8080",
- "high_alchemy": "12120",
"archery_ticket_price": "0",
"id": "11109",
"equipment_slot": "2"
@@ -101199,8 +95907,6 @@
"durability": null,
"name": "Skills necklace(1)",
"tradeable": "true",
- "low_alchemy": "8080",
- "high_alchemy": "12120",
"archery_ticket_price": "0",
"id": "11111",
"equipment_slot": "2"
@@ -101219,8 +95925,6 @@
"durability": null,
"name": "Skills necklace",
"tradeable": "true",
- "low_alchemy": "8080",
- "high_alchemy": "12120",
"archery_ticket_price": "0",
"id": "11113",
"equipment_slot": "2"
@@ -101241,8 +95945,6 @@
"durability": null,
"name": "Dragon bracelet",
"tradeable": "true",
- "low_alchemy": "7650",
- "high_alchemy": "11475",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "11115",
@@ -101260,17 +95962,15 @@
{
"ge_buy_limit": "100",
"examine": "A handy way to get around.",
- "durability": null,
- "low_alchemy": "8416",
- "high_alchemy": "12624",
- "weight": "0.3",
- "equipment_slot": "9",
"grand_exchange_price": "29700",
+ "durability": null,
"name": "Combat bracelet(4)",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "11118",
- "bonuses": "7,7,7,3,7,5,5,5,3,5,5,6,0,0,0"
+ "bonuses": "7,7,7,3,7,5,5,5,3,5,5,6,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -101288,8 +95988,6 @@
"durability": null,
"name": "Combat bracelet(3)",
"tradeable": "true",
- "low_alchemy": "8416",
- "high_alchemy": "12624",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "11120",
@@ -101310,8 +96008,6 @@
"durability": null,
"name": "Combat bracelet(2)",
"tradeable": "true",
- "low_alchemy": "8416",
- "high_alchemy": "12624",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "11122",
@@ -101332,8 +96028,6 @@
"durability": null,
"name": "Combat bracelet(1)",
"tradeable": "true",
- "low_alchemy": "8416",
- "high_alchemy": "12624",
"weight": "0.3",
"archery_ticket_price": "0",
"id": "11124",
@@ -101351,17 +96045,15 @@
{
"ge_buy_limit": "100",
"examine": "You will need to recharge the bracelet at the Legends Guild.",
- "durability": null,
- "low_alchemy": "8416",
- "high_alchemy": "12624",
- "weight": "0.3",
- "equipment_slot": "9",
"grand_exchange_price": "29000",
+ "durability": null,
"name": "Combat bracelet",
"tradeable": "true",
+ "weight": "0.3",
"archery_ticket_price": "0",
"id": "11126",
- "bonuses": "7,7,7,3,7,5,5,5,3,5,5,6,0,0,0"
+ "bonuses": "7,7,7,3,7,5,5,5,3,5,5,6,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -101380,8 +96072,6 @@
"durability": null,
"name": "Berserker necklace",
"tradeable": "true",
- "low_alchemy": "80400",
- "high_alchemy": "120600",
"archery_ticket_price": "0",
"id": "11128",
"bonuses": "-10,-10,-10,0,0,-20,-20,-20,-20,-20,-20,7,3,0,0",
@@ -101404,8 +96094,6 @@
"durability": null,
"name": "Onyx bracelet",
"tradeable": "true",
- "low_alchemy": "80800",
- "high_alchemy": "121200",
"archery_ticket_price": "0",
"id": "11130",
"equipment_slot": "9"
@@ -101422,17 +96110,15 @@
{
"ge_buy_limit": "100",
"examine": "Helps to restore your life points.",
- "durability": null,
- "low_alchemy": "80800",
- "high_alchemy": "121200",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "124200",
+ "durability": null,
"name": "Regen bracelet",
"tradeable": "true",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "11133",
- "bonuses": "8,8,8,3,7,6,6,6,3,6,5,7,0,0,0"
+ "bonuses": "8,8,8,3,7,6,6,6,3,6,5,7,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
@@ -101629,12 +96315,12 @@
"examine": "Second-rate crossbow, former property of the Phoenix Gang.",
"walk_anim": "4226",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "3",
"turn90ccw_anim": "822",
+ "attack_speed": "6",
"weapon_interface": "17",
"turn180_anim": "4227",
+ "equip_audio": "2244",
"render_anim": "175",
"equipment_slot": "3",
"stand_anim": "4591",
@@ -101659,12 +96345,12 @@
"examine": "Second-rate crossbow, former property of the Phoenix Gang.",
"walk_anim": "4226",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "3",
"turn90ccw_anim": "822",
+ "attack_speed": "6",
"weapon_interface": "17",
"turn180_anim": "4227",
+ "equip_audio": "2244",
"render_anim": "175",
"equipment_slot": "3",
"stand_anim": "4591",
@@ -101690,7 +96376,6 @@
"durability": null,
"name": "Newspaper",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "11169"
},
@@ -101707,7 +96392,6 @@
"durability": null,
"name": "Newspaper",
"tradeable": "true",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "11171"
},
@@ -101753,7 +96437,6 @@
"durability": null,
"name": "Old coin",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11179"
@@ -101849,8 +96532,6 @@
"examine": "An enchanted necklace.",
"durability": null,
"name": "Digsite pendant (1)",
- "low_alchemy": "960",
- "high_alchemy": "1440",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "11190",
@@ -101860,8 +96541,6 @@
"examine": "An enchanted necklace.",
"durability": null,
"name": "Digsite pendant (2)",
- "low_alchemy": "960",
- "high_alchemy": "1440",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "11191",
@@ -101871,8 +96550,6 @@
"examine": "An enchanted necklace.",
"durability": null,
"name": "Digsite pendant (3)",
- "low_alchemy": "960",
- "high_alchemy": "1440",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "11192",
@@ -101882,8 +96559,6 @@
"examine": "An enchanted necklace.",
"durability": null,
"name": "Digsite pendant (4)",
- "low_alchemy": "960",
- "high_alchemy": "1440",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "11193",
@@ -101893,8 +96568,6 @@
"examine": "An enchanted necklace.",
"durability": null,
"name": "Digsite pendant (5)",
- "low_alchemy": "960",
- "high_alchemy": "1440",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "11194",
@@ -101955,8 +96628,6 @@
"ge_buy_limit": "100",
"examine": "A sturdy helmet that belonged to Rupert the beard.",
"durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "1.9",
"equipment_slot": "0",
"grand_exchange_price": "35800",
@@ -102014,7 +96685,6 @@
"durability": null,
"name": "Shrunk ogleroot",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11205"
@@ -102044,101 +96714,88 @@
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "An arrow made using a dragon's talon.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "13",
"grand_exchange_price": "2674",
+ "durability": null,
"name": "Dragon arrow",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11212",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with dragon heads and oil-soaked cloth.lit: Dragon-headed fire arrow.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "13",
"grand_exchange_price": "3988",
+ "durability": null,
"name": "Dragon fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11217",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "unlit: Arrows with dragon heads and oil-soaked cloth.lit: Dragon-headed fire arrow.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "13",
"grand_exchange_price": "3834",
+ "durability": null,
"name": "Dragon fire arrows",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11222",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "An arrow made using a dragon's talon.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "13",
"grand_exchange_price": "3141",
+ "durability": null,
"name": "Dragon arrow(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11227",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "An arrow made using a dragon's talon.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "13",
"grand_exchange_price": "2866",
+ "durability": null,
"name": "Dragon arrow(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11228",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "An arrow made using a dragon's talon.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "13",
"grand_exchange_price": "3766",
+ "durability": null,
"name": "Dragon arrow(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11229",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
+ "equipment_slot": "13"
},
{
"requirements": "{4,60}",
"ge_buy_limit": "10000",
"examine": "A deadly throwing dart with a dragon tip.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"equipment_slot": "3",
"grand_exchange_price": "315",
"attack_audios": "2547,0,0,0",
@@ -102153,10 +96810,9 @@
"ge_buy_limit": "10000",
"examine": "A deadly throwing dart with a dragon tip.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"equipment_slot": "3",
"grand_exchange_price": "445",
"attack_audios": "2547,0,0,0",
@@ -102174,8 +96830,6 @@
"durability": null,
"name": "Dragon dart tip",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"archery_ticket_price": "0",
"id": "11232"
},
@@ -102184,10 +96838,9 @@
"ge_buy_limit": "10000",
"examine": "A deadly throwing dart with a dragon tip.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"equipment_slot": "3",
"grand_exchange_price": "516",
"attack_audios": "2547,0,0,0",
@@ -102202,10 +96855,9 @@
"ge_buy_limit": "10000",
"examine": "A deadly throwing dart with a dragon tip.",
"durability": null,
- "low_alchemy": "200",
- "high_alchemy": "300",
"attack_speed": "3",
"weapon_interface": "18",
+ "equip_audio": "2244",
"equipment_slot": "3",
"grand_exchange_price": "1248",
"attack_audios": "2547,0,0,0",
@@ -102222,7 +96874,6 @@
"walk_anim": "819",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "48000",
"turn90ccw_anim": "822",
"attack_speed": "9",
"two_handed": "true",
@@ -102240,7 +96891,6 @@
"bonuses": "0,0,0,0,95,0,0,0,0,0,0,0,0,0,0",
"requirements": "{4,60}",
"durability": null,
- "high_alchemy": "72001",
"weight": "1.9",
"weapon_interface": "16",
"equip_audio": "3738",
@@ -102265,8 +96915,6 @@
"durability": null,
"name": "Dragon arrowtips",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"archery_ticket_price": "0",
"id": "11237"
},
@@ -102278,8 +96926,6 @@
"durability": null,
"name": "Baby impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "11238"
},
@@ -102300,8 +96946,6 @@
"durability": null,
"name": "Young impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "11240"
},
@@ -102322,8 +96966,6 @@
"durability": null,
"name": "Gourm' impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2",
"archery_ticket_price": "0",
"id": "11242"
@@ -102345,8 +96987,6 @@
"durability": null,
"name": "Earth impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2",
"archery_ticket_price": "0",
"id": "11244"
@@ -102368,8 +97008,6 @@
"durability": null,
"name": "Ess' impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "11246"
@@ -102391,8 +97029,6 @@
"durability": null,
"name": "Eclectic impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "11248"
},
@@ -102413,8 +97049,6 @@
"durability": null,
"name": "Nature impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "11250"
},
@@ -102435,8 +97069,6 @@
"durability": null,
"name": "Magpie impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1",
"archery_ticket_price": "0",
"id": "11252"
@@ -102458,8 +97090,6 @@
"durability": null,
"name": "Ninja impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "1",
"archery_ticket_price": "0",
"id": "11254"
@@ -102481,8 +97111,6 @@
"durability": null,
"name": "Dragon impling jar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "11256"
},
@@ -102507,30 +97135,31 @@
"id": "11258"
},
{
- "shop_price": "3",
"turn90cw_anim": "6610",
"examine": "For catching butterflies.",
"walk_anim": "6607",
- "durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
- "destroy": "true",
- "weight": "0.2",
"turn90ccw_anim": "6609",
"attack_speed": "4",
- "two_handed": "true",
- "weapon_interface": "14",
+ "two_handed": "",
"turn180_anim": "6608",
- "render_anim": "1426",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "You will have to trade with Elnock to get a new magic butterfly net.",
"stand_anim": "6604",
- "name": "Magic butterfly net",
"tradeable": "false",
"run_anim": "6603",
"archery_ticket_price": "0",
"id": "11259",
- "stand_turn_anim": "6611"
+ "stand_turn_anim": "6611",
+ "requirements": "{21,17}",
+ "shop_price": "3",
+ "durability": null,
+ "destroy": "true",
+ "weight": "0.2",
+ "weapon_interface": "14",
+ "render_anim": "1426",
+ "name": "Magic butterfly net"
},
{
"shop_price": "1",
@@ -102560,8 +97189,6 @@
"durability": null,
"name": "Imp repellent",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "2.2",
"archery_ticket_price": "0",
"id": "11262"
@@ -102582,8 +97209,6 @@
"durability": null,
"name": "Anchovy oil",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "11264"
},
@@ -102603,8 +97228,6 @@
"durability": null,
"name": "Anchovy paste",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "11266"
},
@@ -102661,19 +97284,17 @@
"id": "11273"
},
{
- "examine": "The label says 'Vivid Crimson', but it looks like pink to me!",
- "durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "weight": "0.9",
- "equipment_slot": "4",
"remove_sleeves": "true",
+ "examine": "The label says 'Vivid Crimson', but it looks like pink to me!",
"grand_exchange_price": "27",
+ "durability": null,
"name": "Ham shirt",
"tradeable": "true",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "11274",
- "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,2,2,0,0,0,0,0,0,0",
+ "equipment_slot": "4"
},
{
"durability": null,
@@ -102695,8 +97316,6 @@
"durability": null,
"name": "Cavalier mask",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "11277",
@@ -102729,8 +97348,6 @@
"durability": null,
"name": "Cavalier and mask",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "11280",
@@ -102756,17 +97373,16 @@
{
"requirements": "{1,75}",
"examine": "A heavy shield with a snarling, draconic visage.",
+ "grand_exchange_price": "5653008",
"rare_item": "true",
"durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
- "weight": "7.2",
- "equipment_slot": "5",
- "grand_exchange_price": "5653008",
"name": "Dragonfire shield",
+ "weight": "7.2",
"archery_ticket_price": "0",
"id": "11283",
- "bonuses": "0,0,0,-10,-5,70,75,72,10,72,17,7,0,0,0"
+ "bonuses": "0,0,0,-10,-5,20,25,22,10,22,17,7,0,0,0",
+ "equip_audio": "2245",
+ "equipment_slot": "5"
},
{
"requirements": "{1,75}",
@@ -102774,9 +97390,8 @@
"examine": "A heavy shield with a snarling, draconic visage.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
"weight": "7.2",
+ "equip_audio": "2245",
"equipment_slot": "5",
"grand_exchange_price": "7700000",
"name": "Dragonfire shield",
@@ -102802,8 +97417,6 @@
"durability": null,
"name": "Draconic visage",
"tradeable": "true",
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"weight": "1.8",
"archery_ticket_price": "0",
"id": "11286"
@@ -102833,8 +97446,6 @@
"durability": null,
"name": "Roe",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "11324"
@@ -102855,8 +97466,6 @@
"durability": null,
"name": "Caviar",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "0.05",
"archery_ticket_price": "0",
"id": "11326"
@@ -102878,8 +97487,6 @@
"durability": null,
"name": "Leaping trout",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "11328"
},
@@ -102899,8 +97506,6 @@
"durability": null,
"name": "Leaping salmon",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "11330"
},
@@ -102920,8 +97525,6 @@
"durability": null,
"name": "Leaping sturgeon",
"tradeable": "true",
- "low_alchemy": "30",
- "high_alchemy": "45",
"archery_ticket_price": "0",
"id": "11332"
},
@@ -102951,10 +97554,9 @@
"examine": "Protects your head and looks impressive too.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "60000",
- "high_alchemy": "90000",
"weight": "2",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"remove_beard": "true",
"equipment_slot": "0",
"lendable": "true",
@@ -102979,8 +97581,6 @@
"examine": "The bones of a barbarian warrior, slain by his fellow adventurers.",
"durability": null,
"name": "Mangled bones",
- "low_alchemy": "400",
- "high_alchemy": "600",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -102991,8 +97591,6 @@
"examine": "The bones of a barbarian warrior, slain by vile dragons.",
"durability": null,
"name": "Chewed bones",
- "low_alchemy": "1",
- "high_alchemy": "1",
"destroy": "true",
"weight": "9.6",
"archery_ticket_price": "0",
@@ -103004,7 +97602,6 @@
"durability": null,
"name": "My notes",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11339"
@@ -103311,8 +97908,6 @@
"examine": "A bronze-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103322,6 +97917,7 @@
"equipment_slot": "3",
"grand_exchange_price": "204",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Bronze hasta",
"tradeable": "true",
"run_anim": "1210",
@@ -103345,8 +97941,7 @@
"examine": "An iron-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "36",
- "high_alchemy": "54",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -103355,6 +97950,7 @@
"equipment_slot": "3",
"grand_exchange_price": "25",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Iron hasta",
"tradeable": "true",
"run_anim": "1210",
@@ -103379,8 +97975,6 @@
"examine": "A steel-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103390,6 +97984,7 @@
"equipment_slot": "3",
"grand_exchange_price": "93",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Steel hasta",
"tradeable": "true",
"run_anim": "1210",
@@ -103414,8 +98009,6 @@
"examine": "A mithril-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103425,6 +98018,7 @@
"equipment_slot": "3",
"grand_exchange_price": "357",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Mithril hasta",
"tradeable": "true",
"run_anim": "1210",
@@ -103449,9 +98043,7 @@
"examine": "An adamant-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "832",
- "high_alchemy": "1248",
- "weight": "2",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -103460,6 +98052,7 @@
"equipment_slot": "3",
"grand_exchange_price": "1095",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Adamant hasta",
"tradeable": "true",
"run_anim": "1210",
@@ -103484,8 +98077,6 @@
"examine": "A rune-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "8320",
- "high_alchemy": "12480",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103495,6 +98086,7 @@
"equipment_slot": "3",
"grand_exchange_price": "12300",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Rune hasta",
"tradeable": "true",
"run_anim": "1210",
@@ -103518,8 +98110,6 @@
"examine": "A bronze-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103529,6 +98119,7 @@
"equipment_slot": "3",
"grand_exchange_price": "290",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Bronze hasta(p)",
"tradeable": "true",
"run_anim": "1210",
@@ -103548,8 +98139,10 @@
},
{
"turn90cw_anim": "1207",
+ "examine": "A karambwan poison-tipped, one-handed bronze hasta.",
"walk_anim": "1205",
"durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"weapon_interface": "14",
"turn180_anim": "1206",
@@ -103569,8 +98162,6 @@
"examine": "A bronze-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103580,6 +98171,7 @@
"equipment_slot": "3",
"grand_exchange_price": "775",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Bronze hasta(p+)",
"tradeable": "true",
"run_anim": "1210",
@@ -103603,8 +98195,6 @@
"examine": "A bronze-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103614,6 +98204,7 @@
"equipment_slot": "3",
"grand_exchange_price": "8974",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Bronze hasta(p++)",
"tradeable": "true",
"run_anim": "1210",
@@ -103637,8 +98228,7 @@
"examine": "An iron-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "36",
- "high_alchemy": "54",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -103647,6 +98237,7 @@
"equipment_slot": "3",
"grand_exchange_price": "99",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Iron hasta(p)",
"tradeable": "true",
"run_anim": "1210",
@@ -103666,8 +98257,10 @@
},
{
"turn90cw_anim": "1207",
+ "examine": "A karambwan poison-tipped, one-handed iron hasta.",
"walk_anim": "1205",
"durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"weapon_interface": "14",
"turn180_anim": "1206",
@@ -103687,8 +98280,7 @@
"examine": "An iron-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "36",
- "high_alchemy": "54",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -103697,6 +98289,7 @@
"equipment_slot": "3",
"grand_exchange_price": "584",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Iron hasta(p+)",
"tradeable": "true",
"run_anim": "1210",
@@ -103720,8 +98313,7 @@
"examine": "An iron-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "36",
- "high_alchemy": "54",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -103730,6 +98322,7 @@
"equipment_slot": "3",
"grand_exchange_price": "8783",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Iron hasta(p++)",
"tradeable": "true",
"run_anim": "1210",
@@ -103754,8 +98347,6 @@
"examine": "A steel-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103765,6 +98356,7 @@
"equipment_slot": "3",
"grand_exchange_price": "151",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Steel hasta(p)",
"tradeable": "true",
"run_anim": "1210",
@@ -103785,8 +98377,10 @@
{
"requirements": "{0,5}",
"turn90cw_anim": "1207",
+ "examine": "A karambwan poison-tipped, one-handed steel hasta.",
"walk_anim": "1205",
"durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"weapon_interface": "14",
"turn180_anim": "1206",
@@ -103807,8 +98401,6 @@
"examine": "A steel-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103818,6 +98410,7 @@
"equipment_slot": "3",
"grand_exchange_price": "636",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Steel hasta(p+)",
"tradeable": "true",
"run_anim": "1210",
@@ -103842,8 +98435,6 @@
"examine": "A steel-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "130",
- "high_alchemy": "195",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103853,6 +98444,7 @@
"equipment_slot": "3",
"grand_exchange_price": "8835",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Steel hasta(p++)",
"tradeable": "true",
"run_anim": "1210",
@@ -103877,8 +98469,6 @@
"examine": "A mithril-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103888,6 +98478,7 @@
"equipment_slot": "3",
"grand_exchange_price": "440",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Mithril hasta(p)",
"tradeable": "true",
"run_anim": "1210",
@@ -103908,11 +98499,9 @@
{
"requirements": "{0,20}",
"turn90cw_anim": "1207",
- "examine": "A mithril-tipped, one-handed hasta.",
+ "examine": "A karambwan poison-tipped, one-handed mithril hasta",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103922,8 +98511,8 @@
"equipment_slot": "3",
"grand_exchange_price": "353",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Mithril hasta(kp)",
- "tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "11402",
@@ -103937,8 +98526,6 @@
"examine": "A mithril-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103948,6 +98535,7 @@
"equipment_slot": "3",
"grand_exchange_price": "925",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Mithril hasta(p+)",
"tradeable": "true",
"run_anim": "1210",
@@ -103972,8 +98560,6 @@
"examine": "A mithril-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "338",
- "high_alchemy": "507",
"weight": "1.8",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -103983,6 +98569,7 @@
"equipment_slot": "3",
"grand_exchange_price": "8711",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Mithril hasta(p++)",
"tradeable": "true",
"run_anim": "1210",
@@ -104007,9 +98594,7 @@
"examine": "An adamant-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "832",
- "high_alchemy": "1248",
- "weight": "2",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -104018,6 +98603,7 @@
"equipment_slot": "3",
"grand_exchange_price": "1154",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Adamant hasta(p)",
"tradeable": "true",
"run_anim": "1210",
@@ -104038,14 +98624,18 @@
{
"requirements": "{0,30}",
"turn90cw_anim": "1207",
+ "examine": "\tA karambwan poison-tipped, one-handed adamantite hasta.",
"walk_anim": "1205",
"durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
+ "attack_speed": "5",
"weapon_interface": "14",
"turn180_anim": "1206",
"render_anim": "28",
"equipment_slot": "3",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Adamant hasta(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
@@ -104060,9 +98650,7 @@
"examine": "An adamant-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "832",
- "high_alchemy": "1248",
- "weight": "2",
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "14",
@@ -104071,6 +98659,7 @@
"equipment_slot": "3",
"grand_exchange_price": "1639",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Adamant hasta(p+)",
"tradeable": "true",
"run_anim": "1210",
@@ -104092,8 +98681,10 @@
"requirements": "{0,30}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
+ "examine": "An adamant-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"weapon_interface": "14",
"turn180_anim": "1206",
@@ -104102,6 +98693,7 @@
"grand_exchange_price": "9388",
"stand_anim": "813",
"name": "Adamant hasta(p++)",
+ "tradeable": "true",
"run_anim": "1210",
"archery_ticket_price": "0",
"id": "11412",
@@ -104124,8 +98716,6 @@
"examine": "A rune-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "8320",
- "high_alchemy": "12480",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -104135,6 +98725,7 @@
"equipment_slot": "3",
"grand_exchange_price": "12300",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Rune hasta(p)",
"tradeable": "true",
"run_anim": "1210",
@@ -104155,14 +98746,17 @@
{
"requirements": "{0,40}",
"turn90cw_anim": "1207",
+ "examine": "A karambwan poison-tipped, one-handed rune hasta.",
"walk_anim": "1205",
"durability": null,
+ "weight": "2.2",
"turn90ccw_anim": "1208",
"weapon_interface": "14",
"turn180_anim": "1206",
"render_anim": "28",
"equipment_slot": "3",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Rune hasta(kp)",
"run_anim": "1210",
"archery_ticket_price": "0",
@@ -104171,13 +98765,12 @@
"bonuses": "36,36,36,0,0,-10,-10,-9,0,-10,0,42,0,0,0"
},
{
+ "requirements": "{0,40}",
"ge_buy_limit": "100",
"turn90cw_anim": "1207",
"examine": "A rune-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "8320",
- "high_alchemy": "12480",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -104187,6 +98780,7 @@
"equipment_slot": "3",
"grand_exchange_price": "12200",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Rune hasta(p+)",
"tradeable": "true",
"run_anim": "1210",
@@ -104211,8 +98805,6 @@
"examine": "A rune-tipped, one-handed hasta.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "8320",
- "high_alchemy": "12480",
"weight": "2.2",
"turn90ccw_anim": "1208",
"attack_speed": "5",
@@ -104222,6 +98814,7 @@
"equipment_slot": "3",
"grand_exchange_price": "15500",
"stand_anim": "813",
+ "attack_audios": "2562,2556,2555,2562",
"name": "Rune hasta(p++)",
"tradeable": "true",
"run_anim": "1210",
@@ -104246,8 +98839,6 @@
"durability": null,
"name": "Attack mix(2)",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "11429"
@@ -104268,8 +98859,6 @@
"durability": null,
"name": "Attack mix(1)",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"weight": "0.1",
"archery_ticket_price": "0",
"id": "11431"
@@ -104290,9 +98879,8 @@
"durability": null,
"name": "Antipoison mix(2)",
"tradeable": "true",
- "low_alchemy": "86",
- "high_alchemy": "129",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11433"
},
{
@@ -104311,9 +98899,8 @@
"durability": null,
"name": "Antipoison mix(1)",
"tradeable": "true",
- "low_alchemy": "86",
- "high_alchemy": "129",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11435"
},
{
@@ -104332,9 +98919,8 @@
"durability": null,
"name": "Relicym's mix(2)",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11437"
},
{
@@ -104353,9 +98939,8 @@
"durability": null,
"name": "Relicym's mix(1)",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11439"
},
{
@@ -104374,9 +98959,8 @@
"durability": null,
"name": "Strength mix(1)",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11441"
},
{
@@ -104395,9 +98979,8 @@
"durability": null,
"name": "Strength mix(2)",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11443"
},
{
@@ -104416,9 +98999,8 @@
"durability": null,
"name": "Combat mix(2)",
"tradeable": "true",
- "low_alchemy": "42",
- "high_alchemy": "63",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11445"
},
{
@@ -104437,9 +99019,8 @@
"durability": null,
"name": "Combat mix(1)",
"tradeable": "true",
- "low_alchemy": "42",
- "high_alchemy": "63",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11447"
},
{
@@ -104458,9 +99039,8 @@
"durability": null,
"name": "Restore mix(2)",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "39",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11449"
},
{
@@ -104479,9 +99059,8 @@
"durability": null,
"name": "Restore mix(1)",
"tradeable": "true",
- "low_alchemy": "26",
- "high_alchemy": "39",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11451"
},
{
@@ -104500,9 +99079,8 @@
"durability": null,
"name": "Energy mix(2)",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "43",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11453"
},
{
@@ -104521,9 +99099,8 @@
"durability": null,
"name": "Energy mix(1)",
"tradeable": "true",
- "low_alchemy": "28",
- "high_alchemy": "43",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11455"
},
{
@@ -104542,9 +99119,8 @@
"durability": null,
"name": "Defence mix(2)",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11457"
},
{
@@ -104563,9 +99139,8 @@
"durability": null,
"name": "Defence mix(1)",
"tradeable": "true",
- "low_alchemy": "36",
- "high_alchemy": "54",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11459"
},
{
@@ -104585,6 +99160,7 @@
"name": "Agility mix(2)",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11461"
},
{
@@ -104604,6 +99180,7 @@
"name": "Agility mix(1)",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11463"
},
{
@@ -104622,9 +99199,8 @@
"durability": null,
"name": "Prayer mix(2)",
"tradeable": "true",
- "low_alchemy": "46",
- "high_alchemy": "69",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11465"
},
{
@@ -104643,9 +99219,8 @@
"durability": null,
"name": "Prayer mix(1)",
"tradeable": "true",
- "low_alchemy": "46",
- "high_alchemy": "69",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11467"
},
{
@@ -104664,9 +99239,8 @@
"durability": null,
"name": "Superattack mix(2)",
"tradeable": "true",
- "low_alchemy": "54",
- "high_alchemy": "81",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11469"
},
{
@@ -104685,9 +99259,8 @@
"durability": null,
"name": "Superattack mix(1)",
"tradeable": "true",
- "low_alchemy": "54",
- "high_alchemy": "81",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11471"
},
{
@@ -104706,9 +99279,8 @@
"durability": null,
"name": "Anti-p supermix(2)",
"tradeable": "true",
- "low_alchemy": "86",
- "high_alchemy": "129",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11473"
},
{
@@ -104727,9 +99299,8 @@
"durability": null,
"name": "Anti-p supermix(1)",
"tradeable": "true",
- "low_alchemy": "86",
- "high_alchemy": "129",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11475"
},
{
@@ -104748,9 +99319,8 @@
"durability": null,
"name": "Fishing mix(2)",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11477"
},
{
@@ -104769,9 +99339,8 @@
"durability": null,
"name": "Fishing mix(1)",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11479"
},
{
@@ -104788,18 +99357,17 @@
"examine": "One/Two doses of fishy super energy potion.",
"grand_exchange_price": "1062",
"durability": null,
- "name": "Sup. energy mix(2)",
+ "name": "Super energy mix(2)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11481"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "1062",
"durability": null,
- "name": "Sup. energy mix(2)",
+ "name": "Super energy mix(2)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11482"
@@ -104809,18 +99377,17 @@
"examine": "One/Two doses of fishy super energy potion.",
"grand_exchange_price": "562",
"durability": null,
- "name": "Sup. energy mix(1)",
+ "name": "Super energy mix(1)",
"tradeable": "true",
- "low_alchemy": "64",
- "high_alchemy": "96",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11483"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "562",
"durability": null,
- "name": "Sup. energy mix(1)",
+ "name": "Super energy mix(1)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11484"
@@ -104830,18 +99397,17 @@
"examine": "One/Two doses of fishy Super strength potion.",
"grand_exchange_price": "955",
"durability": null,
- "name": "Sup. str. mix(2)",
+ "name": "Super strength mix(2)",
"tradeable": "true",
- "low_alchemy": "66",
- "high_alchemy": "99",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11485"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "955",
"durability": null,
- "name": "Sup. str. mix(2)",
+ "name": "Super strength mix(2)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11486"
@@ -104851,18 +99417,17 @@
"examine": "One/Two doses of fishy Super strength potion.",
"grand_exchange_price": "1040",
"durability": null,
- "name": "Sup. str. mix(1)",
+ "name": "Super strength mix(1)",
"tradeable": "true",
- "low_alchemy": "66",
- "high_alchemy": "99",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11487"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "1040",
"durability": null,
- "name": "Sup. str. mix(1)",
+ "name": "Super strength mix(1)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11488"
@@ -104874,9 +99439,8 @@
"durability": null,
"name": "Magic ess. mix(2)",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11489"
},
{
@@ -104895,9 +99459,8 @@
"durability": null,
"name": "Magic ess. mix(1)",
"tradeable": "true",
- "low_alchemy": "72",
- "high_alchemy": "108",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11491"
},
{
@@ -104914,18 +99477,17 @@
"examine": "One/Two doses of fishy super restore potion.",
"grand_exchange_price": "3670",
"durability": null,
- "name": "Sup. restore mix(2)",
+ "name": "Super restore mix(2)",
"tradeable": "true",
- "low_alchemy": "66",
- "high_alchemy": "99",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11493"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "3670",
"durability": null,
- "name": "Sup. restore mix(2)",
+ "name": "Super restore mix(2)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11494"
@@ -104935,18 +99497,17 @@
"examine": "One/Two doses of fishy super restore potion.",
"grand_exchange_price": "3104",
"durability": null,
- "name": "Sup. restore mix(1)",
+ "name": "Super restore mix(1)",
"tradeable": "true",
- "low_alchemy": "66",
- "high_alchemy": "99",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11495"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "3104",
"durability": null,
- "name": "Sup. restore mix(1)",
+ "name": "Super restore mix(1)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11496"
@@ -104956,18 +99517,17 @@
"examine": "One/two doses of fishy super defence potion",
"grand_exchange_price": "38",
"durability": null,
- "name": "Sup. def. mix(2)",
+ "name": "Super defence mix(2)",
"tradeable": "true",
- "low_alchemy": "79",
- "high_alchemy": "118",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11497"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "38",
"durability": null,
- "name": "Sup. def. mix(2)",
+ "name": "Super defence mix(2)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11498"
@@ -104977,18 +99537,17 @@
"examine": "One/two doses of fishy super defence potion",
"grand_exchange_price": "66",
"durability": null,
- "name": "Sup. def. mix(1)",
+ "name": "Super defence mix(1)",
"tradeable": "true",
- "low_alchemy": "79",
- "high_alchemy": "118",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11499"
},
{
"ge_buy_limit": "1000",
"grand_exchange_price": "66",
"durability": null,
- "name": "Sup. def. mix(1)",
+ "name": "Super defence mix(1)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11500"
@@ -105001,6 +99560,7 @@
"name": "Antidote+ mix(2)",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11501"
},
{
@@ -105020,6 +99580,7 @@
"name": "Antidote+ mix(1)",
"tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11503"
},
{
@@ -105038,9 +99599,8 @@
"durability": null,
"name": "Antifire mix(2)",
"tradeable": "true",
- "low_alchemy": "79",
- "high_alchemy": "118",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11505"
},
{
@@ -105059,9 +99619,8 @@
"durability": null,
"name": "Antifire mix(1)",
"tradeable": "true",
- "low_alchemy": "79",
- "high_alchemy": "118",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11507"
},
{
@@ -105080,9 +99639,8 @@
"durability": null,
"name": "Ranging mix(2)",
"tradeable": "true",
- "low_alchemy": "86",
- "high_alchemy": "129",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11509"
},
{
@@ -105101,9 +99659,8 @@
"durability": null,
"name": "Ranging mix(1)",
"tradeable": "true",
- "low_alchemy": "86",
- "high_alchemy": "129",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11511"
},
{
@@ -105122,9 +99679,8 @@
"durability": null,
"name": "Magic mix(2)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11513"
},
{
@@ -105143,9 +99699,8 @@
"durability": null,
"name": "Magic mix(1)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11515"
},
{
@@ -105164,9 +99719,8 @@
"durability": null,
"name": "Hunting mix(2)",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11517"
},
{
@@ -105185,9 +99739,8 @@
"durability": null,
"name": "Hunting mix(1)",
"tradeable": "true",
- "low_alchemy": "3",
- "high_alchemy": "5",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11519"
},
{
@@ -105206,9 +99759,8 @@
"durability": null,
"name": "Zamorak mix(2)",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11521"
},
{
@@ -105227,9 +99779,8 @@
"durability": null,
"name": "Zamorak mix(1)",
"tradeable": "true",
- "low_alchemy": "60",
- "high_alchemy": "90",
"archery_ticket_price": "0",
+ "weight": "0.1",
"id": "11523"
},
{
@@ -105248,8 +99799,6 @@
"durability": null,
"name": "Wimpy feather",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "11525"
},
@@ -105276,8 +99825,6 @@
"durability": null,
"name": "Glassblowing book",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "11656"
},
@@ -105292,48 +99839,45 @@
},
{
"remove_head": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "200",
"examine": "A mage helm from the order of the Void Knights.",
"durability": null,
- "low_alchemy": "3940",
- "high_alchemy": "5910",
- "destroy": "true",
- "equipment_slot": "0",
"name": "Void mage helm",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
"id": "11663",
- "bonuses": "0,0,0,0,0,6,6,6,6,6,6,0,0,0,0"
+ "bonuses": "0,0,0,0,0,6,6,6,6,6,6,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "200",
"examine": "A ranger helm from the order of the Void Knights",
"durability": null,
- "low_alchemy": "3940",
- "high_alchemy": "5910",
- "weight": "3.6",
- "equipment_slot": "0",
"name": "Void ranger helm",
"tradeable": "false",
+ "weight": "3.6",
"archery_ticket_price": "0",
"id": "11664",
- "bonuses": "0,0,0,0,0,6,6,6,6,6,6,0,0,0,0"
+ "bonuses": "0,0,0,0,0,6,6,6,6,6,6,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "200",
"examine": "A melee helm from the order of the Void Knights.",
"durability": null,
- "low_alchemy": "3940",
- "high_alchemy": "5910",
- "weight": "0.4",
- "equipment_slot": "0",
"name": "Void melee helm",
"tradeable": "false",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "11665",
- "bonuses": "0,0,0,0,0,6,6,6,6,6,6,0,0,0,0"
+ "bonuses": "0,0,0,0,0,6,6,6,6,6,6,0,0,0,0",
+ "equipment_slot": "0"
},
{
"durability": null,
@@ -105409,57 +99953,52 @@
},
{
"remove_head": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "200",
"examine": "A mage helm from the order of the Void Knights.",
"durability": null,
- "low_alchemy": "3940",
- "high_alchemy": "5910",
- "destroy": "true",
- "equipment_slot": "0",
"name": "Void mage helm",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
"id": "11674",
- "bonuses": "0,0,0,0,0,6,6,6,6,6,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,6,6,6,6,6,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "200",
"examine": "A ranger helm from the order of the Void Knights",
"durability": null,
- "low_alchemy": "3940",
- "high_alchemy": "5910",
- "weight": "3.6",
- "equipment_slot": "0",
"name": "Void ranger helm",
"tradeable": "false",
+ "weight": "3.6",
"archery_ticket_price": "0",
"id": "11675",
- "bonuses": "0,0,0,0,0,6,6,6,6,6,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,6,6,6,6,6,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
+ "requirements": "{0,42}-{1,42}-{2,42}-{3,42}-{4,42}-{5,22}-{6,42}",
"shop_price": "200",
"examine": "A melee helm from the order of the Void Knights.",
"durability": null,
- "low_alchemy": "3940",
- "high_alchemy": "5910",
- "weight": "0.4",
- "equipment_slot": "0",
"name": "Void melee helm",
"tradeable": "false",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "11676",
- "bonuses": "0,0,0,0,0,6,6,6,6,6,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,6,6,6,6,6,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"destroy_message": "I can find another book in the Keldagrim library.",
"examine": "\"Beyond Trollheim\" by Nestor Peregrine.",
"durability": null,
"name": "Explorer's notes",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "11677"
@@ -105517,8 +100056,6 @@
"durability": null,
"name": "Godsword shards",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"archery_ticket_price": "0",
"id": "11686"
},
@@ -105538,8 +100075,6 @@
"durability": null,
"name": "Godsword shards",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"archery_ticket_price": "0",
"id": "11688"
},
@@ -105559,8 +100094,6 @@
"durability": null,
"name": "Godsword blade",
"tradeable": "true",
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"weight": "7.5",
"archery_ticket_price": "0",
"id": "11690"
@@ -105581,8 +100114,6 @@
"durability": null,
"name": "Godsword shards",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"archery_ticket_price": "0",
"id": "11692"
},
@@ -105602,7 +100133,6 @@
"walk_anim": "7046",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "500000",
"turn90ccw_anim": "7044",
"attack_speed": "6",
"two_handed": "true",
@@ -105620,9 +100150,9 @@
"bonuses": "0,132,80,0,0,0,0,0,0,0,0,132,8,0,0",
"requirements": "{0,75}",
"durability": null,
- "high_alchemy": "750000",
"weight": "10",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "3846,0,0,0",
@@ -105644,7 +100174,6 @@
"walk_anim": "7046",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "500000",
"turn90ccw_anim": "7044",
"attack_speed": "6",
"two_handed": "true",
@@ -105662,9 +100191,9 @@
"bonuses": "0,132,80,0,0,0,0,0,0,0,0,132,8,0,0",
"requirements": "{0,75}",
"durability": null,
- "high_alchemy": "750000",
"weight": "10",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "3846,0,0,0",
@@ -105685,7 +100214,6 @@
"examine": "A gracious, heavy sword.",
"walk_anim": "7046",
"has_special": "true",
- "low_alchemy": "500000",
"turn90ccw_anim": "7044",
"attack_speed": "6",
"two_handed": "true",
@@ -105703,9 +100231,9 @@
"bonuses": "0,132,80,0,0,0,0,0,0,0,0,132,8,0,0",
"requirements": "{0,75}",
"durability": null,
- "high_alchemy": "750000",
"weight": "10",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "3846,0,0,0",
@@ -105726,7 +100254,6 @@
"examine": "A terrifying, heavy sword.",
"walk_anim": "7046",
"has_special": "true",
- "low_alchemy": "500000",
"turn90ccw_anim": "7044",
"attack_speed": "6",
"two_handed": "true",
@@ -105744,9 +100271,9 @@
"bonuses": "0,132,80,0,0,0,0,0,0,0,0,132,8,0,0",
"requirements": "{0,75}",
"durability": null,
- "high_alchemy": "750000",
"weight": "10",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "3846,0,0,0",
@@ -105769,8 +100296,6 @@
"durability": null,
"name": "Armadyl hilt",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "11702"
@@ -105792,8 +100317,6 @@
"durability": null,
"name": "Bandos hilt",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "11704"
@@ -105815,8 +100338,6 @@
"durability": null,
"name": "Saradomin hilt",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "11706"
@@ -105838,8 +100359,6 @@
"durability": null,
"name": "Zamorak hilt",
"tradeable": "true",
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"weight": "2.5",
"archery_ticket_price": "0",
"id": "11708"
@@ -105861,8 +100380,6 @@
"rare_item": "true",
"name": "Godsword shard 1",
"tradeable": "true",
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"weight": "2",
"archery_ticket_price": "0",
"id": "11710"
@@ -105879,15 +100396,13 @@
{
"ge_buy_limit": "10",
"examine": "Part of the Godsword blade.",
+ "grand_exchange_price": "149100",
"durability": null,
"rare_item": "true",
- "low_alchemy": "100000",
- "high_alchemy": "150000",
- "destroy": "true",
- "weight": "2",
- "grand_exchange_price": "149100",
"name": "Godsword shard 2",
"tradeable": "true",
+ "destroy": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "11712"
},
@@ -105908,8 +100423,6 @@
"rare_item": "true",
"name": "Godsword shard 3",
"tradeable": "true",
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"weight": "2",
"archery_ticket_price": "0",
"id": "11714"
@@ -105930,7 +100443,6 @@
"walk_anim": "1205",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "40000",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"two_handed": "true",
@@ -105948,9 +100460,9 @@
"bonuses": "85,65,65,0,0,13,13,12,0,13,0,75,2,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "60000",
"weight": "3",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"name": "Zamorakian spear"
@@ -105971,10 +100483,9 @@
"examine": "A helmet of great craftmanship.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "0.5",
"absorb": "0,5,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "4100000",
@@ -105999,10 +100510,9 @@
"examine": "A chestplate of great craftsmanship",
"rare_item": "true",
"durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"weight": "4",
"absorb": "0,10,5",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"remove_sleeves": "true",
@@ -106025,13 +100535,12 @@
{
"requirements": "{1,70}-{4,70}",
"ge_buy_limit": "2",
- "examine": "A rune plateskirt in the colours of Armadyl.",
+ "examine": "A plateskirt of great craftsmanship.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"weight": "8",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"grand_exchange_price": "14800000",
@@ -106056,8 +100565,6 @@
"examine": "A sturdy chestplate.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "106000",
- "high_alchemy": "159000",
"weight": "12",
"absorb": "4,0,9",
"equipment_slot": "4",
@@ -106085,8 +100592,6 @@
"examine": "A sturdy pair of tassets.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "109000",
- "high_alchemy": "163500",
"weight": "8",
"absorb": "3,0,6",
"equipment_slot": "7",
@@ -106113,9 +100618,8 @@
"examine": "Some sturdy boots",
"rare_item": "true",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"weight": "6",
+ "equip_audio": "2237",
"equipment_slot": "10",
"lendable": "true",
"grand_exchange_price": "111700",
@@ -106141,7 +100645,6 @@
"walk_anim": "7046",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "52000",
"turn90ccw_anim": "7044",
"attack_speed": "4",
"two_handed": "true",
@@ -106159,9 +100662,9 @@
"bonuses": "0,82,60,0,0,0,0,0,0,0,0,82,2,0,0",
"requirements": "{0,70}",
"durability": null,
- "high_alchemy": "78000",
"weight": "3",
"weapon_interface": "7",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"attack_audios": "3846,0,0,0",
@@ -106182,9 +100685,8 @@
"examine": "These will protect my feet.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "1",
+ "equip_audio": "2237",
"equipment_slot": "10",
"lendable": "true",
"grand_exchange_price": "95400",
@@ -106205,7 +100707,7 @@
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
- "examine": "A scroll for Sir Tiffy. The wax seal is broken. / Before reading the scroll: A scroll for Sir Tiffy. It is sealed with a wax insignia.",
+ "examine": "A scroll for Sir Tiffy. It is sealed with a wax insignia.",
"durability": null,
"name": "Knight's notes",
"tradeable": "false",
@@ -106215,7 +100717,7 @@
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
- "examine": "A scroll for Sir Tiffy. The wax seal is broken. / Before reading the scroll: A scroll for Sir Tiffy. It is sealed with a wax insignia.",
+ "examine": "A scroll for Sir Tiffy. The wax seal is broken.",
"durability": null,
"name": "Knight's notes",
"tradeable": "false",
@@ -106229,11 +100731,12 @@
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "6800",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
+ "defence_anim": "420",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "231300",
"stand_anim": "813",
"tradeable": "true",
@@ -106244,7 +100747,6 @@
"bonuses": "7,-1,28,12,0,2,3,1,12,0,0,35,0,0,0",
"requirements": "{0,30}-{6,30}",
"durability": null,
- "high_alchemy": "10200",
"weight": "2",
"weapon_interface": "1",
"equip_audio": "2230",
@@ -106266,11 +100768,12 @@
"turn90cw_anim": "1207",
"examine": "It's a slightly magical stick.",
"walk_anim": "1205",
- "low_alchemy": "18000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
+ "defence_anim": "420",
"equipment_slot": "3",
+ "attack_anims": "419,419,419,419",
"grand_exchange_price": "267600",
"stand_anim": "813",
"tradeable": "true",
@@ -106281,9 +100784,9 @@
"bonuses": "10,-1,40,14,0,2,3,1,14,0,0,50,0,0,0",
"requirements": "{0,40}-{6,40}",
"durability": null,
- "high_alchemy": "27000",
"weight": "2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Mystic steam staff"
@@ -106343,9 +100846,7 @@
"examine": "It makes a sound.",
"durability": null,
"name": "Crystal chime",
- "low_alchemy": "4",
"tradeable": "false",
- "high_alchemy": "6",
"destroy": "true",
"weight": "1",
"archery_ticket_price": "0",
@@ -106441,8 +100942,6 @@
"durability": null,
"name": "Logs",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"weight": "2",
"archery_ticket_price": "0",
"id": "11760"
@@ -106670,6 +101169,7 @@
"destroy_message": "Another can be found in the Grim Reaper's house.",
"examine": "Used to sharpen the blade of a scythe.",
"durability": null,
+ "attack_audios": "2524,2524,2522,2524",
"name": "Scythe sharpener",
"tradeable": "false",
"destroy": "true",
@@ -106729,8 +101229,6 @@
"examine": "Armour designed to fit goblins.",
"durability": null,
"name": "White goblin mail",
- "low_alchemy": "16",
- "high_alchemy": "24",
"weight": "3",
"archery_ticket_price": "0",
"id": "11791",
@@ -106755,8 +101253,6 @@
"examine": "Oldak's Marvellous Moving-Over-Distance Sphere",
"durability": null,
"name": "Plain of mud sphere",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"id": "11794"
},
@@ -106867,8 +101363,6 @@
"examine": "You can combine these with a toadflax to make a goblin transformation potion.",
"durability": null,
"name": "Pharmakos berries",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "11807"
},
@@ -106876,8 +101370,6 @@
"examine": "An ugly albino fish.",
"durability": null,
"name": "Whitefish",
- "low_alchemy": "8",
- "high_alchemy": "12",
"weight": "0.25",
"archery_ticket_price": "0",
"id": "11808"
@@ -106886,8 +101378,6 @@
"examine": "4 doses of goblin transmogrification potion.",
"durability": null,
"name": "Goblin potion (4)",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "11809",
"equipment_slot": "5"
@@ -106896,8 +101386,6 @@
"examine": "3 doses of goblin transmogrification potion.",
"durability": null,
"name": "Goblin potion (3)",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "11810"
},
@@ -106905,8 +101393,6 @@
"examine": "2 doses of goblin transmogrification potion.",
"durability": null,
"name": "Goblin potion (2)",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "11811"
},
@@ -106914,8 +101400,6 @@
"examine": "1 dose of goblin transmogrification potion.",
"durability": null,
"name": "Goblin potion (1)",
- "low_alchemy": "5",
- "high_alchemy": "7",
"archery_ticket_price": "0",
"id": "11812"
},
@@ -107199,13 +101683,14 @@
"shop_price": "136112",
"ge_buy_limit": "100",
"examine": "Grand Exchange set containing a rune full helm, platebody, legs and kiteshield.",
- "grand_exchange_price": "136300",
"durability": null,
+ "weight": "2.2",
+ "absorb": "9,0,20",
+ "grand_exchange_price": "136300",
"name": "Rune armour set (l)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "11838",
- "absorb": "9,0,20",
"bonuses": "0,0,0,-65,-21,207,209,192,-12,205,102,0,0,0,0"
},
{
@@ -107243,9 +101728,12 @@
"requirements": "{1,60}",
"ge_buy_limit": "10",
"grand_exchange_price": "4800000",
+ "examine": "Grand Exchange set containing a dragon helm, chainbody, legs.",
"durability": null,
"name": "Dragon chain armour set (l)",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "2.2",
"id": "11842"
},
{
@@ -107261,9 +101749,12 @@
"requirements": "{1,60}",
"ge_buy_limit": "10",
"grand_exchange_price": "4600000",
+ "examine": "Grand Exchange set containing a dragon helm, chainbody, skirt.",
"durability": null,
"name": "Dragon chain armour set (sk)",
+ "tradeable": "true",
"archery_ticket_price": "0",
+ "weight": "2.2",
"id": "11844"
},
{
@@ -108563,7 +103054,6 @@
"examine": "Full: ",
"durability": null,
"name": "Bird's nest",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "11966"
},
@@ -108593,8 +103083,6 @@
"examine": "A water tiara infused with water runes. Protects from the hot desert sun.",
"durability": null,
"name": "Enchanted water tiara",
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"archery_ticket_price": "0",
"id": "11969",
@@ -108938,7 +103426,8 @@
"tradeable": "false",
"destroy": "true",
"archery_ticket_price": "0",
- "id": "12003"
+ "id": "12003",
+ "equip_audio": "2245"
},
{
"destroy_message": "I can make another one by using camel dung on a bronze two",
@@ -108979,8 +103468,6 @@
"durability": null,
"name": "Spirit terrorbird pouch",
"tradeable": "true",
- "low_alchemy": "289",
- "high_alchemy": "434",
"archery_ticket_price": "0",
"id": "12007"
},
@@ -108991,8 +103478,6 @@
"durability": null,
"name": "Spirit terrorbird pouch",
"tradeable": "true",
- "low_alchemy": "289",
- "high_alchemy": "434",
"archery_ticket_price": "0",
"id": "12008"
},
@@ -109004,8 +103489,6 @@
"durability": null,
"name": "Granite crab pouch",
"tradeable": "true",
- "low_alchemy": "239",
- "high_alchemy": "359",
"archery_ticket_price": "0",
"id": "12009"
},
@@ -109016,8 +103499,6 @@
"durability": null,
"name": "Granite crab pouch",
"tradeable": "true",
- "low_alchemy": "239",
- "high_alchemy": "359",
"archery_ticket_price": "0",
"id": "12010"
},
@@ -109029,8 +103510,6 @@
"durability": null,
"name": "Praying mantis pouch",
"tradeable": "true",
- "low_alchemy": "1849",
- "high_alchemy": "2774",
"archery_ticket_price": "0",
"id": "12011"
},
@@ -109041,8 +103520,6 @@
"durability": null,
"name": "Praying mantis pouch",
"tradeable": "true",
- "low_alchemy": "1849",
- "high_alchemy": "2774",
"archery_ticket_price": "0",
"id": "12012"
},
@@ -109054,8 +103531,6 @@
"durability": null,
"name": "Giant ent pouch",
"tradeable": "true",
- "low_alchemy": "1409",
- "high_alchemy": "2114",
"archery_ticket_price": "0",
"id": "12013"
},
@@ -109066,8 +103541,6 @@
"durability": null,
"name": "Giant ent pouch",
"tradeable": "true",
- "low_alchemy": "1409",
- "high_alchemy": "2114",
"archery_ticket_price": "0",
"id": "12014"
},
@@ -109079,8 +103552,6 @@
"durability": null,
"name": "Spirit cobra pouch",
"tradeable": "true",
- "low_alchemy": "1329",
- "high_alchemy": "1994",
"archery_ticket_price": "0",
"id": "12015"
},
@@ -109091,8 +103562,6 @@
"durability": null,
"name": "Spirit cobra pouch",
"tradeable": "true",
- "low_alchemy": "1329",
- "high_alchemy": "1994",
"archery_ticket_price": "0",
"id": "12016"
},
@@ -109104,8 +103573,6 @@
"durability": null,
"name": "Spirit dagannoth pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12017"
},
@@ -109116,8 +103583,6 @@
"durability": null,
"name": "Spirit dagannoth pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12018"
},
@@ -109129,8 +103594,6 @@
"durability": null,
"name": "Thorny snail pouch",
"tradeable": "true",
- "low_alchemy": "259",
- "high_alchemy": "389",
"archery_ticket_price": "0",
"id": "12019"
},
@@ -109141,8 +103604,6 @@
"durability": null,
"name": "Thorny snail pouch",
"tradeable": "true",
- "low_alchemy": "259",
- "high_alchemy": "389",
"archery_ticket_price": "0",
"id": "12020"
},
@@ -109154,8 +103615,6 @@
"durability": null,
"name": "Beaver pouch",
"tradeable": "true",
- "low_alchemy": "889",
- "high_alchemy": "1334",
"archery_ticket_price": "0",
"id": "12021"
},
@@ -109166,8 +103625,6 @@
"durability": null,
"name": "Beaver pouch",
"tradeable": "true",
- "low_alchemy": "889",
- "high_alchemy": "1334",
"archery_ticket_price": "0",
"id": "12022"
},
@@ -109179,8 +103636,6 @@
"durability": null,
"name": "Karam. overlord pouch",
"tradeable": "true",
- "low_alchemy": "1609",
- "high_alchemy": "2414",
"archery_ticket_price": "0",
"id": "12023"
},
@@ -109191,8 +103646,6 @@
"durability": null,
"name": "Karam. overlord pouch",
"tradeable": "true",
- "low_alchemy": "1609",
- "high_alchemy": "2414",
"archery_ticket_price": "0",
"id": "12024"
},
@@ -109204,8 +103657,6 @@
"durability": null,
"name": "Hydra pouch",
"tradeable": "true",
- "low_alchemy": "1449",
- "high_alchemy": "2174",
"archery_ticket_price": "0",
"id": "12025"
},
@@ -109216,8 +103667,6 @@
"durability": null,
"name": "Hydra pouch",
"tradeable": "true",
- "low_alchemy": "1449",
- "high_alchemy": "2174",
"archery_ticket_price": "0",
"id": "12026"
},
@@ -109229,8 +103678,6 @@
"durability": null,
"name": "Spirit jelly pouch",
"tradeable": "true",
- "low_alchemy": "1679",
- "high_alchemy": "2519",
"archery_ticket_price": "0",
"id": "12027"
},
@@ -109241,8 +103688,6 @@
"durability": null,
"name": "Spirit jelly pouch",
"tradeable": "true",
- "low_alchemy": "1679",
- "high_alchemy": "2519",
"archery_ticket_price": "0",
"id": "12028"
},
@@ -109254,8 +103699,6 @@
"durability": null,
"name": "Bunyip pouch",
"tradeable": "true",
- "low_alchemy": "1269",
- "high_alchemy": "1904",
"archery_ticket_price": "0",
"id": "12029"
},
@@ -109266,8 +103709,6 @@
"durability": null,
"name": "Bunyip pouch",
"tradeable": "true",
- "low_alchemy": "1269",
- "high_alchemy": "1904",
"archery_ticket_price": "0",
"id": "12030"
},
@@ -109279,8 +103720,6 @@
"durability": null,
"name": "War tortoise pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12031"
},
@@ -109291,8 +103730,6 @@
"durability": null,
"name": "War tortoise pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12032"
},
@@ -109304,8 +103741,6 @@
"durability": null,
"name": "Fruit bat pouch",
"tradeable": "true",
- "low_alchemy": "1469",
- "high_alchemy": "2204",
"archery_ticket_price": "0",
"id": "12033"
},
@@ -109316,8 +103751,6 @@
"durability": null,
"name": "Fruit bat pouch",
"tradeable": "true",
- "low_alchemy": "1469",
- "high_alchemy": "2204",
"archery_ticket_price": "0",
"id": "12034"
},
@@ -109329,8 +103762,6 @@
"durability": null,
"name": "Abyssal parasite pouch",
"tradeable": "true",
- "low_alchemy": "1229",
- "high_alchemy": "1844",
"archery_ticket_price": "0",
"id": "12035"
},
@@ -109341,8 +103772,6 @@
"durability": null,
"name": "Abyssal parasite pouch",
"tradeable": "true",
- "low_alchemy": "1229",
- "high_alchemy": "1844",
"archery_ticket_price": "0",
"id": "12036"
},
@@ -109354,8 +103783,6 @@
"durability": null,
"name": "Abyssal lurker pouch",
"tradeable": "true",
- "low_alchemy": "1359",
- "high_alchemy": "2039",
"archery_ticket_price": "0",
"id": "12037"
},
@@ -109366,8 +103793,6 @@
"durability": null,
"name": "Abyssal lurker pouch",
"tradeable": "true",
- "low_alchemy": "1359",
- "high_alchemy": "2039",
"archery_ticket_price": "0",
"id": "12038"
},
@@ -109379,8 +103804,6 @@
"durability": null,
"name": "Unicorn stallion pouch",
"tradeable": "true",
- "low_alchemy": "1569",
- "high_alchemy": "2354",
"archery_ticket_price": "0",
"id": "12039"
},
@@ -109391,8 +103814,6 @@
"durability": null,
"name": "Unicorn stallion pouch",
"tradeable": "true",
- "low_alchemy": "1569",
- "high_alchemy": "2354",
"archery_ticket_price": "0",
"id": "12040"
},
@@ -109404,8 +103825,6 @@
"durability": null,
"name": "Magpie pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12041"
},
@@ -109416,8 +103835,6 @@
"durability": null,
"name": "Magpie pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12042"
},
@@ -109429,8 +103846,6 @@
"durability": null,
"name": "Dreadfowl pouch",
"tradeable": "true",
- "low_alchemy": "249",
- "high_alchemy": "374",
"archery_ticket_price": "0",
"id": "12043"
},
@@ -109441,8 +103856,6 @@
"durability": null,
"name": "Dreadfowl pouch",
"tradeable": "true",
- "low_alchemy": "249",
- "high_alchemy": "374",
"archery_ticket_price": "0",
"id": "12044"
},
@@ -109454,8 +103867,6 @@
"durability": null,
"name": "Stranger plant pouch",
"tradeable": "true",
- "low_alchemy": "1449",
- "high_alchemy": "2174",
"archery_ticket_price": "0",
"id": "12045"
},
@@ -109466,8 +103877,6 @@
"durability": null,
"name": "Stranger plant pouch",
"tradeable": "true",
- "low_alchemy": "1449",
- "high_alchemy": "2174",
"archery_ticket_price": "0",
"id": "12046"
},
@@ -109478,8 +103887,6 @@
"durability": null,
"name": "Spirit wolf pouch",
"tradeable": "true",
- "low_alchemy": "239",
- "high_alchemy": "359",
"archery_ticket_price": "0",
"id": "12047"
},
@@ -109490,8 +103897,6 @@
"durability": null,
"name": "Spirit wolf pouch",
"tradeable": "true",
- "low_alchemy": "239",
- "high_alchemy": "359",
"archery_ticket_price": "0",
"id": "12048"
},
@@ -109503,8 +103908,6 @@
"durability": null,
"name": "Desert wyrm pouch",
"tradeable": "true",
- "low_alchemy": "619",
- "high_alchemy": "929",
"archery_ticket_price": "0",
"id": "12049"
},
@@ -109515,8 +103918,6 @@
"durability": null,
"name": "Desert wyrm pouch",
"tradeable": "true",
- "low_alchemy": "619",
- "high_alchemy": "929",
"archery_ticket_price": "0",
"id": "12050"
},
@@ -109528,8 +103929,6 @@
"durability": null,
"name": "Evil turnip pouch",
"tradeable": "true",
- "low_alchemy": "1209",
- "high_alchemy": "1814",
"archery_ticket_price": "0",
"id": "12051"
},
@@ -109540,8 +103939,6 @@
"durability": null,
"name": "Evil turnip pouch",
"tradeable": "true",
- "low_alchemy": "1209",
- "high_alchemy": "1814",
"archery_ticket_price": "0",
"id": "12052"
},
@@ -109553,8 +103950,6 @@
"durability": null,
"name": "Vampire bat pouch",
"tradeable": "true",
- "low_alchemy": "979",
- "high_alchemy": "1469",
"archery_ticket_price": "0",
"id": "12053"
},
@@ -109565,8 +103960,6 @@
"durability": null,
"name": "Vampire bat pouch",
"tradeable": "true",
- "low_alchemy": "979",
- "high_alchemy": "1469",
"archery_ticket_price": "0",
"id": "12054"
},
@@ -109578,8 +103971,6 @@
"durability": null,
"name": "Spirit scorpion pouch",
"tradeable": "true",
- "low_alchemy": "739",
- "high_alchemy": "1109",
"archery_ticket_price": "0",
"id": "12055"
},
@@ -109590,8 +103981,6 @@
"durability": null,
"name": "Spirit scorpion pouch",
"tradeable": "true",
- "low_alchemy": "739",
- "high_alchemy": "1109",
"archery_ticket_price": "0",
"id": "12056"
},
@@ -109603,8 +103992,6 @@
"durability": null,
"name": "Arctic bear pouch",
"tradeable": "true",
- "low_alchemy": "309",
- "high_alchemy": "464",
"archery_ticket_price": "0",
"id": "12057"
},
@@ -109615,8 +104002,6 @@
"durability": null,
"name": "Arctic bear pouch",
"tradeable": "true",
- "low_alchemy": "309",
- "high_alchemy": "464",
"archery_ticket_price": "0",
"id": "12058"
},
@@ -109628,8 +104013,6 @@
"durability": null,
"name": "Spirit spider pouch",
"tradeable": "true",
- "low_alchemy": "249",
- "high_alchemy": "374",
"archery_ticket_price": "0",
"id": "12059"
},
@@ -109640,8 +104023,6 @@
"durability": null,
"name": "Spirit spider pouch",
"tradeable": "true",
- "low_alchemy": "249",
- "high_alchemy": "374",
"archery_ticket_price": "0",
"id": "12060"
},
@@ -109653,8 +104034,6 @@
"durability": null,
"name": "Bloated leech pouch",
"tradeable": "true",
- "low_alchemy": "1339",
- "high_alchemy": "2009",
"archery_ticket_price": "0",
"id": "12061"
},
@@ -109665,8 +104044,6 @@
"durability": null,
"name": "Bloated leech pouch",
"tradeable": "true",
- "low_alchemy": "1339",
- "high_alchemy": "2009",
"archery_ticket_price": "0",
"id": "12062"
},
@@ -109678,8 +104055,6 @@
"durability": null,
"name": "Spirit kalphite pouch",
"tradeable": "true",
- "low_alchemy": "679",
- "high_alchemy": "1019",
"archery_ticket_price": "0",
"id": "12063"
},
@@ -109690,8 +104065,6 @@
"durability": null,
"name": "Spirit kalphite pouch",
"tradeable": "true",
- "low_alchemy": "679",
- "high_alchemy": "1019",
"archery_ticket_price": "0",
"id": "12064"
},
@@ -109703,8 +104076,6 @@
"durability": null,
"name": "Honey badger pouch",
"tradeable": "true",
- "low_alchemy": "1009",
- "high_alchemy": "1514",
"archery_ticket_price": "0",
"id": "12065"
},
@@ -109715,8 +104086,6 @@
"durability": null,
"name": "Honey badger pouch",
"tradeable": "true",
- "low_alchemy": "1009",
- "high_alchemy": "1514",
"archery_ticket_price": "0",
"id": "12066"
},
@@ -109728,8 +104097,6 @@
"durability": null,
"name": "Albino rat pouch",
"tradeable": "true",
- "low_alchemy": "919",
- "high_alchemy": "1379",
"archery_ticket_price": "0",
"id": "12067"
},
@@ -109740,8 +104107,6 @@
"durability": null,
"name": "Albino rat pouch",
"tradeable": "true",
- "low_alchemy": "919",
- "high_alchemy": "1379",
"archery_ticket_price": "0",
"id": "12068"
},
@@ -109753,8 +104118,6 @@
"durability": null,
"name": "Granite lobster pouch",
"tradeable": "true",
- "low_alchemy": "1829",
- "high_alchemy": "2744",
"archery_ticket_price": "0",
"id": "12069"
},
@@ -109765,8 +104128,6 @@
"durability": null,
"name": "Granite lobster pouch",
"tradeable": "true",
- "low_alchemy": "1829",
- "high_alchemy": "2744",
"archery_ticket_price": "0",
"id": "12070"
},
@@ -109778,8 +104139,6 @@
"durability": null,
"name": "Macaw pouch",
"tradeable": "true",
- "low_alchemy": "949",
- "high_alchemy": "1424",
"archery_ticket_price": "0",
"id": "12071"
},
@@ -109790,8 +104149,6 @@
"durability": null,
"name": "Macaw pouch",
"tradeable": "true",
- "low_alchemy": "949",
- "high_alchemy": "1424",
"archery_ticket_price": "0",
"id": "12072"
},
@@ -109803,8 +104160,6 @@
"durability": null,
"name": "Bronze minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1189",
- "high_alchemy": "1784",
"archery_ticket_price": "0",
"id": "12073"
},
@@ -109815,8 +104170,6 @@
"durability": null,
"name": "Bronze minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1189",
- "high_alchemy": "1784",
"archery_ticket_price": "0",
"id": "12074"
},
@@ -109828,8 +104181,6 @@
"durability": null,
"name": "Iron minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1419",
- "high_alchemy": "2129",
"archery_ticket_price": "0",
"id": "12075"
},
@@ -109840,8 +104191,6 @@
"durability": null,
"name": "Iron minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1419",
- "high_alchemy": "2129",
"archery_ticket_price": "0",
"id": "12076"
},
@@ -109853,8 +104202,6 @@
"durability": null,
"name": "Steel minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1579",
- "high_alchemy": "2369",
"archery_ticket_price": "0",
"id": "12077"
},
@@ -109865,8 +104212,6 @@
"durability": null,
"name": "Steel minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1579",
- "high_alchemy": "2369",
"archery_ticket_price": "0",
"id": "12078"
},
@@ -109878,8 +104223,6 @@
"durability": null,
"name": "Mithril minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1689",
- "high_alchemy": "2534",
"archery_ticket_price": "0",
"id": "12079"
},
@@ -109890,8 +104233,6 @@
"durability": null,
"name": "Mithril minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1689",
- "high_alchemy": "2534",
"archery_ticket_price": "0",
"id": "12080"
},
@@ -109903,8 +104244,6 @@
"durability": null,
"name": "Adamant minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1609",
- "high_alchemy": "2414",
"archery_ticket_price": "0",
"id": "12081"
},
@@ -109915,8 +104254,6 @@
"durability": null,
"name": "Adamant minotaur pouch",
"tradeable": "true",
- "low_alchemy": "1609",
- "high_alchemy": "2414",
"archery_ticket_price": "0",
"id": "12082"
},
@@ -109928,8 +104265,6 @@
"durability": null,
"name": "Rune minotaur pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12083"
},
@@ -109940,8 +104275,6 @@
"durability": null,
"name": "Rune minotaur pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12084"
},
@@ -109953,8 +104286,6 @@
"durability": null,
"name": "Smoke devil pouch",
"tradeable": "true",
- "low_alchemy": "1579",
- "high_alchemy": "2369",
"archery_ticket_price": "0",
"id": "12085"
},
@@ -109965,8 +104296,6 @@
"durability": null,
"name": "Smoke devil pouch",
"tradeable": "true",
- "low_alchemy": "1579",
- "high_alchemy": "2369",
"archery_ticket_price": "0",
"id": "12086"
},
@@ -109978,8 +104307,6 @@
"durability": null,
"name": "Bull ant pouch",
"tradeable": "true",
- "low_alchemy": "279",
- "high_alchemy": "419",
"archery_ticket_price": "0",
"id": "12087"
},
@@ -109990,8 +104317,6 @@
"durability": null,
"name": "Bull ant pouch",
"tradeable": "true",
- "low_alchemy": "279",
- "high_alchemy": "419",
"archery_ticket_price": "0",
"id": "12088"
},
@@ -110003,8 +104328,6 @@
"durability": null,
"name": "Wolpertinger pouch",
"tradeable": "true",
- "low_alchemy": "2199",
- "high_alchemy": "3299",
"archery_ticket_price": "0",
"id": "12089"
},
@@ -110015,8 +104338,6 @@
"durability": null,
"name": "Wolpertinger pouch",
"tradeable": "true",
- "low_alchemy": "2199",
- "high_alchemy": "3299",
"archery_ticket_price": "0",
"id": "12090"
},
@@ -110028,8 +104349,6 @@
"durability": null,
"name": "Compost mound pouch",
"tradeable": "true",
- "low_alchemy": "639",
- "high_alchemy": "959",
"archery_ticket_price": "0",
"id": "12091"
},
@@ -110040,8 +104359,6 @@
"durability": null,
"name": "Compost mound pouch",
"tradeable": "true",
- "low_alchemy": "639",
- "high_alchemy": "959",
"archery_ticket_price": "0",
"id": "12092"
},
@@ -110053,8 +104370,6 @@
"durability": null,
"name": "Pack yak pouch",
"tradeable": "true",
- "low_alchemy": "2279",
- "high_alchemy": "3419",
"archery_ticket_price": "0",
"id": "12093"
},
@@ -110065,8 +104380,6 @@
"durability": null,
"name": "Pack yak pouch",
"tradeable": "true",
- "low_alchemy": "2279",
- "high_alchemy": "3419",
"archery_ticket_price": "0",
"id": "12094"
},
@@ -110078,8 +104391,6 @@
"durability": null,
"name": "Sp. cockatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12095"
},
@@ -110090,8 +104401,6 @@
"durability": null,
"name": "Sp. cockatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12096"
},
@@ -110103,8 +104412,6 @@
"durability": null,
"name": "Sp. guthatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12097"
},
@@ -110115,8 +104422,6 @@
"durability": null,
"name": "Sp. guthatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12098"
},
@@ -110128,8 +104433,6 @@
"durability": null,
"name": "Sp. saratrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12099"
},
@@ -110140,8 +104443,6 @@
"durability": null,
"name": "Sp. saratrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12100"
},
@@ -110153,8 +104454,6 @@
"durability": null,
"name": "Sp. zamatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12101"
},
@@ -110165,8 +104464,6 @@
"durability": null,
"name": "Sp. zamatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12102"
},
@@ -110178,8 +104475,6 @@
"durability": null,
"name": "Sp. pengatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12103"
},
@@ -110190,8 +104485,6 @@
"durability": null,
"name": "Sp. pengatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12104"
},
@@ -110203,8 +104496,6 @@
"durability": null,
"name": "Sp. coraxatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12105"
},
@@ -110215,8 +104506,6 @@
"durability": null,
"name": "Sp. coraxatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12106"
},
@@ -110228,8 +104517,6 @@
"durability": null,
"name": "Sp. vulatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12107"
},
@@ -110240,8 +104527,6 @@
"durability": null,
"name": "Sp. vulatrice pouch",
"tradeable": "true",
- "low_alchemy": "1049",
- "high_alchemy": "1574",
"archery_ticket_price": "0",
"id": "12108"
},
@@ -110252,8 +104537,6 @@
"durability": null,
"name": "Cockatrice egg",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "12109"
},
@@ -110273,8 +104556,6 @@
"durability": null,
"name": "Guthatrice egg",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "12111"
},
@@ -110294,8 +104575,6 @@
"durability": null,
"name": "Saratrice egg",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "12113"
},
@@ -110315,8 +104594,6 @@
"durability": null,
"name": "Zamatrice egg",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "12115"
},
@@ -110336,8 +104613,6 @@
"durability": null,
"name": "Pengatrice egg",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "12117"
},
@@ -110357,8 +104632,6 @@
"durability": null,
"name": "Coraxatrice egg",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "12119"
},
@@ -110378,8 +104651,6 @@
"durability": null,
"name": "Vulatrice egg",
"tradeable": "true",
- "low_alchemy": "400",
- "high_alchemy": "600",
"archery_ticket_price": "0",
"id": "12121"
},
@@ -110400,8 +104671,6 @@
"durability": null,
"name": "Barker toad pouch",
"tradeable": "true",
- "low_alchemy": "279",
- "high_alchemy": "419",
"archery_ticket_price": "0",
"id": "12123"
},
@@ -110412,8 +104681,6 @@
"durability": null,
"name": "Barker toad pouch",
"tradeable": "true",
- "low_alchemy": "279",
- "high_alchemy": "419",
"archery_ticket_price": "0",
"id": "12124"
},
@@ -110425,8 +104692,6 @@
"durability": null,
"name": "Flies",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12125"
},
@@ -110447,8 +104712,6 @@
"durability": null,
"name": "Beetle bits",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12127"
},
@@ -110479,8 +104742,6 @@
"durability": null,
"name": "Nuts",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12130"
},
@@ -110506,7 +104767,7 @@
{
"durability": null,
"name": "Truffle",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12133",
"equipment_slot": "3"
@@ -110518,8 +104779,6 @@
"durability": null,
"name": "Evil turnip",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "12134"
},
@@ -110539,8 +104798,6 @@
"durability": null,
"name": "2/3 evil turnip",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "12136"
},
@@ -110560,8 +104817,6 @@
"durability": null,
"name": "1/3 evil turnip",
"tradeable": "true",
- "low_alchemy": "12",
- "high_alchemy": "18",
"archery_ticket_price": "0",
"id": "12138"
},
@@ -110581,8 +104836,6 @@
"durability": null,
"name": "Summoning potion(4)",
"tradeable": "true",
- "low_alchemy": "76",
- "high_alchemy": "114",
"weight": "1",
"archery_ticket_price": "0",
"id": "12140"
@@ -110603,8 +104856,6 @@
"durability": null,
"name": "Summoning potion(3)",
"tradeable": "true",
- "low_alchemy": "76",
- "high_alchemy": "114",
"weight": "1",
"archery_ticket_price": "0",
"id": "12142"
@@ -110625,8 +104876,6 @@
"durability": null,
"name": "Summoning potion(2)",
"tradeable": "true",
- "low_alchemy": "76",
- "high_alchemy": "114",
"weight": "1",
"archery_ticket_price": "0",
"id": "12144"
@@ -110647,8 +104896,6 @@
"durability": null,
"name": "Summoning potion(1)",
"tradeable": "true",
- "low_alchemy": "76",
- "high_alchemy": "114",
"weight": "1",
"archery_ticket_price": "0",
"id": "12146"
@@ -110679,8 +104926,6 @@
"durability": null,
"name": "Carved evil turnip",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "12153"
},
@@ -110710,8 +104955,6 @@
"durability": null,
"name": "Honeycomb",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"archery_ticket_price": "0",
"id": "12156"
},
@@ -110738,7 +104981,6 @@
"durability": null,
"name": "Green charm",
"tradeable": "false",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "12159"
},
@@ -110747,8 +104989,6 @@
"durability": null,
"name": "Crimson charm",
"tradeable": "false",
- "low_alchemy": "1",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"id": "12160"
},
@@ -110772,8 +105012,6 @@
"durability": null,
"name": "Blue charm",
"tradeable": "false",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "12163"
},
@@ -110821,12 +105059,11 @@
"id": "12168"
},
{
+ "requirements": "{23,99}",
"shop_price": "99000",
"examine": "The cape worn by master summoners.",
"durability": null,
"name": "Summoning cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "12169",
@@ -110834,6 +105071,7 @@
"equipment_slot": "1"
},
{
+ "requirements": "{23,99}",
"durability": null,
"name": "Summoning cape(t)",
"archery_ticket_price": "0",
@@ -110843,6 +105081,7 @@
},
{
"remove_head": "true",
+ "requirements": "{23,99}",
"shop_price": "99000",
"examine": "Summoning skillcape hood.",
"durability": null,
@@ -110859,8 +105098,6 @@
"durability": null,
"name": "Clean spirit weed",
"tradeable": "true",
- "low_alchemy": "9",
- "high_alchemy": "14",
"weight": "1",
"archery_ticket_price": "0",
"id": "12172"
@@ -110912,8 +105149,6 @@
"durability": null,
"name": "Spirit weed potion(unf)",
"tradeable": "true",
- "low_alchemy": "9",
- "high_alchemy": "13",
"archery_ticket_price": "0",
"id": "12181"
},
@@ -110934,8 +105169,6 @@
"durability": null,
"name": "Spirit shards",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "12183"
},
@@ -111017,28 +105250,28 @@
"id": "12196"
},
{
- "examine": "(hatchling) A hatchling <dragon colour> dragon.(baby) A bigger baby <colour> dragon.",
+ "examine": "A hatchling green dragon.",
"durability": null,
"name": "Dragon hatchling",
"archery_ticket_price": "0",
"id": "12197"
},
{
- "examine": "Baby: Little NipperAdult: Bigger Nipper.",
+ "examine": "Little Nipper.",
"durability": null,
"name": "Baby giant crab",
"archery_ticket_price": "0",
"id": "12198"
},
{
- "examine": "(Baby) A stripy little baby raccoon.(Adult) He can run with us.",
+ "examine": "A stripy little baby raccoon.",
"durability": null,
"name": "Baby raccoon",
"archery_ticket_price": "0",
"id": "12199"
},
{
- "examine": "Adult: An experienced nut-thief.Baby: A tiny nut-thief.",
+ "examine": "An experienced nut-thief.",
"durability": null,
"name": "Squirrel",
"archery_ticket_price": "0",
@@ -111058,8 +105291,6 @@
"ge_buy_limit": "100",
"examine": "Doors could be a problem, wearing these...",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"weight": "1",
"equipment_slot": "0",
"grand_exchange_price": "40",
@@ -111082,17 +105313,15 @@
"remove_head": "true",
"shop_price": "100",
"examine": "Doors could be a problem, wearing these...",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "50",
+ "durability": null,
"name": "Antlers (charged)",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "12206",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,8,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,8,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
@@ -111101,8 +105330,6 @@
"ge_buy_limit": "100",
"examine": "It's a little smelly in there.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "3",
"remove_beard": "true",
"equipment_slot": "0",
@@ -111127,8 +105354,6 @@
"shop_price": "200",
"examine": "It's a little smelly in there.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "3",
"remove_beard": "true",
"equipment_slot": "0",
@@ -111143,17 +105368,15 @@
"requirements": "{4,50}-{23,20}",
"ge_buy_limit": "100",
"examine": "It's fun to go to the O-B-E-L-I-S-K!",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "234",
+ "durability": null,
"name": "Feather headdress",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "12210",
- "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0"
+ "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -111170,8 +105393,6 @@
"durability": null,
"name": "Feather headdress (charged)",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "2",
"archery_ticket_price": "0",
"id": "12212",
@@ -111182,17 +105403,15 @@
"requirements": "{4,50}-{23,20}",
"ge_buy_limit": "100",
"examine": "It's fun to go to the O-B-E-L-I-S-K!",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "662",
+ "durability": null,
"name": "Feather headdress",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "12213",
- "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0"
+ "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -111209,8 +105428,6 @@
"durability": null,
"name": "Feather headdress (charged)",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "2",
"archery_ticket_price": "0",
"id": "12215",
@@ -111221,17 +105438,15 @@
"requirements": "{4,50}-{23,20}",
"ge_buy_limit": "100",
"examine": "It's fun to go to the O-B-E-L-I-S-K!",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "90",
+ "durability": null,
"name": "Feather headdress",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "12216",
- "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0"
+ "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -111248,8 +105463,6 @@
"durability": null,
"name": "Feather headdress (charged)",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "2",
"archery_ticket_price": "0",
"id": "12218",
@@ -111260,17 +105473,15 @@
"requirements": "{4,50}-{23,20}",
"ge_buy_limit": "100",
"examine": "It's fun to go to the O-B-E-L-I-S-K!",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "107",
+ "durability": null,
"name": "Feather headdress",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "12219",
- "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0"
+ "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -111287,8 +105498,6 @@
"durability": null,
"name": "Feather headdress (charged)",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "2",
"archery_ticket_price": "0",
"id": "12221",
@@ -111299,17 +105508,15 @@
"requirements": "{4,50}-{23,20}",
"ge_buy_limit": "100",
"examine": "It's fun to go to the O-B-E-L-I-S-K!",
- "durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
- "weight": "2",
- "equipment_slot": "0",
"grand_exchange_price": "211",
+ "durability": null,
"name": "Feather headdress",
"tradeable": "true",
+ "weight": "2",
"archery_ticket_price": "0",
"id": "12222",
- "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0"
+ "bonuses": "0,0,0,-1,2,4,6,8,4,4,20,0,0,0,0",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -111326,8 +105533,6 @@
"durability": null,
"name": "Feather headdress (charged)",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "240",
"weight": "2",
"archery_ticket_price": "0",
"id": "12224",
@@ -111789,9 +105994,7 @@
"examine": "A scroll for a macaw familiar.",
"durability": null,
"name": "Herbcall scroll",
- "low_alchemy": "94",
"tradeable": "true",
- "high_alchemy": "142",
"archery_ticket_price": "0",
"id": "12422"
},
@@ -111802,9 +106005,7 @@
"examine": "A scroll for a fruit bat familiar.",
"durability": null,
"name": "Fruitfall scroll",
- "low_alchemy": "146",
"tradeable": "true",
- "high_alchemy": "220",
"archery_ticket_price": "0",
"id": "12423"
},
@@ -111815,9 +106016,7 @@
"examine": "A scroll for an ibis familiar.",
"durability": null,
"name": "Fish rain scroll",
- "low_alchemy": "125",
"tradeable": "true",
- "high_alchemy": "188",
"archery_ticket_price": "0",
"id": "12424"
},
@@ -111827,9 +106026,7 @@
"examine": "A scroll for a spirit wolf familiar.",
"durability": null,
"name": "Howl scroll",
- "low_alchemy": "23",
"tradeable": "true",
- "high_alchemy": "35",
"archery_ticket_price": "0",
"id": "12425"
},
@@ -111840,9 +106037,7 @@
"examine": "A scroll for a magpie familiar.",
"durability": null,
"name": "Thieving fingers scroll",
- "low_alchemy": "104",
"tradeable": "true",
- "high_alchemy": "157",
"archery_ticket_price": "0",
"id": "12426"
},
@@ -111853,9 +106048,7 @@
"examine": "A scroll for an abyssal lurker familiar.",
"durability": null,
"name": "Abyssal stealth scroll",
- "low_alchemy": "135",
"tradeable": "true",
- "high_alchemy": "203",
"archery_ticket_price": "0",
"id": "12427"
},
@@ -111866,9 +106059,7 @@
"examine": "A scroll for a spirit spider familiar.",
"durability": null,
"name": "Egg spawn scroll",
- "low_alchemy": "24",
"tradeable": "true",
- "high_alchemy": "37",
"archery_ticket_price": "0",
"id": "12428"
},
@@ -111879,9 +106070,7 @@
"examine": "A scroll for a beaver familiar.",
"durability": null,
"name": "Multichop scroll",
- "low_alchemy": "88",
"tradeable": "true",
- "high_alchemy": "133",
"archery_ticket_price": "0",
"id": "12429"
},
@@ -111892,9 +106081,7 @@
"examine": "A scroll for an albino rat familiar.",
"durability": null,
"name": "Cheese feast scroll",
- "low_alchemy": "91",
"tradeable": "true",
- "high_alchemy": "137",
"archery_ticket_price": "0",
"id": "12430"
},
@@ -111905,9 +106092,7 @@
"examine": "A scroll for a bull ant familiar.",
"durability": null,
"name": "Unburden scroll",
- "low_alchemy": "27",
"tradeable": "true",
- "high_alchemy": "41",
"archery_ticket_price": "0",
"id": "12431"
},
@@ -111918,9 +106103,7 @@
"examine": "A scroll for a spirit scorpion familiar.",
"durability": null,
"name": "Venom shot scroll",
- "low_alchemy": "73",
"tradeable": "true",
- "high_alchemy": "110",
"archery_ticket_price": "0",
"id": "12432"
},
@@ -111931,9 +106114,7 @@
"examine": "A scroll for a honey badger familiar.",
"durability": null,
"name": "Insane ferocity scroll",
- "low_alchemy": "100",
"tradeable": "true",
- "high_alchemy": "151",
"archery_ticket_price": "0",
"id": "12433"
},
@@ -111944,9 +106125,7 @@
"examine": "A scroll for a unicorn stallion familiar.",
"durability": null,
"name": "Healing aura scroll",
- "low_alchemy": "156",
"tradeable": "true",
- "high_alchemy": "235",
"archery_ticket_price": "0",
"id": "12434"
},
@@ -111957,9 +106136,7 @@
"examine": "A scroll for a pack yak familiar.",
"durability": null,
"name": "Winter storage scroll",
- "low_alchemy": "227",
"tradeable": "true",
- "high_alchemy": "341",
"archery_ticket_price": "0",
"id": "12435"
},
@@ -111970,9 +106147,7 @@
"examine": "A scroll for a spirit cobra familiar.",
"durability": null,
"name": "Oph. incubation scroll",
- "low_alchemy": "132",
"tradeable": "true",
- "high_alchemy": "199",
"archery_ticket_price": "0",
"id": "12436"
},
@@ -111983,9 +106158,7 @@
"examine": "A scroll for a wolpertinger familiar.",
"durability": null,
"name": "Magic focus scroll",
- "low_alchemy": "219",
"tradeable": "true",
- "high_alchemy": "329",
"archery_ticket_price": "0",
"id": "12437"
},
@@ -111996,9 +106169,7 @@
"examine": "A scroll for a bunyip familiar.",
"durability": null,
"name": "Swallow whole scroll",
- "low_alchemy": "126",
"tradeable": "true",
- "high_alchemy": "190",
"archery_ticket_price": "0",
"id": "12438"
},
@@ -112009,9 +106180,7 @@
"examine": "A scroll for a war tortoise familiar.",
"durability": null,
"name": "Testudo scroll",
- "low_alchemy": "17",
"tradeable": "true",
- "high_alchemy": "26",
"archery_ticket_price": "0",
"id": "12439"
},
@@ -112022,9 +106191,7 @@
"examine": "A scroll for a compost mound familiar.",
"durability": null,
"name": "Generate compost scroll",
- "low_alchemy": "63",
"tradeable": "true",
- "high_alchemy": "95",
"archery_ticket_price": "0",
"id": "12440"
},
@@ -112035,9 +106202,7 @@
"examine": "A scroll for a spirit terrorbird familiar.",
"durability": null,
"name": "Tireless run scroll",
- "low_alchemy": "28",
"tradeable": "true",
- "high_alchemy": "43",
"archery_ticket_price": "0",
"id": "12441"
},
@@ -112048,9 +106213,7 @@
"examine": "A scroll for a hydra familiar.",
"durability": null,
"name": "Regrowth scroll",
- "low_alchemy": "144",
"tradeable": "true",
- "high_alchemy": "217",
"archery_ticket_price": "0",
"id": "12442"
},
@@ -112061,9 +106224,7 @@
"examine": "A scroll for a Pest Control familiar.",
"durability": null,
"name": "Call to arms scroll",
- "low_alchemy": "90",
"tradeable": "true",
- "high_alchemy": "136",
"archery_ticket_price": "0",
"id": "12443"
},
@@ -112074,9 +106235,7 @@
"examine": "A scroll for a bloated leech familiar.",
"durability": null,
"name": "Blood drain scroll",
- "low_alchemy": "133",
"tradeable": "true",
- "high_alchemy": "200",
"archery_ticket_price": "0",
"id": "12444"
},
@@ -112087,9 +106246,7 @@
"examine": "A scroll for a dreadfowl familiar.",
"durability": null,
"name": "Dreadfowl strike scroll",
- "low_alchemy": "24",
"tradeable": "true",
- "high_alchemy": "37",
"archery_ticket_price": "0",
"id": "12445"
},
@@ -112100,9 +106257,7 @@
"examine": "A scroll for a spirit kalphite familiar.",
"durability": null,
"name": "Sandstorm scroll",
- "low_alchemy": "67",
"tradeable": "true",
- "high_alchemy": "101",
"archery_ticket_price": "0",
"id": "12446"
},
@@ -112113,9 +106268,7 @@
"examine": "A scroll for a vampire bat familiar.",
"durability": null,
"name": "Vampire touch scroll",
- "low_alchemy": "97",
"tradeable": "true",
- "high_alchemy": "146",
"archery_ticket_price": "0",
"id": "12447"
},
@@ -112126,9 +106279,7 @@
"examine": "A scroll for an evil turnip familiar.",
"durability": null,
"name": "Evil flames scroll",
- "low_alchemy": "120",
"tradeable": "true",
- "high_alchemy": "181",
"archery_ticket_price": "0",
"id": "12448"
},
@@ -112139,9 +106290,7 @@
"examine": "A scroll for a granite lobster familiar.",
"durability": null,
"name": "Crushing claw scroll",
- "low_alchemy": "182",
"tradeable": "true",
- "high_alchemy": "274",
"archery_ticket_price": "0",
"id": "12449"
},
@@ -112163,9 +106312,7 @@
"examine": "A scroll for an arctic bear familiar.",
"durability": null,
"name": "Arctic blast scroll",
- "low_alchemy": "30",
"tradeable": "true",
- "high_alchemy": "46",
"archery_ticket_price": "0",
"id": "12451"
},
@@ -112176,9 +106323,7 @@
"examine": "A scroll for a barker toad familiar.",
"durability": null,
"name": "Toad bark scroll",
- "low_alchemy": "27",
"tradeable": "true",
- "high_alchemy": "41",
"archery_ticket_price": "0",
"id": "12452"
},
@@ -112189,9 +106334,7 @@
"examine": "A scroll for a spirit jelly familiar.",
"durability": null,
"name": "Dissolve scroll",
- "low_alchemy": "167",
"tradeable": "true",
- "high_alchemy": "251",
"archery_ticket_price": "0",
"id": "12453"
},
@@ -112202,9 +106345,7 @@
"examine": "A scroll for an abyssal parasite familiar.",
"durability": null,
"name": "Abyssal drain scroll",
- "low_alchemy": "122",
"tradeable": "true",
- "high_alchemy": "183",
"archery_ticket_price": "0",
"id": "12454"
},
@@ -112215,9 +106356,7 @@
"examine": "A scroll for a karamthulhu overlord familiar.",
"durability": null,
"name": "Doomsphere scroll",
- "low_alchemy": "160",
"tradeable": "true",
- "high_alchemy": "241",
"archery_ticket_price": "0",
"id": "12455"
},
@@ -112228,9 +106367,7 @@
"examine": "A scroll for a spirit dagannoth familiar.",
"durability": null,
"name": "Spike shot scroll",
- "low_alchemy": "17",
"tradeable": "true",
- "high_alchemy": "26",
"archery_ticket_price": "0",
"id": "12456"
},
@@ -112241,9 +106378,7 @@
"examine": "A scroll for a giant ent familiar.",
"durability": null,
"name": "Acorn missile scroll",
- "low_alchemy": "140",
"tradeable": "true",
- "high_alchemy": "211",
"archery_ticket_price": "0",
"id": "12457"
},
@@ -112254,9 +106389,7 @@
"examine": "A scroll for a cockatrice variant familiar.",
"durability": null,
"name": "Petrifying gaze scroll",
- "low_alchemy": "104",
"tradeable": "true",
- "high_alchemy": "157",
"archery_ticket_price": "0",
"id": "12458"
},
@@ -112267,9 +106400,7 @@
"examine": "A scroll for a thorny snail familiar.",
"durability": null,
"name": "Slime spray scroll",
- "low_alchemy": "184",
"tradeable": "true",
- "high_alchemy": "277",
"archery_ticket_price": "0",
"id": "12459"
},
@@ -112280,9 +106411,7 @@
"examine": "A scroll for a desert wyrm familiar.",
"durability": null,
"name": "Electric lash scroll",
- "low_alchemy": "61",
"tradeable": "true",
- "high_alchemy": "92",
"archery_ticket_price": "0",
"id": "12460"
},
@@ -112293,9 +106422,7 @@
"examine": "A scroll for a bronze minotaur familiar.",
"durability": null,
"name": "Bronze bull rush scroll",
- "low_alchemy": "118",
"tradeable": "true",
- "high_alchemy": "178",
"archery_ticket_price": "0",
"id": "12461"
},
@@ -112306,9 +106433,7 @@
"examine": "A scroll for an iron minotaur familiar.",
"durability": null,
"name": "Iron bull rush scroll",
- "low_alchemy": "141",
"tradeable": "true",
- "high_alchemy": "212",
"archery_ticket_price": "0",
"id": "12462"
},
@@ -112319,9 +106444,7 @@
"examine": "A scroll for a steel minotaur familiar.",
"durability": null,
"name": "Steel bull rush scroll",
- "low_alchemy": "157",
"tradeable": "true",
- "high_alchemy": "236",
"archery_ticket_price": "0",
"id": "12463"
},
@@ -112332,9 +106455,7 @@
"examine": "A scroll for a mithril minotaur familiar.",
"durability": null,
"name": "Mith bull rush scroll",
- "low_alchemy": "168",
"tradeable": "true",
- "high_alchemy": "253",
"archery_ticket_price": "0",
"id": "12464"
},
@@ -112345,9 +106466,7 @@
"examine": "A scroll for an adamant minotaur familiar.",
"durability": null,
"name": "Addy bull rush scroll",
- "low_alchemy": "160",
"tradeable": "true",
- "high_alchemy": "241",
"archery_ticket_price": "0",
"id": "12465"
},
@@ -112358,9 +106477,7 @@
"examine": "A scroll for a rune minotaur familiar.",
"durability": null,
"name": "Rune bull rush scroll",
- "low_alchemy": "17",
"tradeable": "true",
- "high_alchemy": "26",
"archery_ticket_price": "0",
"id": "12466"
},
@@ -112371,9 +106488,7 @@
"examine": "A scroll for a stranger plant familiar.",
"durability": null,
"name": "Poisonous blast scroll",
- "low_alchemy": "144",
"tradeable": "true",
- "high_alchemy": "217",
"archery_ticket_price": "0",
"id": "12467"
},
@@ -112384,35 +106499,33 @@
"examine": "A scroll for a smoke devil familiar.",
"durability": null,
"name": "Dust cloud scroll",
- "low_alchemy": "157",
"tradeable": "true",
- "high_alchemy": "236",
"archery_ticket_price": "0",
"id": "12468"
},
{
- "examine": "(hatchling) A hatchling <dragon colour> dragon.(baby) A bigger baby <colour> dragon.",
+ "examine": "A hatchling red dragon.",
"durability": null,
- "name": "Hatchling dragon",
+ "name": "Dragon hatchling",
"archery_ticket_price": "0",
"id": "12469"
},
{
- "examine": "(hatchling) A hatchling <dragon colour> dragon.(baby) A bigger baby <colour> dragon.",
+ "examine": "A hatchling blue dragon.",
"durability": null,
"name": "Hatchling dragon",
"archery_ticket_price": "0",
"id": "12471"
},
{
- "examine": "(hatchling) A hatchling <dragon colour> dragon.(baby) A bigger baby <colour> dragon.",
+ "examine": "A hatchling green dragon.",
"durability": null,
"name": "Hatchling dragon",
"archery_ticket_price": "0",
"id": "12473"
},
{
- "examine": "(hatchling) A hatchling <dragon colour> dragon.(baby) A bigger baby <colour> dragon.",
+ "examine": "A hatchling black dragon.",
"durability": null,
"name": "Hatchling dragon",
"archery_ticket_price": "0",
@@ -112459,16 +106572,17 @@
"id": "12480"
},
{
- "examine": "(Baby) Can't fly and can barely walk, but adorable nonetheless. (adult) Emperor of all he surveys.",
+ "examine": "Can't fly and can barely walk, but adorable nonetheless.",
"durability": null,
"name": "Baby penguin",
"archery_ticket_price": "0",
"id": "12481"
},
{
- "examine": "I can hatch this in an Incubator.",
+ "examine": "I can hatch this in an incubator.",
"durability": null,
"name": "Penguin egg",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12483"
},
@@ -112762,12 +106876,11 @@
"id": "12523"
},
{
+ "requirements": "{23,99}",
"shop_price": "99000",
"examine": "The cape worn by master summoners.",
"durability": null,
"name": "Summoning cape",
- "low_alchemy": "39600",
- "high_alchemy": "59400",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "12524",
@@ -112797,8 +106910,6 @@
"durability": null,
"name": "Spirit shards",
"tradeable": "true",
- "low_alchemy": "10",
- "high_alchemy": "15",
"archery_ticket_price": "0",
"id": "12530"
},
@@ -112810,8 +106921,6 @@
"durability": null,
"name": "Ibis pouch",
"tradeable": "true",
- "low_alchemy": "1259",
- "high_alchemy": "1889",
"archery_ticket_price": "0",
"id": "12531"
},
@@ -112822,8 +106931,6 @@
"durability": null,
"name": "Ibis pouch",
"tradeable": "true",
- "low_alchemy": "1259",
- "high_alchemy": "1889",
"archery_ticket_price": "0",
"id": "12532"
},
@@ -112834,9 +106941,7 @@
"examine": "A scroll for a granite crab familiar.",
"durability": null,
"name": "Stony shell scroll",
- "low_alchemy": "23",
"tradeable": "true",
- "high_alchemy": "35",
"archery_ticket_price": "0",
"id": "12533"
},
@@ -112847,8 +106952,6 @@
"durability": null,
"name": "Raw pawya meat",
"tradeable": "true",
- "low_alchemy": "200",
- "high_alchemy": "300",
"weight": "0.33",
"archery_ticket_price": "0",
"id": "12535"
@@ -112876,8 +106979,6 @@
"durability": null,
"name": "Grenwall spikes",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12539"
},
@@ -112978,16 +107079,14 @@
"shop_price": "50",
"ge_buy_limit": "100",
"examine": "The height of style?",
- "durability": null,
- "low_alchemy": "24",
- "high_alchemy": "36",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "1004",
+ "durability": null,
"name": "Ogre wig",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "12559"
+ "id": "12559",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -113002,16 +107101,14 @@
"shop_price": "60",
"ge_buy_limit": "100",
"examine": "It's a little big on me.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "7",
"grand_exchange_price": "197",
+ "durability": null,
"name": "Ogre kilt",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "12561"
+ "id": "12561",
+ "equipment_slot": "7"
},
{
"ge_buy_limit": "100",
@@ -113023,20 +107120,18 @@
"id": "12562"
},
{
+ "remove_sleeves": "true",
"shop_price": "60",
"ge_buy_limit": "100",
"examine": "It's a little big on me.",
- "durability": null,
- "low_alchemy": "24",
- "high_alchemy": "36",
- "weight": "1",
- "equipment_slot": "4",
- "remove_sleeves": "true",
"grand_exchange_price": "536",
+ "durability": null,
"name": "Ogre top",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "12563"
+ "id": "12563",
+ "equipment_slot": "4"
},
{
"ge_buy_limit": "100",
@@ -113051,16 +107146,15 @@
"shop_price": "60",
"ge_buy_limit": "100",
"examine": "Good for stomping.",
- "durability": null,
- "low_alchemy": "24",
- "high_alchemy": "36",
- "weight": "3",
- "equipment_slot": "10",
"grand_exchange_price": "420",
+ "durability": null,
"name": "Ogre boots",
"tradeable": "true",
+ "weight": "3",
"archery_ticket_price": "0",
- "id": "12565"
+ "id": "12565",
+ "equip_audio": "2237",
+ "equipment_slot": "10"
},
{
"ge_buy_limit": "100",
@@ -113078,8 +107172,6 @@
"durability": null,
"name": "Diseased kebbit fur",
"tradeable": "true",
- "low_alchemy": "24",
- "high_alchemy": "36",
"weight": "2",
"archery_ticket_price": "0",
"id": "12567"
@@ -113088,16 +107180,14 @@
"remove_head": "true",
"ge_buy_limit": "100",
"examine": "A furry hat with an unnerving tail.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "weight": "1",
- "equipment_slot": "0",
"grand_exchange_price": "3656",
+ "durability": null,
"name": "Davy kebbit hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "12568"
+ "id": "12568",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "100",
@@ -113115,15 +107205,15 @@
"examine": "A big piece of tree.",
"walk_anim": "8684",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"weight": "10",
"turn90ccw_anim": "8684",
"attack_speed": "7",
"weapon_interface": "10",
"turn180_anim": "8684",
"render_anim": "1157",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,401,401",
"grand_exchange_price": "77",
"stand_anim": "8683",
"name": "Ogre club",
@@ -113150,8 +107240,6 @@
"durability": null,
"name": "Lavender",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "12572"
},
@@ -113171,8 +107259,6 @@
"durability": null,
"name": "Fever grass",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "12574"
},
@@ -113192,8 +107278,6 @@
"durability": null,
"name": "Tansymum",
"tradeable": "true",
- "low_alchemy": "1",
- "high_alchemy": "2",
"archery_ticket_price": "0",
"id": "12576"
},
@@ -113211,8 +107295,6 @@
"examine": "A stiff, pungent grass.",
"walk_anim": "8681",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"turn90ccw_anim": "8681",
"turn180_anim": "8681",
"render_anim": "294",
@@ -113231,8 +107313,6 @@
"examine": "A delicate, sweet-smelling flower.",
"walk_anim": "8681",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"turn90ccw_anim": "8681",
"turn180_anim": "8681",
"render_anim": "294",
@@ -113251,8 +107331,6 @@
"examine": "A cheerful, aromatic flower.",
"walk_anim": "8681",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
"turn90ccw_anim": "8681",
"turn180_anim": "8681",
"render_anim": "294",
@@ -113273,8 +107351,6 @@
"durability": null,
"name": "Eucalyptus logs",
"tradeable": "true",
- "low_alchemy": "50",
- "high_alchemy": "75",
"archery_ticket_price": "0",
"id": "12581",
"equipment_slot": "5"
@@ -113295,8 +107371,6 @@
"durability": null,
"name": "Eucalyptus pyre logs",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "2",
"archery_ticket_price": "0",
"id": "12583"
@@ -113317,7 +107391,6 @@
"durability": null,
"name": "Primweed",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "2",
"archery_ticket_price": "0",
"id": "12588"
@@ -113338,7 +107411,6 @@
"durability": null,
"name": "Stinkbloom",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "0.01",
"archery_ticket_price": "0",
"id": "12590"
@@ -113531,8 +107603,6 @@
"durability": null,
"name": "Amulet of farming(1)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12608",
"equipment_slot": "2"
@@ -113553,8 +107623,6 @@
"durability": null,
"name": "Amulet of farming(2)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12610",
"equipment_slot": "2"
@@ -113573,8 +107641,6 @@
"durability": null,
"name": "Amulet of farming(3)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12612",
"equipment_slot": "2"
@@ -113593,8 +107659,6 @@
"durability": null,
"name": "Amulet of farming(4)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12614",
"equipment_slot": "2"
@@ -113613,8 +107677,6 @@
"durability": null,
"name": "Amulet of farming(5)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12616",
"equipment_slot": "2"
@@ -113633,8 +107695,6 @@
"durability": null,
"name": "Amulet of farming(6)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12618",
"equipment_slot": "2"
@@ -113653,8 +107713,6 @@
"durability": null,
"name": "Amulet of farming(7)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12620",
"equipment_slot": "2"
@@ -113674,8 +107732,6 @@
"durability": null,
"name": "Amulet of farming(8)",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"archery_ticket_price": "0",
"id": "12622",
"equipment_slot": "2"
@@ -113695,8 +107751,6 @@
"durability": null,
"name": "Ogleroot",
"tradeable": "true",
- "low_alchemy": "8",
- "high_alchemy": "12",
"archery_ticket_price": "0",
"weight": "0",
"id": "12624"
@@ -113719,7 +107773,6 @@
"durability": null,
"name": "Test paper",
"tradeable": "false",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "12626"
@@ -113782,8 +107835,6 @@
"durability": null,
"name": "Note",
"tradeable": "true",
- "low_alchemy": "160",
- "high_alchemy": "160",
"archery_ticket_price": "0",
"id": "12632"
},
@@ -113791,8 +107842,6 @@
"examine": "The jar is shaking violently!",
"durability": null,
"name": "Super fishing explosive",
- "low_alchemy": "24",
- "high_alchemy": "36",
"archery_ticket_price": "0",
"id": "12633"
},
@@ -113806,6 +107855,7 @@
"weight": "0.4",
"archery_ticket_price": "0",
"id": "12634",
+ "equip_audio": "2238",
"equipment_slot": "1"
},
{
@@ -113815,8 +107865,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12635"
},
@@ -113827,8 +107875,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12636"
},
@@ -113839,8 +107885,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12637"
},
@@ -113851,8 +107895,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12638"
},
@@ -113863,8 +107905,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12639"
},
@@ -113875,8 +107915,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12640"
},
@@ -113887,8 +107925,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12641"
},
@@ -113899,8 +107935,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12642"
},
@@ -113911,8 +107945,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12643"
},
@@ -113923,8 +107955,6 @@
"durability": null,
"name": "Easter egg",
"tradeable": "true",
- "low_alchemy": "4",
- "high_alchemy": "6",
"archery_ticket_price": "0",
"id": "12644"
},
@@ -113938,6 +107968,7 @@
"weight": "0.4",
"archery_ticket_price": "0",
"id": "12645",
+ "equip_audio": "2238",
"equipment_slot": "1"
},
{
@@ -113968,7 +107999,6 @@
"durability": null,
"name": "Bucket",
"tradeable": "true",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "12649"
@@ -113979,20 +108009,16 @@
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "12650"
},
{
- "examine": "Common bucket: It's a bucket of water.2008 Easter event: It's a bucket of water from the Easter Bunny's warren. Regular bucket filled from Braindeath Island: It's a bucket of... water?",
+ "examine": "It's a bucket of water.",
"grand_exchange_price": "74",
"durability": null,
"name": "Bucket of water",
"tradeable": "true",
- "low_alchemy": "2",
- "high_alchemy": "3",
"weight": "3",
"archery_ticket_price": "0",
"id": "12651"
@@ -114020,8 +108046,6 @@
"durability": null,
"name": "Cockatrice egg",
"tradeable": "true",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "12654"
},
@@ -114049,8 +108073,6 @@
"shop_price": "3520",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "2.7",
"absorb": "1,0,2",
"remove_beard": "true",
@@ -114067,8 +108089,6 @@
"shop_price": "3520",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "1408",
- "high_alchemy": "2112",
"weight": "2.7",
"absorb": "1,0,2",
"remove_beard": "true",
@@ -114083,41 +108103,35 @@
{
"remove_head": "true",
"examine": "Lightweight head protection.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "0.9",
- "absorb": "0,2,1",
- "equipment_slot": "0",
"grand_exchange_price": "1040",
+ "durability": null,
"name": "Snakeskin bandana (e)",
- "tradeable": "true",
+ "tradeable": "false",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "12660",
- "bonuses": "0,0,0,-5,4,2,4,4,2,2,6,0,0,0,0"
+ "absorb": "0,2,1",
+ "bonuses": "0,0,0,-5,4,2,4,4,2,2,6,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"examine": "Lightweight head protection.",
- "durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "weight": "0.9",
- "absorb": "0,2,1",
- "equipment_slot": "0",
"grand_exchange_price": "1040",
+ "durability": null,
"name": "Snakeskin bandana (charged)",
- "tradeable": "true",
+ "tradeable": "false",
+ "weight": "0.9",
"archery_ticket_price": "0",
"id": "12661",
- "bonuses": "0,0,0,-5,4,2,4,4,2,2,6,0,0,0,0"
+ "absorb": "0,2,1",
+ "bonuses": "0,0,0,-5,4,2,4,4,2,2,6,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"examine": "A wooden helmet.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.9",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -114133,8 +108147,6 @@
"remove_head": "true",
"examine": "A wooden helmet.",
"durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
"weight": "0.9",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -114150,8 +108162,6 @@
"remove_head": "true",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2.7",
"absorb": "1,0,3",
"remove_beard": "true",
@@ -114168,8 +108178,6 @@
"remove_head": "true",
"examine": "A full face helmet.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"weight": "2.7",
"absorb": "1,0,3",
"remove_beard": "true",
@@ -114186,10 +108194,9 @@
"remove_head": "true",
"examine": "Makes the wearer pretty intimidating.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"weight": "1.3",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "61200",
@@ -114203,10 +108210,9 @@
"remove_head": "true",
"examine": "Makes the wearer pretty intimidating.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"weight": "1.3",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "61200",
@@ -114221,8 +108227,6 @@
"shop_price": "15000",
"examine": "A mystical helmet.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.9",
"absorb": "3,1,0",
@@ -114240,8 +108244,6 @@
"shop_price": "15000",
"examine": "A mystical helmet.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"weight": "0.9",
"absorb": "3,1,0",
@@ -114258,10 +108260,9 @@
"remove_head": "true",
"examine": "A helmet of great craftmanship.",
"durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "0.5",
"absorb": "0,5,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "3932989",
@@ -114275,10 +108276,9 @@
"remove_head": "true",
"examine": "A helmet of great craftmanship.",
"durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"weight": "0.5",
"absorb": "0,5,2",
+ "equip_audio": "2240",
"equipment_slot": "0",
"lendable": "true",
"grand_exchange_price": "3932989",
@@ -114293,8 +108293,6 @@
"shop_price": "78000",
"examine": "This helmet is worn by archers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2",
"absorb": "0,3,1",
"equipment_slot": "0",
@@ -114311,8 +108309,6 @@
"shop_price": "78000",
"examine": "This helmet is worn by archers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2",
"absorb": "0,3,1",
"equipment_slot": "0",
@@ -114329,8 +108325,6 @@
"shop_price": "78000",
"examine": "This helmet is worn by berserkers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -114347,8 +108341,6 @@
"shop_price": "78000",
"examine": "This helmet is worn by berserkers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -114365,8 +108357,6 @@
"shop_price": "78000",
"examine": "This helm is worn by warriors.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -114383,8 +108373,6 @@
"shop_price": "78000",
"examine": "This helm is worn by warriors.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "1,0,3",
"equipment_slot": "0",
@@ -114401,8 +108389,6 @@
"shop_price": "78000",
"examine": "This helm is worn by farseers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -114419,8 +108405,6 @@
"shop_price": "78000",
"examine": "This helm is worn by farseers.",
"durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
"weight": "2.7",
"absorb": "3,1,0",
"equipment_slot": "0",
@@ -114437,10 +108421,9 @@
"shop_price": "50000",
"examine": "A gift from Neitiznot's Burgher.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "2.2",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "44831",
"name": "Helm of neitiznot (e)",
@@ -114454,10 +108437,9 @@
"shop_price": "50000",
"examine": "A gift from Neitiznot's Burgher.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "2.2",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"grand_exchange_price": "44831",
"name": "Helm of neitiznot (charged)",
@@ -114996,14 +108978,14 @@
"id": "12761"
},
{
- "examine": "(Baby) Can't fly and can barely walk, but adorable nonetheless. (adult) Emperor of all he surveys.",
+ "examine": "Can't fly and can barely walk, but adorable nonetheless.",
"durability": null,
"name": "Baby penguin",
"archery_ticket_price": "0",
"id": "12763"
},
{
- "examine": "(Baby) Can't fly and can barely walk, but adorable nonetheless. (adult) Emperor of all he surveys.",
+ "examine": "Can't fly and can barely walk, but adorable nonetheless.",
"durability": null,
"name": "Baby penguin",
"archery_ticket_price": "0",
@@ -115087,8 +109069,6 @@
"durability": null,
"name": "Swamp titan pouch",
"tradeable": "true",
- "low_alchemy": "1669",
- "high_alchemy": "2504",
"archery_ticket_price": "0",
"id": "12776"
},
@@ -115099,8 +109079,6 @@
"durability": null,
"name": "Swamp titan pouch",
"tradeable": "true",
- "low_alchemy": "1669",
- "high_alchemy": "2504",
"archery_ticket_price": "0",
"id": "12777"
},
@@ -115112,8 +109090,6 @@
"durability": null,
"name": "Spirit mosquito pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12778"
},
@@ -115124,8 +109100,6 @@
"durability": null,
"name": "Spirit mosquito pouch",
"tradeable": "true",
- "low_alchemy": "179",
- "high_alchemy": "269",
"archery_ticket_price": "0",
"id": "12779"
},
@@ -115137,8 +109111,6 @@
"durability": null,
"name": "Void spinner pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12780"
},
@@ -115149,8 +109121,6 @@
"durability": null,
"name": "Void spinner pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12781"
},
@@ -115162,8 +109132,6 @@
"durability": null,
"name": "Forge regent pouch",
"tradeable": "true",
- "low_alchemy": "1579",
- "high_alchemy": "2369",
"archery_ticket_price": "0",
"id": "12782"
},
@@ -115174,8 +109142,6 @@
"durability": null,
"name": "Forge regent pouch",
"tradeable": "true",
- "low_alchemy": "1579",
- "high_alchemy": "2369",
"archery_ticket_price": "0",
"id": "12783"
},
@@ -115187,8 +109153,6 @@
"durability": null,
"name": "Spirit larupia pouch",
"tradeable": "true",
- "low_alchemy": "1719",
- "high_alchemy": "2579",
"archery_ticket_price": "0",
"id": "12784"
},
@@ -115199,8 +109163,6 @@
"durability": null,
"name": "Spirit larupia pouch",
"tradeable": "true",
- "low_alchemy": "1719",
- "high_alchemy": "2579",
"archery_ticket_price": "0",
"id": "12785"
},
@@ -115212,8 +109174,6 @@
"durability": null,
"name": "Geyser titan pouch",
"tradeable": "true",
- "low_alchemy": "2389",
- "high_alchemy": "3584",
"archery_ticket_price": "0",
"id": "12786"
},
@@ -115224,8 +109184,6 @@
"durability": null,
"name": "Geyser titan pouch",
"tradeable": "true",
- "low_alchemy": "2389",
- "high_alchemy": "3584",
"archery_ticket_price": "0",
"id": "12787"
},
@@ -115237,8 +109195,6 @@
"durability": null,
"name": "Lava titan pouch",
"tradeable": "true",
- "low_alchemy": "2359",
- "high_alchemy": "3539",
"archery_ticket_price": "0",
"id": "12788"
},
@@ -115249,8 +109205,6 @@
"durability": null,
"name": "Lava titan pouch",
"tradeable": "true",
- "low_alchemy": "2359",
- "high_alchemy": "3539",
"archery_ticket_price": "0",
"id": "12789"
},
@@ -115262,8 +109216,6 @@
"durability": null,
"name": "Steel titan pouch",
"tradeable": "true",
- "low_alchemy": "1949",
- "high_alchemy": "2924",
"archery_ticket_price": "0",
"id": "12790"
},
@@ -115274,8 +109226,6 @@
"durability": null,
"name": "Steel titan pouch",
"tradeable": "true",
- "low_alchemy": "1949",
- "high_alchemy": "2924",
"archery_ticket_price": "0",
"id": "12791"
},
@@ -115287,8 +109237,6 @@
"durability": null,
"name": "Obsidian golem pouch",
"tradeable": "true",
- "low_alchemy": "2119",
- "high_alchemy": "3179",
"archery_ticket_price": "0",
"id": "12792"
},
@@ -115299,8 +109247,6 @@
"durability": null,
"name": "Obsidian golem pouch",
"tradeable": "true",
- "low_alchemy": "2119",
- "high_alchemy": "3179",
"archery_ticket_price": "0",
"id": "12793"
},
@@ -115312,8 +109258,6 @@
"durability": null,
"name": "Talon beast pouch",
"tradeable": "true",
- "low_alchemy": "1909",
- "high_alchemy": "2864",
"archery_ticket_price": "0",
"id": "12794"
},
@@ -115324,8 +109268,6 @@
"durability": null,
"name": "Talon beast pouch",
"tradeable": "true",
- "low_alchemy": "1909",
- "high_alchemy": "2864",
"archery_ticket_price": "0",
"id": "12795"
},
@@ -115337,8 +109279,6 @@
"durability": null,
"name": "Abyssal titan pouch",
"tradeable": "true",
- "low_alchemy": "1299",
- "high_alchemy": "1949",
"archery_ticket_price": "0",
"id": "12796"
},
@@ -115349,8 +109289,6 @@
"durability": null,
"name": "Abyssal titan pouch",
"tradeable": "true",
- "low_alchemy": "1299",
- "high_alchemy": "1949",
"archery_ticket_price": "0",
"id": "12797"
},
@@ -115362,8 +109300,6 @@
"durability": null,
"name": "Void torcher pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12798"
},
@@ -115374,8 +109310,6 @@
"durability": null,
"name": "Void torcher pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12799"
},
@@ -115387,8 +109321,6 @@
"durability": null,
"name": "Giant chinchompa pouch",
"tradeable": "true",
- "low_alchemy": "1009",
- "high_alchemy": "1514",
"archery_ticket_price": "0",
"id": "12800"
},
@@ -115399,8 +109331,6 @@
"durability": null,
"name": "Giant chinchompa pouch",
"tradeable": "true",
- "low_alchemy": "1009",
- "high_alchemy": "1514",
"archery_ticket_price": "0",
"id": "12801"
},
@@ -115412,8 +109342,6 @@
"durability": null,
"name": "Fire titan pouch",
"tradeable": "true",
- "low_alchemy": "2149",
- "high_alchemy": "3224",
"archery_ticket_price": "0",
"id": "12802"
},
@@ -115424,8 +109352,6 @@
"durability": null,
"name": "Fire titan pouch",
"tradeable": "true",
- "low_alchemy": "2149",
- "high_alchemy": "3224",
"archery_ticket_price": "0",
"id": "12803"
},
@@ -115437,8 +109363,6 @@
"durability": null,
"name": "Moss titan pouch",
"tradeable": "true",
- "low_alchemy": "2189",
- "high_alchemy": "3284",
"archery_ticket_price": "0",
"id": "12804"
},
@@ -115449,8 +109373,6 @@
"durability": null,
"name": "Moss titan pouch",
"tradeable": "true",
- "low_alchemy": "2189",
- "high_alchemy": "3284",
"archery_ticket_price": "0",
"id": "12805"
},
@@ -115462,8 +109384,6 @@
"durability": null,
"name": "Ice titan pouch",
"tradeable": "true",
- "low_alchemy": "2149",
- "high_alchemy": "3224",
"archery_ticket_price": "0",
"id": "12806"
},
@@ -115474,8 +109394,6 @@
"durability": null,
"name": "Ice titan pouch",
"tradeable": "true",
- "low_alchemy": "2149",
- "high_alchemy": "3224",
"archery_ticket_price": "0",
"id": "12807"
},
@@ -115487,8 +109405,6 @@
"durability": null,
"name": "Spirit tz-kih pouch",
"tradeable": "true",
- "low_alchemy": "809",
- "high_alchemy": "1214",
"archery_ticket_price": "0",
"id": "12808"
},
@@ -115499,8 +109415,6 @@
"durability": null,
"name": "Spirit tz-kih pouch",
"tradeable": "true",
- "low_alchemy": "809",
- "high_alchemy": "1214",
"archery_ticket_price": "0",
"id": "12809"
},
@@ -115512,8 +109426,6 @@
"durability": null,
"name": "Spirit graahk pouch",
"tradeable": "true",
- "low_alchemy": "1709",
- "high_alchemy": "2564",
"archery_ticket_price": "0",
"id": "12810"
},
@@ -115524,8 +109436,6 @@
"durability": null,
"name": "Spirit graahk pouch",
"tradeable": "true",
- "low_alchemy": "1709",
- "high_alchemy": "2564",
"archery_ticket_price": "0",
"id": "12811"
},
@@ -115537,8 +109447,6 @@
"durability": null,
"name": "Spirit kyatt pouch",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "2549",
"archery_ticket_price": "0",
"id": "12812"
},
@@ -115549,8 +109457,6 @@
"durability": null,
"name": "Spirit kyatt pouch",
"tradeable": "true",
- "low_alchemy": "1699",
- "high_alchemy": "2549",
"archery_ticket_price": "0",
"id": "12813"
},
@@ -115562,8 +109468,6 @@
"durability": null,
"name": "Void shifter pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12814"
},
@@ -115574,8 +109478,6 @@
"durability": null,
"name": "Void shifter pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12815"
},
@@ -115587,8 +109489,6 @@
"durability": null,
"name": "Pyrelord pouch",
"tradeable": "true",
- "low_alchemy": "1279",
- "high_alchemy": "1919",
"archery_ticket_price": "0",
"id": "12816"
},
@@ -115599,8 +109499,6 @@
"durability": null,
"name": "Pyrelord pouch",
"tradeable": "true",
- "low_alchemy": "1279",
- "high_alchemy": "1919",
"archery_ticket_price": "0",
"id": "12817"
},
@@ -115612,8 +109510,6 @@
"durability": null,
"name": "Void ravager pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12818"
},
@@ -115624,8 +109520,6 @@
"durability": null,
"name": "Void ravager pouch",
"tradeable": "true",
- "low_alchemy": "909",
- "high_alchemy": "1364",
"archery_ticket_price": "0",
"id": "12819"
},
@@ -115637,8 +109531,6 @@
"durability": null,
"name": "Ravenous locust pouch",
"tradeable": "true",
- "low_alchemy": "959",
- "high_alchemy": "1439",
"archery_ticket_price": "0",
"id": "12820"
},
@@ -115649,8 +109541,6 @@
"durability": null,
"name": "Ravenous locust pouch",
"tradeable": "true",
- "low_alchemy": "959",
- "high_alchemy": "1439",
"archery_ticket_price": "0",
"id": "12821"
},
@@ -115662,8 +109552,6 @@
"durability": null,
"name": "Iron titan pouch",
"tradeable": "true",
- "low_alchemy": "2149",
- "high_alchemy": "3224",
"archery_ticket_price": "0",
"id": "12822"
},
@@ -115674,8 +109562,6 @@
"durability": null,
"name": "Iron titan pouch",
"tradeable": "true",
- "low_alchemy": "2149",
- "high_alchemy": "3224",
"archery_ticket_price": "0",
"id": "12823"
},
@@ -115686,9 +109572,7 @@
"examine": "A scroll for an elemental titan familiar.",
"durability": null,
"name": "Titan's con. scroll",
- "low_alchemy": "214",
"tradeable": "true",
- "high_alchemy": "322",
"archery_ticket_price": "0",
"id": "12824"
},
@@ -115699,9 +109583,7 @@
"examine": "A scroll for a steel titan familiar.",
"durability": null,
"name": "Steel of legends scroll",
- "low_alchemy": "194",
"tradeable": "true",
- "high_alchemy": "292",
"archery_ticket_price": "0",
"id": "12825"
},
@@ -115712,9 +109594,7 @@
"examine": "A scroll for an obsidian golem familiar.",
"durability": null,
"name": "Volcanic str. scroll",
- "low_alchemy": "211",
"tradeable": "true",
- "high_alchemy": "317",
"archery_ticket_price": "0",
"id": "12826"
},
@@ -115725,9 +109605,7 @@
"examine": "A scroll for an abyssal titan familiar.",
"durability": null,
"name": "Essence shipment scroll",
- "low_alchemy": "129",
"tradeable": "true",
- "high_alchemy": "194",
"archery_ticket_price": "0",
"id": "12827"
},
@@ -115738,9 +109616,7 @@
"examine": "A scroll for an iron titan familiar.",
"durability": null,
"name": "Iron within scroll",
- "low_alchemy": "214",
"tradeable": "true",
- "high_alchemy": "322",
"archery_ticket_price": "0",
"id": "12828"
},
@@ -115751,9 +109627,7 @@
"examine": "A scroll for a pyrelord familiar.",
"durability": null,
"name": "Immense heat scroll",
- "low_alchemy": "127",
"tradeable": "true",
- "high_alchemy": "191",
"archery_ticket_price": "0",
"id": "12829"
},
@@ -115764,9 +109638,7 @@
"examine": "A scroll for a ravenous locust familiar.",
"durability": null,
"name": "Famine scroll",
- "low_alchemy": "95",
"tradeable": "true",
- "high_alchemy": "143",
"archery_ticket_price": "0",
"id": "12830"
},
@@ -115777,9 +109649,7 @@
"examine": "A scroll for a talon beast familiar.",
"durability": null,
"name": "Deadly claw scroll",
- "low_alchemy": "190",
"tradeable": "true",
- "high_alchemy": "286",
"archery_ticket_price": "0",
"id": "12831"
},
@@ -115790,9 +109660,7 @@
"examine": "A scroll for a swamp titan familiar.",
"durability": null,
"name": "Swamp plague scroll",
- "low_alchemy": "166",
"tradeable": "true",
- "high_alchemy": "250",
"archery_ticket_price": "0",
"id": "12832"
},
@@ -115814,9 +109682,7 @@
"examine": "A scroll for a giant chinchompa familiar.",
"durability": null,
"name": "Explode scroll",
- "low_alchemy": "238",
"tradeable": "true",
- "high_alchemy": "358",
"archery_ticket_price": "0",
"id": "12834"
},
@@ -115827,9 +109693,7 @@
"examine": "A scroll for a spirit graahk familiar.",
"durability": null,
"name": "Goad scroll",
- "low_alchemy": "170",
"tradeable": "true",
- "high_alchemy": "256",
"archery_ticket_price": "0",
"id": "12835"
},
@@ -115840,9 +109704,7 @@
"examine": "A scroll for a spirit kyatt familiar.",
"durability": null,
"name": "Ambush scroll",
- "low_alchemy": "169",
"tradeable": "true",
- "high_alchemy": "254",
"archery_ticket_price": "0",
"id": "12836"
},
@@ -115853,9 +109715,7 @@
"examine": "A scroll for a lava titan familiar.",
"durability": null,
"name": "Ebon thunder scroll",
- "low_alchemy": "211",
"tradeable": "true",
- "high_alchemy": "317",
"archery_ticket_price": "0",
"id": "12837"
},
@@ -115866,9 +109726,7 @@
"examine": "A scroll for a spirit mosquito familiar.",
"durability": null,
"name": "Pester scroll",
- "low_alchemy": "17",
"tradeable": "true",
- "high_alchemy": "26",
"archery_ticket_price": "0",
"id": "12838"
},
@@ -115879,9 +109737,7 @@
"examine": "A scroll for a spirit Tz-Kih familiar.",
"durability": null,
"name": "Fireball assault scroll",
- "low_alchemy": "80",
"tradeable": "true",
- "high_alchemy": "121",
"archery_ticket_price": "0",
"id": "12839"
},
@@ -115892,9 +109748,7 @@
"examine": "A scroll for a spirit larupia familiar.",
"durability": null,
"name": "Rending scroll",
- "low_alchemy": "171",
"tradeable": "true",
- "high_alchemy": "257",
"archery_ticket_price": "0",
"id": "12840"
},
@@ -115905,9 +109759,7 @@
"examine": "A scroll for a forge regent familiar.",
"durability": null,
"name": "Inferno scroll",
- "low_alchemy": "157",
"tradeable": "true",
- "high_alchemy": "236",
"archery_ticket_price": "0",
"id": "12841"
},
@@ -115941,8 +109793,6 @@
"examine": "A kite with a dragon on it.",
"walk_anim": "8982",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"turn90ccw_anim": "8984",
"attack_speed": "4",
"turn180_anim": "8985",
@@ -116095,61 +109945,73 @@
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{15,50}",
"shop_price": "75",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Irit gloves",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12856",
"equipment_slot": "9"
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{15,60}",
"shop_price": "100",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Avantoe gloves",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12857",
"equipment_slot": "9"
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{15,70}",
"shop_price": "200",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Kwuarm gloves",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12858",
"equipment_slot": "9"
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{15,80}",
"shop_price": "200",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Cadantine gloves",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12859",
"equipment_slot": "9"
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{10,65}",
"shop_price": "200",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Swordfish gloves",
- "weight": "0.2",
+ "tradeable": "false",
+ "weight": "1",
"archery_ticket_price": "0",
"id": "12860",
"equipment_slot": "9"
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{10,90}",
"shop_price": "200",
"examine": "A pair of mystical gloves",
"durability": null,
"name": "Shark gloves",
+ "tradeable": "false",
"weight": "1",
"archery_ticket_price": "0",
"id": "12861",
@@ -116157,21 +110019,25 @@
},
{
"destroy_message": "You can reclaim this item from the place you found it.",
+ "requirements": "{18,70}",
"shop_price": "200",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Dragon slayer gloves",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12862",
"equipment_slot": "9"
},
{
"destroy_message": "You can buy a new pair from the druids at the Fist of Guthix activity.",
+ "requirements": "{20,10}",
"shop_price": "75",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Air runecrafting gloves",
"tradeable": "false",
+ "weight": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "12863",
@@ -116179,11 +110045,13 @@
},
{
"destroy_message": "You can buy a new pair from the druids at the Fist of Guthix activity.",
+ "requirements": "{20,20}",
"shop_price": "75",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Water runecrafting gloves",
"tradeable": "false",
+ "weight": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "12864",
@@ -116191,11 +110059,13 @@
},
{
"destroy_message": "You can buy a new pair from the druids at the Fist of Guthix minigame.",
+ "requirements": "{20,30}",
"shop_price": "75",
"examine": "A pair of mystical gloves.",
"durability": null,
"name": "Earth runecrafting gloves",
"tradeable": "false",
+ "weight": "1",
"destroy": "true",
"archery_ticket_price": "0",
"id": "12865",
@@ -116203,12 +110073,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{6,50}",
+ "requirements": "{1,50}-{6,60}",
"shop_price": "250",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"absorb": "4,3,0",
"equipment_slot": "0",
"grand_exchange_price": "70529",
@@ -116220,12 +110088,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{6,50}",
+ "requirements": "{1,50}-{6,60}",
"shop_price": "250",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"absorb": "4,3,0",
"equipment_slot": "0",
"grand_exchange_price": "70529",
@@ -116237,12 +110103,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{6,50}",
+ "requirements": "{1,50}-{6,60}",
"shop_price": "250",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"absorb": "4,3,0",
"equipment_slot": "0",
"grand_exchange_price": "70529",
@@ -116254,12 +110118,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{6,50}",
+ "requirements": "{1,50}-{6,60}",
"shop_price": "250",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"absorb": "4,3,0",
"equipment_slot": "0",
"grand_exchange_price": "70529",
@@ -116271,12 +110133,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{6,50}",
+ "requirements": "{1,50}-{6,60}",
"shop_price": "250",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"absorb": "4,3,0",
"equipment_slot": "0",
"grand_exchange_price": "70529",
@@ -116288,18 +110148,16 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{6,50}",
+ "requirements": "{1,50}-{6,60}",
"shop_price": "250",
"ge_buy_limit": "10",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"absorb": "4,3,0",
"equipment_slot": "0",
"grand_exchange_price": "78900",
"name": "Battle hood 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12871",
"bonuses": "0,0,0,2,0,3,2,3,2,0,3,0,0,0,0"
@@ -116309,7 +110167,7 @@
"grand_exchange_price": "78900",
"durability": null,
"name": "Battle hood 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12872"
},
@@ -116318,8 +110176,6 @@
"shop_price": "1500",
"examine": "A robe top infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "4",
"absorb": "8,4,0",
"equipment_slot": "4",
@@ -116336,8 +110192,6 @@
"shop_price": "1500",
"examine": "A robe top infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "4",
"absorb": "8,4,0",
"equipment_slot": "4",
@@ -116354,8 +110208,6 @@
"shop_price": "1500",
"examine": "A robe top infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "4",
"absorb": "8,4,0",
"equipment_slot": "4",
@@ -116372,8 +110224,6 @@
"shop_price": "1500",
"examine": "A robe top infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "4",
"absorb": "8,4,0",
"equipment_slot": "4",
@@ -116390,8 +110240,6 @@
"shop_price": "1500",
"examine": "A robe top infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "4",
"absorb": "8,4,0",
"equipment_slot": "4",
@@ -116409,8 +110257,6 @@
"ge_buy_limit": "10",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "4",
"absorb": "8,4,0",
"equipment_slot": "4",
@@ -116437,8 +110283,6 @@
"shop_price": "1000",
"examine": "A robe bottom infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3",
"absorb": "5,2,0",
"equipment_slot": "7",
@@ -116454,8 +110298,6 @@
"shop_price": "1000",
"examine": "A robe bottom infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3",
"absorb": "5,2,0",
"equipment_slot": "7",
@@ -116471,8 +110313,6 @@
"shop_price": "1000",
"examine": "A robe bottom infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3",
"absorb": "5,2,0",
"equipment_slot": "7",
@@ -116488,8 +110328,6 @@
"shop_price": "1000",
"examine": "A robe bottom infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3",
"absorb": "5,2,0",
"equipment_slot": "7",
@@ -116505,8 +110343,6 @@
"shop_price": "1000",
"examine": "A robe bottom infused with arcane power, especially created for combat spells.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3",
"absorb": "5,2,0",
"equipment_slot": "7",
@@ -116523,8 +110359,6 @@
"ge_buy_limit": "10",
"examine": "Its arcane power is waning.",
"durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
"weight": "3",
"absorb": "5,2,0",
"equipment_slot": "7",
@@ -116547,97 +110381,91 @@
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A worn-out hood, formerly worn by the followers of Guthix.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "7",
"equipment_slot": "0",
"grand_exchange_price": "6915",
"name": "Druidic mage hood 100",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12887",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A worn-out hood, formerly worn by the followers of Guthix.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "7",
"equipment_slot": "0",
"grand_exchange_price": "6915",
"name": "Druidic mage hood 80",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12888",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A worn-out hood, formerly worn by the followers of Guthix.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "7",
"equipment_slot": "0",
"grand_exchange_price": "6915",
"name": "Druidic mage hood 60",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12889",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A worn-out hood, formerly worn by the followers of Guthix.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "7",
"equipment_slot": "0",
"grand_exchange_price": "6915",
"name": "Druidic mage hood 40",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12890",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A worn-out hood, formerly worn by the followers of Guthix.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "7",
"equipment_slot": "0",
"grand_exchange_price": "6915",
"name": "Druidic mage hood 20",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12891",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"ge_buy_limit": "10",
"examine": "A worn-out hood, formerly worn by the followers of Guthix.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "7",
"equipment_slot": "0",
"grand_exchange_price": "8504",
"name": "Druidic mage hood 0",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12892",
"bonuses": "0,0,0,1,0,0,0,0,1,0,1,0,0,0,0"
@@ -116647,109 +110475,103 @@
"grand_exchange_price": "8504",
"durability": null,
"name": "Druidic mage hood 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12893"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "300",
"examine": "A magical robe top worn by followers of Guthix.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "80273",
"name": "Druidic mage top 100",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12894",
"bonuses": "0,0,0,7,0,0,0,0,7,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "300",
"examine": "A magical robe top worn by followers of Guthix.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "80273",
"name": "Druidic mage top 80",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12895",
"bonuses": "0,0,0,7,0,0,0,0,7,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "300",
"examine": "A magical robe top worn by followers of Guthix.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "80273",
"name": "Druidic mage top 60",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12896",
"bonuses": "0,0,0,7,0,0,0,0,7,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "300",
"examine": "A magical robe top worn by followers of Guthix.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "80273",
"name": "Druidic mage top 40",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12897",
"bonuses": "0,0,0,7,0,0,0,0,7,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "300",
"examine": "A magical robe top worn by followers of Guthix.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "80273",
"name": "Druidic mage top 20",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12898",
"bonuses": "0,0,0,7,0,0,0,0,7,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "300",
"ge_buy_limit": "10",
"examine": "A magical robe top worn by followers of Guthix.",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "76300",
"name": "Druidic mage top 0",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12899",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
@@ -116759,17 +110581,15 @@
"grand_exchange_price": "76300",
"durability": null,
"name": "Druidic mage top 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12900"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "200",
"examine": "A magical robe bottom worn by a person who follows Guthix.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -116781,12 +110601,10 @@
"bonuses": "0,0,0,6,0,0,0,0,6,0,6,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "200",
"examine": "A magical robe bottom worn by a person who follows Guthix.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -116798,12 +110616,10 @@
"bonuses": "0,0,0,6,0,0,0,0,6,0,6,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "200",
"examine": "A magical robe bottom worn by a person who follows Guthix.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -116815,12 +110631,10 @@
"bonuses": "0,0,0,6,0,0,0,0,6,0,6,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "200",
"examine": "A magical robe bottom worn by a person who follows Guthix.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -116832,12 +110646,10 @@
"bonuses": "0,0,0,6,0,0,0,0,6,0,6,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "200",
"examine": "A magical robe bottom worn by a person who follows Guthix.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -116849,19 +110661,17 @@
"bonuses": "0,0,0,6,0,0,0,0,6,0,6,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "200",
"ge_buy_limit": "10",
"examine": "A magical robe bottom worn by a person who follows Guthix.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
"grand_exchange_price": "60800",
"name": "Druidic mage bottom 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12906",
"bonuses": "0,0,0,2,0,0,0,0,2,0,2,0,0,0,0"
@@ -116871,7 +110681,7 @@
"grand_exchange_price": "60800",
"durability": null,
"name": "Druidic mage bottom 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12907"
},
@@ -116880,14 +110690,12 @@
"shop_price": "50",
"examine": "A spiked square shield.",
"durability": null,
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "2271",
"name": "Adamant spikeshield 100",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12908",
"bonuses": "0,0,0,-6,-2,25,27,23,0,25,26,1,0,0,0"
@@ -116897,14 +110705,12 @@
"shop_price": "50",
"examine": "A spiked square shield.",
"durability": null,
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "2271",
"name": "Adamant spikeshield 80",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12909",
"bonuses": "0,0,0,-6,-2,25,27,23,0,25,26,1,0,0,0"
@@ -116914,14 +110720,12 @@
"shop_price": "50",
"examine": "A spiked square shield.",
"durability": null,
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "2271",
"name": "Adamant spikeshield 60",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12910",
"bonuses": "0,0,0,-6,-2,25,27,23,0,25,26,1,0,0,0"
@@ -116931,14 +110735,12 @@
"shop_price": "50",
"examine": "A spiked square shield.",
"durability": null,
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "2271",
"name": "Adamant spikeshield 40",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12911",
"bonuses": "0,0,0,-6,-2,25,27,23,0,25,26,1,0,0,0"
@@ -116948,14 +110750,12 @@
"shop_price": "50",
"examine": "A spiked square shield.",
"durability": null,
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "2271",
"name": "Adamant spikeshield 20",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12912",
"bonuses": "0,0,0,-6,-2,25,27,23,0,25,26,1,0,0,0"
@@ -116966,8 +110766,6 @@
"ge_buy_limit": "100",
"examine": "Not so spiky anymore.",
"durability": null,
- "low_alchemy": "1620",
- "high_alchemy": "2430",
"weight": "5",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -116993,14 +110791,12 @@
"shop_price": "100",
"examine": "A large, spiked metal shield",
"durability": null,
- "low_alchemy": "2456",
- "high_alchemy": "3684",
"weight": "7",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "19190",
"name": "Adamant berserker shield 100",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12915",
"bonuses": "0,0,0,-8,-2,28,32,30,-1,30,31,2,0,0,0"
@@ -117010,14 +110806,12 @@
"shop_price": "100",
"examine": "A large, spiked metal shield",
"durability": null,
- "low_alchemy": "2456",
- "high_alchemy": "3684",
"weight": "7",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "19190",
"name": "Adamant berserker shield 80",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12916",
"bonuses": "0,0,0,-8,-2,28,32,30,-1,30,31,2,0,0,0"
@@ -117027,14 +110821,12 @@
"shop_price": "100",
"examine": "A large, spiked metal shield",
"durability": null,
- "low_alchemy": "2456",
- "high_alchemy": "3684",
"weight": "7",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "19190",
"name": "Adamant berserker shield 60",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12917",
"bonuses": "0,0,0,-8,-2,28,32,30,-1,30,31,2,0,0,0"
@@ -117044,14 +110836,12 @@
"shop_price": "100",
"examine": "A large, spiked metal shield",
"durability": null,
- "low_alchemy": "2456",
- "high_alchemy": "3684",
"weight": "7",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "19190",
"name": "Adamant berserker shield 40",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12918",
"bonuses": "0,0,0,-8,-2,28,32,30,-1,30,31,2,0,0,0"
@@ -117061,14 +110851,12 @@
"shop_price": "100",
"examine": "A large, spiked metal shield",
"durability": null,
- "low_alchemy": "2456",
- "high_alchemy": "3684",
"weight": "7",
"absorb": "3,0,6",
"equipment_slot": "5",
"grand_exchange_price": "19190",
"name": "Adamant berserker shield 20",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12919",
"bonuses": "0,0,0,-8,-2,28,32,30,-1,30,31,2,0,0,0"
@@ -117079,8 +110867,6 @@
"ge_buy_limit": "10",
"examine": "Not so spiky anymore!",
"durability": null,
- "low_alchemy": "2456",
- "high_alchemy": "3684",
"weight": "7",
"absorb": "3,0,6",
"equipment_slot": "5",
@@ -117106,8 +110892,6 @@
"shop_price": "200",
"examine": "A spiked, medium square shield.",
"durability": null,
- "low_alchemy": "2576",
- "high_alchemy": "3864",
"weight": "4",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117124,8 +110908,6 @@
"shop_price": "200",
"examine": "A spiked, medium square shield.",
"durability": null,
- "low_alchemy": "2576",
- "high_alchemy": "3864",
"weight": "4",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117141,8 +110923,6 @@
"shop_price": "200",
"examine": "A spiked, medium square shield.",
"durability": null,
- "low_alchemy": "2576",
- "high_alchemy": "3864",
"weight": "4",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117158,8 +110938,6 @@
"shop_price": "200",
"examine": "A spiked, medium square shield.",
"durability": null,
- "low_alchemy": "2576",
- "high_alchemy": "3864",
"weight": "4",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117175,8 +110953,6 @@
"shop_price": "200",
"examine": "A spiked, medium square shield.",
"durability": null,
- "low_alchemy": "2576",
- "high_alchemy": "3864",
"weight": "4",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117193,8 +110969,6 @@
"ge_buy_limit": "10",
"examine": "Not so spiky anymore.",
"durability": null,
- "low_alchemy": "2576",
- "high_alchemy": "3864",
"weight": "4",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117220,14 +110994,12 @@
"shop_price": "300",
"examine": "A Large, spiked metal shield.",
"durability": null,
- "low_alchemy": "25760",
- "high_alchemy": "38640",
"weight": "6",
"absorb": "3,0,7",
"equipment_slot": "5",
"grand_exchange_price": "82000",
"name": "Rune berserker shield 100",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12929",
"bonuses": "0,0,0,-8,-2,45,49,47,-1,47,41,4,0,0,0",
@@ -117238,14 +111010,12 @@
"shop_price": "300",
"examine": "A Large, spiked metal shield.",
"durability": null,
- "low_alchemy": "25760",
- "high_alchemy": "38640",
"weight": "6",
"absorb": "3,0,7",
"equipment_slot": "5",
"grand_exchange_price": "82000",
"name": "Rune berserker shield 80",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12930",
"bonuses": "0,0,0,-8,-2,45,49,47,-1,47,41,4,0,0,0"
@@ -117255,14 +111025,12 @@
"shop_price": "300",
"examine": "A Large, spiked metal shield.",
"durability": null,
- "low_alchemy": "25760",
- "high_alchemy": "38640",
"weight": "6",
"absorb": "3,0,7",
"equipment_slot": "5",
"grand_exchange_price": "82000",
"name": "Rune berserker shield 60",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12931",
"bonuses": "0,0,0,-8,-2,45,49,47,-1,47,41,4,0,0,0"
@@ -117272,14 +111040,12 @@
"shop_price": "300",
"examine": "A Large, spiked metal shield.",
"durability": null,
- "low_alchemy": "25760",
- "high_alchemy": "38640",
"weight": "6",
"absorb": "3,0,7",
"equipment_slot": "5",
"grand_exchange_price": "82000",
"name": "Rune berserker shield 40",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12932",
"bonuses": "0,0,0,-8,-2,45,49,47,-1,47,41,4,0,0,0"
@@ -117289,14 +111055,12 @@
"shop_price": "300",
"examine": "A Large, spiked metal shield.",
"durability": null,
- "low_alchemy": "25760",
- "high_alchemy": "38640",
"weight": "6",
"absorb": "3,0,7",
"equipment_slot": "5",
"grand_exchange_price": "82000",
"name": "Rune berserker shield 20",
- "tradeable": "true",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12933",
"bonuses": "0,0,0,-8,-2,45,49,47,-1,47,41,4,0,0,0"
@@ -117307,8 +111071,6 @@
"ge_buy_limit": "10",
"examine": "Not so spiky anymore.",
"durability": null,
- "low_alchemy": "25760",
- "high_alchemy": "38640",
"weight": "6",
"absorb": "3,0,7",
"equipment_slot": "5",
@@ -117335,10 +111097,9 @@
"shop_price": "150",
"examine": "A coif made of green dragonhide.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.9",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "88084",
"name": "Green d'hide coif 100",
@@ -117353,10 +111114,9 @@
"shop_price": "150",
"examine": "A coif made of green dragonhide.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.9",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "88084",
"name": "Green d'hide coif 80",
@@ -117371,10 +111131,9 @@
"shop_price": "150",
"examine": "A coif made of green dragonhide.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.9",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "88084",
"name": "Green d'hide coif 60",
@@ -117389,10 +111148,9 @@
"shop_price": "150",
"examine": "A coif made of green dragonhide.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.9",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "88084",
"name": "Green d'hide coif 40",
@@ -117407,10 +111165,9 @@
"shop_price": "150",
"examine": "A coif made of green dragonhide.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.9",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "88084",
"name": "Green d'hide coif 20",
@@ -117426,14 +111183,13 @@
"ge_buy_limit": "100",
"examine": "A worn out coif made of green dragonhide.",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.9",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "92700",
"name": "Green d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12941",
"bonuses": "0,0,0,-1,1,1,2,2,1,2,1,0,0,0,0"
@@ -117444,20 +111200,19 @@
"grand_exchange_price": "92700",
"durability": null,
"name": "Green d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12942"
},
{
"remove_head": "true",
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"shop_price": "200",
"examine": "A coif made of blue dragonhide.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "186985",
"name": "Blue d'hide coif 100",
@@ -117468,14 +111223,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"shop_price": "200",
"examine": "A coif made of blue dragonhide.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "186985",
"name": "Blue d'hide coif 80",
@@ -117486,14 +111240,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"shop_price": "200",
"examine": "Fully charged: A coif made of blue dragonhide. Fully degraded: A worn out coif made of blue dragonhide.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "186985",
"name": "Blue d'hide coif 60",
@@ -117504,14 +111257,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"shop_price": "200",
"examine": "A coif made of blue dragonhide.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "186985",
"name": "Blue d'hide coif 40",
@@ -117522,14 +111274,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"shop_price": "200",
"examine": "A coif made of blue dragonhide.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "186985",
"name": "Blue d'hide coif 20",
@@ -117540,19 +111291,18 @@
},
{
"remove_head": "true",
- "requirements": "{1,50}-{4,40}",
+ "requirements": "{1,40}-{4,50}",
"shop_price": "200",
"ge_buy_limit": "100",
"examine": "A worn out coif made of blue dragonhide.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "131900",
"name": "Blue d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12948",
"bonuses": "0,0,0,-1,1,1,2,2,1,2,2,0,0,0,0"
@@ -117563,20 +111313,19 @@
"grand_exchange_price": "131900",
"durability": null,
"name": "Blue d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12949"
},
{
"remove_head": "true",
- "requirements": "{1,60}-{4,40}",
+ "requirements": "{1,40}-{4,60}",
"shop_price": "300",
"examine": "A coif made of red dragonhide.",
"durability": null,
- "low_alchemy": "1400",
- "high_alchemy": "2100",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "230059",
"name": "Red d'hide coif 100",
@@ -117587,14 +111336,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{4,40}",
+ "requirements": "{1,40}-{4,60}",
"shop_price": "300",
"examine": "A coif made of red dragonhide.",
"durability": null,
- "low_alchemy": "1400",
- "high_alchemy": "2100",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "230059",
"name": "Red d'hide coif 80",
@@ -117605,14 +111353,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{4,40}",
+ "requirements": "{1,40}-{4,60}",
"shop_price": "300",
"examine": "Fully charged: A coif made of red dragonhide.Fully degraded: A worn out coif made of red dragonhide.",
"durability": null,
- "low_alchemy": "1400",
- "high_alchemy": "2100",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "230059",
"name": "Red d'hide coif 60",
@@ -117623,14 +111370,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{4,40}",
+ "requirements": "{1,40}-{4,60}",
"shop_price": "300",
"examine": "A coif made of red dragonhide.",
"durability": null,
- "low_alchemy": "1400",
- "high_alchemy": "2100",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "230059",
"name": "Red d'hide coif 40",
@@ -117641,14 +111387,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{4,40}",
+ "requirements": "{1,40}-{4,60}",
"shop_price": "300",
"examine": "A coif made of red dragonhide.",
"durability": null,
- "low_alchemy": "1400",
- "high_alchemy": "2100",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "230059",
"name": "Red d'hide coif 20",
@@ -117659,19 +111404,18 @@
},
{
"remove_head": "true",
- "requirements": "{1,60}-{4,40}",
+ "requirements": "{1,40}-{4,60}",
"shop_price": "300",
"ge_buy_limit": "100",
"examine": "A worn out coif made of red dragonhide.",
"durability": null,
- "low_alchemy": "1400",
- "high_alchemy": "2100",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "156600",
"name": "Red d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12955",
"bonuses": "0,0,0,-1,2,1,2,3,1,2,2,0,0,0,0"
@@ -117682,20 +111426,19 @@
"grand_exchange_price": "156600",
"durability": null,
"name": "Red d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12956"
},
{
"remove_head": "true",
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"shop_price": "500",
"examine": "A coif made of black dragonhide.",
"durability": null,
- "low_alchemy": "2200",
- "high_alchemy": "3300",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "379555",
"name": "Black d'hide coif 100",
@@ -117706,14 +111449,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"shop_price": "500",
"examine": "A coif made of black dragonhide.",
"durability": null,
- "low_alchemy": "2200",
- "high_alchemy": "3300",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "379555",
"name": "Black d'hide coif 80",
@@ -117724,14 +111466,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"shop_price": "500",
"examine": "A coif made of black dragonhide.",
"durability": null,
- "low_alchemy": "2200",
- "high_alchemy": "3300",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "379555",
"name": "Black d'hide coif 60",
@@ -117742,14 +111483,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"shop_price": "500",
"examine": "A coif made of black dragonhide.",
"durability": null,
- "low_alchemy": "2200",
- "high_alchemy": "3300",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "379555",
"name": "Black d'hide coif 40",
@@ -117760,14 +111500,13 @@
},
{
"remove_head": "true",
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"shop_price": "500",
"examine": "Fully charged: A coif made of black dragonhide. Fully degraded: A worn out coif made of black dragonhide.",
"durability": null,
- "low_alchemy": "2200",
- "high_alchemy": "3300",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "379555",
"name": "Black d'hide coif 20",
@@ -117778,19 +111517,18 @@
},
{
"remove_head": "true",
- "requirements": "{1,70}-{4,40}",
+ "requirements": "{1,40}-{4,70}",
"shop_price": "500",
"ge_buy_limit": "100",
"examine": "A coif made of black dragonhide.",
"durability": null,
- "low_alchemy": "2200",
- "high_alchemy": "3300",
"weight": "1",
"absorb": "0,3,1",
+ "equip_audio": "2238",
"equipment_slot": "0",
"grand_exchange_price": "229000",
"name": "Black d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12962",
"bonuses": "0,0,0,-1,3,1,3,3,1,2,3,0,0,0,0"
@@ -117801,18 +111539,16 @@
"grand_exchange_price": "229000",
"durability": null,
"name": "Black d'hide coif 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12963"
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "50",
"examine": "A magical hood, especially created for combat spells.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.8",
"equipment_slot": "0",
"grand_exchange_price": "5661",
@@ -117824,12 +111560,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "50",
"examine": "A magical hood, especially created for combat spells.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.8",
"equipment_slot": "0",
"grand_exchange_price": "5661",
@@ -117841,12 +111575,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "50",
"examine": "A magical hood, especially created for combat spells.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.8",
"equipment_slot": "0",
"grand_exchange_price": "5661",
@@ -117858,12 +111590,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "50",
"examine": "A magical hood, especially created for combat spells.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.8",
"equipment_slot": "0",
"grand_exchange_price": "5661",
@@ -117875,12 +111605,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "50",
"examine": "A magical hood, especially created for combat spells.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.8",
"equipment_slot": "0",
"grand_exchange_price": "5661",
@@ -117892,18 +111620,16 @@
},
{
"remove_head": "true",
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "50",
"ge_buy_limit": "10",
"examine": "A magical hood, especially created for combat spells.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "0.8",
"equipment_slot": "0",
"grand_exchange_price": "6511",
"name": "Combat hood 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12969",
"bonuses": "0,0,0,1,0,0,0,0,1,0,2,0,0,0,0"
@@ -117913,17 +111639,15 @@
"grand_exchange_price": "6511",
"durability": null,
"name": "Combat hood 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12970"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "150",
"examine": "A magical robe top, especially made for combat spells.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
@@ -117936,12 +111660,10 @@
"bonuses": "0,0,0,7,0,1,1,1,7,0,8,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "150",
"examine": "A magical robe top, especially made for combat spells.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
@@ -117954,12 +111676,10 @@
"bonuses": "0,0,0,7,0,1,1,1,7,0,8,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "150",
"examine": "A magical robe top, especially made for combat spells.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
@@ -117972,12 +111692,10 @@
"bonuses": "0,0,0,7,0,1,1,1,7,0,8,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "150",
"examine": "A magical robe top, especially made for combat spells.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
@@ -117990,12 +111708,10 @@
"bonuses": "0,0,0,7,0,1,1,1,7,0,8,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "150",
"examine": "A magical robe top, especially made for combat spells.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
@@ -118008,20 +111724,18 @@
"bonuses": "0,0,0,7,0,1,1,1,7,0,8,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "150",
"ge_buy_limit": "10",
"examine": "A magical robe top, especially made for combat spells.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"weight": "4",
"absorb": "2,1,0",
"equipment_slot": "4",
"remove_sleeves": "true",
"grand_exchange_price": "61500",
"name": "Combat robe top 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12976",
"bonuses": "0,0,0,3,0,0,0,0,3,0,4,0,0,0,0"
@@ -118031,17 +111745,15 @@
"grand_exchange_price": "61500",
"durability": null,
"name": "Combat robe top 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12977"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A magical robe bottom, especially created for combat spells.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -118053,12 +111765,10 @@
"bonuses": "0,0,0,6,0,1,1,1,6,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A magical robe bottom, especially created for combat spells.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -118070,12 +111780,10 @@
"bonuses": "0,0,0,6,0,1,1,1,6,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A magical robe bottom, especially created for combat spells.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -118087,12 +111795,10 @@
"bonuses": "0,0,0,6,0,1,1,1,6,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A magical robe bottom, especially created for combat spells.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -118104,12 +111810,10 @@
"bonuses": "0,0,0,6,0,1,1,1,6,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"examine": "A magical robe bottom, especially created for combat spells.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
@@ -118121,19 +111825,17 @@
"bonuses": "0,0,0,6,0,1,1,1,6,0,7,0,0,0,0"
},
{
- "requirements": "{1,20}-{6,10}",
+ "requirements": "{1,10}-{6,20}",
"shop_price": "100",
"ge_buy_limit": "10",
"examine": "A magical robe bottom, especially created for combat spells.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"weight": "3",
"absorb": "1,0,0",
"equipment_slot": "7",
"grand_exchange_price": "47800",
"name": "Combat robe bottom 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12983",
"bonuses": "0,0,0,2,0,0,0,0,2,0,3,0,0,0,0"
@@ -118143,7 +111845,7 @@
"grand_exchange_price": "47800",
"durability": null,
"name": "Combat robe bottom 0",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12984"
},
@@ -118153,8 +111855,7 @@
"grand_exchange_price": "3694",
"durability": null,
"name": "Bronze gauntlets",
- "low_alchemy": "40",
- "high_alchemy": "60",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12985",
"bonuses": "0,0,0,-1,-1,2,3,3,-1,2,2,0,0,0,0",
@@ -118167,8 +111868,7 @@
"grand_exchange_price": "3275",
"durability": null,
"name": "Worn-out bronze gauntlets",
- "low_alchemy": "40",
- "high_alchemy": "60",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12986",
"bonuses": "0,0,0,-1,-1,0,1,1,-1,0,1,0,0,0,0",
@@ -118179,7 +111879,7 @@
"grand_exchange_price": "3275",
"durability": null,
"name": "Worn-out bronze gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12987"
},
@@ -118189,8 +111889,7 @@
"grand_exchange_price": "17339",
"durability": null,
"name": "Iron gauntlets",
- "low_alchemy": "120",
- "high_alchemy": "180",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12988",
"bonuses": "0,0,0,-1,-1,3,4,4,-1,3,3,0,0,0,0",
@@ -118203,8 +111902,7 @@
"grand_exchange_price": "16000",
"durability": null,
"name": "Worn-out iron gauntlets",
- "low_alchemy": "120",
- "high_alchemy": "180",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12989",
"bonuses": "0,0,0,-1,-1,0,1,1,-1,0,1,0,0,0,0",
@@ -118215,7 +111913,7 @@
"grand_exchange_price": "16000",
"durability": null,
"name": "Worn-out iron gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12990"
},
@@ -118223,16 +111921,15 @@
"requirements": "{1,5}",
"shop_price": "50",
"examine": "I have to keep my hands safe!",
- "durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
- "weight": "10",
- "equipment_slot": "9",
"grand_exchange_price": "29844",
+ "durability": null,
"name": "Steel gauntlets",
+ "tradeable": "false",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "12991",
- "bonuses": "0,0,0,-1,-1,4,5,5,-1,4,4,0,0,0,0"
+ "bonuses": "0,0,0,-1,-1,4,5,5,-1,4,4,0,0,0,0",
+ "equipment_slot": "9"
},
{
"requirements": "{1,5}",
@@ -118240,12 +111937,11 @@
"ge_buy_limit": "100",
"examine": "I have to keep my hands safe!",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "10",
"equipment_slot": "9",
"grand_exchange_price": "27000",
"name": "Worn-out steel gauntlets",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12992",
"bonuses": "0,0,0,-1,-1,1,1,1,-1,1,1,0,0,0,0"
@@ -118255,7 +111951,7 @@
"grand_exchange_price": "27000",
"durability": null,
"name": "Worn-out steel gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12993"
},
@@ -118263,16 +111959,15 @@
"requirements": "{1,10}",
"shop_price": "75",
"examine": "I have to keep my hands safe!",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "50808",
+ "durability": null,
"name": "Black gauntlets",
+ "tradeable": "false",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "12994",
- "bonuses": "0,0,0,-1,-1,5,6,6,-1,5,5,0,0,0,0"
+ "bonuses": "0,0,0,-1,-1,5,6,6,-1,5,5,0,0,0,0",
+ "equipment_slot": "9"
},
{
"requirements": "{1,10}",
@@ -118280,12 +111975,11 @@
"ge_buy_limit": "100",
"examine": "I have to keep my hands safe!",
"durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
"weight": "0.2",
"equipment_slot": "9",
"grand_exchange_price": "40100",
"name": "Worn-out black gauntlets",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12995",
"bonuses": "0,0,0,-1,-1,1,2,2,-1,1,1,0,0,0,0"
@@ -118295,7 +111989,7 @@
"grand_exchange_price": "40100",
"durability": null,
"name": "Worn-out black gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12996"
},
@@ -118306,8 +112000,7 @@
"grand_exchange_price": "60064",
"durability": null,
"name": "Mithril gauntlets",
- "low_alchemy": "1200",
- "high_alchemy": "1800",
+ "tradeable": "false",
"archery_ticket_price": "0",
"id": "12997",
"bonuses": "0,0,0,-1,-1,6,7,7,-1,6,6,0,0,0,0",
@@ -118318,22 +112011,21 @@
"shop_price": "100",
"ge_buy_limit": "100",
"examine": "I have to keep my hands safe!",
- "durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
- "equipment_slot": "9",
"grand_exchange_price": "54200",
+ "durability": null,
"name": "Worn-out mithril gauntlets",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12998",
- "bonuses": "0,0,0,-1,-1,2,2,2,-1,2,2,0,0,0,0"
+ "bonuses": "0,0,0,-1,-1,2,2,2,-1,2,2,0,0,0,0",
+ "equipment_slot": "9"
},
{
"ge_buy_limit": "100",
"grand_exchange_price": "54200",
"durability": null,
"name": "Worn-out mithril gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "12999"
},
@@ -118341,17 +112033,15 @@
"requirements": "{1,30}",
"shop_price": "150",
"examine": "I have to keep my hands safe! Uncharged: A bit worse for wear.",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "74526",
+ "durability": null,
"name": "Adamant gauntlets",
"tradeable": "false",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "13000",
- "bonuses": "0,0,0,-1,-1,8,9,9,-1,8,8,1,0,0,0"
+ "bonuses": "0,0,0,-1,-1,8,9,9,-1,8,8,1,0,0,0",
+ "equipment_slot": "9"
},
{
"requirements": "{1,30}",
@@ -118359,13 +112049,11 @@
"ge_buy_limit": "100",
"examine": "I have to keep my hands safe! Uncharged: A bit worse for wear.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"weight": "0.2",
"equipment_slot": "9",
"grand_exchange_price": "71500",
"name": "Worn-out adamant gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13001",
"bonuses": "0,0,0,-1,-1,2,3,3,-1,2,2,0,0,0,0"
@@ -118375,7 +112063,7 @@
"grand_exchange_price": "71500",
"durability": null,
"name": "Worn-out adamant gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13002"
},
@@ -118383,16 +112071,15 @@
"requirements": "{1,40}",
"shop_price": "200",
"examine": "Fully charged: I have to keep my hands safe! Worn-Out: A bit worse for wear.",
- "durability": null,
- "low_alchemy": "3000",
- "high_alchemy": "4500",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "95700",
+ "durability": null,
"name": "Rune gauntlets",
+ "tradeable": "false",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "13003",
- "bonuses": "0,0,0,-1,-1,10,11,11,-1,10,10,2,0,0,0"
+ "bonuses": "0,0,0,-1,-1,10,11,11,-1,10,10,2,0,0,0",
+ "equipment_slot": "9"
},
{
"requirements": "{1,40}",
@@ -118400,12 +112087,11 @@
"ge_buy_limit": "100",
"examine": "Fully charged: I have to keep my hands safe! Worn-Out: A bit worse for wear.",
"durability": null,
- "low_alchemy": "3000",
- "high_alchemy": "4500",
"weight": "0.2",
"equipment_slot": "9",
"grand_exchange_price": "99900",
"name": "Worn-out rune gauntlets",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13004",
"bonuses": "0,0,0,-1,-1,3,4,4,-1,3,3,0,0,0,0"
@@ -118415,7 +112101,7 @@
"grand_exchange_price": "99900",
"durability": null,
"name": "Worn-out rune gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13005"
},
@@ -118423,16 +112109,15 @@
"requirements": "{1,60}",
"shop_price": "300",
"examine": "Uncharged: A bit worse for wear. Charged: I have to keep my hands safe!",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "weight": "0.2",
- "equipment_slot": "9",
"grand_exchange_price": "214700",
+ "durability": null,
"name": "Dragon gauntlets",
+ "tradeable": "false",
+ "weight": "0.2",
"archery_ticket_price": "0",
"id": "13006",
- "bonuses": "0,0,0,-1,-1,14,15,15,-1,14,14,3,0,0,0"
+ "bonuses": "0,0,0,-1,-1,14,15,15,-1,14,14,3,0,0,0",
+ "equipment_slot": "9"
},
{
"requirements": "{1,60}",
@@ -118440,12 +112125,11 @@
"ge_buy_limit": "100",
"examine": "Uncharged: A bit worse for wear. Charged: I have to keep my hands safe!",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"weight": "0.2",
"equipment_slot": "9",
"grand_exchange_price": "166200",
"name": "Worn-out dragon gauntlets",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13007",
"bonuses": "0,0,0,-1,-1,4,5,5,-1,4,4,1,0,0,0"
@@ -118455,13 +112139,13 @@
"grand_exchange_price": "166200",
"durability": null,
"name": "Worn-out dragon gauntlets",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13008"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118474,14 +112158,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13011"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118494,14 +112176,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13013"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118514,14 +112194,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13015"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118534,14 +112212,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13017"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118554,14 +112230,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13019"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118574,14 +112248,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13021"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118594,14 +112266,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13023"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118614,14 +112284,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13025"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118634,14 +112302,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13027"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118654,14 +112320,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13029"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118674,14 +112338,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13031"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118694,14 +112356,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13033"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118714,14 +112374,12 @@
"examine": "I need to solve this.",
"durability": null,
"name": "Puzzle box",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13035"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118734,15 +112392,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13037"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118755,15 +112411,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13039"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118772,7 +112426,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118781,7 +112435,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118794,15 +112448,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13043"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118815,15 +112467,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13045"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118836,15 +112486,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13047"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118853,7 +112501,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118862,7 +112510,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118871,7 +112519,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118884,15 +112532,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13052"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118905,15 +112551,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13054"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118922,7 +112566,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118935,15 +112579,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13057"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118956,15 +112598,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13059"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118973,7 +112613,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -118986,15 +112626,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13062"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119007,15 +112645,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13064"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119028,15 +112664,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13066"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119045,7 +112679,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119054,7 +112688,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119063,7 +112697,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119072,7 +112706,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119081,7 +112715,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119090,7 +112724,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119099,7 +112733,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119108,7 +112742,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119121,15 +112755,13 @@
"durability": null,
"name": "Casket",
"tradeable": "true",
- "low_alchemy": "20",
- "high_alchemy": "30",
"weight": "5",
"archery_ticket_price": "0",
"id": "13077"
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119138,7 +112770,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119147,7 +112779,7 @@
},
{
"shop_price": "5000",
- "examine": "Depends on the type of clue you have(\"A set of instructions to be followed\". \"A clue!\".\"It points to great treasure!\". \" A place on the world map,but where?\", \"Perhaps someone at the observatory can teach me to navigate?\" \"Part of the world map, but whe",
+ "examine": "A set of instructions to be followed.",
"durability": null,
"name": "Clue scroll",
"tradeable": "false",
@@ -119155,31 +112787,30 @@
"id": "13080"
},
{
+ "requirements": "{4,33}",
"ge_buy_limit": "100",
"turn90cw_anim": "821",
"examine": "A black crossbow.",
"walk_anim": "4226",
- "low_alchemy": "320",
+ "durability": null,
+ "weight": "5",
"turn90ccw_anim": "822",
"attack_speed": "6",
+ "weapon_interface": "17",
"turn180_anim": "4227",
+ "equip_audio": "2244",
+ "render_anim": "175",
"equipment_slot": "3",
"grand_exchange_price": "261",
"stand_anim": "4591",
+ "attack_audios": "2700,0,0,0",
"tradeable": "true",
+ "name": "Black crossbow",
"run_anim": "4228",
"archery_ticket_price": "0",
"id": "13081",
"stand_turn_anim": "823",
- "bonuses": "0,0,0,0,60,0,0,0,0,0,0,0,0,0,0",
- "requirements": "{4,33}",
- "durability": null,
- "high_alchemy": "480",
- "weight": "5",
- "weapon_interface": "17",
- "render_anim": "175",
- "attack_audios": "2700,0,0,0",
- "name": "Black crossbow"
+ "bonuses": "0,0,0,0,60,0,0,0,0,0,0,0,0,0,0"
},
{
"ge_buy_limit": "100",
@@ -119194,69 +112825,59 @@
"requirements": "{4,33}",
"ge_buy_limit": "100",
"examine": "Black crossbow bolts.",
- "durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
- "equipment_slot": "13",
"grand_exchange_price": "55",
+ "durability": null,
"name": "Black bolts",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13083",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75",
+ "equipment_slot": "13"
},
{
"requirements": "{4,33}",
"ge_buy_limit": "100",
"examine": "Black crossbow bolts.",
- "durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
- "equipment_slot": "13",
"grand_exchange_price": "141",
+ "durability": null,
"name": "Black bolts(p)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13084",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75",
+ "equipment_slot": "13"
},
{
"requirements": "{4,33}",
"ge_buy_limit": "100",
"examine": "Black crossbow bolts.",
- "durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
- "equipment_slot": "13",
"grand_exchange_price": "233",
+ "durability": null,
"name": "Black bolts(p+)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13085",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75",
+ "equipment_slot": "13"
},
{
"requirements": "{4,33}",
"ge_buy_limit": "100",
"examine": "Black crossbow bolts.",
- "durability": null,
- "low_alchemy": "5",
- "high_alchemy": "8",
- "equipment_slot": "13",
"grand_exchange_price": "1690",
+ "durability": null,
"name": "Black bolts(p++)",
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13086",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75",
+ "equipment_slot": "13"
},
{
"requirements": "{0,8}",
"ge_buy_limit": "2",
"examine": "A sapphire-topped cane.",
"durability": null,
- "low_alchemy": "172",
- "high_alchemy": "258",
"weight": "0.5",
"attack_speed": "5",
"weapon_interface": "10",
@@ -119282,8 +112903,6 @@
"ge_buy_limit": "2",
"examine": "A ruby-topped cane.",
"durability": null,
- "low_alchemy": "576",
- "high_alchemy": "864",
"weight": "0.5",
"weapon_interface": "10",
"equipment_slot": "3",
@@ -119308,8 +112927,6 @@
"ge_buy_limit": "2",
"examine": "A diamond-topped cane.",
"durability": null,
- "low_alchemy": "5760",
- "high_alchemy": "8640",
"weight": "0.5",
"attack_speed": "5",
"weapon_interface": "10",
@@ -119332,19 +112949,17 @@
"id": "13100"
},
{
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "Comes with a free rabbit!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "weight": "1",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "160400",
+ "durability": null,
"name": "Top hat",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13101"
+ "id": "13101",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -119362,8 +112977,6 @@
"durability": null,
"name": "Pith helmet",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "13103",
@@ -119384,8 +112997,6 @@
"ge_buy_limit": "2",
"examine": "Spikier than normal.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "10",
"equipment_slot": "0",
"grand_exchange_price": "38300",
@@ -119406,19 +113017,17 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "Shear elegance.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "296700",
+ "durability": null,
"name": "Sheep mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13107"
+ "id": "13107",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -119431,19 +113040,17 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "I can get the look right, but can I do the waddle too?",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "633600",
+ "durability": null,
"name": "Penguin mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13109"
+ "id": "13109",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -119456,19 +113063,17 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "The bats have left the belltower.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "399000",
+ "durability": null,
"name": "Bat mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13111"
+ "id": "13111",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -119481,18 +113086,16 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "It's the year of the cat!",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "1200000",
+ "durability": null,
"name": "Cat mask",
"tradeable": "true",
"archery_ticket_price": "0",
- "id": "13113"
+ "id": "13113",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -119505,19 +113108,17 @@
},
{
"remove_head": "true",
+ "lendable": "true",
"ge_buy_limit": "2",
"examine": "I'm hungry like the wolf.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
- "lendable": "true",
"grand_exchange_price": "1500000",
+ "durability": null,
"name": "Wolf mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13115"
+ "id": "13115",
+ "equipment_slot": "0"
},
{
"ge_buy_limit": "2",
@@ -119534,8 +113135,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119560,8 +113159,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119604,8 +113201,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119628,8 +113223,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119652,8 +113245,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119676,8 +113267,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119700,8 +113289,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119724,8 +113311,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119748,8 +113333,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119772,8 +113355,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119796,8 +113377,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119820,8 +113399,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119844,8 +113421,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119868,8 +113443,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119892,8 +113465,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119916,8 +113487,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119940,8 +113509,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119964,8 +113531,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -119988,8 +113553,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120012,8 +113575,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120036,8 +113597,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120060,8 +113619,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120084,8 +113641,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120108,8 +113663,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120132,8 +113685,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120156,8 +113707,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120180,8 +113729,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120204,8 +113751,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120228,8 +113773,6 @@
"walk_anim": "9051",
"has_special": "true",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"weight": "5",
"turn90ccw_anim": "9054",
"attack_speed": "5",
@@ -120277,8 +113820,6 @@
"examine": "Used to make a metal chain.",
"durability": null,
"name": "Chain link mould",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "13153"
@@ -120287,8 +113828,6 @@
"examine": "A chain made from mithril and silver.",
"durability": null,
"name": "Silvthril chain",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "3",
"archery_ticket_price": "0",
"id": "13154"
@@ -120297,8 +113836,6 @@
"examine": "A blessed sickle with an emerald recessed into it.",
"durability": null,
"name": "Silver sickle emerald(b)",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "13155",
@@ -120308,8 +113845,6 @@
"examine": "A blessed and enchanted silver sickle with an emerald recessed into it.",
"durability": null,
"name": "Enchanted sickle emerald(b)",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "1",
"archery_ticket_price": "0",
"id": "13156",
@@ -120319,8 +113854,6 @@
"examine": "A Vyrewatch corpse. Just a husk, really.",
"durability": null,
"name": "Vyre corpse",
- "low_alchemy": "1",
- "high_alchemy": "1",
"weight": "5",
"archery_ticket_price": "0",
"id": "13157"
@@ -120338,9 +113871,7 @@
"examine": "An ornate key: precise workmanship and an ethereal glow. (Legacy of Seergaze)",
"durability": null,
"name": "Ornate tomb key",
- "low_alchemy": "2",
"tradeable": "false",
- "high_alchemy": "3",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13159"
@@ -120380,40 +113911,34 @@
},
{
"examine": "A sapphire-topped cane.",
- "durability": null,
- "low_alchemy": "172",
- "high_alchemy": "258",
- "weight": "0.5",
- "attack_speed": "5",
- "weapon_interface": "10",
- "equipment_slot": "3",
"grand_exchange_price": "115390",
+ "durability": null,
"name": "Black cane",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
+ "attack_speed": "5",
+ "weapon_interface": "10",
"id": "13163",
- "bonuses": "0,-2,16,0,0,0,0,0,0,0,0,13,2,0,0"
+ "bonuses": "0,-2,16,0,0,0,0,0,0,0,0,13,2,0,0",
+ "equipment_slot": "3"
},
{
"examine": "A ruby-topped cane.",
- "durability": null,
- "low_alchemy": "576",
- "high_alchemy": "864",
- "weight": "0.5",
- "weapon_interface": "10",
- "equipment_slot": "3",
"grand_exchange_price": "18514",
+ "durability": null,
"name": "Adamant cane",
"tradeable": "true",
+ "weight": "0.5",
"archery_ticket_price": "0",
+ "weapon_interface": "10",
"id": "13164",
- "bonuses": "0,-2,25,0,0,0,0,0,0,0,0,23,3,0,0"
+ "bonuses": "0,-2,25,0,0,0,0,0,0,0,0,23,3,0,0",
+ "equipment_slot": "3"
},
{
"examine": "A diamond-topped cane.",
"durability": null,
- "low_alchemy": "5760",
- "high_alchemy": "8640",
"weight": "0.5",
"attack_speed": "5",
"weapon_interface": "10",
@@ -120433,8 +113958,6 @@
"durability": null,
"name": "Top hat",
"tradeable": "true",
- "low_alchemy": "80",
- "high_alchemy": "120",
"weight": "1",
"archery_ticket_price": "0",
"id": "13166",
@@ -120447,8 +113970,6 @@
"durability": null,
"name": "Pith helmet",
"tradeable": "true",
- "low_alchemy": "100",
- "high_alchemy": "150",
"weight": "0.5",
"archery_ticket_price": "0",
"id": "13167",
@@ -120457,62 +113978,54 @@
{
"remove_head": "true",
"examine": "Spikier than normal.",
- "durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
- "weight": "10",
- "equipment_slot": "0",
"grand_exchange_price": "39643",
+ "durability": null,
"name": "Spiked helmet",
"tradeable": "true",
+ "weight": "10",
"archery_ticket_price": "0",
"id": "13168",
- "bonuses": "0,0,0,-6,-2,9,10,7,-1,9,3,0,0,0,0"
+ "bonuses": "0,0,0,-6,-2,9,10,7,-1,9,3,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
- "examine": "Shear elegance.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "Shear elegance.",
"grand_exchange_price": "313558",
+ "durability": null,
"name": "Sheep mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13169"
+ "id": "13169",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
- "examine": "I can get the look right, but can I do the waddle too?",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "I can get the look right, but can I do the waddle too?",
"grand_exchange_price": "609515",
+ "durability": null,
"name": "Penguin mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13170"
+ "id": "13170",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
- "examine": "The bats have left the belltower.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "The bats have left the belltower.",
"grand_exchange_price": "371616",
+ "durability": null,
"name": "Bat mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13171"
+ "id": "13171",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
@@ -120522,34 +114035,28 @@
"durability": null,
"name": "Cat mask",
"tradeable": "true",
- "low_alchemy": "320",
- "high_alchemy": "480",
"archery_ticket_price": "0",
"id": "13172",
"equipment_slot": "0"
},
{
"remove_head": "true",
- "examine": "I'm hungry like the wolf.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "weight": "1",
- "equipment_slot": "0",
"lendable": "true",
+ "examine": "I'm hungry like the wolf.",
"grand_exchange_price": "1303443",
+ "durability": null,
"name": "Wolf mask",
"tradeable": "true",
+ "weight": "1",
"archery_ticket_price": "0",
- "id": "13173"
+ "id": "13173",
+ "equipment_slot": "0"
},
{
"shop_price": "100",
"examine": "Not for slackers",
"durability": null,
"name": "Blue navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13174",
"equipment_slot": "7"
@@ -120559,8 +114066,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Green navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13175",
"equipment_slot": "7"
@@ -120570,8 +114075,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Red navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13176",
"equipment_slot": "7"
@@ -120581,8 +114084,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Brown navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13177",
"equipment_slot": "7"
@@ -120592,8 +114093,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Black navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13178",
"equipment_slot": "7"
@@ -120603,8 +114102,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Purple navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13179",
"equipment_slot": "7"
@@ -120614,8 +114111,6 @@
"examine": "Not for slackers",
"durability": null,
"name": "Grey navy slacks",
- "low_alchemy": "40",
- "high_alchemy": "60",
"archery_ticket_price": "0",
"id": "13180",
"equipment_slot": "7"
@@ -120626,9 +114121,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Blue naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13181",
@@ -120640,9 +114133,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Green naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13182",
@@ -120654,9 +114145,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Red naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13183",
@@ -120668,9 +114157,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Brown naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13184",
@@ -120682,9 +114169,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Black naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13185",
@@ -120696,9 +114181,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Purple naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13186",
@@ -120710,9 +114193,7 @@
"examine": "...You can sail the seven seas...",
"durability": null,
"name": "Grey naval shirt",
- "low_alchemy": "40",
"tradeable": "false",
- "high_alchemy": "60",
"destroy": "true",
"archery_ticket_price": "0",
"id": "13187",
@@ -120724,8 +114205,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Blue tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13188",
"equipment_slot": "0"
@@ -120736,8 +114215,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Green tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13189",
"equipment_slot": "0"
@@ -120748,8 +114225,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Red tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13190",
"equipment_slot": "0"
@@ -120760,8 +114235,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Brown tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13191",
"equipment_slot": "0"
@@ -120772,8 +114245,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Black tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13192",
"equipment_slot": "0"
@@ -120784,8 +114255,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Purple tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13193",
"equipment_slot": "0"
@@ -120796,8 +114265,6 @@
"examine": "I could never look square in this.",
"durability": null,
"name": "Grey tricorn hat",
- "low_alchemy": "20",
- "high_alchemy": "30",
"archery_ticket_price": "0",
"id": "13194",
"equipment_slot": "0"
@@ -120870,8 +114337,6 @@
"durability": null,
"name": "Chisel",
"tradeable": "true",
- "low_alchemy": "5",
- "high_alchemy": "8",
"weight": "0.4",
"archery_ticket_price": "0",
"id": "13239"
@@ -121003,8 +114468,6 @@
"shop_price": "650",
"examine": "You don't want to wear it inside-out.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -121034,8 +114497,6 @@
"shop_price": "400",
"examine": "More of that crazy Slayer headgear.",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -121052,8 +114513,6 @@
"shop_price": "50",
"examine": "For use against turoth and kurasks.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -121069,8 +114528,6 @@
"shop_price": "50",
"examine": "For use against turoth and kurasks.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -121086,8 +114543,6 @@
"shop_price": "50",
"examine": "For use against turoth and kurasks.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -121104,144 +114559,119 @@
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(8)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13281",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(7)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13282",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(6)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13283",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(5)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13284",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(4)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13285",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(3)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13286",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(2)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13287",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"shop_price": "150",
"examine": "An enchanted ring.",
"durability": null,
- "low_alchemy": "60",
- "high_alchemy": "90",
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "12",
- "destroy_message": "",
"name": "Ring of slaying(1)",
"tradeable": "false",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13288",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "12"
},
{
"turn90cw_anim": "1207",
"examine": "A razor-sharp sword.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "27200",
"turn90ccw_anim": "1208",
"attack_speed": "4",
"turn180_anim": "1206",
@@ -121249,7 +114679,6 @@
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "381,381,390,381",
- "destroy_message": "",
"grand_exchange_price": "43082",
"stand_anim": "813",
"tradeable": "true",
@@ -121258,28 +114687,25 @@
"id": "13290",
"stand_turn_anim": "823",
"bonuses": "67,62,0,0,0,0,0,0,0,0,0,50,0,0,0",
- "requirements": "{0,55}-{18,50}",
+ "requirements": "{0,50}-{18,55}",
"shop_price": "68000",
"durability": null,
- "high_alchemy": "40800",
"destroy": "false",
"weapon_interface": "5",
+ "equip_audio": "2248",
"attack_audios": "2517,2517,2500,2517",
"name": "Leaf-bladed sword"
},
{
"shop_price": "68000",
"examine": "A razor-sharp sword.",
- "durability": null,
- "low_alchemy": "27200",
- "high_alchemy": "40800",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "",
"grand_exchange_price": "43082",
+ "durability": null,
"name": "Leaf-bladed sword",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13291"
},
{
@@ -121656,7 +115082,6 @@
},
{
"destroy_message": "If you drop this accordion, it will be destroyed and you will have to get another.",
- "examine": "",
"durability": null,
"name": "Accordion",
"tradeable": "false",
@@ -121669,7 +115094,6 @@
},
{
"destroy_message": "If you drop this accordion, it will be destroyed and you will have to get another.",
- "examine": "",
"durability": null,
"name": "Accordion",
"tradeable": "false",
@@ -121682,7 +115106,6 @@
},
{
"destroy_message": "If you drop this accordion, it will be destroyed and you will have to get another.",
- "examine": "",
"durability": null,
"name": "Accordion",
"tradeable": "false",
@@ -121825,7 +115248,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
"name": "Ex-ex-parrot",
"archery_ticket_price": "0",
@@ -121835,7 +115257,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
"name": "Ex-ex-parrot",
"archery_ticket_price": "0",
@@ -121848,299 +115269,236 @@
"shop_price": "50",
"examine": "A pirate impling in a jar.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "If you drop this it will disappear. Are you sure you want to do this?",
"grand_exchange_price": "7346",
"name": "Pirate impling jar",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13337",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "shop_price": "50",
- "examine": "A pirate impling in a jar.",
- "durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "destroy": "true",
- "attack_speed": "4",
"destroy_message": "If you drop this it will disappear. Are you sure you want to do this?",
+ "shop_price": "50",
"grand_exchange_price": "7346",
+ "durability": null,
"name": "Pirate impling jar",
- "tradeable": "false",
+ "tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13338"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A white bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13339",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A white bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13340",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A red bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13341",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A red bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13342",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A blue bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13343",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A blue bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13344",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A brown bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13345",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A brown bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13346",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A grey bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13347",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A grey bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13348",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A purple bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13349",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A purple bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13350",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A orange bandana and a patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13351",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for both eyes.",
+ "examine": "A orange bandana and a patch for both eyes.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13352",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"shop_price": "100",
"examine": "It's dark, and I'm wearing two patches. Hit it!",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Double eyepatches",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13353",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -122150,8 +115508,6 @@
"shop_price": "100",
"examine": "Two patches and a hat.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -122167,8 +115523,6 @@
"shop_price": "100",
"examine": "A patch for the left eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -122182,18 +115536,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A patch for the left eye.",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "23485",
+ "durability": null,
"name": "Left eyepatch",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13356"
},
{
@@ -122201,8 +115553,6 @@
"shop_price": "100",
"examine": "A hat and a patch.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -122216,213 +115566,157 @@
},
{
"shop_price": "300",
- "examine": "",
+ "ge_buy_limit": "100",
+ "examine": "A seaworthy grey shirt.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
- "attack_speed": "4",
+ "weight": "1",
"absorb": "0,0,0",
"equipment_slot": "4",
- "destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Stripy pirate shirt",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13358",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "Drop",
"shop_price": "300",
- "examine": "",
"durability": null,
"name": "Stripy pirate shirt",
- "tradeable": "false",
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
+ "tradeable": "true",
"archery_ticket_price": "0",
- "attack_speed": "4",
"id": "13359"
},
{
"shop_price": "300",
- "examine": "",
+ "ge_buy_limit": "100",
+ "examine": "A seaworthy purple shirt.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
- "attack_speed": "4",
+ "weight": "1",
"absorb": "0,0,0",
"equipment_slot": "4",
- "destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Stripy pirate shirt",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13360",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "Drop",
"shop_price": "300",
- "examine": "",
"durability": null,
"name": "Stripy pirate shirt",
- "tradeable": "false",
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
+ "tradeable": "true",
"archery_ticket_price": "0",
- "attack_speed": "4",
"id": "13361"
},
{
"shop_price": "300",
- "examine": "",
+ "ge_buy_limit": "100",
+ "examine": "A seaworthy orange shirt.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
- "attack_speed": "4",
+ "weight": "1",
"absorb": "0,0,0",
"equipment_slot": "4",
- "destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Stripy pirate shirt",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13362",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "Drop",
"shop_price": "300",
- "examine": "",
"durability": null,
"name": "Stripy pirate shirt",
- "tradeable": "false",
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
+ "tradeable": "true",
"archery_ticket_price": "0",
- "attack_speed": "4",
"id": "13363"
},
{
"shop_price": "350",
- "examine": "",
+ "ge_buy_limit": "100",
+ "examine": "A seaworthy pair of grey trousers.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "destroy": "true",
- "attack_speed": "4",
+ "weight": "1",
"absorb": "0,0,0",
"equipment_slot": "7",
- "destroy_message": "Drop",
"grand_exchange_price": "1",
"name": "Pirate leggings",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13364",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"shop_price": "350",
- "examine": "",
- "durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Pirate leggings",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13365"
},
{
"shop_price": "350",
- "examine": "",
+ "ge_buy_limit": "100",
+ "examine": "A seaworthy pair of purple trousers.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "destroy": "true",
- "attack_speed": "4",
+ "weight": "1",
"absorb": "0,0,0",
"equipment_slot": "7",
- "destroy_message": "Drop",
"grand_exchange_price": "1",
"name": "Pirate leggings",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13366",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"shop_price": "350",
- "examine": "",
- "durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Pirate leggings",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13367"
},
{
"shop_price": "350",
- "examine": "",
+ "ge_buy_limit": "100",
+ "examine": "A seaworthy pair of orange trousers.",
"durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "destroy": "true",
- "attack_speed": "4",
+ "weight": "1",
"absorb": "0,0,0",
"equipment_slot": "7",
- "destroy_message": "Drop",
"grand_exchange_price": "1",
"name": "Pirate leggings",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13368",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"shop_price": "350",
- "examine": "",
- "durability": null,
- "low_alchemy": "140",
- "high_alchemy": "210",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Pirate leggings",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13369"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "Essential pirate wear.",
+ "examine": "A grey bandana.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Bandana",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13370",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -122430,12 +115724,9 @@
{
"destroy_message": "Drop",
"shop_price": "100",
- "examine": "Essential pirate wear.",
"durability": null,
"name": "Bandana",
- "tradeable": "false",
- "low_alchemy": "40",
- "high_alchemy": "60",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -122444,17 +115735,15 @@
{
"remove_head": "true",
"shop_price": "100",
- "examine": "Essential pirate wear.",
+ "examine": "A purple bandana.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Bandana",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13372",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -122462,12 +115751,9 @@
{
"destroy_message": "Drop",
"shop_price": "100",
- "examine": "Essential pirate wear.",
"durability": null,
"name": "Bandana",
- "tradeable": "false",
- "low_alchemy": "40",
- "high_alchemy": "60",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -122476,17 +115762,15 @@
{
"remove_head": "true",
"shop_price": "100",
- "examine": "Essential pirate wear.",
+ "examine": "An orange bandana.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Bandana",
- "tradeable": "false",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13374",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -122494,12 +115778,9 @@
{
"destroy_message": "Drop",
"shop_price": "100",
- "examine": "Essential pirate wear.",
"durability": null,
"name": "Bandana",
- "tradeable": "false",
- "low_alchemy": "40",
- "high_alchemy": "60",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -122508,56 +115789,44 @@
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A purple bandana and a patch for the right eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13376",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A orange bandana and a patch for the right eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13377",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "100",
- "examine": "A (colour) bandana and a patch for the right eye.",
+ "examine": "A grey bandana and a patch for the right eye.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Bandana and eyepatch",
- "tradeable": "false",
+ "tradeable": "true",
+ "weight": "0.1",
"archery_ticket_price": "0",
"id": "13378",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"destroy_message": "Destroy",
@@ -122651,18 +115920,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "Wall beast fingers in a white fern sauce.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Fingers",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13386",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -122877,27 +116144,23 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "300",
"examine": "A replica tinderbox made of solid gold.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Golden tinderbox",
"tradeable": "false",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13403",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"examine": "A bow from a darker dimension.",
"has_special": "true",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "9",
"two_handed": "true",
@@ -122915,10 +116178,7 @@
"bonuses": "0,0,0,0,95,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "1",
@@ -122933,384 +116193,332 @@
"bonuses": "10,-1,40,15,0,2,3,1,15,0,5,50,0,-1,10"
},
{
- "examine": "This helmet is worn by archers.",
- "durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,3,1",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "This helmet is worn by archers.",
"grand_exchange_price": "46334",
+ "durability": null,
"name": "Archer helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13407",
+ "absorb": "0,3,1",
"bonuses": "-5,-5,-5,-5,6,6,8,10,6,6,0,0,0,0,0"
},
{
- "examine": "This helmet is worn by berserkers.",
- "durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "This helmet is worn by berserkers.",
"grand_exchange_price": "45978",
+ "durability": null,
"name": "Berserker helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13408",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-5,-5,31,29,33,0,30,7,3,0,0,0"
},
{
- "examine": "This helm is worn by warriors.",
- "durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "This helm is worn by warriors.",
"grand_exchange_price": "45664",
+ "durability": null,
"name": "Warrior helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13409",
+ "absorb": "1,0,3",
"bonuses": "0,5,0,-5,-5,31,33,29,0,30,7,0,0,0,0"
},
{
- "examine": "This helm is worn by farseers.",
- "durability": null,
- "low_alchemy": "31200",
- "high_alchemy": "46800",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "This helm is worn by farseers.",
"grand_exchange_price": "45989",
+ "durability": null,
"name": "Farseer helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13410",
+ "absorb": "3,1,0",
"bonuses": "-5,-5,-5,6,-5,8,10,12,6,0,7,0,0,0,0"
},
{
- "examine": "Protective headwear made from crabs. Better than it sounds.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
- "lendable": "true",
"destroy_message": "Drop",
+ "examine": "Protective headwear made from crabs. Better than it sounds.",
"grand_exchange_price": "20378",
+ "durability": null,
"name": "Rock-shell helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13411",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,6,0,0,0,0"
},
{
- "examine": "A sturdy body armour made from rock crab pieces.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
- "lendable": "true",
"destroy_message": "Drop",
+ "examine": "A sturdy body armour made from rock crab pieces.",
"grand_exchange_price": "41788",
+ "durability": null,
"name": "Rock-shell plate",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13412",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,30,0,0,0,0"
},
{
- "examine": "Some tough leggings made from rock crab parts.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
- "lendable": "true",
"destroy_message": "Drop",
+ "examine": "Some tough leggings made from rock crab parts.",
"grand_exchange_price": "37139",
+ "durability": null,
"name": "Rock-shell legs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13413",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,10,0,0,0,0"
},
{
- "examine": "A helm fit for any Fremennik ranger.",
- "durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,3,1",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A helm fit for any Fremennik ranger.",
"grand_exchange_price": "37724",
+ "durability": null,
"name": "Spined helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13414",
+ "absorb": "0,3,1",
"bonuses": "0,-6,-6,-6,6,6,6,6,6,0,6,0,0,0,0"
},
{
- "examine": "A constant reminder that I'm above a Dagannoth in the food chain.",
- "durability": null,
- "low_alchemy": "3000",
- "high_alchemy": "4500",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,6,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A constant reminder that I'm above a Dagannoth in the food chain.",
"grand_exchange_price": "5773",
+ "durability": null,
"name": "Spined body",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13415",
+ "absorb": "0,6,3",
"bonuses": "0,0,0,-15,15,40,32,45,20,40,30,0,0,0,0"
},
{
- "examine": "Stylish leg armour for rangers with a lingering smell of raw fish...",
- "durability": null,
- "low_alchemy": "1560",
- "high_alchemy": "2340",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,4,2",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Stylish leg armour for rangers with a lingering smell of raw fish...",
"grand_exchange_price": "2696",
+ "durability": null,
"name": "Spined chaps",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13416",
+ "absorb": "0,4,2",
"bonuses": "0,0,0,-10,8,22,16,24,8,22,10,0,0,0,0"
},
{
- "examine": "Make your foes cower by wearing a skull as a helmet!",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Make your foes cower by wearing a skull as a helmet!",
"grand_exchange_price": "39060",
+ "durability": null,
"name": "Skeletal helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13417",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,2,-2,10,9,11,3,0,6,0,0,0,0"
},
{
- "examine": "The bones in this armour seems to vibrate with a magic quality...",
- "durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "6,3,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The bones in this armour seems to vibrate with a magic quality...",
"grand_exchange_price": "26289",
+ "durability": null,
"name": "Skeletal top",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13418",
+ "absorb": "6,3,0",
"bonuses": "0,0,0,8,-10,35,25,42,15,0,30,0,0,0,0"
},
{
- "examine": "A superior set of strengthened slacks for any self respecting seer.",
- "durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A superior set of strengthened slacks for any self respecting seer.",
"grand_exchange_price": "24591",
+ "durability": null,
"name": "Skeletal bottoms",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13419",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,6,-7,22,20,24,10,0,10,0,0,0,0"
},
{
- "examine": "Some finely crafted Fremennik boots, made from spined dagannoth hide.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Some finely crafted Fremennik boots, made from spined dagannoth hide.",
"grand_exchange_price": "158181",
+ "durability": null,
"name": "Spined boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13420",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,1,1,0,0,0,1,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "Some Fremennik boots, made from the shards of a rock crab's shell.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "1358",
+ "durability": null,
"name": "Rock-shell boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13421",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,1,1,0,0,1,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Some finely crafted Fremennik boots, made from the bones of a Wallasalki.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "7788",
+ "durability": null,
"name": "Skeletal boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13422",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,1,1,0,0,1,0,0,0,0"
},
{
- "examine": "Fremennik gloves stitched together from spined dagannoth hide.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Fremennik gloves stitched together from spined dagannoth hide.",
"grand_exchange_price": "3027",
+ "durability": null,
"name": "Spined gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13423",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,1,2,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "Fremennik gloves stitched together from rock crab shell shards.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "12839",
+ "durability": null,
"name": "Rock-shell gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13424",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Fremennik gloves stitched together from wallasalki bones fragments.",
- "durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "25838",
+ "durability": null,
"name": "Skeletal gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13425",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,1,2,0,0,0,0,0,0,0"
},
{
- "examine": "A mysterious ring that can fill the wearer with magical power...",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A mysterious ring that can fill the wearer with magical power...",
"grand_exchange_price": "799703",
+ "durability": null,
"name": "Seers ring",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13426",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,0,0,0"
},
{
- "examine": "A fabled ring that improves the wearer's skill with a bow...",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A fabled ring that improves the wearer's skill with a bow...",
"grand_exchange_price": "483521",
+ "durability": null,
"name": "Archers ring",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13427",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,4,0,0,0,0,4,0,0,0,0,0"
},
{
- "examine": "A legendary ring once worn by Fremennik warriors.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A legendary ring once worn by Fremennik warriors.",
"grand_exchange_price": "361302",
+ "durability": null,
"name": "Warrior ring",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13428",
+ "absorb": "0,0,0",
"bonuses": "0,4,0,0,0,0,4,0,0,0,0,0,0,0,0"
},
{
- "examine": "A ring reputed to bring out a berserk fury in its wearer.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A ring reputed to bring out a berserk fury in its wearer.",
"grand_exchange_price": "963418",
+ "durability": null,
"name": "Berserker ring",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13429",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,4,0,0,0,4,0,0,0"
},
{
"examine": "A two-handed dragon sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "88000",
- "high_alchemy": "132000",
"destroy": "true",
"attack_speed": "7",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"destroy_message": "Drop",
@@ -123324,8 +116532,6 @@
"shop_price": "20",
"examine": "Useful for catching crayfish.",
"durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
"destroy": "false",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -123338,26 +116544,22 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "20",
"examine": "Swap this note at any bank for the equivalent item.",
- "durability": null,
- "low_alchemy": "8",
- "high_alchemy": "12",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "25",
+ "durability": null,
"name": "Crayfish cage",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13432"
},
{
"shop_price": "5",
"examine": "Some cooked crayfish. Eat it to heal.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"destroy": "false",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -123370,26 +116572,22 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "5",
"examine": "Swap this note at any bank for the equivalent item.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "32",
+ "durability": null,
"name": "Crayfish",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13434"
},
{
"shop_price": "5",
"examine": "I should try cooking this. Used in Cooking (1).",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
"destroy": "false",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -123402,18 +116600,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "5",
"examine": "Swap this note at any bank for the equivalent item.",
- "durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "41",
+ "durability": null,
"name": "Raw crayfish",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13436"
},
{
@@ -123440,7 +116636,6 @@
"id": "13438"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -123453,7 +116648,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "This is a bag of runes for Sir Vant.",
"durability": null,
"name": "Bag of runes",
@@ -123466,47 +116660,42 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "A very powerful onyx amulet.",
- "durability": null,
- "low_alchemy": "80800",
- "high_alchemy": "121200",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A very powerful onyx amulet.",
"grand_exchange_price": "2285210",
+ "durability": null,
"name": "Amulet of fury",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13442",
+ "absorb": "0,0,0",
"bonuses": "10,10,10,10,10,15,15,15,15,15,15,8,0,5,0"
},
{
- "examine": "A cape woven of obsidian plates.",
- "durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A cape woven of obsidian plates.",
"grand_exchange_price": "56575",
+ "durability": null,
"name": "Obsidian cape",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13443",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,9,9,9,9,9,9,0,0,0,0"
},
{
"examine": "A weapon from the Abyss.",
"has_special": "true",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "11",
"absorb": "0,0,0",
+ "equip_audio": "2249",
"render_anim": "1578",
"lendable": "true",
"destroy_message": "Drop",
@@ -123520,8 +116709,6 @@
"examine": "Simplicity is the best weapon.",
"has_special": "true",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "7",
"two_handed": "true",
@@ -123537,7 +116724,6 @@
"bonuses": "0,0,81,0,0,0,0,0,0,0,0,79,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -123550,7 +116736,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -123563,7 +116748,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -123576,32 +116760,29 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Protects your head and looks impressive too.",
- "durability": null,
- "low_alchemy": "60000",
- "high_alchemy": "90000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Protects your head and looks impressive too.",
"grand_exchange_price": "5756658",
+ "durability": null,
"name": "Dragon full helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13449",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-6,-2,45,48,41,-1,46,12,0,0,0,0"
},
{
"examine": "A beautiful, heavy sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "500000",
- "high_alchemy": "750000",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1579",
"lendable": "true",
"destroy_message": "Drop",
@@ -123615,13 +116796,12 @@
"examine": "A brutally heavy sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "500000",
- "high_alchemy": "750000",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1579",
"lendable": "true",
"destroy_message": "Drop",
@@ -123635,13 +116815,12 @@
"examine": "A gracious, heavy sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "500000",
- "high_alchemy": "750000",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1579",
"lendable": "true",
"destroy_message": "Drop",
@@ -123655,13 +116834,12 @@
"examine": "A terrifying, heavy sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "500000",
- "high_alchemy": "750000",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1579",
"lendable": "true",
"destroy_message": "Drop",
@@ -123675,8 +116853,6 @@
"examine": "An evil spear.",
"has_special": "true",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
@@ -123694,11 +116870,10 @@
{
"examine": "A helmet of great craftmanship.",
"durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,5,2",
+ "equip_audio": "2240",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "3732060",
@@ -123710,11 +116885,10 @@
{
"examine": "A chestplate of great craftsmanship",
"durability": null,
- "low_alchemy": "24000",
- "high_alchemy": "36000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,10,5",
+ "equip_audio": "2239",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "9628666",
@@ -123726,11 +116900,10 @@
{
"examine": "A chainskirt of great craftsmanship.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,7,3",
+ "equip_audio": "2242",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "9754868",
@@ -123740,45 +116913,40 @@
"bonuses": "-6,-6,-6,-10,20,32,26,34,40,33,25,0,0,1,0"
},
{
- "examine": "A sturdy chestplate.",
- "durability": null,
- "low_alchemy": "106000",
- "high_alchemy": "159000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,0,9",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A sturdy chestplate.",
"grand_exchange_price": "6460055",
+ "durability": null,
"name": "Bandos chestplate",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13458",
+ "absorb": "4,0,9",
"bonuses": "0,0,0,-15,-10,98,93,105,-6,133,52,4,0,1,0"
},
{
- "examine": "A sturdy pair of tassets.",
- "durability": null,
- "low_alchemy": "109000",
- "high_alchemy": "163500",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A sturdy pair of tassets.",
"grand_exchange_price": "4228256",
+ "durability": null,
"name": "Bandos tassets",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13459",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-21,-7,71,63,66,-4,93,25,2,0,1,0"
},
{
"examine": "Some sturdy boots.",
"durability": null,
- "low_alchemy": "10000",
- "high_alchemy": "15000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2237",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "1259091",
@@ -123791,13 +116959,12 @@
"examine": "The incredible blade of an Icyene.",
"has_special": "true",
"durability": null,
- "low_alchemy": "52000",
- "high_alchemy": "78000",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1579",
"lendable": "true",
"destroy_message": "Drop",
@@ -123810,11 +116977,10 @@
{
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2237",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "17336",
@@ -123824,7 +116990,6 @@
"bonuses": "0,0,0,-3,-1,16,17,18,0,0,15,4,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -123837,8 +117002,8 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "You can get another of these from Doric.",
- "examine": "Doric's instructions for the task he gave you.",
+ "destroy_message": "You can get another by talking about jobs with citizens and tutors around Lumbridge.",
+ "examine": "This reminds me of my current job and who set me to the task.",
"durability": null,
"name": "Task list",
"tradeable": "false",
@@ -123853,12 +117018,11 @@
"examine": "A powerful dagger.",
"has_special": "true",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "5",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"defence_anim": "397",
"attack_anims": "396,396,395,396",
"lendable": "true",
@@ -123878,6 +117042,7 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"defence_anim": "397",
"attack_anims": "396,396,395,396",
"destroy_message": "Drop",
@@ -123895,6 +117060,7 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"defence_anim": "397",
"attack_anims": "396,396,395,396",
"destroy_message": "Drop",
@@ -123912,6 +117078,7 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"defence_anim": "397",
"attack_anims": "396,396,395,396",
"destroy_message": "Drop",
@@ -123924,12 +117091,11 @@
{
"examine": "A powerful axe.",
"durability": null,
- "low_alchemy": "5120",
- "high_alchemy": "7680",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "2",
"absorb": "0,0,0",
+ "equip_audio": "2229",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "7263",
@@ -123942,12 +117108,11 @@
"examine": "A very powerful axe.",
"has_special": "true",
"durability": null,
- "low_alchemy": "22000",
- "high_alchemy": "33000",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "2",
"absorb": "0,0,0",
+ "equip_audio": "2229",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "3794577",
@@ -123959,8 +117124,6 @@
{
"examine": "A vicious looking axe.",
"durability": null,
- "low_alchemy": "16640",
- "high_alchemy": "24960",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "2",
@@ -123978,8 +117141,6 @@
"examine": "A vicious looking axe.",
"has_special": "true",
"durability": null,
- "low_alchemy": "80000",
- "high_alchemy": "120000",
"destroy": "true",
"weight": "2.7",
"attack_speed": "6",
@@ -123987,10 +117148,11 @@
"absorb": "0,0,0",
"render_anim": "2586",
"defence_anim": "397",
- "attack_anims": "395,395,395,395",
+ "attack_anims": "395,395,401,395",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "123019",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Dragon battleaxe",
"archery_ticket_price": "0",
"id": "13472",
@@ -123999,12 +117161,11 @@
{
"examine": "I don't think it's intended for joinery.",
"durability": null,
- "low_alchemy": "16600",
- "high_alchemy": "24900",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "10",
"absorb": "0,0,0",
+ "equip_audio": "2233",
"render_anim": "1430",
"lendable": "true",
"destroy_message": "Drop",
@@ -124017,8 +117178,6 @@
{
"examine": "A razor-sharp longsword",
"durability": null,
- "low_alchemy": "12800",
- "high_alchemy": "19200",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "5",
@@ -124036,8 +117195,6 @@
"examine": "A very powerful sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "5",
@@ -124054,8 +117211,6 @@
{
"examine": "A vicious, curved sword.",
"durability": null,
- "low_alchemy": "10240",
- "high_alchemy": "15360",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "6",
@@ -124073,12 +117228,11 @@
"examine": "A vicious, curved sword.",
"has_special": "true",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "6",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1928",
"attack_anims": "390,390,381,390",
"lendable": "true",
@@ -124093,13 +117247,12 @@
"examine": "A dragon halberd.",
"has_special": "true",
"durability": null,
- "low_alchemy": "130000",
- "high_alchemy": "195000",
"destroy": "true",
"attack_speed": "7",
"two_handed": "true",
"weapon_interface": "15",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"destroy_message": "Drop",
@@ -124114,18 +117267,18 @@
"examine": "A spiky mace.",
"has_special": "true",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
"absorb": "0,0,0",
+ "equip_audio": "2246",
"defence_anim": "397",
"attack_anims": "390,390,381,390",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "28817",
+ "attack_audios": "2508,2508,25092508",
"name": "Dragon mace",
"archery_ticket_price": "0",
"id": "13479",
@@ -124134,12 +117287,11 @@
{
"examine": "Used for mining.",
"durability": null,
- "low_alchemy": "12800",
- "high_alchemy": "19200",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "4",
"absorb": "0,0,0",
+ "equip_audio": "2232",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "18546",
@@ -124149,45 +117301,40 @@
"bonuses": "26,-2,24,0,0,0,1,0,0,0,0,29,0,0,0"
},
{
- "examine": "A series of connected metal rings.",
- "durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,0,9",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A series of connected metal rings.",
"grand_exchange_price": "2280904",
+ "durability": null,
"name": "Dragon chainbody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13481",
+ "absorb": "4,0,9",
"bonuses": "0,0,0,-15,0,81,93,98,-3,82,50,0,0,0,0"
},
{
- "examine": "Provides excellent protection.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Provides excellent protection.",
"grand_exchange_price": "38062",
+ "durability": null,
"name": "Rune platebody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13482",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "3120",
- "high_alchemy": "4680",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "4373",
@@ -124199,11 +117346,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "3744",
- "high_alchemy": "5616",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "5266",
@@ -124215,11 +117361,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "4492",
- "high_alchemy": "6738",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "6276",
@@ -124231,11 +117376,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "5392",
- "high_alchemy": "8088",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "7619",
@@ -124245,77 +117389,68 @@
"bonuses": "0,0,0,-15,30,55,47,60,50,55,55,0,0,0,0"
},
{
- "examine": "These look pretty heavy.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "These look pretty heavy.",
"grand_exchange_price": "37355",
+ "durability": null,
"name": "Rune platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13487",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "Looks pretty heavy.",
- "durability": null,
- "low_alchemy": "108000",
- "high_alchemy": "162000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Looks pretty heavy.",
"grand_exchange_price": "160755",
+ "durability": null,
"name": "Dragon platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13488",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-21,-7,68,66,63,-4,65,20,0,0,0,0"
},
{
- "examine": "Designer leg protection.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Designer leg protection.",
"grand_exchange_price": "37248",
+ "durability": null,
"name": "Rune plateskirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13489",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "This looks pretty heavy.",
- "durability": null,
- "low_alchemy": "108000",
- "high_alchemy": "162000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "This looks pretty heavy.",
"grand_exchange_price": "161006",
+ "durability": null,
"name": "Dragon plateskirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13490",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-21,-7,68,66,63,-4,65,20,0,0,0,0"
},
{
"examine": "100% real dragonhide.",
"durability": null,
- "low_alchemy": "1560",
- "high_alchemy": "2340",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,4,2",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "2037",
@@ -124327,11 +117462,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1728",
- "high_alchemy": "2592",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,5,2",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "2352",
@@ -124343,11 +117477,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "2072",
- "high_alchemy": "3108",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "2761",
@@ -124359,11 +117492,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "2488",
- "high_alchemy": "3732",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,7,3",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "3377",
@@ -124375,11 +117507,10 @@
{
"examine": "Makes the wearer pretty intimidating.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "4",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "59676",
@@ -124389,29 +117520,26 @@
"bonuses": "0,0,0,-3,-1,33,35,32,-1,34,10,0,0,0,0"
},
{
- "examine": "A full face helmet.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A full face helmet.",
"grand_exchange_price": "20388",
+ "durability": null,
"name": "Rune full helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13496",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "1208",
@@ -124423,11 +117551,10 @@
{
"examine": "Made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1200",
- "high_alchemy": "1800",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "1488",
@@ -124439,11 +117566,10 @@
{
"examine": "Vambraces made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1440",
- "high_alchemy": "2160",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "1714",
@@ -124455,11 +117581,10 @@
{
"examine": "Vambraces made from 100% real dragonhide.",
"durability": null,
- "low_alchemy": "1728",
- "high_alchemy": "2592",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "2208",
@@ -124469,77 +117594,68 @@
"bonuses": "0,0,0,-10,11,6,5,7,8,0,6,0,0,0,0"
},
{
- "examine": "A wooden helmet.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A wooden helmet.",
"grand_exchange_price": "5210",
+ "durability": null,
"name": "Splitbark helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13501",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,3,-2,10,9,11,3,0,7,0,0,0,0"
},
{
- "examine": "Provides good protection.",
- "durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "6,3,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Provides good protection.",
"grand_exchange_price": "27106",
+ "durability": null,
"name": "Splitbark body",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13502",
+ "absorb": "6,3,0",
"bonuses": "0,0,0,10,-10,36,26,42,15,0,40,0,0,0,0"
},
{
- "examine": "These should protect my legs.",
- "durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "These should protect my legs.",
"grand_exchange_price": "56050",
+ "durability": null,
"name": "Splitbark legs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13503",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,7,-7,22,20,25,10,0,15,0,0,0,0"
},
{
- "examine": "These should keep my hands safe.",
- "durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "These should keep my hands safe.",
"grand_exchange_price": "2442",
+ "durability": null,
"name": "Splitbark gauntlets",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13504",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,2,-1,3,2,4,2,0,3,0,0,0,0"
},
{
"examine": "Wooden foot protection.",
"durability": null,
- "low_alchemy": "2000",
- "high_alchemy": "3000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2237",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "6845",
@@ -124551,11 +117667,10 @@
{
"examine": "An ancient and powerful looking Dragon Square shield.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "5,0,11",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "328356",
@@ -124567,11 +117682,10 @@
{
"examine": "A large metal shield.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "31885",
@@ -124581,255 +117695,224 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
- "examine": "Blue: A magical hat. ",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Blue: A magical hat. ",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13508",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,0,0,0"
},
{
- "examine": "The upper half of a magical robe.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The upper half of a magical robe.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic robe top",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13509",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,20,0,0,0,0,20,0,20,0,0,0,0"
},
{
- "examine": "The lower half of a magical robe.",
- "durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The lower half of a magical robe.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic robe bottom",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13510",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,15,0,0,0,0,15,0,15,0,0,0,0"
},
{
- "examine": "Bright/Dark magical gloves.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Bright/Dark magical gloves.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13511",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
- "examine": "Magical boots.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Magical boots.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13512",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
- "examine": "Blue: A magical hat. ",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Blue: A magical hat. ",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13513",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,0,0,0"
},
{
- "examine": "The upper half of a magical robe.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The upper half of a magical robe.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic robe top",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13514",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,20,0,0,0,0,20,0,20,0,0,0,0"
},
{
- "examine": "The lower half of a magical robe.",
- "durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The lower half of a magical robe.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic robe bottom",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13515",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,15,0,0,0,0,15,0,15,0,0,0,0"
},
{
- "examine": "Bright/Dark magical gloves.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Bright/Dark magical gloves.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13516",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
- "examine": "Magical boots.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Magical boots.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13517",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
- "examine": "Blue: A magical hat. ",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Blue: A magical hat. ",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13518",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,4,0,0,0,0,4,0,4,0,0,0,0"
},
{
- "examine": "The upper half of a magical robe.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The upper half of a magical robe.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic robe top",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13519",
+ "absorb": "3,1,0",
"bonuses": "0,0,0,20,0,0,0,0,20,0,20,0,0,0,0"
},
{
- "examine": "The lower half of a magical robe.",
- "durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "The lower half of a magical robe.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic robe bottom",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13520",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,15,0,0,0,0,15,0,15,0,0,0,0"
},
{
- "examine": "Bright/Dark magical gloves.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Bright/Dark magical gloves.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13521",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,3,0,0,0,0,3,0,0,0,0,0,0"
},
{
- "examine": "Magical boots.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Magical boots.",
"grand_exchange_price": "1",
+ "durability": null,
"name": "Mystic boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13522",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,3,0,0,0,0,3,0,3,0,0,0,0"
},
{
"examine": "A nice sturdy bow made out of maple.",
"durability": null,
- "low_alchemy": "256",
- "high_alchemy": "384",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "193",
@@ -124841,13 +117924,12 @@
{
"examine": "A shortbow made out of maple, still effective.",
"durability": null,
- "low_alchemy": "160",
- "high_alchemy": "240",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "111",
@@ -124859,13 +117941,12 @@
{
"examine": "A nice sturdy bow made out of yew.",
"durability": null,
- "low_alchemy": "512",
- "high_alchemy": "768",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "486",
@@ -124877,13 +117958,12 @@
{
"examine": "A shortbow made out of yew, still effective.",
"durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "253",
@@ -124896,13 +117976,12 @@
"examine": "A nice sturdy magical bow.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1024",
- "high_alchemy": "1536",
"destroy": "true",
"attack_speed": "6",
"two_handed": "true",
"weapon_interface": "16",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "1211",
@@ -124915,13 +117994,12 @@
"examine": "Short and magical, but still effective.",
"has_special": "true",
"durability": null,
- "low_alchemy": "640",
- "high_alchemy": "960",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
"weapon_interface": "16",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "655",
@@ -124934,8 +118012,6 @@
"examine": "An ancient Fremennik bow that was once used to battle the Moon Clan.",
"has_special": "true",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
@@ -124952,12 +118028,11 @@
{
"examine": "A runite crossbow.",
"durability": null,
- "low_alchemy": "6480",
- "high_alchemy": "9720",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "17",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "175",
"lendable": "true",
"destroy_message": "Drop",
@@ -125052,74 +118127,64 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "It's a Santa hat.",
- "durability": null,
- "low_alchemy": "64",
- "high_alchemy": "96",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "130433327",
+ "durability": null,
"name": "Santa hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13537",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Aaaarrrghhh ... I'm a monster.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Aaaarrrghhh ... I'm a monster.",
"grand_exchange_price": "104671288",
+ "durability": null,
"name": "Green h'ween mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13538",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Aaaarrrghhh ... I'm a monster.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Aaaarrrghhh ... I'm a monster.",
"grand_exchange_price": "127720943",
+ "durability": null,
"name": "Blue h'ween mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13539",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Aaaarrrghhh ... I'm a monster.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Aaaarrrghhh ... I'm a monster.",
"grand_exchange_price": "171640098",
+ "durability": null,
"name": "Red h'ween mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13540",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"examine": "A powerful bow made from willow.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
@@ -125137,8 +118202,6 @@
{
"examine": "A powerful bow made from yew wood.",
"durability": null,
- "low_alchemy": "720",
- "high_alchemy": "1080",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
@@ -125157,8 +118220,6 @@
"examine": "A powerful bow made from magic wood.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1000",
- "high_alchemy": "1500",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
@@ -125174,61 +118235,54 @@
"bonuses": "0,0,0,0,71,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Ancient range protection crafted from white dragonhide.",
- "durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,6,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient range protection crafted from white dragonhide.",
"grand_exchange_price": "74503559",
+ "durability": null,
"name": "3rd age range top",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13544",
+ "absorb": "0,6,3",
"bonuses": "0,0,0,-15,30,55,47,60,60,55,52,0,0,0,0"
},
{
- "examine": "Fabulously ancient range protection crafted from white dragonhide.",
- "durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,4,2",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Fabulously ancient range protection crafted from white dragonhide.",
"grand_exchange_price": "47837515",
+ "durability": null,
"name": "3rd age range legs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13545",
+ "absorb": "0,4,2",
"bonuses": "0,0,0,-10,17,31,25,33,30,31,25,0,0,0,0"
},
{
- "examine": "Ancient range protection crafted from white dragonhide.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,3,1",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient range protection crafted from white dragonhide.",
"grand_exchange_price": "9746895",
+ "durability": null,
"name": "3rd age range coif",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13546",
+ "absorb": "0,3,1",
"bonuses": "0,0,0,-2,9,4,7,10,5,8,12,0,0,0,0"
},
{
"examine": "Fabulously ancient range protection crafted from white dragonhide.",
"durability": null,
- "low_alchemy": "86000",
- "high_alchemy": "129000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2241",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "6826420",
@@ -125238,125 +118292,110 @@
"bonuses": "0,0,0,-11,11,6,5,7,9,0,5,0,0,0,0"
},
{
- "examine": "Ancient mage protection enchanted in the Third-Age.",
- "durability": null,
- "low_alchemy": "18000",
- "high_alchemy": "27000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient mage protection enchanted in the Third-Age.",
"grand_exchange_price": "138719269",
+ "durability": null,
"name": "3rd age robe top",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13548",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,24,0,0,0,0,24,0,24,0,0,0,0"
},
{
- "examine": "Ancient mage protection enchanted in the Third-Age.",
- "durability": null,
- "low_alchemy": "16000",
- "high_alchemy": "24000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,2,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient mage protection enchanted in the Third-Age.",
"grand_exchange_price": "89961678",
+ "durability": null,
"name": "3rd age robe",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13549",
+ "absorb": "4,2,0",
"bonuses": "0,0,0,19,0,0,0,0,19,0,20,0,0,0,0"
},
{
- "examine": "Ancient mage protection enchanted in the Third-Age.",
- "durability": null,
- "low_alchemy": "4000",
- "high_alchemy": "6000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,1,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient mage protection enchanted in the Third-Age.",
"grand_exchange_price": "14976830",
+ "durability": null,
"name": "3rd age mage hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13550",
+ "absorb": "2,1,0",
"bonuses": "0,0,0,8,0,0,0,0,8,0,12,0,0,0,0"
},
{
- "examine": "Ancient mage protection enchanted in the Third-Age.",
- "durability": null,
- "low_alchemy": "8000",
- "high_alchemy": "12000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient mage protection enchanted in the Third-Age.",
"grand_exchange_price": "35019596",
+ "durability": null,
"name": "3rd age amulet",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13551",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,15,0,0,0,0,10,0,0,0,0,0,0"
},
{
- "examine": "Ancient armour beaten from magical silver.",
- "durability": null,
- "low_alchemy": "80000",
- "high_alchemy": "120000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient armour beaten from magical silver.",
"grand_exchange_price": "244180930",
+ "durability": null,
"name": "3rd age platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13552",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-25,-2,78,76,83,-5,75,25,0,0,0,0"
},
{
- "examine": "Ancient armour beaten from magical silver.",
- "durability": null,
- "low_alchemy": "80000",
- "high_alchemy": "120000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,0,9",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient armour beaten from magical silver.",
"grand_exchange_price": "266509014",
+ "durability": null,
"name": "3rd age platebody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13553",
+ "absorb": "4,0,9",
"bonuses": "0,0,0,-20,0,96,108,113,-4,97,52,0,0,0,0"
},
{
- "examine": "Ancient armour beaten from magical silver.",
- "durability": null,
- "low_alchemy": "36000",
- "high_alchemy": "54000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Ancient armour beaten from magical silver.",
"grand_exchange_price": "50697678",
+ "durability": null,
"name": "3rd age full helmet",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13554",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-5,-2,47,49,43,-3,48,12,0,0,0,0"
},
{
"examine": "Ancient armour beaten from magical silver.",
"durability": null,
- "low_alchemy": "72000",
- "high_alchemy": "108000",
"destroy": "true",
"attack_speed": "4",
"absorb": "5,0,11",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "91262203",
@@ -125366,51 +118405,45 @@
"bonuses": "0,0,0,-10,-4,63,65,61,-3,63,60,0,0,0,0"
},
{
- "examine": "Lightweight boots ideal for rangers.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Lightweight boots ideal for rangers.",
"grand_exchange_price": "6253527",
+ "durability": null,
"name": "Ranger boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13556",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,-10,8,2,3,4,2,0,10,0,0,0,0"
},
{
- "examine": "Slightly magical boots.",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Slightly magical boots.",
"grand_exchange_price": "388955",
+ "durability": null,
"name": "Wizard boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13557",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,4,0,0,0,0,4,0,0,0,0,0,0"
},
{
- "examine": "Endorsed by Robin Hood.",
- "durability": null,
- "low_alchemy": "180",
- "high_alchemy": "270",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Endorsed by Robin Hood.",
"grand_exchange_price": "1962571",
+ "durability": null,
"name": "Robin hood hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13558",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,-10,8,4,6,8,4,4,7,0,0,0,0"
},
{
@@ -125459,31 +118492,28 @@
"shop_price": "38",
"examine": "An occasionally edible mushroom.",
"durability": null,
- "low_alchemy": "15",
- "high_alchemy": "22",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "100",
"name": "Button mushroom",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "13563",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "38",
"examine": "An occasionally edible mushroom.",
- "durability": null,
- "low_alchemy": "15",
- "high_alchemy": "22",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "100",
+ "durability": null,
"name": "Button mushroom",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13564"
},
{
@@ -125513,6 +118543,7 @@
"examine": "Logs cut from a cursed magic tree.",
"durability": null,
"name": "Cursed magic logs",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -125544,48 +118575,42 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "Useful for mixing things.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"grand_exchange_price": "106",
+ "durability": null,
"name": "Bowl",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13570",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "It's a bucket of milk.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "7",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"grand_exchange_price": "177",
+ "durability": null,
"name": "Bucket of milk",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13571",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "A fresh herb.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"destroy_message": "Drop",
+ "examine": "A fresh herb.",
"grand_exchange_price": "595",
+ "durability": null,
"name": "Clean guam",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13572",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -125626,9 +118651,9 @@
},
{
"destroy_message": "Hopefully, the family has more papyrus and charcoal.",
- "examine": "Your best impression of a map of RuneScape.",
+ "examine": "Your best impression of a map of 2009Scape.",
"durability": null,
- "name": "Map of runescape",
+ "name": "Map of 2009Scape",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -125637,48 +118662,42 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "Used for making notes.",
- "durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"grand_exchange_price": "290",
+ "durability": null,
"name": "Papyrus",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13577",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"examine": "A lump of charcoal.",
- "durability": null,
- "low_alchemy": "18",
- "high_alchemy": "27",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"grand_exchange_price": "296",
+ "durability": null,
"name": "Charcoal",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13578",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "A slightly muddy spade. ",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"destroy_message": "Drop",
+ "examine": "A slightly muddy spade. ",
"grand_exchange_price": "130",
+ "durability": null,
"name": "Spade",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13579",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -125766,19 +118785,17 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "4",
"examine": "I can grind things for potions in this.",
- "durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"grand_exchange_price": "169",
+ "durability": null,
"name": "Pestle and mortar",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13587",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -125787,7 +118804,6 @@
"grand_exchange_price": "5",
"durability": null,
"name": "Ground guam",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -125796,22 +118812,20 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "2",
"examine": "It's an empty bucket. ",
- "durability": null,
- "high_alchemy": "1",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"grand_exchange_price": "39",
+ "durability": null,
"name": "Bucket",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13589",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "It seems to change temperature as I walk. (Making History)",
"durability": null,
"name": "Enchanted key",
@@ -125847,253 +118861,219 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Runecrafting guild teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13598",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Air altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13599",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Mind altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13600",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Water altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13601",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Earth altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13602",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Fire altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13603",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Body altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13604",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Cosmic altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13605",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Chaos altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13606",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Nature altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13607",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Law altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13608",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Death altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13609",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Blood altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13610",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A tablet containing a magic spell.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Astral altar teleport",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13611",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "20",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13612",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "20",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13613",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"shop_price": "75",
"examine": "Heavy duty wizard robes.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -126106,75 +119086,65 @@
"bonuses": "0,0,0,5,0,5,5,5,5,5,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13615",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13616",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "A heavy-duty wizard robe.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "Drop",
"name": "Runecrafter skirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13617",
- "bonuses": "0,0,0,4,0,4,4,4,4,4,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,4,0,4,4,4,4,4,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Essence can be rough on the hands",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Drop",
"name": "Runecrafter gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13618",
- "bonuses": "0,0,0,2,0,2,2,2,2,2,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,2,0,2,2,2,2,2,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"shop_price": "75",
"examine": "Heavy duty wizard robes.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -126187,75 +119157,65 @@
"bonuses": "0,0,0,5,0,5,5,5,5,5,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13620",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13621",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "A heavy-duty wizard robe.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "Drop",
"name": "Runecrafter skirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13622",
- "bonuses": "0,0,0,4,0,4,4,4,4,4,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,4,0,4,4,4,4,4,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Essence can be rough on the hands",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Drop",
"name": "Runecrafter gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13623",
- "bonuses": "0,0,0,2,0,2,2,2,2,2,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,2,0,2,2,2,2,2,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"shop_price": "75",
"examine": "Heavy duty wizard robes.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -126268,95 +119228,84 @@
"bonuses": "0,0,0,5,0,5,5,5,5,5,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13625",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13626",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "A heavy-duty wizard robe.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "Drop",
"name": "Runecrafter skirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13627",
- "bonuses": "0,0,0,4,0,4,4,4,4,4,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,4,0,4,4,4,4,4,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Essence can be rough on the hands",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Drop",
"name": "Runecrafter gloves",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13628",
- "bonuses": "0,0,0,2,0,2,2,2,2,2,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,2,0,2,2,2,2,2,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Drop",
"shop_price": "15",
"examine": "Staff with a holder for a talisman on top.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "5",
- "absorb": "0,0,0",
- "render_anim": "28",
- "destroy_message": "Drop",
"name": "Runecrafting staff",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "5",
"id": "13629",
- "bonuses": "0,-1,7,5,0,2,3,1,15,0,0,33,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,-1,7,5,0,2,3,1,15,0,0,33,0,0,0",
+ "render_anim": "28"
},
{
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126369,12 +119318,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126387,12 +119335,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126405,12 +119352,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126423,12 +119369,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126441,12 +119386,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126459,12 +119403,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126477,12 +119420,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126495,12 +119437,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "No",
@@ -126513,12 +119454,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126531,12 +119471,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126549,12 +119488,11 @@
"shop_price": "1500",
"examine": "A staff with a talisman on top.",
"durability": null,
- "low_alchemy": "600",
- "high_alchemy": "900",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -126571,6 +119509,7 @@
"attack_speed": "4",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "You will have to speak to Wizard Elriss to get another omni-talisman.",
@@ -126763,59 +119702,52 @@
"equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13656",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13657",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "Drop",
"shop_price": "75",
"examine": "Comes with goggles, for extra safety while Runecrafting.",
"durability": null,
- "low_alchemy": "30",
- "high_alchemy": "45",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "Drop",
"name": "Runecrafter hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13658",
- "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,3,0,3,3,3,3,3,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "requirements": "{11,62}",
"shop_price": "100",
"examine": "It burns, burns, burns...",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -126828,31 +119760,32 @@
"point_price": "50"
},
{
- "destroy_message": "To get another pair of Flame Gloves, you need to keep ten beacons alight simultaneously and then talk to King Roald.",
+ "requirements": "{11,79}",
"shop_price": "200",
"examine": "The hottest gloves in town.",
"durability": null,
- "name": "Flame gloves",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "13660",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "equipment_slot": "9"
+ "equipment_slot": "9",
+ "destroy_message": "To get another pair of Flame Gloves, you need to keep ten beacons alight simultaneously and then talk to King Roald.",
+ "name": "Flame gloves",
+ "archery_ticket_price": "0",
+ "id": "13660",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "requirements": "{11,92}",
"shop_price": "300",
"examine": "Danger: risk of fire.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "2",
"absorb": "0,0,0",
"render_anim": "1096",
"equipment_slot": "3",
+ "attack_anims": "395,395,401,395",
"destroy_message": "To get another Inferno Adze, you need to keep all fourteen beacons alight simultaneously and then talk to King Roald.",
"name": "Inferno adze",
"archery_ticket_price": "0",
@@ -126887,8 +119820,6 @@
"shop_price": "10",
"examine": "Let's give them a big hand!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "7",
@@ -126906,8 +119837,6 @@
"shop_price": "10",
"examine": "A clown hat!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -126922,8 +119851,6 @@
"shop_price": "10",
"examine": "Buttoning this up is tricky.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -126936,43 +119863,37 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "These are my funny pants.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "Clown leggings",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13669",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "For helping clowns stay upright.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "10",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "Clown shoes",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13670",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"shop_price": "10",
"examine": "For making a happy noise.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "8",
@@ -126986,27 +119907,23 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another one.",
"shop_price": "10",
"examine": "Very stylish.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "You will need to speak to the ringmaster to get another one.",
"name": "Ringmaster hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13672",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"shop_price": "10",
"examine": "Fits nicely.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127019,43 +119936,37 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another one.",
"shop_price": "10",
"examine": "Very stylish.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You will need to speak to the ringmaster to get another one.",
"name": "Ringmaster pants",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13674",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another one.",
"shop_price": "10",
"examine": "Shiny.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "10",
- "destroy_message": "You will need to speak to the ringmaster to get another one.",
"name": "Ringmaster boots",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13675",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"shop_price": "10",
"examine": "For shouting at people.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "8",
@@ -127072,8 +119983,6 @@
"shop_price": "10",
"examine": "Stretchy.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127086,44 +119995,38 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "Very tight fitting.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "Acrobat pants",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13678",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "These keep your feet off the floor.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "10",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "Acrobat shoes",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13679",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"remove_head": "true",
"shop_price": "10",
"examine": "Oh no, I'm bald! Just kidding.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127139,8 +120042,6 @@
"shop_price": "10",
"examine": "Stretchy.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127153,44 +120054,38 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "Very tight fitting.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "Acrobat pants",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13682",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "These keep your feet off the floor.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "10",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "Acrobat shoes",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13683",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "10"
},
{
"remove_head": "true",
"shop_price": "10",
"examine": "Oh no, I'm bald! Just kidding.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127202,60 +120097,52 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "Very dapper!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "A stylish hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13685",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "Very dapper!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "A stylish hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13686",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
+ "destroy_message": "You will need to speak to the ringmaster to get another.",
"shop_price": "10",
"examine": "Very dapper!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "0",
- "destroy_message": "You will need to speak to the ringmaster to get another.",
"name": "A stylish hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13687",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "0"
},
{
"remove_head": "true",
"shop_price": "10",
"examine": "Very dapper!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127271,8 +120158,6 @@
"shop_price": "10",
"examine": "Very dapper!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127288,8 +120173,6 @@
"shop_price": "10",
"examine": "Very dapper!",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127659,6 +120542,7 @@
"attack_speed": "4",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "3",
"destroy_message": "You can get another one from the equipment box for this performance.",
"name": "Performance knife",
@@ -127748,18 +120632,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You can mine more if you find another crashed star.",
"shop_price": "50",
"examine": "Small, shiny bits of rock.",
"durability": null,
- "low_alchemy": "20",
- "high_alchemy": "30",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "You can mine more if you find another crashed star.",
"name": "Stardust",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13727",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -127775,16 +120657,15 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "requirements": "{1,70}",
+ "requirements": "{1,40}-{5,55}",
"shop_price": "70000",
"examine": "An ethereal shield.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "28000",
- "high_alchemy": "42000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "39982",
@@ -127792,21 +120673,19 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13734",
- "bonuses": "0,0,0,0,0,39,41,50,1,45,40,0,0,1,0"
+ "bonuses": "0,0,0,0,0,39,41,50,1,45,40,0,1,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "70000",
"examine": "An ethereal shield.",
- "durability": null,
- "low_alchemy": "28000",
- "high_alchemy": "42000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "39982",
+ "durability": null,
"name": "Spirit shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13735"
},
{
@@ -127815,11 +120694,10 @@
"examine": "An ethereal shield that has been blessed with holy powers.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "560000",
- "high_alchemy": "840000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "936814",
@@ -127827,21 +120705,19 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13736",
- "bonuses": "0,0,0,0,0,53,55,73,2,52,65,0,0,3,0"
+ "bonuses": "0,0,0,0,0,53,55,73,2,52,65,0,3,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "1400000",
"examine": "An ethereal shield that has been blessed with holy powers.",
- "durability": null,
- "low_alchemy": "560000",
- "high_alchemy": "840000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "936814",
+ "durability": null,
"name": "Blessed spirit shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13737"
},
{
@@ -127849,11 +120725,10 @@
"shop_price": "2000000",
"examine": "An ethereal shield with an arcane sigil attached to it.",
"durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "15076199",
@@ -127861,21 +120736,19 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13738",
- "bonuses": "0,0,0,20,0,53,55,73,2,52,65,0,0,3,0"
+ "bonuses": "0,0,0,20,0,53,55,73,2,52,65,0,3,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "2000000",
"examine": "An ethereal shield with an arcane sigil attached to it.",
- "durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "15076199",
+ "durability": null,
"name": "Arcane spirit shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13739"
},
{
@@ -127883,11 +120756,10 @@
"shop_price": "2000000",
"examine": "An ethereal shield with a divine sigil attached to it.",
"durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "40003587",
@@ -127895,21 +120767,19 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13740",
- "bonuses": "0,0,0,0,0,63,65,75,2,57,65,0,0,3,0"
+ "bonuses": "0,0,0,0,0,63,65,75,2,57,65,0,3,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "2000000",
"examine": "An ethereal shield with a divine sigil attached to it.",
- "durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "40003587",
+ "durability": null,
"name": "Divine spirit shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13741"
},
{
@@ -127917,11 +120787,10 @@
"shop_price": "2000000",
"examine": "An ethereal shield with an elysian sigil attached to it.",
"durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "28420591",
@@ -127929,21 +120798,19 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13742",
- "bonuses": "0,0,0,0,0,63,65,75,2,57,65,0,0,3,0"
+ "bonuses": "0,0,0,0,0,63,65,75,2,57,65,0,3,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "2000000",
"examine": "An ethereal shield with an elysian sigil attached to it.",
- "durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "28420591",
+ "durability": null,
"name": "Elysian spirit shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13743"
},
{
@@ -127951,11 +120818,10 @@
"shop_price": "2000000",
"examine": "An ethereal shield with a spectral sigil attached to it.",
"durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "3616112",
@@ -127963,21 +120829,19 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13744",
- "bonuses": "0,0,0,0,0,53,55,73,30,52,65,0,0,3,0"
+ "bonuses": "0,0,0,0,0,53,55,73,30,52,65,0,3,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "2000000",
"examine": "An ethereal shield with a spectral sigil attached to it.",
- "durability": null,
- "low_alchemy": "800000",
- "high_alchemy": "1200000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "3616112",
+ "durability": null,
"name": "Spectral spirit shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13745"
},
{
@@ -127985,8 +120849,6 @@
"examine": "A sigil in the shape of an arcane rune.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -127999,18 +120861,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "750000",
"examine": "A sigil in the shape of an arcane rune.",
- "durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "19508553",
+ "durability": null,
"name": "Arcane sigil",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13747"
},
{
@@ -128018,8 +120878,6 @@
"examine": "A sigil in the shape of a divine symbol.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -128032,18 +120890,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "750000",
"examine": "A sigil in the shape of a divine symbol.",
- "durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "53026134",
+ "durability": null,
"name": "Divine sigil",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13749"
},
{
@@ -128051,8 +120907,6 @@
"examine": "A sigil marked with elysian signs.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -128065,18 +120919,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "750000",
"examine": "A sigil marked with elysian signs.",
- "durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "36159098",
+ "durability": null,
"name": "Elysian sigil",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13751"
},
{
@@ -128084,8 +120936,6 @@
"examine": "A sigil tempered with spectral powers.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -128098,18 +120948,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "750000",
"examine": "A sigil tempered with spectral powers.",
- "durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "3116720",
+ "durability": null,
"name": "Spectral sigil",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13753"
},
{
@@ -128117,8 +120965,6 @@
"examine": "A bottle of holy elixir.",
"rare_item": "true",
"durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -128131,33 +120977,29 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "750000",
"examine": "A bottle of holy elixir.",
- "durability": null,
- "low_alchemy": "300000",
- "high_alchemy": "450000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "950904",
+ "durability": null,
"name": "Holy elixir",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13755"
},
{
+ "destroy_message": "Drop",
"shop_price": "40",
"examine": "Logs cut from cursed willow roots.",
"durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Cursed willow logs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13756",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -128230,26 +121072,22 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "I hope I don't meet any roundheads...",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "I hope I don't meet any roundheads...",
+ "durability": null,
"name": "Cavalier and mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13763",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"examine": "A right hand fighting claw.",
"has_special": "true",
"durability": null,
- "low_alchemy": "2400",
- "high_alchemy": "3600",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
@@ -128267,8 +121105,6 @@
{
"examine": "A powerful dagger.",
"durability": null,
- "low_alchemy": "3200",
- "high_alchemy": "4800",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "5",
@@ -128323,8 +121159,6 @@
{
"examine": "A rune tipped spear.",
"durability": null,
- "low_alchemy": "8320",
- "high_alchemy": "12480",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
@@ -128343,8 +121177,6 @@
"examine": "A dragon tipped spear.",
"has_special": "true",
"durability": null,
- "low_alchemy": "24960",
- "high_alchemy": "37440",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
@@ -128463,8 +121295,6 @@
{
"examine": "A razor-sharp sword.",
"durability": null,
- "low_alchemy": "8320",
- "high_alchemy": "12480",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "5",
@@ -128481,13 +121311,12 @@
{
"examine": "A two handed sword.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"destroy": "true",
"attack_speed": "7",
"two_handed": "true",
"weapon_interface": "7",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "124",
"lendable": "true",
"destroy_message": "Drop",
@@ -128500,13 +121329,12 @@
{
"examine": "A rune halberd.",
"durability": null,
- "low_alchemy": "51200",
- "high_alchemy": "76800",
"destroy": "true",
"attack_speed": "7",
"two_handed": "true",
"weapon_interface": "15",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"lendable": "true",
"destroy_message": "Drop",
@@ -128519,8 +121347,6 @@
{
"examine": "A spiky mace.",
"durability": null,
- "low_alchemy": "5760",
- "high_alchemy": "8640",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "8",
@@ -128528,35 +121354,33 @@
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "7917",
+ "attack_audios": "2508,2508,25092508",
"name": "Rune mace",
"archery_ticket_price": "0",
"id": "13780",
"bonuses": "20,-2,39,0,0,0,0,0,0,0,0,36,0,4,0"
},
{
- "examine": "A series of connected metal rings.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A series of connected metal rings.",
"grand_exchange_price": "29145",
+ "durability": null,
"name": "Rune chainbody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13781",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-15,0,63,72,78,-3,65,40,0,0,0,0"
},
{
"examine": "These will protect my feet.",
"durability": null,
- "low_alchemy": "5000",
- "high_alchemy": "7500",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2237",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "7036",
@@ -128566,77 +121390,68 @@
"bonuses": "0,0,0,-3,-1,12,13,14,0,0,10,2,0,0,0"
},
{
- "examine": "A medium sized helmet.",
- "durability": null,
- "low_alchemy": "7680",
- "high_alchemy": "11520",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A medium sized helmet.",
"grand_exchange_price": "10678",
+ "durability": null,
"name": "Rune med helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13783",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-3,-1,22,23,21,-1,22,7,0,0,0,0"
},
{
- "examine": "A stone helmet.",
- "durability": null,
- "low_alchemy": "18400",
- "high_alchemy": "27600",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A stone helmet.",
"grand_exchange_price": "26576",
+ "durability": null,
"name": "Granite helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13784",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-9,-7,31,33,29,-1,39,9,0,0,0,0"
},
{
- "examine": "Provides excellent protection.",
- "durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "4,0,8",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Provides excellent protection.",
"grand_exchange_price": "136414",
+ "durability": null,
"name": "Granite body",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13785",
+ "absorb": "4,0,8",
"bonuses": "0,0,0,-22,-5,87,84,79,-6,97,45,0,0,0,0"
},
{
- "examine": "These look pretty heavy.",
- "durability": null,
- "low_alchemy": "26400",
- "high_alchemy": "39600",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,5",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "These look pretty heavy.",
"grand_exchange_price": "72213",
+ "durability": null,
"name": "Granite legs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13786",
+ "absorb": "2,0,5",
"bonuses": "0,0,0,-31,-18,43,45,41,-4,68,20,0,0,0,0"
},
{
"examine": "A medium square shield.",
"durability": null,
- "low_alchemy": "15360",
- "high_alchemy": "23040",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "22225",
@@ -128646,90 +121461,78 @@
"bonuses": "0,0,0,-6,-2,38,40,36,0,38,35,0,0,0,0"
},
{
- "examine": "A solid stone shield.",
- "durability": null,
- "low_alchemy": "22400",
- "high_alchemy": "33600",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "5,0,10",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A solid stone shield.",
"grand_exchange_price": "32512",
+ "durability": null,
"name": "Granite shield",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13788",
+ "absorb": "5,0,10",
"bonuses": "0,0,0,-12,-8,40,42,38,0,65,50,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "A big 'do about nothing.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "42991",
+ "durability": null,
"name": "A powdered wig",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13789",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "These'll help me stay alive.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "811293",
+ "durability": null,
"name": "Flared trousers",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13790",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Alas, someone has slashed my pantaloons.",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "19286",
+ "durability": null,
"name": "Pantaloons",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13791",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "A cap for wearing whil...zzzzzzzzz",
- "durability": null,
- "low_alchemy": "800",
- "high_alchemy": "1200",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A cap for wearing whil...zzzzzzzzz",
"grand_exchange_price": "75357",
+ "durability": null,
"name": "Sleeping cap",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13792",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"examine": "A diamond-topped cane.",
"durability": null,
- "low_alchemy": "5760",
- "high_alchemy": "8640",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "8",
@@ -128743,173 +121546,152 @@
"bonuses": "0,-2,39,0,0,0,0,0,0,0,0,36,0,4,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Comes with a free rabbit!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "333537",
+ "durability": null,
"name": "Top hat",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13794",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Shear elegance.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "582969",
+ "durability": null,
"name": "Sheep mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13795",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "I can get the look right, but can I do the waddle too?",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "1159807",
+ "durability": null,
"name": "Penguin mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13796",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "The bats have left the belltower.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "681595",
+ "durability": null,
"name": "Bat mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13797",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "It's the year of the cat!",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "2512014",
+ "durability": null,
"name": "Cat mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13798",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
- },
- {
- "examine": "I'm hungry like the wolf.",
- "durability": null,
- "low_alchemy": "320",
- "high_alchemy": "480",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "3240770",
- "name": "Wolf mask",
- "archery_ticket_price": "0",
- "id": "13799",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Rune platebody with gold trim.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "343688",
- "name": "Rune platebody (g)",
+ "examine": "I'm hungry like the wolf.",
+ "grand_exchange_price": "3240770",
+ "durability": null,
+ "name": "Wolf mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13799",
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "Rune platebody with gold trim.",
+ "grand_exchange_price": "343688",
+ "durability": null,
+ "name": "Rune platebody (g)",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13800",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
- "examine": "Rune platelegs with gold trim.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
"lendable": "true",
"destroy_message": "drop",
+ "examine": "Rune platelegs with gold trim.",
"grand_exchange_price": "238139",
+ "durability": null,
"name": "Rune platelegs (g)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13801",
- "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
- },
- {
- "examine": "Rune plateskirt with gold trim.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "37616",
- "name": "Rune plateskirt (g)",
- "archery_ticket_price": "0",
- "id": "13802",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "Rune full helmet with gold trim.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "247877",
- "name": "Rune full helm(g)",
+ "examine": "Rune plateskirt with gold trim.",
+ "grand_exchange_price": "37616",
+ "durability": null,
+ "name": "Rune plateskirt (g)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13802",
+ "absorb": "2,0,4",
+ "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "Rune full helmet with gold trim.",
+ "grand_exchange_price": "247877",
+ "durability": null,
+ "name": "Rune full helm(g)",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13803",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "Rune kiteshield with gold trim",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "118205",
@@ -128919,77 +121701,68 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
- "examine": "Rune platebody with trim.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Rune platebody with trim.",
"grand_exchange_price": "100586",
+ "durability": null,
"name": "Rune platebody (t)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13805",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Rune platelegs with trim!",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "81577",
+ "durability": null,
"name": "Rune platelegs (t)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13806",
- "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
- },
- {
- "examine": "Rune plateskirt with trim.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "37701",
- "name": "Rune plateskirt (t)",
- "archery_ticket_price": "0",
- "id": "13807",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "Rune full helmet with trim.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "95809",
- "name": "Rune full helm (t)",
+ "examine": "Rune plateskirt with trim.",
+ "grand_exchange_price": "37701",
+ "durability": null,
+ "name": "Rune plateskirt (t)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13807",
+ "absorb": "2,0,4",
+ "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "Rune full helmet with trim.",
+ "grand_exchange_price": "95809",
+ "durability": null,
+ "name": "Rune full helm (t)",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13808",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "A large, metal shield with a nice trim.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "46469",
@@ -128999,26 +121772,22 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
- "examine": "Your money or your life!",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Your money or your life!",
"grand_exchange_price": "252995",
+ "durability": null,
"name": "Highwayman mask",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13810",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"examine": "Parlez-vous francais?",
"durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -129034,8 +121803,6 @@
{
"examine": "Parlez-vous francais?",
"durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -129051,8 +121818,6 @@
{
"examine": "Parlez-vous Francais?",
"durability": null,
- "low_alchemy": "32",
- "high_alchemy": "48",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -129066,173 +121831,152 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "All for one and one for all!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "All for one and one for all!",
"grand_exchange_price": "42014",
+ "durability": null,
"name": "Tan cavalier",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13814",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "All for one and one for all!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "All for one and one for all!",
"grand_exchange_price": "61518",
+ "durability": null,
"name": "Dark cavalier",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13815",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "All for one and one for all!",
- "durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "338530",
+ "durability": null,
"name": "Black cavalier",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13816",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "A minimalist's hat.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A minimalist's hat.",
"grand_exchange_price": "159694",
+ "durability": null,
"name": "Red headband",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13817",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "A minimalist's hat.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A minimalist's hat.",
"grand_exchange_price": "83543",
+ "durability": null,
"name": "Black headband",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13818",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
- },
- {
- "examine": "A minimalist's hat.",
- "durability": null,
- "low_alchemy": "16",
- "high_alchemy": "24",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "0,0,0",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "26474",
- "name": "Brown headband",
- "archery_ticket_price": "0",
- "id": "13819",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "Rune platebody in the colours of Zamorak.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "868398",
- "name": "Zamorak platebody",
+ "examine": "A minimalist's hat.",
+ "grand_exchange_price": "26474",
+ "durability": null,
+ "name": "Brown headband",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13819",
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "Rune platebody in the colours of Zamorak.",
+ "grand_exchange_price": "868398",
+ "durability": null,
+ "name": "Zamorak platebody",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13820",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Rune platelegs in the colours of Zamorak.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "316989",
+ "durability": null,
"name": "Zamorak platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13821",
- "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
- },
- {
- "examine": "Rune plateskirt in the colours of Zamorak.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "38597",
- "name": "Zamorak plateskirt",
- "archery_ticket_price": "0",
- "id": "13822",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "A full helmet in the colours of Zamorak.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "618480",
- "name": "Zamorak full helm",
+ "examine": "Rune plateskirt in the colours of Zamorak.",
+ "grand_exchange_price": "38597",
+ "durability": null,
+ "name": "Zamorak plateskirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13822",
+ "absorb": "2,0,4",
+ "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "A full helmet in the colours of Zamorak.",
+ "grand_exchange_price": "618480",
+ "durability": null,
+ "name": "Zamorak full helm",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13823",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "A Rune kiteshield in the colours of Zamorak.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "225574",
@@ -129242,77 +121986,68 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
- "examine": "Rune platebody in the colours of Saradomin.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Rune platebody in the colours of Saradomin.",
"grand_exchange_price": "1555099",
+ "durability": null,
"name": "Saradomin platebody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13825",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Rune platelegs in the colours of Saradomin.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "376849",
+ "durability": null,
"name": "Saradomin platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13826",
- "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
- },
- {
- "examine": "Rune plateskirt in the colours of Saradomin.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "53048",
- "name": "Saradomin plateskirt",
- "archery_ticket_price": "0",
- "id": "13827",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "Rune full helmet in the colours of Saradomin.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "1025974",
- "name": "Saradomin full helm",
+ "examine": "Rune plateskirt in the colours of Saradomin.",
+ "grand_exchange_price": "53048",
+ "durability": null,
+ "name": "Saradomin plateskirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13827",
+ "absorb": "2,0,4",
+ "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "Rune full helmet in the colours of Saradomin.",
+ "grand_exchange_price": "1025974",
+ "durability": null,
+ "name": "Saradomin full helm",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13828",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "Rune kiteshield in the colours of Saradomin.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "353916",
@@ -129322,77 +122057,68 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
- "examine": "Rune platebody in the colours of Guthix.",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Rune platebody in the colours of Guthix.",
"grand_exchange_price": "406762",
+ "durability": null,
"name": "Guthix platebody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13830",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Rune platelegs in the colours of Guthix.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "181471",
+ "durability": null,
"name": "Guthix platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13831",
- "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
- },
- {
- "examine": "Rune plateskirt in the colours of Guthix.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "38388",
- "name": "Guthix plateskirt",
- "archery_ticket_price": "0",
- "id": "13832",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "A rune full helmet in the colours of Guthix.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "399963",
- "name": "Guthix full helm",
+ "examine": "Rune plateskirt in the colours of Guthix.",
+ "grand_exchange_price": "38388",
+ "durability": null,
+ "name": "Guthix plateskirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13832",
+ "absorb": "2,0,4",
+ "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "A rune full helmet in the colours of Guthix.",
+ "grand_exchange_price": "399963",
+ "durability": null,
+ "name": "Guthix full helm",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13833",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "Rune kiteshield in the colours of Guthix.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "185266",
@@ -129402,77 +122128,68 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,40,0,0,0,0"
},
{
- "examine": "Rune platebody with complete gold trim & plating.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Rune platebody with complete gold trim & plating.",
"grand_exchange_price": "2034838",
+ "durability": null,
"name": "Gilded platebody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13835",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-30,-10,82,80,72,-6,80,40,0,0,0,0"
},
{
+ "lendable": "true",
+ "destroy_message": "Drop",
"examine": "Rune platelegs with gold plate.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "1299758",
+ "durability": null,
"name": "Gilded platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13836",
- "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
- },
- {
- "examine": "Rune plateskirt with gold plate.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "2,0,4",
- "lendable": "true",
- "destroy_message": "Drop",
- "grand_exchange_price": "84191",
- "name": "Gilded plateskirt",
- "archery_ticket_price": "0",
- "id": "13837",
"bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
},
{
- "examine": "Rune full helmet with gold plate.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
- "grand_exchange_price": "1057068",
- "name": "Gilded full helm",
+ "examine": "Rune plateskirt with gold plate.",
+ "grand_exchange_price": "84191",
+ "durability": null,
+ "name": "Gilded plateskirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "13837",
+ "absorb": "2,0,4",
+ "bonuses": "0,0,0,-21,-7,51,49,47,-4,49,15,0,0,0,0"
+ },
+ {
+ "lendable": "true",
+ "destroy_message": "Drop",
+ "examine": "Rune full helmet with gold plate.",
+ "grand_exchange_price": "1057068",
+ "durability": null,
+ "name": "Gilded full helm",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13838",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-6,-2,30,32,27,-1,30,7,0,0,0,0"
},
{
"examine": "Rune kiteshield with gold plate.",
"durability": null,
- "low_alchemy": "21760",
- "high_alchemy": "32640",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,7",
+ "equip_audio": "2245",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "506093",
@@ -129482,220 +122199,192 @@
"bonuses": "0,0,0,-8,-2,44,48,46,-1,46,45,0,0,0,0"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Atk, Def, Str and LP xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (melee)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13845",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Ranged xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (ranged)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13846",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Magic xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (magic)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13847",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Prayer xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (prayer)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13848",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Agility xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (agility)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13849",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Woodcutting xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (wc)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13850",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Firemaking xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (fm)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13851",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Mining xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (mining)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13852",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Hunting xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (hunter)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13853",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Thieving xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (thieving)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13854",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Smithing xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (smithing)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13855",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Fishing xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (fishing)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13856",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
+ "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"shop_price": "50000",
"examine": "A pair of gloves that gives you bonus Cooking xp.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "9",
- "destroy_message": "Your brawling gloves are fragile and will disappear if you drop them. Are you sure you want to drop them?",
"name": "Brawling gloves (cooking)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13857",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "9"
},
{
"requirements": "{1,78}-{6,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "12,6,0",
@@ -129710,19 +122399,17 @@
"bonuses": "0,0,0,35,-10,63,45,74,35,0,60,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}-{6,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1412812",
+ "durability": null,
"name": "Zuriel's robe top",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13859"
},
{
@@ -129730,8 +122417,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "12,6,0",
@@ -129749,8 +122434,6 @@
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "8,4,0",
@@ -129764,19 +122447,17 @@
"bonuses": "0,0,0,25,-7,38,35,44,24,0,30,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}-{6,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "986668",
+ "durability": null,
"name": "Zuriel's robe bottom",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13862"
},
{
@@ -129784,8 +122465,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "8,4,0",
@@ -129803,8 +122482,6 @@
"shop_price": "250000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "false",
"attack_speed": "4",
"absorb": "6,3,0",
@@ -129818,19 +122495,17 @@
"bonuses": "0,0,0,8,-2,20,16,22,8,0,15,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}-{6,78}",
"shop_price": "250000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "361542",
+ "durability": null,
"name": "Zuriel's hood",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13865"
},
{
@@ -129839,8 +122514,6 @@
"shop_price": "150000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,3,0",
@@ -129857,7 +122530,6 @@
"examine": "This item degrades in combat, and will turn to dust.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "1208",
"attack_speed": "6",
"turn180_anim": "1206",
@@ -129874,30 +122546,28 @@
"id": "13867",
"stand_turn_anim": "1209",
"bonuses": "13,-1,65,18,0,5,7,4,18,0,0,72,0,0,10",
- "requirements": "{6,78}",
+ "requirements": "{0,78}-{6,78}",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "false",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Zuriel's staff"
},
{
- "requirements": "{6,78}",
+ "destroy_message": "Drop",
+ "requirements": "{0,78}-{6,78}",
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "120000",
- "high_alchemy": "180000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "2116989",
+ "durability": null,
"name": "Zuriel's staff",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13868"
},
{
@@ -129905,7 +122575,6 @@
"examine": "This item degrades in combat, and will turn to dust.",
"walk_anim": "1205",
"rare_item": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "1208",
"attack_speed": "6",
"turn180_anim": "1206",
@@ -129921,12 +122590,12 @@
"id": "13869",
"stand_turn_anim": "1209",
"bonuses": "13,-1,65,18,0,5,7,4,18,0,0,72,0,0,10",
- "requirements": "",
+ "requirements": "{0,78}-{6,78}",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "true",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Zuriel's staff (deg)"
@@ -129936,8 +122605,6 @@
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "0,12,6",
@@ -129952,19 +122619,17 @@
"bonuses": "0,0,0,-15,36,61,53,66,75,62,60,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}-{4,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "926341",
+ "durability": null,
"name": "Morrigan's leather body",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13871"
},
{
@@ -129972,8 +122637,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,12,6",
@@ -129991,8 +122654,6 @@
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "0,8,4",
@@ -130006,19 +122667,17 @@
"bonuses": "0,0,0,-10,23,35,29,37,46,35,30,0,0,0,0"
},
{
+ "destroy_message": "Drop, Destroy after degrading.",
"requirements": "{1,78}-{4,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop, Destroy after degrading.",
"grand_exchange_price": "510395",
+ "durability": null,
"name": "Morrigan's leather chaps",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13874"
},
{
@@ -130026,8 +122685,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,8,4",
@@ -130045,11 +122702,10 @@
"shop_price": "250000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "false",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2238",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "236411",
@@ -130060,19 +122716,17 @@
"bonuses": "0,0,0,-5,13,8,11,14,8,12,15,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}-{4,78}",
"shop_price": "250000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "236411",
+ "durability": null,
"name": "Morrigan's coif",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13877"
},
{
@@ -130081,11 +122735,10 @@
"shop_price": "150000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2238",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "236411",
@@ -130100,12 +122753,11 @@
"examine": "A vicious javelin.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"destroy": "false",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -130114,7 +122766,7 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13879",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
"requirements": "{4,78}",
@@ -130122,12 +122774,11 @@
"examine": "A vicious javelin.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"destroy": "false",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -130136,7 +122787,7 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13880",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
"requirements": "{4,78}",
@@ -130144,12 +122795,11 @@
"examine": "A vicious javelin.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"destroy": "false",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -130158,7 +122808,7 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13881",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
"requirements": "{4,78}",
@@ -130166,12 +122816,11 @@
"examine": "A vicious javelin.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"destroy": "false",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -130180,7 +122829,7 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13882",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
"requirements": "{4,78}",
@@ -130188,8 +122837,6 @@
"examine": "A vicious throwing axe.",
"has_special": "true",
"durability": null,
- "low_alchemy": "1600",
- "high_alchemy": "2400",
"destroy": "false",
"attack_speed": "5",
"weapon_interface": "18",
@@ -130201,18 +122848,17 @@
"tradeable": "true",
"archery_ticket_price": "0",
"id": "13883",
- "bonuses": "0,0,0,0,93,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,93,0,0,0,0,0,0,0,0,0,117"
},
{
"requirements": "{1,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "6,0,12",
+ "equip_audio": "2239",
"equipment_slot": "4",
"destroy_message": "Drop",
"remove_sleeves": "true",
@@ -130224,19 +122870,17 @@
"bonuses": "5,5,7,-30,-10,154,145,121,-6,157,60,5,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1619096",
+ "durability": null,
"name": "Statius's platebody",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13885"
},
{
@@ -130244,11 +122888,10 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,0,12",
+ "equip_audio": "2239",
"equipment_slot": "4",
"destroy_message": "Drop",
"remove_sleeves": "true",
@@ -130263,8 +122906,6 @@
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "6,0,12",
@@ -130279,19 +122920,17 @@
"bonuses": "5,7,7,-15,0,120,131,145,-3,140,60,6,0,0,0"
},
{
+ "destroy_message": "Drop, Destroy once it has been degraded.",
"requirements": "{1,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop, Destroy once it has been degraded.",
"grand_exchange_price": "2154168",
+ "durability": null,
"name": "Vesta's chainbody",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13888"
},
{
@@ -130299,8 +122938,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,0,12",
@@ -130318,11 +122955,10 @@
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "4,0,8",
+ "equip_audio": "2242",
"equipment_slot": "7",
"destroy_message": "Drop",
"grand_exchange_price": "1735029",
@@ -130333,19 +122969,17 @@
"bonuses": "3,3,5,-21,-7,110,106,97,-4,121,30,3,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1735029",
+ "durability": null,
"name": "Statius's platelegs",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13891"
},
{
@@ -130353,11 +122987,10 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,8",
+ "equip_audio": "2242",
"equipment_slot": "7",
"destroy_message": "Drop",
"grand_exchange_price": "1735029",
@@ -130371,8 +123004,6 @@
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "false",
"attack_speed": "4",
"absorb": "4,0,8",
@@ -130386,19 +123017,17 @@
"bonuses": "3,5,5,-17,-4,86,100,112,-2,118,30,3,0,0,0"
},
{
+ "destroy_message": "Drop",
"requirements": "{1,78}",
"shop_price": "500000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1860767",
+ "durability": null,
"name": "Vesta's plateskirt",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13894"
},
{
@@ -130406,8 +123035,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "200000",
- "high_alchemy": "300000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,8",
@@ -130425,11 +123052,10 @@
"shop_price": "250000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "false",
"attack_speed": "4",
"absorb": "3,0,6",
+ "equip_audio": "2240",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "1301986",
@@ -130444,10 +123070,9 @@
"shop_price": "250000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "false",
"attack_speed": "4",
+ "equip_audio": "",
"destroy_message": "Drop",
"grand_exchange_price": "1301986",
"name": "Statius's full helm",
@@ -130461,11 +123086,10 @@
"shop_price": "150000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "100000",
- "high_alchemy": "150000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
+ "equip_audio": "2240",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "1301986",
@@ -130480,14 +123104,13 @@
"walk_anim": "1205",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
"absorb": "0,0,0",
"defence_anim": "397",
"equipment_slot": "3",
- "attack_anims": "381,390,390,390",
+ "attack_anims": "390,390,381,390",
"destroy_message": "Drop",
"grand_exchange_price": "10464249",
"tradeable": "true",
@@ -130499,27 +123122,25 @@
"requirements": "{0,78}",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "false",
- "weapon_interface": "5",
+ "weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1426",
"attack_audios": "2500,2500,2517,2500",
"name": "Vesta's longsword"
},
{
+ "destroy_message": "Drop",
"requirements": "{0,78}",
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "120000",
- "high_alchemy": "180000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "10464249",
+ "durability": null,
"name": "Vesta's longsword",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13900"
},
{
@@ -130528,14 +123149,13 @@
"walk_anim": "1205",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
"absorb": "0,0,0",
"defence_anim": "397",
"equipment_slot": "3",
- "attack_anims": "381,390,390,390",
+ "attack_anims": "390,390,381,390",
"destroy_message": "Drop",
"grand_exchange_price": "10464249",
"run_anim": "824",
@@ -130546,9 +123166,9 @@
"requirements": "{0,78}",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "true",
- "weapon_interface": "5",
+ "weapon_interface": "6",
+ "equip_audio": "2248",
"render_anim": "1426",
"attack_audios": "2500,2500,2517,2500",
"name": "Vesta's longsword (deg)"
@@ -130558,7 +123178,6 @@
"examine": "This item degrades in combat, and will turn to dust.",
"walk_anim": "819",
"has_special": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -130578,26 +123197,24 @@
"requirements": "{0,78}",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "false",
"weapon_interface": "10",
+ "equip_audio": "2233",
"attack_audios": "2504,0,0,0",
"name": "Statius's warhammer"
},
{
+ "destroy_message": "Drop, Destroy once it has been degraded.",
"requirements": "{0,78}",
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
- "durability": null,
- "low_alchemy": "120000",
- "high_alchemy": "180000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "Drop, Destroy once it has been degraded.",
"grand_exchange_price": "7424450",
+ "durability": null,
"name": "Statius's warhammer",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13903"
},
{
@@ -130605,7 +123222,6 @@
"examine": "This item degrades in combat, and will turn to dust.",
"walk_anim": "819",
"has_special": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "822",
"attack_speed": "6",
"turn180_anim": "820",
@@ -130620,12 +123236,11 @@
"id": "13904",
"stand_turn_anim": "823",
"bonuses": "-4,-4,123,0,0,0,0,0,0,0,0,114,0,0,0",
- "requirements": "",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "true",
"weapon_interface": "10",
+ "equip_audio": "2233",
"render_anim": "1426",
"attack_audios": "2504,0,0,0",
"name": "Statius' warhammer (deg)"
@@ -130635,9 +123250,8 @@
"examine": "This item degrades in combat, and will turn to dust.",
"walk_anim": "1205",
"has_special": "true",
- "low_alchemy": "120000",
"turn90ccw_anim": "1208",
- "attack_speed": "4",
+ "attack_speed": "5",
"two_handed": "true",
"turn180_anim": "1206",
"absorb": "0,0,0",
@@ -130656,10 +123270,10 @@
"requirements": "{0,78}",
"shop_price": "300000",
"durability": null,
- "high_alchemy": "180000",
"destroy": "false",
"weight": "4.2",
"weapon_interface": "14",
+ "equip_audio": "2247",
"render_anim": "28",
"name": "Vesta's spear"
},
@@ -130668,8 +123282,6 @@
"shop_price": "300000",
"examine": "This item degrades in combat, and will turn to dust.",
"durability": null,
- "low_alchemy": "120000",
- "high_alchemy": "180000",
"destroy": "false",
"attack_speed": "4",
"two_handed": "true",
@@ -130684,17 +123296,20 @@
"requirements": "{0,78}",
"shop_price": "180000",
"examine": "This item degrades in combat, and will turn to dust.",
+ "walk_anim": "1205",
"has_special": "true",
"durability": null,
- "low_alchemy": "120000",
- "high_alchemy": "180000",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
+ "turn90ccw_anim": "1208",
"weapon_interface": "14",
"absorb": "0,0,0",
+ "equip_audio": "2247",
+ "defence_anim": "2079",
"render_anim": "28",
"equipment_slot": "3",
+ "attack_anims": "2080,2081,2082,2080",
"destroy_message": "Drop",
"grand_exchange_price": "5264612",
"name": "Vesta's spear (deg)",
@@ -130703,15 +123318,14 @@
"bonuses": "133,113,120,0,0,18,21,21,0,0,0,122,0,0,0"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,0,12",
+ "equip_audio": "2239",
"equipment_slot": "4",
"destroy_message": "Drop",
"remove_sleeves": "true",
@@ -130722,31 +123336,28 @@
"bonuses": "5,5,7,-10,-30,154,145,121,-6,157,60,5,0,0,0"
},
{
- "requirements": "{1,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1897306",
+ "durability": null,
"name": "Corrupt statius's platebody",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13909"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,0,12",
+ "equip_audio": "2239",
"equipment_slot": "4",
"destroy_message": "Drop",
"remove_sleeves": "true",
@@ -130757,12 +123368,10 @@
"bonuses": "5,5,7,-10,-30,154,145,121,-6,157,60,5,0,0,0"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,0,12",
@@ -130776,28 +123385,24 @@
"bonuses": "5,7,7,-15,0,120,131,145,-3,140,60,6,0,0,0"
},
{
- "requirements": "{1,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "2546175",
+ "durability": null,
"name": "Corrupt vesta's chainbody",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13912"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,0,12",
@@ -130811,15 +123416,14 @@
"bonuses": "5,7,7,-15,0,120,131,145,-3,140,60,6,0,0,0"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,8",
+ "equip_audio": "2242",
"equipment_slot": "7",
"destroy_message": "Drop",
"grand_exchange_price": "1734527",
@@ -130829,31 +123433,28 @@
"bonuses": "3,3,5,-21,-7,110,106,97,-4,121,30,3,0,0,0"
},
{
- "requirements": "{1,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1734527",
+ "durability": null,
"name": "Corrupt statius's platelegs",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13915"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,8",
+ "equip_audio": "2242",
"equipment_slot": "7",
"destroy_message": "Drop",
"grand_exchange_price": "1734527",
@@ -130863,12 +123464,10 @@
"bonuses": "3,3,5,-21,-7,110,106,97,-4,121,30,3,0,0,0"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,8",
@@ -130881,28 +123480,24 @@
"bonuses": "3,5,5,-17,-4,86,100,112,-2,118,30,3,0,0,0"
},
{
- "requirements": "{1,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1942627",
+ "durability": null,
"name": "Corrupt vesta's plateskirt",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13918"
},
{
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,8",
@@ -130916,12 +123511,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
@@ -130934,32 +123527,29 @@
"bonuses": "3,3,4,-6,-2,65,70,63,-1,71,15,3,0,0,0"
},
{
- "requirements": "{1,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}",
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1062835",
+ "durability": null,
"name": "Corrupt statius's full helm",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13921"
},
{
"remove_head": "true",
- "requirements": "{1,78}",
+ "requirements": "{1,20}",
"shop_price": "30000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
+ "equip_audio": "2240",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "1062835",
@@ -130969,41 +123559,38 @@
"bonuses": "3,3,4,-6,-2,65,70,63,-1,71,15,3,0,0,0"
},
{
+ "requirements": "{0,20}",
+ "shop_price": "125000",
"turn90cw_anim": "1207",
"examine": "This item degrades while worn, and will turn to dust.",
"walk_anim": "1205",
- "low_alchemy": "30000",
+ "durability": null,
+ "destroy": "true",
"turn90ccw_anim": "1208",
"attack_speed": "5",
+ "weapon_interface": "5",
"turn180_anim": "1206",
"absorb": "0,0,0",
+ "equip_audio": "2248",
+ "render_anim": "1426",
"equipment_slot": "3",
"attack_anims": "381,390,390,390",
"destroy_message": "Drop",
"grand_exchange_price": "3739998",
+ "name": "Corrupt vesta's longsword",
"run_anim": "824",
"archery_ticket_price": "0",
"id": "13923",
"stand_turn_anim": "823",
- "bonuses": "106,121,-2,0,0,1,4,3,0,0,0,118,0,0,0",
- "requirements": "{0,78}",
- "shop_price": "125000",
- "durability": null,
- "high_alchemy": "45000",
- "destroy": "true",
- "weapon_interface": "5",
- "render_anim": "1426",
- "name": "Corrupt vesta's longsword"
+ "bonuses": "106,121,-2,0,0,1,4,3,0,0,0,118,0,0,0"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "125000",
"turn90cw_anim": "1207",
"examine": "This item degrades while worn, and will turn to dust.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"turn90ccw_anim": "1208",
"attack_speed": "4",
@@ -131020,20 +123607,19 @@
"stand_turn_anim": "823"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "75000",
"turn90cw_anim": "1207",
"examine": "This item degrades while worn, and will turn to dust.",
"walk_anim": "1205",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"weapon_interface": "5",
"turn180_anim": "1206",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1426",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131046,16 +123632,15 @@
"bonuses": "106,121,-2,0,0,1,4,3,0,0,0,118,0,0,0"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "8",
"absorb": "0,0,0",
+ "equip_audio": "2233",
"defence_anim": "397",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131067,32 +123652,29 @@
"bonuses": "-4,-4,123,0,0,0,0,0,0,0,0,114,0,0,0"
},
{
- "requirements": "{0,78}",
+ "destroy_message": "Drop",
+ "requirements": "{0,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "3033516",
+ "durability": null,
"name": "Corrupt statius's warhammer",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13927"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "8",
"absorb": "0,0,0",
+ "equip_audio": "2233",
"equipment_slot": "3",
"destroy_message": "Drop",
"grand_exchange_price": "3033516",
@@ -131102,17 +123684,16 @@
"bonuses": "-4,-4,123,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2080,2081,2082,2080",
@@ -131124,12 +123705,10 @@
"bonuses": "133,113,120,0,0,18,21,21,0,0,0,0,0,0,0"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
@@ -131141,17 +123720,16 @@
"id": "13930"
},
{
- "requirements": "{0,78}",
+ "requirements": "{0,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "30000",
- "high_alchemy": "45000",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131162,12 +123740,10 @@
"bonuses": "133,113,120,0,0,18,21,21,0,0,0,0,0,0,0"
},
{
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "12,6,0",
@@ -131181,28 +123757,24 @@
"bonuses": "0,0,0,35,-10,63,45,74,35,0,60,0,0,0,0"
},
{
- "requirements": "{1,78}-{6,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "253230",
+ "durability": null,
"name": "Corrupt zuriel's robe top",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13933"
},
{
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "12,6,0",
@@ -131216,7 +123788,7 @@
"bonuses": "0,0,0,35,-10,63,45,74,35,0,60,0,0,0,0"
},
{
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
@@ -131233,7 +123805,7 @@
},
{
"destroy_message": "Drop",
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"grand_exchange_price": "121290",
@@ -131246,7 +123818,7 @@
"id": "13936"
},
{
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
@@ -131263,12 +123835,10 @@
},
{
"remove_head": "true",
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,3,0",
@@ -131281,29 +123851,25 @@
"bonuses": "0,0,0,8,-2,20,16,22,8,0,15,0,0,0,0"
},
{
- "requirements": "{1,78}-{6,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "43778",
+ "durability": null,
"name": "Corrupt zuriel's hood",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13939"
},
{
"remove_head": "true",
- "requirements": "{1,78}-{6,78}",
+ "requirements": "{1,20}-{6,20}",
"shop_price": "30000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "6,3,0",
@@ -131316,16 +123882,15 @@
"bonuses": "0,0,0,8,-2,20,16,22,8,0,15,0,0,0,0"
},
{
- "requirements": "{6,78}",
+ "requirements": "{6,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28000",
- "high_alchemy": "42000",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"attack_anims": "2555,0,0,0",
@@ -131338,32 +123903,29 @@
"bonuses": "13,-1,65,18,0,5,7,4,18,0,0,72,0,0,10"
},
{
- "requirements": "{6,78}",
+ "destroy_message": "Drop",
+ "requirements": "{6,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "28000",
- "high_alchemy": "42000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "219418",
+ "durability": null,
"name": "Corrupt zuriel's staff",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13942"
},
{
- "requirements": "{6,78}",
+ "requirements": "{6,20}",
"shop_price": "70000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28000",
- "high_alchemy": "42000",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "1",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131374,12 +123936,10 @@
"bonuses": "13,-1,65,18,0,5,7,4,18,0,0,72,0,0,10"
},
{
- "requirements": "{1,78}-{4,78}",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,12,6",
@@ -131393,28 +123953,24 @@
"bonuses": "0,0,0,-15,36,61,53,66,75,62,60,0,0,0,0"
},
{
- "requirements": "{1,78}-{4,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "387212",
+ "durability": null,
"name": "Corrupt morrigan's leather body",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13945"
},
{
- "requirements": "{1,78}-{4,78}",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,12,6",
@@ -131428,12 +123984,10 @@
"bonuses": "0,0,0,-15,36,61,53,66,75,62,60,0,0,0,0"
},
{
- "requirements": "{1,78}-{4,78}",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,8,4",
@@ -131446,28 +124000,24 @@
"bonuses": "0,0,0,-10,23,35,29,37,46,35,30,0,0,0,0"
},
{
- "requirements": "{1,78}-{4,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "125000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "84592",
+ "durability": null,
"name": "Corrupt morrigan's leather chaps",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13948"
},
{
- "requirements": "{1,78}-{4,78}",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "75000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "50000",
- "high_alchemy": "75000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,8,4",
@@ -131481,15 +124031,14 @@
},
{
"remove_head": "true",
- "requirements": "{1,78}-{4,78}",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2238",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "63502",
@@ -131499,32 +124048,29 @@
"bonuses": "0,0,0,-5,13,8,11,14,8,12,15,0,0,0,0"
},
{
- "requirements": "{1,78}-{4,78}",
+ "destroy_message": "Drop",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "63502",
+ "durability": null,
"name": "Corrupt morrigan's coif",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13951"
},
{
"remove_head": "true",
- "requirements": "{1,78}-{4,78}",
+ "requirements": "{1,20}-{4,20}",
"shop_price": "30000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "20000",
- "high_alchemy": "30000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,6,3",
+ "equip_audio": "2238",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "63502",
@@ -131534,16 +124080,15 @@
"bonuses": "0,0,0,-5,13,8,11,14,8,12,15,0,0,0,0"
},
{
- "requirements": "{4,78}",
+ "requirements": "{4,20}",
"shop_price": "1000",
"examine": "A vicious javelin.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131551,19 +124096,18 @@
"name": "Corrupt morrigan's javelin",
"archery_ticket_price": "0",
"id": "13953",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
- "requirements": "{4,78}",
+ "requirements": "{4,20}",
"shop_price": "10000",
"examine": "A vicious javelin.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131571,19 +124115,18 @@
"name": "C. morrigan's javelin (p)",
"archery_ticket_price": "0",
"id": "13954",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
- "requirements": "{4,78}",
+ "requirements": "{4,20}",
"shop_price": "10000",
"examine": "A vicious javelin.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131591,19 +124134,18 @@
"name": "C. morrigan's javelin (p+)",
"archery_ticket_price": "0",
"id": "13955",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
- "requirements": "{4,78}",
+ "requirements": "{4,20}",
"shop_price": "10000",
"examine": "A vicious javelin.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"destroy": "true",
"attack_speed": "6",
"weapon_interface": "18",
"absorb": "0,0,0",
+ "equip_audio": "2244",
"render_anim": "1381",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -131611,15 +124153,13 @@
"name": "C. morrigan's javelin (p++)",
"archery_ticket_price": "0",
"id": "13956",
- "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,105,0,0,0,0,0,0,0,0,0,145"
},
{
- "requirements": "{4,78}",
+ "requirements": "{4,20}",
"shop_price": "1000",
"examine": "A vicious throwing axe.",
"durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "18",
@@ -131630,15 +124170,13 @@
"name": "C. morrigan's throwing axe",
"archery_ticket_price": "0",
"id": "13957",
- "bonuses": "0,0,0,0,93,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,93,0,0,0,0,0,0,0,0,0,117"
},
{
- "requirements": "{0,78}-{4,78}",
+ "requirements": "{0,20}-{4,20}",
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28800",
- "high_alchemy": "43200",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,9",
@@ -131652,26 +124190,22 @@
"bonuses": "0,0,0,-15,0,81,93,98,-3,82,50,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "28800",
- "high_alchemy": "43200",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "168278",
+ "durability": null,
"name": "Corrupt dragon chainbody",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13959"
},
{
"shop_price": "72000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28800",
- "high_alchemy": "43200",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,9",
@@ -131689,11 +124223,10 @@
"shop_price": "60000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "14400",
- "high_alchemy": "21600",
"destroy": "true",
"attack_speed": "4",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "121835",
@@ -131703,18 +124236,16 @@
"bonuses": "0,0,0,-3,-1,33,35,32,-1,34,10,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "14400",
- "high_alchemy": "21600",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "121835",
+ "durability": null,
"name": "Corrupt dragon med helm",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13962"
},
{
@@ -131722,11 +124253,10 @@
"shop_price": "36000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "14400",
- "high_alchemy": "21600",
"destroy": "true",
"attack_speed": "4",
"absorb": "2,0,4",
+ "equip_audio": "2240",
"equipment_slot": "0",
"destroy_message": "Drop",
"grand_exchange_price": "121835",
@@ -131739,11 +124269,10 @@
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"absorb": "5,0,11",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "79703",
@@ -131753,29 +124282,26 @@
"bonuses": "0,0,0,-6,-2,50,52,48,0,50,50,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "79703",
+ "durability": null,
"name": "Corrupt dragon sq shield",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13965"
},
{
"shop_price": "72000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"absorb": "5,0,11",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "Drop",
"grand_exchange_price": "79703",
@@ -131788,8 +124314,6 @@
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
@@ -131802,26 +124326,22 @@
"bonuses": "0,0,0,-21,-7,68,66,63,-4,65,20,0,0,0,0"
},
{
+ "destroy_message": "Destroy",
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Destroy",
"grand_exchange_price": "71066",
+ "durability": null,
"name": "Corrupt dragon plateskirt",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13968"
},
{
"shop_price": "72000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
@@ -131837,11 +124357,10 @@
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
+ "equip_audio": "2242",
"equipment_slot": "7",
"destroy_message": "Drop",
"grand_exchange_price": "87957",
@@ -131851,29 +124370,26 @@
"bonuses": "0,0,0,-21,-7,68,66,63,-4,65,20,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "87957",
+ "durability": null,
"name": "Corrupt dragon platelegs",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13971"
},
{
"shop_price": "72000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
+ "equip_audio": "2242",
"equipment_slot": "7",
"destroy_message": "Drop",
"grand_exchange_price": "87957",
@@ -131887,19 +124403,19 @@
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28800",
- "high_alchemy": "43200",
"destroy": "true",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
"absorb": "0,0,0",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
- "attack_anims": "395,395,395,395",
+ "attack_anims": "395,395,401,395",
"destroy_message": "Drop",
"grand_exchange_price": "332229",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Corrupt dragon battleaxe",
"archery_ticket_price": "0",
"id": "13973",
@@ -131910,16 +124426,15 @@
"shop_price": "120000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28800",
- "high_alchemy": "43200",
"destroy": "true",
"weight": "2.7",
"attack_speed": "4",
"render_anim": "2586",
"defence_anim": "397",
- "attack_anims": "395,395,395,395",
+ "attack_anims": "395,395,401,395",
"destroy_message": "Drop",
"grand_exchange_price": "332229",
+ "attack_audios": "2498,2498,2497,2498",
"name": "Corrupt dragon battleaxe",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -131931,19 +124446,19 @@
"shop_price": "72000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "28800",
- "high_alchemy": "43200",
"destroy": "true",
"weight": "2.7",
"attack_speed": "6",
"weapon_interface": "2",
"absorb": "0,0,0",
+ "equip_audio": "2232",
"render_anim": "2586",
"defence_anim": "397",
"equipment_slot": "3",
- "attack_anims": "395,395,395,395",
+ "attack_anims": "395,395,401,395",
"destroy_message": "Drop",
"grand_exchange_price": "332229",
+ "attack_audios": "2498,2498,2497,2498",
"name": "C. dragon battleaxe (deg)",
"archery_ticket_price": "0",
"id": "13975",
@@ -131953,12 +124468,11 @@
"shop_price": "30000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "5",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "396,396,395,396",
@@ -131974,10 +124488,9 @@
"shop_price": "30000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
+ "equip_audio": "2248",
"defence_anim": "397",
"attack_anims": "396,396,395,396",
"destroy_message": "Drop",
@@ -131992,12 +124505,11 @@
"shop_price": "18000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "5",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "396,396,395,396",
@@ -132014,13 +124526,12 @@
"shop_price": "100000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"weight": "1.8",
"attack_speed": "4",
"weapon_interface": "6",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1928",
"defence_anim": "397",
"equipment_slot": "3",
@@ -132034,34 +124545,34 @@
"bonuses": "8,67,-2,0,0,0,1,0,0,0,0,66,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "338644",
+ "durability": null,
"name": "Corrupt dragon scimitar",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
- "id": "13980"
+ "attack_speed": "4",
+ "id": "13980",
+ "equip_audio": ""
},
{
"shop_price": "60000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "6",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1928",
"equipment_slot": "3",
+ "attack_anims": "390,390,381,390",
"destroy_message": "Drop",
"grand_exchange_price": "338644",
+ "attack_audios": "2500,0,2517,0",
"name": "C. dragon scimitar (deg)",
"archery_ticket_price": "0",
"id": "13981",
@@ -132073,13 +124584,12 @@
"ge_buy_limit": "10",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "5",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1582",
"defence_anim": "397",
"equipment_slot": "3",
@@ -132093,30 +124603,27 @@
"bonuses": "58,69,-2,0,0,0,3,2,1,0,0,71,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100000",
"examine": "This item degrades while worn, and will turn to dust.",
- "durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "207053",
+ "durability": null,
"name": "Corrupt dragon longsword",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "13983"
},
{
"shop_price": "60000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "40000",
- "high_alchemy": "60000",
"destroy": "true",
"attack_speed": "5",
"weapon_interface": "5",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1582",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -132131,18 +124638,18 @@
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
"absorb": "0,0,0",
+ "equip_audio": "2246",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
"destroy_message": "Drop",
"grand_exchange_price": "50096",
+ "attack_audios": "2508,2508,25092508",
"name": "Corrupt dragon mace",
"archery_ticket_price": "0",
"id": "13985",
@@ -132153,8 +124660,6 @@
"shop_price": "50000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"weight": "1.8",
"attack_speed": "4",
@@ -132162,6 +124667,7 @@
"attack_anims": "390,390,381,390",
"destroy_message": "Drop",
"grand_exchange_price": "50096",
+ "attack_audios": "2508,2508,25092508",
"name": "Corrupt dragon mace",
"tradeable": "true",
"archery_ticket_price": "0",
@@ -132172,18 +124678,18 @@
"shop_price": "30000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"weight": "1.8",
"attack_speed": "5",
"weapon_interface": "8",
"absorb": "0,0,0",
+ "equip_audio": "2246",
"defence_anim": "397",
"equipment_slot": "3",
"attack_anims": "390,390,381,390",
"destroy_message": "Drop",
"grand_exchange_price": "50096",
+ "attack_audios": "2508,2508,25092508",
"name": "Corrupt dragon mace (deg)",
"archery_ticket_price": "0",
"id": "13987",
@@ -132193,13 +124699,12 @@
"shop_price": "40000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "8800",
- "high_alchemy": "13200",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "2079",
"equipment_slot": "3",
@@ -132215,8 +124720,6 @@
"shop_price": "40000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "8800",
- "high_alchemy": "13200",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
@@ -132233,13 +124736,12 @@
"shop_price": "24000",
"examine": "This item degrades while worn, and will turn to dust.",
"durability": null,
- "low_alchemy": "8800",
- "high_alchemy": "13200",
"destroy": "true",
"attack_speed": "5",
"two_handed": "true",
"weapon_interface": "14",
"absorb": "0,0,0",
+ "equip_audio": "2247",
"render_anim": "28",
"defence_anim": "2079",
"equipment_slot": "3",
@@ -132252,26 +124754,22 @@
"bonuses": "55,55,55,0,0,5,5,5,5,5,0,60,0,0,0"
},
{
+ "destroy_message": "You can get another copy by searching bookshelves around 2009Scape.",
"shop_price": "5",
"examine": "A book about the Wilderness.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "You can get another copy by searching bookshelves around RuneScape.",
"name": "Pvp worlds manual",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14056",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
"shop_price": "25",
"examine": "A threat to dusty corners everywhere.",
"durability": null,
- "low_alchemy": "10",
- "high_alchemy": "15",
"destroy": "true",
"attack_speed": "4",
"weapon_interface": "8",
@@ -132285,19 +124783,18 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "If you drop the goulash, it will be destroyed. You can get some more by dipping a bowl into Maggie's cauldron.",
"shop_price": "2",
"examine": "What a curious and ghoulish smell!",
"durability": null,
- "high_alchemy": "1",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "3",
- "destroy_message": "If you drop the goulash, it will be destroyed. You can get some more by dipping a bowl into Maggie's cauldron.",
"name": "Goulash",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14058",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "3"
},
{
"destroy_message": "You can get another flask of magic unguent from the chest in Betty's basement.",
@@ -132477,8 +124974,6 @@
"shop_price": "15",
"examine": "The height of warlock fashion.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -132491,27 +124986,23 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You can get another set of warlock legs from Diango in Draynor Village.",
"shop_price": "15",
"examine": "Tattered but trendy.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You can get another set of warlock legs from Diango in Draynor Village.",
"name": "Warlock legs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14077",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
"shop_price": "15",
"examine": "The height of witchly fashion.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -132524,52 +125015,46 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You can get another witch top from Diango in Draynor.",
"shop_price": "15",
"examine": "Tattered but trendy.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You can get another witch top from Diango in Draynor.",
"name": "Witch skirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14079",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
- "shop_price": "15",
- "examine": "Ragged but rugged.",
- "durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "1",
"destroy_message": "You can get another witch cloak from Diango in Draynor.",
- "name": "Witch cloak",
- "archery_ticket_price": "0",
- "id": "14080",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
- },
- {
"shop_price": "15",
"examine": "Ragged but rugged.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
+ "name": "Witch cloak",
"destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "1",
- "destroy_message": "You can get another warlock cloak from Diango in Draynor Village.",
- "name": "Warlock cloak",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "id": "14080",
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "1"
+ },
+ {
+ "destroy_message": "You can get another warlock cloak from Diango in Draynor Village.",
+ "shop_price": "15",
+ "examine": "Ragged but rugged.",
+ "durability": null,
+ "name": "Warlock cloak",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14081",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
"destroy_message": "Drop",
@@ -132627,8 +125112,6 @@
"shop_price": "15",
"examine": "The height of witchly fashion.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -132641,39 +125124,34 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You can get another witch top from Diango in Draynor.",
"shop_price": "15",
"examine": "Tattered but trendy.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "7",
- "destroy_message": "You can get another witch top from Diango in Draynor.",
"name": "Witch skirt",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14087",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "7"
},
{
+ "destroy_message": "You can get another witch cloak from Diango in Draynor.",
"shop_price": "15",
"examine": "Ragged but rugged.",
"durability": null,
- "low_alchemy": "6",
- "high_alchemy": "9",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "1",
- "destroy_message": "You can get another witch cloak from Diango in Draynor.",
"name": "Witch cloak",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14088",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "1"
},
{
- "examine": "",
"durability": null,
"name": "Pet kitten",
"archery_ticket_price": "0",
@@ -132683,7 +125161,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
"name": "Pet cat",
"archery_ticket_price": "0",
@@ -132693,7 +125170,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
"name": "Lazy cat",
"archery_ticket_price": "0",
@@ -132703,7 +125179,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
"name": "Overgrown cat",
"archery_ticket_price": "0",
@@ -132713,7 +125188,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "examine": "",
"durability": null,
"name": "Wily cat",
"archery_ticket_price": "0",
@@ -132774,6 +125248,7 @@
"attack_speed": "4",
"weapon_interface": "5",
"absorb": "0,0,0",
+ "equip_audio": "2248",
"render_anim": "1629",
"equipment_slot": "3",
"destroy_message": "Drop",
@@ -132848,7 +125323,9 @@
"weapon_interface": "5",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Volatile clay butterfly net",
"archery_ticket_price": "0",
@@ -132859,11 +125336,10 @@
"shop_price": "21333",
"examine": "Your volatile tool wants to make some bows or arrows.",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "1",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Volatile clay fletching knife",
@@ -132891,7 +125367,6 @@
"examine": "Your volatile tool wants to make some leather armour.",
"durability": null,
"name": "Volatile clay needle",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -132965,7 +125440,9 @@
"weapon_interface": "5",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Sacred clay butterfly net",
"archery_ticket_price": "0",
@@ -132978,7 +125455,6 @@
"examine": "The sacred clay has transformed into a knife.",
"durability": null,
"name": "Sacred clay fletching knife",
- "high_alchemy": "1",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133108,6 +125584,7 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,3,1",
+ "equip_audio": "",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Sacred clay coif",
@@ -133142,6 +125619,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Pickaxe (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14122",
"bonuses": "10,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133169,6 +125647,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Pickaxe (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14124",
"bonuses": "15,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133196,6 +125675,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Pickaxe (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14126",
"bonuses": "20,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133223,6 +125703,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Pickaxe (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14128",
"bonuses": "25,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133250,6 +125731,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Pickaxe (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14130",
"bonuses": "30,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133277,6 +125759,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Hatchet (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14132",
"bonuses": "0,10,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133304,6 +125787,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Hatchet (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14134",
"bonuses": "0,15,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133331,6 +125815,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Hatchet (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14136",
"bonuses": "0,20,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133358,6 +125843,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Hatchet (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14138",
"bonuses": "0,25,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133385,6 +125871,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Hatchet (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14140",
"bonuses": "0,30,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133412,6 +125899,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Harpoon (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14142",
"bonuses": "10,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133439,6 +125927,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Harpoon (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14144",
"bonuses": "15,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133466,6 +125955,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Harpoon (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14146",
"bonuses": "20,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133493,6 +125983,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Harpoon (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14148",
"bonuses": "25,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133520,6 +126011,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Harpoon (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14150",
"bonuses": "30,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133545,9 +126037,12 @@
"weapon_interface": "14",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Butterfly net (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14152",
"bonuses": "0,0,10,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133573,9 +126068,12 @@
"weapon_interface": "14",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Butterfly net (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14154",
"bonuses": "0,0,15,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133601,9 +126099,12 @@
"weapon_interface": "14",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Butterfly net (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14156",
"bonuses": "0,0,20,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133629,9 +126130,12 @@
"weapon_interface": "14",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Butterfly net (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14158",
"bonuses": "0,0,25,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133657,9 +126161,12 @@
"weapon_interface": "14",
"absorb": "0,0,0",
"render_anim": "158",
+ "defence_anim": "403",
"equipment_slot": "3",
+ "attack_anims": "401,401,400,401",
"destroy_message": "Drop",
"name": "Butterfly net (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14160",
"bonuses": "0,0,30,0,0,0,0,0,0,0,0,0,0,0,0"
@@ -133682,6 +126189,7 @@
"examine": "The sacred clay has transformed into something bland, but edible.",
"durability": null,
"name": "Food (class 1)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133707,6 +126215,7 @@
"examine": "The sacred clay has transformed into something bland, but edible.",
"durability": null,
"name": "Food (class 2)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133732,6 +126241,7 @@
"examine": "The sacred clay has transformed into something bland, but edible.",
"durability": null,
"name": "Food (class 3)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133757,6 +126267,7 @@
"examine": "The sacred clay has transformed into something bland, but edible.",
"durability": null,
"name": "Food (class 4)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133782,6 +126293,7 @@
"examine": "The sacred clay has transformed into something bland, but edible.",
"durability": null,
"name": "Food (class 5)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133807,6 +126319,7 @@
"examine": "The clay has transformed into an expandable wall.",
"durability": null,
"name": "Barrier (class 1)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133832,6 +126345,7 @@
"examine": "The clay has transformed into an expandable wall.",
"durability": null,
"name": "Barrier (class 2)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133857,6 +126371,7 @@
"examine": "The clay has transformed into an expandable wall.",
"durability": null,
"name": "Barrier (class 3)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133882,6 +126397,7 @@
"examine": "The clay has transformed into an expandable wall.",
"durability": null,
"name": "Barrier (class 4)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133907,6 +126423,7 @@
"examine": "The clay has transformed into an expandable wall.",
"durability": null,
"name": "Barrier (class 5)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133932,6 +126449,7 @@
"examine": "Very low quality sacred clay.",
"durability": null,
"name": "Sacred clay (class 1)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133957,6 +126475,7 @@
"examine": "Low quality sacred clay.",
"durability": null,
"name": "Sacred clay (class 2)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -133982,6 +126501,7 @@
"examine": "Medium quality sacred clay.",
"durability": null,
"name": "Sacred clay (class 3)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -134007,6 +126527,7 @@
"examine": "High quality sacred clay.",
"durability": null,
"name": "Sacred clay (class 4)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -134032,6 +126553,7 @@
"examine": "Very high quality sacred clay.",
"durability": null,
"name": "Sacred clay (class 5)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -134063,6 +126585,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Bow (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14192",
"bonuses": "0,0,0,0,55,0,0,0,0,0,0,0,0,0,0"
@@ -134092,6 +126615,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Bow (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14194",
"bonuses": "0,0,0,0,90,0,0,0,0,0,0,0,0,0,0"
@@ -134121,6 +126645,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Bow (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14196",
"bonuses": "0,0,0,0,135,0,0,0,0,0,0,0,0,0,0"
@@ -134150,6 +126675,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Bow (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14198",
"bonuses": "0,0,0,0,180,0,0,0,0,0,0,0,0,0,0"
@@ -134179,6 +126705,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Bow (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14200",
"bonuses": "0,0,0,0,225,0,0,0,0,0,0,0,0,0,0"
@@ -134197,1313 +126724,1198 @@
"id": "14201"
},
{
- "destroy_message": "Drop",
"shop_price": "2",
"examine": "The Sacred Clay has transformed into a wood-like substance.",
"durability": null,
- "name": "Arrows (class 1)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14202",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,15",
- "equipment_slot": "13"
+ "equipment_slot": "13",
+ "destroy_message": "Drop",
+ "name": "Arrows (class 1)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14202",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,15"
},
{
- "destroy_message": "Drop",
"shop_price": "4",
"examine": "The Sacred Clay has transformed into a wood-like substance.",
"durability": null,
- "name": "Arrows (class 2)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14203",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,30",
- "equipment_slot": "13"
+ "equipment_slot": "13",
+ "destroy_message": "Drop",
+ "name": "Arrows (class 2)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14203",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,30"
},
{
- "destroy_message": "Drop",
"shop_price": "6",
"examine": "The Sacred Clay has transformed into a wood-like substance.",
"durability": null,
- "name": "Arrows (class 3)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14204",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,45",
- "equipment_slot": "13"
+ "equipment_slot": "13",
+ "destroy_message": "Drop",
+ "name": "Arrows (class 3)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14204",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,45"
},
{
- "destroy_message": "Drop",
"shop_price": "8",
"examine": "The Sacred Clay has transformed into a wood-like substance.",
"durability": null,
- "name": "Arrows (class 4)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14205",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60",
- "equipment_slot": "13"
+ "equipment_slot": "13",
+ "destroy_message": "Drop",
+ "name": "Arrows (class 4)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14205",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,60"
},
{
- "destroy_message": "Drop",
"shop_price": "10",
"examine": "The Sacred Clay has transformed into a wood-like substance.",
"durability": null,
- "name": "Arrows (class 5)",
- "destroy": "true",
- "archery_ticket_price": "0",
- "attack_speed": "4",
- "id": "14206",
- "absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75",
- "equipment_slot": "13"
- },
- {
- "shop_price": "150",
- "examine": "3 doses of Prayer restore potion.",
- "durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equipment_slot": "13",
"destroy_message": "Drop",
- "grand_exchange_price": "4",
- "name": "Prayer potion(5)",
+ "name": "Arrows (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
- "id": "14207",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "id": "14206",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,75"
},
{
"shop_price": "150",
"examine": "3 doses of Prayer restore potion.",
"durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
"destroy": "true",
"attack_speed": "4",
+ "absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Prayer potion(5)",
"tradeable": "true",
"archery_ticket_price": "0",
+ "id": "14207",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ },
+ {
+ "destroy_message": "Drop",
+ "shop_price": "150",
+ "examine": "3 doses of Prayer restore potion.",
+ "grand_exchange_price": "4",
+ "durability": null,
+ "name": "Prayer potion(5)",
+ "tradeable": "true",
+ "destroy": "true",
+ "archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14208"
},
{
"shop_price": "120",
"examine": "4 doses of Prayer restore potion.",
"durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Prayer potion(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14209",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of Prayer restore potion.",
- "durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Prayer potion(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14210"
},
{
"shop_price": "90",
"examine": "3 doses of Prayer restore potion.",
"durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Prayer potion(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14211",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of Prayer restore potion.",
- "durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Prayer potion(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14212"
},
{
"shop_price": "60",
"examine": "2 doses of Prayer restore potion.",
"durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Prayer potion(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14213",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of Prayer restore potion.",
- "durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Prayer potion(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14214"
},
{
"shop_price": "30",
"examine": "1 dose of Prayer restore potion.",
"durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Prayer potion(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14215",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of Prayer restore potion.",
- "durability": null,
- "low_alchemy": "61",
- "high_alchemy": "91",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Prayer potion(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14216"
},
{
"shop_price": "150",
"examine": "4 doses of energy potion.",
"durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Energy potion (5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14217",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "4 doses of energy potion.",
- "durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Energy potion (5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14218"
},
{
"shop_price": "120",
"examine": "4 doses of energy potion.",
"durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Energy potion (4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14219",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of energy potion.",
- "durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Energy potion (4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14220"
},
{
"shop_price": "90",
"examine": "3 doses of energy potion.",
"durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Energy potion (3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14221",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of energy potion.",
- "durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Energy potion (3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14222"
},
{
"shop_price": "60",
"examine": "2 doses of energy potion.",
"durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Energy potion (2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14223",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of energy potion.",
- "durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Energy potion (2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14224"
},
{
"shop_price": "30",
"examine": "1 dose of energy potion.",
"durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Energy potion (1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14225",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of energy potion.",
- "durability": null,
- "low_alchemy": "58",
- "high_alchemy": "87",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Energy potion (1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14226"
},
{
"shop_price": "150",
"examine": "5 doses of super Attack potion.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super attack(5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14227",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "5 doses of super Attack potion.",
- "durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super attack(5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14228"
},
{
"shop_price": "120",
"examine": "4 doses of super Attack potion.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super attack(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14229",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of super Attack potion.",
- "durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super attack(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14230"
},
{
"shop_price": "90",
"examine": "3 doses of super Attack potion.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super attack(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14231",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of super Attack potion.",
- "durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super attack(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14232"
},
{
"shop_price": "60",
"examine": "2 doses of super Attack potion.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super attack(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14233",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of super Attack potion.",
- "durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super attack(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14234"
},
{
"shop_price": "30",
"examine": "1 dose of super Attack potion.",
"durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super attack(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14235",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of super Attack potion.",
- "durability": null,
- "low_alchemy": "72",
- "high_alchemy": "108",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super attack(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14236"
},
{
"shop_price": "150",
"examine": "5 doses of super Strength potion.",
"durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super strength(5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14237",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "5 doses of super Strength potion.",
- "durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super strength(5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14238"
},
{
"shop_price": "120",
"examine": "4 doses of super Strength potion.",
"durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super strength(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14239",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of super Strength potion.",
- "durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super strength(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14240"
},
{
"shop_price": "90",
"examine": "3 doses of super Strength potion.",
"durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super strength(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14241",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of super Strength potion.",
- "durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super strength(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14242"
},
{
"shop_price": "60",
"examine": "2 doses of super Strength potion.",
"durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super strength(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14243",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of super Strength potion.",
- "durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super strength(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14244"
},
{
"shop_price": "30",
"examine": "1 dose of super Strength potion.",
"durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Super strength(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14245",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of super Strength potion.",
- "durability": null,
- "low_alchemy": "88",
- "high_alchemy": "132",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Super strength(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14246"
},
{
"shop_price": "150",
"examine": "4 doses of ranging potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Ranging potion(5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14247",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "5 doses of ranging potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Ranging potion(5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14248"
},
{
"shop_price": "120",
"examine": "4 doses of ranging potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Ranging potion(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14249",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of ranging potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Ranging potion(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14250"
},
{
"shop_price": "90",
"examine": "3 doses of ranging potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Ranging potion(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14251",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of ranging potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Ranging potion(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14252"
},
{
"shop_price": "60",
"examine": "2 doses of ranging potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Ranging potion(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14253",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of ranging potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Ranging potion(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14254"
},
{
"shop_price": "30",
"examine": "1 dose of ranging potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Ranging potion(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14255",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of ranging potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Ranging potion(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14256"
},
{
"shop_price": "150",
"examine": "3 doses of Defence Potion.",
"durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Defence potion(5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14257",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "3 doses of Defence Potion.",
- "durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Defence potion(5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14258"
},
{
"shop_price": "120",
"examine": "4 doses of Defence Potion.",
"durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Defence potion(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14259",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of Defence Potion.",
- "durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Defence potion(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14260"
},
{
"shop_price": "90",
"examine": "3 doses of Defence Potion.",
"durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Defence potion(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14261",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of Defence Potion.",
- "durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Defence potion(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14262"
},
{
"shop_price": "60",
"examine": "2 doses of Defence Potion.",
"durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Defence potion(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14263",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of Defence Potion.",
- "durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Defence potion(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14264"
},
{
"shop_price": "30",
"examine": "1 dose of Defence Potion.",
"durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Defence potion(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14265",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of Defence Potion.",
- "durability": null,
- "low_alchemy": "352",
- "high_alchemy": "528",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Defence potion(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14266"
},
{
"shop_price": "150",
"examine": "4 doses of Magic potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Magic potion(5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14267",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "5 doses of Magic potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Magic potion(5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14268"
},
{
"shop_price": "120",
"examine": "4 doses of Magic potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Magic potion(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14269",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of Magic potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Magic potion(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14270"
},
{
"shop_price": "90",
"examine": "3 doses of Magic potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Magic potion(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14271",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of Magic potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Magic potion(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14272"
},
{
"shop_price": "60",
"examine": "2 doses of Magic potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Magic potion(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14273",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of Magic potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Magic potion(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14274"
},
{
"shop_price": "30",
"examine": "1 dose of Magic potion.",
"durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Magic potion(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14275",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of Magic potion.",
- "durability": null,
- "low_alchemy": "224",
- "high_alchemy": "336",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Magic potion(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14276"
},
{
"shop_price": "150",
"examine": "3 doses of Summoning potion.",
"durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Summoning potion(5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14277",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "150",
"examine": "3 doses of Summoning potion.",
- "durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Summoning potion(5)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14278"
},
{
"shop_price": "120",
"examine": "4 doses of Summoning potion.",
"durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Summoning potion(4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14279",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "120",
"examine": "4 doses of Summoning potion.",
- "durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Summoning potion(4)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14280"
},
{
"shop_price": "90",
"examine": "3 doses of Summoning potion.",
"durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Summoning potion(3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14281",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "90",
"examine": "3 doses of Summoning potion.",
- "durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Summoning potion(3)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14282"
},
{
"shop_price": "60",
"examine": "2 doses of Summoning potion.",
"durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Summoning potion(2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14283",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "60",
"examine": "2 doses of Summoning potion.",
- "durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Summoning potion(2)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14284"
},
{
"shop_price": "30",
"examine": "1 dose of Summoning potion.",
"durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
"destroy_message": "Drop",
"grand_exchange_price": "4",
"name": "Summoning potion(1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14285",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30",
"examine": "1 dose of Summoning potion.",
- "durability": null,
- "low_alchemy": "76",
- "high_alchemy": "114",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4",
+ "durability": null,
"name": "Summoning potion(1)",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14286"
},
{
@@ -135520,6 +127932,7 @@
"destroy_message": "Drop",
"attack_audios": "2500,0,2517,0",
"name": "Scimitar (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14287",
"bonuses": "0,55,0,0,0,0,0,0,0,0,0,15,0,0,0"
@@ -135550,6 +127963,7 @@
"destroy_message": "Drop",
"attack_audios": "2500,0,2517,0",
"name": "Scimitar (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14289",
"bonuses": "0,90,0,0,0,0,0,0,0,0,0,30,0,0,0"
@@ -135580,6 +127994,7 @@
"destroy_message": "Drop",
"attack_audios": "2500,0,2517,0",
"name": "Scimitar (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14291",
"bonuses": "0,145,0,0,0,0,0,0,0,0,0,45,0,0,0"
@@ -135610,6 +128025,7 @@
"destroy_message": "Drop",
"attack_audios": "2500,0,2517,0",
"name": "Scimitar (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14293",
"bonuses": "0,180,0,0,0,0,0,0,0,0,0,60,0,0,0"
@@ -135640,6 +128056,7 @@
"destroy_message": "Drop",
"attack_audios": "2500,0,2517,0",
"name": "Scimitar (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14295",
"bonuses": "0,225,0,0,0,0,0,0,0,0,0,75,0,0,0"
@@ -135669,6 +128086,7 @@
"destroy_message": "Drop",
"attack_audios": "2517,2517,2500,2517",
"name": "Dagger (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14297",
"bonuses": "41,0,0,0,0,0,0,0,0,0,0,15,0,0,0"
@@ -135698,6 +128116,7 @@
"destroy_message": "Drop",
"attack_audios": "2517,2517,2500,2517",
"name": "Dagger (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14299",
"bonuses": "68,0,0,0,0,0,0,0,0,0,0,30,0,0,0"
@@ -135727,6 +128146,7 @@
"destroy_message": "Drop",
"attack_audios": "2517,2517,2500,2517",
"name": "Dagger (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14301",
"bonuses": "101,0,0,0,0,0,0,0,0,0,0,45,0,0,0"
@@ -135756,6 +128176,7 @@
"destroy_message": "Drop",
"attack_audios": "2517,2517,2500,2517",
"name": "Dagger (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14303",
"bonuses": "135,0,0,0,0,0,0,0,0,0,0,60,0,0,0"
@@ -135785,6 +128206,7 @@
"destroy_message": "Drop",
"attack_audios": "2517,2517,2500,2517",
"name": "Dagger (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14305",
"bonuses": "168,0,0,0,0,0,0,0,0,0,0,75,0,0,0"
@@ -135809,9 +128231,11 @@
"attack_speed": "6",
"weapon_interface": "10",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Warhammer (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14307",
"bonuses": "0,0,83,0,0,0,0,0,0,0,0,15,0,0,0"
@@ -135839,6 +128263,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Warhammer (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14309",
"bonuses": "0,0,135,0,0,0,0,0,0,0,0,30,0,0,0"
@@ -135866,6 +128291,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Warhammer (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14311",
"bonuses": "0,0,202,0,0,0,0,0,0,0,0,45,0,0,0"
@@ -135893,6 +128319,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Warhammer (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14313",
"bonuses": "0,0,270,0,0,0,0,0,0,0,0,60,0,0,0"
@@ -135920,6 +128347,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Warhammer (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14315",
"bonuses": "0,0,338,0,0,0,0,0,0,0,0,75,0,0,0"
@@ -135947,6 +128375,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Robe top (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14317",
"bonuses": "0,0,0,0,0,0,0,0,20,0,20,0,0,0,0"
@@ -135974,6 +128403,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Robe top (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14319",
"bonuses": "0,0,0,0,0,0,0,0,40,0,40,0,0,0,0"
@@ -136001,6 +128431,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Robe top (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14321",
"bonuses": "0,0,0,0,0,0,0,0,60,0,60,0,0,0,0"
@@ -136028,6 +128459,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Robe top (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14323",
"bonuses": "0,0,0,0,0,0,0,0,80,0,80,0,0,0,0"
@@ -136055,6 +128487,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Robe top (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14325",
"bonuses": "0,0,0,0,0,0,0,0,100,0,100,0,0,0,0"
@@ -136072,18 +128505,19 @@
"id": "14326"
},
{
- "destroy_message": "Drop",
"shop_price": "30",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Robe bottom (class 1)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14327",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,15,0,15,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Robe bottom (class 1)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14327",
+ "bonuses": "0,0,0,0,0,0,0,0,15,0,15,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136098,18 +128532,19 @@
"id": "14328"
},
{
- "destroy_message": "Drop",
"shop_price": "60",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Robe bottom (class 2)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14329",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,30,0,30,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Robe bottom (class 2)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14329",
+ "bonuses": "0,0,0,0,0,0,0,0,30,0,30,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136124,18 +128559,19 @@
"id": "14330"
},
{
- "destroy_message": "Drop",
"shop_price": "90",
"examine": "The sacred clay transformed into a light, cloth-like material.",
"durability": null,
- "name": "Robe bottom (class 3)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14331",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,45,0,45,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Robe bottom (class 3)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14331",
+ "bonuses": "0,0,0,0,0,0,0,0,45,0,45,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136150,18 +128586,19 @@
"id": "14332"
},
{
- "destroy_message": "Drop",
"shop_price": "120",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Robe bottom (class 4)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14333",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,60,0,60,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Robe bottom (class 4)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14333",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,60,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136176,18 +128613,19 @@
"id": "14334"
},
{
- "destroy_message": "Drop",
"shop_price": "150",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Robe bottom (class 5)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14335",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,75,0,75,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Robe bottom (class 5)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14335",
+ "bonuses": "0,0,0,0,0,0,0,0,75,0,75,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136202,18 +128640,19 @@
"id": "14336"
},
{
- "destroy_message": "Drop",
"shop_price": "30",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Hat (class 1)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14337",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,10,0,10,0,0,0,0",
- "equipment_slot": "0"
+ "equipment_slot": "0",
+ "destroy_message": "Drop",
+ "name": "Hat (class 1)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14337",
+ "bonuses": "0,0,0,0,0,0,0,0,10,0,10,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136228,18 +128667,19 @@
"id": "14338"
},
{
- "destroy_message": "Drop",
"shop_price": "60",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Hat (class 2)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14339",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,20,0,20,0,0,0,0",
- "equipment_slot": "0"
+ "equipment_slot": "0",
+ "destroy_message": "Drop",
+ "name": "Hat (class 2)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14339",
+ "bonuses": "0,0,0,0,0,0,0,0,20,0,20,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136254,18 +128694,19 @@
"id": "14340"
},
{
- "destroy_message": "Drop",
"shop_price": "90",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Hat (class 3)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14341",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,30,0,30,0,0,0,0",
- "equipment_slot": "0"
+ "equipment_slot": "0",
+ "destroy_message": "Drop",
+ "name": "Hat (class 3)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14341",
+ "bonuses": "0,0,0,0,0,0,0,0,30,0,30,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136280,18 +128721,19 @@
"id": "14342"
},
{
- "destroy_message": "Drop",
"shop_price": "120",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Hat (class 4)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14343",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,40,0,40,0,0,0,0",
- "equipment_slot": "0"
+ "equipment_slot": "0",
+ "destroy_message": "Drop",
+ "name": "Hat (class 4)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14343",
+ "bonuses": "0,0,0,0,0,0,0,0,40,0,40,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136306,18 +128748,19 @@
"id": "14344"
},
{
- "destroy_message": "Drop",
"shop_price": "150",
"examine": "The sacred clay has transformed into a light, cloth-like material.",
"durability": null,
- "name": "Hat (class 5)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14345",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,0,0,0,50,0,50,0,0,0,0",
- "equipment_slot": "0"
+ "equipment_slot": "0",
+ "destroy_message": "Drop",
+ "name": "Hat (class 5)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14345",
+ "bonuses": "0,0,0,0,0,0,0,0,50,0,50,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136342,6 +128785,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Platebody (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14347",
"bonuses": "0,0,0,-30,-10,20,20,20,-10,10,20,0,0,0,0"
@@ -136369,6 +128813,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Platebody (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14349",
"bonuses": "0,0,0,-30,-10,40,40,40,-10,20,40,0,0,0,0"
@@ -136396,6 +128841,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Platebody (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14351",
"bonuses": "0,0,0,-30,-10,60,60,60,-10,30,60,0,0,0,0"
@@ -136423,6 +128869,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Platebody (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14353",
"bonuses": "0,0,0,-30,-10,80,80,80,-10,40,80,0,0,0,0"
@@ -136450,6 +128897,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Platebody (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14355",
"bonuses": "0,0,0,-30,-10,100,100,100,-10,50,100,0,0,0,0"
@@ -136467,18 +128915,19 @@
"id": "14356"
},
{
- "destroy_message": "Drop",
"shop_price": "30",
"examine": "The sacred clay has transformed into a hard, metallic substance.",
"durability": null,
- "name": "Platelegs (class 1)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14357",
"absorb": "0,0,0",
- "bonuses": "0,0,0,-30,-10,15,15,15,-10,7,15,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Platelegs (class 1)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14357",
+ "bonuses": "0,0,0,-30,-10,15,15,15,-10,7,15,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136493,18 +128942,19 @@
"id": "14358"
},
{
- "destroy_message": "Drop",
"shop_price": "60",
"examine": "The sacred clay has transformed into a hard, metallic substance.",
"durability": null,
- "name": "Platelegs (class 2)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14359",
"absorb": "0,0,0",
- "bonuses": "0,0,0,-30,-10,30,30,30,-10,15,30,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Platelegs (class 2)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14359",
+ "bonuses": "0,0,0,-30,-10,30,30,30,-10,15,30,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136519,18 +128969,19 @@
"id": "14360"
},
{
- "destroy_message": "Drop",
"shop_price": "90",
"examine": "The sacred clay has transformed into a hard, metallic substance.",
"durability": null,
- "name": "Platelegs (class 3)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14361",
"absorb": "0,0,0",
- "bonuses": "0,0,0,-30,-10,45,45,45,-10,23,45,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Platelegs (class 3)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14361",
+ "bonuses": "0,0,0,-30,-10,45,45,45,-10,23,45,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136545,18 +128996,19 @@
"id": "14362"
},
{
- "destroy_message": "Drop",
"shop_price": "120",
"examine": "The sacred clay has transformed into a hard, metallic substance.",
"durability": null,
- "name": "Platelegs (class 4)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14363",
"absorb": "0,0,0",
- "bonuses": "0,0,0,-30,-10,60,60,60,-10,30,60,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Platelegs (class 4)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14363",
+ "bonuses": "0,0,0,-30,-10,60,60,60,-10,30,60,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136571,18 +129023,19 @@
"id": "14364"
},
{
- "destroy_message": "Drop",
"shop_price": "150",
"examine": "The sacred clay has transformed into a hard, metallic substance.",
"durability": null,
- "name": "Platelegs (class 5)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14365",
"absorb": "0,0,0",
- "bonuses": "0,0,0,-30,-10,75,75,75,-10,37,75,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Platelegs (class 5)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14365",
+ "bonuses": "0,0,0,-30,-10,75,75,75,-10,37,75,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -136607,6 +129060,7 @@
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Helm (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14367",
"bonuses": "0,0,0,-30,-10,10,10,10,-10,5,10,0,0,0,0"
@@ -136634,6 +129088,7 @@
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Helm (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14369",
"bonuses": "0,0,0,-30,-10,20,20,20,-10,10,20,0,0,0,0"
@@ -136661,6 +129116,7 @@
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Helm (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14371",
"bonuses": "0,0,0,-30,-10,30,30,30,-10,15,30,0,0,0,0"
@@ -136688,6 +129144,7 @@
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Helm (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14373",
"bonuses": "0,0,0,-30,-10,40,40,40,-10,20,40,0,0,0,0"
@@ -136715,6 +129172,7 @@
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Helm (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14375",
"bonuses": "0,0,0,-30,-10,50,50,50,-10,25,50,0,0,0,0"
@@ -136743,6 +129201,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Staff (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14377",
"bonuses": "0,0,0,55,0,0,0,0,0,0,0,0,0,0,0"
@@ -136771,6 +129230,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Staff (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14379",
"bonuses": "0,0,0,90,0,0,0,0,0,0,0,0,0,0,0"
@@ -136799,6 +129259,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Staff (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14381",
"bonuses": "0,0,0,135,0,0,0,0,0,0,0,0,0,0,0"
@@ -136827,6 +129288,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Staff (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14383",
"bonuses": "0,0,0,180,0,0,0,0,0,0,0,0,0,0,0"
@@ -136855,6 +129317,7 @@
"equipment_slot": "3",
"destroy_message": "Drop",
"name": "Staff (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14385",
"bonuses": "0,0,0,225,0,0,0,0,0,0,0,0,0,0,0"
@@ -136902,6 +129365,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Leather body (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14391",
"bonuses": "0,0,0,0,0,10,10,10,10,20,20,0,0,0,0"
@@ -136929,6 +129393,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Leather body (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14393",
"bonuses": "0,0,0,0,0,20,20,20,20,40,40,0,0,0,0"
@@ -136956,6 +129421,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Leather body (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14395",
"bonuses": "0,0,0,0,0,30,30,30,30,60,60,0,0,0,0"
@@ -136983,6 +129449,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Leather body (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14397",
"bonuses": "0,0,0,0,0,40,40,40,40,80,80,0,0,0,0"
@@ -137010,6 +129477,7 @@
"destroy_message": "Drop",
"remove_sleeves": "true",
"name": "Leather body (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14399",
"bonuses": "0,0,0,0,0,50,50,50,50,100,100,0,0,0,0"
@@ -137027,18 +129495,19 @@
"id": "14400"
},
{
- "destroy_message": "Drop",
"shop_price": "30",
"examine": "The sacred clay transformed into a flexible mesh.",
"durability": null,
- "name": "Chaps (class 1)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14401",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,7,7,7,0,15,15,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Chaps (class 1)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14401",
+ "bonuses": "0,0,0,0,0,7,7,7,0,15,15,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -137053,18 +129522,19 @@
"id": "14402"
},
{
- "destroy_message": "Drop",
"shop_price": "60",
"examine": "The sacred clay transformed into a flexible mesh.",
"durability": null,
- "name": "Chaps (class 2)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14403",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,15,15,15,0,30,30,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Chaps (class 2)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14403",
+ "bonuses": "0,0,0,0,0,15,15,15,0,30,30,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -137079,18 +129549,19 @@
"id": "14404"
},
{
- "destroy_message": "Drop",
"shop_price": "90",
"examine": "The sacred clay transformed into a flexible mesh.",
"durability": null,
- "name": "Chaps (class 3)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14405",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,23,23,23,0,45,45,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Chaps (class 3)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14405",
+ "bonuses": "0,0,0,0,0,23,23,23,0,45,45,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -137105,18 +129576,19 @@
"id": "14406"
},
{
- "destroy_message": "Drop",
"shop_price": "120",
"examine": "The sacred clay transformed into a flexible mesh.",
"durability": null,
- "name": "Chaps (class 4)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14407",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,30,30,30,0,60,60,0,0,1,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Chaps (class 4)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14407",
+ "bonuses": "0,0,0,0,0,30,30,30,0,60,60,0,0,1,0"
},
{
"destroy_message": "Drop",
@@ -137131,18 +129603,19 @@
"id": "14408"
},
{
- "destroy_message": "Drop",
"shop_price": "150",
"examine": "The sacred clay transformed into a flexible mesh.",
"durability": null,
- "name": "Chaps (class 5)",
"destroy": "true",
- "archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14409",
"absorb": "0,0,0",
- "bonuses": "0,0,0,0,0,37,37,37,0,75,75,0,0,0,0",
- "equipment_slot": "7"
+ "equipment_slot": "7",
+ "destroy_message": "Drop",
+ "name": "Chaps (class 5)",
+ "tradeable": "true",
+ "archery_ticket_price": "0",
+ "id": "14409",
+ "bonuses": "0,0,0,0,0,37,37,37,0,75,75,0,0,0,0"
},
{
"destroy_message": "Drop",
@@ -137164,9 +129637,11 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Coif (class 1)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14411",
"bonuses": "0,0,0,0,0,5,5,5,0,10,10,0,0,0,0"
@@ -137181,7 +129656,8 @@
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
- "id": "14412"
+ "id": "14412",
+ "equip_audio": ""
},
{
"remove_head": "true",
@@ -137191,9 +129667,11 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Coif (class 2)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14413",
"bonuses": "0,0,0,0,0,10,10,10,0,20,20,0,0,0,0"
@@ -137218,9 +129696,11 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Coif (class 3)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14415",
"bonuses": "0,0,0,0,0,15,15,15,0,30,30,0,0,0,0"
@@ -137245,9 +129725,11 @@
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "",
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Coif (class 4)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14417",
"bonuses": "0,0,0,0,0,20,20,20,0,40,40,0,0,0,0"
@@ -137275,6 +129757,7 @@
"equipment_slot": "0",
"destroy_message": "Drop",
"name": "Coif (class 5)",
+ "tradeable": "true",
"archery_ticket_price": "0",
"id": "14419",
"bonuses": "0,0,0,0,0,25,25,25,0,50,50,0,0,0,0"
@@ -137295,6 +129778,7 @@
"shop_price": "30",
"durability": null,
"name": "Clay deposit scroll",
+ "tradeable": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
"id": "14421",
@@ -137307,6 +129791,7 @@
"examine": "This scroll will make your familiar deposit its items at your base.",
"durability": null,
"name": "Sacred clay pouch (class 1)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -137332,6 +129817,7 @@
"examine": "This scroll will make your familiar deposit its items at your base.",
"durability": null,
"name": "Sacred clay pouch (class 2)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -137357,6 +129843,7 @@
"examine": "This scroll will make your familiar deposit its items at your base.",
"durability": null,
"name": "Sacred clay pouch (class 3)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -137382,6 +129869,7 @@
"examine": "This scroll will make your familiar deposit its items at your base.",
"durability": null,
"name": "Sacred clay pouch (class 4)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -137407,6 +129895,7 @@
"examine": "This scroll will make your familiar deposit its items at your base.",
"durability": null,
"name": "Sacred clay pouch (class 5)",
+ "tradeable": "true",
"destroy": "true",
"archery_ticket_price": "0",
"attack_speed": "4",
@@ -137436,18 +129925,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "5",
"examine": "A vine flower grown through magical means.",
"durability": null,
- "low_alchemy": "2",
- "high_alchemy": "3",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Vine flower",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14458",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -137463,20 +129950,18 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "You got these clothes from a washerman who lives near the Khazard battle arena.",
"shop_price": "10",
"examine": "Some dirty clothes that apparently belong to Movario.",
"durability": null,
- "low_alchemy": "4",
- "high_alchemy": "6",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "3",
- "destroy_message": "You got these clothes from a washerman who lives near the Khazard battle arena.",
"name": "Dirty laundry",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14460",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "3"
},
{
"destroy_message": "You found this basket in Movario's base.",
@@ -137615,8 +130100,6 @@
"examine": "A badly damaged lump of dragon metal.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -137629,18 +130112,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30000",
"examine": "A badly damaged lump of dragon metal.",
- "durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "955683",
+ "durability": null,
"name": "Ruined dragon armour lump",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14473"
},
{
@@ -137648,8 +130129,6 @@
"examine": "A badly damaged slice of dragon metal.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -137662,18 +130141,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30000",
"examine": "A badly damaged slice of dragon metal.",
- "durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1761141",
+ "durability": null,
"name": "Ruined dragon armour slice",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14475"
},
{
@@ -137681,8 +130158,6 @@
"examine": "A badly damaged shard of dragon metal.",
"durability": null,
"rare_item": "true",
- "low_alchemy": "12000",
- "high_alchemy": "18000",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -137695,18 +130170,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "30000",
"examine": "A badly damaged shard of dragon metal.",
- "durability": null,
- "low_alchemy": "12000",
- "high_alchemy": "18000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "1090493",
+ "durability": null,
"name": "Ruined dragon armour shard",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14477"
},
{
@@ -137727,11 +130200,10 @@
"shop_price": "1760000",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "704000",
- "high_alchemy": "1056000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,9",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"destroy_message": "Drop",
@@ -137744,29 +130216,26 @@
"bonuses": "0,0,0,-30,0,109,107,97,-6,106,50,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "1760000",
"examine": "Provides excellent protection.",
- "durability": null,
- "low_alchemy": "704000",
- "high_alchemy": "1056000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "4453643",
+ "durability": null,
"name": "Dragon platebody",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14480"
},
{
"requirements": "{1,60}",
"examine": "Provides excellent protection.",
"durability": null,
- "low_alchemy": "704000",
- "high_alchemy": "1056000",
"destroy": "true",
"attack_speed": "4",
"absorb": "4,0,9",
+ "equip_audio": "",
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "4453643",
@@ -137779,7 +130248,6 @@
"examine": "A set of fighting claws.",
"has_special": "true",
"rare_item": "true",
- "low_alchemy": "27000",
"attack_speed": "4",
"two_handed": "true",
"absorb": "0,0,0",
@@ -137795,28 +130263,26 @@
"requirements": "{0,60}",
"shop_price": "67500",
"durability": null,
- "high_alchemy": "40500",
"destroy": "true",
"weapon_interface": "9",
"equip_audio": "1003",
"render_anim": "2583",
"lendable": "true",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Dragon claws"
},
{
+ "destroy_message": "Drop",
"shop_price": "67500",
"examine": "A set of fighting claws.",
- "durability": null,
- "low_alchemy": "27000",
- "high_alchemy": "40500",
- "destroy": "true",
- "attack_speed": "4",
- "two_handed": "true",
- "destroy_message": "Drop",
"grand_exchange_price": "1472441",
+ "durability": null,
"name": "Dragon claws",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
+ "two_handed": "true",
"id": "14485"
},
{
@@ -137824,8 +130290,6 @@
"examine": "A set of fighting claws.",
"has_special": "true",
"durability": null,
- "low_alchemy": "27000",
- "high_alchemy": "40500",
"destroy": "true",
"attack_speed": "4",
"two_handed": "true",
@@ -137835,6 +130299,7 @@
"lendable": "true",
"destroy_message": "Drop",
"grand_exchange_price": "1472441",
+ "attack_audios": "2548,2548,2548,2548",
"name": "Dragon claws",
"archery_ticket_price": "0",
"id": "14486",
@@ -137881,11 +130346,10 @@
"shop_price": "65000",
"examine": "These look pretty heavy, but very elite.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
"destroy": "true",
"attack_speed": "4",
"absorb": "2,0,4",
+ "equip_audio": "2242",
"equipment_slot": "7",
"lendable": "true",
"destroy_message": "Drop",
@@ -137897,18 +130361,16 @@
"bonuses": "0,0,0,-14,-6,52,50,25,-1,49,15,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "65000",
"examine": "These look pretty heavy, but very elite.",
- "durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "41559",
+ "durability": null,
"name": "Elite black platelegs",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14491"
},
{
@@ -137916,11 +130378,10 @@
"shop_price": "64000",
"examine": "Provides excellent protection, and is elite.",
"durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
"destroy": "true",
"attack_speed": "4",
"absorb": "3,0,6",
+ "equip_audio": "2239",
"equipment_slot": "4",
"lendable": "true",
"destroy_message": "Drop",
@@ -137933,18 +130394,16 @@
"bonuses": "0,0,0,-20,-8,80,85,40,-2,80,40,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "64000",
"examine": "Provides excellent protection, and is elite.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "38275",
+ "durability": null,
"name": "Elite black platebody",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14493"
},
{
@@ -137953,8 +130412,6 @@
"shop_price": "35200",
"examine": "A full face helmet, and elite.",
"durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
"destroy": "true",
"attack_speed": "4",
"absorb": "1,0,3",
@@ -137970,18 +130427,16 @@
"bonuses": "0,0,0,-4,-2,31,33,15,0,30,7,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "35200",
"examine": "A full face helmet, and elite.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "30542",
+ "durability": null,
"name": "Elite black full helm",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14495"
},
{
@@ -138001,13 +130456,10 @@
"shop_price": "120000",
"examine": "A robe worn by members of the Dagon'hai.",
"durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
"destroy": "false",
"attack_speed": "4",
"absorb": "3,1,0",
"equipment_slot": "4",
- "destroy_message": "",
"remove_sleeves": "true",
"grand_exchange_price": "71098",
"name": "Dagon'hai robe top",
@@ -138019,16 +130471,13 @@
{
"shop_price": "120000",
"examine": "A robe worn by members of the Dagon'hai.",
- "durability": null,
- "low_alchemy": "48000",
- "high_alchemy": "72000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "",
"grand_exchange_price": "71098",
+ "durability": null,
"name": "Dagon'hai robe top",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14498"
},
{
@@ -138036,13 +130485,10 @@
"shop_price": "15000",
"examine": "A hat worn by members of the Dagon'hai.",
"durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
"destroy": "false",
"attack_speed": "4",
"absorb": "1,0,0",
"equipment_slot": "0",
- "destroy_message": "",
"grand_exchange_price": "9580",
"name": "Dagon'hai hat",
"tradeable": "true",
@@ -138053,16 +130499,13 @@
{
"shop_price": "15000",
"examine": "A hat worn by members of the Dagon'hai.",
- "durability": null,
- "low_alchemy": "6000",
- "high_alchemy": "9000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "",
"grand_exchange_price": "9580",
+ "durability": null,
"name": "Dagon'hai hat",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14500"
},
{
@@ -138070,13 +130513,10 @@
"shop_price": "80000",
"examine": "A robe worn by members of the Dagon'hai.",
"durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
"destroy": "false",
"attack_speed": "4",
"absorb": "2,1,0",
"equipment_slot": "7",
- "destroy_message": "",
"grand_exchange_price": "45691",
"name": "Dagon'hai robe bottom",
"tradeable": "true",
@@ -138087,16 +130527,13 @@
{
"shop_price": "80000",
"examine": "A robe worn by members of the Dagon'hai.",
- "durability": null,
- "low_alchemy": "32000",
- "high_alchemy": "48000",
- "destroy": "false",
- "attack_speed": "4",
- "destroy_message": "",
"grand_exchange_price": "45691",
+ "durability": null,
"name": "Dagon'hai robe bottom",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14502"
},
{
@@ -138338,20 +130775,18 @@
{
"shop_price": "20",
"examine": "Grand Exchange set containing a hat, top and bottoms.",
- "durability": null,
- "destroy": "false",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "",
"grand_exchange_price": "193541",
+ "durability": null,
"name": "Dagon'hai robes set",
"tradeable": "true",
+ "destroy": "false",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14525",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"shop_price": "20",
"examine": "Grand Exchange set containing a hat, top and bottoms.",
"grand_exchange_price": "193541",
@@ -138448,7 +130883,6 @@
"id": "14532"
},
{
- "examine": "",
"durability": null,
"name": "Broav",
"archery_ticket_price": "0",
@@ -138458,7 +130892,7 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "You gained this orb from Dark Squall's base. You can probably get another one from visiting the same place.",
+ "destroy_message": "You can make another by casting the Charge Air Orb spell on the Abyssal Rift in the center of the Abyss.",
"examine": "This orb can used to teleport people...somehow.",
"durability": null,
"name": "Strange teleorb",
@@ -138483,7 +130917,6 @@
},
{
"destroy_message": "You will lose all food stored in the Cornucopia. You can get another empty one from Diango in Draynor Village.",
- "examine": "",
"durability": null,
"name": "Cornucopia",
"destroy": "true",
@@ -138495,7 +130928,6 @@
},
{
"destroy_message": "You will lose all food stored in the Cornucopia. You can get another empty one from Diango in Draynor Village.",
- "examine": "",
"durability": null,
"name": "Cornucopia",
"destroy": "true",
@@ -138506,33 +130938,28 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "shop_price": "9",
- "examine": "",
- "durability": null,
- "low_alchemy": "3",
- "high_alchemy": "5",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
"destroy_message": "Drop",
+ "shop_price": "9",
+ "durability": null,
"name": "Raw turkey",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14539",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "4",
"examine": "Mmm, this looks tasty.",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Cooked turkey",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14540",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -138546,33 +130973,29 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "9",
"examine": "I need to cook this first.",
"durability": null,
- "low_alchemy": "3",
- "high_alchemy": "5",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Raw turkey drumstick",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14542",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "4",
"examine": "Mmm, this looks tasty.",
"durability": null,
- "low_alchemy": "1",
- "high_alchemy": "2",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "destroy_message": "Drop",
"name": "Cooked turkey drumstick",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14543",
+ "absorb": "0,0,0",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
@@ -138587,7 +131010,6 @@
},
{
"destroy_message": "You will lose all food stored in the Cornucopia. You can get another empty one from Diango in Draynor Village.",
- "examine": "",
"durability": null,
"name": "Cornucopia",
"destroy": "true",
@@ -138598,7 +131020,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "Not-so-sturdy boots for northern winters.",
"durability": null,
"name": "Fremennik sea boots 1",
@@ -138608,6 +131029,7 @@
"id": "14571",
"absorb": "0,0,0",
"bonuses": "0,0,0,-3,-1,2,3,4,0,0,0,0,0,0,0",
+ "equip_audio": "2237",
"equipment_slot": "10"
},
{
@@ -138621,10 +131043,10 @@
"id": "14572",
"absorb": "0,0,0",
"bonuses": "0,0,0,-3,-1,8,9,10,0,0,8,0,0,0,0",
+ "equip_audio": "2237",
"equipment_slot": "10"
},
{
- "destroy_message": "",
"examine": "Very sturdy boots for northern winters.",
"durability": null,
"name": "Fremennik sea boots 3",
@@ -138634,10 +131056,10 @@
"id": "14573",
"absorb": "0,0,0",
"bonuses": "0,0,0,-3,-1,10,11,12,0,0,9,1,0,0,0",
+ "equip_audio": "2237",
"equipment_slot": "10"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -138650,7 +131072,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -138663,7 +131084,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -138679,11 +131099,10 @@
"shop_price": "100",
"examine": "A buckler shield from Falador.",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "You will be able to get a replacement shield from Redbeard the Pirate in Port Sarim.",
"name": "Falador shield 1",
@@ -138695,11 +131114,10 @@
"shop_price": "200",
"examine": "A kiteshield from Falador.",
"durability": null,
- "low_alchemy": "80",
- "high_alchemy": "120",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "You will be able to get a replacement shield from the chemist in Rimmington.",
"name": "Falador shield 2",
@@ -138711,11 +131129,10 @@
"shop_price": "300",
"examine": "A tower shield from Falador.",
"durability": null,
- "low_alchemy": "120",
- "high_alchemy": "180",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
+ "equip_audio": "2245",
"equipment_slot": "5",
"destroy_message": "You will be able to get a replacement shield from Sir Vyvin's squire in the White Knights' Castle.",
"name": "Falador shield 3",
@@ -138724,7 +131141,6 @@
"bonuses": "0,0,0,-8,-2,27,31,29,-1,29,30,0,7,0,0"
},
{
- "destroy_message": "",
"shop_price": "1000",
"examine": "I wonder what happens if I rub it.",
"durability": null,
@@ -138738,7 +131154,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"shop_price": "5000",
"examine": "I wonder what happens if I rub it.",
"durability": null,
@@ -138752,7 +131167,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"shop_price": "10000",
"examine": "I wonder what happens if I rub it.",
"durability": null,
@@ -138795,8 +131209,6 @@
"examine": "A white lily seed - plant in a flower patch.",
"durability": null,
"name": "White lily seed",
- "low_alchemy": "500",
- "high_alchemy": "750",
"archery_ticket_price": "0",
"attack_speed": "4",
"id": "14589",
@@ -138804,83 +131216,73 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "shop_price": "1000",
- "examine": "This will teleport me to Rellekka when I play it. ",
- "durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "0,0,0",
- "equipment_slot": "3",
"destroy_message": "Drop",
+ "shop_price": "1000",
+ "examine": "This will teleport me to Rellekka when I play it.",
+ "durability": null,
"name": "Enchanted lyre(5)",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14590",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
- },
- {
- "shop_price": "1000",
- "examine": "This will teleport me to Rellekka when I play it. ",
- "durability": null,
- "low_alchemy": "400",
- "high_alchemy": "600",
- "destroy": "true",
- "attack_speed": "4",
"absorb": "0,0,0",
- "equipment_slot": "3",
- "destroy_message": "Drop",
- "name": "Enchanted lyre(6)",
- "archery_ticket_price": "0",
- "id": "14591",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "3"
},
{
- "examine": "These look pretty heavy, but very elite.",
+ "destroy_message": "Drop",
+ "shop_price": "1000",
+ "examine": "This will teleport me to Rellekka when I play it.",
"durability": null,
- "low_alchemy": "26000",
- "high_alchemy": "39000",
+ "name": "Enchanted lyre(6)",
"destroy": "true",
+ "archery_ticket_price": "0",
"attack_speed": "4",
- "absorb": "2,0,4",
+ "id": "14591",
+ "absorb": "0,0,0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "equipment_slot": "3"
+ },
+ {
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "These look pretty heavy, but very elite.",
"grand_exchange_price": "41559",
+ "durability": null,
"name": "Elite black platelegs",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14592",
+ "absorb": "2,0,4",
"bonuses": "0,0,0,-14,-6,52,50,25,-1,49,15,0,0,0,0"
},
{
- "examine": "Provides excellent protection, and is elite.",
- "durability": null,
- "low_alchemy": "25600",
- "high_alchemy": "38400",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "3,0,6",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "Provides excellent protection, and is elite.",
"grand_exchange_price": "38275",
+ "durability": null,
"name": "Elite black platebody",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14593",
+ "absorb": "3,0,6",
"bonuses": "0,0,0,-20,-8,80,85,40,-2,80,40,0,0,0,0"
},
{
- "examine": "A full face helmet, and elite.",
- "durability": null,
- "low_alchemy": "14080",
- "high_alchemy": "21120",
- "destroy": "true",
- "attack_speed": "4",
- "absorb": "1,0,3",
"lendable": "true",
"destroy_message": "Drop",
+ "examine": "A full face helmet, and elite.",
"grand_exchange_price": "30542",
+ "durability": null,
"name": "Elite black full helm",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14594",
+ "absorb": "1,0,3",
"bonuses": "0,0,0,-4,-2,31,33,15,0,30,7,0,0,0,0"
},
{
@@ -138898,7 +131300,6 @@
"equipment_slot": "4"
},
{
- "destroy_message": "",
"examine": "A spikey amulet made of ice crystals. It has been enchanted so it will not melt.",
"durability": null,
"name": "Ice amulet",
@@ -138913,7 +131314,6 @@
{
"destroy_message": "You can probably get more in the last room of the yeti cave, in the Land of Snow.",
"shop_price": "1",
- "examine": "",
"durability": null,
"name": "Stones",
"destroy": "true",
@@ -138937,7 +131337,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "A spikey amulet made of ice crystals. It has been enchanted so it will not melt.",
"durability": null,
"name": "Ice amulet",
@@ -139153,8 +131552,6 @@
"shop_price": "100",
"examine": "A feather from a phoenix. Used in Summoning (72).",
"durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -139167,18 +131564,16 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
+ "destroy_message": "Drop",
"shop_price": "100",
"examine": "A feather from a phoenix. Used in Summoning (72).",
- "durability": null,
- "low_alchemy": "40",
- "high_alchemy": "60",
- "destroy": "true",
- "attack_speed": "4",
- "destroy_message": "Drop",
"grand_exchange_price": "3431",
+ "durability": null,
"name": "Phoenix quill",
"tradeable": "true",
+ "destroy": "true",
"archery_ticket_price": "0",
+ "attack_speed": "4",
"id": "14617"
},
{
@@ -139303,7 +131698,6 @@
"examine": "This used to belong to King Arthur and has since been improved.",
"walk_anim": "819",
"has_special": "true",
- "low_alchemy": "80",
"turn90ccw_anim": "822",
"attack_speed": "5",
"turn180_anim": "820",
@@ -139321,7 +131715,6 @@
"requirements": "{0,30}",
"shop_price": "200",
"durability": null,
- "high_alchemy": "120",
"destroy": "true",
"weapon_interface": "6",
"render_anim": "1",
@@ -139329,7 +131722,6 @@
"name": "Enhanced excalibur"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -139342,7 +131734,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -139355,7 +131746,6 @@
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0"
},
{
- "destroy_message": "",
"examine": "I wonder what happens if I rub it.",
"durability": null,
"name": "Antique lamp",
@@ -139372,8 +131762,6 @@
"shop_price": "650",
"examine": "You don't want to wear it inside-out.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -139390,8 +131778,6 @@
"shop_price": "650",
"examine": "You don't want to wear it inside-out.",
"durability": null,
- "low_alchemy": "260",
- "high_alchemy": "390",
"destroy": "true",
"attack_speed": "4",
"absorb": "0,0,0",
@@ -139410,8 +131796,6 @@
"durability": null,
"name": "Ring of wealth",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "14638",
"equipment_slot": "12"
@@ -139433,8 +131817,6 @@
"durability": null,
"name": "Ring of wealth(1)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "14640",
"equipment_slot": "12"
@@ -139456,8 +131838,6 @@
"durability": null,
"name": "Ring of wealth(2)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "14642",
"equipment_slot": "12"
@@ -139479,8 +131859,6 @@
"durability": null,
"name": "Ring of wealth(3)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "14644",
"equipment_slot": "12"
@@ -139502,8 +131880,6 @@
"durability": null,
"name": "Ring of wealth(4)",
"tradeable": "true",
- "low_alchemy": "7050",
- "high_alchemy": "10575",
"archery_ticket_price": "0",
"id": "14646",
"equipment_slot": "12"
@@ -139523,8 +131899,6 @@
"ge_buy_limit": "0",
"examine": "A totally alive monkey friend for your back!",
"durability": null,
- "low_alchemy": "0",
- "high_alchemy": "1",
"destroy": "true",
"weight": "0.0",
"equipment_slot": "1",
@@ -139542,8 +131916,6 @@
"durability": null,
"name": "Zanik ring",
"tradeable": "false",
- "low_alchemy": "0",
- "high_alchemy": "1",
"archery_ticket_price": "0",
"destroy": "true",
"id": "14649",
@@ -139553,12 +131925,9 @@
"ge_buy_limit": "0",
"examine": "A standard issue wizard hat.",
"durability": null,
- "low_alchemy": "0",
- "high_alchemy": "1",
"weight": "0.1",
"destroy": "true",
"equipment_slot": "0",
- "destroy_message": "",
"grand_exchange_price": "0",
"name": "Wizard hat",
"tradeable": "false",
@@ -139569,7 +131938,6 @@
},
{
"destroy_message": " WARNING: You will have to reobtain this item the hard way.",
- "requirements": "",
"examine": "Mysterious blueprints written in an alien language.",
"durability": null,
"name": "Ancient Blueprints",
@@ -139599,7 +131967,6 @@
"turn90cw_anim": "1207",
"examine": "A staff with a spooky raven head attached.",
"walk_anim": "1205",
- "low_alchemy": "80",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -139616,9 +131983,9 @@
"shop_price": "200",
"durability": null,
"destroy": "true",
- "high_alchemy": "120",
"weight": "2.2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of the raven"
@@ -139627,7 +131994,6 @@
"turn90cw_anim": "1207",
"examine": "A staff with a spooky raven head attached.",
"walk_anim": "1205",
- "low_alchemy": "80",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -139644,9 +132010,9 @@
"shop_price": "200",
"durability": null,
"destroy": "true",
- "high_alchemy": "120",
"weight": "2.2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of the raven"
@@ -139655,7 +132021,6 @@
"turn90cw_anim": "1207",
"examine": "A staff with a spooky raven head attached.",
"walk_anim": "1205",
- "low_alchemy": "80",
"turn90ccw_anim": "1208",
"attack_speed": "5",
"turn180_anim": "1206",
@@ -139672,9 +132037,9 @@
"shop_price": "200",
"durability": null,
"destroy": "true",
- "high_alchemy": "120",
"weight": "2.2",
"weapon_interface": "1",
+ "equip_audio": "2247",
"render_anim": "28",
"attack_audios": "2555,0,0,0",
"name": "Staff of the raven"
@@ -139683,5 +132048,73 @@
"examine": "Item container for C. Ele Minor Drop Table. You should not be able to obtain this item.",
"name": "C. Ele Minor Drop Table",
"id": "799"
+ },
+ {
+ "examine": "This will unlock something. (Waterfall Quest)",
+ "name": "A key",
+ "tradeable": "false",
+ "weight": "0.01",
+ "archery_ticket_price": "0",
+ "id": "293"
+ },
+ {
+ "examine": "This will unlock something. (Waterfall dungeon)",
+ "name": "A key",
+ "tradeable": "false",
+ "archery_ticket_price": "0",
+ "weight": "0.01",
+ "id": "298"
+ },
+ {
+ "examine": "You should not have this.",
+ "name": "USDT Slot",
+ "id": "14422"
+ },
+ {
+ "examine": "You should not have this.",
+ "name": "HDT Slot",
+ "id": "14424"
+ },
+ {
+ "examine": "You should not have this.",
+ "name": "GDT Slot",
+ "id": "14426"
+ },
+ {
+ "examine": "You should not have this.",
+ "name": "RSDT Slot",
+ "id": "14428"
+ },
+ {
+ "examine": "You should not have this.",
+ "name": "ASDT Slot",
+ "id": "14430"
+ },
+ {
+ "destroy_message": "This item can not be reclaimed.",
+ "shop_price": "1",
+ "examine": "A rabbit-like adornment, back in black!",
+ "name": "Bunny ears",
+ "tradeable": "false",
+ "destroy": "true",
+ "weight": "0.2",
+ "archery_ticket_price": "0",
+ "id": "14658",
+ "equipment_slot": "0"
+ },
+ {
+ "examine": "Emperor of all he surveys.",
+ "name": "Penguin",
+ "id": "12482"
+ },
+ {
+ "examine": "Emperor of all he surveys.",
+ "name": "Penguin",
+ "id": "12762"
+ },
+ {
+ "examine": "Emperor of all he surveys.",
+ "name": "Penguin",
+ "id": "12764"
}
]
\ No newline at end of file
diff --git a/Server/data/configs/music_configs.json b/Server/data/configs/music_configs.json
deleted file mode 100644
index 9b8f98b8b..000000000
--- a/Server/data/configs/music_configs.json
+++ /dev/null
@@ -1,1544 +0,0 @@
-[
- {
- "id": "1",
- "borders": "{2112,4544,2175,4607}"
- },
- {
- "id": "2",
- "borders": "{3200,3264,3263,3327}"
- },
- {
- "id": "3",
- "borders": "{3072,3200,3135,3263}"
- },
- {
- "id": "4",
- "borders": "{2752,3712,2815,3775}"
- },
- {
- "id": "5",
- "borders": "{2496,3264,2559,3327}-{2752,4672,2815,4735}"
- },
- {
- "id": "6",
- "borders": "{2752,3200,2815,3263}"
- },
- {
- "id": "7",
- "borders": "{2688,3456,2751,3519}"
- },
- {
- "id": "8",
- "borders": "{3072,3584,3135,3647}"
- },
- {
- "id": "9",
- "borders": "{2816,3520,2879,3583}"
- },
- {
- "id": "10",
- "borders": "{3136,3584,3199,3647}-{2368,3264,2431,3327}"
- },
- {
- "id": "11",
- "borders": "{3392,9600,3455,9663}"
- },
- {
- "id": "12",
- "borders": "{2944,3200,3007,3263}"
- },
- {
- "id": "13",
- "borders": "{3072,3904,3135,3967}-{2496,4672,2559,4735}"
- },
- {
- "id": "14",
- "borders": "{3264,3648,3327,3711}"
- },
- {
- "id": "15",
- "borders": "{3008,3328,3071,3391}"
- },
- {
- "id": "17",
- "borders": "{2688,9664,2751,9727}"
- },
- {
- "id": "18",
- "borders": "{2880,3392,2943,3455}"
- },
- {
- "id": "19",
- "borders": "{2816,9792,2879,9855}"
- },
- {
- "id": "20",
- "borders": "{3328,3392,3391,3455}-{2624,3520,2687,3583}"
- },
- {
- "id": "21",
- "borders": "{2688,3520,2751,3583}"
- },
- {
- "id": "22",
- "borders": "{2432,3456,2495,3519}"
- },
- {
- "id": "24",
- "borders": "{2496,3200,2559,3263}"
- },
- {
- "id": "25",
- "borders": "{2816,9600,2879,9663}"
- },
- {
- "id": "26",
- "borders": "{3008,10240,3071,10303}"
- },
- {
- "id": "27",
- "borders": "{2560,3136,2623,3199}-{2560,9536,2623,9599}"
- },
- {
- "id": "28",
- "borders": "{2240,4672,2303,4735}"
- },
- {
- "id": "29",
- "borders": "{2560,9408,2623,9471}"
- },
- {
- "id": "30",
- "borders": "{2368,4672,2431,4735}-{2880,9280,2943,9343}"
- },
- {
- "id": "32",
- "borders": "{2496,3456,2559,3519}"
- },
- {
- "id": "33",
- "borders": "{2432,3392,2495,3455}"
- },
- {
- "id": "34",
- "borders": "{2944,3520,3007,3583}"
- },
- {
- "id": "35",
- "borders": "{3008,3200,3071,3263}"
- },
- {
- "id": "36",
- "borders": "{3264,3200,3327,3263}-{3392,3136,3455,3199}"
- },
- {
- "id": "37",
- "borders": "{2944,3776,3007,3839}"
- },
- {
- "id": "38",
- "borders": "{1856,4800,1919,4863}"
- },
- {
- "id": "41",
- "borders": "{2432,3200,2495,3263}-{2432,9600,2495,9663}"
- },
- {
- "id": "42",
- "borders": "{3008,3776,3071,3839}"
- },
- {
- "id": "43",
- "borders": "{2944,3712,3007,3775}"
- },
- {
- "id": "45",
- "borders": "{3328,9728,3391,9791}"
- },
- {
- "id": "46",
- "borders": "{3200,9600,3263,9663}"
- },
- {
- "id": "47",
- "borders": "{3328,3200,3391,3263}"
- },
- {
- "id": "48",
- "borders": "{3392,3456,3455,3519}"
- },
- {
- "id": "49",
- "borders": "{3008,3264,3071,3327}"
- },
- {
- "id": "50",
- "borders": "{3264,3136,3327,3199}-{3328,3136,3391,3199}"
- },
- {
- "id": "51",
- "borders": "{1920,4800,1983,4863}"
- },
- {
- "id": "52",
- "borders": "{2944,3904,3007,3967}-{2944,10240,3007,10303}-{2816,4800,2879,4863}"
- },
- {
- "id": "53",
- "borders": "{2880,9664,2943,9727}"
- },
- {
- "id": "54",
- "borders": "{2944,3392,3007,3455}"
- },
- {
- "id": "55",
- "borders": "{2752,3136,2815,3199}"
- },
- {
- "id": "56",
- "borders": "{3136,3520,3199,3583}"
- },
- {
- "id": "57",
- "borders": "{2880,4800,2943,4863}"
- },
- {
- "id": "58",
- "borders": "{2752,3072,2815,3135}"
- },
- {
- "id": "59",
- "borders": "{2368,9664,2431,9727}"
- },
- {
- "id": "60",
- "borders": "{2624,3392,2687,3455}"
- },
- {
- "id": "61",
- "borders": "{3456,3456,3519,3519}"
- },
- {
- "id": "62",
- "borders": "{3052,3055,3155,3135}"
- },
- {
- "id": "63",
- "borders": "{2624,9728,2687,9791}-{2688,9792,2751,9855}"
- },
- {
- "id": "64",
- "borders": "{3136,3136,3199,3199}"
- },
- {
- "id": "65",
- "borders": "{2752,4800,2815,4863}"
- },
- {
- "id": "66",
- "borders": "{3008,3648,3071,3711}-{2496,3520,2559,3583}"
- },
- {
- "id": "67",
- "borders": "{3136,3712,3199,3775}-{1536,5760,1599,5823}"
- },
- {
- "id": "68",
- "borders": "{3008,10304,3071,10367}-{2560,9472,2623,9535}"
- },
- {
- "id": "69",
- "borders": "{3264,3072,3327,3135}"
- },
- {
- "id": "70",
- "borders": "{2624,3200,2687,3263}"
- },
- {
- "id": "71",
- "borders": "{2624,2944,2687,3007}-{2624,9344,2687,9407}"
- },
- {
- "id": "72",
- "borders": "{2944,3328,3007,3391}"
- },
- {
- "id": "73",
- "borders": ""
- },
- {
- "id": "74",
- "borders": "{2752,3392,2815,3455}"
- },
- {
- "id": "75",
- "borders": "{3328,3328,3391,3391}"
- },
- {
- "id": "76",
- "borders": "{3200,3200,3263,3263}"
- },
- {
- "id": "77",
- "borders": "{2880,3456,2943,3519}"
- },
- {
- "id": "78",
- "borders": "{2880,2880,2943,2943}"
- },
- {
- "id": "79",
- "borders": "{3136,3008,3199,3071}"
- },
- {
- "id": "80",
- "borders": "{2432,2944,2495,3007}"
- },
- {
- "id": "81",
- "borders": "{2624,3328,2687,3391}"
- },
- {
- "id": "82",
- "borders": "{2496,3392,2559,3455}-{2496,9792,2559,9855}"
- },
- {
- "id": "83",
- "borders": "{2496,3072,2559,3135}"
- },
- {
- "id": "84",
- "borders": "{3392,3392,3455,3455}-{2304,4992,2367,5055}"
- },
- {
- "id": "85",
- "borders": "{3072,3136,3135,3199}-{3072,9472,3135,9535}"
- },
- {
- "id": "87",
- "borders": "{2816,3456,2879,3519}"
- },
- {
- "id": "88",
- "borders": "{2688,9856,2751,9919}"
- },
- {
- "id": "89",
- "borders": "{2880,3008,2943,3071}"
- },
- {
- "id": "90",
- "borders": "{2816,2944,2879,3007}"
- },
- {
- "id": "91",
- "borders": "{2688,3264,2751,3327}-{2112,3072,2175,3135}"
- },
- {
- "id": "92",
- "borders": "{2880,3136,2943,3199}"
- },
- {
- "id": "93",
- "borders": "{3264,3456,3327,3519}"
- },
- {
- "id": "94",
- "borders": "{2880,2944,2943,3007}"
- },
- {
- "id": "95",
- "borders": "{2304,9792,2367,9855}"
- },
- {
- "id": "96",
- "borders": "{3008,3520,3071,3583}"
- },
- {
- "id": "97",
- "borders": "{2240,4736,2303,4799}"
- },
- {
- "id": "98",
- "borders": "{3072,3456,3135,3519}-{3072,9856,3135,9919}"
- },
- {
- "id": "99",
- "borders": "{2624,3264,2687,3327}"
- },
- {
- "id": "100",
- "borders": "{2816,9856,2879,9919}-{2816,9920,2879,9983}"
- },
- {
- "id": "101",
- "borders": "{2304,3392,2367,3455}"
- },
- {
- "id": "102",
- "borders": "{3008,3456,3071,3519}-{2496,9600,2559,9663}"
- },
- {
- "id": "103",
- "borders": "{2880,9344,2943,9407}"
- },
- {
- "id": "104",
- "borders": "{2752,3456,2815,3519}"
- },
- {
- "id": "105",
- "borders": "{3008,3136,3071,3199}"
- },
- {
- "id": "106",
- "borders": "{3136,3904,3199,3967}-{3200,3328,3263,3391}-{3200,9728,3263,9791}"
- },
- {
- "id": "107",
- "borders": "{2880,3264,2943,3327}-{2624,4672,2687,4735}"
- },
- {
- "id": "108",
- "borders": "{2944,9536,3007,9599}-{3200,9536,3263,9599}"
- },
- {
- "id": "109",
- "borders": "{2560,3456,2623,3519}-{2496,9856,2559,9919}"
- },
- {
- "id": "110",
- "borders": "{2368,3136,2431,3199}"
- },
- {
- "id": "111",
- "borders": "{3264,3328,3327,3391}"
- },
- {
- "id": "112",
- "borders": "{2304,3456,2367,3519}"
- },
- {
- "id": "113",
- "borders": "{3072,3520,3135,3583}"
- },
- {
- "id": "114",
- "borders": "{2752,2944,2815,3007}-{2752,9344,2815,9407}"
- },
- {
- "id": "115",
- "borders": "{2688,3200,2751,3263}"
- },
- {
- "id": "116",
- "borders": "{3136,3328,3199,3391}"
- },
- {
- "id": "117",
- "borders": "{2752,3008,2815,3071}"
- },
- {
- "id": "118",
- "borders": "{2368,4352,2431,4415}"
- },
- {
- "id": "119",
- "borders": "{2816,3392,2879,3455}"
- },
- {
- "id": "120",
- "borders": "{3200,3712,3263,3775}"
- },
- {
- "id": "121",
- "borders": "{3264,3520,3327,3583}"
- },
- {
- "id": "122",
- "borders": "{3328,3264,3391,3327}"
- },
- {
- "id": "123",
- "borders": "{3264,3264,3327,3327}"
- },
- {
- "id": "124",
- "borders": "{3200,3072,3263,3135}"
- },
- {
- "id": "125",
- "borders": "{3200,3392,3263,3455}"
- },
- {
- "id": "127",
- "borders": "{3200,3904,3263,3967}-{2944,3264,3007,3327}"
- },
- {
- "id": "128",
- "borders": "{2560,2944,2623,3007}"
- },
- {
- "id": "129",
- "borders": "{2752,2880,2815,2943}-{2880,9472,2943,9535}"
- },
- {
- "id": "130",
- "borders": "{2304,3328,2367,3391}"
- },
- {
- "id": "131",
- "borders": "{2368,4800,2431,4863}"
- },
- {
- "id": "132",
- "borders": "{2240,3200,2303,3263}"
- },
- {
- "id": "133",
- "borders": "{2560,3328,2623,3391}-{2496,9728,2559,9791}"
- },
- {
- "id": "134",
- "borders": "{2176,4800,2239,4863}"
- },
- {
- "id": "138",
- "borders": "{2880,3200,2943,3263}-{2880,9600,2943,9663}"
- },
- {
- "id": "140",
- "borders": "{2624,3456,2687,3519}"
- },
- {
- "id": "141",
- "borders": "{3072,3392,3135,3455}-{3072,9792,3135,9855}"
- },
- {
- "id": "142",
- "borders": "{2240,4800,2303,4863}"
- },
- {
- "id": "143",
- "borders": "{2624,4800,2687,4863}"
- },
- {
- "id": "144",
- "borders": "{3136,9856,3199,9919}-{3072,9536,3135,9599}"
- },
- {
- "id": "145",
- "borders": "{3200,3136,3263,3199}"
- },
- {
- "id": "146",
- "borders": "{2688,4800,2751,4863}"
- },
- {
- "id": "148",
- "borders": "{2496,3136,2559,3199}-{2560,4416,2623,4479}-{2496,9536,2559,9599}"
- },
- {
- "id": "149",
- "borders": "{2880,3520,2943,3583}"
- },
- {
- "id": "151",
- "borders": "{3072,3264,3135,3327}"
- },
- {
- "id": "152",
- "borders": "{2560,3200,2623,3263}"
- },
- {
- "id": "153",
- "borders": "{2880,9984,2943,10047}"
- },
- {
- "id": "154",
- "borders": "{3392,3264,3455,3327}"
- },
- {
- "id": "155",
- "borders": "{2432,3328,2495,3391}"
- },
- {
- "id": "156",
- "borders": "{3392,9856,3455,9919}"
- },
- {
- "id": "157",
- "borders": "{3264,3392,3327,3455}"
- },
- {
- "id": "158",
- "borders": "{2560,4800,2623,4863}"
- },
- {
- "id": "159",
- "borders": "{3008,3712,3071,3775}-{2496,3008,2559,3071}-{2496,9408,2559,9471}"
- },
- {
- "id": "160",
- "borders": "{3008,3584,3071,3647}"
- },
- {
- "id": "161",
- "borders": "{2624,3072,2687,3135}"
- },
- {
- "id": "162",
- "borders": "{2816,3072,2879,3135}-{2816,9472,2879,9535}"
- },
- {
- "id": "163",
- "borders": "{3136,3264,3199,3327}"
- },
- {
- "id": "164",
- "borders": "{2688,3136,2751,3199}"
- },
- {
- "id": "165",
- "borders": "{2816,3008,2879,3071}"
- },
- {
- "id": "166",
- "borders": "{2944,3008,3007,3071}"
- },
- {
- "id": "167",
- "borders": "{2624,3136,2687,3199}"
- },
- {
- "id": "168",
- "borders": "{3264,9408,3327,9471}"
- },
- {
- "id": "169",
- "borders": "{3200,3520,3263,3583}-{2624,9664,2687,9727}"
- },
- {
- "id": "170",
- "borders": "{2816,3200,2879,3263}"
- },
- {
- "id": "172",
- "borders": "{2816,3136,2879,3199}-{2816,2880,2879,2943}"
- },
- {
- "id": "173",
- "borders": "{2880,9728,2943,9791}"
- },
- {
- "id": "174",
- "borders": "{3264,2944,3327,3007}-{3328,3008,3391,3071}"
- },
- {
- "id": "175",
- "borders": "{3136,3392,3199,3455}"
- },
- {
- "id": "176",
- "borders": "{3072,3648,3135,3711}"
- },
- {
- "id": "177",
- "borders": "{3200,3456,3263,3519}"
- },
- {
- "id": "178",
- "borders": "{2880,9792,2943,9855}"
- },
- {
- "id": "179",
- "borders": "{3328,3584,3391,3647}-{2816,9728,2879,9791}"
- },
- {
- "id": "180",
- "borders": "{2944,3136,3007,3199}"
- },
- {
- "id": "181",
- "borders": "{2432,4416,2495,4479}"
- },
- {
- "id": "182",
- "borders": "{3264,3776,3327,3839}-{3264,3712,3327,3775}"
- },
- {
- "id": "183",
- "borders": "{2944,3648,3007,3711}"
- },
- {
- "id": "184",
- "borders": "{2688,3392,2751,3455}"
- },
- {
- "id": "185",
- "borders": "{2560,3072,2623,3135}"
- },
- {
- "id": "186",
- "borders": "{2880,3328,2943,3391}"
- },
- {
- "id": "187",
- "borders": "{2816,3584,2879,3647}"
- },
- {
- "id": "188",
- "borders": "{2560,3008,2623,3071}"
- },
- {
- "id": "190",
- "borders": "{2496,4800,2559,4863}"
- },
- {
- "id": "191",
- "borders": "{2560,3264,2623,3327}"
- },
- {
- "id": "192",
- "borders": "{2688,3328,2751,3391}-{2688,9728,2751,9791}"
- },
- {
- "id": "193",
- "borders": "{2560,3392,2623,3455}"
- },
- {
- "id": "198",
- "borders": "{1792,4352,1855,4415}-{1920,4352,1983,4415}"
- },
- {
- "id": "220",
- "borders": "{2304,3842,2428,3901}"
- },
- {
- "id": "241",
- "borders": "{3456,3328,3519,3391}-{2176,4992,2239,5055}"
- },
- {
- "id": "242",
- "borders": "{2880,4544,2943,4607}"
- },
- {
- "id": "243",
- "borders": "{2112,4800,2175,4863}"
- },
- {
- "id": "244",
- "borders": "{3456,3392,3519,3455}-{1984,4992,2047,5055}"
- },
- {
- "id": "245",
- "borders": "{3392,3328,3455,3391}-{2240,4992,2303,5055}"
- },
- {
- "id": "246",
- "borders": "{3392,9728,3455,9791}"
- },
- {
- "id": "247",
- "borders": "{1984,4736,2047,4799}"
- },
- {
- "id": "248",
- "borders": "{2752,9536,2815,9599}"
- },
- {
- "id": "251",
- "borders": "{2240,3136,2303,3199}"
- },
- {
- "id": "252",
- "borders": "{2304,3200,2367,3263}"
- },
- {
- "id": "253",
- "borders": "{2240,3072,2303,3135}"
- },
- {
- "id": "254",
- "borders": "{2112,3136,2175,3199}"
- },
- {
- "id": "255",
- "borders": "{2112,3200,2175,3263}"
- },
- {
- "id": "256",
- "borders": "{2304,3264,2367,3327}"
- },
- {
- "id": "257",
- "borders": "{2816,3648,2879,3711}"
- },
- {
- "id": "258",
- "borders": "{2880,3584,2943,3647}"
- },
- {
- "id": "259",
- "borders": "{2240,3264,2303,3327}"
- },
- {
- "id": "260",
- "borders": "{3456,9472,3519,9535}"
- },
- {
- "id": "261",
- "borders": "{2752,10112,2815,10175}-{2816,10048,2879,10111}"
- },
- {
- "id": "262",
- "borders": "{2432,4800,2495,4863}"
- },
- {
- "id": "263",
- "borders": "{3136,2944,3199,3007}"
- },
- {
- "id": "264",
- "borders": "{2880,10048,2943,10111}"
- },
- {
- "id": "265",
- "borders": "{2752,9280,2815,9343}"
- },
- {
- "id": "266",
- "borders": "{3200,9344,3263,9407}"
- },
- {
- "id": "267",
- "borders": "{3200,2944,3263,3007}-{3328,2880,3391,2943}"
- },
- {
- "id": "268",
- "borders": "{2112,3264,2175,3327}"
- },
- {
- "id": "269",
- "borders": "{2176,4928,2239,4991}"
- },
- {
- "id": "270",
- "borders": "{2176,3072,2239,3135}"
- },
- {
- "id": "271",
- "borders": "{2304,9600,2367,9663}"
- },
- {
- "id": "272",
- "borders": ""
- },
- {
- "id": "273",
- "borders": ""
- },
- {
- "id": "277",
- "borders": "{2752,4416,2815,4479}"
- },
- {
- "id": "278",
- "borders": "{2688,4544,2751,4607}-{2688,4480,2751,4543}"
- },
- {
- "id": "282",
- "borders": "{2688,4416,2751,4479}-{2752,4480,2815,4543}"
- },
- {
- "id": "284",
- "borders": "{2496,3840,2559,3903}"
- },
- {
- "id": "285",
- "borders": "{2560,3840,2623,3903}"
- },
- {
- "id": "286",
- "borders": "{3392,3200,3455,3263}-{3456,3264,3519,3327}-{2112,4992,2175,5055}"
- },
- {
- "id": "287",
- "borders": "{3456,9664,3519,9727}"
- },
- {
- "id": "288",
- "borders": "{3520,3456,3583,3519}"
- },
- {
- "id": "289",
- "borders": "{2560,3648,2623,3711}"
- },
- {
- "id": "290",
- "borders": "{2560,3584,2623,3647}"
- },
- {
- "id": "291",
- "borders": "{2688,3648,2751,3711}"
- },
- {
- "id": "292",
- "borders": "{2816,3712,2879,3775}-{2880,3712,2943,3775}"
- },
- {
- "id": "293",
- "borders": "{2688,3584,2751,3647}"
- },
- {
- "id": "294",
- "borders": "{2816,3776,2879,3839}"
- },
- {
- "id": "295",
- "borders": "{2624,10048,2687,10111}"
- },
- {
- "id": "296",
- "borders": "{2560,4480,2623,4543}"
- },
- {
- "id": "303",
- "borders": "{2752,2752,2815,2815}"
- },
- {
- "id": "304",
- "borders": "{2880,2688,2943,2751}-{3008,5440,3071,5503}"
- },
- {
- "id": "305",
- "borders": "{2688,2752,2751,2815}"
- },
- {
- "id": "306",
- "borders": "{2688,2688,2751,2751}"
- },
- {
- "id": "307",
- "borders": "{2752,9152,2815,9215}"
- },
- {
- "id": "311",
- "borders": "{2688,9152,2751,9215}"
- },
- {
- "id": "312",
- "borders": "{2688,9088,2751,9151}"
- },
- {
- "id": "314",
- "borders": "{2368,3072,2431,3135}"
- },
- {
- "id": "316",
- "borders": "{2624,9984,2687,10047}"
- },
- {
- "id": "317",
- "borders": "{2432,3072,2495,3135}"
- },
- {
- "id": "318",
- "borders": "{2368,9472,2431,9535}"
- },
- {
- "id": "319",
- "borders": "{3456,9792,3519,9855}"
- },
- {
- "id": "320",
- "borders": "{2496,3584,2559,3647}"
- },
- {
- "id": "322",
- "borders": "{2496,9984,2559,10047}"
- },
- {
- "id": "323",
- "borders": "{2368,9536,2431,9599}"
- },
- {
- "id": "324",
- "borders": "{2752,3328,2815,3391}-{1920,4992,1983,5055}"
- },
- {
- "id": "325",
- "borders": "{3008,9728,3071,9791}-{2944,9792,3007,9855}"
- },
- {
- "id": "326",
- "borders": "{3328,3648,3391,3711}"
- },
- {
- "id": "327",
- "borders": "{3136,3200,3199,3263}"
- },
- {
- "id": "328",
- "borders": "{2496,3328,2559,3391}"
- },
- {
- "id": "329",
- "borders": "{3264,3904,3327,3967}"
- },
- {
- "id": "330",
- "borders": "{3136,9792,3199,9855}"
- },
- {
- "id": "331",
- "borders": "{3264,3840,3327,3903}"
- },
- {
- "id": "332",
- "borders": "{3200,3648,3263,3711}-{3136,3840,3199,3903}"
- },
- {
- "id": "333",
- "borders": "{3072,3328,3135,3391}"
- },
- {
- "id": "334",
- "borders": "{3008,3904,3071,3967}"
- },
- {
- "id": "335",
- "borders": "{2752,3840,2815,3903}"
- },
- {
- "id": "336",
- "borders": "{2816,9536,2879,9599}"
- },
- {
- "id": "337",
- "borders": "{3200,3584,3263,3647}"
- },
- {
- "id": "338",
- "borders": "{3072,9728,3135,9791}"
- },
- {
- "id": "339",
- "borders": "{3392,3520,3455,3583}"
- },
- {
- "id": "340",
- "borders": "{2688,9984,2751,10047}"
- },
- {
- "id": "341",
- "borders": "{2752,9984,2815,10047}"
- },
- {
- "id": "342",
- "borders": "{3456,9920,3519,9983}"
- },
- {
- "id": "343",
- "borders": "{3136,9600,3199,9663}"
- },
- {
- "id": "344",
- "borders": "{3456,3520,3519,3583}"
- },
- {
- "id": "345",
- "borders": "{3520,9856,3583,9919}"
- },
- {
- "id": "346",
- "borders": "{2560,9792,2623,9855}"
- },
- {
- "id": "347",
- "borders": "{2752,3264,2815,3327}"
- },
- {
- "id": "348",
- "borders": "{2432,9856,2495,9919}"
- },
- {
- "id": "351",
- "borders": "{3328,2944,3391,3007}"
- },
- {
- "id": "352",
- "borders": "{3136,2880,3199,2943}"
- },
- {
- "id": "353",
- "borders": "{3584,3520,3647,3583}"
- },
- {
- "id": "354",
- "borders": "{3648,9856,3711,9919}"
- },
- {
- "id": "355",
- "borders": "{3648,3456,3711,3519}"
- },
- {
- "id": "356",
- "borders": "{2752,3648,2815,3711}"
- },
- {
- "id": "357",
- "borders": "{2752,10048,2815,10111}"
- },
- {
- "id": "358",
- "borders": "{3776,3520,3839,3583}"
- },
- {
- "id": "359",
- "borders": "{3200,9280,3263,9343}"
- },
- {
- "id": "361",
- "borders": "{3072,9600,3135,9663}"
- },
- {
- "id": "362",
- "borders": "{2688,9472,2751,9535}-{2688,9408,2751,9471}"
- },
- {
- "id": "363",
- "name": "7th Realm",
- "indexId": "285",
- "borders": "{2624,9536,2687,9599}-{2624,9472,2687,9535}"
- },
- {
- "id": "364",
- "borders": "{2688,9536,2751,9599}"
- },
- {
- "id": "369",
- "borders": "{2816,10112,2879,10175}"
- },
- {
- "id": "370",
- "borders": "{2496,4928,2559,4991}"
- },
- {
- "id": "372",
- "borders": "{2304,3136,2367,3199}"
- },
- {
- "id": "373",
- "borders": "{2304,4928,2367,4991}"
- },
- {
- "id": "375",
- "borders": "{1920,4608,1983,4671}"
- },
- {
- "id": "376",
- "borders": "{1856,4608,1919,4671}"
- },
- {
- "id": "377",
- "borders": "{3392,3072,3455,3135}-{3456,3072,3519,3135}"
- },
- {
- "id": "380",
- "borders": "{3520,3264,3583,3327}"
- },
- {
- "id": "381",
- "borders": "{3520,9664,3583,9727}"
- },
- {
- "id": "383",
- "borders": "{3200,2752,3263,2815}-{3264,2752,3327,2815}"
- },
- {
- "id": "386",
- "borders": "{2820,5312,2849,5369}-{2849,5349,2880,5374}"
- },
- {
- "id": "387",
- "borders": "{3264,2816,3327,2879}"
- },
- {
- "id": "388",
- "borders": "{3264,9152,3327,9215}"
- },
- {
- "id": "389",
- "borders": "{3136,9536,3199,9599}"
- },
- {
- "id": "390",
- "borders": "{2304,3008,2367,3071}"
- },
- {
- "id": "391",
- "borders": "{2879,5340,2944,5366}-{2909,5316,2944,5340}"
- },
- {
- "id": "392",
- "borders": "{2432,3008,2495,3071}"
- },
- {
- "id": "393",
- "borders": "{2624,5056,2687,5119}"
- },
- {
- "id": "394",
- "borders": "{2432,9408,2495,9471}"
- },
- {
- "id": "395",
- "borders": "{2880,10112,2943,10175}"
- },
- {
- "id": "396",
- "borders": "{2816,10176,2879,10239}"
- },
- {
- "id": "397",
- "borders": "{3200,9472,3263,9535}"
- },
- {
- "id": "399",
- "borders": "{2816,5248,2943,5375,[2823,5250,2844,5310]~,[2844,5250,2878,5280]~,[2879,5340,2944,5366]~,[2909,5316,2944,5340]~,[2820,5312,2849,5369]~,[2849,5349,2880,5374]~,[2885,5253,2934,5278]~,[2913,5278,2937,5306]}"
- },
- {
- "id": "401",
- "borders": ""
- },
- {
- "id": "402",
- "borders": "{2944,4928,3007,4991}-{3008,4928,3071,4991}"
- },
- {
- "id": "403",
- "borders": "{3008,5056,3071,5119}"
- },
- {
- "id": "404",
- "borders": "{2823,5250,2844,5310}-{2844,5250,2878,5280}"
- },
- {
- "id": "407",
- "borders": "{3264,9600,3327,9663}"
- },
- {
- "id": "408",
- "borders": "{2885,5253,2934,5278}-{2913,5278,2937,5306}"
- },
- {
- "id": "409",
- "borders": "{2432,4736,2495,4799}"
- },
- {
- "id": "411",
- "borders": "{2496,4736,2559,4799}"
- },
- {
- "id": "412",
- "borders": "{3008,4800,3071,4863}"
- },
- {
- "id": "413",
- "borders": "{1920,4736,1983,4799}"
- },
- {
- "id": "418",
- "borders": "{3136,4800,3199,4863}"
- },
- {
- "id": "419",
- "borders": "{2560,4736,2623,4799}"
- },
- {
- "id": "425",
- "borders": "{2432,4928,2495,4991}"
- },
- {
- "id": "428",
- "borders": "{3264,4800,3327,4863}"
- },
- {
- "id": "432",
- "borders": "{1600,4800,1663,4863}-{1664,4800,1727,4863}"
- },
- {
- "id": "434",
- "borders": "{1920,4928,1983,4991}"
- },
- {
- "id": "435",
- "borders": "{2944,3584,3007,3647}-{3072,3712,3135,3775}"
- },
- {
- "id": "442",
- "borders": ""
- },
- {
- "id": "443",
- "borders": "{2944,5632,3135,5823}"
- },
- {
- "id": "444",
- "borders": "{2688,5632,2879,5823}"
- },
- {
- "id": "445",
- "borders": "{3200,5632,3391,5823}"
- },
- {
- "id": "447",
- "borders": "{3392,2880,3455,2943}"
- },
- {
- "id": "448",
- "borders": "{2432,10112,2495,10175}"
- },
- {
- "id": "454",
- "borders": ""
- },
- {
- "id": "456",
- "borders": ""
- },
- {
- "id": "461",
- "borders": "{2496,3712,2559,3775}"
- },
- {
- "id": "462",
- "borders": "{3328,9536,3391,9599}"
- },
- {
- "id": "463",
- "borders": "{2368,5120,2431,5183}"
- },
- {
- "id": "464",
- "borders": "{3328,9280,3391,9343}"
- },
- {
- "id": "465",
- "borders": "{3392,2944,3455,3007}"
- },
- {
- "id": "469",
- "borders": "{2432,5120,2495,5183}"
- },
- {
- "id": "471",
- "borders": "{3648,9920,3711,9983}"
- },
- {
- "id": "473",
- "borders": "{2368,5056,2431,5119}"
- },
- {
- "id": "475",
- "borders": "{3008,3840,3071,3903}"
- },
- {
- "id": "476",
- "borders": "{3136,3648,3199,3711}"
- },
- {
- "id": "478",
- "borders": "{2496,9664,2559,9727}"
- },
- {
- "id": "479",
- "borders": "{2880,3072,2943,3135}"
- },
- {
- "id": "481",
- "borders": "{2624,9600,2687,9663}"
- },
- {
- "id": "482",
- "borders": "{2880,5056,2943,5119}"
- },
- {
- "id": "489",
- "borders": "{1920,4672,1983,4735}"
- },
- {
- "id": "490",
- "borders": "{2944,9600,3007,9663}"
- },
- {
- "id": "491",
- "borders": "{2816,5056,2879,5119}"
- },
- {
- "id": "496",
- "borders": "{3136,3456,3199,3519}"
- },
- {
- "id": "497",
- "borders": "{2112,5056,2175,5119}"
- },
- {
- "id": "498",
- "borders": "{2112,5120,2175,5183}"
- },
- {
- "id": "500",
- "borders": ""
- },
- {
- "id": "501",
- "borders": "{3456,3136,3519,3199}"
- },
- {
- "id": "505",
- "borders": "{3328,2816,3391,2879}-{3008,4672,3071,4735}"
- },
- {
- "id": "511",
- "borders": "{2048,4416,2111,4479}"
- },
- {
- "id": "515",
- "borders": "{2944,3072,3007,3135}"
- },
- {
- "id": "517",
- "borders": "{2496,10112,2559,10175}"
- },
- {
- "id": "526",
- "borders": ""
- },
- {
- "id": "524",
- "borders": "{1856,4352,1919,4415}-{2880,4416,2943,4479}"
- },
- {
- "id": "528",
- "borders": "{3136,9728,3199,9791}"
- },
- {
- "id": "529",
- "borders": "{3008,9536,3071,9599}"
- },
- {
- "id": "530",
- "borders": "{3648,2944,3711,3007}"
- },
- {
- "id": "532",
- "borders": "{1984,4416,2047,4479}"
- },
- {
- "id": "542",
- "borders": "{3072,9280,3135,9343}"
- },
- {
- "id": "544",
- "borders": "{2304,3648,2367,3711}-{2304,3584,2367,3647}"
- },
- {
- "id": "555",
- "borders": ""
- },
- {
- "id": "569",
- "borders": "{3200,9984,3263,10047}"
- },
- {
- "id": "571",
- "borders": ""
- },
- {
- "id": "573",
- "borders": "{1728,5120,1791,5247}"
- },
- {
- "id": "575",
- "borders": "{2432,4352,2495,4415}"
- },
- {
- "id": "576",
- "borders": "{2944,9472,3007,9535}"
- },
- {
- "id": "583",
- "borders": "{1856,5312,1919,5375}"
- },
- {
- "id": "586",
- "borders": "{3328,3904,3391,3967}"
- },
- {
- "id": "587",
- "borders": "{2624,2624,2687,2687}"
- },
- {
- "id": "588",
- "borders": "{2624,2560,2687,2623}"
- },
- {
- "id": "594",
- "borders": "{3264,9792,3327,9855}-{3072,5184,3135,5247}-{3008,5184,3071,5247}"
- },
- {
- "id": "603",
- "borders": "{2432,5248,2495,5311}"
- },
- {
- "id": "604",
- "borders": ""
- },
- {
- "id": "612",
- "borders": "{1856,5120,1919,5183}"
- },
- {
- "id": "616",
- "borders": ""
- },
- {
- "id": "634",
- "borders": ""
- },
- {
- "id": "964",
- "borders": "{2944,9856,3007,9919}"
- },
- {
- "id": "222",
- "borders": "{2403,10186,2409,10192}"
- },
- {
- "id": "223",
- "borders": "{2404,3797,2421,3820}"
- },
- {
- "id": "225",
- "borders": "{2304,3785,2635,3818}"
- },
- {
- "id": "584",
- "borders": "{2580,5763,2620,5700}"
- },
- {
- "id": "589",
- "borders": "{2500,5766,2620,5810}"
- },
- {
- "id": "487",
- "borders": "{1600,4672,1663,4735}"
- },
- {
- "id": "578",
- "borders": ""
- }
-]
diff --git a/Server/data/configs/music_regions.json b/Server/data/configs/music_regions.json
new file mode 100644
index 000000000..ebfb70c82
--- /dev/null
+++ b/Server/data/configs/music_regions.json
@@ -0,0 +1,2566 @@
+[
+ {
+ "region": "6234",
+ "id": "67"
+ },
+ {
+ "region": "6473",
+ "id": "487"
+ },
+ {
+ "region": "6475",
+ "id": "432"
+ },
+ {
+ "region": "6486",
+ "id": "588"
+ },
+ {
+ "region": "6487",
+ "id": "503"
+ },
+ {
+ "region": "6488",
+ "id": "507"
+ },
+ {
+ "region": "6489",
+ "id": "507"
+ },
+ {
+ "region": "6722",
+ "id": "74"
+ },
+ {
+ "region": "6726",
+ "id": "205"
+ },
+ {
+ "region": "6741",
+ "id": "561"
+ },
+ {
+ "region": "6744",
+ "id": "507"
+ },
+ {
+ "region": "6745",
+ "id": "507"
+ },
+ {
+ "region": "6989",
+ "id": "309"
+ },
+ {
+ "region": "6992",
+ "id": "573"
+ },
+ {
+ "region": "6993",
+ "id": "573"
+ },
+ {
+ "region": "6994",
+ "id": "367"
+ },
+ {
+ "region": "7236",
+ "id": "198"
+ },
+ {
+ "region": "7490",
+ "id": "374"
+ },
+ {
+ "region": "7492",
+ "id": "524"
+ },
+ {
+ "region": "7494",
+ "id": "470"
+ },
+ {
+ "region": "7496",
+ "id": "376"
+ },
+ {
+ "region": "7499",
+ "id": "38"
+ },
+ {
+ "region": "7500",
+ "id": "203"
+ },
+ {
+ "region": "7502",
+ "id": "371"
+ },
+ {
+ "region": "7504",
+ "id": "612"
+ },
+ {
+ "region": "7505",
+ "id": "537"
+ },
+ {
+ "region": "7507",
+ "id": "583"
+ },
+ {
+ "region": "7508",
+ "id": "211"
+ },
+ {
+ "region": "7509",
+ "id": "604"
+ },
+ {
+ "region": "7748",
+ "id": "198"
+ },
+ {
+ "region": "7749",
+ "id": "591"
+ },
+ {
+ "region": "7752",
+ "id": "375"
+ },
+ {
+ "region": "7753",
+ "id": "489"
+ },
+ {
+ "region": "7754",
+ "id": "413"
+ },
+ {
+ "region": "7755",
+ "id": "51"
+ },
+ {
+ "region": "7756",
+ "id": "620"
+ },
+ {
+ "region": "7757",
+ "id": "434"
+ },
+ {
+ "region": "7758",
+ "id": "324"
+ },
+ {
+ "region": "7760",
+ "id": "202"
+ },
+ {
+ "region": "7769",
+ "id": "578"
+ },
+ {
+ "region": "8001",
+ "id": "426"
+ },
+ {
+ "region": "8002",
+ "id": "426"
+ },
+ {
+ "region": "8004",
+ "id": "579"
+ },
+ {
+ "region": "8005",
+ "id": "532"
+ },
+ {
+ "region": "8009",
+ "id": "271"
+ },
+ {
+ "region": "8010",
+ "id": "247"
+ },
+ {
+ "region": "8013",
+ "id": "620"
+ },
+ {
+ "region": "8014",
+ "id": "244"
+ },
+ {
+ "region": "8015",
+ "id": "640"
+ },
+ {
+ "region": "8017",
+ "id": "558"
+ },
+ {
+ "region": "8022",
+ "id": "421"
+ },
+ {
+ "region": "8025",
+ "id": "595"
+ },
+ {
+ "region": "8252",
+ "id": "625"
+ },
+ {
+ "region": "8253",
+ "id": "625"
+ },
+ {
+ "region": "8261",
+ "id": "511"
+ },
+ {
+ "region": "8267",
+ "id": "126"
+ },
+ {
+ "region": "8276",
+ "id": "303"
+ },
+ {
+ "region": "8280",
+ "id": "527"
+ },
+ {
+ "region": "8282",
+ "id": "592"
+ },
+ {
+ "region": "8496",
+ "id": "91"
+ },
+ {
+ "region": "8497",
+ "id": "254"
+ },
+ {
+ "region": "8498",
+ "id": "255"
+ },
+ {
+ "region": "8499",
+ "id": "268"
+ },
+ {
+ "region": "8508",
+ "id": "627"
+ },
+ {
+ "region": "8509",
+ "id": "627"
+ },
+ {
+ "region": "8519",
+ "id": "1"
+ },
+ {
+ "region": "8523",
+ "id": "243"
+ },
+ {
+ "region": "8526",
+ "id": "286"
+ },
+ {
+ "region": "8527",
+ "id": "497"
+ },
+ {
+ "region": "8528",
+ "id": "498"
+ },
+ {
+ "region": "8529",
+ "id": "559"
+ },
+ {
+ "region": "8530",
+ "id": "559"
+ },
+ {
+ "region": "8534",
+ "id": "23"
+ },
+ {
+ "region": "8752",
+ "id": "270"
+ },
+ {
+ "region": "8763",
+ "id": "630"
+ },
+ {
+ "region": "8770",
+ "id": "433"
+ },
+ {
+ "region": "8779",
+ "id": "134"
+ },
+ {
+ "region": "8781",
+ "id": "269"
+ },
+ {
+ "region": "8782",
+ "id": "241"
+ },
+ {
+ "region": "8787",
+ "id": "456"
+ },
+ {
+ "region": "9008",
+ "id": "253"
+ },
+ {
+ "region": "9009",
+ "id": "251"
+ },
+ {
+ "region": "9010",
+ "id": "132"
+ },
+ {
+ "region": "9011",
+ "id": "259"
+ },
+ {
+ "region": "9014",
+ "id": "366"
+ },
+ {
+ "region": "9015",
+ "id": "460"
+ },
+ {
+ "region": "9033",
+ "id": "28"
+ },
+ {
+ "region": "9034",
+ "id": "97"
+ },
+ {
+ "region": "9035",
+ "id": "142"
+ },
+ {
+ "region": "9038",
+ "id": "245"
+ },
+ {
+ "region": "9046",
+ "id": "150"
+ },
+ {
+ "region": "9263",
+ "id": "390"
+ },
+ {
+ "region": "9265",
+ "id": "372"
+ },
+ {
+ "region": "9266",
+ "id": "252"
+ },
+ {
+ "region": "9267",
+ "id": "256"
+ },
+ {
+ "region": "9268",
+ "id": "130"
+ },
+ {
+ "region": "9269",
+ "id": "101"
+ },
+ {
+ "region": "9270",
+ "id": "112"
+ },
+ {
+ "region": "9272",
+ "id": "544"
+ },
+ {
+ "region": "9273",
+ "id": "544"
+ },
+ {
+ "region": "9275",
+ "id": "225"
+ },
+ {
+ "region": "9276",
+ "id": "220"
+ },
+ {
+ "region": "9285",
+ "id": "73"
+ },
+ {
+ "region": "9293",
+ "id": "373"
+ },
+ {
+ "region": "9294",
+ "id": "84"
+ },
+ {
+ "region": "9295",
+ "id": "201"
+ },
+ {
+ "region": "9297",
+ "id": "560"
+ },
+ {
+ "region": "9362",
+ "id": "153"
+ },
+ {
+ "region": "9365",
+ "id": "271"
+ },
+ {
+ "region": "9366",
+ "id": "271"
+ },
+ {
+ "region": "9369",
+ "id": "95"
+ },
+ {
+ "region": "9372",
+ "id": "456"
+ },
+ {
+ "region": "9520",
+ "id": "314"
+ },
+ {
+ "region": "9521",
+ "id": "110"
+ },
+ {
+ "region": "9522",
+ "id": "41"
+ },
+ {
+ "region": "9523",
+ "id": "10"
+ },
+ {
+ "region": "9526",
+ "id": "112"
+ },
+ {
+ "region": "9531",
+ "id": "223"
+ },
+ {
+ "region": "9532",
+ "id": "220"
+ },
+ {
+ "region": "9540",
+ "id": "118"
+ },
+ {
+ "region": "9541",
+ "id": "118"
+ },
+ {
+ "region": "9544",
+ "id": "197"
+ },
+ {
+ "region": "9545",
+ "id": "30"
+ },
+ {
+ "region": "9547",
+ "id": "131"
+ },
+ {
+ "region": "9550",
+ "id": "84"
+ },
+ {
+ "region": "9551",
+ "id": "473"
+ },
+ {
+ "region": "9552",
+ "id": "463"
+ },
+ {
+ "region": "9553",
+ "id": "531"
+ },
+ {
+ "region": "9558",
+ "id": "276"
+ },
+ {
+ "region": "9620",
+ "id": "318"
+ },
+ {
+ "region": "9621",
+ "id": "323"
+ },
+ {
+ "region": "9623",
+ "id": "59"
+ },
+ {
+ "region": "9625",
+ "id": "194"
+ },
+ {
+ "region": "9626",
+ "id": "296"
+ },
+ {
+ "region": "9631",
+ "id": "222"
+ },
+ {
+ "region": "9632",
+ "id": "224"
+ },
+ {
+ "region": "9774",
+ "id": "80"
+ },
+ {
+ "region": "9775",
+ "id": "392"
+ },
+ {
+ "region": "9776",
+ "id": "317"
+ },
+ {
+ "region": "9778",
+ "id": "41"
+ },
+ {
+ "region": "9780",
+ "id": "155"
+ },
+ {
+ "region": "9781",
+ "id": "33"
+ },
+ {
+ "region": "9782",
+ "id": "22"
+ },
+ {
+ "region": "9787",
+ "id": "225"
+ },
+ {
+ "region": "9794",
+ "id": "439"
+ },
+ {
+ "region": "9796",
+ "id": "575"
+ },
+ {
+ "region": "9797",
+ "id": "181"
+ },
+ {
+ "region": "9802",
+ "id": "409"
+ },
+ {
+ "region": "9803",
+ "id": "262"
+ },
+ {
+ "region": "9804",
+ "id": "512"
+ },
+ {
+ "region": "9805",
+ "id": "425"
+ },
+ {
+ "region": "9808",
+ "id": "469"
+ },
+ {
+ "region": "9810",
+ "id": "603"
+ },
+ {
+ "region": "9812",
+ "id": "279"
+ },
+ {
+ "region": "9814",
+ "id": "275"
+ },
+ {
+ "region": "9874",
+ "id": "394"
+ },
+ {
+ "region": "9875",
+ "id": "394"
+ },
+ {
+ "region": "9878",
+ "id": "41"
+ },
+ {
+ "region": "9879",
+ "id": "59"
+ },
+ {
+ "region": "9882",
+ "id": "348"
+ },
+ {
+ "region": "9886",
+ "id": "448"
+ },
+ {
+ "region": "10031",
+ "id": "159"
+ },
+ {
+ "region": "10032",
+ "id": "83"
+ },
+ {
+ "region": "10033",
+ "id": "148"
+ },
+ {
+ "region": "10034",
+ "id": "24"
+ },
+ {
+ "region": "10035",
+ "id": "5"
+ },
+ {
+ "region": "10036",
+ "id": "328"
+ },
+ {
+ "region": "10037",
+ "id": "82"
+ },
+ {
+ "region": "10038",
+ "id": "32"
+ },
+ {
+ "region": "10039",
+ "id": "66"
+ },
+ {
+ "region": "10040",
+ "id": "320"
+ },
+ {
+ "region": "10042",
+ "id": "461"
+ },
+ {
+ "region": "10043",
+ "id": "225"
+ },
+ {
+ "region": "10044",
+ "id": "284"
+ },
+ {
+ "region": "10055",
+ "id": "129"
+ },
+ {
+ "region": "10056",
+ "id": "322"
+ },
+ {
+ "region": "10057",
+ "id": "13"
+ },
+ {
+ "region": "10058",
+ "id": "411"
+ },
+ {
+ "region": "10059",
+ "id": "190"
+ },
+ {
+ "region": "10061",
+ "id": "370"
+ },
+ {
+ "region": "10074",
+ "id": "589"
+ },
+ {
+ "region": "10075",
+ "id": "589"
+ },
+ {
+ "region": "10129",
+ "id": "453"
+ },
+ {
+ "region": "10131",
+ "id": "159"
+ },
+ {
+ "region": "10133",
+ "id": "148"
+ },
+ {
+ "region": "10134",
+ "id": "102"
+ },
+ {
+ "region": "10135",
+ "id": "478"
+ },
+ {
+ "region": "10136",
+ "id": "133"
+ },
+ {
+ "region": "10137",
+ "id": "82"
+ },
+ {
+ "region": "10138",
+ "id": "109"
+ },
+ {
+ "region": "10139",
+ "id": "66"
+ },
+ {
+ "region": "10140",
+ "id": "322"
+ },
+ {
+ "region": "10142",
+ "id": "517"
+ },
+ {
+ "region": "10144",
+ "id": "506"
+ },
+ {
+ "region": "10284",
+ "id": "474"
+ },
+ {
+ "region": "10286",
+ "id": "128"
+ },
+ {
+ "region": "10287",
+ "id": "188"
+ },
+ {
+ "region": "10288",
+ "id": "185"
+ },
+ {
+ "region": "10289",
+ "id": "27"
+ },
+ {
+ "region": "10290",
+ "id": "152"
+ },
+ {
+ "region": "10291",
+ "id": "191"
+ },
+ {
+ "region": "10292",
+ "id": "133"
+ },
+ {
+ "region": "10293",
+ "id": "193"
+ },
+ {
+ "region": "10294",
+ "id": "109"
+ },
+ {
+ "region": "10296",
+ "id": "290"
+ },
+ {
+ "region": "10297",
+ "id": "289"
+ },
+ {
+ "region": "10298",
+ "id": "289"
+ },
+ {
+ "region": "10299",
+ "id": "225"
+ },
+ {
+ "region": "10300",
+ "id": "285"
+ },
+ {
+ "region": "10307",
+ "id": "349"
+ },
+ {
+ "region": "10309",
+ "id": "148"
+ },
+ {
+ "region": "10310",
+ "id": "296"
+ },
+ {
+ "region": "10311",
+ "id": "308"
+ },
+ {
+ "region": "10314",
+ "id": "419"
+ },
+ {
+ "region": "10315",
+ "id": "158"
+ },
+ {
+ "region": "10321",
+ "id": "638"
+ },
+ {
+ "region": "10322",
+ "id": "66"
+ },
+ {
+ "region": "10330",
+ "id": "589"
+ },
+ {
+ "region": "10387",
+ "id": "29"
+ },
+ {
+ "region": "10388",
+ "id": "68"
+ },
+ {
+ "region": "10389",
+ "id": "27"
+ },
+ {
+ "region": "10390",
+ "id": "102"
+ },
+ {
+ "region": "10393",
+ "id": "346"
+ },
+ {
+ "region": "10394",
+ "id": "109"
+ },
+ {
+ "region": "10536",
+ "id": "588"
+ },
+ {
+ "region": "10537",
+ "id": "587"
+ },
+ {
+ "region": "10542",
+ "id": "71"
+ },
+ {
+ "region": "10544",
+ "id": "161"
+ },
+ {
+ "region": "10545",
+ "id": "167"
+ },
+ {
+ "region": "10546",
+ "id": "70"
+ },
+ {
+ "region": "10547",
+ "id": "99"
+ },
+ {
+ "region": "10548",
+ "id": "81"
+ },
+ {
+ "region": "10549",
+ "id": "60"
+ },
+ {
+ "region": "10550",
+ "id": "140"
+ },
+ {
+ "region": "10551",
+ "id": "20"
+ },
+ {
+ "region": "10552",
+ "id": "290"
+ },
+ {
+ "region": "10553",
+ "id": "289"
+ },
+ {
+ "region": "10554",
+ "id": "289"
+ },
+ {
+ "region": "10555",
+ "id": "225"
+ },
+ {
+ "region": "10558",
+ "id": "217"
+ },
+ {
+ "region": "10569",
+ "id": "107"
+ },
+ {
+ "region": "10571",
+ "id": "143"
+ },
+ {
+ "region": "10575",
+ "id": "393"
+ },
+ {
+ "region": "10577",
+ "id": "568"
+ },
+ {
+ "region": "10642",
+ "id": "71"
+ },
+ {
+ "region": "10644",
+ "id": "363"
+ },
+ {
+ "region": "10645",
+ "id": "363"
+ },
+ {
+ "region": "10646",
+ "id": "481"
+ },
+ {
+ "region": "10647",
+ "id": "169"
+ },
+ {
+ "region": "10648",
+ "id": "63"
+ },
+ {
+ "region": "10649",
+ "id": "63"
+ },
+ {
+ "region": "10650",
+ "id": "63"
+ },
+ {
+ "region": "10652",
+ "id": "316"
+ },
+ {
+ "region": "10653",
+ "id": "295"
+ },
+ {
+ "region": "10794",
+ "id": "306"
+ },
+ {
+ "region": "10795",
+ "id": "305"
+ },
+ {
+ "region": "10801",
+ "id": "164"
+ },
+ {
+ "region": "10802",
+ "id": "115"
+ },
+ {
+ "region": "10803",
+ "id": "91"
+ },
+ {
+ "region": "10804",
+ "id": "192"
+ },
+ {
+ "region": "10805",
+ "id": "184"
+ },
+ {
+ "region": "10806",
+ "id": "7"
+ },
+ {
+ "region": "10807",
+ "id": "21"
+ },
+ {
+ "region": "10808",
+ "id": "293"
+ },
+ {
+ "region": "10809",
+ "id": "291"
+ },
+ {
+ "region": "10810",
+ "id": "291"
+ },
+ {
+ "region": "10811",
+ "id": "291"
+ },
+ {
+ "region": "10820",
+ "id": "563"
+ },
+ {
+ "region": "10821",
+ "id": "282"
+ },
+ {
+ "region": "10822",
+ "id": "278"
+ },
+ {
+ "region": "10823",
+ "id": "278"
+ },
+ {
+ "region": "10827",
+ "id": "146"
+ },
+ {
+ "region": "10828",
+ "id": "378"
+ },
+ {
+ "region": "10829",
+ "id": "378"
+ },
+ {
+ "region": "10833",
+ "id": "249"
+ },
+ {
+ "region": "10834",
+ "id": "240"
+ },
+ {
+ "region": "10838",
+ "id": "442"
+ },
+ {
+ "region": "10839",
+ "id": "442"
+ },
+ {
+ "region": "10840",
+ "id": "444"
+ },
+ {
+ "region": "10841",
+ "id": "444"
+ },
+ {
+ "region": "10842",
+ "id": "444"
+ },
+ {
+ "region": "10894",
+ "id": "312"
+ },
+ {
+ "region": "10895",
+ "id": "311"
+ },
+ {
+ "region": "10899",
+ "id": "362"
+ },
+ {
+ "region": "10900",
+ "id": "362"
+ },
+ {
+ "region": "10901",
+ "id": "364"
+ },
+ {
+ "region": "10903",
+ "id": "17"
+ },
+ {
+ "region": "10904",
+ "id": "192"
+ },
+ {
+ "region": "10905",
+ "id": "63"
+ },
+ {
+ "region": "10906",
+ "id": "88"
+ },
+ {
+ "region": "10907",
+ "id": "340"
+ },
+ {
+ "region": "10908",
+ "id": "340"
+ },
+ {
+ "region": "10910",
+ "id": "274"
+ },
+ {
+ "region": "10911",
+ "id": "548"
+ },
+ {
+ "region": "11051",
+ "id": "303"
+ },
+ {
+ "region": "11053",
+ "id": "129"
+ },
+ {
+ "region": "11054",
+ "id": "114"
+ },
+ {
+ "region": "11055",
+ "id": "117"
+ },
+ {
+ "region": "11056",
+ "id": "58"
+ },
+ {
+ "region": "11057",
+ "id": "55"
+ },
+ {
+ "region": "11058",
+ "id": "6"
+ },
+ {
+ "region": "11059",
+ "id": "347"
+ },
+ {
+ "region": "11060",
+ "id": "324"
+ },
+ {
+ "region": "11061",
+ "id": "74"
+ },
+ {
+ "region": "11062",
+ "id": "104"
+ },
+ {
+ "region": "11065",
+ "id": "356"
+ },
+ {
+ "region": "11066",
+ "id": "4"
+ },
+ {
+ "region": "11068",
+ "id": "335"
+ },
+ {
+ "region": "11077",
+ "id": "277"
+ },
+ {
+ "region": "11078",
+ "id": "282"
+ },
+ {
+ "region": "11081",
+ "id": "5"
+ },
+ {
+ "region": "11083",
+ "id": "65"
+ },
+ {
+ "region": "11084",
+ "id": "378"
+ },
+ {
+ "region": "11085",
+ "id": "378"
+ },
+ {
+ "region": "11096",
+ "id": "444"
+ },
+ {
+ "region": "11097",
+ "id": "444"
+ },
+ {
+ "region": "11098",
+ "id": "444"
+ },
+ {
+ "region": "11151",
+ "id": "307"
+ },
+ {
+ "region": "11153",
+ "id": "265"
+ },
+ {
+ "region": "11154",
+ "id": "114"
+ },
+ {
+ "region": "11157",
+ "id": "248"
+ },
+ {
+ "region": "11161",
+ "id": "19"
+ },
+ {
+ "region": "11164",
+ "id": "341"
+ },
+ {
+ "region": "11165",
+ "id": "357"
+ },
+ {
+ "region": "11166",
+ "id": "261"
+ },
+ {
+ "region": "11309",
+ "id": "172"
+ },
+ {
+ "region": "11310",
+ "id": "90"
+ },
+ {
+ "region": "11311",
+ "id": "165"
+ },
+ {
+ "region": "11312",
+ "id": "162"
+ },
+ {
+ "region": "11313",
+ "id": "172"
+ },
+ {
+ "region": "11314",
+ "id": "170"
+ },
+ {
+ "region": "11317",
+ "id": "119"
+ },
+ {
+ "region": "11318",
+ "id": "87"
+ },
+ {
+ "region": "11319",
+ "id": "9"
+ },
+ {
+ "region": "11320",
+ "id": "187"
+ },
+ {
+ "region": "11321",
+ "id": "257"
+ },
+ {
+ "region": "11322",
+ "id": "292"
+ },
+ {
+ "region": "11323",
+ "id": "294"
+ },
+ {
+ "region": "11324",
+ "id": "569"
+ },
+ {
+ "region": "11331",
+ "id": "553"
+ },
+ {
+ "region": "11332",
+ "id": "564"
+ },
+ {
+ "region": "11335",
+ "id": "504"
+ },
+ {
+ "region": "11339",
+ "id": "52"
+ },
+ {
+ "region": "11343",
+ "id": "491"
+ },
+ {
+ "region": "11352",
+ "id": "444"
+ },
+ {
+ "region": "11353",
+ "id": "444"
+ },
+ {
+ "region": "11354",
+ "id": "444"
+ },
+ {
+ "region": "11356",
+ "id": "442"
+ },
+ {
+ "region": "11408",
+ "id": "365"
+ },
+ {
+ "region": "11410",
+ "id": "90"
+ },
+ {
+ "region": "11412",
+ "id": "162"
+ },
+ {
+ "region": "11413",
+ "id": "336"
+ },
+ {
+ "region": "11414",
+ "id": "25"
+ },
+ {
+ "region": "11416",
+ "id": "179"
+ },
+ {
+ "region": "11417",
+ "id": "19"
+ },
+ {
+ "region": "11418",
+ "id": "100"
+ },
+ {
+ "region": "11419",
+ "id": "100"
+ },
+ {
+ "region": "11421",
+ "id": "261"
+ },
+ {
+ "region": "11422",
+ "id": "369"
+ },
+ {
+ "region": "11423",
+ "id": "396"
+ },
+ {
+ "region": "11562",
+ "id": "304"
+ },
+ {
+ "region": "11565",
+ "id": "78"
+ },
+ {
+ "region": "11566",
+ "id": "94"
+ },
+ {
+ "region": "11567",
+ "id": "89"
+ },
+ {
+ "region": "11568",
+ "id": "479"
+ },
+ {
+ "region": "11569",
+ "id": "92"
+ },
+ {
+ "region": "11570",
+ "id": "138"
+ },
+ {
+ "region": "11571",
+ "id": "107"
+ },
+ {
+ "region": "11572",
+ "id": "186"
+ },
+ {
+ "region": "11573",
+ "id": "18"
+ },
+ {
+ "region": "11574",
+ "id": "77"
+ },
+ {
+ "region": "11575",
+ "id": "149"
+ },
+ {
+ "region": "11576",
+ "id": "258"
+ },
+ {
+ "region": "11578",
+ "id": "292"
+ },
+ {
+ "region": "11587",
+ "id": "564"
+ },
+ {
+ "region": "11588",
+ "id": "564"
+ },
+ {
+ "region": "11589",
+ "id": "524"
+ },
+ {
+ "region": "11591",
+ "id": "242"
+ },
+ {
+ "region": "11595",
+ "id": "57"
+ },
+ {
+ "region": "11599",
+ "id": "482"
+ },
+ {
+ "region": "11605",
+ "id": "232"
+ },
+ {
+ "region": "11606",
+ "id": "442"
+ },
+ {
+ "region": "11608",
+ "id": "442"
+ },
+ {
+ "region": "11612",
+ "id": "442"
+ },
+ {
+ "region": "11665",
+ "id": "30"
+ },
+ {
+ "region": "11666",
+ "id": "103"
+ },
+ {
+ "region": "11668",
+ "id": "129"
+ },
+ {
+ "region": "11670",
+ "id": "138"
+ },
+ {
+ "region": "11671",
+ "id": "53"
+ },
+ {
+ "region": "11672",
+ "id": "173"
+ },
+ {
+ "region": "11673",
+ "id": "178"
+ },
+ {
+ "region": "11676",
+ "id": "153"
+ },
+ {
+ "region": "11677",
+ "id": "264"
+ },
+ {
+ "region": "11678",
+ "id": "395"
+ },
+ {
+ "region": "11821",
+ "id": "162"
+ },
+ {
+ "region": "11823",
+ "id": "166"
+ },
+ {
+ "region": "11824",
+ "id": "515"
+ },
+ {
+ "region": "11825",
+ "id": "180"
+ },
+ {
+ "region": "11826",
+ "id": "12"
+ },
+ {
+ "region": "11827",
+ "id": "127"
+ },
+ {
+ "region": "11828",
+ "id": "72"
+ },
+ {
+ "region": "11829",
+ "id": "54"
+ },
+ {
+ "region": "11831",
+ "id": "34"
+ },
+ {
+ "region": "11832",
+ "id": "435"
+ },
+ {
+ "region": "11833",
+ "id": "183"
+ },
+ {
+ "region": "11834",
+ "id": "43"
+ },
+ {
+ "region": "11835",
+ "id": "37"
+ },
+ {
+ "region": "11837",
+ "id": "52"
+ },
+ {
+ "region": "11853",
+ "id": "402"
+ },
+ {
+ "region": "11864",
+ "id": "443"
+ },
+ {
+ "region": "11865",
+ "id": "443"
+ },
+ {
+ "region": "11866",
+ "id": "443"
+ },
+ {
+ "region": "11924",
+ "id": "576"
+ },
+ {
+ "region": "11925",
+ "id": "108"
+ },
+ {
+ "region": "11926",
+ "id": "490"
+ },
+ {
+ "region": "11929",
+ "id": "325"
+ },
+ {
+ "region": "11930",
+ "id": "582"
+ },
+ {
+ "region": "11936",
+ "id": "52"
+ },
+ {
+ "region": "11937",
+ "id": "52"
+ },
+ {
+ "region": "12078",
+ "id": "549"
+ },
+ {
+ "region": "12079",
+ "id": "62"
+ },
+ {
+ "region": "12080",
+ "id": "62"
+ },
+ {
+ "region": "12081",
+ "id": "105"
+ },
+ {
+ "region": "12082",
+ "id": "35"
+ },
+ {
+ "region": "12083",
+ "id": "49"
+ },
+ {
+ "region": "12084",
+ "id": "15"
+ },
+ {
+ "region": "12085",
+ "id": "310"
+ },
+ {
+ "region": "12086",
+ "id": "102"
+ },
+ {
+ "region": "12087",
+ "id": "96"
+ },
+ {
+ "region": "12088",
+ "id": "160"
+ },
+ {
+ "region": "12089",
+ "id": "66"
+ },
+ {
+ "region": "12090",
+ "id": "159"
+ },
+ {
+ "region": "12091",
+ "id": "42"
+ },
+ {
+ "region": "12092",
+ "id": "475"
+ },
+ {
+ "region": "12093",
+ "id": "334"
+ },
+ {
+ "region": "12100",
+ "id": "236"
+ },
+ {
+ "region": "12102",
+ "id": "633"
+ },
+ {
+ "region": "12105",
+ "id": "505"
+ },
+ {
+ "region": "12107",
+ "id": "412"
+ },
+ {
+ "region": "12108",
+ "id": "412"
+ },
+ {
+ "region": "12109",
+ "id": "402"
+ },
+ {
+ "region": "12111",
+ "id": "403"
+ },
+ {
+ "region": "12115",
+ "id": "86"
+ },
+ {
+ "region": "12117",
+ "id": "304"
+ },
+ {
+ "region": "12120",
+ "id": "443"
+ },
+ {
+ "region": "12121",
+ "id": "443"
+ },
+ {
+ "region": "12122",
+ "id": "443"
+ },
+ {
+ "region": "12181",
+ "id": "529"
+ },
+ {
+ "region": "12184",
+ "id": "325"
+ },
+ {
+ "region": "12186",
+ "id": "570"
+ },
+ {
+ "region": "12187",
+ "id": "585"
+ },
+ {
+ "region": "12192",
+ "id": "26"
+ },
+ {
+ "region": "12193",
+ "id": "68"
+ },
+ {
+ "region": "12335",
+ "id": "62"
+ },
+ {
+ "region": "12336",
+ "id": "62"
+ },
+ {
+ "region": "12337",
+ "id": "85"
+ },
+ {
+ "region": "12338",
+ "id": "3"
+ },
+ {
+ "region": "12339",
+ "id": "151"
+ },
+ {
+ "region": "12340",
+ "id": "333"
+ },
+ {
+ "region": "12341",
+ "id": "141"
+ },
+ {
+ "region": "12342",
+ "id": "98"
+ },
+ {
+ "region": "12343",
+ "id": "113"
+ },
+ {
+ "region": "12344",
+ "id": "8"
+ },
+ {
+ "region": "12345",
+ "id": "176"
+ },
+ {
+ "region": "12346",
+ "id": "435"
+ },
+ {
+ "region": "12349",
+ "id": "13"
+ },
+ {
+ "region": "12354",
+ "id": "494"
+ },
+ {
+ "region": "12367",
+ "id": "441"
+ },
+ {
+ "region": "12376",
+ "id": "443"
+ },
+ {
+ "region": "12377",
+ "id": "443"
+ },
+ {
+ "region": "12378",
+ "id": "443"
+ },
+ {
+ "region": "12436",
+ "id": "85"
+ },
+ {
+ "region": "12437",
+ "id": "144"
+ },
+ {
+ "region": "12438",
+ "id": "361"
+ },
+ {
+ "region": "12440",
+ "id": "338"
+ },
+ {
+ "region": "12441",
+ "id": "141"
+ },
+ {
+ "region": "12442",
+ "id": "98"
+ },
+ {
+ "region": "12589",
+ "id": "352"
+ },
+ {
+ "region": "12590",
+ "id": "263"
+ },
+ {
+ "region": "12591",
+ "id": "79"
+ },
+ {
+ "region": "12593",
+ "id": "64"
+ },
+ {
+ "region": "12594",
+ "id": "327"
+ },
+ {
+ "region": "12595",
+ "id": "163"
+ },
+ {
+ "region": "12596",
+ "id": "116"
+ },
+ {
+ "region": "12597",
+ "id": "175"
+ },
+ {
+ "region": "12598",
+ "id": "496"
+ },
+ {
+ "region": "12599",
+ "id": "56"
+ },
+ {
+ "region": "12600",
+ "id": "10"
+ },
+ {
+ "region": "12601",
+ "id": "476"
+ },
+ {
+ "region": "12602",
+ "id": "67"
+ },
+ {
+ "region": "12603",
+ "id": "449"
+ },
+ {
+ "region": "12604",
+ "id": "332"
+ },
+ {
+ "region": "12605",
+ "id": "106"
+ },
+ {
+ "region": "12610",
+ "id": "493"
+ },
+ {
+ "region": "12610",
+ "id": "493"
+ },
+ {
+ "region": "12614",
+ "id": "572"
+ },
+ {
+ "region": "12615",
+ "id": "214"
+ },
+ {
+ "region": "12619",
+ "id": "418"
+ },
+ {
+ "region": "12623",
+ "id": "441"
+ },
+ {
+ "region": "12625",
+ "id": "272"
+ },
+ {
+ "region": "12693",
+ "id": "389"
+ },
+ {
+ "region": "12694",
+ "id": "343"
+ },
+ {
+ "region": "12696",
+ "id": "528"
+ },
+ {
+ "region": "12697",
+ "id": "330"
+ },
+ {
+ "region": "12698",
+ "id": "144"
+ },
+ {
+ "region": "12843",
+ "id": "383"
+ },
+ {
+ "region": "12846",
+ "id": "267"
+ },
+ {
+ "region": "12848",
+ "id": "124"
+ },
+ {
+ "region": "12849",
+ "id": "145"
+ },
+ {
+ "region": "12850",
+ "id": "76"
+ },
+ {
+ "region": "12851",
+ "id": "2"
+ },
+ {
+ "region": "12852",
+ "id": "106"
+ },
+ {
+ "region": "12853",
+ "id": "125"
+ },
+ {
+ "region": "12854",
+ "id": "177"
+ },
+ {
+ "region": "12855",
+ "id": "169"
+ },
+ {
+ "region": "12856",
+ "id": "337"
+ },
+ {
+ "region": "12857",
+ "id": "332"
+ },
+ {
+ "region": "12858",
+ "id": "120"
+ },
+ {
+ "region": "12861",
+ "id": "127"
+ },
+ {
+ "region": "12880",
+ "id": "441"
+ },
+ {
+ "region": "12888",
+ "id": "445"
+ },
+ {
+ "region": "12889",
+ "id": "445"
+ },
+ {
+ "region": "12890",
+ "id": "445"
+ },
+ {
+ "region": "12944",
+ "id": "606"
+ },
+ {
+ "region": "12945",
+ "id": "359"
+ },
+ {
+ "region": "12946",
+ "id": "266"
+ },
+ {
+ "region": "12948",
+ "id": "397"
+ },
+ {
+ "region": "12949",
+ "id": "108"
+ },
+ {
+ "region": "12950",
+ "id": "46"
+ },
+ {
+ "region": "12952",
+ "id": "106"
+ },
+ {
+ "region": "12953",
+ "id": "125"
+ },
+ {
+ "region": "12956",
+ "id": "569"
+ },
+ {
+ "region": "13099",
+ "id": "383"
+ },
+ {
+ "region": "13100",
+ "id": "387"
+ },
+ {
+ "region": "13102",
+ "id": "174"
+ },
+ {
+ "region": "13104",
+ "id": "69"
+ },
+ {
+ "region": "13105",
+ "id": "50"
+ },
+ {
+ "region": "13106",
+ "id": "36"
+ },
+ {
+ "region": "13107",
+ "id": "123"
+ },
+ {
+ "region": "13108",
+ "id": "111"
+ },
+ {
+ "region": "13109",
+ "id": "157"
+ },
+ {
+ "region": "13110",
+ "id": "93"
+ },
+ {
+ "region": "13111",
+ "id": "121"
+ },
+ {
+ "region": "13113",
+ "id": "14"
+ },
+ {
+ "region": "13114",
+ "id": "182"
+ },
+ {
+ "region": "13115",
+ "id": "182"
+ },
+ {
+ "region": "13116",
+ "id": "331"
+ },
+ {
+ "region": "13117",
+ "id": "329"
+ },
+ {
+ "region": "13131",
+ "id": "428"
+ },
+ {
+ "region": "13133",
+ "id": "552"
+ },
+ {
+ "region": "13135",
+ "id": "441"
+ },
+ {
+ "region": "13141",
+ "id": "272"
+ },
+ {
+ "region": "13142",
+ "id": "459"
+ },
+ {
+ "region": "13144",
+ "id": "445"
+ },
+ {
+ "region": "13145",
+ "id": "445"
+ },
+ {
+ "region": "13146",
+ "id": "445"
+ },
+ {
+ "region": "13199",
+ "id": "388"
+ },
+ {
+ "region": "13200",
+ "id": "213"
+ },
+ {
+ "region": "13203",
+ "id": "168"
+ },
+ {
+ "region": "13206",
+ "id": "407"
+ },
+ {
+ "region": "13209",
+ "id": "594"
+ },
+ {
+ "region": "13356",
+ "id": "505"
+ },
+ {
+ "region": "13357",
+ "id": "267"
+ },
+ {
+ "region": "13358",
+ "id": "351"
+ },
+ {
+ "region": "13359",
+ "id": "174"
+ },
+ {
+ "region": "13361",
+ "id": "50"
+ },
+ {
+ "region": "13362",
+ "id": "47"
+ },
+ {
+ "region": "13363",
+ "id": "122"
+ },
+ {
+ "region": "13364",
+ "id": "75"
+ },
+ {
+ "region": "13365",
+ "id": "20"
+ },
+ {
+ "region": "13366",
+ "id": "93"
+ },
+ {
+ "region": "13368",
+ "id": "179"
+ },
+ {
+ "region": "13369",
+ "id": "326"
+ },
+ {
+ "region": "13373",
+ "id": "586"
+ },
+ {
+ "region": "13400",
+ "id": "445"
+ },
+ {
+ "region": "13401",
+ "id": "445"
+ },
+ {
+ "region": "13402",
+ "id": "445"
+ },
+ {
+ "region": "13456",
+ "id": "452"
+ },
+ {
+ "region": "13457",
+ "id": "464"
+ },
+ {
+ "region": "13458",
+ "id": "540"
+ },
+ {
+ "region": "13459",
+ "id": "540"
+ },
+ {
+ "region": "13461",
+ "id": "462"
+ },
+ {
+ "region": "13463",
+ "id": "534"
+ },
+ {
+ "region": "13464",
+ "id": "45"
+ },
+ {
+ "region": "13465",
+ "id": "45"
+ },
+ {
+ "region": "13611",
+ "id": "451"
+ },
+ {
+ "region": "13613",
+ "id": "447"
+ },
+ {
+ "region": "13614",
+ "id": "465"
+ },
+ {
+ "region": "13616",
+ "id": "377"
+ },
+ {
+ "region": "13617",
+ "id": "36"
+ },
+ {
+ "region": "13618",
+ "id": "286"
+ },
+ {
+ "region": "13619",
+ "id": "154"
+ },
+ {
+ "region": "13620",
+ "id": "245"
+ },
+ {
+ "region": "13621",
+ "id": "84"
+ },
+ {
+ "region": "13622",
+ "id": "48"
+ },
+ {
+ "region": "13623",
+ "id": "339"
+ },
+ {
+ "region": "13642",
+ "id": "411"
+ },
+ {
+ "region": "13712",
+ "id": "452"
+ },
+ {
+ "region": "13718",
+ "id": "11"
+ },
+ {
+ "region": "13720",
+ "id": "246"
+ },
+ {
+ "region": "13722",
+ "id": "156"
+ },
+ {
+ "region": "13723",
+ "id": "514"
+ },
+ {
+ "region": "13872",
+ "id": "377"
+ },
+ {
+ "region": "13873",
+ "id": "501"
+ },
+ {
+ "region": "13875",
+ "id": "286"
+ },
+ {
+ "region": "13876",
+ "id": "241"
+ },
+ {
+ "region": "13877",
+ "id": "244"
+ },
+ {
+ "region": "13878",
+ "id": "61"
+ },
+ {
+ "region": "13879",
+ "id": "344"
+ },
+ {
+ "region": "13899",
+ "id": "146"
+ },
+ {
+ "region": "13968",
+ "id": "539"
+ },
+ {
+ "region": "13972",
+ "id": "260"
+ },
+ {
+ "region": "13975",
+ "id": "287"
+ },
+ {
+ "region": "13977",
+ "id": "319"
+ },
+ {
+ "region": "13979",
+ "id": "342"
+ },
+ {
+ "region": "14131",
+ "id": "380"
+ },
+ {
+ "region": "14134",
+ "id": "288"
+ },
+ {
+ "region": "14155",
+ "id": "146"
+ },
+ {
+ "region": "14157",
+ "id": "379"
+ },
+ {
+ "region": "14158",
+ "id": "379"
+ },
+ {
+ "region": "14167",
+ "id": "562"
+ },
+ {
+ "region": "14231",
+ "id": "381"
+ },
+ {
+ "region": "14234",
+ "id": "345"
+ },
+ {
+ "region": "14391",
+ "id": "353"
+ },
+ {
+ "region": "14413",
+ "id": "379"
+ },
+ {
+ "region": "14414",
+ "id": "379"
+ },
+ {
+ "region": "14486",
+ "id": "197"
+ },
+ {
+ "region": "14488",
+ "id": "521"
+ },
+ {
+ "region": "14638",
+ "id": "530"
+ },
+ {
+ "region": "14646",
+ "id": "355"
+ },
+ {
+ "region": "14746",
+ "id": "354"
+ },
+ {
+ "region": "14747",
+ "id": "471"
+ },
+ {
+ "region": "14894",
+ "id": "631"
+ },
+ {
+ "region": "14994",
+ "id": "632"
+ },
+ {
+ "region": "14995",
+ "id": "632"
+ },
+ {
+ "region": "15148",
+ "id": "238"
+ },
+ {
+ "region": "15150",
+ "id": "611"
+ },
+ {
+ "region": "15151",
+ "id": "610"
+ },
+ {
+ "region": "15159",
+ "id": "358"
+ },
+ {
+ "region": "15248",
+ "id": "238"
+ },
+ {
+ "region": "15251",
+ "id": "632"
+ }
+]
\ No newline at end of file
diff --git a/Server/data/configs/music_tiles.json b/Server/data/configs/music_tiles.json
new file mode 100644
index 000000000..7b901f974
--- /dev/null
+++ b/Server/data/configs/music_tiles.json
@@ -0,0 +1,62 @@
+[
+ {
+ "id": "98",
+ "borders": "{3072,3456,3135,3519,[3076,3456,3085,3458]~,[3082,3459,3085,3460]}"
+ },
+ {
+ "id": "141",
+ "borders": "{3072,3392,3135,3455,[3076,3452,3085,3455]}"
+ },
+ {
+ "id": "228",
+ "borders": "{2896,5446,2919,5462}"
+ },
+ {
+ "id": "229",
+ "borders": "{2921,5456,2937,5479}"
+ },
+ {
+ "id": "230",
+ "borders": "{2904,5481,2927,5497}"
+ },
+ {
+ "id": "231",
+ "borders": "{2886,5464,2902,5487}"
+ },
+ {
+ "id": "386",
+ "borders": "{2820,5312,2849,5369}-{2849,5349,2880,5374}"
+ },
+ {
+ "id": "391",
+ "borders": "{2879,5340,2944,5366}-{2909,5316,2944,5340}"
+ },
+ {
+ "id": "399",
+ "borders": "{2816,5248,2943,5375,[2823,5250,2844,5310]~,[2844,5250,2878,5280]~,[2879,5340,2944,5366]~,[2909,5316,2944,5340]~,[2820,5312,2849,5369]~,[2849,5349,2880,5374]~,[2885,5253,2934,5278]~,[2913,5278,2937,5306]}"
+ },
+ {
+ "id": "404",
+ "borders": "{2823,5250,2844,5310}-{2844,5250,2878,5276}"
+ },
+ {
+ "id": "408",
+ "borders": "{2885,5253,2934,5278}-{2913,5278,2937,5306}"
+ },
+ {
+ "id": "459",
+ "borders": "{3137,5442,3192,5564}-{3193,5442,3198,5472}-{3193,5507,3198,5564}"
+ },
+ {
+ "id": "467",
+ "borders": "{3199,5441,3262,5564}-{3193,5482,3198,5497}"
+ },
+ {
+ "id": "488",
+ "borders": "{3263,5441,3327,5566}"
+ },
+ {
+ "id": "492",
+ "borders": "{3076,3452,3085,3460,[3076,3459,3081,3460]}"
+ }
+]
\ No newline at end of file
diff --git a/Server/data/configs/npc_configs.json b/Server/data/configs/npc_configs.json
index 3eab75924..71d194eab 100644
--- a/Server/data/configs/npc_configs.json
+++ b/Server/data/configs/npc_configs.json
@@ -18,7 +18,7 @@
"attack_level": "17"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "422",
"combat_audio": "511,513,512",
@@ -41,7 +41,7 @@
"attack_level": "5"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "422",
"combat_audio": "511,513,512",
@@ -62,7 +62,7 @@
"attack_level": "3"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "422",
"combat_audio": "511,513,512",
@@ -83,7 +83,7 @@
"attack_level": "3"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "422",
"combat_audio": "511,506,505",
@@ -103,7 +103,7 @@
"attack_level": "3"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "422",
"combat_audio": "511,506,505",
@@ -123,7 +123,7 @@
"attack_level": "3"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,506,505",
@@ -163,14 +163,14 @@
},
{
"examine": "Known for his light-fingered qualities.",
- "melee_animation": "284",
+ "melee_animation": "422",
"range_animation": "0",
"attack_speed": "4",
"respawn_delay": "60",
- "defence_animation": "285",
+ "defence_animation": "0",
"weakness": "9",
"magic_animation": "0",
- "death_animation": "287",
+ "death_animation": "836",
"name": "Thief",
"defence_level": "10",
"safespot": null,
@@ -182,15 +182,15 @@
},
{
"examine": "He tries to keep order around here.",
- "melee_animation": "284",
+ "melee_animation": "400",
"range_animation": "0",
- "combat_audio": "511,513,512",
+ "combat_audio": "2549,1979,512",
"attack_speed": "4",
"respawn_delay": "60",
- "defence_animation": "285",
+ "defence_animation": "404",
"weakness": "9",
"magic_animation": "0",
- "death_animation": "287",
+ "death_animation": "836",
"name": "Guard",
"defence_level": "13",
"safespot": null,
@@ -332,18 +332,21 @@
"examine": "Part of Al-Kharid's elite fighting force.",
"melee_animation": "390",
"range_animation": "390",
- "attack_speed": "6",
+ "combat_audio": "2500,1976,512",
+ "attack_speed": "4",
+ "respawn_delay": "25",
"defence_animation": "387",
"weakness": "7",
"magic_animation": "390",
"death_animation": "836",
"name": "Al-Kharid warrior",
- "defence_level": "5",
+ "defence_level": "4",
"safespot": null,
"lifepoints": "19",
- "strength_level": "15",
+ "strength_level": "5",
"id": "18",
"clue_level": "0",
+ "bonuses": "10,10,10,0,0,12,15,10,-1,12,0,9,0,0,0",
"range_level": "1",
"attack_level": "7"
},
@@ -443,7 +446,7 @@
"attack_level": "38"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -464,7 +467,7 @@
"attack_level": "3"
},
{
- "examine": "One of 2009Scape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,506,505",
@@ -746,7 +749,6 @@
},
{
"examine": "Yep. Definitely a chicken.",
- "slayer_task": "7",
"melee_animation": "5387",
"range_animation": "5387",
"combat_audio": "355,357,356",
@@ -833,7 +835,6 @@
},
{
"examine": "Quackers.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"respawn_delay": "60",
@@ -853,7 +854,6 @@
},
{
"examine": "A popular dwarven delicacy.",
- "slayer_task": "67",
"melee_animation": "2705",
"range_animation": "2705",
"combat_audio": "3102,3104,3103",
@@ -876,7 +876,6 @@
},
{
"examine": "A jungle version of the chicken, but more vicious.",
- "slayer_task": "7",
"melee_animation": "5387",
"range_animation": "0",
"attack_speed": "4",
@@ -896,7 +895,6 @@
},
{
"examine": "Hello, nice doggy...",
- "slayer_task": "43",
"melee_animation": "6562",
"range_animation": "6562",
"combat_audio": "3717,3719,3718",
@@ -922,7 +920,6 @@
{
"agg_radius": "64",
"examine": "The biggest, meanest dragon around.",
- "slayer_task": "9",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -964,7 +961,6 @@
},
{
"examine": "Young but still dangerous.",
- "slayer_task": "11",
"combat_audio": "405,407,406",
"melee_animation": "25",
"attack_speed": "4",
@@ -988,7 +984,6 @@
},
{
"examine": "A big powerful dragon.",
- "slayer_task": "68",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -1014,7 +1009,6 @@
},
{
"examine": "A fierce dragon with black scales!",
- "slayer_task": "9",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -1040,7 +1034,6 @@
},
{
"examine": "A mother dragon.",
- "slayer_task": "11",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -1098,7 +1091,6 @@
},
{
"examine": "Is it a spider or is it a shadow?",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -1121,7 +1113,6 @@
},
{
"examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -1144,7 +1135,6 @@
},
{
"examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "5327",
"combat_audio": "537,539,538",
@@ -1166,7 +1156,6 @@
},
{
"examine": "Incey wincey.",
- "slayer_task": "76",
"melee_animation": "6249",
"range_animation": "0",
"respawn_delay": "60",
@@ -1187,7 +1176,6 @@
},
{
"examine": "A barely visible deadly jungle spider.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "5327",
"combat_audio": "537,539,538",
@@ -1213,7 +1201,6 @@
},
{
"examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "5327",
"combat_audio": "537,539,538",
@@ -1237,7 +1224,6 @@
},
{
"examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -1329,7 +1315,6 @@
},
{
"examine": "A scaly reptilian creature.",
- "slayer_task": "",
"melee_animation": "422",
"range_animation": "422",
"attack_speed": "4",
@@ -1384,7 +1369,6 @@
},
{
"examine": "Dead man walking.",
- "slayer_task": "93",
"melee_animation": "5567",
"combat_audio": "931,923,922",
"attack_speed": "4",
@@ -1404,7 +1388,6 @@
},
{
"examine": "Dead woman walking.",
- "slayer_task": "93",
"melee_animation": "5578",
"range_animation": "5578",
"combat_audio": "931,923,922",
@@ -1426,7 +1409,6 @@
},
{
"examine": "The walking dead.",
- "slayer_task": "93",
"melee_animation": "5578",
"range_animation": "5578",
"combat_audio": "931,923,922",
@@ -1448,7 +1430,6 @@
},
{
"examine": "The walking dead.",
- "slayer_task": "93",
"melee_animation": "5571",
"combat_audio": "931,923,922",
"attack_speed": "4",
@@ -1468,7 +1449,6 @@
},
{
"examine": "The living dead.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "4",
@@ -1488,9 +1468,9 @@
},
{
"examine": "An annoying flappy thing.",
- "slayer_task": "5",
"melee_animation": "4915",
"range_animation": "4915",
+ "combat_audio": "292,294,293",
"attack_speed": "4",
"magic_level": "1",
"respawn_delay": "35",
@@ -1506,12 +1486,12 @@
"strength_level": "22",
"id": "78",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,10,10,12,10,8,0,0,0,0,0",
"range_level": "1",
"attack_level": "22"
},
{
"examine": "A shadowy, barely visible flying entity from some evil place.",
- "slayer_task": "5",
"melee_animation": "4915",
"range_animation": "0",
"attack_speed": "4",
@@ -1550,7 +1530,6 @@
},
{
"examine": "Converts grass to beef.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "5849",
"combat_audio": "369,371,370",
@@ -1571,7 +1550,6 @@
},
{
"examine": "Lesser, but still pretty big.",
- "slayer_task": "56",
"melee_animation": "4630",
"range_animation": "4630",
"combat_audio": "400,404,403",
@@ -1596,7 +1574,6 @@
},
{
"examine": "Big, red, and incredibly evil.",
- "slayer_task": "40",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "400,404,403",
@@ -1622,7 +1599,6 @@
},
{
"examine": "A big, scary, jet-black demon.",
- "slayer_task": "8",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "397,399,398",
@@ -1665,7 +1641,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "4933",
"combat_audio": "703,705,704",
@@ -1687,7 +1662,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -1710,7 +1684,6 @@
},
{
"examine": "A dirty rat.",
- "slayer_task": "67",
"range_animation": "0",
"combat_audio": "703,705,704",
"attack_speed": "4",
@@ -1734,10 +1707,10 @@
"examine": "Horse with a horn.",
"melee_animation": "6376",
"range_animation": "6376",
- "combat_audio": "496,498,497",
+ "combat_audio": "369,371,370",
"attack_speed": "4",
"magic_level": "1",
- "respawn_delay": "32",
+ "respawn_delay": "90",
"defence_animation": "6375",
"weakness": "3",
"magic_animation": "6376",
@@ -1753,16 +1726,16 @@
},
{
"examine": "Not man's best friend.",
- "slayer_task": "92",
"melee_animation": "6559",
"combat_audio": "481,491,490",
"attack_speed": "4",
+ "defence_animation": "6557",
"slayer_exp": "69",
"death_animation": "6558",
"name": "Wolf",
"defence_level": "52",
"safespot": null,
- "lifepoints": "15",
+ "lifepoints": "69",
"strength_level": "55",
"id": "95",
"range_level": "1",
@@ -1770,9 +1743,9 @@
},
{
"examine": "A vicious mountain wolf.",
- "slayer_task": "92",
"melee_animation": "6579",
"range_animation": "6579",
+ "combat_audio": "909,912,911",
"attack_speed": "4",
"defence_animation": "6578",
"weakness": "9",
@@ -1791,9 +1764,9 @@
},
{
"examine": "A vicious mountain wolf.",
- "slayer_task": "92",
"melee_animation": "6579",
"range_animation": "6579",
+ "combat_audio": "909,912,911",
"attack_speed": "4",
"defence_animation": "6578",
"weakness": "7",
@@ -1828,7 +1801,6 @@
},
{
"examine": "He doesn't seem pleased to see me.",
- "slayer_task": "27",
"melee_animation": "6562",
"range_animation": "6562",
"attack_speed": "4",
@@ -1911,7 +1883,6 @@
{
"agg_radius": "",
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5540",
"range_animation": "5540",
"combat_audio": "436,439,438",
@@ -1936,7 +1907,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5540",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -1961,46 +1931,51 @@
},
{
"examine": "Eek! A bear!",
- "slayer_task": "6",
"melee_animation": "4925",
"range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
+ "combat_audio": "300,302,301",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "0",
"weakness": "7",
"slayer_exp": "27",
"magic_animation": "0",
"death_animation": "4929",
"name": "Grizzly bear",
- "defence_level": "23",
+ "defence_level": "15",
"safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
+ "lifepoints": "27",
+ "strength_level": "18",
"id": "105",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "23"
+ "attack_level": "17"
},
{
"examine": "Eek! A bear!",
- "slayer_task": "6",
"melee_animation": "4925",
"range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
+ "combat_audio": "300,302,301",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "0",
"weakness": "7",
"slayer_exp": "25",
"magic_animation": "0",
"death_animation": "4929",
"name": "Black bear",
- "defence_level": "17",
+ "defence_level": "13",
"safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
+ "lifepoints": "25",
+ "strength_level": "16",
"id": "106",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "17"
+ "attack_level": "15"
},
{
"examine": "An extremely vicious scorpion.",
@@ -2022,7 +1997,6 @@
},
{
"examine": "It has a very vicious looking tail.",
- "slayer_task": "71",
"melee_animation": "6254",
"range_animation": "0",
"combat_audio": "3611,3612,3610",
@@ -2048,7 +2022,6 @@
},
{
"examine": "Tiny",
- "slayer_task": "71",
"melee_animation": "6254",
"range_animation": "0",
"combat_audio": "3611,3612,3610",
@@ -2069,7 +2042,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -2094,13 +2066,12 @@
},
{
"examine": "He's got icicles in his beard.",
- "slayer_task": "47",
"melee_animation": "4672",
"range_animation": "0",
- "combat_audio": "449,451,450",
+ "combat_audio": "448,451,450",
"attack_speed": "5",
"magic_level": "1",
- "respawn_delay": "60",
+ "respawn_delay": "30",
"defence_animation": "0",
"weakness": "9",
"slayer_exp": "70",
@@ -2119,7 +2090,6 @@
},
{
"examine": "His beard seems to have a life of its own.",
- "slayer_task": "62",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "449,451,450",
@@ -2148,13 +2118,14 @@
"range_animation": "128",
"attack_speed": "5",
"defence_animation": "129",
+ "weakness": "7",
"magic_animation": "128",
"death_animation": "131",
"name": "Jogre",
"defence_level": "41",
"safespot": null,
"lifepoints": "50",
- "strength_level": "1",
+ "strength_level": "36",
"id": "113",
"aggressive": "true",
"clue_level": "1",
@@ -2169,6 +2140,7 @@
"magic_level": "27",
"respawn_delay": "25",
"defence_animation": "360",
+ "slayer_exp": "",
"magic_animation": "359",
"death_animation": "361",
"name": "Mogre",
@@ -2205,7 +2177,6 @@
},
{
"examine": "Big, ugly, and smelly.",
- "slayer_task": "44",
"melee_animation": "359",
"range_animation": "359",
"attack_speed": "4",
@@ -2230,7 +2201,6 @@
},
{
"examine": "A very large foe.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "4652",
"combat_audio": "448,451,450",
@@ -2255,7 +2225,6 @@
},
{
"examine": "A short angry guy.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"attack_speed": "7",
@@ -2276,9 +2245,9 @@
},
{
"examine": "A dwarf gone bad.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
+ "combat_audio": "2567,419,418",
"attack_speed": "4",
"magic_level": "1",
"respawn_delay": "150",
@@ -2300,7 +2269,6 @@
},
{
"examine": "A mountain dwelling short angry guy.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"attack_speed": "6",
@@ -2352,7 +2320,7 @@
"examine": "An ugly smelly creature.",
"melee_animation": "164",
"range_animation": "164",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "6",
"defence_animation": "165",
"magic_animation": "164",
@@ -2369,7 +2337,6 @@
},
{
"examine": "A strange, inhuman, elemental warrior.",
- "slayer_task": "30",
"melee_animation": "393",
"range_animation": "0",
"attack_speed": "4",
@@ -2393,10 +2360,11 @@
},
{
"examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
"melee_animation": "451",
"range_animation": "451",
+ "combat_audio": "2500,530,529",
"attack_speed": "4",
+ "respawn_delay": "30",
"defence_animation": "404",
"weakness": "9",
"slayer_exp": "59",
@@ -2416,7 +2384,6 @@
},
{
"examine": "Looks pretty otherworldly to me!",
- "slayer_task": "65",
"range_animation": "0",
"attack_speed": "5",
"magic_level": "45",
@@ -2437,6 +2404,7 @@
"examine": "A magic axe with a mind of its own.",
"melee_animation": "185",
"range_animation": "0",
+ "combat_audio": "2498,12,1976",
"attack_speed": "4",
"respawn_delay": "30",
"defence_animation": "0",
@@ -2450,6 +2418,7 @@
"strength_level": "38",
"id": "127",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,10,5,15,5,10,0,0,0,0,0",
"range_level": "1",
"attack_level": "38"
},
@@ -2478,7 +2447,6 @@
},
{
"examine": "An inhabitant of icy regions.",
- "slayer_task": "7",
"melee_animation": "5669",
"range_animation": "0",
"defence_animation": "0",
@@ -2496,7 +2464,6 @@
},
{
"examine": "Perhaps our oldest relatives?",
- "slayer_task": "61",
"melee_animation": "220",
"range_animation": "0",
"combat_audio": "629,631,630",
@@ -2522,25 +2489,26 @@
"examine": "A unicorn with a blackened heart.",
"melee_animation": "6376",
"range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "24",
+ "combat_audio": "369,371,370",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "90",
"defence_animation": "6375",
"weakness": "3",
"magic_animation": "6376",
"death_animation": "6377",
"name": "Black unicorn",
- "defence_level": "15",
+ "defence_level": "23",
"safespot": null,
- "lifepoints": "28",
- "strength_level": "10",
+ "lifepoints": "29",
+ "strength_level": "23",
"id": "133",
+ "aggressive": "false",
"range_level": "1",
- "attack_level": "15"
+ "attack_level": "21"
},
{
"examine": "A nasty, poisonous arachnid.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -2580,36 +2548,47 @@
},
{
"examine": "A giant raptor.",
- "slayer_task": "7",
"melee_animation": "1010",
"range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "832,834,833",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "30",
+ "defence_animation": "1012",
"weakness": "6",
"magic_animation": "0",
"death_animation": "1013",
"name": "Terrorbird",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "138",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
+ "defence_level": "19",
"safespot": null,
"lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "139",
+ "strength_level": "23",
+ "id": "138",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
+ "attack_level": "23"
+ },
+ {
+ "examine": "A giant raptor.",
+ "melee_animation": "1010",
+ "combat_audio": "832,834,833",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "30",
+ "defence_animation": "1012",
+ "magic_animation": "0",
+ "death_animation": "1013",
+ "name": "Terrorbird",
+ "defence_level": "19",
+ "safespot": null,
+ "lifepoints": "34",
+ "strength_level": "23",
+ "id": "139",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "23"
},
{
"examine": "A servant to Iban.",
@@ -2632,7 +2611,6 @@
},
{
"examine": "Must be the pack leader.",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"respawn_delay": "60",
@@ -2667,7 +2645,6 @@
},
{
"examine": "A rare jungle wolf - specific to the Kharazi jungle.",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"respawn_delay": "60",
@@ -2688,7 +2665,6 @@
},
{
"examine": "Wow! Scorpions shouldn't grow that big.",
- "slayer_task": "71",
"melee_animation": "6254",
"range_animation": "0",
"combat_audio": "3611,3612,3610",
@@ -2711,10 +2687,11 @@
},
{
"examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
"melee_animation": "451",
"range_animation": "451",
+ "combat_audio": "2500,530,529",
"attack_speed": "4",
+ "respawn_delay": "30",
"defence_animation": "404",
"weakness": "9",
"slayer_exp": "59",
@@ -2734,7 +2711,6 @@
},
{
"examine": "A sea bird.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -2751,7 +2727,6 @@
},
{
"examine": "A sea bird.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -2768,7 +2743,6 @@
},
{
"examine": "A sea bird.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -2817,7 +2791,6 @@
},
{
"examine": "A fighter from the supernatural world. He's a shadow of his former self.",
- "slayer_task": "74",
"melee_animation": "394",
"range_animation": "0",
"attack_speed": "5",
@@ -2837,53 +2810,51 @@
"attack_level": "47"
},
{
- "examine": "Small",
+ "examine": "Small, even by gnome standards.",
"melee_animation": "191",
"range_animation": "0",
- "defence_animation": "0",
+ "defence_animation": "193",
"weakness": "9",
"magic_animation": "0",
"death_animation": "196",
"name": "Gnome child",
"defence_level": "1",
"safespot": null,
- "lifepoints": "1",
+ "lifepoints": "2",
"strength_level": "1",
"id": "159",
"range_level": "1",
"attack_level": "1"
},
{
- "examine": "Seems to crawl the caves.",
- "melee_animation": "266",
- "range_animation": "266",
- "attack_speed": "5",
- "defence_animation": "267",
- "weakness": "9",
- "magic_animation": "266",
- "death_animation": "265",
- "name": "Gnome child",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "23",
- "id": "160",
- "bonuses": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "Small",
+ "examine": "Small, even by gnome standards.",
"melee_animation": "191",
"range_animation": "0",
- "defence_animation": "0",
+ "defence_animation": "193",
"weakness": "9",
"magic_animation": "0",
"death_animation": "196",
"name": "Gnome child",
"defence_level": "1",
"safespot": null,
- "lifepoints": "1",
+ "lifepoints": "2",
+ "strength_level": "1",
+ "id": "160",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Small, even by gnome standards.",
+ "melee_animation": "191",
+ "range_animation": "0",
+ "defence_animation": "193",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "196",
+ "name": "Gnome child",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "2",
"strength_level": "1",
"id": "161",
"range_level": "1",
@@ -2978,7 +2949,7 @@
"attack_level": "30"
},
{
- "examine": "One of RuneScape's many citizens",
+ "examine": "One of Gielinor's many citizens",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -3068,6 +3039,7 @@
"examine": "He jumps out and attacks people.",
"melee_animation": "422",
"range_animation": "0",
+ "combat_audio": "511,513,512",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "9",
@@ -3105,37 +3077,42 @@
"examine": "A dark-hearted knight.",
"melee_animation": "390",
"range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "2503,15,512",
+ "attack_speed": "5",
+ "respawn_delay": "25",
+ "defence_animation": "388",
"weakness": "7",
"magic_animation": "0",
"death_animation": "836",
"name": "Black Knight",
- "defence_level": "22",
+ "defence_level": "25",
"safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
+ "lifepoints": "42",
+ "strength_level": "25",
"id": "178",
"aggressive": "true",
+ "bonuses": "18,18,18,0,0,73,76,70,-11,72,0,16,0,0,0",
"range_level": "1",
- "attack_level": "22"
+ "attack_level": "25"
},
{
+ "examine": "A dark-hearted knight.",
"melee_animation": "390",
- "attack_speed": "6",
- "respawn_delay": "60",
+ "combat_audio": "2503,15,512",
+ "attack_speed": "5",
+ "respawn_delay": "25",
"defence_animation": "388",
"death_animation": "836",
"name": "Black Knight",
- "defence_level": "1",
+ "defence_level": "25",
"safespot": null,
"lifepoints": "42",
- "strength_level": "1",
+ "strength_level": "25",
"id": "179",
"aggressive": "true",
+ "bonuses": "18,18,18,0,0,73,76,70,-11,72,0,16,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "25"
},
{
"examine": "He holds up passers by.",
@@ -3520,7 +3497,6 @@
},
{
"examine": "A rocky slug.",
- "slayer_task": "69",
"melee_animation": "1595",
"range_animation": "1595",
"combat_audio": "729,731,730",
@@ -3542,7 +3518,6 @@
},
{
"examine": "A rocky slug.",
- "slayer_task": "69",
"melee_animation": "1595",
"range_animation": "1595",
"combat_audio": "729,731,730",
@@ -3621,7 +3596,6 @@
},
{
"examine": "A dwarven guard.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -3811,7 +3785,6 @@
},
{
"examine": "A dirty rat.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -3963,44 +3936,53 @@
"attack_level": "1"
},
{
- "examine": "He's guarding the door.",
- "melee_animation": "0",
+ "examine": "It's one of General Khazard's guards.",
+ "melee_animation": "395",
"range_animation": "0",
- "defence_animation": "0",
+ "combat_audio": "511,513,512",
+ "attack_speed": "6",
+ "respawn_delay": "60",
+ "defence_animation": "397",
+ "weakness": "6",
"magic_animation": "0",
- "death_animation": "0",
+ "death_animation": "836",
"name": "Khazard Guard",
- "defence_level": "1",
+ "defence_level": "22",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "31",
+ "strength_level": "22",
"id": "253",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "22"
},
{
"examine": "He's been guarding the tavern for a bit too long.",
- "melee_animation": "0",
+ "melee_animation": "395",
"range_animation": "0",
- "defence_animation": "0",
+ "combat_audio": "511,513,512",
+ "attack_speed": "6",
+ "respawn_delay": "60",
+ "defence_animation": "397",
+ "weakness": "6",
"magic_animation": "0",
- "death_animation": "0",
+ "death_animation": "836",
"name": "Khazard Guard",
- "defence_level": "1",
+ "defence_level": "22",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "31",
+ "strength_level": "22",
"id": "254",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "22"
},
{
"examine": "His armour indicates he's a Khazard Guard.",
"melee_animation": "395",
"range_animation": "0",
+ "combat_audio": "511,513,512",
"attack_speed": "6",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "397",
"weakness": "6",
"magic_animation": "0",
"death_animation": "836",
@@ -4017,9 +3999,10 @@
"examine": "His armour indicates he's a Khazard Guard.",
"melee_animation": "395",
"range_animation": "0",
+ "combat_audio": "511,513,512",
"attack_speed": "6",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "397",
"weakness": "6",
"magic_animation": "0",
"death_animation": "836",
@@ -4032,6 +4015,66 @@
"range_level": "1",
"attack_level": "22"
},
+ {
+ "examine": "He takes the slaves to the arena. He rarely takes them back..",
+ "melee_animation": "395",
+ "range_animation": "0",
+ "combat_audio": "511,513,512",
+ "attack_speed": "6",
+ "respawn_delay": "60",
+ "defence_animation": "397",
+ "weakness": "6",
+ "magic_animation": "0",
+ "death_animation": "836",
+ "name": "Khazard Guard",
+ "defence_level": "22",
+ "safespot": null,
+ "lifepoints": "31",
+ "strength_level": "22",
+ "id": "257",
+ "range_level": "1",
+ "attack_level": "22"
+ },
+ {
+ "examine": "He looks really nasty. Smells bad too.",
+ "melee_animation": "7049",
+ "range_animation": "0",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "60",
+ "defence_animation": "7050",
+ "weakness": "6",
+ "magic_animation": "0",
+ "death_animation": "836",
+ "name": "General Khazard",
+ "defence_level": "80",
+ "safespot": null,
+ "lifepoints": "170",
+ "strength_level": "78",
+ "id": "258",
+ "range_level": "1",
+ "attack_level": "75"
+ },
+ {
+ "examine": "A tough looking barman.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "combat_audio": "511,513,512",
+ "attack_speed": "6",
+ "respawn_delay": "60",
+ "defence_animation": "397",
+ "weakness": "6",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Khazard barman",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "259",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A slave fighter. He looks mistreated and weak.",
"melee_animation": "0",
@@ -4048,29 +4091,103 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "She looks wealthy.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Lady Servil",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "264",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A young squire. He looks worse for wear.",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Jeremy Servil",
+ "defence_level": "0",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "0",
+ "id": "265",
+ "clue_level": "0",
+ "range_level": "0",
+ "attack_level": "0"
+ },
+ {
+ "examine": "A young squire. He looks worse for wear.",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Jeremy Servil",
+ "defence_level": "0",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "0",
+ "id": "266",
+ "clue_level": "0",
+ "range_level": "0",
+ "attack_level": "0"
+ },
+ {
+ "examine": "Jeremy father, Sir Servil.",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Justin Servil",
+ "defence_level": "0",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "0",
+ "id": "267",
+ "clue_level": "0",
+ "range_level": "0",
+ "attack_level": "0"
+ },
+ {
+ "examine": "A scruffy looking chap.",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Local",
+ "defence_level": "0",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "0",
+ "id": "268",
+ "clue_level": "0",
+ "range_level": "0",
+ "attack_level": "0"
+ },
{
"melee_animation": "6581",
"respawn_delay": "60",
"defence_animation": "6578",
"death_animation": "6576",
"name": "Bouncer",
- "defence_level": "1",
+ "defence_level": "120",
"safespot": null,
"lifepoints": "116",
- "strength_level": "1",
+ "strength_level": "120",
"id": "269",
"aggressive": "true",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "120"
},
{
"examine": "Khazard's strongest ogre warrior.",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8576",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "25",
+ "defence_animation": "360",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Khazard Ogre",
"defence_level": "46",
"safespot": null,
@@ -4078,11 +4195,12 @@
"strength_level": "46",
"id": "270",
"aggressive": "true",
+ "bonuses": "22,22,22,0,0,0,0,0,0,0,0,20,0,0,0",
"range_level": "1",
"attack_level": "46"
},
{
- "examine": "A large",
+ "examine": "A large angry scorpion",
"melee_animation": "6254",
"range_animation": "0",
"combat_audio": "3611,3612,3610",
@@ -4100,13 +4218,56 @@
"range_level": "36",
"attack_level": "27"
},
+ {
+ "examine": "He walks with a slight limp.",
+ "melee_animation": "401",
+ "range_animation": "0",
+ "combat_audio": "511,513,512",
+ "magic_level": "1",
+ "respawn_delay": "30",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "0",
+ "death_animation": "836",
+ "name": "Lucien",
+ "defence_level": "10",
+ "safespot": null,
+ "lifepoints": "17",
+ "strength_level": "11",
+ "id": "272",
+ "aggressive": "",
+ "range_level": "1",
+ "attack_level": "12"
+ },
+ {
+ "examine": "He walks with a slight limp.",
+ "melee_animation": "",
+ "range_animation": "",
+ "combat_audio": "",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
+ "death_animation": "836",
+ "name": "Lucien",
+ "defence_level": "",
+ "safespot": null,
+ "lifepoints": "",
+ "strength_level": "",
+ "id": "273",
+ "aggressive": "",
+ "range_level": "",
+ "attack_level": "12"
+ },
{
"examine": "A guard who has devoted their life to Armadyl.",
"range_animation": "0",
+ "melee_animation": "401",
+ "combat_audio": "511,513,512",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "404",
"weakness": "8",
"magic_animation": "0",
+ "death_animation": "836",
"name": "Guardian of Armadyl",
"defence_level": "30",
"safespot": null,
@@ -4119,9 +4280,13 @@
{
"examine": "A guard who has devoted their life to Armadyl.",
"range_animation": "0",
- "defence_animation": "0",
+ "melee_animation": "401",
+ "combat_audio": "511,513,512",
+ "respawn_delay": "60",
+ "defence_animation": "404",
"weakness": "8",
"magic_animation": "0",
+ "death_animation": "836",
"name": "Guardian of Armadyl",
"defence_level": "30",
"safespot": null,
@@ -4133,21 +4298,28 @@
},
{
"examine": "Intimidating!",
+ "start_gfx": "99",
"combat_style": "2",
+ "start_height": "96",
"melee_animation": "0",
"range_animation": "0",
+ "combat_audio": "511,513,512",
+ "attack_speed": "8",
+ "magic_level": "62",
+ "end_gfx": "101",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "425",
"weakness": "3",
- "magic_animation": "0",
+ "magic_animation": "711",
"death_animation": "836",
"name": "Fire Warrior of Lesarkus",
- "defence_level": "55",
+ "defence_level": "78",
"safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
+ "lifepoints": "59",
+ "strength_level": "78",
"id": "277",
"range_level": "1",
+ "projectile": "127",
"attack_level": "55"
},
{
@@ -4613,130 +4785,129 @@
"attack_level": "1"
},
{
- "examine": "A mourner, or plague healer.",
- "melee_animation": "414",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "347",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "examine": "A mourner, or plague healer.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "348",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "examine": "One of RuneScape's many citizens.",
- "melee_animation": "422",
- "range_animation": "0",
+ "range_animation": "",
"combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
+ "attack_speed": "4",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "836",
"name": "Man",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "13",
+ "strength_level": "1",
"id": "351",
- "clue_level": "0",
+ "clue_level": "",
+ "bonuses": "0,0,0,0,0,1,1,1,0,0,0,0,0,0,0",
"range_level": "1",
"attack_level": "2"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
- "range_animation": "0",
+ "range_animation": "",
"combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "836",
"name": "Woman",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "10",
+ "strength_level": "1",
"id": "352",
- "clue_level": "0",
+ "clue_level": "",
+ "bonuses": "0,0,0,0,0,1,1,1,0,0,0,0,0,0,0",
"range_level": "1",
"attack_level": "2"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
- "range_animation": "0",
+ "range_animation": "",
"combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "836",
"name": "Woman",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "13",
+ "strength_level": "1",
"id": "353",
- "clue_level": "0",
+ "clue_level": "",
+ "bonuses": "0,0,0,0,0,1,1,1,0,0,0,0,0,0,0",
"range_level": "1",
"attack_level": "2"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
- "range_animation": "0",
+ "range_animation": "",
"combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "836",
"name": "Woman",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "13",
+ "strength_level": "1",
"id": "354",
- "clue_level": "0",
+ "clue_level": "",
+ "bonuses": "0,0,0,0,0,1,1,1,0,0,0,0,0,0,0",
"range_level": "1",
"attack_level": "2"
},
{
"examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "magic_level": "",
+ "defence_animation": "",
+ "poison_amount": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Child",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "movement_radius": "",
+ "lifepoints": "",
+ "strength_level": "",
"id": "355",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
+ },
+ {
+ "examine": "A child of West Ardougne.",
+ "melee_animation": "",
+ "range_animation": "",
+ "magic_level": "",
+ "defence_animation": "",
+ "poison_amount": "",
+ "magic_animation": "",
+ "death_animation": "",
+ "name": "Child",
+ "defence_level": "",
+ "safespot": null,
+ "movement_radius": "",
+ "lifepoints": "",
+ "strength_level": "",
+ "id": "356",
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "A holy man.",
@@ -4755,93 +4926,111 @@
"attack_level": "1"
},
{
- "examine": "Man...",
- "name": "Man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
+ "examine": "One of Gielinor's many citizens.",
+ "melee_animation": "422",
+ "range_animation": "422",
"combat_audio": "511,513,512",
- "strength_level": "1",
+ "attack_speed": "4",
+ "magic_level": "6",
+ "respawn_delay": "18",
+ "defence_animation": "404",
+ "weakness": "9",
+ "magic_animation": "422",
+ "death_animation": "9055",
+ "name": "Man",
+ "defence_level": "5",
+ "safespot": null,
+ "lifepoints": "7",
+ "strength_level": "2",
"id": "359",
"clue_level": "0",
"range_level": "1",
+ "attack_level": "5"
+ },
+ {
+ "examine": "One of Gielinor's many citizens.",
+ "melee_animation": "422",
+ "range_animation": "",
+ "combat_audio": "511,506,505",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
+ "death_animation": "836",
+ "name": "Woman",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "13",
+ "strength_level": "1",
+ "id": "360",
+ "clue_level": "",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "2"
+ },
+ {
+ "examine": "One of Gielinor's many citizens.",
+ "melee_animation": "422",
+ "range_animation": "422",
+ "combat_audio": "511,506,505",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
+ "death_animation": "836",
+ "name": "Woman",
+ "defence_level": "10",
+ "safespot": null,
+ "lifepoints": "13",
+ "strength_level": "10",
+ "id": "361",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
+ },
+ {
+ "examine": "One of Gielinor's many citizens.",
+ "melee_animation": "422",
+ "range_animation": "",
+ "combat_audio": "511,506,505",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
+ "death_animation": "836",
+ "name": "Woman",
+ "defence_level": "2",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "362",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
- "range_animation": "0",
+ "range_animation": "",
"combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "404",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "836",
"name": "Woman",
- "defence_level": "2",
+ "defence_level": "10",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "360",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "One of RuneScape's many citizens.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Woman",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "2",
- "id": "361",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "One of RuneScape's many citizens.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Woman",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "362",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "One of RuneScape's many citizens.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,506,505",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Woman",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "2",
+ "lifepoints": "23",
+ "strength_level": "10",
"id": "363",
- "clue_level": "0",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "2"
+ "attack_level": "10"
},
{
"examine": "King Lathas of East Ardougne.",
@@ -4905,23 +5094,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A mourner",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "369",
- "range_level": "1",
- "attack_level": "24"
- },
{
"examine": "She's quite a looker!",
"melee_animation": "0",
@@ -4940,7 +5112,6 @@
},
{
"examine": "Big, ugly, and smelly.",
- "slayer_task": "64",
"melee_animation": "359",
"range_animation": "359",
"attack_speed": "6",
@@ -5032,6 +5203,7 @@
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "3611,3612,3610",
+ "respawn_delay": "60",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -5054,6 +5226,7 @@
"strength_level": "1",
"id": "386",
"range_level": "1",
+ "respawn_delay": "60",
"attack_level": "1"
},
{
@@ -5066,6 +5239,7 @@
"strength_level": "1",
"id": "387",
"range_level": "1",
+ "respawn_delay": "60",
"attack_level": "1"
},
{
@@ -5123,7 +5297,6 @@
},
{
"examine": "Beefy.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "5849",
"combat_audio": "369,371,370",
@@ -5194,6 +5367,7 @@
"examine": "Insects buzzing around.",
"melee_animation": "0",
"range_animation": "0",
+ "combat_audio": "819,821,820",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -5203,13 +5377,12 @@
"lifepoints": "10",
"strength_level": "1",
"id": "411",
- "aggressive": "true",
+ "aggressive": "false",
"range_level": "1",
"attack_level": "1"
},
{
"examine": "An annoying flappy thing.",
- "slayer_task": "5",
"melee_animation": "4915",
"range_animation": "4915",
"attack_speed": "5",
@@ -5346,6 +5519,7 @@
"examine": "Dead but not gone.",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "511,439,438",
"respawn_delay": "50",
"defence_animation": "0",
"weakness": "9",
@@ -5364,6 +5538,7 @@
"examine": "Dead but not gone.",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "511,439,438",
"respawn_delay": "50",
"defence_animation": "0",
"weakness": "9",
@@ -5382,6 +5557,7 @@
"examine": "Dead but not gone.",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "511,439,438",
"respawn_delay": "50",
"defence_animation": "0",
"weakness": "9",
@@ -5398,9 +5574,9 @@
},
{
"examine": "Dead but not gone.",
- "slayer_task": "73",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "511,439,438",
"respawn_delay": "50",
"defence_animation": "0",
"weakness": "9",
@@ -5418,9 +5594,9 @@
},
{
"examine": "Dead but not gone.",
- "slayer_task": "73",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "511,439,438",
"magic_level": "1",
"respawn_delay": "50",
"defence_animation": "0",
@@ -5645,7 +5821,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -5667,7 +5842,7 @@
},
{
"examine": "I wonder who he's guarding?",
- "melee_animation": "0",
+ "melee_animation": "401",
"range_animation": "0",
"combat_audio": "511,513,512",
"attack_speed": "5",
@@ -5707,7 +5882,7 @@
},
{
"examine": "I wonder who he's guarding?",
- "melee_animation": "0",
+ "melee_animation": "401",
"range_animation": "0",
"combat_audio": "511,513,512",
"attack_speed": "5",
@@ -6054,7 +6229,6 @@
},
{
"examine": "He doesn't look like he'd trust his own mother.",
- "slayer_task": "38",
"melee_animation": "6199",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -6123,7 +6297,6 @@
},
{
"examine": "A vicious",
- "slayer_task": "71",
"melee_animation": "6261",
"range_animation": "0",
"combat_audio": "3611,3612,3610",
@@ -6210,7 +6383,6 @@
},
{
"examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"attack_speed": "5",
@@ -6231,7 +6403,6 @@
},
{
"examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"defence_animation": "0",
@@ -6249,7 +6420,6 @@
},
{
"examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "5",
@@ -6270,7 +6440,6 @@
},
{
"examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
"melee_animation": "5571",
"range_animation": "0",
"attack_speed": "5",
@@ -6527,13 +6696,13 @@
"attack_level": "1"
},
{
- "examine": "Like a grave keeper",
+ "examine": "He clearly takes pride in his appearance.",
"range_animation": "0",
"magic_level": "60",
"defence_animation": "0",
"weakness": "10",
"magic_animation": "0",
- "name": "Shopkeeper",
+ "name": "Shopkeeper Kofi",
"defence_level": "60",
"safespot": null,
"lifepoints": "285",
@@ -6543,6 +6712,23 @@
"range_level": "60",
"attack_level": "60"
},
+ {
+ "examine": "Needs a haircut.",
+ "range_animation": "0",
+ "magic_level": "60",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "name": "Shop assistant",
+ "defence_level": "60",
+ "safespot": null,
+ "lifepoints": "285",
+ "strength_level": "60",
+ "id": "533",
+ "aggressive": "true",
+ "range_level": "60",
+ "attack_level": "60"
+ },
{
"examine": "Sells stuff.",
"melee_animation": "0",
@@ -6719,6 +6905,16 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A being from a mysterious realm.",
+ "name": "Jukat",
+ "id": "564"
+ },
+ {
+ "examine": "Is he invisible, or just floating clothing?",
+ "name": "Irksol",
+ "id": "566"
+ },
{
"examine": "Looks strange and mysterious.",
"melee_animation": "0",
@@ -6863,22 +7059,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "If crafting's your thing, he's your man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rommik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "He seems to sell tea.",
"melee_animation": "0",
@@ -7041,6 +7221,38 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A student busy studying the digsite.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Student",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "615",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A student busy studying the digsite.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Student",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "616",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A student busy studying the digsite.",
"melee_animation": "0",
@@ -7513,7 +7725,6 @@
},
{
"examine": "A big, scary, jet-black demon.",
- "slayer_task": "8",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "397,399,398",
@@ -7807,6 +8018,7 @@
"name": "Imp",
"defence_level": "2",
"safespot": null,
+ "movement_radius": "25",
"lifepoints": "8",
"strength_level": "2",
"id": "708",
@@ -7825,6 +8037,7 @@
"name": "Imp",
"defence_level": "1",
"safespot": null,
+ "movement_radius": "25",
"lifepoints": "8",
"strength_level": "1",
"id": "709",
@@ -7848,32 +8061,43 @@
"attack_level": "1"
},
{
- "slayer_exp": "0",
+ "slayer_exp": "",
"examine": "A local civilian.",
"name": "Edmond",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "combat_audio": "",
+ "strength_level": "",
"id": "714",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
- "examine": "In charge of people with silly outfits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
+ "slayer_exp": "",
+ "examine": "A local civilian.",
+ "name": "Edmond",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "716",
- "range_level": "1",
- "attack_level": "1"
+ "lifepoints": "",
+ "combat_audio": "",
+ "strength_level": "",
+ "id": "3213",
+ "range_level": "",
+ "attack_level": ""
+ },
+ {
+ "slayer_exp": "",
+ "examine": "A local civilian.",
+ "name": "Edmond",
+ "defence_level": "",
+ "safespot": null,
+ "lifepoints": "",
+ "combat_audio": "",
+ "strength_level": "",
+ "id": "3214",
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "A member of the Ardougne Royal Army.",
@@ -7892,7 +8116,7 @@
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"name": "Man",
"defence_level": "1",
"safespot": null,
@@ -7905,7 +8129,7 @@
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"name": "Man",
"defence_level": "1",
"safespot": null,
@@ -7918,43 +8142,46 @@
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
+ "examine": "One of Gielinor's many citizens.",
+ "melee_animation": "",
+ "range_animation": "",
+ "combat_audio": "",
+ "protect_style": "",
+ "respawn_delay": "",
"defence_animation": "0",
- "magic_animation": "0",
+ "slayer_exp": "",
+ "magic_animation": "",
"death_animation": "0",
"name": "Man",
"defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "safespot": "",
+ "lifepoints": "",
+ "strength_level": "",
"id": "728",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
+ "clue_level": "",
+ "range_level": "",
+ "attack_level": ""
},
{
- "examine": "One of RuneScape's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "examine": "One of Gielinor's many citizens.",
+ "melee_animation": "",
+ "range_animation": "",
+ "combat_audio": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Man",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "729",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
+ "clue_level": "",
+ "range_level": "",
+ "attack_level": ""
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"name": "Man",
"defence_level": "1",
"safespot": null,
@@ -8100,7 +8327,6 @@
},
{
"examine": "A badly-behaved goblin.",
- "slayer_task": "38",
"melee_animation": "6184",
"range_animation": "0",
"defence_animation": "0",
@@ -8276,51 +8502,51 @@
},
{
"examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Civilian",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "785",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Civilian",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "786",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Civilian",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "787",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "A gnome who's supposed to be cleaning up a mess.",
@@ -8374,20 +8600,21 @@
"examine": "A cold hearted lady.",
"melee_animation": "422",
"range_animation": "0",
- "magic_level": "55",
+ "magic_level": "1",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "10",
"magic_animation": "0",
"death_animation": "836",
"name": "Ice Queen",
- "defence_level": "55",
+ "defence_level": "95",
"safespot": null,
- "lifepoints": "157",
- "strength_level": "55",
+ "lifepoints": "104",
+ "strength_level": "94",
"id": "795",
- "range_level": "55",
- "attack_level": "55"
+ "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "95"
},
{
"examine": "He looks cold and hungry.",
@@ -8741,7 +8968,6 @@
},
{
"examine": "A vicious desert wolf.",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"defence_animation": "0",
@@ -8871,7 +9097,6 @@
},
{
"examine": "Tough-looking.",
- "slayer_task": "64",
"range_animation": "0",
"attack_speed": "4",
"magic_level": "1",
@@ -8902,7 +9127,6 @@
},
{
"examine": "These ogres protect the city.",
- "slayer_task": "64",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -8920,7 +9144,6 @@
},
{
"examine": "An ogre that guards.",
- "slayer_task": "64",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -8938,7 +9161,6 @@
},
{
"examine": "Tries to keep the peace.",
- "slayer_task": "64",
"melee_animation": "2100",
"range_animation": "0",
"defence_animation": "0",
@@ -8988,7 +9210,6 @@
},
{
"examine": "Big and ugly looking.",
- "slayer_task": "64",
"melee_animation": "2100",
"range_animation": "0",
"respawn_delay": "60",
@@ -9023,7 +9244,6 @@
},
{
"examine": "Funnily enough",
- "slayer_task": "64",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -9040,7 +9260,6 @@
},
{
"examine": "Funnily enough",
- "slayer_task": "64",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -9057,7 +9276,6 @@
},
{
"examine": "Funnily enough",
- "slayer_task": "64",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -9493,7 +9711,7 @@
},
{
"examine": "I wonder who he's guarding?",
- "melee_animation": "0",
+ "melee_animation": "401",
"range_animation": "0",
"combat_audio": "511,513,512",
"attack_speed": "5",
@@ -9611,7 +9829,6 @@
},
{
"examine": "Must be related to Elvarg.",
- "slayer_task": "41",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -9684,7 +9901,7 @@
"attack_level": "1"
},
{
- "examine": "Your introduction to the world of RuneScape.",
+ "examine": "Your introduction to the world of Gielinor.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -9716,7 +9933,7 @@
"attack_level": "1"
},
{
- "examine": "An official representative from the First National Bank of RuneScape.",
+ "examine": "An official representative from the First National Bank of Gielinor.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -9748,7 +9965,7 @@
"attack_level": "1"
},
{
- "examine": "Your introduction to the world of RuneScape.",
+ "examine": "Your introduction to the world of Gielinor.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -9817,7 +10034,6 @@
},
{
"examine": "Converts grass to beef.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "5849",
"combat_audio": "369,371,370",
@@ -9838,10 +10054,11 @@
},
{
"examine": "He's had a fair bit to drink...",
- "start_gfx": "33",
+ "start_gfx": "",
"combat_style": "1",
"melee_animation": "99",
"range_animation": "99",
+ "combat_audio": "2707,419,418",
"attack_speed": "5",
"magic_level": "20",
"defence_animation": "101",
@@ -9877,7 +10094,6 @@
},
{
"examine": "It's one of Iban's pets.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -9896,7 +10112,6 @@
},
{
"examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
"range_animation": "0",
"combat_audio": "703,705,704",
"defence_animation": "0",
@@ -10044,7 +10259,7 @@
"defence_level": "1",
"safespot": null,
"lifepoints": "10",
- "combat_audio": "496,498,497",
+ "combat_audio": "369,371,370",
"strength_level": "1",
"id": "987",
"range_level": "1",
@@ -10244,16 +10459,26 @@
"attack_level": "1"
},
{
- "slayer_exp": "8",
"examine": "An annoying flappy thing.",
+ "combat_audio": "292,294,293",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "35",
+ "slayer_exp": "8",
"name": "Giant bat",
- "defence_level": "1",
+ "defence_level": "22",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "32",
+ "strength_level": "22",
"id": "1005",
+ "bonuses": "0,0,0,0,0,10,10,12,10,8,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "22"
+ },
+ {
+ "examine": "A rather nasty looking crustacean.",
+ "name": "Sea slug",
+ "id": "1006"
},
{
"examine": "A servant of Zamorak.",
@@ -10280,7 +10505,6 @@
},
{
"examine": "A nasty, poisonous arachnid.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -10306,6 +10530,7 @@
"examine": "A green skinned croaker",
"melee_animation": "0",
"range_animation": "0",
+ "respawn_delay": "34",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -10338,7 +10563,6 @@
},
{
"examine": "Yep. Definitely a chicken.",
- "slayer_task": "7",
"melee_animation": "5387",
"range_animation": "5387",
"combat_audio": "355,357,356",
@@ -10359,7 +10583,6 @@
},
{
"examine": "He rules the",
- "slayer_task": "7",
"melee_animation": "5387",
"range_animation": "0",
"respawn_delay": "60",
@@ -10402,22 +10625,23 @@
"melee_animation": "4868",
"range_animation": "0",
"combat_audio": "1531,1533,1532",
- "attack_speed": "7",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "attack_speed": "6",
+ "magic_level": "10",
+ "respawn_delay": "50",
+ "defence_animation": "4869",
"weakness": "7",
"magic_animation": "0",
"death_animation": "4870",
"name": "Earth elemental",
- "defence_level": "32",
+ "defence_level": "35",
"safespot": null,
"movement_radius": "4",
- "lifepoints": "45",
+ "lifepoints": "35",
"strength_level": "32",
"id": "1020",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
+ "aggressive": "false",
+ "range_level": "30",
+ "attack_level": "20"
},
{
"examine": "An air elemental.",
@@ -10460,7 +10684,7 @@
"attack_level": "24"
},
{
- "examine": "Could his name be 'Lurch'?",
+ "examine": "It looks very hungry!",
"melee_animation": "7183",
"slayer_exp": "50",
"death_animation": "7185",
@@ -10556,6 +10780,7 @@
"examine": "Arrghhh... a Ghast.",
"melee_animation": "0",
"range_animation": "0",
+ "combat_audio": "433,435,434",
"defence_animation": "0",
"weakness": "9",
"magic_animation": "0",
@@ -10575,6 +10800,7 @@
"death_gfx": "265",
"range_animation": "0",
"melee_animation": "1087",
+ "combat_audio": "433,435,434",
"attack_speed": "4",
"magic_level": "1",
"respawn_delay": "60",
@@ -10689,6 +10915,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A sergeant of the Imperial Guard.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sergeant",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1062",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A soldier of the Imperial Guard.",
"melee_animation": "0",
@@ -10799,6 +11041,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "The Burthorpe Castle cook.",
+ "melee_animation": "422",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
+ "death_animation": "836",
+ "name": "Eadburg",
+ "defence_level": "3",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "2",
+ "id": "1072",
+ "range_level": "1",
+ "attack_level": "3"
+ },
{
"examine": "A Burthorpe Castle Archer.",
"start_gfx": "19",
@@ -10845,13 +11103,11 @@
},
{
"examine": "A Burthorpe Castle guard.",
- "melee_animation": "0",
- "range_animation": "0",
+ "melee_animation": "401",
"combat_audio": "511,513,512",
"magic_level": "1",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "defence_animation": "404",
+ "death_animation": "836",
"name": "Guard",
"defence_level": "33",
"safespot": null,
@@ -10864,13 +11120,11 @@
},
{
"examine": "A Burthorpe Castle guard.",
- "melee_animation": "0",
- "range_animation": "0",
+ "melee_animation": "401",
"combat_audio": "511,513,512",
"magic_level": "1",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "defence_animation": "404",
+ "death_animation": "836",
"name": "Guard",
"defence_level": "33",
"safespot": null,
@@ -10882,34 +11136,77 @@
"attack_level": "33"
},
{
- "examine": "A servant for Prince Anlaf.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1081",
- "range_level": "1",
- "attack_level": "1"
+ "examine": "An off-duty Burthorpe Castle guard.",
+ "name": "Harold",
+ "id": "1078"
},
{
+ "examine": "Barman of the Toad and Chicken.",
+ "name": "Tostig",
+ "id": "1079"
+ },
+ {
+ "examine": "Head servant for Prince Anlaf.",
+ "name": "Eohric",
+ "id": "1080"
+ },
+ {
+ "examine": "A servant for Prince Anlaf.",
+ "melee_animation": "422",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
- "name": "Ocga",
- "defence_level": "1",
+ "name": "Servant",
+ "defence_level": "3",
"safespot": null,
"lifepoints": "10",
+ "strength_level": "3",
+ "id": "1081",
+ "range_level": "1",
+ "attack_level": "3"
+ },
+ {
+ "examine": "Smithy for Burthorpe.",
+ "name": "Dunstan",
+ "id": "1082"
+ },
+ {
+ "examine": "Shopkeeper for Burthorpe.",
+ "name": "Wistan",
+ "id": "1083"
+ },
+ {
+ "examine": "A citizen of Burthorpe.",
"melee_animation": "422",
- "strength_level": "1",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
+ "death_animation": "836",
+ "name": "Breoca",
+ "defence_level": "3",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "3",
+ "id": "1084",
+ "range_level": "1",
+ "attack_level": "3"
+ },
+ {
+ "examine": "A citizen of Burthorpe.",
+ "melee_animation": "422",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
+ "death_animation": "836",
+ "name": "Ocga",
+ "defence_level": "3",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "3",
"id": "1085",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "3"
},
{
"name": "Man",
@@ -10924,46 +11221,57 @@
"attack_level": "1"
},
{
+ "examine": "A citizen of Burthorpe.",
+ "melee_animation": "422",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Penda",
- "defence_level": "1",
+ "defence_level": "3",
"safespot": null,
"lifepoints": "10",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "3",
"id": "1087",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "3"
},
{
+ "examine": "A citizen of Burthorpe.",
+ "melee_animation": "422",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Hygd",
- "defence_level": "1",
+ "defence_level": "3",
"safespot": null,
"lifepoints": "10",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "2",
"id": "1088",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "3"
},
{
+ "examine": "A citizen of Burthorpe.",
+ "melee_animation": "422",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Ceolburg",
- "defence_level": "1",
+ "defence_level": "3",
"safespot": null,
"lifepoints": "10",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "2",
"id": "1089",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "3"
+ },
+ {
+ "examine": "A pretty young woman with an air of mystery around her.",
+ "name": "Hild",
+ "id": "1090"
},
{
"examine": "The knight seems to be watching something.",
@@ -10987,7 +11295,6 @@
},
{
"examine": "The biggest and baddest troll.",
- "slayer_task": "83",
"melee_animation": "6523",
"range_animation": "0",
"respawn_delay": "60",
@@ -10995,57 +11302,78 @@
"weakness": "7",
"magic_animation": "0",
"name": "Rock",
- "defence_level": "63",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
+ "lifepoints": "140",
+ "strength_level": "110",
"id": "1095",
"aggressive": "true",
+ "bonuses": "60,60,60,0,0,35,60,35,200,200,0,100,0,0,0",
"range_level": "1",
- "attack_level": "63"
+ "attack_level": "70"
},
{
"examine": "Careful, he is a big.",
- "slayer_task": "83",
- "range_animation": "0",
+ "melee_animation": "284",
+ "range_animation": "284",
"attack_speed": "7",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Stick",
- "defence_level": "61",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
+ "lifepoints": "135",
+ "strength_level": "110",
"id": "1096",
"aggressive": "true",
+ "bonuses": "50,50,50,0,0,30,30,50,200,200,0,80,0,0,0",
"range_level": "1",
- "attack_level": "61"
+ "attack_level": "60"
},
{
- "name": "Pee Hat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "126",
- "strength_level": "1",
- "id": "1097",
- "range_level": "1",
+ "examine": "A nasty looking troll.",
+ "melee_animation": "284",
+ "range_animation": "284",
+ "attack_speed": "6",
"respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Kraka",
- "defence_level": "1",
+ "defence_animation": "285",
+ "weakness": "7",
+ "magic_animation": "284",
+ "death_animation": "287",
+ "name": "Pee Hat",
+ "defence_level": "50",
"safespot": null,
"lifepoints": "120",
- "strength_level": "1",
+ "strength_level": "100",
+ "id": "1097",
+ "aggressive": "true",
+ "bonuses": "40,40,40,0,0,25,25,40,200,200,0,70,0,0,0",
+ "range_level": "1",
+ "attack_level": "50"
+ },
+ {
+ "examine": "A nasty looking troll.",
+ "melee_animation": "284",
+ "range_animation": "284",
"attack_speed": "6",
+ "respawn_delay": "60",
+ "defence_animation": "285",
+ "weakness": "7",
+ "magic_animation": "284",
+ "death_animation": "287",
+ "name": "Kraka",
+ "defence_level": "50",
+ "safespot": null,
+ "lifepoints": "120",
+ "strength_level": "100",
"id": "1098",
"aggressive": "true",
+ "bonuses": "40,40,40,0,0,25,25,40,200,400,0,70,0,0,0",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "50"
},
{
"examine": "Human is his speciality.",
@@ -11086,7 +11414,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but mean, ugly and throws rocks.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "7",
@@ -11108,7 +11435,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but mean, ugly and throws rocks.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "7",
@@ -11130,7 +11456,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but mean, ugly and throws rocks.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "7",
@@ -11152,7 +11477,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but mean, ugly and throws rocks.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "7",
@@ -11174,7 +11498,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but mean, ugly and throws rocks.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "7",
@@ -11195,7 +11518,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11214,7 +11536,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11233,7 +11554,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11252,7 +11572,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11271,7 +11590,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11290,7 +11608,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11309,7 +11626,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11328,13 +11644,14 @@
},
{
"examine": "One of the troll generals.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll general",
"defence_level": "65",
"safespot": null,
@@ -11347,13 +11664,14 @@
},
{
"examine": "One of the troll generals.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll general",
"defence_level": "65",
"safespot": null,
@@ -11366,13 +11684,14 @@
},
{
"examine": "One of the troll generals.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll general",
"defence_level": "65",
"safespot": null,
@@ -11385,12 +11704,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11402,12 +11722,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11419,12 +11740,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11436,12 +11758,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11453,12 +11776,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11470,12 +11794,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11487,12 +11812,13 @@
},
{
"examine": "He's watching the arena.",
- "slayer_task": "83",
+ "melee_animation": "1259",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Troll spectator",
"defence_level": "47",
"safespot": null,
@@ -11504,92 +11830,98 @@
},
{
"examine": "An unusually large troll.",
- "slayer_task": "83",
"melee_animation": "1158",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Dad",
- "defence_level": "55",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "157",
- "strength_level": "55",
+ "lifepoints": "120",
+ "strength_level": "120",
"id": "1125",
+ "bonuses": "40,40,40,0,0,25,25,40,200,200,0,70,0,0,0",
"range_level": "1",
- "attack_level": "55"
+ "attack_level": "60"
},
{
"examine": "He's guarding the cells.",
- "slayer_task": "83",
"range_animation": "0",
+ "melee_animation": "1158",
+ "respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Twig",
- "defence_level": "50",
+ "defence_level": "25",
"safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1126",
+ "aggressive": "true",
+ "bonuses": "20,20,20,0,0,0,0,10,200,200,0,20,0,0,0",
"range_level": "1",
- "attack_level": "50"
+ "attack_level": "40"
},
{
"examine": "He's guarding the cells.",
- "slayer_task": "83",
"range_animation": "0",
+ "melee_animation": "1158",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Berry",
- "defence_level": "50",
+ "defence_level": "40",
"safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1127",
+ "aggressive": "true",
+ "bonuses": "20,20,20,0,0,0,0,10,200,200,0,20,0,0,0",
"range_level": "1",
- "attack_level": "50"
+ "attack_level": "40"
},
{
"examine": "He's guarding the cells.",
- "slayer_task": "83",
- "melee_animation": "5821",
"range_animation": "0",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
"name": "Twig",
- "defence_level": "50",
+ "defence_level": "25",
"safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1128",
+ "bonuses": "20,20,20,0,0,0,0,10,200,200,0,20,0,0,0",
"range_level": "1",
- "attack_level": "50"
+ "attack_level": "40"
},
{
"examine": "He's guarding the cells.",
- "slayer_task": "83",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
"name": "Berry",
- "defence_level": "50",
+ "defence_level": "40",
"safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1129",
+ "bonuses": "20,20,20,0,0,0,0,10,200,200,0,20,0,0,0",
"range_level": "1",
- "attack_level": "50"
+ "attack_level": "40"
},
{
"examine": "Small for a troll, but it's mean, ugly and throws rocks.",
- "slayer_task": "83",
"start_gfx": "33",
"combat_style": "1",
"melee_animation": "284",
@@ -11615,7 +11947,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but it's mean, ugly and throws rocks.",
- "slayer_task": "83",
"start_gfx": "33",
"combat_style": "1",
"melee_animation": "284",
@@ -11641,7 +11972,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but it's mean, ugly and throws rocks.",
- "slayer_task": "83",
"start_gfx": "33",
"combat_style": "1",
"melee_animation": "284",
@@ -11667,7 +11997,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but it's mean, ugly and throws rocks.",
- "slayer_task": "83",
"start_gfx": "33",
"combat_style": "1",
"melee_animation": "284",
@@ -11693,7 +12022,6 @@
{
"agg_radius": "6",
"examine": "Small for a troll, but it's mean, ugly and throws rocks.",
- "slayer_task": "83",
"start_gfx": "33",
"combat_style": "1",
"melee_animation": "284",
@@ -11766,7 +12094,6 @@
},
{
"examine": "Small for a troll, but mean and ugly.",
- "slayer_task": "83",
"melee_animation": "284",
"range_animation": "284",
"attack_speed": "5",
@@ -11785,7 +12112,6 @@
},
{
"examine": "He's fast asleep.",
- "slayer_task": "83",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -11930,6 +12256,7 @@
"attack_level": "1"
},
{
+ "death_animation": "",
"name": "Guard",
"defence_level": "1",
"safespot": null,
@@ -11993,9 +12320,9 @@
},
{
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6223",
"range_animation": "6223",
+ "combat_audio": "571,573,572",
"attack_speed": "4",
"magic_level": "1",
"respawn_delay": "38",
@@ -12016,9 +12343,9 @@
},
{
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6224",
"range_animation": "0",
+ "combat_audio": "567,569,568",
"attack_speed": "4",
"poisonous": "true",
"magic_level": "1",
@@ -12042,7 +12369,6 @@
},
{
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6223",
"range_animation": "6223",
"attack_speed": "4",
@@ -12067,9 +12393,9 @@
},
{
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6223",
"range_animation": "6223",
+ "combat_audio": "571,573,572",
"attack_speed": "4",
"magic_level": "1",
"respawn_delay": "38",
@@ -12090,7 +12416,6 @@
},
{
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6223",
"range_animation": "6223",
"attack_speed": "4",
@@ -12116,13 +12441,12 @@
{
"agg_radius": "64",
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6241",
"range_animation": "6241",
"attack_speed": "4",
"poisonous": "true",
"magic_level": "150",
- "respawn_delay": "45",
+ "respawn_delay": "0",
"defence_animation": "6232",
"weakness": "10",
"magic_animation": "6241",
@@ -12141,12 +12465,11 @@
{
"agg_radius": "64",
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "6235",
"range_animation": "6235",
"attack_speed": "4",
"magic_level": "150",
- "respawn_delay": "0",
+ "respawn_delay": "45",
"defence_animation": "6234",
"weakness": "10",
"magic_animation": "6235",
@@ -12164,7 +12487,6 @@
},
{
"examine": "I don't think insect repellent will work...",
- "slayer_task": "53",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -12181,15 +12503,15 @@
"attack_level": "1"
},
{
- "examine": "A huge beast",
- "melee_animation": "313",
- "range_animation": "0",
+ "examine": "A huge beast, resembling in some ways a lion, but mostly a twisted nightmare.",
+ "melee_animation": "1199",
+ "range_animation": "1197",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "1200",
"weakness": "9",
- "magic_animation": "0",
- "death_animation": "315",
+ "magic_animation": "1197",
+ "death_animation": "1201",
"name": "The Shaikahan",
"defence_level": "50",
"safespot": null,
@@ -12202,7 +12524,6 @@
},
{
"examine": "He looks pretty handy with that bow.",
- "slayer_task": "31",
"start_gfx": "250",
"combat_style": "1",
"melee_animation": "428",
@@ -12226,7 +12547,6 @@
},
{
"examine": "I don't wanna be at the wrong end of that pike.",
- "slayer_task": "31",
"melee_animation": "428",
"range_animation": "0",
"combat_audio": "425,427,426",
@@ -12311,24 +12631,25 @@
{
"examine": "It's an NPC.",
"melee_animation": "4921",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
+ "combat_audio": "300,302,301",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "4927",
"slayer_exp": "0",
"death_animation": "4929",
"name": "Grizzly bear",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
+ "lifepoints": "35",
+ "strength_level": "36",
"id": "1195",
"aggressive": "true",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "40"
},
{
"examine": "Eek! A bear cub!",
- "slayer_task": "6",
"range_animation": "0",
"combat_audio": "498,500,499",
"respawn_delay": "60",
@@ -12358,7 +12679,6 @@
},
{
"examine": "What big teeth you have.",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"defence_animation": "0",
@@ -12528,7 +12848,6 @@
},
{
"examine": "A scary, man eating ghoul.",
- "slayer_task": "37",
"melee_animation": "422",
"range_animation": "422",
"combat_audio": "442,444,443",
@@ -12571,8 +12890,8 @@
"attack_level": "42"
},
{
- "examine": "Could his name be 'Lurch'?",
- "melee_animation": "7183",
+ "examine": "It looks very hungry!",
+ "melee_animation": "1264",
"slayer_exp": "50",
"death_animation": "7185",
"name": "Vampire",
@@ -12586,6 +12905,8 @@
"attack_level": "52"
},
{
+ "examine": "It looks very hungry!",
+ "melee_animation": "1264",
"slayer_exp": "40",
"name": "Vampire",
"defence_level": "1",
@@ -12598,6 +12919,7 @@
"attack_level": "1"
},
{
+ "examine": "It looks very hungry!",
"name": "Vampire",
"defence_level": "1",
"safespot": null,
@@ -12844,7 +13166,6 @@
},
{
"examine": "A shadowy sort of entity",
- "slayer_task": "73",
"melee_animation": "0",
"range_animation": "0",
"magic_level": "1",
@@ -12865,7 +13186,6 @@
},
{
"examine": "The shadowy remains of a long departed soul.",
- "slayer_task": "73",
"melee_animation": "1283",
"range_animation": "0",
"magic_level": "1",
@@ -12886,7 +13206,6 @@
},
{
"examine": "A shadowy sort of entity",
- "slayer_task": "73",
"melee_animation": "0",
"range_animation": "0",
"magic_level": "1",
@@ -12907,7 +13226,6 @@
},
{
"examine": "The shadowy remains of a long departed soul.",
- "slayer_task": "73",
"melee_animation": "1283",
"range_animation": "0",
"magic_level": "1",
@@ -12928,7 +13246,6 @@
},
{
"examine": "A shadowy sort of entity",
- "slayer_task": "73",
"melee_animation": "0",
"range_animation": "0",
"magic_level": "1",
@@ -12949,7 +13266,6 @@
},
{
"examine": "The shadowy remains of a long departed soul.",
- "slayer_task": "73",
"melee_animation": "1283",
"range_animation": "0",
"magic_level": "1",
@@ -12970,7 +13286,6 @@
},
{
"examine": "A shadowy sort of entity",
- "slayer_task": "73",
"melee_animation": "0",
"range_animation": "0",
"magic_level": "1",
@@ -12991,7 +13306,6 @@
},
{
"examine": "The shadowy remains of a long departed soul.",
- "slayer_task": "73",
"melee_animation": "1283",
"range_animation": "0",
"magic_level": "1",
@@ -13012,7 +13326,6 @@
},
{
"examine": "A shadowy sort of entity",
- "slayer_task": "73",
"melee_animation": "0",
"range_animation": "0",
"magic_level": "1",
@@ -13033,7 +13346,6 @@
},
{
"examine": "The shadowy remains of a long departed soul.",
- "slayer_task": "73",
"melee_animation": "1283",
"range_animation": "0",
"magic_level": "1",
@@ -13159,8 +13471,10 @@
"examine": "No one likes crabs...",
"melee_animation": "1312",
"range_animation": "1312",
- "attack_speed": "5",
+ "combat_audio": "717,723,722",
+ "attack_speed": "4",
"magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "1313",
"weakness": "7",
"magic_animation": "1312",
@@ -13168,9 +13482,10 @@
"name": "Rock Crab",
"defence_level": "1",
"safespot": null,
- "lifepoints": "51",
+ "lifepoints": "50",
"strength_level": "1",
"id": "1265",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"clue_level": "0",
"range_level": "1",
"attack_level": "1"
@@ -13198,7 +13513,9 @@
"examine": "No one likes crabs...",
"melee_animation": "1312",
"range_animation": "1312",
- "attack_speed": "5",
+ "combat_audio": "717,723,722",
+ "attack_speed": "4",
+ "respawn_delay": "50",
"defence_animation": "1313",
"magic_animation": "1312",
"death_animation": "1314",
@@ -13209,6 +13526,7 @@
"strength_level": "1",
"id": "1267",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"clue_level": "0",
"range_level": "1",
"attack_level": "1"
@@ -13477,7 +13795,7 @@
"attack_level": "1"
},
{
- "examine": "Supposedly fixes things around RuneScape.",
+ "examine": "Supposedly fixes things around Gielinor.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -13877,6 +14195,7 @@
"examine": "Keeps the stalls secure.",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "",
"defence_animation": "0",
"weakness": "9",
"magic_animation": "0",
@@ -13958,7 +14277,6 @@
},
{
"examine": "Cute. But deadly.",
- "slayer_task": "6",
"range_animation": "0",
"combat_audio": "498,500,499",
"respawn_delay": "60",
@@ -13993,45 +14311,46 @@
"examine": "Horned horsey.",
"melee_animation": "6376",
"range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "6",
- "respawn_delay": "32",
+ "combat_audio": "369,371,370",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "90",
"defence_animation": "6375",
"weakness": "7",
"magic_animation": "6376",
"death_animation": "6377",
"name": "Unicorn Foal",
- "defence_level": "6",
+ "defence_level": "10",
"safespot": null,
- "lifepoints": "14",
+ "lifepoints": "15",
"strength_level": "6",
"id": "1328",
"range_level": "1",
- "attack_level": "6"
+ "attack_level": "10"
},
{
"examine": "Cute but evil.",
"melee_animation": "6376",
"range_animation": "0",
- "combat_audio": "496,498,497",
- "respawn_delay": "60",
+ "combat_audio": "369,371,370",
+ "attack_speed": "4",
+ "respawn_delay": "20",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
"death_animation": "6377",
"name": "Black unicorn Foal",
- "defence_level": "12",
+ "defence_level": "18",
"safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
+ "lifepoints": "25",
+ "strength_level": "18",
"id": "1329",
+ "aggressive": "false",
"range_level": "1",
- "attack_level": "12"
+ "attack_level": "18"
},
{
"examine": "Fearsome predator found only in the Fremennik Province",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"combat_audio": "481,491,490",
@@ -14210,7 +14529,6 @@
},
{
"examine": "A horror from the ocean depths.",
- "slayer_task": "24",
"melee_animation": "1341",
"range_animation": "0",
"magic_level": "60",
@@ -14309,6 +14627,16 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "Pretty barmaid.",
+ "name": "Sam",
+ "id": "1357"
+ },
+ {
+ "examine": "Pretty barmaid.",
+ "name": "Rachael",
+ "id": "1358"
+ },
{
"examine": "He seems happy to see you.",
"melee_animation": "0",
@@ -14903,7 +15231,6 @@
},
{
"examine": "A scimitar wielding ninja monkey.",
- "slayer_task": "61",
"melee_animation": "1392",
"range_animation": "0",
"combat_audio": "629,631,630",
@@ -14922,7 +15249,6 @@
},
{
"examine": "A bow wielding ninja monkey.",
- "slayer_task": "61",
"combat_style": "1",
"melee_animation": "0",
"range_animation": "1394",
@@ -14978,7 +15304,6 @@
},
{
"examine": "A huge brutish gorilla armoured with dangerous looking vambraces.",
- "slayer_task": "61",
"melee_animation": "1402",
"range_animation": "1402",
"combat_audio": "629,631,630",
@@ -14998,7 +15323,6 @@
},
{
"examine": "A huge brutish gorilla armoured with dangerous looking vambraces.",
- "slayer_task": "61",
"melee_animation": "1402",
"range_animation": "0",
"combat_audio": "629,631,630",
@@ -15020,7 +15344,6 @@
},
{
"examine": "A huge brutish gorilla stands here",
- "slayer_task": "61",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -15060,7 +15383,6 @@
},
{
"examine": "A large and lumbering undead monkey.",
- "slayer_task": "61",
"melee_animation": "1383",
"range_animation": "0",
"combat_audio": "629,631,630",
@@ -15176,7 +15498,6 @@
},
{
"examine": "It's a brightly coloured bird of the jungle.",
- "slayer_task": "7",
"melee_animation": "6775",
"range_animation": "0",
"defence_animation": "0",
@@ -15194,7 +15515,6 @@
},
{
"examine": "It's a brightly coloured bird of the jungle. It flies very quickly.",
- "slayer_task": "7",
"melee_animation": "6775",
"range_animation": "0",
"defence_animation": "0",
@@ -15224,7 +15544,6 @@
},
{
"examine": "A very dangerous looking spider",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -15383,6 +15702,7 @@
"name": "Imp",
"defence_level": "1",
"safespot": null,
+ "movement_radius": "25",
"lifepoints": "8",
"strength_level": "1",
"id": "1531",
@@ -15498,7 +15818,6 @@
},
{
"examine": "Well",
- "slayer_task": "75",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -15517,7 +15836,6 @@
},
{
"examine": "I don't think the pickaxe is for hitting rocks.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"respawn_delay": "60",
@@ -15582,22 +15900,25 @@
"attack_level": "1"
},
{
- "examine": "A large boisterous bird",
- "slayer_task": "7",
+ "examine": "A large boisterous bird, a delicacy for ogres.",
"melee_animation": "6761",
"range_animation": "0",
+ "combat_audio": "1449,1451,1450",
"defence_animation": "0",
"weakness": "3",
"magic_animation": "0",
"death_animation": "6762",
"name": "Chompy bird",
- "defence_level": "1",
+ "defence_level": "3",
"safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
+ "poison_immune": "true",
+ "lifepoints": "10",
+ "strength_level": "5",
"id": "1550",
- "range_level": "2",
- "attack_level": "1"
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "5"
},
{
"name": "Mischievous ghost",
@@ -15647,7 +15968,6 @@
},
{
"examine": "Not man's best friend.",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"respawn_delay": "60",
@@ -15667,12 +15987,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15685,11 +16006,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
- "defence_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15701,12 +16024,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15719,11 +16043,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
- "defence_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15735,12 +16061,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15753,12 +16080,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15771,11 +16099,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
- "defence_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice Troll",
"defence_level": "60",
"safespot": null,
@@ -15803,7 +16133,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -15828,7 +16157,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -15853,7 +16181,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -15878,7 +16205,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -15903,7 +16229,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -15928,7 +16253,6 @@
},
{
"examine": "His beard seems to have a life of its own.",
- "slayer_task": "62",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "449,451,450",
@@ -15953,7 +16277,6 @@
},
{
"examine": "His beard seems to have a life of its own.",
- "slayer_task": "62",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "449,451,450",
@@ -15978,7 +16301,6 @@
},
{
"examine": "Young but still dangerous.",
- "slayer_task": "68",
"melee_animation": "25",
"range_animation": "25",
"combat_audio": "405,407,406",
@@ -16002,7 +16324,6 @@
},
{
"examine": "Its scales seem to be made of bronze.",
- "slayer_task": "13",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -16028,7 +16349,6 @@
},
{
"examine": "Its scales seem to be made of iron.",
- "slayer_task": "50",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -16054,7 +16374,6 @@
},
{
"examine": "Its scales seem to be made of steel.",
- "slayer_task": "80",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -16080,7 +16399,6 @@
},
{
"examine": "An unsuitable pet.",
- "slayer_task": "27",
"melee_animation": "6562",
"range_animation": "6562",
"magic_level": "20",
@@ -16120,9 +16438,13 @@
"range_level": "1",
"attack_level": "25"
},
+ {
+ "examine": "She looks dangerous!",
+ "name": "Chaeldar",
+ "id": "1598"
+ },
{
"examine": "A spiky crawling critter. ",
- "slayer_task": "16",
"melee_animation": "266",
"range_animation": "266",
"combat_audio": "341,343,342",
@@ -16212,10 +16534,10 @@
},
{
"examine": "A very smelly ghost.",
- "slayer_task": "0",
"start_gfx": "334",
"combat_style": "2",
"melee_animation": "9466",
+ "attack_speed": "4",
"weakness": "5",
"slayer_exp": "90",
"magic_animation": "9466",
@@ -16225,6 +16547,7 @@
"aggressive": "true",
"bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
"range_animation": "1507",
+ "combat_audio": "272,275,274",
"magic_level": "105",
"end_gfx": "336",
"defence_animation": "9468",
@@ -16239,10 +16562,10 @@
},
{
"examine": "A very smelly ghost.",
- "slayer_task": "0",
"start_gfx": "334",
"combat_style": "2",
"melee_animation": "9466",
+ "attack_speed": "4",
"weakness": "5",
"slayer_exp": "90",
"magic_animation": "9466",
@@ -16252,6 +16575,7 @@
"aggressive": "true",
"bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
"range_animation": "1507",
+ "combat_audio": "272,275,274",
"magic_level": "105",
"end_gfx": "336",
"defence_animation": "9468",
@@ -16266,10 +16590,10 @@
},
{
"examine": "A very smelly ghost.",
- "slayer_task": "0",
"start_gfx": "334",
"combat_style": "2",
"melee_animation": "9466",
+ "attack_speed": "4",
"weakness": "5",
"slayer_exp": "90",
"magic_animation": "9466",
@@ -16279,6 +16603,7 @@
"aggressive": "true",
"bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
"range_animation": "1507",
+ "combat_audio": "272,275,274",
"magic_level": "105",
"end_gfx": "336",
"defence_animation": "9468",
@@ -16293,10 +16618,10 @@
},
{
"examine": "A very smelly ghost.",
- "slayer_task": "0",
"start_gfx": "334",
"combat_style": "2",
"melee_animation": "9466",
+ "attack_speed": "4",
"weakness": "5",
"slayer_exp": "90",
"magic_animation": "9466",
@@ -16306,6 +16631,7 @@
"aggressive": "true",
"bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
"range_animation": "1507",
+ "combat_audio": "272,275,274",
"magic_level": "105",
"end_gfx": "336",
"defence_animation": "9468",
@@ -16389,7 +16715,6 @@
},
{
"examine": "Flies like a rock.",
- "slayer_task": "84",
"melee_animation": "1516",
"range_animation": "1516",
"attack_speed": "5",
@@ -16412,21 +16737,25 @@
"examine": "A tortured screaming soul.",
"melee_animation": "9449",
"range_animation": "1523",
- "attack_speed": "5",
+ "combat_audio": "284,286,285",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "15",
"defence_animation": "9451",
"slayer_exp": "22",
"magic_animation": "1523",
"death_animation": "9450",
"name": "Banshee",
- "defence_level": "5",
+ "defence_level": "22",
"safespot": null,
"lifepoints": "22",
- "strength_level": "14",
+ "strength_level": "15",
"id": "1612",
"aggressive": "true",
"clue_level": "0",
+ "bonuses": "0,0,0,0,0,5,5,5,0,5,0,0,0,0,0",
"range_level": "1",
- "attack_level": "9"
+ "attack_level": "22"
},
{
"examine": "An evil death demon.",
@@ -16473,7 +16802,6 @@
},
{
"examine": "A denizen of the Abyss!",
- "slayer_task": "1",
"melee_animation": "1537",
"range_animation": "1537",
"combat_audio": "276,278,277",
@@ -16499,8 +16827,10 @@
"examine": "The eyes of evil.",
"melee_animation": "260",
"range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
+ "combat_audio": "288,290,289",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "15",
"defence_animation": "261",
"slayer_exp": "75",
"magic_animation": "260",
@@ -16509,17 +16839,21 @@
"defence_level": "75",
"safespot": null,
"lifepoints": "75",
- "strength_level": "80",
+ "strength_level": "45",
"id": "1616",
- "range_level": "75",
- "attack_level": "80"
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,20,20,0,20,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "30"
},
{
"examine": "The eyes of evil.",
"melee_animation": "260",
"range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
+ "combat_audio": "288,290,289",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "15",
"defence_animation": "261",
"slayer_exp": "75",
"magic_animation": "260",
@@ -16528,10 +16862,12 @@
"defence_level": "75",
"safespot": null,
"lifepoints": "75",
- "strength_level": "80",
+ "strength_level": "45",
"id": "1617",
- "range_level": "75",
- "attack_level": "80"
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,20,20,0,20,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "30"
},
{
"examine": "The tongue of evil.",
@@ -16579,7 +16915,6 @@
},
{
"examine": "The winged reptile.",
- "slayer_task": "19",
"melee_animation": "7762",
"range_animation": "7762",
"combat_audio": "363,365,364",
@@ -16667,7 +17002,6 @@
},
{
"examine": "The vacuumed face of evil.",
- "slayer_task": "28",
"melee_animation": "1557",
"range_animation": "1557",
"combat_audio": "414,416,415",
@@ -16688,7 +17022,6 @@
},
{
"examine": "The cave-dwelling cousin of the dust devils.",
- "slayer_task": "28",
"melee_animation": "1557",
"range_animation": "0",
"defence_animation": "0",
@@ -16817,7 +17150,6 @@
{
"spawn_animation": "8081",
"examine": "A small fire demon.",
- "slayer_task": "66",
"melee_animation": "8080",
"combat_audio": "696,698,697",
"attack_speed": "5",
@@ -16841,7 +17173,6 @@
{
"spawn_animation": "8081",
"examine": "A small fire demon.",
- "slayer_task": "66",
"melee_animation": "8080",
"combat_audio": "696,698,697",
"attack_speed": "5",
@@ -16865,7 +17196,6 @@
{
"spawn_animation": "8081",
"examine": "A small fire demon.",
- "slayer_task": "66",
"melee_animation": "8080",
"combat_audio": "696,698,697",
"attack_speed": "5",
@@ -16889,7 +17219,6 @@
{
"spawn_animation": "8081",
"examine": "A small fire demon.",
- "slayer_task": "66",
"melee_animation": "8080",
"combat_audio": "696,698,697",
"attack_speed": "5",
@@ -16912,7 +17241,6 @@
},
{
"examine": "It's a Jelly.",
- "slayer_task": "51",
"melee_animation": "8569",
"range_animation": "8569",
"combat_audio": "547,550,549",
@@ -16935,7 +17263,6 @@
},
{
"examine": "Doesn't look so tough...",
- "slayer_task": "51",
"melee_animation": "8569",
"range_animation": "0",
"combat_audio": "547,550,549",
@@ -16958,7 +17285,6 @@
},
{
"examine": "Wibbly.",
- "slayer_task": "51",
"melee_animation": "8569",
"range_animation": "0",
"combat_audio": "547,550,549",
@@ -16981,7 +17307,6 @@
},
{
"examine": "There's always room for jelly.",
- "slayer_task": "51",
"melee_animation": "8569",
"range_animation": "0",
"combat_audio": "547,550,549",
@@ -17038,7 +17363,6 @@
},
{
"examine": "An evil magic user.",
- "slayer_task": "49",
"start_gfx": "99",
"combat_style": "2",
"melee_animation": "811",
@@ -17062,7 +17386,6 @@
"attack_level": "1"
},
{
- "slayer_task": "49",
"start_gfx": "99",
"combat_style": "2",
"melee_animation": "811",
@@ -17087,7 +17410,6 @@
},
{
"examine": "An evil magic user.",
- "slayer_task": "49",
"start_gfx": "99",
"combat_style": "2",
"melee_animation": "811",
@@ -17112,7 +17434,6 @@
},
{
"examine": "An evil magic user.",
- "slayer_task": "49",
"start_gfx": "99",
"combat_style": "2",
"melee_animation": "811",
@@ -17137,7 +17458,6 @@
},
{
"examine": "An evil magic user.",
- "slayer_task": "49",
"start_gfx": "99",
"combat_style": "2",
"melee_animation": "811",
@@ -17162,7 +17482,6 @@
},
{
"examine": "Now THAT'S handy.",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "9125",
"combat_audio": "377,379,378",
@@ -17185,7 +17504,6 @@
},
{
"examine": "Gimmie five. Actually",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17207,7 +17525,6 @@
},
{
"examine": "Gimmie five. Actually",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17228,7 +17545,6 @@
},
{
"examine": "Gimmie five. Actually",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17250,7 +17566,6 @@
},
{
"examine": "Gimmie five. Actually",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17272,7 +17587,6 @@
},
{
"examine": "Now THAT's handy.",
- "slayer_task": "21",
"melee_animation": "9444",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17294,7 +17608,6 @@
},
{
"examine": "I'm glad it's just the hand I can see...",
- "slayer_task": "21",
"melee_animation": "9444",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17316,7 +17629,6 @@
},
{
"examine": "A big severed hand.",
- "slayer_task": "21",
"melee_animation": "9444",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17337,7 +17649,6 @@
},
{
"examine": "Give the guy a big hand.....",
- "slayer_task": "21",
"melee_animation": "9444",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17359,7 +17670,6 @@
},
{
"examine": "A big severed hand.",
- "slayer_task": "21",
"melee_animation": "9444",
"range_animation": "0",
"combat_audio": "377,379,378",
@@ -17548,7 +17858,6 @@
},
{
"examine": "It's an undead cow.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "0",
"attack_speed": "4",
@@ -17571,7 +17880,6 @@
},
{
"examine": "Yup, definitely a chicken... an undead chicken.",
- "slayer_task": "7",
"melee_animation": "5387",
"range_animation": "0",
"combat_audio": "355,357,356",
@@ -17595,7 +17903,6 @@
},
{
"examine": "An extremely vicious lobster.",
- "slayer_task": "71",
"melee_animation": "6265",
"range_animation": "0",
"defence_animation": "0",
@@ -17662,7 +17969,6 @@
},
{
"examine": "This poor soul cannot understand why it has not passed to the next world.",
- "slayer_task": "36",
"melee_animation": "422",
"range_animation": "0",
"attack_speed": "5",
@@ -18149,22 +18455,28 @@
"attack_level": "1"
},
{
+ "examine": "A giant raptor.",
+ "melee_animation": "1010",
+ "combat_audio": "832,834,833",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "30",
+ "defence_animation": "1012",
+ "magic_animation": "0",
"death_animation": "1013",
"name": "Terrorbird",
- "defence_level": "1",
+ "defence_level": "19",
"safespot": null,
"lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
+ "strength_level": "23",
"id": "1751",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
+ "attack_level": "23"
},
{
"examine": "These gnomes know how to get around!",
- "slayer_task": "7",
"melee_animation": "6790",
"range_animation": "0",
"respawn_delay": "60",
@@ -18183,7 +18495,6 @@
},
{
"examine": "A farmer's enemy.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -18321,7 +18632,6 @@
},
{
"examine": "Where beef comes from.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "5849",
"combat_audio": "369,371,370",
@@ -18361,7 +18671,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18383,7 +18692,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18405,7 +18713,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18427,7 +18734,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18449,7 +18755,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18471,7 +18776,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18493,7 +18797,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18515,7 +18818,6 @@
},
{
"examine": "An ugly green creature.",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "6185",
"combat_audio": "469,472,471",
@@ -18554,7 +18856,6 @@
},
{
"examine": "A short stout menacing fellow.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"attack_speed": "6",
@@ -18574,7 +18875,6 @@
},
{
"examine": "A short stout menacing fellow.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"attack_speed": "6",
@@ -18594,7 +18894,6 @@
},
{
"examine": "A short stout menacing fellow.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"attack_speed": "6",
@@ -18853,7 +19152,6 @@
},
{
"examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
"melee_animation": "6001",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -18873,7 +19171,6 @@
},
{
"examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
"melee_animation": "6001",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -18893,7 +19190,6 @@
},
{
"examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
"melee_animation": "6001",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -18913,7 +19209,6 @@
},
{
"examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
"melee_animation": "6001",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -18931,6 +19226,21 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A human zombie.",
+ "melee_animation": "5568",
+ "combat_audio": "931,923,922",
+ "defence_animation": "5567",
+ "death_animation": "5569",
+ "name": "Zombie",
+ "defence_level": "30",
+ "safespot": null,
+ "lifepoints": "50",
+ "strength_level": "30",
+ "id": "1826",
+ "range_level": "1",
+ "attack_level": "30"
+ },
{
"examine": "Flies like a rock.",
"melee_animation": "9454",
@@ -18993,33 +19303,36 @@
},
{
"examine": "A foul-smelling blob of protoplasm.",
- "slayer_task": "18",
"melee_animation": "1789",
"range_animation": "0",
- "attack_speed": "5",
+ "combat_audio": "784,786,785",
+ "attack_speed": "4",
"poisonous": "true",
- "respawn_delay": "60",
+ "magic_level": "13",
+ "respawn_delay": "15",
"defence_animation": "0",
"weakness": "1",
"slayer_exp": "25",
+ "poison_amount": "3",
"magic_animation": "0",
"death_animation": "1792",
"name": "Cave slime",
- "defence_level": "19",
+ "defence_level": "35",
"safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
+ "lifepoints": "25",
+ "strength_level": "13",
"id": "1831",
+ "aggressive": "false",
"clue_level": "0",
- "range_level": "19",
- "attack_level": "1"
+ "range_level": "1",
+ "attack_level": "13"
},
{
"examine": "A nasty crawling critter.",
- "slayer_task": "15",
"melee_animation": "6079",
"range_animation": "0",
- "attack_speed": "5",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "2",
@@ -19029,11 +19342,12 @@
"name": "Cave bug",
"defence_level": "6",
"safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
+ "lifepoints": "5",
+ "strength_level": "5",
"id": "1832",
- "range_level": "6",
- "attack_level": "1"
+ "bonuses": "0,0,0,0,0,10,10,5,5,10,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "6"
},
{
"examine": "A little",
@@ -19131,6 +19445,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "He seems to be in charge of the ship on the river.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Dwarven Boatman",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1846",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "It is the avatar of the Arzinian Being of Bordanzan",
"melee_animation": "1840",
@@ -19371,22 +19701,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A market stall keeper.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Market seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1866",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "Ali the discount animal seller.",
"melee_animation": "0",
@@ -19544,6 +19858,7 @@
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "703,705,704",
+ "attack_speed": "4",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -19553,8 +19868,9 @@
"lifepoints": "10",
"strength_level": "1",
"id": "1902",
+ "bonuses": "0,0,0,0,0,10,10,5,5,10,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "6"
},
{
"examine": "Menaphite thug.",
@@ -19635,49 +19951,70 @@
"attack_level": "1"
},
{
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
+ "examine": "Ice warrior.",
+ "melee_animation": "440",
+ "range_animation": "440",
"attack_speed": "5",
"defence_animation": "404",
"magic_animation": "412",
"death_animation": "9055",
"name": "Kamil",
- "defence_level": "20",
+ "defence_level": "135",
"safespot": null,
- "lifepoints": "50",
- "strength_level": "55",
+ "lifepoints": "130",
+ "strength_level": "80",
"id": "1913",
+ "bonuses": "0,60,0,0,0,35,60,35,0,0,0,100,0,0,0",
"range_level": "1",
- "attack_level": "20"
+ "attack_level": "190"
},
{
- "melee_animation": "422",
+ "examine": "A vampyre warrior of Zamorak.",
+ "melee_animation": "1264",
"respawn_delay": "60",
"defence_animation": "425",
"death_animation": "836",
"name": "Dessous",
- "defence_level": "1",
+ "defence_level": "99",
"safespot": null,
"lifepoints": "200",
- "strength_level": "1",
+ "strength_level": "99",
"id": "1914",
"aggressive": "true",
+ "bonuses": "0,0,50,0,0,10,150,150,0,0,0,50,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "99"
},
{
- "melee_animation": "422",
+ "examine": "A vampyre warrior of Zamorak.",
+ "melee_animation": "1264",
"respawn_delay": "60",
"defence_animation": "425",
"death_animation": "836",
"name": "Dessous",
- "defence_level": "1",
+ "defence_level": "99",
"safespot": null,
"lifepoints": "200",
- "strength_level": "1",
+ "strength_level": "99",
"id": "1915",
"aggressive": "true",
+ "bonuses": "0,0,50,0,0,10,150,150,0,0,0,50,0,0,0",
+ "range_level": "1",
+ "attack_level": "99"
+ },
+ {
+ "examine": "Luckily, I can't see much of his face.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Ruantun",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1916",
"range_level": "1",
"attack_level": "1"
},
@@ -19731,6 +20068,22 @@
"range_level": "1",
"attack_level": "58"
},
+ {
+ "examine": "One of Morytania's vampyric nobility.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Malak",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1920",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "Looks like a rough-and-ready type.",
"melee_animation": "0",
@@ -19801,12 +20154,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19819,11 +20173,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
- "defence_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19835,12 +20191,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19853,11 +20210,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
- "defence_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19869,12 +20228,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19887,12 +20247,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19905,11 +20266,13 @@
},
{
"examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
+ "melee_animation": "284",
"range_animation": "0",
- "defence_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "285",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "287",
"name": "Ice troll",
"defence_level": "64",
"safespot": null,
@@ -19919,6 +20282,98 @@
"range_level": "1",
"attack_level": "64"
},
+ {
+ "examine": "A troll frozen in a block of ice.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "respawn_delay": "1",
+ "defence_animation": "0",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Ice block",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1943",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A troll frozen in a block of ice.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "respawn_delay": "1",
+ "defence_animation": "0",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Ice block",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1944",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A troll frozen in a block of ice.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "respawn_delay": "1",
+ "defence_animation": "0",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Ice block",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1945",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A troll frozen in a block of ice.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "respawn_delay": "1",
+ "defence_animation": "0",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Ice block",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "1946",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "An ice troll.",
+ "name": "Troll father",
+ "id": "1947"
+ },
+ {
+ "examine": "An ice troll.",
+ "name": "Troll father",
+ "id": "1948"
+ },
+ {
+ "examine": "An ice troll.",
+ "name": "Troll mother",
+ "id": "1949"
+ },
+ {
+ "examine": "An ice troll.",
+ "name": "Troll mother",
+ "id": "1950"
+ },
{
"examine": "Not a man's best friend.",
"melee_animation": "6579",
@@ -20065,17 +20520,17 @@
"magic_animation": "0",
"death_animation": "5555",
"name": "Mummy",
- "defence_level": "55",
+ "defence_level": "90",
"safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1961",
"aggressive": "true",
"range_level": "1",
- "attack_level": "55"
+ "attack_level": "90"
},
{
- "examine": "Spooky",
+ "examine": "Spooky, bandaged dead dude.",
"melee_animation": "5549",
"range_animation": "0",
"defence_animation": "0",
@@ -20083,14 +20538,15 @@
"magic_animation": "0",
"death_animation": "5555",
"name": "Mummy",
- "defence_level": "55",
+ "defence_level": "90",
"poison_immune": "true",
"safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1962",
+ "aggressive": "true",
"range_level": "1",
- "attack_level": "55"
+ "attack_level": "90"
},
{
"examine": "A victim of poor first aid.",
@@ -20101,14 +20557,15 @@
"magic_animation": "0",
"death_animation": "5555",
"name": "Mummy",
- "defence_level": "55",
+ "defence_level": "90",
"poison_immune": "true",
"safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1963",
+ "aggressive": "true",
"range_level": "1",
- "attack_level": "55"
+ "attack_level": "90"
},
{
"examine": "But who's the daddy?",
@@ -20119,13 +20576,14 @@
"magic_animation": "0",
"death_animation": "5555",
"name": "Mummy",
- "defence_level": "55",
+ "defence_level": "90",
"safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
+ "lifepoints": "90",
+ "strength_level": "90",
"id": "1964",
+ "aggressive": "true",
"range_level": "1",
- "attack_level": "55"
+ "attack_level": "90"
},
{
"examine": "A tightly-wrapped monster.",
@@ -20163,22 +20621,22 @@
},
{
"examine": "I think they're some kind of beetle...",
- "slayer_task": "70",
"melee_animation": "1948",
"range_animation": "0",
+ "attack_speed": "3",
"poisonous": "true",
- "defence_animation": "0",
+ "defence_animation": "1946",
"weakness": "7",
"magic_animation": "0",
- "death_animation": "1946",
+ "death_animation": "5464",
"name": "Scarabs",
- "defence_level": "62",
+ "defence_level": "10",
"safespot": null,
- "lifepoints": "88",
- "strength_level": "62",
+ "lifepoints": "25",
+ "strength_level": "2",
"id": "1969",
"range_level": "1",
- "attack_level": "62"
+ "attack_level": "255"
},
{
"examine": "A wandering merchant.",
@@ -20193,7 +20651,6 @@
},
{
"examine": "A giant skeleton.",
- "slayer_task": "75",
"melee_animation": "5499",
"range_animation": "0",
"defence_animation": "0",
@@ -20209,9 +20666,47 @@
"range_level": "1",
"attack_level": "60"
},
+ {
+ "examine": "The warrior of darkness.",
+ "melee_animation": "440",
+ "range_animation": "0",
+ "respawn_delay": "60",
+ "defence_animation": "0",
+ "weakness": "0",
+ "magic_animation": "0",
+ "death_animation": "836",
+ "name": "Damis",
+ "defence_level": "90",
+ "safespot": null,
+ "lifepoints": "90",
+ "strength_level": "90",
+ "id": "1974",
+ "bonuses": "0,0,0,0,0,60,60,60,60,60,0,80,0,0,0",
+ "range_level": "1",
+ "attack_level": "90"
+ },
+ {
+ "examine": "The warrior of darkness.",
+ "melee_animation": "440",
+ "range_animation": "0",
+ "attack_speed": "3",
+ "respawn_delay": "60",
+ "defence_animation": "0",
+ "weakness": "0",
+ "magic_animation": "0",
+ "death_animation": "836",
+ "name": "Damis",
+ "defence_level": "160",
+ "safespot": null,
+ "lifepoints": "200",
+ "strength_level": "100",
+ "id": "1975",
+ "bonuses": "0,0,0,0,0,100,100,100,80,120,0,100,0,0,0",
+ "range_level": "1",
+ "attack_level": "160"
+ },
{
"examine": "Looks hungry!",
- "slayer_task": "27",
"melee_animation": "6565",
"range_animation": "0",
"respawn_delay": "60",
@@ -20229,19 +20724,22 @@
"attack_level": "48"
},
{
+ "examine": "Zamorak's warrior of fire.",
"melee_animation": "799",
+ "magic_level": "100",
"respawn_delay": "60",
"defence_animation": "434",
"death_animation": "836",
"name": "Fareed",
- "defence_level": "1",
+ "defence_level": "135",
"safespot": null,
"lifepoints": "130",
- "strength_level": "1",
+ "strength_level": "120",
"id": "1977",
"aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
+ "bonuses": "0,0,0,0,0,100,100,100,0,0,0,120,0,0,0",
+ "range_level": "100",
+ "attack_level": "190"
},
{
"examine": "A malnourished worker.",
@@ -20363,23 +20861,26 @@
},
{
"examine": "He has had his day.",
- "slayer_task": "27",
"melee_animation": "6568",
"range_animation": "0",
- "respawn_delay": "60",
+ "combat_audio": "544,546,545",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "0",
"weakness": "6",
"magic_animation": "0",
"death_animation": "6567",
"name": "Jackal",
- "defence_level": "35",
+ "defence_level": "15",
"safespot": null,
- "lifepoints": "100",
- "strength_level": "35",
+ "lifepoints": "27",
+ "strength_level": "18",
"id": "1994",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "35"
+ "attack_level": "17"
},
{
"examine": "Obnoxious",
@@ -20422,7 +20923,6 @@
},
{
"examine": "I might give the burgers a miss in this town.",
- "slayer_task": "20",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -20440,7 +20940,6 @@
},
{
"examine": "I don't fancy eating any part of this.",
- "slayer_task": "20",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -20458,7 +20957,6 @@
},
{
"examine": "I think they're some kind of beetle.",
- "slayer_task": "70",
"melee_animation": "1948",
"range_animation": "0",
"attack_speed": "2",
@@ -20617,7 +21115,7 @@
"start_height": "96",
"melee_animation": "1162",
"range_animation": "1162",
- "attack_speed": "6",
+ "attack_speed": "5",
"magic_level": "100",
"end_gfx": "157",
"defence_animation": "420",
@@ -20631,7 +21129,7 @@
"strength_level": "1",
"id": "2025",
"aggressive": "true",
- "bonuses": "68,68,68,73,-19,103,85,117,73,0,0,68,0,0,0",
+ "bonuses": "68,68,68,73,-19,103,85,117,73,0,0,68,0,49,0",
"range_level": "1",
"projectile": "156",
"attack_level": "1"
@@ -20699,7 +21197,7 @@
"strength_level": "1",
"id": "2028",
"aggressive": "true",
- "bonuses": "0,0,0,-26,134,79,71,90,106,100,0,0,0,0,0",
+ "bonuses": "0,0,0,-26,134,79,71,90,106,100,0,0,0,0,61",
"range_level": "100",
"projectile": "27",
"attack_level": "1"
@@ -20744,7 +21242,7 @@
"strength_level": "100",
"id": "2030",
"aggressive": "true",
- "bonuses": "72,72,72,-42,-14,227,230,221,0,225,72,0,0,0,0",
+ "bonuses": "72,72,72,-42,-14,227,230,221,0,225,72,78,0,0,0",
"range_level": "1",
"attack_level": "100"
},
@@ -20772,7 +21270,6 @@
},
{
"examine": "A nasty little rodent.",
- "slayer_task": "67",
"melee_animation": "240",
"range_animation": "240",
"combat_audio": "703,705,704",
@@ -20796,7 +21293,6 @@
},
{
"examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "4933",
"combat_audio": "703,705,704",
@@ -20820,7 +21316,6 @@
},
{
"examine": "Incey wincey.",
- "slayer_task": "76",
"melee_animation": "6249",
"range_animation": "6249",
"combat_audio": "537,539,538",
@@ -20844,7 +21339,6 @@
},
{
"examine": "Not very incey wincey.",
- "slayer_task": "76",
"melee_animation": "5327",
"range_animation": "5327",
"combat_audio": "537,539,538",
@@ -20867,177 +21361,319 @@
"attack_level": "65"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "combat_audio": "",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "combat_audio": "",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2044",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2045",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2046",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2047",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2048",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2049",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "It's falling apart!",
+ "combat_audio": "",
+ "range_animation": "359",
+ "melee_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "weakness": "7",
+ "slayer_exp": "",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Skogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2050",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2051",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2052",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2053",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2054",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Zogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2055",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "It's falling apart!",
+ "combat_audio": "",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Skogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2056",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
+ "examine": "It's falling apart!",
+ "combat_audio": "",
+ "range_animation": "359",
+ "melee_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Skogre",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "71",
- "strength_level": "1",
+ "strength_level": "36",
"id": "2057",
"aggressive": "true",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "attack_level": "20"
},
{
"examine": "What could be hiding in that crack in the wall?",
- "slayer_task": "87",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "931,923,922",
@@ -21059,16 +21695,28 @@
"attack_level": "1"
},
{
+ "examine": "A partially decomposing zombie ogre.",
+ "slayer_task": "64",
+ "combat_audio": "",
+ "melee_animation": "359",
+ "range_animation": "359",
+ "attack_speed": "6",
+ "magic_level": "1",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "slayer_exp": "",
+ "weakness": "7",
+ "magic_animation": "359",
+ "death_animation": "361",
"name": "Slash Bash",
- "defence_level": "1",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "103",
- "strength_level": "1",
+ "lifepoints": "100",
+ "strength_level": "120",
"id": "2060",
"aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
+ "range_level": "100",
+ "attack_level": "100"
},
{
"examine": "I can see fish swimming in the water.",
@@ -21088,7 +21736,6 @@
},
{
"examine": "This one is slacking off.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -21107,7 +21754,6 @@
},
{
"examine": "This one is slacking off.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -21126,7 +21772,6 @@
},
{
"examine": "This one is slacking off.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -21145,7 +21790,6 @@
},
{
"examine": "This one is slacking off.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -21164,7 +21808,6 @@
},
{
"examine": "He protects the miners.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -21184,7 +21827,6 @@
},
{
"examine": "He protects the miners.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -21760,7 +22402,6 @@
},
{
"examine": "A member of the Black Guard",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -21779,7 +22420,6 @@
},
{
"examine": "A member of the Black Guard",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -21798,7 +22438,6 @@
},
{
"examine": "A member of the Black Guard",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -21816,19 +22455,25 @@
"attack_level": "34"
},
{
+ "examine": "A member of the Black Guard",
+ "melee_animation": "99",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "weakness": "6",
"slayer_exp": "16",
+ "magic_animation": "0",
+ "death_animation": "102",
"name": "Black Guard",
- "defence_level": "1",
+ "defence_level": "34",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "48",
+ "strength_level": "34",
"id": "2133",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "34"
},
{
"examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"respawn_delay": "60",
@@ -21847,7 +22492,6 @@
},
{
"examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"respawn_delay": "60",
@@ -21866,7 +22510,6 @@
},
{
"examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"respawn_delay": "60",
@@ -21887,7 +22530,7 @@
"examine": "A gnome traveller, visiting Keldagrim.",
"name": "Gnome traveller",
"defence_level": "1",
- "force_talk": "Buying low-level skilling items!",
+ "force_talk": "",
"safespot": null,
"lifepoints": "10",
"strength_level": "1",
@@ -21895,6 +22538,18 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A gnome traveller, visiting Keldagrim.",
+ "name": "Gnome traveller",
+ "defence_level": "1",
+ "force_talk": "",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2139",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "Very protective of his master... and his property.",
"melee_animation": "0",
@@ -21927,6 +22582,38 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "Proprietor of Gunslik's Assorted Items.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Gunslik",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2154",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "An old mining dwarf, now he sells pickaxes and generally acts grumpy.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Tati",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2160",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A rather personable banker lady.",
"melee_animation": "0",
@@ -22232,7 +22919,7 @@
"attack_level": "1"
},
{
- "examine": "A loud",
+ "examine": "A loud, drunk and generally obnoxious dwarf.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -22244,12 +22931,155 @@
"lifepoints": "10",
"strength_level": "1",
"id": "2187",
- "aggressive": "true",
"range_level": "1",
"attack_level": "1"
},
{
- "examine": "You cannot see his ship",
+ "examine": "A sad old dwarf living in a sad old home.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Runvastr",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2190",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "He seems to always be busy.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sune",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2191",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "This dwarf doesn't seem to be very well off.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Bentamir",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2192",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A dwarf minding his own business.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Ulifed",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2193",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A short, merry guy.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Karl",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2195",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "His kebabs certainly smell delicious.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Kjut",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2198",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "He seems to be very well off.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Audmann",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2201",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "He's had a fair bit to drink...",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Drunken Dwarf",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2202",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "He's had a fair bit to drink...",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Drunken Dwarf",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2203",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "You cannot see his ship, but presumably he has one.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -22264,6 +23094,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "You cannot see his ship, but presumably he has one.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Dwarven Boatman",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2206",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "He carries a heavy load.",
"melee_animation": "0",
@@ -22280,6 +23126,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "An elite member of the Black Guard.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Black Guard Berserker",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2232",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A master at farming.",
"melee_animation": "0",
@@ -22316,6 +23178,7 @@
"examine": "He guards the Draynor Market stalls from thieves.",
"melee_animation": "390",
"range_animation": "0",
+ "combat_audio": "2547,1979,512",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "6",
@@ -22798,6 +23661,54 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "An observer for the Temple Knights.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sir Spishyus",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2282",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "An observer for the Temple Knights.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Lady Table",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2283",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "An observer for the Temple Knights.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sir Kuam Ferentse",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2284",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A warrior blessed by Saradomin.",
"melee_animation": "400",
@@ -22805,13 +23716,45 @@
"defence_animation": "425",
"death_animation": "836",
"name": "Sir Leye",
- "defence_level": "1",
+ "defence_level": "15",
"safespot": null,
"lifepoints": "21",
- "strength_level": "1",
+ "strength_level": "18",
"id": "2285",
"aggressive": "true",
"range_level": "1",
+ "attack_level": "18"
+ },
+ {
+ "examine": "An observer for the Temple Knights.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sir Tinley",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2286",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "An observer for the Temple Knights.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sir Ren Itchood",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2287",
+ "range_level": "1",
"attack_level": "1"
},
{
@@ -22846,6 +23789,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "Head of recruitment for the Temple Knights.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Sir Tiffy Cashien",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2290",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A carpet merchant.",
"melee_animation": "0",
@@ -22929,7 +23888,6 @@
},
{
"examine": "Young, but still beefy.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "5849",
"combat_audio": "366,368,367",
@@ -23117,6 +24075,22 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "An expert on the brewing of ales and cider.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Blandebir",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "2321",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "Only the Grim Reaper would have a pet like this.",
"melee_animation": "0",
@@ -23217,7 +24191,6 @@
},
{
"examine": "I don't wanna be at the wrong end of that pike.",
- "slayer_task": "31",
"melee_animation": "428",
"range_animation": "0",
"combat_audio": "425,427,426",
@@ -23239,7 +24212,6 @@
},
{
"examine": "I don't wanna be at the wrong end of that pike.",
- "slayer_task": "31",
"melee_animation": "428",
"range_animation": "0",
"combat_audio": "425,427,426",
@@ -23261,7 +24233,6 @@
},
{
"examine": "He looks pretty handy with that bow.",
- "slayer_task": "31",
"start_gfx": "250",
"combat_style": "1",
"melee_animation": "428",
@@ -23285,7 +24256,6 @@
},
{
"examine": "He looks pretty handy with that bow.",
- "slayer_task": "31",
"start_gfx": "250",
"combat_style": "1",
"melee_animation": "428",
@@ -23309,40 +24279,233 @@
},
{
"examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Head mourner",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "2372",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
- "examine": "A Mourner",
- "slayer_task": "31",
+ "examine": "A mourner, or plague healer.",
"melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
+ "range_animation": "",
+ "attack_speed": "4",
+ "defence_animation": "",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "836",
"name": "Mourner",
- "defence_level": "61",
+ "defence_level": "80",
"safespot": null,
"lifepoints": "87",
"strength_level": "61",
"id": "2373",
"aggressive": "true",
- "range_level": "1",
+ "range_level": "",
"attack_level": "61"
},
{
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2381",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2382",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2383",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2384",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2385",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2386",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2387",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2388",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2389",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2390",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2391",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2392",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2393",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2394",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2395",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
+ "name": "Mysterious ghost",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "10",
+ "combat_audio": "436,439,438",
+ "strength_level": "1",
+ "id": "2396",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to flitter in and out of existence...",
"name": "Mysterious ghost",
"defence_level": "1",
"safespot": null,
@@ -23354,6 +24517,7 @@
"attack_level": "1"
},
{
+ "examine": "Seems to flitter in and out of existence...",
"name": "Mysterious ghost",
"defence_level": "1",
"safespot": null,
@@ -23365,6 +24529,7 @@
"attack_level": "1"
},
{
+ "examine": "Seems to flitter in and out of existence...",
"name": "Mysterious ghost",
"defence_level": "1",
"safespot": null,
@@ -23376,6 +24541,7 @@
"attack_level": "1"
},
{
+ "examine": "Seems to flitter in and out of existence...",
"name": "Mysterious ghost",
"defence_level": "1",
"safespot": null,
@@ -23387,6 +24553,7 @@
"attack_level": "1"
},
{
+ "examine": "Seems to flitter in and out of existence...",
"name": "Mysterious ghost",
"defence_level": "1",
"safespot": null,
@@ -23398,6 +24565,7 @@
"attack_level": "1"
},
{
+ "examine": "Seems to flitter in and out of existence...",
"name": "Mysterious ghost",
"defence_level": "1",
"safespot": null,
@@ -23409,17 +24577,16 @@
"attack_level": "1"
},
{
- "slayer_task": "29",
- "examine": "A dwarf gone bad.",
- "respawn_delay": "150",
"slayer_exp": "61",
"weakness": "6",
+ "examine": "A dwarf gone bad.",
"name": "Chaos dwarf",
"defence_level": "1",
"safespot": null,
"lifepoints": "10",
"strength_level": "1",
"id": "2423",
+ "respawn_delay": "150",
"range_level": "1",
"attack_level": "1"
},
@@ -23472,21 +24639,23 @@
"examine": "No one likes crabs... especially really big ones!",
"melee_animation": "2368",
"range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "717,723,722",
+ "attack_speed": "4",
+ "respawn_delay": "50",
+ "defence_animation": "1313",
"weakness": "9",
"magic_animation": "0",
"death_animation": "1314",
"name": "Giant Rock Crab",
- "defence_level": "68",
+ "defence_level": "200",
"safespot": null,
- "lifepoints": "97",
- "strength_level": "68",
+ "lifepoints": "180",
+ "strength_level": "80",
"id": "2452",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,225,200,175,-10,250,0,0,0,0,0",
"range_level": "1",
- "attack_level": "68"
+ "attack_level": "50"
},
{
"examine": "Heavy rock!",
@@ -23509,7 +24678,6 @@
},
{
"examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
"melee_animation": "1341",
"range_animation": "0",
"respawn_delay": "60",
@@ -23591,12 +24759,88 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A brightly coloured game bird.",
+ "melee_animation": "2372",
+ "range_animation": "2372",
+ "combat_audio": "690,692,691",
+ "attack_speed": "6",
+ "respawn_delay": "18",
+ "defence_animation": "2371",
+ "magic_animation": "2372",
+ "death_animation": "2373",
+ "name": "Pheasant",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "5",
+ "strength_level": "1",
+ "id": "2459",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A brightly coloured game bird.",
+ "melee_animation": "2372",
+ "range_animation": "2372",
+ "combat_audio": "690,692,691",
+ "attack_speed": "6",
+ "respawn_delay": "18",
+ "defence_animation": "2371",
+ "magic_animation": "2372",
+ "death_animation": "2373",
+ "name": "Pheasant",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "5",
+ "strength_level": "1",
+ "id": "2460",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A brightly coloured game bird.",
+ "melee_animation": "2372",
+ "range_animation": "2372",
+ "combat_audio": "690,692,691",
+ "attack_speed": "6",
+ "respawn_delay": "18",
+ "defence_animation": "2371",
+ "magic_animation": "2372",
+ "death_animation": "2373",
+ "name": "Pheasant",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "5",
+ "strength_level": "1",
+ "id": "2461",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A brightly coloured game bird.",
+ "melee_animation": "2372",
+ "range_animation": "2372",
+ "combat_audio": "690,692,691",
+ "attack_speed": "6",
+ "respawn_delay": "18",
+ "defence_animation": "2371",
+ "magic_animation": "2372",
+ "death_animation": "2373",
+ "name": "Pheasant",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "5",
+ "strength_level": "1",
+ "id": "2462",
+ "range_level": "1",
+ "attack_level": "1"
+ },
{
"examine": "A fowl beast.",
"combat_style": "2",
"melee_animation": "2302",
"range_animation": "2302",
- "combat_audio": "355,357,356",
+ "combat_audio": "2288,357,356",
"magic_level": "5",
"respawn_delay": "25",
"defence_animation": "2300",
@@ -23619,7 +24863,7 @@
"combat_style": "2",
"melee_animation": "2302",
"range_animation": "2302",
- "combat_audio": "355,357,356",
+ "combat_audio": "2288,357,356",
"magic_level": "10",
"respawn_delay": "25",
"defence_animation": "2300",
@@ -23642,7 +24886,7 @@
"combat_style": "2",
"melee_animation": "2302",
"range_animation": "2302",
- "combat_audio": "355,357,356",
+ "combat_audio": "2288,357,356",
"magic_level": "15",
"respawn_delay": "25",
"defence_animation": "2300",
@@ -23665,7 +24909,7 @@
"combat_style": "2",
"melee_animation": "2302",
"range_animation": "2302",
- "combat_audio": "355,357,356",
+ "combat_audio": "2288,357,356",
"magic_level": "25",
"respawn_delay": "25",
"defence_animation": "2300",
@@ -23688,7 +24932,7 @@
"combat_style": "2",
"melee_animation": "2302",
"range_animation": "2302",
- "combat_audio": "355,357,356",
+ "combat_audio": "2288,357,356",
"magic_level": "35",
"respawn_delay": "25",
"defence_animation": "2300",
@@ -23711,7 +24955,7 @@
"combat_style": "2",
"melee_animation": "2302",
"range_animation": "2302",
- "combat_audio": "355,357,356",
+ "combat_audio": "2288,357,356",
"magic_level": "45",
"respawn_delay": "25",
"defence_animation": "2300",
@@ -23735,6 +24979,7 @@
"combat_style": "1",
"melee_animation": "4230",
"range_animation": "4230",
+ "combat_audio": "2695,513,512",
"attack_speed": "5",
"magic_level": "30",
"defence_animation": "404",
@@ -23748,7 +24993,9 @@
"id": "2476",
"bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
"range_level": "20",
- "attack_level": "8"
+ "projectile": "27",
+ "attack_level": "8",
+ "prj_height": ""
},
{
"examine": "Apparently a master of quizzes!",
@@ -23767,7 +25014,7 @@
"attack_level": "1"
},
{
- "examine": "Hey",
+ "examine": "Hey, it's Bob the cat! Or... is it?",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -23802,18 +25049,23 @@
"examine": "Annoying flappy thing.",
"melee_animation": "0",
"range_animation": "0",
+ "combat_audio": "292,294,293",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "35",
"defence_animation": "0",
"slayer_exp": "8",
"magic_animation": "0",
"death_animation": "0",
"name": "Giant bat",
- "defence_level": "1",
+ "defence_level": "22",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "32",
+ "strength_level": "22",
"id": "2482",
+ "bonuses": "0,0,0,0,0,10,10,12,10,8,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "22"
},
{
"examine": "A slithering serpent that likes to hide in the bush.",
@@ -24107,6 +25359,16 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "He smells of rock dust.",
+ "name": "Ordan",
+ "id": "2564"
+ },
+ {
+ "examine": "He buys stuff.",
+ "name": "Jorzik",
+ "id": "2565"
+ },
{
"death_animation": "836",
"name": "Market Guard",
@@ -24762,6 +26024,11 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "Nice but dim.",
+ "name": "Unferth",
+ "id": "2655"
+ },
{
"examine": "Known for his light-fingered qualities.",
"melee_animation": "422",
@@ -25003,7 +26270,7 @@
"examine": "An ugly smelly creature, with a spear.",
"melee_animation": "163",
"range_animation": "163",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "6",
"defence_animation": "165",
"magic_animation": "163",
@@ -25068,7 +26335,6 @@
},
{
"examine": "She quackers.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"respawn_delay": "60",
@@ -25088,7 +26354,6 @@
},
{
"examine": "Mini quackers.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -25342,6 +26607,7 @@
"examine": "A sea bird.",
"melee_animation": "0",
"range_animation": "0",
+ "combat_audio": "309,311,310",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -25903,7 +27169,6 @@
},
{
"examine": "From a darker dimension.",
- "slayer_task": "25",
"melee_animation": "2731",
"range_animation": "2731",
"combat_audio": "389,391,390",
@@ -25918,61 +27183,61 @@
"defence_level": "120",
"safespot": null,
"lifepoints": "220",
+ "can_tolerate": "false",
"strength_level": "160",
"id": "2783",
"aggressive": "true",
"bonuses": "0,0,0,0,0,30,40,100,90,100,0,0,0,0,0",
"range_level": "1",
- "attack_level": "140",
- "can_tolerate": "false"
+ "attack_level": "140"
},
{
"examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Slave",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "2785",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Slave",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "2786",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
+ "melee_animation": "",
+ "range_animation": "",
+ "defence_animation": "",
+ "magic_animation": "",
+ "death_animation": "",
"name": "Slave",
- "defence_level": "1",
+ "defence_level": "",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "",
+ "strength_level": "",
"id": "2787",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "",
+ "attack_level": ""
},
{
"examine": "Drill Sergeant from heck!",
@@ -26007,7 +27272,7 @@
"attack_level": "1"
},
{
- "examine": "An angry Ogre in a funny hat.",
+ "examine": "Big, ugly, and smelly.",
"melee_animation": "359",
"range_animation": "359",
"attack_speed": "6",
@@ -26015,14 +27280,14 @@
"magic_animation": "359",
"death_animation": "361",
"name": "Ogre",
- "defence_level": "30",
+ "defence_level": "54",
"safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
+ "lifepoints": "60",
+ "strength_level": "54",
"id": "2801",
"aggressive": "true",
"range_level": "1",
- "attack_level": "30"
+ "attack_level": "54"
},
{
"examine": "They just call him 'Coach'.",
@@ -26042,7 +27307,6 @@
},
{
"examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
"melee_animation": "2776",
"range_animation": "2776",
"attack_speed": "5",
@@ -26063,7 +27327,6 @@
},
{
"examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
"melee_animation": "2776",
"range_animation": "2776",
"attack_speed": "5",
@@ -26084,7 +27347,6 @@
},
{
"examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
"melee_animation": "2776",
"range_animation": "2776",
"attack_speed": "5",
@@ -26124,7 +27386,6 @@
},
{
"examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
"melee_animation": "2776",
"range_animation": "2776",
"attack_speed": "5",
@@ -26144,7 +27405,6 @@
},
{
"examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
"melee_animation": "2776",
"range_animation": "2776",
"attack_speed": "5",
@@ -26422,7 +27682,6 @@
},
{
"examine": "An undead sea scoundrel.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -26443,7 +27702,6 @@
},
{
"examine": "An undead sea scoundrel.",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -26464,7 +27722,6 @@
},
{
"examine": "An undead sea scoundrel.",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -26485,7 +27742,6 @@
},
{
"examine": "An undead sea scoundrel.",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -26506,7 +27762,6 @@
},
{
"examine": "An undead sea scoundrel.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -26527,7 +27782,6 @@
},
{
"examine": "An undead sea scoundrel.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -26548,7 +27802,6 @@
},
{
"examine": "He talks a good fight.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"defence_animation": "0",
@@ -26567,7 +27820,6 @@
},
{
"examine": "He talks a good fight.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"defence_animation": "0",
@@ -26586,7 +27838,6 @@
},
{
"examine": "He talks a good fight.",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"defence_animation": "0",
@@ -26605,7 +27856,6 @@
},
{
"examine": "He talks a good fight.",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"defence_animation": "0",
@@ -26624,7 +27874,6 @@
},
{
"examine": "He talks a good fight.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"defence_animation": "0",
@@ -26643,7 +27892,6 @@
},
{
"examine": "He talks a good fight.",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"defence_animation": "0",
@@ -26682,7 +27930,6 @@
},
{
"examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
"melee_animation": "5319",
"range_animation": "0",
"combat_audio": "537,539,538",
@@ -26881,7 +28128,6 @@
},
{
"examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
"melee_animation": "1579",
"range_animation": "0",
"defence_animation": "0",
@@ -26970,19 +28216,21 @@
},
{
"melee_animation": "1312",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "combat_audio": "717,723,722",
+ "attack_speed": "4",
+ "respawn_delay": "50",
"defence_animation": "1313",
"death_animation": "1314",
"name": "Giant Rock Crab",
- "defence_level": "1",
+ "defence_level": "200",
"safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
+ "lifepoints": "180",
+ "strength_level": "80",
"id": "2885",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,225,200,175,-10,250,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "50"
},
{
"name": "Boulder",
@@ -27502,6 +28750,7 @@
"examine": "A not-so friendly, not-so little cat.",
"melee_animation": "0",
"range_animation": "0",
+ "attack_speed": "4",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -27513,7 +28762,7 @@
"id": "2986",
"aggressive": "true",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "10"
},
{
"examine": "A fully grown feline.",
@@ -28195,19 +29444,20 @@
"magic_animation": "0",
"death_animation": "2946",
"name": "Earth Warrior Champion",
- "defence_level": "51",
+ "defence_level": "84",
"safespot": null,
- "lifepoints": "72",
- "strength_level": "51",
+ "lifepoints": "108",
+ "strength_level": "84",
"id": "3057",
"aggressive": "true",
"range_level": "1",
- "attack_level": "51"
+ "attack_level": "84"
},
{
"examine": "Champion of the giants.",
"melee_animation": "6368",
"range_animation": "0",
+ "attack_speed": "4",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "8",
@@ -28215,14 +29465,14 @@
"magic_animation": "0",
"death_animation": "6369",
"name": "Giant Champion",
- "defence_level": "28",
+ "defence_level": "52",
"safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
+ "lifepoints": "70",
+ "strength_level": "44",
"id": "3058",
"aggressive": "true",
"range_level": "1",
- "attack_level": "28"
+ "attack_level": "36"
},
{
"examine": "Champion of the ghouls.",
@@ -28253,86 +29503,89 @@
"melee_animation": "6188",
"range_animation": "0",
"combat_audio": "469,472,471",
- "magic_level": "12",
+ "attack_speed": "4",
+ "magic_level": "26",
"defence_animation": "0",
"weakness": "10",
"magic_animation": "0",
"death_animation": "6190",
"name": "Goblin Champion",
- "defence_level": "12",
+ "defence_level": "14",
"safespot": null,
- "lifepoints": "17",
- "strength_level": "6",
+ "lifepoints": "32",
+ "strength_level": "1",
"id": "3060",
"range_level": "1",
- "attack_level": "6"
+ "attack_level": "1"
},
{
"examine": "Champion of the hobgoblins.",
"combat_style": "1",
- "range_animation": "0",
+ "melee_animation": "164",
+ "range_animation": "164",
"combat_audio": "469,472,471",
+ "attack_speed": "4",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "165",
"weakness": "0",
- "magic_animation": "0",
- "death_animation": "2958",
+ "magic_animation": "164",
+ "death_animation": "167",
"name": "Hobgoblin Champion",
- "defence_level": "28",
+ "defence_level": "48",
"safespot": null,
- "lifepoints": "40",
- "strength_level": "14",
+ "lifepoints": "58",
+ "strength_level": "48",
"id": "3061",
"aggressive": "true",
- "range_level": "28",
- "attack_level": "14"
+ "range_level": "44",
+ "attack_level": "44"
},
{
"examine": "Champion of the imps.",
"melee_animation": "5285",
"range_animation": "0",
- "attack_speed": "5",
+ "attack_speed": "4",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
"death_animation": "172",
"name": "Imp Champion",
- "defence_level": "7",
+ "defence_level": "5",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
+ "lifepoints": "40",
+ "strength_level": "5",
"id": "3062",
"aggressive": "true",
- "range_level": "7",
- "attack_level": "7"
+ "range_level": "5",
+ "attack_level": "5"
},
{
"examine": "Champion of the jogres.",
- "melee_animation": "2100",
- "range_animation": "0",
+ "melee_animation": "2936",
+ "range_animation": "2936",
"poisonous": "true",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "2937",
"weakness": "9",
- "magic_animation": "0",
- "death_animation": "8576",
+ "magic_animation": "2936",
+ "death_animation": "2938",
"name": "Jogre Champion",
- "defence_level": "54",
+ "defence_level": "86",
"safespot": null,
- "lifepoints": "77",
- "strength_level": "54",
+ "lifepoints": "120",
+ "strength_level": "86",
"id": "3063",
"aggressive": "true",
"range_level": "1",
- "attack_level": "54"
+ "attack_level": "86"
},
{
"examine": "Champion of the lesser demons.",
"melee_animation": "64",
"range_animation": "0",
"combat_audio": "396,402,401",
- "magic_level": "81",
+ "magic_level": "136",
"respawn_delay": "60",
"defence_animation": "65",
"weakness": "5",
@@ -28340,13 +29593,33 @@
"magic_animation": "0",
"death_animation": "67",
"name": "Lesser Demon Champion",
- "defence_level": "81",
+ "defence_level": "142",
"safespot": null,
- "lifepoints": "115",
- "strength_level": "1",
+ "lifepoints": "148",
+ "strength_level": "140",
"id": "3064",
"aggressive": "true",
"range_level": "1",
+ "attack_level": "136"
+ },
+ {
+ "examine": "Champion of the jogres.",
+ "melee_animation": "5485",
+ "range_animation": "5493",
+ "poisonous": "true",
+ "respawn_delay": "60",
+ "defence_animation": "5493",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "1444",
+ "name": "Skeleton Champion",
+ "defence_level": "54",
+ "safespot": null,
+ "lifepoints": "58",
+ "strength_level": "1",
+ "id": "3065",
+ "aggressive": "true",
+ "range_level": "36",
"attack_level": "1"
},
{
@@ -28386,7 +29659,6 @@
},
{
"examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
"start_gfx": "499",
"melee_animation": "2985",
"attack_speed": "6",
@@ -28400,6 +29672,7 @@
"bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
"agg_radius": "6",
"range_animation": "2989",
+ "combat_audio": "0,771,770",
"magic_level": "125",
"end_gfx": "501",
"defence_animation": "2983",
@@ -28414,7 +29687,6 @@
},
{
"examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
"start_gfx": "499",
"melee_animation": "2985",
"attack_speed": "6",
@@ -28428,6 +29700,7 @@
"bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
"agg_radius": "6",
"range_animation": "2989",
+ "combat_audio": "0,771,770",
"magic_level": "125",
"end_gfx": "501",
"defence_animation": "2983",
@@ -28442,7 +29715,6 @@
},
{
"examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
"start_gfx": "499",
"melee_animation": "2985",
"attack_speed": "6",
@@ -28456,6 +29728,7 @@
"bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
"agg_radius": "6",
"range_animation": "2989",
+ "combat_audio": "0,771,770",
"magic_level": "125",
"end_gfx": "501",
"defence_animation": "2983",
@@ -28470,7 +29743,6 @@
},
{
"examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
"start_gfx": "499",
"melee_animation": "2985",
"attack_speed": "6",
@@ -28484,6 +29756,7 @@
"bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
"agg_radius": "6",
"range_animation": "2989",
+ "combat_audio": "0,771,770",
"magic_level": "125",
"end_gfx": "501",
"defence_animation": "2983",
@@ -28498,13 +29771,12 @@
},
{
"examine": "He's got icicles in his beard.",
- "slayer_task": "47",
"melee_animation": "4672",
"range_animation": "0",
- "combat_audio": "449,451,450",
+ "combat_audio": "448,451,450",
"attack_speed": "5",
"magic_level": "1",
- "respawn_delay": "60",
+ "respawn_delay": "30",
"defence_animation": "0",
"weakness": "9",
"slayer_exp": "70",
@@ -28523,10 +29795,11 @@
},
{
"examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
"melee_animation": "451",
"range_animation": "451",
+ "combat_audio": "2500,530,529",
"attack_speed": "4",
+ "respawn_delay": "30",
"defence_animation": "404",
"weakness": "9",
"slayer_exp": "59",
@@ -28901,26 +30174,28 @@
},
{
"examine": "A swarm of bugs.",
- "slayer_task": "42",
- "combat_style": "1",
"melee_animation": "1584",
"range_animation": "0",
- "respawn_delay": "60",
+ "combat_audio": "2743,2745,2744",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "25",
"defence_animation": "0",
"weakness": "2",
"slayer_exp": "25",
"magic_animation": "0",
"death_animation": "1585",
"name": "Harpie Bug Swarm",
- "defence_level": "45",
+ "defence_level": "32",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
+ "lifepoints": "25",
+ "strength_level": "46",
"id": "3153",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,10,5,10,5,10,0,0,0,0,0",
"clue_level": "1",
- "range_level": "45",
- "attack_level": "1"
+ "range_level": "1",
+ "attack_level": "54"
},
{
"examine": "Bill Teach the pirate.",
@@ -29363,7 +30638,7 @@
"start_gfx": "556",
"melee_animation": "3146",
"attack_speed": "5",
- "respawn_delay": "72",
+ "respawn_delay": "100",
"weakness": "4",
"magic_animation": "5443",
"death_animation": "3147",
@@ -29444,25 +30719,8 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A mourner",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3216",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "Loves mining.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -29481,7 +30739,6 @@
},
{
"examine": "Loves mining.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -29500,7 +30757,6 @@
},
{
"examine": "Loves mining.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -29518,7 +30774,7 @@
"attack_level": "28"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -29550,7 +30806,7 @@
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens. He looks worried about something.",
+ "examine": "One of Gielinor's many citizens. He looks worried about something.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -29605,7 +30861,7 @@
"combat_audio": "511,513,512",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "404",
"weakness": "7",
"magic_animation": "0",
"death_animation": "836",
@@ -29621,12 +30877,12 @@
},
{
"examine": "He tries to keep order around here.",
- "melee_animation": "0",
+ "melee_animation": "4230",
"range_animation": "2075",
"combat_audio": "511,513,512",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "404",
"weakness": "0",
"magic_animation": "0",
"death_animation": "836",
@@ -29647,7 +30903,7 @@
"combat_audio": "511,513,512",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "404",
"weakness": "7",
"magic_animation": "0",
"death_animation": "836",
@@ -29774,53 +31030,73 @@
"attack_level": "1"
},
{
+ "agg_radius": "",
+ "examine": "He looks a bit dodgy.",
+ "melee_animation": "422",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Cuffs",
"defence_level": "1",
"safespot": null,
"lifepoints": "7",
- "melee_animation": "422",
"strength_level": "1",
"id": "3237",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "1"
},
{
+ "agg_radius": "",
+ "examine": "Looks unpleasant.",
+ "melee_animation": "422",
+ "respawn_delay": "60",
+ "defence_animation": "425",
+ "death_animation": "836",
+ "name": "Narf",
+ "defence_level": "1",
+ "safespot": null,
+ "lifepoints": "7",
+ "strength_level": "1",
+ "id": "3238",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "Seems to be loitering.",
+ "melee_animation": "422",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Rusty",
"defence_level": "1",
"safespot": null,
"lifepoints": "7",
- "melee_animation": "422",
"strength_level": "1",
"id": "3239",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "1"
},
{
+ "examine": "Untrustworthy.",
+ "melee_animation": "422",
+ "respawn_delay": "60",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Jeff",
"defence_level": "1",
"safespot": null,
"lifepoints": "7",
- "melee_animation": "422",
"strength_level": "1",
"id": "3240",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "1"
},
{
"melee_animation": "395",
"combat_audio": "511,513,512",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "425",
+ "defence_animation": "404",
"death_animation": "836",
"name": "Guard",
"defence_level": "1",
@@ -30311,7 +31587,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30330,7 +31605,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30349,7 +31623,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30368,7 +31641,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30387,7 +31659,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30406,7 +31677,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30425,7 +31695,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30444,7 +31713,6 @@
},
{
"examine": "A dwarven worker.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30463,7 +31731,6 @@
},
{
"examine": "A member of the Black Guard",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30482,7 +31749,6 @@
},
{
"examine": "A member of the Black Guard",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30501,7 +31767,6 @@
},
{
"examine": "A member of the Black Guard",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"defence_animation": "0",
@@ -30519,15 +31784,22 @@
"attack_level": "30"
},
{
+ "examine": "A member of the Black Guard",
+ "melee_animation": "99",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "weakness": "6",
"slayer_exp": "16",
+ "magic_animation": "0",
+ "death_animation": "102",
"name": "Black Guard",
- "defence_level": "1",
+ "defence_level": "30",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "42",
+ "strength_level": "30",
"id": "3279",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "30"
},
{
"examine": "He looks busy.",
@@ -30759,7 +32031,6 @@
},
{
"examine": "Converts grass to beef.",
- "slayer_task": "20",
"melee_animation": "5849",
"range_animation": "5849",
"combat_audio": "369,371,370",
@@ -30778,6 +32049,11 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "White and fluffy",
+ "name": "Sheep",
+ "id": "3310"
+ },
{
"name": "Tanglefoot",
"defence_level": "1",
@@ -30942,7 +32218,6 @@
},
{
"examine": "A bouncy fungus.",
- "slayer_task": "94",
"melee_animation": "2776",
"range_animation": "0",
"attack_speed": "5",
@@ -31092,7 +32367,6 @@
},
{
"examine": "A fowl beast.",
- "slayer_task": "7",
"melee_animation": "2299",
"range_animation": "0",
"combat_audio": "355,357,356",
@@ -31114,7 +32388,6 @@
},
{
"examine": "Young but still dangerous.",
- "slayer_task": "68",
"melee_animation": "25",
"range_animation": "25",
"combat_audio": "405,407,406",
@@ -31155,7 +32428,6 @@
},
{
"examine": "Vermin from the underworld.",
- "slayer_task": "67",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -31287,8 +32559,8 @@
},
{
"examine": "A small ice demon.",
- "slayer_task": "46",
"range_animation": "0",
+ "combat_audio": "531,533,532",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "0",
@@ -31512,16 +32784,21 @@
"attack_level": "1"
},
{
+ "examine": "Big, ugly, and smelly.",
+ "slayer_task": "64",
+ "melee_animation": "359",
+ "attack_speed": "7",
+ "respawn_delay": "60",
+ "defence_animation": "360",
+ "weakness": "8",
+ "death_animation": "361",
"name": "Ogre",
- "defence_level": "1",
+ "defence_level": "27",
"safespot": null,
"lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
+ "strength_level": "27",
"id": "3419",
"aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
"attack_level": "1"
},
{
@@ -31562,33 +32839,44 @@
"examine": "Not the most beautiful fish in the sea.",
"melee_animation": "3433",
"range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "241,243,242",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "10",
+ "defence_animation": "3434",
"weakness": "9",
"magic_animation": "0",
"death_animation": "3435",
"name": "Mudskipper",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "3422",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "1",
+ "defence_level": "26",
"safespot": null,
"lifepoints": "20",
- "melee_animation": "3433",
- "strength_level": "1",
- "id": "3423",
+ "strength_level": "29",
+ "id": "3422",
+ "aggressive": "true",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3434"
+ "attack_level": "29"
+ },
+ {
+ "examine": "Not the most beautiful fish in the sea.",
+ "melee_animation": "3433",
+ "combat_audio": "241,243,242",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "5",
+ "defence_animation": "3434",
+ "death_animation": "3435",
+ "name": "Mudskipper",
+ "defence_level": "29",
+ "safespot": null,
+ "lifepoints": "20",
+ "strength_level": "30",
+ "id": "3423",
+ "aggressive": "true",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "30"
},
{
"death_animation": "3430",
@@ -31901,7 +33189,6 @@
},
{
"examine": "A large boisterous bird",
- "slayer_task": "7",
"melee_animation": "6800",
"range_animation": "0",
"defence_animation": "0",
@@ -32226,7 +33513,6 @@
},
{
"examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
"melee_animation": "6016",
"range_animation": "0",
"defence_animation": "0",
@@ -32261,7 +33547,6 @@
},
{
"examine": "He looks really hungry!",
- "slayer_task": "86",
"melee_animation": "6276",
"range_animation": "0",
"respawn_delay": "60",
@@ -32280,7 +33565,6 @@
},
{
"examine": "She looks really hungry!",
- "slayer_task": "86",
"melee_animation": "6276",
"range_animation": "0",
"respawn_delay": "60",
@@ -32312,7 +33596,6 @@
},
{
"examine": "He looks really hungry!",
- "slayer_task": "86",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -32330,7 +33613,6 @@
},
{
"examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
"melee_animation": "6016",
"range_animation": "0",
"defence_animation": "0",
@@ -32411,7 +33693,6 @@
},
{
"examine": "Good doggy...",
- "slayer_task": "43",
"melee_animation": "6562",
"range_animation": "0",
"combat_audio": "3717,3719,3718",
@@ -32482,6 +33763,7 @@
"examine": "I don't think insect repellent will work...",
"melee_animation": "6223",
"range_animation": "0",
+ "combat_audio": "567,569,568",
"attack_speed": "4",
"poisonous": "true",
"magic_level": "1",
@@ -32591,7 +33873,6 @@
},
{
"examine": "A large snake that thrives in swamps.",
- "slayer_task": "86",
"melee_animation": "3538",
"range_animation": "3538",
"combat_audio": "3609,3608,3610",
@@ -32750,43 +34031,50 @@
{
"examine": "He looks a little on the cross side!",
"range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
+ "combat_audio": "297,299,298",
+ "melee_animation": "4927",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "4927",
"weakness": "9",
"magic_animation": "0",
+ "death_animation": "4929",
"name": "Angry bear",
- "defence_level": "25",
+ "defence_level": "38",
"safespot": null,
"lifepoints": "35",
- "strength_level": "25",
+ "strength_level": "41",
"id": "3645",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "25"
+ "attack_level": "38"
},
{
"examine": "He looks a little on the cross side!",
"melee_animation": "6376",
"range_animation": "0",
- "combat_audio": "496,498,497",
+ "combat_audio": "876,878,877",
+ "attack_speed": "4",
"defence_animation": "0",
"weakness": "9",
"magic_animation": "0",
"death_animation": "6377",
"name": "Angry unicorn",
- "defence_level": "25",
+ "defence_level": "38",
"safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
+ "lifepoints": "50",
+ "strength_level": "41",
"id": "3646",
+ "aggressive": "false",
"range_level": "1",
- "attack_level": "25"
+ "attack_level": "38"
},
{
"examine": "He looks a little on the cross side!",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
- "defence_animation": "0",
+ "defence_animation": "4934",
"weakness": "9",
"magic_animation": "0",
"death_animation": "4935",
@@ -32804,7 +34092,7 @@
"melee_animation": "6185",
"range_animation": "0",
"combat_audio": "469,472,471",
- "defence_animation": "0",
+ "defence_animation": "6183",
"weakness": "9",
"magic_animation": "0",
"death_animation": "6182",
@@ -32821,21 +34109,23 @@
"examine": "AHHHHH!",
"melee_animation": "3812",
"range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
+ "combat_audio": "297,299,298",
+ "attack_speed": "4",
+ "defence_animation": "3811",
+ "weakness": "",
"magic_animation": "0",
"death_animation": "3813",
"name": "Fear reaper",
- "defence_level": "27",
+ "defence_level": "40",
"safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
+ "lifepoints": "25",
+ "strength_level": "41",
"id": "3649",
"range_level": "1",
- "attack_level": "27"
+ "attack_level": "41"
},
{
- "examine": "What on RuneScape is that?!?",
+ "examine": "What on Gielinor is that?!?",
"melee_animation": "3818",
"range_animation": "0",
"defence_animation": "0",
@@ -32870,129 +34160,218 @@
},
{
"examine": "He looks a little on the cross side!",
+ "melee_animation": "6376",
+ "range_animation": "0",
+ "combat_audio": "876,878,877",
+ "attack_speed": "4",
+ "defence_animation": "0",
+ "weakness": "9",
+ "magic_animation": "0",
+ "death_animation": "6377",
"name": "Angry unicorn",
- "defence_level": "1",
+ "defence_level": "38",
"safespot": null,
- "lifepoints": "10",
- "combat_audio": "496,498,497",
- "strength_level": "1",
+ "lifepoints": "50",
+ "strength_level": "41",
"id": "3661",
+ "aggressive": "false",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "38"
},
{
"examine": "He looks a little on the cross side!",
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
"combat_audio": "703,705,704",
- "strength_level": "1",
+ "melee_animation": "4933",
+ "defence_animation": "4934",
+ "death_animation": "4935",
+ "name": "Angry giant rat",
+ "defence_level": "38",
+ "safespot": null,
+ "lifepoints": "50",
+ "strength_level": "41",
"id": "3662",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "38"
},
{
"examine": "He looks a little on the cross side!",
- "slayer_task": "38",
"melee_animation": "6185",
"range_animation": "0",
"combat_audio": "469,472,471",
- "defence_animation": "0",
+ "defence_animation": "6183",
"weakness": "9",
"magic_animation": "0",
"death_animation": "6182",
"name": "Angry goblin",
- "defence_level": "25",
+ "defence_level": "38",
"safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
+ "lifepoints": "50",
+ "strength_level": "41",
"id": "3663",
"range_level": "1",
- "attack_level": "25"
+ "attack_level": "38"
},
{
"examine": "He looks a little on the cross side!",
+ "combat_audio": "297,299,298",
+ "melee_animation": "4927",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "4927",
+ "death_animation": "4929",
"name": "Angry bear",
- "defence_level": "1",
+ "defence_level": "38",
"safespot": null,
"lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
+ "strength_level": "41",
"id": "3664",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "38"
+ },
+ {
+ "examine": "AHHHHH!",
+ "melee_animation": "3812",
+ "combat_audio": "297,299,298",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "3811",
+ "death_animation": "3813",
+ "name": "Fear reaper",
+ "defence_level": "45",
+ "safespot": null,
+ "lifepoints": "57",
+ "strength_level": "48",
+ "id": "3665",
+ "bonuses": "",
+ "range_level": "1",
+ "attack_level": "45"
+ },
+ {
+ "examine": "What on Gielinor is that?!?",
+ "melee_animation": "3818",
+ "combat_audio": "297,299,298",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "3820",
+ "death_animation": "3821",
+ "name": "Confusion beast",
+ "defence_level": "52",
+ "safespot": null,
+ "lifepoints": "64",
+ "strength_level": "55",
+ "id": "3666",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "52"
+ },
+ {
+ "examine": "He looks a little on the cross side!",
+ "melee_animation": "3823",
+ "combat_audio": "297,299,298",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "0",
+ "death_animation": "3827",
+ "name": "Hopeless creature",
+ "defence_level": "59",
+ "safespot": null,
+ "lifepoints": "71",
+ "strength_level": "62",
+ "id": "3667",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "59"
+ },
+ {
+ "examine": "That's a lot of bones on his back...",
+ "name": "Odd Old Man",
+ "id": "3670"
},
{
"examine": "Freshly sheared.",
"melee_animation": "5341",
"range_animation": "0",
+ "combat_audio": "757,759,758",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "5337",
"weakness": "9",
"magic_animation": "0",
"death_animation": "5343",
"name": "Ram",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "8",
+ "strength_level": "1",
"id": "3672",
"range_level": "1",
- "attack_level": "2"
+ "attack_level": "1"
},
{
- "examine": "White and shaggy.",
+ "examine": "White and fluffy.",
"melee_animation": "5338",
"range_animation": "0",
+ "combat_audio": "757,759,758",
"attack_speed": "5",
"respawn_delay": "60",
- "defence_animation": "0",
+ "defence_animation": "5337",
"weakness": "9",
"magic_animation": "0",
"death_animation": "5336",
"name": "Ram",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "8",
+ "strength_level": "1",
"id": "3673",
"range_level": "1",
- "attack_level": "2"
+ "attack_level": "1"
+ },
+ {
+ "name": "Sack",
+ "id": "3674"
},
{
"examine": "If you see them circling, run.",
"melee_animation": "2019",
"range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "890,892,891",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
+ "defence_animation": "2024",
"weakness": "9",
"magic_animation": "0",
"death_animation": "2021",
"name": "Vulture",
- "defence_level": "38",
+ "defence_level": "10",
"safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
+ "lifepoints": "10",
+ "strength_level": "40",
"id": "3675",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "38"
+ "attack_level": "40"
},
{
"examine": "If you see them circling, run.",
"melee_animation": "2025",
- "respawn_delay": "60",
+ "combat_audio": "890,892,891",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "2024",
"death_animation": "2026",
"name": "Vulture",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "10",
- "strength_level": "1",
+ "strength_level": "40",
"id": "3676",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "40"
},
{
"examine": "A young boy handing out flyers.",
@@ -33025,7 +34404,6 @@
},
{
"examine": "Eww",
- "slayer_task": "67",
"melee_animation": "6117",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -33063,23 +34441,25 @@
},
{
"examine": "An annoying flappy thing.",
- "slayer_task": "5",
"melee_animation": "4915",
"range_animation": "4915",
- "attack_speed": "6",
- "magic_level": "32",
+ "combat_audio": "292,294,293",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "35",
"defence_animation": "4916",
"weakness": "4",
"slayer_exp": "8",
"magic_animation": "4915",
"death_animation": "4917",
"name": "Giant bat",
- "defence_level": "32",
+ "defence_level": "22",
"safespot": null,
"lifepoints": "32",
- "strength_level": "12",
+ "strength_level": "22",
"id": "3711",
"aggressive": "true",
+ "bonuses": "0,0,0,0,0,10,10,12,10,8,0,0,0,0,0",
"range_level": "1",
"attack_level": "12"
},
@@ -34874,7 +36254,7 @@
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -34929,7 +36309,6 @@
},
{
"examine": "Snake",
- "slayer_task": "72",
"melee_animation": "3538",
"range_animation": "0",
"combat_audio": "3609,3608,3610",
@@ -34950,7 +36329,6 @@
},
{
"examine": "A baby sea snake. Snaaaaaaake!",
- "slayer_task": "72",
"melee_animation": "3538",
"range_animation": "0",
"combat_audio": "3609,3608,3610",
@@ -35037,6 +36415,7 @@
"defence_level": "1",
"safespot": null,
"lifepoints": "10",
+ "combat_audio": "288,290,289",
"strength_level": "1",
"id": "4228",
"range_level": "1",
@@ -35067,7 +36446,6 @@
},
{
"examine": "A denizen of the Abyss!",
- "slayer_task": "1",
"melee_animation": "1537",
"range_animation": "1537",
"combat_audio": "276,278,277",
@@ -35228,7 +36606,6 @@
},
{
"examine": "A dwarven guard.",
- "slayer_task": "29",
"melee_animation": "99",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -35595,182 +36972,233 @@
"examine": "Animated bronze armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Bronze Armour",
- "defence_level": "8",
+ "defence_level": "10",
"safespot": null,
+ "poison_immune": "true",
"lifepoints": "10",
- "strength_level": "8",
+ "strength_level": "10",
"id": "4278",
- "bonuses": "3,3,3,3,1,3,1,3,3,3,3,8,10,8,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "8"
+ "attack_level": "10"
},
{
"examine": "Animated iron armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Iron Armour",
- "defence_level": "16",
+ "defence_level": "20",
"safespot": null,
+ "poison_immune": "true",
"lifepoints": "20",
- "strength_level": "16",
+ "strength_level": "20",
"id": "4279",
- "bonuses": "6,6,6,6,2,6,6,6,6,6,6,2,25,2,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "16"
+ "attack_level": "20"
},
{
"examine": "Animated steel armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Steel Armour",
- "defence_level": "32",
+ "defence_level": "40",
"safespot": null,
+ "poison_immune": "true",
"lifepoints": "40",
- "strength_level": "32",
+ "strength_level": "40",
"id": "4280",
- "bonuses": "10,10,10,10,4,10,10,10,10,10,10,2,22,2,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "32"
+ "attack_level": "40"
},
{
"examine": "Animated black armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Black Armour",
- "defence_level": "40",
+ "defence_level": "60",
"safespot": null,
+ "poison_immune": "true",
"lifepoints": "60",
- "strength_level": "40",
+ "strength_level": "60",
"id": "4281",
- "bonuses": "15,15,15,15,5,15,6,15,15,16,15,5,27,5,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "40"
+ "attack_level": "60"
},
{
"examine": "Animated mithril armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Mithril Armour",
- "defence_level": "55",
+ "defence_level": "80",
"safespot": null,
+ "poison_immune": "true",
"lifepoints": "80",
- "strength_level": "55",
+ "strength_level": "80",
"id": "4282",
- "bonuses": "20,20,20,20,20,20,8,20,20,20,20,5,31,5,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "55"
+ "attack_level": "80"
},
{
"examine": "Animated adamant armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Adamant Armour",
- "defence_level": "75",
+ "defence_level": "99",
"safespot": null,
+ "poison_immune": "true",
"lifepoints": "99",
- "strength_level": "65",
+ "strength_level": "99",
"id": "4283",
- "bonuses": "25,25,25,25,25,25,12,25,25,25,25,5,35,5,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "65"
+ "attack_level": "99"
},
{
"examine": "Animated rune armour.",
"melee_animation": "386",
"range_animation": "386",
- "attack_speed": "5",
+ "combat_audio": "2549,1979,512",
+ "attack_speed": "4",
"respawn_delay": "20",
"defence_animation": "388",
"weakness": "7",
"magic_animation": "386",
"death_animation": "4167",
"name": "Animated Rune Armour",
- "defence_level": "85",
+ "defence_level": "120",
"safespot": null,
- "lifepoints": "118",
- "strength_level": "75",
+ "poison_immune": "true",
+ "lifepoints": "120",
+ "strength_level": "120",
"id": "4284",
- "bonuses": "30,30,30,30,30,30,16,30,25,30,30,5,39,5,3",
+ "aggressive": "true",
+ "bonuses": "4,4,4,0,0,50,25,19,400,400,0,5,0,0,0",
"range_level": "1",
- "attack_level": "75"
+ "attack_level": "120"
+ },
+ {
+ "examine": "The big door man.",
+ "name": "Ghommal",
+ "id": "4285"
+ },
+ {
+ "examine": "Guild Master.",
+ "name": "Harrallak Menarous",
+ "id": "4286"
+ },
+ {
+ "examine": "The guild engineer.",
+ "name": "Gamfred",
+ "id": "4287"
+ },
+ {
+ "examine": "Used to be a black knight.",
+ "name": "Ajjat",
+ "id": "4288"
+ },
+ {
+ "examine": "Blademistress, skillful female warrior.",
+ "name": "Kamfreena",
+ "id": "4289"
+ },
+ {
+ "examine": "A warrior mage from the east.",
+ "name": "Shanomi",
+ "id": "4290"
},
{
"examine": "A one-eyed man eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
+ "combat_audio": "448,451,450",
"attack_speed": "4",
"magic_level": "1",
- "respawn_delay": "25",
+ "respawn_delay": "30",
"defence_animation": "4651",
"weakness": "8",
"slayer_exp": "75",
"magic_animation": "0",
"death_animation": "4653",
"name": "Cyclops",
- "defence_level": "35",
+ "defence_level": "26",
"safespot": null,
"lifepoints": "75",
- "strength_level": "65",
+ "strength_level": "50",
"id": "4291",
"aggressive": "true",
"bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"clue_level": "2",
"range_level": "1",
- "attack_level": "65"
+ "attack_level": "47"
},
{
"examine": "A one-eyed woman eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
+ "combat_audio": "448,451,450",
"attack_speed": "4",
"magic_level": "1",
- "respawn_delay": "60",
+ "respawn_delay": "30",
"defence_animation": "4651",
"weakness": "1",
"slayer_exp": "100",
"magic_animation": "0",
"death_animation": "4653",
"name": "Cyclops",
- "defence_level": "65",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "100",
"strength_level": "65",
@@ -35781,6 +37209,41 @@
"range_level": "1",
"attack_level": "65"
},
+ {
+ "examine": "Food shopkeeper.",
+ "name": "Lidio",
+ "id": "4293"
+ },
+ {
+ "examine": "Potion shopkeeper.",
+ "name": "Lilly",
+ "id": "4294"
+ },
+ {
+ "examine": "Armour shopkeeper.",
+ "name": "Anton",
+ "id": "4295"
+ },
+ {
+ "examine": "Bank staff.",
+ "name": "Jade",
+ "id": "4296"
+ },
+ {
+ "examine": "He looks like a strong warrior.",
+ "name": "Sloane",
+ "id": "4297"
+ },
+ {
+ "examine": "He looks a bit drunk.",
+ "name": "Jimmy",
+ "id": "4298"
+ },
+ {
+ "examine": "He looks fair and reliable.",
+ "name": "Ref",
+ "id": "4299"
+ },
{
"examine": "He looks fair and reliable.",
"melee_animation": "0",
@@ -36049,7 +37512,6 @@
},
{
"examine": "It's all white by me.",
- "slayer_task": "5",
"melee_animation": "4915",
"range_animation": "0",
"respawn_delay": "60",
@@ -36087,110 +37549,128 @@
},
{
"examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "52",
"melee_animation": "4235",
"range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "496,500,499",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
+ "defence_animation": "4232",
"weakness": "7",
"slayer_exp": "45",
"magic_animation": "0",
"death_animation": "4233",
"name": "Jungle horror",
- "defence_level": "48",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
+ "lifepoints": "45",
+ "strength_level": "70",
"id": "4348",
"aggressive": "true",
"clue_level": "1",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "48"
+ "attack_level": "70"
},
{
"examine": "A horrible, emaciated ape like creature with beady yellow eyes.",
"melee_animation": "4234",
- "respawn_delay": "60",
+ "combat_audio": "496,500,499",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "4232",
"slayer_exp": "45",
"death_animation": "4233",
"name": "Jungle horror",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
"lifepoints": "45",
- "strength_level": "1",
+ "strength_level": "70",
"id": "4349",
"aggressive": "true",
"clue_level": "1",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
"examine": "A horrible, emaciated ape like creature with beady green eyes.",
- "slayer_task": "52",
"melee_animation": "4235",
"range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
+ "combat_audio": "496,500,499",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
+ "defence_animation": "4232",
"weakness": "7",
"slayer_exp": "45",
"magic_animation": "0",
"death_animation": "4233",
"name": "Jungle horror",
- "defence_level": "48",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
+ "lifepoints": "45",
+ "strength_level": "70",
"id": "4350",
"aggressive": "true",
"clue_level": "1",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "48"
+ "attack_level": "70"
},
{
"examine": "A horrible, emaciated ape like creature with beady blue eyes.",
"melee_animation": "4234",
- "respawn_delay": "60",
+ "combat_audio": "496,500,499",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "4232",
"slayer_exp": "45",
"death_animation": "4233",
"name": "Jungle horror",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
"lifepoints": "45",
- "strength_level": "1",
+ "strength_level": "70",
"id": "4351",
"aggressive": "true",
"clue_level": "1",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
"examine": "A horrible, emaciated ape like creature with beady pink eyes.",
"melee_animation": "4234",
- "respawn_delay": "60",
+ "combat_audio": "496,500,499",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "50",
"defence_animation": "4232",
"slayer_exp": "45",
"death_animation": "4233",
"name": "Jungle horror",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
"lifepoints": "45",
- "strength_level": "1",
+ "strength_level": "70",
"id": "4352",
"aggressive": "true",
"clue_level": "1",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
"examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
"melee_animation": "4234",
"range_animation": "4234",
+ "combat_audio": "496,500,499",
"attack_speed": "4",
"magic_level": "80",
- "respawn_delay": "20",
+ "respawn_delay": "50",
"defence_animation": "4232",
"weakness": "6",
"slayer_exp": "55",
@@ -36210,12 +37690,12 @@
},
{
"examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
"melee_animation": "4234",
"range_animation": "4234",
+ "combat_audio": "496,500,499",
"attack_speed": "4",
"magic_level": "80",
- "respawn_delay": "20",
+ "respawn_delay": "50",
"defence_animation": "4232",
"weakness": "6",
"slayer_exp": "55",
@@ -36235,12 +37715,12 @@
},
{
"examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
"melee_animation": "4234",
"range_animation": "4234",
+ "combat_audio": "496,500,499",
"attack_speed": "4",
"magic_level": "80",
- "respawn_delay": "20",
+ "respawn_delay": "50",
"defence_animation": "4232",
"weakness": "6",
"slayer_exp": "55",
@@ -36260,12 +37740,12 @@
},
{
"examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
"melee_animation": "4234",
"range_animation": "4234",
+ "combat_audio": "496,500,499",
"attack_speed": "4",
"magic_level": "80",
- "respawn_delay": "20",
+ "respawn_delay": "50",
"defence_animation": "4232",
"weakness": "6",
"slayer_exp": "55",
@@ -36285,12 +37765,12 @@
},
{
"examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
"melee_animation": "4234",
"range_animation": "4234",
+ "combat_audio": "496,500,499",
"attack_speed": "4",
"magic_level": "80",
- "respawn_delay": "20",
+ "respawn_delay": "50",
"defence_animation": "4232",
"weakness": "6",
"slayer_exp": "55",
@@ -36406,7 +37886,7 @@
"attack_level": "1"
},
{
- "examine": "A retired RuneScape security guard.",
+ "examine": "A retired Gielinor security guard.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -36422,10 +37902,11 @@
"attack_level": "1"
},
{
- "examine": "A bony ghost.",
+ "examine": "A boney ghost.",
"melee_animation": "422",
"range_animation": "422",
- "attack_speed": "6",
+ "combat_audio": "924,926,925",
+ "attack_speed": "4",
"defence_animation": "404",
"slayer_exp": "60",
"magic_animation": "422",
@@ -36442,10 +37923,11 @@
"attack_level": "50"
},
{
- "examine": "A bony ghost.",
+ "examine": "A boney ghost.",
"melee_animation": "422",
"range_animation": "422",
- "attack_speed": "6",
+ "combat_audio": "924,926,925",
+ "attack_speed": "4",
"defence_animation": "404",
"slayer_exp": "60",
"magic_animation": "422",
@@ -36462,10 +37944,11 @@
"attack_level": "50"
},
{
- "examine": "A bony ghost.",
+ "examine": "A boney ghost.",
"melee_animation": "422",
"range_animation": "422",
- "attack_speed": "6",
+ "combat_audio": "924,926,925",
+ "attack_speed": "4",
"defence_animation": "404",
"slayer_exp": "60",
"magic_animation": "422",
@@ -36501,7 +37984,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5532",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -36524,9 +38006,9 @@
},
{
"examine": "I don't think insect repellent will work.",
- "slayer_task": "34",
"melee_animation": "1184",
"range_animation": "1184",
+ "combat_audio": "571,573,572",
"attack_speed": "3",
"respawn_delay": "30",
"defence_animation": "1186",
@@ -36549,6 +38031,7 @@
"examine": "I don't think insect repellent will work.",
"melee_animation": "1184",
"range_animation": "1184",
+ "combat_audio": "571,573,572",
"attack_speed": "3",
"respawn_delay": "30",
"defence_animation": "1186",
@@ -36570,6 +38053,7 @@
"examine": "I don't think insect repellent will work.",
"melee_animation": "1184",
"range_animation": "1184",
+ "combat_audio": "571,573,572",
"attack_speed": "3",
"respawn_delay": "30",
"defence_animation": "1186",
@@ -36588,10 +38072,10 @@
"attack_level": "100"
},
{
- "examine": "The walking dead.",
+ "examine": "Dead man walking.",
"melee_animation": "5568",
"range_animation": "5568",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5567",
@@ -36604,15 +38088,16 @@
"lifepoints": "23",
"strength_level": "1",
"id": "4392",
+ "aggressive": "true",
"bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
"range_level": "1",
"attack_level": "24"
},
{
- "examine": "Dead (wo)man walking.",
+ "examine": "Dead man walking.",
"melee_animation": "5578",
"range_animation": "5578",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5579",
@@ -36631,10 +38116,10 @@
"attack_level": "35"
},
{
- "examine": "Could his name be \"Lurch\"?",
+ "examine": "Dead man walking.",
"melee_animation": "5578",
"range_animation": "5578",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5579",
@@ -36647,16 +38132,19 @@
"lifepoints": "40",
"strength_level": "1",
"id": "4394",
+ "aggressive": "true",
"bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
"range_level": "1",
"attack_level": "47"
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"combat_audio": "703,705,704",
+ "melee_animation": "4933",
"attack_speed": "5",
+ "defence_animation": "4934",
"weakness": "9",
+ "death_animation": "4935",
"name": "Giant rat",
"defence_level": "23",
"safespot": null,
@@ -36672,7 +38160,7 @@
"examine": "A popular dwarven delicacy.",
"melee_animation": "2705",
"range_animation": "2705",
- "combat_audio": "3102,3104,3103",
+ "combat_audio": "710,713,711",
"attack_speed": "5",
"defence_animation": "2706",
"magic_animation": "2705",
@@ -36689,6 +38177,7 @@
{
"examine": "Big Cow-like... But cows don't have serpent tails!",
"melee_animation": "4271",
+ "combat_audio": "511,330,329",
"attack_speed": "5",
"magic_level": "38",
"spell_id": "7",
@@ -36712,6 +38201,7 @@
{
"examine": "Big Cow-like... But cows don't have serpent tails!",
"melee_animation": "4271",
+ "combat_audio": "511,330,329",
"attack_speed": "5",
"magic_level": "38",
"spell_id": "7",
@@ -36735,6 +38225,7 @@
{
"examine": "Big Cow-like... But cows don't have serpent tails!",
"melee_animation": "4271",
+ "combat_audio": "511,330,329",
"attack_speed": "5",
"magic_level": "45",
"spell_id": "7",
@@ -36776,6 +38267,7 @@
},
{
"melee_animation": "6249",
+ "combat_audio": "3604,3609,3608",
"respawn_delay": "60",
"defence_animation": "6250",
"death_animation": "6251",
@@ -36785,7 +38277,7 @@
"lifepoints": "22",
"strength_level": "1",
"id": "4401",
- "aggressive": "true",
+ "aggressive": "false",
"range_level": "1",
"attack_level": "1"
},
@@ -36832,12 +38324,13 @@
"attack_level": "30"
},
{
- "examine": "Examine not added",
- "slayer_task": "58",
+ "examine": "He doesn't look very pleased to see you.",
"melee_animation": "4266",
"range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
+ "combat_audio": "626,628,627",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "15",
"defence_animation": "4267",
"weakness": "7",
"slayer_exp": "10",
@@ -36846,60 +38339,67 @@
"name": "Minotaur",
"defence_level": "10",
"safespot": null,
- "lifepoints": "11",
+ "lifepoints": "10",
"strength_level": "10",
"id": "4404",
- "bonuses": "8,8,10,8,8,10,8,8,8,10,8,8,8,8,8",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
"clue_level": "0",
"range_level": "1",
- "attack_level": "10"
+ "attack_level": "12"
},
{
- "examine": "Examine not added",
+ "examine": "He doesn't look very pleased to see you.",
"melee_animation": "4266",
"range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
+ "combat_audio": "626,628,627",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "15",
"defence_animation": "4267",
"magic_animation": "4266",
"death_animation": "4265",
"name": "Minotaur",
- "defence_level": "15",
+ "defence_level": "10",
"safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
+ "lifepoints": "10",
+ "strength_level": "10",
"id": "4405",
+ "aggressive": "false",
"bonuses": "11,11,13,11,11,13,11,11,11,13,11,11,11,11,11",
"clue_level": "0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "12"
},
{
- "examine": "Examine not added",
+ "examine": "He doesn't look very pleased to see you.",
"melee_animation": "4266",
"range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
+ "combat_audio": "626,628,627",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "15",
"defence_animation": "4267",
"slayer_exp": "22",
"magic_animation": "4266",
"death_animation": "4265",
"name": "Minotaur",
- "defence_level": "19",
+ "defence_level": "25",
"safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
+ "lifepoints": "22",
+ "strength_level": "25",
"id": "4406",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,-10,-10,-10,21,-10,0,0,0,0,0",
"clue_level": "0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "23"
},
{
"examine": "An ugly green creature.",
"melee_animation": "6185",
"range_animation": "6185",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "5",
"defence_animation": "6183",
"slayer_exp": "5",
@@ -36920,7 +38420,7 @@
"examine": "An ugly green creature.",
"melee_animation": "6185",
"range_animation": "6185",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "5",
"defence_animation": "6183",
"slayer_exp": "16",
@@ -36941,7 +38441,7 @@
"examine": "An ugly green creature.",
"melee_animation": "6185",
"range_animation": "6185",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "5",
"defence_animation": "6183",
"slayer_exp": "7",
@@ -36962,7 +38462,7 @@
"examine": "An ugly green creature.",
"melee_animation": "6185",
"range_animation": "6185",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "5",
"defence_animation": "6183",
"magic_animation": "6185",
@@ -36982,7 +38482,7 @@
"examine": "An ugly green creature.",
"melee_animation": "6185",
"range_animation": "6185",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "5",
"defence_animation": "6183",
"magic_animation": "6185",
@@ -37002,7 +38502,7 @@
"examine": "An ugly green creature.",
"melee_animation": "6185",
"range_animation": "6185",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"attack_speed": "5",
"defence_animation": "6183",
"magic_animation": "6185",
@@ -37019,7 +38519,7 @@
"attack_level": "1"
},
{
- "examine": "Not man's best friend.",
+ "examine": "They say inside you there are two wolves...",
"melee_animation": "6559",
"range_animation": "6559",
"combat_audio": "481,491,490",
@@ -37040,7 +38540,7 @@
"attack_level": "1"
},
{
- "examine": "Not man's best friend.",
+ "examine": "They say inside you there are two wolves...",
"melee_animation": "6559",
"range_animation": "6559",
"combat_audio": "481,491,490",
@@ -37053,7 +38553,7 @@
"name": "Wolf",
"defence_level": "7",
"safespot": null,
- "lifepoints": "69",
+ "lifepoints": "10",
"strength_level": "1",
"id": "4414",
"bonuses": "5,5,5,5,5,5,5,5,5,5,5,5,5,5,5",
@@ -37062,10 +38562,9 @@
},
{
"examine": "A popular dwarven delicacy.",
- "slayer_task": "67",
"melee_animation": "2705",
"range_animation": "2705",
- "combat_audio": "3102,3104,3103",
+ "combat_audio": "710,713,711",
"attack_speed": "4",
"magic_level": "1",
"respawn_delay": "3",
@@ -37115,6 +38614,11 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "A healing fairy.",
+ "name": "Fairy Nuff",
+ "id": "4434"
+ },
{
"examine": "Horseplay.",
"melee_animation": "0",
@@ -37151,19 +38655,24 @@
"examine": "A noble creature!",
"melee_animation": "6376",
"range_animation": "0",
- "respawn_delay": "60",
+ "combat_audio": "812,814,813",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "90",
"defence_animation": "0",
"weakness": "7",
"magic_animation": "0",
"death_animation": "6377",
"name": "Stag",
- "defence_level": "18",
+ "defence_level": "13",
"safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
+ "lifepoints": "19",
+ "strength_level": "13",
"id": "4440",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
"range_level": "1",
- "attack_level": "18"
+ "attack_level": "11"
},
{
"examine": "Twiggy.",
@@ -37824,49 +39333,16 @@
"defence_animation": "4384",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
- "id": "4527",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4528",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4529",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,90,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "95"
},
{
"melee_animation": "4388",
@@ -37875,15 +39351,16 @@
"defence_animation": "4385",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4530",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,90,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "95"
},
{
"melee_animation": "4388",
@@ -37892,15 +39369,16 @@
"defence_animation": "4385",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4531",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,70,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "95"
},
{
"melee_animation": "4388",
@@ -37909,36 +39387,19 @@
"defence_animation": "4384",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
- "id": "4532",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4533",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,90,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "95"
},
{
"examine": "His beard seems to have a life of its own.",
- "slayer_task": "62",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "449,451,450",
@@ -38961,7 +40422,6 @@
},
{
"examine": "Young but still dangerous.",
- "slayer_task": "11",
"melee_animation": "25",
"range_animation": "25",
"combat_audio": "405,407,406",
@@ -38986,7 +40446,6 @@
},
{
"examine": "Young but still dangerous.",
- "slayer_task": "11",
"combat_audio": "405,407,406",
"melee_animation": "25",
"attack_speed": "4",
@@ -39038,7 +40497,6 @@
},
{
"examine": "A big powerful dragon.",
- "slayer_task": "68",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39064,7 +40522,6 @@
},
{
"examine": "A big powerful dragon.",
- "slayer_task": "68",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39090,7 +40547,6 @@
},
{
"examine": "A big powerful dragon.",
- "slayer_task": "68",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39116,7 +40572,6 @@
},
{
"examine": "A big powerful dragon.",
- "slayer_task": "68",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39142,7 +40597,6 @@
},
{
"examine": "A fierce dragon with black scales!",
- "slayer_task": "9",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39168,7 +40622,6 @@
},
{
"examine": "A fierce dragon with black scales!",
- "slayer_task": "9",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39194,7 +40647,6 @@
},
{
"examine": "A fierce dragon with black scales!",
- "slayer_task": "9",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39220,7 +40672,6 @@
},
{
"examine": "A fierce dragon with black scales!",
- "slayer_task": "9",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39246,7 +40697,6 @@
},
{
"examine": "Must be related to Elvarg.",
- "slayer_task": "41",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39272,7 +40722,6 @@
},
{
"examine": "Must be related to Elvarg.",
- "slayer_task": "41",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39298,7 +40747,6 @@
},
{
"examine": "Must be related to Elvarg.",
- "slayer_task": "41",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39324,7 +40772,6 @@
},
{
"examine": "Must be related to Elvarg.",
- "slayer_task": "41",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39350,7 +40797,6 @@
},
{
"examine": "A mother dragon.",
- "slayer_task": "11",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39376,7 +40822,6 @@
},
{
"examine": "A mother dragon.",
- "slayer_task": "11",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39402,7 +40847,6 @@
},
{
"examine": "A mother dragon.",
- "slayer_task": "11",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39428,7 +40872,6 @@
},
{
"examine": "A mother dragon.",
- "slayer_task": "11",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -39454,13 +40897,12 @@
},
{
"examine": "He's got icicles in his beard.",
- "slayer_task": "47",
"melee_animation": "4672",
"range_animation": "0",
- "combat_audio": "449,451,450",
+ "combat_audio": "448,451,450",
"attack_speed": "5",
"magic_level": "1",
- "respawn_delay": "60",
+ "respawn_delay": "30",
"defence_animation": "0",
"weakness": "9",
"slayer_exp": "70",
@@ -39479,13 +40921,12 @@
},
{
"examine": "He's got icicles in his beard.",
- "slayer_task": "47",
"melee_animation": "4672",
"range_animation": "0",
- "combat_audio": "449,451,450",
+ "combat_audio": "448,451,450",
"attack_speed": "5",
"magic_level": "1",
- "respawn_delay": "60",
+ "respawn_delay": "30",
"defence_animation": "0",
"weakness": "9",
"slayer_exp": "70",
@@ -39504,13 +40945,12 @@
},
{
"examine": "He's got icicles in his beard.",
- "slayer_task": "47",
"melee_animation": "4672",
"range_animation": "0",
- "combat_audio": "449,451,450",
+ "combat_audio": "448,451,450",
"attack_speed": "5",
"magic_level": "1",
- "respawn_delay": "60",
+ "respawn_delay": "30",
"defence_animation": "0",
"weakness": "9",
"slayer_exp": "70",
@@ -39529,7 +40969,6 @@
},
{
"examine": "His beard seems to have a life of its own.",
- "slayer_task": "62",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "449,451,450",
@@ -39554,7 +40993,6 @@
},
{
"examine": "A very large foe.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "4652",
"combat_audio": "448,451,450",
@@ -39579,7 +41017,6 @@
},
{
"examine": "A very large foe.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "4652",
"combat_audio": "448,451,450",
@@ -39604,7 +41041,6 @@
},
{
"examine": "A very large foe.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "4652",
"combat_audio": "448,451,450",
@@ -39629,7 +41065,6 @@
},
{
"examine": "A very large foe.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "4652",
"combat_audio": "448,451,450",
@@ -39654,7 +41089,6 @@
},
{
"examine": "A very large foe.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "4652",
"combat_audio": "448,451,450",
@@ -39679,7 +41113,6 @@
},
{
"examine": "Lesser, but still pretty big.",
- "slayer_task": "56",
"melee_animation": "4630",
"range_animation": "4630",
"combat_audio": "400,404,403",
@@ -39704,7 +41137,6 @@
},
{
"examine": "Lesser, but still pretty big.",
- "slayer_task": "56",
"melee_animation": "4630",
"range_animation": "4630",
"combat_audio": "400,404,403",
@@ -39729,7 +41161,6 @@
},
{
"examine": "Lesser, but still pretty big.",
- "slayer_task": "56",
"melee_animation": "4630",
"range_animation": "4630",
"combat_audio": "400,404,403",
@@ -39754,7 +41185,6 @@
},
{
"examine": "Lesser, but still pretty big.",
- "slayer_task": "56",
"melee_animation": "4630",
"range_animation": "4630",
"combat_audio": "400,404,403",
@@ -39779,7 +41209,6 @@
},
{
"examine": "Big, red, and incredibly evil.",
- "slayer_task": "40",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "400,404,403",
@@ -39805,7 +41234,6 @@
},
{
"examine": "Big, red, and incredibly evil.",
- "slayer_task": "40",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "400,404,403",
@@ -39831,7 +41259,6 @@
},
{
"examine": "Big, red, and incredibly evil.",
- "slayer_task": "40",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "400,404,403",
@@ -39857,7 +41284,6 @@
},
{
"examine": "Big, red, and incredibly evil.",
- "slayer_task": "40",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "400,404,403",
@@ -39883,7 +41309,6 @@
},
{
"examine": "A big, scary, jet-black demon.",
- "slayer_task": "8",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "397,399,398",
@@ -39908,7 +41333,6 @@
},
{
"examine": "A big, scary, jet-black demon.",
- "slayer_task": "8",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "397,399,398",
@@ -39933,7 +41357,6 @@
},
{
"examine": "A big, scary, jet-black demon.",
- "slayer_task": "8",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "397,399,398",
@@ -39958,7 +41381,6 @@
},
{
"examine": "A big, scary, jet-black demon.",
- "slayer_task": "8",
"melee_animation": "64",
"range_animation": "64",
"combat_audio": "397,399,398",
@@ -39983,7 +41405,6 @@
},
{
"examine": "His beard seems to have a life of its own.",
- "slayer_task": "62",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "449,451,450",
@@ -40770,7 +42191,6 @@
},
{
"examine": "An enraged vampyre!",
- "slayer_task": "86",
"melee_animation": "6016",
"range_animation": "0",
"defence_animation": "0",
@@ -41653,7 +43073,6 @@
},
{
"examine": "An extremely vicious lobster.",
- "slayer_task": "71",
"melee_animation": "6265",
"range_animation": "0",
"respawn_delay": "60",
@@ -41689,7 +43108,7 @@
},
{
"melee_animation": "164",
- "combat_audio": "469,472,471",
+ "combat_audio": "3520,472,471",
"respawn_delay": "60",
"defence_animation": "163",
"death_animation": "167",
@@ -41848,20 +43267,23 @@
"attack_level": "1"
},
{
+ "examine": "An earth elemental.",
"melee_animation": "4868",
- "attack_speed": "7",
- "respawn_delay": "60",
+ "combat_audio": "1531,1533,1532",
+ "attack_speed": "6",
+ "magic_level": "10",
+ "respawn_delay": "5",
"defence_animation": "4869",
"death_animation": "4870",
"name": "Earth elemental",
- "defence_level": "1",
+ "defence_level": "35",
"safespot": null,
"lifepoints": "35",
- "strength_level": "1",
+ "strength_level": "35",
"id": "4910",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
+ "aggressive": "false",
+ "range_level": "30",
+ "attack_level": "20"
},
{
"examine": "An elemental rock.",
@@ -41882,7 +43304,6 @@
},
{
"examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "4933",
"combat_audio": "703,705,704",
@@ -41906,7 +43327,6 @@
},
{
"examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "4933",
"combat_audio": "703,705,704",
@@ -41930,7 +43350,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -41952,7 +43371,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -41974,7 +43392,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42011,7 +43428,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42033,7 +43449,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42055,7 +43470,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42077,7 +43491,6 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42195,7 +43608,6 @@
},
{
"examine": "A dirty rat.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42217,7 +43629,6 @@
},
{
"examine": "A dirty rat.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42261,7 +43672,6 @@
},
{
"examine": "He looks a little on the cross side!",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -42280,7 +43690,6 @@
},
{
"examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
"range_animation": "0",
"combat_audio": "703,705,704",
"defence_animation": "0",
@@ -42332,7 +43741,10 @@
{
"examine": "Overgrown vermin.",
"combat_audio": "703,705,704",
+ "melee_animation": "4933",
"attack_speed": "5",
+ "defence_animation": "4934",
+ "death_animation": "4935",
"name": "Giant rat",
"defence_level": "23",
"safespot": null,
@@ -42346,10 +43758,12 @@
},
{
"examine": "Overgrown vermin.",
- "slayer_task": "67",
"combat_audio": "703,705,704",
+ "melee_animation": "4933",
"attack_speed": "5",
+ "defence_animation": "4934",
"weakness": "9",
+ "death_animation": "4935",
"name": "Giant rat",
"defence_level": "23",
"safespot": null,
@@ -42363,7 +43777,6 @@
},
{
"examine": "Trollish.",
- "slayer_task": "83",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -42412,7 +43825,6 @@
},
{
"examine": "A mountain-dwelling bird. Cute",
- "slayer_task": "7",
"melee_animation": "5031",
"range_animation": "0",
"respawn_delay": "60",
@@ -42432,7 +43844,6 @@
},
{
"examine": "A very",
- "slayer_task": "7",
"melee_animation": "5024",
"range_animation": "5025",
"magic_level": "55",
@@ -42944,9 +44355,10 @@
"attack_level": "1"
},
{
- "examine": "What on RuneScape is that?",
+ "examine": "What on Gielinor is that?",
"melee_animation": "0",
"range_animation": "0",
+ "combat_audio": "670,672,671",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -43044,7 +44456,6 @@
},
{
"examine": "It blends in very well with its surroundings.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -43061,7 +44472,6 @@
},
{
"examine": "This bird obviously doesn't believe in subtlety.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -43078,7 +44488,6 @@
},
{
"examine": "Best served ice cold.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -43095,7 +44504,6 @@
},
{
"examine": "Actually",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -43112,7 +44520,6 @@
},
{
"examine": "Nothing much to get in a flap about.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -43741,6 +45148,11 @@
"range_level": "1",
"attack_level": "1"
},
+ {
+ "examine": "White and fluffy",
+ "name": "Sheep",
+ "id": "5164"
+ },
{
"examine": "This goat belongs to the mountain camp people.",
"melee_animation": "0",
@@ -43774,41 +45186,46 @@
"attack_level": "1"
},
{
- "examine": "White and shaggy.",
+ "examine": "White and fluffy.",
"melee_animation": "5338",
+ "combat_audio": "757,759,758",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5337",
+ "weakness": "9",
"death_animation": "5336",
"name": "Ram",
"defence_level": "1",
"safespot": null,
- "lifepoints": "4",
+ "lifepoints": "8",
"strength_level": "1",
"id": "5168",
"range_level": "1",
"attack_level": "1"
},
{
- "examine": "White and shaggy.",
+ "examine": "White and fluffy.",
"melee_animation": "5338",
+ "combat_audio": "757,759,758",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5337",
+ "weakness": "9",
"death_animation": "5336",
"name": "Ram",
"defence_level": "1",
"safespot": null,
- "lifepoints": "4",
+ "lifepoints": "8",
"strength_level": "1",
"id": "5169",
"range_level": "1",
"attack_level": "1"
},
{
- "examine": "White and shaggy.",
+ "examine": "White and fluffy.",
"melee_animation": "5338",
"range_animation": "0",
+ "combat_audio": "757,759,758",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5337",
@@ -43816,13 +45233,13 @@
"magic_animation": "0",
"death_animation": "5336",
"name": "Ram",
- "defence_level": "2",
+ "defence_level": "1",
"safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
+ "lifepoints": "8",
+ "strength_level": "1",
"id": "5170",
"range_level": "1",
- "attack_level": "2"
+ "attack_level": "1"
},
{
"examine": "This beast doesn't need climbing boots.",
@@ -43874,7 +45291,6 @@
},
{
"examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
"combat_style": "2",
"range_animation": "0",
"respawn_delay": "60",
@@ -43893,7 +45309,6 @@
},
{
"examine": "A mother dragon.",
- "slayer_task": "11",
"melee_animation": "80",
"range_animation": "80",
"combat_audio": "408,410,409",
@@ -43919,7 +45334,6 @@
},
{
"examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
"range_animation": "0",
"defence_animation": "0",
"weakness": "7",
@@ -43935,7 +45349,6 @@
},
{
"examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
"combat_style": "2",
"range_animation": "0",
"respawn_delay": "60",
@@ -43954,7 +45367,6 @@
},
{
"examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
"combat_style": "2",
"range_animation": "0",
"respawn_delay": "60",
@@ -44198,7 +45610,6 @@
},
{
"examine": "Part scarab, part man.",
- "slayer_task": "70",
"combat_style": "2",
"melee_animation": "7615",
"range_animation": "0",
@@ -44220,7 +45631,6 @@
},
{
"examine": "A mounted lancer.",
- "slayer_task": "70",
"melee_animation": "7584",
"range_animation": "0",
"defence_animation": "0",
@@ -44239,7 +45649,6 @@
},
{
"examine": "A mounted archer.",
- "slayer_task": "70",
"melee_animation": "5451",
"range_animation": "5451",
"defence_animation": "0",
@@ -44258,7 +45667,6 @@
},
{
"examine": "A huge scarab beast.",
- "slayer_task": "70",
"melee_animation": "5457",
"range_animation": "0",
"magic_level": "62",
@@ -45064,6 +46472,7 @@
"attack_level": "1"
},
{
+ "examine": "",
"melee_animation": "5568",
"combat_audio": "931,923,922",
"respawn_delay": "60",
@@ -45099,7 +46508,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5532",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -45142,7 +46550,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5532",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -45166,7 +46573,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5532",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -45209,7 +46615,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5532",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -45233,7 +46638,6 @@
},
{
"examine": "Eeek! A ghost!",
- "slayer_task": "36",
"melee_animation": "5532",
"range_animation": "0",
"combat_audio": "436,439,438",
@@ -45333,7 +46737,6 @@
},
{
"examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"attack_speed": "5",
@@ -45354,7 +46757,6 @@
},
{
"examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"defence_animation": "0",
@@ -45372,7 +46774,6 @@
},
{
"examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "5",
@@ -45393,7 +46794,6 @@
},
{
"examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "5",
@@ -45414,7 +46814,6 @@
},
{
"examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
"melee_animation": "5571",
"range_animation": "0",
"attack_speed": "5",
@@ -45435,7 +46834,6 @@
},
{
"examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
"melee_animation": "5571",
"range_animation": "0",
"attack_speed": "5",
@@ -45456,7 +46854,6 @@
},
{
"examine": "A giant skeleton.",
- "slayer_task": "75",
"melee_animation": "5499",
"range_animation": "0",
"defence_animation": "0",
@@ -45474,31 +46871,31 @@
},
{
"examine": "A fiendish embodiment of water.",
- "slayer_task": "90",
"combat_style": "1",
"melee_animation": "1582",
"range_animation": "1582",
- "attack_speed": "6",
- "magic_level": "77",
+ "combat_audio": "3774,3773,3772",
+ "attack_speed": "4",
+ "magic_level": "105",
"defence_animation": "1581",
"weakness": "4",
"magic_animation": "1582",
"death_animation": "1580",
"name": "Waterfiend",
- "defence_level": "50",
+ "defence_level": "128",
"poison_immune": "true",
"safespot": null,
"lifepoints": "128",
- "strength_level": "167",
+ "strength_level": "0",
"id": "5361",
"aggressive": "true",
- "range_level": "167",
+ "bonuses": "0,0,0,0,0,100,100,10,100,100,0,0,0,0,0",
+ "range_level": "105",
"projectile": "16",
- "attack_level": "70"
+ "attack_level": "0"
},
{
"examine": "It appears to be intelligent and savage.",
- "slayer_task": "41",
"melee_animation": "91",
"range_animation": "91",
"combat_audio": "408,410,409",
@@ -45523,7 +46920,6 @@
},
{
"examine": "Experimenting with mithril gone bad!",
- "slayer_task": "57",
"melee_animation": "91",
"range_animation": "91",
"combat_audio": "408,410,409",
@@ -45681,10 +47077,10 @@
"attack_level": "80"
},
{
- "examine": "Examine not added",
+ "examine": "Dead man walking.",
"melee_animation": "5568",
"range_animation": "5568",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5567",
@@ -45697,15 +47093,16 @@
"lifepoints": "23",
"strength_level": "1",
"id": "5375",
+ "aggressive": "true",
"bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
"range_level": "1",
"attack_level": "25"
},
{
- "examine": "Examine not added",
+ "examine": "Dead man walking.",
"melee_animation": "5568",
"range_animation": "5568",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5567",
@@ -45718,15 +47115,16 @@
"lifepoints": "23",
"strength_level": "1",
"id": "5376",
+ "aggressive": "true",
"bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
"range_level": "1",
"attack_level": "25"
},
{
- "examine": "Examine not added",
+ "examine": "Dead man walking.",
"melee_animation": "5578",
"range_animation": "5578",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5579",
@@ -45739,15 +47137,16 @@
"lifepoints": "30",
"strength_level": "1",
"id": "5377",
+ "aggressive": "true",
"bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
"range_level": "1",
"attack_level": "38"
},
{
- "examine": "Examine not added",
+ "examine": "Dead man walking.",
"melee_animation": "5578",
"range_animation": "5578",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5579",
@@ -45760,15 +47159,16 @@
"lifepoints": "30",
"strength_level": "1",
"id": "5378",
+ "aggressive": "true",
"bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
"range_level": "1",
"attack_level": "38"
},
{
- "examine": "Examine not added",
+ "examine": "The walking dead.",
"melee_animation": "5578",
"range_animation": "5578",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5579",
@@ -45781,15 +47181,16 @@
"lifepoints": "40",
"strength_level": "1",
"id": "5379",
+ "aggressive": "true",
"bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
"range_level": "1",
"attack_level": "47"
},
{
- "examine": "Examine not added",
+ "examine": "The walking dead.",
"melee_animation": "5578",
"range_animation": "5578",
- "combat_audio": "931,923,922",
+ "combat_audio": "918,923,922",
"attack_speed": "5",
"respawn_delay": "30",
"defence_animation": "5579",
@@ -45802,6 +47203,7 @@
"lifepoints": "40",
"strength_level": "1",
"id": "5380",
+ "aggressive": "true",
"bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
"range_level": "1",
"attack_level": "47"
@@ -46110,7 +47512,6 @@
},
{
"examine": "A terrifying dog beast.",
- "slayer_task": "82",
"melee_animation": "5625",
"range_animation": "0",
"attack_speed": "5",
@@ -46247,7 +47648,6 @@
},
{
"examine": "Sturdy cold being.",
- "slayer_task": "48",
"melee_animation": "5724",
"range_animation": "5725",
"respawn_delay": "60",
@@ -46267,7 +47667,6 @@
},
{
"examine": "Sturdy cold being.",
- "slayer_task": "48",
"melee_animation": "5724",
"range_animation": "0",
"respawn_delay": "60",
@@ -46287,7 +47686,6 @@
},
{
"examine": "Sturdy cold being.",
- "slayer_task": "48",
"melee_animation": "5724",
"range_animation": "0",
"respawn_delay": "60",
@@ -46307,7 +47705,6 @@
},
{
"examine": "Sturdy cold being.",
- "slayer_task": "48",
"melee_animation": "5724",
"range_animation": "0",
"respawn_delay": "60",
@@ -46327,7 +47724,6 @@
},
{
"examine": "An impressive-looking troll.",
- "slayer_task": "83",
"melee_animation": "5374",
"range_animation": "0",
"magic_level": "65",
@@ -47219,7 +48615,6 @@
},
{
"examine": "Bedside manner is a little lacking",
- "slayer_task": "93",
"melee_animation": "5643",
"range_animation": "0",
"defence_animation": "0",
@@ -47237,7 +48632,6 @@
},
{
"examine": "I hope his hands don't shake.",
- "slayer_task": "93",
"melee_animation": "5643",
"range_animation": "0",
"defence_animation": "0",
@@ -47255,7 +48649,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47292,7 +48685,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47329,7 +48721,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47350,7 +48741,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47371,7 +48761,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5647",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47408,7 +48797,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47429,7 +48817,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47450,7 +48837,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47471,7 +48857,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47492,7 +48877,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5651",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47513,7 +48897,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5880",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47534,7 +48917,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5880",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47555,7 +48937,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5880",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47576,7 +48957,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5880",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47597,7 +48977,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5880",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47618,7 +48997,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5884",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47639,7 +49017,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5884",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47676,7 +49053,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5884",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47713,7 +49089,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5884",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47750,7 +49125,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5884",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47787,7 +49161,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5889",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47824,7 +49197,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5889",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47845,7 +49217,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5889",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47882,7 +49253,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5889",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47919,7 +49289,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5889",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -47956,7 +49325,6 @@
},
{
"examine": "Aaaarg",
- "slayer_task": "93",
"melee_animation": "5889",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -48013,10 +49381,10 @@
},
{
"examine": "A big",
- "slayer_task": "15",
"melee_animation": "6079",
"range_animation": "0",
- "attack_speed": "5",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "60",
"defence_animation": "0",
"weakness": "2",
@@ -48024,30 +49392,35 @@
"magic_animation": "0",
"death_animation": "6081",
"name": "Cave bug",
- "defence_level": "9",
+ "defence_level": "84",
"safespot": null,
"lifepoints": "93",
- "strength_level": "1",
+ "strength_level": "80",
"id": "5750",
- "range_level": "9",
- "attack_level": "1"
+ "bonuses": "0,0,0,0,0,72,59,35,25,95,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "82"
},
{
"examine": "A strange mole-like being.",
"melee_animation": "6012",
+ "combat_audio": "3492,3494,3493",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "60",
"defence_animation": "6013",
"slayer_exp": "52",
"death_animation": "6014",
"name": "Molanisk",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
"lifepoints": "52",
- "strength_level": "1",
+ "strength_level": "40",
"id": "5751",
+ "aggressive": "true",
"clue_level": "1",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "40"
},
{
"examine": "One of the many citizens of Dorgesh-Kaan.",
@@ -48441,7 +49814,6 @@
},
{
"examine": "He keeps order in the city.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -48461,7 +49833,6 @@
},
{
"examine": "He keeps order in the city.",
- "slayer_task": "38",
"melee_animation": "6007",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -49136,7 +50507,6 @@
},
{
"examine": "A goblin with big",
- "slayer_task": "38",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -49154,7 +50524,6 @@
},
{
"examine": "A goblin with big",
- "slayer_task": "38",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -49205,7 +50574,6 @@
},
{
"examine": "He sells tickets to Keldagrim.",
- "slayer_task": "38",
"melee_animation": "0",
"range_animation": "0",
"combat_audio": "469,472,471",
@@ -49274,6 +50642,7 @@
},
{
"slayer_exp": "16",
+ "examine": "A dwarf from Keldagrim.",
"name": "Dwarf",
"defence_level": "1",
"safespot": null,
@@ -49285,6 +50654,7 @@
},
{
"slayer_exp": "16",
+ "examine": "A dwarf from Keldagrim.",
"name": "Dwarf",
"defence_level": "1",
"safespot": null,
@@ -49296,6 +50666,7 @@
},
{
"slayer_exp": "16",
+ "examine": "A dwarf from Keldagrim.",
"name": "Dwarf",
"defence_level": "1",
"safespot": null,
@@ -49543,7 +50914,7 @@
"examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
"melee_animation": "6489",
"range_animation": "0",
- "combat_audio": "511,513,512",
+ "combat_audio": "2548,1979,512",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "0",
@@ -49564,7 +50935,7 @@
"examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
"melee_animation": "6489",
"range_animation": "0",
- "combat_audio": "511,513,512",
+ "combat_audio": "2548,1979,512",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "0",
@@ -49615,7 +50986,7 @@
"attack_level": "1"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,513,512",
@@ -49636,7 +51007,7 @@
"attack_level": "3"
},
{
- "examine": "One of RuneScape's many citizens.",
+ "examine": "One of Gielinor's many citizens.",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "511,506,505",
@@ -49745,7 +51116,7 @@
"attack_level": "1"
},
{
- "examine": "Seth Minas - an aged expert in RuneScape history.",
+ "examine": "Seth Minas - an aged expert in Gielinor history.",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -50099,16 +51470,18 @@
},
{
"examine": "Terrifying!",
- "melee_animation": "0",
+ "melee_animation": "1010",
"range_animation": "0",
+ "magic_level": "1",
+ "respawn_delay": "30",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
"name": "Terrorbird display",
"defence_level": "1",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "34",
+ "strength_level": "23",
"id": "5978",
"range_level": "1",
"attack_level": "1"
@@ -50292,710 +51665,848 @@
"attack_level": "1"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6006",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6007",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6008",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6009",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6010",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6011",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6012",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6013",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
"respawn_delay": "20",
"defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "76",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6014",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "76"
+ "attack_level": "70"
},
{
"examine": "Eek! A werewolf!",
- "slayer_task": "91",
"melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
+ "defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "45",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6015",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "45"
+ "attack_level": "70"
},
{
"examine": "Eek! A werewolf!",
- "slayer_task": "91",
"melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
+ "defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "45",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6016",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "45"
+ "attack_level": "70"
},
{
"examine": "Eek! A werewolf!",
- "slayer_task": "91",
"melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
+ "defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "45",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6017",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "45"
+ "attack_level": "70"
},
{
"examine": "Eek! A werewolf!",
- "slayer_task": "91",
"melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
+ "defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "45",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6018",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "45"
+ "attack_level": "70"
},
{
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
"defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "1",
+ "defence_level": "70",
"safespot": null,
"lifepoints": "100",
- "strength_level": "1",
+ "strength_level": "70",
"id": "6019",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
"examine": "Eek! A werewolf!",
- "slayer_task": "91",
"melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
+ "defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "45",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6020",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "45"
+ "attack_level": "70"
},
{
"examine": "Eek! A werewolf!",
- "slayer_task": "91",
"melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
+ "defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "45",
+ "defence_level": "70",
"safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
+ "lifepoints": "100",
+ "strength_level": "70",
"id": "6021",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "45"
+ "attack_level": "70"
},
{
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
"defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "1",
+ "defence_level": "70",
"safespot": null,
"lifepoints": "100",
- "strength_level": "1",
+ "strength_level": "70",
"id": "6022",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
"defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "1",
+ "defence_level": "70",
"safespot": null,
"lifepoints": "100",
- "strength_level": "1",
+ "strength_level": "70",
"id": "6023",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
"defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "1",
+ "defence_level": "70",
"safespot": null,
"lifepoints": "100",
- "strength_level": "1",
+ "strength_level": "70",
"id": "6024",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
+ "examine": "Eek! A werewolf!",
"melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "range_animation": "",
+ "combat_audio": "481,491,490",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "respawn_delay": "20",
"defence_animation": "6538",
+ "weakness": "",
+ "magic_animation": "",
"death_animation": "6537",
"name": "Werewolf",
- "defence_level": "1",
+ "defence_level": "70",
"safespot": null,
"lifepoints": "100",
- "strength_level": "1",
+ "strength_level": "70",
"id": "6025",
- "aggressive": "true",
+ "aggressive": "false",
+ "bonuses": "0,0,0,0,0,0,0,0,60,0,0,0,0,0,0",
"clue_level": "1",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "70"
},
{
+ "examine": "A traveling man. Are those fleas?",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Boris",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6026",
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "10"
},
{
+ "examine": "A well organised shop keeper.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Imre",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6027",
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
"range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "attack_level": "10"
},
{
+ "examine": "He's staring at the moon.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Yuri",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6028",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "He keeps calling me comrade.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Joseph",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6029",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "There's a set of brows that mean business.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Nikolai",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6030",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "This is one feral looking innkeeper.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Eduard",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6031",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "A tough looking villager.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Lev",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6032",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "A simple villager.",
"melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
"defence_animation": "425",
"death_animation": "836",
"name": "Georgy",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6033",
- "range_level": "1",
- "attack_level": "1"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "Seems a bit of a drama queen.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Svetlana",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6034",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "I bet she works out.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Irina",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6035",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "She doesn't say much.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Alexis",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6036",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "She looks like she can handle herself.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Milla",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6037",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "She seems light on her feet.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Galina",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6038",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "A wise villager.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Sofiya",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6039",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "Not exactly a warrior princess.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Ksenia",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6040",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "A well off villager.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Yadviga",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6041",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "The woman.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Nikita",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "She seems sure of herself.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Vera",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "A healthy villager.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Zoja",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6044",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
+ "examine": "She's looking for flowers.",
+ "melee_animation": "422",
+ "combat_audio": "511,513,512",
+ "attack_speed": "4",
+ "respawn_delay": "15",
+ "defence_animation": "425",
"death_animation": "836",
"name": "Liliya",
- "defence_level": "1",
+ "defence_level": "10",
"safespot": null,
"lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
+ "strength_level": "10",
"id": "6045",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
+ "bonuses": "0,0,0,0,0,-21,-21,-21,-21,-21,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
},
{
"melee_animation": "6559",
+ "combat_audio": "909,912,911",
"respawn_delay": "60",
"defence_animation": "6557",
"slayer_exp": "74",
@@ -51014,7 +52525,7 @@
"examine": "A vicious mountain wolf.",
"melee_animation": "6579",
"range_animation": "6579",
- "combat_audio": "481,491,490",
+ "combat_audio": "909,912,911",
"attack_speed": "6",
"defence_animation": "6578",
"slayer_exp": "34",
@@ -51069,7 +52580,6 @@
},
{
"examine": "A vicious desert wolf.",
- "slayer_task": "92",
"melee_animation": "6579",
"range_animation": "6579",
"attack_speed": "5",
@@ -51194,7 +52704,6 @@
},
{
"examine": "A one-eyed man eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
"attack_speed": "4",
@@ -51219,7 +52728,6 @@
},
{
"examine": "A one-eyed woman eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
"attack_speed": "4",
@@ -51244,7 +52752,6 @@
},
{
"examine": "A one-eyed man eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
"attack_speed": "4",
@@ -51269,7 +52776,6 @@
},
{
"examine": "A one-eyed woman eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
"attack_speed": "4",
@@ -51294,7 +52800,6 @@
},
{
"examine": "Overgrown undead vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -51314,7 +52819,6 @@
},
{
"examine": "Overgrown undead vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -51334,7 +52838,6 @@
},
{
"examine": "Overgrown undead vermin.",
- "slayer_task": "67",
"melee_animation": "4933",
"range_animation": "0",
"combat_audio": "703,705,704",
@@ -51478,7 +52981,6 @@
},
{
"examine": "Lesser, but still pretty big.",
- "slayer_task": "56",
"melee_animation": "4630",
"range_animation": "4630",
"combat_audio": "400,404,403",
@@ -51521,7 +53023,6 @@
},
{
"examine": "Probably not a chicken.",
- "slayer_task": "7",
"melee_animation": "6811",
"range_animation": "0",
"respawn_delay": "60",
@@ -51532,7 +53033,7 @@
"name": "Entrana firebird",
"defence_level": "1",
"safespot": null,
- "lifepoints": "1",
+ "lifepoints": "5",
"strength_level": "1",
"id": "6108",
"range_level": "1",
@@ -51540,7 +53041,6 @@
},
{
"examine": "These gnomes know how to get around!",
- "slayer_task": "7",
"melee_animation": "6790",
"range_animation": "0",
"respawn_delay": "60",
@@ -51589,7 +53089,6 @@
},
{
"examine": "Aww, cute.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -51623,9 +53122,9 @@
},
{
"examine": "A messy bird.",
- "slayer_task": "7",
"melee_animation": "3467",
"range_animation": "3467",
+ "combat_audio": "309,311,310",
"attack_speed": "5",
"defence_animation": "1014",
"weakness": "6",
@@ -51644,6 +53143,7 @@
"examine": "A messy bird.",
"melee_animation": "3467",
"range_animation": "3467",
+ "combat_audio": "309,311,310",
"attack_speed": "5",
"defence_animation": "1014",
"magic_animation": "3467",
@@ -52256,21 +53756,23 @@
"examine": "A dark-hearted knight.",
"melee_animation": "390",
"range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
+ "combat_audio": "2503,15,512",
+ "attack_speed": "5",
+ "respawn_delay": "25",
"defence_animation": "0",
"weakness": "8",
"magic_animation": "0",
"death_animation": "836",
"name": "Black Knight",
- "defence_level": "28",
+ "defence_level": "25",
"safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
+ "lifepoints": "42",
+ "strength_level": "25",
"id": "6189",
"aggressive": "true",
+ "bonuses": "18,18,18,0,0,73,76,70,-11,72,0,16,0,0,0",
"range_level": "1",
- "attack_level": "28"
+ "attack_level": "25"
},
{
"examine": "Primping with combs and hair clips.",
@@ -52331,13 +53833,13 @@
},
{
"examine": "A servant of the god Zamorak. ",
- "slayer_task": "40",
"melee_animation": "6945",
"attack_speed": "6",
"poisonous": "true",
- "respawn_delay": "120",
+ "respawn_delay": "150",
"weakness": "9",
"slayer_exp": "350",
+ "poison_amount": "16",
"magic_animation": "6945",
"death_animation": "6946",
"lifepoints": "255",
@@ -52360,7 +53862,6 @@
{
"agg_radius": "64",
"examine": "Destroyer of 1000 planes!",
- "slayer_task": "40",
"melee_animation": "6945",
"range_animation": "6945",
"attack_speed": "5",
@@ -52395,7 +53896,6 @@
},
{
"examine": "Scourge of light.",
- "slayer_task": "56",
"start_gfx": "1208",
"combat_style": "1",
"melee_animation": "7033",
@@ -52408,7 +53908,7 @@
"lifepoints": "150",
"id": "6206",
"aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,-5,0,0,0,0,0,0",
+ "bonuses": "0,0,0,0,20,0,0,0,-5,0,0,0,0,0,20",
"agg_radius": "64",
"range_animation": "7033",
"magic_level": "50",
@@ -52471,7 +53971,6 @@
},
{
"examine": "From the maws of hell.",
- "slayer_task": "43",
"melee_animation": "6579",
"range_animation": "6579",
"combat_audio": "3717,3719,3718",
@@ -52506,6 +54005,7 @@
"name": "Imp",
"defence_level": "4",
"safespot": null,
+ "movement_radius": "25",
"lifepoints": "10",
"strength_level": "4",
"id": "6211",
@@ -52516,7 +54016,6 @@
},
{
"examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
"melee_animation": "6536",
"range_animation": "6536",
"respawn_delay": "25",
@@ -52538,7 +54037,6 @@
},
{
"examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
"melee_animation": "6536",
"range_animation": "6536",
"respawn_delay": "25",
@@ -52602,7 +54100,6 @@
},
{
"examine": "A small fire demon.",
- "slayer_task": "66",
"melee_animation": "1582",
"range_animation": "1582",
"combat_audio": "696,698,697",
@@ -52627,6 +54124,7 @@
"examine": "A small ice demon.",
"melee_animation": "8080",
"range_animation": "8080",
+ "combat_audio": "531,533,532",
"respawn_delay": "25",
"defence_animation": "8079",
"magic_animation": "8080",
@@ -52644,7 +54142,6 @@
},
{
"examine": "Those horns look pretty sharp...",
- "slayer_task": "39",
"melee_animation": "4300",
"range_animation": "4300",
"respawn_delay": "25",
@@ -52666,7 +54163,6 @@
},
{
"examine": "Warrior of Zamorak.",
- "slayer_task": "79",
"melee_animation": "390",
"range_animation": "390",
"attack_speed": "5",
@@ -52689,7 +54185,6 @@
},
{
"examine": "A ranger spirit dedicated to Zamorak.",
- "slayer_task": "78",
"start_gfx": "18",
"combat_style": "1",
"start_height": "96",
@@ -52715,7 +54210,6 @@
},
{
"examine": "A deadly servant of Zamorak.",
- "slayer_task": "77",
"combat_style": "2",
"melee_animation": "811",
"attack_speed": "5",
@@ -52748,7 +54242,7 @@
"range_animation": "6977",
"attack_speed": "3",
"magic_level": "200",
- "respawn_delay": "120",
+ "respawn_delay": "150",
"defence_animation": "6974",
"weakness": "10",
"slayer_exp": "357",
@@ -52788,7 +54282,7 @@
"defence_animation": "6955",
"name": "Wingman Skree",
"defence_level": "160",
- "poison_immune": "true",
+ "poison_immune": "false",
"safespot": null,
"strength_level": "50",
"range_level": "100",
@@ -52827,7 +54321,7 @@
"defence_animation": "6955",
"name": "Flockleader Geerin",
"defence_level": "175",
- "poison_immune": "true",
+ "poison_immune": "false",
"safespot": null,
"strength_level": "80",
"range_level": "150",
@@ -52882,7 +54376,6 @@
},
{
"examine": "A servant of Armadyl.",
- "slayer_task": "79",
"combat_style": "1",
"melee_animation": "6954",
"range_animation": "6954",
@@ -52905,7 +54398,6 @@
},
{
"examine": "Armadyl's favourite servant.",
- "slayer_task": "78",
"combat_style": "1",
"melee_animation": "6953",
"range_animation": "6953",
@@ -52930,29 +54422,28 @@
},
{
"examine": "A mage who serves Armadyl above all else - even death.",
- "slayer_task": "77",
"combat_style": "2",
"melee_animation": "6952",
+ "range_animation": "6952",
"attack_speed": "5",
+ "magic_level": "150",
"respawn_delay": "25",
+ "defence_animation": "6955",
"weakness": "4",
"magic_animation": "6952",
"death_animation": "6956",
- "lifepoints": "75",
- "id": "6231",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,9,12,5,45,28,0,0,0,0,0",
- "prj_height": "92",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
"name": "Spiritual mage",
"defence_level": "111",
"safespot": null,
+ "lifepoints": "75",
"strength_level": "1",
+ "id": "6231",
+ "aggressive": "true",
+ "bonuses": "0,0,0,0,0,9,12,5,45,28,0,0,0,0,0",
"clue_level": "2",
"range_level": "1",
"projectile": "1199",
+ "prj_height": "92",
"attack_level": "1"
},
{
@@ -53307,7 +54798,7 @@
"range_animation": "6964",
"attack_speed": "2",
"magic_level": "300",
- "respawn_delay": "120",
+ "respawn_delay": "150",
"defence_animation": "6966",
"weakness": "7",
"slayer_exp": "360",
@@ -53332,6 +54823,7 @@
"melee_animation": "6376",
"range_animation": "6376",
"combat_audio": "3829,3866,3849",
+ "attack_speed": "5",
"magic_level": "125",
"respawn_delay": "50",
"defence_animation": "6375",
@@ -53341,7 +54833,7 @@
"death_animation": "6377",
"name": "Starlight",
"defence_level": "120",
- "poison_immune": "true",
+ "poison_immune": "false",
"safespot": null,
"lifepoints": "160",
"strength_level": "125",
@@ -53467,7 +54959,6 @@
},
{
"examine": "Warrior of Saradomin.",
- "slayer_task": "79",
"melee_animation": "390",
"range_animation": "390",
"attack_speed": "5",
@@ -53490,7 +54981,6 @@
},
{
"examine": "A ranger spirit dedicated to Saradomin.",
- "slayer_task": "78",
"start_gfx": "18",
"combat_style": "1",
"start_height": "96",
@@ -53516,7 +55006,6 @@
},
{
"examine": "Saradomin's holy mage.",
- "slayer_task": "77",
"combat_style": "2",
"melee_animation": "811",
"attack_speed": "5",
@@ -53589,7 +55078,7 @@
"range_animation": "7060",
"attack_speed": "6",
"magic_level": "280",
- "respawn_delay": "120",
+ "respawn_delay": "150",
"defence_animation": "7061",
"weakness": "10",
"slayer_exp": "0",
@@ -53611,7 +55100,6 @@
{
"agg_radius": "64",
"examine": "A battle-honed goblin. ",
- "slayer_task": "38",
"melee_animation": "6154",
"range_animation": "6154",
"attack_speed": "5",
@@ -53644,28 +55132,27 @@
"attack_level": "1"
},
{
+ "agg_radius": "64",
"examine": "A battle-honed goblin. ",
- "slayer_task": "38",
"start_gfx": "1202",
"combat_style": "2",
"melee_animation": "6154",
+ "range_animation": "6154",
"attack_speed": "5",
+ "magic_level": "150",
"respawn_delay": "50",
+ "defence_animation": "6155",
"weakness": "3",
"magic_animation": "6154",
"death_animation": "6156",
- "lifepoints": "127",
- "id": "6263",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,6,0,0,0",
- "agg_radius": "64",
- "range_animation": "6154",
- "magic_level": "150",
- "defence_animation": "6155",
"name": "Sergeant Steelwill",
"defence_level": "150",
"safespot": null,
+ "lifepoints": "127",
"strength_level": "50",
+ "id": "6263",
+ "aggressive": "true",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,6,0,0,0",
"range_level": "1",
"projectile": "1203",
"attack_level": "80"
@@ -53684,7 +55171,6 @@
{
"agg_radius": "64",
"examine": "A battle-honed goblin. ",
- "slayer_task": "38",
"combat_style": "1",
"melee_animation": "6154",
"range_animation": "6154",
@@ -53702,7 +55188,7 @@
"strength_level": "80",
"id": "6265",
"aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,0,0,0,0,0,0,0",
+ "bonuses": "0,0,0,0,20,0,0,0,0,0,0,0,0,0,20",
"range_level": "150",
"projectile": "1206",
"attack_level": "80"
@@ -53763,7 +55249,6 @@
},
{
"examine": "A one-eyed man-eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
"attack_speed": "4",
@@ -53788,7 +55273,6 @@
},
{
"examine": "A one-eyed man-eater.",
- "slayer_task": "44",
"melee_animation": "4652",
"range_animation": "0",
"attack_speed": "4",
@@ -53890,7 +55374,6 @@
},
{
"examine": "An ugly, smelly creature.",
- "slayer_task": "45",
"melee_animation": "164",
"range_animation": "164",
"combat_audio": "469,472,471",
@@ -53912,7 +55395,6 @@
},
{
"examine": "The spirit of a ranger, serving bandos beyond death.",
- "slayer_task": "78",
"start_gfx": "95",
"combat_style": "1",
"melee_animation": "4320",
@@ -53937,7 +55419,6 @@
},
{
"examine": "A true servant of Bandos.",
- "slayer_task": "79",
"melee_animation": "4320",
"range_animation": "4320",
"respawn_delay": "25",
@@ -53959,7 +55440,6 @@
},
{
"examine": "One of Bandos' chosen.",
- "slayer_task": "77",
"combat_style": "2",
"melee_animation": "4320",
"range_animation": "4320",
@@ -54090,7 +55570,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54113,7 +55592,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54136,7 +55614,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54159,7 +55636,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54182,7 +55658,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54222,7 +55697,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54245,7 +55719,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54285,7 +55758,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54308,7 +55780,6 @@
},
{
"examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
"combat_style": "1",
"melee_animation": "7108",
"range_animation": "0",
@@ -54331,7 +55802,6 @@
},
{
"examine": "You don't think you can harm this creature.",
- "slayer_task": "89",
"melee_animation": "7093",
"range_animation": "0",
"attack_speed": "5",
@@ -54367,7 +55837,6 @@
},
{
"examine": "Annoyingly easy to squish.",
- "slayer_task": "73",
"melee_animation": "0",
"range_animation": "0",
"magic_level": "2",
@@ -55143,7 +56612,6 @@
},
{
"examine": "I wouldn't want to be footing that bill.",
- "slayer_task": "7",
"melee_animation": "6775",
"range_animation": "0",
"attack_speed": "5",
@@ -55220,7 +56688,6 @@
},
{
"examine": "Polynomial - a parrot that goes without breakfast",
- "slayer_task": "7",
"melee_animation": "6775",
"range_animation": "0",
"attack_speed": "5",
@@ -56103,7 +57570,6 @@
},
{
"examine": "A goblin high priest",
- "slayer_task": "75",
"melee_animation": "7317",
"range_animation": "0",
"respawn_delay": "60",
@@ -56123,7 +57589,6 @@
},
{
"examine": "A goblin high priest",
- "slayer_task": "75",
"melee_animation": "7317",
"range_animation": "0",
"respawn_delay": "60",
@@ -56143,7 +57608,6 @@
},
{
"examine": "A goblin high priest",
- "slayer_task": "75",
"melee_animation": "7317",
"range_animation": "0",
"magic_level": "22",
@@ -56163,7 +57627,6 @@
},
{
"examine": "A goblin high priest",
- "slayer_task": "75",
"melee_animation": "7317",
"range_animation": "0",
"magic_level": "26",
@@ -56183,7 +57646,6 @@
},
{
"examine": "A goblin high priest",
- "slayer_task": "75",
"melee_animation": "7317",
"range_animation": "0",
"magic_level": "26",
@@ -59346,22 +60808,30 @@
"attack_level": "1"
},
{
+ "examine": "A snowman in fake dragon armour.",
+ "combat_audio": "29,3295,3287",
+ "melee_animation": "7558",
+ "defence_animation": "7559",
+ "death_animation": "7560",
"name": "Dragon snowman",
"defence_level": "1",
"safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
+ "lifepoints": "20",
"strength_level": "1",
"id": "6743",
"range_level": "1",
"attack_level": "1"
},
{
+ "examine": "Arr!",
+ "combat_audio": "29,3295,3287",
+ "melee_animation": "7558",
+ "defence_animation": "7559",
+ "death_animation": "7560",
"name": "Pirate snowman",
"defence_level": "1",
"safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
+ "lifepoints": "20",
"strength_level": "1",
"id": "6745",
"range_level": "1",
@@ -59403,7 +60873,6 @@
},
{
"examine": "Cut-down and dried.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "5",
@@ -59423,7 +60892,6 @@
},
{
"examine": "Needs moisturising.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "5",
@@ -59443,7 +60911,6 @@
},
{
"examine": "I bet it's parched.",
- "slayer_task": "93",
"melee_animation": "5568",
"range_animation": "0",
"attack_speed": "5",
@@ -59479,7 +60946,6 @@
},
{
"examine": "A huge beast of a beetle.",
- "slayer_task": "70",
"melee_animation": "7596",
"range_animation": "0",
"defence_animation": "0",
@@ -59515,7 +60981,6 @@
},
{
"examine": "Bred to shoot you down.",
- "slayer_task": "70",
"start_gfx": "18",
"combat_style": "1",
"melee_animation": "7607",
@@ -59538,7 +61003,6 @@
},
{
"examine": "It might be angry...it's hard to tell.",
- "slayer_task": "70",
"melee_animation": "7612",
"range_animation": "0",
"respawn_delay": "60",
@@ -59577,7 +61041,6 @@
},
{
"examine": "Bouncy",
- "slayer_task": "70",
"melee_animation": "7584",
"range_animation": "0",
"respawn_delay": "60",
@@ -59597,7 +61060,6 @@
},
{
"examine": "He'll have someone's eye out with that.",
- "slayer_task": "70",
"start_gfx": "18",
"combat_style": "1",
"melee_animation": "5451",
@@ -59638,7 +61100,6 @@
},
{
"examine": "Part scarab, part man.",
- "slayer_task": "70",
"combat_style": "2",
"melee_animation": "7615",
"range_animation": "0",
@@ -59741,7 +61202,6 @@
},
{
"examine": "He exudes something like holiness.",
- "slayer_task": "70",
"melee_animation": "7612",
"range_animation": "0",
"magic_level": "66",
@@ -59760,7 +61220,6 @@
},
{
"examine": "He exudes something like holiness.",
- "slayer_task": "70",
"melee_animation": "7607",
"range_animation": "7607",
"magic_level": "66",
@@ -59780,17 +61239,21 @@
{
"examine": "A bird. Literally terrifying.",
"melee_animation": "1010",
+ "range_animation": "0",
+ "magic_level": "50",
"respawn_delay": "0",
- "defence_animation": "1011",
- "death_animation": "1012",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "1013",
"name": "Spirit terrorbird",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
"lifepoints": "74",
- "strength_level": "1",
+ "strength_level": "50",
"id": "6794",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "50",
+ "attack_level": "50"
},
{
"examine": "A bird. Literally terrifying.",
@@ -59853,18 +61316,23 @@
"attack_level": "18"
},
{
+ "examine": "Wax on",
+ "melee_animation": "8069",
+ "range_animation": "0",
+ "magic_level": "60",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8065",
"name": "Praying mantis",
- "defence_level": "1",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "8064",
- "strength_level": "1",
+ "lifepoints": "107",
+ "strength_level": "60",
"id": "6798",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8066"
+ "range_level": "60",
+ "attack_level": "60"
},
{
"examine": "Wax on",
@@ -59886,18 +61354,23 @@
"attack_level": "60"
},
{
+ "examine": "He ent such a bad guy.",
+ "melee_animation": "7853",
+ "range_animation": "0",
+ "magic_level": "60",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7854",
"name": "Giant ent",
- "defence_level": "1",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7853",
- "strength_level": "1",
+ "lifepoints": "111",
+ "strength_level": "60",
"id": "6800",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7852"
+ "range_level": "60",
+ "attack_level": "60"
},
{
"examine": "He ent such a bad guy.",
@@ -59919,18 +61392,23 @@
"attack_level": "60"
},
{
+ "examine": "Serpentine.",
+ "melee_animation": "8152",
+ "range_animation": "0",
+ "magic_level": "55",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8153",
"name": "Spirit cobra",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "8152",
- "strength_level": "1",
+ "lifepoints": "90",
+ "strength_level": "55",
"id": "6802",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8154"
+ "range_level": "55",
+ "attack_level": "55"
},
{
"examine": "Serpentine.",
@@ -59952,18 +61430,23 @@
"attack_level": "55"
},
{
+ "examine": "Face the thing that should not be!",
+ "melee_animation": "7786",
+ "range_animation": "0",
+ "magic_level": "65",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7780",
"name": "Spirit dagannoth",
- "defence_level": "1",
+ "defence_level": "65",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7786",
- "strength_level": "1",
+ "lifepoints": "115",
+ "strength_level": "65",
"id": "6804",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7785"
+ "range_level": "65",
+ "attack_level": "65"
},
{
"examine": "Face the thing that should not be!",
@@ -60034,19 +61517,24 @@
"attack_level": "19"
},
{
+ "examine": "Kneel before squid!",
"combat_style": "2",
- "melee_animation": "7970",
+ "melee_animation": "7963",
+ "range_animation": "0",
+ "magic_level": "50",
"respawn_delay": "0",
- "defence_animation": "7967",
- "death_animation": "7979",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "7964",
"name": "Karamthulhu overlord",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "82",
+ "strength_level": "50",
"id": "6809",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "50",
+ "attack_level": "50"
},
{
"examine": "Kneel before squid!",
@@ -60127,23 +61615,28 @@
"defence_animation": "7742"
},
{
- "combat_style": "1",
+ "examine": "Definitely not teenaged",
+ "combat_style": "0",
"melee_animation": "8286",
+ "range_animation": "0",
+ "magic_level": "55",
"respawn_delay": "0",
- "defence_animation": "8287",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8285",
"name": "War tortoise",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "348",
- "strength_level": "1",
+ "lifepoints": "95",
+ "strength_level": "55",
"id": "6815",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "55",
+ "attack_level": "55"
},
{
"examine": "Definitely not teenaged",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "8286",
"range_animation": "0",
"magic_level": "55",
@@ -60173,19 +61666,24 @@
"attack_level": "1"
},
{
+ "examine": "It's an extra-planar little blood hoover.",
"combat_style": "2",
- "melee_animation": "7675",
+ "melee_animation": "8910",
+ "range_animation": "0",
+ "magic_level": "50",
"respawn_delay": "0",
- "defence_animation": "7670",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7671",
"name": "Abyssal parasite",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "77",
+ "strength_level": "50",
"id": "6818",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "50",
+ "attack_level": "50"
},
{
"examine": "It's an extra-planar little blood hoover.",
@@ -60208,18 +61706,23 @@
"attack_level": "50"
},
{
+ "examine": "Lurking like only a lurker can.",
+ "melee_animation": "7680",
+ "range_animation": "0",
+ "magic_level": "55",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7684",
"name": "Abyssal lurker",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7680",
- "strength_level": "1",
+ "lifepoints": "88",
+ "strength_level": "55",
"id": "6820",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7681"
+ "range_level": "55",
+ "attack_level": "55"
},
{
"examine": "Lurking like only a lurker can.",
@@ -60244,7 +61747,7 @@
"examine": "The pointiest horse on the planet.",
"melee_animation": "6376",
"range_animation": "6376",
- "combat_audio": "496,498,497",
+ "combat_audio": "4135,4196,4195",
"magic_level": "69",
"defence_animation": "6375",
"magic_animation": "6376",
@@ -60264,7 +61767,7 @@
"examine": "The pointiest horse on the planet.",
"melee_animation": "6376",
"range_animation": "6376",
- "combat_audio": "496,498,497",
+ "combat_audio": "4135,4196,4195",
"magic_level": "69",
"defence_animation": "6375",
"weakness": "10",
@@ -60346,19 +61849,24 @@
"attack_level": "17"
},
{
- "examine": "It's mean and green.",
+ "examine": "It's mean and green!",
"melee_animation": "8208",
+ "range_animation": "0",
+ "attack_speed": "5",
+ "magic_level": "55",
"respawn_delay": "0",
- "defence_animation": "8205",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8209",
"name": "Stranger plant",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "91",
+ "strength_level": "55",
"id": "6827",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "55",
+ "attack_level": "55"
},
{
"examine": "It's mean and green!",
@@ -60420,18 +61928,24 @@
"attack_level": "16"
},
{
+ "examine": "Surprisingly slime-free.",
+ "combat_style": "1",
+ "melee_animation": "7795",
+ "range_animation": "0",
+ "magic_level": "18",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7797",
"name": "Desert wyrm",
- "defence_level": "1",
+ "defence_level": "18",
"safespot": null,
- "lifepoints": "47",
- "melee_animation": "7795",
- "strength_level": "1",
+ "lifepoints": "25",
+ "strength_level": "18",
"id": "6831",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7796"
+ "range_level": "18",
+ "attack_level": "18"
},
{
"examine": "Surprisingly slime-free.",
@@ -60455,6 +61969,26 @@
},
{
"examine": "If you think he's evil",
+ "combat_style": "1",
+ "melee_animation": "8248",
+ "range_animation": "0",
+ "magic_level": "42",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8250",
+ "name": "Evil turnip",
+ "defence_level": "42",
+ "safespot": null,
+ "lifepoints": "60",
+ "strength_level": "42",
+ "id": "6833",
+ "range_level": "42",
+ "attack_level": "42"
+ },
+ {
+ "examine": "If you think he's evil",
+ "combat_style": "1",
"melee_animation": "8248",
"range_animation": "0",
"magic_level": "42",
@@ -60472,18 +62006,23 @@
"attack_level": "42"
},
{
+ "examine": "It vants to suck my blood!",
+ "melee_animation": "8275",
+ "range_animation": "0",
+ "magic_level": "31",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8276",
"name": "Vampire bat",
- "defence_level": "1",
+ "defence_level": "31",
"safespot": null,
- "lifepoints": "20",
- "melee_animation": "8275",
- "strength_level": "1",
+ "lifepoints": "44",
+ "strength_level": "31",
"id": "6835",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8274"
+ "range_level": "31",
+ "attack_level": "31"
},
{
"examine": "It vants to suck my blood!",
@@ -60505,19 +62044,24 @@
"attack_level": "31"
},
{
+ "examine": "Salt and vinegaroon.",
"melee_animation": "6254",
+ "range_animation": "0",
"combat_audio": "3611,3612,3610",
+ "magic_level": "19",
"respawn_delay": "0",
- "defence_animation": "6255",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "6256",
"name": "Spirit scorpion",
- "defence_level": "1",
+ "defence_level": "19",
"safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
+ "lifepoints": "27",
+ "strength_level": "19",
"id": "6837",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "19",
+ "attack_level": "19"
},
{
"examine": "Salt and vinegaroon.",
@@ -60574,6 +62118,7 @@
"lifepoints": "101",
"strength_level": "60",
"id": "6840",
+ "bonuses": "90,50,50,60,90,80,50,30,40,100,0,0,0,0,0",
"range_level": "60",
"attack_level": "60"
},
@@ -60619,18 +62164,23 @@
"attack_level": "17"
},
{
+ "examine": "It's like a little suction pump with eyes.",
+ "melee_animation": "7657",
+ "range_animation": "0",
+ "magic_level": "49",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7656",
"name": "Bloated leech",
- "defence_level": "1",
+ "defence_level": "49",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7657",
- "strength_level": "1",
+ "lifepoints": "70",
+ "strength_level": "49",
"id": "6843",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7655"
+ "range_level": "49",
+ "attack_level": "49"
},
{
"examine": "It's like a little suction pump with eyes.",
@@ -60652,18 +62202,23 @@
"attack_level": "49"
},
{
+ "examine": "Violent little so-and-so.",
+ "melee_animation": "7928",
+ "range_animation": "0",
+ "magic_level": "32",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7925",
"name": "Honey badger",
- "defence_level": "1",
+ "defence_level": "32",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7928",
- "strength_level": "1",
+ "lifepoints": "45",
+ "strength_level": "32",
"id": "6845",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7927"
+ "range_level": "32",
+ "attack_level": "32"
},
{
"examine": "Violent little so-and-so.",
@@ -60749,6 +62304,7 @@
"lifepoints": "105",
"strength_level": "60",
"id": "6850",
+ "bonuses": "93,90,65,90,30,40,50,50,60,40,0,0,0,0,0",
"range_level": "60",
"attack_level": "60"
},
@@ -60778,60 +62334,65 @@
},
{
"examine": "He's just a big bully.",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "8024",
- "magic_level": "31",
+ "magic_level": "1",
"respawn_delay": "0",
"defence_animation": "8023",
"death_animation": "8025",
"name": "Bronze minotaur",
- "defence_level": "31",
+ "defence_level": "19",
"safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
+ "lifepoints": "133",
+ "strength_level": "19",
"id": "6853",
- "bonuses": "15,20,10,15,10,5,35,0,0,0,0,0,0,0,0",
- "range_level": "31",
- "attack_level": "31"
+ "bonuses": "-2,6,3,0,0,15,14,9,-6,14,5,90,0,0,0",
+ "range_level": "1",
+ "attack_level": "19"
},
{
"examine": "He's just a big bully.",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "8024",
"range_animation": "0",
- "magic_level": "15",
+ "magic_level": "1",
"respawn_delay": "0",
"defence_animation": "0",
"weakness": "10",
"magic_animation": "0",
"death_animation": "8025",
"name": "Bronze minotaur",
- "defence_level": "15",
+ "defence_level": "19",
"safespot": null,
- "lifepoints": "51",
- "strength_level": "15",
+ "lifepoints": "133",
+ "strength_level": "19",
"id": "6854",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "6855",
+ "bonuses": "15,20,10,15,10,15,15,15,0,0,0,90,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "19"
},
{
"examine": "He's just a big bully.",
- "combat_style": "1",
+ "combat_style": "0",
+ "melee_animation": "8024",
+ "magic_level": "25",
+ "respawn_delay": "0",
+ "defence_animation": "8023",
+ "magic_animation": "",
+ "death_animation": "8025",
+ "name": "Iron minotaur",
+ "defence_level": "25",
+ "safespot": null,
+ "lifepoints": "193",
+ "strength_level": "25",
+ "id": "6855",
+ "bonuses": "-2,8,5,0,0,21,17,9,-6,20,5,100,0,100,0",
+ "range_level": "1",
+ "attack_level": "25"
+ },
+ {
+ "examine": "He's just a big bully.",
+ "combat_style": "0",
"melee_animation": "8024",
"range_animation": "0",
"magic_level": "25",
@@ -60843,32 +62404,116 @@
"name": "Iron minotaur",
"defence_level": "25",
"safespot": null,
- "lifepoints": "65",
+ "lifepoints": "193",
"strength_level": "25",
"id": "6856",
- "range_level": "25",
+ "bonuses": "25,25,25,25,0,25,25,25,25,0,0,100,0,100,0",
+ "clue_level": "",
+ "range_level": "1",
"attack_level": "25"
},
{
"examine": "He's just a big bully!",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "8024",
+ "magic_level": "28",
"respawn_delay": "0",
"defence_animation": "8023",
"death_animation": "8025",
"name": "Steel minotaur",
- "defence_level": "70",
+ "defence_level": "28",
"safespot": null,
- "lifepoints": "44",
- "strength_level": "30",
+ "lifepoints": "260",
+ "strength_level": "28",
"id": "6857",
- "bonuses": "40,30,30,30,30,50,30,60,60,60,20,80,40,20,0",
+ "bonuses": "-2,16,11,0,0,32,31,24,-6,31,5,122,0,122,0",
"range_level": "1",
- "attack_level": "70"
+ "attack_level": "28"
},
{
"examine": "He's just a big bully.",
- "combat_style": "1",
+ "combat_style": "0",
+ "melee_animation": "8024",
+ "range_animation": "0",
+ "magic_level": "28",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8025",
+ "name": "Steel minotaur",
+ "defence_level": "28",
+ "safespot": null,
+ "lifepoints": "260",
+ "strength_level": "28",
+ "id": "6858",
+ "bonuses": "40,30,30,30,30,30,30,30,30,30,0,127,0,0,0",
+ "range_level": "1",
+ "attack_level": "28"
+ },
+ {
+ "examine": "He's just a big bully",
+ "combat_style": "0",
+ "melee_animation": "8024",
+ "magic_level": "30",
+ "respawn_delay": "0",
+ "defence_animation": "8023",
+ "death_animation": "8025",
+ "name": "Mithril minotaur",
+ "defence_level": "30",
+ "safespot": null,
+ "lifepoints": "340",
+ "can_tolerate": "",
+ "strength_level": "30",
+ "id": "6859",
+ "bonuses": "-2,22,17,0,0,46,44,38,-6,44,20,146,0,147,0",
+ "range_level": "0",
+ "attack_level": "30"
+ },
+ {
+ "examine": "He's just a big bully.",
+ "combat_style": "0",
+ "melee_animation": "8024",
+ "range_animation": "0",
+ "magic_level": "30",
+ "respawn_delay": "0",
+ "defence_animation": "8023",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8025",
+ "name": "Mithril minotaur",
+ "defence_level": "30",
+ "safespot": null,
+ "lifepoints": "340",
+ "strength_level": "30",
+ "id": "6860",
+ "bonuses": "30,30,30,30,0,30,30,30,30,0,30,146,0,147,0",
+ "range_level": "0",
+ "attack_level": "30"
+ },
+ {
+ "examine": "He's just a big bully.",
+ "combat_style": "0",
+ "melee_animation": "8024",
+ "attack_speed": "",
+ "magic_level": "35",
+ "respawn_delay": "0",
+ "defence_animation": "8023",
+ "death_animation": "8025",
+ "name": "Adamant minotaur",
+ "defence_level": "35",
+ "safespot": null,
+ "poison_immune": "",
+ "lifepoints": "441",
+ "strength_level": "35",
+ "id": "6861",
+ "bonuses": "-2,31,26,-3,-17,65,63,55,-6,63,30,146,0,181,0",
+ "range_level": "1",
+ "attack_level": "35"
+ },
+ {
+ "examine": "He's just a big bully.",
+ "combat_style": "0",
"melee_animation": "8024",
"range_animation": "0",
"magic_level": "35",
@@ -60877,139 +62522,69 @@
"weakness": "10",
"magic_animation": "0",
"death_animation": "8025",
- "name": "Steel minotaur",
+ "name": "Adamant minotaur",
"defence_level": "35",
"safespot": null,
- "lifepoints": "80",
+ "lifepoints": "441",
"strength_level": "35",
- "id": "6858",
- "range_level": "35",
+ "id": "6862",
+ "bonuses": "40,50,40,45,35,20,50,36,30,40,15,180,30,10,0",
+ "range_level": "1",
"attack_level": "35"
},
{
- "examine": "He's just a big bully",
- "combat_style": "1",
+ "examine": "He's just a big bully.",
"melee_animation": "8024",
"magic_level": "40",
"respawn_delay": "0",
"defence_animation": "8023",
"death_animation": "8025",
- "name": "Mithril minotaur",
+ "name": "Rune minotaur",
"defence_level": "40",
"safespot": null,
- "lifepoints": "37",
+ "lifepoints": "570",
"strength_level": "40",
- "id": "6859",
- "bonuses": "56,35,30,30,30,40,10,12,30,40,30,35,40,0,0",
- "range_level": "40",
+ "id": "6863",
+ "bonuses": "-2,48,43,0,-1,207,209,192,-12,205,102,157,0,195,0",
+ "range_level": "1",
"attack_level": "40"
},
{
"examine": "He's just a big bully.",
- "combat_style": "1",
"melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "45",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "45",
- "id": "6860",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "1",
- "id": "6861",
- "bonuses": "40,50,40,45,35,20,50,36,30,40,15,18,30,10,0",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "55",
- "id": "6862",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6863",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
+ "magic_level": "40",
"respawn_delay": "0",
"defence_animation": "8023",
"slayer_exp": "0",
"death_animation": "8025",
"name": "Rune minotaur",
- "defence_level": "65",
+ "defence_level": "40",
"safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
+ "lifepoints": "570",
+ "strength_level": "40",
"id": "6864",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
+ "bonuses": "50,40,40,56,40,30,50,30,60,30,40,219,50,40,40",
+ "range_level": "1",
+ "attack_level": "40"
},
{
+ "examine": "Well",
+ "melee_animation": "7816",
+ "range_animation": "0",
+ "magic_level": "55",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7818",
"name": "Smoke devil",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7816",
- "strength_level": "1",
+ "lifepoints": "87",
+ "strength_level": "55",
"id": "6865",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7817"
+ "range_level": "55",
+ "attack_level": "55"
},
{
"examine": "Well",
@@ -61031,18 +62606,23 @@
"attack_level": "55"
},
{
+ "examine": "Putting all three of its best feet forward.",
+ "melee_animation": "7896",
+ "range_animation": "0",
+ "magic_level": "40",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7897",
"name": "Bull ant",
- "defence_level": "1",
+ "defence_level": "40",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7896",
- "strength_level": "1",
+ "lifepoints": "57",
+ "strength_level": "40",
"id": "6867",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7900"
+ "range_level": "40",
+ "attack_level": "40"
},
{
"examine": "Putting all three of its best feet forward.",
@@ -61106,19 +62686,24 @@
"attack_level": "1"
},
{
- "melee_animation": "853",
+ "examine": "I suppose it could smell worse",
+ "melee_animation": "7769",
+ "range_animation": "0",
"attack_speed": "5",
+ "magic_level": "28",
"respawn_delay": "0",
- "defence_animation": "851",
- "death_animation": "852",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "7770",
"name": "Compost mound",
- "defence_level": "1",
+ "defence_level": "28",
"safespot": null,
- "lifepoints": "96",
- "strength_level": "1",
+ "lifepoints": "40",
+ "strength_level": "28",
"id": "6871",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "28",
+ "attack_level": "28"
},
{
"examine": "I suppose it could smell worse",
@@ -61182,21 +62767,26 @@
"attack_level": "112"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit cockatrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6875",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61221,21 +62811,26 @@
"attack_level": "43"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit guthatrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6877",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61260,22 +62855,27 @@
"attack_level": "43"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
"combat_audio": "703,705,704",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit saratrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6879",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61301,21 +62901,26 @@
"attack_level": "43"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit zamatrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6881",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61340,21 +62945,26 @@
"attack_level": "43"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit pengatrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6883",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61379,21 +62989,26 @@
"attack_level": "43"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit coraxatrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6885",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61418,21 +63033,26 @@
"attack_level": "43"
},
{
+ "examine": "If looks could kill... Wait",
"start_gfx": "1467",
"combat_style": "2",
"melee_animation": "7762",
+ "range_animation": "0",
+ "magic_level": "43",
"respawn_delay": "0",
- "defence_animation": "7761",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7763",
"name": "Spirit vulatrice",
- "defence_level": "1",
+ "defence_level": "43",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "61",
+ "strength_level": "43",
"id": "6887",
- "range_level": "1",
+ "range_level": "43",
"projectile": "1468",
- "attack_level": "1"
+ "attack_level": "43"
},
{
"examine": "If looks could kill... Wait",
@@ -61457,20 +63077,23 @@
"attack_level": "43"
},
{
- "examine": "The only creature with a mouth big enough to hold a cannonball.",
+ "examine": "The only creature with a mouth big enough to fit a cannon ball into.",
"melee_animation": "7260",
+ "range_animation": "0",
"magic_level": "55",
"respawn_delay": "0",
- "defence_animation": "7257",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7256",
"name": "Barker toad",
- "defence_level": "1",
+ "defence_level": "55",
"safespot": null,
- "lifepoints": "10",
+ "lifepoints": "94",
"strength_level": "55",
"id": "6889",
"range_level": "55",
- "attack_level": "1"
+ "attack_level": "55"
},
{
"examine": "The only creature with a mouth big enough to fit a cannon ball into.",
@@ -61734,6 +63357,7 @@
"combat_style": "2",
"melee_animation": "8304",
"attack_speed": "5",
+ "magic_level": "28",
"respawn_delay": "0",
"defence_animation": "8306",
"death_animation": "8305",
@@ -62082,21 +63706,26 @@
"attack_level": "28"
},
{
+ "examine": "On Gielinor",
+ "melee_animation": "8569",
+ "range_animation": "0",
+ "magic_level": "50",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8570",
"name": "Spirit jelly",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "8569",
- "strength_level": "1",
+ "lifepoints": "78",
+ "strength_level": "50",
"id": "6992",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8571"
+ "range_level": "50",
+ "attack_level": "50"
},
{
- "examine": "On Runescape",
+ "examine": "On Gielinor",
"melee_animation": "8569",
"range_animation": "0",
"magic_level": "50",
@@ -62115,19 +63744,24 @@
"attack_level": "50"
},
{
+ "examine": "Hail to the Queen",
"combat_style": "1",
- "melee_animation": "8519",
+ "melee_animation": "6223",
+ "range_animation": "0",
+ "magic_level": "25",
"respawn_delay": "0",
- "defence_animation": "8518",
- "death_animation": "8517",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "6228",
"name": "Spirit kalphite",
- "defence_level": "1",
+ "defence_level": "25",
"safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
+ "lifepoints": "35",
+ "strength_level": "25",
"id": "6994",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "25",
+ "attack_level": "25"
},
{
"examine": "Hail to the Queen",
@@ -62209,7 +63843,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -62233,7 +63866,6 @@
},
{
"examine": "A very large elemental adversary.",
- "slayer_task": "33",
"melee_animation": "4666",
"range_animation": "4666",
"combat_audio": "447,451,450",
@@ -62257,7 +63889,6 @@
},
{
"examine": "Must be the pack leader.",
- "slayer_task": "92",
"melee_animation": "6559",
"range_animation": "0",
"respawn_delay": "60",
@@ -62391,7 +64022,6 @@
},
{
"examine": "An ogre snack with wings.",
- "slayer_task": "7",
"melee_animation": "0",
"range_animation": "0",
"defence_animation": "0",
@@ -62458,7 +64088,6 @@
},
{
"examine": "A fearsome adversary with no sense of humour.",
- "slayer_task": "64",
"melee_animation": "8636",
"range_animation": "0",
"respawn_delay": "60",
@@ -62478,7 +64107,6 @@
},
{
"examine": "Irascible, belligerent and stupefyingly impolite.",
- "slayer_task": "64",
"melee_animation": "8636",
"range_animation": "0",
"respawn_delay": "60",
@@ -62498,7 +64126,6 @@
},
{
"examine": "Irascible, beliggerent and stupefyingly impolite.",
- "slayer_task": "64",
"melee_animation": "8637",
"range_animation": "0",
"respawn_delay": "60",
@@ -62518,7 +64145,6 @@
},
{
"examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
"melee_animation": "8636",
"range_animation": "0",
"attack_speed": "5",
@@ -62539,7 +64165,6 @@
},
{
"examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
"melee_animation": "8637",
"range_animation": "0",
"attack_speed": "5",
@@ -62872,6 +64497,7 @@
"examine": "A hungry-looking rabbit.",
"melee_animation": "0",
"range_animation": "0",
+ "respawn_delay": "50",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -62902,23 +64528,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7129",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A gnome farmer.",
"melee_animation": "0",
@@ -62969,512 +64578,6 @@
"range_level": "1",
"attack_level": "100"
},
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A spiny horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "100",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "90",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "It's an NPC.",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "90",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Apparently a master of quizzes!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quiz Master",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2477",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A native of Tai Bwo Wannai.",
"name": "Sharimika",
@@ -63575,2613 +64678,6 @@
"name": "Rionasta",
"id": "2533"
},
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Market Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "2571",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "name": "Man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2675",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2685",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2686",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2687",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2688",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works in the Crafting Guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Master Crafter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2732",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He wanders around the Crafting Guild pretending to be working.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Master Crafter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2733",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Woman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,506,505",
- "strength_level": "1",
- "id": "2776",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shadow.",
- "melee_animation": "2738",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "2739",
- "name": "Shadow",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "68",
- "id": "2782",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sticking it to 'The Man'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zombie protester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2831",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sticking it to 'The Man'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zombie protester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2832",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sticking it to 'The Man'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zombie protester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2833",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sticking it to 'The Man'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zombie protester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2834",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sticking it to 'The Man'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zombie protester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2835",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sticking it to 'The Man'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zombie protester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2836",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
{
"agg_radius": "64",
"melee_animation": "8754",
@@ -66492,1177 +64988,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Mayor of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Awusah the Mayor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3040",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
{
"examine": "A household pest.",
"melee_animation": "8785",
@@ -68201,7 +65526,7 @@
"attack_level": "1"
},
{
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "8222",
"magic_level": "70",
"respawn_delay": "0",
@@ -68219,7 +65544,7 @@
},
{
"examine": "Do you hear duelling banjos?",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "8222",
"range_animation": "0",
"magic_level": "65",
@@ -68279,6 +65604,24 @@
"range_level": "25",
"attack_level": "28"
},
+ {
+ "examine": "It spins.",
+ "melee_animation": "8172",
+ "range_animation": "0",
+ "magic_level": "34",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8176",
+ "name": "Void spinner",
+ "defence_level": "34",
+ "safespot": null,
+ "lifepoints": "48",
+ "strength_level": "34",
+ "id": "7333",
+ "range_level": "34",
+ "attack_level": "34"
+ },
{
"examine": "It spins.",
"melee_animation": "8172",
@@ -68298,21 +65641,28 @@
"attack_level": "34"
},
{
+ "examine": "This one will burn right through the net!",
+ "combat_style": "1",
+ "melee_animation": "7863",
+ "range_animation": "0",
+ "magic_level": "60",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7864",
"name": "Forge regent",
- "defence_level": "1",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7863",
- "strength_level": "1",
+ "lifepoints": "108",
+ "strength_level": "60",
"id": "7335",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7865"
+ "range_level": "60",
+ "attack_level": "60"
},
{
"examine": "This one will burn right through the net!",
+ "combat_style": "1",
"melee_animation": "7863",
"range_animation": "0",
"magic_level": "60",
@@ -68331,18 +65681,23 @@
"attack_level": "60"
},
{
+ "examine": "Fast cat is fast.",
+ "melee_animation": "5228",
+ "range_animation": "0",
+ "magic_level": "50",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "5230",
"name": "Spirit larupia",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "5228",
- "strength_level": "1",
+ "lifepoints": "81",
+ "strength_level": "50",
"id": "7337",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5227"
+ "range_level": "50",
+ "attack_level": "50"
},
{
"examine": "Fast cat is fast.",
@@ -68365,6 +65720,7 @@
},
{
"examine": "It'll kill your enemies, and makes a great cup of tea.",
+ "combat_style": "1",
"melee_animation": "7879",
"range_animation": "422",
"magic_level": "70",
@@ -68386,6 +65742,7 @@
},
{
"examine": "It'll kill your enemies, and makes a great cup of tea.",
+ "combat_style": "1",
"melee_animation": "7879",
"range_animation": "422",
"magic_level": "70",
@@ -68407,24 +65764,29 @@
"attack_level": "70"
},
{
- "combat_style": "1",
+ "examine": "Made of lava.",
+ "combat_style": "0",
"melee_animation": "7980",
+ "range_animation": "0",
+ "magic_level": "65",
"respawn_delay": "0",
- "defence_animation": "7981",
- "death_animation": "7692",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "7979",
"name": "Lava titan",
- "defence_level": "1",
+ "defence_level": "65",
"safespot": null,
- "lifepoints": "528",
- "strength_level": "1",
+ "lifepoints": "115",
+ "strength_level": "65",
"id": "7341",
"bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "65",
+ "attack_level": "65"
},
{
"examine": "Made of lava.",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "7980",
"range_animation": "0",
"magic_level": "65",
@@ -68445,6 +65807,7 @@
},
{
"examine": "The King of the Titans!",
+ "combat_style": "1",
"melee_animation": "8183",
"range_animation": "8183",
"magic_level": "70",
@@ -68467,6 +65830,7 @@
},
{
"examine": "The King of the Titans!",
+ "combat_style": "1",
"melee_animation": "8183",
"range_animation": "8183",
"magic_level": "70",
@@ -68525,18 +65889,23 @@
"attack_level": "60"
},
{
+ "examine": "If a normal black cat is bad luck",
+ "melee_animation": "5989",
+ "range_animation": "0",
+ "magic_level": "60",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "5990",
"name": "Talon beast",
- "defence_level": "1",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "5989",
- "strength_level": "1",
+ "lifepoints": "110",
+ "strength_level": "60",
"id": "7347",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5988"
+ "range_level": "60",
+ "attack_level": "60"
},
{
"examine": "If a normal black cat is bad luck",
@@ -68558,18 +65927,23 @@
"attack_level": "60"
},
{
- "death_animation": "7979",
- "name": "Abyssal titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "667",
+ "examine": "Big",
"melee_animation": "7693",
- "strength_level": "1",
- "id": "7349",
- "range_level": "1",
+ "range_animation": "0",
+ "magic_level": "70",
"respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7691"
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "7692",
+ "name": "Abyssal titan",
+ "defence_level": "70",
+ "safespot": null,
+ "lifepoints": "125",
+ "strength_level": "70",
+ "id": "7349",
+ "range_level": "70",
+ "attack_level": "70"
},
{
"examine": "Big",
@@ -68592,6 +65966,26 @@
},
{
"examine": "It torches.",
+ "combat_style": "2",
+ "melee_animation": "8235",
+ "range_animation": "0",
+ "magic_level": "34",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8236",
+ "name": "Void torcher",
+ "defence_level": "34",
+ "safespot": null,
+ "lifepoints": "48",
+ "strength_level": "34",
+ "id": "7351",
+ "range_level": "34",
+ "attack_level": "34"
+ },
+ {
+ "examine": "It torches.",
+ "combat_style": "2",
"melee_animation": "8235",
"range_animation": "0",
"magic_level": "34",
@@ -68609,21 +66003,28 @@
"attack_level": "34"
},
{
+ "examine": "Looks a little...volatile.",
+ "combat_style": "1",
+ "melee_animation": "7755",
+ "range_animation": "0",
+ "magic_level": "29",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7758",
"name": "Giant chinchompa",
- "defence_level": "1",
+ "defence_level": "29",
"safespot": null,
- "lifepoints": "1",
- "melee_animation": "7755",
- "strength_level": "1",
+ "lifepoints": "41",
+ "strength_level": "29",
"id": "7353",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7753"
+ "range_level": "29",
+ "attack_level": "29"
},
{
"examine": "Looks a little...volatile.",
+ "combat_style": "1",
"melee_animation": "7755",
"range_animation": "0",
"magic_level": "29",
@@ -68643,6 +66044,7 @@
},
{
"examine": "Scorching!",
+ "combat_style": "2",
"melee_animation": "7834",
"range_animation": "7834",
"attack_speed": "5",
@@ -68666,6 +66068,7 @@
},
{
"examine": "Scorching!",
+ "combat_style": "2",
"melee_animation": "7834",
"range_animation": "7834",
"attack_speed": "5",
@@ -68780,24 +66183,29 @@
"attack_level": "40"
},
{
- "combat_style": "1",
+ "examine": "This bat burned down the belfry.",
+ "combat_style": "2",
"melee_animation": "8257",
+ "range_animation": "0",
"attack_speed": "3",
+ "magic_level": "22",
"respawn_delay": "0",
- "defence_animation": "8256",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "8258",
"name": "Spirit Tz-Kih",
- "defence_level": "1",
+ "defence_level": "22",
"safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
+ "lifepoints": "31",
+ "strength_level": "22",
"id": "7361",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "22",
+ "attack_level": "22"
},
{
"examine": "This bat burned down the belfry.",
- "combat_style": "1",
+ "combat_style": "2",
"melee_animation": "8257",
"range_animation": "0",
"attack_speed": "3",
@@ -68817,19 +66225,24 @@
"attack_level": "22"
},
{
+ "examine": "Those spikes are pretty big!",
"start_gfx": "1367",
- "melee_animation": "5228",
+ "melee_animation": "5229",
+ "range_animation": "0",
+ "magic_level": "50",
"respawn_delay": "0",
- "defence_animation": "5227",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "5230",
"name": "Spirit graahk",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "81",
+ "strength_level": "50",
"id": "7363",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "50",
+ "attack_level": "50"
},
{
"examine": "Those spikes are pretty big!",
@@ -68852,19 +66265,24 @@
"attack_level": "50"
},
{
+ "examine": "Those teeth are pretty big!",
"start_gfx": "1365",
"melee_animation": "5228",
+ "range_animation": "0",
+ "magic_level": "50",
"respawn_delay": "0",
- "defence_animation": "5227",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "5230",
"name": "Spirit kyatt",
- "defence_level": "1",
+ "defence_level": "50",
"safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
+ "lifepoints": "81",
+ "strength_level": "50",
"id": "7365",
- "range_level": "1",
- "attack_level": "1"
+ "range_level": "50",
+ "attack_level": "50"
},
{
"examine": "Those teeth are pretty big!",
@@ -68886,6 +66304,24 @@
"range_level": "50",
"attack_level": "50"
},
+ {
+ "examine": "It shifts.",
+ "melee_animation": "8131",
+ "range_animation": "0",
+ "magic_level": "34",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8133",
+ "name": "Void shifter",
+ "defence_level": "34",
+ "safespot": null,
+ "lifepoints": "48",
+ "strength_level": "34",
+ "id": "7367",
+ "range_level": "34",
+ "attack_level": "34"
+ },
{
"examine": "It shifts.",
"melee_animation": "8131",
@@ -68904,6 +66340,24 @@
"range_level": "34",
"attack_level": "34"
},
+ {
+ "examine": "It ravages.",
+ "melee_animation": "8086",
+ "range_animation": "0",
+ "magic_level": "34",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8087",
+ "name": "Void ravager",
+ "defence_level": "34",
+ "safespot": null,
+ "lifepoints": "48",
+ "strength_level": "34",
+ "id": "7370",
+ "range_level": "34",
+ "attack_level": "34"
+ },
{
"examine": "It ravages.",
"melee_animation": "8086",
@@ -68942,22 +66396,27 @@
"attack_level": "60"
},
{
+ "examine": "It's like a little stomach on wings.",
+ "melee_animation": "7994",
+ "range_animation": "0",
+ "magic_level": "60",
+ "respawn_delay": "0",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
"death_animation": "7996",
"name": "Ravenous locust",
- "defence_level": "1",
+ "defence_level": "60",
"safespot": null,
- "lifepoints": "10",
- "melee_animation": "7994",
- "strength_level": "1",
+ "lifepoints": "100",
+ "strength_level": "60",
"id": "7374",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7995"
+ "range_level": "60",
+ "attack_level": "60"
},
{
"examine": "He is an iron man!",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "7946",
"magic_level": "65",
"respawn_delay": "0",
@@ -68976,7 +66435,7 @@
},
{
"examine": "He is an iron man!",
- "combat_style": "1",
+ "combat_style": "0",
"melee_animation": "7946",
"combat_audio": "0,0,0",
"magic_level": "65",
@@ -68995,6 +66454,24 @@
"range_level": "65",
"attack_level": "65"
},
+ {
+ "examine": "Where did I put the marshmallows?",
+ "melee_animation": "8080",
+ "range_animation": "0",
+ "magic_level": "46",
+ "defence_animation": "0",
+ "weakness": "10",
+ "magic_animation": "0",
+ "death_animation": "8078",
+ "name": "Pyrelord",
+ "defence_level": "46",
+ "safespot": null,
+ "lifepoints": "65",
+ "strength_level": "46",
+ "id": "7377",
+ "range_level": "46",
+ "attack_level": "46"
+ },
{
"examine": "Where did I put the marshmallows?",
"melee_animation": "8080",
@@ -69355,7 +66832,6 @@
},
{
"examine": "You clearly can't live on treasure alone.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69372,7 +66848,6 @@
},
{
"examine": "A testament to the effect of greed.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69389,7 +66864,6 @@
},
{
"examine": "He wanted loot",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69406,7 +66880,6 @@
},
{
"examine": "Eternally looking for that big payday.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69423,7 +66896,6 @@
},
{
"examine": "No more tea-breaks for this one.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69440,7 +66912,6 @@
},
{
"examine": "Even in death you can smell his feet.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69457,7 +66928,6 @@
},
{
"examine": "An anatomist's dream.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69474,7 +66944,6 @@
},
{
"examine": "A hand seems to be gripping his spine through his chest. Ouch.",
- "slayer_task": "75",
"range_animation": "0",
"defence_animation": "0",
"weakness": "6",
@@ -69592,7 +67061,6 @@
},
{
"examine": "This dung beetle has mistaken you for its staple diet.",
- "slayer_task": "70",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
@@ -69610,7 +67078,6 @@
},
{
"examine": "It's looking unwell - probably something it ate.",
- "slayer_task": "70",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
@@ -69628,7 +67095,6 @@
},
{
"examine": "Once a valuable contributor to the ecosystem.",
- "slayer_task": "70",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
@@ -69646,7 +67112,6 @@
},
{
"examine": "This is what happens if you play with your food.",
- "slayer_task": "70",
"range_animation": "0",
"respawn_delay": "60",
"defence_animation": "0",
@@ -70629,7 +68094,6 @@
},
{
"examine": "Ew it's still alive.",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "9125",
"attack_speed": "5",
@@ -70651,7 +68115,6 @@
},
{
"examine": "Ew it's still alive.",
- "slayer_task": "21",
"melee_animation": "9125",
"range_animation": "9125",
"attack_speed": "5",
@@ -70673,7 +68136,6 @@
},
{
"examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
"melee_animation": "9102",
"range_animation": "0",
"attack_speed": "5",
@@ -70695,7 +68157,6 @@
},
{
"examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
"melee_animation": "9102",
"range_animation": "0",
"attack_speed": "5",
@@ -71143,7 +68604,6 @@
},
{
"examine": "Looks like a big ugly dog.",
- "slayer_task": "27",
"melee_animation": "6565",
"range_animation": "0",
"respawn_delay": "60",
@@ -71178,9 +68638,9 @@
},
{
"examine": "A small ice demon.",
- "slayer_task": "46",
"melee_animation": "8080",
"range_animation": "0",
+ "combat_audio": "531,533,532",
"attack_speed": "5",
"magic_level": "25",
"respawn_delay": "60",
@@ -71201,9 +68661,9 @@
},
{
"examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
"melee_animation": "8080",
"range_animation": "0",
+ "combat_audio": "531,533,532",
"attack_speed": "5",
"magic_level": "25",
"respawn_delay": "60",
@@ -71224,7 +68684,6 @@
},
{
"examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
"melee_animation": "8080",
"range_animation": "0",
"attack_speed": "5",
@@ -71458,6 +68917,28 @@
"range_level": "38",
"attack_level": "28"
},
+ {
+ "examine": "Not the best of vocalists.",
+ "combat_style": "1",
+ "melee_animation": "9449",
+ "range_animation": "9382",
+ "combat_audio": "284,286,285",
+ "magic_level": "65",
+ "respawn_delay": "60",
+ "defence_animation": "9451",
+ "weakness": "0",
+ "magic_animation": "9382",
+ "death_animation": "9450",
+ "name": "Mighty banshee",
+ "defence_level": "65",
+ "safespot": null,
+ "lifepoints": "85",
+ "strength_level": "65",
+ "id": "7786",
+ "aggressive": "true",
+ "range_level": "0",
+ "attack_level": "65"
+ },
{
"examine": "A big, scary hand! ",
"melee_animation": "1802",
@@ -71632,6 +69113,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8349",
@@ -71657,6 +69139,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8350",
@@ -71682,6 +69165,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8351",
@@ -71707,6 +69191,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8352",
@@ -71732,6 +69217,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8353",
@@ -71757,6 +69243,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8354",
@@ -71782,6 +69269,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8355",
@@ -71807,6 +69295,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8356",
@@ -71832,6 +69321,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8357",
@@ -71857,6 +69347,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8358",
@@ -71882,6 +69373,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8359",
@@ -71907,6 +69399,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8360",
@@ -71932,6 +69425,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8361",
@@ -71957,6 +69451,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8362",
@@ -71982,6 +69477,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8363",
@@ -72007,6 +69503,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8364",
@@ -72032,6 +69529,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8365",
@@ -72057,6 +69555,7 @@
"defence_level": "85",
"poison_immune": "true",
"safespot": "true",
+ "movement_radius": "40",
"lifepoints": "326",
"strength_level": "85",
"id": "8366",
@@ -72480,32222 +69979,6 @@
"name": "Yeti",
"id": "130"
},
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "7",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "425",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "8",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "9",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "Not very civilised looking.",
- "name": "Barbarian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "12",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly magical.",
- "start_gfx": "2728",
- "combat_style": "2",
- "melee_animation": "2791",
- "range_animation": "711",
- "combat_audio": "511,513,512",
- "magic_level": "21",
- "respawn_delay": "12",
- "end_gfx": "2737",
- "defence_animation": "404",
- "weakness": "3",
- "slayer_exp": "0",
- "magic_animation": "711",
- "death_animation": "9055",
- "name": "Wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "1",
- "id": "13",
- "bonuses": "23,7,8,2,1,8,12,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "projectile": "2729",
- "attack_level": "1"
- },
- {
- "examine": "Not very fashion conscious.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Warrior woman",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "22",
- "id": "15",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Part of Al-Kharid's elite fighting force.",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "6",
- "defence_animation": "387",
- "weakness": "7",
- "magic_animation": "390",
- "death_animation": "836",
- "name": "Al-Kharid warrior",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "19",
- "strength_level": "15",
- "id": "18",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Shiny armour!",
- "melee_animation": "7042",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "19",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A holy warrior.",
- "melee_animation": "390",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Paladin",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "54",
- "id": "20",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "Heroic!",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Hero",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "55",
- "id": "21",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "They love the forests.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "respawn_delay": "18",
- "defence_animation": "404",
- "magic_animation": "0",
- "death_animation": "9055",
- "name": "Forester",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "13",
- "id": "22",
- "range_level": "1",
- "attack_level": "14"
- },
- {
- "examine": "A member of Ardougne's militia.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Knight of Ardougne",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "23",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "To protect and serve the populace of Ardougne.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Knight of Ardougne",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "26",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Good with arrows.",
- "start_gfx": "19",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "12",
- "defence_animation": "404",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "20",
- "id": "27",
- "range_level": "40",
- "projectile": "10",
- "attack_level": "20"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zoo keeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "28",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's a lumberjack, and he's ok.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chuck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "29",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Doesn't water down the beer too much.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "30",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "31",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the peace... kind of.",
- "melee_animation": "401",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "18",
- "id": "32",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "examine": "What a boring job he has.",
- "name": "Door man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "33",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Watches stuff. But who watches him?",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Watchman",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "31",
- "id": "34",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "examine": "The head gardener.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wyson the gardener",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "36",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bold knight famed for his travels.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigbert the Adventurer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "37",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Builds ships for a living.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shipyard worker",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "38",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Builds ships for a living.",
- "melee_animation": "401",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shipyard worker",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "39",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Let's not go skinny dipping eh?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shark",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "40",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly sheared.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "42",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "43",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "44",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "45",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "46",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "47",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A jungle version of the chicken, but more vicious.",
- "slayer_task": "7",
- "melee_animation": "5387",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5389",
- "name": "Oomlie bird",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "40",
- "id": "48",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A wood nymph.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dryad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "56",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A delicate creature from this strange realm.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "57",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "5",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "59",
- "aggressive": "false",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "defence_animation": "5328",
- "weakness": "2",
- "slayer_exp": "33",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "24",
- "id": "60",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A barely visible deadly jungle spider.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "5328",
- "weakness": "2",
- "slayer_exp": "50",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "35",
- "poison_immune": "false",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "37",
- "id": "62",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "65",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Ice spider",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "55",
- "id": "64",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,20,17,12,13,13,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A funny little man normally associated with rainbows.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "65",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "66",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "67",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "68",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hideous malformed elf.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Orc",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "71",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hideously deformed creature.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Troll",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "72",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dead man walking.",
- "slayer_task": "93",
- "melee_animation": "5567",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "5568",
- "slayer_exp": "22",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "9",
- "id": "73",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Dead woman walking.",
- "slayer_task": "93",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "24",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "13",
- "id": "74",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "The walking dead.",
- "slayer_task": "93",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "75",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The walking dead.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "76",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The living dead.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "4",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "22",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Summoned Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "9",
- "id": "77",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "A shadowy, barely visible flying entity from some evil place.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "slayer_exp": "80",
- "magic_animation": "0",
- "death_animation": "4917",
- "name": "Death wing",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "70",
- "id": "79",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "Oh, it's a camel.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "80",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "81",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A creature made from clay.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Golem",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "85",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "defence_animation": "4934",
- "weakness": "8",
- "slayer_exp": "5",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "3",
- "id": "86",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "slayer_exp": "10",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "87",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "slayer_exp": "12",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "10",
- "id": "88",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Horse with a horn.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "32",
- "defence_animation": "6375",
- "weakness": "3",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "19",
- "strength_level": "13",
- "id": "89",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "Not man's best friend.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "combat_audio": "481,491,490",
- "attack_speed": "4",
- "slayer_exp": "69",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "55",
- "id": "95",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A vicious mountain wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "4",
- "defence_animation": "6578",
- "weakness": "9",
- "slayer_exp": "34",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "White wolf",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "16",
- "id": "96",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A vicious mountain wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "4",
- "defence_animation": "6578",
- "weakness": "7",
- "slayer_exp": "44",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "White wolf",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "97",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Bow wow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "98",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't seem pleased to see me.",
- "slayer_task": "27",
- "melee_animation": "6562",
- "range_animation": "6562",
- "attack_speed": "4",
- "respawn_delay": "15",
- "defence_animation": "6563",
- "weakness": "7",
- "slayer_exp": "49",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Guard dog",
- "defence_level": "37",
- "safespot": null,
- "lifepoints": "49",
- "strength_level": "36",
- "id": "99",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A large dim looking humanoid.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "43",
- "id": "115",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,20,0,0,0",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "slayer_task": "44",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "360",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "116",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A short angry guy.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "7",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "118",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "A mountain dwelling short angry guy.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "120",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "122",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "123",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "125",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Looks pretty otherworldly to me!",
- "slayer_task": "65",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "45",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "name": "Otherworldly being",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "126",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An inhabitant of icy regions.",
- "slayer_task": "7",
- "melee_animation": "5669",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5671",
- "name": "Penguin",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "6",
- "id": "131",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "A unicorn with a blackened heart.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "24",
- "defence_animation": "6375",
- "weakness": "3",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Black unicorn",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "10",
- "id": "133",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Aaw",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Terrorchick gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "137",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant raptor.",
- "slayer_task": "7",
- "melee_animation": "1010",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "138",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "139",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
- },
- {
- "examine": "A servant to Iban.",
- "melee_animation": "338",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "340",
- "name": "Souless",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "140",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "Must be the pack leader.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "74",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Big Wolf",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "141",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "slayer_exp": "34",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "69",
- "melee_animation": "6559",
- "combat_audio": "481,491,490",
- "strength_level": "1",
- "id": "142",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rare jungle wolf - specific to the Kharazi jungle.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "69",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Jungle Wolf",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "143",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "63"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "145",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cormorant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pelican",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "148",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These look much better in the wild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Butterfly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "153",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I love butterflies.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Butterfly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "154",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Small",
- "melee_animation": "191",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "159",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems to crawl the caves.",
- "melee_animation": "266",
- "range_animation": "266",
- "attack_speed": "5",
- "defence_animation": "267",
- "weakness": "9",
- "magic_animation": "266",
- "death_animation": "265",
- "name": "Gnome child",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "23",
- "id": "160",
- "bonuses": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "Small",
- "melee_animation": "191",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "161",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can advise on training.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "162",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tree gnome guard.",
- "melee_animation": "1218",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1224",
- "name": "Gnome guard",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "163",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A tree gnome guard.",
- "melee_animation": "192",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome guard",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "164",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A female gnome.",
- "combat_style": "1",
- "melee_animation": "191",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome woman",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "168",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A female gnome.",
- "combat_style": "1",
- "melee_animation": "191",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome woman",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "169",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "27",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "172",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1",
- "prj_height": "3"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "24",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "1",
- "id": "174",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "2",
- "examine": "He jumps out and attacks people.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "175",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "A dark-hearted knight.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "178",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "melee_animation": "390",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "388",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "1",
- "id": "179",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "180",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "182",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "183",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "184",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "25",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "18",
- "id": "188",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "18"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "25",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "189",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "8"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "40",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "38",
- "id": "190",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "38"
- },
- {
- "examine": "A warrior of Darkness.",
- "melee_animation": "451",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "8",
- "death_animation": "9055",
- "name": "Dark warrior",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "192",
- "bonuses": "1,1,1,1,1,1,1,1,1,1,1,1,1,1,1",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A crazy evil necromancer.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "28",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Necromancer",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "194",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bandit Camp guard.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard Bandit",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "196",
- "range_level": "20",
- "attack_level": "1"
- },
- {
- "examine": "A mighty warrior!",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gunthor the Brave",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "41",
- "strength_level": "29",
- "id": "199",
- "range_level": "1",
- "attack_level": "29"
- },
- {
- "examine": "Has a fearsome scowl.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Heather",
- "defence_level": "28",
- "lifepoints": "40",
- "strength_level": "28",
- "id": "202",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Has a fearsome posture.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Donny the Lad",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "203",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Nice hair.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Speedy Keith",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "204",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A crazy evil druid.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Salarin the Twisted",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "58",
- "id": "205",
- "aggressive": "true",
- "bonuses": "45,50,43,55,39,31,19,28,33,22,22,15,13,9,8",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "A dwarven guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Guard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "206",
- "aggressive": "false",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "The head honcho around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Lawgof",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "208",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A former Knight of the Round Table.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Percival",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "212",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks unhappy...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Peasant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "214",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "High Priest of Entrana.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "High Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a fisherman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "219",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very well...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Fisher King",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "220",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks mean and powerful.",
- "melee_animation": "128",
- "range_animation": "0",
- "attack_speed": "7",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "131",
- "name": "Black Knight Titan",
- "defence_level": "91",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "100",
- "id": "221",
- "aggressive": "true",
- "bonuses": "27,27,27,0,0,18,27,18,1000,1000,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "91"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "10",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "7",
- "id": "222",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "A peaceful monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Kojo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "223",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "224",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "He looks elderly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grandpa Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "230",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes to cut down trees.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "231",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He isn't very friendly.",
- "melee_animation": "6489",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Renegade Knight",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "237",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "A terrifying spirit.",
- "melee_animation": "5540",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5542",
- "name": "Thrantax the Mighty",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "50",
- "id": "238",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Specialist meat transporter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "2301",
- "name": "Teapotspout",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "246",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6490",
- "name": "Sir Mordred",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "6489",
- "strength_level": "1",
- "id": "247",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6488"
- },
- {
- "examine": "Legendary King of the Britons.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Arthur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the door.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khazard Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "253",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's been guarding the tavern for a bit too long.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khazard Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "254",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His armour indicates he's a Khazard Guard.",
- "melee_animation": "395",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "255",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "His armour indicates he's a Khazard Guard.",
- "melee_animation": "395",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "256",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A slave fighter. He looks mistreated and weak.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fightslave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6581",
- "respawn_delay": "60",
- "defence_animation": "6578",
- "death_animation": "6576",
- "name": "Bouncer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "116",
- "strength_level": "1",
- "id": "269",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Khazard's strongest ogre warrior.",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "Khazard Ogre",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "270",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "46"
- },
- {
- "examine": "A guard who has devoted their life to Armadyl.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "name": "Guardian of Armadyl",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "274",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A guard who has devoted their life to Armadyl.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "name": "Guardian of Armadyl",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "275",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Intimidating!",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fire Warrior of Lesarkus",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "277",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Lumbridge Castle's head cook.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "278",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Omad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "279",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old drunk monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Cedric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "280",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Ardougne Monk.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "281",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "A dastardly blanket thief.",
- "melee_animation": "386",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "282",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "The head of the treacherous blanket stealing gang.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Head Thief",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "283",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "A dwarf smith. Quite handy with a hammer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "284",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She doesn't look too happy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Veronica",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "285",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Councillor Halgrive",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A serious-looking doctor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doctor Orbon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "290",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A farmer who's seen happier times.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer Brumty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "291",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "296",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7220",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "297",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "298",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "583",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7213",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "299",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "An old motherly witch with a curious smile and a hooked nose.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hetty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "307",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a colourful personality.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Da Vinci",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "336",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's ready for a bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chancy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "338",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's ready for a bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chancy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "339",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hops",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "340",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hops",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "341",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks rather concerned.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guidor's wife",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "342",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "344",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "345",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "346",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "358",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "King Lathas of East Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Lathas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "364",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smells very chemically...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chemist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "367",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "368",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mourner",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "369",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "examine": "She's quite a looker!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nurse Sarah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "373",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "slayer_task": "64",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "27",
- "respawn_delay": "25",
- "defence_animation": "360",
- "weakness": "8",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "27",
- "id": "374",
- "aggressive": "true",
- "bonuses": "15,15,10,20,40,15,50,50,50,20,50,58,0,0,0",
- "range_level": "27",
- "attack_level": "27"
- },
- {
- "examine": "Inspects people's packages.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customs officer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "380",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "382",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not very civilised looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barbarian guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "384",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could do with a shave...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "388",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A brightly coloured game bird.",
- "melee_animation": "2371",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "2373",
- "name": "Big fish",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "3",
- "id": "390",
- "range_level": "1",
- "attack_level": "3"
- },
- {
- "examine": "Beefy.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Legends Guild guard; he protects the entrance to the Legends Guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Legends guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He deals in exotic types of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She deals in exotic types of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Insects buzzing around.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swarm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "411",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An annoying flappy thing.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "4915",
- "attack_speed": "5",
- "magic_level": "10",
- "respawn_delay": "30",
- "defence_animation": "4916",
- "weakness": "4",
- "slayer_exp": "8",
- "death_animation": "4918",
- "name": "Bat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "412",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "5",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "5",
- "id": "419",
- "range_level": "5",
- "attack_level": "5"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "10",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "420",
- "range_level": "10",
- "attack_level": "10"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "15",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "15",
- "id": "421",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "45",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "79",
- "strength_level": "45",
- "id": "422",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "35",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "45",
- "id": "423",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "45",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "159",
- "strength_level": "45",
- "id": "424",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Entrance clerk for the Brimhaven Agility Arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cap'n Izzy No-Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "437",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "17",
- "id": "438",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "32",
- "id": "439",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "48",
- "id": "440",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "65",
- "id": "441",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "100",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "100",
- "id": "442",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "130",
- "safespot": null,
- "lifepoints": "170",
- "strength_level": "130",
- "id": "443",
- "range_level": "1",
- "attack_level": "130"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "444",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "445",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "5",
- "id": "446",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "447",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "448",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "449",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "A large well built farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seth Groats",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "452",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be very devout.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Aereck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "456",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A ghost!",
- "name": "Restless ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "457",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very holy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Urhney",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "458",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome. He looks important.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Bolren",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "469",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tree gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Commander Montai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "470",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of General Khazard's warriors.",
- "melee_animation": "401",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard trooper",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "475",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "An open eye of World-gorger.",
- "magic_level": "5",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "name": "Khazard trooper",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "1",
- "id": "476",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks real nasty",
- "melee_animation": "401",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard warlord",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "477",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "It's one of General Khazard's commanders.",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard commander",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "478",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "It's a tree gnome trooper.",
- "melee_animation": "190",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome troop",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "24",
- "id": "479",
- "range_level": "32",
- "attack_level": "24"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 1",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 2",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "482",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 3",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a young tree gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Local Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I guess he wants to be more than just the muscle.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Giant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "487",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look like he'd trust his own mother.",
- "slayer_task": "38",
- "melee_animation": "6199",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6190",
- "name": "Goblin guard",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "489",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "If the mummy is at school",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "490",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The essence of evil.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spirit of Scorpius",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "492",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious",
- "slayer_task": "71",
- "melee_animation": "6261",
- "range_animation": "0",
- "combat_audio": "3611,3612,3610",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "6260",
- "name": "Grave scorpion",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "493",
- "aggressive": "true",
- "range_level": "7",
- "attack_level": "5"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "494",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Good with money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "495",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "499",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "503",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "504",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "505",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "melee_animation": "5571",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "death_animation": "5575",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "507",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5507",
- "respawn_delay": "60",
- "defence_animation": "5508",
- "death_animation": "5509",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "508",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5532",
- "respawn_delay": "60",
- "defence_animation": "5533",
- "death_animation": "5534",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "509",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's the Captain of the 'Lady of the Waves'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Shanks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "518",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on axes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "519",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "520",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Helps sell stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes people spending money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "522",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes helping sell stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "523",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A product of a consumerist society.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A product of a consumerist society.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "526",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an interesting assortment of items for sale.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "530",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works on commission.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a grave keeper",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "60",
- "id": "532",
- "aggressive": "true",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "534",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "535",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very snappily dressed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silk trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "539",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "For the finest in armoured legware.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Louie Legs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "542",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Helps the shopkeeper sell swords.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "552",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "For the interesting clothing items you just can't find elsewhere.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fancy-dress shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "554",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has a fine moustache.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "555",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could stand to lose a few pounds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "561",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an odd smell about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Candle-maker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "562",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks strange and mysterious.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "569",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems very well-off.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gem merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "570",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "So where are the butcher and the candlestick-maker?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has a very exotic aroma about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spice seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "572",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Knows how to keep warm in the winter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fur trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "573",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems very well-off.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silk merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He runs a Mining store.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Drogo dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if he wants to buy my junk?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "If crafting's your thing, he's your man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rommik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to sell tea.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tea seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "595",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pizza expert; in both making and eating.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fat Tony",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "596",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Anyone fancy a trim?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hairdresser",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "598",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Indentured servant of a Knight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "606",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "609",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "One of the Black Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black Knight Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "610",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "613",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doug Deeping",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "614",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A student busy studying the digsite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "617",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "618",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on archaeology.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archaeological expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "619",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A specialist in panning for gold.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Panning guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "620",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A professional gnome baller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome baller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "621",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A professional gnome baller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome winger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "633",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the game fair.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome ball referee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "635",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dealer in potions.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apothecary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "638",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A religious man... And occasional drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Lawrence",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "640",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charlie the Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks kind of obsessive...",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Weaponsmaster",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "643",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Looks kind of shifty...",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jonny the beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "645",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Curator of the museum.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Curator Haig Halen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "646",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Varrock's resident monarch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Roald",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "648",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks quite experienced.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "649",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks big and dumb.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "650",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks holy.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "651",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks kind of puny...",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "652",
- "range_level": "1",
- "attack_level": "1",
- "prj_height": "3"
- },
- {
- "examine": "Guardian of the dramen tree.",
- "melee_animation": "5532",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5534",
- "name": "Tree spirit",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "655",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Unsurprisingly monk like.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "656",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "657",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "658",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes to paaaarty!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Party Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "659",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "660",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short and angry dwarf.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "665",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An important looking gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Narnode Shareen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "670",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The boss!",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Foreman",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "674",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "Keeps order in the ranging guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "678",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The keeper of the gates to the ranging guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ranging Guild Doorman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "679",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert leatherworker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Leatherworker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "680",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mysterious swamp lights...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Held vampyre juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "681",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supplier of Rangers armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Armour salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supplier of Archery equipment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bow and Arrow salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "683",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tower keeper and competition judge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tower Advisor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "684",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Defender of the north tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "7",
- "id": "688",
- "aggressive": "true",
- "range_level": "10",
- "attack_level": "7"
- },
- {
- "examine": "Defender of the east tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "15",
- "id": "689",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "15"
- },
- {
- "examine": "Defender of the south tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "690",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "Defender of the west tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "30",
- "id": "691",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "examine": "Supplier of authentic throwing weapons.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tribal Weapon Salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "692",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells equipment in exchange for archery tickets.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "694",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Harlan, ready to teach swordplay.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Melee tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "705",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard Mizgog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cheeky little imp.",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "attack_speed": "5",
- "defence_animation": "170",
- "weakness": "7",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "2",
- "id": "708",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "A cheeky little imp.",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "attack_speed": "5",
- "defence_animation": "170",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "709",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bureaucratic administrator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Clerk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "713",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "In charge of people with silly outfits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "716",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the Ardougne Royal Army.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Recruiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "720",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "732",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "735",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "737",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "738",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Duke Horacio of Lumbridge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Duke Horacio",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A badly-behaved goblin.",
- "slayer_task": "38",
- "melee_animation": "6184",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6204",
- "name": "Wormbrain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Angry barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "749",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Enraged barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "750",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Berserk barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "751",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Ferocious barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "190",
- "strength_level": "76",
- "id": "752",
- "aggressive": "true",
- "bonuses": "80,100,60,70,85,70,70,90,60,100,50,90,90,0,0",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "Stop looking and run!",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Count Draynor",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "757",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A well-fed farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fred the Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "758",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "192",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "194",
- "death_animation": "196",
- "name": "Crate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "767",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Overgrown cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "1",
- "id": "778",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome who's supposed to be cleaning up a mess.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Letham",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smartly dressed",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alfonse the waiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "793",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Distinctly cook-like.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charlie the cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold hearted lady.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ice Queen",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "55",
- "id": "795",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He looks cold and hungry.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Velrak the explorer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "798",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A morally ambiguous guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Pirate Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "799",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Abbot Langley",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "801",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Jered",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "803",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "He looks very tired...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Donovan the Family Handyman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "806",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the Law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "812",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of those people who love to gossip!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gossip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "813",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sure likes to sell stuff!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Poison Salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sinclair Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "821",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Rowdy slave",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary Captain",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's in control of the whole mining camp.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Siad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "831",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedabin Nomad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad guard - it looks like he's protecting an area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedabin Nomad Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "834",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He patrols the Shantay Pass.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shantay Guard",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "837",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He patrols the Shantay Pass.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shantay Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "838",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious desert wolf.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "839",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "death_animation": "9674",
- "name": "Ugthanki",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "46",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "840",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "He looks busy attending to his cart.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mine cart driver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "841",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This pickaxe has been possessed by a dwarf ancestor spirit.",
- "melee_animation": "185",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "188",
- "name": "Rowdy Guard",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "400",
- "strength_level": "40",
- "id": "842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Inefficient looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "RPDT employee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "843",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Despite his name",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head chef",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "847",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The famous tree gnome chef.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Aluft Gianne snr.",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "850",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can serve you gnome food.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Waiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Gorad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "1",
- "id": "856",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "These ogres protect the city.",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ogre that guards.",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "859",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tries to keep the peace.",
- "slayer_task": "64",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "City guard",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "331",
- "strength_level": "58",
- "id": "862",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "Frightened-looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Scared skavid",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big and ugly looking.",
- "slayer_task": "64",
- "melee_animation": "2100",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "Enclave guard",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "331",
- "strength_level": "58",
- "id": "870",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "The hat is a dead giveaway.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Watchtower Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "872",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "874",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "875",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tries to keep the peace.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower guard",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "17",
- "id": "877",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "melee_animation": "395",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Colonel Radick",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "67",
- "name": "Delrith",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "64",
- "strength_level": "1",
- "id": "879",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "65"
- },
- {
- "examine": "The head of the palace guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Rovin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "884",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Head of the Carnillean household.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ceril Carnillean",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "885",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "887",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Clivet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "melee_animation": "811",
- "strength_level": "1",
- "id": "893",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "A member of the Hazeel cult.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "20",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Hazeel Cultist",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "15",
- "id": "894",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Children are just like real people...just smaller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "895",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He hasn't seen much sun lately.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chamber guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A crafter at the pinnacle of his art.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "916",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "917",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The emir's chief advisor and physician.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hassan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "923",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Guards the border between Al Kharid and the Kingdom of Misthalin.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Border Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "925",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An aggressive native of the Kharazi Jungle.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jungle savage",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "931",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Nezikchened",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "id": "934",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5485",
- "respawn_delay": "60",
- "defence_animation": "5489",
- "death_animation": "5491",
- "name": "Ranalph Devere",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "938",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder what this is doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "939",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very much an outdoors type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Survival expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "943",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on all forms of combat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Combat instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your introduction to the world of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "RuneScape guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "945",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official representative from the First National Bank of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Financial advisor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on Mining-related skills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mining instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your introduction to the world of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quest guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "950",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Brace",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "954",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "955",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's had a fair bit to drink...",
- "start_gfx": "33",
- "combat_style": "1",
- "melee_animation": "99",
- "range_animation": "99",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "101",
- "slayer_exp": "0",
- "magic_animation": "99",
- "death_animation": "102",
- "name": "Drunken Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "956",
- "range_level": "6",
- "projectile": "33",
- "attack_level": "5",
- "prj_height": "45"
- },
- {
- "examine": "This doctor really knows her stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Surgeon General Tafani",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "961",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of Iban's pets.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Blessed spider",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "977",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Blessed giant rat",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "978",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "982",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "983",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "984",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "985",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Precariously balanced...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "986",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Unicorn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "496,498,497",
- "strength_level": "1",
- "id": "987",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Sir Jerro",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "988",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sir Carl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "989",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sir Harry",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "990",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "A creature empty of emotion.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Half-soulless",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "991",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant spider.",
- "melee_animation": "5319",
- "respawn_delay": "60",
- "defence_animation": "5320",
- "death_animation": "5321",
- "name": "Kalrag",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "1",
- "id": "997",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the guardians of Iban.",
- "melee_animation": "64",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Othainian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "998",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the guardians of Iban.",
- "melee_animation": "64",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Doomion",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "999",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1144",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1145",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1146",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1147",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1148",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1149",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the goutweed.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1150",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Human is his speciality.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Burntmeat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1151",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast",
- "melee_animation": "313",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "315",
- "name": "The Shaikahan",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "50",
- "id": "1172",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An elven city guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elven city guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cute bunny rabbit.",
- "melee_animation": "6090",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1192",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1193",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1194",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "examine": "It's an NPC.",
- "melee_animation": "4921",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "4927",
- "slayer_exp": "0",
- "death_animation": "4929",
- "name": "Grizzly bear",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
- "id": "1195",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A bear cub!",
- "slayer_task": "6",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Grizzly bear cub",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "1196",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "name": "Grizzly bear cub",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "35",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1197",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What big teeth you have.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Dire Wolf",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "1198",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "An elf tracker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elf Tracker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1199",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "414",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "1200",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "110",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "105",
- "id": "1203",
- "range_level": "50",
- "attack_level": "95"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "1",
- "id": "1204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Responsible for the food and equipment of the troops.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quartermaster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1208",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mysterious swamp lights...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Will o' the wisp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1211",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems strangely familiar...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Parroty Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old gardener.",
- "melee_animation": "433",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gardener",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "1217",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "Yuck! It's all slimy!",
- "melee_animation": "1273",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1272",
- "name": "Leech",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "1219",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "Could his name be 'Lurch'?",
- "melee_animation": "7183",
- "slayer_exp": "50",
- "death_animation": "7185",
- "name": "Vampire",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1220",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "slayer_exp": "40",
- "name": "Vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1223",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1225",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad fighter - a sandy swordsman.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Bedabin Nomad Fighter",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "1239",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "1257",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "1258",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "1261",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "1262",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "46"
- },
- {
- "examine": "A follower of Saradomin.",
- "melee_animation": "376",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "90",
- "spell_id": "41",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "836",
- "name": "Saradomin wizard",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "90",
- "id": "1264",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "90"
- },
- {
- "examine": "A rocky outcrop.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "weakness": "7",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Rocks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1266",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rocky outcrop.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Rocks",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1268",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "A Fremennik bard.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Olaf the Bard",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1269",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Distinctly troll-shaped.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lalli",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1270",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly shorn.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1271",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lovely thick wool.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1272",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful spirit that lives in this lake.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fossegrimen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1273",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's had a few drinks already.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ospak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1274",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Doesn't look like the musical type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Styrmir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1275",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Waiting for the show.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Torbrund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1276",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sits impatiently with his friends.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fridgeir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1277",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's fat, he's round, he bounces on the ground. That's how he got the job.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Longhall Bouncer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1278",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fearful spirit of the drowned.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "The Draugen",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "1279",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A Fremennik hunter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigli the Huntsman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1281",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigmund The Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1282",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik navigator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swensen the Navigator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1283",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supposedly fixes things around RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Council workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1287",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik riddler.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Peer the Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik hero.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Thorvald the Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your challenge awaits! ",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1290",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He lives again!",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1291",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He keeps on living!",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1292",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He just keeps on going.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1293",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "The Fremennik tribe's chieftain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brundt the Chieftain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stands around and looks at stuff all day.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1296",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1297",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a rubbish job he has.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Town Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1298",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Longhall barkeep",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A bartender.",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1300",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Pretty shabbily dressed for a clothes shop owner.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yrsa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1301",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There's something fishy about this guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1302",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells and makes weapons and armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skulgrimen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1303",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's strong to the finish",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sailor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1304",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Agnar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1305",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Freidir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1306",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "395",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Borrokar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1307",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Lanzig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "id": "1308",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pontak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "id": "1309",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sassilik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1313",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Inga",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1314",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fish-tastic!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish monger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1315",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder what he does with all that fur?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fur trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hardened Fremennik warrior.",
- "melee_animation": "401",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Warrior",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "1318",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A cunning animal.",
- "melee_animation": "6562",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6570",
- "name": "Fox",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "1319",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Hoppity",
- "melee_animation": "1245",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "1246",
- "name": "Bunny",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1320",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "1246",
- "name": "Bunny",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "1245",
- "strength_level": "1",
- "id": "1321",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1244"
- },
- {
- "examine": "Cute. But deadly.",
- "slayer_task": "6",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Bear Cub",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "1326",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Cute. But deadly.",
- "name": "Bear Cub",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1327",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Horned horsey.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "6",
- "respawn_delay": "32",
- "defence_animation": "6375",
- "weakness": "7",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn Foal",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "6",
- "id": "1328",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "Cute but evil.",
- "melee_animation": "6376",
- "range_animation": "0",
- "combat_audio": "496,498,497",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Black unicorn Foal",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "1329",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "Fearsome predator found only in the Fremennik Province",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "combat_audio": "481,491,490",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "69",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "35",
- "id": "1330",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1340",
- "range_animation": "1340",
- "attack_speed": "5",
- "defence_animation": "1341",
- "magic_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "80",
- "id": "1338",
- "clue_level": "1",
- "range_level": "85",
- "projectile": "288",
- "attack_level": "80"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1339",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1340",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1341",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1342",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1343",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1344",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1345",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1346",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1347",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "60",
- "id": "1351",
- "aggressive": "true",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1352",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1354",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems happy to see you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1360",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "401",
- "strength_level": "1",
- "id": "1367",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1368",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Hmm",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishmonger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1369",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "At least he eats his greens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greengrocer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1370",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the throne room.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1374",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's cutting the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1377",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No-one would mistake her for a duchess.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Flower Girl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1378",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Alrik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1381",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He's strong to the finish, because he eats cabbage.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sailor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1385",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Rannveig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1386",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Valgerd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1388",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1389",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Broddi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1390",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1391",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Ragnvald",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "810",
- "strength_level": "1",
- "id": "1392",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Hmm",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishmonger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1393",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "At least he eats his greens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greengrocer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's a lumberjack",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumberjack Leif",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1395",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There's something fishy about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman Frodi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She's looking a bit weedy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gardener Gunnhild",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "5389",
- "name": "Rooster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "5387",
- "strength_level": "1",
- "id": "1403",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5388"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1404",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1419",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official looking Gnome with small beady eyes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "G.L.O. Caranock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1427",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Duke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1442",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Oipuis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1443",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Uyoro",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1444",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1387",
- "death_animation": "1384",
- "name": "Ouhai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1445",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Uodai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1446",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Padulah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "133",
- "strength_level": "1",
- "id": "1447",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge brutish gorilla stands here",
- "slayer_task": "61",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elder Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1461",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Greater Jungle demon. A magical aura emanates from its hide.",
- "range_animation": "0",
- "combat_audio": "400,404,403",
- "attack_speed": "2",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Jungle demon",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "428",
- "strength_level": "50",
- "id": "1472",
- "aggressive": "true",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "melee_animation": "6249",
- "respawn_delay": "60",
- "defence_animation": "6250",
- "death_animation": "6251",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "1473",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a brightly coloured bird of the jungle.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6779",
- "name": "Bird",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1475",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "It's a brightly coloured bird of the jungle. It flies very quickly.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6777",
- "name": "Bird",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1476",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A very dangerous looking spider",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "47",
- "id": "1478",
- "aggressive": "true",
- "range_level": "63",
- "attack_level": "47"
- },
- {
- "name": "Small ninja monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1480",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Medium ninja monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Bearded gorilla",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ancient monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1484",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Small zombie monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Large zombie monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1486",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge nail beast. Its nails appear very sharp.",
- "melee_animation": "5989",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5990",
- "name": "Nail beast",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "550",
- "strength_level": "150",
- "id": "1521",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "He is one",
- "melee_animation": "5970",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5972",
- "name": "Undead Lumberjack",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "73",
- "id": "1524",
- "range_level": "1",
- "attack_level": "73"
- },
- {
- "examine": "His robes prominently display the star of Saradomin.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zealot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1528",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "combat_style": "1",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "combat_style": "1",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1533",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1534",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1535",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "185",
- "respawn_delay": "60",
- "defence_animation": "186",
- "death_animation": "188",
- "name": "Possessed pickaxe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "1536",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A strange disturbance in the air.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Haze",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1537",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Well",
- "slayer_task": "75",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Corpse",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1538",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I don't think the pickaxe is for hitting rocks.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "slayer_exp": "0",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Skeletal miner",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "1539",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5540",
- "respawn_delay": "60",
- "defence_animation": "5541",
- "death_animation": "5542",
- "name": "Treus Dayth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1540",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large boisterous bird",
- "slayer_task": "7",
- "melee_animation": "6761",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "6762",
- "name": "Chompy bird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1550",
- "range_level": "2",
- "attack_level": "1"
- },
- {
- "name": "Mischievous ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "1551",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Arrg",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "1556",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Ug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1557",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not man's best friend.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Ice wolf",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "51",
- "id": "1558",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "51"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1560",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1561",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1562",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1563",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1564",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1565",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1566",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A tall and imposing man who's more than familiar with boating.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cyreg Paddlehorn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Its scales seem to be made of bronze.",
- "slayer_task": "13",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "40",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "125",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Bronze dragon",
- "defence_level": "112",
- "safespot": null,
- "lifepoints": "122",
- "strength_level": "112",
- "id": "1590",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "112"
- },
- {
- "examine": "Its scales seem to be made of iron.",
- "slayer_task": "50",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "45",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "173",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Iron dragon",
- "defence_level": "165",
- "safespot": null,
- "lifepoints": "165",
- "strength_level": "165",
- "id": "1591",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "165"
- },
- {
- "examine": "Its scales seem to be made of steel.",
- "slayer_task": "80",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "45",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "221",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Steel dragon",
- "defence_level": "215",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "215",
- "id": "1592",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "215"
- },
- {
- "examine": "An unsuitable pet.",
- "slayer_task": "27",
- "melee_animation": "6562",
- "range_animation": "6562",
- "magic_level": "20",
- "respawn_delay": "20",
- "defence_animation": "6563",
- "weakness": "7",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Wild dog",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "25",
- "id": "1593",
- "aggressive": "true",
- "bonuses": "10,15,5,10,30,5,30,30,30,10,30,5,40,5,5",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Looks like it's got Rabies!",
- "melee_animation": "6562",
- "range_animation": "6562",
- "magic_level": "20",
- "respawn_delay": "20",
- "defence_animation": "6563",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Wild dog",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "25",
- "id": "1594",
- "aggressive": "true",
- "bonuses": "10,15,5,10,30,5,30,30,30,10,30,5,40,5,5",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1604",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1605",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1606",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1607",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "Flies like a rock.",
- "slayer_task": "84",
- "melee_animation": "1516",
- "range_animation": "1516",
- "attack_speed": "5",
- "defence_animation": "0",
- "weakness": "0",
- "slayer_exp": "105",
- "magic_animation": "1516",
- "death_animation": "1518",
- "name": "Swarming turoth",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "104",
- "id": "1611",
- "clue_level": "2",
- "range_level": "49",
- "attack_level": "45"
- },
- {
- "examine": "A tortured screaming soul.",
- "melee_animation": "9449",
- "range_animation": "1523",
- "attack_speed": "5",
- "defence_animation": "9451",
- "slayer_exp": "22",
- "magic_animation": "1523",
- "death_animation": "9450",
- "name": "Banshee",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "14",
- "id": "1612",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "An evil death spawn.",
- "melee_animation": "1540",
- "range_animation": "1540",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "1540",
- "death_animation": "9460",
- "name": "Death spawn",
- "defence_level": "30",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "7",
- "id": "1614",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,20,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "67"
- },
- {
- "examine": "The eyes of evil.",
- "melee_animation": "260",
- "range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
- "defence_animation": "261",
- "slayer_exp": "75",
- "magic_animation": "260",
- "death_animation": "264",
- "name": "Basilisk",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "80",
- "id": "1616",
- "range_level": "75",
- "attack_level": "80"
- },
- {
- "examine": "The eyes of evil.",
- "melee_animation": "260",
- "range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
- "defence_animation": "261",
- "slayer_exp": "75",
- "magic_animation": "260",
- "death_animation": "264",
- "name": "Basilisk",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "80",
- "id": "1617",
- "range_level": "75",
- "attack_level": "80"
- },
- {
- "examine": "The cave-dwelling cousin of the dust devils.",
- "slayer_task": "28",
- "melee_animation": "1557",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "1558",
- "name": "Smokedevil",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "105",
- "id": "1625",
- "range_level": "61",
- "attack_level": "105"
- },
- {
- "examine": "He's in charge of the Skullball Course.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skullball Boss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1660",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's in charge of the Agility Course.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Boss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1661",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A skullball guide.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skullball Trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1662",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A werewolf agility trainer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1663",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's guarding a trapdoor...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1665",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader from across the eastern sea.",
- "start_gfx": "0",
- "start_height": "0",
- "melee_animation": "386",
- "range_animation": "0",
- "magic_level": "1",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ak-Haranu",
- "defence_level": "1",
- "movement_radius": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1688",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An extremely vicious lobster.",
- "slayer_task": "71",
- "melee_animation": "6265",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6267",
- "name": "Giant lobster",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "30",
- "id": "1693",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An old",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Old crone",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1695",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A creaky old man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Old man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1696",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This poor soul cannot understand why it has not passed to the next world.",
- "slayer_task": "36",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "slayer_exp": "51",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tortured soul",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "62",
- "id": "1698",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1710",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1711",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1712",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A deacon in the Humans Against Monsters group. A rather enthusiastic chap.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Deacon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1713",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1714",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1715",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1716",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1717",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A young man with a dark and mysterious past.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy the Chisel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Sigmund's elite guards.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yew",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Sigmund's elite guards.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1742",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1743",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1744",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dead tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Achey Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1746",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1748",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "1751",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
- },
- {
- "examine": "These gnomes know how to get around!",
- "slayer_task": "7",
- "melee_animation": "6790",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6791",
- "name": "Mounted terrorbird gnome",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "33",
- "id": "1752",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "A farmer's enemy.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1757",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1758",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Farming.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1759",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7185",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1760",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Farming the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1761",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1763",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "1",
- "id": "1766",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Where beef comes from.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1767",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "1",
- "id": "1768",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1769",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1770",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1771",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1772",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1773",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1774",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1775",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1776",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks quite independent in an aggressive and business like way.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hammerspike Stoutbeard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1795",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1796",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1797",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "melee_animation": "1750",
- "respawn_delay": "60",
- "defence_animation": "1751",
- "death_animation": "1752",
- "name": "Slagilith",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "1802",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pile of boulders.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rock pile",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1803",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be guarding a pile of rocks. Interesting job.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1805",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be guarding a single rock. Interesting job.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1806",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Chieftain of the mountain camp.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hamal the Chieftain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is that a bear... or a man?",
- "melee_animation": "1760",
- "range_animation": "0",
- "magic_level": "23",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "1759",
- "name": "The Kendal",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "23",
- "id": "1812",
- "aggressive": "true",
- "range_level": "23",
- "attack_level": "23"
- },
- {
- "melee_animation": "1760",
- "respawn_delay": "60",
- "defence_animation": "1758",
- "death_animation": "1759",
- "name": "The Kendal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1813",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1814",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1815",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1816",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1817",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1818",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "Looks a little underfed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1819",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1822",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1823",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1824",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It didn't get that big eating flies!",
- "melee_animation": "1793",
- "range_animation": "1793",
- "attack_speed": "6",
- "defence_animation": "1794",
- "weakness": "1",
- "magic_animation": "1793",
- "death_animation": "1795",
- "name": "Giant frog",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "45",
- "id": "1828",
- "bonuses": "10,10,10,10,10,10,1,10,10,10,10,37,0,0,0",
- "range_level": "32",
- "attack_level": "45"
- },
- {
- "examine": "It didn't get that big eating flies.",
- "melee_animation": "1793",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "1795",
- "name": "Big frog",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "1",
- "id": "1829",
- "range_level": "26",
- "attack_level": "1"
- },
- {
- "examine": "A foul-smelling blob of protoplasm.",
- "slayer_task": "18",
- "melee_animation": "1789",
- "range_animation": "0",
- "attack_speed": "5",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "1792",
- "name": "Cave slime",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
- "id": "1831",
- "clue_level": "0",
- "range_level": "19",
- "attack_level": "1"
- },
- {
- "examine": "A nasty crawling critter.",
- "slayer_task": "15",
- "melee_animation": "6079",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "5",
- "magic_animation": "0",
- "death_animation": "6082",
- "name": "Cave bug",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1832",
- "range_level": "6",
- "attack_level": "1"
- },
- {
- "examine": "A little",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave bug larva",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an odd smell about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Candle seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1834",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short angry guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1840",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The little guy is having trouble standing up right.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khorvak, a dwarven engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1842",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's probably you who will be paying the ferryman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Ferryman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1843",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's probably you who will be paying the ferryman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Ferryman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1844",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It is the avatar of the Arzinian Being of Bordanzan",
- "melee_animation": "1840",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "1841",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "40",
- "id": "1850",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "1851",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1852",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It is the avatar of the Arzinian Being of Bordanzan",
- "melee_animation": "1843",
- "range_animation": "1843",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "1841",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "30",
- "id": "1853",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "1854",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1855",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's the Arzinian Being",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Arzinian Being of Bordanzan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1859",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells ranging equipment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nemarti looks ready to teach you about ranged combat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ranged Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1861",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drunk man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Drunken Ali",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hassled looking barman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali The barman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1864",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A kebab seller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Kebab seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1865",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mischievous looking child.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Street urchin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1868",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old Hag named Alice.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Hag",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1871",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A foul tempered ugly lumpy yellow horse prone to spitting.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Desert snake",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "4",
- "id": "1874",
- "range_level": "6",
- "attack_level": "4"
- },
- {
- "examine": "A very tough-looking bandit.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Bandit champion",
- "defence_level": "39",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "39",
- "id": "1885",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "examine": "Probably the weakest bandit in the world ....ever.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cowardly Bandit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1886",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smooth operator.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Operator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tough looking Menaphite.",
- "melee_animation": "395",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tough Guy",
- "defence_level": "39",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "39",
- "id": "1906",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "examine": "Definitely not a chicken.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Desert Phoenix",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1911",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "412",
- "death_animation": "9055",
- "name": "Kamil",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "55",
- "id": "1913",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Dessous",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "1914",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Dessous",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "1915",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I guess he sells what he steals...?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bandit shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hardened by the cutthroat world of archaeology.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archaeologist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1918",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very mysterious looking...",
- "melee_animation": "377",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Stranger",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "58",
- "id": "1919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "Looks like a rough-and-ready type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1921",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "412",
- "death_animation": "9055",
- "name": "Bandit",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "70",
- "id": "1926",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "This is an NPC.",
- "melee_animation": "412",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "100",
- "defence_animation": "404",
- "magic_animation": "0",
- "death_animation": "9055",
- "name": "Bandit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "1931",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ice troll.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ice troll",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1935",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1936",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1937",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1938",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1939",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1940",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1941",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1942",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1951",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1952",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1953",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1954",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1955",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1956",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Highly flammable!",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1958",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A tightly-wrapped monster.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1961",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Spooky",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1962",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A victim of poor first aid.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1963",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "But who's the daddy?",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1964",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A tightly-wrapped monster.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1965",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A victim of poor first aid.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1967",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "I think they're some kind of beetle...",
- "slayer_task": "70",
- "melee_animation": "1948",
- "range_animation": "0",
- "poisonous": "true",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "1946",
- "name": "Scarabs",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "62",
- "id": "1969",
- "range_level": "1",
- "attack_level": "62"
- },
- {
- "examine": "A wandering merchant.",
- "name": "Rasolo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1972",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant skeleton.",
- "slayer_task": "75",
- "melee_animation": "5499",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1973",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "melee_animation": "799",
- "respawn_delay": "60",
- "defence_animation": "434",
- "death_animation": "836",
- "name": "Fareed",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1977",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A malnourished worker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1978",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A malnourished worker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A strange-smelling merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Embalmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A block of a man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Carpenter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Preach my brother!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1988",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a dangerous glint in his eye.",
- "combat_style": "2",
- "melee_animation": "429",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Possessed Priest",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "30",
- "id": "1991",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "examine": "He has had his day.",
- "slayer_task": "27",
- "melee_animation": "6568",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6567",
- "name": "Jackal",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "35",
- "id": "1994",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Obnoxious",
- "melee_animation": "2015",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "2013",
- "name": "Locust",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "12",
- "id": "1995",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "A very smelly frog.",
- "melee_animation": "1021",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1022",
- "name": "Plague frog",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "1997",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "I might give the burgers a miss in this town.",
- "slayer_task": "20",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Plague cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I don't fancy eating any part of this.",
- "slayer_task": "20",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Plague cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1999",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think they're some kind of beetle.",
- "slayer_task": "70",
- "melee_animation": "1948",
- "range_animation": "0",
- "attack_speed": "2",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1946",
- "name": "Scarab swarm",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "900",
- "strength_level": "9",
- "id": "2001",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "This mummy looks like it means business!",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2015",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An irate warrior-mummy.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2016",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "This mummy looks like it means business!",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2017",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An irate mummy.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2018",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A wizened old warrior.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2019",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A shimmering creature of blue light.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Light creature",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think I should keep my distance...",
- "melee_animation": "2070",
- "range_animation": "2070",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "26",
- "defence_animation": "2072",
- "weakness": "6",
- "magic_animation": "2070",
- "death_animation": "2073",
- "name": "Bloodworm",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "20",
- "id": "2031",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A nasty little rodent.",
- "slayer_task": "67",
- "melee_animation": "240",
- "range_animation": "240",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "20",
- "defence_animation": "241",
- "weakness": "9",
- "magic_animation": "240",
- "death_animation": "243",
- "name": "Crypt rat",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "20",
- "id": "2032",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "2033",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Incey wincey.",
- "slayer_task": "76",
- "melee_animation": "6249",
- "range_animation": "6249",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "6250",
- "weakness": "7",
- "magic_animation": "6249",
- "death_animation": "6251",
- "name": "Crypt spider",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "47",
- "id": "2034",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,10,17,20,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Not very incey wincey.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "35",
- "defence_animation": "5328",
- "weakness": "7",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant crypt spider",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "67",
- "id": "2035",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2050",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2056",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2057",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What could be hiding in that crack in the wall?",
- "slayer_task": "87",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "30",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hole in the wall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "2058",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Slash Bash",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "103",
- "strength_level": "1",
- "id": "2060",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2069",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2070",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2071",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2072",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He protects the miners.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin guard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "2073",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "He protects the miners.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin guard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "2074",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2076",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2077",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2078",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Advisor to the Duke of Lumbridge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigmund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2082",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2091",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Purple Pewter Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2092",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yellow Fortune Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2093",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blue Opal Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2094",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Green Gemstone Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2095",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "White Chisel Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2096",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver Cog Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2097",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brown Engine Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Purple Pewter Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blue Opal Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2101",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yellow Fortune Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2102",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Green Gemstone Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2103",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "White Chisel Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2104",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver Cog Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2105",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brown Engine Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2106",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2109",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2110",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2111",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2112",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2113",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2114",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2118",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2119",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He is regulating the flow of goods on the trade floor and maintaining order.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trade Referee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2127",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2130",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2131",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2132",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "slayer_exp": "16",
- "name": "Black Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2133",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2134",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2135",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2136",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A gnome traveller, visiting Keldagrim.",
- "name": "Gnome traveller",
- "defence_level": "1",
- "force_talk": "Buying low-level skilling items!",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2138",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very protective of his master... and his property.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dromund's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rather personable banker lady.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2163",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rather serious old fella.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2164",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He takes care of the library and its many books.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Librarian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2165",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A customer looking for books.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a human traveler visiting the library.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tends to the plants in the palace garden.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rind the gardener",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2170",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2174",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2175",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These Dwarf ladies are so attractive!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barmaid",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2178",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2180",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2181",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2182",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2183",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2184",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Remember: don't drink and ride in mine carts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the line clear of traffic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2186",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A loud",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rowdy dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "You cannot see his ship",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Boatman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2205",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He carries a heavy load.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A local farmer. He may be able to provide some useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2237",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2240",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2241",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porcine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2242",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He provides new players with useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2244",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of General Khazard's warriors.",
- "melee_animation": "429",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard trooper",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "2246",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "An initiate of Zamorak.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dark mage",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eyes in the back of its head...",
- "melee_animation": "2186",
- "range_animation": "2186",
- "attack_speed": "6",
- "magic_level": "57",
- "defence_animation": "2188",
- "weakness": "3",
- "slayer_exp": "0",
- "magic_animation": "2186",
- "death_animation": "2189",
- "name": "Abyssal guardian",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "96",
- "id": "2264",
- "aggressive": "true",
- "range_level": "135",
- "attack_level": "65"
- },
- {
- "examine": "A snowman armed with a holly bow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rogue Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2269",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with an ice sword.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Emerald Benedict",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2271",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with a winter staff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spin Blades",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2272",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2274",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2275",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2276",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2277",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2278",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2279",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2280",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2281",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An observer for the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Cheevers",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An observer for the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ms. Hynn Terprett",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A carpet merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2291",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A carpet merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2292",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man who deals in rugs.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2293",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man who deals in rugs.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "2",
- "id": "2310",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "He rules the",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rooster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2312",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Swine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2317",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hog.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2318",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porcine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2319",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a certain bovine aroma.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2320",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this farmer might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vasquen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2333",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Taria",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2336",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fayeth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2342",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "120",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "71",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "68"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "70",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "68"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Rimmington.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Rimmington.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Anja",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2684",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2685",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2686",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2687",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2688",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3070",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3071",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "3072",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "3073",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3074",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3079",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3080",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3089",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mighty warrior",
- "melee_animation": "7048",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
- "id": "3090",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3091",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The book moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Flying Book",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3094",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Entrance Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3097",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Telekinetic Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alchemy Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3099",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchantment Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Graveyard Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3101",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rewards Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3103",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3104",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3105",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3106",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This guard looks rather drunk and has beer stains down his armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3109",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Balloon Animal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I saw the witchdoctor",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Balloon Animal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's seen the inside of a few tombs.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Simon Templeton",
- "defence_level": "1",
- "safespot": "0",
- "lifepoints": "12",
- "strength_level": "1",
- "id": "3123",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to be blocked.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Furnace grate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "3135",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3150",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of bugs.",
- "slayer_task": "42",
- "combat_style": "1",
- "melee_animation": "1584",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "1585",
- "name": "Harpie Bug Swarm",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3153",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "Bill Teach the pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bill Teach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3155",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3170",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3171",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3174",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3175",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3176",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3177",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3178",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3179",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3180",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3181",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3182",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3183",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3184",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3186",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "3187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3188",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3189",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3190",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3191",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3192",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3193",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3194",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3195",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "melee_animation": "400",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "3196",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3198",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3199",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "51",
- "name": "Killerwatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "attack_speed": "3",
- "id": "3201",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "slayer_exp": "51",
- "name": "Killerwatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "attack_speed": "3",
- "id": "3202",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A very small storm!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Storm Cloud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3203",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very small storm!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Storm Cloud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mourner",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3219",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "3220",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3221",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "386",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "3228",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "2075",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3229",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "395",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "3230",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3231",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for threats to the city.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3232",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for threats to the city.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3233",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "An old gardener.",
- "melee_animation": "433",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gardener",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "3234",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "He's learning a trade.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apprentice workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3235",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A busy workman",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3236",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Cuffs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3237",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Rusty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3239",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Jeff",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3240",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3241",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "3242",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "27",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "1",
- "id": "3243",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "16",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3244",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "16",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3245",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3264",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3265",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3266",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "470,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3267",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3268",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3269",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3270",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3271",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3272",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3273",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3274",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3275",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3276",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3277",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3278",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "slayer_exp": "16",
- "name": "Black Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3279",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks busy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Engineering assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3280",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's building a cannon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3282",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bushy tail!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squirrel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3283",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3286",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3293",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3295",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A graceful bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swan",
- "defence_level": "1",
- "safespot": null,
- "water_npc": true,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3296",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps this magic area tidy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sweeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3298",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm gonna make him an offer he can't refuse.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Godfather",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3304",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Guardian of the market gate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gatekeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3307",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "3309",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Tanglefoot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "102",
- "strength_level": "1",
- "id": "3313",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An animated shrub.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "name": "Baby tanglefoot",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "1",
- "id": "3319",
- "range_level": "41",
- "attack_level": "1"
- },
- {
- "examine": "An aggressive bush.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "name": "Baby tanglefoot",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "1",
- "id": "3320",
- "range_level": "41",
- "attack_level": "1"
- },
- {
- "examine": "Rather more tired than most.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jeremy Clerksin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3327",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks a little green around the gills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barfy Bill",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3331",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's made of pure fire.",
- "attack_speed": "6",
- "magic_level": "300",
- "respawn_delay": "25",
- "name": "Cavemouth",
- "defence_level": "500",
- "safespot": null,
- "lifepoints": "1000",
- "strength_level": "1500",
- "id": "3334",
- "aggressive": "true",
- "bonuses": "126,98,86,297,311,304,319,13,284,30,0,0,0,0,0",
- "range_level": "300",
- "attack_level": "200"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3348",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3349",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3350",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to like wearing black.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Dave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3378",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Vermin from the underworld.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hell-Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3382",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3389",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks short and grumpy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3390",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Wartface",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3391",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Bentnoze",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3392",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He provides new players with useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3393",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to like wearing black.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Dave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rutmir's assistant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3404",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A small ice demon.",
- "slayer_task": "46",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Icefiend",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "3406",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3407",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "583",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7213",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3408",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3409",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3410",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3411",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3412",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "More like a goblin cooked.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3414",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3416",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3418",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3419",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a highly amusing hat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mogre Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3420",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice claw!",
- "melee_animation": "3428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3430",
- "name": "Crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "3421",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Not the most beautiful fish in the sea.",
- "melee_animation": "3433",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "3422",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "melee_animation": "3433",
- "strength_level": "1",
- "id": "3423",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3434"
- },
- {
- "death_animation": "3430",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "18",
- "melee_animation": "3428",
- "strength_level": "1",
- "id": "3424",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3429"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3425",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3426",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3427",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3431",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3432",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3433",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3434",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3435",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3436",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3437",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3438",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3444",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3445",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3449",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3450",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3451",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skrach Uglogwee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3463",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large boisterous bird",
- "slayer_task": "7",
- "melee_animation": "6800",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6801",
- "name": "Jubbly bird",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "6",
- "id": "3476",
- "aggressive": "true",
- "range_level": "8",
- "attack_level": "6"
- },
- {
- "name": "King Awowogei",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "328",
- "strength_level": "1",
- "id": "3478",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Culinaromancer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "140",
- "strength_level": "1",
- "id": "3491",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "melee_animation": "3501",
- "respawn_delay": "60",
- "defence_animation": "3500",
- "death_animation": "3503",
- "name": "Agrith-Na-Na",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3493",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1750",
- "respawn_delay": "60",
- "defence_animation": "1751",
- "death_animation": "1752",
- "name": "Flambeed",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "1",
- "id": "3494",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Karamel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3495",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "3507",
- "respawn_delay": "60",
- "defence_animation": "3505",
- "death_animation": "3510",
- "name": "Dessourt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "140",
- "strength_level": "1",
- "id": "3496",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Deadly AND fruity!",
- "melee_animation": "1341",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "139",
- "strength_level": "48",
- "id": "3497",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3498",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3500",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Chronicler and regaler of your piratical exploits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3509",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "5783",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3521",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3522",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3523",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3524",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3525",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Vampyre Juvinate",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "3526",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A Juvinate vampyre",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Held Vampyre Juvinate",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3527",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "He looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3531",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "She looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3532",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "6276",
- "strength_level": "1",
- "id": "3533",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "He looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3534",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Juvinate",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "3577",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "Is it a sheep?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "49",
- "name": "Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "1",
- "id": "3583",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No spider could grow that big! It's unrealistic!",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Huge spider",
- "defence_level": "72",
- "safespot": null,
- "lifepoints": "122",
- "strength_level": "1",
- "id": "3585",
- "aggressive": "true",
- "range_level": "72",
- "attack_level": "1"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "27",
- "respawn_delay": "25",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Rantz",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "27",
- "id": "3587",
- "aggressive": "true",
- "bonuses": "15,15,10,20,40,15,50,50,50,20,50,58,0,0,0",
- "range_level": "27",
- "attack_level": "27"
- },
- {
- "examine": "Its scales seem to be made of steel.",
- "combat_audio": "408,410,409",
- "magic_level": "72",
- "respawn_delay": "35",
- "weakness": "8",
- "slayer_exp": "221",
- "name": "Steel dragon",
- "defence_level": "238",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "229",
- "id": "3590",
- "aggressive": "true",
- "bonuses": "56,42,104,51,212,115,232,302,331,21,264,100,100,40,0",
- "clue_level": "2",
- "range_level": "185",
- "attack_level": "234"
- },
- {
- "examine": "Arrgh! Look at its pointy teeth!",
- "range_animation": "0",
- "combat_audio": "400,404,403",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Demon",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "107",
- "strength_level": "75",
- "id": "3593",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "weakness": "0",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3599",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "45",
- "attack_level": "35"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "50",
- "id": "3600",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "slayer_task": "86",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "weakness": "7",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3601",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3602",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3603",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3604",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3605",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm glad I can't see the rest of it!",
- "melee_animation": "3618",
- "range_animation": "3618",
- "magic_level": "80",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3620",
- "name": "Tentacle",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "80",
- "id": "3618",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I'm glad I can't see the rest of it!",
- "melee_animation": "3731",
- "range_animation": "0",
- "attack_speed": "10",
- "magic_level": "80",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3733",
- "name": "Head",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "85",
- "id": "3619",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "85"
- },
- {
- "melee_animation": "3731",
- "attack_speed": "10",
- "respawn_delay": "60",
- "defence_animation": "3732",
- "death_animation": "3733",
- "name": "Head",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "id": "3620",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "3622",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A high-ranking Vyrewatch",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fyiona Fray",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little on the cross side!",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Angry bear",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3645",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "6376",
- "range_animation": "0",
- "combat_audio": "496,498,497",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Angry unicorn",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3646",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Angry giant rat",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3647",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "6185",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Angry goblin",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3648",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "AHHHHH!",
- "melee_animation": "3812",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3813",
- "name": "Fear reaper",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
- "id": "3649",
- "range_level": "1",
- "attack_level": "27"
- },
- {
- "examine": "What on RuneScape is that?!?",
- "melee_animation": "3818",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3821",
- "name": "Confusion beast",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3650",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A hopeless poor creature.",
- "melee_animation": "3823",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3827",
- "name": "Hopeless creature",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3655",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Freshly sheared.",
- "melee_animation": "5341",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "3672",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "3673",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "A young boy handing out flyers.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Leaflet Dropper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3680",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ulfric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "6118",
- "strength_level": "1",
- "id": "3706",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Eww",
- "slayer_task": "67",
- "melee_animation": "6117",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "50",
- "magic_animation": "0",
- "death_animation": "6115",
- "name": "Brine rat",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "3707",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A Wilderness fighter of massive repute.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3709",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3715",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3726",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cheerful, helpful and optimistic, I'll bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doomsayer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3777",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "attack_speed": "5",
- "magic_level": "80",
- "respawn_delay": "120",
- "name": "Void Knight",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3782",
- "bonuses": "180,180,180,180,80,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Long legged licker.",
- "melee_animation": "7260",
- "range_animation": "0",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7256",
- "name": "Frog",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3783",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "attack_speed": "0",
- "id": "3784",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "attack_speed": "5",
- "magic_level": "80",
- "respawn_delay": "120",
- "name": "Void Knight",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3785",
- "bonuses": "180,180,180,180,80,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3788",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3791",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3793",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3795",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3796",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3797",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3798",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3799",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3800",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3801",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Novice)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Posts things.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Postie Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3805",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Miss Millicent Miller the Miller of Mill Lane Mill.",
- "name": "Millie Miller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3806",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Gillie the Milkmaid milks cows. She's udderly fantastic at it.",
- "name": "Gillie Groats",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tally Ho!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Dalbur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Huzzah!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Bleemadge",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Up up and away!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Errdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Up up and away!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Klemfoodle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Gnome Arrow-chucker",
- "combat_style": "1",
- "melee_animation": "190",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome Archer",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "1",
- "id": "3814",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "1"
- },
- {
- "examine": "Yee haa!",
- "melee_animation": "3969",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome Driver",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "3815",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The cruel tortoise trainer. Boo!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trainer Nacklepen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large tortoise.",
- "melee_animation": "3960",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "3962",
- "name": "Tortoise",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "3819",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An aquatic troll.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sea troll",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "3840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An aquatic troll.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sea troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "3843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "The mother of all sea trolls!",
- "melee_animation": "3991",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "3993",
- "name": "Sea Troll Queen",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "428",
- "strength_level": "65",
- "id": "3847",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "His bark's worse than his blight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Carpenter Kjallak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3916",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit seedy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer Fromund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3941",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the entrance to the dungeons.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3942",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "75",
- "name": "Basilisk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Demon butler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "400,404,403",
- "strength_level": "1",
- "id": "4243",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Head of the servants' guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chief servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4245",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She smells unpleasantly of chemicals.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Taxidermist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4246",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fancy businessman with a mighty fine hat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Estate agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4247",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Someone has to get rid of all the stone they dug Keldagrim out of.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stonemason",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4248",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He changes the shape of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "facing_booth": "true",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sawmill operator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4250",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She has green fingers. (Not literally.)",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Garden supplier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4257",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Guard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "4258",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4259",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4260",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4261",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4262",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4263",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4264",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4265",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4266",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4267",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4268",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4269",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4270",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4271",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4272",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4273",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4274",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4275",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4276",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Animated bronze armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Bronze Armour",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "4278",
- "bonuses": "3,3,3,3,1,3,1,3,3,3,3,8,10,8,3",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Animated iron armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Iron Armour",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "16",
- "id": "4279",
- "bonuses": "6,6,6,6,2,6,6,6,6,6,6,2,25,2,3",
- "range_level": "1",
- "attack_level": "16"
- },
- {
- "examine": "Animated steel armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Steel Armour",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "32",
- "id": "4280",
- "bonuses": "10,10,10,10,4,10,10,10,10,10,10,2,22,2,3",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Animated black armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Black Armour",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "40",
- "id": "4281",
- "bonuses": "15,15,15,15,5,15,6,15,15,16,15,5,27,5,3",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Animated mithril armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Mithril Armour",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "55",
- "id": "4282",
- "bonuses": "20,20,20,20,20,20,8,20,20,20,20,5,31,5,3",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Animated adamant armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Adamant Armour",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "99",
- "strength_level": "65",
- "id": "4283",
- "bonuses": "25,25,25,25,25,25,12,25,25,25,25,5,35,5,3",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Animated rune armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Rune Armour",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "118",
- "strength_level": "75",
- "id": "4284",
- "bonuses": "30,30,30,30,30,30,16,30,25,30,30,5,39,5,3",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "4291",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "4292",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "He looks fair and reliable.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ref",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4300",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4301",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4302",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4303",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4304",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4305",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4306",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4307",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4308",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4309",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4310",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4311",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4318",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4320",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Deacon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4329",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4336",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's all white by me.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4917",
- "name": "Albino bat",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "4345",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "examine": "A flying blood sucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "attack_speed": "10",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Giant mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "4347",
- "range_level": "1",
- "attack_level": "63"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4353",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4354",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4355",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4356",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4357",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Patchy the pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Patchy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4359",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very flamboyant pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fancy Dan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4361",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I can't wait to buy from a guy with Honest in his name...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Honest Jimmy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4362",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A colourful bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Parrot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4373",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A retired RuneScape security guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Security Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4375",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "69",
- "id": "4381",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "69",
- "id": "4382",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "74",
- "id": "4383",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "weakness": "9",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4395",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "4396",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "38",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "38",
- "id": "4397",
- "aggressive": "true",
- "bonuses": "5,20,15,3,10,20,10,10,20,15,23,25,15,25,10",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "38",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "38",
- "id": "4398",
- "aggressive": "true",
- "bonuses": "20,25,10,20,25,10,10,11,0,0,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "45",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "58",
- "id": "4399",
- "aggressive": "true",
- "bonuses": "50,45,50,40,45,20,30,25,33,25,25,20,20,40,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "defence_animation": "5328",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "45",
- "id": "4400",
- "aggressive": "true",
- "bonuses": "19,21,19,62,45,51,54,63,60,18,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "melee_animation": "6249",
- "respawn_delay": "60",
- "defence_animation": "6250",
- "death_animation": "6251",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4401",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "slayer_task": "58",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "weakness": "7",
- "slayer_exp": "10",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "10",
- "id": "4404",
- "bonuses": "8,8,10,8,8,10,8,8,8,10,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "4405",
- "bonuses": "11,11,13,11,11,13,11,11,11,13,11,11,11,11,11",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "slayer_exp": "22",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "4406",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4407",
- "bonuses": "3,3,3,3,3,3,3,3,3,3,3,3,3,3,3",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "16",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4408",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "7",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4409",
- "bonuses": "6,6,6,6,6,6,6,6,6,6,6,6,6,6,6",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4410",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4411",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4412",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4300",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4301",
- "slayer_exp": "112",
- "death_animation": "4302",
- "name": "Gorak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "1",
- "id": "4418",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A highly enlightened being.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cosmic Being",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4419",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Horseplay.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Centaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4438",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A noble creature!",
- "melee_animation": "6376",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Stag",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "4440",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Twiggy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wood Dryad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4441",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fairy ring maintenance division.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Fixit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4455",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4457",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4458",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4459",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "9",
- "id": "4470",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Who's your mummy?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guardian mummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4476",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4479",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4480",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4481",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4482",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4483",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4484",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4485",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4486",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4487",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4488",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4489",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4490",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4491",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4492",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Wartface",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4494",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4499",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Does she really exist?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Lady",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4502",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He reminds me of my old mathematics teacher.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Numerator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4503",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The master of accomplishment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4504",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He knows what is possible.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Perceptive",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4505",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Luck is probably on his side.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Fluke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's like looking in the mirror.",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Me",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "4509",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "It's like looking in the mirror.",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Me",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "4510",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Spiritual leader of the Moonclan.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Oneiromancer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4511",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The craziest house I ever did see!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "House",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How does it see where to sweep?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchanted Broom",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm not sure if it's actually doing anything of use.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchanted Bucket",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4527",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4528",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4529",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4385",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4530",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4385",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4531",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4532",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4533",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I always wondered what that job description actually meant...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cabin boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4539",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The High Priest has been transformed into an avatar of Bandos.",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Bentley",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "214",
- "strength_level": "55",
- "id": "4540",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "A stickler for hygiene in the kitchen.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Beefy' Burns",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4541",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A keen-eyed lookout with a telescope.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Eagle-eye' Shultz",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4542",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "First mate to Captain Bentley.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "First mate 'Davey-boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4543",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pirate through and through.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Picarron' Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4545",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Jake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "4546",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He got his name from his favourite hobby. Reading about beds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedread the bold",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4547",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Wilson",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "4548",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Nobody really knows why he's called Tommy 2-times...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tommy 2-times",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Don't look him straight in the eyes. He'll eat you alive!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Murky Pat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4550",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice beard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Sails",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4551",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is he looking at me?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Beedy-eye' Jones",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4554",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Yes",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jenny Blade",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4555",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A low-down",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Lecherous' Lee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4556",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Apparently his nickname comes from his fondness for jam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Sticky' Sanders",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4557",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4564",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4565",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4566",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Must be hard at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Researcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4568",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes pots.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Generic Diplomat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's very diplomatic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Gimblewap",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4580",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Peaceful man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Spanfipple",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4581",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Peaceful man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Ferrnook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorrn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4589",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common woman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mimm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4590",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portobello",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4593",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome pilot off duty",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Ninto",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4594",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome pilot off duty",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Daerkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4595",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks alert and ready for action.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard Vemmeldo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4600",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4603",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4604",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4605",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4606",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A witch's black cat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black Cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4607",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4608",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Swine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Saboteur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4611",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4633",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4634",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4635",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4636",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4637",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4638",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4639",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4640",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4642",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works evil magic.",
- "start_gfx": "93",
- "combat_style": "2",
- "melee_animation": "810",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "6",
- "end_gfx": "95",
- "respawn_delay": "60",
- "defence_animation": "425",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "2",
- "id": "4659",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "94",
- "attack_level": "5"
- },
- {
- "examine": "He works evil magic.",
- "start_gfx": "96",
- "combat_style": "2",
- "melee_animation": "810",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "22",
- "end_gfx": "98",
- "respawn_delay": "60",
- "defence_animation": "425",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
- "id": "4660",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "17"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "magic_level": "15",
- "respawn_delay": "20",
- "defence_animation": "404",
- "magic_animation": "711",
- "death_animation": "9055",
- "name": "Dark wizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "4661",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "98",
- "attack_level": "1"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4685",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4686",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4687",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A flea-infested black market trader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader Sven",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4716",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flea-infested",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4717",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flea-infested",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4719",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4720",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4721",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4722",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4723",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4724",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4725",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4726",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cowardly mage.",
- "magic_level": "90",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4733",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4734",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4735",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4736",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4737",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4738",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4746",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4748",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4749",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4750",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4751",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4752",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4753",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4755",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4756",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4757",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4759",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Some rubbish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4765",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like it's got fleas!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stray dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4766",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A smelly cat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4768",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre; a guard for the mining area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Juvinate guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4772",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre; a guard for the mining area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Juvinate guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4773",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4774",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4775",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre; seems to be a servant.",
- "melee_animation": "5783",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4776",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "5783",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4777",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4778",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4779",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre; seems to be a servant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Held vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4780",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "An enraged vampyre!",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Angry vampyre",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "4789",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "name": "Vanstrom Klause",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "155",
- "strength_level": "1",
- "id": "4793",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Not as strong as Thok.",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Vanstrom Klause",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "90",
- "id": "4796",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "90"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4805",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4806",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4807",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4808",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4810",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4811",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4812",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4813",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4814",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4815",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4816",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4817",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4818",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4819",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4820",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4821",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4822",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4823",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4824",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4825",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4826",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4828",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4829",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4830",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4831",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4832",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4833",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4834",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4835",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4836",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4837",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4838",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4839",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4840",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4841",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4842",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4843",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4844",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Flying female vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4847",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Flying female vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4848",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4849",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4850",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4851",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4852",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Her knives tickle Thok.",
- "magic_animation": "0",
- "name": "Holgart",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4868",
- "aggressive": "true",
- "range_level": "90",
- "attack_level": "1",
- "defence_animation": "0"
- },
- {
- "examine": "Not Thok's pretty lass.",
- "magic_level": "90",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Fisherman",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4870",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of aquatic evil.",
- "melee_animation": "4829",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4830",
- "name": "Slug Prince",
- "defence_level": "37",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "37",
- "id": "4890",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "37"
- },
- {
- "examine": "An extremely vicious lobster.",
- "slayer_task": "71",
- "melee_animation": "6265",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6267",
- "name": "Giant Lobster",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "29",
- "id": "4893",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "29"
- },
- {
- "examine": "A rather nasty looking crustacean.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sea slug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4894",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "1",
- "id": "4898",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cordero looks ready to teach you how to cook.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cooking Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4899",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cadmus, looking a little bit crafty.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crafting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4900",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Finlay, mending a crayfish cage.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishing Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4901",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Monlum, surveying the rocks.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mining Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Feoras looks a bit fiery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Wilfred, a chip off the old block.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Woodcutting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4906",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Barb, ready to teach you about banking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4907",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His motives are see-through.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fritz the Glassblower",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4909",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An elemental rock.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elemental rock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4911",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "4920",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "4921",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4922",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4923",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4924",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4925",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "4926",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "4927",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "4928",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "4929",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4930",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4931",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Billy Goat",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "4932",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "21",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4933",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "21",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4934",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "death_animation": "5343",
- "name": "Billy Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "28",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4935",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "4936",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "4937",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "4938",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "4939",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little on the cross side!",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Angry giant rat",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4940",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Blessed giant rat",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "4941",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "4942",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "4943",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4944",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "weakness": "9",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4945",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "Trollish.",
- "slayer_task": "83",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "My Arm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old sailor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Barnaby",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4962",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a leprechaun sunbathing on a mountain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool Leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4965",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mountain-dwelling bird. Cute",
- "slayer_task": "7",
- "melee_animation": "5031",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5033",
- "name": "Baby Roc",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "40",
- "id": "4971",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A very",
- "slayer_task": "7",
- "melee_animation": "5024",
- "range_animation": "5025",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5027",
- "name": "Giant Roc",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "55",
- "id": "4972",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "She looks like she's been down here a long time.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Female slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4977",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4989",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4990",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4991",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4992",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4993",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4994",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4995",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4996",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4997",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4998",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4999",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5000",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5001",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5002",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An apprentice.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5026",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tired old wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5027",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An egg launcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5028",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slightly more approachable barbarian.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Commander Connad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5029",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks pretty mean.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Cain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A stressed out barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Paldo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5031",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Pendron",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5032",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Pierreb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5033",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Paldon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5034",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's keeping a close eye on that nearby door.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Sambur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5039",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What on RuneScape is that?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Fighter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5040",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Shooty-shooty.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5041",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's making a run for it!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Runner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5042",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A nasty piece of work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Healer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5043",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not as strong as Thok.",
- "melee_animation": "401",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jeff",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5048",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Time to run away...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shark",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5067",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It blends in very well with its surroundings.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tropical wagtail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5072",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This bird obviously doesn't believe in subtlety.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crimson swift",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5073",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Best served ice cold.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cerulean twitch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5074",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Actually",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden warbler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nothing much to get in a flap about.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Copper longtail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5076",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Chinchompa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "5079",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It looks fluffy and cute; it's probably deadly.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "2",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5183",
- "name": "Carnivorous chinchompa",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "5080",
- "range_level": "2",
- "attack_level": "2"
- },
- {
- "examine": "Wild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ferret",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5081",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A black warlock. The air seems to distort wherever it passes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black warlock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5082",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a snowy knight butterfly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snowy knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5083",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sapphire glacialis. It doesn't look as pretentious as its name sounds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sapphire glacialis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5084",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a ruby harvest butterfly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ruby harvest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5085",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Curls up into a ball to protect itself from attack.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Prickly kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5086",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Now that's a big overbite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sabre-toothed kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5087",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It uses its tail to hunt and skewer fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barb-tailed kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5088",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "That's a mean looking set of claws.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wild kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5089",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Ha! Thok much stronger.",
- "melee_animation": "395",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gyr Falcon",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5097",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "It seems to be on a permanent sugar rush.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spotted kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Quieter than a ninja mouse with slippers on.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dark kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5099",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Now you see it; now you don't.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dashing kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's just like a big, white, furry, deadly can opener.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "respawn_delay": "10",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Sabre-toothed kyatt",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "25",
- "id": "5103",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "If you tried to ride that, you'd just impale yourself!",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Spined larupia",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "15",
- "id": "5104",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Get in a graahk's way and you're going to know about it... however briefly.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Horned graahk",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "25",
- "id": "5105",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "It's just like a big, white, furry, deadly can opener.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "9055",
- "name": "null",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "20",
- "id": "5106",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "He must be good at hunting; even his hair blends in with the surroundings.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hunting expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5112",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "With all the furs",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hunting expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5113",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy but kind of cute.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Orange salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5114",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy but certainly striking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Red salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy and somewhat menacing.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very slimy and generally disgusting.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swamp lizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Desert eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5130",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5131",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Polar eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5132",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to be protecting the nest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5133",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "5304",
- "strength_level": "1",
- "id": "5137",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5305"
- },
- {
- "examine": "Now",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's playing both sides!",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "75",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Double agent",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "75",
- "id": "5144",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Double agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "5145",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How cute!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Li'l lamb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The black sheep of the family.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lamb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5162",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5163",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5166",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "5168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "5169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "5170",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "This beast doesn't need climbing boots.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5171",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly shorn.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lovely thick wool.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5176",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5181",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5184",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "It's Nial",
- "melee_animation": "8946",
- "range_animation": "0",
- "magic_level": "58",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8948",
- "name": "Saff Waldon",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "165",
- "strength_level": "58",
- "id": "5188",
- "aggressive": "true",
- "range_level": "58",
- "attack_level": "58"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5195",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5196",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5197",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She needs to work out before facing Thok.",
- "melee_animation": "7041",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Alice's husband",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5204",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Run away! Run away!",
- "melee_animation": "5411",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5412",
- "name": "Penance Queen",
- "defence_level": "132",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "260",
- "id": "5247",
- "aggressive": "true",
- "range_level": "116",
- "attack_level": "260"
- },
- {
- "examine": "What's it looking at?",
- "melee_animation": "5092",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5093",
- "name": "Queen spawn",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "450",
- "strength_level": "60",
- "id": "5248",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "He looks embarrassed",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Errdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5249",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mounted lancer.",
- "slayer_task": "70",
- "melee_animation": "7584",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust rider",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "54",
- "id": "5251",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "A mounted archer.",
- "slayer_task": "70",
- "melee_animation": "5451",
- "range_animation": "5451",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust rider",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "40",
- "id": "5252",
- "aggressive": "true",
- "range_level": "54",
- "attack_level": "40"
- },
- {
- "examine": "A huge scarab beast.",
- "slayer_task": "70",
- "melee_animation": "5457",
- "range_animation": "0",
- "magic_level": "62",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5456",
- "name": "Giant scarab",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "571",
- "strength_level": "62",
- "id": "5253",
- "aggressive": "true",
- "range_level": "62",
- "attack_level": "62"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5258",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5260",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Sophanem.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sophanem guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5270",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Sophanem.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sophanem guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5274",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Menaphos.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Menaphite guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5277",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Flings annoying splinters at Thok.",
- "melee_animation": "426",
- "range_animation": "426",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Osman",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5285",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5310",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5311",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5312",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5313",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5314",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5315",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5316",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5317",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5318",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5319",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5320",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5321",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "19",
- "id": "5322",
- "aggressive": "true",
- "bonuses": "21,19,20,42,44,34,41,38,40,21,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5323",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5324",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5325",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5326",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5327",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5328",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5329",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5330",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5331",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5487",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5354",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5357",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5358",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "A giant skeleton.",
- "slayer_task": "75",
- "melee_animation": "5499",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "5359",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "It appears to be intelligent and savage.",
- "slayer_task": "41",
- "melee_animation": "91",
- "range_animation": "91",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "168",
- "defence_animation": "89",
- "weakness": "3",
- "slayer_exp": "183",
- "magic_animation": "91",
- "death_animation": "92",
- "name": "Brutal green dragon",
- "defence_level": "168",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "175",
- "strength_level": "168",
- "id": "5362",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "0",
- "attack_level": "268"
- },
- {
- "weakness": "7",
- "examine": "It appears to be intelligent and savage.",
- "name": "Confused barbarian",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "175",
- "strength_level": "167",
- "attack_speed": "6",
- "id": "5364",
- "range_level": "167",
- "attack_level": "70"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5568",
- "range_animation": "5568",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "magic_animation": "5568",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "5375",
- "bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5568",
- "range_animation": "5568",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "magic_animation": "5568",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "5376",
- "bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5377",
- "bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5378",
- "bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5379",
- "bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5380",
- "bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Animated steel armour.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4167",
- "name": "Animated steel armour",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "5382",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Big and bony, just how I like them.",
- "start_gfx": "2713",
- "melee_animation": "5499",
- "range_animation": "5499",
- "attack_speed": "2",
- "defence_animation": "5489",
- "magic_animation": "5499",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "85",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "95",
- "id": "5384",
- "aggressive": "true",
- "bonuses": "25,25,25,25,25,25,25,25,25,25,25,25,25,25,25",
- "range_level": "1",
- "projectile": "2718",
- "attack_level": "95"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "56",
- "strength_level": "1",
- "id": "5393",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5395",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5396",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5403",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "92",
- "strength_level": "1",
- "id": "5404",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5405",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5406",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5407",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5408",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5409",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5410",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How does it move of its own accord?",
- "melee_animation": "5591",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5592",
- "name": "Possessed pickaxe",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "5413",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "How does it move of its own accord?",
- "melee_animation": "5597",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5596",
- "name": "Animated spade",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "5414",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "examine": "A terrifying dog beast.",
- "slayer_task": "82",
- "melee_animation": "5625",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "5628",
- "name": "Terror dog",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "134",
- "strength_level": "47",
- "id": "5417",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "melee_animation": "5625",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5626",
- "death_animation": "5627",
- "name": "Terror dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "1",
- "id": "5418",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5617",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "5618",
- "death_animation": "5619",
- "name": "Tarn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "5420",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I preferred him when he was human.",
- "melee_animation": "5617",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5619",
- "name": "Mutant tarn",
- "defence_level": "57",
- "safespot": null,
- "lifepoints": "325",
- "strength_level": "57",
- "id": "5421",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "57"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "KGP Agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5442",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Instructs agility.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5447",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An army commander.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Army Commander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5448",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "5725",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "5452",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5455",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An impressive-looking troll.",
- "slayer_task": "83",
- "melee_animation": "5374",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5209",
- "name": "Ice Troll King",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "65",
- "id": "5472",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,45,45,45,2000,2000,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5473",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5474",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5475",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "A large ice troll.",
- "melee_animation": "4332",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll grunt",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "5476",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "An ill-tempered king.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Gjuki Sorvott IV",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5478",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A regal cat with an evil glint in its eye.",
"melee_animation": "422",
@@ -104713,18 +69996,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "Jatizso's Chancellor.",
- "name": "Thorkel Silkbeard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5480",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "Harder than the rocks he sells.",
"melee_animation": "422",
@@ -104810,68 +70081,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A guard on insult duty.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5489",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5490",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5491",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Sorvott's militia.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5492",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "One of Jatizso's many citizens.",
"melee_animation": "422",
@@ -104940,22 +70149,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A miner at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5497",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A bedraggled-looking tramp.",
"melee_animation": "422",
@@ -105007,11808 +70200,11 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A dwarven trader from Keldagrim.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Grundt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5501",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Burgher's protectors.",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Burgher's protectors.",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5516",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of your militia.",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5517",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5521",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5522",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5523",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5525",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5526",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5527",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "Antisocial.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorceress",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Come",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apprentice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An autumn elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Autumn Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5533",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A spring elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spring Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5539",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A summer elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Summer Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5547",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A winter elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Winter Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5553",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It dare attack Pretty Lass? Thok crush its puny skull!",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Osman",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "95",
- "id": "5561",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "She's honest about the things you aren't.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sin Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it male or female?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Homunculus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5581",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Strong",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Cage",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "95",
- "id": "5584",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "Famous for his fights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Black-eye",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5589",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Count them pinkies!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'No fingers",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5590",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He wishes he had teeth.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Gummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5591",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it a frog",
- "melee_animation": "5842",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5841",
- "name": "Frogeel",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "36",
- "id": "5593",
- "aggressive": "true",
- "range_level": "49",
- "attack_level": "36"
- },
- {
- "death_animation": "146",
- "name": "Spidine",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "35",
- "melee_animation": "143",
- "strength_level": "1",
- "id": "5594",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "144"
- },
- {
- "examine": "Definitely not a chicken or a swordfish.",
- "melee_animation": "5387",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5389",
- "name": "Swordchick",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "5595",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6800",
- "respawn_delay": "60",
- "defence_animation": "6802",
- "death_animation": "6801",
- "name": "Jubster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "5596",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Since when did newts have beaks?",
- "melee_animation": "2299",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "2301",
- "name": "Newtroost",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "5597",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Half unicorn",
- "melee_animation": "5849",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "41",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "5851",
- "name": "Unicow",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "30",
- "id": "5603",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5608",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5609",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5610",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5611",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'd prefer it if it were a muffin...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Puffin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5614",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5619",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5620",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5621",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5622",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bedside manner is a little lacking",
- "slayer_task": "93",
- "melee_animation": "5643",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5658",
- "name": "Sorebones",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5627",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "I hope his hands don't shake.",
- "slayer_task": "93",
- "melee_animation": "5643",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5658",
- "name": "Sorebones",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5628",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5629",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5630",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5631",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5632",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5633",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5634",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5635",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5636",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5637",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5638",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5639",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5640",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5641",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5642",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5643",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5644",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5645",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5646",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5647",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5648",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5649",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5650",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5651",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5652",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5653",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5654",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5655",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5656",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5657",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5658",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5659",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5660",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5661",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5662",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5663",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5664",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5665",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "It's trying to mash you flat! Less examine",
- "melee_animation": "5895",
- "range_animation": "0",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5898",
- "name": "Barrelchest",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "52",
- "id": "5666",
- "aggressive": "true",
- "range_level": "52",
- "attack_level": "52"
- },
- {
- "examine": "He is one",
- "melee_animation": "5970",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5972",
- "name": "Undead Lumberjack",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "73",
- "id": "5680",
- "range_level": "1",
- "attack_level": "73"
- },
- {
- "examine": "A big",
- "slayer_task": "15",
- "melee_animation": "6079",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "93",
- "magic_animation": "0",
- "death_animation": "6081",
- "name": "Cave bug",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "93",
- "strength_level": "1",
- "id": "5750",
- "range_level": "9",
- "attack_level": "1"
- },
- {
- "examine": "A strange mole-like being.",
- "melee_animation": "6012",
- "respawn_delay": "60",
- "defence_animation": "6013",
- "slayer_exp": "52",
- "death_animation": "6014",
- "name": "Molanisk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5751",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5752",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5753",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5755",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5756",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5757",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5758",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5760",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5761",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5762",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5763",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5764",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5765",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5766",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5767",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5768",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5769",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after cave goblin money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5776",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after cave goblin money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5777",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5783",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Taking a terribly important box from one place to another.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crate goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5784",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Good at shorthand.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin scribe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5786",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He keeps order in the city.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "5800",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "He keeps order in the city.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "5801",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "A goblin baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Young 'un",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5803",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nipper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5805",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5808",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5813",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5814",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5816",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5817",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5819",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5821",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5822",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Don't spit",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spit goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5823",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bug-eyed little goblin fish. How cute.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5824",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Annoying little flappy things.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Moths",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "5829",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "name": "Rat Burgiss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "5833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5842",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5843",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5844",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5845",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5846",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5847",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5848",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5849",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5850",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5851",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "For sitting on.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bench",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5855",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5856",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks pretty skilled with that bow.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "15",
- "id": "5859",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "20",
- "attack_level": "15"
- },
- {
- "examine": "No match for Thok. Silly demon.",
- "magic_level": "85",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Zanik",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "85",
- "id": "5861",
- "aggressive": "true",
- "range_level": "85",
- "attack_level": "85"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5864",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5865",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5867",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5874",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5875",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5876",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5877",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells tickets to Keldagrim.",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5879",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5880",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5881",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5882",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5883",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5884",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5885",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells tickets to Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5886",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Are you good enough to fight?",
- "melee_animation": "6318",
- "range_animation": "0",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6322",
- "name": "The Inadequacy",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "5902",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Can you endure long enough?",
- "melee_animation": "6345",
- "range_animation": "0",
- "magic_level": "67",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6347",
- "name": "The Everlasting",
- "defence_level": "67",
- "safespot": null,
- "lifepoints": "191",
- "strength_level": "67",
- "id": "5903",
- "aggressive": "true",
- "range_level": "67",
- "attack_level": "67"
- },
- {
- "examine": "Can you bring yourself to hurt another?",
- "melee_animation": "6329",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6331",
- "name": "The Untouchable",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "5904",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "What if you don't know how to win?",
- "melee_animation": "6342",
- "range_animation": "0",
- "magic_level": "63",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Illusive",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "5905",
- "aggressive": "true",
- "range_level": "63",
- "attack_level": "63"
- },
- {
- "examine": "You can't escape your inadequacy!",
- "melee_animation": "6310",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6315",
- "name": "A Doubt",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "5906",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Dying tree",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "50",
- "id": "5908",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Don't let her arm-wrestle you for money.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Barbarian",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "5909",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "He's suspiciously talented with a meat-cleaver.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5911",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This grizzled soldier is here to distribute Rated Clan Wars badges.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Iffie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5914",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Does what too many people aren't interested in doing.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cleaner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5916",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mangy mutt.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stray dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5917",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
- "melee_animation": "6489",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Guard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "5919",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
- "melee_animation": "6489",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Guard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "5920",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "He's studying to be a guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trainee Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5921",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Trains the guards of the future.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5922",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "9",
- "id": "5926",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "9",
- "id": "5927",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for her light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "9",
- "id": "5928",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for her light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "9",
- "id": "5929",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Jacques Netis - a slightly pompous art expert.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Art Critic Jacques",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5930",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seth Minas - an aged expert in RuneScape history.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Historian Minas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5931",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A lady with lots of information about the Museum.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Information clerk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5938",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teacher and one of his pupils.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Teacher and pupil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks kind of familiar.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Schoolboy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5945",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teacher and one of her pupils.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Teacher and pupil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks hard at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could there be something exciting in his wheelbarrow?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5954",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5956",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Wheelbarrow loader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5958",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5959",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5960",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5961",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5962",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5963",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An aged expert in natural history.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Natural historian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5966",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodsuckers!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Leech display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5971",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slugs of the sea variety.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sea slugs display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5972",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A house on its back.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snail display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5973",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A scaly little fellow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lizard display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5975",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice suit.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penguin display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5976",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's got the hump.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Camel display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5977",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Terrifying!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Terrorbird display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5978",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a fire-breather.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "408,410,409",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dragon display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Needs a good square meal.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wyvern display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Battle tortoise display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Loves making molehills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mole display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5982",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It hides in stone",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "95",
- "id": "5986",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5990",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5992",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very odd looking creature.",
- "melee_animation": "6513",
- "range_animation": "0",
- "magic_level": "46",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6512",
- "name": "Experiment No.2",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "131",
- "strength_level": "46",
- "id": "5993",
- "range_level": "46",
- "attack_level": "46"
- },
- {
- "examine": "A huge mouse. It looks hungry...",
- "melee_animation": "6519",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6521",
- "name": "Mouse",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "5994",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "melee_animation": "6501",
- "respawn_delay": "60",
- "defence_animation": "6503",
- "death_animation": "6502",
- "name": "Glod",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "1",
- "id": "5996",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5999",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "6001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6006",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6007",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6008",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6009",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6010",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6011",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6012",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6013",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6014",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6015",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6016",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6017",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6018",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6019",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6020",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6021",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6022",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6023",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6024",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6025",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Boris",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6026",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Imre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6027",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Yuri",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6028",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Joseph",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6029",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Nikolai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6030",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Eduard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6031",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Lev",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6032",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Georgy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "6033",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Svetlana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6034",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Irina",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6035",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Alexis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6036",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Milla",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6037",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Galina",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6038",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sofiya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6039",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Ksenia",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6040",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Nikita",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Zoja",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6044",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Liliya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6045",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "6559",
- "respawn_delay": "60",
- "defence_animation": "6557",
- "slayer_exp": "74",
- "death_animation": "6558",
- "name": "Big Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "6046",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious mountain wolf.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "combat_audio": "481,491,490",
- "attack_speed": "6",
- "defence_animation": "6578",
- "slayer_exp": "34",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Wolf",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "1",
- "id": "6047",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Now it has no armour",
- "range_animation": "0",
- "combat_audio": "481,491,490",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "slayer_exp": "34",
- "magic_animation": "0",
- "name": "Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "95",
- "id": "6048",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "A big coward. Thok mocks scaredy man.",
- "combat_audio": "481,491,490",
- "magic_level": "75",
- "defence_animation": "0",
- "weakness": "10",
- "slayer_exp": "34",
- "magic_animation": "0",
- "name": "Wolf",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "75",
- "id": "6049",
- "aggressive": "true",
- "range_level": "75",
- "attack_level": "75"
- },
- {
- "examine": "A vicious desert wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "5",
- "defence_animation": "6578",
- "weakness": "9",
- "magic_animation": "6579",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "20",
- "id": "6050",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A vicious desert wolf.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "5",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "20",
- "id": "6051",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "She tends the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Aeryka",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6072",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little lost.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wandering impling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6073",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry little imp. Grrr.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Imp defender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6074",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "6078",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "6079",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "6080",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "6081",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6088",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6089",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6090",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6099",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6100",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His face is expressionless.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Lost barbarian",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6102",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Probably not a chicken.",
- "slayer_task": "7",
- "melee_animation": "6811",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "6812",
- "name": "Entrana firebird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "6108",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These gnomes know how to get around!",
- "slayer_task": "7",
- "melee_animation": "6790",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6791",
- "name": "Mounted terrorbird gnome",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "6109",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A messy bird.",
- "slayer_task": "7",
- "melee_animation": "3467",
- "range_animation": "3467",
- "attack_speed": "5",
- "defence_animation": "1014",
- "weakness": "6",
- "magic_animation": "3467",
- "death_animation": "3468",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "6115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A messy bird.",
- "melee_animation": "3467",
- "range_animation": "3467",
- "attack_speed": "5",
- "defence_animation": "1014",
- "magic_animation": "3467",
- "death_animation": "3468",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "6116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Do not upset this teacher. You have been warned!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mr. Mordaut",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He helps the professor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Observatory assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6118",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sleeping like an ugly baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sleeping guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old goblin hag.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Naghead",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6123",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A young goblin 'beauty'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wagchin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6124",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6125",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6126",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big appetite for a small creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greasycheeks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6127",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes drink a little too much.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smellytoes",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6128",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lean and green.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Creakyknees",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6129",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "6131",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6132",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6133",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This imp is clearly the class clown.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dunce",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6134",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Get useful information from this guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Town crier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6135",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Intermediate)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Veteran)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6141",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6154",
- "bonuses": "100,100,100,50,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "15",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6155",
- "bonuses": "100,100,100,100,25,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6156",
- "bonuses": "100,100,50,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6157",
- "bonuses": "50,50,100,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Squire to the Knights of the Round Table.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "400",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "422",
- "death_animation": "836",
- "name": "Sir Lancelot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "118",
- "strength_level": "1",
- "id": "6170",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6183",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6184",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He isn't very friendly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Renegade knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6188",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dark-hearted knight.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "6189",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Primping with combs and hair clips.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6190",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The name isn't just for show.",
- "range_animation": "0",
- "magic_level": "55",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Sinclair",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "55",
- "id": "6198",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He can look after my money.",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6200",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6201",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "Destroyer of 1000 planes!",
- "slayer_task": "40",
- "melee_animation": "6945",
- "range_animation": "6945",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6944",
- "weakness": "9",
- "slayer_exp": "142",
- "magic_animation": "6945",
- "death_animation": "6946",
- "name": "Tstanon Karlak",
- "defence_level": "125",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "118",
- "id": "6204",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,-5,0,0,14,0,0,0",
- "range_level": "50",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6205",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Scourge of light.",
- "slayer_task": "56",
- "start_gfx": "1208",
- "combat_style": "1",
- "melee_animation": "7033",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "0",
- "slayer_exp": "150",
- "magic_animation": "7033",
- "death_animation": "6946",
- "lifepoints": "150",
- "id": "6206",
- "aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,-5,0,0,0,0,0,0",
- "agg_radius": "64",
- "range_animation": "7033",
- "magic_level": "50",
- "defence_animation": "6945",
- "name": "Zakl'n Gritch",
- "defence_level": "127",
- "safespot": null,
- "strength_level": "76",
- "range_level": "150",
- "projectile": "1209",
- "attack_level": "83"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6209",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Have you checked your pockets lately?",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "defence_animation": "170",
- "weakness": "7",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "4",
- "id": "6211",
- "aggressive": "true",
- "bonuses": "10,5,5,10,10,10,10,10,10,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "respawn_delay": "25",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "64",
- "id": "6212",
- "aggressive": "true",
- "bonuses": "50,40,45,60,70,70,70,40,40,50,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "respawn_delay": "25",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "64",
- "id": "6213",
- "aggressive": "true",
- "bonuses": "50,40,45,60,70,70,70,40,40,50,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "It looks really hungry!",
- "melee_animation": "810",
- "range_animation": "810",
- "respawn_delay": "25",
- "defence_animation": "404",
- "magic_animation": "810",
- "death_animation": "9055",
- "name": "Vampire",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "44",
- "id": "6214",
- "aggressive": "true",
- "bonuses": "30,35,30,40,50,50,50,25,30,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A small ice demon.",
- "melee_animation": "8080",
- "range_animation": "8080",
- "respawn_delay": "25",
- "defence_animation": "8079",
- "magic_animation": "8080",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6217",
- "bonuses": "5,5,5,5,10,10,10,10,10,10,5,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Those horns look pretty sharp...",
- "slayer_task": "39",
- "melee_animation": "4300",
- "range_animation": "4300",
- "respawn_delay": "25",
- "defence_animation": "4301",
- "weakness": "9",
- "slayer_exp": "112",
- "magic_animation": "4300",
- "death_animation": "4302",
- "name": "Gorak",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "70",
- "id": "6218",
- "aggressive": "true",
- "bonuses": "30,30,50,70,40,70,70,50,60,55,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "Warrior of Zamorak.",
- "slayer_task": "79",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "5",
- "respawn_delay": "25",
- "defence_animation": "1156",
- "weakness": "6",
- "magic_animation": "390",
- "death_animation": "9055",
- "name": "Spiritual warrior",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "102",
- "strength_level": "66",
- "id": "6219",
- "aggressive": "true",
- "bonuses": "40,60,60,60,60,20,50,55,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "66"
- },
- {
- "examine": "A ranger spirit dedicated to Zamorak.",
- "slayer_task": "78",
- "start_gfx": "18",
- "combat_style": "1",
- "start_height": "96",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "25",
- "defence_animation": "404",
- "weakness": "1",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "6220",
- "aggressive": "true",
- "bonuses": "50,70,50,50,50,70,50,85,85,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "9",
- "attack_level": "1"
- },
- {
- "examine": "A deadly servant of Zamorak.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "811",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "9055",
- "lifepoints": "75",
- "id": "6221",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_animation": "811",
- "magic_level": "180",
- "end_gfx": "78",
- "defence_animation": "404",
- "end_height": "0",
- "name": "Spiritual mage",
- "defence_level": "61",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "78",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "2",
- "melee_animation": "6952",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "3",
- "slayer_exp": "124",
- "magic_animation": "6952",
- "death_animation": "6956",
- "lifepoints": "121",
- "id": "6223",
- "aggressive": "true",
- "bonuses": "45,45,45,0,0,0,0,0,0,0,0,25,0,0,0",
- "prj_height": "92",
- "agg_radius": "64",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
- "name": "Wingman Skree",
- "defence_level": "160",
- "poison_immune": "true",
- "safespot": null,
- "strength_level": "50",
- "range_level": "100",
- "projectile": "1199",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6224",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "4",
- "slayer_exp": "133",
- "magic_animation": "6953",
- "death_animation": "6956",
- "lifepoints": "132",
- "id": "6225",
- "aggressive": "true",
- "bonuses": "0,0,0,0,60,0,0,0,0,0,0,0,0,0,0",
- "prj_height": "92",
- "agg_radius": "64",
- "range_animation": "6953",
- "magic_level": "50",
- "defence_animation": "6955",
- "name": "Flockleader Geerin",
- "defence_level": "175",
- "poison_immune": "true",
- "safespot": null,
- "strength_level": "80",
- "range_level": "150",
- "projectile": "1190",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6226",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "Graceful, bird-like creature.",
- "melee_animation": "6954",
- "range_animation": "6954",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6955",
- "weakness": "6",
- "slayer_exp": "133",
- "magic_animation": "6954",
- "death_animation": "6956",
- "name": "Flight Kilisa",
- "defence_level": "175",
- "safespot": null,
- "lifepoints": "133",
- "strength_level": "118",
- "id": "6227",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,14,0,0,0",
- "range_level": "169",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A servant of Armadyl.",
- "slayer_task": "79",
- "combat_style": "1",
- "melee_animation": "6954",
- "range_animation": "6954",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "weakness": "6",
- "magic_animation": "6954",
- "death_animation": "6956",
- "name": "Spiritual warrior",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "70",
- "id": "6229",
- "aggressive": "true",
- "bonuses": "40,40,50,50,20,50,50,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "68",
- "attack_level": "70"
- },
- {
- "examine": "Armadyl's favourite servant.",
- "slayer_task": "78",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "weakness": "4",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "89",
- "strength_level": "1",
- "id": "6230",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "A mage who serves Armadyl above all else - even death.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "6952",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "4",
- "magic_animation": "6952",
- "death_animation": "6956",
- "lifepoints": "75",
- "id": "6231",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,9,12,5,45,28,0,0,0,0,0",
- "prj_height": "92",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
- "name": "Spiritual mage",
- "defence_level": "111",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "1199",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6232",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "83",
- "strength_level": "1",
- "id": "6233",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "45",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "1",
- "id": "6234",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "1",
- "id": "6235",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "6236",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "1",
- "id": "6237",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "124",
- "strength_level": "1",
- "id": "6238",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "139",
- "strength_level": "1",
- "id": "6239",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "63",
- "strength_level": "1",
- "id": "6240",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6241",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "83",
- "strength_level": "1",
- "id": "6242",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "1",
- "id": "6243",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "6244",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "1",
- "id": "6245",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "73",
- "strength_level": "1",
- "id": "6246",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6249",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6253",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man wearing ancient clothing.",
- "combat_style": "2",
- "melee_animation": "811",
- "range_animation": "811",
- "poisonous": "true",
- "magic_level": "60",
- "respawn_delay": "25",
- "end_gfx": "76",
- "defence_animation": "404",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "9055",
- "name": "Saradomin priest",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "89",
- "strength_level": "1",
- "id": "6254",
- "aggressive": "true",
- "bonuses": "40,40,40,40,20,50,40,55,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Warrior of Saradomin.",
- "slayer_task": "79",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "5",
- "respawn_delay": "25",
- "defence_animation": "1156",
- "weakness": "8",
- "magic_animation": "390",
- "death_animation": "9055",
- "name": "Spiritual warrior",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "66",
- "id": "6255",
- "aggressive": "true",
- "bonuses": "40,60,60,60,60,20,50,45,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "66"
- },
- {
- "examine": "A ranger spirit dedicated to Saradomin.",
- "slayer_task": "78",
- "start_gfx": "18",
- "combat_style": "1",
- "start_height": "96",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "25",
- "defence_animation": "404",
- "weakness": "0",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "106",
- "strength_level": "1",
- "id": "6256",
- "aggressive": "true",
- "bonuses": "50,70,50,50,50,70,50,65,65,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "9",
- "attack_level": "1"
- },
- {
- "examine": "Saradomin's holy mage.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "811",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "4",
- "magic_animation": "811",
- "death_animation": "9055",
- "lifepoints": "85",
- "id": "6257",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,8,7,3,16,2,0,0,0,0,0",
- "range_animation": "811",
- "magic_level": "160",
- "end_gfx": "76",
- "defence_animation": "404",
- "end_height": "0",
- "name": "Spiritual mage",
- "defence_level": "86",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "76",
- "attack_level": "1"
- },
- {
- "examine": "A valiant knight.",
- "melee_animation": "407",
- "range_animation": "407",
- "respawn_delay": "25",
- "defence_animation": "410",
- "weakness": "7",
- "magic_animation": "407",
- "death_animation": "9055",
- "name": "Knight of Saradomin",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "135",
- "strength_level": "50",
- "id": "6258",
- "aggressive": "true",
- "bonuses": "40,40,40,40,50,20,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A valiant knight.",
- "melee_animation": "401",
- "range_animation": "401",
- "respawn_delay": "25",
- "defence_animation": "424",
- "weakness": "7",
- "magic_animation": "401",
- "death_animation": "9055",
- "name": "Knight of Saradomin",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "50",
- "id": "6259",
- "aggressive": "true",
- "bonuses": "40,40,40,40,50,20,40,65,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "agg_radius": "64",
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "melee_animation": "6154",
- "range_animation": "6154",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6155",
- "weakness": "8",
- "magic_animation": "6154",
- "death_animation": "6156",
- "name": "Sergeant Strongstack",
- "defence_level": "126",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "118",
- "id": "6261",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,14,0,0,0",
- "range_level": "50",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "start_gfx": "1202",
- "combat_style": "2",
- "melee_animation": "6154",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "3",
- "magic_animation": "6154",
- "death_animation": "6156",
- "lifepoints": "127",
- "id": "6263",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,6,0,0,0",
- "agg_radius": "64",
- "range_animation": "6154",
- "magic_level": "150",
- "defence_animation": "6155",
- "name": "Sergeant Steelwill",
- "defence_level": "150",
- "safespot": null,
- "strength_level": "50",
- "range_level": "1",
- "projectile": "1203",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6264",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "combat_style": "1",
- "melee_animation": "6154",
- "range_animation": "6154",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6155",
- "weakness": "2",
- "magic_animation": "6154",
- "death_animation": "6156",
- "name": "Sergeant Grimspike",
- "defence_level": "132",
- "safespot": null,
- "lifepoints": "146",
- "strength_level": "80",
- "id": "6265",
- "aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,0,0,0,0,0,0,0",
- "range_level": "150",
- "projectile": "1206",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6266",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Green and aggressive.",
- "melee_animation": "2936",
- "range_animation": "2936",
- "attack_speed": "6",
- "respawn_delay": "25",
- "defence_animation": "2937",
- "weakness": "8",
- "magic_animation": "2936",
- "death_animation": "2938",
- "name": "Jogre",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "62",
- "id": "6268",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,20,10,20,0,0,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "62"
- },
- {
- "examine": "A one-eyed man-eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "110",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "70",
- "id": "6269",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A one-eyed man-eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "110",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "70",
- "id": "6270",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "8",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6271",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6272",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6273",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6274",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "An ugly, smelly creature.",
- "slayer_task": "45",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "165",
- "weakness": "8",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "6275",
- "aggressive": "true",
- "bonuses": "20,30,30,30,30,30,10,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "The spirit of a ranger, serving bandos beyond death.",
- "slayer_task": "78",
- "start_gfx": "95",
- "combat_style": "1",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "0",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "6276",
- "aggressive": "true",
- "bonuses": "30,50,30,30,50,60,50,40,40,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "1195",
- "attack_level": "1"
- },
- {
- "examine": "A true servant of Bandos.",
- "slayer_task": "79",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "8",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual warrior",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "131",
- "strength_level": "70",
- "id": "6277",
- "aggressive": "true",
- "bonuses": "50,40,45,60,60,60,60,20,50,60,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "One of Bandos' chosen.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "4320",
- "range_animation": "4320",
- "attack_speed": "5",
- "magic_level": "142",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "4",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual mage",
- "defence_level": "103",
- "safespot": null,
- "lifepoints": "106",
- "strength_level": "1",
- "id": "6278",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,12,14,13,35,13,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ancient goblin.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "5",
- "id": "6279",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A warrior for Bandos.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6280",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A soldier to the death.",
- "melee_animation": "6188",
- "range_animation": "6188",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6189",
- "magic_animation": "6188",
- "death_animation": "6190",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6281",
- "aggressive": "true",
- "bonuses": "5,10,10,10,10,10,5,10,5,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A soldier to the death.",
- "melee_animation": "6188",
- "range_animation": "6188",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6189",
- "magic_animation": "6188",
- "death_animation": "6190",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "5",
- "id": "6282",
- "aggressive": "true",
- "bonuses": "5,10,10,10,10,10,5,10,5,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A warrior for Bandos.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "slayer_exp": "16",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "5",
- "id": "6283",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6285",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6286",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6287",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6288",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6289",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6290",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6291",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6292",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6293",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "308",
- "strength_level": "59",
- "id": "6294",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "308",
- "strength_level": "59",
- "id": "6295",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this creature.",
- "slayer_task": "89",
- "melee_animation": "7093",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "7091",
- "name": "Warped tortoise",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "148",
- "strength_level": "39",
- "id": "6296",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "melee_animation": "7093",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "7092",
- "death_animation": "7091",
- "name": "Warped tortoise",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "6297",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Annoyingly easy to squish.",
- "slayer_task": "73",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "2",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Bolrie",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "6306",
- "aggressive": "true",
- "range_level": "2",
- "attack_level": "1"
- },
- {
- "examine": "She looks bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard no. 21",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6314",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks even more bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard no. 72",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6315",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6322",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6323",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6324",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6325",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6326",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6327",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6328",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6329",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6330",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6331",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6332",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6334",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6335",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6336",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6337",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6338",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6339",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Duck!",
- "combat_style": "1",
- "melee_animation": "3920",
- "range_animation": "3920",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "3922",
- "name": "Child",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "92",
- "strength_level": "48",
- "id": "6344",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "48"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6346",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6347",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6348",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6349",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6350",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6351",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6352",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6354",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The mother of all pests!",
- "attack_speed": "6",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Street urchin",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "1428",
- "strength_level": "70",
- "id": "6358",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "A warrior of Zamorak.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak warrior",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "6363",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A warrior of Zamorak.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "6364",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A ranger of Zamorak.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak ranger",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6365",
- "aggressive": "true",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A ranger of Zamorak.",
- "melee_animation": "426",
- "range_animation": "426",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak ranger",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6366",
- "aggressive": "true",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A mage of Zamorak.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "49",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak mage",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6367",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mage of Zamorak.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "49",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak mage",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6368",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cave dweller.",
- "melee_animation": "7207",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "7205",
- "name": "Cave lizard",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
- "id": "6369",
- "aggressive": "true",
- "range_level": "47",
- "attack_level": "1"
- },
- {
- "examine": "A Z.M.I. runecrafter.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak crafter",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "19",
- "id": "6371",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "death_animation": "836",
- "name": "Zamorak crafter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6372",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "slayer_exp": "49",
- "name": "Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6374",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "6376",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "6377",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wouldn't want to be footing that bill.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6779",
- "name": "Tenacious toucan",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6378",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "I wonder how much he can lift.",
- "melee_animation": "7237",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7238",
- "name": "Giant ant worker",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "6379",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Gi-ant-ant-ant-ant...",
- "melee_animation": "7237",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7238",
- "name": "Giant ant soldier",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "6380",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "That stinger has to hurt...",
- "melee_animation": "7242",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7244",
- "name": "Giant wasp",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6381",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Polynomial - a parrot that goes without breakfast",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6777",
- "name": "Pernicious parrot",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6382",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "7242",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "7243",
- "death_animation": "7244",
- "name": "Giant wasp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "1",
- "id": "6383",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Karamjan Jungle eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6385",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6402",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6403",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6404",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6405",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6406",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6407",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6408",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6409",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6410",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6411",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6412",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6413",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6414",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6415",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6416",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6417",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6418",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6419",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6420",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6421",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6422",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6423",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6424",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6425",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6426",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6427",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6428",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6429",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6430",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6431",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6432",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6433",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6434",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6435",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6436",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6437",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6438",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6439",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6440",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6441",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6442",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6443",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6444",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6445",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6446",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6447",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6448",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6449",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6450",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6451",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6452",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6453",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6454",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6455",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6456",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6457",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6458",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6459",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6460",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6461",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6462",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6463",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6464",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6465",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6466",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6467",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Snothead",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "14",
- "id": "6469",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "14"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Snailfeet",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "13",
- "id": "6470",
- "aggressive": "true",
- "range_level": "18",
- "attack_level": "13"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "22",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Mosschin",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "16",
- "id": "6471",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "16"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "26",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Redeyes",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "19",
- "id": "6472",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "26",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Strongbones",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "19",
- "id": "6473",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "Priest of the Ekeleshuun tribe.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6482",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He is expounding the word of the Big High War God.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Preacher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6488",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6490",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6491",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6492",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6493",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6494",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6495",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very welcoming.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6496",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very welcoming.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6497",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing blue armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6498",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing orange armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6499",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing black armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6500",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing white armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6501",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing purple armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6502",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing yellow armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6503",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very noble spider and attendant to the Queen.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 2",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The highest ranking of the Spider Queen's servants.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 3",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6508",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head of the Spider Queen's army.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 4",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6509",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Trying hard to hide his identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jury",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6510",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sir Amik's loyal squire.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A being of ore and minerals.",
- "magic_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "range_animation": "0",
- "strength_level": "1",
- "id": "6514",
- "range_level": "1",
- "attack_level": "1",
- "defence_animation": "0"
- },
- {
- "examine": "A monkey on a mission.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6516",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works for Doric & Son.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6518",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Gives an introduction to the Grand Exchange.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grand Exchange Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The son of Ali M!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farid Morrisane (ores)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6523",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's probably seen better days.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bob Barter (herbs)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tribal man",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Relobo Blinyo (logs)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6526",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's travelled a long way.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hofuthand (armour and weapons)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6527",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Chief architect of the Spider Realm.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 5",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6536",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6543",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6544",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tapping his feet and looking very bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6558",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge war chief. ",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "7061",
- "magic_animation": "422",
- "death_animation": "7062",
- "name": "null",
- "defence_level": "250",
- "safespot": null,
- "lifepoints": "254",
- "strength_level": "251",
- "id": "6560",
- "aggressive": "true",
- "bonuses": "300,300,300,300,300,300,150,300,300,250,43,96,43,30,0",
- "range_level": "200",
- "attack_level": "250"
- },
- {
- "examine": "Her lack of body heat is unsettling.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Queen of Snow",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It looks right at home here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snow imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Snowflakes swirling in the wind.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragon snowman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6743",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate snowman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "6745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with a holly bow.",
- "name": "Snow ranger",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6747",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A snowman armed with an ice sword.",
- "name": "Snow ranger",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6748",
- "magic_level": "30",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A snowman armed with a winter staff.",
- "name": "Snow mage",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6749",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "Cut-down and dried.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6761",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "Needs moisturising.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6762",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "I bet it's parched.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6763",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doorman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6769",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast of a beetle.",
- "slayer_task": "70",
- "melee_animation": "7596",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7595",
- "name": "Giant scarab",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "49",
- "id": "6770",
- "aggressive": "true",
- "range_level": "66",
- "attack_level": "49"
- },
- {
- "examine": "It's not quite small enough to stamp upon.",
- "melee_animation": "7657",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7656",
- "name": "Scarab larva",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "6772",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Bred to shoot you down.",
- "slayer_task": "70",
- "start_gfx": "18",
- "combat_style": "1",
- "melee_animation": "7607",
- "range_animation": "7607",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7609",
- "name": "Scabaras ranger",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "41",
- "id": "6773",
- "aggressive": "true",
- "range_level": "55",
- "projectile": "11",
- "attack_level": "41"
- },
- {
- "examine": "It might be angry...it's hard to tell.",
- "slayer_task": "70",
- "melee_animation": "7612",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7614",
- "name": "Scabaras lancer",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "6774",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Bouncy",
- "slayer_task": "70",
- "melee_animation": "7584",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust lancer",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "6777",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "He'll have someone's eye out with that.",
- "slayer_task": "70",
- "start_gfx": "18",
- "combat_style": "1",
- "melee_animation": "5451",
- "range_animation": "5451",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust ranger",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "41",
- "id": "6778",
- "aggressive": "true",
- "range_level": "55",
- "projectile": "11",
- "attack_level": "41"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Clay golem",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks a bit dirty from digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lead archaeologist Abigail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit dusty from troweling.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Assistant archaeologist Kerner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He exudes something like holiness.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "High Priest of Scabaras",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6788",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He exudes something like holiness.",
- "slayer_task": "70",
- "melee_animation": "7612",
- "range_animation": "0",
- "magic_level": "66",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7614",
- "name": "High Priest of Scabaras",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "66",
- "id": "6789",
- "range_level": "66",
- "attack_level": "66"
- },
- {
- "examine": "He exudes something like holiness.",
- "slayer_task": "70",
- "melee_animation": "7607",
- "range_animation": "7607",
- "magic_level": "66",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7609",
- "name": "High Priest of Scabaras",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "66",
- "id": "6790",
- "range_level": "66",
- "attack_level": "66"
- },
- {
- "examine": "Is it a stone? Is it a crab? No! It's Granite Crab!",
- "melee_animation": "8104",
- "range_animation": "8104",
- "attack_speed": "3",
- "magic_level": "13",
- "respawn_delay": "50",
- "defence_animation": "8105",
- "magic_animation": "8104",
- "death_animation": "8106",
- "name": "Granite crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "39",
- "strength_level": "17",
- "id": "6796",
- "bonuses": "16,9,5,12,4,11,57,53,61,12,45,22,0,0,0",
- "range_level": "16",
- "attack_level": "18"
- },
- {
- "examine": "Is it a stone? Is it a crab? No! It's Granite Crab!",
- "melee_animation": "8104",
- "range_animation": "8104",
- "attack_speed": "3",
- "magic_level": "13",
- "respawn_delay": "50",
- "defence_animation": "8105",
- "weakness": "10",
- "magic_animation": "8104",
- "death_animation": "8106",
- "name": "Granite crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "39",
- "strength_level": "17",
- "id": "6797",
- "bonuses": "16,9,5,12,4,11,57,53,61,12,45,22,0,0,0",
- "range_level": "16",
- "attack_level": "18"
- },
- {
- "death_animation": "8065",
- "name": "Praying mantis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8064",
- "strength_level": "1",
- "id": "6798",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8066"
- },
- {
- "examine": "Wax on",
- "melee_animation": "8069",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8065",
- "name": "Praying mantis",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "107",
- "strength_level": "60",
- "id": "6799",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7854",
- "name": "Giant ent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7853",
- "strength_level": "1",
- "id": "6800",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7852"
- },
- {
- "examine": "He ent such a bad guy.",
- "melee_animation": "7853",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7854",
- "name": "Giant ent",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "111",
- "strength_level": "60",
- "id": "6801",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "8153",
- "name": "Spirit cobra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8152",
- "strength_level": "1",
- "id": "6802",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8154"
- },
- {
- "examine": "Serpentine.",
- "melee_animation": "8152",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8153",
- "name": "Spirit cobra",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "55",
- "id": "6803",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7780",
- "name": "Spirit dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7786",
- "strength_level": "1",
- "id": "6804",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7785"
- },
- {
- "examine": "Face the thing that should not be!",
- "melee_animation": "7786",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7780",
- "name": "Spirit dagannoth",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "115",
- "strength_level": "65",
- "id": "6805",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "combat_style": "2",
- "melee_animation": "7970",
- "respawn_delay": "0",
- "defence_animation": "7967",
- "death_animation": "7979",
- "name": "Karamthulhu overlord",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Kneel before squid!",
- "combat_style": "2",
- "melee_animation": "7963",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7964",
- "name": "Karamthulhu overlord",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "50",
- "id": "6810",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "combat_style": "1",
- "melee_animation": "7935",
- "respawn_delay": "0",
- "defence_animation": "7936",
- "death_animation": "7937",
- "name": "Hydra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7935",
- "respawn_delay": "0",
- "defence_animation": "7936",
- "death_animation": "7937",
- "name": "Hydra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "7740",
- "name": "Bunyip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "7741",
- "strength_level": "1",
- "id": "6813",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7742"
- },
- {
- "death_animation": "7740",
- "name": "Bunyip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "7741",
- "strength_level": "1",
- "id": "6814",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7742"
- },
- {
- "combat_style": "1",
- "melee_animation": "8286",
- "respawn_delay": "0",
- "defence_animation": "8287",
- "death_animation": "8285",
- "name": "War tortoise",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "348",
- "strength_level": "1",
- "id": "6815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Definitely not teenaged",
- "combat_style": "1",
- "melee_animation": "8286",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8285",
- "name": "War tortoise",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "55",
- "id": "6816",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "Fruity and bat-shaped. A winning combination!.",
- "name": "Fruit bat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6817",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "7675",
- "respawn_delay": "0",
- "defence_animation": "7670",
- "death_animation": "7671",
- "name": "Abyssal parasite",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's an extra-planar little blood hoover.",
- "combat_style": "2",
- "melee_animation": "8910",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7671",
- "name": "Abyssal parasite",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "50",
- "id": "6819",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "death_animation": "7684",
- "name": "Abyssal lurker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7680",
- "strength_level": "1",
- "id": "6820",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7681"
- },
- {
- "examine": "Lurking like only a lurker can.",
- "melee_animation": "7680",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7684",
- "name": "Abyssal lurker",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "55",
- "id": "6821",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "The pointiest horse on the planet.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "magic_level": "69",
- "defence_animation": "6375",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn stallion",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "62",
- "id": "6822",
- "bonuses": "48,59,43,52,104,52,116,123,134,46,127,4,0,0,0",
- "range_level": "72",
- "attack_level": "64"
- },
- {
- "examine": "The pointiest horse on the planet.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "magic_level": "69",
- "defence_animation": "6375",
- "weakness": "10",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn stallion",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "62",
- "id": "6823",
- "bonuses": "48,59,43,52,104,52,116,123,134,46,127,4,0,0,0",
- "range_level": "72",
- "attack_level": "64"
- },
- {
- "examine": "Southern fried please!",
- "combat_style": "2",
- "melee_animation": "7810",
- "range_animation": "7810",
- "attack_speed": "5",
- "magic_level": "23",
- "respawn_delay": "50",
- "defence_animation": "5388",
- "magic_animation": "7810",
- "death_animation": "5389",
- "name": "Dreadfowl",
- "defence_level": "22",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "15",
- "id": "6825",
- "bonuses": "16,15,29,12,39,13,41,35,29,39,47,2,2,2,7",
- "range_level": "16",
- "projectile": "1318",
- "attack_level": "17"
- },
- {
- "examine": "Southern fried please!",
- "combat_style": "2",
- "melee_animation": "7810",
- "range_animation": "7810",
- "attack_speed": "5",
- "magic_level": "23",
- "respawn_delay": "50",
- "defence_animation": "5388",
- "weakness": "10",
- "magic_animation": "7810",
- "death_animation": "5389",
- "name": "Dreadfowl",
- "defence_level": "22",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "15",
- "id": "6826",
- "bonuses": "16,15,29,12,39,13,41,35,29,39,47,2,2,2,7",
- "range_level": "16",
- "projectile": "1318",
- "attack_level": "17"
- },
- {
- "examine": "It's mean and green.",
- "melee_animation": "8208",
- "respawn_delay": "0",
- "defence_animation": "8205",
- "death_animation": "8209",
- "name": "Stranger plant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's mean and green!",
- "melee_animation": "8208",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8209",
- "name": "Stranger plant",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "55",
- "id": "6828",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7797",
- "name": "Desert wyrm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "47",
- "melee_animation": "7795",
- "strength_level": "1",
- "id": "6831",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7796"
- },
- {
- "examine": "Surprisingly slime-free.",
- "combat_style": "1",
- "melee_animation": "7795",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7797",
- "name": "Desert wyrm",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "6832",
- "range_level": "18",
- "attack_level": "18"
- },
- {
- "examine": "If you think he's evil",
- "melee_animation": "8248",
- "range_animation": "0",
- "magic_level": "42",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8250",
- "name": "Evil turnip",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "6834",
- "range_level": "42",
- "attack_level": "42"
- },
- {
- "death_animation": "8276",
- "name": "Vampire bat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "melee_animation": "8275",
- "strength_level": "1",
- "id": "6835",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8274"
- },
- {
- "examine": "It vants to suck my blood!",
- "melee_animation": "8275",
- "range_animation": "0",
- "magic_level": "31",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8276",
- "name": "Vampire bat",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "6836",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "melee_animation": "6254",
- "combat_audio": "3611,3612,3610",
- "respawn_delay": "0",
- "defence_animation": "6255",
- "death_animation": "6256",
- "name": "Spirit scorpion",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
- "id": "6837",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Salt and vinegaroon.",
- "melee_animation": "6254",
- "range_animation": "0",
- "combat_audio": "3611,3612,3610",
- "magic_level": "19",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6256",
- "name": "Spirit scorpion",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "19",
- "id": "6838",
- "range_level": "19",
- "attack_level": "19"
- },
- {
- "examine": "Crikey! Look at the size of those teeth!",
- "melee_animation": "4925",
- "combat_audio": "498,500,499",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "4928",
- "death_animation": "4929",
- "name": "Arctic bear",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "6839",
- "bonuses": "90,50,50,60,90,80,50,30,40,100,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Crikey! Look at the size of those teeth!",
- "melee_animation": "4925",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "4929",
- "name": "Arctic bear",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "101",
- "strength_level": "60",
- "id": "6840",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Would scare anyone off their tuffet.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "magic_level": "15",
- "respawn_delay": "50",
- "defence_animation": "5328",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Spirit spider",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "16",
- "id": "6841",
- "bonuses": "15,16,11,14,34,12,24,36,46,16,37,0,0,0,0",
- "range_level": "12",
- "attack_level": "17"
- },
- {
- "examine": "Would scare anyone off their tuffet.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "magic_level": "15",
- "respawn_delay": "50",
- "defence_animation": "5328",
- "weakness": "10",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Spirit spider",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "16",
- "id": "6842",
- "bonuses": "15,16,11,14,34,12,24,36,46,16,37,0,0,0,0",
- "range_level": "12",
- "attack_level": "17"
- },
- {
- "death_animation": "7656",
- "name": "Bloated leech",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7657",
- "strength_level": "1",
- "id": "6843",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7655"
- },
- {
- "examine": "It's like a little suction pump with eyes.",
- "melee_animation": "7657",
- "range_animation": "0",
- "magic_level": "49",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7656",
- "name": "Bloated leech",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "49",
- "id": "6844",
- "range_level": "49",
- "attack_level": "49"
- },
- {
- "death_animation": "7925",
- "name": "Honey badger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7928",
- "strength_level": "1",
- "id": "6845",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7927"
- },
- {
- "examine": "Violent little so-and-so.",
- "melee_animation": "7928",
- "range_animation": "0",
- "magic_level": "32",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7925",
- "name": "Honey badger",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "6846",
- "range_level": "32",
- "attack_level": "32"
- },
- {
- "examine": "The big cheese.",
- "combat_audio": "703,705,704",
- "magic_level": "27",
- "respawn_delay": "50",
- "name": "Albino rat",
- "defence_level": "32",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "28",
- "id": "6847",
- "bonuses": "64,42,40,57,64,50,76,82,72,24,75,5,15,5,5",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "The big cheese.",
- "combat_audio": "703,705,704",
- "magic_level": "27",
- "respawn_delay": "50",
- "weakness": "10",
- "name": "Albino rat",
- "defence_level": "32",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "28",
- "id": "6848",
- "bonuses": "64,42,40,57,64,50,76,82,72,24,75,5,15,5,5",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "Puts the 'crust' in 'crustacean'.",
- "melee_animation": "8112",
- "respawn_delay": "0",
- "defence_animation": "8114",
- "death_animation": "8113",
- "name": "Granite lobster",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "6849",
- "bonuses": "93,90,65,90,30,40,50,50,60,40,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Puts the 'crust' in 'crustacean'.",
- "melee_animation": "8112",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8113",
- "name": "Granite lobster",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "60",
- "id": "6850",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "31",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Bronze minotaur",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "6853",
- "bonuses": "15,20,10,15,10,5,35,0,0,0,0,0,0,0,0",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "15",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Bronze minotaur",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "15",
- "id": "6854",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "6855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "25",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "25",
- "id": "6856",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "He's just a big bully!",
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Steel minotaur",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "30",
- "id": "6857",
- "bonuses": "40,30,30,30,30,50,30,60,60,60,20,80,40,20,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "35",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Steel minotaur",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "35",
- "id": "6858",
- "range_level": "35",
- "attack_level": "35"
- },
- {
- "examine": "He's just a big bully",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "40",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "40",
- "id": "6859",
- "bonuses": "56,35,30,30,30,40,10,12,30,40,30,35,40,0,0",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "45",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "45",
- "id": "6860",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "1",
- "id": "6861",
- "bonuses": "40,50,40,45,35,20,50,36,30,40,15,18,30,10,0",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "55",
- "id": "6862",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6863",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "slayer_exp": "0",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6864",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "death_animation": "7818",
- "name": "Smoke devil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7816",
- "strength_level": "1",
- "id": "6865",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7817"
- },
- {
- "examine": "Well",
- "melee_animation": "7816",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7818",
- "name": "Smoke devil",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "55",
- "id": "6866",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7897",
- "name": "Bull ant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7896",
- "strength_level": "1",
- "id": "6867",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7900"
- },
- {
- "examine": "Putting all three of its best feet forward.",
- "melee_animation": "7896",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7897",
- "name": "Bull ant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "6868",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "It's just a harmless wee rabbit. ",
- "combat_style": "2",
- "melee_animation": "8304",
- "range_animation": "8304",
- "attack_speed": "5",
- "magic_level": "95",
- "defence_animation": "8306",
- "magic_animation": "8304",
- "death_animation": "8305",
- "name": "Wolpertinger",
- "defence_level": "95",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "619",
- "strength_level": "1",
- "id": "6869",
- "bonuses": "59,50,50,50,50,50,50,50,50,50,50,50,50,68,0",
- "range_level": "95",
- "attack_level": "1"
- },
- {
- "examine": "It's just a harmless wee rabbit. ",
- "combat_style": "2",
- "melee_animation": "8304",
- "range_animation": "8304",
- "attack_speed": "5",
- "magic_level": "95",
- "defence_animation": "8306",
- "magic_animation": "8304",
- "death_animation": "8305",
- "name": "Wolpertinger",
- "defence_level": "95",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "619",
- "strength_level": "1",
- "id": "6870",
- "bonuses": "59,50,50,50,50,50,50,50,50,50,50,50,50,68,0",
- "range_level": "95",
- "attack_level": "1"
- },
- {
- "melee_animation": "853",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "851",
- "death_animation": "852",
- "name": "Compost mound",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "96",
- "strength_level": "1",
- "id": "6871",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I suppose it could smell worse",
- "melee_animation": "7769",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "28",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7770",
- "name": "Compost mound",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "6872",
- "range_level": "28",
- "attack_level": "28"
- },
- {
- "examine": "Bulk haulage never smelled so bad.",
- "melee_animation": "5782",
- "range_animation": "5782",
- "attack_speed": "5",
- "magic_level": "91",
- "defence_animation": "5783",
- "magic_animation": "5782",
- "death_animation": "5784",
- "name": "Pack yak",
- "defence_level": "121",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "710",
- "strength_level": "104",
- "id": "6873",
- "bonuses": "64,67,5,72,128,49,264,234,164,49,132,40,35,40,40",
- "range_level": "86",
- "attack_level": "112"
- },
- {
- "examine": "Bulk haulage never smelled so bad.",
- "melee_animation": "5782",
- "range_animation": "5782",
- "attack_speed": "5",
- "magic_level": "91",
- "defence_animation": "5783",
- "weakness": "10",
- "magic_animation": "5782",
- "death_animation": "5784",
- "name": "Pack yak",
- "defence_level": "121",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "710",
- "strength_level": "104",
- "id": "6874",
- "bonuses": "64,67,5,72,128,49,264,234,164,49,132,40,35,40,40",
- "range_level": "86",
- "attack_level": "112"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit cockatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6875",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit cockatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6876",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit guthatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6877",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit guthatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6878",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "combat_audio": "703,705,704",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit saratrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6879",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit saratrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6880",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit zamatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6881",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit zamatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6882",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit pengatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6883",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit pengatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6884",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit coraxatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6885",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit coraxatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6886",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit vulatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6887",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit vulatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6888",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "examine": "The only creature with a mouth big enough to hold a cannonball.",
- "melee_animation": "7260",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "7257",
- "death_animation": "7256",
- "name": "Barker toad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "55",
- "id": "6889",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "The only creature with a mouth big enough to fit a cannon ball into.",
- "melee_animation": "7260",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7256",
- "name": "Barker toad",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "55",
- "id": "6890",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He looks like the type of guy who would keep penguins.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penguin keeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6891",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The lady of the pet shop.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pet shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6892",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The man of the pet shop.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pet shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6893",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6900",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6906",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's so adorably tiny!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby gecko",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tiny nut-thief.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby squirrel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6921",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "6942",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8304",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "8306",
- "death_animation": "8305",
- "name": "Bulldog puppy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "651",
- "strength_level": "1",
- "id": "6969",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "8570",
- "name": "Spirit jelly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8569",
- "strength_level": "1",
- "id": "6992",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8571"
- },
- {
- "examine": "On Runescape",
- "melee_animation": "8569",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8570",
- "name": "Spirit jelly",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "50",
- "id": "6993",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "combat_style": "1",
- "melee_animation": "8519",
- "respawn_delay": "0",
- "defence_animation": "8518",
- "death_animation": "8517",
- "name": "Spirit kalphite",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "6994",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hail to the Queen",
- "combat_style": "1",
- "melee_animation": "6223",
- "range_animation": "0",
- "magic_level": "25",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6228",
- "name": "Spirit kalphite",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "6995",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "A stripy little baby raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Must be the pack leader.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "slayer_exp": "74",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Big wolf",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "60",
- "id": "7005",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "An active spiny creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grenwall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hiding spiny creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grenwall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a strange little creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pawya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dug by a Pawya (Not actual exam).",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Earth Mound",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a strange little creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pawya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A most unlikely creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Platypus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7021",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A most unlikely creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby platypus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7024",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ogre snack with wings.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wimpy bird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7031",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shy creature with a toxic bite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Diseased kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7039",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fit to wear the uniform?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogress banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7049",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She walks as if she owns the place.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chief Tess",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fearsome adversary with no sense of humour.",
- "slayer_task": "64",
- "melee_animation": "8636",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8640",
- "name": "Ogress champion",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "7078",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
- "melee_animation": "8636",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8640",
- "name": "Ogress",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "7081",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
- "melee_animation": "8637",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8641",
- "name": "Ogress",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "7082",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "145",
- "strength_level": "51",
- "id": "7084",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "51"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "54",
- "id": "7085",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "57",
- "safespot": null,
- "lifepoints": "162",
- "strength_level": "57",
- "id": "7086",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "57"
- },
- {
- "examine": "He seems to be enjoying his time in the bar.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "1",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Thaki the delivery dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7115",
- "bonuses": "5,5,0,0,0,0,2,3,3,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tyras guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7120",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A hungry-looking rabbit.",
"melee_animation": "0",
"range_animation": "0",
+ "respawn_delay": "50",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -116817,24 +70213,7 @@
"safespot": null,
"lifepoints": "10",
"strength_level": "1",
- "id": "7125",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7128",
+ "id": "7126",
"aggressive": "true",
"range_level": "1",
"attack_level": "1"
@@ -116856,8461 +70235,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7130",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "That's one big Ork... ",
- "melee_animation": "8754",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "8755",
- "death_animation": "8756",
- "name": "Bork",
- "defence_level": "80",
- "lifepoints": "300",
- "strength_level": "90",
- "id": "7133",
- "bonuses": "200,120,100,300,300,120,400,500,300,200,300,400,200,90,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A spiny horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "100",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "90",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "It's an NPC.",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "90",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Sharimika",
- "id": "2505"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Sharimika",
- "id": "2506"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Layleen",
- "id": "2511"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Layleen",
- "id": "2512"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Karaday",
- "id": "2514"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Karaday",
- "id": "2515"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Safta Doc",
- "id": "2517"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Safta Doc",
- "id": "2518"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Gabooty",
- "id": "2520"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Gabooty",
- "id": "2521"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Fanellaman",
- "id": "2523"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Fanellaman",
- "id": "2524"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Jagbakoba",
- "id": "2526"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Jagbakoba",
- "id": "2527"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Murcaily",
- "id": "2529"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Murcaily",
- "id": "2530"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Rionasta",
- "id": "2532"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Rionasta",
- "id": "2533"
- },
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2685",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2686",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2687",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2688",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
- {
- "agg_radius": "64",
- "melee_animation": "8754",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "8755",
- "death_animation": "8756",
- "name": "Bork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "300",
- "strength_level": "1",
- "id": "7134",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aww, aren't they the cutest li - Argh!",
- "melee_animation": "8760",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "8761",
- "name": "Ork legion",
- "defence_level": "57",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "68",
- "id": "7135",
- "aggressive": "true",
- "bonuses": "5,10,3,5,3,5,5,5,10,0,0,0,0,0,0",
- "range_level": "68",
- "attack_level": "68"
- },
- {
- "examine": "A powerful wizard.",
- "combat_style": "2",
- "attack_speed": "25",
- "magic_level": "90",
- "spell_id": "11",
- "name": "Dagon'hai Elite",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "7137",
- "aggressive": "true",
- "bonuses": "220,190,140,120,120,130,90,120,120,200,100,154,150,93,190",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7138",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7139",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7140",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "He seems to have gone mad.",
- "melee_animation": "426",
- "range_animation": "426",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "null",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "25",
- "id": "7141",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "He thumps people who cheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7142",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7144",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinchette jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7145",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinchette jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7148",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7149",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7150",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7152",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7156",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7157",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A household pest.",
- "melee_animation": "8785",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8788",
- "name": "Cockroach drone",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "3",
- "id": "7158",
- "range_level": "1",
- "attack_level": "3"
- },
- {
- "examine": "Eurgh! A big bug.",
- "melee_animation": "8787",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8790",
- "name": "Cockroach worker",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "7159",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Euww! A giant bug.",
- "melee_animation": "8786",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8789",
- "name": "Cockroach soldier",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "26",
- "id": "7160",
- "bonuses": "10,10,10,5,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "7161",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "7162",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7202",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eaten a lot of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cockroach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7206",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's searching for crumbs of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eaten a lot of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7209",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7210",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7212",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7214",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7218",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7220",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7222",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7224",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7226",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7229",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7230",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7231",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7232",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7233",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7234",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7235",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7236",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A stripy little baby raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7275",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's so adorably tiny!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby gecko",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7285",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "8222",
- "magic_level": "70",
- "respawn_delay": "0",
- "defence_animation": "8224",
- "death_animation": "8226",
- "name": "Swamp titan",
- "defence_level": "78",
- "safespot": null,
- "lifepoints": "556",
- "strength_level": "1",
- "id": "7329",
- "bonuses": "60,60,60,60,50,50,100,200,200,28,100,100,70,70,70",
- "range_level": "70",
- "attack_level": "1"
- },
- {
- "examine": "Do you hear duelling banjos?",
- "combat_style": "1",
- "melee_animation": "8222",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8226",
- "name": "Swamp titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "117",
- "strength_level": "60",
- "id": "7330",
- "bonuses": "60,60,60,60,50,50,100,200,200,28,100,100,70,70,70",
- "range_level": "65",
- "attack_level": "60"
- },
- {
- "examine": "It buzzes and bites. Nasty.",
- "melee_animation": "8032",
- "range_animation": "8032",
- "magic_level": "21",
- "respawn_delay": "50",
- "defence_animation": "8034",
- "magic_animation": "8032",
- "death_animation": "8033",
- "name": "Spirit mosquito",
- "defence_level": "25",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "24",
- "id": "7331",
- "bonuses": "45,49,42,39,47,46,29,43,51,16,53,10,0,0,0",
- "range_level": "25",
- "attack_level": "28"
- },
- {
- "examine": "It buzzes and bites. Nasty.",
- "melee_animation": "8032",
- "range_animation": "8032",
- "magic_level": "21",
- "respawn_delay": "50",
- "defence_animation": "8034",
- "weakness": "10",
- "magic_animation": "8032",
- "death_animation": "8033",
- "name": "Spirit mosquito",
- "defence_level": "25",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "24",
- "id": "7332",
- "bonuses": "45,49,42,39,47,46,29,43,51,16,53,10,0,0,0",
- "range_level": "25",
- "attack_level": "28"
- },
- {
- "examine": "It spins.",
- "melee_animation": "8172",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8176",
- "name": "Void spinner",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7334",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "death_animation": "7864",
- "name": "Forge regent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7863",
- "strength_level": "1",
- "id": "7335",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7865"
- },
- {
- "examine": "This one will burn right through the net!",
- "melee_animation": "7863",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7864",
- "name": "Forge regent",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "60",
- "id": "7336",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "5230",
- "name": "Spirit larupia",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "5228",
- "strength_level": "1",
- "id": "7337",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5227"
- },
- {
- "examine": "Fast cat is fast.",
- "melee_animation": "5228",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit larupia",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7338",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It'll kill your enemies, and makes a great cup of tea.",
- "melee_animation": "7879",
- "range_animation": "422",
- "magic_level": "70",
- "respawn_delay": "50",
- "defence_animation": "7878",
- "weakness": "0",
- "magic_animation": "422",
- "death_animation": "7880",
- "name": "Geyser titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "620",
- "strength_level": "70",
- "id": "7339",
- "bonuses": "115,115,115,110,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "It'll kill your enemies, and makes a great cup of tea.",
- "melee_animation": "7879",
- "range_animation": "422",
- "magic_level": "70",
- "respawn_delay": "50",
- "defence_animation": "7878",
- "weakness": "0",
- "slayer_exp": "0",
- "magic_animation": "422",
- "death_animation": "7880",
- "name": "Geyser titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "620",
- "strength_level": "70",
- "id": "7340",
- "bonuses": "115,115,115,110,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "combat_style": "1",
- "melee_animation": "7980",
- "respawn_delay": "0",
- "defence_animation": "7981",
- "death_animation": "7692",
- "name": "Lava titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "528",
- "strength_level": "1",
- "id": "7341",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The King of the Titans!",
- "melee_animation": "8183",
- "range_animation": "8183",
- "magic_level": "70",
- "respawn_delay": "15",
- "defence_animation": "8185",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "8183",
- "death_animation": "8184",
- "name": "Steel titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "750",
- "strength_level": "70",
- "id": "7343",
- "bonuses": "105,105,105,100,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "The King of the Titans!",
- "melee_animation": "8183",
- "range_animation": "8183",
- "magic_level": "70",
- "respawn_delay": "15",
- "defence_animation": "8185",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "8183",
- "death_animation": "8184",
- "name": "Steel titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "750",
- "strength_level": "70",
- "id": "7344",
- "bonuses": "105,105,105,100,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Four fists can make quite an impression IN someone...",
- "melee_animation": "8050",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "8051",
- "death_animation": "8052",
- "name": "Obsidian golem",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "7345",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Four fists can make quite an impression IN someone...",
- "melee_animation": "8050",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8052",
- "name": "Obsidian golem",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "104",
- "strength_level": "60",
- "id": "7346",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "5990",
- "name": "Talon beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "5989",
- "strength_level": "1",
- "id": "7347",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5988"
- },
- {
- "examine": "If a normal black cat is bad luck",
- "melee_animation": "5989",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5990",
- "name": "Talon beast",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "60",
- "id": "7348",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7979",
- "name": "Abyssal titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "667",
- "melee_animation": "7693",
- "strength_level": "1",
- "id": "7349",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7691"
- },
- {
- "examine": "Big",
- "melee_animation": "7693",
- "range_animation": "0",
- "magic_level": "70",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7692",
- "name": "Abyssal titan",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "125",
- "strength_level": "70",
- "id": "7350",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "It torches.",
- "melee_animation": "8235",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8236",
- "name": "Void torcher",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7352",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "death_animation": "7758",
- "name": "Giant chinchompa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "7755",
- "strength_level": "1",
- "id": "7353",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7753"
- },
- {
- "examine": "Looks a little...volatile.",
- "melee_animation": "7755",
- "range_animation": "0",
- "magic_level": "29",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7758",
- "name": "Giant chinchompa",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "41",
- "strength_level": "29",
- "id": "7354",
- "range_level": "29",
- "attack_level": "29"
- },
- {
- "examine": "Scorching!",
- "melee_animation": "7834",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7833",
- "name": "Fire titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7355",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Scorching!",
- "melee_animation": "7834",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7833",
- "name": "Fire titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7356",
- "bonuses": "64,45,76,82,208,84,221,231,179,89,113,23,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Gathers rolling stones to bash people with.",
- "melee_animation": "7844",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7843",
- "name": "Moss titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7357",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Gathers rolling stones to bash people with.",
- "melee_animation": "7844",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7843",
- "name": "Moss titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7358",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Frosty the highly violent snowman.",
- "melee_animation": "7845",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7846",
- "name": "Ice titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7359",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Frosty the highly violent snowman.",
- "melee_animation": "7845",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7846",
- "name": "Ice titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7360",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "combat_style": "1",
- "melee_animation": "8257",
- "attack_speed": "3",
- "respawn_delay": "0",
- "defence_animation": "8256",
- "death_animation": "8258",
- "name": "Spirit Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "7361",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This bat burned down the belfry.",
- "combat_style": "1",
- "melee_animation": "8257",
- "range_animation": "0",
- "attack_speed": "3",
- "magic_level": "22",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8258",
- "name": "Spirit Tz-Kih",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "7362",
- "range_level": "22",
- "attack_level": "22"
- },
- {
- "start_gfx": "1367",
- "melee_animation": "5228",
- "respawn_delay": "0",
- "defence_animation": "5227",
- "death_animation": "5230",
- "name": "Spirit graahk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7363",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Those spikes are pretty big!",
- "start_gfx": "1367",
- "melee_animation": "5229",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit graahk",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7364",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "start_gfx": "1365",
- "melee_animation": "5228",
- "respawn_delay": "0",
- "defence_animation": "5227",
- "death_animation": "5230",
- "name": "Spirit kyatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7365",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Those teeth are pretty big!",
- "start_gfx": "1365",
- "melee_animation": "5228",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit kyatt",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7366",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It shifts.",
- "melee_animation": "8131",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8133",
- "name": "Void shifter",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7368",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "examine": "It ravages.",
- "melee_animation": "8086",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8087",
- "name": "Void ravager",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7371",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "examine": "It's like a little stomach on wings.",
- "melee_animation": "7994",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7996",
- "name": "Ravenous locust",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "60",
- "id": "7373",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7996",
- "name": "Ravenous locust",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7994",
- "strength_level": "1",
- "id": "7374",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7995"
- },
- {
- "examine": "He is an iron man!",
- "combat_style": "1",
- "melee_animation": "7946",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "7948",
- "weakness": "10",
- "death_animation": "7947",
- "name": "Iron titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "694",
- "strength_level": "65",
- "id": "7375",
- "bonuses": "120,130,100,109,80,120,102,90,103,80,100,108,105,66,90",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He is an iron man!",
- "combat_style": "1",
- "melee_animation": "7946",
- "combat_audio": "0,0,0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "7948",
- "weakness": "10",
- "slayer_exp": "0",
- "death_animation": "7947",
- "name": "Iron titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "694",
- "strength_level": "65",
- "id": "7376",
- "bonuses": "120,130,100,109,80,120,102,90,103,80,100,108,105,66,90",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "Where did I put the marshmallows?",
- "melee_animation": "8080",
- "range_animation": "0",
- "magic_level": "46",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Pyrelord",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "7378",
- "range_level": "46",
- "attack_level": "46"
- },
- {
- "melee_animation": "8965",
- "respawn_delay": "60",
- "defence_animation": "8966",
- "death_animation": "8967",
- "name": "Elfinlocks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "7379",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "8965",
- "respawn_delay": "60",
- "defence_animation": "8966",
- "death_animation": "8967",
- "name": "Missi Sissi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "7380",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8955",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8957",
- "death_animation": "8956",
- "name": "Missi Sissi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "7381",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8955",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8957",
- "death_animation": "8956",
- "name": "Uberlass",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "7382",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The vengeful spirit of one who died within Daemonheim.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "name": "Elisabeta",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "25",
- "id": "7398",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "7417",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An impling manager: what a terrifying thought!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wigglewoo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7425",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This worker looks after the incubator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Orangeowns",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7426",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "386",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Eudav",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "7443",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "name": "Fairtrade",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "7459",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Teapotspout",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "7460",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7461",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's bubbling, gross.",
- "melee_animation": "9130",
- "range_animation": "9130",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9132",
- "magic_animation": "9130",
- "death_animation": "9131",
- "name": "Hotwater",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "99",
- "id": "7462",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,45,20,0",
- "range_level": "1",
- "attack_level": "99"
- },
- {
- "examine": "It's bubbling, gross.",
- "melee_animation": "9130",
- "range_animation": "9130",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9132",
- "magic_animation": "9130",
- "death_animation": "9131",
- "name": "Hotwater",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "99",
- "id": "7463",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,45,20,0",
- "range_level": "1",
- "attack_level": "99"
- },
- {
- "examine": "His usual sunny disposition is not in evidence.",
- "range_animation": "0",
- "magic_level": "30",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Lady Seenit",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7475",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "name": "Berrybree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7476",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Stuffstuffer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7477",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Learking",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "7479",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Rachael",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "7480",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "You clearly can't live on treasure alone.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Cool Mom227",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7481",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A testament to the effect of greed.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Purepker895",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7482",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He wanted loot",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Pkmaster0036",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7483",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Eternally looking for that big payday.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Cow1337killr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7484",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An anatomist's dream.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "1337sp34kr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7487",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A hand seems to be gripping his spine through his chest. Ouch.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "1337sp34kr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7488",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A desert dweller taken to banditry.",
- "melee_animation": "9705",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sarah Domin",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7492",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Calls himself an archaeologist.",
- "melee_animation": "9715",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sarah Domin",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7493",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He hasn't found much of use",
- "melee_animation": "9705",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sue Spammers",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7494",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An amateur historian with added greed.",
- "melee_animation": "9715",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Killerwail",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7495",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A rocky horror.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sabre-toothed kyatt",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
- "id": "7497",
- "range_level": "1",
- "attack_level": "27"
- },
- {
- "examine": "This dung beetle has mistaken you for its staple diet.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Cerulean twitch",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7500",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "It's looking unwell - probably something it ate.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Abone",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Once a valuable contributor to the ecosystem.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Mythmaster",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "This is what happens if you play with your food.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Donkey Wrong",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He likes a good fight",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Creapantic",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7504",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes a good fight",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frondlike",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7505",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Happy Spud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7506",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Blood-thirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nobodyhere",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bluehairlass",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7508",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ilikekebabs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7510",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trunka Lex",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7511",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Val Razz",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Abstractclas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7513",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodthirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bigbluebox",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodthirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Funorbrox",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7515",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Morrisnorris",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7518",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He demands to have some booze.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ketchuppl0x",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7520",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Redheadmonky",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "7528",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "0",
- "examine": "It's an NPC.",
- "name": "3sacrowd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "90",
- "magic_level": "70",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7551",
- "bonuses": "200,200,200,100,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7552",
- "bonuses": "200,200,200,200,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "5",
- "magic_level": "90",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7553",
- "bonuses": "200,200,100,200,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "90",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7554",
- "bonuses": "100,100,200,200,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7555",
- "bonuses": "100,100,100,50,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "15",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7556",
- "bonuses": "100,100,100,100,25,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7557",
- "bonuses": "100,100,50,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7558",
- "bonuses": "50,50,100,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lostme",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7560",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chiercat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7561",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skydischarge",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7562",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agplus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7563",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Distantthin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7564",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Allmarshes",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7565",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Explosive67",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7566",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alpha1beta",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7569",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Solltalk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7570",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hm Val",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like the type of guy who would mind monkeys.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizzydumped",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7572",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like the type of guy who would mind monkeys.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Oddskater",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7573",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Poledragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "7580",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes inflicting pain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al Truism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Don of penguins.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ohhhhdude",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7583",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has unbelievable strength!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7605",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7606",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7607",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7608",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7609",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7614",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7615",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7616",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7617",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7618",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7619",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7620",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7621",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7626",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7631",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7632",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7634",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7635",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Ew it's still alive.",
- "slayer_task": "21",
- "melee_animation": "9125",
- "range_animation": "9125",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9127",
- "weakness": "9",
- "magic_animation": "9125",
- "death_animation": "9126",
- "name": "Skeletal hand",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "85",
- "id": "7640",
- "aggressive": "true",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "range_level": "1",
- "attack_level": "85"
- },
- {
- "examine": "Ew it's still alive.",
- "slayer_task": "21",
- "melee_animation": "9125",
- "range_animation": "9125",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9127",
- "weakness": "9",
- "magic_animation": "9125",
- "death_animation": "9126",
- "name": "Zombie hand",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "75",
- "id": "7641",
- "aggressive": "true",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
- "melee_animation": "9102",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "206",
- "magic_animation": "0",
- "death_animation": "9131",
- "name": "Mutated bloodveld",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "56",
- "id": "7642",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "56"
- },
- {
- "examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
- "melee_animation": "9102",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "206",
- "magic_animation": "0",
- "death_animation": "9131",
- "name": "Mutated bloodveld",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "116",
- "strength_level": "58",
- "id": "7643",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7644",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7645",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7646",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7647",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7648",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7649",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7650",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7651",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7654",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7655",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7656",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7657",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7658",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7659",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7660",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7661",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7682",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7683",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7691",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7692",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7693",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7694",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7695",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7696",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7697",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7698",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7699",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7700",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7701",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7702",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7703",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7704",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7705",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7706",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a big ugly dog.",
- "slayer_task": "27",
- "melee_animation": "6565",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6564",
- "name": "Temple guardian",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "7711",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "melee_animation": "8080",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8084",
- "death_animation": "8078",
- "name": "Baby icefiend",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7713",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A small ice demon.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7714",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7715",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "null",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7716",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "7727",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "melee_animation": "8080",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8084",
- "death_animation": "8078",
- "name": "Baby icefiend",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7736",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it full of rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jiggling crate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A warrior who has been long forgotten.",
- "range_animation": "0",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Three little kittens",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "30",
- "id": "7741",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "30"
- },
- {
- "examine": "It looks upset.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "TzHaar-Xil-Tog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A TzHaar librarian.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "TzHaar-Mej-Lor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7752",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A TzHaar-Hur stamping stone tablets.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Library assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7756",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7767",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7768",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7769",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A monster made of magma.",
- "combat_style": "1",
- "melee_animation": "9337",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "9340",
- "name": "Lava monster",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "28",
- "id": "7772",
- "aggressive": "true",
- "range_level": "38",
- "attack_level": "28"
- },
- {
- "examine": "A monster like many others",
- "combat_style": "2",
- "melee_animation": "9341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "9344",
- "name": "Fire monster",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "28",
- "id": "7773",
- "aggressive": "true",
- "range_level": "38",
- "attack_level": "28"
- },
- {
- "examine": "A big, scary hand! ",
- "melee_animation": "1802",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1803",
- "slayer_exp": "105",
- "death_animation": "1804",
- "name": "Wall Beast",
- "defence_level": "38",
- "movement_radius": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "38",
- "id": "7823",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A melee training dummy",
- "melee_animation": "94",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "97",
- "name": "Melee dummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "7891",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man of his craft.",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7958",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A master of his craft.",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7959",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like a professional explorer.",
- "name": "Explorer Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7969",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sure looks grave.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8149",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "This is a rotten one.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8150",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It hasn't quite gotten around to dying.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8151",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "1179"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "450"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "451"
- },
- {
- "examine": "Tough-looking combat type.",
- "name": "Mubariz",
- "id": "957"
- },
- {
- "examine": "Looks kinda bored.",
- "name": "Fadli",
- "id": "958"
- },
- {
- "examine": "Trained to deal with all sorts of injuries.",
- "name": "A'abla",
- "id": "959"
- },
- {
- "examine": "Wow! She's made a statement with that hair!",
- "name": "Sabreen",
- "id": "960"
- },
- {
- "examine": "Has the messy job of putting players back together again.",
- "name": "Jaraah",
- "id": "962"
- },
- {
- "examine": "Battle-scarred.",
- "name": "Zahwa",
- "id": "963"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Ima",
- "id": "964"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Sabeil",
- "id": "965"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Jadid",
- "id": "966"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Dalal",
- "id": "967"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Afrah",
- "id": "968"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Jeed",
- "id": "969"
- },
- {
- "examine": "He smells funny.",
- "name": "Diango",
- "id": "970"
- },
- {
- "examine": "Shopkeeper.",
- "name": "Chadwell",
- "id": "971"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "972"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "973"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "974"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "975"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "976"
- },
- {
- "examine": "This dwarf looks intoxicated.",
- "name": "Kamen",
- "id": "996"
- },
- {
- "examine": "A dwarven maker of gauntlets.",
- "name": "Klank",
- "id": "995"
- },
- {
- "examine": "One of King Tyras's men.",
- "name": "Tyras guard",
- "id": "1206"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "1209"
- },
- {
- "examine": "One of King Lathas' messengers.",
- "name": "Kings messenger",
- "id": "1210"
- },
- {
- "examine": "Mysterious swamp lights...",
- "name": "Will o' the wisp",
- "id": "1212"
- },
- {
- "examine": "He's washing his clothes in the lake.",
- "name": "Tegid",
- "id": "1213"
- },
- {
- "examine": "A plant.",
- "name": "Thistle",
- "id": "1214"
- },
- {
- "examine": "What a colourful bunch of parrots!",
- "name": "Parrots",
- "id": "1215"
- },
- {
- "examine": "Rather dense and soppy looking.",
- "name": "Romeo",
- "id": "639"
- },
- {
- "examine": "Newspaper seller.",
- "name": "Benny",
- "id": "5925"
- },
- {
- "examine": "One of Gertrude's Sons.",
- "name": "Wilough",
- "id": "783"
- },
- {
- "examine": "An old gypsy lady.",
- "name": "Gypsy Aris",
- "id": "882"
- },
- {
- "examine": "Interesting assortment of clothes on offer...",
- "name": "Thessalia",
- "id": "548"
- },
- {
- "examine": "Sells superior staffs.",
- "name": "Zaff",
- "id": "546"
- },
- {
- "examine": "A retired vampyre hunter.",
- "name": "Dr Harlow",
- "id": "756"
- },
- {
- "examine": "I could get a beer from him.",
- "name": "Bartender",
- "id": "733"
- },
- {
- "examine": "Director of the Grand Exchange.",
- "id": "6522"
- },
- {
- "examine": "He can look after my money. Good with money.",
- "id": "6535"
- },
- {
- "examine": "She can look after my money. Good with money.",
- "id": "6532"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6530"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6528"
- },
- {
- "examine": "He can look after my money. Good with money.",
- "id": "6534"
- },
- {
- "examine": "She can look after my money. Good with money.",
- "id": "6533"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6531"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6529"
- },
- {
- "examine": "She looks very worried about something.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Caroline",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "696",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very good sailor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Holgart",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "698",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smells a bit fishy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ezekial Lovecraft",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A (semi) retired member of the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Col. O'Niall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4872",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A villager named Jeb.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jeb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4895",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little girl. She looks terrified.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Kimberly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stinky! Poor guy.",
- "name": "Yeti",
- "id": "130"
- },
{
"examine": "One of the Burgher's Protectors",
"death_animation": "836",
@@ -125319,1098 +70243,8 @@
"id": "5515",
"defence_animation": "404"
},
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "7",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "284",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "8",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "284",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "9",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "Not very civilised looking.",
- "name": "Barbarian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "12",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly magical.",
- "start_gfx": "2728",
- "combat_style": "2",
- "melee_animation": "2791",
- "range_animation": "711",
- "combat_audio": "511,513,512",
- "magic_level": "21",
- "respawn_delay": "12",
- "end_gfx": "2737",
- "defence_animation": "404",
- "weakness": "3",
- "slayer_exp": "0",
- "magic_animation": "711",
- "death_animation": "9055",
- "name": "Wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "1",
- "id": "13",
- "bonuses": "23,7,8,2,1,8,12,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "projectile": "2729",
- "attack_level": "1"
- },
- {
- "examine": "Not very fashion conscious.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Warrior woman",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "22",
- "id": "15",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Part of Al-Kharid's elite fighting force.",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "6",
- "defence_animation": "387",
- "weakness": "7",
- "magic_animation": "390",
- "death_animation": "836",
- "name": "Al-Kharid warrior",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "19",
- "strength_level": "15",
- "id": "18",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Shiny armour!",
- "melee_animation": "7042",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "19",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A holy warrior.",
- "melee_animation": "390",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Paladin",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "54",
- "id": "20",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "Heroic!",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Hero",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "55",
- "id": "21",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "They love the forests.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "respawn_delay": "18",
- "defence_animation": "404",
- "magic_animation": "0",
- "death_animation": "9055",
- "name": "Forester",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "13",
- "id": "22",
- "range_level": "1",
- "attack_level": "14"
- },
- {
- "examine": "A member of Ardougne's militia.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Knight of Ardougne",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "23",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "To protect and serve the populace of Ardougne.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Knight of Ardougne",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "26",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Good with arrows.",
- "start_gfx": "19",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "12",
- "defence_animation": "404",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "20",
- "id": "27",
- "range_level": "40",
- "projectile": "10",
- "attack_level": "20"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zoo keeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "28",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's a lumberjack, and he's ok.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chuck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "29",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Doesn't water down the beer too much.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "30",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "31",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the peace... kind of.",
- "melee_animation": "401",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "18",
- "id": "32",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "examine": "What a boring job he has.",
- "name": "Door man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "33",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Watches stuff. But who watches him?",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Watchman",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "31",
- "id": "34",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "examine": "The head gardener.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wyson the gardener",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "36",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bold knight famed for his travels.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigbert the Adventurer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "37",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Builds ships for a living.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shipyard worker",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "38",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Builds ships for a living.",
- "melee_animation": "401",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shipyard worker",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "39",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Let's not go skinny dipping eh?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shark",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "40",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly sheared.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "42",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "43",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "44",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "45",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "46",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "47",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A jungle version of the chicken, but more vicious.",
- "slayer_task": "7",
- "melee_animation": "5387",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5389",
- "name": "Oomlie bird",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "40",
- "id": "48",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A wood nymph.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dryad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "56",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A delicate creature from this strange realm.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "57",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "5",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "59",
- "aggressive": "false",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "defence_animation": "5328",
- "weakness": "2",
- "slayer_exp": "33",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "24",
- "id": "60",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A barely visible deadly jungle spider.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "5328",
- "weakness": "2",
- "slayer_exp": "50",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "35",
- "poison_immune": "false",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "37",
- "id": "62",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "65",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Ice spider",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "55",
- "id": "64",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,20,17,12,13,13,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A funny little man normally associated with rainbows.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "65",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "66",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "67",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "68",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hideous malformed elf.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Orc",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "71",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hideously deformed creature.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Troll",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "72",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dead man walking.",
- "slayer_task": "93",
- "melee_animation": "5567",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "5568",
- "slayer_exp": "22",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "9",
- "id": "73",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Dead woman walking.",
- "slayer_task": "93",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "24",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "13",
- "id": "74",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "The walking dead.",
- "slayer_task": "93",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "75",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The walking dead.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "76",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The living dead.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "4",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "22",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Summoned Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "9",
- "id": "77",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "A shadowy, barely visible flying entity from some evil place.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "slayer_exp": "80",
- "magic_animation": "0",
- "death_animation": "4917",
- "name": "Death wing",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "70",
- "id": "79",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "Oh, it's a camel.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "80",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "81",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A creature made from clay.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Golem",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "85",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "defence_animation": "4934",
- "weakness": "8",
- "slayer_exp": "5",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "3",
- "id": "86",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "slayer_exp": "10",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "87",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "slayer_exp": "12",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "10",
- "id": "88",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Horse with a horn.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "32",
- "defence_animation": "6375",
- "weakness": "3",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "19",
- "strength_level": "13",
- "id": "89",
- "range_level": "1",
- "attack_level": "11"
- },
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -126432,7 +70266,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -126453,7 +70286,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -126474,7 +70306,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -126493,869 +70324,6 @@
"range_level": "1",
"attack_level": "32"
},
- {
- "examine": "Not man's best friend.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "combat_audio": "481,491,490",
- "attack_speed": "4",
- "slayer_exp": "69",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "55",
- "id": "95",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A vicious mountain wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "4",
- "defence_animation": "6578",
- "weakness": "9",
- "slayer_exp": "34",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "White wolf",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "16",
- "id": "96",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A vicious mountain wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "4",
- "defence_animation": "6578",
- "weakness": "7",
- "slayer_exp": "44",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "White wolf",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "97",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Bow wow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "98",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't seem pleased to see me.",
- "slayer_task": "27",
- "melee_animation": "6562",
- "range_animation": "6562",
- "attack_speed": "4",
- "respawn_delay": "15",
- "defence_animation": "6563",
- "weakness": "7",
- "slayer_exp": "49",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Guard dog",
- "defence_level": "37",
- "safespot": null,
- "lifepoints": "49",
- "strength_level": "36",
- "id": "99",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A large dim looking humanoid.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "43",
- "id": "115",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,20,0,0,0",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "slayer_task": "44",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "360",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "116",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A short angry guy.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "7",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "118",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "A mountain dwelling short angry guy.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "120",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "122",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "123",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "125",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Looks pretty otherworldly to me!",
- "slayer_task": "65",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "45",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "name": "Otherworldly being",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "126",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An inhabitant of icy regions.",
- "slayer_task": "7",
- "melee_animation": "5669",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5671",
- "name": "Penguin",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "6",
- "id": "131",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "A unicorn with a blackened heart.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "24",
- "defence_animation": "6375",
- "weakness": "3",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Black unicorn",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "10",
- "id": "133",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Aaw",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Terrorchick gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "137",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant raptor.",
- "slayer_task": "7",
- "melee_animation": "1010",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "138",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "139",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
- },
- {
- "examine": "A servant to Iban.",
- "melee_animation": "338",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "340",
- "name": "Souless",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "140",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "Must be the pack leader.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "74",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Big Wolf",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "141",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "slayer_exp": "34",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "69",
- "melee_animation": "6559",
- "combat_audio": "481,491,490",
- "strength_level": "1",
- "id": "142",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rare jungle wolf - specific to the Kharazi jungle.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "69",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Jungle Wolf",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "143",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "63"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "145",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cormorant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pelican",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "148",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These look much better in the wild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Butterfly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "153",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I love butterflies.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Butterfly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "154",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Small",
- "melee_animation": "191",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "159",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems to crawl the caves.",
- "melee_animation": "266",
- "range_animation": "266",
- "attack_speed": "5",
- "defence_animation": "267",
- "weakness": "9",
- "magic_animation": "266",
- "death_animation": "265",
- "name": "Gnome child",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "23",
- "id": "160",
- "bonuses": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "Small",
- "melee_animation": "191",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "161",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can advise on training.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "162",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tree gnome guard.",
- "melee_animation": "1218",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1224",
- "name": "Gnome guard",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "163",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A tree gnome guard.",
- "melee_animation": "192",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome guard",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "164",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A female gnome.",
- "combat_style": "1",
- "melee_animation": "191",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome woman",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "168",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A female gnome.",
- "combat_style": "1",
- "melee_animation": "191",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome woman",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "169",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "27",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "172",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1",
- "prj_height": "3"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "24",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "1",
- "id": "174",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "2",
- "examine": "He jumps out and attacks people.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "175",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "A dark-hearted knight.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "178",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "melee_animation": "390",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "388",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "1",
- "id": "179",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "180",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "182",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "183",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "184",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "185",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "Rogueish.",
"melee_animation": "386",
@@ -127375,1880 +70343,8 @@
"range_level": "1",
"attack_level": "7"
},
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "25",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "18",
- "id": "188",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "18"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "25",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "189",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "8"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "40",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "38",
- "id": "190",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "38"
- },
- {
- "examine": "A warrior of Darkness.",
- "melee_animation": "451",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "8",
- "death_animation": "9055",
- "name": "Dark warrior",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "192",
- "bonuses": "1,1,1,1,1,1,1,1,1,1,1,1,1,1,1",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A crazy evil necromancer.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "28",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Necromancer",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "194",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bandit Camp guard.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard Bandit",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "196",
- "range_level": "20",
- "attack_level": "1"
- },
- {
- "examine": "A mighty warrior!",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gunthor the Brave",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "41",
- "strength_level": "29",
- "id": "199",
- "range_level": "1",
- "attack_level": "29"
- },
- {
- "examine": "Has a fearsome scowl.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Heather",
- "defence_level": "28",
- "lifepoints": "40",
- "strength_level": "28",
- "id": "202",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Has a fearsome posture.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Donny the Lad",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "203",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Nice hair.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Speedy Keith",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "204",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A crazy evil druid.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Salarin the Twisted",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "58",
- "id": "205",
- "aggressive": "true",
- "bonuses": "45,50,43,55,39,31,19,28,33,22,22,15,13,9,8",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "A dwarven guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Guard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "206",
- "aggressive": "false",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "The head honcho around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Lawgof",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "208",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A former Knight of the Round Table.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Percival",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "212",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks unhappy...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Peasant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "214",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "High Priest of Entrana.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "High Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a fisherman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "219",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very well...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Fisher King",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "220",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks mean and powerful.",
- "melee_animation": "128",
- "range_animation": "0",
- "attack_speed": "7",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "131",
- "name": "Black Knight Titan",
- "defence_level": "91",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "100",
- "id": "221",
- "aggressive": "true",
- "bonuses": "27,27,27,0,0,18,27,18,1000,1000,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "91"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "10",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "7",
- "id": "222",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "A peaceful monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Kojo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "223",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "224",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "He looks elderly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grandpa Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "230",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes to cut down trees.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "231",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He isn't very friendly.",
- "melee_animation": "6489",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Renegade Knight",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "237",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "A terrifying spirit.",
- "melee_animation": "5540",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5542",
- "name": "Thrantax the Mighty",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "50",
- "id": "238",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Specialist meat transporter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "2301",
- "name": "Teapotspout",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "246",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6490",
- "name": "Sir Mordred",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "6489",
- "strength_level": "1",
- "id": "247",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6488"
- },
- {
- "examine": "Legendary King of the Britons.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Arthur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the door.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khazard Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "253",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's been guarding the tavern for a bit too long.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khazard Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "254",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His armour indicates he's a Khazard Guard.",
- "melee_animation": "395",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "255",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "His armour indicates he's a Khazard Guard.",
- "melee_animation": "395",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "256",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A slave fighter. He looks mistreated and weak.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fightslave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6581",
- "respawn_delay": "60",
- "defence_animation": "6578",
- "death_animation": "6576",
- "name": "Bouncer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "116",
- "strength_level": "1",
- "id": "269",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Khazard's strongest ogre warrior.",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "Khazard Ogre",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "270",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "46"
- },
- {
- "examine": "A guard who has devoted their life to Armadyl.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "name": "Guardian of Armadyl",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "274",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A guard who has devoted their life to Armadyl.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "name": "Guardian of Armadyl",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "275",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Intimidating!",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fire Warrior of Lesarkus",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "277",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Lumbridge Castle's head cook.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "278",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Omad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "279",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old drunk monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Cedric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "280",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Ardougne Monk.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "281",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "A dastardly blanket thief.",
- "melee_animation": "386",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "282",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "The head of the treacherous blanket stealing gang.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Head Thief",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "283",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "A dwarf smith. Quite handy with a hammer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "284",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She doesn't look too happy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Veronica",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "285",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Councillor Halgrive",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A serious-looking doctor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doctor Orbon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "290",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A farmer who's seen happier times.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer Brumty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "291",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "296",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7220",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "297",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "298",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "583",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7213",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "299",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "An old motherly witch with a curious smile and a hooked nose.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hetty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "307",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a colourful personality.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Da Vinci",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "336",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's ready for a bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chancy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "338",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's ready for a bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chancy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "339",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hops",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "340",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hops",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "341",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks rather concerned.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guidor's wife",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "342",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "344",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "345",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "346",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "358",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "King Lathas of East Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Lathas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "364",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smells very chemically...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chemist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "367",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "368",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mourner",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "369",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "examine": "She's quite a looker!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nurse Sarah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "373",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "slayer_task": "64",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "27",
- "respawn_delay": "25",
- "defence_animation": "360",
- "weakness": "8",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "27",
- "id": "374",
- "aggressive": "true",
- "bonuses": "15,15,10,20,40,15,50,50,50,20,50,58,0,0,0",
- "range_level": "27",
- "attack_level": "27"
- },
- {
- "examine": "Inspects people's packages.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customs officer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "380",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "382",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not very civilised looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barbarian guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "384",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could do with a shave...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "388",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A brightly coloured game bird.",
- "melee_animation": "2371",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "2373",
- "name": "Big fish",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "3",
- "id": "390",
- "range_level": "1",
- "attack_level": "3"
- },
- {
- "examine": "Beefy.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Legends Guild guard; he protects the entrance to the Legends Guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Legends guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He deals in exotic types of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She deals in exotic types of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Insects buzzing around.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swarm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "411",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An annoying flappy thing.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "4915",
- "attack_speed": "5",
- "magic_level": "10",
- "respawn_delay": "30",
- "defence_animation": "4916",
- "weakness": "4",
- "slayer_exp": "8",
- "death_animation": "4918",
- "name": "Bat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "412",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "5",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "5",
- "id": "419",
- "range_level": "5",
- "attack_level": "5"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "10",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "420",
- "range_level": "10",
- "attack_level": "10"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "15",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "15",
- "id": "421",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "45",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "79",
- "strength_level": "45",
- "id": "422",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "35",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "45",
- "id": "423",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "45",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "159",
- "strength_level": "45",
- "id": "424",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Entrance clerk for the Brimhaven Agility Arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cap'n Izzy No-Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "437",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "17",
- "id": "438",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "32",
- "id": "439",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "48",
- "id": "440",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "65",
- "id": "441",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "100",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "100",
- "id": "442",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "130",
- "safespot": null,
- "lifepoints": "170",
- "strength_level": "130",
- "id": "443",
- "range_level": "1",
- "attack_level": "130"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "444",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "445",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "5",
- "id": "446",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "447",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "448",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "449",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "A large well built farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seth Groats",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "452",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be very devout.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Aereck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "456",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A ghost!",
- "name": "Restless ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "457",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very holy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Urhney",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "458",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "It rattles when it moves.",
- "slayer_task": "75",
"combat_style": "2",
"melee_animation": "5485",
"range_animation": "5485",
@@ -129269,5714 +70365,8 @@
"range_level": "1",
"attack_level": "3"
},
- {
- "examine": "It's a gnome. He looks important.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Bolren",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "469",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tree gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Commander Montai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "470",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of General Khazard's warriors.",
- "melee_animation": "401",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard trooper",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "475",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "An open eye of World-gorger.",
- "magic_level": "5",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "name": "Khazard trooper",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "1",
- "id": "476",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks real nasty",
- "melee_animation": "401",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard warlord",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "477",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "It's one of General Khazard's commanders.",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard commander",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "478",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "It's a tree gnome trooper.",
- "melee_animation": "190",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome troop",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "24",
- "id": "479",
- "range_level": "32",
- "attack_level": "24"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 1",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 2",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "482",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 3",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a young tree gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Local Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I guess he wants to be more than just the muscle.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Giant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "487",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look like he'd trust his own mother.",
- "slayer_task": "38",
- "melee_animation": "6199",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6190",
- "name": "Goblin guard",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "489",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "If the mummy is at school",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "490",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The essence of evil.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spirit of Scorpius",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "492",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious",
- "slayer_task": "71",
- "melee_animation": "6261",
- "range_animation": "0",
- "combat_audio": "3611,3612,3610",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "6260",
- "name": "Grave scorpion",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "493",
- "aggressive": "true",
- "range_level": "7",
- "attack_level": "5"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "494",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Good with money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "495",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "499",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "503",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "504",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "505",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "melee_animation": "5571",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "death_animation": "5575",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "507",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5507",
- "respawn_delay": "60",
- "defence_animation": "5508",
- "death_animation": "5509",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "508",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5532",
- "respawn_delay": "60",
- "defence_animation": "5533",
- "death_animation": "5534",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "509",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's the Captain of the 'Lady of the Waves'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Shanks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "518",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on axes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "519",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "520",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Helps sell stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes people spending money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "522",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes helping sell stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "523",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A product of a consumerist society.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A product of a consumerist society.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "526",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an interesting assortment of items for sale.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "530",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works on commission.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a grave keeper",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "60",
- "id": "532",
- "aggressive": "true",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "534",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "535",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very snappily dressed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silk trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "539",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "For the finest in armoured legware.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Louie Legs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "542",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Helps the shopkeeper sell swords.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "552",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "For the interesting clothing items you just can't find elsewhere.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fancy-dress shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "554",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has a fine moustache.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "555",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could stand to lose a few pounds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "561",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an odd smell about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Candle-maker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "562",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks strange and mysterious.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "569",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems very well-off.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gem merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "570",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "So where are the butcher and the candlestick-maker?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has a very exotic aroma about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spice seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "572",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Knows how to keep warm in the winter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fur trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "573",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems very well-off.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silk merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He runs a Mining store.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Drogo dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if he wants to buy my junk?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "If crafting's your thing, he's your man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rommik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to sell tea.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tea seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "595",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pizza expert; in both making and eating.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fat Tony",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "596",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Anyone fancy a trim?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hairdresser",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "598",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Indentured servant of a Knight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "606",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "609",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "One of the Black Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black Knight Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "610",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "613",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doug Deeping",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "614",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A student busy studying the digsite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "617",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "618",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on archaeology.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archaeological expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "619",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A specialist in panning for gold.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Panning guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "620",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A professional gnome baller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome baller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "621",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A professional gnome baller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome winger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "633",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the game fair.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome ball referee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "635",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dealer in potions.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apothecary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "638",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A religious man... And occasional drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Lawrence",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "640",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charlie the Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks kind of obsessive...",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Weaponsmaster",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "643",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Looks kind of shifty...",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jonny the beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "645",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Curator of the museum.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Curator Haig Halen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "646",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Varrock's resident monarch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Roald",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "648",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks quite experienced.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "649",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks big and dumb.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "650",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks holy.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "651",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks kind of puny...",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "652",
- "range_level": "1",
- "attack_level": "1",
- "prj_height": "3"
- },
- {
- "examine": "Guardian of the dramen tree.",
- "melee_animation": "5532",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5534",
- "name": "Tree spirit",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "655",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Unsurprisingly monk like.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "656",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "657",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "658",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes to paaaarty!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Party Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "659",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "660",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short and angry dwarf.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "665",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An important looking gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Narnode Shareen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "670",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The boss!",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Foreman",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "674",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "Keeps order in the ranging guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "678",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The keeper of the gates to the ranging guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ranging Guild Doorman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "679",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert leatherworker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Leatherworker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "680",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mysterious swamp lights...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Held vampyre juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "681",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supplier of Rangers armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Armour salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supplier of Archery equipment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bow and Arrow salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "683",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tower keeper and competition judge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tower Advisor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "684",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Defender of the north tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "7",
- "id": "688",
- "aggressive": "true",
- "range_level": "10",
- "attack_level": "7"
- },
- {
- "examine": "Defender of the east tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "15",
- "id": "689",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "15"
- },
- {
- "examine": "Defender of the south tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "690",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "Defender of the west tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "30",
- "id": "691",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "examine": "Supplier of authentic throwing weapons.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tribal Weapon Salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "692",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells equipment in exchange for archery tickets.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "694",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Harlan, ready to teach swordplay.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Melee tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "705",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard Mizgog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cheeky little imp.",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "attack_speed": "5",
- "defence_animation": "170",
- "weakness": "7",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "2",
- "id": "708",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "A cheeky little imp.",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "attack_speed": "5",
- "defence_animation": "170",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "709",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bureaucratic administrator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Clerk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "713",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "In charge of people with silly outfits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "716",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the Ardougne Royal Army.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Recruiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "720",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "732",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "735",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "737",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "738",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Duke Horacio of Lumbridge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Duke Horacio",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A badly-behaved goblin.",
- "slayer_task": "38",
- "melee_animation": "6184",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6204",
- "name": "Wormbrain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Angry barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "749",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Enraged barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "750",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Berserk barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "751",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Ferocious barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "190",
- "strength_level": "76",
- "id": "752",
- "aggressive": "true",
- "bonuses": "80,100,60,70,85,70,70,90,60,100,50,90,90,0,0",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "Stop looking and run!",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Count Draynor",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "757",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A well-fed farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fred the Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "758",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "192",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "194",
- "death_animation": "196",
- "name": "Crate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "767",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Overgrown cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "1",
- "id": "778",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome who's supposed to be cleaning up a mess.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Letham",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smartly dressed",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alfonse the waiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "793",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Distinctly cook-like.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charlie the cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold hearted lady.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ice Queen",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "55",
- "id": "795",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He looks cold and hungry.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Velrak the explorer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "798",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A morally ambiguous guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Pirate Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "799",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Abbot Langley",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "801",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Jered",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "803",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "He looks very tired...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Donovan the Family Handyman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "806",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the Law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "812",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of those people who love to gossip!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gossip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "813",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sure likes to sell stuff!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Poison Salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sinclair Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "821",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Rowdy slave",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary Captain",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's in control of the whole mining camp.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Siad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "831",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedabin Nomad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad guard - it looks like he's protecting an area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedabin Nomad Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "834",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He patrols the Shantay Pass.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shantay Guard",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "837",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He patrols the Shantay Pass.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shantay Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "838",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious desert wolf.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "839",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "death_animation": "9674",
- "name": "Ugthanki",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "46",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "840",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "He looks busy attending to his cart.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mine cart driver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "841",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This pickaxe has been possessed by a dwarf ancestor spirit.",
- "melee_animation": "185",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "188",
- "name": "Rowdy Guard",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "400",
- "strength_level": "40",
- "id": "842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Inefficient looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "RPDT employee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "843",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Despite his name",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head chef",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "847",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The famous tree gnome chef.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Aluft Gianne snr.",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "850",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can serve you gnome food.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Waiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Gorad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "1",
- "id": "856",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "These ogres protect the city.",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ogre that guards.",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "859",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tries to keep the peace.",
- "slayer_task": "64",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "City guard",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "331",
- "strength_level": "58",
- "id": "862",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "Frightened-looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Scared skavid",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big and ugly looking.",
- "slayer_task": "64",
- "melee_animation": "2100",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "Enclave guard",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "331",
- "strength_level": "58",
- "id": "870",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "The hat is a dead giveaway.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Watchtower Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "872",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "874",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "875",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tries to keep the peace.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower guard",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "17",
- "id": "877",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "melee_animation": "395",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Colonel Radick",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "67",
- "name": "Delrith",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "64",
- "strength_level": "1",
- "id": "879",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "65"
- },
- {
- "examine": "The head of the palace guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Rovin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "884",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Head of the Carnillean household.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ceril Carnillean",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "885",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "887",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Clivet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "melee_animation": "811",
- "strength_level": "1",
- "id": "893",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "A member of the Hazeel cult.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "20",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Hazeel Cultist",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "15",
- "id": "894",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Children are just like real people...just smaller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "895",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He hasn't seen much sun lately.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chamber guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A crafter at the pinnacle of his art.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "916",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "917",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The emir's chief advisor and physician.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hassan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "923",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Guards the border between Al Kharid and the Kingdom of Misthalin.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Border Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "925",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An aggressive native of the Kharazi Jungle.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jungle savage",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "931",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Nezikchened",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "id": "934",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5485",
- "respawn_delay": "60",
- "defence_animation": "5489",
- "death_animation": "5491",
- "name": "Ranalph Devere",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "938",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder what this is doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "939",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very much an outdoors type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Survival expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "943",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on all forms of combat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Combat instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your introduction to the world of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "RuneScape guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "945",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official representative from the First National Bank of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Financial advisor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on Mining-related skills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mining instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your introduction to the world of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quest guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "950",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Brace",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "954",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "955",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's had a fair bit to drink...",
- "start_gfx": "33",
- "combat_style": "1",
- "melee_animation": "99",
- "range_animation": "99",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "101",
- "slayer_exp": "0",
- "magic_animation": "99",
- "death_animation": "102",
- "name": "Drunken Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "956",
- "range_level": "6",
- "projectile": "33",
- "attack_level": "5",
- "prj_height": "45"
- },
- {
- "examine": "This doctor really knows her stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Surgeon General Tafani",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "961",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of Iban's pets.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Blessed spider",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "977",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Blessed giant rat",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "978",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "982",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "983",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "984",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "985",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Precariously balanced...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "986",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Unicorn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "496,498,497",
- "strength_level": "1",
- "id": "987",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Sir Jerro",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "988",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sir Carl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "989",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sir Harry",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "990",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "A creature empty of emotion.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Half-soulless",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "991",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant spider.",
- "melee_animation": "5319",
- "respawn_delay": "60",
- "defence_animation": "5320",
- "death_animation": "5321",
- "name": "Kalrag",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "1",
- "id": "997",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the guardians of Iban.",
- "melee_animation": "64",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Othainian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "998",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the guardians of Iban.",
- "melee_animation": "64",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Doomion",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "999",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's watching the arena.",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Troll spectator",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "1120",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1144",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1145",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1146",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1147",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1148",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1149",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the goutweed.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1150",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Human is his speciality.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Burntmeat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1151",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast",
- "melee_animation": "313",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "315",
- "name": "The Shaikahan",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "50",
- "id": "1172",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An elven city guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elven city guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cute bunny rabbit.",
- "melee_animation": "6090",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1192",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1193",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1194",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "examine": "It's an NPC.",
- "melee_animation": "4921",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "4927",
- "slayer_exp": "0",
- "death_animation": "4929",
- "name": "Grizzly bear",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
- "id": "1195",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A bear cub!",
- "slayer_task": "6",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Grizzly bear cub",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "1196",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "name": "Grizzly bear cub",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "35",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1197",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What big teeth you have.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Dire Wolf",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "1198",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "An elf tracker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elf Tracker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1199",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "414",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "1200",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "110",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "105",
- "id": "1203",
- "range_level": "50",
- "attack_level": "95"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "1",
- "id": "1204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Responsible for the food and equipment of the troops.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quartermaster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1208",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mysterious swamp lights...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Will o' the wisp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1211",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems strangely familiar...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Parroty Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old gardener.",
- "melee_animation": "433",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gardener",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "1217",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "Yuck! It's all slimy!",
- "melee_animation": "1273",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1272",
- "name": "Leech",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "1219",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "Could his name be 'Lurch'?",
- "melee_animation": "7183",
- "slayer_exp": "50",
- "death_animation": "7185",
- "name": "Vampire",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1220",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "slayer_exp": "40",
- "name": "Vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1223",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1225",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad fighter - a sandy swordsman.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Bedabin Nomad Fighter",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "1239",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "1257",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "1258",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "1261",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "1262",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "46"
- },
- {
- "examine": "A follower of Saradomin.",
- "melee_animation": "376",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "90",
- "spell_id": "41",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "836",
- "name": "Saradomin wizard",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "90",
- "id": "1264",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "90"
- },
- {
- "examine": "A rocky outcrop.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "weakness": "7",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Rocks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1266",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rocky outcrop.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Rocks",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1268",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "A Fremennik bard.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Olaf the Bard",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1269",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Distinctly troll-shaped.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lalli",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1270",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly shorn.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1271",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lovely thick wool.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1272",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful spirit that lives in this lake.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fossegrimen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1273",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's had a few drinks already.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ospak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1274",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Doesn't look like the musical type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Styrmir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1275",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Waiting for the show.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Torbrund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1276",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sits impatiently with his friends.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fridgeir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1277",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's fat, he's round, he bounces on the ground. That's how he got the job.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Longhall Bouncer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1278",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fearful spirit of the drowned.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "The Draugen",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "1279",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A Fremennik hunter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigli the Huntsman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1281",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigmund The Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1282",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik navigator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swensen the Navigator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1283",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supposedly fixes things around RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Council workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1287",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik riddler.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Peer the Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik hero.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Thorvald the Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your challenge awaits! ",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1290",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He lives again!",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1291",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He keeps on living!",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1292",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He just keeps on going.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1293",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "The Fremennik tribe's chieftain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brundt the Chieftain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stands around and looks at stuff all day.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1296",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1297",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a rubbish job he has.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Town Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1298",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Longhall barkeep",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A bartender.",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1300",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Pretty shabbily dressed for a clothes shop owner.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yrsa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1301",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There's something fishy about this guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1302",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells and makes weapons and armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skulgrimen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1303",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's strong to the finish",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sailor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1304",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Agnar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1305",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Freidir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1306",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "395",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Borrokar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1307",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Lanzig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "id": "1308",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pontak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "id": "1309",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sassilik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1313",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Inga",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1314",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fish-tastic!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish monger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1315",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder what he does with all that fur?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fur trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hardened Fremennik warrior.",
- "melee_animation": "401",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Warrior",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "1318",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A cunning animal.",
- "melee_animation": "6562",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6570",
- "name": "Fox",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "1319",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Hoppity",
- "melee_animation": "1245",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "1246",
- "name": "Bunny",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1320",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "1246",
- "name": "Bunny",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "1245",
- "strength_level": "1",
- "id": "1321",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1244"
- },
- {
- "examine": "Cute. But deadly.",
- "slayer_task": "6",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Bear Cub",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "1326",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Cute. But deadly.",
- "name": "Bear Cub",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1327",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Horned horsey.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "6",
- "respawn_delay": "32",
- "defence_animation": "6375",
- "weakness": "7",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn Foal",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "6",
- "id": "1328",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "Cute but evil.",
- "melee_animation": "6376",
- "range_animation": "0",
- "combat_audio": "496,498,497",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Black unicorn Foal",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "1329",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "Fearsome predator found only in the Fremennik Province",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "combat_audio": "481,491,490",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "69",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "35",
- "id": "1330",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1340",
- "range_animation": "1340",
- "attack_speed": "5",
- "defence_animation": "1341",
- "magic_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "80",
- "id": "1338",
- "clue_level": "1",
- "range_level": "85",
- "projectile": "288",
- "attack_level": "80"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1339",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1340",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1341",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1342",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1343",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1344",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1345",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1346",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1347",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "60",
- "id": "1351",
- "aggressive": "true",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1352",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1354",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems happy to see you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1360",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "401",
- "strength_level": "1",
- "id": "1367",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1368",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Hmm",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishmonger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1369",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "At least he eats his greens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greengrocer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1370",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the throne room.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1374",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's cutting the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1377",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No-one would mistake her for a duchess.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Flower Girl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1378",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Alrik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1381",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He's strong to the finish, because he eats cabbage.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sailor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1385",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Rannveig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1386",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Valgerd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1388",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1389",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Broddi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1390",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1391",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Ragnvald",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "810",
- "strength_level": "1",
- "id": "1392",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Hmm",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishmonger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1393",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "At least he eats his greens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greengrocer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's a lumberjack",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumberjack Leif",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1395",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There's something fishy about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman Frodi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She's looking a bit weedy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gardener Gunnhild",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "5389",
- "name": "Rooster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "5387",
- "strength_level": "1",
- "id": "1403",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5388"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1404",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1419",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official looking Gnome with small beady eyes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "G.L.O. Caranock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1427",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Duke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1442",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Oipuis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1443",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Uyoro",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1444",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1387",
- "death_animation": "1384",
- "name": "Ouhai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1445",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Uodai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1446",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Padulah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "133",
- "strength_level": "1",
- "id": "1447",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge brutish gorilla stands here",
- "slayer_task": "61",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elder Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1461",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "It looks just a bit... underfed.",
- "slayer_task": "75",
"melee_animation": "5519",
"range_animation": "5519",
"combat_audio": "774,775,777",
@@ -134999,3777 +70389,8 @@
"range_level": "1",
"attack_level": "180"
},
- {
- "examine": "A Greater Jungle demon. A magical aura emanates from its hide.",
- "range_animation": "0",
- "combat_audio": "400,404,403",
- "attack_speed": "2",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Jungle demon",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "428",
- "strength_level": "50",
- "id": "1472",
- "aggressive": "true",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "melee_animation": "6249",
- "respawn_delay": "60",
- "defence_animation": "6250",
- "death_animation": "6251",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "1473",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a brightly coloured bird of the jungle.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6779",
- "name": "Bird",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1475",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "It's a brightly coloured bird of the jungle. It flies very quickly.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6777",
- "name": "Bird",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1476",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A very dangerous looking spider",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "47",
- "id": "1478",
- "aggressive": "true",
- "range_level": "63",
- "attack_level": "47"
- },
- {
- "name": "Small ninja monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1480",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Medium ninja monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Bearded gorilla",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ancient monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1484",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Small zombie monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Large zombie monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1486",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge nail beast. Its nails appear very sharp.",
- "melee_animation": "5989",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5990",
- "name": "Nail beast",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "550",
- "strength_level": "150",
- "id": "1521",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "He is one",
- "melee_animation": "5970",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5972",
- "name": "Undead Lumberjack",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "73",
- "id": "1524",
- "range_level": "1",
- "attack_level": "73"
- },
- {
- "examine": "His robes prominently display the star of Saradomin.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zealot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1528",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "combat_style": "1",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "combat_style": "1",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1533",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1534",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1535",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "185",
- "respawn_delay": "60",
- "defence_animation": "186",
- "death_animation": "188",
- "name": "Possessed pickaxe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "1536",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A strange disturbance in the air.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Haze",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1537",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Well",
- "slayer_task": "75",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Corpse",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1538",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I don't think the pickaxe is for hitting rocks.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "slayer_exp": "0",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Skeletal miner",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "1539",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5540",
- "respawn_delay": "60",
- "defence_animation": "5541",
- "death_animation": "5542",
- "name": "Treus Dayth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1540",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large boisterous bird",
- "slayer_task": "7",
- "melee_animation": "6761",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "6762",
- "name": "Chompy bird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1550",
- "range_level": "2",
- "attack_level": "1"
- },
- {
- "name": "Mischievous ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "1551",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Arrg",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "1556",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Ug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1557",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not man's best friend.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Ice wolf",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "51",
- "id": "1558",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "51"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1560",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1561",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1562",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1563",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1564",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1565",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1566",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A tall and imposing man who's more than familiar with boating.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cyreg Paddlehorn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Its scales seem to be made of bronze.",
- "slayer_task": "13",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "40",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "125",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Bronze dragon",
- "defence_level": "112",
- "safespot": null,
- "lifepoints": "122",
- "strength_level": "112",
- "id": "1590",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "112"
- },
- {
- "examine": "Its scales seem to be made of iron.",
- "slayer_task": "50",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "45",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "173",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Iron dragon",
- "defence_level": "165",
- "safespot": null,
- "lifepoints": "165",
- "strength_level": "165",
- "id": "1591",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "165"
- },
- {
- "examine": "Its scales seem to be made of steel.",
- "slayer_task": "80",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "45",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "221",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Steel dragon",
- "defence_level": "215",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "215",
- "id": "1592",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "215"
- },
- {
- "examine": "An unsuitable pet.",
- "slayer_task": "27",
- "melee_animation": "6562",
- "range_animation": "6562",
- "magic_level": "20",
- "respawn_delay": "20",
- "defence_animation": "6563",
- "weakness": "7",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Wild dog",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "25",
- "id": "1593",
- "aggressive": "true",
- "bonuses": "10,15,5,10,30,5,30,30,30,10,30,5,40,5,5",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Looks like it's got Rabies!",
- "melee_animation": "6562",
- "range_animation": "6562",
- "magic_level": "20",
- "respawn_delay": "20",
- "defence_animation": "6563",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Wild dog",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "25",
- "id": "1594",
- "aggressive": "true",
- "bonuses": "10,15,5,10,30,5,30,30,30,10,30,5,40,5,5",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1604",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1605",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1606",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1607",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "Flies like a rock.",
- "slayer_task": "84",
- "melee_animation": "1516",
- "range_animation": "1516",
- "attack_speed": "5",
- "defence_animation": "0",
- "weakness": "0",
- "slayer_exp": "105",
- "magic_animation": "1516",
- "death_animation": "1518",
- "name": "Swarming turoth",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "104",
- "id": "1611",
- "clue_level": "2",
- "range_level": "49",
- "attack_level": "45"
- },
- {
- "examine": "A tortured screaming soul.",
- "melee_animation": "9449",
- "range_animation": "1523",
- "attack_speed": "5",
- "defence_animation": "9451",
- "slayer_exp": "22",
- "magic_animation": "1523",
- "death_animation": "9450",
- "name": "Banshee",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "14",
- "id": "1612",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "An evil death spawn.",
- "melee_animation": "1540",
- "range_animation": "1540",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "1540",
- "death_animation": "9460",
- "name": "Death spawn",
- "defence_level": "30",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "7",
- "id": "1614",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,20,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "67"
- },
- {
- "examine": "The eyes of evil.",
- "melee_animation": "260",
- "range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
- "defence_animation": "261",
- "slayer_exp": "75",
- "magic_animation": "260",
- "death_animation": "264",
- "name": "Basilisk",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "80",
- "id": "1616",
- "range_level": "75",
- "attack_level": "80"
- },
- {
- "examine": "The eyes of evil.",
- "melee_animation": "260",
- "range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
- "defence_animation": "261",
- "slayer_exp": "75",
- "magic_animation": "260",
- "death_animation": "264",
- "name": "Basilisk",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "80",
- "id": "1617",
- "range_level": "75",
- "attack_level": "80"
- },
- {
- "examine": "The cave-dwelling cousin of the dust devils.",
- "slayer_task": "28",
- "melee_animation": "1557",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "1558",
- "name": "Smokedevil",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "105",
- "id": "1625",
- "range_level": "61",
- "attack_level": "105"
- },
- {
- "examine": "He's in charge of the Skullball Course.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skullball Boss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1660",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's in charge of the Agility Course.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Boss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1661",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A skullball guide.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skullball Trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1662",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A werewolf agility trainer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1663",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's guarding a trapdoor...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1665",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader from across the eastern sea.",
- "start_gfx": "0",
- "start_height": "0",
- "melee_animation": "386",
- "range_animation": "0",
- "magic_level": "1",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ak-Haranu",
- "defence_level": "1",
- "movement_radius": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1688",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An extremely vicious lobster.",
- "slayer_task": "71",
- "melee_animation": "6265",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6267",
- "name": "Giant lobster",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "30",
- "id": "1693",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An old",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Old crone",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1695",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A creaky old man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Old man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1696",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This poor soul cannot understand why it has not passed to the next world.",
- "slayer_task": "36",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "slayer_exp": "51",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tortured soul",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "62",
- "id": "1698",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1710",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1711",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1712",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A deacon in the Humans Against Monsters group. A rather enthusiastic chap.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Deacon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1713",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1714",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1715",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1716",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1717",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A young man with a dark and mysterious past.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy the Chisel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Sigmund's elite guards.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yew",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Sigmund's elite guards.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1742",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1743",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1744",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dead tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Achey Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1746",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1748",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "1751",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
- },
- {
- "examine": "These gnomes know how to get around!",
- "slayer_task": "7",
- "melee_animation": "6790",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6791",
- "name": "Mounted terrorbird gnome",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "33",
- "id": "1752",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "A farmer's enemy.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1757",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1758",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Farming.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1759",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7185",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1760",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Farming the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1761",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1763",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "1",
- "id": "1766",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Where beef comes from.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1767",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "1",
- "id": "1768",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1769",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1770",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1771",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1772",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1773",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1774",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1775",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1776",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks quite independent in an aggressive and business like way.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hammerspike Stoutbeard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1795",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1796",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1797",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "melee_animation": "1750",
- "respawn_delay": "60",
- "defence_animation": "1751",
- "death_animation": "1752",
- "name": "Slagilith",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "1802",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pile of boulders.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rock pile",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1803",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be guarding a pile of rocks. Interesting job.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1805",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be guarding a single rock. Interesting job.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1806",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Chieftain of the mountain camp.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hamal the Chieftain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is that a bear... or a man?",
- "melee_animation": "1760",
- "range_animation": "0",
- "magic_level": "23",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "1759",
- "name": "The Kendal",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "23",
- "id": "1812",
- "aggressive": "true",
- "range_level": "23",
- "attack_level": "23"
- },
- {
- "melee_animation": "1760",
- "respawn_delay": "60",
- "defence_animation": "1758",
- "death_animation": "1759",
- "name": "The Kendal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1813",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1814",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1815",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1816",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1817",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1818",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "Looks a little underfed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1819",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1822",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1823",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1824",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It didn't get that big eating flies!",
- "melee_animation": "1793",
- "range_animation": "1793",
- "attack_speed": "6",
- "defence_animation": "1794",
- "weakness": "1",
- "magic_animation": "1793",
- "death_animation": "1795",
- "name": "Giant frog",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "45",
- "id": "1828",
- "bonuses": "10,10,10,10,10,10,1,10,10,10,10,37,0,0,0",
- "range_level": "32",
- "attack_level": "45"
- },
- {
- "examine": "It didn't get that big eating flies.",
- "melee_animation": "1793",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "1795",
- "name": "Big frog",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "1",
- "id": "1829",
- "range_level": "26",
- "attack_level": "1"
- },
- {
- "examine": "A foul-smelling blob of protoplasm.",
- "slayer_task": "18",
- "melee_animation": "1789",
- "range_animation": "0",
- "attack_speed": "5",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "1792",
- "name": "Cave slime",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
- "id": "1831",
- "clue_level": "0",
- "range_level": "19",
- "attack_level": "1"
- },
- {
- "examine": "A nasty crawling critter.",
- "slayer_task": "15",
- "melee_animation": "6079",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "5",
- "magic_animation": "0",
- "death_animation": "6082",
- "name": "Cave bug",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1832",
- "range_level": "6",
- "attack_level": "1"
- },
- {
- "examine": "A little",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave bug larva",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an odd smell about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Candle seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1834",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short angry guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1840",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The little guy is having trouble standing up right.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khorvak, a dwarven engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1842",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's probably you who will be paying the ferryman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Ferryman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1843",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's probably you who will be paying the ferryman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Ferryman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1844",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It is the avatar of the Arzinian Being of Bordanzan",
- "melee_animation": "1840",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "1841",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "40",
- "id": "1850",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "1851",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1852",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It is the avatar of the Arzinian Being of Bordanzan",
- "melee_animation": "1843",
- "range_animation": "1843",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "1841",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "30",
- "id": "1853",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "1854",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1855",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's the Arzinian Being",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Arzinian Being of Bordanzan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1859",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells ranging equipment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nemarti looks ready to teach you about ranged combat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ranged Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1861",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drunk man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Drunken Ali",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hassled looking barman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali The barman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1864",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A kebab seller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Kebab seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1865",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mischievous looking child.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Street urchin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1868",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old Hag named Alice.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Hag",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1871",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A foul tempered ugly lumpy yellow horse prone to spitting.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Desert snake",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "4",
- "id": "1874",
- "range_level": "6",
- "attack_level": "4"
- },
- {
- "examine": "A very tough-looking bandit.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Bandit champion",
- "defence_level": "39",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "39",
- "id": "1885",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "examine": "Probably the weakest bandit in the world ....ever.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cowardly Bandit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1886",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smooth operator.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Operator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tough looking Menaphite.",
- "melee_animation": "395",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tough Guy",
- "defence_level": "39",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "39",
- "id": "1906",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "examine": "Definitely not a chicken.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Desert Phoenix",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1911",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "412",
- "death_animation": "9055",
- "name": "Kamil",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "55",
- "id": "1913",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Dessous",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "1914",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Dessous",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "1915",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I guess he sells what he steals...?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bandit shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hardened by the cutthroat world of archaeology.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archaeologist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1918",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very mysterious looking...",
- "melee_animation": "377",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Stranger",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "58",
- "id": "1919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "Looks like a rough-and-ready type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1921",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "412",
- "death_animation": "9055",
- "name": "Bandit",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "70",
- "id": "1926",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "This is an NPC.",
- "melee_animation": "412",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "100",
- "defence_animation": "404",
- "magic_animation": "0",
- "death_animation": "9055",
- "name": "Bandit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "1931",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ice troll.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ice troll",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1935",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1936",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1937",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1938",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1939",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1940",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1941",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1942",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1951",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1952",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1953",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1954",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1955",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1956",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Highly flammable!",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1958",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A tightly-wrapped monster.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1961",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Spooky",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1962",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A victim of poor first aid.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1963",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "But who's the daddy?",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1964",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A tightly-wrapped monster.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1965",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A victim of poor first aid.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1967",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "I think they're some kind of beetle...",
- "slayer_task": "70",
- "melee_animation": "1948",
- "range_animation": "0",
- "poisonous": "true",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "1946",
- "name": "Scarabs",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "62",
- "id": "1969",
- "range_level": "1",
- "attack_level": "62"
- },
- {
- "examine": "A wandering merchant.",
- "name": "Rasolo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1972",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant skeleton.",
- "slayer_task": "75",
- "melee_animation": "5499",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1973",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "melee_animation": "799",
- "respawn_delay": "60",
- "defence_animation": "434",
- "death_animation": "836",
- "name": "Fareed",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1977",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A malnourished worker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1978",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A malnourished worker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A strange-smelling merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Embalmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A block of a man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Carpenter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Preach my brother!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1988",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a dangerous glint in his eye.",
- "combat_style": "2",
- "melee_animation": "429",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Possessed Priest",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "30",
- "id": "1991",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "examine": "He has had his day.",
- "slayer_task": "27",
- "melee_animation": "6568",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6567",
- "name": "Jackal",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "35",
- "id": "1994",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Obnoxious",
- "melee_animation": "2015",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "2013",
- "name": "Locust",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "12",
- "id": "1995",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "A very smelly frog.",
- "melee_animation": "1021",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1022",
- "name": "Plague frog",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "1997",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "I might give the burgers a miss in this town.",
- "slayer_task": "20",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Plague cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I don't fancy eating any part of this.",
- "slayer_task": "20",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Plague cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1999",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think they're some kind of beetle.",
- "slayer_task": "70",
- "melee_animation": "1948",
- "range_animation": "0",
- "attack_speed": "2",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1946",
- "name": "Scarab swarm",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "900",
- "strength_level": "9",
- "id": "2001",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "This mummy looks like it means business!",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2015",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An irate warrior-mummy.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2016",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "This mummy looks like it means business!",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2017",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An irate mummy.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2018",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A wizened old warrior.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2019",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A shimmering creature of blue light.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Light creature",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think I should keep my distance...",
- "melee_animation": "2070",
- "range_animation": "2070",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "26",
- "defence_animation": "2072",
- "weakness": "6",
- "magic_animation": "2070",
- "death_animation": "2073",
- "name": "Bloodworm",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "20",
- "id": "2031",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A nasty little rodent.",
- "slayer_task": "67",
- "melee_animation": "240",
- "range_animation": "240",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "20",
- "defence_animation": "241",
- "weakness": "9",
- "magic_animation": "240",
- "death_animation": "243",
- "name": "Crypt rat",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "20",
- "id": "2032",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "2033",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Incey wincey.",
- "slayer_task": "76",
- "melee_animation": "6249",
- "range_animation": "6249",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "6250",
- "weakness": "7",
- "magic_animation": "6249",
- "death_animation": "6251",
- "name": "Crypt spider",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "47",
- "id": "2034",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,10,17,20,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Not very incey wincey.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "35",
- "defence_animation": "5328",
- "weakness": "7",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant crypt spider",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "67",
- "id": "2035",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "65"
- },
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "5487",
"combat_audio": "774,775,777",
@@ -138793,7 +70414,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "5487",
"combat_audio": "774,775,777",
@@ -138815,3548 +70435,6 @@
"range_level": "1",
"attack_level": "72"
},
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2050",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2056",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2057",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What could be hiding in that crack in the wall?",
- "slayer_task": "87",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "30",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hole in the wall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "2058",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Slash Bash",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "103",
- "strength_level": "1",
- "id": "2060",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2069",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2070",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2071",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2072",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He protects the miners.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin guard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "2073",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "He protects the miners.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin guard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "2074",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2076",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2077",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2078",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Advisor to the Duke of Lumbridge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigmund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2082",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2091",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Purple Pewter Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2092",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yellow Fortune Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2093",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blue Opal Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2094",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Green Gemstone Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2095",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "White Chisel Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2096",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver Cog Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2097",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brown Engine Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Purple Pewter Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blue Opal Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2101",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yellow Fortune Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2102",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Green Gemstone Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2103",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "White Chisel Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2104",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver Cog Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2105",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brown Engine Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2106",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2109",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2110",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2111",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2112",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2113",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2114",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2118",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2119",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He is regulating the flow of goods on the trade floor and maintaining order.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trade Referee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2127",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2130",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2131",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2132",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "slayer_exp": "16",
- "name": "Black Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2133",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2134",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2135",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2136",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A gnome traveller, visiting Keldagrim.",
- "name": "Gnome traveller",
- "defence_level": "1",
- "force_talk": "Buying low-level skilling items!",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2138",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very protective of his master... and his property.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dromund's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rather personable banker lady.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2163",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rather serious old fella.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2164",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He takes care of the library and its many books.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Librarian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2165",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A customer looking for books.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a human traveler visiting the library.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tends to the plants in the palace garden.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rind the gardener",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2170",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2174",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2175",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These Dwarf ladies are so attractive!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barmaid",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2178",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2180",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2181",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2182",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2183",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2184",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Remember: don't drink and ride in mine carts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the line clear of traffic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2186",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A loud",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rowdy dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "You cannot see his ship",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Boatman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2205",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He carries a heavy load.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A local farmer. He may be able to provide some useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2237",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2240",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2241",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porcine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2242",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He provides new players with useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2244",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of General Khazard's warriors.",
- "melee_animation": "429",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard trooper",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "2246",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "An initiate of Zamorak.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dark mage",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eyes in the back of its head...",
- "melee_animation": "2186",
- "range_animation": "2186",
- "attack_speed": "6",
- "magic_level": "57",
- "defence_animation": "2188",
- "weakness": "3",
- "slayer_exp": "0",
- "magic_animation": "2186",
- "death_animation": "2189",
- "name": "Abyssal guardian",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "96",
- "id": "2264",
- "aggressive": "true",
- "range_level": "135",
- "attack_level": "65"
- },
- {
- "examine": "A snowman armed with a holly bow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rogue Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2269",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with an ice sword.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Emerald Benedict",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2271",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with a winter staff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spin Blades",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2272",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2274",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2275",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2276",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2277",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2278",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2279",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2280",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2281",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An observer for the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Cheevers",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An observer for the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ms. Hynn Terprett",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A carpet merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2291",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A carpet merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2292",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man who deals in rugs.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2293",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man who deals in rugs.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "2",
- "id": "2310",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "He rules the",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rooster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2312",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Swine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2317",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hog.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2318",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porcine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2319",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a certain bovine aroma.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2320",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this farmer might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vasquen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2333",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Taria",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2336",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fayeth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2342",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "120",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "71",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "68"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "70",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "68"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Rimmington.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Rimmington.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Anja",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2684",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2685",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2686",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2687",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2688",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
{
"name": "Skeleton",
"defence_level": "1",
@@ -142379,2826 +70457,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3070",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3071",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "3072",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "3073",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3074",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3079",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3080",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3089",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mighty warrior",
- "melee_animation": "7048",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
- "id": "3090",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3091",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The book moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Flying Book",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3094",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Entrance Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3097",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Telekinetic Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alchemy Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3099",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchantment Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Graveyard Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3101",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rewards Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3103",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3104",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3105",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3106",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This guard looks rather drunk and has beer stains down his armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3109",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Balloon Animal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I saw the witchdoctor",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Balloon Animal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's seen the inside of a few tombs.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Simon Templeton",
- "defence_level": "1",
- "safespot": "0",
- "lifepoints": "12",
- "strength_level": "1",
- "id": "3123",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to be blocked.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Furnace grate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "3135",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3150",
- "range_level": "1",
- "attack_level": "1"
- },
{
"name": "Skeleton",
"defence_level": "1",
@@ -145210,596 +70468,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A swarm of bugs.",
- "slayer_task": "42",
- "combat_style": "1",
- "melee_animation": "1584",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "1585",
- "name": "Harpie Bug Swarm",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3153",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "Bill Teach the pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bill Teach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3155",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3170",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3171",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3174",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3175",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3176",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3177",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3178",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3179",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3180",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3181",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3182",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3183",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3184",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3186",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "3187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3188",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3189",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3190",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3191",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3192",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3193",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3194",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3195",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "melee_animation": "400",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "3196",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3198",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3199",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "51",
- "name": "Killerwatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "attack_speed": "3",
- "id": "3201",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "slayer_exp": "51",
- "name": "Killerwatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "attack_speed": "3",
- "id": "3202",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A very small storm!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Storm Cloud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3203",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very small storm!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Storm Cloud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mourner",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3219",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "3220",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3221",
- "range_level": "1",
- "attack_level": "28"
- },
{
"examine": "One of Gielinor's many citizens, currently incapacitated by alcohol.",
"melee_animation": "422",
@@ -145818,712 +70486,8 @@
"range_level": "1",
"attack_level": "4"
},
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "386",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "3228",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "2075",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3229",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "395",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "3230",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3231",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for threats to the city.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3232",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for threats to the city.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3233",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "An old gardener.",
- "melee_animation": "433",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gardener",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "3234",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "He's learning a trade.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apprentice workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3235",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A busy workman",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3236",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Cuffs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3237",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Rusty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3239",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Jeff",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3240",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3241",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "3242",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "27",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "1",
- "id": "3243",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "16",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3244",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "16",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3245",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3264",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3265",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3266",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "470,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3267",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3268",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3269",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3270",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3271",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3272",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3273",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3274",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3275",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3276",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3277",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3278",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "slayer_exp": "16",
- "name": "Black Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3279",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks busy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Engineering assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3280",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's building a cannon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3282",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bushy tail!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squirrel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3283",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3286",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3288",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -146543,1458 +70507,8 @@
"range_level": "1",
"attack_level": "8"
},
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3293",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3295",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A graceful bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swan",
- "defence_level": "1",
- "safespot": null,
- "water_npc": true,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3296",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps this magic area tidy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sweeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3298",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm gonna make him an offer he can't refuse.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Godfather",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3304",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Guardian of the market gate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gatekeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3307",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "3309",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Tanglefoot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "102",
- "strength_level": "1",
- "id": "3313",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An animated shrub.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "name": "Baby tanglefoot",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "1",
- "id": "3319",
- "range_level": "41",
- "attack_level": "1"
- },
- {
- "examine": "An aggressive bush.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "name": "Baby tanglefoot",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "1",
- "id": "3320",
- "range_level": "41",
- "attack_level": "1"
- },
- {
- "examine": "Rather more tired than most.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jeremy Clerksin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3327",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks a little green around the gills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barfy Bill",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3331",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's made of pure fire.",
- "attack_speed": "6",
- "magic_level": "300",
- "respawn_delay": "25",
- "name": "Cavemouth",
- "defence_level": "500",
- "safespot": null,
- "lifepoints": "1000",
- "strength_level": "1500",
- "id": "3334",
- "aggressive": "true",
- "bonuses": "126,98,86,297,311,304,319,13,284,30,0,0,0,0,0",
- "range_level": "300",
- "attack_level": "200"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3348",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3349",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3350",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to like wearing black.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Dave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3378",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Vermin from the underworld.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hell-Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3382",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3389",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks short and grumpy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3390",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Wartface",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3391",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Bentnoze",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3392",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He provides new players with useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3393",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to like wearing black.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Dave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rutmir's assistant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3404",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A small ice demon.",
- "slayer_task": "46",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Icefiend",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "3406",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3407",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "583",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7213",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3408",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3409",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3410",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3411",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3412",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "More like a goblin cooked.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3414",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3416",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3418",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3419",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a highly amusing hat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mogre Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3420",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice claw!",
- "melee_animation": "3428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3430",
- "name": "Crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "3421",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Not the most beautiful fish in the sea.",
- "melee_animation": "3433",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "3422",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "melee_animation": "3433",
- "strength_level": "1",
- "id": "3423",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3434"
- },
- {
- "death_animation": "3430",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "18",
- "melee_animation": "3428",
- "strength_level": "1",
- "id": "3424",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3429"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3425",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3426",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3427",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3431",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3432",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3433",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3434",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3435",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3436",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3437",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3438",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3444",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3445",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3449",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3450",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3451",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skrach Uglogwee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3463",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large boisterous bird",
- "slayer_task": "7",
- "melee_animation": "6800",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6801",
- "name": "Jubbly bird",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "6",
- "id": "3476",
- "aggressive": "true",
- "range_level": "8",
- "attack_level": "6"
- },
- {
- "name": "King Awowogei",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "328",
- "strength_level": "1",
- "id": "3478",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Culinaromancer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "140",
- "strength_level": "1",
- "id": "3491",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "melee_animation": "3501",
- "respawn_delay": "60",
- "defence_animation": "3500",
- "death_animation": "3503",
- "name": "Agrith-Na-Na",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3493",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1750",
- "respawn_delay": "60",
- "defence_animation": "1751",
- "death_animation": "1752",
- "name": "Flambeed",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "1",
- "id": "3494",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Karamel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3495",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "3507",
- "respawn_delay": "60",
- "defence_animation": "3505",
- "death_animation": "3510",
- "name": "Dessourt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "140",
- "strength_level": "1",
- "id": "3496",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Deadly AND fruity!",
- "melee_animation": "1341",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "139",
- "strength_level": "48",
- "id": "3497",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3498",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3500",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Chronicler and regaler of your piratical exploits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3509",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "5783",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3521",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3522",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3523",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3524",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3525",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Vampyre Juvinate",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "3526",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A Juvinate vampyre",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Held Vampyre Juvinate",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3527",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "He looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3531",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "She looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3532",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "6276",
- "strength_level": "1",
- "id": "3533",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "He looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3534",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Juvinate",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "3577",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "Is it a sheep?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3579",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "He guards the dungeon with the faithfulness of the undead.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -148015,485 +70529,8 @@
"range_level": "1",
"attack_level": "15"
},
- {
- "slayer_exp": "49",
- "name": "Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "1",
- "id": "3583",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No spider could grow that big! It's unrealistic!",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Huge spider",
- "defence_level": "72",
- "safespot": null,
- "lifepoints": "122",
- "strength_level": "1",
- "id": "3585",
- "aggressive": "true",
- "range_level": "72",
- "attack_level": "1"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "27",
- "respawn_delay": "25",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Rantz",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "27",
- "id": "3587",
- "aggressive": "true",
- "bonuses": "15,15,10,20,40,15,50,50,50,20,50,58,0,0,0",
- "range_level": "27",
- "attack_level": "27"
- },
- {
- "examine": "Its scales seem to be made of steel.",
- "combat_audio": "408,410,409",
- "magic_level": "72",
- "respawn_delay": "35",
- "weakness": "8",
- "slayer_exp": "221",
- "name": "Steel dragon",
- "defence_level": "238",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "229",
- "id": "3590",
- "aggressive": "true",
- "bonuses": "56,42,104,51,212,115,232,302,331,21,264,100,100,40,0",
- "clue_level": "2",
- "range_level": "185",
- "attack_level": "234"
- },
- {
- "examine": "Arrgh! Look at its pointy teeth!",
- "range_animation": "0",
- "combat_audio": "400,404,403",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Demon",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "107",
- "strength_level": "75",
- "id": "3593",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "weakness": "0",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3599",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "45",
- "attack_level": "35"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "50",
- "id": "3600",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "slayer_task": "86",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "weakness": "7",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3601",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3602",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3603",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3604",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3605",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm glad I can't see the rest of it!",
- "melee_animation": "3618",
- "range_animation": "3618",
- "magic_level": "80",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3620",
- "name": "Tentacle",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "80",
- "id": "3618",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I'm glad I can't see the rest of it!",
- "melee_animation": "3731",
- "range_animation": "0",
- "attack_speed": "10",
- "magic_level": "80",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3733",
- "name": "Head",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "85",
- "id": "3619",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "85"
- },
- {
- "melee_animation": "3731",
- "attack_speed": "10",
- "respawn_delay": "60",
- "defence_animation": "3732",
- "death_animation": "3733",
- "name": "Head",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "id": "3620",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "3622",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A high-ranking Vyrewatch",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fyiona Fray",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little on the cross side!",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Angry bear",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3645",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "6376",
- "range_animation": "0",
- "combat_audio": "496,498,497",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Angry unicorn",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3646",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Angry giant rat",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3647",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "6185",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Angry goblin",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3648",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "AHHHHH!",
- "melee_animation": "3812",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3813",
- "name": "Fear reaper",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
- "id": "3649",
- "range_level": "1",
- "attack_level": "27"
- },
- {
- "examine": "What on RuneScape is that?!?",
- "melee_animation": "3818",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3821",
- "name": "Confusion beast",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3650",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A hopeless poor creature.",
- "melee_animation": "3823",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3827",
- "name": "Hopeless creature",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3655",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Freshly sheared.",
- "melee_animation": "5341",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "3672",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "3673",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "A young boy handing out flyers.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Leaflet Dropper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3680",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "Could use a good meal.",
- "slayer_task": "75",
"melee_animation": "6128",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -148543,7 +70580,6 @@
},
{
"examine": "He seems a little underweight.",
- "slayer_task": "75",
"melee_animation": "6128",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -148563,7 +70599,6 @@
},
{
"examine": "He seems a little underweight.",
- "slayer_task": "75",
"melee_animation": "6128",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -148598,7 +70633,6 @@
},
{
"examine": "He seems a little underweight.",
- "slayer_task": "75",
"melee_animation": "6128",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -148618,7 +70652,6 @@
},
{
"examine": "He seems a little underweight.",
- "slayer_task": "75",
"melee_animation": "6128",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -148642,1934 +70675,15 @@
"safespot": null,
"lifepoints": "10",
"combat_audio": "774,775,777",
+ "melee_animation": "5485",
"strength_level": "1",
"id": "3705",
"range_level": "1",
"attack_level": "1"
},
- {
- "name": "Ulfric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "6118",
- "strength_level": "1",
- "id": "3706",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Eww",
- "slayer_task": "67",
- "melee_animation": "6117",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "50",
- "magic_animation": "0",
- "death_animation": "6115",
- "name": "Brine rat",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "3707",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A Wilderness fighter of massive repute.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3709",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3715",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3726",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cheerful, helpful and optimistic, I'll bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doomsayer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3777",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "attack_speed": "5",
- "magic_level": "80",
- "respawn_delay": "120",
- "name": "Void Knight",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3782",
- "bonuses": "180,180,180,180,80,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Long legged licker.",
- "melee_animation": "7260",
- "range_animation": "0",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7256",
- "name": "Frog",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3783",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "attack_speed": "0",
- "id": "3784",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "attack_speed": "5",
- "magic_level": "80",
- "respawn_delay": "120",
- "name": "Void Knight",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3785",
- "bonuses": "180,180,180,180,80,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3788",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3791",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3793",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3795",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3796",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3797",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3798",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3799",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3800",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3801",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Novice)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Posts things.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Postie Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3805",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Miss Millicent Miller the Miller of Mill Lane Mill.",
- "name": "Millie Miller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3806",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Gillie the Milkmaid milks cows. She's udderly fantastic at it.",
- "name": "Gillie Groats",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tally Ho!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Dalbur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Huzzah!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Bleemadge",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Up up and away!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Errdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Up up and away!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Klemfoodle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Gnome Arrow-chucker",
- "combat_style": "1",
- "melee_animation": "190",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome Archer",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "1",
- "id": "3814",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "1"
- },
- {
- "examine": "Yee haa!",
- "melee_animation": "3969",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome Driver",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "3815",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The cruel tortoise trainer. Boo!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trainer Nacklepen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large tortoise.",
- "melee_animation": "3960",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "3962",
- "name": "Tortoise",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "3819",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An aquatic troll.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sea troll",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "3840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An aquatic troll.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sea troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "3843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "The mother of all sea trolls!",
- "melee_animation": "3991",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "3993",
- "name": "Sea Troll Queen",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "428",
- "strength_level": "65",
- "id": "3847",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "His bark's worse than his blight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Carpenter Kjallak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3916",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit seedy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer Fromund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3941",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the entrance to the dungeons.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3942",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "75",
- "name": "Basilisk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Demon butler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "400,404,403",
- "strength_level": "1",
- "id": "4243",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Head of the servants' guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chief servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4245",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She smells unpleasantly of chemicals.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Taxidermist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4246",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fancy businessman with a mighty fine hat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Estate agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4247",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Someone has to get rid of all the stone they dug Keldagrim out of.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stonemason",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4248",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He changes the shape of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "facing_booth": "true",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sawmill operator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4250",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She has green fingers. (Not literally.)",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Garden supplier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4257",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Guard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "4258",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4259",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4260",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4261",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4262",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4263",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4264",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4265",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4266",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4267",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4268",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4269",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4270",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4271",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4272",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4273",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4274",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4275",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4276",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Animated bronze armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Bronze Armour",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "4278",
- "bonuses": "3,3,3,3,1,3,1,3,3,3,3,8,10,8,3",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Animated iron armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Iron Armour",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "16",
- "id": "4279",
- "bonuses": "6,6,6,6,2,6,6,6,6,6,6,2,25,2,3",
- "range_level": "1",
- "attack_level": "16"
- },
- {
- "examine": "Animated steel armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Steel Armour",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "32",
- "id": "4280",
- "bonuses": "10,10,10,10,4,10,10,10,10,10,10,2,22,2,3",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Animated black armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Black Armour",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "40",
- "id": "4281",
- "bonuses": "15,15,15,15,5,15,6,15,15,16,15,5,27,5,3",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Animated mithril armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Mithril Armour",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "55",
- "id": "4282",
- "bonuses": "20,20,20,20,20,20,8,20,20,20,20,5,31,5,3",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Animated adamant armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Adamant Armour",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "99",
- "strength_level": "65",
- "id": "4283",
- "bonuses": "25,25,25,25,25,25,12,25,25,25,25,5,35,5,3",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Animated rune armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Rune Armour",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "118",
- "strength_level": "75",
- "id": "4284",
- "bonuses": "30,30,30,30,30,30,16,30,25,30,30,5,39,5,3",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "4291",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "4292",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "He looks fair and reliable.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ref",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4300",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4301",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4302",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4303",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4304",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4305",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4306",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4307",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4308",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4309",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4310",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4311",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4318",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4320",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Deacon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4329",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4336",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's all white by me.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4917",
- "name": "Albino bat",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "4345",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "examine": "A flying blood sucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "attack_speed": "10",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Giant mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "4347",
- "range_level": "1",
- "attack_level": "63"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4353",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4354",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4355",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4356",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4357",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Patchy the pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Patchy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4359",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very flamboyant pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fancy Dan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4361",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I can't wait to buy from a guy with Honest in his name...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Honest Jimmy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4362",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A colourful bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Parrot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4373",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A retired RuneScape security guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Security Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4375",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "69",
- "id": "4381",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "69",
- "id": "4382",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "74",
- "id": "4383",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
{
"combat_audio": "774,775,777",
+ "melee_animation": "5485",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5513",
@@ -150586,7 +70700,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -150608,6 +70721,7 @@
},
{
"combat_audio": "774,775,777",
+ "melee_animation": "5485",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5513",
@@ -150622,997 +70736,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "weakness": "9",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4395",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "4396",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "38",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "38",
- "id": "4397",
- "aggressive": "true",
- "bonuses": "5,20,15,3,10,20,10,10,20,15,23,25,15,25,10",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "38",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "38",
- "id": "4398",
- "aggressive": "true",
- "bonuses": "20,25,10,20,25,10,10,11,0,0,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "45",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "58",
- "id": "4399",
- "aggressive": "true",
- "bonuses": "50,45,50,40,45,20,30,25,33,25,25,20,20,40,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "defence_animation": "5328",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "45",
- "id": "4400",
- "aggressive": "true",
- "bonuses": "19,21,19,62,45,51,54,63,60,18,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "melee_animation": "6249",
- "respawn_delay": "60",
- "defence_animation": "6250",
- "death_animation": "6251",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4401",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "slayer_task": "58",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "weakness": "7",
- "slayer_exp": "10",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "10",
- "id": "4404",
- "bonuses": "8,8,10,8,8,10,8,8,8,10,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "4405",
- "bonuses": "11,11,13,11,11,13,11,11,11,13,11,11,11,11,11",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "slayer_exp": "22",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "4406",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4407",
- "bonuses": "3,3,3,3,3,3,3,3,3,3,3,3,3,3,3",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "16",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4408",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "7",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4409",
- "bonuses": "6,6,6,6,6,6,6,6,6,6,6,6,6,6,6",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4410",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4411",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4412",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4300",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4301",
- "slayer_exp": "112",
- "death_animation": "4302",
- "name": "Gorak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "1",
- "id": "4418",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A highly enlightened being.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cosmic Being",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4419",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Horseplay.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Centaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4438",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A noble creature!",
- "melee_animation": "6376",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Stag",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "4440",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Twiggy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wood Dryad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4441",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fairy ring maintenance division.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Fixit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4455",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4457",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4458",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4459",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "9",
- "id": "4470",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Who's your mummy?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guardian mummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4476",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4479",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4480",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4481",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4482",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4483",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4484",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4485",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4486",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4487",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4488",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4489",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4490",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4491",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4492",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Wartface",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4494",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4499",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Does she really exist?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Lady",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4502",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He reminds me of my old mathematics teacher.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Numerator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4503",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The master of accomplishment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4504",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He knows what is possible.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Perceptive",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4505",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Luck is probably on his side.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Fluke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's like looking in the mirror.",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Me",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "4509",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "It's like looking in the mirror.",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Me",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "4510",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Spiritual leader of the Moonclan.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Oneiromancer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4511",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The craziest house I ever did see!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "House",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How does it see where to sweep?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchanted Broom",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm not sure if it's actually doing anything of use.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchanted Bucket",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4524",
- "range_level": "1",
- "attack_level": "1"
- },
{
"melee_animation": "4388",
"attack_speed": "5",
@@ -151620,5499 +70743,19 @@
"defence_animation": "4384",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
- "id": "4527",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4528",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4529",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4385",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4530",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4385",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4531",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4532",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,90,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4533",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I always wondered what that job description actually meant...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cabin boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4539",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The High Priest has been transformed into an avatar of Bandos.",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Bentley",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "214",
- "strength_level": "55",
- "id": "4540",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "A stickler for hygiene in the kitchen.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Beefy' Burns",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4541",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A keen-eyed lookout with a telescope.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Eagle-eye' Shultz",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4542",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "First mate to Captain Bentley.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "First mate 'Davey-boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4543",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pirate through and through.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Picarron' Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4545",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Jake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "4546",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He got his name from his favourite hobby. Reading about beds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedread the bold",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4547",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Wilson",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "4548",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Nobody really knows why he's called Tommy 2-times...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tommy 2-times",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Don't look him straight in the eyes. He'll eat you alive!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Murky Pat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4550",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice beard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Sails",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4551",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is he looking at me?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Beedy-eye' Jones",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4554",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Yes",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jenny Blade",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4555",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A low-down",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Lecherous' Lee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4556",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Apparently his nickname comes from his fondness for jam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Sticky' Sanders",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4557",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4564",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4565",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4566",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Must be hard at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Researcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4568",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes pots.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Generic Diplomat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's very diplomatic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Gimblewap",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4580",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Peaceful man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Spanfipple",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4581",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Peaceful man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Ferrnook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorrn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4589",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common woman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mimm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4590",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portobello",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4593",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome pilot off duty",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Ninto",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4594",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome pilot off duty",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Daerkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4595",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks alert and ready for action.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard Vemmeldo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4600",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4603",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4604",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4605",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4606",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A witch's black cat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black Cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4607",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4608",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Swine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Saboteur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4611",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4633",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4634",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4635",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4636",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4637",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4638",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4639",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4640",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4642",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works evil magic.",
- "start_gfx": "93",
- "combat_style": "2",
- "melee_animation": "810",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "6",
- "end_gfx": "95",
- "respawn_delay": "60",
- "defence_animation": "425",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "2",
- "id": "4659",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "94",
- "attack_level": "5"
- },
- {
- "examine": "He works evil magic.",
- "start_gfx": "96",
- "combat_style": "2",
- "melee_animation": "810",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "22",
- "end_gfx": "98",
- "respawn_delay": "60",
- "defence_animation": "425",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
- "id": "4660",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "17"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "magic_level": "15",
- "respawn_delay": "20",
- "defence_animation": "404",
- "magic_animation": "711",
- "death_animation": "9055",
- "name": "Dark wizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "4661",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "98",
- "attack_level": "1"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4685",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4686",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4687",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A flea-infested black market trader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader Sven",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4716",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flea-infested",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4717",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flea-infested",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4719",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4720",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4721",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4722",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4723",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4724",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4725",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4726",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cowardly mage.",
- "magic_level": "90",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4733",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4734",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4735",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4736",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4737",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4738",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4746",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4748",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4749",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4750",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4751",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4752",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4753",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4755",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4756",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4757",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4759",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Some rubbish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4765",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like it's got fleas!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stray dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4766",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A smelly cat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4768",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre; a guard for the mining area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Juvinate guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4772",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre; a guard for the mining area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Juvinate guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4773",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4774",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4775",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre; seems to be a servant.",
- "melee_animation": "5783",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4776",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "5783",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4777",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4778",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4779",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre; seems to be a servant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Held vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4780",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "An enraged vampyre!",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Angry vampyre",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "4789",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "name": "Vanstrom Klause",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "155",
- "strength_level": "1",
- "id": "4793",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Not as strong as Thok.",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Vanstrom Klause",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "90",
- "id": "4796",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "90"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4805",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4806",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4807",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4808",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4810",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4811",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4812",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4813",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4814",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4815",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4816",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4817",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4818",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4819",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4820",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4821",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4822",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4823",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4824",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4825",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4826",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4828",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4829",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4830",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4831",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4832",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4833",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4834",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4835",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4836",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4837",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4838",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4839",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4840",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4841",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4842",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4843",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4844",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Flying female vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4847",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Flying female vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4848",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4849",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4850",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4851",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4852",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Her knives tickle Thok.",
- "magic_animation": "0",
- "name": "Holgart",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4868",
- "aggressive": "true",
- "range_level": "90",
- "attack_level": "1",
- "defence_animation": "0"
- },
- {
- "examine": "Not Thok's pretty lass.",
- "magic_level": "90",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Fisherman",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4870",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of aquatic evil.",
- "melee_animation": "4829",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4830",
- "name": "Slug Prince",
- "defence_level": "37",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "37",
- "id": "4890",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "37"
- },
- {
- "examine": "An extremely vicious lobster.",
- "slayer_task": "71",
- "melee_animation": "6265",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6267",
- "name": "Giant Lobster",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "29",
- "id": "4893",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "29"
- },
- {
- "examine": "A rather nasty looking crustacean.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sea slug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4894",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "1",
- "id": "4898",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cordero looks ready to teach you how to cook.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cooking Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4899",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cadmus, looking a little bit crafty.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crafting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4900",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Finlay, mending a crayfish cage.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishing Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4901",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Monlum, surveying the rocks.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mining Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Feoras looks a bit fiery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Wilfred, a chip off the old block.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Woodcutting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4906",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Barb, ready to teach you about banking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4907",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His motives are see-through.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fritz the Glassblower",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4909",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An elemental rock.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elemental rock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4911",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "4920",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "4921",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4922",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4923",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4924",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4925",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "4926",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "4927",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "4928",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "4929",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4930",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4931",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Billy Goat",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "4932",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "21",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4933",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "21",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4934",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "death_animation": "5343",
- "name": "Billy Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "28",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4935",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "4936",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "4937",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "4938",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "4939",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little on the cross side!",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Angry giant rat",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4940",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Blessed giant rat",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "4941",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "4942",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "4943",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4944",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "weakness": "9",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4945",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "Trollish.",
- "slayer_task": "83",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "My Arm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old sailor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Barnaby",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4962",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a leprechaun sunbathing on a mountain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool Leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4965",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mountain-dwelling bird. Cute",
- "slayer_task": "7",
- "melee_animation": "5031",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5033",
- "name": "Baby Roc",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "40",
- "id": "4971",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A very",
- "slayer_task": "7",
- "melee_animation": "5024",
- "range_animation": "5025",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5027",
- "name": "Giant Roc",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "55",
- "id": "4972",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "She looks like she's been down here a long time.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Female slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4977",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4989",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4990",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4991",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4992",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4993",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4994",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4995",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4996",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4997",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4998",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4999",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5000",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5001",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5002",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An apprentice.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5026",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tired old wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5027",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An egg launcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5028",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slightly more approachable barbarian.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Commander Connad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5029",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks pretty mean.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Cain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A stressed out barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Paldo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5031",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Pendron",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5032",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Pierreb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5033",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Paldon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5034",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's keeping a close eye on that nearby door.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Sambur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5039",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What on RuneScape is that?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Fighter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5040",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Shooty-shooty.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5041",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's making a run for it!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Runner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5042",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A nasty piece of work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Healer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5043",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not as strong as Thok.",
- "melee_animation": "401",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jeff",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5048",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Time to run away...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shark",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5067",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It blends in very well with its surroundings.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tropical wagtail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5072",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This bird obviously doesn't believe in subtlety.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crimson swift",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5073",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Best served ice cold.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cerulean twitch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5074",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Actually",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden warbler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nothing much to get in a flap about.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Copper longtail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5076",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Chinchompa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "5079",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It looks fluffy and cute; it's probably deadly.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "2",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5183",
- "name": "Carnivorous chinchompa",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "5080",
- "range_level": "2",
- "attack_level": "2"
- },
- {
- "examine": "Wild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ferret",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5081",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A black warlock. The air seems to distort wherever it passes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black warlock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5082",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a snowy knight butterfly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snowy knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5083",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sapphire glacialis. It doesn't look as pretentious as its name sounds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sapphire glacialis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5084",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a ruby harvest butterfly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ruby harvest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5085",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Curls up into a ball to protect itself from attack.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Prickly kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5086",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Now that's a big overbite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sabre-toothed kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5087",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It uses its tail to hunt and skewer fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barb-tailed kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5088",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "That's a mean looking set of claws.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wild kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5089",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Ha! Thok much stronger.",
- "melee_animation": "395",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gyr Falcon",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5097",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "It seems to be on a permanent sugar rush.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spotted kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Quieter than a ninja mouse with slippers on.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dark kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5099",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Now you see it; now you don't.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dashing kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's just like a big, white, furry, deadly can opener.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "respawn_delay": "10",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Sabre-toothed kyatt",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "25",
- "id": "5103",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "If you tried to ride that, you'd just impale yourself!",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Spined larupia",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "15",
- "id": "5104",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Get in a graahk's way and you're going to know about it... however briefly.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Horned graahk",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "25",
- "id": "5105",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "It's just like a big, white, furry, deadly can opener.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "9055",
- "name": "null",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "20",
- "id": "5106",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "He must be good at hunting; even his hair blends in with the surroundings.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hunting expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5112",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "With all the furs",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hunting expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5113",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy but kind of cute.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Orange salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5114",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy but certainly striking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Red salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy and somewhat menacing.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very slimy and generally disgusting.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swamp lizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Desert eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5130",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5131",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Polar eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5132",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to be protecting the nest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5133",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "5304",
- "strength_level": "1",
- "id": "5137",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5305"
- },
- {
- "examine": "Now",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's playing both sides!",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "75",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Double agent",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "75",
- "id": "5144",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Double agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "5145",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How cute!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Li'l lamb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The black sheep of the family.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lamb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5162",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5163",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5166",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "5168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "5169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "5170",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "This beast doesn't need climbing boots.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5171",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly shorn.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lovely thick wool.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5176",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5181",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5184",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "It's Nial",
- "melee_animation": "8946",
- "range_animation": "0",
- "magic_level": "58",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8948",
- "name": "Saff Waldon",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "165",
- "strength_level": "58",
- "id": "5188",
- "aggressive": "true",
- "range_level": "58",
- "attack_level": "58"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5195",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5196",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5197",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She needs to work out before facing Thok.",
- "melee_animation": "7041",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Alice's husband",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5204",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Run away! Run away!",
- "melee_animation": "5411",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5412",
- "name": "Penance Queen",
- "defence_level": "132",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "260",
- "id": "5247",
- "aggressive": "true",
- "range_level": "116",
- "attack_level": "260"
- },
- {
- "examine": "What's it looking at?",
- "melee_animation": "5092",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5093",
- "name": "Queen spawn",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "450",
- "strength_level": "60",
- "id": "5248",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "He looks embarrassed",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Errdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5249",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mounted lancer.",
- "slayer_task": "70",
- "melee_animation": "7584",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust rider",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "54",
- "id": "5251",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "A mounted archer.",
- "slayer_task": "70",
- "melee_animation": "5451",
- "range_animation": "5451",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust rider",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "40",
- "id": "5252",
- "aggressive": "true",
- "range_level": "54",
- "attack_level": "40"
- },
- {
- "examine": "A huge scarab beast.",
- "slayer_task": "70",
- "melee_animation": "5457",
- "range_animation": "0",
- "magic_level": "62",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5456",
- "name": "Giant scarab",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "571",
- "strength_level": "62",
- "id": "5253",
- "aggressive": "true",
- "range_level": "62",
- "attack_level": "62"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5258",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5260",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Sophanem.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sophanem guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5270",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Sophanem.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sophanem guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5274",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Menaphos.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Menaphite guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5277",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Flings annoying splinters at Thok.",
- "melee_animation": "426",
- "range_animation": "426",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Osman",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5285",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5310",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5311",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5312",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5313",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5314",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5315",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5316",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5317",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5318",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5319",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5320",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5321",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "19",
- "id": "5322",
- "aggressive": "true",
- "bonuses": "21,19,20,42,44,34,41,38,40,21,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5323",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5324",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5325",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5326",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5327",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5328",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5329",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5330",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5331",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
+ "attack_level": "95"
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"combat_audio": "774,775,777",
"melee_animation": "5485",
"attack_speed": "4",
@@ -157133,7 +70776,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"range_animation": "0",
"combat_audio": "774,775,777",
"melee_animation": "5485",
@@ -157156,7 +70798,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"range_animation": "0",
"combat_audio": "774,775,777",
"melee_animation": "5485",
@@ -157215,7 +70856,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -157238,7 +70878,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -157258,7 +70897,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -157278,7 +70916,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "5485",
"combat_audio": "774,775,777",
@@ -157298,7 +70935,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5499",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157318,188 +70954,8 @@
"range_level": "1",
"attack_level": "42"
},
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5487",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5354",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5357",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5358",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "A giant skeleton.",
- "slayer_task": "75",
- "melee_animation": "5499",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "5359",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "It appears to be intelligent and savage.",
- "slayer_task": "41",
- "melee_animation": "91",
- "range_animation": "91",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "168",
- "defence_animation": "89",
- "weakness": "3",
- "slayer_exp": "183",
- "magic_animation": "91",
- "death_animation": "92",
- "name": "Brutal green dragon",
- "defence_level": "168",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "175",
- "strength_level": "168",
- "id": "5362",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "0",
- "attack_level": "268"
- },
- {
- "weakness": "7",
- "examine": "It appears to be intelligent and savage.",
- "name": "Confused barbarian",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "175",
- "strength_level": "167",
- "attack_speed": "6",
- "id": "5364",
- "range_level": "167",
- "attack_level": "70"
- },
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157522,6 +70978,7 @@
{
"examine": "Could do with gaining a few pounds.",
"combat_audio": "774,775,777",
+ "melee_animation": "5485",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5513",
@@ -157539,6 +70996,7 @@
{
"examine": "Could do with gaining a few pounds.",
"combat_audio": "774,775,777",
+ "melee_animation": "5485",
"attack_speed": "5",
"respawn_delay": "60",
"defence_animation": "5513",
@@ -157570,135 +71028,8 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "Examine not added",
- "melee_animation": "5568",
- "range_animation": "5568",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "magic_animation": "5568",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "5375",
- "bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5568",
- "range_animation": "5568",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "magic_animation": "5568",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "5376",
- "bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5377",
- "bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5378",
- "bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5379",
- "bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5380",
- "bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
- "range_level": "1",
- "attack_level": "47"
- },
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157718,48 +71049,8 @@
"range_level": "1",
"attack_level": "62"
},
- {
- "examine": "Animated steel armour.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4167",
- "name": "Animated steel armour",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "5382",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Big and bony, just how I like them.",
- "start_gfx": "2713",
- "melee_animation": "5499",
- "range_animation": "5499",
- "attack_speed": "2",
- "defence_animation": "5489",
- "magic_animation": "5499",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "85",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "95",
- "id": "5384",
- "aggressive": "true",
- "bonuses": "25,25,25,25,25,25,25,25,25,25,25,25,25,25,25",
- "range_level": "1",
- "projectile": "2718",
- "attack_level": "95"
- },
{
"examine": "A skeleton in a dress!",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157782,7 +71073,6 @@
},
{
"examine": "Achingly thin.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157804,7 +71094,6 @@
},
{
"examine": "Look: another skeleton.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157826,7 +71115,6 @@
},
{
"examine": "That skeleton's grinning at me.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157848,7 +71136,6 @@
},
{
"examine": "He needs a tan.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157870,7 +71157,6 @@
},
{
"examine": "How do you know if a skeleton's male or female?",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157891,7 +71177,6 @@
},
{
"examine": "He obviously hasn't realised he's dead.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157913,7 +71198,6 @@
},
{
"examine": "Put some meat on those bones!",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -157933,235 +71217,8 @@
"range_level": "1",
"attack_level": "52"
},
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "56",
- "strength_level": "1",
- "id": "5393",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5395",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5396",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5403",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "92",
- "strength_level": "1",
- "id": "5404",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5405",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5406",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5407",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5408",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5409",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5410",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "An angry skeleton.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -158183,7 +71240,6 @@
},
{
"examine": "Cross bones.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -158203,119 +71259,8 @@
"range_level": "1",
"attack_level": "57"
},
- {
- "examine": "How does it move of its own accord?",
- "melee_animation": "5591",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5592",
- "name": "Possessed pickaxe",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "5413",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "How does it move of its own accord?",
- "melee_animation": "5597",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5596",
- "name": "Animated spade",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "5414",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "examine": "A terrifying dog beast.",
- "slayer_task": "82",
- "melee_animation": "5625",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "5628",
- "name": "Terror dog",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "134",
- "strength_level": "47",
- "id": "5417",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "melee_animation": "5625",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5626",
- "death_animation": "5627",
- "name": "Terror dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "1",
- "id": "5418",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5617",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "5618",
- "death_animation": "5619",
- "name": "Tarn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "5420",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I preferred him when he was human.",
- "melee_animation": "5617",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5619",
- "name": "Mutant tarn",
- "defence_level": "57",
- "safespot": null,
- "lifepoints": "325",
- "strength_level": "57",
- "id": "5421",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "57"
- },
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5485",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -158335,4943 +71280,6 @@
"range_level": "1",
"attack_level": "63"
},
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "KGP Agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5442",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Instructs agility.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5447",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An army commander.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Army Commander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5448",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "5725",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "5452",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5455",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An impressive-looking troll.",
- "slayer_task": "83",
- "melee_animation": "5374",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5209",
- "name": "Ice Troll King",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "5472",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5473",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5474",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5475",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "A large ice troll.",
- "melee_animation": "4332",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll grunt",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "5476",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "An ill-tempered king.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Gjuki Sorvott IV",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5478",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Thorkel Silkbeard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5480",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard on insult duty.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5489",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5490",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5491",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Sorvott's militia.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5492",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A miner at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5497",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Burgher's protectors.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Burgher's protectors.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5516",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of your militia.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5517",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5521",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5522",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5523",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5525",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5526",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5527",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "Antisocial.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorceress",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Come",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apprentice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An autumn elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Autumn Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5533",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A spring elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spring Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5539",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A summer elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Summer Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5547",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A winter elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Winter Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5553",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It dare attack Pretty Lass? Thok crush its puny skull!",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Osman",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "95",
- "id": "5561",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "She's honest about the things you aren't.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sin Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it male or female?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Homunculus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5581",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Strong",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Cage",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "95",
- "id": "5584",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "Famous for his fights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Black-eye",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5589",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Count them pinkies!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'No fingers",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5590",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He wishes he had teeth.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Gummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5591",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it a frog",
- "melee_animation": "5842",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5841",
- "name": "Frogeel",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "36",
- "id": "5593",
- "aggressive": "true",
- "range_level": "49",
- "attack_level": "36"
- },
- {
- "death_animation": "146",
- "name": "Spidine",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "35",
- "melee_animation": "143",
- "strength_level": "1",
- "id": "5594",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "144"
- },
- {
- "examine": "Definitely not a chicken or a swordfish.",
- "melee_animation": "5387",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5389",
- "name": "Swordchick",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "5595",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6800",
- "respawn_delay": "60",
- "defence_animation": "6802",
- "death_animation": "6801",
- "name": "Jubster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "5596",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Since when did newts have beaks?",
- "melee_animation": "2299",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "2301",
- "name": "Newtroost",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "5597",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Half unicorn",
- "melee_animation": "5849",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "41",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "5851",
- "name": "Unicow",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "30",
- "id": "5603",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5608",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5609",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5610",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5611",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'd prefer it if it were a muffin...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Puffin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5614",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5619",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5620",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5621",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5622",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bedside manner is a little lacking",
- "slayer_task": "93",
- "melee_animation": "5643",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5658",
- "name": "Sorebones",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5627",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "I hope his hands don't shake.",
- "slayer_task": "93",
- "melee_animation": "5643",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5658",
- "name": "Sorebones",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5628",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5629",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5630",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5631",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5632",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5633",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5634",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5635",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5636",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5637",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5638",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5639",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5640",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5641",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5642",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5643",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5644",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5645",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5646",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5647",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5648",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5649",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5650",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5651",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5652",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5653",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5654",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5655",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5656",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5657",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5658",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5659",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5660",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5661",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5662",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5663",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5664",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5665",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "It's trying to mash you flat! Less examine",
- "melee_animation": "5895",
- "range_animation": "0",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5898",
- "name": "Barrelchest",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "52",
- "id": "5666",
- "aggressive": "true",
- "range_level": "52",
- "attack_level": "52"
- },
- {
- "examine": "He is one",
- "melee_animation": "5970",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5972",
- "name": "Undead Lumberjack",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "73",
- "id": "5680",
- "range_level": "1",
- "attack_level": "73"
- },
- {
- "examine": "A big",
- "slayer_task": "15",
- "melee_animation": "6079",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "93",
- "magic_animation": "0",
- "death_animation": "6081",
- "name": "Cave bug",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "93",
- "strength_level": "1",
- "id": "5750",
- "range_level": "9",
- "attack_level": "1"
- },
- {
- "examine": "A strange mole-like being.",
- "melee_animation": "6012",
- "respawn_delay": "60",
- "defence_animation": "6013",
- "slayer_exp": "52",
- "death_animation": "6014",
- "name": "Molanisk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5751",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5752",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5753",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5755",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5756",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5757",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5758",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5760",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5761",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5762",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5763",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5764",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5765",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5766",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5767",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5768",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5769",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after cave goblin money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5776",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after cave goblin money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5777",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5783",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Taking a terribly important box from one place to another.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crate goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5784",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Good at shorthand.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin scribe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5786",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He keeps order in the city.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "5800",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "He keeps order in the city.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "5801",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "A goblin baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Young 'un",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5803",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nipper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5805",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5808",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5813",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5814",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5816",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5817",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5819",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5821",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5822",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Don't spit",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spit goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5823",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bug-eyed little goblin fish. How cute.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5824",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Annoying little flappy things.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Moths",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "5829",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "name": "Rat Burgiss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "5833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5842",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5843",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5844",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5845",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5846",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5847",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5848",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5849",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5850",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5851",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "For sitting on.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bench",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5855",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5856",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks pretty skilled with that bow.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "15",
- "id": "5859",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "20",
- "attack_level": "15"
- },
- {
- "examine": "No match for Thok. Silly demon.",
- "magic_level": "85",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Zanik",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "85",
- "id": "5861",
- "aggressive": "true",
- "range_level": "85",
- "attack_level": "85"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5864",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5865",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5867",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5874",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5875",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5876",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5877",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells tickets to Keldagrim.",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5879",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5880",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5881",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5882",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5883",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5884",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5885",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells tickets to Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5886",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Are you good enough to fight?",
- "melee_animation": "6318",
- "range_animation": "0",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6322",
- "name": "The Inadequacy",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "5902",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Can you endure long enough?",
- "melee_animation": "6345",
- "range_animation": "0",
- "magic_level": "67",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6347",
- "name": "The Everlasting",
- "defence_level": "67",
- "safespot": null,
- "lifepoints": "191",
- "strength_level": "67",
- "id": "5903",
- "aggressive": "true",
- "range_level": "67",
- "attack_level": "67"
- },
- {
- "examine": "Can you bring yourself to hurt another?",
- "melee_animation": "6329",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6331",
- "name": "The Untouchable",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "5904",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "What if you don't know how to win?",
- "melee_animation": "6342",
- "range_animation": "0",
- "magic_level": "63",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Illusive",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "5905",
- "aggressive": "true",
- "range_level": "63",
- "attack_level": "63"
- },
- {
- "examine": "You can't escape your inadequacy!",
- "melee_animation": "6310",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6315",
- "name": "A Doubt",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "5906",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Dying tree",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "50",
- "id": "5908",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Don't let her arm-wrestle you for money.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Barbarian",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "5909",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "He's suspiciously talented with a meat-cleaver.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5911",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This grizzled soldier is here to distribute Rated Clan Wars badges.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Iffie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5914",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Does what too many people aren't interested in doing.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cleaner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5916",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mangy mutt.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stray dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5917",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
- "melee_animation": "6489",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Guard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "5919",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
- "melee_animation": "6489",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Guard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "5920",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "He's studying to be a guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trainee Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5921",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Trains the guards of the future.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5922",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "9",
- "id": "5926",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "9",
- "id": "5927",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for her light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "9",
- "id": "5928",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for her light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "9",
- "id": "5929",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Jacques Netis - a slightly pompous art expert.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Art Critic Jacques",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5930",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seth Minas - an aged expert in RuneScape history.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Historian Minas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5931",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A lady with lots of information about the Museum.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Information clerk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5938",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teacher and one of his pupils.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Teacher and pupil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks kind of familiar.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Schoolboy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5945",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teacher and one of her pupils.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Teacher and pupil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks hard at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could there be something exciting in his wheelbarrow?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5954",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5956",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Wheelbarrow loader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5958",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5959",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5960",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5961",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5962",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5963",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An aged expert in natural history.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Natural historian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5966",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodsuckers!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Leech display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5971",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slugs of the sea variety.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sea slugs display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5972",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A house on its back.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snail display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5973",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A scaly little fellow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lizard display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5975",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice suit.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penguin display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5976",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's got the hump.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Camel display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5977",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Terrifying!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Terrorbird display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5978",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a fire-breather.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "408,410,409",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dragon display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Needs a good square meal.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wyvern display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Battle tortoise display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Loves making molehills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mole display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5982",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It hides in stone",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "95",
- "id": "5986",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5990",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5992",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very odd looking creature.",
- "melee_animation": "6513",
- "range_animation": "0",
- "magic_level": "46",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6512",
- "name": "Experiment No.2",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "131",
- "strength_level": "46",
- "id": "5993",
- "range_level": "46",
- "attack_level": "46"
- },
- {
- "examine": "A huge mouse. It looks hungry...",
- "melee_animation": "6519",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6521",
- "name": "Mouse",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "5994",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "melee_animation": "6501",
- "respawn_delay": "60",
- "defence_animation": "6503",
- "death_animation": "6502",
- "name": "Glod",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "1",
- "id": "5996",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5999",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "6001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6006",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6007",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6008",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6009",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6010",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6011",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6012",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6013",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6014",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6015",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6016",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6017",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6018",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6019",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6020",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6021",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6022",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6023",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6024",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6025",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Boris",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6026",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Imre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6027",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Yuri",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6028",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Joseph",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6029",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Nikolai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6030",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Eduard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6031",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Lev",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6032",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Georgy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "6033",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Svetlana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6034",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Irina",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6035",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Alexis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6036",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Milla",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6037",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Galina",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6038",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sofiya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6039",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Ksenia",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6040",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Nikita",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Zoja",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6044",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Liliya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6045",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "6559",
- "respawn_delay": "60",
- "defence_animation": "6557",
- "slayer_exp": "74",
- "death_animation": "6558",
- "name": "Big Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "6046",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious mountain wolf.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "combat_audio": "481,491,490",
- "attack_speed": "6",
- "defence_animation": "6578",
- "slayer_exp": "34",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Wolf",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "1",
- "id": "6047",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Now it has no armour",
- "range_animation": "0",
- "combat_audio": "481,491,490",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "slayer_exp": "34",
- "magic_animation": "0",
- "name": "Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "95",
- "id": "6048",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "A big coward. Thok mocks scaredy man.",
- "combat_audio": "481,491,490",
- "magic_level": "75",
- "defence_animation": "0",
- "weakness": "10",
- "slayer_exp": "34",
- "magic_animation": "0",
- "name": "Wolf",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "75",
- "id": "6049",
- "aggressive": "true",
- "range_level": "75",
- "attack_level": "75"
- },
- {
- "examine": "A vicious desert wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "5",
- "defence_animation": "6578",
- "weakness": "9",
- "magic_animation": "6579",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "20",
- "id": "6050",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A vicious desert wolf.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "5",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "20",
- "id": "6051",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "She tends the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Aeryka",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6072",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little lost.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wandering impling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6073",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry little imp. Grrr.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Imp defender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6074",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "6078",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "6079",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "6080",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "6081",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6088",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6089",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6090",
- "range_level": "1",
- "attack_level": "2"
- },
{
"examine": "Ey.",
"combat_audio": "774,775,777",
@@ -163308,7 +71316,6 @@
},
{
"examine": "Could do with gaining a few pounds.",
- "slayer_task": "75",
"melee_animation": "5487",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -163328,61 +71335,8 @@
"range_level": "1",
"attack_level": "9"
},
- {
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6099",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6100",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His face is expressionless.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Lost barbarian",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6102",
- "range_level": "1",
- "attack_level": "60"
- },
{
"examine": "An opponent from the grave. He seems unimpressed by your bone rummaging.",
- "slayer_task": "75",
"melee_animation": "2067",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -163403,7 +71357,6 @@
},
{
"examine": "An ex-barbarian, willing to make you ex too.",
- "slayer_task": "75",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -163424,7 +71377,6 @@
},
{
"examine": "He's heartless.",
- "slayer_task": "75",
"melee_animation": "2067",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -163445,7 +71397,6 @@
},
{
"examine": "He's less heavy now.",
- "slayer_task": "75",
"melee_animation": "390",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -163466,7 +71417,6 @@
},
{
"examine": "Floats like an anvil, hits like a hammer.",
- "slayer_task": "75",
"melee_animation": "422",
"range_animation": "0",
"combat_audio": "774,775,777",
@@ -163485,4762 +71435,6 @@
"range_level": "1",
"attack_level": "61"
},
- {
- "examine": "Probably not a chicken.",
- "slayer_task": "7",
- "melee_animation": "6811",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "6812",
- "name": "Entrana firebird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "6108",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These gnomes know how to get around!",
- "slayer_task": "7",
- "melee_animation": "6790",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6791",
- "name": "Mounted terrorbird gnome",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "6109",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A messy bird.",
- "slayer_task": "7",
- "melee_animation": "3467",
- "range_animation": "3467",
- "attack_speed": "5",
- "defence_animation": "1014",
- "weakness": "6",
- "magic_animation": "3467",
- "death_animation": "3468",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "6115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A messy bird.",
- "melee_animation": "3467",
- "range_animation": "3467",
- "attack_speed": "5",
- "defence_animation": "1014",
- "magic_animation": "3467",
- "death_animation": "3468",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "6116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Do not upset this teacher. You have been warned!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mr. Mordaut",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He helps the professor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Observatory assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6118",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sleeping like an ugly baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sleeping guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old goblin hag.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Naghead",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6123",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A young goblin 'beauty'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wagchin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6124",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6125",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6126",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big appetite for a small creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greasycheeks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6127",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes drink a little too much.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smellytoes",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6128",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lean and green.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Creakyknees",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6129",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "6131",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6132",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6133",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This imp is clearly the class clown.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dunce",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6134",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Get useful information from this guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Town crier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6135",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Intermediate)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Veteran)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6141",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6154",
- "bonuses": "100,100,100,50,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "15",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6155",
- "bonuses": "100,100,100,100,25,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6156",
- "bonuses": "100,100,50,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6157",
- "bonuses": "50,50,100,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Squire to the Knights of the Round Table.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "400",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "422",
- "death_animation": "836",
- "name": "Sir Lancelot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "118",
- "strength_level": "1",
- "id": "6170",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6183",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6184",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He isn't very friendly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Renegade knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6188",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dark-hearted knight.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "6189",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Primping with combs and hair clips.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6190",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The name isn't just for show.",
- "range_animation": "0",
- "magic_level": "55",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Sinclair",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "55",
- "id": "6198",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He can look after my money.",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6200",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6201",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "Destroyer of 1000 planes!",
- "slayer_task": "40",
- "melee_animation": "6945",
- "range_animation": "6945",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6944",
- "weakness": "9",
- "slayer_exp": "142",
- "magic_animation": "6945",
- "death_animation": "6946",
- "name": "Tstanon Karlak",
- "defence_level": "125",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "118",
- "id": "6204",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,-5,0,0,14,0,0,0",
- "range_level": "50",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6205",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Scourge of light.",
- "slayer_task": "56",
- "start_gfx": "1208",
- "combat_style": "1",
- "melee_animation": "7033",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "0",
- "slayer_exp": "150",
- "magic_animation": "7033",
- "death_animation": "6946",
- "lifepoints": "150",
- "id": "6206",
- "aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,-5,0,0,0,0,0,0",
- "agg_radius": "64",
- "range_animation": "7033",
- "magic_level": "50",
- "defence_animation": "6945",
- "name": "Zakl'n Gritch",
- "defence_level": "127",
- "safespot": null,
- "strength_level": "76",
- "range_level": "150",
- "projectile": "1209",
- "attack_level": "83"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6209",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Have you checked your pockets lately?",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "defence_animation": "170",
- "weakness": "7",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "4",
- "id": "6211",
- "aggressive": "true",
- "bonuses": "10,5,5,10,10,10,10,10,10,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "respawn_delay": "25",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "64",
- "id": "6212",
- "aggressive": "true",
- "bonuses": "50,40,45,60,70,70,70,40,40,50,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "respawn_delay": "25",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "64",
- "id": "6213",
- "aggressive": "true",
- "bonuses": "50,40,45,60,70,70,70,40,40,50,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "It looks really hungry!",
- "melee_animation": "810",
- "range_animation": "810",
- "respawn_delay": "25",
- "defence_animation": "404",
- "magic_animation": "810",
- "death_animation": "9055",
- "name": "Vampire",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "44",
- "id": "6214",
- "aggressive": "true",
- "bonuses": "30,35,30,40,50,50,50,25,30,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A small ice demon.",
- "melee_animation": "8080",
- "range_animation": "8080",
- "respawn_delay": "25",
- "defence_animation": "8079",
- "magic_animation": "8080",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6217",
- "bonuses": "5,5,5,5,10,10,10,10,10,10,5,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Those horns look pretty sharp...",
- "slayer_task": "39",
- "melee_animation": "4300",
- "range_animation": "4300",
- "respawn_delay": "25",
- "defence_animation": "4301",
- "weakness": "9",
- "slayer_exp": "112",
- "magic_animation": "4300",
- "death_animation": "4302",
- "name": "Gorak",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "70",
- "id": "6218",
- "aggressive": "true",
- "bonuses": "30,30,50,70,40,70,70,50,60,55,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "Warrior of Zamorak.",
- "slayer_task": "79",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "5",
- "respawn_delay": "25",
- "defence_animation": "1156",
- "weakness": "6",
- "magic_animation": "390",
- "death_animation": "9055",
- "name": "Spiritual warrior",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "102",
- "strength_level": "66",
- "id": "6219",
- "aggressive": "true",
- "bonuses": "40,60,60,60,60,20,50,55,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "66"
- },
- {
- "examine": "A ranger spirit dedicated to Zamorak.",
- "slayer_task": "78",
- "start_gfx": "18",
- "combat_style": "1",
- "start_height": "96",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "25",
- "defence_animation": "404",
- "weakness": "1",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "6220",
- "aggressive": "true",
- "bonuses": "50,70,50,50,50,70,50,85,85,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "9",
- "attack_level": "1"
- },
- {
- "examine": "A deadly servant of Zamorak.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "811",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "9055",
- "lifepoints": "75",
- "id": "6221",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_animation": "811",
- "magic_level": "180",
- "end_gfx": "78",
- "defence_animation": "404",
- "end_height": "0",
- "name": "Spiritual mage",
- "defence_level": "61",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "78",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "2",
- "melee_animation": "6952",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "3",
- "slayer_exp": "124",
- "magic_animation": "6952",
- "death_animation": "6956",
- "lifepoints": "121",
- "id": "6223",
- "aggressive": "true",
- "bonuses": "45,45,45,0,0,0,0,0,0,0,0,25,0,0,0",
- "prj_height": "92",
- "agg_radius": "64",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
- "name": "Wingman Skree",
- "defence_level": "160",
- "poison_immune": "true",
- "safespot": null,
- "strength_level": "50",
- "range_level": "100",
- "projectile": "1199",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6224",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "4",
- "slayer_exp": "133",
- "magic_animation": "6953",
- "death_animation": "6956",
- "lifepoints": "132",
- "id": "6225",
- "aggressive": "true",
- "bonuses": "0,0,0,0,60,0,0,0,0,0,0,0,0,0,0",
- "prj_height": "92",
- "agg_radius": "64",
- "range_animation": "6953",
- "magic_level": "50",
- "defence_animation": "6955",
- "name": "Flockleader Geerin",
- "defence_level": "175",
- "poison_immune": "true",
- "safespot": null,
- "strength_level": "80",
- "range_level": "150",
- "projectile": "1190",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6226",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "Graceful, bird-like creature.",
- "melee_animation": "6954",
- "range_animation": "6954",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6955",
- "weakness": "6",
- "slayer_exp": "133",
- "magic_animation": "6954",
- "death_animation": "6956",
- "name": "Flight Kilisa",
- "defence_level": "175",
- "safespot": null,
- "lifepoints": "133",
- "strength_level": "118",
- "id": "6227",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,14,0,0,0",
- "range_level": "169",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A servant of Armadyl.",
- "slayer_task": "79",
- "combat_style": "1",
- "melee_animation": "6954",
- "range_animation": "6954",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "weakness": "6",
- "magic_animation": "6954",
- "death_animation": "6956",
- "name": "Spiritual warrior",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "70",
- "id": "6229",
- "aggressive": "true",
- "bonuses": "40,40,50,50,20,50,50,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "68",
- "attack_level": "70"
- },
- {
- "examine": "Armadyl's favourite servant.",
- "slayer_task": "78",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "weakness": "4",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "89",
- "strength_level": "1",
- "id": "6230",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "A mage who serves Armadyl above all else - even death.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "6952",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "4",
- "magic_animation": "6952",
- "death_animation": "6956",
- "lifepoints": "75",
- "id": "6231",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,9,12,5,45,28,0,0,0,0,0",
- "prj_height": "92",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
- "name": "Spiritual mage",
- "defence_level": "111",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "1199",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6232",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "83",
- "strength_level": "1",
- "id": "6233",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "45",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "1",
- "id": "6234",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "1",
- "id": "6235",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "6236",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "1",
- "id": "6237",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "124",
- "strength_level": "1",
- "id": "6238",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "139",
- "strength_level": "1",
- "id": "6239",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "63",
- "strength_level": "1",
- "id": "6240",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6241",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "83",
- "strength_level": "1",
- "id": "6242",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "1",
- "id": "6243",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "6244",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "1",
- "id": "6245",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "73",
- "strength_level": "1",
- "id": "6246",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6249",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6253",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man wearing ancient clothing.",
- "combat_style": "2",
- "melee_animation": "811",
- "range_animation": "811",
- "poisonous": "true",
- "magic_level": "60",
- "respawn_delay": "25",
- "end_gfx": "76",
- "defence_animation": "404",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "9055",
- "name": "Saradomin priest",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "89",
- "strength_level": "1",
- "id": "6254",
- "aggressive": "true",
- "bonuses": "40,40,40,40,20,50,40,55,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Warrior of Saradomin.",
- "slayer_task": "79",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "5",
- "respawn_delay": "25",
- "defence_animation": "1156",
- "weakness": "8",
- "magic_animation": "390",
- "death_animation": "9055",
- "name": "Spiritual warrior",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "66",
- "id": "6255",
- "aggressive": "true",
- "bonuses": "40,60,60,60,60,20,50,45,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "66"
- },
- {
- "examine": "A ranger spirit dedicated to Saradomin.",
- "slayer_task": "78",
- "start_gfx": "18",
- "combat_style": "1",
- "start_height": "96",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "25",
- "defence_animation": "404",
- "weakness": "0",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "106",
- "strength_level": "1",
- "id": "6256",
- "aggressive": "true",
- "bonuses": "50,70,50,50,50,70,50,65,65,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "9",
- "attack_level": "1"
- },
- {
- "examine": "Saradomin's holy mage.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "811",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "4",
- "magic_animation": "811",
- "death_animation": "9055",
- "lifepoints": "85",
- "id": "6257",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,8,7,3,16,2,0,0,0,0,0",
- "range_animation": "811",
- "magic_level": "160",
- "end_gfx": "76",
- "defence_animation": "404",
- "end_height": "0",
- "name": "Spiritual mage",
- "defence_level": "86",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "76",
- "attack_level": "1"
- },
- {
- "examine": "A valiant knight.",
- "melee_animation": "407",
- "range_animation": "407",
- "respawn_delay": "25",
- "defence_animation": "410",
- "weakness": "7",
- "magic_animation": "407",
- "death_animation": "9055",
- "name": "Knight of Saradomin",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "135",
- "strength_level": "50",
- "id": "6258",
- "aggressive": "true",
- "bonuses": "40,40,40,40,50,20,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A valiant knight.",
- "melee_animation": "401",
- "range_animation": "401",
- "respawn_delay": "25",
- "defence_animation": "424",
- "weakness": "7",
- "magic_animation": "401",
- "death_animation": "9055",
- "name": "Knight of Saradomin",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "50",
- "id": "6259",
- "aggressive": "true",
- "bonuses": "40,40,40,40,50,20,40,65,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "agg_radius": "64",
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "melee_animation": "6154",
- "range_animation": "6154",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6155",
- "weakness": "8",
- "magic_animation": "6154",
- "death_animation": "6156",
- "name": "Sergeant Strongstack",
- "defence_level": "126",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "118",
- "id": "6261",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,14,0,0,0",
- "range_level": "50",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "start_gfx": "1202",
- "combat_style": "2",
- "melee_animation": "6154",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "3",
- "magic_animation": "6154",
- "death_animation": "6156",
- "lifepoints": "127",
- "id": "6263",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,6,0,0,0",
- "agg_radius": "64",
- "range_animation": "6154",
- "magic_level": "150",
- "defence_animation": "6155",
- "name": "Sergeant Steelwill",
- "defence_level": "150",
- "safespot": null,
- "strength_level": "50",
- "range_level": "1",
- "projectile": "1203",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6264",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "combat_style": "1",
- "melee_animation": "6154",
- "range_animation": "6154",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6155",
- "weakness": "2",
- "magic_animation": "6154",
- "death_animation": "6156",
- "name": "Sergeant Grimspike",
- "defence_level": "132",
- "safespot": null,
- "lifepoints": "146",
- "strength_level": "80",
- "id": "6265",
- "aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,0,0,0,0,0,0,0",
- "range_level": "150",
- "projectile": "1206",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6266",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Green and aggressive.",
- "melee_animation": "2936",
- "range_animation": "2936",
- "attack_speed": "6",
- "respawn_delay": "25",
- "defence_animation": "2937",
- "weakness": "8",
- "magic_animation": "2936",
- "death_animation": "2938",
- "name": "Jogre",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "62",
- "id": "6268",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,20,10,20,0,0,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "62"
- },
- {
- "examine": "A one-eyed man-eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "110",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "70",
- "id": "6269",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A one-eyed man-eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "110",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "70",
- "id": "6270",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "8",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6271",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6272",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6273",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6274",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "An ugly, smelly creature.",
- "slayer_task": "45",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "165",
- "weakness": "8",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "6275",
- "aggressive": "true",
- "bonuses": "20,30,30,30,30,30,10,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "The spirit of a ranger, serving bandos beyond death.",
- "slayer_task": "78",
- "start_gfx": "95",
- "combat_style": "1",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "0",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "6276",
- "aggressive": "true",
- "bonuses": "30,50,30,30,50,60,50,40,40,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "1195",
- "attack_level": "1"
- },
- {
- "examine": "A true servant of Bandos.",
- "slayer_task": "79",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "8",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual warrior",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "131",
- "strength_level": "70",
- "id": "6277",
- "aggressive": "true",
- "bonuses": "50,40,45,60,60,60,60,20,50,60,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "One of Bandos' chosen.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "4320",
- "range_animation": "4320",
- "attack_speed": "5",
- "magic_level": "142",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "4",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual mage",
- "defence_level": "103",
- "safespot": null,
- "lifepoints": "106",
- "strength_level": "1",
- "id": "6278",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,12,14,13,35,13,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ancient goblin.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "5",
- "id": "6279",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A warrior for Bandos.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6280",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A soldier to the death.",
- "melee_animation": "6188",
- "range_animation": "6188",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6189",
- "magic_animation": "6188",
- "death_animation": "6190",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6281",
- "aggressive": "true",
- "bonuses": "5,10,10,10,10,10,5,10,5,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A soldier to the death.",
- "melee_animation": "6188",
- "range_animation": "6188",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6189",
- "magic_animation": "6188",
- "death_animation": "6190",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "5",
- "id": "6282",
- "aggressive": "true",
- "bonuses": "5,10,10,10,10,10,5,10,5,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A warrior for Bandos.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "slayer_exp": "16",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "5",
- "id": "6283",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6285",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6286",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6287",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6288",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6289",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6290",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6291",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6292",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6293",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "308",
- "strength_level": "59",
- "id": "6294",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "308",
- "strength_level": "59",
- "id": "6295",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this creature.",
- "slayer_task": "89",
- "melee_animation": "7093",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "7091",
- "name": "Warped tortoise",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "148",
- "strength_level": "39",
- "id": "6296",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "melee_animation": "7093",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "7092",
- "death_animation": "7091",
- "name": "Warped tortoise",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "6297",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Annoyingly easy to squish.",
- "slayer_task": "73",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "2",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Bolrie",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "6306",
- "aggressive": "true",
- "range_level": "2",
- "attack_level": "1"
- },
- {
- "examine": "She looks bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard no. 21",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6314",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks even more bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard no. 72",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6315",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6322",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6323",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6324",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6325",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6326",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6327",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6328",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6329",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6330",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6331",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6332",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6334",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6335",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6336",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6337",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6338",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6339",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Duck!",
- "combat_style": "1",
- "melee_animation": "3920",
- "range_animation": "3920",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "3922",
- "name": "Child",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "92",
- "strength_level": "48",
- "id": "6344",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "48"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6346",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6347",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6348",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6349",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6350",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6351",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6352",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6354",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The mother of all pests!",
- "attack_speed": "6",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Street urchin",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "1428",
- "strength_level": "70",
- "id": "6358",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "A warrior of Zamorak.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak warrior",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "6363",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A warrior of Zamorak.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "6364",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A ranger of Zamorak.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak ranger",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6365",
- "aggressive": "true",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A ranger of Zamorak.",
- "melee_animation": "426",
- "range_animation": "426",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak ranger",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6366",
- "aggressive": "true",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A mage of Zamorak.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "49",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak mage",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6367",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mage of Zamorak.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "49",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak mage",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6368",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cave dweller.",
- "melee_animation": "7207",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "7205",
- "name": "Cave lizard",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
- "id": "6369",
- "aggressive": "true",
- "range_level": "47",
- "attack_level": "1"
- },
- {
- "examine": "A Z.M.I. runecrafter.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak crafter",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "19",
- "id": "6371",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "death_animation": "836",
- "name": "Zamorak crafter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6372",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "slayer_exp": "49",
- "name": "Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6374",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "6376",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "6377",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wouldn't want to be footing that bill.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6779",
- "name": "Tenacious toucan",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6378",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "I wonder how much he can lift.",
- "melee_animation": "7237",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7238",
- "name": "Giant ant worker",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "6379",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Gi-ant-ant-ant-ant...",
- "melee_animation": "7237",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7238",
- "name": "Giant ant soldier",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "6380",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "That stinger has to hurt...",
- "melee_animation": "7242",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7244",
- "name": "Giant wasp",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6381",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Polynomial - a parrot that goes without breakfast",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6777",
- "name": "Pernicious parrot",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6382",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "7242",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "7243",
- "death_animation": "7244",
- "name": "Giant wasp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "1",
- "id": "6383",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Karamjan Jungle eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6385",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stinky.",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6402",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smelly.",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6403",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6404",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6405",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6406",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6407",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6408",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6409",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6410",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6411",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6412",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6413",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6414",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6415",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6416",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6417",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6418",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6419",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6420",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6421",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6422",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6423",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6424",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6425",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6426",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6427",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6428",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6429",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6430",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6431",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6432",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6433",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6434",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6435",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6436",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6437",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6438",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6439",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6440",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6441",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6442",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6443",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6444",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6445",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6446",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6447",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6448",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6449",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6450",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6451",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6452",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6453",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6454",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6455",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6456",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6457",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6458",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6459",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6460",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6461",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6462",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6463",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6464",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6465",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6466",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6467",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Snothead",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "14",
- "id": "6469",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "14"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Snailfeet",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "13",
- "id": "6470",
- "aggressive": "true",
- "range_level": "18",
- "attack_level": "13"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "22",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Mosschin",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "16",
- "id": "6471",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "16"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "26",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Redeyes",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "19",
- "id": "6472",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "26",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Strongbones",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "19",
- "id": "6473",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "Priest of the Ekeleshuun tribe.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6482",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He is expounding the word of the Big High War God.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Preacher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6488",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6490",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6491",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6492",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6493",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6494",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6495",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very welcoming.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6496",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very welcoming.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6497",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing blue armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6498",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing orange armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6499",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing black armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6500",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing white armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6501",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing purple armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6502",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing yellow armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6503",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very noble spider and attendant to the Queen.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 2",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The highest ranking of the Spider Queen's servants.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 3",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6508",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head of the Spider Queen's army.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 4",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6509",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Trying hard to hide his identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jury",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6510",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sir Amik's loyal squire.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A being of ore and minerals.",
- "magic_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "range_animation": "0",
- "strength_level": "1",
- "id": "6514",
- "range_level": "1",
- "attack_level": "1",
- "defence_animation": "0"
- },
- {
- "examine": "A monkey on a mission.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6516",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works for Doric & Son.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6518",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Gives an introduction to the Grand Exchange.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grand Exchange Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The son of Ali M!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farid Morrisane (ores)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6523",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's probably seen better days.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bob Barter (herbs)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tribal man",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Relobo Blinyo (logs)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6526",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's travelled a long way.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hofuthand (armour and weapons)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6527",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Chief architect of the Spider Realm.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 5",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6536",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6543",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6544",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tapping his feet and looking very bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6558",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge war chief. ",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "7061",
- "magic_animation": "422",
- "death_animation": "7062",
- "name": "null",
- "defence_level": "250",
- "safespot": null,
- "lifepoints": "254",
- "strength_level": "251",
- "id": "6560",
- "aggressive": "true",
- "bonuses": "300,300,300,300,300,300,150,300,300,250,43,96,43,30,0",
- "range_level": "200",
- "attack_level": "250"
- },
- {
- "examine": "Her lack of body heat is unsettling.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Queen of Snow",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It looks right at home here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snow imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Snowflakes swirling in the wind.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragon snowman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6743",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate snowman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "6745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with a holly bow.",
- "name": "Snow ranger",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6747",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A snowman armed with an ice sword.",
- "name": "Snow ranger",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6748",
- "magic_level": "30",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A snowman armed with a winter staff.",
- "name": "Snow mage",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6749",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "Cut-down and dried.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6761",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "Needs moisturising.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6762",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "I bet it's parched.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6763",
- "range_level": "1",
- "attack_level": "48"
- },
{
"combat_audio": "774,775,777",
"attack_speed": "5",
@@ -168321,2403 +71515,11 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doorman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6769",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast of a beetle.",
- "slayer_task": "70",
- "melee_animation": "7596",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7595",
- "name": "Giant scarab",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "49",
- "id": "6770",
- "aggressive": "true",
- "range_level": "66",
- "attack_level": "49"
- },
- {
- "examine": "It's not quite small enough to stamp upon.",
- "melee_animation": "7657",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7656",
- "name": "Scarab larva",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "6772",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Bred to shoot you down.",
- "slayer_task": "70",
- "start_gfx": "18",
- "combat_style": "1",
- "melee_animation": "7607",
- "range_animation": "7607",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7609",
- "name": "Scabaras ranger",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "41",
- "id": "6773",
- "aggressive": "true",
- "range_level": "55",
- "projectile": "11",
- "attack_level": "41"
- },
- {
- "examine": "It might be angry...it's hard to tell.",
- "slayer_task": "70",
- "melee_animation": "7612",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7614",
- "name": "Scabaras lancer",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "6774",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Bouncy",
- "slayer_task": "70",
- "melee_animation": "7584",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust lancer",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "6777",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "He'll have someone's eye out with that.",
- "slayer_task": "70",
- "start_gfx": "18",
- "combat_style": "1",
- "melee_animation": "5451",
- "range_animation": "5451",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust ranger",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "41",
- "id": "6778",
- "aggressive": "true",
- "range_level": "55",
- "projectile": "11",
- "attack_level": "41"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Clay golem",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks a bit dirty from digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lead archaeologist Abigail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit dusty from troweling.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Assistant archaeologist Kerner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He exudes something like holiness.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "High Priest of Scabaras",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6788",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He exudes something like holiness.",
- "slayer_task": "70",
- "melee_animation": "7612",
- "range_animation": "0",
- "magic_level": "66",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7614",
- "name": "High Priest of Scabaras",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "66",
- "id": "6789",
- "range_level": "66",
- "attack_level": "66"
- },
- {
- "examine": "He exudes something like holiness.",
- "slayer_task": "70",
- "melee_animation": "7607",
- "range_animation": "7607",
- "magic_level": "66",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7609",
- "name": "High Priest of Scabaras",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "66",
- "id": "6790",
- "range_level": "66",
- "attack_level": "66"
- },
- {
- "examine": "Is it a stone? Is it a crab? No! It's Granite Crab!",
- "melee_animation": "8104",
- "range_animation": "8104",
- "attack_speed": "3",
- "magic_level": "13",
- "respawn_delay": "50",
- "defence_animation": "8105",
- "magic_animation": "8104",
- "death_animation": "8106",
- "name": "Granite crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "39",
- "strength_level": "17",
- "id": "6796",
- "bonuses": "16,9,5,12,4,11,57,53,61,12,45,22,0,0,0",
- "range_level": "16",
- "attack_level": "18"
- },
- {
- "examine": "Is it a stone? Is it a crab? No! It's Granite Crab!",
- "melee_animation": "8104",
- "range_animation": "8104",
- "attack_speed": "3",
- "magic_level": "13",
- "respawn_delay": "50",
- "defence_animation": "8105",
- "weakness": "10",
- "magic_animation": "8104",
- "death_animation": "8106",
- "name": "Granite crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "39",
- "strength_level": "17",
- "id": "6797",
- "bonuses": "16,9,5,12,4,11,57,53,61,12,45,22,0,0,0",
- "range_level": "16",
- "attack_level": "18"
- },
- {
- "death_animation": "8065",
- "name": "Praying mantis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8064",
- "strength_level": "1",
- "id": "6798",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8066"
- },
- {
- "examine": "Wax on",
- "melee_animation": "8069",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8065",
- "name": "Praying mantis",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "107",
- "strength_level": "60",
- "id": "6799",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7854",
- "name": "Giant ent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7853",
- "strength_level": "1",
- "id": "6800",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7852"
- },
- {
- "examine": "He ent such a bad guy.",
- "melee_animation": "7853",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7854",
- "name": "Giant ent",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "111",
- "strength_level": "60",
- "id": "6801",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "8153",
- "name": "Spirit cobra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8152",
- "strength_level": "1",
- "id": "6802",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8154"
- },
- {
- "examine": "Serpentine.",
- "melee_animation": "8152",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8153",
- "name": "Spirit cobra",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "55",
- "id": "6803",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7780",
- "name": "Spirit dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7786",
- "strength_level": "1",
- "id": "6804",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7785"
- },
- {
- "examine": "Face the thing that should not be!",
- "melee_animation": "7786",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7780",
- "name": "Spirit dagannoth",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "115",
- "strength_level": "65",
- "id": "6805",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "combat_style": "2",
- "melee_animation": "7970",
- "respawn_delay": "0",
- "defence_animation": "7967",
- "death_animation": "7979",
- "name": "Karamthulhu overlord",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Kneel before squid!",
- "combat_style": "2",
- "melee_animation": "7963",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7964",
- "name": "Karamthulhu overlord",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "50",
- "id": "6810",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "combat_style": "1",
- "melee_animation": "7935",
- "respawn_delay": "0",
- "defence_animation": "7936",
- "death_animation": "7937",
- "name": "Hydra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7935",
- "respawn_delay": "0",
- "defence_animation": "7936",
- "death_animation": "7937",
- "name": "Hydra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "7740",
- "name": "Bunyip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "7741",
- "strength_level": "1",
- "id": "6813",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7742"
- },
- {
- "death_animation": "7740",
- "name": "Bunyip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "7741",
- "strength_level": "1",
- "id": "6814",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7742"
- },
- {
- "combat_style": "1",
- "melee_animation": "8286",
- "respawn_delay": "0",
- "defence_animation": "8287",
- "death_animation": "8285",
- "name": "War tortoise",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "348",
- "strength_level": "1",
- "id": "6815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Definitely not teenaged",
- "combat_style": "1",
- "melee_animation": "8286",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8285",
- "name": "War tortoise",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "55",
- "id": "6816",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "Fruity and bat-shaped. A winning combination!.",
- "name": "Fruit bat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6817",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "7675",
- "respawn_delay": "0",
- "defence_animation": "7670",
- "death_animation": "7671",
- "name": "Abyssal parasite",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's an extra-planar little blood hoover.",
- "combat_style": "2",
- "melee_animation": "8910",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7671",
- "name": "Abyssal parasite",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "50",
- "id": "6819",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "death_animation": "7684",
- "name": "Abyssal lurker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7680",
- "strength_level": "1",
- "id": "6820",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7681"
- },
- {
- "examine": "Lurking like only a lurker can.",
- "melee_animation": "7680",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7684",
- "name": "Abyssal lurker",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "55",
- "id": "6821",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "The pointiest horse on the planet.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "magic_level": "69",
- "defence_animation": "6375",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn stallion",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "62",
- "id": "6822",
- "bonuses": "48,59,43,52,104,52,116,123,134,46,127,4,0,0,0",
- "range_level": "72",
- "attack_level": "64"
- },
- {
- "examine": "The pointiest horse on the planet.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "magic_level": "69",
- "defence_animation": "6375",
- "weakness": "10",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn stallion",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "62",
- "id": "6823",
- "bonuses": "48,59,43,52,104,52,116,123,134,46,127,4,0,0,0",
- "range_level": "72",
- "attack_level": "64"
- },
- {
- "examine": "Southern fried please!",
- "combat_style": "2",
- "melee_animation": "7810",
- "range_animation": "7810",
- "attack_speed": "5",
- "magic_level": "23",
- "respawn_delay": "50",
- "defence_animation": "5388",
- "magic_animation": "7810",
- "death_animation": "5389",
- "name": "Dreadfowl",
- "defence_level": "22",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "15",
- "id": "6825",
- "bonuses": "16,15,29,12,39,13,41,35,29,39,47,2,2,2,7",
- "range_level": "16",
- "projectile": "1318",
- "attack_level": "17"
- },
- {
- "examine": "Southern fried please!",
- "combat_style": "2",
- "melee_animation": "7810",
- "range_animation": "7810",
- "attack_speed": "5",
- "magic_level": "23",
- "respawn_delay": "50",
- "defence_animation": "5388",
- "weakness": "10",
- "magic_animation": "7810",
- "death_animation": "5389",
- "name": "Dreadfowl",
- "defence_level": "22",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "15",
- "id": "6826",
- "bonuses": "16,15,29,12,39,13,41,35,29,39,47,2,2,2,7",
- "range_level": "16",
- "projectile": "1318",
- "attack_level": "17"
- },
- {
- "examine": "It's mean and green.",
- "melee_animation": "8208",
- "respawn_delay": "0",
- "defence_animation": "8205",
- "death_animation": "8209",
- "name": "Stranger plant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's mean and green!",
- "melee_animation": "8208",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8209",
- "name": "Stranger plant",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "55",
- "id": "6828",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7797",
- "name": "Desert wyrm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "47",
- "melee_animation": "7795",
- "strength_level": "1",
- "id": "6831",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7796"
- },
- {
- "examine": "Surprisingly slime-free.",
- "combat_style": "1",
- "melee_animation": "7795",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7797",
- "name": "Desert wyrm",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "6832",
- "range_level": "18",
- "attack_level": "18"
- },
- {
- "examine": "If you think he's evil",
- "melee_animation": "8248",
- "range_animation": "0",
- "magic_level": "42",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8250",
- "name": "Evil turnip",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "6834",
- "range_level": "42",
- "attack_level": "42"
- },
- {
- "death_animation": "8276",
- "name": "Vampire bat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "melee_animation": "8275",
- "strength_level": "1",
- "id": "6835",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8274"
- },
- {
- "examine": "It vants to suck my blood!",
- "melee_animation": "8275",
- "range_animation": "0",
- "magic_level": "31",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8276",
- "name": "Vampire bat",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "6836",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "melee_animation": "6254",
- "combat_audio": "3611,3612,3610",
- "respawn_delay": "0",
- "defence_animation": "6255",
- "death_animation": "6256",
- "name": "Spirit scorpion",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
- "id": "6837",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Salt and vinegaroon.",
- "melee_animation": "6254",
- "range_animation": "0",
- "combat_audio": "3611,3612,3610",
- "magic_level": "19",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6256",
- "name": "Spirit scorpion",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "19",
- "id": "6838",
- "range_level": "19",
- "attack_level": "19"
- },
- {
- "examine": "Crikey! Look at the size of those teeth!",
- "melee_animation": "4925",
- "combat_audio": "498,500,499",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "4928",
- "death_animation": "4929",
- "name": "Arctic bear",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "6839",
- "bonuses": "90,50,50,60,90,80,50,30,40,100,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Crikey! Look at the size of those teeth!",
- "melee_animation": "4925",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "4929",
- "name": "Arctic bear",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "101",
- "strength_level": "60",
- "id": "6840",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Would scare anyone off their tuffet.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "magic_level": "15",
- "respawn_delay": "50",
- "defence_animation": "5328",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Spirit spider",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "16",
- "id": "6841",
- "bonuses": "15,16,11,14,34,12,24,36,46,16,37,0,0,0,0",
- "range_level": "12",
- "attack_level": "17"
- },
- {
- "examine": "Would scare anyone off their tuffet.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "magic_level": "15",
- "respawn_delay": "50",
- "defence_animation": "5328",
- "weakness": "10",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Spirit spider",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "16",
- "id": "6842",
- "bonuses": "15,16,11,14,34,12,24,36,46,16,37,0,0,0,0",
- "range_level": "12",
- "attack_level": "17"
- },
- {
- "death_animation": "7656",
- "name": "Bloated leech",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7657",
- "strength_level": "1",
- "id": "6843",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7655"
- },
- {
- "examine": "It's like a little suction pump with eyes.",
- "melee_animation": "7657",
- "range_animation": "0",
- "magic_level": "49",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7656",
- "name": "Bloated leech",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "49",
- "id": "6844",
- "range_level": "49",
- "attack_level": "49"
- },
- {
- "death_animation": "7925",
- "name": "Honey badger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7928",
- "strength_level": "1",
- "id": "6845",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7927"
- },
- {
- "examine": "Violent little so-and-so.",
- "melee_animation": "7928",
- "range_animation": "0",
- "magic_level": "32",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7925",
- "name": "Honey badger",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "6846",
- "range_level": "32",
- "attack_level": "32"
- },
- {
- "examine": "The big cheese.",
- "combat_audio": "703,705,704",
- "magic_level": "27",
- "respawn_delay": "50",
- "name": "Albino rat",
- "defence_level": "32",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "28",
- "id": "6847",
- "bonuses": "64,42,40,57,64,50,76,82,72,24,75,5,15,5,5",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "The big cheese.",
- "combat_audio": "703,705,704",
- "magic_level": "27",
- "respawn_delay": "50",
- "weakness": "10",
- "name": "Albino rat",
- "defence_level": "32",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "28",
- "id": "6848",
- "bonuses": "64,42,40,57,64,50,76,82,72,24,75,5,15,5,5",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "Puts the 'crust' in 'crustacean'.",
- "melee_animation": "8112",
- "respawn_delay": "0",
- "defence_animation": "8114",
- "death_animation": "8113",
- "name": "Granite lobster",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "6849",
- "bonuses": "93,90,65,90,30,40,50,50,60,40,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Puts the 'crust' in 'crustacean'.",
- "melee_animation": "8112",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8113",
- "name": "Granite lobster",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "60",
- "id": "6850",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "31",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Bronze minotaur",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "6853",
- "bonuses": "15,20,10,15,10,5,35,0,0,0,0,0,0,0,0",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "15",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Bronze minotaur",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "15",
- "id": "6854",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "6855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "25",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "25",
- "id": "6856",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "He's just a big bully!",
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Steel minotaur",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "30",
- "id": "6857",
- "bonuses": "40,30,30,30,30,50,30,60,60,60,20,80,40,20,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "35",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Steel minotaur",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "35",
- "id": "6858",
- "range_level": "35",
- "attack_level": "35"
- },
- {
- "examine": "He's just a big bully",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "40",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "40",
- "id": "6859",
- "bonuses": "56,35,30,30,30,40,10,12,30,40,30,35,40,0,0",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "45",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "45",
- "id": "6860",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "1",
- "id": "6861",
- "bonuses": "40,50,40,45,35,20,50,36,30,40,15,18,30,10,0",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "55",
- "id": "6862",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6863",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "slayer_exp": "0",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6864",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "death_animation": "7818",
- "name": "Smoke devil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7816",
- "strength_level": "1",
- "id": "6865",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7817"
- },
- {
- "examine": "Well",
- "melee_animation": "7816",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7818",
- "name": "Smoke devil",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "55",
- "id": "6866",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7897",
- "name": "Bull ant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7896",
- "strength_level": "1",
- "id": "6867",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7900"
- },
- {
- "examine": "Putting all three of its best feet forward.",
- "melee_animation": "7896",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7897",
- "name": "Bull ant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "6868",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "It's just a harmless wee rabbit. ",
- "combat_style": "2",
- "melee_animation": "8304",
- "range_animation": "8304",
- "attack_speed": "5",
- "magic_level": "95",
- "defence_animation": "8306",
- "magic_animation": "8304",
- "death_animation": "8305",
- "name": "Wolpertinger",
- "defence_level": "95",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "619",
- "strength_level": "1",
- "id": "6869",
- "bonuses": "59,50,50,50,50,50,50,50,50,50,50,50,50,68,0",
- "range_level": "95",
- "attack_level": "1"
- },
- {
- "examine": "It's just a harmless wee rabbit. ",
- "combat_style": "2",
- "melee_animation": "8304",
- "range_animation": "8304",
- "attack_speed": "5",
- "magic_level": "95",
- "defence_animation": "8306",
- "magic_animation": "8304",
- "death_animation": "8305",
- "name": "Wolpertinger",
- "defence_level": "95",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "619",
- "strength_level": "1",
- "id": "6870",
- "bonuses": "59,50,50,50,50,50,50,50,50,50,50,50,50,68,0",
- "range_level": "95",
- "attack_level": "1"
- },
- {
- "melee_animation": "853",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "851",
- "death_animation": "852",
- "name": "Compost mound",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "96",
- "strength_level": "1",
- "id": "6871",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I suppose it could smell worse",
- "melee_animation": "7769",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "28",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7770",
- "name": "Compost mound",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "6872",
- "range_level": "28",
- "attack_level": "28"
- },
- {
- "examine": "Bulk haulage never smelled so bad.",
- "melee_animation": "5782",
- "range_animation": "5782",
- "attack_speed": "5",
- "magic_level": "91",
- "defence_animation": "5783",
- "magic_animation": "5782",
- "death_animation": "5784",
- "name": "Pack yak",
- "defence_level": "121",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "710",
- "strength_level": "104",
- "id": "6873",
- "bonuses": "64,67,5,72,128,49,264,234,164,49,132,40,35,40,40",
- "range_level": "86",
- "attack_level": "112"
- },
- {
- "examine": "Bulk haulage never smelled so bad.",
- "melee_animation": "5782",
- "range_animation": "5782",
- "attack_speed": "5",
- "magic_level": "91",
- "defence_animation": "5783",
- "weakness": "10",
- "magic_animation": "5782",
- "death_animation": "5784",
- "name": "Pack yak",
- "defence_level": "121",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "710",
- "strength_level": "104",
- "id": "6874",
- "bonuses": "64,67,5,72,128,49,264,234,164,49,132,40,35,40,40",
- "range_level": "86",
- "attack_level": "112"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit cockatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6875",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit cockatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6876",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit guthatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6877",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit guthatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6878",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "combat_audio": "703,705,704",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit saratrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6879",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit saratrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6880",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit zamatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6881",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit zamatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6882",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit pengatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6883",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit pengatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6884",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit coraxatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6885",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit coraxatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6886",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit vulatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6887",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit vulatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6888",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "examine": "The only creature with a mouth big enough to hold a cannonball.",
- "melee_animation": "7260",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "7257",
- "death_animation": "7256",
- "name": "Barker toad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "55",
- "id": "6889",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "The only creature with a mouth big enough to fit a cannon ball into.",
- "melee_animation": "7260",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7256",
- "name": "Barker toad",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "55",
- "id": "6890",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He looks like the type of guy who would keep penguins.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penguin keeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6891",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The lady of the pet shop.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pet shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6892",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The man of the pet shop.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pet shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6893",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6900",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6906",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's so adorably tiny!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby gecko",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tiny nut-thief.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby squirrel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6921",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "6942",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8304",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "8306",
- "death_animation": "8305",
- "name": "Bulldog puppy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "651",
- "strength_level": "1",
- "id": "6969",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "8570",
- "name": "Spirit jelly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8569",
- "strength_level": "1",
- "id": "6992",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8571"
- },
- {
- "examine": "On Runescape",
- "melee_animation": "8569",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8570",
- "name": "Spirit jelly",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "50",
- "id": "6993",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "combat_style": "1",
- "melee_animation": "8519",
- "respawn_delay": "0",
- "defence_animation": "8518",
- "death_animation": "8517",
- "name": "Spirit kalphite",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "6994",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hail to the Queen",
- "combat_style": "1",
- "melee_animation": "6223",
- "range_animation": "0",
- "magic_level": "25",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6228",
- "name": "Spirit kalphite",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "6995",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "A stripy little baby raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Must be the pack leader.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "slayer_exp": "74",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Big wolf",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "60",
- "id": "7005",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "An active spiny creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grenwall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hiding spiny creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grenwall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a strange little creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pawya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dug by a Pawya (Not actual exam).",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Earth Mound",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a strange little creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pawya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A most unlikely creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Platypus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7021",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A most unlikely creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby platypus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7024",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ogre snack with wings.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wimpy bird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7031",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shy creature with a toxic bite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Diseased kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7039",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fit to wear the uniform?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogress banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7049",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She walks as if she owns the place.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chief Tess",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fearsome adversary with no sense of humour.",
- "slayer_task": "64",
- "melee_animation": "8636",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8640",
- "name": "Ogress champion",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "7078",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
- "melee_animation": "8636",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8640",
- "name": "Ogress",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "7081",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
- "melee_animation": "8637",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8641",
- "name": "Ogress",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "7082",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "145",
- "strength_level": "51",
- "id": "7084",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "51"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "54",
- "id": "7085",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "57",
- "safespot": null,
- "lifepoints": "162",
- "strength_level": "57",
- "id": "7086",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "57"
- },
- {
- "examine": "He seems to be enjoying his time in the bar.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "1",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Thaki the delivery dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7115",
- "bonuses": "5,5,0,0,0,0,2,3,3,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tyras guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7120",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A hungry-looking rabbit.",
"melee_animation": "0",
"range_animation": "0",
+ "respawn_delay": "50",
"defence_animation": "0",
"magic_animation": "0",
"death_animation": "0",
@@ -170726,22873 +71528,11 @@
"safespot": null,
"lifepoints": "10",
"strength_level": "1",
- "id": "7125",
+ "id": "7127",
"aggressive": "true",
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7128",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7129",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7130",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "That's one big Ork... ",
- "melee_animation": "8754",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "8755",
- "death_animation": "8756",
- "name": "Bork",
- "defence_level": "80",
- "lifepoints": "300",
- "strength_level": "90",
- "id": "7133",
- "bonuses": "200,120,100,300,300,120,400,500,300,200,300,400,200,90,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A spiny horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "100",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "90",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "It's an NPC.",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "90",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Sharimika",
- "id": "2505"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Sharimika",
- "id": "2506"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Layleen",
- "id": "2511"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Layleen",
- "id": "2512"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Karaday",
- "id": "2514"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Karaday",
- "id": "2515"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Safta Doc",
- "id": "2517"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Safta Doc",
- "id": "2518"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Gabooty",
- "id": "2520"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Gabooty",
- "id": "2521"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Fanellaman",
- "id": "2523"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Fanellaman",
- "id": "2524"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Jagbakoba",
- "id": "2526"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Jagbakoba",
- "id": "2527"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Murcaily",
- "id": "2529"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Murcaily",
- "id": "2530"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Rionasta",
- "id": "2532"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Rionasta",
- "id": "2533"
- },
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2685",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2686",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2687",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2688",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Skeleton",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "774,775,777",
- "strength_level": "1",
- "id": "2715",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Skeleton mage",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "774,775,777",
- "strength_level": "1",
- "id": "2717",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
- {
- "agg_radius": "64",
- "melee_animation": "8754",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "8755",
- "death_animation": "8756",
- "name": "Bork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "300",
- "strength_level": "1",
- "id": "7134",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aww, aren't they the cutest li - Argh!",
- "melee_animation": "8760",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "8761",
- "name": "Ork legion",
- "defence_level": "57",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "68",
- "id": "7135",
- "aggressive": "true",
- "bonuses": "5,10,3,5,3,5,5,5,10,0,0,0,0,0,0",
- "range_level": "68",
- "attack_level": "68"
- },
- {
- "examine": "A powerful wizard.",
- "combat_style": "2",
- "attack_speed": "25",
- "magic_level": "90",
- "spell_id": "11",
- "name": "Dagon'hai Elite",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "7137",
- "aggressive": "true",
- "bonuses": "220,190,140,120,120,130,90,120,120,200,100,154,150,93,190",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7138",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7139",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7140",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "He seems to have gone mad.",
- "melee_animation": "426",
- "range_animation": "426",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "null",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "25",
- "id": "7141",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "He thumps people who cheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7142",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7144",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinchette jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7145",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinchette jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7148",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7149",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7150",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7152",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7156",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7157",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A household pest.",
- "melee_animation": "8785",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8788",
- "name": "Cockroach drone",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "3",
- "id": "7158",
- "range_level": "1",
- "attack_level": "3"
- },
- {
- "examine": "Eurgh! A big bug.",
- "melee_animation": "8787",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8790",
- "name": "Cockroach worker",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "7159",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Euww! A giant bug.",
- "melee_animation": "8786",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8789",
- "name": "Cockroach soldier",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "26",
- "id": "7160",
- "bonuses": "10,10,10,5,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "7161",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "7162",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7202",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eaten a lot of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cockroach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7206",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's searching for crumbs of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eaten a lot of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7209",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7210",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7212",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7214",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7218",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7220",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7222",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7224",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7226",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7229",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7230",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7231",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7232",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7233",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7234",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7235",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7236",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A stripy little baby raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7275",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's so adorably tiny!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby gecko",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7285",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "8222",
- "magic_level": "70",
- "respawn_delay": "0",
- "defence_animation": "8224",
- "death_animation": "8226",
- "name": "Swamp titan",
- "defence_level": "78",
- "safespot": null,
- "lifepoints": "556",
- "strength_level": "1",
- "id": "7329",
- "bonuses": "60,60,60,60,50,50,100,200,200,28,100,100,70,70,70",
- "range_level": "70",
- "attack_level": "1"
- },
- {
- "examine": "Do you hear duelling banjos?",
- "combat_style": "1",
- "melee_animation": "8222",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8226",
- "name": "Swamp titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "117",
- "strength_level": "60",
- "id": "7330",
- "bonuses": "60,60,60,60,50,50,100,200,200,28,100,100,70,70,70",
- "range_level": "65",
- "attack_level": "60"
- },
- {
- "examine": "It buzzes and bites. Nasty.",
- "melee_animation": "8032",
- "range_animation": "8032",
- "magic_level": "21",
- "respawn_delay": "50",
- "defence_animation": "8034",
- "magic_animation": "8032",
- "death_animation": "8033",
- "name": "Spirit mosquito",
- "defence_level": "25",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "24",
- "id": "7331",
- "bonuses": "45,49,42,39,47,46,29,43,51,16,53,10,0,0,0",
- "range_level": "25",
- "attack_level": "28"
- },
- {
- "examine": "It buzzes and bites. Nasty.",
- "melee_animation": "8032",
- "range_animation": "8032",
- "magic_level": "21",
- "respawn_delay": "50",
- "defence_animation": "8034",
- "weakness": "10",
- "magic_animation": "8032",
- "death_animation": "8033",
- "name": "Spirit mosquito",
- "defence_level": "25",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "24",
- "id": "7332",
- "bonuses": "45,49,42,39,47,46,29,43,51,16,53,10,0,0,0",
- "range_level": "25",
- "attack_level": "28"
- },
- {
- "examine": "It spins.",
- "melee_animation": "8172",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8176",
- "name": "Void spinner",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7334",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "death_animation": "7864",
- "name": "Forge regent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7863",
- "strength_level": "1",
- "id": "7335",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7865"
- },
- {
- "examine": "This one will burn right through the net!",
- "melee_animation": "7863",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7864",
- "name": "Forge regent",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "60",
- "id": "7336",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "5230",
- "name": "Spirit larupia",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "5228",
- "strength_level": "1",
- "id": "7337",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5227"
- },
- {
- "examine": "Fast cat is fast.",
- "melee_animation": "5228",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit larupia",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7338",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It'll kill your enemies, and makes a great cup of tea.",
- "melee_animation": "7879",
- "range_animation": "422",
- "magic_level": "70",
- "respawn_delay": "50",
- "defence_animation": "7878",
- "weakness": "0",
- "magic_animation": "422",
- "death_animation": "7880",
- "name": "Geyser titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "620",
- "strength_level": "70",
- "id": "7339",
- "bonuses": "115,115,115,110,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "It'll kill your enemies, and makes a great cup of tea.",
- "melee_animation": "7879",
- "range_animation": "422",
- "magic_level": "70",
- "respawn_delay": "50",
- "defence_animation": "7878",
- "weakness": "0",
- "slayer_exp": "0",
- "magic_animation": "422",
- "death_animation": "7880",
- "name": "Geyser titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "620",
- "strength_level": "70",
- "id": "7340",
- "bonuses": "115,115,115,110,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "combat_style": "1",
- "melee_animation": "7980",
- "respawn_delay": "0",
- "defence_animation": "7981",
- "death_animation": "7692",
- "name": "Lava titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "528",
- "strength_level": "1",
- "id": "7341",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The King of the Titans!",
- "melee_animation": "8183",
- "range_animation": "8183",
- "magic_level": "70",
- "respawn_delay": "15",
- "defence_animation": "8185",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "8183",
- "death_animation": "8184",
- "name": "Steel titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "750",
- "strength_level": "70",
- "id": "7343",
- "bonuses": "105,105,105,100,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "The King of the Titans!",
- "melee_animation": "8183",
- "range_animation": "8183",
- "magic_level": "70",
- "respawn_delay": "15",
- "defence_animation": "8185",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "8183",
- "death_animation": "8184",
- "name": "Steel titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "750",
- "strength_level": "70",
- "id": "7344",
- "bonuses": "105,105,105,100,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Four fists can make quite an impression IN someone...",
- "melee_animation": "8050",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "8051",
- "death_animation": "8052",
- "name": "Obsidian golem",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "7345",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Four fists can make quite an impression IN someone...",
- "melee_animation": "8050",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8052",
- "name": "Obsidian golem",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "104",
- "strength_level": "60",
- "id": "7346",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "5990",
- "name": "Talon beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "5989",
- "strength_level": "1",
- "id": "7347",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5988"
- },
- {
- "examine": "If a normal black cat is bad luck",
- "melee_animation": "5989",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5990",
- "name": "Talon beast",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "60",
- "id": "7348",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7979",
- "name": "Abyssal titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "667",
- "melee_animation": "7693",
- "strength_level": "1",
- "id": "7349",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7691"
- },
- {
- "examine": "Big",
- "melee_animation": "7693",
- "range_animation": "0",
- "magic_level": "70",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7692",
- "name": "Abyssal titan",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "125",
- "strength_level": "70",
- "id": "7350",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "It torches.",
- "melee_animation": "8235",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8236",
- "name": "Void torcher",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7352",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "death_animation": "7758",
- "name": "Giant chinchompa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "7755",
- "strength_level": "1",
- "id": "7353",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7753"
- },
- {
- "examine": "Looks a little...volatile.",
- "melee_animation": "7755",
- "range_animation": "0",
- "magic_level": "29",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7758",
- "name": "Giant chinchompa",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "41",
- "strength_level": "29",
- "id": "7354",
- "range_level": "29",
- "attack_level": "29"
- },
- {
- "examine": "Scorching!",
- "melee_animation": "7834",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7833",
- "name": "Fire titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7355",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Scorching!",
- "melee_animation": "7834",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7833",
- "name": "Fire titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7356",
- "bonuses": "64,45,76,82,208,84,221,231,179,89,113,23,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Gathers rolling stones to bash people with.",
- "melee_animation": "7844",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7843",
- "name": "Moss titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7357",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Gathers rolling stones to bash people with.",
- "melee_animation": "7844",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7843",
- "name": "Moss titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7358",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Frosty the highly violent snowman.",
- "melee_animation": "7845",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7846",
- "name": "Ice titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7359",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Frosty the highly violent snowman.",
- "melee_animation": "7845",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7846",
- "name": "Ice titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7360",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "combat_style": "1",
- "melee_animation": "8257",
- "attack_speed": "3",
- "respawn_delay": "0",
- "defence_animation": "8256",
- "death_animation": "8258",
- "name": "Spirit Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "7361",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This bat burned down the belfry.",
- "combat_style": "1",
- "melee_animation": "8257",
- "range_animation": "0",
- "attack_speed": "3",
- "magic_level": "22",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8258",
- "name": "Spirit Tz-Kih",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "7362",
- "range_level": "22",
- "attack_level": "22"
- },
- {
- "start_gfx": "1367",
- "melee_animation": "5228",
- "respawn_delay": "0",
- "defence_animation": "5227",
- "death_animation": "5230",
- "name": "Spirit graahk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7363",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Those spikes are pretty big!",
- "start_gfx": "1367",
- "melee_animation": "5229",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit graahk",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7364",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "start_gfx": "1365",
- "melee_animation": "5228",
- "respawn_delay": "0",
- "defence_animation": "5227",
- "death_animation": "5230",
- "name": "Spirit kyatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7365",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Those teeth are pretty big!",
- "start_gfx": "1365",
- "melee_animation": "5228",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit kyatt",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7366",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It shifts.",
- "melee_animation": "8131",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8133",
- "name": "Void shifter",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7368",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "examine": "It ravages.",
- "melee_animation": "8086",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8087",
- "name": "Void ravager",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7371",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "examine": "It's like a little stomach on wings.",
- "melee_animation": "7994",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7996",
- "name": "Ravenous locust",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "60",
- "id": "7373",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7996",
- "name": "Ravenous locust",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7994",
- "strength_level": "1",
- "id": "7374",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7995"
- },
- {
- "examine": "He is an iron man!",
- "combat_style": "1",
- "melee_animation": "7946",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "7948",
- "weakness": "10",
- "death_animation": "7947",
- "name": "Iron titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "694",
- "strength_level": "65",
- "id": "7375",
- "bonuses": "120,130,100,109,80,120,102,90,103,80,100,108,105,66,90",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He is an iron man!",
- "combat_style": "1",
- "melee_animation": "7946",
- "combat_audio": "0,0,0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "7948",
- "weakness": "10",
- "slayer_exp": "0",
- "death_animation": "7947",
- "name": "Iron titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "694",
- "strength_level": "65",
- "id": "7376",
- "bonuses": "120,130,100,109,80,120,102,90,103,80,100,108,105,66,90",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "Where did I put the marshmallows?",
- "melee_animation": "8080",
- "range_animation": "0",
- "magic_level": "46",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Pyrelord",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "7378",
- "range_level": "46",
- "attack_level": "46"
- },
- {
- "melee_animation": "8965",
- "respawn_delay": "60",
- "defence_animation": "8966",
- "death_animation": "8967",
- "name": "Elfinlocks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "7379",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "8965",
- "respawn_delay": "60",
- "defence_animation": "8966",
- "death_animation": "8967",
- "name": "Missi Sissi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "7380",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8955",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8957",
- "death_animation": "8956",
- "name": "Missi Sissi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "7381",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8955",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8957",
- "death_animation": "8956",
- "name": "Uberlass",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "7382",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The vengeful spirit of one who died within Daemonheim.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "name": "Elisabeta",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "25",
- "id": "7398",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "7417",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An impling manager: what a terrifying thought!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wigglewoo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7425",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This worker looks after the incubator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Orangeowns",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7426",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "386",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Eudav",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "7443",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "name": "Fairtrade",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "7459",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Teapotspout",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "7460",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7461",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's bubbling, gross.",
- "melee_animation": "9130",
- "range_animation": "9130",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9132",
- "magic_animation": "9130",
- "death_animation": "9131",
- "name": "Hotwater",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "99",
- "id": "7462",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,45,20,0",
- "range_level": "1",
- "attack_level": "99"
- },
- {
- "examine": "It's bubbling, gross.",
- "melee_animation": "9130",
- "range_animation": "9130",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9132",
- "magic_animation": "9130",
- "death_animation": "9131",
- "name": "Hotwater",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "99",
- "id": "7463",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,45,20,0",
- "range_level": "1",
- "attack_level": "99"
- },
- {
- "examine": "His usual sunny disposition is not in evidence.",
- "range_animation": "0",
- "magic_level": "30",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Lady Seenit",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7475",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "name": "Berrybree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7476",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Stuffstuffer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7477",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Learking",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "7479",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Rachael",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "7480",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "You clearly can't live on treasure alone.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Cool Mom227",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7481",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A testament to the effect of greed.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Purepker895",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7482",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He wanted loot",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Pkmaster0036",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7483",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Eternally looking for that big payday.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Cow1337killr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7484",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An anatomist's dream.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "1337sp34kr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7487",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A hand seems to be gripping his spine through his chest. Ouch.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "1337sp34kr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7488",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A desert dweller taken to banditry.",
- "melee_animation": "9705",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sarah Domin",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7492",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Calls himself an archaeologist.",
- "melee_animation": "9715",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sarah Domin",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7493",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He hasn't found much of use",
- "melee_animation": "9705",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sue Spammers",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7494",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An amateur historian with added greed.",
- "melee_animation": "9715",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Killerwail",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7495",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A rocky horror.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sabre-toothed kyatt",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
- "id": "7497",
- "range_level": "1",
- "attack_level": "27"
- },
- {
- "examine": "This dung beetle has mistaken you for its staple diet.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Cerulean twitch",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7500",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "It's looking unwell - probably something it ate.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Abone",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Once a valuable contributor to the ecosystem.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Mythmaster",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "This is what happens if you play with your food.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Donkey Wrong",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He likes a good fight",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Creapantic",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7504",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes a good fight",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frondlike",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7505",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Happy Spud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7506",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Blood-thirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nobodyhere",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bluehairlass",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7508",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ilikekebabs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7510",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trunka Lex",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7511",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Val Razz",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Abstractclas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7513",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodthirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bigbluebox",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodthirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Funorbrox",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7515",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Morrisnorris",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7518",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He demands to have some booze.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ketchuppl0x",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7520",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Redheadmonky",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "7528",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "0",
- "examine": "It's an NPC.",
- "name": "3sacrowd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "90",
- "magic_level": "70",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7551",
- "bonuses": "200,200,200,100,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7552",
- "bonuses": "200,200,200,200,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "5",
- "magic_level": "90",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7553",
- "bonuses": "200,200,100,200,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "90",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7554",
- "bonuses": "100,100,200,200,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7555",
- "bonuses": "100,100,100,50,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "15",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7556",
- "bonuses": "100,100,100,100,25,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7557",
- "bonuses": "100,100,50,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7558",
- "bonuses": "50,50,100,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lostme",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7560",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chiercat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7561",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skydischarge",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7562",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agplus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7563",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Distantthin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7564",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Allmarshes",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7565",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Explosive67",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7566",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alpha1beta",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7569",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Solltalk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7570",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hm Val",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like the type of guy who would mind monkeys.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizzydumped",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7572",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like the type of guy who would mind monkeys.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Oddskater",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7573",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Poledragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "7580",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes inflicting pain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al Truism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Don of penguins.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ohhhhdude",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7583",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has unbelievable strength!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7605",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7606",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7607",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7608",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7609",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7614",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7615",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7616",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7617",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7618",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7619",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7620",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7621",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7626",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7631",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7632",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7634",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7635",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Ew it's still alive.",
- "slayer_task": "21",
- "melee_animation": "9125",
- "range_animation": "9125",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9127",
- "weakness": "9",
- "magic_animation": "9125",
- "death_animation": "9126",
- "name": "Skeletal hand",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "85",
- "id": "7640",
- "aggressive": "true",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "range_level": "1",
- "attack_level": "85"
- },
- {
- "examine": "Ew it's still alive.",
- "slayer_task": "21",
- "melee_animation": "9125",
- "range_animation": "9125",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9127",
- "weakness": "9",
- "magic_animation": "9125",
- "death_animation": "9126",
- "name": "Zombie hand",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "75",
- "id": "7641",
- "aggressive": "true",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
- "melee_animation": "9102",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "206",
- "magic_animation": "0",
- "death_animation": "9131",
- "name": "Mutated bloodveld",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "56",
- "id": "7642",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "56"
- },
- {
- "examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
- "melee_animation": "9102",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "206",
- "magic_animation": "0",
- "death_animation": "9131",
- "name": "Mutated bloodveld",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "116",
- "strength_level": "58",
- "id": "7643",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7644",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7645",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7646",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7647",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7648",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7649",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7650",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7651",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7654",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7655",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7656",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7657",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7658",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7659",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7660",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7661",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7682",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7683",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7691",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7692",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7693",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7694",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7695",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7696",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7697",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7698",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7699",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7700",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7701",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7702",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7703",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7704",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7705",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7706",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a big ugly dog.",
- "slayer_task": "27",
- "melee_animation": "6565",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6564",
- "name": "Temple guardian",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "7711",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "melee_animation": "8080",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8084",
- "death_animation": "8078",
- "name": "Baby icefiend",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7713",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A small ice demon.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7714",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7715",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "null",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7716",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "7727",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "melee_animation": "8080",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8084",
- "death_animation": "8078",
- "name": "Baby icefiend",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7736",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it full of rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jiggling crate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A warrior who has been long forgotten.",
- "range_animation": "0",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Three little kittens",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "30",
- "id": "7741",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "30"
- },
- {
- "examine": "It looks upset.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "TzHaar-Xil-Tog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A TzHaar librarian.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "TzHaar-Mej-Lor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7752",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A TzHaar-Hur stamping stone tablets.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Library assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7756",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7767",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7768",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7769",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A monster made of magma.",
- "combat_style": "1",
- "melee_animation": "9337",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "9340",
- "name": "Lava monster",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "28",
- "id": "7772",
- "aggressive": "true",
- "range_level": "38",
- "attack_level": "28"
- },
- {
- "examine": "A monster like many others",
- "combat_style": "2",
- "melee_animation": "9341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "9344",
- "name": "Fire monster",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "28",
- "id": "7773",
- "aggressive": "true",
- "range_level": "38",
- "attack_level": "28"
- },
- {
- "examine": "A big, scary hand! ",
- "melee_animation": "1802",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1803",
- "slayer_exp": "105",
- "death_animation": "1804",
- "name": "Wall Beast",
- "defence_level": "38",
- "movement_radius": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "38",
- "id": "7823",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A melee training dummy",
- "melee_animation": "94",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "97",
- "name": "Melee dummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "7891",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man of his craft.",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7958",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A master of his craft.",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7959",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like a professional explorer.",
- "name": "Explorer Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7969",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sure looks grave.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8149",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "This is a rotten one.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8150",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It hasn't quite gotten around to dying.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8151",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "1179"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "450"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "451"
- },
- {
- "examine": "Tough-looking combat type.",
- "name": "Mubariz",
- "id": "957"
- },
- {
- "examine": "Looks kinda bored.",
- "name": "Fadli",
- "id": "958"
- },
- {
- "examine": "Trained to deal with all sorts of injuries.",
- "name": "A'abla",
- "id": "959"
- },
- {
- "examine": "Wow! She's made a statement with that hair!",
- "name": "Sabreen",
- "id": "960"
- },
- {
- "examine": "Has the messy job of putting players back together again.",
- "name": "Jaraah",
- "id": "962"
- },
- {
- "examine": "Battle-scarred.",
- "name": "Zahwa",
- "id": "963"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Ima",
- "id": "964"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Sabeil",
- "id": "965"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Jadid",
- "id": "966"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Dalal",
- "id": "967"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Afrah",
- "id": "968"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Jeed",
- "id": "969"
- },
- {
- "examine": "He smells funny.",
- "name": "Diango",
- "id": "970"
- },
- {
- "examine": "Shopkeeper.",
- "name": "Chadwell",
- "id": "971"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "972"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "973"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "974"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "975"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "976"
- },
- {
- "examine": "This dwarf looks intoxicated.",
- "name": "Kamen",
- "id": "996"
- },
- {
- "examine": "A dwarven maker of gauntlets.",
- "name": "Klank",
- "id": "995"
- },
- {
- "examine": "One of King Tyras's men.",
- "name": "Tyras guard",
- "id": "1206"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "1209"
- },
- {
- "examine": "One of King Lathas' messengers.",
- "name": "Kings messenger",
- "id": "1210"
- },
- {
- "examine": "Mysterious swamp lights...",
- "name": "Will o' the wisp",
- "id": "1212"
- },
- {
- "examine": "He's washing his clothes in the lake.",
- "name": "Tegid",
- "id": "1213"
- },
- {
- "examine": "A plant.",
- "name": "Thistle",
- "id": "1214"
- },
- {
- "examine": "What a colourful bunch of parrots!",
- "name": "Parrots",
- "id": "1215"
- },
- {
- "examine": "Rather dense and soppy looking.",
- "name": "Romeo",
- "id": "639"
- },
- {
- "examine": "Newspaper seller.",
- "name": "Benny",
- "id": "5925"
- },
- {
- "examine": "One of Gertrude's Sons.",
- "name": "Wilough",
- "id": "783"
- },
- {
- "examine": "An old gypsy lady.",
- "name": "Gypsy Aris",
- "id": "882"
- },
- {
- "examine": "Interesting assortment of clothes on offer...",
- "name": "Thessalia",
- "id": "548"
- },
- {
- "examine": "Sells superior staffs.",
- "name": "Zaff",
- "id": "546"
- },
- {
- "examine": "A retired vampyre hunter.",
- "name": "Dr Harlow",
- "id": "756"
- },
- {
- "examine": "I could get a beer from him.",
- "name": "Bartender",
- "id": "733"
- },
- {
- "examine": "Director of the Grand Exchange.",
- "id": "6522"
- },
- {
- "examine": "He can look after my money. Good with money.",
- "id": "6535"
- },
- {
- "examine": "She can look after my money. Good with money.",
- "id": "6532"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6530"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6528"
- },
- {
- "examine": "He can look after my money. Good with money.",
- "id": "6534"
- },
- {
- "examine": "She can look after my money. Good with money.",
- "id": "6533"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6531"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6529"
- },
- {
- "examine": "She looks very worried about something.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Caroline",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "696",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very good sailor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Holgart",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "698",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smells a bit fishy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ezekial Lovecraft",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A (semi) retired member of the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Col. O'Niall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4872",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A villager named Jeb.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jeb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4895",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little girl. She looks terrified.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Kimberly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stinky! Poor guy.",
- "name": "Yeti",
- "id": "130"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "7",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "425",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "8",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "9",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "She looks happy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Schoolgirl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "10",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not very civilised looking.",
- "name": "Barbarian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "12",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly magical.",
- "start_gfx": "2728",
- "combat_style": "2",
- "melee_animation": "2791",
- "range_animation": "711",
- "combat_audio": "511,513,512",
- "magic_level": "21",
- "respawn_delay": "12",
- "end_gfx": "2737",
- "defence_animation": "404",
- "weakness": "3",
- "slayer_exp": "0",
- "magic_animation": "711",
- "death_animation": "9055",
- "name": "Wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "1",
- "id": "13",
- "bonuses": "23,7,8,2,1,8,12,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "projectile": "2729",
- "attack_level": "1"
- },
- {
- "examine": "Not very fashion conscious.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Warrior woman",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "22",
- "id": "15",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Part of Al-Kharid's elite fighting force.",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "6",
- "defence_animation": "387",
- "weakness": "7",
- "magic_animation": "390",
- "death_animation": "836",
- "name": "Al-Kharid warrior",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "19",
- "strength_level": "15",
- "id": "18",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Shiny armour!",
- "melee_animation": "7042",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "19",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A holy warrior.",
- "melee_animation": "390",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Paladin",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "54",
- "id": "20",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "Heroic!",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Hero",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "55",
- "id": "21",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "They love the forests.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "respawn_delay": "18",
- "defence_animation": "404",
- "magic_animation": "0",
- "death_animation": "9055",
- "name": "Forester",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "13",
- "id": "22",
- "range_level": "1",
- "attack_level": "14"
- },
- {
- "examine": "A member of Ardougne's militia.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Knight of Ardougne",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "23",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "To protect and serve the populace of Ardougne.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Knight of Ardougne",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "26",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Good with arrows.",
- "start_gfx": "19",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "12",
- "defence_animation": "404",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "20",
- "id": "27",
- "range_level": "40",
- "projectile": "10",
- "attack_level": "20"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zoo keeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "28",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's a lumberjack, and he's ok.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chuck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "29",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Doesn't water down the beer too much.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "30",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "31",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the peace... kind of.",
- "melee_animation": "401",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "18",
- "id": "32",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "examine": "What a boring job he has.",
- "name": "Door man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "33",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Watches stuff. But who watches him?",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Watchman",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "31",
- "id": "34",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "examine": "The head gardener.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wyson the gardener",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "36",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bold knight famed for his travels.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigbert the Adventurer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "37",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Builds ships for a living.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shipyard worker",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "38",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Builds ships for a living.",
- "melee_animation": "401",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shipyard worker",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "39",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Let's not go skinny dipping eh?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shark",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "40",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly sheared.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "42",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "43",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "44",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "45",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "46",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "47",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A jungle version of the chicken, but more vicious.",
- "slayer_task": "7",
- "melee_animation": "5387",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5389",
- "name": "Oomlie bird",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "40",
- "id": "48",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A wood nymph.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dryad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "56",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A delicate creature from this strange realm.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "57",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "5",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "59",
- "aggressive": "false",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "defence_animation": "5328",
- "weakness": "2",
- "slayer_exp": "33",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "24",
- "id": "60",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A barely visible deadly jungle spider.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "5328",
- "weakness": "2",
- "slayer_exp": "50",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "35",
- "poison_immune": "false",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "37",
- "id": "62",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "65",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Ice spider",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "55",
- "id": "64",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,20,17,12,13,13,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A funny little man normally associated with rainbows.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "65",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "66",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "67",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a mini man!",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "3",
- "strength_level": "1",
- "id": "68",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hideous malformed elf.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Orc",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "71",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hideously deformed creature.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Troll",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "72",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dead man walking.",
- "slayer_task": "93",
- "melee_animation": "5567",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "5568",
- "slayer_exp": "22",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "9",
- "id": "73",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Dead woman walking.",
- "slayer_task": "93",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "24",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "13",
- "id": "74",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "The walking dead.",
- "slayer_task": "93",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "75",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The walking dead.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "76",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The living dead.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "4",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "22",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Summoned Zombie",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "9",
- "id": "77",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "A shadowy, barely visible flying entity from some evil place.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "slayer_exp": "80",
- "magic_animation": "0",
- "death_animation": "4917",
- "name": "Death wing",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "70",
- "id": "79",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "Oh, it's a camel.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "80",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "81",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A creature made from clay.",
- "melee_animation": "422",
- "range_animation": "422",
- "magic_level": "1",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Golem",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "85",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "defence_animation": "4934",
- "weakness": "8",
- "slayer_exp": "5",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "3",
- "id": "86",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "slayer_exp": "10",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "87",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "slayer_exp": "12",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "10",
- "id": "88",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Horse with a horn.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "32",
- "defence_animation": "6375",
- "weakness": "3",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "19",
- "strength_level": "13",
- "id": "89",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "Not man's best friend.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "combat_audio": "481,491,490",
- "attack_speed": "4",
- "slayer_exp": "69",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "55",
- "id": "95",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A vicious mountain wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "4",
- "defence_animation": "6578",
- "weakness": "9",
- "slayer_exp": "34",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "White wolf",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "16",
- "id": "96",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A vicious mountain wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "4",
- "defence_animation": "6578",
- "weakness": "7",
- "slayer_exp": "44",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "White wolf",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "97",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Bow wow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "98",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't seem pleased to see me.",
- "slayer_task": "27",
- "melee_animation": "6562",
- "range_animation": "6562",
- "attack_speed": "4",
- "respawn_delay": "15",
- "defence_animation": "6563",
- "weakness": "7",
- "slayer_exp": "49",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Guard dog",
- "defence_level": "37",
- "safespot": null,
- "lifepoints": "49",
- "strength_level": "36",
- "id": "99",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A large dim looking humanoid.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "43",
- "id": "115",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,20,0,0,0",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "slayer_task": "44",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "360",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "116",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A short angry guy.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "7",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "118",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "A mountain dwelling short angry guy.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "120",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "122",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "123",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "125",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Looks pretty otherworldly to me!",
- "slayer_task": "65",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "45",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "name": "Otherworldly being",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "126",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An inhabitant of icy regions.",
- "slayer_task": "7",
- "melee_animation": "5669",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5671",
- "name": "Penguin",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "6",
- "id": "131",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "A unicorn with a blackened heart.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "24",
- "defence_animation": "6375",
- "weakness": "3",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Black unicorn",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "10",
- "id": "133",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Aaw",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Terrorchick gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "137",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant raptor.",
- "slayer_task": "7",
- "melee_animation": "1010",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "138",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "139",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
- },
- {
- "examine": "A servant to Iban.",
- "melee_animation": "338",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "340",
- "name": "Souless",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "140",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "Must be the pack leader.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "74",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Big Wolf",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "141",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "slayer_exp": "34",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "69",
- "melee_animation": "6559",
- "combat_audio": "481,491,490",
- "strength_level": "1",
- "id": "142",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rare jungle wolf - specific to the Kharazi jungle.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "69",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Jungle Wolf",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "143",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "63"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "145",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cormorant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pelican",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "148",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These look much better in the wild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Butterfly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "153",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I love butterflies.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Butterfly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "154",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Small",
- "melee_animation": "191",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "159",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems to crawl the caves.",
- "melee_animation": "266",
- "range_animation": "266",
- "attack_speed": "5",
- "defence_animation": "267",
- "weakness": "9",
- "magic_animation": "266",
- "death_animation": "265",
- "name": "Gnome child",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "23",
- "id": "160",
- "bonuses": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "Small",
- "melee_animation": "191",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "161",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can advise on training.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "162",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tree gnome guard.",
- "melee_animation": "1218",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1224",
- "name": "Gnome guard",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "163",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A tree gnome guard.",
- "melee_animation": "192",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome guard",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "164",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A female gnome.",
- "combat_style": "1",
- "melee_animation": "191",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome woman",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "168",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A female gnome.",
- "combat_style": "1",
- "melee_animation": "191",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome woman",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "169",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "27",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "172",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1",
- "prj_height": "3"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "24",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "1",
- "id": "174",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "2",
- "examine": "He jumps out and attacks people.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "175",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "A dark-hearted knight.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "178",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "melee_animation": "390",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "388",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "1",
- "id": "179",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "180",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "182",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "183",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "184",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "25",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "18",
- "id": "188",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "18"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "25",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "189",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "8"
- },
- {
- "examine": "An evil human cleric.",
- "start_gfx": "99",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "40",
- "end_gfx": "101",
- "respawn_delay": "60",
- "defence_animation": "404",
- "weakness": "5",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Monk of Zamorak",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "38",
- "id": "190",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "38"
- },
- {
- "examine": "A warrior of Darkness.",
- "melee_animation": "451",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "8",
- "death_animation": "9055",
- "name": "Dark warrior",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "192",
- "bonuses": "1,1,1,1,1,1,1,1,1,1,1,1,1,1,1",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A crazy evil necromancer.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "28",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Necromancer",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "194",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bandit Camp guard.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard Bandit",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "196",
- "range_level": "20",
- "attack_level": "1"
- },
- {
- "examine": "A mighty warrior!",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gunthor the Brave",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "41",
- "strength_level": "29",
- "id": "199",
- "range_level": "1",
- "attack_level": "29"
- },
- {
- "examine": "Has a fearsome scowl.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Heather",
- "defence_level": "28",
- "lifepoints": "40",
- "strength_level": "28",
- "id": "202",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Has a fearsome posture.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Donny the Lad",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "203",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Nice hair.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Speedy Keith",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "204",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A crazy evil druid.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Salarin the Twisted",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "58",
- "id": "205",
- "aggressive": "true",
- "bonuses": "45,50,43,55,39,31,19,28,33,22,22,15,13,9,8",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "A dwarven guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Guard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "206",
- "aggressive": "false",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "The head honcho around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Lawgof",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "208",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A former Knight of the Round Table.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Percival",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "212",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks unhappy...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Peasant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "214",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "High Priest of Entrana.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "High Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a fisherman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "219",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very well...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Fisher King",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "220",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks mean and powerful.",
- "melee_animation": "128",
- "range_animation": "0",
- "attack_speed": "7",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "131",
- "name": "Black Knight Titan",
- "defence_level": "91",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "100",
- "id": "221",
- "aggressive": "true",
- "bonuses": "27,27,27,0,0,18,27,18,1000,1000,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "91"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "10",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "7",
- "id": "222",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "A peaceful monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Kojo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "223",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "224",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "He looks elderly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grandpa Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "230",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes to cut down trees.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "231",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He isn't very friendly.",
- "melee_animation": "6489",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Renegade Knight",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "237",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "A terrifying spirit.",
- "melee_animation": "5540",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5542",
- "name": "Thrantax the Mighty",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "50",
- "id": "238",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Specialist meat transporter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "2301",
- "name": "Teapotspout",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "246",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6490",
- "name": "Sir Mordred",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "6489",
- "strength_level": "1",
- "id": "247",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6488"
- },
- {
- "examine": "Legendary King of the Britons.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Arthur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the door.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khazard Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "253",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's been guarding the tavern for a bit too long.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khazard Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "254",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His armour indicates he's a Khazard Guard.",
- "melee_animation": "395",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "255",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "His armour indicates he's a Khazard Guard.",
- "melee_animation": "395",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "256",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A slave fighter. He looks mistreated and weak.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fightslave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6581",
- "respawn_delay": "60",
- "defence_animation": "6578",
- "death_animation": "6576",
- "name": "Bouncer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "116",
- "strength_level": "1",
- "id": "269",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Khazard's strongest ogre warrior.",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "Khazard Ogre",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "270",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "46"
- },
- {
- "examine": "A guard who has devoted their life to Armadyl.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "name": "Guardian of Armadyl",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "274",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A guard who has devoted their life to Armadyl.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "name": "Guardian of Armadyl",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "275",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Intimidating!",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fire Warrior of Lesarkus",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "277",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Lumbridge Castle's head cook.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "278",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Omad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "279",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old drunk monk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Cedric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "280",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Ardougne Monk.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "281",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "A dastardly blanket thief.",
- "melee_animation": "386",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "282",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "The head of the treacherous blanket stealing gang.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Head Thief",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "283",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "A dwarf smith. Quite handy with a hammer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "284",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She doesn't look too happy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Veronica",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "285",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Councillor Halgrive",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A serious-looking doctor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doctor Orbon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "290",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A farmer who's seen happier times.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer Brumty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "291",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "296",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7220",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "297",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "298",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "583",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7213",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "299",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "An old motherly witch with a curious smile and a hooked nose.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hetty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "307",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a colourful personality.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Da Vinci",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "336",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's ready for a bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chancy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "338",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's ready for a bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chancy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "339",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hops",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "340",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hops",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "341",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks rather concerned.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guidor's wife",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "342",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "344",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "345",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "346",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "358",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "King Lathas of East Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Lathas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "364",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smells very chemically...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chemist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "367",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "368",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mourner",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "369",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "examine": "She's quite a looker!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nurse Sarah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "373",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "slayer_task": "64",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "27",
- "respawn_delay": "25",
- "defence_animation": "360",
- "weakness": "8",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "27",
- "id": "374",
- "aggressive": "true",
- "bonuses": "15,15,10,20,40,15,50,50,50,20,50,58,0,0,0",
- "range_level": "27",
- "attack_level": "27"
- },
- {
- "examine": "Inspects people's packages.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customs officer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "380",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "382",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not very civilised looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barbarian guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "384",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could do with a shave...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "388",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A brightly coloured game bird.",
- "melee_animation": "2371",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "2373",
- "name": "Big fish",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "3",
- "id": "390",
- "range_level": "1",
- "attack_level": "3"
- },
- {
- "examine": "Beefy.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Legends Guild guard; he protects the entrance to the Legends Guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Legends guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He deals in exotic types of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She deals in exotic types of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle forester",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Insects buzzing around.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swarm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "411",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An annoying flappy thing.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "4915",
- "attack_speed": "5",
- "magic_level": "10",
- "respawn_delay": "30",
- "defence_animation": "4916",
- "weakness": "4",
- "slayer_exp": "8",
- "death_animation": "4918",
- "name": "Bat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "412",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "5",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "5",
- "id": "419",
- "range_level": "5",
- "attack_level": "5"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "10",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "420",
- "range_level": "10",
- "attack_level": "10"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "15",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "15",
- "id": "421",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "45",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "79",
- "strength_level": "45",
- "id": "422",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "35",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "45",
- "id": "423",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "magic_level": "45",
- "defence_animation": "5574",
- "magic_animation": "5578",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "159",
- "strength_level": "45",
- "id": "424",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "Entrance clerk for the Brimhaven Agility Arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cap'n Izzy No-Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "437",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "17",
- "id": "438",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "32",
- "id": "439",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "48",
- "id": "440",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "65",
- "id": "441",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "100",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "100",
- "id": "442",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "combat_audio": "498,500,499",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "95",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "130",
- "safespot": null,
- "lifepoints": "170",
- "strength_level": "130",
- "id": "443",
- "range_level": "1",
- "attack_level": "130"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "444",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "445",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "5",
- "id": "446",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "447",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "448",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "449",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "A large well built farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seth Groats",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "452",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be very devout.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Aereck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "456",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A ghost!",
- "name": "Restless ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "457",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very holy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Urhney",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "458",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome. He looks important.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Bolren",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "469",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tree gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Commander Montai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "470",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of General Khazard's warriors.",
- "melee_animation": "401",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard trooper",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "475",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "An open eye of World-gorger.",
- "magic_level": "5",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "name": "Khazard trooper",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "1",
- "id": "476",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks real nasty",
- "melee_animation": "401",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard warlord",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "477",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "It's one of General Khazard's commanders.",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard commander",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "478",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "It's a tree gnome trooper.",
- "melee_animation": "190",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome troop",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "24",
- "id": "479",
- "range_level": "32",
- "attack_level": "24"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 1",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 2",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "482",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a gnome who specialises in covert operations.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tracker gnome 3",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a young tree gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Local Gnome",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I guess he wants to be more than just the muscle.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Giant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "487",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look like he'd trust his own mother.",
- "slayer_task": "38",
- "melee_animation": "6199",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6190",
- "name": "Goblin guard",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "489",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "If the mummy is at school",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "490",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The essence of evil.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spirit of Scorpius",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "492",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious",
- "slayer_task": "71",
- "melee_animation": "6261",
- "range_animation": "0",
- "combat_audio": "3611,3612,3610",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "6260",
- "name": "Grave scorpion",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "493",
- "aggressive": "true",
- "range_level": "7",
- "attack_level": "5"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "494",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Good with money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "495",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "499",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "503",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "504",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "505",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "melee_animation": "5571",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "death_animation": "5575",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "507",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5507",
- "respawn_delay": "60",
- "defence_animation": "5508",
- "death_animation": "5509",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "508",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5532",
- "respawn_delay": "60",
- "defence_animation": "5533",
- "death_animation": "5534",
- "name": "Nazastarool",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "509",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's the Captain of the 'Lady of the Waves'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Shanks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "518",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on axes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "519",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "520",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Helps sell stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes people spending money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "522",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes helping sell stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "523",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A product of a consumerist society.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A product of a consumerist society.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "526",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an interesting assortment of items for sale.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "530",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works on commission.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Like a grave keeper",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "60",
- "id": "532",
- "aggressive": "true",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "534",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "535",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very snappily dressed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silk trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "539",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "For the finest in armoured legware.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Louie Legs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "542",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Helps the shopkeeper sell swords.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shop assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "552",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "For the interesting clothing items you just can't find elsewhere.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fancy-dress shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "554",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has a fine moustache.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "555",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could stand to lose a few pounds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "561",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an odd smell about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Candle-maker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "562",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks strange and mysterious.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "569",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems very well-off.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gem merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "570",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "So where are the butcher and the candlestick-maker?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has a very exotic aroma about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spice seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "572",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Knows how to keep warm in the winter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fur trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "573",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems very well-off.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silk merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He runs a Mining store.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Drogo dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if he wants to buy my junk?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "If crafting's your thing, he's your man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rommik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to sell tea.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tea seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "595",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pizza expert; in both making and eating.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fat Tony",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "596",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Anyone fancy a trim?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hairdresser",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "598",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Indentured servant of a Knight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "606",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "609",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "One of the Black Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black Knight Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "610",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "613",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doug Deeping",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "614",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A student busy studying the digsite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "617",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "618",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on archaeology.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archaeological expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "619",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A specialist in panning for gold.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Panning guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "620",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A professional gnome baller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome baller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "621",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A professional gnome baller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome winger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "633",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the game fair.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome ball referee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "635",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dealer in potions.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apothecary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "638",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A religious man... And occasional drunk.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Father Lawrence",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "640",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charlie the Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks kind of obsessive...",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Weaponsmaster",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "643",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Looks kind of shifty...",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jonny the beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "645",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Curator of the museum.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Curator Haig Halen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "646",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Varrock's resident monarch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Roald",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "648",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks quite experienced.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "649",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks big and dumb.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "650",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks holy.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "651",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks kind of puny...",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "652",
- "range_level": "1",
- "attack_level": "1",
- "prj_height": "3"
- },
- {
- "examine": "Guardian of the dramen tree.",
- "melee_animation": "5532",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5534",
- "name": "Tree spirit",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "655",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Unsurprisingly monk like.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "656",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "657",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "658",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes to paaaarty!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Party Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "659",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "660",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short and angry dwarf.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "665",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An important looking gnome.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Narnode Shareen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "670",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The boss!",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Foreman",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "674",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "Keeps order in the ranging guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "678",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The keeper of the gates to the ranging guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ranging Guild Doorman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "679",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert leatherworker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Leatherworker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "680",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mysterious swamp lights...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Held vampyre juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "681",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supplier of Rangers armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Armour salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supplier of Archery equipment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bow and Arrow salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "683",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tower keeper and competition judge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tower Advisor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "684",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Defender of the north tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "7",
- "id": "688",
- "aggressive": "true",
- "range_level": "10",
- "attack_level": "7"
- },
- {
- "examine": "Defender of the east tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "15",
- "id": "689",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "15"
- },
- {
- "examine": "Defender of the south tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "690",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "Defender of the west tower.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower Archer",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "30",
- "id": "691",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "examine": "Supplier of authentic throwing weapons.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tribal Weapon Salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "692",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells equipment in exchange for archery tickets.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "694",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Harlan, ready to teach swordplay.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Melee tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "705",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard Mizgog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cheeky little imp.",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "attack_speed": "5",
- "defence_animation": "170",
- "weakness": "7",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "2",
- "id": "708",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "A cheeky little imp.",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "attack_speed": "5",
- "defence_animation": "170",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "709",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bureaucratic administrator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Clerk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "713",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "In charge of people with silly outfits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "716",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the Ardougne Royal Army.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Recruiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "720",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "732",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "735",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "737",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "738",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I could get a beer from him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Duke Horacio of Lumbridge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Duke Horacio",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A badly-behaved goblin.",
- "slayer_task": "38",
- "melee_animation": "6184",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6204",
- "name": "Wormbrain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Angry barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "749",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Enraged barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "750",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Berserk barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "76",
- "id": "751",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "He looks a tad upset.",
- "melee_animation": "6726",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6727",
- "name": "Ferocious barbarian spirit",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "190",
- "strength_level": "76",
- "id": "752",
- "aggressive": "true",
- "bonuses": "80,100,60,70,85,70,70,90,60,100,50,90,90,0,0",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "Stop looking and run!",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Count Draynor",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "757",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A well-fed farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fred the Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "758",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "192",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "194",
- "death_animation": "196",
- "name": "Crate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "767",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Overgrown cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "1",
- "id": "778",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Civilian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome who's supposed to be cleaning up a mess.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Letham",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smartly dressed",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alfonse the waiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "793",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Distinctly cook-like.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charlie the cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold hearted lady.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ice Queen",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "55",
- "id": "795",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He looks cold and hungry.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Velrak the explorer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "798",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A morally ambiguous guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Pirate Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "799",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Abbot Langley",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "801",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Jered",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "803",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "He looks very tired...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Donovan the Family Handyman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "806",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the Law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "812",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of those people who love to gossip!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gossip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "813",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sure likes to sell stuff!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Poison Salesman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sinclair Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "821",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Rowdy slave",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary Captain",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's in control of the whole mining camp.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Siad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "831",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedabin Nomad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad guard - it looks like he's protecting an area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedabin Nomad Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "834",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He patrols the Shantay Pass.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Shantay Guard",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "837",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He patrols the Shantay Pass.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shantay Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "838",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious desert wolf.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "839",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "death_animation": "9674",
- "name": "Ugthanki",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "46",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "840",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "He looks busy attending to his cart.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mine cart driver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "841",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This pickaxe has been possessed by a dwarf ancestor spirit.",
- "melee_animation": "185",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "188",
- "name": "Rowdy Guard",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "400",
- "strength_level": "40",
- "id": "842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Inefficient looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "RPDT employee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "843",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Despite his name",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head chef",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "847",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The famous tree gnome chef.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Aluft Gianne snr.",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "850",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can serve you gnome food.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Waiter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Gorad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "1",
- "id": "856",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "These ogres protect the city.",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ogre that guards.",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "859",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tries to keep the peace.",
- "slayer_task": "64",
- "melee_animation": "2100",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "City guard",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "331",
- "strength_level": "58",
- "id": "862",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "Frightened-looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Scared skavid",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big and ugly looking.",
- "slayer_task": "64",
- "melee_animation": "2100",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "8576",
- "name": "Enclave guard",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "331",
- "strength_level": "58",
- "id": "870",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "The hat is a dead giveaway.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Watchtower Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "872",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "874",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Funnily enough",
- "slayer_task": "64",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogre trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "875",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tries to keep the peace.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tower guard",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "17",
- "id": "877",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "melee_animation": "395",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Colonel Radick",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "67",
- "name": "Delrith",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "64",
- "strength_level": "1",
- "id": "879",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "65"
- },
- {
- "examine": "The head of the palace guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Rovin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "884",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Head of the Carnillean household.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ceril Carnillean",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "885",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "887",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Clivet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "melee_animation": "811",
- "strength_level": "1",
- "id": "893",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "A member of the Hazeel cult.",
- "melee_animation": "422",
- "range_animation": "0",
- "magic_level": "20",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Hazeel Cultist",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "15",
- "id": "894",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Children are just like real people...just smaller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "895",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He hasn't seen much sun lately.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chamber guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A crafter at the pinnacle of his art.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "916",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder who he's guarding?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jail guard",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "917",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "The emir's chief advisor and physician.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hassan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "923",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Guards the border between Al Kharid and the Kingdom of Misthalin.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Border Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "925",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An aggressive native of the Kharazi Jungle.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jungle savage",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "931",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Nezikchened",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "id": "934",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5485",
- "respawn_delay": "60",
- "defence_animation": "5489",
- "death_animation": "5491",
- "name": "Ranalph Devere",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "938",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder what this is doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "939",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very much an outdoors type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Survival expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "943",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on all forms of combat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Combat instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your introduction to the world of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "RuneScape guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "945",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official representative from the First National Bank of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Financial advisor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An expert on Mining-related skills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mining instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your introduction to the world of RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quest guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "950",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Brace",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "954",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "955",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's had a fair bit to drink...",
- "start_gfx": "33",
- "combat_style": "1",
- "melee_animation": "99",
- "range_animation": "99",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "101",
- "slayer_exp": "0",
- "magic_animation": "99",
- "death_animation": "102",
- "name": "Drunken Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "5",
- "id": "956",
- "range_level": "6",
- "projectile": "33",
- "attack_level": "5",
- "prj_height": "45"
- },
- {
- "examine": "This doctor really knows her stuff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Surgeon General Tafani",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "961",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of Iban's pets.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Blessed spider",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "977",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Blessed giant rat",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "978",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "982",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "983",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "984",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wretched slave of Iban.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "985",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Precariously balanced...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "986",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Unicorn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "496,498,497",
- "strength_level": "1",
- "id": "987",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Sir Jerro",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "988",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sir Carl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "989",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sir Harry",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "57",
- "melee_animation": "400",
- "strength_level": "1",
- "id": "990",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "A creature empty of emotion.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Half-soulless",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "991",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant spider.",
- "melee_animation": "5319",
- "respawn_delay": "60",
- "defence_animation": "5320",
- "death_animation": "5321",
- "name": "Kalrag",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "1",
- "id": "997",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the guardians of Iban.",
- "melee_animation": "64",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Othainian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "998",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the guardians of Iban.",
- "melee_animation": "64",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Doomion",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "999",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1144",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1145",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1146",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1147",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1148",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1149",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the goutweed.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1150",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Human is his speciality.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Burntmeat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1151",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast",
- "melee_animation": "313",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "315",
- "name": "The Shaikahan",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "50",
- "id": "1172",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An elven city guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elven city guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cute bunny rabbit.",
- "melee_animation": "6090",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1192",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1193",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1194",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "examine": "It's an NPC.",
- "melee_animation": "4921",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "4927",
- "slayer_exp": "0",
- "death_animation": "4929",
- "name": "Grizzly bear",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
- "id": "1195",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A bear cub!",
- "slayer_task": "6",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Grizzly bear cub",
- "defence_level": "21",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "21",
- "id": "1196",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "name": "Grizzly bear cub",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "35",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1197",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What big teeth you have.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Dire Wolf",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "1198",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "An elf tracker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elf Tracker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1199",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "414",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "1200",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "110",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "105",
- "id": "1203",
- "range_level": "50",
- "attack_level": "95"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Tyras guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "1",
- "id": "1204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Responsible for the food and equipment of the troops.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Quartermaster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1208",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mysterious swamp lights...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Will o' the wisp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1211",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems strangely familiar...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Parroty Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old gardener.",
- "melee_animation": "433",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gardener",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "1217",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "Yuck! It's all slimy!",
- "melee_animation": "1273",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1272",
- "name": "Leech",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "1219",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "Could his name be 'Lurch'?",
- "melee_animation": "7183",
- "slayer_exp": "50",
- "death_animation": "7185",
- "name": "Vampire",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1220",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "slayer_exp": "40",
- "name": "Vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1223",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1225",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Bedabin nomad fighter - a sandy swordsman.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Bedabin Nomad Fighter",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "1239",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "1257",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "1258",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "1261",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "A local villager of Mort'ton.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Afflicted",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "1262",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "46"
- },
- {
- "examine": "A follower of Saradomin.",
- "melee_animation": "376",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "90",
- "spell_id": "41",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "836",
- "name": "Saradomin wizard",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "90",
- "id": "1264",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "90"
- },
- {
- "examine": "A rocky outcrop.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "weakness": "7",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Rocks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1266",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rocky outcrop.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Rocks",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1268",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "A Fremennik bard.",
- "melee_animation": "1312",
- "range_animation": "1312",
- "attack_speed": "5",
- "defence_animation": "1313",
- "magic_animation": "1312",
- "death_animation": "1314",
- "name": "Olaf the Bard",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1269",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Distinctly troll-shaped.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lalli",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1270",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly shorn.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1271",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lovely thick wool.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1272",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful spirit that lives in this lake.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fossegrimen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1273",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's had a few drinks already.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ospak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1274",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Doesn't look like the musical type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Styrmir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1275",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Waiting for the show.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Torbrund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1276",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sits impatiently with his friends.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fridgeir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1277",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's fat, he's round, he bounces on the ground. That's how he got the job.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Longhall Bouncer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1278",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fearful spirit of the drowned.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "The Draugen",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "1279",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A Fremennik hunter.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigli the Huntsman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1281",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigmund The Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1282",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik navigator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swensen the Navigator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1283",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Supposedly fixes things around RuneScape.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Council workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1287",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik riddler.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Peer the Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Fremennik hero.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Thorvald the Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your challenge awaits! ",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1290",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He lives again!",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1291",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He keeps on living!",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1292",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He just keeps on going.",
- "melee_animation": "390",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Koschei the deathless",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "13",
- "id": "1293",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "The Fremennik tribe's chieftain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brundt the Chieftain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stands around and looks at stuff all day.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1296",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1297",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a rubbish job he has.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Town Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1298",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Longhall barkeep",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A bartender.",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1300",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Pretty shabbily dressed for a clothes shop owner.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yrsa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1301",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There's something fishy about this guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1302",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sells and makes weapons and armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skulgrimen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1303",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's strong to the finish",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sailor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1304",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Agnar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1305",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Freidir",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1306",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "395",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Borrokar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1307",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Lanzig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "id": "1308",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pontak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "id": "1309",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sassilik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1313",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Rellekka's many citizens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Inga",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1314",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fish-tastic!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish monger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1315",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder what he does with all that fur?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fur trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hardened Fremennik warrior.",
- "melee_animation": "401",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Warrior",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "1318",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A cunning animal.",
- "melee_animation": "6562",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6570",
- "name": "Fox",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "1319",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Hoppity",
- "melee_animation": "1245",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "1246",
- "name": "Bunny",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1320",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "1246",
- "name": "Bunny",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "1245",
- "strength_level": "1",
- "id": "1321",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1244"
- },
- {
- "examine": "Cute. But deadly.",
- "slayer_task": "6",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Bear Cub",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "1326",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Cute. But deadly.",
- "name": "Bear Cub",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1327",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Horned horsey.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "attack_speed": "5",
- "magic_level": "6",
- "respawn_delay": "32",
- "defence_animation": "6375",
- "weakness": "7",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn Foal",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "6",
- "id": "1328",
- "range_level": "1",
- "attack_level": "6"
- },
- {
- "examine": "Cute but evil.",
- "melee_animation": "6376",
- "range_animation": "0",
- "combat_audio": "496,498,497",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Black unicorn Foal",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "1329",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "Fearsome predator found only in the Fremennik Province",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "combat_audio": "481,491,490",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "69",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Wolf",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "35",
- "id": "1330",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1340",
- "range_animation": "1340",
- "attack_speed": "5",
- "defence_animation": "1341",
- "magic_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "80",
- "id": "1338",
- "clue_level": "1",
- "range_level": "85",
- "projectile": "288",
- "attack_level": "80"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1339",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1340",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1341",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1342",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "1343",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1344",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1345",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1346",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths...",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1347",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "60",
- "id": "1351",
- "aggressive": "true",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1352",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1354",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A horror from the ocean depths.",
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems happy to see you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1360",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "401",
- "strength_level": "1",
- "id": "1367",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1368",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Hmm",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishmonger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1369",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "At least he eats his greens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greengrocer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1370",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the throne room.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1374",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's cutting the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1377",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No-one would mistake her for a duchess.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Flower Girl",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1378",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Alrik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1381",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He's strong to the finish, because he eats cabbage.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sailor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1385",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Rannveig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1386",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Valgerd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1388",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1389",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Broddi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "1390",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Skraeling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "1391",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Ragnvald",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "810",
- "strength_level": "1",
- "id": "1392",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Hmm",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishmonger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1393",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "At least he eats his greens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greengrocer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's a lumberjack",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumberjack Leif",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1395",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There's something fishy about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fisherman Frodi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She's looking a bit weedy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gardener Gunnhild",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "5389",
- "name": "Rooster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "5387",
- "strength_level": "1",
- "id": "1403",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5388"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "1404",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1419",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An official looking Gnome with small beady eyes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "G.L.O. Caranock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1427",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Duke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1442",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Oipuis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1443",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Uyoro",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1444",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1387",
- "death_animation": "1384",
- "name": "Ouhai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1445",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Uodai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1446",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1383",
- "respawn_delay": "60",
- "defence_animation": "1393",
- "death_animation": "1384",
- "name": "Padulah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "133",
- "strength_level": "1",
- "id": "1447",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge brutish gorilla stands here",
- "slayer_task": "61",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elder Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1461",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Greater Jungle demon. A magical aura emanates from its hide.",
- "range_animation": "0",
- "combat_audio": "400,404,403",
- "attack_speed": "2",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Jungle demon",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "428",
- "strength_level": "50",
- "id": "1472",
- "aggressive": "true",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "melee_animation": "6249",
- "respawn_delay": "60",
- "defence_animation": "6250",
- "death_animation": "6251",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "1473",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a brightly coloured bird of the jungle.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6779",
- "name": "Bird",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1475",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "It's a brightly coloured bird of the jungle. It flies very quickly.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6777",
- "name": "Bird",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1476",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A very dangerous looking spider",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "47",
- "id": "1478",
- "aggressive": "true",
- "range_level": "63",
- "attack_level": "47"
- },
- {
- "name": "Small ninja monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1480",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Medium ninja monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Bearded gorilla",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "1483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ancient monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1484",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Small zombie monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Large zombie monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "1486",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge nail beast. Its nails appear very sharp.",
- "melee_animation": "5989",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5990",
- "name": "Nail beast",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "550",
- "strength_level": "150",
- "id": "1521",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "He is one",
- "melee_animation": "5970",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5972",
- "name": "Undead Lumberjack",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "73",
- "id": "1524",
- "range_level": "1",
- "attack_level": "73"
- },
- {
- "examine": "His robes prominently display the star of Saradomin.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Zealot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1528",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "combat_style": "1",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "combat_style": "1",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1533",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1534",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Handy for hindering the enemy team's movement.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "9658",
- "name": "Barricade",
- "defence_level": "1",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1535",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "185",
- "respawn_delay": "60",
- "defence_animation": "186",
- "death_animation": "188",
- "name": "Possessed pickaxe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "1536",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A strange disturbance in the air.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Haze",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1537",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Well",
- "slayer_task": "75",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Corpse",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1538",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I don't think the pickaxe is for hitting rocks.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "slayer_exp": "0",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Skeletal miner",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "1539",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5540",
- "respawn_delay": "60",
- "defence_animation": "5541",
- "death_animation": "5542",
- "name": "Treus Dayth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1540",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large boisterous bird",
- "slayer_task": "7",
- "melee_animation": "6761",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "death_animation": "6762",
- "name": "Chompy bird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1550",
- "range_level": "2",
- "attack_level": "1"
- },
- {
- "name": "Mischievous ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "1551",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Arrg",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "1556",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Ug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "1557",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not man's best friend.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Ice wolf",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "51",
- "id": "1558",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "51"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1560",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1561",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1562",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1563",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1564",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1565",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice Troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1566",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A tall and imposing man who's more than familiar with boating.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cyreg Paddlehorn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Its scales seem to be made of bronze.",
- "slayer_task": "13",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "40",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "125",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Bronze dragon",
- "defence_level": "112",
- "safespot": null,
- "lifepoints": "122",
- "strength_level": "112",
- "id": "1590",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "112"
- },
- {
- "examine": "Its scales seem to be made of iron.",
- "slayer_task": "50",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "45",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "173",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Iron dragon",
- "defence_level": "165",
- "safespot": null,
- "lifepoints": "165",
- "strength_level": "165",
- "id": "1591",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "165"
- },
- {
- "examine": "Its scales seem to be made of steel.",
- "slayer_task": "80",
- "melee_animation": "80",
- "range_animation": "80",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "100",
- "respawn_delay": "45",
- "defence_animation": "89",
- "weakness": "7",
- "slayer_exp": "221",
- "magic_animation": "80",
- "death_animation": "92",
- "name": "Steel dragon",
- "defence_level": "215",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "215",
- "id": "1592",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,50,70,70,30,90,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "215"
- },
- {
- "examine": "An unsuitable pet.",
- "slayer_task": "27",
- "melee_animation": "6562",
- "range_animation": "6562",
- "magic_level": "20",
- "respawn_delay": "20",
- "defence_animation": "6563",
- "weakness": "7",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Wild dog",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "25",
- "id": "1593",
- "aggressive": "true",
- "bonuses": "10,15,5,10,30,5,30,30,30,10,30,5,40,5,5",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Looks like it's got Rabies!",
- "melee_animation": "6562",
- "range_animation": "6562",
- "magic_level": "20",
- "respawn_delay": "20",
- "defence_animation": "6563",
- "magic_animation": "6562",
- "death_animation": "6564",
- "name": "Wild dog",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "25",
- "id": "1594",
- "aggressive": "true",
- "bonuses": "10,15,5,10,30,5,30,30,30,10,30,5,40,5,5",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1604",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1605",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1606",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "A very smelly ghost.",
- "slayer_task": "0",
- "start_gfx": "334",
- "combat_style": "2",
- "melee_animation": "9466",
- "weakness": "5",
- "slayer_exp": "90",
- "magic_animation": "9466",
- "death_animation": "9467",
- "lifepoints": "90",
- "id": "1607",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,15,0,0,0,0,0",
- "range_animation": "1507",
- "magic_level": "105",
- "end_gfx": "336",
- "defence_animation": "9468",
- "name": "Aberrant spectre",
- "defence_level": "90",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "335",
- "attack_level": "1"
- },
- {
- "examine": "Flies like a rock.",
- "slayer_task": "84",
- "melee_animation": "1516",
- "range_animation": "1516",
- "attack_speed": "5",
- "defence_animation": "0",
- "weakness": "0",
- "slayer_exp": "105",
- "magic_animation": "1516",
- "death_animation": "1518",
- "name": "Swarming turoth",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "104",
- "id": "1611",
- "clue_level": "2",
- "range_level": "49",
- "attack_level": "45"
- },
- {
- "examine": "A tortured screaming soul.",
- "melee_animation": "9449",
- "range_animation": "1523",
- "attack_speed": "5",
- "defence_animation": "9451",
- "slayer_exp": "22",
- "magic_animation": "1523",
- "death_animation": "9450",
- "name": "Banshee",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "14",
- "id": "1612",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "An evil death spawn.",
- "melee_animation": "1540",
- "range_animation": "1540",
- "attack_speed": "4",
- "magic_level": "1",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "1540",
- "death_animation": "9460",
- "name": "Death spawn",
- "defence_level": "30",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "7",
- "id": "1614",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,20,0,20,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "67"
- },
- {
- "examine": "The eyes of evil.",
- "melee_animation": "260",
- "range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
- "defence_animation": "261",
- "slayer_exp": "75",
- "magic_animation": "260",
- "death_animation": "264",
- "name": "Basilisk",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "80",
- "id": "1616",
- "range_level": "75",
- "attack_level": "80"
- },
- {
- "examine": "The eyes of evil.",
- "melee_animation": "260",
- "range_animation": "260",
- "attack_speed": "5",
- "magic_level": "75",
- "defence_animation": "261",
- "slayer_exp": "75",
- "magic_animation": "260",
- "death_animation": "264",
- "name": "Basilisk",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "80",
- "id": "1617",
- "range_level": "75",
- "attack_level": "80"
- },
- {
- "examine": "The cave-dwelling cousin of the dust devils.",
- "slayer_task": "28",
- "melee_animation": "1557",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "1558",
- "name": "Smokedevil",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "105",
- "id": "1625",
- "range_level": "61",
- "attack_level": "105"
- },
- {
- "examine": "He's in charge of the Skullball Course.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skullball Boss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1660",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's in charge of the Agility Course.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Boss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1661",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A skullball guide.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skullball Trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1662",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A werewolf agility trainer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Trainer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1663",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's guarding a trapdoor...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "1665",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader from across the eastern sea.",
- "start_gfx": "0",
- "start_height": "0",
- "melee_animation": "386",
- "range_animation": "0",
- "magic_level": "1",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ak-Haranu",
- "defence_level": "1",
- "movement_radius": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1688",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An extremely vicious lobster.",
- "slayer_task": "71",
- "melee_animation": "6265",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6267",
- "name": "Giant lobster",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "30",
- "id": "1693",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An old",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Old crone",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1695",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A creaky old man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Old man",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1696",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This poor soul cannot understand why it has not passed to the next world.",
- "slayer_task": "36",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "slayer_exp": "51",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tortured soul",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "62",
- "id": "1698",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1710",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1711",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Guard",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "1712",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "A deacon in the Humans Against Monsters group. A rather enthusiastic chap.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Deacon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1713",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1714",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1715",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1716",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the 'Humans Against Monsters' group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1717",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A young man with a dark and mysterious past.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy the Chisel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Sigmund's elite guards.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yew",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Sigmund's elite guards.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1742",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evergreen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1743",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1744",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dead tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Achey Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1746",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of Sigmund's H.A.M. splinter group.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1748",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "1013",
- "name": "Terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "melee_animation": "1010",
- "strength_level": "1",
- "id": "1751",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "1012"
- },
- {
- "examine": "These gnomes know how to get around!",
- "slayer_task": "7",
- "melee_animation": "6790",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6791",
- "name": "Mounted terrorbird gnome",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "33",
- "id": "1752",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "A farmer's enemy.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1757",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1758",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Farming.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1759",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He grows the crops in this area.",
- "melee_animation": "7181",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7185",
- "name": "Farmer",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "1760",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Farming the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1761",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1763",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "1",
- "id": "1766",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Where beef comes from.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1767",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "1",
- "id": "1768",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1769",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1770",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1771",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1772",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1773",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1774",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1775",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "slayer_task": "38",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "weakness": "7",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "1776",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks quite independent in an aggressive and business like way.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hammerspike Stoutbeard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1795",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1796",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A short stout menacing fellow.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf gang member",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "1797",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "melee_animation": "1750",
- "respawn_delay": "60",
- "defence_animation": "1751",
- "death_animation": "1752",
- "name": "Slagilith",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "1802",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pile of boulders.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rock pile",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1803",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be guarding a pile of rocks. Interesting job.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1805",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to be guarding a single rock. Interesting job.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1806",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Chieftain of the mountain camp.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hamal the Chieftain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is that a bear... or a man?",
- "melee_animation": "1760",
- "range_animation": "0",
- "magic_level": "23",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "1759",
- "name": "The Kendal",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "23",
- "id": "1812",
- "aggressive": "true",
- "range_level": "23",
- "attack_level": "23"
- },
- {
- "melee_animation": "1760",
- "respawn_delay": "60",
- "defence_animation": "1758",
- "death_animation": "1759",
- "name": "The Kendal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "1813",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1814",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1815",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1816",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1817",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "One of the inhabitants of the camp.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Camp dweller",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "1818",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "Looks a little underfed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1819",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1822",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1823",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1824",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big bulging eyes.",
- "slayer_task": "38",
- "melee_animation": "6001",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "1825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It didn't get that big eating flies!",
- "melee_animation": "1793",
- "range_animation": "1793",
- "attack_speed": "6",
- "defence_animation": "1794",
- "weakness": "1",
- "magic_animation": "1793",
- "death_animation": "1795",
- "name": "Giant frog",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "45",
- "id": "1828",
- "bonuses": "10,10,10,10,10,10,1,10,10,10,10,37,0,0,0",
- "range_level": "32",
- "attack_level": "45"
- },
- {
- "examine": "It didn't get that big eating flies.",
- "melee_animation": "1793",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "1795",
- "name": "Big frog",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "1",
- "id": "1829",
- "range_level": "26",
- "attack_level": "1"
- },
- {
- "examine": "A foul-smelling blob of protoplasm.",
- "slayer_task": "18",
- "melee_animation": "1789",
- "range_animation": "0",
- "attack_speed": "5",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "1792",
- "name": "Cave slime",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "1",
- "id": "1831",
- "clue_level": "0",
- "range_level": "19",
- "attack_level": "1"
- },
- {
- "examine": "A nasty crawling critter.",
- "slayer_task": "15",
- "melee_animation": "6079",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "5",
- "magic_animation": "0",
- "death_animation": "6082",
- "name": "Cave bug",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "1832",
- "range_level": "6",
- "attack_level": "1"
- },
- {
- "examine": "A little",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave bug larva",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Has an odd smell about him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Candle seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1834",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A short angry guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1840",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The little guy is having trouble standing up right.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Khorvak, a dwarven engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1842",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's probably you who will be paying the ferryman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Ferryman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1843",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's probably you who will be paying the ferryman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Ferryman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1844",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It is the avatar of the Arzinian Being of Bordanzan",
- "melee_animation": "1840",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "1841",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "40",
- "id": "1850",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "1851",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Strength",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1852",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It is the avatar of the Arzinian Being of Bordanzan",
- "melee_animation": "1843",
- "range_animation": "1843",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "1841",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "30",
- "id": "1853",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "1",
- "id": "1854",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1840",
- "respawn_delay": "60",
- "defence_animation": "1842",
- "death_animation": "1843",
- "name": "Arzinian Avatar of Ranging",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "1855",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's the Arzinian Being",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Arzinian Being of Bordanzan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1859",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells ranging equipment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nemarti looks ready to teach you about ranged combat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ranged Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1861",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drunk man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Drunken Ali",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hassled looking barman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali The barman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1864",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A kebab seller.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Kebab seller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1865",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mischievous looking child.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Street urchin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1868",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old Hag named Alice.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Hag",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1871",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A foul tempered ugly lumpy yellow horse prone to spitting.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Desert snake",
- "defence_level": "6",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "4",
- "id": "1874",
- "range_level": "6",
- "attack_level": "4"
- },
- {
- "examine": "A very tough-looking bandit.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Bandit champion",
- "defence_level": "39",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "39",
- "id": "1885",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "examine": "Probably the weakest bandit in the world ....ever.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cowardly Bandit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1886",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smooth operator.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Operator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tough looking Menaphite.",
- "melee_animation": "395",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Tough Guy",
- "defence_level": "39",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "39",
- "id": "1906",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "examine": "Definitely not a chicken.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Desert Phoenix",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1911",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "412",
- "death_animation": "9055",
- "name": "Kamil",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "55",
- "id": "1913",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Dessous",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "1914",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Dessous",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "1915",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I guess he sells what he steals...?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bandit shopkeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hardened by the cutthroat world of archaeology.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Archaeologist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1918",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very mysterious looking...",
- "melee_animation": "377",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Stranger",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "58",
- "id": "1919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "examine": "Looks like a rough-and-ready type.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bartender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1921",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tough-looking criminal.",
- "melee_animation": "412",
- "range_animation": "412",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "412",
- "death_animation": "9055",
- "name": "Bandit",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "70",
- "id": "1926",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "This is an NPC.",
- "melee_animation": "412",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "100",
- "defence_animation": "404",
- "magic_animation": "0",
- "death_animation": "9055",
- "name": "Bandit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "1931",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ice troll.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ice troll",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1935",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1936",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1937",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1938",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1939",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1940",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1941",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Brrrrr...he must be cold!",
- "slayer_task": "83",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "64",
- "id": "1942",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1951",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1952",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1953",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1954",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1955",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Not a man's best friend.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "magic_level": "30",
- "respawn_delay": "28",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Ice wolf",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "72",
- "strength_level": "60",
- "id": "1956",
- "aggressive": "true",
- "bonuses": "40,120,150,150,150,40,130,75,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Highly flammable!",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1958",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A tightly-wrapped monster.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1961",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Spooky",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1962",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A victim of poor first aid.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1963",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "But who's the daddy?",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1964",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A tightly-wrapped monster.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1965",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A victim of poor first aid.",
- "melee_animation": "5549",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "1967",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "I think they're some kind of beetle...",
- "slayer_task": "70",
- "melee_animation": "1948",
- "range_animation": "0",
- "poisonous": "true",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "1946",
- "name": "Scarabs",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "62",
- "id": "1969",
- "range_level": "1",
- "attack_level": "62"
- },
- {
- "examine": "A wandering merchant.",
- "name": "Rasolo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1972",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A giant skeleton.",
- "slayer_task": "75",
- "melee_animation": "5499",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "1973",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "melee_animation": "799",
- "respawn_delay": "60",
- "defence_animation": "434",
- "death_animation": "836",
- "name": "Fareed",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "1977",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A malnourished worker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1978",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A malnourished worker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A strange-smelling merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Embalmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A block of a man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Carpenter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Preach my brother!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1988",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a dangerous glint in his eye.",
- "combat_style": "2",
- "melee_animation": "429",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Possessed Priest",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "30",
- "id": "1991",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "30"
- },
- {
- "examine": "He has had his day.",
- "slayer_task": "27",
- "melee_animation": "6568",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6567",
- "name": "Jackal",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "35",
- "id": "1994",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Obnoxious",
- "melee_animation": "2015",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "2013",
- "name": "Locust",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "12",
- "id": "1995",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "examine": "A very smelly frog.",
- "melee_animation": "1021",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1022",
- "name": "Plague frog",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "15",
- "id": "1997",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "I might give the burgers a miss in this town.",
- "slayer_task": "20",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Plague cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I don't fancy eating any part of this.",
- "slayer_task": "20",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Plague cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "1999",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think they're some kind of beetle.",
- "slayer_task": "70",
- "melee_animation": "1948",
- "range_animation": "0",
- "attack_speed": "2",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1946",
- "name": "Scarab swarm",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "900",
- "strength_level": "9",
- "id": "2001",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "This mummy looks like it means business!",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2015",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An irate warrior-mummy.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2016",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "This mummy looks like it means business!",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2017",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "An irate mummy.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2018",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A wizened old warrior.",
- "melee_animation": "5554",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5555",
- "name": "Mummy",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "2019",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A shimmering creature of blue light.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Light creature",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I think I should keep my distance...",
- "melee_animation": "2070",
- "range_animation": "2070",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "26",
- "defence_animation": "2072",
- "weakness": "6",
- "magic_animation": "2070",
- "death_animation": "2073",
- "name": "Bloodworm",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "20",
- "id": "2031",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A nasty little rodent.",
- "slayer_task": "67",
- "melee_animation": "240",
- "range_animation": "240",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "20",
- "defence_animation": "241",
- "weakness": "9",
- "magic_animation": "240",
- "death_animation": "243",
- "name": "Crypt rat",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "20",
- "id": "2032",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "2033",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Incey wincey.",
- "slayer_task": "76",
- "melee_animation": "6249",
- "range_animation": "6249",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "6250",
- "weakness": "7",
- "magic_animation": "6249",
- "death_animation": "6251",
- "name": "Crypt spider",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "47",
- "id": "2034",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,20,20,10,17,20,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Not very incey wincey.",
- "slayer_task": "76",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "35",
- "defence_animation": "5328",
- "weakness": "7",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant crypt spider",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "67",
- "id": "2035",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2050",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2056",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Skogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "2057",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What could be hiding in that crack in the wall?",
- "slayer_task": "87",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "slayer_exp": "30",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hole in the wall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "2058",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Slash Bash",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "103",
- "strength_level": "1",
- "id": "2060",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2069",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2070",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2071",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "This one is slacking off.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "2072",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "He protects the miners.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin guard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "2073",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "He protects the miners.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "6008",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Cave goblin guard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "15",
- "id": "2074",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2076",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2077",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's working hard!",
- "melee_animation": "6007",
- "combat_audio": "469,472,471",
- "defence_animation": "6008",
- "death_animation": "6003",
- "name": "Cave goblin miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2078",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Advisor to the Duke of Lumbridge.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sigmund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2082",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2091",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Purple Pewter Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2092",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yellow Fortune Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2093",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blue Opal Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2094",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Green Gemstone Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2095",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "White Chisel Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2096",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver Cog Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2097",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head secretary of the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brown Engine Secretary",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Purple Pewter Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blue Opal Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2101",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Yellow Fortune Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2102",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Green Gemstone Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2103",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "White Chisel Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2104",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver Cog Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2105",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the leaders of the business Consortium",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brown Engine Director",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2106",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2109",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Purple Pewter mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2110",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2111",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Blue Opal mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2112",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2113",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Yellow Fortune mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2114",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Green Gemstone mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the White Chisel mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2118",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2119",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Silver Cog mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A trader for the Brown Engine mining company.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He is regulating the flow of goods on the trade floor and maintaining order.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trade Referee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2127",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2130",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2131",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2132",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "slayer_exp": "16",
- "name": "Black Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2133",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2134",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2135",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "An elite member of the Black Guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard Berserker",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "2136",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A gnome traveller, visiting Keldagrim.",
- "name": "Gnome traveller",
- "defence_level": "1",
- "force_talk": "Buying low-level skilling items!",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2138",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very protective of his master... and his property.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dromund's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rather personable banker lady.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2163",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rather serious old fella.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2164",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He takes care of the library and its many books.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Librarian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2165",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A customer looking for books.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a human traveler visiting the library.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Customer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tends to the plants in the palace garden.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rind the gardener",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2170",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2174",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Works hard at whatever it is he does.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Factory Worker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2175",
- "range_level": "1",
- "attack_level": "1"
- },
{
"examine": "A rich landlord, fat and jolly.",
"melee_animation": "0",
@@ -193609,6783 +71549,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "These Dwarf ladies are so attractive!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barmaid",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2178",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2180",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2181",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2182",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2183",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes sure the carts don't run anyone over.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2184",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Remember: don't drink and ride in mine carts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps the line clear of traffic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cart conductor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2186",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A loud",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rowdy dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "You cannot see his ship",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Boatman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2205",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He carries a heavy load.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarven Miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A local farmer. He may be able to provide some useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2237",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2240",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "There to help me make my bids.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2241",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porcine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2242",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He provides new players with useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2244",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's one of General Khazard's warriors.",
- "melee_animation": "429",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Khazard trooper",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "2246",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "An initiate of Zamorak.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dark mage",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eyes in the back of its head...",
- "melee_animation": "2186",
- "range_animation": "2186",
- "attack_speed": "6",
- "magic_level": "57",
- "defence_animation": "2188",
- "weakness": "3",
- "slayer_exp": "0",
- "magic_animation": "2186",
- "death_animation": "2189",
- "name": "Abyssal guardian",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "96",
- "id": "2264",
- "aggressive": "true",
- "range_level": "135",
- "attack_level": "65"
- },
- {
- "examine": "A snowman armed with a holly bow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rogue Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2269",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with an ice sword.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Emerald Benedict",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2271",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with a winter staff.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spin Blades",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2272",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2274",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2275",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2276",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2277",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2278",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2279",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2280",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2281",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An observer for the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Cheevers",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An observer for the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ms. Hynn Terprett",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2289",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A carpet merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2291",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A carpet merchant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2292",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man who deals in rugs.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2293",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man who deals in rugs.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rug Merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Young, but still beefy.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "366,368,367",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow calf",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "6",
- "strength_level": "2",
- "id": "2310",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "He rules the",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rooster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2312",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Swine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porker.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pig",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2317",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hog.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2318",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Porcine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2319",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has a certain bovine aroma.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Piglet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2320",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this farmer might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vasquen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2333",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Taria",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2336",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fayeth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2342",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "120",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "71",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "68"
- },
- {
- "examine": "A horror from the ocean depths...",
- "combat_style": "1",
- "melee_animation": "1343",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "70",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "68"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Rimmington.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A citizen of Rimmington.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Anja",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2684",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2685",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2686",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2687",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "10",
- "id": "2688",
- "aggressive": "true",
- "range_level": "20",
- "attack_level": "20"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "water_npc": "true",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3070",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3071",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "3072",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A cold-hearted elemental warrior.",
- "slayer_task": "48",
- "melee_animation": "451",
- "range_animation": "451",
- "attack_speed": "4",
- "defence_animation": "404",
- "weakness": "9",
- "slayer_exp": "59",
- "magic_animation": "451",
- "death_animation": "843",
- "name": "Ice warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "59",
- "strength_level": "47",
- "id": "3073",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,30,40,20,10,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3074",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3079",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3080",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3089",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mighty warrior",
- "melee_animation": "7048",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
- "id": "3090",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "17"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3091",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The book moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Flying Book",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3094",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Entrance Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3097",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Telekinetic Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alchemy Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3099",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchantment Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Graveyard Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3101",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guardian of the arena.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rewards Guardian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3103",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3104",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3105",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Equipment that moves by itself!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Charmed Warrior",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3106",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This guard looks rather drunk and has beer stains down his armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3109",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Balloon Animal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3121",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I saw the witchdoctor",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Balloon Animal",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like he's seen the inside of a few tombs.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Simon Templeton",
- "defence_level": "1",
- "safespot": "0",
- "lifepoints": "12",
- "strength_level": "1",
- "id": "3123",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to be blocked.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Furnace grate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "3135",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3150",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of bugs.",
- "slayer_task": "42",
- "combat_style": "1",
- "melee_animation": "1584",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "25",
- "magic_animation": "0",
- "death_animation": "1585",
- "name": "Harpie Bug Swarm",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3153",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "Bill Teach the pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bill Teach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3155",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3170",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3171",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3174",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3175",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3176",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3177",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3178",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3179",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3180",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3181",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3182",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3183",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3184",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3185",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "3186",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "3187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3188",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3189",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3190",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3191",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3192",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3193",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3194",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Arghh matey!",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "death_animation": "9055",
- "name": "Pirate",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "40",
- "id": "3195",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "melee_animation": "400",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "3196",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3198",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3199",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "51",
- "name": "Killerwatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "attack_speed": "3",
- "id": "3201",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "slayer_exp": "51",
- "name": "Killerwatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "1",
- "attack_speed": "3",
- "id": "3202",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A very small storm!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Storm Cloud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3203",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very small storm!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Storm Cloud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mourner",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3219",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "3220",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Loves mining.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3221",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "386",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "3228",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "0",
- "range_animation": "2075",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3229",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "395",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "3230",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3231",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for threats to the city.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3232",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for threats to the city.",
- "melee_animation": "422",
- "range_animation": "426",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "1",
- "id": "3233",
- "clue_level": "1",
- "range_level": "13",
- "attack_level": "1"
- },
- {
- "examine": "An old gardener.",
- "melee_animation": "433",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gardener",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "4",
- "id": "3234",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "He's learning a trade.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apprentice workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3235",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A busy workman",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3236",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Cuffs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3237",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Rusty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3239",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Jeff",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "3240",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3241",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "3242",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "27",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "1",
- "id": "3243",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "16",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3244",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A practicer of dark arts.",
- "combat_style": "2",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "16",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3245",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3264",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3265",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3266",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "470,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3267",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3268",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3269",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3270",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3271",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3272",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3273",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3274",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A dwarven worker.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Dwarf",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "3275",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3276",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3277",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A member of the Black Guard",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Black Guard",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "3278",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "slayer_exp": "16",
- "name": "Black Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3279",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks busy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Engineering assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3280",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's building a cannon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Engineer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3282",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bushy tail!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squirrel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3283",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3286",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3288",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3293",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3294",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf who looks after the mining guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3295",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A graceful bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swan",
- "defence_level": "1",
- "safespot": null,
- "water_npc": true,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3296",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeps this magic area tidy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sweeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3298",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm gonna make him an offer he can't refuse.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Godfather",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3304",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Guardian of the market gate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gatekeeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3307",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Converts grass to beef.",
- "slayer_task": "20",
- "melee_animation": "5849",
- "range_animation": "5849",
- "combat_audio": "369,371,370",
- "attack_speed": "5",
- "defence_animation": "5850",
- "weakness": "8",
- "slayer_exp": "8",
- "magic_animation": "5849",
- "death_animation": "5851",
- "name": "Cow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "3309",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Tanglefoot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "102",
- "strength_level": "1",
- "id": "3313",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An animated shrub.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "name": "Baby tanglefoot",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "1",
- "id": "3319",
- "range_level": "41",
- "attack_level": "1"
- },
- {
- "examine": "An aggressive bush.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "name": "Baby tanglefoot",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "1",
- "id": "3320",
- "range_level": "41",
- "attack_level": "1"
- },
{
"examine": "Likes to cook with mushrooms.",
"melee_animation": "0",
@@ -200403,4665 +71566,6 @@
"range_level": "1",
"attack_level": "1"
},
- {
- "examine": "Rather more tired than most.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jeremy Clerksin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3327",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks a little green around the gills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barfy Bill",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3331",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's made of pure fire.",
- "attack_speed": "6",
- "magic_level": "300",
- "respawn_delay": "25",
- "name": "Cavemouth",
- "defence_level": "500",
- "safespot": null,
- "lifepoints": "1000",
- "strength_level": "1500",
- "id": "3334",
- "aggressive": "true",
- "bonuses": "126,98,86,297,311,304,319,13,284,30,0,0,0,0,0",
- "range_level": "300",
- "attack_level": "200"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3348",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3349",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "combat_audio": "511,513,512",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "White Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "53",
- "strength_level": "1",
- "id": "3350",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to like wearing black.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Dave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3378",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Vermin from the underworld.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hell-Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3382",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3389",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks short and grumpy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3390",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Wartface",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3391",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Bentnoze",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3392",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He provides new players with useful information.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3393",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He seems to like wearing black.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Dave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rutmir's assistant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3404",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A small ice demon.",
- "slayer_task": "46",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Icefiend",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "3406",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "7218",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7219",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3407",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He tries to keep order around here.",
- "melee_animation": "583",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7213",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3408",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3409",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3410",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3411",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "A sentient plant - ready",
- "melee_animation": "7246",
- "range_animation": "0",
- "poisonous": "true",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7249",
- "name": "Wild jade vine",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "185",
- "strength_level": "65",
- "id": "3412",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "More like a goblin cooked.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3414",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3416",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3418",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ogre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3419",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a highly amusing hat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mogre Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3420",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice claw!",
- "melee_animation": "3428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3430",
- "name": "Crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "3421",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Not the most beautiful fish in the sea.",
- "melee_animation": "3433",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "3422",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "death_animation": "3435",
- "name": "Mudskipper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "melee_animation": "3433",
- "strength_level": "1",
- "id": "3423",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3434"
- },
- {
- "death_animation": "3430",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "18",
- "melee_animation": "3428",
- "strength_level": "1",
- "id": "3424",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "3429"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3425",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3426",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Red Fantail.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3427",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3431",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3432",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An Angel Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3433",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3434",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3435",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Harlequin Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3436",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3437",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3438",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Discus Fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3444",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shoal of Neon Tetra.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3445",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3449",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3450",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Lumbridge Guide",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "3451",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skrach Uglogwee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3463",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large boisterous bird",
- "slayer_task": "7",
- "melee_animation": "6800",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6801",
- "name": "Jubbly bird",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "6",
- "id": "3476",
- "aggressive": "true",
- "range_level": "8",
- "attack_level": "6"
- },
- {
- "name": "King Awowogei",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "328",
- "strength_level": "1",
- "id": "3478",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Culinaromancer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "140",
- "strength_level": "1",
- "id": "3491",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "melee_animation": "3501",
- "respawn_delay": "60",
- "defence_animation": "3500",
- "death_animation": "3503",
- "name": "Agrith-Na-Na",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3493",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1750",
- "respawn_delay": "60",
- "defence_animation": "1751",
- "death_animation": "1752",
- "name": "Flambeed",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "1",
- "id": "3494",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Karamel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3495",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "3507",
- "respawn_delay": "60",
- "defence_animation": "3505",
- "death_animation": "3510",
- "name": "Dessourt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "140",
- "strength_level": "1",
- "id": "3496",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Deadly AND fruity!",
- "melee_animation": "1341",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "139",
- "strength_level": "48",
- "id": "3497",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3498",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3500",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "1341",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Gelatinnoth Mother",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "3502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Chronicler and regaler of your piratical exploits.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3509",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "5783",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3521",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3522",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3523",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3524",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "death_animation": "5798",
- "name": "Vampyre Juvinate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "melee_animation": "5783",
- "strength_level": "1",
- "id": "3525",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Vampyre Juvinate",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "3526",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A Juvinate vampyre",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Held Vampyre Juvinate",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "1",
- "id": "3527",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "He looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3531",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "She looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3532",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "death_animation": "6781",
- "name": "Vampyre Juvenile",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "6276",
- "strength_level": "1",
- "id": "3533",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "He looks really hungry!",
- "slayer_task": "86",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held Vampyre Juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "3534",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Juvinate",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "3577",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "Is it a sheep?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "49",
- "name": "Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "1",
- "id": "3583",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No spider could grow that big! It's unrealistic!",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Huge spider",
- "defence_level": "72",
- "safespot": null,
- "lifepoints": "122",
- "strength_level": "1",
- "id": "3585",
- "aggressive": "true",
- "range_level": "72",
- "attack_level": "1"
- },
- {
- "examine": "Big, ugly, and smelly.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "magic_level": "27",
- "respawn_delay": "25",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Rantz",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "27",
- "id": "3587",
- "aggressive": "true",
- "bonuses": "15,15,10,20,40,15,50,50,50,20,50,58,0,0,0",
- "range_level": "27",
- "attack_level": "27"
- },
- {
- "examine": "Its scales seem to be made of steel.",
- "combat_audio": "408,410,409",
- "magic_level": "72",
- "respawn_delay": "35",
- "weakness": "8",
- "slayer_exp": "221",
- "name": "Steel dragon",
- "defence_level": "238",
- "safespot": null,
- "lifepoints": "210",
- "strength_level": "229",
- "id": "3590",
- "aggressive": "true",
- "bonuses": "56,42,104,51,212,115,232,302,331,21,264,100,100,40,0",
- "clue_level": "2",
- "range_level": "185",
- "attack_level": "234"
- },
- {
- "examine": "Arrgh! Look at its pointy teeth!",
- "range_animation": "0",
- "combat_audio": "400,404,403",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Demon",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "107",
- "strength_level": "75",
- "id": "3593",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "weakness": "0",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3599",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "45",
- "attack_level": "35"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "50",
- "id": "3600",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "slayer_task": "86",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "weakness": "7",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3601",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A large snake that thrives in swamps.",
- "melee_animation": "3538",
- "range_animation": "3538",
- "combat_audio": "3609,3608,3610",
- "attack_speed": "5",
- "defence_animation": "3539",
- "magic_animation": "3538",
- "death_animation": "3540",
- "name": "Swamp snake",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "121",
- "strength_level": "33",
- "id": "3602",
- "bonuses": "10,10,10,10,10,10,1,10,6,10,6,4,0,0,0",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3603",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3604",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dead swamp snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "3609,3608,3610",
- "strength_level": "1",
- "id": "3605",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm glad I can't see the rest of it!",
- "melee_animation": "3618",
- "range_animation": "3618",
- "magic_level": "80",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3620",
- "name": "Tentacle",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "80",
- "id": "3618",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I'm glad I can't see the rest of it!",
- "melee_animation": "3731",
- "range_animation": "0",
- "attack_speed": "10",
- "magic_level": "80",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3733",
- "name": "Head",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "85",
- "id": "3619",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "85"
- },
- {
- "melee_animation": "3731",
- "attack_speed": "10",
- "respawn_delay": "60",
- "defence_animation": "3732",
- "death_animation": "3733",
- "name": "Head",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "1",
- "id": "3620",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "3622",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A high-ranking Vyrewatch",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fyiona Fray",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little on the cross side!",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Angry bear",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3645",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "6376",
- "range_animation": "0",
- "combat_audio": "496,498,497",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Angry unicorn",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3646",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Angry giant rat",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3647",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a little on the cross side!",
- "melee_animation": "6185",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Angry goblin",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3648",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "AHHHHH!",
- "melee_animation": "3812",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3813",
- "name": "Fear reaper",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
- "id": "3649",
- "range_level": "1",
- "attack_level": "27"
- },
- {
- "examine": "What on RuneScape is that?!?",
- "melee_animation": "3818",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3821",
- "name": "Confusion beast",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "3650",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "A hopeless poor creature.",
- "melee_animation": "3823",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "3827",
- "name": "Hopeless creature",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "3655",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Freshly sheared.",
- "melee_animation": "5341",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "3672",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "3673",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "A young boy handing out flyers.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Leaflet Dropper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3680",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Ulfric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "6118",
- "strength_level": "1",
- "id": "3706",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Eww",
- "slayer_task": "67",
- "melee_animation": "6117",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "50",
- "magic_animation": "0",
- "death_animation": "6115",
- "name": "Brine rat",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "3707",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "A Wilderness fighter of massive repute.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3709",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "3715",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "3726",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cheerful, helpful and optimistic, I'll bet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doomsayer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3777",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "attack_speed": "5",
- "magic_level": "80",
- "respawn_delay": "120",
- "name": "Void Knight",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3782",
- "bonuses": "180,180,180,180,80,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Long legged licker.",
- "melee_animation": "7260",
- "range_animation": "0",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7256",
- "name": "Frog",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3783",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "attack_speed": "0",
- "id": "3784",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "attack_speed": "5",
- "magic_level": "80",
- "respawn_delay": "120",
- "name": "Void Knight",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "200",
- "strength_level": "1",
- "id": "3785",
- "bonuses": "180,180,180,180,80,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3788",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3791",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3793",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3794",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3795",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3796",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3797",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3798",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3799",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3800",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3801",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Novice)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Posts things.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Postie Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3805",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Miss Millicent Miller the Miller of Mill Lane Mill.",
- "name": "Millie Miller",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3806",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Gillie the Milkmaid milks cows. She's udderly fantastic at it.",
- "name": "Gillie Groats",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tally Ho!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Dalbur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Huzzah!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Bleemadge",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Up up and away!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Errdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Up up and away!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Klemfoodle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Gnome Arrow-chucker",
- "combat_style": "1",
- "melee_animation": "190",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome Archer",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "1",
- "id": "3814",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "1"
- },
- {
- "examine": "Yee haa!",
- "melee_animation": "3969",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "196",
- "name": "Gnome Driver",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "3815",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The cruel tortoise trainer. Boo!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trainer Nacklepen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A large tortoise.",
- "melee_animation": "3960",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "3962",
- "name": "Tortoise",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "3819",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An aquatic troll.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sea troll",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "3840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An aquatic troll.",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sea troll",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "3843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "The mother of all sea trolls!",
- "melee_animation": "3991",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "3993",
- "name": "Sea Troll Queen",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "428",
- "strength_level": "65",
- "id": "3847",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "His bark's worse than his blight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Carpenter Kjallak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3916",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit seedy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer Fromund",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "3941",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the entrance to the dungeons.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3942",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "75",
- "name": "Basilisk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Demon butler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "400,404,403",
- "strength_level": "1",
- "id": "4243",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Head of the servants' guild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chief servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4245",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She smells unpleasantly of chemicals.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Taxidermist",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4246",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fancy businessman with a mighty fine hat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Estate agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4247",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Someone has to get rid of all the stone they dug Keldagrim out of.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stonemason",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4248",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He changes the shape of wood.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "facing_booth": "true",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sawmill operator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4250",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She has green fingers. (Not literally.)",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Garden supplier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4257",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven guard.",
- "slayer_task": "29",
- "melee_animation": "99",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "102",
- "name": "Guard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "4258",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4259",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4260",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4261",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4262",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4263",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4264",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4265",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4266",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4267",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4268",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4269",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4270",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4271",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4272",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4273",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4274",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4275",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4276",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Animated bronze armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Bronze Armour",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "4278",
- "bonuses": "3,3,3,3,1,3,1,3,3,3,3,8,10,8,3",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "Animated iron armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Iron Armour",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "16",
- "id": "4279",
- "bonuses": "6,6,6,6,2,6,6,6,6,6,6,2,25,2,3",
- "range_level": "1",
- "attack_level": "16"
- },
- {
- "examine": "Animated steel armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Steel Armour",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "32",
- "id": "4280",
- "bonuses": "10,10,10,10,4,10,10,10,10,10,10,2,22,2,3",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "Animated black armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Black Armour",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "40",
- "id": "4281",
- "bonuses": "15,15,15,15,5,15,6,15,15,16,15,5,27,5,3",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Animated mithril armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Mithril Armour",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "55",
- "id": "4282",
- "bonuses": "20,20,20,20,20,20,8,20,20,20,20,5,31,5,3",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Animated adamant armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Adamant Armour",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "99",
- "strength_level": "65",
- "id": "4283",
- "bonuses": "25,25,25,25,25,25,12,25,25,25,25,5,35,5,3",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Animated rune armour.",
- "melee_animation": "386",
- "range_animation": "386",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "388",
- "weakness": "7",
- "magic_animation": "386",
- "death_animation": "4167",
- "name": "Animated Rune Armour",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "118",
- "strength_level": "75",
- "id": "4284",
- "bonuses": "30,30,30,30,30,30,16,30,25,30,30,5,39,5,3",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "4291",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "4292",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "He looks fair and reliable.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ref",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4300",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4301",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4302",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4303",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4304",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4305",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4306",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard for the humans against monster group.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4307",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4308",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4309",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4310",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4311",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4316",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4318",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Member",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4320",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "H.A.M. Deacon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4329",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4336",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's all white by me.",
- "slayer_task": "5",
- "melee_animation": "4915",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4917",
- "name": "Albino bat",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "4345",
- "range_level": "1",
- "attack_level": "31"
- },
- {
- "examine": "A flying blood sucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "attack_speed": "10",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Giant mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "4347",
- "range_level": "1",
- "attack_level": "63"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4353",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4354",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4355",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4356",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A horrible, emaciated ape like creature with beady red eyes.",
- "slayer_task": "17",
- "melee_animation": "4234",
- "range_animation": "4234",
- "attack_speed": "4",
- "magic_level": "80",
- "respawn_delay": "20",
- "defence_animation": "4232",
- "weakness": "6",
- "slayer_exp": "55",
- "magic_animation": "4234",
- "death_animation": "4233",
- "name": "Cave horror",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "77",
- "id": "4357",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Patchy the pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Patchy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4359",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very flamboyant pirate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fancy Dan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4361",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I can't wait to buy from a guy with Honest in his name...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Honest Jimmy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4362",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A colourful bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Parrot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4373",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A retired RuneScape security guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Security Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4375",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "69",
- "id": "4381",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "69",
- "id": "4382",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A bony ghost.",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "6",
- "defence_animation": "404",
- "slayer_exp": "60",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Ankou",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "66",
- "strength_level": "74",
- "id": "4383",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "weakness": "9",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4395",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "4396",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "38",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "38",
- "id": "4397",
- "aggressive": "true",
- "bonuses": "5,20,15,3,10,20,10,10,20,15,23,25,15,25,10",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "38",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "38",
- "id": "4398",
- "aggressive": "true",
- "bonuses": "20,25,10,20,25,10,10,11,0,0,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Big Cow-like... But cows don't have serpent tails!",
- "melee_animation": "4271",
- "attack_speed": "5",
- "magic_level": "45",
- "spell_id": "7",
- "respawn_delay": "74",
- "defence_animation": "4273",
- "slayer_exp": "50",
- "magic_animation": "4272",
- "death_animation": "4270",
- "name": "Catablepon",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "58",
- "id": "4399",
- "aggressive": "true",
- "bonuses": "50,45,50,40,45,20,30,25,33,25,25,20,20,40,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "I think this spider has been genetically modified.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "defence_animation": "5328",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Giant spider",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "45",
- "id": "4400",
- "aggressive": "true",
- "bonuses": "19,21,19,62,45,51,54,63,60,18,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "melee_animation": "6249",
- "respawn_delay": "60",
- "defence_animation": "6250",
- "death_animation": "6251",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "4401",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "slayer_task": "58",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "weakness": "7",
- "slayer_exp": "10",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "10",
- "id": "4404",
- "bonuses": "8,8,10,8,8,10,8,8,8,10,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "4405",
- "bonuses": "11,11,13,11,11,13,11,11,11,13,11,11,11,11,11",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "4266",
- "range_animation": "4266",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "4267",
- "slayer_exp": "22",
- "magic_animation": "4266",
- "death_animation": "4265",
- "name": "Minotaur",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "4406",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4407",
- "bonuses": "3,3,3,3,3,3,3,3,3,3,3,3,3,3,3",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "16",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4408",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "7",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4409",
- "bonuses": "6,6,6,6,6,6,6,6,6,6,6,6,6,6,6",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4410",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4411",
- "bonuses": "10,10,10,10,10,10,10,10,10,10,10,10,10,10,10",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4412",
- "bonuses": "8,8,8,8,8,8,8,8,8,8,8,8,8,8,8",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4300",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4301",
- "slayer_exp": "112",
- "death_animation": "4302",
- "name": "Gorak",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "1",
- "id": "4418",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A highly enlightened being.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cosmic Being",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4419",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Horseplay.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Centaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4438",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A noble creature!",
- "melee_animation": "6376",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6377",
- "name": "Stag",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "4440",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Twiggy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wood Dryad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4441",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fairy ring maintenance division.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Fixit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4455",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4457",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4458",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She works in the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4459",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very angry nymph.",
- "melee_animation": "94",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "97",
- "name": "Tree spirit",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "9",
- "id": "4470",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Who's your mummy?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guardian mummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4476",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4479",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4480",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4481",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4482",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4483",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4484",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4485",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4486",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4487",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4488",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4489",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4490",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4491",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4492",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "General Wartface",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4494",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "4499",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Does she really exist?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Lady",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4502",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He reminds me of my old mathematics teacher.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Numerator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4503",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The master of accomplishment.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4504",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He knows what is possible.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Perceptive",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4505",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Luck is probably on his side.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ethereal Fluke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's like looking in the mirror.",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Me",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "4509",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "It's like looking in the mirror.",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Me",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "171",
- "strength_level": "60",
- "id": "4510",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Spiritual leader of the Moonclan.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Oneiromancer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4511",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The craziest house I ever did see!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "House",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How does it see where to sweep?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchanted Broom",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'm not sure if it's actually doing anything of use.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Enchanted Bucket",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4524",
- "range_level": "1",
- "attack_level": "1"
- },
{
"melee_animation": "4388",
"attack_speed": "5",
@@ -205069,15 +71573,16 @@
"defence_animation": "4384",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4527",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,90,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
+ "attack_level": "95"
},
{
"melee_animation": "4388",
@@ -205086,27056 +71591,17 @@
"defence_animation": "4384",
"death_animation": "4389",
"name": "Suqah",
- "defence_level": "1",
+ "defence_level": "95",
"safespot": null,
"lifepoints": "105",
- "strength_level": "1",
+ "strength_level": "95",
"id": "4528",
"aggressive": "true",
"clue_level": "2",
+ "bonuses": "0,0,0,0,0,50,70,70,90,50,0,0,0,0,0",
"range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4529",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4385",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4530",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4385",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4531",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4532",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4388",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4384",
- "death_animation": "4389",
- "name": "Suqah",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "id": "4533",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I always wondered what that job description actually meant...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cabin boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4539",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The High Priest has been transformed into an avatar of Bandos.",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Bentley",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "214",
- "strength_level": "55",
- "id": "4540",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "A stickler for hygiene in the kitchen.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Beefy' Burns",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4541",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A keen-eyed lookout with a telescope.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Eagle-eye' Shultz",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4542",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "First mate to Captain Bentley.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "First mate 'Davey-boy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4543",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A pirate through and through.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Picarron' Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4545",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Jake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "4546",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "He got his name from his favourite hobby. Reading about beds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bedread the bold",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4547",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Wilson",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "4548",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Nobody really knows why he's called Tommy 2-times...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tommy 2-times",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Don't look him straight in the eyes. He'll eat you alive!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Murky Pat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4550",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice beard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Sails",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4551",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is he looking at me?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Beedy-eye' Jones",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4554",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Yes",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jenny Blade",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4555",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A low-down",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Lecherous' Lee",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4556",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Apparently his nickname comes from his fondness for jam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Sticky' Sanders",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4557",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4564",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This person is working on the site.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4565",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4566",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Upon examining the examiner you examine it is indeed an examiner!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Examiner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4567",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Must be hard at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Researcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4568",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He makes pots.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Generic Diplomat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4579",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's very diplomatic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Gimblewap",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4580",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Peaceful man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Spanfipple",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4581",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Peaceful man!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ambassador Ferrnook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorrn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4589",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common woman.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mimm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4590",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Your common man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portobello",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4593",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome pilot off duty",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Ninto",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4594",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome pilot off duty",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Daerkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4595",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks alert and ready for action.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard Vemmeldo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4600",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4603",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4604",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4605",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A generic evil henchman.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Fortress Guard",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "26",
- "id": "4606",
- "range_level": "1",
- "attack_level": "26"
- },
- {
- "examine": "A witch's black cat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black Cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4607",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4608",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Swine.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Saboteur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4611",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4633",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4634",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4635",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4636",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "4637",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4638",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4639",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4640",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little warrior.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome soldier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4642",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works evil magic.",
- "start_gfx": "93",
- "combat_style": "2",
- "melee_animation": "810",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "6",
- "end_gfx": "95",
- "respawn_delay": "60",
- "defence_animation": "425",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "12",
- "strength_level": "2",
- "id": "4659",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "94",
- "attack_level": "5"
- },
- {
- "examine": "He works evil magic.",
- "start_gfx": "96",
- "combat_style": "2",
- "melee_animation": "810",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "magic_level": "22",
- "end_gfx": "98",
- "respawn_delay": "60",
- "defence_animation": "425",
- "magic_animation": "711",
- "death_animation": "836",
- "name": "Dark wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "17",
- "id": "4660",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "17"
- },
- {
- "examine": "He works evil magic.",
- "combat_style": "2",
- "combat_audio": "511,513,512",
- "attack_speed": "4",
- "magic_level": "15",
- "respawn_delay": "20",
- "defence_animation": "404",
- "magic_animation": "711",
- "death_animation": "9055",
- "name": "Dark wizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "4661",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "98",
- "attack_level": "1"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4685",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4686",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "He's got icicles in his beard.",
- "slayer_task": "47",
- "melee_animation": "4672",
- "range_animation": "0",
- "combat_audio": "449,451,450",
- "attack_speed": "5",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "70",
- "magic_animation": "0",
- "death_animation": "4673",
- "name": "Ice giant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "40",
- "id": "4687",
- "aggressive": "true",
- "bonuses": "29,29,29,0,0,0,3,2,0,0,0,31,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A flea-infested black market trader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trader Sven",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4716",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flea-infested",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4717",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flea-infested",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4719",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4720",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4721",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4722",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4723",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4724",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4725",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4726",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cowardly mage.",
- "magic_level": "90",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4733",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4734",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4735",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4736",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4737",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4738",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks pale",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch citizen",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4741",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4746",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4748",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4749",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4750",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4751",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4752",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4753",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A poor street urchin!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "A Meiyerditch child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4755",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4756",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4757",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This citizen looks dirty and tired!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Meiyerditch miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4759",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Some rubbish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4765",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like it's got fleas!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stray dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4766",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A smelly cat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4768",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre; a guard for the mining area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Juvinate guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4772",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre; a guard for the mining area.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Juvinate guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4773",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4774",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "6276",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4775",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre; seems to be a servant.",
- "melee_animation": "5783",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4776",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "An initiate juvenile vampyre.",
- "melee_animation": "5783",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4777",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4778",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A juvenile vampyre.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6781",
- "name": "Held vampyre juvenile",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "4779",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "An initiate juvenile vampyre; seems to be a servant.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5798",
- "name": "Held vampyre juvinate",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "4780",
- "range_level": "44",
- "attack_level": "1"
- },
- {
- "examine": "An enraged vampyre!",
- "slayer_task": "86",
- "melee_animation": "6016",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6031",
- "name": "Angry vampyre",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "4789",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "name": "Vanstrom Klause",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "155",
- "strength_level": "1",
- "id": "4793",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Not as strong as Thok.",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Vanstrom Klause",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "90",
- "id": "4796",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "90"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4805",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4806",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4807",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4808",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4810",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4811",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4812",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4813",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4814",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4815",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4816",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4817",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4818",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4819",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An evil",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4820",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4821",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4822",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4823",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Vyrewatch",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4824",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "50",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "1",
- "id": "4825",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "4826",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "54",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "4827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A thirsty-looking",
- "melee_animation": "6783",
- "range_animation": "0",
- "attack_speed": "6",
- "magic_level": "56",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "6861",
- "name": "Vyrewatch",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "1",
- "id": "4828",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4829",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4830",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4831",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4832",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4833",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4834",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4835",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4836",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4837",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4838",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4839",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4840",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4841",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4842",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4843",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4844",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A very high-ranking vampyre.",
- "melee_animation": "7435",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "7524",
- "name": "Flying female vampire",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "4845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Flying female vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4847",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Flying female vampire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4848",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4849",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4850",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4851",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "4852",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Her knives tickle Thok.",
- "magic_animation": "0",
- "name": "Holgart",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4868",
- "aggressive": "true",
- "range_level": "90",
- "attack_level": "1",
- "defence_animation": "0"
- },
- {
- "examine": "Not Thok's pretty lass.",
- "magic_level": "90",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Fisherman",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "1",
- "id": "4870",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of aquatic evil.",
- "melee_animation": "4829",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4830",
- "name": "Slug Prince",
- "defence_level": "37",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "37",
- "id": "4890",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "37"
- },
- {
- "examine": "An extremely vicious lobster.",
- "slayer_task": "71",
- "melee_animation": "6265",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6267",
- "name": "Giant Lobster",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "29",
- "id": "4893",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "29"
- },
- {
- "examine": "A rather nasty looking crustacean.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sea slug",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4894",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "60",
- "defence_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "1",
- "id": "4898",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cordero looks ready to teach you how to cook.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cooking Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4899",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cadmus, looking a little bit crafty.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crafting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4900",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Finlay, mending a crayfish cage.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fishing Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4901",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Monlum, surveying the rocks.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mining Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Feoras looks a bit fiery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Wilfred, a chip off the old block.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Woodcutting Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4906",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Barb, ready to teach you about banking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4907",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His motives are see-through.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fritz the Glassblower",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4909",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An elemental rock.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elemental rock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4911",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "4920",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "A nasty overgrown rodent.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "30",
- "defence_animation": "4934",
- "weakness": "9",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Giant crypt rat",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "50",
- "id": "4921",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4922",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4923",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4924",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4925",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "4926",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "7",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "7",
- "id": "4927",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "7"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "4928",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "4929",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4930",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "5",
- "id": "4931",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "They'll eat anything!",
- "melee_animation": "5341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5343",
- "name": "Billy Goat",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "4932",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "21",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4933",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "death_animation": "5343",
- "name": "Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "21",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4934",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "death_animation": "5343",
- "name": "Billy Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "28",
- "melee_animation": "5341",
- "strength_level": "1",
- "id": "4935",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5342"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "4936",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "A dirty rat.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Dungeon rat",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "4937",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "4938",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Angry giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "4939",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little on the cross side!",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Angry giant rat",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4940",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "It's one of Iban's pet vermin.",
- "slayer_task": "67",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Blessed giant rat",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "4941",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "4942",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "4934",
- "death_animation": "4935",
- "name": "Giant rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "4943",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Overgrown vermin.",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4944",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "Overgrown vermin.",
- "slayer_task": "67",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "weakness": "9",
- "name": "Giant rat",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "26",
- "strength_level": "20",
- "id": "4945",
- "aggressive": "true",
- "bonuses": "19,15,15,34,36,38,33,31,30,14,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "21"
- },
- {
- "examine": "Trollish.",
- "slayer_task": "83",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "My Arm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old sailor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Barnaby",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4962",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a leprechaun sunbathing on a mountain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool Leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4965",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mountain-dwelling bird. Cute",
- "slayer_task": "7",
- "melee_animation": "5031",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5033",
- "name": "Baby Roc",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "40",
- "id": "4971",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "A very",
- "slayer_task": "7",
- "melee_animation": "5024",
- "range_animation": "5025",
- "magic_level": "55",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5027",
- "name": "Giant Roc",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "55",
- "id": "4972",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "She looks like she's been down here a long time.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Female slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4977",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4989",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4990",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4991",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mercenary",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4992",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4993",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4994",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4995",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4996",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4997",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "He looks a bit aggressive.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "4998",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "4999",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5000",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5001",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5002",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An apprentice.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5026",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tired old wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5027",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An egg launcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Egg launcher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5028",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slightly more approachable barbarian.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Commander Connad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5029",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks pretty mean.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Cain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A stressed out barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Paldo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5031",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Pendron",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5032",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Pierreb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5033",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A barbarian private.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Private Paldon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5034",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's keeping a close eye on that nearby door.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Sambur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5039",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What on RuneScape is that?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Fighter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5040",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Shooty-shooty.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5041",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's making a run for it!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Runner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5042",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A nasty piece of work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penance Healer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5043",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not as strong as Thok.",
- "melee_animation": "401",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Jeff",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5048",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Time to run away...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shark",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5067",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It blends in very well with its surroundings.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tropical wagtail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5072",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This bird obviously doesn't believe in subtlety.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crimson swift",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5073",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Best served ice cold.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cerulean twitch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5074",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Actually",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden warbler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5075",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nothing much to get in a flap about.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Copper longtail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5076",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Chinchompa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "5079",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It looks fluffy and cute; it's probably deadly.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "2",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5183",
- "name": "Carnivorous chinchompa",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "2",
- "id": "5080",
- "range_level": "2",
- "attack_level": "2"
- },
- {
- "examine": "Wild.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ferret",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5081",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A black warlock. The air seems to distort wherever it passes.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black warlock",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5082",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a snowy knight butterfly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snowy knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5083",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sapphire glacialis. It doesn't look as pretentious as its name sounds.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sapphire glacialis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5084",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a ruby harvest butterfly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ruby harvest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5085",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Curls up into a ball to protect itself from attack.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Prickly kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5086",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Now that's a big overbite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sabre-toothed kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5087",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It uses its tail to hunt and skewer fish.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barb-tailed kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5088",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "That's a mean looking set of claws.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wild kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5089",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Ha! Thok much stronger.",
- "melee_animation": "395",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Gyr Falcon",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5097",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "It seems to be on a permanent sugar rush.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spotted kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5098",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Quieter than a ninja mouse with slippers on.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dark kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5099",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Now you see it; now you don't.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dashing kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5100",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's just like a big, white, furry, deadly can opener.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "respawn_delay": "10",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Sabre-toothed kyatt",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "25",
- "id": "5103",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "If you tried to ride that, you'd just impale yourself!",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Spined larupia",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "15",
- "id": "5104",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Get in a graahk's way and you're going to know about it... however briefly.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "5234",
- "name": "Horned graahk",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "25",
- "id": "5105",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "It's just like a big, white, furry, deadly can opener.",
- "melee_animation": "5228",
- "range_animation": "5228",
- "attack_speed": "5",
- "defence_animation": "404",
- "magic_animation": "5228",
- "death_animation": "9055",
- "name": "null",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "20",
- "id": "5106",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "He must be good at hunting; even his hair blends in with the surroundings.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hunting expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5112",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "With all the furs",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hunting expert",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5113",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy but kind of cute.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Orange salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5114",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy but certainly striking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Red salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slightly slimy and somewhat menacing.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Black salamander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very slimy and generally disgusting.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Swamp lizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Desert eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5130",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jungle eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5131",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Polar eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5132",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to be protecting the nest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5133",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "5304",
- "strength_level": "1",
- "id": "5137",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "5305"
- },
- {
- "examine": "Now",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's playing both sides!",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "75",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Double agent",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "75",
- "id": "5144",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Double agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "5145",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How cute!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Li'l lamb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The black sheep of the family.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lamb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5162",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5163",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5166",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This goat belongs to the mountain camp people.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain Goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5167",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "5168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "1",
- "id": "5169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "White and shaggy.",
- "melee_animation": "5338",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5337",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5336",
- "name": "Ram",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "5170",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "This beast doesn't need climbing boots.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mountain goat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5171",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Freshly shorn.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5172",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lovely thick wool.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Golden sheep",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5173",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5176",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5181",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5184",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Seems intelligent... for an ogre.",
- "slayer_task": "64",
- "combat_style": "2",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Ogre shaman",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "371",
- "strength_level": "65",
- "id": "5187",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "It's Nial",
- "melee_animation": "8946",
- "range_animation": "0",
- "magic_level": "58",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8948",
- "name": "Saff Waldon",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "165",
- "strength_level": "58",
- "id": "5188",
- "aggressive": "true",
- "range_level": "58",
- "attack_level": "58"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5195",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5196",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A wizard.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5197",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She needs to work out before facing Thok.",
- "melee_animation": "7041",
- "range_animation": "0",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Alice's husband",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5204",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Run away! Run away!",
- "melee_animation": "5411",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5412",
- "name": "Penance Queen",
- "defence_level": "132",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "260",
- "id": "5247",
- "aggressive": "true",
- "range_level": "116",
- "attack_level": "260"
- },
- {
- "examine": "What's it looking at?",
- "melee_animation": "5092",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5093",
- "name": "Queen spawn",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "450",
- "strength_level": "60",
- "id": "5248",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "He looks embarrassed",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Errdo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5249",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mounted lancer.",
- "slayer_task": "70",
- "melee_animation": "7584",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust rider",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "54",
- "id": "5251",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "A mounted archer.",
- "slayer_task": "70",
- "melee_animation": "5451",
- "range_animation": "5451",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust rider",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "40",
- "id": "5252",
- "aggressive": "true",
- "range_level": "54",
- "attack_level": "40"
- },
- {
- "examine": "A huge scarab beast.",
- "slayer_task": "70",
- "melee_animation": "5457",
- "range_animation": "0",
- "magic_level": "62",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5456",
- "name": "Giant scarab",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "571",
- "strength_level": "62",
- "id": "5253",
- "aggressive": "true",
- "range_level": "62",
- "attack_level": "62"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5258",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5260",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Sophanem.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sophanem guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5270",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Sophanem.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sophanem guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5274",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard of Menaphos.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Menaphite guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5277",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Flings annoying splinters at Thok.",
- "melee_animation": "426",
- "range_animation": "426",
- "magic_level": "80",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Osman",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "80",
- "id": "5285",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5310",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5311",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5312",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "5313",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5314",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5315",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5316",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5317",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5318",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5319",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "15"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5320",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5321",
- "bonuses": "12,20,20,20,20,20,20,12,12,20,20,20,20,20,20",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Dead man walking.",
- "melee_animation": "5571",
- "range_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "magic_animation": "5571",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "19",
- "id": "5322",
- "aggressive": "true",
- "bonuses": "21,19,20,42,44,34,41,38,40,21,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5323",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5324",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5325",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5326",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5327",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5328",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5329",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5330",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5331",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5485",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "slayer_task": "75",
- "melee_animation": "5487",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5354",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Undead one",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "5356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "32"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5357",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "The animated dead; one of Rashiliyia's minions.",
- "slayer_task": "93",
- "melee_animation": "5571",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5575",
- "name": "Undead one",
- "defence_level": "33",
- "safespot": null,
- "lifepoints": "47",
- "strength_level": "33",
- "id": "5358",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "33"
- },
- {
- "examine": "A giant skeleton.",
- "slayer_task": "75",
- "melee_animation": "5499",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "5359",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "It appears to be intelligent and savage.",
- "slayer_task": "41",
- "melee_animation": "91",
- "range_animation": "91",
- "combat_audio": "408,410,409",
- "attack_speed": "4",
- "magic_level": "168",
- "defence_animation": "89",
- "weakness": "3",
- "slayer_exp": "183",
- "magic_animation": "91",
- "death_animation": "92",
- "name": "Brutal green dragon",
- "defence_level": "168",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "175",
- "strength_level": "168",
- "id": "5362",
- "aggressive": "true",
- "clue_level": "2",
- "range_level": "0",
- "attack_level": "268"
- },
- {
- "weakness": "7",
- "examine": "It appears to be intelligent and savage.",
- "name": "Confused barbarian",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "175",
- "strength_level": "167",
- "attack_speed": "6",
- "id": "5364",
- "range_level": "167",
- "attack_level": "70"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5568",
- "range_animation": "5568",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "magic_animation": "5568",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "5375",
- "bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5568",
- "range_animation": "5568",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "magic_animation": "5568",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "5376",
- "bonuses": "15,25,25,25,25,25,25,15,15,25,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "25"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5377",
- "bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "5378",
- "bonuses": "15,25,28,28,25,28,28,15,15,28,25,25,25,25,25",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5379",
- "bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Examine not added",
- "melee_animation": "5578",
- "range_animation": "5578",
- "combat_audio": "931,923,922",
- "attack_speed": "5",
- "respawn_delay": "30",
- "defence_animation": "5579",
- "slayer_exp": "30",
- "magic_animation": "5578",
- "death_animation": "5580",
- "name": "Zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "5380",
- "bonuses": "35,45,45,45,45,45,45,35,35,45,45,45,45,45,45",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "Animated steel armour.",
- "melee_animation": "386",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4167",
- "name": "Animated steel armour",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "5382",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Big and bony, just how I like them.",
- "start_gfx": "2713",
- "melee_animation": "5499",
- "range_animation": "5499",
- "attack_speed": "2",
- "defence_animation": "5489",
- "magic_animation": "5499",
- "death_animation": "5503",
- "name": "Giant skeleton",
- "defence_level": "85",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "95",
- "id": "5384",
- "aggressive": "true",
- "bonuses": "25,25,25,25,25,25,25,25,25,25,25,25,25,25,25",
- "range_level": "1",
- "projectile": "2718",
"attack_level": "95"
},
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "56",
- "strength_level": "1",
- "id": "5393",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5394",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5395",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5396",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5403",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5568",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5567",
- "slayer_exp": "30",
- "death_animation": "5569",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "92",
- "strength_level": "1",
- "id": "5404",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5405",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5406",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5407",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5408",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5409",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "5410",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "How does it move of its own accord?",
- "melee_animation": "5591",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5592",
- "name": "Possessed pickaxe",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "5413",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "How does it move of its own accord?",
- "melee_animation": "5597",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5596",
- "name": "Animated spade",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "5414",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "examine": "A terrifying dog beast.",
- "slayer_task": "82",
- "melee_animation": "5625",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "5628",
- "name": "Terror dog",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "134",
- "strength_level": "47",
- "id": "5417",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "melee_animation": "5625",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "5626",
- "death_animation": "5627",
- "name": "Terror dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "1",
- "id": "5418",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5617",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "5618",
- "death_animation": "5619",
- "name": "Tarn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "5420",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I preferred him when he was human.",
- "melee_animation": "5617",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5619",
- "name": "Mutant tarn",
- "defence_level": "57",
- "safespot": null,
- "lifepoints": "325",
- "strength_level": "57",
- "id": "5421",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "57"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What restful music!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "KGP Agent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5442",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Instructs agility.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agility Instructor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5447",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An army commander.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Army Commander",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5448",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "5725",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "22",
- "id": "5452",
- "aggressive": "true",
- "range_level": "30",
- "attack_level": "22"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Sturdy cold being.",
- "slayer_task": "48",
- "melee_animation": "5724",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "5726",
- "name": "Icelord",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "5455",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An impressive-looking troll.",
- "slayer_task": "83",
- "melee_animation": "5374",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5209",
- "name": "Ice Troll King",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "150",
- "strength_level": "65",
- "id": "5472",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,45,45,45,2000,2000,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5473",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5474",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5475",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "A large ice troll.",
- "melee_animation": "4332",
- "range_animation": "0",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "name": "Ice troll grunt",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "5476",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "An ill-tempered king.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "King Gjuki Sorvott IV",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5478",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A regal cat with an evil glint in its eye.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "HRH Hrafn",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Jatizso's Chancellor.",
- "name": "Thorkel Silkbeard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5480",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Harder than the rocks he sells.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Hring Hring",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5483",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Jatizso's fishmonger.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Flossi Dalksson",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5484",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guy that will sell you armour.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Raum Urda-Stein",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5485",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Jatizso's armour merchant.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Skuli Myrka",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5486",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A rough-looking chef.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Keepa Kettilon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5487",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard on insult duty.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5489",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5490",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5491",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Sorvott's militia.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5492",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Jatizso's many citizens.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Freygerd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5493",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Jatizso's many citizens.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Lensa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5494",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A happy, friendly landlady.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Vanligga Gastfrihet",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5495",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of Jatizso's many citizens.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Sassilik",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5496",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A miner at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5497",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bedraggled-looking tramp.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Eric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5499",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mina guards the mine entrance.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Gruva Patrull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5500",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven trader from Keldagrim.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Brendt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5501",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarven trader from Keldagrim.",
- "melee_animation": "422",
- "range_animation": "422",
- "combat_audio": "511,513,512",
- "defence_animation": "404",
- "magic_animation": "422",
- "death_animation": "9055",
- "name": "Grundt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5501",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Burgher's protectors.",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Burgher's protectors.",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5516",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of your militia.",
- "melee_animation": "395",
- "range_animation": "0",
- "defence_animation": "404",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Honour guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5517",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5521",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5522",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5523",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll youngling.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll runt",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "70",
- "id": "5525",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A male troll wielding a large club.",
- "range_animation": "0",
- "melee_animation": "284",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll male",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5526",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "attack_level": "80"
- },
- {
- "examine": "An ice troll with a bag of rocks.",
- "combat_style": "1",
- "range_animation": "1142",
- "melee_animation": "1142",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "285",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "287",
- "name": "Ice troll female",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "80",
- "id": "5527",
- "aggressive": "true",
- "bonuses": "60,60,60,0,0,30,60,30,0,0,0,60,0,0,0",
- "range_level": "1",
- "projectile": "276",
- "attack_level": "80"
- },
- {
- "examine": "Antisocial.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sorceress",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5531",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Come",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Apprentice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An autumn elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Autumn Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5533",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A spring elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spring Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5539",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A summer elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Summer Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5547",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A winter elemental.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Winter Elemental",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5553",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It dare attack Pretty Lass? Thok crush its puny skull!",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Osman",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "95",
- "id": "5561",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "She's honest about the things you aren't.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sin Seer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it male or female?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Homunculus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5581",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Strong",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Cage",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "95",
- "id": "5584",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "Famous for his fights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Black-eye",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5589",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Count them pinkies!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'No fingers",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5590",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He wishes he had teeth.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "'Gummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5591",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it a frog",
- "melee_animation": "5842",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "5841",
- "name": "Frogeel",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "36",
- "id": "5593",
- "aggressive": "true",
- "range_level": "49",
- "attack_level": "36"
- },
- {
- "death_animation": "146",
- "name": "Spidine",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "35",
- "melee_animation": "143",
- "strength_level": "1",
- "id": "5594",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "144"
- },
- {
- "examine": "Definitely not a chicken or a swordfish.",
- "melee_animation": "5387",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5389",
- "name": "Swordchick",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "5595",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6800",
- "respawn_delay": "60",
- "defence_animation": "6802",
- "death_animation": "6801",
- "name": "Jubster",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "5596",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Since when did newts have beaks?",
- "melee_animation": "2299",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "2301",
- "name": "Newtroost",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "5597",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "Half unicorn",
- "melee_animation": "5849",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "41",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "5851",
- "name": "Unicow",
- "defence_level": "41",
- "safespot": null,
- "lifepoints": "58",
- "strength_level": "30",
- "id": "5603",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5608",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5609",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5610",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holier than thou.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5611",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I'd prefer it if it were a muffin...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Puffin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5614",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5619",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5620",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5621",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Monk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "5622",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bedside manner is a little lacking",
- "slayer_task": "93",
- "melee_animation": "5643",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5658",
- "name": "Sorebones",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5627",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "I hope his hands don't shake.",
- "slayer_task": "93",
- "melee_animation": "5643",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5658",
- "name": "Sorebones",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5628",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5629",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5630",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5631",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5632",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5633",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5634",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5635",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5636",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5637",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5638",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5639",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5640",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5641",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5642",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5643",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5644",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5645",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5880",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5646",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5647",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5648",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5649",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5650",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5651",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5652",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5653",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5884",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5886",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5654",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5655",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5656",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5657",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5658",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5659",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5660",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5661",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5662",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5663",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "melee_animation": "5647",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "5648",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5664",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aaaarg",
- "slayer_task": "93",
- "melee_animation": "5889",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5891",
- "name": "Zombie pirate",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "5665",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "It's trying to mash you flat! Less examine",
- "melee_animation": "5895",
- "range_animation": "0",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5898",
- "name": "Barrelchest",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "52",
- "id": "5666",
- "aggressive": "true",
- "range_level": "52",
- "attack_level": "52"
- },
- {
- "examine": "He is one",
- "melee_animation": "5970",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "5972",
- "name": "Undead Lumberjack",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "73",
- "id": "5680",
- "range_level": "1",
- "attack_level": "73"
- },
- {
- "examine": "A big",
- "slayer_task": "15",
- "melee_animation": "6079",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "93",
- "magic_animation": "0",
- "death_animation": "6081",
- "name": "Cave bug",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "93",
- "strength_level": "1",
- "id": "5750",
- "range_level": "9",
- "attack_level": "1"
- },
- {
- "examine": "A strange mole-like being.",
- "melee_animation": "6012",
- "respawn_delay": "60",
- "defence_animation": "6013",
- "slayer_exp": "52",
- "death_animation": "6014",
- "name": "Molanisk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "1",
- "id": "5751",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5752",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5753",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5754",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5755",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5756",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5757",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5758",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5760",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5761",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5762",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5763",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5764",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5765",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5766",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5767",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5768",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5769",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after cave goblin money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5776",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after cave goblin money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5777",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5783",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Taking a terribly important box from one place to another.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crate goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5784",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of the many citizens of Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Good at shorthand.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin scribe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5786",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He keeps order in the city.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "5800",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "He keeps order in the city.",
- "slayer_task": "38",
- "melee_animation": "6007",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6003",
- "name": "Guard",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "5801",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "A goblin baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Young 'un",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5803",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nipper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5805",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5807",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5808",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5813",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5814",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5816",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5817",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5819",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5820",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5821",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5822",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Don't spit",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spit goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5823",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A bug-eyed little goblin fish. How cute.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin fish",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5824",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Annoying little flappy things.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Moths",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5827",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "6092",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "melee_animation": "6090",
- "strength_level": "1",
- "id": "5829",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "6091"
- },
- {
- "name": "Rat Burgiss",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "5833",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5842",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5843",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5844",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5845",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5846",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5847",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5848",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5849",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5850",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "A mean looking outlaw. Don't get too close!",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Outlaw",
- "defence_level": "23",
- "safespot": null,
- "lifepoints": "32",
- "strength_level": "23",
- "id": "5851",
- "range_level": "1",
- "attack_level": "23"
- },
- {
- "examine": "For sitting on.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bench",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5855",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5856",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks pretty skilled with that bow.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "H.A.M. Archer",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "15",
- "id": "5859",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "20",
- "attack_level": "15"
- },
- {
- "examine": "No match for Thok. Silly demon.",
- "magic_level": "85",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Zanik",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "85",
- "id": "5861",
- "aggressive": "true",
- "range_level": "85",
- "attack_level": "85"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5864",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5865",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker on the train link.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Builder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5867",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5873",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5874",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin with big",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5875",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5876",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5877",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Cave goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "5878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells tickets to Keldagrim.",
- "slayer_task": "38",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5879",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5880",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5881",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dwarf from Keldagrim.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "slayer_exp": "16",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5882",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5883",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5884",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "16",
- "name": "Dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5885",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sells tickets to Dorgesh-Kaan.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ticket dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5886",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Are you good enough to fight?",
- "melee_animation": "6318",
- "range_animation": "0",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6322",
- "name": "The Inadequacy",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "5902",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Can you endure long enough?",
- "melee_animation": "6345",
- "range_animation": "0",
- "magic_level": "67",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6347",
- "name": "The Everlasting",
- "defence_level": "67",
- "safespot": null,
- "lifepoints": "191",
- "strength_level": "67",
- "id": "5903",
- "aggressive": "true",
- "range_level": "67",
- "attack_level": "67"
- },
- {
- "examine": "Can you bring yourself to hurt another?",
- "melee_animation": "6329",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6331",
- "name": "The Untouchable",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "5904",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "What if you don't know how to win?",
- "melee_animation": "6342",
- "range_animation": "0",
- "magic_level": "63",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Illusive",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "63",
- "id": "5905",
- "aggressive": "true",
- "range_level": "63",
- "attack_level": "63"
- },
- {
- "examine": "You can't escape your inadequacy!",
- "melee_animation": "6310",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6315",
- "name": "A Doubt",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "5906",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Dying tree",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "50",
- "id": "5908",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Don't let her arm-wrestle you for money.",
- "melee_animation": "422",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Barbarian",
- "defence_level": "20",
- "safespot": null,
- "lifepoints": "28",
- "strength_level": "20",
- "id": "5909",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "He's suspiciously talented with a meat-cleaver.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cook",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5911",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This grizzled soldier is here to distribute Rated Clan Wars badges.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Iffie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5914",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Does what too many people aren't interested in doing.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cleaner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5916",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mangy mutt.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Stray dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5917",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
- "melee_animation": "6489",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Guard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "5919",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "He tries to keep order around here. His bizarre uniform isn't helping.",
- "melee_animation": "6489",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "6490",
- "name": "Guard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "5920",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "He's studying to be a guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trainee Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5921",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Trains the guards of the future.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5922",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "9",
- "id": "5926",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "9",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "9",
- "id": "5927",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for her light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "9",
- "id": "5928",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Known for her light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "9",
- "id": "5929",
- "range_level": "1",
- "attack_level": "9"
- },
- {
- "examine": "Jacques Netis - a slightly pompous art expert.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Art Critic Jacques",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5930",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Seth Minas - an aged expert in RuneScape history.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Historian Minas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5931",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A lady with lots of information about the Museum.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Information clerk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5938",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teacher and one of his pupils.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Teacher and pupil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks kind of familiar.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Schoolboy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5945",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teacher and one of her pupils.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Teacher and pupil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5947",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks hard at work.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Could there be something exciting in his wheelbarrow?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5954",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A powerful knight of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Void Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5956",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Wheelbarrow loader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Digsite workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5958",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5959",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5960",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5961",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5962",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Working hard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Barge foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5963",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An aged expert in natural history.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Natural historian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5966",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodsuckers!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Leech display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5971",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Slugs of the sea variety.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sea slugs display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5972",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A house on its back.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snail display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5973",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A scaly little fellow.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lizard display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5975",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Nice suit.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penguin display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5976",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's got the hump.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Camel display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5977",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Terrifying!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Terrorbird display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5978",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a fire-breather.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "408,410,409",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dragon display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5979",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Needs a good square meal.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wyvern display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Battle tortoise display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Loves making molehills.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mole display",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "5982",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It hides in stone",
- "range_animation": "0",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Workman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "95",
- "id": "5986",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5990",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5992",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very odd looking creature.",
- "melee_animation": "6513",
- "range_animation": "0",
- "magic_level": "46",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6512",
- "name": "Experiment No.2",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "131",
- "strength_level": "46",
- "id": "5993",
- "range_level": "46",
- "attack_level": "46"
- },
- {
- "examine": "A huge mouse. It looks hungry...",
- "melee_animation": "6519",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6521",
- "name": "Mouse",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "5994",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "melee_animation": "6501",
- "respawn_delay": "60",
- "defence_animation": "6503",
- "death_animation": "6502",
- "name": "Glod",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "1",
- "id": "5996",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "5999",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Rupert the Beard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "498,500,499",
- "strength_level": "1",
- "id": "6001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6006",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6007",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6008",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6009",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6010",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6011",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6012",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6013",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "I wish the moon wasn't out!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "76",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "76",
- "id": "6014",
- "aggressive": "true",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,20,20,20",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "76"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6015",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6016",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6017",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6018",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6019",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6020",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "Eek! A werewolf!",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6021",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6022",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6023",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6024",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "6536",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "6538",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "6025",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Boris",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6026",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Imre",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6027",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Yuri",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6028",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Joseph",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6029",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Nikolai",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6030",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Eduard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6031",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Lev",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6032",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Georgy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "6033",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Svetlana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6034",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Irina",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6035",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Alexis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6036",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Milla",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6037",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Galina",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6038",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Sofiya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6039",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Ksenia",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6040",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Nikita",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Zoja",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6044",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Liliya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6045",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "melee_animation": "6559",
- "respawn_delay": "60",
- "defence_animation": "6557",
- "slayer_exp": "74",
- "death_animation": "6558",
- "name": "Big Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "1",
- "id": "6046",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A vicious mountain wolf.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "combat_audio": "481,491,490",
- "attack_speed": "6",
- "defence_animation": "6578",
- "slayer_exp": "34",
- "magic_animation": "6579",
- "death_animation": "6576",
- "name": "Wolf",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "1",
- "id": "6047",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Now it has no armour",
- "range_animation": "0",
- "combat_audio": "481,491,490",
- "magic_level": "95",
- "defence_animation": "0",
- "weakness": "10",
- "slayer_exp": "34",
- "magic_animation": "0",
- "name": "Wolf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "95",
- "id": "6048",
- "aggressive": "true",
- "range_level": "95",
- "attack_level": "95"
- },
- {
- "examine": "A big coward. Thok mocks scaredy man.",
- "combat_audio": "481,491,490",
- "magic_level": "75",
- "defence_animation": "0",
- "weakness": "10",
- "slayer_exp": "34",
- "magic_animation": "0",
- "name": "Wolf",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "75",
- "id": "6049",
- "aggressive": "true",
- "range_level": "75",
- "attack_level": "75"
- },
- {
- "examine": "A vicious desert wolf.",
- "slayer_task": "92",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "5",
- "defence_animation": "6578",
- "weakness": "9",
- "magic_animation": "6579",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "20",
- "id": "6050",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "A vicious desert wolf.",
- "melee_animation": "6579",
- "range_animation": "6579",
- "attack_speed": "5",
- "defence_animation": "6578",
- "magic_animation": "6579",
- "death_animation": "6558",
- "name": "Desert Wolf",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "55",
- "strength_level": "20",
- "id": "6051",
- "range_level": "1",
- "attack_level": "20"
- },
- {
- "examine": "She tends the wheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Fairy Aeryka",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6072",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a little lost.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wandering impling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6073",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry little imp. Grrr.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Imp defender",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6074",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "6078",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "6079",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed man eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "75",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "65",
- "id": "6080",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "A one-eyed woman eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "4651",
- "weakness": "1",
- "slayer_exp": "100",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "65",
- "id": "6081",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "65"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6088",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6089",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "examine": "Overgrown undead vermin.",
- "slayer_task": "67",
- "melee_animation": "4933",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "4935",
- "name": "Zombie rat",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "2",
- "id": "6090",
- "range_level": "1",
- "attack_level": "2"
- },
- {
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6099",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "respawn_delay": "60",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6100",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His face is expressionless.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Lost barbarian",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6102",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Probably not a chicken.",
- "slayer_task": "7",
- "melee_animation": "6811",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "6812",
- "name": "Entrana firebird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "6108",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "These gnomes know how to get around!",
- "slayer_task": "7",
- "melee_animation": "6790",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6791",
- "name": "Mounted terrorbird gnome",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "38",
- "id": "6109",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A messy bird.",
- "slayer_task": "7",
- "melee_animation": "3467",
- "range_animation": "3467",
- "attack_speed": "5",
- "defence_animation": "1014",
- "weakness": "6",
- "magic_animation": "3467",
- "death_animation": "3468",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "6115",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A messy bird.",
- "melee_animation": "3467",
- "range_animation": "3467",
- "attack_speed": "5",
- "defence_animation": "1014",
- "magic_animation": "3467",
- "death_animation": "3468",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "6116",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Do not upset this teacher. You have been warned!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mr. Mordaut",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6117",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He helps the professor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Observatory assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6118",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sleeping like an ugly baby.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sleeping guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6122",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An old goblin hag.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Naghead",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6123",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A young goblin 'beauty'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wagchin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6124",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6125",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6126",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Big appetite for a small creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Greasycheeks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6127",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Likes drink a little too much.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smellytoes",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6128",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Lean and green.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Creakyknees",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6129",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "6131",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6132",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6133",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This imp is clearly the class clown.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Dunce",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6134",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Get useful information from this guy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Town crier",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6135",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Intermediate)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6140",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A squire of balance.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire (Veteran)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6141",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6154",
- "bonuses": "100,100,100,50,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "15",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6155",
- "bonuses": "100,100,100,100,25,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6156",
- "bonuses": "100,100,50,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "6157",
- "bonuses": "50,50,100,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Squire to the Knights of the Round Table.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Squire",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6169",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "400",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "422",
- "death_animation": "836",
- "name": "Sir Lancelot",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "118",
- "strength_level": "1",
- "id": "6170",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6183",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An officer of the law.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6184",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He isn't very friendly.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Renegade knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6188",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A dark-hearted knight.",
- "melee_animation": "390",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Black Knight",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "6189",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "28"
- },
- {
- "examine": "Primping with combs and hair clips.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6190",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The name isn't just for show.",
- "range_animation": "0",
- "magic_level": "55",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Sinclair",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "55",
- "id": "6198",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He can look after my money.",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6200",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Knight",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6201",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "Destroyer of 1000 planes!",
- "slayer_task": "40",
- "melee_animation": "6945",
- "range_animation": "6945",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6944",
- "weakness": "9",
- "slayer_exp": "142",
- "magic_animation": "6945",
- "death_animation": "6946",
- "name": "Tstanon Karlak",
- "defence_level": "125",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "118",
- "id": "6204",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,-5,0,0,14,0,0,0",
- "range_level": "50",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6205",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Scourge of light.",
- "slayer_task": "56",
- "start_gfx": "1208",
- "combat_style": "1",
- "melee_animation": "7033",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "0",
- "slayer_exp": "150",
- "magic_animation": "7033",
- "death_animation": "6946",
- "lifepoints": "150",
- "id": "6206",
- "aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,-5,0,0,0,0,0,0",
- "agg_radius": "64",
- "range_animation": "7033",
- "magic_level": "50",
- "defence_animation": "6945",
- "name": "Zakl'n Gritch",
- "defence_level": "127",
- "safespot": null,
- "strength_level": "76",
- "range_level": "150",
- "projectile": "1209",
- "attack_level": "83"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6209",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Have you checked your pockets lately?",
- "melee_animation": "169",
- "range_animation": "169",
- "combat_audio": "534,536,535",
- "defence_animation": "170",
- "weakness": "7",
- "magic_animation": "169",
- "death_animation": "172",
- "name": "Imp",
- "defence_level": "4",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "4",
- "id": "6211",
- "aggressive": "true",
- "bonuses": "10,5,5,10,10,10,10,10,10,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "4"
- },
- {
- "examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "respawn_delay": "25",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "64",
- "id": "6212",
- "aggressive": "true",
- "bonuses": "50,40,45,60,70,70,70,40,40,50,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "He doesn't look pleased to see me.",
- "slayer_task": "91",
- "melee_animation": "6536",
- "range_animation": "6536",
- "respawn_delay": "25",
- "defence_animation": "6538",
- "weakness": "7",
- "magic_animation": "6536",
- "death_animation": "6537",
- "name": "Werewolf",
- "defence_level": "64",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "64",
- "id": "6213",
- "aggressive": "true",
- "bonuses": "50,40,45,60,70,70,70,40,40,50,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "64"
- },
- {
- "examine": "It looks really hungry!",
- "melee_animation": "810",
- "range_animation": "810",
- "respawn_delay": "25",
- "defence_animation": "404",
- "magic_animation": "810",
- "death_animation": "9055",
- "name": "Vampire",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "44",
- "id": "6214",
- "aggressive": "true",
- "bonuses": "30,35,30,40,50,50,50,25,30,30,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A small ice demon.",
- "melee_animation": "8080",
- "range_animation": "8080",
- "respawn_delay": "25",
- "defence_animation": "8079",
- "magic_animation": "8080",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6217",
- "bonuses": "5,5,5,5,10,10,10,10,10,10,5,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "Those horns look pretty sharp...",
- "slayer_task": "39",
- "melee_animation": "4300",
- "range_animation": "4300",
- "respawn_delay": "25",
- "defence_animation": "4301",
- "weakness": "9",
- "slayer_exp": "112",
- "magic_animation": "4300",
- "death_animation": "4302",
- "name": "Gorak",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "70",
- "id": "6218",
- "aggressive": "true",
- "bonuses": "30,30,50,70,40,70,70,50,60,55,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "Warrior of Zamorak.",
- "slayer_task": "79",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "5",
- "respawn_delay": "25",
- "defence_animation": "1156",
- "weakness": "6",
- "magic_animation": "390",
- "death_animation": "9055",
- "name": "Spiritual warrior",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "102",
- "strength_level": "66",
- "id": "6219",
- "aggressive": "true",
- "bonuses": "40,60,60,60,60,20,50,55,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "66"
- },
- {
- "examine": "A ranger spirit dedicated to Zamorak.",
- "slayer_task": "78",
- "start_gfx": "18",
- "combat_style": "1",
- "start_height": "96",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "25",
- "defence_animation": "404",
- "weakness": "1",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "6220",
- "aggressive": "true",
- "bonuses": "50,70,50,50,50,70,50,85,85,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "9",
- "attack_level": "1"
- },
- {
- "examine": "A deadly servant of Zamorak.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "811",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "9055",
- "lifepoints": "75",
- "id": "6221",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
- "range_animation": "811",
- "magic_level": "180",
- "end_gfx": "78",
- "defence_animation": "404",
- "end_height": "0",
- "name": "Spiritual mage",
- "defence_level": "61",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "78",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "2",
- "melee_animation": "6952",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "3",
- "slayer_exp": "124",
- "magic_animation": "6952",
- "death_animation": "6956",
- "lifepoints": "121",
- "id": "6223",
- "aggressive": "true",
- "bonuses": "45,45,45,0,0,0,0,0,0,0,0,25,0,0,0",
- "prj_height": "92",
- "agg_radius": "64",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
- "name": "Wingman Skree",
- "defence_level": "160",
- "poison_immune": "true",
- "safespot": null,
- "strength_level": "50",
- "range_level": "100",
- "projectile": "1199",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6224",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "4",
- "slayer_exp": "133",
- "magic_animation": "6953",
- "death_animation": "6956",
- "lifepoints": "132",
- "id": "6225",
- "aggressive": "true",
- "bonuses": "0,0,0,0,60,0,0,0,0,0,0,0,0,0,0",
- "prj_height": "92",
- "agg_radius": "64",
- "range_animation": "6953",
- "magic_level": "50",
- "defence_animation": "6955",
- "name": "Flockleader Geerin",
- "defence_level": "175",
- "poison_immune": "true",
- "safespot": null,
- "strength_level": "80",
- "range_level": "150",
- "projectile": "1190",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6226",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "Graceful, bird-like creature.",
- "melee_animation": "6954",
- "range_animation": "6954",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6955",
- "weakness": "6",
- "slayer_exp": "133",
- "magic_animation": "6954",
- "death_animation": "6956",
- "name": "Flight Kilisa",
- "defence_level": "175",
- "safespot": null,
- "lifepoints": "133",
- "strength_level": "118",
- "id": "6227",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,14,0,0,0",
- "range_level": "169",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A servant of Armadyl.",
- "slayer_task": "79",
- "combat_style": "1",
- "melee_animation": "6954",
- "range_animation": "6954",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "weakness": "6",
- "magic_animation": "6954",
- "death_animation": "6956",
- "name": "Spiritual warrior",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "70",
- "id": "6229",
- "aggressive": "true",
- "bonuses": "40,40,50,50,20,50,50,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "68",
- "attack_level": "70"
- },
- {
- "examine": "Armadyl's favourite servant.",
- "slayer_task": "78",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "weakness": "4",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "89",
- "strength_level": "1",
- "id": "6230",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "A mage who serves Armadyl above all else - even death.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "6952",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "4",
- "magic_animation": "6952",
- "death_animation": "6956",
- "lifepoints": "75",
- "id": "6231",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,9,12,5,45,28,0,0,0,0,0",
- "prj_height": "92",
- "range_animation": "6952",
- "magic_level": "150",
- "defence_animation": "6955",
- "name": "Spiritual mage",
- "defence_level": "111",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "1199",
- "attack_level": "1"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6232",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "83",
- "strength_level": "1",
- "id": "6233",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "45",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "1",
- "id": "6234",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "86",
- "strength_level": "1",
- "id": "6235",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "6236",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "1",
- "id": "6237",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "124",
- "strength_level": "1",
- "id": "6238",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "139",
- "strength_level": "1",
- "id": "6239",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "63",
- "strength_level": "1",
- "id": "6240",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6241",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "83",
- "strength_level": "1",
- "id": "6242",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "40",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "69",
- "strength_level": "1",
- "id": "6243",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "50",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "6244",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "98",
- "strength_level": "1",
- "id": "6245",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "55",
- "projectile": "1190",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "examine": "Graceful, bird-like creature.",
- "combat_style": "1",
- "melee_animation": "6953",
- "range_animation": "6953",
- "respawn_delay": "25",
- "defence_animation": "6955",
- "magic_animation": "6953",
- "death_animation": "6956",
- "name": "Aviansie",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "73",
- "strength_level": "1",
- "id": "6246",
- "aggressive": "true",
- "bonuses": "60,50,60,50,65,65,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "65",
- "projectile": "1191",
- "attack_level": "1",
- "prj_height": "92"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6249",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6251",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6253",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man wearing ancient clothing.",
- "combat_style": "2",
- "melee_animation": "811",
- "range_animation": "811",
- "poisonous": "true",
- "magic_level": "60",
- "respawn_delay": "25",
- "end_gfx": "76",
- "defence_animation": "404",
- "weakness": "3",
- "magic_animation": "811",
- "death_animation": "9055",
- "name": "Saradomin priest",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "89",
- "strength_level": "1",
- "id": "6254",
- "aggressive": "true",
- "bonuses": "40,40,40,40,20,50,40,55,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Warrior of Saradomin.",
- "slayer_task": "79",
- "melee_animation": "390",
- "range_animation": "390",
- "attack_speed": "5",
- "respawn_delay": "25",
- "defence_animation": "1156",
- "weakness": "8",
- "magic_animation": "390",
- "death_animation": "9055",
- "name": "Spiritual warrior",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "66",
- "id": "6255",
- "aggressive": "true",
- "bonuses": "40,60,60,60,60,20,50,45,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "66"
- },
- {
- "examine": "A ranger spirit dedicated to Saradomin.",
- "slayer_task": "78",
- "start_gfx": "18",
- "combat_style": "1",
- "start_height": "96",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "25",
- "defence_animation": "404",
- "weakness": "0",
- "magic_animation": "426",
- "death_animation": "9055",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "106",
- "strength_level": "1",
- "id": "6256",
- "aggressive": "true",
- "bonuses": "50,70,50,50,50,70,50,65,65,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "9",
- "attack_level": "1"
- },
- {
- "examine": "Saradomin's holy mage.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "811",
- "attack_speed": "5",
- "respawn_delay": "25",
- "weakness": "4",
- "magic_animation": "811",
- "death_animation": "9055",
- "lifepoints": "85",
- "id": "6257",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,8,7,3,16,2,0,0,0,0,0",
- "range_animation": "811",
- "magic_level": "160",
- "end_gfx": "76",
- "defence_animation": "404",
- "end_height": "0",
- "name": "Spiritual mage",
- "defence_level": "86",
- "safespot": null,
- "strength_level": "1",
- "clue_level": "2",
- "range_level": "1",
- "projectile": "76",
- "attack_level": "1"
- },
- {
- "examine": "A valiant knight.",
- "melee_animation": "407",
- "range_animation": "407",
- "respawn_delay": "25",
- "defence_animation": "410",
- "weakness": "7",
- "magic_animation": "407",
- "death_animation": "9055",
- "name": "Knight of Saradomin",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "135",
- "strength_level": "50",
- "id": "6258",
- "aggressive": "true",
- "bonuses": "40,40,40,40,50,20,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A valiant knight.",
- "melee_animation": "401",
- "range_animation": "401",
- "respawn_delay": "25",
- "defence_animation": "424",
- "weakness": "7",
- "magic_animation": "401",
- "death_animation": "9055",
- "name": "Knight of Saradomin",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "50",
- "id": "6259",
- "aggressive": "true",
- "bonuses": "40,40,40,40,50,20,40,65,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "agg_radius": "64",
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "melee_animation": "6154",
- "range_animation": "6154",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6155",
- "weakness": "8",
- "magic_animation": "6154",
- "death_animation": "6156",
- "name": "Sergeant Strongstack",
- "defence_level": "126",
- "safespot": null,
- "lifepoints": "128",
- "strength_level": "118",
- "id": "6261",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,14,0,0,0",
- "range_level": "50",
- "attack_level": "124"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6262",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "start_gfx": "1202",
- "combat_style": "2",
- "melee_animation": "6154",
- "attack_speed": "5",
- "respawn_delay": "50",
- "weakness": "3",
- "magic_animation": "6154",
- "death_animation": "6156",
- "lifepoints": "127",
- "id": "6263",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,0,0,0,0,0,0,6,0,0,0",
- "agg_radius": "64",
- "range_animation": "6154",
- "magic_level": "150",
- "defence_animation": "6155",
- "name": "Sergeant Steelwill",
- "defence_level": "150",
- "safespot": null,
- "strength_level": "50",
- "range_level": "1",
- "projectile": "1203",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6264",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "A battle-honed goblin. ",
- "slayer_task": "38",
- "combat_style": "1",
- "melee_animation": "6154",
- "range_animation": "6154",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "50",
- "defence_animation": "6155",
- "weakness": "2",
- "magic_animation": "6154",
- "death_animation": "6156",
- "name": "Sergeant Grimspike",
- "defence_level": "132",
- "safespot": null,
- "lifepoints": "146",
- "strength_level": "80",
- "id": "6265",
- "aggressive": "true",
- "bonuses": "0,0,0,0,20,0,0,0,0,0,0,0,0,0,0",
- "range_level": "150",
- "projectile": "1206",
- "attack_level": "80"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6266",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Green and aggressive.",
- "melee_animation": "2936",
- "range_animation": "2936",
- "attack_speed": "6",
- "respawn_delay": "25",
- "defence_animation": "2937",
- "weakness": "8",
- "magic_animation": "2936",
- "death_animation": "2938",
- "name": "Jogre",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "62",
- "id": "6268",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,20,10,20,0,0,0,0,0,0,0",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "62"
- },
- {
- "examine": "A one-eyed man-eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "110",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "70",
- "id": "6269",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A one-eyed man-eater.",
- "slayer_task": "44",
- "melee_animation": "4652",
- "range_animation": "0",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "25",
- "defence_animation": "4651",
- "weakness": "8",
- "slayer_exp": "110",
- "magic_animation": "0",
- "death_animation": "4653",
- "name": "Cyclops",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "70",
- "id": "6270",
- "aggressive": "true",
- "bonuses": "22,22,22,0,0,0,0,0,0,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "8",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6271",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6272",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6273",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "Ugly, fierce and with a bad attitude.",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Ork",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "68",
- "id": "6274",
- "aggressive": "true",
- "bonuses": "40,20,30,45,45,45,45,20,45,35,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "68"
- },
- {
- "examine": "An ugly, smelly creature.",
- "slayer_task": "45",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "165",
- "weakness": "8",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "52",
- "strength_level": "40",
- "id": "6275",
- "aggressive": "true",
- "bonuses": "20,30,30,30,30,30,10,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "40"
- },
- {
- "examine": "The spirit of a ranger, serving bandos beyond death.",
- "slayer_task": "78",
- "start_gfx": "95",
- "combat_style": "1",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "0",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual ranger",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "id": "6276",
- "aggressive": "true",
- "bonuses": "30,50,30,30,50,60,50,40,40,0,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "70",
- "projectile": "1195",
- "attack_level": "1"
- },
- {
- "examine": "A true servant of Bandos.",
- "slayer_task": "79",
- "melee_animation": "4320",
- "range_animation": "4320",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "8",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual warrior",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "131",
- "strength_level": "70",
- "id": "6277",
- "aggressive": "true",
- "bonuses": "50,40,45,60,60,60,60,20,50,60,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "One of Bandos' chosen.",
- "slayer_task": "77",
- "combat_style": "2",
- "melee_animation": "4320",
- "range_animation": "4320",
- "attack_speed": "5",
- "magic_level": "142",
- "respawn_delay": "25",
- "defence_animation": "4322",
- "weakness": "4",
- "magic_animation": "4320",
- "death_animation": "4321",
- "name": "Spiritual mage",
- "defence_level": "103",
- "safespot": null,
- "lifepoints": "106",
- "strength_level": "1",
- "id": "6278",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,12,14,13,35,13,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ancient goblin.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "5",
- "id": "6279",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A warrior for Bandos.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6280",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A soldier to the death.",
- "melee_animation": "6188",
- "range_animation": "6188",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6189",
- "magic_animation": "6188",
- "death_animation": "6190",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "5",
- "id": "6281",
- "aggressive": "true",
- "bonuses": "5,10,10,10,10,10,5,10,5,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A soldier to the death.",
- "melee_animation": "6188",
- "range_animation": "6188",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6189",
- "magic_animation": "6188",
- "death_animation": "6190",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "5",
- "id": "6282",
- "aggressive": "true",
- "bonuses": "5,10,10,10,10,10,5,10,5,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "A warrior for Bandos.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "respawn_delay": "25",
- "defence_animation": "6183",
- "slayer_exp": "16",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "5",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "5",
- "id": "6283",
- "aggressive": "true",
- "bonuses": "10,20,20,20,20,5,20,10,0,0,0,0,0,0,0",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "5"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6285",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6286",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6287",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6288",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6289",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6290",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6291",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "168",
- "strength_level": "59",
- "id": "6292",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6293",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "308",
- "strength_level": "59",
- "id": "6294",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this terrorbird.",
- "slayer_task": "88",
- "combat_style": "1",
- "melee_animation": "7108",
- "range_animation": "0",
- "magic_level": "59",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "59",
- "safespot": null,
- "lifepoints": "308",
- "strength_level": "59",
- "id": "6295",
- "aggressive": "true",
- "range_level": "59",
- "projectile": "1468",
- "attack_level": "59"
- },
- {
- "examine": "You don't think you can harm this creature.",
- "slayer_task": "89",
- "melee_animation": "7093",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "52",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "4",
- "magic_animation": "0",
- "death_animation": "7091",
- "name": "Warped tortoise",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "148",
- "strength_level": "39",
- "id": "6296",
- "range_level": "1",
- "attack_level": "39"
- },
- {
- "melee_animation": "7093",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "7092",
- "death_animation": "7091",
- "name": "Warped tortoise",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "6297",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Annoyingly easy to squish.",
- "slayer_task": "73",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "2",
- "defence_animation": "0",
- "magic_animation": "0",
- "name": "Bolrie",
- "defence_level": "2",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "6306",
- "aggressive": "true",
- "range_level": "2",
- "attack_level": "1"
- },
- {
- "examine": "She looks bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard no. 21",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6314",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks even more bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard no. 72",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6315",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6322",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6323",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6324",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6325",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6326",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6327",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6328",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6329",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6330",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6331",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7108",
- "respawn_delay": "60",
- "defence_animation": "7110",
- "death_animation": "7109",
- "name": "Warped terrorbird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "154",
- "strength_level": "1",
- "id": "6332",
- "aggressive": "true",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6334",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6335",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6336",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6337",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6338",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A child of West Ardougne.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Child",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6339",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Duck!",
- "combat_style": "1",
- "melee_animation": "3920",
- "range_animation": "3920",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "3922",
- "name": "Child",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "92",
- "strength_level": "48",
- "id": "6344",
- "aggressive": "true",
- "range_level": "65",
- "attack_level": "48"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6346",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6347",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6348",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6349",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6350",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6351",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6352",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6353",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6354",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6355",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "390",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "23",
- "strength_level": "1",
- "id": "6356",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The mother of all pests!",
- "attack_speed": "6",
- "magic_level": "70",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Street urchin",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "1428",
- "strength_level": "70",
- "id": "6358",
- "aggressive": "true",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "A warrior of Zamorak.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak warrior",
- "defence_level": "44",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "44",
- "id": "6363",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "44"
- },
- {
- "examine": "A warrior of Zamorak.",
- "melee_animation": "390",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak warrior",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "6364",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A ranger of Zamorak.",
- "combat_style": "1",
- "melee_animation": "426",
- "range_animation": "426",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak ranger",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6365",
- "aggressive": "true",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A ranger of Zamorak.",
- "melee_animation": "426",
- "range_animation": "426",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak ranger",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "6366",
- "aggressive": "true",
- "range_level": "46",
- "attack_level": "1"
- },
- {
- "examine": "A mage of Zamorak.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "49",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak mage",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6367",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mage of Zamorak.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "49",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak mage",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "6368",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cave dweller.",
- "melee_animation": "7207",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "7205",
- "name": "Cave lizard",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
- "id": "6369",
- "aggressive": "true",
- "range_level": "47",
- "attack_level": "1"
- },
- {
- "examine": "A Z.M.I. runecrafter.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Zamorak crafter",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "19",
- "id": "6371",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "death_animation": "836",
- "name": "Zamorak crafter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "6372",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "slayer_exp": "49",
- "name": "Guard dog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6374",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "6376",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "6377",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wouldn't want to be footing that bill.",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6779",
- "name": "Tenacious toucan",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6378",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "I wonder how much he can lift.",
- "melee_animation": "7237",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7238",
- "name": "Giant ant worker",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "35",
- "id": "6379",
- "range_level": "1",
- "attack_level": "35"
- },
- {
- "examine": "Gi-ant-ant-ant-ant...",
- "melee_animation": "7237",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7238",
- "name": "Giant ant soldier",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "71",
- "strength_level": "50",
- "id": "6380",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "That stinger has to hurt...",
- "melee_animation": "7242",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7244",
- "name": "Giant wasp",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "60",
- "id": "6381",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "Polynomial - a parrot that goes without breakfast",
- "slayer_task": "7",
- "melee_animation": "6775",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6777",
- "name": "Pernicious parrot",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "6382",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "melee_animation": "7242",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "7243",
- "death_animation": "7244",
- "name": "Giant wasp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "1",
- "id": "6383",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very large",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Karamjan Jungle eagle",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6385",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6402",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6403",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6404",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6405",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6406",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6407",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6408",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6409",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6410",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6411",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6412",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6413",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6414",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6415",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6416",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6417",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6418",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6419",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6420",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6421",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6422",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6423",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6424",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6425",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6426",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6427",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6428",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6429",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6430",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6431",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6432",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6433",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6434",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6435",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6436",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6437",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6438",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6439",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6440",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6441",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6442",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6443",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6444",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6445",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6446",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6447",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6448",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6449",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6450",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6451",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6452",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6453",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6454",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6455",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6456",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6457",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6458",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6459",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6460",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6461",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6462",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6463",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6464",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6465",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6466",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6467",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Snothead",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "14",
- "id": "6469",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "14"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Snailfeet",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "13",
- "id": "6470",
- "aggressive": "true",
- "range_level": "18",
- "attack_level": "13"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "22",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Mosschin",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "16",
- "id": "6471",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "16"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "26",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Redeyes",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "19",
- "id": "6472",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "A goblin high priest",
- "slayer_task": "75",
- "melee_animation": "7317",
- "range_animation": "0",
- "magic_level": "26",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "6182",
- "name": "Strongbones",
- "defence_level": "26",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "19",
- "id": "6473",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "19"
- },
- {
- "examine": "Priest of the Ekeleshuun tribe.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Priest",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6482",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He is expounding the word of the Big High War God.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Preacher",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6488",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6490",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6491",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6492",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6493",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6494",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "469,472,471",
- "strength_level": "1",
- "id": "6495",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very welcoming.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6496",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He doesn't look very welcoming.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "469,472,471",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Goblin guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6497",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing blue armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6498",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing orange armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6499",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing black armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6500",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing white armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6501",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing purple armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6502",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A guard wearing yellow armour.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6503",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very noble spider and attendant to the Queen.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 2",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The highest ranking of the Spider Queen's servants.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 3",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6508",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The head of the Spider Queen's army.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 4",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6509",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Trying hard to hide his identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jury",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6510",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Sir Amik's loyal squire.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A being of ore and minerals.",
- "magic_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "range_animation": "0",
- "strength_level": "1",
- "id": "6514",
- "range_level": "1",
- "attack_level": "1",
- "defence_animation": "0"
- },
- {
- "examine": "A monkey on a mission.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6516",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He works for Doric & Son.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spectator",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6518",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Gives an introduction to the Grand Exchange.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grand Exchange Tutor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6521",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The son of Ali M!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farid Morrisane (ores)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6523",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's probably seen better days.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bob Barter (herbs)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6524",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tribal man",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Relobo Blinyo (logs)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6526",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's travelled a long way.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hofuthand (armour and weapons)",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6527",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Chief architect of the Spider Realm.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Registrar 5",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6536",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6543",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "6544",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Tapping his feet and looking very bored.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6558",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge war chief. ",
- "melee_animation": "422",
- "range_animation": "422",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "7061",
- "magic_animation": "422",
- "death_animation": "7062",
- "name": "null",
- "defence_level": "250",
- "safespot": null,
- "lifepoints": "254",
- "strength_level": "251",
- "id": "6560",
- "aggressive": "true",
- "bonuses": "300,300,300,300,300,300,150,300,300,250,43,96,43,30,0",
- "range_level": "200",
- "attack_level": "250"
- },
- {
- "examine": "Her lack of body heat is unsettling.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Queen of Snow",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It looks right at home here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snow imp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6739",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Snowflakes swirling in the wind.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snow",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragon snowman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6743",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate snowman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "6745",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A snowman armed with a holly bow.",
- "name": "Snow ranger",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "30",
- "strength_level": "1",
- "id": "6747",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A snowman armed with an ice sword.",
- "name": "Snow ranger",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6748",
- "magic_level": "30",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A snowman armed with a winter staff.",
- "name": "Snow mage",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "6749",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "Cut-down and dried.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6761",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "Needs moisturising.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6762",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "I bet it's parched.",
- "slayer_task": "93",
- "melee_animation": "5568",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "5569",
- "name": "Dried zombie",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "6763",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A guard.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Doorman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6769",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A huge beast of a beetle.",
- "slayer_task": "70",
- "melee_animation": "7596",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7595",
- "name": "Giant scarab",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "285",
- "strength_level": "49",
- "id": "6770",
- "aggressive": "true",
- "range_level": "66",
- "attack_level": "49"
- },
- {
- "examine": "It's not quite small enough to stamp upon.",
- "melee_animation": "7657",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7656",
- "name": "Scarab larva",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "6772",
- "range_level": "1",
- "attack_level": "18"
- },
- {
- "examine": "Bred to shoot you down.",
- "slayer_task": "70",
- "start_gfx": "18",
- "combat_style": "1",
- "melee_animation": "7607",
- "range_animation": "7607",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7609",
- "name": "Scabaras ranger",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "157",
- "strength_level": "41",
- "id": "6773",
- "aggressive": "true",
- "range_level": "55",
- "projectile": "11",
- "attack_level": "41"
- },
- {
- "examine": "It might be angry...it's hard to tell.",
- "slayer_task": "70",
- "melee_animation": "7612",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7614",
- "name": "Scabaras lancer",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "6774",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "Bouncy",
- "slayer_task": "70",
- "melee_animation": "7584",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust lancer",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "6777",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "He'll have someone's eye out with that.",
- "slayer_task": "70",
- "start_gfx": "18",
- "combat_style": "1",
- "melee_animation": "5451",
- "range_animation": "5451",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "7581",
- "name": "Locust ranger",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "41",
- "id": "6778",
- "aggressive": "true",
- "range_level": "55",
- "projectile": "11",
- "attack_level": "41"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Clay golem",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She looks a bit dirty from digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lead archaeologist Abigail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks a bit dusty from troweling.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Assistant archaeologist Kerner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He exudes something like holiness.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "High Priest of Scabaras",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6788",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He exudes something like holiness.",
- "slayer_task": "70",
- "melee_animation": "7612",
- "range_animation": "0",
- "magic_level": "66",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7614",
- "name": "High Priest of Scabaras",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "66",
- "id": "6789",
- "range_level": "66",
- "attack_level": "66"
- },
- {
- "examine": "He exudes something like holiness.",
- "slayer_task": "70",
- "melee_animation": "7607",
- "range_animation": "7607",
- "magic_level": "66",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7609",
- "name": "High Priest of Scabaras",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "66",
- "id": "6790",
- "range_level": "66",
- "attack_level": "66"
- },
- {
- "examine": "Is it a stone? Is it a crab? No! It's Granite Crab!",
- "melee_animation": "8104",
- "range_animation": "8104",
- "attack_speed": "3",
- "magic_level": "13",
- "respawn_delay": "50",
- "defence_animation": "8105",
- "magic_animation": "8104",
- "death_animation": "8106",
- "name": "Granite crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "39",
- "strength_level": "17",
- "id": "6796",
- "bonuses": "16,9,5,12,4,11,57,53,61,12,45,22,0,0,0",
- "range_level": "16",
- "attack_level": "18"
- },
- {
- "examine": "Is it a stone? Is it a crab? No! It's Granite Crab!",
- "melee_animation": "8104",
- "range_animation": "8104",
- "attack_speed": "3",
- "magic_level": "13",
- "respawn_delay": "50",
- "defence_animation": "8105",
- "weakness": "10",
- "magic_animation": "8104",
- "death_animation": "8106",
- "name": "Granite crab",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "39",
- "strength_level": "17",
- "id": "6797",
- "bonuses": "16,9,5,12,4,11,57,53,61,12,45,22,0,0,0",
- "range_level": "16",
- "attack_level": "18"
- },
- {
- "death_animation": "8065",
- "name": "Praying mantis",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8064",
- "strength_level": "1",
- "id": "6798",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8066"
- },
- {
- "examine": "Wax on",
- "melee_animation": "8069",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8065",
- "name": "Praying mantis",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "107",
- "strength_level": "60",
- "id": "6799",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7854",
- "name": "Giant ent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7853",
- "strength_level": "1",
- "id": "6800",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7852"
- },
- {
- "examine": "He ent such a bad guy.",
- "melee_animation": "7853",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7854",
- "name": "Giant ent",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "111",
- "strength_level": "60",
- "id": "6801",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "8153",
- "name": "Spirit cobra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8152",
- "strength_level": "1",
- "id": "6802",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8154"
- },
- {
- "examine": "Serpentine.",
- "melee_animation": "8152",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8153",
- "name": "Spirit cobra",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "55",
- "id": "6803",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7780",
- "name": "Spirit dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7786",
- "strength_level": "1",
- "id": "6804",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7785"
- },
- {
- "examine": "Face the thing that should not be!",
- "melee_animation": "7786",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7780",
- "name": "Spirit dagannoth",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "115",
- "strength_level": "65",
- "id": "6805",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "combat_style": "2",
- "melee_animation": "7970",
- "respawn_delay": "0",
- "defence_animation": "7967",
- "death_animation": "7979",
- "name": "Karamthulhu overlord",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Kneel before squid!",
- "combat_style": "2",
- "melee_animation": "7963",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7964",
- "name": "Karamthulhu overlord",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "82",
- "strength_level": "50",
- "id": "6810",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "combat_style": "1",
- "melee_animation": "7935",
- "respawn_delay": "0",
- "defence_animation": "7936",
- "death_animation": "7937",
- "name": "Hydra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "7935",
- "respawn_delay": "0",
- "defence_animation": "7936",
- "death_animation": "7937",
- "name": "Hydra",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "7740",
- "name": "Bunyip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "7741",
- "strength_level": "1",
- "id": "6813",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7742"
- },
- {
- "death_animation": "7740",
- "name": "Bunyip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "melee_animation": "7741",
- "strength_level": "1",
- "id": "6814",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7742"
- },
- {
- "combat_style": "1",
- "melee_animation": "8286",
- "respawn_delay": "0",
- "defence_animation": "8287",
- "death_animation": "8285",
- "name": "War tortoise",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "348",
- "strength_level": "1",
- "id": "6815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Definitely not teenaged",
- "combat_style": "1",
- "melee_animation": "8286",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8285",
- "name": "War tortoise",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "55",
- "id": "6816",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "Fruity and bat-shaped. A winning combination!.",
- "name": "Fruit bat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6817",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "7675",
- "respawn_delay": "0",
- "defence_animation": "7670",
- "death_animation": "7671",
- "name": "Abyssal parasite",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6818",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's an extra-planar little blood hoover.",
- "combat_style": "2",
- "melee_animation": "8910",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7671",
- "name": "Abyssal parasite",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "50",
- "id": "6819",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "death_animation": "7684",
- "name": "Abyssal lurker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7680",
- "strength_level": "1",
- "id": "6820",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7681"
- },
- {
- "examine": "Lurking like only a lurker can.",
- "melee_animation": "7680",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7684",
- "name": "Abyssal lurker",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "55",
- "id": "6821",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "The pointiest horse on the planet.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "magic_level": "69",
- "defence_animation": "6375",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn stallion",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "62",
- "id": "6822",
- "bonuses": "48,59,43,52,104,52,116,123,134,46,127,4,0,0,0",
- "range_level": "72",
- "attack_level": "64"
- },
- {
- "examine": "The pointiest horse on the planet.",
- "melee_animation": "6376",
- "range_animation": "6376",
- "combat_audio": "496,498,497",
- "magic_level": "69",
- "defence_animation": "6375",
- "weakness": "10",
- "magic_animation": "6376",
- "death_animation": "6377",
- "name": "Unicorn stallion",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "62",
- "id": "6823",
- "bonuses": "48,59,43,52,104,52,116,123,134,46,127,4,0,0,0",
- "range_level": "72",
- "attack_level": "64"
- },
- {
- "examine": "Southern fried please!",
- "combat_style": "2",
- "melee_animation": "7810",
- "range_animation": "7810",
- "attack_speed": "5",
- "magic_level": "23",
- "respawn_delay": "50",
- "defence_animation": "5388",
- "magic_animation": "7810",
- "death_animation": "5389",
- "name": "Dreadfowl",
- "defence_level": "22",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "15",
- "id": "6825",
- "bonuses": "16,15,29,12,39,13,41,35,29,39,47,2,2,2,7",
- "range_level": "16",
- "projectile": "1318",
- "attack_level": "17"
- },
- {
- "examine": "Southern fried please!",
- "combat_style": "2",
- "melee_animation": "7810",
- "range_animation": "7810",
- "attack_speed": "5",
- "magic_level": "23",
- "respawn_delay": "50",
- "defence_animation": "5388",
- "weakness": "10",
- "magic_animation": "7810",
- "death_animation": "5389",
- "name": "Dreadfowl",
- "defence_level": "22",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "16",
- "strength_level": "15",
- "id": "6826",
- "bonuses": "16,15,29,12,39,13,41,35,29,39,47,2,2,2,7",
- "range_level": "16",
- "projectile": "1318",
- "attack_level": "17"
- },
- {
- "examine": "It's mean and green.",
- "melee_animation": "8208",
- "respawn_delay": "0",
- "defence_animation": "8205",
- "death_animation": "8209",
- "name": "Stranger plant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's mean and green!",
- "melee_animation": "8208",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8209",
- "name": "Stranger plant",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "91",
- "strength_level": "55",
- "id": "6828",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7797",
- "name": "Desert wyrm",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "47",
- "melee_animation": "7795",
- "strength_level": "1",
- "id": "6831",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7796"
- },
- {
- "examine": "Surprisingly slime-free.",
- "combat_style": "1",
- "melee_animation": "7795",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7797",
- "name": "Desert wyrm",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "18",
- "id": "6832",
- "range_level": "18",
- "attack_level": "18"
- },
- {
- "examine": "If you think he's evil",
- "melee_animation": "8248",
- "range_animation": "0",
- "magic_level": "42",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8250",
- "name": "Evil turnip",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "6834",
- "range_level": "42",
- "attack_level": "42"
- },
- {
- "death_animation": "8276",
- "name": "Vampire bat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "melee_animation": "8275",
- "strength_level": "1",
- "id": "6835",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8274"
- },
- {
- "examine": "It vants to suck my blood!",
- "melee_animation": "8275",
- "range_animation": "0",
- "magic_level": "31",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8276",
- "name": "Vampire bat",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "31",
- "id": "6836",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "melee_animation": "6254",
- "combat_audio": "3611,3612,3610",
- "respawn_delay": "0",
- "defence_animation": "6255",
- "death_animation": "6256",
- "name": "Spirit scorpion",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "1",
- "id": "6837",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Salt and vinegaroon.",
- "melee_animation": "6254",
- "range_animation": "0",
- "combat_audio": "3611,3612,3610",
- "magic_level": "19",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6256",
- "name": "Spirit scorpion",
- "defence_level": "19",
- "safespot": null,
- "lifepoints": "27",
- "strength_level": "19",
- "id": "6838",
- "range_level": "19",
- "attack_level": "19"
- },
- {
- "examine": "Crikey! Look at the size of those teeth!",
- "melee_animation": "4925",
- "combat_audio": "498,500,499",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "4928",
- "death_animation": "4929",
- "name": "Arctic bear",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "6839",
- "bonuses": "90,50,50,60,90,80,50,30,40,100,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Crikey! Look at the size of those teeth!",
- "melee_animation": "4925",
- "range_animation": "0",
- "combat_audio": "498,500,499",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "4929",
- "name": "Arctic bear",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "101",
- "strength_level": "60",
- "id": "6840",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Would scare anyone off their tuffet.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "magic_level": "15",
- "respawn_delay": "50",
- "defence_animation": "5328",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Spirit spider",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "16",
- "id": "6841",
- "bonuses": "15,16,11,14,34,12,24,36,46,16,37,0,0,0,0",
- "range_level": "12",
- "attack_level": "17"
- },
- {
- "examine": "Would scare anyone off their tuffet.",
- "melee_animation": "5327",
- "range_animation": "5327",
- "combat_audio": "537,539,538",
- "magic_level": "15",
- "respawn_delay": "50",
- "defence_animation": "5328",
- "weakness": "10",
- "magic_animation": "5327",
- "death_animation": "5329",
- "name": "Spirit spider",
- "defence_level": "17",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "16",
- "id": "6842",
- "bonuses": "15,16,11,14,34,12,24,36,46,16,37,0,0,0,0",
- "range_level": "12",
- "attack_level": "17"
- },
- {
- "death_animation": "7656",
- "name": "Bloated leech",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7657",
- "strength_level": "1",
- "id": "6843",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7655"
- },
- {
- "examine": "It's like a little suction pump with eyes.",
- "melee_animation": "7657",
- "range_animation": "0",
- "magic_level": "49",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7656",
- "name": "Bloated leech",
- "defence_level": "49",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "49",
- "id": "6844",
- "range_level": "49",
- "attack_level": "49"
- },
- {
- "death_animation": "7925",
- "name": "Honey badger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7928",
- "strength_level": "1",
- "id": "6845",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7927"
- },
- {
- "examine": "Violent little so-and-so.",
- "melee_animation": "7928",
- "range_animation": "0",
- "magic_level": "32",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7925",
- "name": "Honey badger",
- "defence_level": "32",
- "safespot": null,
- "lifepoints": "45",
- "strength_level": "32",
- "id": "6846",
- "range_level": "32",
- "attack_level": "32"
- },
- {
- "examine": "The big cheese.",
- "combat_audio": "703,705,704",
- "magic_level": "27",
- "respawn_delay": "50",
- "name": "Albino rat",
- "defence_level": "32",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "28",
- "id": "6847",
- "bonuses": "64,42,40,57,64,50,76,82,72,24,75,5,15,5,5",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "The big cheese.",
- "combat_audio": "703,705,704",
- "magic_level": "27",
- "respawn_delay": "50",
- "weakness": "10",
- "name": "Albino rat",
- "defence_level": "32",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "28",
- "id": "6848",
- "bonuses": "64,42,40,57,64,50,76,82,72,24,75,5,15,5,5",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "Puts the 'crust' in 'crustacean'.",
- "melee_animation": "8112",
- "respawn_delay": "0",
- "defence_animation": "8114",
- "death_animation": "8113",
- "name": "Granite lobster",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "6849",
- "bonuses": "93,90,65,90,30,40,50,50,60,40,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Puts the 'crust' in 'crustacean'.",
- "melee_animation": "8112",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8113",
- "name": "Granite lobster",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "60",
- "id": "6850",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "31",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Bronze minotaur",
- "defence_level": "31",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "6853",
- "bonuses": "15,20,10,15,10,5,35,0,0,0,0,0,0,0,0",
- "range_level": "31",
- "attack_level": "31"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "15",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Bronze minotaur",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "15",
- "id": "6854",
- "range_level": "15",
- "attack_level": "15"
- },
- {
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "24",
- "strength_level": "1",
- "id": "6855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "25",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Iron minotaur",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "25",
- "id": "6856",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "He's just a big bully!",
- "combat_style": "1",
- "melee_animation": "8024",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Steel minotaur",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "44",
- "strength_level": "30",
- "id": "6857",
- "bonuses": "40,30,30,30,30,50,30,60,60,60,20,80,40,20,0",
- "range_level": "1",
- "attack_level": "70"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "35",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Steel minotaur",
- "defence_level": "35",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "35",
- "id": "6858",
- "range_level": "35",
- "attack_level": "35"
- },
- {
- "examine": "He's just a big bully",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "40",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "37",
- "strength_level": "40",
- "id": "6859",
- "bonuses": "56,35,30,30,30,40,10,12,30,40,30,35,40,0,0",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "45",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Mithril minotaur",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "45",
- "id": "6860",
- "range_level": "45",
- "attack_level": "45"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "1",
- "id": "6861",
- "bonuses": "40,50,40,45,35,20,50,36,30,40,15,18,30,10,0",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "combat_style": "1",
- "melee_animation": "8024",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8025",
- "name": "Adamant minotaur",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "55",
- "id": "6862",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6863",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He's just a big bully.",
- "melee_animation": "8024",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "8023",
- "slayer_exp": "0",
- "death_animation": "8025",
- "name": "Rune minotaur",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "65",
- "id": "6864",
- "bonuses": "50,40,40,56,40,30,50,30,60,30,40,30,50,40,40",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "death_animation": "7818",
- "name": "Smoke devil",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7816",
- "strength_level": "1",
- "id": "6865",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7817"
- },
- {
- "examine": "Well",
- "melee_animation": "7816",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7818",
- "name": "Smoke devil",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "55",
- "id": "6866",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "death_animation": "7897",
- "name": "Bull ant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7896",
- "strength_level": "1",
- "id": "6867",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7900"
- },
- {
- "examine": "Putting all three of its best feet forward.",
- "melee_animation": "7896",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7897",
- "name": "Bull ant",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "6868",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "It's just a harmless wee rabbit. ",
- "combat_style": "2",
- "melee_animation": "8304",
- "range_animation": "8304",
- "attack_speed": "5",
- "magic_level": "95",
- "defence_animation": "8306",
- "magic_animation": "8304",
- "death_animation": "8305",
- "name": "Wolpertinger",
- "defence_level": "95",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "619",
- "strength_level": "1",
- "id": "6869",
- "bonuses": "59,50,50,50,50,50,50,50,50,50,50,50,50,68,0",
- "range_level": "95",
- "attack_level": "1"
- },
- {
- "examine": "It's just a harmless wee rabbit. ",
- "combat_style": "2",
- "melee_animation": "8304",
- "range_animation": "8304",
- "attack_speed": "5",
- "magic_level": "95",
- "defence_animation": "8306",
- "magic_animation": "8304",
- "death_animation": "8305",
- "name": "Wolpertinger",
- "defence_level": "95",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "619",
- "strength_level": "1",
- "id": "6870",
- "bonuses": "59,50,50,50,50,50,50,50,50,50,50,50,50,68,0",
- "range_level": "95",
- "attack_level": "1"
- },
- {
- "melee_animation": "853",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "851",
- "death_animation": "852",
- "name": "Compost mound",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "96",
- "strength_level": "1",
- "id": "6871",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I suppose it could smell worse",
- "melee_animation": "7769",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "28",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7770",
- "name": "Compost mound",
- "defence_level": "28",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "28",
- "id": "6872",
- "range_level": "28",
- "attack_level": "28"
- },
- {
- "examine": "Bulk haulage never smelled so bad.",
- "melee_animation": "5782",
- "range_animation": "5782",
- "attack_speed": "5",
- "magic_level": "91",
- "defence_animation": "5783",
- "magic_animation": "5782",
- "death_animation": "5784",
- "name": "Pack yak",
- "defence_level": "121",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "710",
- "strength_level": "104",
- "id": "6873",
- "bonuses": "64,67,5,72,128,49,264,234,164,49,132,40,35,40,40",
- "range_level": "86",
- "attack_level": "112"
- },
- {
- "examine": "Bulk haulage never smelled so bad.",
- "melee_animation": "5782",
- "range_animation": "5782",
- "attack_speed": "5",
- "magic_level": "91",
- "defence_animation": "5783",
- "weakness": "10",
- "magic_animation": "5782",
- "death_animation": "5784",
- "name": "Pack yak",
- "defence_level": "121",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "710",
- "strength_level": "104",
- "id": "6874",
- "bonuses": "64,67,5,72,128,49,264,234,164,49,132,40,35,40,40",
- "range_level": "86",
- "attack_level": "112"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit cockatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6875",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit cockatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6876",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit guthatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6877",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit guthatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6878",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "combat_audio": "703,705,704",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit saratrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6879",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit saratrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6880",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit zamatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6881",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit zamatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6882",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit pengatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6883",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit pengatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6884",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit coraxatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6885",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit coraxatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6886",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "respawn_delay": "0",
- "defence_animation": "7761",
- "death_animation": "7763",
- "name": "Spirit vulatrice",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6887",
- "range_level": "1",
- "projectile": "1468",
- "attack_level": "1"
- },
- {
- "examine": "If looks could kill... Wait",
- "start_gfx": "1467",
- "combat_style": "2",
- "melee_animation": "7762",
- "range_animation": "0",
- "magic_level": "43",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7763",
- "name": "Spirit vulatrice",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "6888",
- "range_level": "43",
- "projectile": "1468",
- "attack_level": "43"
- },
- {
- "examine": "The only creature with a mouth big enough to hold a cannonball.",
- "melee_animation": "7260",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "7257",
- "death_animation": "7256",
- "name": "Barker toad",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "55",
- "id": "6889",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "The only creature with a mouth big enough to fit a cannon ball into.",
- "melee_animation": "7260",
- "range_animation": "0",
- "magic_level": "55",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7256",
- "name": "Barker toad",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "55",
- "id": "6890",
- "range_level": "55",
- "attack_level": "55"
- },
- {
- "examine": "He looks like the type of guy who would keep penguins.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Penguin keeper",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6891",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The lady of the pet shop.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pet shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6892",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The man of the pet shop.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pet shop owner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6893",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6900",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6902",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6904",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Hatchling dragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "6906",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's so adorably tiny!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby gecko",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6917",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A tiny nut-thief.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby squirrel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6921",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "6942",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6944",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8304",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "8306",
- "death_animation": "8305",
- "name": "Bulldog puppy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "651",
- "strength_level": "1",
- "id": "6969",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "8570",
- "name": "Spirit jelly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "8569",
- "strength_level": "1",
- "id": "6992",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "8571"
- },
- {
- "examine": "On Runescape",
- "melee_animation": "8569",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8570",
- "name": "Spirit jelly",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "50",
- "id": "6993",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "combat_style": "1",
- "melee_animation": "8519",
- "respawn_delay": "0",
- "defence_animation": "8518",
- "death_animation": "8517",
- "name": "Spirit kalphite",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "77",
- "strength_level": "1",
- "id": "6994",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hail to the Queen",
- "combat_style": "1",
- "melee_animation": "6223",
- "range_animation": "0",
- "magic_level": "25",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "6228",
- "name": "Spirit kalphite",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "25",
- "id": "6995",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "A stripy little baby raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "6997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Must be the pack leader.",
- "slayer_task": "92",
- "melee_animation": "6559",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "slayer_exp": "74",
- "magic_animation": "0",
- "death_animation": "6558",
- "name": "Big wolf",
- "defence_level": "62",
- "safespot": null,
- "lifepoints": "21",
- "strength_level": "60",
- "id": "7005",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "An active spiny creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grenwall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hiding spiny creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Grenwall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a strange little creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pawya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Dug by a Pawya (Not actual exam).",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Earth Mound",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What a strange little creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pawya",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A most unlikely creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Platypus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7021",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A most unlikely creature.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby platypus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7024",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ogre snack with wings.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wimpy bird",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7031",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shy creature with a toxic bite.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Diseased kebbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7039",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Fit to wear the uniform?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ogress banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7049",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She walks as if she owns the place.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chief Tess",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A fearsome adversary with no sense of humour.",
- "slayer_task": "64",
- "melee_animation": "8636",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8640",
- "name": "Ogress champion",
- "defence_level": "48",
- "safespot": null,
- "lifepoints": "68",
- "strength_level": "48",
- "id": "7078",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "48"
- },
- {
- "examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
- "melee_animation": "8636",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8640",
- "name": "Ogress",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "7081",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "A large and contentious lady ogre.",
- "slayer_task": "64",
- "melee_animation": "8637",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "8641",
- "name": "Ogress",
- "defence_level": "42",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "42",
- "id": "7082",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "42"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "51",
- "safespot": null,
- "lifepoints": "145",
- "strength_level": "51",
- "id": "7084",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "51"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "54",
- "safespot": null,
- "lifepoints": "142",
- "strength_level": "54",
- "id": "7085",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "54"
- },
- {
- "examine": "Dead stone defending a dead throne room.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "name": "Eucalyptus ent",
- "defence_level": "57",
- "safespot": null,
- "lifepoints": "162",
- "strength_level": "57",
- "id": "7086",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "57"
- },
- {
- "examine": "He seems to be enjoying his time in the bar.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "1",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Thaki the delivery dwarf",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7115",
- "bonuses": "5,5,0,0,0,0,2,3,3,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "One of King Tyras's men.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tyras guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7120",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A hungry-looking rabbit.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Rabbit",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7125",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7128",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7129",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A gnome farmer.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Farmer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7130",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "64",
- "examine": "That's one big Ork... ",
- "melee_animation": "8754",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "8755",
- "death_animation": "8756",
- "name": "Bork",
- "defence_level": "80",
- "lifepoints": "300",
- "strength_level": "90",
- "id": "7133",
- "bonuses": "200,120,100,300,300,120,400,500,300,200,300,400,200,90,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "He can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2354",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She can look after my money.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "1",
- "id": "2355",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner showing his true identity.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Head mourner",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2372",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Mourner",
- "slayer_task": "31",
- "melee_animation": "428",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mourner",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "61",
- "id": "2373",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "61"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2397",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2398",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2399",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2400",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2401",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Mysterious ghost",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "436,439,438",
- "strength_level": "1",
- "id": "2402",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "9230",
- "name": "Jarvald",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "9232",
- "strength_level": "10",
- "id": "2436",
- "range_level": "1",
- "attack_level": "10",
- "defence_animation": "9231"
- },
- {
- "examine": "Looks like a wanna be Fremennik.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Askeladden",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2439",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This support is propping the door closed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Door-support",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "0",
- "strength_level": "1",
- "id": "2443",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Heavy rock!",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "id": "2453",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A teeny-tiny horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "1342",
- "name": "Dagannoth spawn",
- "defence_level": "47",
- "safespot": null,
- "lifepoints": "67",
- "strength_level": "47",
- "id": "2454",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "47"
- },
- {
- "examine": "A spiny horror from the ocean depths...",
- "melee_animation": "1343",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "100",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "90",
- "id": "2455",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "It's an NPC.",
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "slayer_exp": "0",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "2456",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "90",
- "projectile": "294",
- "attack_level": "90"
- },
- {
- "examine": "A Retired Highwayman",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "30",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Rick Turpentine",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "8",
- "id": "2476",
- "bonuses": "30,20,10,20,20,30,30,10,20,10,30,30,20,30,20",
- "range_level": "20",
- "attack_level": "8"
- },
- {
- "examine": "Hey",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Evil Bob",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2479",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Servant of Evil Bob.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Servant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2481",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A slithering serpent that likes to hide in the bush.",
- "melee_animation": "275",
- "range_animation": "0",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "1",
- "poison_amount": "11",
- "magic_animation": "0",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "61",
- "safespot": null,
- "lifepoints": "87",
- "strength_level": "1",
- "id": "2489",
- "aggressive": "true",
- "range_level": "61",
- "attack_level": "1"
- },
- {
- "melee_animation": "275",
- "combat_audio": "3609,3608,3610",
- "poisonous": "true",
- "respawn_delay": "60",
- "defence_animation": "276",
- "poison_amount": "11",
- "death_animation": "278",
- "name": "Bush snake",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2490",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2491",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "5327",
- "combat_audio": "537,539,538",
- "respawn_delay": "60",
- "defence_animation": "5328",
- "death_animation": "5329",
- "name": "Jungle spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "2492",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A flying bloodsucker.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Large mosquito",
- "defence_level": "63",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "1",
- "id": "2493",
- "range_level": "63",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of three highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "66",
- "safespot": null,
- "lifepoints": "94",
- "strength_level": "1",
- "id": "2494",
- "range_level": "66",
- "attack_level": "1"
- },
- {
- "examine": "A swarm of five highly agile mosquitoes.",
- "melee_animation": "2397",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2398",
- "name": "Mosquito swarm",
- "defence_level": "68",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "1",
- "id": "2495",
- "range_level": "68",
- "attack_level": "1"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears deep green.",
- "combat_style": "2",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "64",
- "strength_level": "45",
- "id": "2499",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "45"
- },
- {
- "examine": "An undead victim of some ancient murderous ritual; his skin appears pale yellow.",
- "combat_style": "2",
- "melee_animation": "428",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "43",
- "safespot": null,
- "lifepoints": "61",
- "strength_level": "43",
- "id": "2501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "43"
- },
- {
- "combat_style": "2",
- "melee_animation": "810",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Broodoo victim",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "1",
- "id": "2503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Sharimika",
- "id": "2505"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Sharimika",
- "id": "2506"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Layleen",
- "id": "2511"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Layleen",
- "id": "2512"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Karaday",
- "id": "2514"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Karaday",
- "id": "2515"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Safta Doc",
- "id": "2517"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Safta Doc",
- "id": "2518"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Gabooty",
- "id": "2520"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Gabooty",
- "id": "2521"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Fanellaman",
- "id": "2523"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Fanellaman",
- "id": "2524"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Jagbakoba",
- "id": "2526"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Jagbakoba",
- "id": "2527"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Murcaily",
- "id": "2529"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Murcaily",
- "id": "2530"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Rionasta",
- "id": "2532"
- },
- {
- "examine": "A native of Tai Bwo Wannai.",
- "name": "Rionasta",
- "id": "2533"
- },
- {
- "examine": "He used to swashbuckle his away across the seven seas.",
- "combat_style": "1",
- "melee_animation": "4230",
- "range_animation": "4230",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "404",
- "magic_animation": "4230",
- "death_animation": "9055",
- "name": "Cap'n Hand",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "10",
- "id": "2539",
- "bonuses": "10,30,20,30,10,20,15,30,10,30,15,20,20,0,0",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "examine": "A colourful character.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the dyer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2549",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after the blast furnace.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Blast Furnace Foreman",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2553",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's guarding the bank.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bank guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2574",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brother Althric",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2588",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2591",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2592",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2593",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2594",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2595",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2596",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like some kind of mystic.",
- "start_gfx": "1618",
- "combat_style": "2",
- "melee_animation": "9260",
- "range_animation": "9260",
- "attack_speed": "5",
- "magic_level": "70",
- "end_gfx": "1621",
- "defence_animation": "9287",
- "magic_animation": "9260",
- "death_animation": "9291",
- "name": "TzHaar-Mej",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "70",
- "id": "2597",
- "bonuses": "60,120,90,120,60,60,50,45,0,0,0,0,0,0,0",
- "range_level": "70",
- "projectile": "1617",
- "attack_level": "70"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2598",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2599",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2600",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2601",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2602",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "2603",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "50"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2604",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2605",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2606",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2607",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2608",
- "bonuses": "50,30,120,120,120,130,20,50,45,0,0,0,0,0,0",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Doesn't look very social.",
- "combat_style": "1",
- "melee_animation": "9345",
- "range_animation": "9345",
- "magic_level": "70",
- "defence_animation": "9287",
- "slayer_exp": "0",
- "magic_animation": "9345",
- "death_animation": "9291",
- "name": "TzHaar-Xil",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "70",
- "id": "2609",
- "bonuses": "50,30,80,56,80,80,100,60,50,45,45,0,0,0,0",
- "range_level": "70",
- "projectile": "442",
- "attack_level": "70"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "attack_speed": "7",
- "id": "2628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Tz-Kek",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2630",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "The Tok-Xil fires deadly spines out of its arm",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Tok-Xil",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "114",
- "strength_level": "1",
- "id": "2631",
- "aggressive": "true",
- "range_level": "80",
- "attack_level": "1"
- },
- {
- "examine": "A busy-body who loves a bit of gossip.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Miss Schism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2634",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Dragonkin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "2641",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "10",
- "safespot": null,
- "lifepoints": "14",
- "strength_level": "10",
- "id": "2674",
- "range_level": "1",
- "attack_level": "10"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "799",
- "range_animation": "799",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "defence_animation": "404",
- "weakness": "7",
- "magic_animation": "799",
- "death_animation": "9055",
- "name": "Highwayman",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "13",
- "strength_level": "8",
- "id": "2677",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2678",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2679",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2680",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An ugly green creature.",
- "melee_animation": "6185",
- "range_animation": "6185",
- "combat_audio": "469,472,471",
- "attack_speed": "5",
- "defence_animation": "6183",
- "slayer_exp": "5",
- "magic_animation": "6185",
- "death_animation": "6182",
- "name": "Goblin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "2",
- "id": "2681",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "2682",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Hengel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "7",
- "melee_animation": "422",
- "strength_level": "1",
- "id": "2683",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2685",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2686",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature.",
- "melee_animation": "164",
- "range_animation": "164",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "164",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2687",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "An ugly smelly creature, with a spear.",
- "melee_animation": "163",
- "range_animation": "163",
- "combat_audio": "469,472,471",
- "attack_speed": "6",
- "defence_animation": "165",
- "magic_animation": "163",
- "death_animation": "167",
- "name": "Hobgoblin",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "29",
- "strength_level": "24",
- "id": "2688",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Didn't the mage say this procedure was totally safe?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2689",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A salty seafarer. Needs a wash.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jack Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2690",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duck",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2693",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Mini quackers.",
- "slayer_task": "7",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "3468",
- "name": "Duckling",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "strength_level": "1",
- "id": "2694",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Pirate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2695",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Known for his light-fingered qualities.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Thief",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2696",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He doesn't look so happy now he's in jail.",
- "melee_animation": "422",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "11",
- "id": "2697",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "11"
- },
- {
- "examine": "He's guarding the prison.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2699",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2700",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2701",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2702",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "A prison guard.",
- "melee_animation": "390",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Guard",
- "defence_level": "13",
- "safespot": null,
- "lifepoints": "18",
- "strength_level": "13",
- "id": "2703",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "13"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2704",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Keeping an eye out for suspicious activity.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2705",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "No one likes crabs...",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Crab",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2706",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A sea bird.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Seagull",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2707",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Caution: HOT!",
- "start_gfx": "99",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "18",
- "respawn_delay": "60",
- "end_gfx": "101",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Fire wizard",
- "defence_level": "18",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2709",
- "range_level": "1",
- "projectile": "100",
- "attack_level": "1"
- },
- {
- "examine": "Hydro-power!",
- "combat_style": "2",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "14",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Water wizard",
- "defence_level": "14",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2710",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His hands are covered in mud. At least",
- "start_gfx": "96",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "16",
- "respawn_delay": "60",
- "end_gfx": "98",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Earth wizard",
- "defence_level": "16",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "2711",
- "range_level": "1",
- "projectile": "97",
- "attack_level": "1"
- },
- {
- "examine": "At least he looks solid enough to fight.",
- "start_gfx": "90",
- "combat_style": "2",
- "start_height": "80",
- "melee_animation": "414",
- "range_animation": "0",
- "magic_level": "12",
- "respawn_delay": "60",
- "end_gfx": "92",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "711",
- "death_animation": "2553",
- "name": "Air wizard",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "1",
- "id": "2712",
- "range_level": "1",
- "projectile": "91",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2714",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "She'll store my items for me.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Betty",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2718",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2728",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2729",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Holy looking.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Monk of Entrana",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2731",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2734",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Hangs out in caves.",
- "melee_animation": "9232",
- "range_animation": "9232",
- "attack_speed": "5",
- "respawn_delay": "0",
- "defence_animation": "9231",
- "magic_animation": "9232",
- "death_animation": "9230",
- "name": "Tz-Kih",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "27",
- "id": "2735",
- "aggressive": "true",
- "bonuses": "150,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2736",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "magic_level": "20",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "60",
- "id": "2737",
- "aggressive": "true",
- "bonuses": "80,45,45,45,45,22,0,0,0,0,0,0,0,0,0",
- "range_level": "20",
- "attack_level": "60"
- },
- {
- "examine": "Looks like living lava...",
- "melee_animation": "9233",
- "range_animation": "9233",
- "attack_speed": "5",
- "defence_animation": "9235",
- "magic_animation": "9233",
- "death_animation": "9234",
- "name": "Tz-Kek",
- "defence_level": "11",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "30",
- "id": "2738",
- "bonuses": "60,22,22,22,22,11,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2739",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "I don't like the look of those spines...",
- "melee_animation": "9245",
- "range_animation": "9245",
- "attack_speed": "5",
- "defence_animation": "9242",
- "weakness": "4",
- "magic_animation": "9245",
- "death_animation": "9239",
- "name": "Tok-Xil",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "80",
- "id": "2740",
- "bonuses": "80,90,86,90,90,90,45,55,26,55,0,0,0,0,0",
- "range_level": "80",
- "attack_level": "80"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2741",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "Holy reptile...",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9249",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-MejKot",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "100",
- "id": "2742",
- "aggressive": "true",
- "bonuses": "100,180,180,180,180,90,97,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "100"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2743",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "That's one hot dog!",
- "melee_animation": "9265",
- "range_animation": "9265",
- "attack_speed": "5",
- "magic_level": "150",
- "defence_animation": "9268",
- "magic_animation": "9265",
- "death_animation": "9269",
- "name": "Ket-Zek",
- "defence_level": "180",
- "safespot": null,
- "lifepoints": "160",
- "strength_level": "150",
- "id": "2744",
- "bonuses": "180,180,280,280,280,250,140,152,131,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "150"
- },
- {
- "examine": "Mini Menace.",
- "melee_animation": "9252",
- "range_animation": "9252",
- "attack_speed": "5",
- "defence_animation": "9253",
- "magic_animation": "9252",
- "death_animation": "9257",
- "name": "Yt-HurKot",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "75",
- "id": "2746",
- "aggressive": "true",
- "bonuses": "100,110,110,110,110,60,110,30,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "She can look after my money.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "null",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2759",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A Ranger of the Temple Knights.",
- "melee_animation": "426",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Ranger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "20",
- "strength_level": "1",
- "id": "2779",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2785",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Digging.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2786",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Confused.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Slave",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2787",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Drill Sergeant from heck!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Sergeant Damien",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2790",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man down on his luck.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tramp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2792",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An angry Ogre in a funny hat.",
- "melee_animation": "359",
- "range_animation": "359",
- "attack_speed": "6",
- "defence_animation": "360",
- "magic_animation": "359",
- "death_animation": "361",
- "name": "Ogre",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "30",
- "id": "2801",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "They just call him 'Coach'.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gnome Coach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2802",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "40",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Lizard",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "1",
- "id": "2803",
- "aggressive": "true",
- "range_level": "55",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2804",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2805",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "slayer_exp": "25",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Desert Lizard",
- "defence_level": "45",
- "safespot": null,
- "lifepoints": "25",
- "strength_level": "1",
- "id": "2806",
- "aggressive": "true",
- "range_level": "45",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "slayer_exp": "15",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2807",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A cold-blooded creature, partial to warmth.",
- "slayer_task": "26",
- "melee_animation": "2776",
- "range_animation": "2776",
- "attack_speed": "5",
- "defence_animation": "2777",
- "weakness": "0",
- "magic_animation": "2776",
- "death_animation": "2778",
- "name": "Small Lizard",
- "defence_level": "15",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "2808",
- "aggressive": "true",
- "range_level": "15",
- "attack_level": "1"
- },
- {
- "examine": "A camel who has the soul of a poet.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2809",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel whose love is unrequited.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Elly the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2810",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to fly some day.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ollie the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2811",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who likes to rest.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cam the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2812",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A camel who wants to see the world.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Neferti the Camel",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2815",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shifty-looking character.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2825",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Pirate Pete",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "703,705,704",
- "strength_level": "1",
- "id": "2826",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A shabby-looking leader.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Braindeath",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2827",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Most of an angry",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "50% Luke",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2828",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "I wonder if it was all the 'rum' that pickled him.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Captain Donnie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2830",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2837",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2838",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2839",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2840",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2841",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "An undead sea scoundrel.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie pirate",
- "defence_level": "36",
- "safespot": null,
- "lifepoints": "51",
- "strength_level": "36",
- "id": "2842",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "36"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2843",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2844",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2845",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5651",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5654",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2846",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2847",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "He talks a good fight.",
- "slayer_task": "93",
- "melee_animation": "5647",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5649",
- "name": "Zombie swab",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "2848",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "34"
- },
- {
- "examine": "The pun was intended.",
- "melee_animation": "2804",
- "range_animation": "0",
- "magic_level": "40",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "2805",
- "name": "Evil spirit",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "57",
- "strength_level": "40",
- "id": "2849",
- "aggressive": "true",
- "range_level": "40",
- "attack_level": "40"
- },
- {
- "examine": "A bunch of legs, eyes and teeth.",
- "slayer_task": "76",
- "melee_animation": "5319",
- "range_animation": "0",
- "combat_audio": "537,539,538",
- "attack_speed": "4",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "slayer_exp": "40",
- "magic_animation": "0",
- "death_animation": "5321",
- "name": "Fever spider",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "40",
- "strength_level": "30",
- "id": "2850",
- "bonuses": "0,0,0,0,0,20,15,10,15,15,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "60"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2851",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2852",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2853",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2854",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2855",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2857",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A worker in the brewery.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Brewer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2858",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2863",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2866",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2869",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "30",
- "name": "Zombie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "40",
- "combat_audio": "931,923,922",
- "strength_level": "1",
- "id": "2878",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A knee-high horror from the ocean depths...",
- "slayer_task": "24",
- "melee_animation": "1579",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "1581",
- "name": "Dagannoth fledgeling",
- "defence_level": "52",
- "safespot": null,
- "lifepoints": "74",
- "strength_level": "52",
- "id": "2880",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "52"
- },
- {
- "agg_radius": "8",
- "examine": "The Dagannoth King responsible for the death of Bukalla.",
- "combat_style": "1",
- "melee_animation": "2855",
- "attack_speed": "4",
- "magic_level": "255",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Supreme",
- "defence_level": "128",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2881",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,10,10,10,255,550,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "projectile": "475",
- "attack_level": "255"
- },
- {
- "agg_radius": "64",
- "melee_animation": "8754",
- "attack_speed": "8",
- "respawn_delay": "60",
- "defence_animation": "8755",
- "death_animation": "8756",
- "name": "Bork",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "300",
- "strength_level": "1",
- "id": "7134",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Aww, aren't they the cutest li - Argh!",
- "melee_animation": "8760",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "8761",
- "name": "Ork legion",
- "defence_level": "57",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "68",
- "id": "7135",
- "aggressive": "true",
- "bonuses": "5,10,3,5,3,5,5,5,10,0,0,0,0,0,0",
- "range_level": "68",
- "attack_level": "68"
- },
- {
- "examine": "A powerful wizard.",
- "combat_style": "2",
- "attack_speed": "25",
- "magic_level": "90",
- "spell_id": "11",
- "name": "Dagon'hai Elite",
- "defence_level": "40",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "90",
- "id": "7137",
- "aggressive": "true",
- "bonuses": "220,190,140,120,120,130,90,120,120,200,100,154,150,93,190",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7138",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7139",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "A monk of the Dagon'hai.",
- "melee_animation": "422",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "98",
- "respawn_delay": "60",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Dagon'hai Monk",
- "defence_level": "80",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "84",
- "id": "7140",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "84"
- },
- {
- "examine": "He seems to have gone mad.",
- "melee_animation": "426",
- "range_animation": "426",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "null",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "25",
- "id": "7141",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "He thumps people who cheat.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7142",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7144",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinchette jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7145",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinchette jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7146",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7147",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7148",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7149",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An imprisoned gublinch.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gublinch jailmate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7150",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7152",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7156",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A person sitting an exam.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Student",
- "defence_level": "1",
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7157",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "agg_radius": "8",
- "examine": "A legendary Dagannoth King, rumoured to fly on the North winds.",
- "combat_style": "2",
- "melee_animation": "2854",
- "attack_speed": "4",
- "magic_level": "255",
- "spell_id": "48",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Prime",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2882",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,255,10,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "1",
- "attack_level": "255"
- },
- {
- "agg_radius": "8",
- "examine": "Firstborn of the legendary Dagannoth Kings.",
- "melee_animation": "2853",
- "attack_speed": "4",
- "magic_level": "1",
- "respawn_delay": "60",
- "defence_animation": "2852",
- "death_animation": "2856",
- "name": "Dagannoth Rex",
- "defence_level": "255",
- "movement_radius": "8",
- "safespot": null,
- "lifepoints": "255",
- "strength_level": "255",
- "id": "2883",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,255,255,255,10,255,0,0,0,0,0",
- "clue_level": "2",
- "range_level": "255",
- "attack_level": "255"
- },
- {
- "name": "Boulder",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "240",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "2886",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "85",
- "strength_level": "1",
- "id": "2887",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "1343",
- "respawn_delay": "60",
- "defence_animation": "1340",
- "death_animation": "1342",
- "name": "Dagannoth",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "2888",
- "aggressive": "true",
- "clue_level": "1",
- "range_level": "1",
- "projectile": "288",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2892",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "10",
- "id": "2894",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "20",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "agg_radius": "12",
- "examine": "A sneaky, spiny, subterranean sea-dwelling scamp.",
- "combat_style": "2",
- "melee_animation": "2868",
- "range_animation": "2866",
- "attack_speed": "6",
- "magic_level": "65",
- "spell_id": "14",
- "respawn_delay": "55",
- "defence_animation": "2869",
- "slayer_exp": "0",
- "magic_animation": "2866",
- "death_animation": "2866",
- "name": "Spinolyp",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "60",
- "id": "2896",
- "aggressive": "true",
- "bonuses": "70,50,60,50,10,60,30,10,60,60,70,50,0,0,0",
- "range_level": "70",
- "projectile": "294",
- "attack_level": "1"
- },
- {
- "melee_animation": "64",
- "respawn_delay": "60",
- "defence_animation": "65",
- "death_animation": "67",
- "name": "Agrith Naar",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "id": "2919",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Who ate all the rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2941",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Obviously punches above his weight.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hooknosed Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2948",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks rich like an actor of sorts.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jimmy Dazzler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2949",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Once beautiful",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "The Face",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2950",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "What is he?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Smokin' Joe",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2952",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks fairly well fed.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Silver merchant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2958",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2962",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2963",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2964",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2965",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2966",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2967",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2968",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2969",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2970",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2971",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2972",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Guard",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "511,513,512",
- "strength_level": "1",
- "id": "2973",
- "clue_level": "1",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2980",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "2981",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Cute and fluffy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Topsy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2990",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A friendly feline?",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gertrude's cat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2997",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Very well to do. I wonder what he's doing here.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "2998",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Rich.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3001",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3002",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3003",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3004",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3005",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Poor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Gambler",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3006",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3007",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3008",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3009",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3010",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3011",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3012",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3013",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3014",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3015",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3016",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3017",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "3018",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Tool leprechaun",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3021",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Phenomenal cosmic powers",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Genie",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3022",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "2",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Black golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3026",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "White golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3027",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "An animated clay statue.",
- "melee_animation": "2917",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "1",
- "magic_animation": "0",
- "death_animation": "2919",
- "name": "Grey golem",
- "defence_level": "55",
- "safespot": null,
- "lifepoints": "78",
- "strength_level": "55",
- "id": "3028",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "55"
- },
- {
- "examine": "A water salesman from Pollnivneach.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ali the Carter",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3030",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "death_animation": "836",
- "name": "Poltenip",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3042",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "death_animation": "836",
- "name": "Radat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "melee_animation": "395",
- "strength_level": "1",
- "id": "3043",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1",
- "defence_animation": "425"
- },
- {
- "examine": "Custodian of the shrine to Elidinis.",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Shiratti the Custodian",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3044",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A banker of Nardah.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nardah Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3046",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3051",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3052",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3053",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3054",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3055",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A mysterious watcher.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Mystery figure",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "3056",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "7049",
- "respawn_delay": "60",
- "defence_animation": "7050",
- "death_animation": "836",
- "name": "Leon d'Cour",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "123",
- "strength_level": "1",
- "id": "3067",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3068",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A very dangerous pile of animated Wyvern bones.",
- "slayer_task": "95",
- "start_gfx": "499",
- "melee_animation": "2985",
- "attack_speed": "6",
- "weakness": "9",
- "slayer_exp": "210",
- "magic_animation": "2985",
- "death_animation": "2987",
- "lifepoints": "200",
- "id": "3069",
- "aggressive": "true",
- "bonuses": "0,0,0,0,0,140,90,90,80,140,0,0,0,0,0",
- "agg_radius": "6",
- "range_animation": "2989",
- "magic_level": "125",
- "end_gfx": "501",
- "defence_animation": "2983",
- "name": "Skeletal Wyvern",
- "defence_level": "120",
- "safespot": null,
- "strength_level": "116",
- "clue_level": "2",
- "range_level": "120",
- "projectile": "500",
- "attack_level": "125"
- },
- {
- "examine": "A household pest.",
- "melee_animation": "8785",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8788",
- "name": "Cockroach drone",
- "defence_level": "3",
- "safespot": null,
- "lifepoints": "4",
- "strength_level": "3",
- "id": "7158",
- "range_level": "1",
- "attack_level": "3"
- },
- {
- "examine": "Eurgh! A big bug.",
- "melee_animation": "8787",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8790",
- "name": "Cockroach worker",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "7159",
- "range_level": "1",
- "attack_level": "22"
- },
- {
- "examine": "Euww! A giant bug.",
- "melee_animation": "8786",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "8",
- "magic_animation": "0",
- "death_animation": "8789",
- "name": "Cockroach soldier",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "97",
- "strength_level": "26",
- "id": "7160",
- "bonuses": "10,10,10,5,0,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "7161",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "422",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Mugger",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "8",
- "strength_level": "1",
- "id": "7162",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7202",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7204",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eaten a lot of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Cockroach",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7206",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's searching for crumbs of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Spider",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7207",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It seems to have eaten a lot of chocolate.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Snail",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7209",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7210",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7212",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7214",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7216",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7218",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7220",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7222",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7224",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7226",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7228",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7229",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7230",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7231",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7232",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's a tiny",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "629,631,630",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7233",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7234",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7235",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Baby monkey",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "629,631,630",
- "strength_level": "1",
- "id": "7236",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A stripy little baby raccoon.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby Raccoon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7275",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's so adorably tiny!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Baby gecko",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7285",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "1",
- "melee_animation": "8222",
- "magic_level": "70",
- "respawn_delay": "0",
- "defence_animation": "8224",
- "death_animation": "8226",
- "name": "Swamp titan",
- "defence_level": "78",
- "safespot": null,
- "lifepoints": "556",
- "strength_level": "1",
- "id": "7329",
- "bonuses": "60,60,60,60,50,50,100,200,200,28,100,100,70,70,70",
- "range_level": "70",
- "attack_level": "1"
- },
- {
- "examine": "Do you hear duelling banjos?",
- "combat_style": "1",
- "melee_animation": "8222",
- "range_animation": "0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8226",
- "name": "Swamp titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "117",
- "strength_level": "60",
- "id": "7330",
- "bonuses": "60,60,60,60,50,50,100,200,200,28,100,100,70,70,70",
- "range_level": "65",
- "attack_level": "60"
- },
- {
- "examine": "It buzzes and bites. Nasty.",
- "melee_animation": "8032",
- "range_animation": "8032",
- "magic_level": "21",
- "respawn_delay": "50",
- "defence_animation": "8034",
- "magic_animation": "8032",
- "death_animation": "8033",
- "name": "Spirit mosquito",
- "defence_level": "25",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "24",
- "id": "7331",
- "bonuses": "45,49,42,39,47,46,29,43,51,16,53,10,0,0,0",
- "range_level": "25",
- "attack_level": "28"
- },
- {
- "examine": "It buzzes and bites. Nasty.",
- "melee_animation": "8032",
- "range_animation": "8032",
- "magic_level": "21",
- "respawn_delay": "50",
- "defence_animation": "8034",
- "weakness": "10",
- "magic_animation": "8032",
- "death_animation": "8033",
- "name": "Spirit mosquito",
- "defence_level": "25",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "43",
- "strength_level": "24",
- "id": "7332",
- "bonuses": "45,49,42,39,47,46,29,43,51,16,53,10,0,0,0",
- "range_level": "25",
- "attack_level": "28"
- },
- {
- "examine": "It spins.",
- "melee_animation": "8172",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8176",
- "name": "Void spinner",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7334",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "death_animation": "7864",
- "name": "Forge regent",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7863",
- "strength_level": "1",
- "id": "7335",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7865"
- },
- {
- "examine": "This one will burn right through the net!",
- "melee_animation": "7863",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7864",
- "name": "Forge regent",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "108",
- "strength_level": "60",
- "id": "7336",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "5230",
- "name": "Spirit larupia",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "5228",
- "strength_level": "1",
- "id": "7337",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5227"
- },
- {
- "examine": "Fast cat is fast.",
- "melee_animation": "5228",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit larupia",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7338",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It'll kill your enemies, and makes a great cup of tea.",
- "melee_animation": "7879",
- "range_animation": "422",
- "magic_level": "70",
- "respawn_delay": "50",
- "defence_animation": "7878",
- "weakness": "0",
- "magic_animation": "422",
- "death_animation": "7880",
- "name": "Geyser titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "620",
- "strength_level": "70",
- "id": "7339",
- "bonuses": "115,115,115,110,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "It'll kill your enemies, and makes a great cup of tea.",
- "melee_animation": "7879",
- "range_animation": "422",
- "magic_level": "70",
- "respawn_delay": "50",
- "defence_animation": "7878",
- "weakness": "0",
- "slayer_exp": "0",
- "magic_animation": "422",
- "death_animation": "7880",
- "name": "Geyser titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "620",
- "strength_level": "70",
- "id": "7340",
- "bonuses": "115,115,115,110,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "combat_style": "1",
- "melee_animation": "7980",
- "respawn_delay": "0",
- "defence_animation": "7981",
- "death_animation": "7692",
- "name": "Lava titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "528",
- "strength_level": "1",
- "id": "7341",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The King of the Titans!",
- "melee_animation": "8183",
- "range_animation": "8183",
- "magic_level": "70",
- "respawn_delay": "15",
- "defence_animation": "8185",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "8183",
- "death_animation": "8184",
- "name": "Steel titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "750",
- "strength_level": "70",
- "id": "7343",
- "bonuses": "105,105,105,100,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "The King of the Titans!",
- "melee_animation": "8183",
- "range_animation": "8183",
- "magic_level": "70",
- "respawn_delay": "15",
- "defence_animation": "8185",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "8183",
- "death_animation": "8184",
- "name": "Steel titan",
- "defence_level": "70",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "750",
- "strength_level": "70",
- "id": "7344",
- "bonuses": "105,105,105,100,110,102,95,110,110,105,78,120,115,120,120",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "Four fists can make quite an impression IN someone...",
- "melee_animation": "8050",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "8051",
- "death_animation": "8052",
- "name": "Obsidian golem",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "60",
- "id": "7345",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "examine": "Four fists can make quite an impression IN someone...",
- "melee_animation": "8050",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8052",
- "name": "Obsidian golem",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "104",
- "strength_level": "60",
- "id": "7346",
- "bonuses": "100,120,90,100,90,90,40,50,0,0,0,0,0,0,0",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "5990",
- "name": "Talon beast",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "5989",
- "strength_level": "1",
- "id": "7347",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "5988"
- },
- {
- "examine": "If a normal black cat is bad luck",
- "melee_animation": "5989",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5990",
- "name": "Talon beast",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "110",
- "strength_level": "60",
- "id": "7348",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7979",
- "name": "Abyssal titan",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "667",
- "melee_animation": "7693",
- "strength_level": "1",
- "id": "7349",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7691"
- },
- {
- "examine": "Big",
- "melee_animation": "7693",
- "range_animation": "0",
- "magic_level": "70",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7692",
- "name": "Abyssal titan",
- "defence_level": "70",
- "safespot": null,
- "lifepoints": "125",
- "strength_level": "70",
- "id": "7350",
- "range_level": "70",
- "attack_level": "70"
- },
- {
- "examine": "It torches.",
- "melee_animation": "8235",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8236",
- "name": "Void torcher",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7352",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "death_animation": "7758",
- "name": "Giant chinchompa",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "1",
- "melee_animation": "7755",
- "strength_level": "1",
- "id": "7353",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7753"
- },
- {
- "examine": "Looks a little...volatile.",
- "melee_animation": "7755",
- "range_animation": "0",
- "magic_level": "29",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7758",
- "name": "Giant chinchompa",
- "defence_level": "29",
- "safespot": null,
- "lifepoints": "41",
- "strength_level": "29",
- "id": "7354",
- "range_level": "29",
- "attack_level": "29"
- },
- {
- "examine": "Scorching!",
- "melee_animation": "7834",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7833",
- "name": "Fire titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7355",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Scorching!",
- "melee_animation": "7834",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7833",
- "name": "Fire titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7356",
- "bonuses": "64,45,76,82,208,84,221,231,179,89,113,23,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Gathers rolling stones to bash people with.",
- "melee_animation": "7844",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7843",
- "name": "Moss titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7357",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Gathers rolling stones to bash people with.",
- "melee_animation": "7844",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7843",
- "name": "Moss titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7358",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Frosty the highly violent snowman.",
- "melee_animation": "7845",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7846",
- "name": "Ice titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7359",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "examine": "Frosty the highly violent snowman.",
- "melee_animation": "7845",
- "range_animation": "7834",
- "attack_speed": "5",
- "magic_level": "40",
- "respawn_delay": "50",
- "defence_animation": "7832",
- "weakness": "10",
- "slayer_exp": "0",
- "magic_animation": "7834",
- "death_animation": "7846",
- "name": "Ice titan",
- "defence_level": "40",
- "poison_immune": "true",
- "safespot": null,
- "lifepoints": "476",
- "strength_level": "30",
- "id": "7360",
- "bonuses": "64,45,76,82,120,84,140,120,106,89,113,80,0,0,0",
- "range_level": "30",
- "attack_level": "40"
- },
- {
- "combat_style": "1",
- "melee_animation": "8257",
- "attack_speed": "3",
- "respawn_delay": "0",
- "defence_animation": "8256",
- "death_animation": "8258",
- "name": "Spirit Tz-Kih",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "1",
- "id": "7361",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This bat burned down the belfry.",
- "combat_style": "1",
- "melee_animation": "8257",
- "range_animation": "0",
- "attack_speed": "3",
- "magic_level": "22",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8258",
- "name": "Spirit Tz-Kih",
- "defence_level": "22",
- "safespot": null,
- "lifepoints": "31",
- "strength_level": "22",
- "id": "7362",
- "range_level": "22",
- "attack_level": "22"
- },
- {
- "start_gfx": "1367",
- "melee_animation": "5228",
- "respawn_delay": "0",
- "defence_animation": "5227",
- "death_animation": "5230",
- "name": "Spirit graahk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7363",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Those spikes are pretty big!",
- "start_gfx": "1367",
- "melee_animation": "5229",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit graahk",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7364",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "start_gfx": "1365",
- "melee_animation": "5228",
- "respawn_delay": "0",
- "defence_animation": "5227",
- "death_animation": "5230",
- "name": "Spirit kyatt",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7365",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Those teeth are pretty big!",
- "start_gfx": "1365",
- "melee_animation": "5228",
- "range_animation": "0",
- "magic_level": "50",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "5230",
- "name": "Spirit kyatt",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "81",
- "strength_level": "50",
- "id": "7366",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It shifts.",
- "melee_animation": "8131",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8133",
- "name": "Void shifter",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7368",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "examine": "It ravages.",
- "melee_animation": "8086",
- "range_animation": "0",
- "magic_level": "34",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8087",
- "name": "Void ravager",
- "defence_level": "34",
- "safespot": null,
- "lifepoints": "48",
- "strength_level": "34",
- "id": "7371",
- "range_level": "34",
- "attack_level": "34"
- },
- {
- "examine": "It's like a little stomach on wings.",
- "melee_animation": "7994",
- "range_animation": "0",
- "magic_level": "60",
- "respawn_delay": "0",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "7996",
- "name": "Ravenous locust",
- "defence_level": "60",
- "safespot": null,
- "lifepoints": "100",
- "strength_level": "60",
- "id": "7373",
- "range_level": "60",
- "attack_level": "60"
- },
- {
- "death_animation": "7996",
- "name": "Ravenous locust",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "melee_animation": "7994",
- "strength_level": "1",
- "id": "7374",
- "range_level": "1",
- "respawn_delay": "0",
- "attack_level": "1",
- "defence_animation": "7995"
- },
- {
- "examine": "He is an iron man!",
- "combat_style": "1",
- "melee_animation": "7946",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "7948",
- "weakness": "10",
- "death_animation": "7947",
- "name": "Iron titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "694",
- "strength_level": "65",
- "id": "7375",
- "bonuses": "120,130,100,109,80,120,102,90,103,80,100,108,105,66,90",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "He is an iron man!",
- "combat_style": "1",
- "melee_animation": "7946",
- "combat_audio": "0,0,0",
- "magic_level": "65",
- "respawn_delay": "0",
- "defence_animation": "7948",
- "weakness": "10",
- "slayer_exp": "0",
- "death_animation": "7947",
- "name": "Iron titan",
- "defence_level": "65",
- "safespot": null,
- "lifepoints": "694",
- "strength_level": "65",
- "id": "7376",
- "bonuses": "120,130,100,109,80,120,102,90,103,80,100,108,105,66,90",
- "range_level": "65",
- "attack_level": "65"
- },
- {
- "examine": "Where did I put the marshmallows?",
- "melee_animation": "8080",
- "range_animation": "0",
- "magic_level": "46",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Pyrelord",
- "defence_level": "46",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "46",
- "id": "7378",
- "range_level": "46",
- "attack_level": "46"
- },
- {
- "melee_animation": "8965",
- "respawn_delay": "60",
- "defence_animation": "8966",
- "death_animation": "8967",
- "name": "Elfinlocks",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "7379",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "8965",
- "respawn_delay": "60",
- "defence_animation": "8966",
- "death_animation": "8967",
- "name": "Missi Sissi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "id": "7380",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8955",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8957",
- "death_animation": "8956",
- "name": "Missi Sissi",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "7381",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "combat_style": "2",
- "melee_animation": "8955",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8957",
- "death_animation": "8956",
- "name": "Uberlass",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "id": "7382",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The vengeful spirit of one who died within Daemonheim.",
- "melee_animation": "0",
- "range_animation": "0",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "3",
- "magic_animation": "0",
- "name": "Elisabeta",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "7",
- "strength_level": "25",
- "id": "7398",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "25"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "2705",
- "range_animation": "2705",
- "combat_audio": "3102,3104,3103",
- "attack_speed": "5",
- "defence_animation": "2706",
- "magic_animation": "2705",
- "death_animation": "2707",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "2",
- "strength_level": "1",
- "id": "7417",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "An impling manager: what a terrifying thought!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wigglewoo",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7425",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "This worker looks after the incubator.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Orangeowns",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7426",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He holds up passers by.",
- "melee_animation": "386",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "7",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Eudav",
- "defence_level": "8",
- "safespot": null,
- "lifepoints": "11",
- "strength_level": "8",
- "id": "7443",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "8"
- },
- {
- "name": "Fairtrade",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "7459",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Teapotspout",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "75",
- "strength_level": "1",
- "attack_speed": "5",
- "id": "7460",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "A popular dwarven delicacy.",
- "melee_animation": "4933",
- "range_animation": "4933",
- "combat_audio": "703,705,704",
- "attack_speed": "5",
- "defence_animation": "4934",
- "magic_animation": "4933",
- "death_animation": "4935",
- "name": "Rat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "1",
- "id": "7461",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "It's bubbling, gross.",
- "melee_animation": "9130",
- "range_animation": "9130",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9132",
- "magic_animation": "9130",
- "death_animation": "9131",
- "name": "Hotwater",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "99",
- "id": "7462",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,45,20,0",
- "range_level": "1",
- "attack_level": "99"
- },
- {
- "examine": "It's bubbling, gross.",
- "melee_animation": "9130",
- "range_animation": "9130",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9132",
- "magic_animation": "9130",
- "death_animation": "9131",
- "name": "Hotwater",
- "defence_level": "99",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "99",
- "id": "7463",
- "bonuses": "20,20,20,20,20,20,20,20,20,20,20,20,45,20,0",
- "range_level": "1",
- "attack_level": "99"
- },
- {
- "examine": "His usual sunny disposition is not in evidence.",
- "range_animation": "0",
- "magic_level": "30",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "10",
- "magic_animation": "0",
- "name": "Lady Seenit",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7475",
- "range_level": "30",
- "attack_level": "30"
- },
- {
- "name": "Berrybree",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7476",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Stuffstuffer",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7477",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Learking",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "60",
- "strength_level": "1",
- "id": "7479",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Rachael",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "70",
- "strength_level": "1",
- "id": "7480",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "You clearly can't live on treasure alone.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Cool Mom227",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7481",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A testament to the effect of greed.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Purepker895",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7482",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He wanted loot",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Pkmaster0036",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7483",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Eternally looking for that big payday.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "Cow1337killr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7484",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An anatomist's dream.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "1337sp34kr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7487",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A hand seems to be gripping his spine through his chest. Ouch.",
- "slayer_task": "75",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "5491",
- "name": "1337sp34kr",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7488",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A desert dweller taken to banditry.",
- "melee_animation": "9705",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sarah Domin",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7492",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Calls himself an archaeologist.",
- "melee_animation": "9715",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sarah Domin",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7493",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He hasn't found much of use",
- "melee_animation": "9705",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Sue Spammers",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7494",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "An amateur historian with added greed.",
- "melee_animation": "9715",
- "range_animation": "0",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Killerwail",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7495",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "A rocky horror.",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Sabre-toothed kyatt",
- "defence_level": "27",
- "safespot": null,
- "lifepoints": "38",
- "strength_level": "27",
- "id": "7497",
- "range_level": "1",
- "attack_level": "27"
- },
- {
- "examine": "This dung beetle has mistaken you for its staple diet.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Cerulean twitch",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7500",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "It's looking unwell - probably something it ate.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Abone",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7501",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "Once a valuable contributor to the ecosystem.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Mythmaster",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7502",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "This is what happens if you play with your food.",
- "slayer_task": "70",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "name": "Donkey Wrong",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "42",
- "strength_level": "30",
- "id": "7503",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "30"
- },
- {
- "examine": "He likes a good fight",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Creapantic",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7504",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes a good fight",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Frondlike",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7505",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Happy Spud",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7506",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Blood-thirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Nobodyhere",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7507",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bluehairlass",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7508",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ilikekebabs",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7510",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "His favourite must be winning.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Trunka Lex",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7511",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Val Razz",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7512",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Probably discussing the strengths and weaknesses of the fighting slaves.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Abstractclas",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7513",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodthirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Bigbluebox",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7514",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Bloodthirsty and enthusiastic.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Funorbrox",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7515",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He's asleep.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Morrisnorris",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7518",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He demands to have some booze.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ketchuppl0x",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7520",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "melee_animation": "395",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "425",
- "death_animation": "836",
- "name": "Redheadmonky",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "22",
- "strength_level": "1",
- "id": "7528",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "slayer_exp": "0",
- "examine": "It's an NPC.",
- "name": "3sacrowd",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7532",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "90",
- "magic_level": "70",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7551",
- "bonuses": "200,200,200,100,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "5",
- "magic_level": "50",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7552",
- "bonuses": "200,200,200,200,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "attack_speed": "5",
- "magic_level": "90",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7553",
- "bonuses": "200,200,100,200,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Not somewhere I want to go...",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "90",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "90",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7554",
- "bonuses": "100,100,200,200,100,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7555",
- "bonuses": "100,100,100,50,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "attack_speed": "5",
- "magic_level": "15",
- "respawn_delay": "125",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7556",
- "bonuses": "100,100,100,100,25,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7557",
- "bonuses": "100,100,50,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Void Knight will soon weaken the shield.",
- "melee_animation": "0",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "30",
- "respawn_delay": "125",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Portal",
- "defence_level": "30",
- "safespot": null,
- "lifepoints": "250",
- "strength_level": "1",
- "id": "7558",
- "bonuses": "50,50,100,100,50,0,0,0,0,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Lostme",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7560",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Chiercat",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7561",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Skydischarge",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7562",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Agplus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7563",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Distantthin",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7564",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Allmarshes",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7565",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Explosive67",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7566",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks after your Farming tools.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Alpha1beta",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7569",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Solltalk",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7570",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Enjoys locking up animals in small pens.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Hm Val",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7571",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like the type of guy who would mind monkeys.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Wizzydumped",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7572",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like the type of guy who would mind monkeys.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Oddskater",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7573",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Poledragon",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "combat_audio": "408,410,409",
- "strength_level": "1",
- "id": "7580",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He likes inflicting pain.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Al Truism",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7582",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The Don of penguins.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ohhhhdude",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7583",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He has unbelievable strength!",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Banker",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7605",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7606",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7607",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7608",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7609",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7614",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7615",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7616",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7617",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7618",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7619",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7620",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7621",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7626",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7627",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7628",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7629",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7631",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7632",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7634",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7635",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Ew it's still alive.",
- "slayer_task": "21",
- "melee_animation": "9125",
- "range_animation": "9125",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9127",
- "weakness": "9",
- "magic_animation": "9125",
- "death_animation": "9126",
- "name": "Skeletal hand",
- "defence_level": "85",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "85",
- "id": "7640",
- "aggressive": "true",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "range_level": "1",
- "attack_level": "85"
- },
- {
- "examine": "Ew it's still alive.",
- "slayer_task": "21",
- "melee_animation": "9125",
- "range_animation": "9125",
- "attack_speed": "5",
- "respawn_delay": "20",
- "defence_animation": "9127",
- "weakness": "9",
- "magic_animation": "9125",
- "death_animation": "9126",
- "name": "Zombie hand",
- "defence_level": "75",
- "safespot": null,
- "lifepoints": "90",
- "strength_level": "75",
- "id": "7641",
- "aggressive": "true",
- "bonuses": "15,15,15,15,15,15,15,15,15,15,15,15,15,15,15",
- "range_level": "1",
- "attack_level": "75"
- },
- {
- "examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
- "melee_animation": "9102",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "206",
- "magic_animation": "0",
- "death_animation": "9131",
- "name": "Mutated bloodveld",
- "defence_level": "56",
- "safespot": null,
- "lifepoints": "112",
- "strength_level": "56",
- "id": "7642",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "56"
- },
- {
- "examine": "A bloodveld with a very mixed heritage.",
- "slayer_task": "10",
- "melee_animation": "9102",
- "range_animation": "0",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "slayer_exp": "206",
- "magic_animation": "0",
- "death_animation": "9131",
- "name": "Mutated bloodveld",
- "defence_level": "58",
- "safespot": null,
- "lifepoints": "116",
- "strength_level": "58",
- "id": "7643",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "58"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7644",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7645",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7646",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7647",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7648",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7649",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7650",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Zaromark Sliver",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "88",
- "strength_level": "1",
- "id": "7651",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7654",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7655",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7656",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7657",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7658",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7659",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7660",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Fistandantilus",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "65",
- "strength_level": "1",
- "id": "7661",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7682",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7683",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7691",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7692",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7693",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7694",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7695",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7696",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7697",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7698",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7699",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7700",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7701",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7702",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "95",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7703",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7704",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "120",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7705",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "name": "Vyrewatch",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "130",
- "strength_level": "1",
- "attack_speed": "6",
- "id": "7706",
- "aggressive": "true",
- "range_level": "1",
- "respawn_delay": "60",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a big ugly dog.",
- "slayer_task": "27",
- "melee_animation": "6565",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "6564",
- "name": "Temple guardian",
- "defence_level": "24",
- "safespot": null,
- "lifepoints": "34",
- "strength_level": "24",
- "id": "7711",
- "range_level": "1",
- "attack_level": "24"
- },
- {
- "melee_animation": "8080",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8084",
- "death_animation": "8078",
- "name": "Baby icefiend",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7713",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A small ice demon.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7714",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "Icefiend",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7715",
- "aggressive": "true",
- "clue_level": "0",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "The icefiend seems to be melting.",
- "slayer_task": "46",
- "melee_animation": "8080",
- "range_animation": "0",
- "attack_speed": "5",
- "magic_level": "25",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "5",
- "magic_animation": "0",
- "death_animation": "8078",
- "name": "null",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "35",
- "strength_level": "1",
- "id": "7716",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A holy man.",
- "melee_animation": "422",
- "range_animation": "0",
- "combat_audio": "511,513,512",
- "defence_animation": "0",
- "weakness": "9",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Monk",
- "defence_level": "12",
- "safespot": null,
- "lifepoints": "17",
- "strength_level": "12",
- "id": "7727",
- "range_level": "1",
- "attack_level": "12"
- },
- {
- "melee_animation": "8080",
- "attack_speed": "5",
- "respawn_delay": "60",
- "defence_animation": "8084",
- "death_animation": "8078",
- "name": "Baby icefiend",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "50",
- "strength_level": "1",
- "id": "7736",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Is it full of rats?",
- "melee_animation": "0",
- "range_animation": "0",
- "combat_audio": "703,705,704",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jiggling crate",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7740",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A warrior who has been long forgotten.",
- "range_animation": "0",
- "magic_level": "25",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "836",
- "name": "Three little kittens",
- "defence_level": "25",
- "safespot": null,
- "lifepoints": "5",
- "strength_level": "30",
- "id": "7741",
- "aggressive": "true",
- "range_level": "25",
- "attack_level": "30"
- },
- {
- "examine": "It looks upset.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "TzHaar-Xil-Tog",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7747",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A TzHaar librarian.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "TzHaar-Mej-Lor",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7752",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A TzHaar-Hur stamping stone tablets.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Library assistant",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7756",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7767",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7768",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "Looks like a craftsman of some kind.",
- "melee_animation": "9286",
- "range_animation": "9286",
- "attack_speed": "5",
- "magic_level": "50",
- "defence_animation": "9287",
- "magic_animation": "9286",
- "death_animation": "9288",
- "name": "TzHaar-Hur",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "80",
- "strength_level": "50",
- "id": "7769",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "1",
- "attack_level": "50"
- },
- {
- "examine": "A monster made of magma.",
- "combat_style": "1",
- "melee_animation": "9337",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "9340",
- "name": "Lava monster",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "28",
- "id": "7772",
- "aggressive": "true",
- "range_level": "38",
- "attack_level": "28"
- },
- {
- "examine": "A monster like many others",
- "combat_style": "2",
- "melee_animation": "9341",
- "range_animation": "0",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "0",
- "magic_animation": "0",
- "death_animation": "9344",
- "name": "Fire monster",
- "defence_level": "38",
- "safespot": null,
- "lifepoints": "54",
- "strength_level": "28",
- "id": "7773",
- "aggressive": "true",
- "range_level": "38",
- "attack_level": "28"
- },
- {
- "examine": "A big, scary hand! ",
- "melee_animation": "1802",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "1803",
- "slayer_exp": "105",
- "death_animation": "1804",
- "name": "Wall Beast",
- "defence_level": "38",
- "movement_radius": "1",
- "safespot": null,
- "lifepoints": "105",
- "strength_level": "38",
- "id": "7823",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "38"
- },
- {
- "examine": "A melee training dummy",
- "melee_animation": "94",
- "range_animation": "0",
- "attack_speed": "6",
- "respawn_delay": "60",
- "defence_animation": "0",
- "weakness": "6",
- "magic_animation": "0",
- "death_animation": "97",
- "name": "Melee dummy",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "15",
- "strength_level": "1",
- "id": "7891",
- "aggressive": "true",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A man of his craft.",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7958",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A master of his craft.",
- "name": "Smelting Tutor",
- "defence_level": "1",
- "movement_radius": "5",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7959",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He looks like a professional explorer.",
- "name": "Explorer Jack",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7969",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "He sure looks grave.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8149",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "This is a rotten one.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8150",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "It hasn't quite gotten around to dying.",
- "melee_animation": "5571",
- "combat_audio": "931,923,922",
- "attack_speed": "6",
- "respawn_delay": "35",
- "defence_animation": "5574",
- "slayer_exp": "30",
- "death_animation": "5575",
- "name": "Armoured zombie",
- "defence_level": "50",
- "safespot": null,
- "lifepoints": "62",
- "strength_level": "50",
- "id": "8151",
- "aggressive": "true",
- "bonuses": "30,30,80,85,80,40,40,60,38,0,0,0,0,0,0",
- "range_level": "50",
- "attack_level": "50"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "1179"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "450"
- },
- {
- "examine": "Flappy bird.",
- "name": "Gull",
- "water_npc": "true",
- "id": "451"
- },
- {
- "examine": "Tough-looking combat type.",
- "name": "Mubariz",
- "id": "957"
- },
- {
- "examine": "Looks kinda bored.",
- "name": "Fadli",
- "id": "958"
- },
- {
- "examine": "Trained to deal with all sorts of injuries.",
- "name": "A'abla",
- "id": "959"
- },
- {
- "examine": "Wow! She's made a statement with that hair!",
- "name": "Sabreen",
- "id": "960"
- },
- {
- "examine": "Has the messy job of putting players back together again.",
- "name": "Jaraah",
- "id": "962"
- },
- {
- "examine": "Battle-scarred.",
- "name": "Zahwa",
- "id": "963"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Ima",
- "id": "964"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Sabeil",
- "id": "965"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Jadid",
- "id": "966"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Dalal",
- "id": "967"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Afrah",
- "id": "968"
- },
- {
- "examine": "A citizen of Al Kharid",
- "name": "Jeed",
- "id": "969"
- },
- {
- "examine": "He smells funny.",
- "name": "Diango",
- "id": "970"
- },
- {
- "examine": "Shopkeeper.",
- "name": "Chadwell",
- "id": "971"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "972"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "973"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "974"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "975"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "976"
- },
- {
- "examine": "This dwarf looks intoxicated.",
- "name": "Kamen",
- "id": "996"
- },
- {
- "examine": "A dwarven maker of gauntlets.",
- "name": "Klank",
- "id": "995"
- },
- {
- "examine": "One of King Tyras's men.",
- "name": "Tyras guard",
- "id": "1206"
- },
- {
- "examine": "The cave guide.",
- "name": "Koftik",
- "id": "1209"
- },
- {
- "examine": "One of King Lathas' messengers.",
- "name": "Kings messenger",
- "id": "1210"
- },
- {
- "examine": "Mysterious swamp lights...",
- "name": "Will o' the wisp",
- "id": "1212"
- },
- {
- "examine": "He's washing his clothes in the lake.",
- "name": "Tegid",
- "id": "1213"
- },
- {
- "examine": "A plant.",
- "name": "Thistle",
- "id": "1214"
- },
- {
- "examine": "What a colourful bunch of parrots!",
- "name": "Parrots",
- "id": "1215"
- },
- {
- "examine": "Rather dense and soppy looking.",
- "name": "Romeo",
- "id": "639"
- },
- {
- "examine": "Newspaper seller.",
- "name": "Benny",
- "id": "5925"
- },
- {
- "examine": "One of Gertrude's Sons.",
- "name": "Wilough",
- "id": "783"
- },
- {
- "examine": "An old gypsy lady.",
- "name": "Gypsy Aris",
- "id": "882"
- },
- {
- "examine": "Interesting assortment of clothes on offer...",
- "name": "Thessalia",
- "id": "548"
- },
- {
- "examine": "Sells superior staffs.",
- "name": "Zaff",
- "id": "546"
- },
- {
- "examine": "A retired vampyre hunter.",
- "name": "Dr Harlow",
- "id": "756"
- },
- {
- "examine": "I could get a beer from him.",
- "name": "Bartender",
- "id": "733"
- },
- {
- "examine": "Director of the Grand Exchange.",
- "id": "6522"
- },
- {
- "examine": "He can look after my money. Good with money.",
- "id": "6535"
- },
- {
- "examine": "She can look after my money. Good with money.",
- "id": "6532"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6530"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6528"
- },
- {
- "examine": "He can look after my money. Good with money.",
- "id": "6534"
- },
- {
- "examine": "She can look after my money. Good with money.",
- "id": "6533"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6531"
- },
- {
- "examine": "There to help me make my bids.",
- "id": "6529"
- },
- {
- "examine": "She looks very worried about something.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Caroline",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "696",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A very good sailor.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Holgart",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "698",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Smells a bit fishy.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Ezekial Lovecraft",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4856",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A (semi) retired member of the Temple Knights.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Col. O'Niall",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4872",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A villager named Jeb.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Jeb",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "4895",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "A little girl. She looks terrified.",
- "melee_animation": "0",
- "range_animation": "0",
- "defence_animation": "0",
- "magic_animation": "0",
- "death_animation": "0",
- "name": "Kimberly",
- "defence_level": "1",
- "safespot": null,
- "lifepoints": "10",
- "strength_level": "1",
- "id": "7168",
- "range_level": "1",
- "attack_level": "1"
- },
- {
- "examine": "Stinky! Poor guy.",
- "name": "Yeti",
- "id": "130"
- },
- {
- "examine": "The Burgher's protectors.",
- "death_animation": "836",
- "name": "Honour Guard",
- "defence_level": "80",
- "lifepoints": "90",
- "melee_animation": "395",
- "attack_speed": "4",
- "strength_level": "90",
- "id": "5515",
- "bonuses": "40,40,40,0,0,50,50,50,50,50,0,40,0,0,0",
- "attack_level": "90",
- "defence_animation": "404"
- },
{
"examine": "A large ice troll.",
"melee_animation": "4332",
@@ -232156,48 +71622,6 @@
"range_level": "1",
"attack_level": "100"
},
- {
- "examine": "The Burgher's protectors.",
- "death_animation": "836",
- "name": "Honour Guard",
- "defence_level": "80",
- "lifepoints": "90",
- "melee_animation": "395",
- "attack_speed": "4",
- "strength_level": "90",
- "id": "5514",
- "bonuses": "40,40,40,0,0,50,50,50,50,50,0,40,0,0,0",
- "attack_level": "90",
- "defence_animation": "404"
- },
- {
- "examine": "The Burgher's protectors.",
- "death_animation": "836",
- "name": "Honour Guard",
- "defence_level": "80",
- "lifepoints": "90",
- "melee_animation": "395",
- "attack_speed": "4",
- "strength_level": "90",
- "id": "5516",
- "bonuses": "40,40,40,0,0,50,50,50,50,50,0,40,0,0,0",
- "attack_level": "90",
- "defence_animation": "404"
- },
- {
- "examine": "The Burgher's protectors.",
- "death_animation": "836",
- "name": "Honour Guard",
- "defence_level": "80",
- "lifepoints": "90",
- "melee_animation": "395",
- "attack_speed": "4",
- "strength_level": "90",
- "id": "5517",
- "bonuses": "40,40,40,0,0,50,50,50,50,50,0,40,0,0,0",
- "attack_level": "90",
- "defence_animation": "404"
- },
{
"examine": "Soft but strong... and cute.",
"name": "Labrador puppy",
@@ -232228,11 +71652,6 @@
"name": "Labrador",
"id": "7246"
},
- {
- "examine": "One proud little puppy.",
- "name": "Bulldog puppy",
- "id": "6969"
- },
{
"examine": "One proud little puppy.",
"name": "Bulldog puppy",
@@ -232473,11 +71892,6 @@
"name": "Francis",
"id": "2327"
},
- {
- "examine": "Perhaps this gardener might look after your crops for you.",
- "name": "Vasquen",
- "id": "2333"
- },
{
"examine": "Perhaps this gardener might look after your crops for you.",
"name": "Rhonen",
@@ -232503,6 +71917,21 @@
"name": "Dreven",
"id": "2335"
},
+ {
+ "examine": "Founder and Director of the Piscatoris Fishing Colony.",
+ "name": "Herman Caranos",
+ "id": "3822"
+ },
+ {
+ "examine": "Engineer for the Piscatoris Fishing Colony.",
+ "name": "Franklin Caranos",
+ "id": "3823"
+ },
+ {
+ "examine": "Secretary and Storemaster for the Piscatoris Fishing Colony.",
+ "name": "Arnold Lydspor",
+ "id": "3824"
+ },
{
"examine": "Perhaps this gardener might look after your crops for you.",
"name": "Frizzy Skernip",
@@ -232588,11 +72017,6 @@
"name": "Farmer Blinkin",
"id": "7131"
},
- {
- "examine": "Owner of this homestead.",
- "name": "Mrs. Winkin",
- "id": "7132"
- },
{
"examine": "The lady of the pet shop.",
"name": "Pet shop owner",
@@ -232683,16 +72107,6 @@
"name": "Sir Vyvin",
"id": "605"
},
- {
- "examine": "Head of recruitment for the Temple Knights.",
- "name": "Sir Tiffy Cashien",
- "id": "2290"
- },
- {
- "examine": "Smells like fish.",
- "name": "Woman",
- "id": "3226"
- },
{
"examine": "An armourer.",
"name": "Wayne",
@@ -232731,6 +72145,7 @@
{
"examine": "A sea bird.",
"name": "Gull",
+ "water_npc": "true",
"id": "2726"
},
{
@@ -232943,11 +72358,6 @@
"name": "Shopkeeper",
"id": "528"
},
- {
- "examine": "Roald's advisor - he seems to be a follower of Saradomin.",
- "name": "Aeonisig Raispher",
- "id": "648"
- },
{
"examine": "One of the king's knights.",
"name": "Sir Prysin",
@@ -233069,46 +72479,11 @@
"name": "Spirit of Zadimus",
"id": "501"
},
- {
- "examine": "A minion of Rashiliyia.",
- "name": "Undead one",
- "id": "502"
- },
- {
- "examine": "A minion of Rashiliyia.",
- "name": "Undead one",
- "id": "503"
- },
- {
- "examine": "The animated dead, one of Rashiliyia's minions.",
- "name": "Undead one",
- "id": "504"
- },
- {
- "examine": "The animated dead, one of Rashiliyia's minions.",
- "name": "Undead one",
- "id": "505"
- },
{
"examine": "The animated spirit of Rashiliyia the Zombie Queen.",
"name": "Rashiliyia ",
"id": "506"
},
- {
- "examine": "A giant zombie of huge strength and devastating power.",
- "name": "Nazastarool",
- "id": "507"
- },
- {
- "examine": "A giant skeleton of huge strength and devastating power.",
- "name": "Nazastarool",
- "id": "508"
- },
- {
- "examine": "A giant ghost of huge strength and devastating power.",
- "name": "Nazastarool",
- "id": "509"
- },
{
"examine": "A dwarf miner. He's shoring up the walls.",
"name": "Ferd",
@@ -233139,36 +72514,16 @@
"name": "Donal",
"id": "3938"
},
- {
- "examine": "A dwarf miner. He's shoring up the walls.",
- "name": "Ferd",
- "id": "3937"
- },
{
"examine": "Runs the general store.",
"name": "Finn",
"id": "3922"
},
- {
- "examine": "Hmm, he smells.",
- "name": "Fishmonger",
- "id": "1393"
- },
- {
- "examine": "No-one would mistake her for a duchess.",
- "name": "Flower Girl",
- "id": "1378"
- },
{
"examine": "A dwarf who's currently living in Miscellania.",
"name": "Fullangr",
"id": "3934"
},
- {
- "examine": "At least he eats his greens.",
- "name": "Greengrocer",
- "id": "1394"
- },
{
"examine": "A subject of Miscellania.",
"name": "Halla",
@@ -233179,16 +72534,6 @@
"name": "Jari",
"id": "3935"
},
- {
- "examine": "A subject of Miscellania.",
- "name": "Alrik",
- "id": "1381"
- },
- {
- "examine": "A subject of Miscellania.",
- "name": "Broddi",
- "id": "1390"
- },
{
"examine": "A subject of Miscellania.",
"name": "Einar",
@@ -233199,16 +72544,6 @@
"name": "Ragnar",
"id": "1379"
},
- {
- "examine": "A subject of Miscellania.",
- "name": "Ragnvald",
- "id": "1392"
- },
- {
- "examine": "A subject of Miscellania.",
- "name": "Rannveig",
- "id": "1386"
- },
{
"examine": "A subject of Miscellania.",
"name": "Thora",
@@ -233219,11 +72554,6 @@
"name": "Thorhild",
"id": "1382"
},
- {
- "examine": "A subject of Miscellania.",
- "name": "Valgerd",
- "id": "1388"
- },
{
"examine": "A subject of Miscellania.",
"name": "Tjorvi",
@@ -233415,5 +72745,15152 @@
"examine": "Moley, moley, moley!",
"name": "Baby Mole",
"id": "3343"
+ },
+ {
+ "examine": "He hungry.",
+ "combat_style": "1",
+ "start_gfx": "243",
+ "name": "Rantz",
+ "start_height": "100",
+ "range_animation": "3460",
+ "id": "1010",
+ "projectile": "242",
+ "prj_height": "50"
+ },
+ {
+ "examine": "One of Fenkenstrain's failed experiments.",
+ "combat_style": "",
+ "melee_animation": "1616",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "1617",
+ "death_animation": "1618",
+ "name": "Experiment",
+ "defence_level": "30",
+ "lifepoints": "100",
+ "strength_level": "1",
+ "id": "1677",
+ "aggressive": "",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "It has a key hanging from its collar.",
+ "melee_animation": "1626",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "1627",
+ "death_animation": "1628",
+ "name": "Experiment",
+ "defence_level": "50",
+ "lifepoints": "40",
+ "strength_level": "50",
+ "id": "1676",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "40"
+ },
+ {
+ "examine": "One of Fenkenstrain's failed experiments.",
+ "melee_animation": "1612",
+ "attack_speed": "4",
+ "magic_level": "1",
+ "defence_animation": "1613",
+ "death_animation": "1611",
+ "name": "Experiment",
+ "defence_level": "30",
+ "lifepoints": "100",
+ "strength_level": "1",
+ "id": "1678",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "name": "Puro Spawn (Low)",
+ "id": "6065",
+ "respawn_delay": "1"
+ },
+ {
+ "name": "Puro Spawn (Mid)",
+ "id": "6066",
+ "respawn_delay": "1"
+ },
+ {
+ "name": "Puro Spawn (High)",
+ "id": "6067",
+ "respawn_delay": "1"
+ },
+ {
+ "examine": "A baby impling. Ahhh.",
+ "name": "Baby Impling Puro",
+ "id": "6055",
+ "respawn_delay": "7"
+ },
+ {
+ "examine": "A young impling. It's not fair!",
+ "name": "Young Impling Puro",
+ "id": "6056",
+ "respawn_delay": "7"
+ },
+ {
+ "examine": "An impling gourmet. Mmmm, tasty.",
+ "name": "Gourmet Impling Puro",
+ "id": "6057",
+ "respawn_delay": "7"
+ },
+ {
+ "examine": "An earth impling. Rock on.",
+ "name": "Earth Impling Puro",
+ "id": "6058",
+ "respawn_delay": "50"
+ },
+ {
+ "examine": "An impling who likes magic. Magic!",
+ "name": "Essence Impling Puro",
+ "id": "6059",
+ "respawn_delay": "50"
+ },
+ {
+ "examine": "An impling with varied tastes.",
+ "name": "Eclectic Impling Puro",
+ "id": "6060",
+ "respawn_delay": "7"
+ },
+ {
+ "examine": "A very stealthy impling.",
+ "name": "Ninja Impling Puro",
+ "id": "6063",
+ "respawn_delay": "9999"
+ },
+ {
+ "examine": "A nature impling. Right on, maaan.",
+ "name": "Nature Impling Puro",
+ "id": "6061",
+ "respawn_delay": "9999"
+ },
+ {
+ "examine": "Ooh, shiny things!",
+ "name": "Magpie Impling Puro",
+ "id": "6062",
+ "respawn_delay": "9999"
+ },
+ {
+ "examine": "He looks dangerous!",
+ "name": "Turael",
+ "id": "8273"
+ },
+ {
+ "examine": "Doesn't seem to want to go away.",
+ "combat_style": "2",
+ "melee_animation": "811",
+ "range_animation": "811",
+ "attack_speed": "4",
+ "magic_level": "100",
+ "defence_animation": "0",
+ "magic_animation": "811",
+ "death_animation": "836",
+ "name": "Skeleton Mage",
+ "defence_level": "60",
+ "lifepoints": "80",
+ "strength_level": "10",
+ "id": "3851",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "range_level": "1",
+ "attack_level": "10"
+ },
+ {
+ "examine": "Blaec seems to be covered in sand.",
+ "name": "Blaec",
+ "id": "3115"
+ },
+ {
+ "examine": "Looks otherworldy...",
+ "name": "Fairy Queen",
+ "id": "4437"
+ },
+ {
+ "examine": "A delicate creature from this strange realm.",
+ "name": "Fairy",
+ "id": "4443"
+ },
+ {
+ "examine": "A very strange plant.",
+ "death_animation": "355",
+ "name": "Strange Plant",
+ "defence_level": "300",
+ "melee_animation": "353",
+ "lifepoints": "100",
+ "id": "408",
+ "magic_level": "200",
+ "defence_animation": "354"
+ },
+ {
+ "examine": "A very strange plant.",
+ "name": "Strange Plant",
+ "id": "407"
+ },
+ {
+ "agg_radius": "",
+ "examine": "A helmetted, barbarian snowman.",
+ "death_animation": "7560",
+ "name": "Barbarian Snowman",
+ "defence_level": "1",
+ "melee_animation": "7565",
+ "lifepoints": "20",
+ "combat_audio": "12,3295,3287",
+ "id": "6742",
+ "defence_animation": "7559"
+ },
+ {
+ "examine": "A snow dwarf.",
+ "death_animation": "7560",
+ "name": "Dwarf Snowman",
+ "defence_level": "1",
+ "melee_animation": "7565",
+ "lifepoints": "20",
+ "combat_audio": "12,3295,3287",
+ "id": "6744",
+ "defence_animation": "7559"
+ },
+ {
+ "examine": "Distinctly heroic.",
+ "name": "Achietties",
+ "id": "796"
+ },
+ {
+ "name": "Wizard Cromperty",
+ "id": "2328",
+ "examine": "The hat is a dead give away."
+ },
+ {
+ "examine": "An intelligent-looking shop owner.",
+ "name": "Obli",
+ "id": "516"
+ },
+ {
+ "examine": "A person sitting an exam.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Student",
+ "defence_level": "1",
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "7151",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A person sitting an exam.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Student",
+ "defence_level": "1",
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "7153",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A person sitting an exam.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Student",
+ "defence_level": "1",
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "7154",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "A person sitting an exam.",
+ "melee_animation": "0",
+ "range_animation": "0",
+ "defence_animation": "0",
+ "magic_animation": "0",
+ "death_animation": "0",
+ "name": "Student",
+ "defence_level": "1",
+ "lifepoints": "10",
+ "strength_level": "1",
+ "id": "7155",
+ "range_level": "1",
+ "attack_level": "1"
+ },
+ {
+ "examine": "She looks like she means business.",
+ "name": "Balnea",
+ "id": "7047"
+ },
+ {
+ "id": "17",
+ "name": "Schoolgirl"
+ },
+ {
+ "id": "70",
+ "name": "Orc"
+ },
+ {
+ "id": "94",
+ "name": "Skeleton Mage"
+ },
+ {
+ "id": "129",
+ "name": "Skavid"
+ },
+ {
+ "id": "135",
+ "name": "Mammoth"
+ },
+ {
+ "id": "136",
+ "name": "Mounted terrorchick gnome"
+ },
+ {
+ "id": "149",
+ "name": "Gull"
+ },
+ {
+ "id": "150",
+ "name": "Gull"
+ },
+ {
+ "id": "151",
+ "name": "Fly trap"
+ },
+ {
+ "id": "152",
+ "name": "Butterfly"
+ },
+ {
+ "id": "155",
+ "name": "Butterfly"
+ },
+ {
+ "id": "156",
+ "name": "Butterfly"
+ },
+ {
+ "id": "157",
+ "name": "Butterfly"
+ },
+ {
+ "id": "165",
+ "name": "Gnome shop keeper"
+ },
+ {
+ "id": "167",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "171",
+ "name": "Brimstail"
+ },
+ {
+ "id": "177",
+ "name": "Witch"
+ },
+ {
+ "id": "195",
+ "name": "Bandit"
+ },
+ {
+ "id": "197",
+ "name": "Barbarian guard"
+ },
+ {
+ "id": "200",
+ "name": "Lord Daquarius"
+ },
+ {
+ "id": "207",
+ "name": "Lollk"
+ },
+ {
+ "id": "209",
+ "name": "Nulodion"
+ },
+ {
+ "id": "211",
+ "name": "Sir Percival"
+ },
+ {
+ "id": "213",
+ "name": "Merlin"
+ },
+ {
+ "id": "215",
+ "name": "Peasant"
+ },
+ {
+ "id": "217",
+ "name": "Crone"
+ },
+ {
+ "id": "218",
+ "name": "Galahad"
+ },
+ {
+ "id": "225",
+ "name": "Bonzo"
+ },
+ {
+ "id": "226",
+ "name": "Morris"
+ },
+ {
+ "id": "228",
+ "name": "Big Dave"
+ },
+ {
+ "id": "229",
+ "name": "Joshua"
+ },
+ {
+ "id": "232",
+ "name": "Austri"
+ },
+ {
+ "id": "234",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "235",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "236",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "239",
+ "name": "Sir Lancelot"
+ },
+ {
+ "id": "240",
+ "name": "Sir Gawain"
+ },
+ {
+ "id": "241",
+ "name": "Sir Kay"
+ },
+ {
+ "id": "242",
+ "name": "Sir Bedivere"
+ },
+ {
+ "id": "243",
+ "name": "Sir Tristram"
+ },
+ {
+ "id": "244",
+ "name": "Sir Pelleas"
+ },
+ {
+ "id": "245",
+ "name": "Sir Lucan"
+ },
+ {
+ "id": "248",
+ "name": "Morgan Le Faye"
+ },
+ {
+ "id": "249",
+ "name": "Merlin"
+ },
+ {
+ "id": "250",
+ "name": "The Lady of the Lake"
+ },
+ {
+ "id": "252",
+ "name": "Beggar"
+ },
+ {
+ "id": "260",
+ "name": "Kelvin"
+ },
+ {
+ "id": "261",
+ "name": "Joe"
+ },
+ {
+ "id": "263",
+ "name": "Hengrad"
+ },
+ {
+ "id": "276",
+ "name": "Winelda"
+ },
+ {
+ "id": "287",
+ "name": "Ernest"
+ },
+ {
+ "id": "292",
+ "name": "Guard"
+ },
+ {
+ "id": "301",
+ "name": "Twig"
+ },
+ {
+ "id": "302",
+ "name": "Hadley"
+ },
+ {
+ "id": "303",
+ "name": "Gerald"
+ },
+ {
+ "id": "304",
+ "name": "Almera"
+ },
+ {
+ "id": "305",
+ "name": "Hudon"
+ },
+ {
+ "id": "306",
+ "name": "Golrie"
+ },
+ {
+ "id": "309",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "310",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "311",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "312",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "313",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "314",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "315",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "316",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "317",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "318",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "319",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "320",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "321",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "322",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "324",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "325",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "326",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "327",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "328",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "329",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "330",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "331",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "332",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "333",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "334",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "337",
+ "name": "Da Vinci"
+ },
+ {
+ "id": "343",
+ "name": "Guidor"
+ },
+ {
+ "id": "349",
+ "name": "Kilron"
+ },
+ {
+ "id": "350",
+ "name": "Omart"
+ },
+ {
+ "id": "366",
+ "name": "Jerico"
+ },
+ {
+ "id": "379",
+ "name": "Luthas"
+ },
+ {
+ "id": "381",
+ "name": "Dwarf"
+ },
+ {
+ "id": "383",
+ "name": "Stankers"
+ },
+ {
+ "id": "399",
+ "name": "Legends guard"
+ },
+ {
+ "id": "400",
+ "name": "Radimus Erkle"
+ },
+ {
+ "id": "403",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "404",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "405",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "406",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "409",
+ "name": "Genie"
+ },
+ {
+ "id": "410",
+ "name": "Mysterious Old Man"
+ },
+ {
+ "id": "431",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "433",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "434",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "436",
+ "name": "Fallen Man"
+ },
+ {
+ "id": "463",
+ "name": "Murphy"
+ },
+ {
+ "id": "464",
+ "name": "Murphy"
+ },
+ {
+ "id": "465",
+ "name": "Murphy"
+ },
+ {
+ "id": "466",
+ "name": "Murphy"
+ },
+ {
+ "id": "467",
+ "name": "Shark"
+ },
+ {
+ "id": "468",
+ "name": "Shark"
+ },
+ {
+ "id": "471",
+ "name": "Bolkoy"
+ },
+ {
+ "id": "472",
+ "name": "Remsai"
+ },
+ {
+ "id": "473",
+ "name": "Khazard trooper"
+ },
+ {
+ "id": "480",
+ "name": "Gnome troop"
+ },
+ {
+ "id": "484",
+ "name": "Local Gnome"
+ },
+ {
+ "id": "486",
+ "name": "Kalron"
+ },
+ {
+ "id": "488",
+ "name": "Observatory professor"
+ },
+ {
+ "id": "510",
+ "name": "Hajedy"
+ },
+ {
+ "id": "511",
+ "name": "Vigroy"
+ },
+ {
+ "id": "513",
+ "name": "Yohnus"
+ },
+ {
+ "id": "514",
+ "name": "Seravel"
+ },
+ {
+ "id": "536",
+ "name": "Valaine"
+ },
+ {
+ "id": "537",
+ "name": "Scavvo"
+ },
+ {
+ "id": "553",
+ "name": "Aubury"
+ },
+ {
+ "id": "560",
+ "name": "Jiminua"
+ },
+ {
+ "id": "563",
+ "name": "Arhein"
+ },
+ {
+ "id": "565",
+ "name": "Lunderwin"
+ },
+ {
+ "id": "568",
+ "name": "Zambo"
+ },
+ {
+ "id": "575",
+ "name": "Hickton"
+ },
+ {
+ "id": "576",
+ "name": "Harry"
+ },
+ {
+ "id": "578",
+ "name": "Frincos"
+ },
+ {
+ "id": "584",
+ "name": "Herquin"
+ },
+ {
+ "id": "585",
+ "name": "Rommik"
+ },
+ {
+ "id": "588",
+ "name": "Davon"
+ },
+ {
+ "id": "589",
+ "name": "Zenesha"
+ },
+ {
+ "id": "590",
+ "name": "Aemad"
+ },
+ {
+ "id": "591",
+ "name": "Kortan"
+ },
+ {
+ "id": "592",
+ "name": "Roachey"
+ },
+ {
+ "id": "593",
+ "name": "Frenita"
+ },
+ {
+ "id": "594",
+ "name": "Nurmof"
+ },
+ {
+ "id": "597",
+ "name": "Noterazzo"
+ },
+ {
+ "id": "600",
+ "name": "Hudo"
+ },
+ {
+ "id": "601",
+ "name": "Rometti"
+ },
+ {
+ "id": "602",
+ "name": "Gulluck"
+ },
+ {
+ "id": "603",
+ "name": "Heckel Funch"
+ },
+ {
+ "id": "607",
+ "name": "Gunnjorn"
+ },
+ {
+ "id": "608",
+ "name": "Sir Amik Varze"
+ },
+ {
+ "id": "612",
+ "name": "Greldo"
+ },
+ {
+ "id": "622",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "623",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "624",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "625",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "626",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "627",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "628",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "629",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "630",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "631",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "632",
+ "name": "Gnome baller"
+ },
+ {
+ "id": "634",
+ "name": "Gnome winger"
+ },
+ {
+ "id": "636",
+ "name": "Cheerleader"
+ },
+ {
+ "id": "642",
+ "name": "Katrine"
+ },
+ {
+ "id": "644",
+ "name": "Straven"
+ },
+ {
+ "id": "647",
+ "name": "King Roald"
+ },
+ {
+ "id": "653",
+ "name": "Fairy Queen"
+ },
+ {
+ "id": "654",
+ "name": "Shamus"
+ },
+ {
+ "id": "661",
+ "name": "Megan"
+ },
+ {
+ "id": "662",
+ "name": "Lucy"
+ },
+ {
+ "id": "664",
+ "name": "Boot"
+ },
+ {
+ "id": "666",
+ "name": "Caleb"
+ },
+ {
+ "id": "668",
+ "name": "Johnathon"
+ },
+ {
+ "id": "669",
+ "name": "Hazelmere"
+ },
+ {
+ "id": "671",
+ "name": "Glough"
+ },
+ {
+ "id": "672",
+ "name": "Anita"
+ },
+ {
+ "id": "673",
+ "name": "Charlie"
+ },
+ {
+ "id": "675",
+ "name": "Shipyard worker"
+ },
+ {
+ "id": "676",
+ "name": "Femi"
+ },
+ {
+ "id": "685",
+ "name": "Tower Advisor"
+ },
+ {
+ "id": "686",
+ "name": "Tower Advisor"
+ },
+ {
+ "id": "687",
+ "name": "Tower Advisor"
+ },
+ {
+ "id": "693",
+ "name": "Competition Judge"
+ },
+ {
+ "id": "695",
+ "name": "Bailey"
+ },
+ {
+ "id": "697",
+ "name": "Holgart"
+ },
+ {
+ "id": "699",
+ "name": "Holgart"
+ },
+ {
+ "id": "700",
+ "name": "Holgart"
+ },
+ {
+ "id": "701",
+ "name": "Kent"
+ },
+ {
+ "id": "702",
+ "name": "Fisherman"
+ },
+ {
+ "id": "703",
+ "name": "Fisherman"
+ },
+ {
+ "id": "704",
+ "name": "Fisherman"
+ },
+ {
+ "id": "710",
+ "name": "Alrena"
+ },
+ {
+ "id": "711",
+ "name": "Bravek"
+ },
+ {
+ "id": "712",
+ "name": "Carla"
+ },
+ {
+ "id": "721",
+ "name": "Ted Rehnison"
+ },
+ {
+ "id": "722",
+ "name": "Martha Rehnison"
+ },
+ {
+ "id": "723",
+ "name": "Billy Rehnison"
+ },
+ {
+ "id": "724",
+ "name": "Milli Rehnison"
+ },
+ {
+ "id": "725",
+ "name": "Jethick"
+ },
+ {
+ "id": "740",
+ "name": "Trufitus"
+ },
+ {
+ "id": "746",
+ "name": "Oracle"
+ },
+ {
+ "id": "748",
+ "name": "Angry barbarian spirit"
+ },
+ {
+ "id": "754",
+ "name": "Peaceful barbarian spirit"
+ },
+ {
+ "id": "759",
+ "name": "Kittens"
+ },
+ {
+ "id": "761",
+ "name": "Kitten"
+ },
+ {
+ "id": "762",
+ "name": "Kitten"
+ },
+ {
+ "id": "763",
+ "name": "Kitten"
+ },
+ {
+ "id": "764",
+ "name": "Kitten"
+ },
+ {
+ "id": "765",
+ "name": "Kitten"
+ },
+ {
+ "id": "766",
+ "name": "Kitten"
+ },
+ {
+ "id": "768",
+ "name": "Cat"
+ },
+ {
+ "id": "769",
+ "name": "Cat"
+ },
+ {
+ "id": "770",
+ "name": "Cat"
+ },
+ {
+ "id": "771",
+ "name": "Cat"
+ },
+ {
+ "id": "772",
+ "name": "Cat"
+ },
+ {
+ "id": "773",
+ "name": "Cat"
+ },
+ {
+ "id": "774",
+ "name": "Overgrown cat"
+ },
+ {
+ "id": "775",
+ "name": "Overgrown cat"
+ },
+ {
+ "id": "776",
+ "name": "Overgrown cat"
+ },
+ {
+ "id": "777",
+ "name": "Overgrown cat"
+ },
+ {
+ "id": "779",
+ "name": "Overgrown cat"
+ },
+ {
+ "id": "780",
+ "name": "Gertrude"
+ },
+ {
+ "id": "782",
+ "name": "Philop"
+ },
+ {
+ "id": "784",
+ "name": "Kanel"
+ },
+ {
+ "id": "788",
+ "name": "Garv"
+ },
+ {
+ "id": "789",
+ "name": "Grubor"
+ },
+ {
+ "id": "791",
+ "name": "Seth"
+ },
+ {
+ "id": "792",
+ "name": "Grip"
+ },
+ {
+ "id": "797",
+ "name": "Helemos"
+ },
+ {
+ "id": "807",
+ "name": "Pierre"
+ },
+ {
+ "id": "808",
+ "name": "Hobbes"
+ },
+ {
+ "id": "809",
+ "name": "Louisa"
+ },
+ {
+ "id": "810",
+ "name": "Mary"
+ },
+ {
+ "id": "811",
+ "name": "Stanford"
+ },
+ {
+ "id": "814",
+ "name": "Anna"
+ },
+ {
+ "id": "815",
+ "name": "Bob"
+ },
+ {
+ "id": "816",
+ "name": "Carol"
+ },
+ {
+ "id": "817",
+ "name": "David"
+ },
+ {
+ "id": "818",
+ "name": "Elizabeth"
+ },
+ {
+ "id": "819",
+ "name": "Frank"
+ },
+ {
+ "id": "822",
+ "name": "Ana"
+ },
+ {
+ "id": "823",
+ "name": "Ana"
+ },
+ {
+ "id": "824",
+ "name": "Female slave"
+ },
+ {
+ "id": "826",
+ "name": "Escaping slave"
+ },
+ {
+ "id": "828",
+ "name": "Shanty Claws"
+ },
+ {
+ "id": "829",
+ "name": "Mercenary Captain"
+ },
+ {
+ "id": "832",
+ "name": "Al Shabim"
+ },
+ {
+ "id": "844",
+ "name": "Horacio"
+ },
+ {
+ "id": "846",
+ "name": "Kangai Mau"
+ },
+ {
+ "id": "848",
+ "name": "Blurberry"
+ },
+ {
+ "id": "849",
+ "name": "Barman"
+ },
+ {
+ "id": "853",
+ "name": "Og"
+ },
+ {
+ "id": "854",
+ "name": "Grew"
+ },
+ {
+ "id": "855",
+ "name": "Toban"
+ },
+ {
+ "id": "857",
+ "name": "Ogre guard"
+ },
+ {
+ "id": "860",
+ "name": "Ogre guard"
+ },
+ {
+ "id": "861",
+ "name": "Ogre guard"
+ },
+ {
+ "id": "865",
+ "name": "Skavid"
+ },
+ {
+ "id": "866",
+ "name": "Skavid"
+ },
+ {
+ "id": "867",
+ "name": "Skavid"
+ },
+ {
+ "id": "868",
+ "name": "Skavid"
+ },
+ {
+ "id": "869",
+ "name": "Skavid"
+ },
+ {
+ "id": "871",
+ "name": "Watchtower Wizard"
+ },
+ {
+ "id": "876",
+ "name": "Ogre trader"
+ },
+ {
+ "id": "880",
+ "name": "Weakened Delrith"
+ },
+ {
+ "id": "886",
+ "name": "Claus the chef"
+ },
+ {
+ "id": "888",
+ "name": "Philipe Carnillean"
+ },
+ {
+ "id": "889",
+ "name": "Henryeta Carnillean"
+ },
+ {
+ "id": "890",
+ "name": "Butler Jones"
+ },
+ {
+ "id": "891",
+ "name": "Alomone"
+ },
+ {
+ "id": "892",
+ "name": "Hazeel"
+ },
+ {
+ "id": "896",
+ "name": "Nora T. Hagg"
+ },
+ {
+ "id": "901",
+ "name": "Mouse"
+ },
+ {
+ "id": "902",
+ "name": "Gundai"
+ },
+ {
+ "id": "903",
+ "name": "Lundail"
+ },
+ {
+ "id": "906",
+ "name": "Kolodion"
+ },
+ {
+ "id": "918",
+ "name": "Ned"
+ },
+ {
+ "id": "921",
+ "name": "Prince Ali"
+ },
+ {
+ "id": "926",
+ "name": "Border Guard"
+ },
+ {
+ "id": "927",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "928",
+ "name": "Gujuo"
+ },
+ {
+ "id": "929",
+ "name": "Ungadulu"
+ },
+ {
+ "id": "930",
+ "name": "Ungadulu"
+ },
+ {
+ "id": "933",
+ "name": "Siegfried Erkle"
+ },
+ {
+ "id": "935",
+ "name": "Viyeldi"
+ },
+ {
+ "id": "936",
+ "name": "San Tojalon"
+ },
+ {
+ "id": "937",
+ "name": "Irvig Senay"
+ },
+ {
+ "id": "940",
+ "name": "Echned Zekin"
+ },
+ {
+ "id": "952",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "953",
+ "name": "Banker"
+ },
+ {
+ "id": "992",
+ "name": "Kardia"
+ },
+ {
+ "id": "994",
+ "name": "Niloof"
+ },
+ {
+ "id": "1003",
+ "name": "Lord Iban"
+ },
+ {
+ "id": "1008",
+ "name": "Hamid"
+ },
+ {
+ "id": "1011",
+ "name": "Fycie"
+ },
+ {
+ "id": "1012",
+ "name": "Bugs"
+ },
+ {
+ "id": "1014",
+ "name": "Bloated Toad"
+ },
+ {
+ "id": "1016",
+ "name": "Chompy bird"
+ },
+ {
+ "id": "1024",
+ "name": "Baby impling"
+ },
+ {
+ "id": "1036",
+ "name": "Banker"
+ },
+ {
+ "id": "1038",
+ "name": "Rufus"
+ },
+ {
+ "id": "1039",
+ "name": "Barker"
+ },
+ {
+ "id": "1040",
+ "name": "Fidelio"
+ },
+ {
+ "id": "1041",
+ "name": "Sbott"
+ },
+ {
+ "id": "1042",
+ "name": "Roavar"
+ },
+ {
+ "id": "1043",
+ "name": "Will o' the wisp"
+ },
+ {
+ "id": "1047",
+ "name": "Drezel"
+ },
+ {
+ "id": "1056",
+ "name": "Mime"
+ },
+ {
+ "id": "1070",
+ "name": "Saba"
+ },
+ {
+ "id": "1071",
+ "name": "Tenzing"
+ },
+ {
+ "id": "1075",
+ "name": "Archer"
+ },
+ {
+ "id": "1091",
+ "name": "Bob"
+ },
+ {
+ "id": "1093",
+ "name": "Billy"
+ },
+ {
+ "id": "1094",
+ "name": "Mountain goat"
+ },
+ {
+ "id": "1113",
+ "name": "Eadgar"
+ },
+ {
+ "id": "1114",
+ "name": "Godric"
+ },
+ {
+ "id": "1159",
+ "name": "Kalphite Queen"
+ },
+ {
+ "id": "1162",
+ "name": "Timfraku"
+ },
+ {
+ "id": "1163",
+ "name": "Tiadeche"
+ },
+ {
+ "id": "1164",
+ "name": "Tiadeche"
+ },
+ {
+ "id": "1165",
+ "name": "Tinsay"
+ },
+ {
+ "id": "1166",
+ "name": "Tinsay"
+ },
+ {
+ "id": "1167",
+ "name": "Tamayu"
+ },
+ {
+ "id": "1168",
+ "name": "Tamayu"
+ },
+ {
+ "id": "1169",
+ "name": "Tamayu"
+ },
+ {
+ "id": "1170",
+ "name": "Tamayu"
+ },
+ {
+ "id": "1171",
+ "name": "Lubufu"
+ },
+ {
+ "id": "1173",
+ "name": "The Shaikahan"
+ },
+ {
+ "id": "1174",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1175",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1177",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1178",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1180",
+ "name": "Cormorant"
+ },
+ {
+ "id": "1181",
+ "name": "Pelican"
+ },
+ {
+ "id": "1182",
+ "name": "Lord Iorwerth"
+ },
+ {
+ "id": "1186",
+ "name": "Idris"
+ },
+ {
+ "id": "1187",
+ "name": "Essyllt"
+ },
+ {
+ "id": "1188",
+ "name": "Morvran"
+ },
+ {
+ "id": "1189",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1190",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1191",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1202",
+ "name": "Arianwyn"
+ },
+ {
+ "id": "1205",
+ "name": "Tyras guard"
+ },
+ {
+ "id": "1207",
+ "name": "Quartermaster"
+ },
+ {
+ "id": "1221",
+ "name": "Spider"
+ },
+ {
+ "id": "1222",
+ "name": "Mist"
+ },
+ {
+ "id": "1224",
+ "name": "Vampyric hound"
+ },
+ {
+ "id": "1226",
+ "name": "Tree"
+ },
+ {
+ "id": "1236",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1237",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1238",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1242",
+ "name": "Shade Spirit"
+ },
+ {
+ "id": "1251",
+ "name": "Afflicted(Ulsquire)"
+ },
+ {
+ "id": "1252",
+ "name": "Ulsquire Shauncy"
+ },
+ {
+ "id": "1253",
+ "name": "Afflicted(Razmire)"
+ },
+ {
+ "id": "1254",
+ "name": "Razmire Keelgan"
+ },
+ {
+ "id": "1255",
+ "name": "Mort'ton Local"
+ },
+ {
+ "id": "1256",
+ "name": "Mort'ton Local"
+ },
+ {
+ "id": "1259",
+ "name": "Mort'ton local"
+ },
+ {
+ "id": "1260",
+ "name": "Mort'ton local"
+ },
+ {
+ "id": "1280",
+ "name": "Butterfly"
+ },
+ {
+ "id": "1284",
+ "name": "Bjorn"
+ },
+ {
+ "id": "1285",
+ "name": "Eldgrim"
+ },
+ {
+ "id": "1295",
+ "name": "Askeladden"
+ },
+ {
+ "id": "1299",
+ "name": "Town Guard"
+ },
+ {
+ "id": "1310",
+ "name": "Freygerd"
+ },
+ {
+ "id": "1311",
+ "name": "Lensa"
+ },
+ {
+ "id": "1312",
+ "name": "Jennella"
+ },
+ {
+ "id": "1322",
+ "name": "Gull"
+ },
+ {
+ "id": "1323",
+ "name": "Gull"
+ },
+ {
+ "id": "1324",
+ "name": "Gull"
+ },
+ {
+ "id": "1325",
+ "name": "Gull"
+ },
+ {
+ "id": "1331",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1332",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1333",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1334",
+ "name": "Jossik"
+ },
+ {
+ "id": "1335",
+ "name": "Jossik"
+ },
+ {
+ "id": "1336",
+ "name": "Larrissa"
+ },
+ {
+ "id": "1337",
+ "name": "Larrissa"
+ },
+ {
+ "id": "1348",
+ "name": "Dagannoth mother"
+ },
+ {
+ "id": "1349",
+ "name": "Dagannoth mother"
+ },
+ {
+ "id": "1350",
+ "name": "Dagannoth mother"
+ },
+ {
+ "id": "1359",
+ "name": "Queen Sigrid"
+ },
+ {
+ "id": "1361",
+ "name": "Arnor"
+ },
+ {
+ "id": "1362",
+ "name": "Haming"
+ },
+ {
+ "id": "1363",
+ "name": "Moldof"
+ },
+ {
+ "id": "1364",
+ "name": "Helga"
+ },
+ {
+ "id": "1365",
+ "name": "Matilda"
+ },
+ {
+ "id": "1366",
+ "name": "Ashild"
+ },
+ {
+ "id": "1371",
+ "name": "Prince Brand"
+ },
+ {
+ "id": "1372",
+ "name": "Princess Astrid"
+ },
+ {
+ "id": "1373",
+ "name": "King Vargas"
+ },
+ {
+ "id": "1375",
+ "name": "Advisor Ghrim"
+ },
+ {
+ "id": "1383",
+ "name": "Halla"
+ },
+ {
+ "id": "1384",
+ "name": "Yrsa"
+ },
+ {
+ "id": "1387",
+ "name": "Thora"
+ },
+ {
+ "id": "1399",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1400",
+ "name": "Gull"
+ },
+ {
+ "id": "1405",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1406",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "1407",
+ "name": "Daero"
+ },
+ {
+ "id": "1408",
+ "name": "Waydar"
+ },
+ {
+ "id": "1409",
+ "name": "Waydar"
+ },
+ {
+ "id": "1410",
+ "name": "Waydar"
+ },
+ {
+ "id": "1411",
+ "name": "Garkor"
+ },
+ {
+ "id": "1412",
+ "name": "Garkor"
+ },
+ {
+ "id": "1413",
+ "name": "Lumo"
+ },
+ {
+ "id": "1414",
+ "name": "Lumo"
+ },
+ {
+ "id": "1415",
+ "name": "Bunkdo"
+ },
+ {
+ "id": "1416",
+ "name": "Bunkdo"
+ },
+ {
+ "id": "1417",
+ "name": "Carado"
+ },
+ {
+ "id": "1418",
+ "name": "Carado"
+ },
+ {
+ "id": "1420",
+ "name": "Karam"
+ },
+ {
+ "id": "1421",
+ "name": "Karam"
+ },
+ {
+ "id": "1422",
+ "name": "Karam"
+ },
+ {
+ "id": "1423",
+ "name": "Bunkwicket"
+ },
+ {
+ "id": "1424",
+ "name": "Waymottin"
+ },
+ {
+ "id": "1425",
+ "name": "Zooknock"
+ },
+ {
+ "id": "1426",
+ "name": "Zooknock"
+ },
+ {
+ "id": "1428",
+ "name": "G.L.O. Caranock"
+ },
+ {
+ "id": "1429",
+ "name": "Dugopul"
+ },
+ {
+ "id": "1430",
+ "name": "Salenab"
+ },
+ {
+ "id": "1431",
+ "name": "Trefaji"
+ },
+ {
+ "id": "1432",
+ "name": "Aberab"
+ },
+ {
+ "id": "1433",
+ "name": "Solihib"
+ },
+ {
+ "id": "1434",
+ "name": "Daga"
+ },
+ {
+ "id": "1435",
+ "name": "Tutab"
+ },
+ {
+ "id": "1436",
+ "name": "Ifaba"
+ },
+ {
+ "id": "1437",
+ "name": "Hamab"
+ },
+ {
+ "id": "1438",
+ "name": "Hafuba"
+ },
+ {
+ "id": "1439",
+ "name": "Denadu"
+ },
+ {
+ "id": "1440",
+ "name": "Lofu"
+ },
+ {
+ "id": "1441",
+ "name": "Kruk"
+ },
+ {
+ "id": "1448",
+ "name": "Awowogei"
+ },
+ {
+ "id": "1449",
+ "name": "Uwogo"
+ },
+ {
+ "id": "1450",
+ "name": "Muruwoi"
+ },
+ {
+ "id": "1462",
+ "name": "Elder Guard"
+ },
+ {
+ "id": "1468",
+ "name": "Bonzara"
+ },
+ {
+ "id": "1470",
+ "name": "Foreman"
+ },
+ {
+ "id": "1474",
+ "name": "Spider"
+ },
+ {
+ "id": "1482",
+ "name": "Gorilla"
+ },
+ {
+ "id": "1488",
+ "name": "Dummy"
+ },
+ {
+ "id": "1489",
+ "name": "Dummy"
+ },
+ {
+ "id": "1490",
+ "name": "Dummy"
+ },
+ {
+ "id": "1491",
+ "name": "Dummy"
+ },
+ {
+ "id": "1492",
+ "name": "Dummy"
+ },
+ {
+ "id": "1493",
+ "name": "Dummy"
+ },
+ {
+ "id": "1494",
+ "name": "Dummy"
+ },
+ {
+ "id": "1495",
+ "name": "Dummy"
+ },
+ {
+ "id": "1496",
+ "name": "Dummy"
+ },
+ {
+ "id": "1497",
+ "name": "Dummy"
+ },
+ {
+ "id": "1498",
+ "name": "Dummy"
+ },
+ {
+ "id": "1499",
+ "name": "Dummy"
+ },
+ {
+ "id": "1500",
+ "name": "Dummy"
+ },
+ {
+ "id": "1501",
+ "name": "Dummy"
+ },
+ {
+ "id": "1502",
+ "name": "Dummy"
+ },
+ {
+ "id": "1503",
+ "name": "Dummy"
+ },
+ {
+ "id": "1504",
+ "name": "Dummy"
+ },
+ {
+ "id": "1505",
+ "name": "Dummy"
+ },
+ {
+ "id": "1506",
+ "name": "Dummy"
+ },
+ {
+ "id": "1507",
+ "name": "Dummy"
+ },
+ {
+ "id": "1508",
+ "name": "Forester"
+ },
+ {
+ "id": "1509",
+ "name": "Woman-at-arms"
+ },
+ {
+ "id": "1510",
+ "name": "Apprentice"
+ },
+ {
+ "id": "1511",
+ "name": "Ranger"
+ },
+ {
+ "id": "1512",
+ "name": "Adventurer"
+ },
+ {
+ "id": "1513",
+ "name": "Mage"
+ },
+ {
+ "id": "1515",
+ "name": "Nail beast"
+ },
+ {
+ "id": "1522",
+ "name": "Nail beast"
+ },
+ {
+ "id": "1523",
+ "name": "Nail beast"
+ },
+ {
+ "id": "1525",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "1526",
+ "name": "Lanthus"
+ },
+ {
+ "id": "1527",
+ "name": "Mine cart"
+ },
+ {
+ "id": "1529",
+ "name": "Sheep"
+ },
+ {
+ "id": "1530",
+ "name": "Rabbit"
+ },
+ {
+ "id": "1542",
+ "name": "Loading crane"
+ },
+ {
+ "id": "1543",
+ "name": "Innocent-looking key"
+ },
+ {
+ "id": "1544",
+ "name": "Mine cart"
+ },
+ {
+ "id": "1545",
+ "name": "Mine cart"
+ },
+ {
+ "id": "1546",
+ "name": "Mine cart"
+ },
+ {
+ "id": "1547",
+ "name": "Mine cart"
+ },
+ {
+ "id": "1548",
+ "name": "Mine cart"
+ },
+ {
+ "id": "1552",
+ "name": "Santa"
+ },
+ {
+ "id": "1554",
+ "name": "Aga"
+ },
+ {
+ "id": "1555",
+ "name": "Arrg"
+ },
+ {
+ "id": "1559",
+ "name": "Ice wolf"
+ },
+ {
+ "id": "1568",
+ "name": "Curpile Fyod"
+ },
+ {
+ "id": "1569",
+ "name": "Veliaf Hurtz"
+ },
+ {
+ "id": "1570",
+ "name": "Sani Piliu"
+ },
+ {
+ "id": "1571",
+ "name": "Harold Evans"
+ },
+ {
+ "id": "1572",
+ "name": "Radigad Ponfit"
+ },
+ {
+ "id": "1573",
+ "name": "Polmafi Ferdygris"
+ },
+ {
+ "id": "1574",
+ "name": "Ivan Strom"
+ },
+ {
+ "id": "1575",
+ "name": "Skeleton Hellhound"
+ },
+ {
+ "id": "1576",
+ "name": "Stranger"
+ },
+ {
+ "id": "1577",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "1578",
+ "name": "Mist"
+ },
+ {
+ "id": "1579",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "1580",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "1581",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "1595",
+ "name": "Saniboch"
+ },
+ {
+ "id": "1596",
+ "name": "Vannaka"
+ },
+ {
+ "id": "1599",
+ "name": "Cave crawler"
+ },
+ {
+ "id": "1659",
+ "name": "Skullball"
+ },
+ {
+ "id": "1664",
+ "name": "Agility Trainer"
+ },
+ {
+ "id": "1666",
+ "name": "Dr Fenkenstrain"
+ },
+ {
+ "id": "1671",
+ "name": "Fenkenstrain's Monster"
+ },
+ {
+ "id": "1674",
+ "name": "Lord Rologarth"
+ },
+ {
+ "id": "1679",
+ "name": "Eluned"
+ },
+ {
+ "id": "1680",
+ "name": "Islwyn"
+ },
+ {
+ "id": "1682",
+ "name": "Golrie"
+ },
+ {
+ "id": "1683",
+ "name": "Velorina"
+ },
+ {
+ "id": "1685",
+ "name": "Gravingas"
+ },
+ {
+ "id": "1687",
+ "name": "Ak-Haranu"
+ },
+ {
+ "id": "1689",
+ "name": "Undead cow"
+ },
+ {
+ "id": "1694",
+ "name": "Robin"
+ },
+ {
+ "id": "1709",
+ "name": "Johanhus Ulsbrecht"
+ },
+ {
+ "id": "1719",
+ "name": "Tree"
+ },
+ {
+ "id": "1720",
+ "name": "Tree"
+ },
+ {
+ "id": "1721",
+ "name": "Tree"
+ },
+ {
+ "id": "1722",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1723",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1724",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1725",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1726",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1727",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1728",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1729",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1730",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1731",
+ "name": "Dead tree"
+ },
+ {
+ "id": "1732",
+ "name": "Dramen tree"
+ },
+ {
+ "id": "1734",
+ "name": "Magic tree"
+ },
+ {
+ "id": "1735",
+ "name": "Maple tree"
+ },
+ {
+ "id": "1736",
+ "name": "Willow"
+ },
+ {
+ "id": "1737",
+ "name": "Willow"
+ },
+ {
+ "id": "1738",
+ "name": "Willow"
+ },
+ {
+ "id": "1749",
+ "name": "Hollow tree"
+ },
+ {
+ "id": "1750",
+ "name": "Hollow tree"
+ },
+ {
+ "id": "1753",
+ "name": "Mounted terrorbird gnome"
+ },
+ {
+ "id": "1756",
+ "name": "Crow"
+ },
+ {
+ "id": "1762",
+ "name": "Sheep"
+ },
+ {
+ "id": "1764",
+ "name": "Sheep"
+ },
+ {
+ "id": "1765",
+ "name": "Sheep"
+ },
+ {
+ "id": "1777",
+ "name": "Ilfeen"
+ },
+ {
+ "id": "1778",
+ "name": "William"
+ },
+ {
+ "id": "1779",
+ "name": "Ian"
+ },
+ {
+ "id": "1780",
+ "name": "Larry"
+ },
+ {
+ "id": "1781",
+ "name": "Darren"
+ },
+ {
+ "id": "1782",
+ "name": "Edward"
+ },
+ {
+ "id": "1784",
+ "name": "Neil"
+ },
+ {
+ "id": "1786",
+ "name": "Simon"
+ },
+ {
+ "id": "1787",
+ "name": "Sam"
+ },
+ {
+ "id": "1788",
+ "name": "Lumdo"
+ },
+ {
+ "id": "1789",
+ "name": "Bunkwicket"
+ },
+ {
+ "id": "1790",
+ "name": "Waymottin"
+ },
+ {
+ "id": "1791",
+ "name": "Jungle Tree"
+ },
+ {
+ "id": "1792",
+ "name": "Jungle Tree"
+ },
+ {
+ "id": "1793",
+ "name": "Tassie Slipcast"
+ },
+ {
+ "id": "1798",
+ "name": "Phantuwti Fanstuwi Farsight"
+ },
+ {
+ "id": "1799",
+ "name": "Tindel Marchant"
+ },
+ {
+ "id": "1800",
+ "name": "Gnormadium Avlafrim"
+ },
+ {
+ "id": "1801",
+ "name": "Petra Fiyed"
+ },
+ {
+ "id": "1804",
+ "name": "Slagilith"
+ },
+ {
+ "id": "1808",
+ "name": "Ragnar"
+ },
+ {
+ "id": "1809",
+ "name": "Svidi"
+ },
+ {
+ "id": "1810",
+ "name": "Jokul"
+ },
+ {
+ "id": "1811",
+ "name": "The Kendal"
+ },
+ {
+ "id": "1821",
+ "name": "Bald Headed Eagle"
+ },
+ {
+ "id": "1826",
+ "name": "Zombie"
+ },
+ {
+ "id": "1830",
+ "name": "Frog"
+ },
+ {
+ "id": "1835",
+ "name": "Easter Bunny"
+ },
+ {
+ "id": "1836",
+ "name": "Dondakan the Dwarf"
+ },
+ {
+ "id": "1838",
+ "name": "Dondakan the Dwarf"
+ },
+ {
+ "id": "1839",
+ "name": "Dondakan the Dwarf"
+ },
+ {
+ "id": "1841",
+ "name": "Rolad"
+ },
+ {
+ "id": "1845",
+ "name": "Dwarven Boatman"
+ },
+ {
+ "id": "1847",
+ "name": "Miodvetnir"
+ },
+ {
+ "id": "1848",
+ "name": "Dernu"
+ },
+ {
+ "id": "1849",
+ "name": "Derni"
+ },
+ {
+ "id": "1860",
+ "name": "Brian"
+ },
+ {
+ "id": "1862",
+ "name": "Ali Morrisane"
+ },
+ {
+ "id": "1869",
+ "name": "Ali the Mayor"
+ },
+ {
+ "id": "1876",
+ "name": "Bandit Leader"
+ },
+ {
+ "id": "1879",
+ "name": "Bandit"
+ },
+ {
+ "id": "1881",
+ "name": "Bandit"
+ },
+ {
+ "id": "1882",
+ "name": "Sir Palomedes"
+ },
+ {
+ "id": "1883",
+ "name": "Sir Palomedes"
+ },
+ {
+ "id": "1884",
+ "name": "Trobert"
+ },
+ {
+ "id": "1887",
+ "name": "Villager"
+ },
+ {
+ "id": "1889",
+ "name": "Villager"
+ },
+ {
+ "id": "1890",
+ "name": "Villager"
+ },
+ {
+ "id": "1891",
+ "name": "Villager"
+ },
+ {
+ "id": "1893",
+ "name": "Villager"
+ },
+ {
+ "id": "1894",
+ "name": "Villager"
+ },
+ {
+ "id": "1895",
+ "name": "Villager"
+ },
+ {
+ "id": "1897",
+ "name": "Villager"
+ },
+ {
+ "id": "1898",
+ "name": "Villager"
+ },
+ {
+ "id": "1899",
+ "name": "Menaphite Leader"
+ },
+ {
+ "id": "1903",
+ "name": "Menaphite Thug"
+ },
+ {
+ "id": "1907",
+ "name": "Broken clay golem"
+ },
+ {
+ "id": "1909",
+ "name": "Damaged clay golem"
+ },
+ {
+ "id": "1910",
+ "name": "Clay golem"
+ },
+ {
+ "id": "1912",
+ "name": "Elissa"
+ },
+ {
+ "id": "1922",
+ "name": "Eblis"
+ },
+ {
+ "id": "1924",
+ "name": "Eblis"
+ },
+ {
+ "id": "1927",
+ "name": "Bandit"
+ },
+ {
+ "id": "1928",
+ "name": "Bandit"
+ },
+ {
+ "id": "1929",
+ "name": "Bandit"
+ },
+ {
+ "id": "1930",
+ "name": "Bandit"
+ },
+ {
+ "id": "1932",
+ "name": "Troll child"
+ },
+ {
+ "id": "1934",
+ "name": "Troll child"
+ },
+ {
+ "id": "1943",
+ "name": "Ice block"
+ },
+ {
+ "id": "1945",
+ "name": "Ice block"
+ },
+ {
+ "id": "1957",
+ "name": "Mummy"
+ },
+ {
+ "id": "1959",
+ "name": "Mummy"
+ },
+ {
+ "id": "1960",
+ "name": "Mummy ashes"
+ },
+ {
+ "id": "1966",
+ "name": "Mummy"
+ },
+ {
+ "id": "1968",
+ "name": "Mummy"
+ },
+ {
+ "id": "1970",
+ "name": "Azzanadra"
+ },
+ {
+ "id": "1982",
+ "name": "Raetul"
+ },
+ {
+ "id": "1983",
+ "name": "Siamun"
+ },
+ {
+ "id": "1984",
+ "name": "High Priest"
+ },
+ {
+ "id": "1987",
+ "name": "Priest"
+ },
+ {
+ "id": "1989",
+ "name": "Priest"
+ },
+ {
+ "id": "1990",
+ "name": "Sphinx"
+ },
+ {
+ "id": "1992",
+ "name": "Neite"
+ },
+ {
+ "id": "1996",
+ "name": "Vulture"
+ },
+ {
+ "id": "2000",
+ "name": "Plague cow"
+ },
+ {
+ "id": "2002",
+ "name": "Wanderer"
+ },
+ {
+ "id": "2006",
+ "name": "Wanderer"
+ },
+ {
+ "id": "2007",
+ "name": "Het"
+ },
+ {
+ "id": "2008",
+ "name": "Apmeken"
+ },
+ {
+ "id": "2009",
+ "name": "Scabaras"
+ },
+ {
+ "id": "2010",
+ "name": "Crondis"
+ },
+ {
+ "id": "2011",
+ "name": "Icthlarin"
+ },
+ {
+ "id": "2013",
+ "name": "Klenter"
+ },
+ {
+ "id": "2020",
+ "name": "Light creature"
+ },
+ {
+ "id": "2022",
+ "name": "Light creature"
+ },
+ {
+ "id": "2023",
+ "name": "Juna"
+ },
+ {
+ "id": "2038",
+ "name": "Grish"
+ },
+ {
+ "id": "2039",
+ "name": "Uglug Nar"
+ },
+ {
+ "id": "2040",
+ "name": "Pilg"
+ },
+ {
+ "id": "2041",
+ "name": "Grug"
+ },
+ {
+ "id": "2042",
+ "name": "Ogre guard"
+ },
+ {
+ "id": "2043",
+ "name": "Ogre guard"
+ },
+ {
+ "id": "2059",
+ "name": "Zavistic Rarve"
+ },
+ {
+ "id": "2061",
+ "name": "Sithik Ints"
+ },
+ {
+ "id": "2062",
+ "name": "Sithik Ints"
+ },
+ {
+ "id": "2063",
+ "name": "Gargh"
+ },
+ {
+ "id": "2064",
+ "name": "Scarg"
+ },
+ {
+ "id": "2065",
+ "name": "Gruh"
+ },
+ {
+ "id": "2066",
+ "name": "Irwin Feaselbaum"
+ },
+ {
+ "id": "2068",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "2079",
+ "name": "Sigmund"
+ },
+ {
+ "id": "2083",
+ "name": "Sigmund"
+ },
+ {
+ "id": "2084",
+ "name": "Mistag"
+ },
+ {
+ "id": "2085",
+ "name": "Kazgar"
+ },
+ {
+ "id": "2087",
+ "name": "Ur-tag"
+ },
+ {
+ "id": "2088",
+ "name": "Duke Horacio"
+ },
+ {
+ "id": "2089",
+ "name": "Mistag"
+ },
+ {
+ "id": "2090",
+ "name": "Sigmund"
+ },
+ {
+ "id": "2099",
+ "name": "Red Axe Secretary"
+ },
+ {
+ "id": "2107",
+ "name": "Red Axe Director"
+ },
+ {
+ "id": "2108",
+ "name": "Red Axe Cat"
+ },
+ {
+ "id": "2123",
+ "name": "Trader"
+ },
+ {
+ "id": "2125",
+ "name": "Trader"
+ },
+ {
+ "id": "2128",
+ "name": "Supreme Commander"
+ },
+ {
+ "id": "2129",
+ "name": "Commander Veldaban"
+ },
+ {
+ "id": "2137",
+ "name": "Gnome emissary"
+ },
+ {
+ "id": "2142",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2144",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2145",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2146",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2147",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2148",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2149",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2150",
+ "name": "Riki the sculptor's model"
+ },
+ {
+ "id": "2151",
+ "name": "Vigr"
+ },
+ {
+ "id": "2152",
+ "name": "Santiri"
+ },
+ {
+ "id": "2153",
+ "name": "Saro"
+ },
+ {
+ "id": "2155",
+ "name": "Wemund"
+ },
+ {
+ "id": "2156",
+ "name": "Randivor"
+ },
+ {
+ "id": "2157",
+ "name": "Hervi"
+ },
+ {
+ "id": "2159",
+ "name": "Gulldamar"
+ },
+ {
+ "id": "2161",
+ "name": "Agmundi"
+ },
+ {
+ "id": "2162",
+ "name": "Vermundi"
+ },
+ {
+ "id": "2166",
+ "name": "Assistant"
+ },
+ {
+ "id": "2169",
+ "name": "Dromund"
+ },
+ {
+ "id": "2176",
+ "name": "Inn Keeper"
+ },
+ {
+ "id": "2179",
+ "name": "Barman"
+ },
+ {
+ "id": "2188",
+ "name": "Hegir"
+ },
+ {
+ "id": "2189",
+ "name": "Haera"
+ },
+ {
+ "id": "2194",
+ "name": "Reinald"
+ },
+ {
+ "id": "2196",
+ "name": "Gauss"
+ },
+ {
+ "id": "2197",
+ "name": "Myndill"
+ },
+ {
+ "id": "2199",
+ "name": "Tombar"
+ },
+ {
+ "id": "2200",
+ "name": "Odmar"
+ },
+ {
+ "id": "2204",
+ "name": "Drunken Dwarf"
+ },
+ {
+ "id": "2208",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2209",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2210",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2211",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2212",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2213",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2214",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2215",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2216",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2217",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2218",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2219",
+ "name": "Purple Pewter Director"
+ },
+ {
+ "id": "2220",
+ "name": "Purple Pewter Director"
+ },
+ {
+ "id": "2221",
+ "name": "Blue Opal Director"
+ },
+ {
+ "id": "2222",
+ "name": "Yellow Fortune Director"
+ },
+ {
+ "id": "2223",
+ "name": "Green Gemstone Director"
+ },
+ {
+ "id": "2224",
+ "name": "White Chisel Director"
+ },
+ {
+ "id": "2225",
+ "name": "Silver Cog Director"
+ },
+ {
+ "id": "2226",
+ "name": "Brown Engine Director"
+ },
+ {
+ "id": "2227",
+ "name": "Red Axe Director"
+ },
+ {
+ "id": "2228",
+ "name": "Commander Veldaban"
+ },
+ {
+ "id": "2229",
+ "name": "Red Axe Cat"
+ },
+ {
+ "id": "2230",
+ "name": "Red Axe Cat"
+ },
+ {
+ "id": "2231",
+ "name": "Black Guard Berserker"
+ },
+ {
+ "id": "2233",
+ "name": "Olivia"
+ },
+ {
+ "id": "2238",
+ "name": "Donie"
+ },
+ {
+ "id": "2239",
+ "name": "Pig"
+ },
+ {
+ "id": "2251",
+ "name": "Gnome"
+ },
+ {
+ "id": "2252",
+ "name": "Crow"
+ },
+ {
+ "id": "2254",
+ "name": "Bed"
+ },
+ {
+ "id": "2255",
+ "name": "Thing under the bed"
+ },
+ {
+ "id": "2257",
+ "name": "Mage of Zamorak"
+ },
+ {
+ "id": "2259",
+ "name": "Mage of Zamorak"
+ },
+ {
+ "id": "2260",
+ "name": "Mage of Zamorak"
+ },
+ {
+ "id": "2266",
+ "name": "Brian O'Richard"
+ },
+ {
+ "id": "2268",
+ "name": "Rogue Guard"
+ },
+ {
+ "id": "2270",
+ "name": "Martin Thwait"
+ },
+ {
+ "id": "2273",
+ "name": "Spin Blades"
+ },
+ {
+ "id": "2295",
+ "name": "Rug Merchant"
+ },
+ {
+ "id": "2297",
+ "name": "Rug Merchant"
+ },
+ {
+ "id": "2299",
+ "name": "Rug Station Attendant"
+ },
+ {
+ "id": "2302",
+ "name": "Sarah"
+ },
+ {
+ "id": "2305",
+ "name": "Vanessa"
+ },
+ {
+ "id": "2306",
+ "name": "Richard"
+ },
+ {
+ "id": "2307",
+ "name": "Alice"
+ },
+ {
+ "id": "2308",
+ "name": "Capt' Arnav"
+ },
+ {
+ "id": "2322",
+ "name": "Metarialus"
+ },
+ {
+ "id": "2345",
+ "name": "Sick-looking sheep (1)"
+ },
+ {
+ "id": "2346",
+ "name": "Sick-looking sheep (2)"
+ },
+ {
+ "id": "2347",
+ "name": "Sick-looking sheep (3)"
+ },
+ {
+ "id": "2348",
+ "name": "Sick-looking sheep (4)"
+ },
+ {
+ "id": "2349",
+ "name": "Mourner"
+ },
+ {
+ "id": "2350",
+ "name": "Mourner"
+ },
+ {
+ "id": "2351",
+ "name": "Mourner"
+ },
+ {
+ "id": "2352",
+ "name": "Eudav"
+ },
+ {
+ "id": "2353",
+ "name": "Oronwen"
+ },
+ {
+ "id": "2356",
+ "name": "Dalldav"
+ },
+ {
+ "id": "2357",
+ "name": "Gethin"
+ },
+ {
+ "id": "2358",
+ "name": "Arianwyn"
+ },
+ {
+ "id": "2363",
+ "name": "Goreu"
+ },
+ {
+ "id": "2364",
+ "name": "Ysgawyn"
+ },
+ {
+ "id": "2365",
+ "name": "Arvel"
+ },
+ {
+ "id": "2366",
+ "name": "Mawrth"
+ },
+ {
+ "id": "2367",
+ "name": "Kelyn"
+ },
+ {
+ "id": "2368",
+ "name": "Eoin"
+ },
+ {
+ "id": "2369",
+ "name": "Iona"
+ },
+ {
+ "id": "2370",
+ "name": "Gnome"
+ },
+ {
+ "id": "2375",
+ "name": "Eluned"
+ },
+ {
+ "id": "2377",
+ "name": "Sick-looking sheep (1)"
+ },
+ {
+ "id": "2378",
+ "name": "Sick-looking sheep (2)"
+ },
+ {
+ "id": "2379",
+ "name": "Sick-looking sheep (3)"
+ },
+ {
+ "id": "2380",
+ "name": "Sick-looking sheep (4)"
+ },
+ {
+ "id": "2381",
+ "name": "Mysterious ghost"
+ },
+ {
+ "id": "2403",
+ "name": "Cart conductor"
+ },
+ {
+ "id": "2410",
+ "name": "Red Axe Director"
+ },
+ {
+ "id": "2411",
+ "name": "Red Axe Director"
+ },
+ {
+ "id": "2412",
+ "name": "Red Axe Henchman"
+ },
+ {
+ "id": "2413",
+ "name": "Red Axe Henchman"
+ },
+ {
+ "id": "2414",
+ "name": "Red Axe Henchman"
+ },
+ {
+ "id": "2415",
+ "name": "Colonel Grimsson"
+ },
+ {
+ "id": "2416",
+ "name": "Colonel Grimsson"
+ },
+ {
+ "id": "2417",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "2418",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "2419",
+ "name": "Grunsh"
+ },
+ {
+ "id": "2420",
+ "name": "Gnome emissary"
+ },
+ {
+ "id": "2421",
+ "name": "Gnome companion"
+ },
+ {
+ "id": "2422",
+ "name": "Gnome companion"
+ },
+ {
+ "id": "2424",
+ "name": "Gunslik"
+ },
+ {
+ "id": "2425",
+ "name": "Nolar"
+ },
+ {
+ "id": "2426",
+ "name": "Factory Worker"
+ },
+ {
+ "id": "2427",
+ "name": "Cart conductor"
+ },
+ {
+ "id": "2428",
+ "name": "Gauss"
+ },
+ {
+ "id": "2429",
+ "name": "Drunken Dwarf"
+ },
+ {
+ "id": "2430",
+ "name": "Rowdy dwarf"
+ },
+ {
+ "id": "2431",
+ "name": "Ulifed"
+ },
+ {
+ "id": "2432",
+ "name": "Red Axe Henchman"
+ },
+ {
+ "id": "2433",
+ "name": "Red Axe Henchman"
+ },
+ {
+ "id": "2434",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "2435",
+ "name": "Jarvald"
+ },
+ {
+ "id": "2437",
+ "name": "Jarvald"
+ },
+ {
+ "id": "2438",
+ "name": "Jarvald"
+ },
+ {
+ "id": "2440",
+ "name": "Door-support"
+ },
+ {
+ "id": "2441",
+ "name": "Door"
+ },
+ {
+ "id": "2442",
+ "name": "Door"
+ },
+ {
+ "id": "2444",
+ "name": "Door"
+ },
+ {
+ "id": "2445",
+ "name": "Door"
+ },
+ {
+ "id": "2446",
+ "name": "Door-support"
+ },
+ {
+ "id": "2447",
+ "name": "Door"
+ },
+ {
+ "id": "2448",
+ "name": "Door"
+ },
+ {
+ "id": "2449",
+ "name": "Egg"
+ },
+ {
+ "id": "2450",
+ "name": "Egg"
+ },
+ {
+ "id": "2451",
+ "name": "Egg"
+ },
+ {
+ "id": "2458",
+ "name": "Freaky Forester"
+ },
+ {
+ "id": "2469",
+ "name": "Frog"
+ },
+ {
+ "id": "2470",
+ "name": "Frog"
+ },
+ {
+ "id": "2471",
+ "name": "Frog"
+ },
+ {
+ "id": "2472",
+ "name": "Frog"
+ },
+ {
+ "id": "2473",
+ "name": "Frog"
+ },
+ {
+ "id": "2474",
+ "name": "Frog prince"
+ },
+ {
+ "id": "2475",
+ "name": "Frog princess"
+ },
+ {
+ "id": "2478",
+ "name": "Evil Bob"
+ },
+ {
+ "id": "2480",
+ "name": "Servant"
+ },
+ {
+ "id": "2483",
+ "name": "Bush snake"
+ },
+ {
+ "id": "2498",
+ "name": "Broodoo victim"
+ },
+ {
+ "id": "2500",
+ "name": "Broodoo victim"
+ },
+ {
+ "id": "2502",
+ "name": "Broodoo victim"
+ },
+ {
+ "id": "2504",
+ "name": "Sharimika"
+ },
+ {
+ "id": "2507",
+ "name": "Mamma Bufetta"
+ },
+ {
+ "id": "2510",
+ "name": "Layleen"
+ },
+ {
+ "id": "2513",
+ "name": "Karaday"
+ },
+ {
+ "id": "2516",
+ "name": "Safta Doc"
+ },
+ {
+ "id": "2519",
+ "name": "Gabooty"
+ },
+ {
+ "id": "2522",
+ "name": "Fanellaman"
+ },
+ {
+ "id": "2525",
+ "name": "Jagbakoba"
+ },
+ {
+ "id": "2528",
+ "name": "Murcaily"
+ },
+ {
+ "id": "2531",
+ "name": "Rionasta"
+ },
+ {
+ "id": "2534",
+ "name": "Mahogany"
+ },
+ {
+ "id": "2535",
+ "name": "Teak"
+ },
+ {
+ "id": "2536",
+ "name": "Niles"
+ },
+ {
+ "id": "2537",
+ "name": "Miles"
+ },
+ {
+ "id": "2538",
+ "name": "Giles"
+ },
+ {
+ "id": "2540",
+ "name": "Dr Jekyll"
+ },
+ {
+ "id": "2541",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "2542",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "2543",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "2544",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "2545",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "2546",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "2548",
+ "name": "Blackjack seller"
+ },
+ {
+ "id": "2550",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2551",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2552",
+ "name": "Dwarven Miner"
+ },
+ {
+ "id": "2554",
+ "name": "Tin ore"
+ },
+ {
+ "id": "2555",
+ "name": "Copper ore"
+ },
+ {
+ "id": "2556",
+ "name": "Iron ore"
+ },
+ {
+ "id": "2557",
+ "name": "Mithril ore"
+ },
+ {
+ "id": "2558",
+ "name": "Adamantite ore"
+ },
+ {
+ "id": "2559",
+ "name": "Runite ore"
+ },
+ {
+ "id": "2560",
+ "name": "Silver ore"
+ },
+ {
+ "id": "2561",
+ "name": "Gold ore"
+ },
+ {
+ "id": "2562",
+ "name": "Coal"
+ },
+ {
+ "id": "2563",
+ "name": "Perfect gold ore"
+ },
+ {
+ "id": "2566",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "2567",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "2568",
+ "name": "Banker"
+ },
+ {
+ "id": "2569",
+ "name": "Banker"
+ },
+ {
+ "id": "2570",
+ "name": "Banker"
+ },
+ {
+ "id": "2573",
+ "name": "Pillory Guard"
+ },
+ {
+ "id": "2575",
+ "name": "Purepker895"
+ },
+ {
+ "id": "2576",
+ "name": "Qutiedoll"
+ },
+ {
+ "id": "2577",
+ "name": "1337sp34kr"
+ },
+ {
+ "id": "2578",
+ "name": "Elfinlocks"
+ },
+ {
+ "id": "2579",
+ "name": "Cool Mom227"
+ },
+ {
+ "id": "2581",
+ "name": "Ellamaria"
+ },
+ {
+ "id": "2582",
+ "name": "Trolley"
+ },
+ {
+ "id": "2583",
+ "name": "Trolley"
+ },
+ {
+ "id": "2584",
+ "name": "Trolley"
+ },
+ {
+ "id": "2585",
+ "name": "Billy, a guard of Falador"
+ },
+ {
+ "id": "2587",
+ "name": "Bob, another guard of Falador"
+ },
+ {
+ "id": "2589",
+ "name": "PKMaster0036"
+ },
+ {
+ "id": "2590",
+ "name": "King Roald"
+ },
+ {
+ "id": "2617",
+ "name": "TzHaar-Mej-Jal"
+ },
+ {
+ "id": "2618",
+ "name": "TzHaar-Mej-Kah"
+ },
+ {
+ "id": "2619",
+ "name": "TzHaar-Ket-Zuh"
+ },
+ {
+ "id": "2620",
+ "name": "TzHaar-Hur-Tel"
+ },
+ {
+ "id": "2622",
+ "name": "TzHaar-Hur-Lek"
+ },
+ {
+ "id": "2623",
+ "name": "TzHaar-Mej-Roh"
+ },
+ {
+ "id": "2624",
+ "name": "TzHaar-Ket"
+ },
+ {
+ "id": "2625",
+ "name": "TzHaar-Ket"
+ },
+ {
+ "id": "2626",
+ "name": "Rocks"
+ },
+ {
+ "id": "2632",
+ "name": "Tok-Xil"
+ },
+ {
+ "id": "2633",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "2635",
+ "name": "Bob"
+ },
+ {
+ "id": "2636",
+ "name": "Bob"
+ },
+ {
+ "id": "2637",
+ "name": "Sphinx"
+ },
+ {
+ "id": "2638",
+ "name": "Neite"
+ },
+ {
+ "id": "2639",
+ "name": "Robert the Strong"
+ },
+ {
+ "id": "2640",
+ "name": "Odysseus"
+ },
+ {
+ "id": "2642",
+ "name": "King Black Dragon"
+ },
+ {
+ "id": "2643",
+ "name": "R4ng3rNo0b889"
+ },
+ {
+ "id": "2644",
+ "name": "Love Cats"
+ },
+ {
+ "id": "2645",
+ "name": "Love Cats"
+ },
+ {
+ "id": "2646",
+ "name": "Neite"
+ },
+ {
+ "id": "2647",
+ "name": "Bob"
+ },
+ {
+ "id": "2648",
+ "name": "Beite"
+ },
+ {
+ "id": "2649",
+ "name": "Gnome"
+ },
+ {
+ "id": "2650",
+ "name": "Gnome"
+ },
+ {
+ "id": "2651",
+ "name": "Odysseus"
+ },
+ {
+ "id": "2652",
+ "name": "Neite"
+ },
+ {
+ "id": "2654",
+ "name": "Unferth"
+ },
+ {
+ "id": "2656",
+ "name": "Unferth"
+ },
+ {
+ "id": "2657",
+ "name": "Unferth"
+ },
+ {
+ "id": "2658",
+ "name": "Unferth"
+ },
+ {
+ "id": "2659",
+ "name": "Unferth"
+ },
+ {
+ "id": "2661",
+ "name": "Reldo"
+ },
+ {
+ "id": "2662",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "2663",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "2664",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "2665",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "2666",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "2667",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "2668",
+ "name": "Wily cat"
+ },
+ {
+ "id": "2669",
+ "name": "Wily cat"
+ },
+ {
+ "id": "2670",
+ "name": "Wily cat"
+ },
+ {
+ "id": "2671",
+ "name": "Wily cat"
+ },
+ {
+ "id": "2672",
+ "name": "Wily cat"
+ },
+ {
+ "id": "2673",
+ "name": "Wily cat"
+ },
+ {
+ "id": "2676",
+ "name": "Make-over Mage"
+ },
+ {
+ "examine": "So what can one do with a drunken sailor?",
+ "id": "2692",
+ "name": "Ahab"
+ },
+ {
+ "id": "2708",
+ "name": "Seagull"
+ },
+ {
+ "id": "2719",
+ "name": "Grum"
+ },
+ {
+ "id": "2720",
+ "name": "Gerrant"
+ },
+ {
+ "id": "2721",
+ "name": "Wydin"
+ },
+ {
+ "id": "2722",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "2723",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "2724",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "2727",
+ "name": "Gull"
+ },
+ {
+ "id": "2730",
+ "name": "Monk of Entrana"
+ },
+ {
+ "id": "2747",
+ "name": "Solus Dellagar"
+ },
+ {
+ "id": "2748",
+ "name": "Savant"
+ },
+ {
+ "id": "2749",
+ "name": "Lord Daquarius"
+ },
+ {
+ "id": "2750",
+ "name": "Solus Dellagar"
+ },
+ {
+ "id": "2751",
+ "name": "Black Knight"
+ },
+ {
+ "id": "2752",
+ "name": "Lord Daquarius"
+ },
+ {
+ "id": "2753",
+ "name": "Mage of Zamorak"
+ },
+ {
+ "id": "2754",
+ "name": "Mage of Zamorak"
+ },
+ {
+ "id": "2755",
+ "name": "Mage of Zamorak"
+ },
+ {
+ "id": "2756",
+ "name": "Woman"
+ },
+ {
+ "id": "2777",
+ "name": "Black Knight"
+ },
+ {
+ "id": "2778",
+ "name": "Black Knight"
+ },
+ {
+ "id": "2780",
+ "name": "Solus Dellagar"
+ },
+ {
+ "id": "2781",
+ "name": "Gnome guard"
+ },
+ {
+ "id": "2788",
+ "name": "Thorgel"
+ },
+ {
+ "id": "2791",
+ "name": "Pillory Guard"
+ },
+ {
+ "id": "2793",
+ "name": "Tramp"
+ },
+ {
+ "id": "2794",
+ "name": "Tramp"
+ },
+ {
+ "id": "2795",
+ "name": "Skippy"
+ },
+ {
+ "id": "2797",
+ "name": "Skippy"
+ },
+ {
+ "id": "2798",
+ "name": "Skippy"
+ },
+ {
+ "id": "2799",
+ "name": "Skippy"
+ },
+ {
+ "id": "2800",
+ "name": "A pile of broken glass"
+ },
+ {
+ "id": "2813",
+ "name": "Alice the Camel"
+ },
+ {
+ "id": "2816",
+ "name": "Ali the Smith"
+ },
+ {
+ "id": "2821",
+ "name": "Ali the Farmer"
+ },
+ {
+ "id": "2822",
+ "name": "Ali the Tailor"
+ },
+ {
+ "id": "2823",
+ "name": "Ali the Guard"
+ },
+ {
+ "id": "2829",
+ "name": "Davey"
+ },
+ {
+ "id": "2859",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "2862",
+ "name": "Death"
+ },
+ {
+ "id": "2864",
+ "name": "Most of a Zombie"
+ },
+ {
+ "id": "2865",
+ "name": "Most of a Zombie"
+ },
+ {
+ "id": "2867",
+ "name": "Most of a Zombie"
+ },
+ {
+ "id": "2868",
+ "name": "Zombie Head"
+ },
+ {
+ "id": "2870",
+ "name": "Half-Zombie"
+ },
+ {
+ "id": "2871",
+ "name": "Other Half-Zombie"
+ },
+ {
+ "id": "2872",
+ "name": "Child"
+ },
+ {
+ "id": "2873",
+ "name": "Child"
+ },
+ {
+ "id": "2874",
+ "name": "Child"
+ },
+ {
+ "id": "2875",
+ "name": "Child"
+ },
+ {
+ "id": "2876",
+ "name": "Child"
+ },
+ {
+ "id": "2877",
+ "name": "Child"
+ },
+ {
+ "id": "2879",
+ "name": "Bardur"
+ },
+ {
+ "id": "2884",
+ "name": "Wallasalki"
+ },
+ {
+ "id": "2891",
+ "name": "Suspicious water"
+ },
+ {
+ "id": "2893",
+ "name": "Suspicious water"
+ },
+ {
+ "id": "2895",
+ "name": "Suspicious water"
+ },
+ {
+ "id": "2897",
+ "name": "Father Reen"
+ },
+ {
+ "id": "2900",
+ "name": "Father Reen"
+ },
+ {
+ "id": "2901",
+ "name": "Father Badden"
+ },
+ {
+ "id": "2903",
+ "name": "Father Badden"
+ },
+ {
+ "id": "2904",
+ "name": "Denath"
+ },
+ {
+ "id": "2905",
+ "name": "Denath"
+ },
+ {
+ "id": "2906",
+ "name": "Eric"
+ },
+ {
+ "id": "2907",
+ "name": "Eric"
+ },
+ {
+ "id": "2908",
+ "name": "Evil Dave"
+ },
+ {
+ "id": "2910",
+ "name": "Evil Dave"
+ },
+ {
+ "id": "2911",
+ "name": "Matthew"
+ },
+ {
+ "id": "2912",
+ "name": "Matthew"
+ },
+ {
+ "id": "2913",
+ "name": "Jennifer"
+ },
+ {
+ "id": "2914",
+ "name": "Jennifer"
+ },
+ {
+ "id": "2915",
+ "name": "Tanya"
+ },
+ {
+ "id": "2916",
+ "name": "Tanya"
+ },
+ {
+ "id": "2917",
+ "name": "Patrick"
+ },
+ {
+ "id": "2918",
+ "name": "Patrick"
+ },
+ {
+ "id": "2920",
+ "name": "Sand storm"
+ },
+ {
+ "id": "2922",
+ "name": "Clay golem"
+ },
+ {
+ "id": "2928",
+ "name": "Clay golem"
+ },
+ {
+ "id": "2929",
+ "name": "Ghost"
+ },
+ {
+ "id": "2932",
+ "name": "Jorral"
+ },
+ {
+ "id": "2933",
+ "name": "Melina"
+ },
+ {
+ "id": "2935",
+ "name": "Melina"
+ },
+ {
+ "id": "2936",
+ "name": "Droalak"
+ },
+ {
+ "id": "2938",
+ "name": "Droalak"
+ },
+ {
+ "id": "2939",
+ "name": "Dron"
+ },
+ {
+ "id": "2940",
+ "name": "Blanin"
+ },
+ {
+ "id": "2943",
+ "name": "Pox"
+ },
+ {
+ "id": "2944",
+ "name": "Pox"
+ },
+ {
+ "examine": "Cracking personality.",
+ "id": "2946",
+ "name": "Grimesquit"
+ },
+ {
+ "examine": "Lovely girl, shame about the smell.",
+ "id": "2947",
+ "name": "Phingspet"
+ },
+ {
+ "id": "2951",
+ "name": "Felkrash"
+ },
+ {
+ "id": "2953",
+ "name": "Ceril Carnillean"
+ },
+ {
+ "id": "2954",
+ "name": "Councillor Halgrive"
+ },
+ {
+ "id": "2955",
+ "name": "Spice seller"
+ },
+ {
+ "id": "2956",
+ "name": "Fur trader"
+ },
+ {
+ "id": "2957",
+ "name": "Gem merchant"
+ },
+ {
+ "id": "2959",
+ "name": "Silk merchant"
+ },
+ {
+ "id": "2960",
+ "name": "Zenesha"
+ },
+ {
+ "id": "2961",
+ "name": "Ali Morrisane"
+ },
+ {
+ "id": "2974",
+ "name": "Rat"
+ },
+ {
+ "id": "2983",
+ "name": "Turbogroomer"
+ },
+ {
+ "id": "2985",
+ "name": "Loki"
+ },
+ {
+ "id": "2987",
+ "name": "Treacle"
+ },
+ {
+ "id": "2989",
+ "name": "Claude"
+ },
+ {
+ "id": "2991",
+ "name": "Rauborn"
+ },
+ {
+ "id": "2992",
+ "name": "Vaeringk"
+ },
+ {
+ "id": "2993",
+ "name": "Oxi"
+ },
+ {
+ "id": "2994",
+ "name": "Fior"
+ },
+ {
+ "id": "2995",
+ "name": "Sagira"
+ },
+ {
+ "id": "2996",
+ "name": "Anleif"
+ },
+ {
+ "id": "2999",
+ "name": "Gambler"
+ },
+ {
+ "id": "3000",
+ "name": "Barman"
+ },
+ {
+ "id": "3019",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "3020",
+ "name": "Rug Merchant"
+ },
+ {
+ "id": "3023",
+ "name": "Nirrie"
+ },
+ {
+ "id": "3024",
+ "name": "Tirrie"
+ },
+ {
+ "id": "3025",
+ "name": "Hallak"
+ },
+ {
+ "id": "3031",
+ "name": "Usi"
+ },
+ {
+ "id": "3032",
+ "name": "Nkuku"
+ },
+ {
+ "id": "3033",
+ "name": "Garai"
+ },
+ {
+ "id": "3034",
+ "name": "Habibah"
+ },
+ {
+ "id": "3035",
+ "name": "Meskhenet"
+ },
+ {
+ "id": "3036",
+ "name": "Zahra"
+ },
+ {
+ "id": "3037",
+ "name": "Zahur"
+ },
+ {
+ "id": "3038",
+ "name": "Seddu"
+ },
+ {
+ "id": "3039",
+ "name": "Kazemde"
+ },
+ {
+ "id": "3041",
+ "name": "Tarik"
+ },
+ {
+ "id": "3045",
+ "name": "Rokuh"
+ },
+ {
+ "id": "3047",
+ "name": "Target"
+ },
+ {
+ "id": "3048",
+ "name": "Target"
+ },
+ {
+ "id": "3049",
+ "name": "Larxus"
+ },
+ {
+ "id": "3076",
+ "name": "Dead Monk"
+ },
+ {
+ "id": "3078",
+ "name": "High Priest"
+ },
+ {
+ "id": "3081",
+ "name": "Assassin"
+ },
+ {
+ "id": "3082",
+ "name": "Rosie"
+ },
+ {
+ "id": "3083",
+ "name": "Sorcha"
+ },
+ {
+ "id": "3084",
+ "name": "Cait"
+ },
+ {
+ "id": "3085",
+ "name": "Cormac"
+ },
+ {
+ "id": "3086",
+ "name": "Fionn"
+ },
+ {
+ "id": "3087",
+ "name": "Donnacha"
+ },
+ {
+ "id": "3088",
+ "name": "Ronan"
+ },
+ {
+ "id": "3093",
+ "name": "Flying Book"
+ },
+ {
+ "id": "3095",
+ "name": "Flying Book"
+ },
+ {
+ "id": "3096",
+ "name": "Pizzaz Hat"
+ },
+ {
+ "id": "3107",
+ "name": "Charmed Warrior"
+ },
+ {
+ "id": "3108",
+ "name": "Bert"
+ },
+ {
+ "id": "3110",
+ "name": "Sandy"
+ },
+ {
+ "id": "3113",
+ "name": "Sandy"
+ },
+ {
+ "id": "3114",
+ "name": "Mazion"
+ },
+ {
+ "id": "3116",
+ "name": "Reeso"
+ },
+ {
+ "id": "3118",
+ "name": "Prison Pete"
+ },
+ {
+ "id": "3119",
+ "name": "Balloon Animal"
+ },
+ {
+ "id": "3120",
+ "name": "Balloon Animal"
+ },
+ {
+ "id": "3124",
+ "name": "Pyramid block"
+ },
+ {
+ "id": "3125",
+ "name": "Pyramid block"
+ },
+ {
+ "id": "3126",
+ "name": "Pentyn"
+ },
+ {
+ "id": "3127",
+ "name": "Aristarchus"
+ },
+ {
+ "id": "3128",
+ "name": "Boneguard"
+ },
+ {
+ "id": "3130",
+ "name": "Pile of bones"
+ },
+ {
+ "id": "3131",
+ "name": "Desert Spirit"
+ },
+ {
+ "id": "3132",
+ "name": "Crust of ice"
+ },
+ {
+ "id": "3134",
+ "name": "Furnace grate"
+ },
+ {
+ "id": "3136",
+ "name": "Enakhra"
+ },
+ {
+ "id": "3138",
+ "name": "Enakhra"
+ },
+ {
+ "id": "3139",
+ "name": "Boneguard"
+ },
+ {
+ "id": "3141",
+ "name": "Akthanakos"
+ },
+ {
+ "id": "3142",
+ "name": "Akthanakos"
+ },
+ {
+ "id": "3143",
+ "name": "Lazim"
+ },
+ {
+ "id": "3148",
+ "name": "Enakhra"
+ },
+ {
+ "id": "3149",
+ "name": "Akthanakos"
+ },
+ {
+ "id": "3152",
+ "name": "Harpie Bug Swarm"
+ },
+ {
+ "id": "3154",
+ "name": "Count Draynor"
+ },
+ {
+ "id": "3156",
+ "name": "Bill Teach"
+ },
+ {
+ "id": "3157",
+ "name": "Bill Teach"
+ },
+ {
+ "id": "3158",
+ "name": "Bill Teach"
+ },
+ {
+ "id": "3159",
+ "name": "Bill Teach"
+ },
+ {
+ "id": "3160",
+ "name": "Bill Teach"
+ },
+ {
+ "id": "3161",
+ "name": "Charley"
+ },
+ {
+ "id": "3162",
+ "name": "Smith"
+ },
+ {
+ "id": "3163",
+ "name": "Joe"
+ },
+ {
+ "id": "3164",
+ "name": "Mama"
+ },
+ {
+ "id": "3165",
+ "name": "Mama"
+ },
+ {
+ "id": "3197",
+ "name": "Gull"
+ },
+ {
+ "id": "3205",
+ "name": "Romily Weaklax"
+ },
+ {
+ "id": "3206",
+ "name": "Priest"
+ },
+ {
+ "id": "3207",
+ "name": "Pious Pete"
+ },
+ {
+ "id": "3208",
+ "name": "Taper"
+ },
+ {
+ "id": "3210",
+ "name": "Alrena"
+ },
+ {
+ "id": "3211",
+ "name": "Alrena"
+ },
+ {
+ "id": "3212",
+ "name": "Bravek"
+ },
+ {
+ "id": "3218",
+ "name": "Tina"
+ },
+ {
+ "id": "3254",
+ "name": "Hunding"
+ },
+ {
+ "id": "3281",
+ "name": "Engineering assistant"
+ },
+ {
+ "id": "3284",
+ "name": "Squirrel"
+ },
+ {
+ "id": "3285",
+ "name": "Squirrel"
+ },
+ {
+ "id": "3287",
+ "name": "Raccoon"
+ },
+ {
+ "id": "3289",
+ "name": "Skeleton"
+ },
+ {
+ "id": "3292",
+ "name": "Witch"
+ },
+ {
+ "id": "3300",
+ "name": "Frog"
+ },
+ {
+ "id": "3301",
+ "name": "Storm cloud"
+ },
+ {
+ "id": "3303",
+ "name": "Fairy Nuff"
+ },
+ {
+ "id": "3305",
+ "name": "Slim Louie"
+ },
+ {
+ "id": "3306",
+ "name": "Fat Rocco"
+ },
+ {
+ "id": "3308",
+ "name": "Zandar Horfyre"
+ },
+ {
+ "id": "3311",
+ "name": "Sheep"
+ },
+ {
+ "id": "3312",
+ "name": "Zanaris choir"
+ },
+ {
+ "id": "3314",
+ "name": "Baby tanglefoot"
+ },
+ {
+ "id": "3321",
+ "name": "Gatekeeper"
+ },
+ {
+ "id": "3323",
+ "name": "Draul Leptoc"
+ },
+ {
+ "id": "3326",
+ "name": "Martina Scorsby"
+ },
+ {
+ "id": "3328",
+ "name": "Tarquin"
+ },
+ {
+ "id": "3329",
+ "name": "Sigurd"
+ },
+ {
+ "id": "3330",
+ "name": "Hari"
+ },
+ {
+ "id": "3332",
+ "name": "Trees"
+ },
+ {
+ "id": "3333",
+ "name": "Trees"
+ },
+ {
+ "id": "3335",
+ "name": "Bullrush"
+ },
+ {
+ "id": "3336",
+ "name": "Bullrush"
+ },
+ {
+ "id": "3337",
+ "name": "Cave scenery"
+ },
+ {
+ "id": "3338",
+ "name": "Cave scenery"
+ },
+ {
+ "id": "3339",
+ "name": "Cave scenery"
+ },
+ {
+ "id": "3351",
+ "name": "Genie"
+ },
+ {
+ "id": "3352",
+ "name": "Mysterious Old Man"
+ },
+ {
+ "id": "3353",
+ "name": "Swarm"
+ },
+ {
+ "id": "3354",
+ "name": "Cap'n Hand"
+ },
+ {
+ "id": "3355",
+ "name": "Rick Turpentine"
+ },
+ {
+ "id": "3356",
+ "name": "Niles"
+ },
+ {
+ "id": "3357",
+ "name": "Miles"
+ },
+ {
+ "id": "3358",
+ "name": "Giles"
+ },
+ {
+ "id": "3359",
+ "name": "Dr Jekyll"
+ },
+ {
+ "id": "3360",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "3361",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "3362",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "3363",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "3364",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "3365",
+ "name": "Mr Hyde"
+ },
+ {
+ "id": "3372",
+ "name": "Sir Amik Varze"
+ },
+ {
+ "id": "3373",
+ "name": "Sir Amik Varze"
+ },
+ {
+ "id": "3377",
+ "name": "K'klik"
+ },
+ {
+ "id": "3379",
+ "name": "Evil Dave"
+ },
+ {
+ "id": "3381",
+ "name": "Doris"
+ },
+ {
+ "id": "3383",
+ "name": "Gypsy"
+ },
+ {
+ "id": "3386",
+ "name": "Gypsy"
+ },
+ {
+ "id": "3387",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3388",
+ "name": "Osman"
+ },
+ {
+ "id": "3395",
+ "name": "Sir Amik Varze"
+ },
+ {
+ "id": "3396",
+ "name": "Awowogei"
+ },
+ {
+ "id": "3397",
+ "name": "Awowogei"
+ },
+ {
+ "id": "3398",
+ "name": "Skrach Uglogwee"
+ },
+ {
+ "id": "3399",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3401",
+ "name": "An old Dwarf"
+ },
+ {
+ "id": "3403",
+ "name": "Rohak"
+ },
+ {
+ "id": "3417",
+ "name": "Pirate Pete"
+ },
+ {
+ "id": "3428",
+ "name": "Fish"
+ },
+ {
+ "id": "3429",
+ "name": "Fish"
+ },
+ {
+ "id": "3430",
+ "name": "Fish"
+ },
+ {
+ "id": "3440",
+ "name": "Fish"
+ },
+ {
+ "id": "3441",
+ "name": "Fish"
+ },
+ {
+ "id": "3442",
+ "name": "Fish"
+ },
+ {
+ "id": "3446",
+ "name": "Fish"
+ },
+ {
+ "id": "3447",
+ "name": "Fish"
+ },
+ {
+ "id": "3448",
+ "name": "Fish"
+ },
+ {
+ "id": "3452",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3453",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3454",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3455",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3456",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3457",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3458",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3459",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3460",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3461",
+ "name": "? ? ? ?"
+ },
+ {
+ "id": "3462",
+ "name": "Skrach Uglogwee"
+ },
+ {
+ "id": "3464",
+ "name": "Skrach Uglogwee"
+ },
+ {
+ "id": "3465",
+ "name": "Nung"
+ },
+ {
+ "id": "3466",
+ "name": "Ogre"
+ },
+ {
+ "id": "3467",
+ "name": "Rantz"
+ },
+ {
+ "id": "3468",
+ "name": "Rantz"
+ },
+ {
+ "id": "3469",
+ "name": "Ogre boat"
+ },
+ {
+ "id": "3472",
+ "name": "Ogre boat"
+ },
+ {
+ "id": "3473",
+ "name": "Balloon Toad"
+ },
+ {
+ "id": "3474",
+ "name": "Balloon Toad"
+ },
+ {
+ "id": "3475",
+ "name": "Balloon Toad"
+ },
+ {
+ "id": "3477",
+ "name": "Jubbly bird"
+ },
+ {
+ "id": "3479",
+ "name": "King Awowogei"
+ },
+ {
+ "id": "3481",
+ "name": "Mizaru"
+ },
+ {
+ "id": "3482",
+ "name": "Kikazaru"
+ },
+ {
+ "id": "3483",
+ "name": "Iwazaru"
+ },
+ {
+ "id": "3485",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3486",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3487",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3488",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3489",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3490",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3492",
+ "name": "Culinaromancer"
+ },
+ {
+ "id": "3503",
+ "name": "Overgrown hellcat"
+ },
+ {
+ "id": "3504",
+ "name": "Hellcat"
+ },
+ {
+ "id": "3505",
+ "name": "Hell-kitten"
+ },
+ {
+ "id": "3506",
+ "name": "Lazy hellcat"
+ },
+ {
+ "id": "3507",
+ "name": "Wily hellcat"
+ },
+ {
+ "id": "3508",
+ "name": "Leo"
+ },
+ {
+ "id": "3510",
+ "name": "Wiskit"
+ },
+ {
+ "id": "3512",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3515",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3516",
+ "name": "Gadderanks"
+ },
+ {
+ "id": "3518",
+ "name": "Gadderanks"
+ },
+ {
+ "id": "3519",
+ "name": "Gadderanks"
+ },
+ {
+ "id": "3520",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3528",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3529",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3530",
+ "name": "Mist"
+ },
+ {
+ "id": "3535",
+ "name": "Ivan Strom"
+ },
+ {
+ "id": "3536",
+ "name": "Ivan Strom"
+ },
+ {
+ "id": "3537",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3538",
+ "name": "Vampyre Juvinate"
+ },
+ {
+ "id": "3539",
+ "name": "Veliaf Hurtz"
+ },
+ {
+ "id": "3540",
+ "name": "Elisabeta"
+ },
+ {
+ "id": "3541",
+ "name": "Aurel"
+ },
+ {
+ "id": "3542",
+ "name": "Sorin"
+ },
+ {
+ "id": "3543",
+ "name": "Luscion"
+ },
+ {
+ "id": "3544",
+ "name": "Sergiu"
+ },
+ {
+ "id": "3545",
+ "name": "Radu"
+ },
+ {
+ "id": "3546",
+ "name": "Grigore"
+ },
+ {
+ "id": "3547",
+ "name": "Ileana"
+ },
+ {
+ "id": "3548",
+ "name": "Valeria"
+ },
+ {
+ "id": "3549",
+ "name": "Emilia"
+ },
+ {
+ "id": "3550",
+ "name": "Florin"
+ },
+ {
+ "id": "3551",
+ "name": "Catalina"
+ },
+ {
+ "id": "3552",
+ "name": "Ivan"
+ },
+ {
+ "id": "3553",
+ "name": "Victor"
+ },
+ {
+ "id": "3554",
+ "name": "Helena"
+ },
+ {
+ "id": "3555",
+ "name": "Teodor"
+ },
+ {
+ "id": "3556",
+ "name": "Marius"
+ },
+ {
+ "id": "3557",
+ "name": "Gabriela"
+ },
+ {
+ "id": "3558",
+ "name": "Vladimir"
+ },
+ {
+ "id": "3559",
+ "name": "Calin"
+ },
+ {
+ "id": "3560",
+ "name": "Mihail"
+ },
+ {
+ "id": "3561",
+ "name": "Nicoleta"
+ },
+ {
+ "id": "3562",
+ "name": "Simona"
+ },
+ {
+ "id": "3563",
+ "name": "Vasile"
+ },
+ {
+ "id": "3564",
+ "name": "Razvan"
+ },
+ {
+ "id": "3565",
+ "name": "Luminata"
+ },
+ {
+ "id": "3566",
+ "name": "Cornelius"
+ },
+ {
+ "id": "3569",
+ "name": "Cornelius"
+ },
+ {
+ "id": "3570",
+ "name": "Benjamin"
+ },
+ {
+ "id": "3571",
+ "name": "Liam"
+ },
+ {
+ "id": "3572",
+ "name": "Miala"
+ },
+ {
+ "id": "3573",
+ "name": "Verak"
+ },
+ {
+ "id": "3574",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "3575",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "3576",
+ "name": "Juvinate"
+ },
+ {
+ "id": "3578",
+ "name": "Juvinate"
+ },
+ {
+ "id": "3580",
+ "name": "Tentacle"
+ },
+ {
+ "id": "3584",
+ "name": "Troll"
+ },
+ {
+ "id": "3592",
+ "name": "Tok-Xil"
+ },
+ {
+ "id": "3594",
+ "name": "Rocnar"
+ },
+ {
+ "id": "3595",
+ "name": "Toy Soldier"
+ },
+ {
+ "id": "3596",
+ "name": "Toy Doll"
+ },
+ {
+ "id": "3597",
+ "name": "Toy Mouse"
+ },
+ {
+ "id": "3598",
+ "name": "Clockwork cat"
+ },
+ {
+ "id": "3606",
+ "name": "Ghast"
+ },
+ {
+ "id": "3607",
+ "name": "Ghast"
+ },
+ {
+ "id": "3608",
+ "name": "Ghast"
+ },
+ {
+ "id": "3609",
+ "name": "Ghast"
+ },
+ {
+ "id": "3610",
+ "name": "Ghast"
+ },
+ {
+ "id": "3611",
+ "name": "Ghast"
+ },
+ {
+ "id": "3612",
+ "name": "Giant snail"
+ },
+ {
+ "id": "3613",
+ "name": "Giant snail"
+ },
+ {
+ "id": "3614",
+ "name": "Giant snail"
+ },
+ {
+ "id": "3615",
+ "name": "Riyl shadow"
+ },
+ {
+ "id": "3616",
+ "name": "Asyn shadow"
+ },
+ {
+ "id": "3617",
+ "name": "Shade"
+ },
+ {
+ "id": "3621",
+ "name": "Tentacle"
+ },
+ {
+ "id": "3623",
+ "name": "Smiddi Ryak"
+ },
+ {
+ "id": "3625",
+ "name": "Rolayne Twickit"
+ },
+ {
+ "id": "3627",
+ "name": "Jayene Kliyn"
+ },
+ {
+ "id": "3629",
+ "name": "Valantay Eppel"
+ },
+ {
+ "id": "3631",
+ "name": "Dalcian Fang"
+ },
+ {
+ "id": "3633",
+ "name": "Fyiona Fray"
+ },
+ {
+ "id": "3635",
+ "name": "Abidor Crank"
+ },
+ {
+ "id": "3636",
+ "name": "Spirit tree"
+ },
+ {
+ "id": "3637",
+ "name": "Spirit tree"
+ },
+ {
+ "id": "3638",
+ "name": "Launa"
+ },
+ {
+ "id": "3640",
+ "name": "Launa"
+ },
+ {
+ "id": "3641",
+ "name": "Brana"
+ },
+ {
+ "id": "3642",
+ "name": "Mawnis Burowgar"
+ },
+ {
+ "id": "3643",
+ "name": "Tolna"
+ },
+ {
+ "id": "3644",
+ "name": "Tolna"
+ },
+ {
+ "id": "3651",
+ "name": "Confusion beast"
+ },
+ {
+ "id": "3652",
+ "name": "Confusion beast"
+ },
+ {
+ "id": "3653",
+ "name": "Confusion beast"
+ },
+ {
+ "id": "3654",
+ "name": "Confusion beast"
+ },
+ {
+ "id": "3656",
+ "name": "Hopeless creature"
+ },
+ {
+ "id": "3657",
+ "name": "Hopeless creature"
+ },
+ {
+ "id": "3658",
+ "name": "Tolna"
+ },
+ {
+ "id": "3659",
+ "name": "Tolna"
+ },
+ {
+ "id": "3660",
+ "name": "Tolna"
+ },
+ {
+ "id": "3668",
+ "name": "Hopeless beast"
+ },
+ {
+ "id": "3669",
+ "name": "Hopeless beast"
+ },
+ {
+ "id": "3677",
+ "name": "Sinister Stranger"
+ },
+ {
+ "id": "3678",
+ "name": "Sinister Stranger"
+ },
+ {
+ "id": "3679",
+ "name": "Vestri"
+ },
+ {
+ "id": "3681",
+ "name": "Nigel"
+ },
+ {
+ "id": "3682",
+ "name": "Egg"
+ },
+ {
+ "id": "3683",
+ "name": "Egg"
+ },
+ {
+ "id": "3684",
+ "name": "Egg"
+ },
+ {
+ "id": "3685",
+ "name": "Egg"
+ },
+ {
+ "id": "3686",
+ "name": "Chocolate kebbit"
+ },
+ {
+ "id": "3687",
+ "name": "Chocolate kebbit"
+ },
+ {
+ "id": "3688",
+ "name": "Easter Bunny"
+ },
+ {
+ "id": "3689",
+ "name": "Egg"
+ },
+ {
+ "id": "3690",
+ "name": "Egg"
+ },
+ {
+ "id": "3691",
+ "name": "Egg"
+ },
+ {
+ "id": "3692",
+ "name": "Egg"
+ },
+ {
+ "id": "3693",
+ "name": "Egg"
+ },
+ {
+ "id": "3694",
+ "name": "Egg"
+ },
+ {
+ "id": "3695",
+ "name": "Volf Olafson"
+ },
+ {
+ "id": "3696",
+ "name": "Ingrid Hradson"
+ },
+ {
+ "id": "3708",
+ "name": "Boulder"
+ },
+ {
+ "id": "3710",
+ "name": "Ulfric"
+ },
+ {
+ "id": "3712",
+ "name": "Zanik"
+ },
+ {
+ "id": "3713",
+ "name": "Sigmund"
+ },
+ {
+ "id": "3714",
+ "name": "Zanik"
+ },
+ {
+ "id": "3716",
+ "name": "Sigmund"
+ },
+ {
+ "id": "3717",
+ "name": "Sigmund"
+ },
+ {
+ "id": "3718",
+ "name": "Sigmund"
+ },
+ {
+ "id": "3719",
+ "name": "Sigmund"
+ },
+ {
+ "id": "3720",
+ "name": "Sigmund"
+ },
+ {
+ "id": "3721",
+ "name": "Zanik"
+ },
+ {
+ "id": "3722",
+ "name": "Zanik"
+ },
+ {
+ "id": "3723",
+ "name": "General Bentnoze"
+ },
+ {
+ "id": "3724",
+ "name": "General Wartface"
+ },
+ {
+ "id": "3725",
+ "name": "Grubfoot"
+ },
+ {
+ "id": "3778",
+ "name": "Arthur"
+ },
+ {
+ "id": "3780",
+ "name": "Squire"
+ },
+ {
+ "id": "3787",
+ "name": "Sir Palomedes"
+ },
+ {
+ "id": "3789",
+ "name": "Void Knight"
+ },
+ {
+ "id": "3803",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "3817",
+ "name": "Lieutenant Schepbur"
+ },
+ {
+ "id": "3820",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "3825",
+ "name": "Devin Mendelberg"
+ },
+ {
+ "id": "3826",
+ "name": "George Laxmeister"
+ },
+ {
+ "id": "3827",
+ "name": "Ramara du Croissant"
+ },
+ {
+ "id": "3828",
+ "name": "Kathy Corkat"
+ },
+ {
+ "id": "3831",
+ "name": "Kathy Corkat"
+ },
+ {
+ "id": "3832",
+ "name": "Kalphite Queen"
+ },
+ {
+ "id": "3837",
+ "name": "Drunken Dwarf"
+ },
+ {
+ "id": "3838",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "3839",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "3841",
+ "name": "Sea troll"
+ },
+ {
+ "id": "3842",
+ "name": "Sea troll"
+ },
+ {
+ "id": "3844",
+ "name": "Skeleton Mage"
+ },
+ {
+ "id": "3845",
+ "name": "Sea troll"
+ },
+ {
+ "id": "3846",
+ "name": "Sea Troll General"
+ },
+ {
+ "id": "3848",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "3850",
+ "name": "Skeleton Mage"
+ },
+ {
+ "id": "3852",
+ "name": "Suspect"
+ },
+ {
+ "id": "3853",
+ "name": "Suspect"
+ },
+ {
+ "id": "3854",
+ "name": "Suspect"
+ },
+ {
+ "id": "3855",
+ "name": "Suspect"
+ },
+ {
+ "id": "3856",
+ "name": "Suspect"
+ },
+ {
+ "id": "3857",
+ "name": "Suspect"
+ },
+ {
+ "id": "3858",
+ "name": "Suspect"
+ },
+ {
+ "id": "3859",
+ "name": "Suspect"
+ },
+ {
+ "id": "3860",
+ "name": "Suspect"
+ },
+ {
+ "id": "3861",
+ "name": "Suspect"
+ },
+ {
+ "id": "3862",
+ "name": "Suspect"
+ },
+ {
+ "id": "3863",
+ "name": "Suspect"
+ },
+ {
+ "id": "3864",
+ "name": "Suspect"
+ },
+ {
+ "id": "3865",
+ "name": "Suspect"
+ },
+ {
+ "id": "3866",
+ "name": "Suspect"
+ },
+ {
+ "id": "3867",
+ "name": "Suspect"
+ },
+ {
+ "id": "3868",
+ "name": "Suspect"
+ },
+ {
+ "id": "3869",
+ "name": "Suspect"
+ },
+ {
+ "id": "3870",
+ "name": "Suspect"
+ },
+ {
+ "id": "3871",
+ "name": "Suspect"
+ },
+ {
+ "id": "3872",
+ "name": "Suspect"
+ },
+ {
+ "id": "3873",
+ "name": "Suspect"
+ },
+ {
+ "id": "3874",
+ "name": "Suspect"
+ },
+ {
+ "id": "3875",
+ "name": "Suspect"
+ },
+ {
+ "id": "3876",
+ "name": "Suspect"
+ },
+ {
+ "id": "3877",
+ "name": "Suspect"
+ },
+ {
+ "id": "3878",
+ "name": "Suspect"
+ },
+ {
+ "id": "3879",
+ "name": "Suspect"
+ },
+ {
+ "id": "3880",
+ "name": "Suspect"
+ },
+ {
+ "id": "3881",
+ "name": "Suspect"
+ },
+ {
+ "id": "3882",
+ "name": "Suspect"
+ },
+ {
+ "id": "3883",
+ "name": "Suspect"
+ },
+ {
+ "id": "3884",
+ "name": "Suspect"
+ },
+ {
+ "id": "3885",
+ "name": "Suspect"
+ },
+ {
+ "id": "3886",
+ "name": "Suspect"
+ },
+ {
+ "id": "3887",
+ "name": "Suspect"
+ },
+ {
+ "id": "3888",
+ "name": "Suspect"
+ },
+ {
+ "id": "3889",
+ "name": "Suspect"
+ },
+ {
+ "id": "3890",
+ "name": "Suspect"
+ },
+ {
+ "id": "3891",
+ "name": "Suspect"
+ },
+ {
+ "id": "3892",
+ "name": "Molly"
+ },
+ {
+ "id": "3893",
+ "name": "Molly"
+ },
+ {
+ "id": "3894",
+ "name": "Molly"
+ },
+ {
+ "id": "3895",
+ "name": "Molly"
+ },
+ {
+ "id": "3896",
+ "name": "Molly"
+ },
+ {
+ "id": "3897",
+ "name": "Molly"
+ },
+ {
+ "id": "3898",
+ "name": "Molly"
+ },
+ {
+ "id": "3899",
+ "name": "Molly"
+ },
+ {
+ "id": "3900",
+ "name": "Molly"
+ },
+ {
+ "id": "3901",
+ "name": "Molly"
+ },
+ {
+ "id": "3902",
+ "name": "Molly"
+ },
+ {
+ "id": "3903",
+ "name": "Molly"
+ },
+ {
+ "id": "3904",
+ "name": "Molly"
+ },
+ {
+ "id": "3905",
+ "name": "Molly"
+ },
+ {
+ "id": "3906",
+ "name": "Molly"
+ },
+ {
+ "id": "3907",
+ "name": "Molly"
+ },
+ {
+ "id": "3908",
+ "name": "Molly"
+ },
+ {
+ "id": "3909",
+ "name": "Molly"
+ },
+ {
+ "id": "3910",
+ "name": "Molly"
+ },
+ {
+ "id": "3911",
+ "name": "Molly"
+ },
+ {
+ "id": "3912",
+ "name": "Flippa"
+ },
+ {
+ "id": "3913",
+ "name": "Tilt"
+ },
+ {
+ "id": "3914",
+ "name": "Gardener"
+ },
+ {
+ "id": "3918",
+ "name": "Prince Brand"
+ },
+ {
+ "id": "3919",
+ "name": "Princess Astrid"
+ },
+ {
+ "id": "3920",
+ "name": "Runa"
+ },
+ {
+ "id": "3923",
+ "name": "Osvald"
+ },
+ {
+ "id": "3924",
+ "name": "Runolf"
+ },
+ {
+ "id": "3926",
+ "name": "Ingrid"
+ },
+ {
+ "id": "3928",
+ "name": "Signy"
+ },
+ {
+ "id": "3929",
+ "name": "Hild"
+ },
+ {
+ "id": "3930",
+ "name": "Armod"
+ },
+ {
+ "id": "3931",
+ "name": "Beigarth"
+ },
+ {
+ "id": "3932",
+ "name": "Reinn"
+ },
+ {
+ "id": "3936",
+ "name": "Thorodin"
+ },
+ {
+ "id": "3944",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3945",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3946",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3947",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3948",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3949",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3950",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3951",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3952",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3953",
+ "name": "Hangman game"
+ },
+ {
+ "id": "3954",
+ "name": "Treasure fairy"
+ },
+ {
+ "id": "3955",
+ "name": "Jacky Jester"
+ },
+ {
+ "id": "3956",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3957",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3958",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3959",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3960",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3961",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3962",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3963",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3964",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3965",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3966",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3967",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3968",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3969",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3970",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3971",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3972",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3973",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3974",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3975",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3976",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3977",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3978",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3979",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3980",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3981",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3982",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3983",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3984",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3985",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3986",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3987",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3988",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3989",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3990",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3991",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3992",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3993",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3994",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3995",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3996",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3997",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3998",
+ "name": "Combat stone"
+ },
+ {
+ "id": "3999",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4000",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4001",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4002",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4003",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4004",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4005",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4006",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4007",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4008",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4009",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4010",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4011",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4012",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4013",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4014",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4015",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4016",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4017",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4018",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4019",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4020",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4021",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4022",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4023",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4024",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4025",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4026",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4027",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4028",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4029",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4030",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4031",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4032",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4033",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4034",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4035",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4036",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4037",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4038",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4039",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4040",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4041",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4042",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4043",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4044",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4045",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4046",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4047",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4048",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4049",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4050",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4051",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4052",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4053",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4054",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4055",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4056",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4057",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4058",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4059",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4060",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4061",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4062",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4063",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4064",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4065",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4066",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4067",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4068",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4069",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4070",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4071",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4072",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4073",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4074",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4075",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4076",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4077",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4078",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4079",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4080",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4081",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4082",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4083",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4084",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4085",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4086",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4087",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4088",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4089",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4090",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4091",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4092",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4093",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4094",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4095",
+ "name": "Elemental balance"
+ },
+ {
+ "id": "4096",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4097",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4098",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4099",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4100",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4101",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4102",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4103",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4104",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4105",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4106",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4107",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4108",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4109",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4110",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4111",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4112",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4113",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4114",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4115",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4116",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4117",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4118",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4119",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4120",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4121",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4122",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4123",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4124",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4125",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4126",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4127",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4128",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4129",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4130",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4131",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4132",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4133",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4134",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4135",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4136",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4137",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4138",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4139",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4140",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4141",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4142",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4143",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4144",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4145",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4146",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4147",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4148",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4149",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4150",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4151",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4152",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4153",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4154",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4155",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4156",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4157",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4158",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4159",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4160",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4161",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4162",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4163",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4164",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4165",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4166",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4167",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4168",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4169",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4170",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4171",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4172",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4173",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4174",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4175",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4176",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4177",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4178",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4179",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4180",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4181",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4182",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4183",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4184",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4185",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4186",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4187",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4188",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4189",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4190",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4191",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4192",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4193",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4194",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4195",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4196",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4197",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4198",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4199",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4200",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4201",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4202",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4203",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4204",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4205",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4206",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4207",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4208",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4209",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4210",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4211",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4212",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4213",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4214",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4215",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4216",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4217",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4218",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4219",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4220",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4221",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4222",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4223",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4224",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4225",
+ "name": "Combat stone"
+ },
+ {
+ "id": "4226",
+ "name": "Crawling hand"
+ },
+ {
+ "id": "4231",
+ "name": "Left head"
+ },
+ {
+ "id": "4232",
+ "name": "Middle head"
+ },
+ {
+ "id": "4233",
+ "name": "Right head"
+ },
+ {
+ "id": "4234",
+ "name": "Kalphite Queen"
+ },
+ {
+ "id": "4235",
+ "name": "Rick"
+ },
+ {
+ "id": "4236",
+ "name": "Maid"
+ },
+ {
+ "id": "4238",
+ "name": "Cook"
+ },
+ {
+ "id": "4240",
+ "name": "Butler"
+ },
+ {
+ "id": "4242",
+ "name": "Demon butler"
+ },
+ {
+ "id": "4244",
+ "name": "Chief servant"
+ },
+ {
+ "id": "4253",
+ "name": "Guard"
+ },
+ {
+ "id": "4277",
+ "name": "Buinn"
+ },
+ {
+ "id": "4312",
+ "name": "Nardok"
+ },
+ {
+ "id": "4313",
+ "name": "Dartog"
+ },
+ {
+ "id": "4315",
+ "name": "Dwarf"
+ },
+ {
+ "id": "4317",
+ "name": "H.A.M. Member"
+ },
+ {
+ "id": "4319",
+ "name": "H.A.M. Member"
+ },
+ {
+ "id": "4321",
+ "name": "Zanik"
+ },
+ {
+ "id": "4323",
+ "name": "Zanik"
+ },
+ {
+ "id": "4324",
+ "name": "Zanik"
+ },
+ {
+ "id": "4325",
+ "name": "Light creature"
+ },
+ {
+ "id": "4326",
+ "name": "Zanik"
+ },
+ {
+ "id": "4327",
+ "name": "HAM member"
+ },
+ {
+ "id": "4328",
+ "name": "Sigmund"
+ },
+ {
+ "id": "4330",
+ "name": "Johanhus Ulsbrecht"
+ },
+ {
+ "id": "4331",
+ "name": "Sigmund"
+ },
+ {
+ "id": "4332",
+ "name": "Sigmund"
+ },
+ {
+ "id": "4333",
+ "name": "Sigmund"
+ },
+ {
+ "id": "4334",
+ "name": "Sigmund"
+ },
+ {
+ "id": "4335",
+ "name": "Sigmund"
+ },
+ {
+ "id": "4337",
+ "name": "Zanik"
+ },
+ {
+ "id": "4338",
+ "name": "Zanik"
+ },
+ {
+ "id": "4340",
+ "name": "Zanik"
+ },
+ {
+ "id": "4341",
+ "name": "Zanik"
+ },
+ {
+ "id": "4342",
+ "name": "Zanik"
+ },
+ {
+ "id": "4346",
+ "name": "Crab"
+ },
+ {
+ "id": "4358",
+ "name": "Cavey Davey"
+ },
+ {
+ "id": "4360",
+ "name": "San Fan"
+ },
+ {
+ "id": "4364",
+ "name": "Swarm"
+ },
+ {
+ "id": "4365",
+ "name": "Blue Monkey"
+ },
+ {
+ "id": "4374",
+ "name": "Parrot"
+ },
+ {
+ "id": "4377",
+ "name": "Gate of War"
+ },
+ {
+ "id": "4378",
+ "name": "Ricketty door"
+ },
+ {
+ "id": "4379",
+ "name": "Oozing barrier"
+ },
+ {
+ "id": "4380",
+ "name": "Portal of Death"
+ },
+ {
+ "id": "4416",
+ "name": "Bee keeper"
+ },
+ {
+ "id": "4417",
+ "name": "Bees!"
+ },
+ {
+ "id": "4420",
+ "name": "Fairy Godfather"
+ },
+ {
+ "id": "4435",
+ "name": "Fairy Queen"
+ },
+ {
+ "id": "4442",
+ "name": "Fairy Very Wise"
+ },
+ {
+ "id": "4444",
+ "name": "Fairy"
+ },
+ {
+ "id": "4445",
+ "name": "Fairy"
+ },
+ {
+ "id": "4446",
+ "name": "Fairy"
+ },
+ {
+ "id": "4447",
+ "name": "Rabbit"
+ },
+ {
+ "id": "4448",
+ "name": "Rabbit"
+ },
+ {
+ "id": "4449",
+ "name": "Butterfly"
+ },
+ {
+ "id": "4450",
+ "name": "Butterfly"
+ },
+ {
+ "id": "4451",
+ "name": "Starflower"
+ },
+ {
+ "id": "4452",
+ "name": "Starflower"
+ },
+ {
+ "id": "4453",
+ "name": "Fairy Fixit"
+ },
+ {
+ "id": "4456",
+ "name": "Ork"
+ },
+ {
+ "id": "4460",
+ "name": "Fake Man"
+ },
+ {
+ "id": "4461",
+ "name": "Held vampyre juvinate"
+ },
+ {
+ "id": "4462",
+ "name": "Held vampyre juvinate"
+ },
+ {
+ "id": "4463",
+ "name": "Angry juvinate"
+ },
+ {
+ "id": "4464",
+ "name": "Angry juvinate"
+ },
+ {
+ "id": "4465",
+ "name": "Angry juvinate"
+ },
+ {
+ "id": "4466",
+ "name": "Benjamin"
+ },
+ {
+ "id": "4467",
+ "name": "Liam"
+ },
+ {
+ "id": "4468",
+ "name": "Miala"
+ },
+ {
+ "id": "4469",
+ "name": "Verak"
+ },
+ {
+ "id": "4471",
+ "name": "Bogrog"
+ },
+ {
+ "id": "4473",
+ "name": "Woman"
+ },
+ {
+ "id": "4475",
+ "name": "Ned"
+ },
+ {
+ "id": "4477",
+ "name": "Annoyed guardian mummy"
+ },
+ {
+ "id": "4478",
+ "name": "Tarik"
+ },
+ {
+ "id": "4493",
+ "name": "General Bentnoze"
+ },
+ {
+ "id": "4495",
+ "name": "Grubfoot"
+ },
+ {
+ "id": "4497",
+ "name": "Grubfoot"
+ },
+ {
+ "id": "4498",
+ "name": "Grubfoot"
+ },
+ {
+ "id": "4500",
+ "name": "Scarab swarm"
+ },
+ {
+ "id": "4508",
+ "name": "Ethereal Mimic"
+ },
+ {
+ "id": "4513",
+ "name": "Baba Yaga"
+ },
+ {
+ "id": "4514",
+ "name": "Pauline Polaris"
+ },
+ {
+ "id": "4515",
+ "name": "Meteora"
+ },
+ {
+ "id": "4516",
+ "name": "Melana Moonlander"
+ },
+ {
+ "id": "4517",
+ "name": "Selene"
+ },
+ {
+ "id": "4518",
+ "name": "Rimae Sirsalis"
+ },
+ {
+ "id": "4519",
+ "name": "Sirsal Banker"
+ },
+ {
+ "id": "4520",
+ "name": "Clan Guard"
+ },
+ {
+ "id": "4522",
+ "name": "Enchanted Broom"
+ },
+ {
+ "id": "4523",
+ "name": "Enchanted Broom"
+ },
+ {
+ "id": "4525",
+ "name": "Enchanted Bucket"
+ },
+ {
+ "id": "4526",
+ "name": "Bouquet Mac Hyacinth"
+ },
+ {
+ "id": "4535",
+ "name": "Parrot"
+ },
+ {
+ "id": "4536",
+ "name": "Lokar Searunner"
+ },
+ {
+ "id": "4538",
+ "name": "Cabin boy"
+ },
+ {
+ "id": "4544",
+ "name": "'Bird's-Eye' Jack"
+ },
+ {
+ "id": "4552",
+ "name": "Palmer"
+ },
+ {
+ "id": "4553",
+ "name": "'Betty' B.Boppin"
+ },
+ {
+ "id": "4558",
+ "name": "Hirko"
+ },
+ {
+ "id": "4559",
+ "name": "Holoy"
+ },
+ {
+ "id": "4563",
+ "name": "Hura"
+ },
+ {
+ "id": "4569",
+ "name": "Nick"
+ },
+ {
+ "id": "4570",
+ "name": "Crow"
+ },
+ {
+ "id": "4571",
+ "name": "Crow"
+ },
+ {
+ "id": "4572",
+ "name": "Gianne jnr."
+ },
+ {
+ "id": "4573",
+ "name": "Timble"
+ },
+ {
+ "id": "4574",
+ "name": "Tamble"
+ },
+ {
+ "id": "4575",
+ "name": "Spang"
+ },
+ {
+ "id": "4576",
+ "name": "Brambickle"
+ },
+ {
+ "id": "4577",
+ "name": "Wingstone"
+ },
+ {
+ "id": "4578",
+ "name": "Penwie"
+ },
+ {
+ "id": "4583",
+ "name": "Professor Manglethorp"
+ },
+ {
+ "id": "4584",
+ "name": "Damwin"
+ },
+ {
+ "id": "4586",
+ "name": "Professor Imblewyn"
+ },
+ {
+ "id": "4587",
+ "name": "Perrdur"
+ },
+ {
+ "id": "4588",
+ "name": "Dalila"
+ },
+ {
+ "id": "4591",
+ "name": "Eebel"
+ },
+ {
+ "id": "4592",
+ "name": "Ermin"
+ },
+ {
+ "id": "4596",
+ "name": "Captain Lamdoo"
+ },
+ {
+ "id": "4597",
+ "name": "Meegle"
+ },
+ {
+ "id": "4598",
+ "name": "Wurbel"
+ },
+ {
+ "id": "4599",
+ "name": "Sarble"
+ },
+ {
+ "id": "4601",
+ "name": "Burkor"
+ },
+ {
+ "id": "4602",
+ "name": "Froono"
+ },
+ {
+ "id": "4609",
+ "name": "Brimstail"
+ },
+ {
+ "id": "4612",
+ "name": "Gnome shop keeper"
+ },
+ {
+ "id": "4613",
+ "name": "Cute creature"
+ },
+ {
+ "id": "4616",
+ "name": "Cute creature"
+ },
+ {
+ "id": "4618",
+ "name": "Evil creature"
+ },
+ {
+ "id": "4619",
+ "name": "Cute creature"
+ },
+ {
+ "id": "4621",
+ "name": "Evil creature"
+ },
+ {
+ "id": "4622",
+ "name": "Cute creature"
+ },
+ {
+ "id": "4624",
+ "name": "Evil creature"
+ },
+ {
+ "id": "4625",
+ "name": "Cute creature"
+ },
+ {
+ "id": "4627",
+ "name": "Evil creature"
+ },
+ {
+ "id": "4628",
+ "name": "Cute creature"
+ },
+ {
+ "id": "4630",
+ "name": "Evil creature"
+ },
+ {
+ "id": "4631",
+ "name": "fluffie"
+ },
+ {
+ "id": "4632",
+ "name": "fluffie"
+ },
+ {
+ "id": "4644",
+ "name": "Oaknock the Engineer"
+ },
+ {
+ "id": "4646",
+ "name": "King Healthorg"
+ },
+ {
+ "id": "4647",
+ "name": "Hazelmere"
+ },
+ {
+ "id": "4648",
+ "name": "Nisha"
+ },
+ {
+ "id": "4649",
+ "name": "Tyras guard"
+ },
+ {
+ "id": "4657",
+ "name": "Sir Prysin"
+ },
+ {
+ "id": "4658",
+ "name": "Dark wizard"
+ },
+ {
+ "id": "4662",
+ "name": "Denath"
+ },
+ {
+ "id": "4663",
+ "name": "Denath"
+ },
+ {
+ "id": "4664",
+ "name": "Wally"
+ },
+ {
+ "id": "4709",
+ "name": "Vertida Sefalatis"
+ },
+ {
+ "id": "4710",
+ "name": "Aeonisig Raispher"
+ },
+ {
+ "id": "4711",
+ "name": "Safalaan"
+ },
+ {
+ "id": "4714",
+ "name": "Sarius Guile"
+ },
+ {
+ "id": "4727",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4728",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4729",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4730",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4731",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4732",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4742",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4743",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4744",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4745",
+ "name": "Meiyerditch citizen"
+ },
+ {
+ "id": "4758",
+ "name": "Meiyerditch miner"
+ },
+ {
+ "id": "4760",
+ "name": "Meiyerditch miner"
+ },
+ {
+ "id": "4761",
+ "name": "Meiyerditch miner"
+ },
+ {
+ "id": "4762",
+ "name": "Shadowy figure"
+ },
+ {
+ "id": "4763",
+ "name": "Shadowy figure"
+ },
+ {
+ "id": "4764",
+ "name": "Shadowy figure"
+ },
+ {
+ "id": "4767",
+ "name": "Stray dog"
+ },
+ {
+ "id": "4769",
+ "name": "Cat"
+ },
+ {
+ "id": "4770",
+ "name": "Boat"
+ },
+ {
+ "id": "4771",
+ "name": "Boat"
+ },
+ {
+ "id": "4781",
+ "name": "Held vampyre juvinate"
+ },
+ {
+ "id": "4782",
+ "name": "Vampyre juvinate"
+ },
+ {
+ "id": "4783",
+ "name": "Former vampyre"
+ },
+ {
+ "id": "4784",
+ "name": "Former vampyre"
+ },
+ {
+ "id": "4785",
+ "name": "Former vampyre"
+ },
+ {
+ "id": "4786",
+ "name": "Former vampyre"
+ },
+ {
+ "id": "4787",
+ "name": "Former vampyre"
+ },
+ {
+ "id": "4788",
+ "name": "Former vampyre"
+ },
+ {
+ "id": "4790",
+ "name": "Angry vampyre"
+ },
+ {
+ "id": "4791",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "4792",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "4794",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "4795",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "4797",
+ "name": "Vanescula Drakan"
+ },
+ {
+ "id": "4798",
+ "name": "Vanescula Drakan"
+ },
+ {
+ "id": "4799",
+ "name": "Vanescula Drakan"
+ },
+ {
+ "id": "4800",
+ "name": "Vanescula Drakan"
+ },
+ {
+ "id": "4801",
+ "name": "Ranis Drakan"
+ },
+ {
+ "id": "4802",
+ "name": "Ranis Drakan"
+ },
+ {
+ "id": "4803",
+ "name": "Ranis Drakan"
+ },
+ {
+ "id": "4804",
+ "name": "Ranis Drakan"
+ },
+ {
+ "id": "4809",
+ "name": "Flying female vampire"
+ },
+ {
+ "id": "4846",
+ "name": "Flying female vampire"
+ },
+ {
+ "id": "4853",
+ "name": "Ezekial Lovecraft"
+ },
+ {
+ "id": "4857",
+ "name": "Sarius Guile"
+ },
+ {
+ "id": "4862",
+ "name": "Vanstrom Klause"
+ },
+ {
+ "id": "4863",
+ "name": "Kennith"
+ },
+ {
+ "id": "4864",
+ "name": "Kennith"
+ },
+ {
+ "id": "4865",
+ "name": "Holgart"
+ },
+ {
+ "id": "4867",
+ "name": "Holgart"
+ },
+ {
+ "id": "4869",
+ "name": "Fisherman"
+ },
+ {
+ "id": "4871",
+ "name": "Col. O'Niall"
+ },
+ {
+ "id": "4873",
+ "name": "Col. O'Niall"
+ },
+ {
+ "id": "4875",
+ "name": "Mayor Hobb"
+ },
+ {
+ "id": "4876",
+ "name": "Brother Maledict"
+ },
+ {
+ "id": "4879",
+ "name": "Brother Maledict"
+ },
+ {
+ "id": "4880",
+ "name": "Witchaven villager"
+ },
+ {
+ "id": "4884",
+ "name": "Witchaven villager"
+ },
+ {
+ "id": "4886",
+ "name": "Witchaven villager"
+ },
+ {
+ "id": "4888",
+ "name": "Witchaven villager"
+ },
+ {
+ "id": "4889",
+ "name": "Mother Mallum"
+ },
+ {
+ "id": "4891",
+ "name": "Giant lobster"
+ },
+ {
+ "id": "4896",
+ "name": "Jeb"
+ },
+ {
+ "id": "4897",
+ "name": "Sir Tinley"
+ },
+ {
+ "id": "4905",
+ "name": "Smithing Tutor"
+ },
+ {
+ "id": "4908",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "4912",
+ "name": "Jig cart"
+ },
+ {
+ "id": "4914",
+ "name": "Jig cart"
+ },
+ {
+ "id": "4915",
+ "name": "Jig cart"
+ },
+ {
+ "id": "4916",
+ "name": "Jig cart"
+ },
+ {
+ "id": "4917",
+ "name": "Jig cart"
+ },
+ {
+ "id": "4918",
+ "name": "Jig cart"
+ },
+ {
+ "id": "4919",
+ "name": "Abidor Crank"
+ },
+ {
+ "id": "4946",
+ "name": "Ignatius Vulcan"
+ },
+ {
+ "id": "4948",
+ "name": "My Arm"
+ },
+ {
+ "id": "4949",
+ "name": "My Arm"
+ },
+ {
+ "id": "4950",
+ "name": "My Arm"
+ },
+ {
+ "id": "4958",
+ "name": "My Arm"
+ },
+ {
+ "id": "4959",
+ "name": "My Arm"
+ },
+ {
+ "id": "4960",
+ "name": "Adventurer"
+ },
+ {
+ "id": "4961",
+ "name": "Captain Barnaby"
+ },
+ {
+ "id": "4963",
+ "name": "Murcaily"
+ },
+ {
+ "id": "4964",
+ "name": "Jagbakoba"
+ },
+ {
+ "id": "4966",
+ "name": "Flies"
+ },
+ {
+ "id": "4968",
+ "name": "Unnamed troll child"
+ },
+ {
+ "id": "4969",
+ "name": "Drunken dwarf's leg"
+ },
+ {
+ "id": "4970",
+ "name": "Baby Roc"
+ },
+ {
+ "id": "4973",
+ "name": "Shadow"
+ },
+ {
+ "id": "4974",
+ "name": "Captain Barnaby"
+ },
+ {
+ "id": "4976",
+ "name": "Male slave"
+ },
+ {
+ "id": "4978",
+ "name": "Female slave"
+ },
+ {
+ "id": "4979",
+ "name": "Cart Camel"
+ },
+ {
+ "id": "4980",
+ "name": "Mine Cart"
+ },
+ {
+ "id": "4981",
+ "name": "Mine Cart"
+ },
+ {
+ "id": "4982",
+ "name": "Ana"
+ },
+ {
+ "id": "4983",
+ "name": "Mercenary"
+ },
+ {
+ "id": "4984",
+ "name": "Irena"
+ },
+ {
+ "id": "5003",
+ "name": "Gublinch"
+ },
+ {
+ "id": "5018",
+ "name": "Gublinch"
+ },
+ {
+ "id": "5019",
+ "name": "Gublinch"
+ },
+ {
+ "id": "5020",
+ "name": "Jack"
+ },
+ {
+ "id": "5024",
+ "name": "Jill"
+ },
+ {
+ "id": "5025",
+ "name": "Jeff"
+ },
+ {
+ "id": "5044",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5045",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5046",
+ "name": "Jack"
+ },
+ {
+ "id": "5047",
+ "name": "Jill"
+ },
+ {
+ "id": "5049",
+ "name": "Auguste"
+ },
+ {
+ "id": "5050",
+ "name": "Auguste"
+ },
+ {
+ "id": "5051",
+ "name": "Auguste"
+ },
+ {
+ "id": "5052",
+ "name": "Auguste"
+ },
+ {
+ "id": "5053",
+ "name": "Assistant Serf"
+ },
+ {
+ "id": "5054",
+ "name": "Assistant Brock"
+ },
+ {
+ "id": "5055",
+ "name": "Assistant Marrow"
+ },
+ {
+ "id": "5056",
+ "name": "Assistant Le Smith"
+ },
+ {
+ "id": "5057",
+ "name": "Assistant Stan"
+ },
+ {
+ "id": "5058",
+ "name": "Bob"
+ },
+ {
+ "id": "5059",
+ "name": "Curly"
+ },
+ {
+ "id": "5060",
+ "name": "Moe"
+ },
+ {
+ "id": "5061",
+ "name": "Larry"
+ },
+ {
+ "id": "5062",
+ "name": "Shark"
+ },
+ {
+ "id": "5068",
+ "name": "Shark"
+ },
+ {
+ "id": "5069",
+ "name": "Shark"
+ },
+ {
+ "id": "5070",
+ "name": "Tropical wagtail"
+ },
+ {
+ "id": "5077",
+ "name": "Chinchompa"
+ },
+ {
+ "id": "5090",
+ "name": "Matthias"
+ },
+ {
+ "id": "5093",
+ "name": "Matthias"
+ },
+ {
+ "id": "5094",
+ "name": "Gyr Falcon"
+ },
+ {
+ "id": "5095",
+ "name": "Gyr Falcon"
+ },
+ {
+ "id": "5096",
+ "name": "Gyr Falcon"
+ },
+ {
+ "id": "5101",
+ "name": "Sabre-toothed kyatt"
+ },
+ {
+ "id": "5110",
+ "name": "Aleck"
+ },
+ {
+ "id": "5118",
+ "name": "Eagle"
+ },
+ {
+ "id": "5121",
+ "name": "Eagle"
+ },
+ {
+ "id": "5122",
+ "name": "Eagle"
+ },
+ {
+ "id": "5123",
+ "name": "Eagle"
+ },
+ {
+ "id": "5124",
+ "name": "Nickolaus"
+ },
+ {
+ "id": "5127",
+ "name": "Nickolaus"
+ },
+ {
+ "id": "5128",
+ "name": "Nickolaus"
+ },
+ {
+ "id": "5129",
+ "name": "Nickolaus"
+ },
+ {
+ "id": "5134",
+ "name": "Kebbit"
+ },
+ {
+ "id": "5138",
+ "name": "Charlie"
+ },
+ {
+ "id": "5139",
+ "name": "Boulder"
+ },
+ {
+ "id": "5141",
+ "name": "Uri"
+ },
+ {
+ "id": "5142",
+ "name": "Uri"
+ },
+ {
+ "id": "5143",
+ "name": "Uri"
+ },
+ {
+ "id": "5148",
+ "name": "Sheep"
+ },
+ {
+ "id": "5149",
+ "name": "Sheep"
+ },
+ {
+ "id": "5150",
+ "name": "Sheep"
+ },
+ {
+ "id": "5151",
+ "name": "Sheep"
+ },
+ {
+ "id": "5152",
+ "name": "Sheep"
+ },
+ {
+ "id": "5153",
+ "name": "Sheep"
+ },
+ {
+ "id": "5154",
+ "name": "Sheep"
+ },
+ {
+ "id": "5155",
+ "name": "Sheep"
+ },
+ {
+ "id": "5156",
+ "name": "Sheep"
+ },
+ {
+ "id": "5157",
+ "name": "Sheep"
+ },
+ {
+ "id": "5158",
+ "name": "Sheep"
+ },
+ {
+ "id": "5159",
+ "name": "Sheep"
+ },
+ {
+ "id": "5160",
+ "name": "Sheep"
+ },
+ {
+ "id": "5161",
+ "name": "Sheep"
+ },
+ {
+ "id": "5165",
+ "name": "Sheep"
+ },
+ {
+ "id": "5174",
+ "name": "Ogre chieftain"
+ },
+ {
+ "id": "5175",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5177",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5179",
+ "name": "Elkoy"
+ },
+ {
+ "id": "5180",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5182",
+ "name": "Elkoy"
+ },
+ {
+ "id": "5183",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5185",
+ "name": "Biggleswade"
+ },
+ {
+ "id": "5186",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5189",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5191",
+ "name": "Blaze Sharpeye"
+ },
+ {
+ "id": "5192",
+ "name": "Ogre shaman"
+ },
+ {
+ "id": "5194",
+ "name": "Blaze Sharpeye"
+ },
+ {
+ "id": "5199",
+ "name": "Witch"
+ },
+ {
+ "id": "5201",
+ "name": "Alice's husband"
+ },
+ {
+ "id": "5203",
+ "name": "Alice's husband"
+ },
+ {
+ "id": "5205",
+ "name": "Alice's husband"
+ },
+ {
+ "id": "5206",
+ "name": "Tree"
+ },
+ {
+ "id": "5208",
+ "name": "Undead tree"
+ },
+ {
+ "id": "5209",
+ "name": " Sneaky undead fowl"
+ },
+ {
+ "id": "5210",
+ "name": "Cow1337killr"
+ },
+ {
+ "id": "5212",
+ "name": "Alice"
+ },
+ {
+ "id": "5213",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5214",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5215",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5216",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5217",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5218",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5219",
+ "name": "Penance Fighter"
+ },
+ {
+ "id": "5220",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5221",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5222",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5223",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5224",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5225",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5226",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5227",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5228",
+ "name": "Penance Runner"
+ },
+ {
+ "id": "5230",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5231",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5232",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5233",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5234",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5235",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5236",
+ "name": "Penance Ranger"
+ },
+ {
+ "id": "5238",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5239",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5240",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5241",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5242",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5243",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5244",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5245",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5246",
+ "name": "Penance Healer"
+ },
+ {
+ "id": "5255",
+ "name": "Locust rider"
+ },
+ {
+ "id": "5256",
+ "name": "Locust rider"
+ },
+ {
+ "id": "5257",
+ "name": "Banker"
+ },
+ {
+ "id": "5259",
+ "name": "Banker"
+ },
+ {
+ "id": "5261",
+ "name": "Stonemason"
+ },
+ {
+ "id": "5263",
+ "name": "Nathifa"
+ },
+ {
+ "id": "5265",
+ "name": "Urbi"
+ },
+ {
+ "id": "5267",
+ "name": "Jamila"
+ },
+ {
+ "id": "5269",
+ "name": "Sophanem guard"
+ },
+ {
+ "id": "5271",
+ "name": "Sophanem guard"
+ },
+ {
+ "id": "5273",
+ "name": "Sophanem guard"
+ },
+ {
+ "id": "5275",
+ "name": "Sophanem guard"
+ },
+ {
+ "id": "5278",
+ "name": "Coenus"
+ },
+ {
+ "id": "5279",
+ "name": "Jex"
+ },
+ {
+ "id": "5280",
+ "name": "Maisa"
+ },
+ {
+ "id": "5282",
+ "name": "Osman"
+ },
+ {
+ "id": "5286",
+ "name": "Osman"
+ },
+ {
+ "id": "5287",
+ "name": "Osman"
+ },
+ {
+ "id": "5288",
+ "name": "Embalmer"
+ },
+ {
+ "id": "5289",
+ "name": "Carpenter"
+ },
+ {
+ "id": "5290",
+ "name": "Linen worker"
+ },
+ {
+ "id": "5291",
+ "name": "Priest"
+ },
+ {
+ "id": "5292",
+ "name": "Giant scarab"
+ },
+ {
+ "id": "5360",
+ "name": "Mummy ashes"
+ },
+ {
+ "id": "5383",
+ "name": "Odovacar"
+ },
+ {
+ "id": "5415",
+ "name": "Terror dog statue"
+ },
+ {
+ "id": "5416",
+ "name": "Terror dog statue"
+ },
+ {
+ "id": "5419",
+ "name": "Tarn"
+ },
+ {
+ "id": "5423",
+ "name": "Larry"
+ },
+ {
+ "id": "5425",
+ "name": "Larry"
+ },
+ {
+ "id": "5426",
+ "name": "Larry"
+ },
+ {
+ "id": "5427",
+ "name": "Penguin"
+ },
+ {
+ "id": "5429",
+ "name": "Penguin"
+ },
+ {
+ "id": "5430",
+ "name": "Penguin"
+ },
+ {
+ "id": "5431",
+ "name": "KGP Guard"
+ },
+ {
+ "id": "5432",
+ "name": "Pescaling Pax"
+ },
+ {
+ "id": "5433",
+ "name": "Ping"
+ },
+ {
+ "id": "5434",
+ "name": "Ping"
+ },
+ {
+ "id": "5435",
+ "name": "Pong"
+ },
+ {
+ "id": "5436",
+ "name": "Pong"
+ },
+ {
+ "id": "5437",
+ "name": "Ping"
+ },
+ {
+ "id": "5438",
+ "name": "Pong"
+ },
+ {
+ "id": "5443",
+ "name": "Noodle"
+ },
+ {
+ "id": "5445",
+ "name": "Penguin"
+ },
+ {
+ "id": "5446",
+ "name": "Penguin suit"
+ },
+ {
+ "id": "5449",
+ "name": "Penguin"
+ },
+ {
+ "id": "5450",
+ "name": "Penguin"
+ },
+ {
+ "id": "5451",
+ "name": "Penguin"
+ },
+ {
+ "id": "5456",
+ "name": "Crusher"
+ },
+ {
+ "id": "5457",
+ "name": "Crusher"
+ },
+ {
+ "id": "5458",
+ "name": "Crusher"
+ },
+ {
+ "id": "5459",
+ "name": "Crusher"
+ },
+ {
+ "id": "5460",
+ "name": "Tree"
+ },
+ {
+ "id": "5461",
+ "name": "Jungle Tree"
+ },
+ {
+ "id": "5462",
+ "name": "Tolna"
+ },
+ {
+ "id": "5463",
+ "name": "Honour guard"
+ },
+ {
+ "id": "5464",
+ "name": "Honour guard"
+ },
+ {
+ "id": "5465",
+ "name": "Fridleif Shieldson"
+ },
+ {
+ "id": "5466",
+ "name": "Thakkrad Sigmundson"
+ },
+ {
+ "id": "5467",
+ "name": "Iceberg"
+ },
+ {
+ "id": "5468",
+ "name": "Iceberg"
+ },
+ {
+ "id": "5469",
+ "name": "Arctic Pine"
+ },
+ {
+ "id": "5470",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "5471",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "5477",
+ "name": "Bork Sigmundson"
+ },
+ {
+ "id": "5481",
+ "name": "Mord Gunnars"
+ },
+ {
+ "id": "5482",
+ "name": "Mord Gunnars"
+ },
+ {
+ "id": "5498",
+ "name": "Miner"
+ },
+ {
+ "id": "5502",
+ "name": "Grundt"
+ },
+ {
+ "id": "5503",
+ "name": "Mawnis Burowgar"
+ },
+ {
+ "id": "5504",
+ "name": "Mawnis Burowgar"
+ },
+ {
+ "id": "5505",
+ "name": "Fridleif Shieldson"
+ },
+ {
+ "id": "5506",
+ "name": "Thakkrad Sigmundson"
+ },
+ {
+ "id": "5507",
+ "name": "Maria Gunnars"
+ },
+ {
+ "id": "5508",
+ "name": "Maria Gunnars"
+ },
+ {
+ "id": "5509",
+ "name": "Jofridr Mordstatter"
+ },
+ {
+ "id": "5510",
+ "name": "Morten Holdstrom"
+ },
+ {
+ "id": "5511",
+ "name": "Gunnar Holdstrom"
+ },
+ {
+ "id": "5512",
+ "name": "Anne Isaakson"
+ },
+ {
+ "id": "5513",
+ "name": "Lisse Isaakson"
+ },
+ {
+ "id": "5518",
+ "name": "Kjedelig Uppsen"
+ },
+ {
+ "id": "5519",
+ "name": "Trogen Konungarde"
+ },
+ {
+ "id": "5520",
+ "name": "Slug Hemligssen"
+ },
+ {
+ "id": "5528",
+ "name": "Ice troll grunt"
+ },
+ {
+ "id": "5530",
+ "name": "Sorceress"
+ },
+ {
+ "id": "5560",
+ "name": "Osman"
+ },
+ {
+ "id": "5562",
+ "name": "Del-Monty"
+ },
+ {
+ "id": "5564",
+ "name": "Bouncer"
+ },
+ {
+ "id": "5565",
+ "name": "Bouncer"
+ },
+ {
+ "id": "5566",
+ "name": "General Khazard"
+ },
+ {
+ "id": "5567",
+ "name": "Scout"
+ },
+ {
+ "id": "5568",
+ "name": "Scout"
+ },
+ {
+ "id": "5569",
+ "name": "Scout"
+ },
+ {
+ "id": "5570",
+ "name": "Scout"
+ },
+ {
+ "id": "5573",
+ "name": "Effigy"
+ },
+ {
+ "id": "5579",
+ "name": "Effigy"
+ },
+ {
+ "id": "5580",
+ "name": "Bonafido"
+ },
+ {
+ "id": "5582",
+ "name": "Homunculus"
+ },
+ {
+ "id": "5583",
+ "name": "Homunculus"
+ },
+ {
+ "id": "5585",
+ "name": "'Transmute' The Alchemist"
+ },
+ {
+ "id": "5586",
+ "name": "'Transmute' The Alchemist"
+ },
+ {
+ "id": "5587",
+ "name": "'Currency' The Alchemist"
+ },
+ {
+ "id": "5588",
+ "name": "'Currency' The Alchemist"
+ },
+ {
+ "id": "5592",
+ "name": "'The Guns'"
+ },
+ {
+ "id": "5598",
+ "name": "Unicow"
+ },
+ {
+ "id": "5604",
+ "name": "Elfinlocks"
+ },
+ {
+ "id": "5605",
+ "name": "Clockwork cat"
+ },
+ {
+ "id": "5606",
+ "name": "Clockwork cat"
+ },
+ {
+ "id": "5612",
+ "name": "Rufus"
+ },
+ {
+ "id": "5613",
+ "name": "Mi-Gor"
+ },
+ {
+ "id": "5615",
+ "name": "Puffin"
+ },
+ {
+ "id": "5616",
+ "name": "Brother Tranquility"
+ },
+ {
+ "id": "5617",
+ "name": "Brother Tranquility"
+ },
+ {
+ "id": "5618",
+ "name": "Brother Tranquility"
+ },
+ {
+ "id": "5623",
+ "name": "Zombie monk"
+ },
+ {
+ "id": "5624",
+ "name": "Zombie monk"
+ },
+ {
+ "id": "5625",
+ "name": "Zombie monk"
+ },
+ {
+ "id": "5626",
+ "name": "Zombie monk"
+ },
+ {
+ "id": "5667",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5679",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5681",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5682",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5683",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5684",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5685",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5686",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5687",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5688",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5689",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5690",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5691",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5692",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5693",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5694",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5695",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5696",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5697",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5698",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5699",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5700",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5701",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5702",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5703",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5704",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5705",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5706",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5707",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5708",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5709",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5710",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5711",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5712",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5713",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5714",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5715",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5716",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5717",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5718",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5719",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5720",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5721",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5722",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5723",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5724",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5725",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5726",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5727",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5728",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5729",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5730",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5731",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5732",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5733",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5734",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5735",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5736",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5737",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5738",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5739",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5740",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5741",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5742",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5743",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5744",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5745",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5746",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5747",
+ "name": "Undead Lumberjack"
+ },
+ {
+ "id": "5748",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "5749",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "5770",
+ "name": "Ur-zek"
+ },
+ {
+ "id": "5771",
+ "name": "Ur-vass"
+ },
+ {
+ "id": "5772",
+ "name": "Ur-taal"
+ },
+ {
+ "id": "5773",
+ "name": "Ur-meg"
+ },
+ {
+ "id": "5774",
+ "name": "Ur-lun"
+ },
+ {
+ "id": "5775",
+ "name": "Ur-pel"
+ },
+ {
+ "id": "5778",
+ "name": "Bartak"
+ },
+ {
+ "id": "5779",
+ "name": "Turgall"
+ },
+ {
+ "id": "5780",
+ "name": "Reldak"
+ },
+ {
+ "id": "5781",
+ "name": "Miltog"
+ },
+ {
+ "id": "5782",
+ "name": "Mernik"
+ },
+ {
+ "id": "5787",
+ "name": "Gourmet"
+ },
+ {
+ "id": "5789",
+ "name": "Gourmet"
+ },
+ {
+ "id": "5790",
+ "name": "Gourmet"
+ },
+ {
+ "id": "5791",
+ "name": "Gourmet"
+ },
+ {
+ "id": "5792",
+ "name": "Turgok"
+ },
+ {
+ "id": "5793",
+ "name": "Markog"
+ },
+ {
+ "id": "5794",
+ "name": "Durgok"
+ },
+ {
+ "id": "5795",
+ "name": "Tindar"
+ },
+ {
+ "id": "5796",
+ "name": "Gundik"
+ },
+ {
+ "id": "5797",
+ "name": "Zenkog"
+ },
+ {
+ "id": "5798",
+ "name": "Lurgon"
+ },
+ {
+ "id": "5799",
+ "name": "Ur-tag"
+ },
+ {
+ "id": "5802",
+ "name": "Young 'un"
+ },
+ {
+ "id": "5804",
+ "name": "Tyke"
+ },
+ {
+ "id": "5806",
+ "name": "Nipper"
+ },
+ {
+ "id": "5825",
+ "name": "Movario"
+ },
+ {
+ "id": "5826",
+ "name": "Darve"
+ },
+ {
+ "id": "5828",
+ "name": "Barlak"
+ },
+ {
+ "id": "5830",
+ "name": "Rat Burgiss"
+ },
+ {
+ "id": "5835",
+ "name": "Surok Magis"
+ },
+ {
+ "id": "5836",
+ "name": "Zaff"
+ },
+ {
+ "id": "5837",
+ "name": "Anna Jones"
+ },
+ {
+ "id": "5838",
+ "name": "King Roald"
+ },
+ {
+ "id": "5839",
+ "name": "Mishkal'un Dorn"
+ },
+ {
+ "id": "5840",
+ "name": "Dakh'thoulan Aegis"
+ },
+ {
+ "id": "5841",
+ "name": "Sil'as Dahcsnu"
+ },
+ {
+ "id": "5853",
+ "name": "Bench"
+ },
+ {
+ "id": "5857",
+ "name": "Zanik"
+ },
+ {
+ "id": "5858",
+ "name": "Ur-tag"
+ },
+ {
+ "id": "5862",
+ "name": "Sigmund and Zanik"
+ },
+ {
+ "id": "5863",
+ "name": "Ambassador Alvijar"
+ },
+ {
+ "id": "5868",
+ "name": "Tegdak"
+ },
+ {
+ "id": "5869",
+ "name": "Zanik"
+ },
+ {
+ "id": "5871",
+ "name": "Sergeant Mossfists"
+ },
+ {
+ "id": "5872",
+ "name": "Sergeant Slimetoes"
+ },
+ {
+ "id": "5887",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "5894",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "5895",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "5896",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "5897",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "5898",
+ "name": "'Bird's-Eye' Jack"
+ },
+ {
+ "id": "5899",
+ "name": "The Inadequacy"
+ },
+ {
+ "id": "5907",
+ "name": "The Illusive"
+ },
+ {
+ "id": "5912",
+ "name": "Banker"
+ },
+ {
+ "id": "5913",
+ "name": "Banker"
+ },
+ {
+ "id": "5915",
+ "name": "Elsie"
+ },
+ {
+ "id": "5918",
+ "name": "Stray dog"
+ },
+ {
+ "id": "5932",
+ "name": "Barnabus Hurma"
+ },
+ {
+ "id": "5933",
+ "name": "Marius Giste"
+ },
+ {
+ "id": "5934",
+ "name": "Caden Azro"
+ },
+ {
+ "id": "5935",
+ "name": "Thias Leacke"
+ },
+ {
+ "id": "5936",
+ "name": "Sinco Doar"
+ },
+ {
+ "id": "5937",
+ "name": "Tinse Torpe"
+ },
+ {
+ "id": "5939",
+ "name": "Torrcs"
+ },
+ {
+ "id": "5940",
+ "name": "Marfet"
+ },
+ {
+ "id": "5941",
+ "name": "Museum guard"
+ },
+ {
+ "id": "5942",
+ "name": "Museum guard"
+ },
+ {
+ "id": "5943",
+ "name": "Museum guard"
+ },
+ {
+ "id": "5946",
+ "name": "Schoolboy"
+ },
+ {
+ "id": "5948",
+ "name": "Teacher and pupil"
+ },
+ {
+ "id": "5949",
+ "name": "Schoolboy"
+ },
+ {
+ "id": "5950",
+ "name": "Teacher"
+ },
+ {
+ "id": "5951",
+ "name": "Schoolgirl"
+ },
+ {
+ "id": "5953",
+ "name": "Workman"
+ },
+ {
+ "id": "5955",
+ "name": "Workman"
+ },
+ {
+ "id": "5957",
+ "name": "Schoolgirl"
+ },
+ {
+ "id": "5964",
+ "name": "Ed Wood"
+ },
+ {
+ "id": "5965",
+ "name": "Orlando Smith"
+ },
+ {
+ "id": "5967",
+ "name": "Natural historian"
+ },
+ {
+ "id": "5968",
+ "name": "Natural historian"
+ },
+ {
+ "id": "5969",
+ "name": "Natural historian"
+ },
+ {
+ "id": "5970",
+ "name": "Natural historian"
+ },
+ {
+ "id": "5983",
+ "name": "Schoolgirl"
+ },
+ {
+ "id": "5984",
+ "name": "Schoolgirl"
+ },
+ {
+ "id": "5985",
+ "name": "Schoolgirl"
+ },
+ {
+ "id": "5988",
+ "name": "Miazrqa"
+ },
+ {
+ "id": "5989",
+ "name": "Grimgnash"
+ },
+ {
+ "id": "5991",
+ "name": "Drain pipe"
+ },
+ {
+ "id": "5995",
+ "name": "Mouse"
+ },
+ {
+ "id": "5997",
+ "name": "Rupert the Beard"
+ },
+ {
+ "id": "6000",
+ "name": "Rupert the Beard"
+ },
+ {
+ "id": "6002",
+ "name": "Gnome"
+ },
+ {
+ "id": "6003",
+ "name": "Winkin"
+ },
+ {
+ "id": "6004",
+ "name": "Gnome"
+ },
+ {
+ "id": "6005",
+ "name": "Cage"
+ },
+ {
+ "id": "6071",
+ "name": "Immenizz"
+ },
+ {
+ "id": "6075",
+ "name": "Cyclops"
+ },
+ {
+ "id": "6082",
+ "name": "Captain Ned"
+ },
+ {
+ "id": "6085",
+ "name": "Cabin boy Jenkins"
+ },
+ {
+ "id": "6086",
+ "name": "Cabin boy Jenkins"
+ },
+ {
+ "id": "6087",
+ "name": "Elvarg"
+ },
+ {
+ "id": "6114",
+ "name": "Drake"
+ },
+ {
+ "id": "6119",
+ "name": "Observatory professor"
+ },
+ {
+ "id": "6130",
+ "name": "Clothears"
+ },
+ {
+ "id": "6138",
+ "name": "Town crier"
+ },
+ {
+ "id": "6139",
+ "name": "Town crier"
+ },
+ {
+ "id": "6158",
+ "name": "Sir Lucan"
+ },
+ {
+ "id": "6160",
+ "name": "Sir Lancelot"
+ },
+ {
+ "id": "6161",
+ "name": "Sir Bedivere"
+ },
+ {
+ "id": "6162",
+ "name": "Sir Tristram"
+ },
+ {
+ "id": "6163",
+ "name": "Sir Pelleas"
+ },
+ {
+ "id": "6164",
+ "name": "Sir Gawain"
+ },
+ {
+ "id": "6165",
+ "name": "Sir Kay"
+ },
+ {
+ "id": "6166",
+ "name": "Sir Pelleas"
+ },
+ {
+ "id": "6167",
+ "name": "Sir Gawain"
+ },
+ {
+ "id": "6168",
+ "name": "Sir Kay"
+ },
+ {
+ "id": "6171",
+ "name": "Sir Kay"
+ },
+ {
+ "id": "6172",
+ "name": "Sir Gawain"
+ },
+ {
+ "id": "6173",
+ "name": "Sir Lucan"
+ },
+ {
+ "id": "6174",
+ "name": "Bandit"
+ },
+ {
+ "id": "6175",
+ "name": "Sir Tristram"
+ },
+ {
+ "id": "6176",
+ "name": "Sir Pelleas"
+ },
+ {
+ "id": "6177",
+ "name": "Sir Bedivere"
+ },
+ {
+ "id": "6178",
+ "name": "Anna"
+ },
+ {
+ "id": "6179",
+ "name": "David"
+ },
+ {
+ "id": "6180",
+ "name": "Anna"
+ },
+ {
+ "id": "6181",
+ "name": "Court judge"
+ },
+ {
+ "id": "6182",
+ "name": "Jury"
+ },
+ {
+ "id": "6185",
+ "name": "Prosecutor"
+ },
+ {
+ "id": "6186",
+ "name": "Morgan Le Faye"
+ },
+ {
+ "id": "6191",
+ "name": "Sinclair"
+ },
+ {
+ "id": "6199",
+ "name": "Banker"
+ },
+ {
+ "id": "6202",
+ "name": "K'ril Tsutsaroth"
+ },
+ {
+ "id": "6284",
+ "name": "Warped terrorbird"
+ },
+ {
+ "id": "6298",
+ "name": "Jeffery"
+ },
+ {
+ "id": "6299",
+ "name": "Big monolith"
+ },
+ {
+ "id": "6300",
+ "name": "Small monolith"
+ },
+ {
+ "id": "6301",
+ "name": "Cute creature"
+ },
+ {
+ "id": "6302",
+ "name": "Evil creature"
+ },
+ {
+ "id": "6303",
+ "name": "Yewnock the engineer"
+ },
+ {
+ "id": "6304",
+ "name": "Bolrie"
+ },
+ {
+ "id": "6305",
+ "name": "Hazelmere"
+ },
+ {
+ "id": "6307",
+ "name": "Advisor"
+ },
+ {
+ "id": "6308",
+ "name": "King Argenthorg"
+ },
+ {
+ "id": "6309",
+ "name": "Prince Argenthorg"
+ },
+ {
+ "id": "6310",
+ "name": "Cute creature"
+ },
+ {
+ "id": "6312",
+ "name": "Evil creature"
+ },
+ {
+ "id": "6313",
+ "name": "Terrorbird servant"
+ },
+ {
+ "id": "6316",
+ "name": "Guard no. 21"
+ },
+ {
+ "id": "6317",
+ "name": "Guard no. 72"
+ },
+ {
+ "id": "6318",
+ "name": "Longramble"
+ },
+ {
+ "id": "6319",
+ "name": "Spirit tree"
+ },
+ {
+ "id": "6321",
+ "name": "Spirit tree"
+ },
+ {
+ "id": "6333",
+ "name": "Child"
+ },
+ {
+ "id": "6340",
+ "name": "Child"
+ },
+ {
+ "id": "6341",
+ "name": "Child"
+ },
+ {
+ "id": "6342",
+ "name": "Child"
+ },
+ {
+ "id": "6343",
+ "name": "Child"
+ },
+ {
+ "id": "6345",
+ "name": "Child"
+ },
+ {
+ "id": "6357",
+ "name": "Street urchin"
+ },
+ {
+ "id": "6359",
+ "name": "Street urchin"
+ },
+ {
+ "id": "6360",
+ "name": "Street urchin"
+ },
+ {
+ "id": "6361",
+ "name": "Street urchin"
+ },
+ {
+ "id": "6362",
+ "name": "Eniola"
+ },
+ {
+ "id": "6373",
+ "name": "Kennith"
+ },
+ {
+ "id": "6375",
+ "name": "Wizard Cromperty"
+ },
+ {
+ "id": "6384",
+ "name": "Karamjan Jungle Eagle"
+ },
+ {
+ "id": "6386",
+ "name": "Bandit"
+ },
+ {
+ "id": "6391",
+ "name": "Glough"
+ },
+ {
+ "id": "6392",
+ "name": "Oldak"
+ },
+ {
+ "id": "6393",
+ "name": "Zanik"
+ },
+ {
+ "id": "6394",
+ "name": "Zanik"
+ },
+ {
+ "id": "6396",
+ "name": "Zanik"
+ },
+ {
+ "id": "6398",
+ "name": "Zanik"
+ },
+ {
+ "id": "6400",
+ "name": "Oldak"
+ },
+ {
+ "id": "6468",
+ "name": "Skoblin"
+ },
+ {
+ "id": "6474",
+ "name": "Snothead"
+ },
+ {
+ "id": "6475",
+ "name": "Snailfeet"
+ },
+ {
+ "id": "6476",
+ "name": "Mosschin"
+ },
+ {
+ "id": "6477",
+ "name": "Redeyes"
+ },
+ {
+ "id": "6478",
+ "name": "Strongbones"
+ },
+ {
+ "id": "6479",
+ "name": "Grubfoot"
+ },
+ {
+ "id": "6480",
+ "name": "Grubfoot"
+ },
+ {
+ "id": "6483",
+ "name": "Priest"
+ },
+ {
+ "id": "6484",
+ "name": "Priest"
+ },
+ {
+ "id": "6485",
+ "name": "Priest"
+ },
+ {
+ "id": "6486",
+ "name": "Priest"
+ },
+ {
+ "id": "6487",
+ "name": "Priest"
+ },
+ {
+ "id": "6489",
+ "name": "High priest"
+ },
+ {
+ "id": "6505",
+ "name": "Registrar 1"
+ },
+ {
+ "id": "6511",
+ "name": "Jury"
+ },
+ {
+ "id": "6513",
+ "name": "Spectator"
+ },
+ {
+ "id": "6515",
+ "name": "Spectator"
+ },
+ {
+ "id": "6517",
+ "name": "Spectator"
+ },
+ {
+ "id": "6519",
+ "name": "Spectator"
+ },
+ {
+ "id": "6520",
+ "name": "Head Registrar"
+ },
+ {
+ "id": "6537",
+ "name": "Mandrith"
+ },
+ {
+ "id": "6538",
+ "name": "Banker"
+ },
+ {
+ "id": "6539",
+ "name": "Charley the Cleaner"
+ },
+ {
+ "id": "6540",
+ "name": "Scotty the Cleaner"
+ },
+ {
+ "id": "6541",
+ "name": "Sanchez the Cleaner"
+ },
+ {
+ "id": "6542",
+ "name": "Summer Bonde"
+ },
+ {
+ "id": "6566",
+ "name": "Broken grave marker"
+ },
+ {
+ "id": "6567",
+ "name": "Collapsing grave marker"
+ },
+ {
+ "id": "6568",
+ "name": "Grave marker"
+ },
+ {
+ "id": "6569",
+ "name": "Broken grave marker"
+ },
+ {
+ "id": "6570",
+ "name": "Collapsing grave marker"
+ },
+ {
+ "id": "6571",
+ "name": "Gravestone"
+ },
+ {
+ "id": "6572",
+ "name": "Broken gravestone"
+ },
+ {
+ "id": "6573",
+ "name": "Collapsing gravestone"
+ },
+ {
+ "id": "6574",
+ "name": "Gravestone"
+ },
+ {
+ "id": "6575",
+ "name": "Broken gravestone"
+ },
+ {
+ "id": "6576",
+ "name": "Collapsing gravestone"
+ },
+ {
+ "id": "6577",
+ "name": "Gravestone"
+ },
+ {
+ "id": "6578",
+ "name": "Broken gravestone"
+ },
+ {
+ "id": "6579",
+ "name": "Collapsing gravestone"
+ },
+ {
+ "id": "6580",
+ "name": "Stele"
+ },
+ {
+ "id": "6581",
+ "name": "Broken stele"
+ },
+ {
+ "id": "6582",
+ "name": "Collapsing stele"
+ },
+ {
+ "id": "6583",
+ "name": "Saradomin symbol"
+ },
+ {
+ "id": "6584",
+ "name": "Broken Saradomin symbol"
+ },
+ {
+ "id": "6585",
+ "name": "Collapsing Saradomin symbol"
+ },
+ {
+ "id": "6586",
+ "name": "Zamorak symbol"
+ },
+ {
+ "id": "6587",
+ "name": "Broken Zamorak symbol"
+ },
+ {
+ "id": "6588",
+ "name": "Collapsing Zamorak symbol"
+ },
+ {
+ "id": "6589",
+ "name": "Guthix symbol"
+ },
+ {
+ "id": "6590",
+ "name": "Broken Guthix symbol"
+ },
+ {
+ "id": "6591",
+ "name": "Collapsing Guthix symbol"
+ },
+ {
+ "id": "6592",
+ "name": "Bandos symbol"
+ },
+ {
+ "id": "6593",
+ "name": "Broken Bandos symbol"
+ },
+ {
+ "id": "6594",
+ "name": "Collapsing Bandos symbol"
+ },
+ {
+ "id": "6595",
+ "name": "Armadyl symbol"
+ },
+ {
+ "id": "6596",
+ "name": "Broken Armadyl symbol"
+ },
+ {
+ "id": "6597",
+ "name": "Collapsing Armadyl symbol"
+ },
+ {
+ "id": "6598",
+ "name": "Memorial stone"
+ },
+ {
+ "id": "6599",
+ "name": "Broken memorial stone"
+ },
+ {
+ "id": "6600",
+ "name": "Collapsing memorial stone"
+ },
+ {
+ "id": "6601",
+ "name": "Memorial stone"
+ },
+ {
+ "id": "6602",
+ "name": "Broken memorial stone"
+ },
+ {
+ "id": "6603",
+ "name": "Collapsing memorial stone"
+ },
+ {
+ "id": "6732",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6733",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6734",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6735",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6736",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6737",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6738",
+ "name": "Snow imp"
+ },
+ {
+ "id": "6741",
+ "name": "Snow"
+ },
+ {
+ "id": "6746",
+ "name": "Snowman"
+ },
+ {
+ "id": "6751",
+ "name": "Bulldog"
+ },
+ {
+ "id": "6753",
+ "name": "Mummy"
+ },
+ {
+ "id": "6754",
+ "name": "Mummy"
+ },
+ {
+ "id": "6755",
+ "name": "Mummy"
+ },
+ {
+ "id": "6756",
+ "name": "Mummy"
+ },
+ {
+ "id": "6757",
+ "name": "Mummy"
+ },
+ {
+ "id": "6758",
+ "name": "Mummy"
+ },
+ {
+ "id": "6759",
+ "name": "Mummy"
+ },
+ {
+ "id": "6760",
+ "name": "Mummy"
+ },
+ {
+ "id": "6771",
+ "name": "Giant scarab"
+ },
+ {
+ "id": "6775",
+ "name": "Scabaras priest"
+ },
+ {
+ "id": "6782",
+ "name": "Maisa"
+ },
+ {
+ "id": "6783",
+ "name": "Maisa"
+ },
+ {
+ "id": "6784",
+ "name": "Priest"
+ },
+ {
+ "id": "6791",
+ "name": "High Priest of Scabaras"
+ },
+ {
+ "id": "6792",
+ "name": "Vulture"
+ },
+ {
+ "id": "6793",
+ "name": "Spirit terrorbird"
+ },
+ {
+ "id": "6808",
+ "name": "Beaver"
+ },
+ {
+ "id": "6898",
+ "name": "Pet shop owner"
+ },
+ {
+ "id": "6899",
+ "name": "Bulldog"
+ },
+ {
+ "id": "6908",
+ "name": "Baby penguin"
+ },
+ {
+ "id": "6909",
+ "name": "Penguin"
+ },
+ {
+ "id": "6910",
+ "name": "Penguin"
+ },
+ {
+ "id": "6911",
+ "name": "Raven chick"
+ },
+ {
+ "id": "6912",
+ "name": "Raven"
+ },
+ {
+ "id": "6913",
+ "name": "Baby raccoon"
+ },
+ {
+ "id": "6914",
+ "name": "Raccoon"
+ },
+ {
+ "id": "6915",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "6916",
+ "name": "Gecko"
+ },
+ {
+ "id": "6918",
+ "name": "Gecko"
+ },
+ {
+ "id": "6919",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "6920",
+ "name": "Squirrel"
+ },
+ {
+ "id": "6922",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6923",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6924",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6925",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6926",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6927",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6928",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6929",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6930",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6931",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6932",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6933",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6934",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6935",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6936",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6937",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6938",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6939",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6940",
+ "name": "Baby chameleon"
+ },
+ {
+ "id": "6941",
+ "name": "Chameleon"
+ },
+ {
+ "id": "6945",
+ "name": "Vulture chick"
+ },
+ {
+ "id": "6946",
+ "name": "Vulture"
+ },
+ {
+ "id": "6947",
+ "name": "Baby giant crab"
+ },
+ {
+ "id": "6948",
+ "name": "Giant crab"
+ },
+ {
+ "id": "6949",
+ "name": "Saradomin chick"
+ },
+ {
+ "id": "6950",
+ "name": "Saradomin bird"
+ },
+ {
+ "id": "6951",
+ "name": "Saradomin owl"
+ },
+ {
+ "id": "6952",
+ "name": "Zamorak chick"
+ },
+ {
+ "id": "6953",
+ "name": "Zamorak bird"
+ },
+ {
+ "id": "6954",
+ "name": "Zamorak hawk"
+ },
+ {
+ "id": "6955",
+ "name": "Guthix chick"
+ },
+ {
+ "id": "6956",
+ "name": "Guthix bird"
+ },
+ {
+ "id": "6957",
+ "name": "Guthix raptor"
+ },
+ {
+ "id": "6970",
+ "name": "Pikkupstix"
+ },
+ {
+ "id": "6988",
+ "name": "Giant wolpertinger"
+ },
+ {
+ "id": "6991",
+ "name": "Ibis"
+ },
+ {
+ "id": "6996",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7000",
+ "name": "Dark Squall"
+ },
+ {
+ "id": "7002",
+ "name": "Surok Magis"
+ },
+ {
+ "id": "7006",
+ "name": "Grenwall"
+ },
+ {
+ "id": "7015",
+ "name": "Platypus"
+ },
+ {
+ "id": "7016",
+ "name": "Platypus"
+ },
+ {
+ "id": "7017",
+ "name": "Platypus"
+ },
+ {
+ "id": "7018",
+ "name": "Baby platypus"
+ },
+ {
+ "id": "7019",
+ "name": "Baby platypus"
+ },
+ {
+ "id": "7020",
+ "name": "Baby platypus"
+ },
+ {
+ "id": "7022",
+ "name": "Platypus"
+ },
+ {
+ "id": "7023",
+ "name": "Platypus"
+ },
+ {
+ "id": "7025",
+ "name": "Baby platypus"
+ },
+ {
+ "id": "7026",
+ "name": "Baby platypus"
+ },
+ {
+ "id": "7027",
+ "name": "Patrick"
+ },
+ {
+ "id": "7028",
+ "name": "Penelope"
+ },
+ {
+ "id": "7029",
+ "name": "Peter"
+ },
+ {
+ "id": "7030",
+ "name": "Peanut"
+ },
+ {
+ "id": "7032",
+ "name": "Diseased kebbit"
+ },
+ {
+ "id": "7040",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7045",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7046",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7048",
+ "name": "Frawd"
+ },
+ {
+ "id": "7050",
+ "name": "Ogress banker"
+ },
+ {
+ "id": "7052",
+ "name": "Seegud"
+ },
+ {
+ "id": "7053",
+ "name": "Chargurr"
+ },
+ {
+ "id": "7054",
+ "name": "Chargurr"
+ },
+ {
+ "id": "7055",
+ "name": "Snurgh"
+ },
+ {
+ "id": "7058",
+ "name": "Kringk"
+ },
+ {
+ "id": "7059",
+ "name": "Thump"
+ },
+ {
+ "id": "7060",
+ "name": "Massage table"
+ },
+ {
+ "id": "7061",
+ "name": "Thump"
+ },
+ {
+ "id": "7062",
+ "name": "Muggh"
+ },
+ {
+ "id": "7063",
+ "name": "Kringk"
+ },
+ {
+ "id": "7064",
+ "name": "Hairdryer"
+ },
+ {
+ "id": "7065",
+ "name": "Snert"
+ },
+ {
+ "id": "7068",
+ "name": "Tyke"
+ },
+ {
+ "id": "7069",
+ "name": "Snarrl"
+ },
+ {
+ "id": "7070",
+ "name": "Snarrk"
+ },
+ {
+ "id": "7071",
+ "name": "I'rk"
+ },
+ {
+ "id": "7072",
+ "name": "Thuddley"
+ },
+ {
+ "id": "7073",
+ "name": "Grr'bah"
+ },
+ {
+ "id": "7074",
+ "name": "Chomp"
+ },
+ {
+ "id": "7075",
+ "name": "Grubb"
+ },
+ {
+ "id": "7076",
+ "name": "Grunther"
+ },
+ {
+ "id": "7077",
+ "name": "Glum"
+ },
+ {
+ "id": "7083",
+ "name": "Flying bugs"
+ },
+ {
+ "id": "7087",
+ "name": "Balnea"
+ },
+ {
+ "id": "7088",
+ "name": "Chief Tess"
+ },
+ {
+ "id": "7089",
+ "name": "Chargurr"
+ },
+ {
+ "id": "7090",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "7091",
+ "name": "Dawg"
+ },
+ {
+ "id": "7116",
+ "name": "Drunken sailor"
+ },
+ {
+ "id": "7117",
+ "name": "Drunken sailor"
+ },
+ {
+ "id": "7118",
+ "name": "Catapult engineer"
+ },
+ {
+ "id": "7119",
+ "name": "Tyras guard"
+ },
+ {
+ "id": "7121",
+ "name": "General Hining"
+ },
+ {
+ "id": "7122",
+ "name": "Githan"
+ },
+ {
+ "id": "7123",
+ "name": "Amulet of Nature"
+ },
+ {
+ "id": "7124",
+ "name": "Mud"
+ },
+ {
+ "id": "7136",
+ "name": "Surok Magis"
+ },
+ {
+ "id": "7143",
+ "name": "Professor Henry"
+ },
+ {
+ "id": "7163",
+ "name": "Villager"
+ },
+ {
+ "id": "7165",
+ "name": "Villager"
+ },
+ {
+ "id": "7166",
+ "name": "Villager"
+ },
+ {
+ "id": "7167",
+ "name": "Villager"
+ },
+ {
+ "id": "7169",
+ "name": "Kimberly"
+ },
+ {
+ "id": "7170",
+ "name": "Kimberly"
+ },
+ {
+ "id": "7171",
+ "name": "Kennith"
+ },
+ {
+ "id": "7172",
+ "name": "Kennith"
+ },
+ {
+ "id": "7173",
+ "name": "Kennith"
+ },
+ {
+ "id": "7174",
+ "name": "Kennith"
+ },
+ {
+ "id": "7175",
+ "name": "Kennith"
+ },
+ {
+ "id": "7176",
+ "name": "Villager"
+ },
+ {
+ "id": "7184",
+ "name": "Ezekial Lovecraft"
+ },
+ {
+ "id": "7185",
+ "name": "Clive"
+ },
+ {
+ "id": "7186",
+ "name": "Katherine"
+ },
+ {
+ "id": "7187",
+ "name": "Katherine"
+ },
+ {
+ "id": "7188",
+ "name": "Clive"
+ },
+ {
+ "id": "7189",
+ "name": "Kent"
+ },
+ {
+ "id": "7190",
+ "name": "Rabbit hole"
+ },
+ {
+ "id": "7197",
+ "name": "Easter Bunny"
+ },
+ {
+ "id": "7198",
+ "name": "Bunny"
+ },
+ {
+ "id": "7199",
+ "name": "Bunny"
+ },
+ {
+ "id": "7200",
+ "name": "Guard bunny"
+ },
+ {
+ "id": "7201",
+ "name": "Chocatrice"
+ },
+ {
+ "id": "7203",
+ "name": "Void Knight"
+ },
+ {
+ "id": "7205",
+ "name": "Mouse"
+ },
+ {
+ "id": "7208",
+ "name": "Rabbit"
+ },
+ {
+ "id": "7261",
+ "name": "Raven chick"
+ },
+ {
+ "id": "7262",
+ "name": "Raven"
+ },
+ {
+ "id": "7263",
+ "name": "Raven chick"
+ },
+ {
+ "id": "7264",
+ "name": "Raven"
+ },
+ {
+ "id": "7265",
+ "name": "Raven chick"
+ },
+ {
+ "id": "7266",
+ "name": "Raven"
+ },
+ {
+ "id": "7267",
+ "name": "Raven chick"
+ },
+ {
+ "id": "7268",
+ "name": "Raven"
+ },
+ {
+ "id": "7269",
+ "name": "Raven chick"
+ },
+ {
+ "id": "7270",
+ "name": "Raven"
+ },
+ {
+ "id": "7271",
+ "name": "Baby raccoon"
+ },
+ {
+ "id": "7272",
+ "name": "Raccoon"
+ },
+ {
+ "id": "7273",
+ "name": "Baby raccoon"
+ },
+ {
+ "id": "7274",
+ "name": "Raccoon"
+ },
+ {
+ "id": "7276",
+ "name": "Baby raccoon"
+ },
+ {
+ "id": "7277",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7278",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7279",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7280",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7281",
+ "name": "Gecko"
+ },
+ {
+ "id": "7282",
+ "name": "Gecko"
+ },
+ {
+ "id": "7283",
+ "name": "Gecko"
+ },
+ {
+ "id": "7284",
+ "name": "Gecko"
+ },
+ {
+ "id": "7286",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7287",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7288",
+ "name": "Baby gecko"
+ },
+ {
+ "id": "7289",
+ "name": "Gecko"
+ },
+ {
+ "id": "7290",
+ "name": "Gecko"
+ },
+ {
+ "id": "7291",
+ "name": "Gecko"
+ },
+ {
+ "id": "7292",
+ "name": "Gecko"
+ },
+ {
+ "id": "7293",
+ "name": "Baby giant crab"
+ },
+ {
+ "id": "7294",
+ "name": "Giant crab"
+ },
+ {
+ "id": "7295",
+ "name": "Baby giant crab"
+ },
+ {
+ "id": "7296",
+ "name": "Giant crab"
+ },
+ {
+ "id": "7297",
+ "name": "Baby giant crab"
+ },
+ {
+ "id": "7298",
+ "name": "Giant crab"
+ },
+ {
+ "id": "7299",
+ "name": "Baby giant crab"
+ },
+ {
+ "id": "7300",
+ "name": "Giant crab"
+ },
+ {
+ "id": "7301",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7302",
+ "name": "Squirrel"
+ },
+ {
+ "id": "7303",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7304",
+ "name": "Squirrel"
+ },
+ {
+ "id": "7305",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7306",
+ "name": "Squirrel"
+ },
+ {
+ "id": "7307",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7308",
+ "name": "Squirrel"
+ },
+ {
+ "id": "7309",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7310",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7311",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7312",
+ "name": "Baby squirrel"
+ },
+ {
+ "id": "7313",
+ "name": "Baby penguin"
+ },
+ {
+ "id": "7314",
+ "name": "Penguin"
+ },
+ {
+ "id": "7315",
+ "name": "Penguin"
+ },
+ {
+ "id": "7316",
+ "name": "Baby penguin"
+ },
+ {
+ "id": "7317",
+ "name": "Penguin"
+ },
+ {
+ "id": "7318",
+ "name": "Penguin"
+ },
+ {
+ "id": "7319",
+ "name": "Vulture chick"
+ },
+ {
+ "id": "7320",
+ "name": "Vulture"
+ },
+ {
+ "id": "7321",
+ "name": "Vulture chick"
+ },
+ {
+ "id": "7322",
+ "name": "Vulture"
+ },
+ {
+ "id": "7323",
+ "name": "Vulture chick"
+ },
+ {
+ "id": "7324",
+ "name": "Vulture"
+ },
+ {
+ "id": "7325",
+ "name": "Vulture chick"
+ },
+ {
+ "id": "7326",
+ "name": "Vulture"
+ },
+ {
+ "id": "7327",
+ "name": "Vulture chick"
+ },
+ {
+ "id": "7328",
+ "name": "Vulture"
+ },
+ {
+ "id": "7369",
+ "name": "Void shifter"
+ },
+ {
+ "id": "7372",
+ "name": "Ravenous locust"
+ },
+ {
+ "id": "7383",
+ "name": "Uberlass"
+ },
+ {
+ "id": "7384",
+ "name": "Uberlass"
+ },
+ {
+ "id": "7385",
+ "name": "Uberlass"
+ },
+ {
+ "id": "7386",
+ "name": "Uberlass"
+ },
+ {
+ "id": "7387",
+ "name": "Sannytea"
+ },
+ {
+ "id": "7388",
+ "name": "Sannytea"
+ },
+ {
+ "id": "7389",
+ "name": "Irollsixes"
+ },
+ {
+ "id": "7390",
+ "name": "Irollsixes"
+ },
+ {
+ "id": "7391",
+ "name": "Foxyhunter"
+ },
+ {
+ "id": "7392",
+ "name": "Foxyhunter"
+ },
+ {
+ "id": "7393",
+ "name": "Foxyhunter"
+ },
+ {
+ "id": "7394",
+ "name": "Gabriela"
+ },
+ {
+ "id": "7395",
+ "name": "Teodor"
+ },
+ {
+ "id": "7396",
+ "name": "Aurel"
+ },
+ {
+ "id": "7397",
+ "name": "Cornelius"
+ },
+ {
+ "id": "7399",
+ "name": "Sorin"
+ },
+ {
+ "id": "7400",
+ "name": "Luscion"
+ },
+ {
+ "id": "7401",
+ "name": "Sergiu"
+ },
+ {
+ "id": "7402",
+ "name": "Radu"
+ },
+ {
+ "id": "7403",
+ "name": "Grigore"
+ },
+ {
+ "id": "7404",
+ "name": "Ileana"
+ },
+ {
+ "id": "7405",
+ "name": "Valeria"
+ },
+ {
+ "id": "7406",
+ "name": "Emilia"
+ },
+ {
+ "id": "7407",
+ "name": "Florin"
+ },
+ {
+ "id": "7408",
+ "name": "Catalina"
+ },
+ {
+ "id": "7409",
+ "name": "Ivan"
+ },
+ {
+ "id": "7410",
+ "name": "Victor"
+ },
+ {
+ "id": "7411",
+ "name": "Helena"
+ },
+ {
+ "id": "7412",
+ "name": "Mihail"
+ },
+ {
+ "id": "7413",
+ "name": "Nicoleta"
+ },
+ {
+ "id": "7414",
+ "name": "Vasile"
+ },
+ {
+ "id": "7415",
+ "name": "Razvan"
+ },
+ {
+ "id": "7416",
+ "name": "Luminata"
+ },
+ {
+ "id": "7418",
+ "name": "Juvinate"
+ },
+ {
+ "id": "7419",
+ "name": "Held vampyre juvinate"
+ },
+ {
+ "id": "7420",
+ "name": "Hieronymus Avlafrim"
+ },
+ {
+ "id": "7421",
+ "name": "Sasquine Huburns"
+ },
+ {
+ "id": "7422",
+ "name": "Sasquine Huburns"
+ },
+ {
+ "id": "7423",
+ "name": "Lollery"
+ },
+ {
+ "id": "7424",
+ "name": "Wigglewoo"
+ },
+ {
+ "id": "7427",
+ "name": "Orangeowns"
+ },
+ {
+ "id": "7428",
+ "name": "I like m0m"
+ },
+ {
+ "id": "7429",
+ "name": "I like m0m"
+ },
+ {
+ "id": "7430",
+ "name": "Qutiedoll"
+ },
+ {
+ "id": "7431",
+ "name": "Goreu"
+ },
+ {
+ "id": "7432",
+ "name": "Ysgawyn"
+ },
+ {
+ "id": "7433",
+ "name": "Arvel"
+ },
+ {
+ "id": "7434",
+ "name": "Mawrth"
+ },
+ {
+ "id": "7435",
+ "name": "Kelyn"
+ },
+ {
+ "id": "7436",
+ "name": "Eoin"
+ },
+ {
+ "id": "7437",
+ "name": "Iona"
+ },
+ {
+ "id": "7442",
+ "name": "Arianwyn"
+ },
+ {
+ "id": "7444",
+ "name": "Oronwen"
+ },
+ {
+ "id": "7445",
+ "name": "Banker"
+ },
+ {
+ "id": "7446",
+ "name": "Banker"
+ },
+ {
+ "id": "7447",
+ "name": "Dalldav"
+ },
+ {
+ "id": "7448",
+ "name": "Gethin"
+ },
+ {
+ "id": "7449",
+ "name": "Amaethwr"
+ },
+ {
+ "id": "7450",
+ "name": "Teclyn"
+ },
+ {
+ "id": "7451",
+ "name": "Butterfly"
+ },
+ {
+ "id": "7452",
+ "name": "Lapsang"
+ },
+ {
+ "id": "7453",
+ "name": "Lapsang"
+ },
+ {
+ "id": "7454",
+ "name": "Souchong"
+ },
+ {
+ "id": "7455",
+ "name": "Souchong"
+ },
+ {
+ "id": "7456",
+ "name": "Earlgrey"
+ },
+ {
+ "id": "7457",
+ "name": "Earlgrey"
+ },
+ {
+ "id": "7458",
+ "name": "Fairtrade"
+ },
+ {
+ "id": "7464",
+ "name": "Sliceoflemon"
+ },
+ {
+ "id": "7465",
+ "name": "Sliceoflemon"
+ },
+ {
+ "id": "7466",
+ "name": "Milknosugar"
+ },
+ {
+ "id": "7467",
+ "name": "Milknosugar"
+ },
+ {
+ "id": "7468",
+ "name": "Randomdood"
+ },
+ {
+ "id": "7469",
+ "name": "Employedman"
+ },
+ {
+ "id": "7470",
+ "name": "Heidiggle"
+ },
+ {
+ "id": "7471",
+ "name": "Dodgy Penny"
+ },
+ {
+ "id": "7472",
+ "name": "Shadydude98"
+ },
+ {
+ "id": "7473",
+ "name": "Madam C"
+ },
+ {
+ "id": "7474",
+ "name": "M0m Online"
+ },
+ {
+ "id": "7478",
+ "name": "Learking"
+ },
+ {
+ "id": "7489",
+ "name": "Moglewee"
+ },
+ {
+ "id": "7490",
+ "name": "Moglewee"
+ },
+ {
+ "id": "7491",
+ "name": "Sarah Domin"
+ },
+ {
+ "id": "7498",
+ "name": "Snowy knight"
+ },
+ {
+ "id": "7499",
+ "name": "Sapphire glacialis"
+ },
+ {
+ "id": "7509",
+ "name": "Evil Wibbler"
+ },
+ {
+ "id": "7516",
+ "name": "Heresjohnny"
+ },
+ {
+ "id": "7517",
+ "name": "Mogglewump"
+ },
+ {
+ "id": "7521",
+ "name": "Renderorder"
+ },
+ {
+ "id": "7522",
+ "name": "Boolean"
+ },
+ {
+ "id": "7523",
+ "name": "Stress Diva"
+ },
+ {
+ "id": "7524",
+ "name": "Treadsoftly"
+ },
+ {
+ "id": "7525",
+ "name": "Helphelphelp"
+ },
+ {
+ "id": "7526",
+ "name": "Doorbellpl0x"
+ },
+ {
+ "id": "7527",
+ "name": "Fixmydoorup"
+ },
+ {
+ "id": "7529",
+ "name": "Wallscaler"
+ },
+ {
+ "id": "7530",
+ "name": "2scompany"
+ },
+ {
+ "id": "7531",
+ "name": "2scompany"
+ },
+ {
+ "id": "7533",
+ "name": "4sjustsilly"
+ },
+ {
+ "id": "7534",
+ "name": "Roadblocked"
+ },
+ {
+ "id": "7535",
+ "name": "Barricade"
+ },
+ {
+ "id": "7536",
+ "name": "Barricade"
+ },
+ {
+ "id": "7537",
+ "name": "Yoinker"
+ },
+ {
+ "id": "7538",
+ "name": "Yoinker"
+ },
+ {
+ "id": "7539",
+ "name": "Stopthief"
+ },
+ {
+ "id": "7540",
+ "name": "Stopthief"
+ },
+ {
+ "id": "7541",
+ "name": "Knickknack"
+ },
+ {
+ "id": "7542",
+ "name": "Paddywhack"
+ },
+ {
+ "id": "7543",
+ "name": "Giveadog"
+ },
+ {
+ "id": "7544",
+ "name": "Spacebadgers"
+ },
+ {
+ "id": "7545",
+ "name": "Freakypeaky"
+ },
+ {
+ "id": "7546",
+ "name": "Rollinghome"
+ },
+ {
+ "id": "7547",
+ "name": "Nullpointer"
+ },
+ {
+ "id": "7548",
+ "name": "Badgerfreak"
+ },
+ {
+ "id": "7549",
+ "name": "Windstrike32"
+ },
+ {
+ "id": "7550",
+ "name": "Void Knight"
+ },
+ {
+ "id": "7567",
+ "name": "Wraithboss"
+ },
+ {
+ "id": "7568",
+ "name": "What Goudron"
+ },
+ {
+ "id": "7574",
+ "name": "Lvzyoda"
+ },
+ {
+ "id": "7575",
+ "name": "Airstriker"
+ },
+ {
+ "id": "7576",
+ "name": "Droepedoff"
+ },
+ {
+ "id": "7577",
+ "name": "Plzpudding"
+ },
+ {
+ "id": "7578",
+ "name": "Assassin10"
+ },
+ {
+ "id": "7579",
+ "name": "Steallake"
+ },
+ {
+ "id": "7581",
+ "name": "Deepkiwi"
+ },
+ {
+ "id": "7584",
+ "name": "Bigface Oz"
+ },
+ {
+ "id": "7587",
+ "name": "Torcher"
+ },
+ {
+ "id": "7588",
+ "name": "Torcher"
+ },
+ {
+ "id": "7589",
+ "name": "Defiler"
+ },
+ {
+ "id": "7590",
+ "name": "Defiler"
+ },
+ {
+ "id": "7591",
+ "name": "Shifter"
+ },
+ {
+ "id": "7592",
+ "name": "Shifter"
+ },
+ {
+ "id": "7594",
+ "name": "Shifter"
+ },
+ {
+ "id": "7595",
+ "name": "Splatter"
+ },
+ {
+ "id": "7596",
+ "name": "Splatter"
+ },
+ {
+ "id": "7597",
+ "name": "Splatter"
+ },
+ {
+ "id": "7598",
+ "name": "Spinner"
+ },
+ {
+ "id": "7599",
+ "name": "Ravager"
+ },
+ {
+ "id": "7600",
+ "name": "Fiara"
+ },
+ {
+ "id": "7601",
+ "name": "Reggie"
+ },
+ {
+ "id": "7602",
+ "name": "Getorix"
+ },
+ {
+ "id": "7603",
+ "name": "Pontimer"
+ },
+ {
+ "id": "7604",
+ "name": "Alran"
+ },
+ {
+ "id": "7610",
+ "name": "Flying female vampire"
+ },
+ {
+ "id": "7611",
+ "name": "Flying female vampire"
+ },
+ {
+ "id": "7612",
+ "name": "Flying female vampire"
+ },
+ {
+ "id": "7613",
+ "name": "Flying female vampire"
+ },
+ {
+ "id": "7622",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7623",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7624",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7625",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7630",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7633",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7636",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7637",
+ "name": "Skeletal hand"
+ },
+ {
+ "id": "7652",
+ "name": "Zaromark Sliver"
+ },
+ {
+ "id": "7653",
+ "name": "Zaromark Sliver"
+ },
+ {
+ "id": "7662",
+ "name": "Fistandantilus"
+ },
+ {
+ "id": "7663",
+ "name": "Fistandantilus"
+ },
+ {
+ "id": "7664",
+ "name": "Mercenary Adventurer"
+ },
+ {
+ "id": "7665",
+ "name": "Ivan Strom"
+ },
+ {
+ "id": "7666",
+ "name": "Mysterious person"
+ },
+ {
+ "id": "7667",
+ "name": "Mysterious person"
+ },
+ {
+ "id": "7668",
+ "name": "Mysterious person"
+ },
+ {
+ "id": "7669",
+ "name": "Mysterious person"
+ },
+ {
+ "id": "7670",
+ "name": "Mysterious person"
+ },
+ {
+ "id": "7671",
+ "name": "Mysterious person"
+ },
+ {
+ "id": "7672",
+ "name": "Flaygian Screwte"
+ },
+ {
+ "id": "7673",
+ "name": "Mekritus A'hara"
+ },
+ {
+ "id": "7674",
+ "name": "Andiess Juip"
+ },
+ {
+ "id": "7675",
+ "name": "Kael Forshaw"
+ },
+ {
+ "id": "7676",
+ "name": "Andiess Juip"
+ },
+ {
+ "id": "7677",
+ "name": "Kael Forshaw"
+ },
+ {
+ "id": "7678",
+ "name": "Safalaan"
+ },
+ {
+ "id": "7679",
+ "name": "Andiess Juip"
+ },
+ {
+ "id": "7680",
+ "name": "Kael Forshaw"
+ },
+ {
+ "id": "7681",
+ "name": "Safalaan"
+ },
+ {
+ "id": "7684",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7685",
+ "name": "Vyrewatch"
+ },
+ {
+ "id": "7686",
+ "name": "Safalaan"
+ },
+ {
+ "id": "7687",
+ "name": "Spectral Vyrewatch"
+ },
+ {
+ "id": "7688",
+ "name": "Drezel"
+ },
+ {
+ "id": "7708",
+ "name": "Temple guardian"
+ },
+ {
+ "id": "7712",
+ "name": "Baby icefiend"
+ },
+ {
+ "id": "7718",
+ "name": "Brother Bordiss"
+ },
+ {
+ "id": "7719",
+ "name": "Brother Althric"
+ },
+ {
+ "id": "7720",
+ "name": "Drorkar"
+ },
+ {
+ "id": "7721",
+ "name": "Nurmof"
+ },
+ {
+ "id": "7722",
+ "name": "Lakki the delivery dwarf"
+ },
+ {
+ "id": "7723",
+ "name": "Drorkar"
+ },
+ {
+ "id": "7724",
+ "name": "Brother Bordiss"
+ },
+ {
+ "id": "7725",
+ "name": "Professor Arblenap"
+ },
+ {
+ "id": "7726",
+ "name": "Assistant"
+ },
+ {
+ "id": "7728",
+ "name": "Baby icefiend"
+ },
+ {
+ "id": "7737",
+ "name": "Will"
+ },
+ {
+ "id": "7738",
+ "name": "Will"
+ },
+ {
+ "id": "7739",
+ "name": "Phil"
+ },
+ {
+ "id": "7742",
+ "name": "Fluffs"
+ },
+ {
+ "id": "7743",
+ "name": "Fluffs"
+ },
+ {
+ "id": "7744",
+ "name": "Kittens"
+ },
+ {
+ "id": "7746",
+ "name": "TzHaar-Mej-Malk"
+ },
+ {
+ "id": "7748",
+ "name": "TzHaar-Hur-Frok"
+ },
+ {
+ "id": "7749",
+ "name": "TzHaar-Ket-Grol"
+ },
+ {
+ "id": "7750",
+ "name": "TzHaar-Ket-Rok"
+ },
+ {
+ "id": "7751",
+ "name": "TzHaar-Ket-Lurk"
+ },
+ {
+ "id": "7753",
+ "name": "TzHaar-Mej"
+ },
+ {
+ "id": "7754",
+ "name": "TzHaar-Hur"
+ },
+ {
+ "id": "7755",
+ "name": "TzHaar-Xil"
+ },
+ {
+ "id": "7757",
+ "name": "TzHaar-Hur-Brekt"
+ },
+ {
+ "id": "7758",
+ "name": "TzHaar-Hur-Brekt"
+ },
+ {
+ "id": "7759",
+ "name": "TzHaar-Ket-Jok"
+ },
+ {
+ "id": "7760",
+ "name": "TzHaar-Ket-Jok"
+ },
+ {
+ "id": "7761",
+ "name": "TzHaar-Xil-Mor"
+ },
+ {
+ "id": "7762",
+ "name": "TzHaar-Xil-Mor"
+ },
+ {
+ "id": "7763",
+ "name": "TzHaar-Mej-Kol"
+ },
+ {
+ "id": "7764",
+ "name": "TzHaar-Mej-Kol"
+ },
+ {
+ "id": "7765",
+ "name": "TzHaar-Hur-Klag"
+ },
+ {
+ "id": "7766",
+ "name": "TzHaar-Hur-Klag"
+ },
+ {
+ "id": "7770",
+ "name": "TokTz-Ket-Dill"
+ },
+ {
+ "id": "7771",
+ "name": "TokTz-Ket-Dill"
+ },
+ {
+ "id": "7774",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7775",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7776",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7777",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7778",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7779",
+ "name": "Sumona"
+ },
+ {
+ "id": "7781",
+ "name": "Jesmona"
+ },
+ {
+ "id": "7782",
+ "name": "Catolax"
+ },
+ {
+ "id": "7783",
+ "name": "Ali Cat"
+ },
+ {
+ "id": "7787",
+ "name": "Cave crawler"
+ },
+ {
+ "id": "7788",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7789",
+ "name": "Zombie"
+ },
+ {
+ "id": "7790",
+ "name": "Zombie"
+ },
+ {
+ "id": "7791",
+ "name": "Zombie"
+ },
+ {
+ "id": "7792",
+ "name": "Zombie"
+ },
+ {
+ "id": "7793",
+ "name": "Banshee mistress"
+ },
+ {
+ "id": "7794",
+ "name": "Banshee mistress"
+ },
+ {
+ "id": "7795",
+ "name": "Insectoid assassin"
+ },
+ {
+ "id": "7796",
+ "name": "Insectoid assassin"
+ },
+ {
+ "id": "7797",
+ "name": "Kurask overlord"
+ },
+ {
+ "id": "7798",
+ "name": "Monstrous cave crawler"
+ },
+ {
+ "id": "7799",
+ "name": "Basilisk boss"
+ },
+ {
+ "id": "7800",
+ "name": "Mightiest turoth"
+ },
+ {
+ "id": "7801",
+ "name": "Aberrant spectre"
+ },
+ {
+ "id": "7802",
+ "name": "Aberrant spectre"
+ },
+ {
+ "id": "7803",
+ "name": "Aberrant spectre"
+ },
+ {
+ "id": "7804",
+ "name": "Aberrant spectre"
+ },
+ {
+ "id": "7805",
+ "name": "Kurask minion"
+ },
+ {
+ "id": "7806",
+ "name": "Mummy warrior"
+ },
+ {
+ "id": "7807",
+ "name": "Mummy warrior"
+ },
+ {
+ "id": "7808",
+ "name": "Mummy warrior"
+ },
+ {
+ "id": "7809",
+ "name": "Cat"
+ },
+ {
+ "id": "7810",
+ "name": "Banshee"
+ },
+ {
+ "id": "7811",
+ "name": "Kurask"
+ },
+ {
+ "id": "7812",
+ "name": "Cave crawler"
+ },
+ {
+ "id": "7813",
+ "name": "Basilisk"
+ },
+ {
+ "id": "7814",
+ "name": "Turoth"
+ },
+ {
+ "id": "7815",
+ "name": "Skeleton"
+ },
+ {
+ "id": "7816",
+ "name": "Master"
+ },
+ {
+ "id": "7817",
+ "name": "Zombie"
+ },
+ {
+ "id": "7818",
+ "name": "Zombie"
+ },
+ {
+ "id": "7819",
+ "name": "Zombie"
+ },
+ {
+ "id": "7820",
+ "name": "Zombie"
+ },
+ {
+ "id": "7821",
+ "name": "A wanderer."
+ },
+ {
+ "id": "7822",
+ "name": "A wanderer."
+ },
+ {
+ "id": "7824",
+ "name": "Osman"
+ },
+ {
+ "id": "7825",
+ "name": "50 Ships Mufassah"
+ },
+ {
+ "id": "7826",
+ "name": "Karamthulhu"
+ },
+ {
+ "id": "7827",
+ "name": "Karamthulhu"
+ },
+ {
+ "id": "7828",
+ "name": "Giant lobster"
+ },
+ {
+ "id": "7829",
+ "name": "Giant crab"
+ },
+ {
+ "id": "7830",
+ "name": "Customs Sergeant"
+ },
+ {
+ "id": "7831",
+ "name": "Customs Sergeant"
+ },
+ {
+ "id": "7832",
+ "name": "Young Ralph"
+ },
+ {
+ "id": "7833",
+ "name": "Young Ralph"
+ },
+ {
+ "id": "7834",
+ "name": "Young Ralph"
+ },
+ {
+ "id": "7835",
+ "name": "Young Ralph"
+ },
+ {
+ "id": "7836",
+ "name": "Young Ralph"
+ },
+ {
+ "id": "7837",
+ "name": "Customs Officer"
+ },
+ {
+ "id": "7838",
+ "name": "Customs Officer"
+ },
+ {
+ "id": "7839",
+ "name": "Customs Officer"
+ },
+ {
+ "id": "7840",
+ "name": "Heavy-Handed Harry"
+ },
+ {
+ "id": "7841",
+ "name": "Player"
+ },
+ {
+ "id": "7842",
+ "name": "Locker Officer"
+ },
+ {
+ "id": "7843",
+ "name": "Locker Officer"
+ },
+ {
+ "id": "7844",
+ "name": "Ex-ex-parrot"
+ },
+ {
+ "id": "7845",
+ "name": "Pirate impling"
+ },
+ {
+ "id": "7846",
+ "name": "Pirate impling"
+ },
+ {
+ "id": "7847",
+ "name": "Captain Rabid Jack"
+ },
+ {
+ "id": "7848",
+ "name": "Jack"
+ },
+ {
+ "id": "7849",
+ "name": "Bosun Giles"
+ },
+ {
+ "id": "7850",
+ "name": "Pirate"
+ },
+ {
+ "id": "7851",
+ "name": "Lizzie"
+ },
+ {
+ "id": "7852",
+ "name": "Cap'n Izzy No-Beard"
+ },
+ {
+ "id": "7853",
+ "name": "Ralph"
+ },
+ {
+ "id": "7854",
+ "name": "Brass Hand Harry"
+ },
+ {
+ "id": "7855",
+ "name": "Bill Teach"
+ },
+ {
+ "id": "7856",
+ "name": "Pirate"
+ },
+ {
+ "id": "7857",
+ "name": "Brass Hand Harry"
+ },
+ {
+ "id": "7858",
+ "name": "Gull"
+ },
+ {
+ "id": "7861",
+ "name": "Jack"
+ },
+ {
+ "id": "7862",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7863",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7864",
+ "name": "Fishing spot"
+ },
+ {
+ "id": "7865",
+ "name": "Guardsman Dante"
+ },
+ {
+ "id": "7866",
+ "name": "Guardsman DeShawn"
+ },
+ {
+ "id": "7867",
+ "name": "Guardsman Brawn"
+ },
+ {
+ "id": "7868",
+ "name": "Iain"
+ },
+ {
+ "id": "7869",
+ "name": "Julian"
+ },
+ {
+ "id": "7870",
+ "name": "Lachtopher"
+ },
+ {
+ "id": "7871",
+ "name": "Samuel"
+ },
+ {
+ "id": "7872",
+ "name": "Victoria"
+ },
+ {
+ "id": "7873",
+ "name": "Man"
+ },
+ {
+ "id": "7874",
+ "name": "Man"
+ },
+ {
+ "id": "7875",
+ "name": "Man"
+ },
+ {
+ "id": "7876",
+ "name": "Man"
+ },
+ {
+ "id": "7877",
+ "name": "Man"
+ },
+ {
+ "id": "7878",
+ "name": "Man"
+ },
+ {
+ "id": "7879",
+ "name": "Man"
+ },
+ {
+ "id": "7880",
+ "name": "Woman"
+ },
+ {
+ "id": "7881",
+ "name": "Woman"
+ },
+ {
+ "id": "7882",
+ "name": "Woman"
+ },
+ {
+ "id": "7883",
+ "name": "Woman"
+ },
+ {
+ "id": "7884",
+ "name": "Woman"
+ },
+ {
+ "id": "7885",
+ "name": "Guardsman Dante"
+ },
+ {
+ "id": "7886",
+ "name": "Guardsman DeShawn"
+ },
+ {
+ "id": "7887",
+ "name": "Guardsman Brawn"
+ },
+ {
+ "id": "7888",
+ "name": "Sergeant Abram"
+ },
+ {
+ "id": "7889",
+ "name": "Guardsman Pazel"
+ },
+ {
+ "id": "7890",
+ "name": "Guardsman Peale"
+ },
+ {
+ "id": "7892",
+ "name": "General Wartface"
+ },
+ {
+ "id": "7893",
+ "name": "General Bentnoze"
+ },
+ {
+ "id": "7894",
+ "name": "General Wartface"
+ },
+ {
+ "id": "7896",
+ "name": "General Bentnoze"
+ },
+ {
+ "id": "7898",
+ "name": "Loar Shadow"
+ },
+ {
+ "id": "7901",
+ "name": "Loar Shadow"
+ },
+ {
+ "id": "7902",
+ "name": "Sergeant Abram"
+ },
+ {
+ "id": "7903",
+ "name": "Guardsman Pazel"
+ },
+ {
+ "id": "7904",
+ "name": "Guardsman Peale"
+ },
+ {
+ "id": "7905",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7906",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7907",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7908",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7909",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7910",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7911",
+ "name": "Barricade guard"
+ },
+ {
+ "id": "7912",
+ "name": "Border guard"
+ },
+ {
+ "id": "7913",
+ "name": "Iain"
+ },
+ {
+ "id": "7914",
+ "name": "Julian"
+ },
+ {
+ "id": "7915",
+ "name": "Lachtopher"
+ },
+ {
+ "id": "7916",
+ "name": "Samuel"
+ },
+ {
+ "id": "7917",
+ "name": "Victoria"
+ },
+ {
+ "id": "7918",
+ "name": "Man"
+ },
+ {
+ "id": "7919",
+ "name": "Man"
+ },
+ {
+ "id": "7920",
+ "name": "Man"
+ },
+ {
+ "id": "7921",
+ "name": "Man"
+ },
+ {
+ "id": "7922",
+ "name": "Man"
+ },
+ {
+ "id": "7923",
+ "name": "Man"
+ },
+ {
+ "id": "7924",
+ "name": "Man"
+ },
+ {
+ "id": "7925",
+ "name": "Woman"
+ },
+ {
+ "id": "7926",
+ "name": "Woman"
+ },
+ {
+ "id": "7927",
+ "name": "Woman"
+ },
+ {
+ "id": "7928",
+ "name": "Woman"
+ },
+ {
+ "id": "7929",
+ "name": "Lumbridge Guide"
+ },
+ {
+ "id": "7930",
+ "name": "Doomsayer"
+ },
+ {
+ "id": "7931",
+ "name": "Donie"
+ },
+ {
+ "id": "7932",
+ "name": "Gee"
+ },
+ {
+ "id": "7933",
+ "name": "Duke Horacio"
+ },
+ {
+ "id": "7934",
+ "name": "Sigmund"
+ },
+ {
+ "id": "7935",
+ "name": "Hans"
+ },
+ {
+ "id": "7936",
+ "name": "Cook"
+ },
+ {
+ "id": "7937",
+ "name": "Father Aereck"
+ },
+ {
+ "id": "7938",
+ "name": "Sir Vant"
+ },
+ {
+ "id": "7939",
+ "name": "Sir Vant"
+ },
+ {
+ "id": "7940",
+ "name": "Sir Vant"
+ },
+ {
+ "id": "7941",
+ "name": "Sir Vant"
+ },
+ {
+ "id": "7942",
+ "name": "Sir Vant"
+ },
+ {
+ "id": "7943",
+ "name": "Dragon"
+ },
+ {
+ "id": "7944",
+ "name": "Dragon"
+ },
+ {
+ "id": "7945",
+ "name": "Dragon"
+ },
+ {
+ "id": "7946",
+ "name": "Dragon"
+ },
+ {
+ "id": "7947",
+ "name": "Dragon"
+ },
+ {
+ "id": "7948",
+ "name": "Dragon"
+ },
+ {
+ "id": "7949",
+ "name": "Lumbridge Guide"
+ },
+ {
+ "id": "7950",
+ "name": "Melee Tutor"
+ },
+ {
+ "id": "7951",
+ "name": "Ranged Tutor"
+ },
+ {
+ "id": "7952",
+ "name": "Magic Tutor"
+ },
+ {
+ "id": "7953",
+ "name": "Cooking Tutor"
+ },
+ {
+ "id": "7954",
+ "name": "Crafting Tutor"
+ },
+ {
+ "id": "7955",
+ "name": "Fishing Tutor"
+ },
+ {
+ "id": "7956",
+ "name": "Mining Tutor"
+ },
+ {
+ "id": "7957",
+ "name": "Prayer Tutor"
+ },
+ {
+ "id": "7960",
+ "name": "Woodcutting Tutor"
+ },
+ {
+ "id": "7961",
+ "name": "Bank Tutor"
+ },
+ {
+ "id": "7962",
+ "name": "Gee"
+ },
+ {
+ "id": "7963",
+ "name": "Spirit"
+ },
+ {
+ "id": "7964",
+ "name": "Goblin"
+ },
+ {
+ "id": "7965",
+ "name": "Goblin"
+ },
+ {
+ "id": "7966",
+ "name": "Chaos druid"
+ },
+ {
+ "id": "7967",
+ "name": "Shopkeeper"
+ },
+ {
+ "id": "7968",
+ "name": "Explorer Jack"
+ },
+ {
+ "id": "7970",
+ "name": "Smithing Tutor"
+ },
+ {
+ "id": "7971",
+ "name": "Mining Tutor"
+ },
+ {
+ "id": "7972",
+ "name": "Spirit"
+ },
+ {
+ "id": "7977",
+ "name": "Spirit"
+ },
+ {
+ "id": "7978",
+ "name": "Spirit"
+ },
+ {
+ "id": "7979",
+ "name": "Spirit"
+ },
+ {
+ "id": "7980",
+ "name": "Spirit"
+ },
+ {
+ "id": "7981",
+ "name": "Spirit"
+ },
+ {
+ "id": "7982",
+ "name": "Spirit"
+ },
+ {
+ "id": "7983",
+ "name": "Spirit"
+ },
+ {
+ "id": "7984",
+ "name": "Spirit"
+ },
+ {
+ "id": "7985",
+ "name": "Summer Bonde"
+ },
+ {
+ "id": "7987",
+ "name": "Spirit"
+ },
+ {
+ "id": "7988",
+ "name": "Spirit"
+ },
+ {
+ "id": "7989",
+ "name": "Erik Bonde"
+ },
+ {
+ "id": "7990",
+ "name": "Spirit"
+ },
+ {
+ "id": "7991",
+ "name": "Jallek Lenkin"
+ },
+ {
+ "id": "7992",
+ "name": "Spirit"
+ },
+ {
+ "id": "7993",
+ "name": "Meranek Thanatos"
+ },
+ {
+ "id": "7994",
+ "name": "Ghostly warrior"
+ },
+ {
+ "id": "7995",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "7996",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "7997",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "7998",
+ "name": "Ghost"
+ },
+ {
+ "id": "7999",
+ "name": "Ghost"
+ },
+ {
+ "id": "8000",
+ "name": "Goth leprechaun"
+ },
+ {
+ "id": "8001",
+ "name": "Jack"
+ },
+ {
+ "id": "8003",
+ "name": "Sarah"
+ },
+ {
+ "id": "8004",
+ "name": "Laura"
+ },
+ {
+ "id": "8005",
+ "name": "Laura"
+ },
+ {
+ "id": "8006",
+ "name": "Roger"
+ },
+ {
+ "id": "8007",
+ "name": "Jorral"
+ },
+ {
+ "id": "8008",
+ "name": "Guthix"
+ },
+ {
+ "id": "8009",
+ "name": "Max the traveller"
+ },
+ {
+ "id": "8010",
+ "name": "Man"
+ },
+ {
+ "id": "8011",
+ "name": "Man"
+ },
+ {
+ "id": "8012",
+ "name": "Woman"
+ },
+ {
+ "id": "8013",
+ "name": "Woman"
+ },
+ {
+ "id": "8014",
+ "name": "Haluned"
+ },
+ {
+ "id": "8015",
+ "name": "Jack"
+ },
+ {
+ "id": "8016",
+ "name": "Baby Sarah"
+ },
+ {
+ "id": "8017",
+ "name": "Snowy"
+ },
+ {
+ "id": "8018",
+ "name": "Roger"
+ },
+ {
+ "id": "8019",
+ "name": "Portal"
+ },
+ {
+ "id": "8020",
+ "name": "Portal"
+ },
+ {
+ "id": "8021",
+ "name": "Yellow orb"
+ },
+ {
+ "id": "8023",
+ "name": "Yellow orb"
+ },
+ {
+ "id": "8024",
+ "name": "Yellow orb"
+ },
+ {
+ "id": "8025",
+ "name": "Green orb"
+ },
+ {
+ "id": "8027",
+ "name": "Green orb"
+ },
+ {
+ "id": "8028",
+ "name": "Green orb"
+ },
+ {
+ "id": "8029",
+ "name": "Wizard Korvak"
+ },
+ {
+ "id": "8030",
+ "name": "Wizard Vief"
+ },
+ {
+ "id": "8031",
+ "name": "Wizard Acantha"
+ },
+ {
+ "id": "8032",
+ "name": "Wizard Elriss"
+ },
+ {
+ "id": "8033",
+ "name": "Wizard"
+ },
+ {
+ "id": "8034",
+ "name": "Wizard"
+ },
+ {
+ "id": "8035",
+ "name": "Wizard"
+ },
+ {
+ "id": "8036",
+ "name": "Wizard"
+ },
+ {
+ "id": "8037",
+ "name": "Wizard"
+ },
+ {
+ "id": "8038",
+ "name": "Wizard"
+ },
+ {
+ "id": "8039",
+ "name": "Wizard"
+ },
+ {
+ "id": "8040",
+ "name": "Wizard"
+ },
+ {
+ "id": "8042",
+ "name": "Squire Fyre"
+ },
+ {
+ "id": "8043",
+ "name": "Squire Fyre"
+ },
+ {
+ "id": "8044",
+ "name": "Orry"
+ },
+ {
+ "id": "8045",
+ "name": "Orry"
+ },
+ {
+ "id": "8046",
+ "name": "Ube"
+ },
+ {
+ "id": "8047",
+ "name": "Ube"
+ },
+ {
+ "id": "8048",
+ "name": "Waldo"
+ },
+ {
+ "id": "8049",
+ "name": "Waldo"
+ },
+ {
+ "id": "8050",
+ "name": "Gjalp"
+ },
+ {
+ "id": "8051",
+ "name": "Gjalp"
+ },
+ {
+ "id": "8052",
+ "name": "Brother Fintan"
+ },
+ {
+ "id": "8053",
+ "name": "Brother Fintan"
+ },
+ {
+ "id": "8054",
+ "name": "Stubthumb"
+ },
+ {
+ "id": "8055",
+ "name": "Stubthumb"
+ },
+ {
+ "id": "8056",
+ "name": "Stubthumb"
+ },
+ {
+ "id": "8057",
+ "name": "Doronbol"
+ },
+ {
+ "id": "8058",
+ "name": "Doronbol"
+ },
+ {
+ "id": "8059",
+ "name": "Crate"
+ },
+ {
+ "id": "8060",
+ "name": "Crate"
+ },
+ {
+ "id": "8061",
+ "name": "Egg"
+ },
+ {
+ "id": "8062",
+ "name": "Egg"
+ },
+ {
+ "id": "8063",
+ "name": "Nanuq"
+ },
+ {
+ "id": "8064",
+ "name": "Nanuq"
+ },
+ {
+ "id": "8065",
+ "name": "Pumpkin"
+ },
+ {
+ "id": "8078",
+ "name": "Maggie"
+ },
+ {
+ "id": "8079",
+ "name": "Circus barker"
+ },
+ {
+ "id": "8080",
+ "name": "Circus barker"
+ },
+ {
+ "id": "8081",
+ "name": "Circus barker"
+ },
+ {
+ "id": "8082",
+ "name": "Agility assistant"
+ },
+ {
+ "id": "8083",
+ "name": "Magic assistant"
+ },
+ {
+ "id": "8084",
+ "name": "Ranged assistant"
+ },
+ {
+ "id": "8085",
+ "name": "Ringmaster"
+ },
+ {
+ "id": "8086",
+ "name": "Audience"
+ },
+ {
+ "id": "8087",
+ "name": "Audience"
+ },
+ {
+ "id": "8088",
+ "name": "Ticket vendor"
+ },
+ {
+ "id": "8089",
+ "name": "Rock"
+ },
+ {
+ "id": "8091",
+ "name": "Star sprite"
+ },
+ {
+ "id": "8092",
+ "name": "Shooting star shadow"
+ },
+ {
+ "id": "8093",
+ "name": "Penguin"
+ },
+ {
+ "id": "8094",
+ "name": "Penguin"
+ },
+ {
+ "id": "8095",
+ "name": "Penguin"
+ },
+ {
+ "id": "8096",
+ "name": "Penguin"
+ },
+ {
+ "id": "8097",
+ "name": "Penguin"
+ },
+ {
+ "id": "8098",
+ "name": "Penguin"
+ },
+ {
+ "id": "8099",
+ "name": "Penguin"
+ },
+ {
+ "id": "8100",
+ "name": "Penguin"
+ },
+ {
+ "id": "8101",
+ "name": "Penguin"
+ },
+ {
+ "id": "8102",
+ "name": "Penguin"
+ },
+ {
+ "id": "8103",
+ "name": "Penguin"
+ },
+ {
+ "id": "8104",
+ "name": "Barrel"
+ },
+ {
+ "id": "8105",
+ "name": "Bush"
+ },
+ {
+ "id": "8106",
+ "name": "Bush"
+ },
+ {
+ "id": "8107",
+ "name": "Cactus"
+ },
+ {
+ "id": "8108",
+ "name": "Crate"
+ },
+ {
+ "id": "8109",
+ "name": "Rock"
+ },
+ {
+ "id": "8110",
+ "name": "Toadstool"
+ },
+ {
+ "id": "8111",
+ "name": "Calladin"
+ },
+ {
+ "id": "8112",
+ "name": "Summer Bonde"
+ },
+ {
+ "id": "8114",
+ "name": "Summer Bonde"
+ },
+ {
+ "id": "8115",
+ "name": "Erik Bonde"
+ },
+ {
+ "id": "8116",
+ "name": "Erik Bonde"
+ },
+ {
+ "id": "8117",
+ "name": "Jallek Lenkin"
+ },
+ {
+ "id": "8118",
+ "name": "Jallek Lenkin"
+ },
+ {
+ "id": "8119",
+ "name": "Meranek Thanatos"
+ },
+ {
+ "id": "8120",
+ "name": "Meranek Thanatos"
+ },
+ {
+ "id": "8121",
+ "name": "Spirit"
+ },
+ {
+ "id": "8122",
+ "name": "Rogue"
+ },
+ {
+ "id": "8123",
+ "name": "Tormented wraith"
+ },
+ {
+ "id": "8126",
+ "name": "Dark energy core"
+ },
+ {
+ "id": "8127",
+ "name": "Dark energy core"
+ },
+ {
+ "id": "8128",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "8129",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "8130",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "8131",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "8132",
+ "name": "Spirit Beast"
+ },
+ {
+ "id": "8134",
+ "name": "Spirit"
+ },
+ {
+ "id": "8135",
+ "name": "Summer Bonde"
+ },
+ {
+ "id": "8136",
+ "name": "Erik Bonde"
+ },
+ {
+ "id": "8137",
+ "name": "Jallek Lenkin"
+ },
+ {
+ "id": "8138",
+ "name": "Meranek Thanatos"
+ },
+ {
+ "id": "8139",
+ "name": "Hartwin"
+ },
+ {
+ "id": "8140",
+ "name": "Hartwin"
+ },
+ {
+ "id": "8141",
+ "name": "Zombie"
+ },
+ {
+ "id": "8143",
+ "name": "Zombie"
+ },
+ {
+ "id": "8144",
+ "name": "Zombie"
+ },
+ {
+ "id": "8145",
+ "name": "Zombie"
+ },
+ {
+ "id": "8146",
+ "name": "Zemouregal"
+ },
+ {
+ "id": "8147",
+ "name": "Zemouregal"
+ },
+ {
+ "id": "8152",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8153",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8154",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8155",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8156",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8157",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8158",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8159",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8160",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8161",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8162",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8163",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8164",
+ "name": "Armoured zombie"
+ },
+ {
+ "id": "8165",
+ "name": "Sharathteerk"
+ },
+ {
+ "id": "8166",
+ "name": "Sharathteerk"
+ },
+ {
+ "id": "8168",
+ "name": "Arrav"
+ },
+ {
+ "id": "8169",
+ "name": "Arrav"
+ },
+ {
+ "id": "8170",
+ "name": "Ramarno"
+ },
+ {
+ "id": "8171",
+ "name": "Dimintheis"
+ },
+ {
+ "id": "8172",
+ "name": "Dimintheis"
+ },
+ {
+ "id": "8173",
+ "name": "Guard"
+ },
+ {
+ "id": "8174",
+ "name": "Clive"
+ },
+ {
+ "id": "8175",
+ "name": "Ellamaria"
+ },
+ {
+ "id": "8176",
+ "name": "Fish"
+ },
+ {
+ "id": "8177",
+ "name": "Fish"
+ },
+ {
+ "id": "8178",
+ "name": "Monk of Zamorak"
+ },
+ {
+ "id": "8179",
+ "name": "Ellamaria"
+ },
+ {
+ "id": "8180",
+ "name": "Traiborn"
+ },
+ {
+ "id": "8181",
+ "name": "Fenkenstrain's Monster"
+ },
+ {
+ "id": "8182",
+ "name": "Wise Old Man"
+ },
+ {
+ "id": "8183",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8186",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8187",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8188",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8189",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8190",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8191",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8192",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8193",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8194",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8195",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8196",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8197",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8198",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8199",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8200",
+ "name": "Acrobat"
+ },
+ {
+ "id": "8201",
+ "name": "Wendy"
+ },
+ {
+ "id": "8202",
+ "name": "Trogs"
+ },
+ {
+ "id": "8203",
+ "name": "Norman"
+ },
+ {
+ "id": "8204",
+ "name": "Babe"
+ },
+ {
+ "id": "8205",
+ "name": "Gus"
+ },
+ {
+ "id": "8206",
+ "name": "Lottie"
+ },
+ {
+ "id": "8207",
+ "name": "Aggie"
+ },
+ {
+ "id": "8208",
+ "name": "Bat"
+ },
+ {
+ "id": "8209",
+ "name": "Rat"
+ },
+ {
+ "id": "8210",
+ "name": "Lizard"
+ },
+ {
+ "id": "8211",
+ "name": "Blackbird"
+ },
+ {
+ "id": "8212",
+ "name": "Spider"
+ },
+ {
+ "id": "8213",
+ "name": "Snail"
+ },
+ {
+ "id": "8214",
+ "name": "Cat"
+ },
+ {
+ "id": "8215",
+ "name": "Lazy cat"
+ },
+ {
+ "id": "8216",
+ "name": "Overgrown cat"
+ },
+ {
+ "id": "8217",
+ "name": "Kitten"
+ },
+ {
+ "id": "8218",
+ "name": "Wily cat"
+ },
+ {
+ "id": "8219",
+ "name": "Guardian of Armadyl"
+ },
+ {
+ "id": "8227",
+ "name": "Head mystic"
+ },
+ {
+ "id": "8228",
+ "name": "Rewards mystic"
+ },
+ {
+ "id": "8229",
+ "name": "Mystic"
+ },
+ {
+ "id": "8230",
+ "name": "Mystic"
+ },
+ {
+ "id": "8231",
+ "name": "Mystic"
+ },
+ {
+ "id": "8232",
+ "name": "Mystic"
+ },
+ {
+ "id": "8233",
+ "name": "Mystic"
+ },
+ {
+ "id": "8234",
+ "name": "Mystic"
+ },
+ {
+ "id": "8235",
+ "name": "Mystic"
+ },
+ {
+ "id": "8236",
+ "name": "Mystic"
+ },
+ {
+ "id": "8237",
+ "name": "Mystic"
+ },
+ {
+ "id": "8238",
+ "name": "Mystic"
+ },
+ {
+ "id": "8239",
+ "name": "Head mystic"
+ },
+ {
+ "id": "8240",
+ "name": "Clay familiar (class 1)"
+ },
+ {
+ "id": "8241",
+ "name": "Clay familiar (class 1)"
+ },
+ {
+ "id": "8242",
+ "name": "Clay familiar (class 2)"
+ },
+ {
+ "id": "8243",
+ "name": "Clay familiar (class 2)"
+ },
+ {
+ "id": "8244",
+ "name": "Clay familiar (class 3)"
+ },
+ {
+ "id": "8245",
+ "name": "Clay familiar (class 3)"
+ },
+ {
+ "id": "8246",
+ "name": "Clay familiar (class 4)"
+ },
+ {
+ "id": "8247",
+ "name": "Clay familiar (class 4)"
+ },
+ {
+ "id": "8248",
+ "name": "Clay familiar (class 5)"
+ },
+ {
+ "id": "8249",
+ "name": "Clay familiar (class 5)"
+ },
+ {
+ "id": "8250",
+ "name": "Grindxplox"
+ },
+ {
+ "id": "8251",
+ "name": "Grindxplox"
+ },
+ {
+ "id": "8252",
+ "name": "Stealing Creation team"
+ },
+ {
+ "id": "8253",
+ "name": "Resource NPC"
+ },
+ {
+ "id": "8254",
+ "name": "Game NPC"
+ },
+ {
+ "id": "8255",
+ "name": "Resource NPC"
+ },
+ {
+ "id": "8257",
+ "name": "Harrallak Menarous"
+ },
+ {
+ "id": "8269",
+ "name": "Yadech Strongarm"
+ },
+ {
+ "id": "8271",
+ "name": "Turael"
+ },
+ {
+ "id": "8274",
+ "name": "Mazchna"
+ },
+ {
+ "id": "8275",
+ "name": "Duradel"
+ },
+ {
+ "id": "8276",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "8280",
+ "name": "Sloane"
+ },
+ {
+ "id": "8281",
+ "name": "Balance Elemental"
+ },
+ {
+ "id": "8282",
+ "name": "Balance Elemental"
+ },
+ {
+ "id": "8283",
+ "name": "Balance Elemental"
+ },
+ {
+ "id": "8284",
+ "name": "Balance Elemental"
+ },
+ {
+ "id": "8285",
+ "name": "Balance Elemental"
+ },
+ {
+ "id": "8286",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8287",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8288",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8289",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8290",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8291",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8292",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8293",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8294",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8295",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8296",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8297",
+ "name": "Undead hero"
+ },
+ {
+ "id": "8298",
+ "name": "Stone block"
+ },
+ {
+ "id": "8299",
+ "name": "Harrallak Menarous"
+ },
+ {
+ "id": "8300",
+ "name": "Harrallak Menarous"
+ },
+ {
+ "id": "8301",
+ "name": "Harrallak Menarous"
+ },
+ {
+ "id": "8302",
+ "name": "Turael"
+ },
+ {
+ "id": "8303",
+ "name": "Turael"
+ },
+ {
+ "id": "8304",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "8305",
+ "name": "Cyrisus"
+ },
+ {
+ "id": "8306",
+ "name": "Ghommal"
+ },
+ {
+ "id": "8307",
+ "name": "Mazchna"
+ },
+ {
+ "id": "8308",
+ "name": "Mazchna"
+ },
+ {
+ "id": "8309",
+ "name": "Mazchna"
+ },
+ {
+ "id": "8310",
+ "name": "Duradel"
+ },
+ {
+ "id": "8311",
+ "name": "Sloane"
+ },
+ {
+ "id": "8317",
+ "name": "Elite Dark Ranger"
+ },
+ {
+ "id": "8318",
+ "name": "Elite Dark Ranger"
+ },
+ {
+ "id": "8319",
+ "name": "Elite Dark Ranger"
+ },
+ {
+ "id": "8320",
+ "name": "Elite Dark Mage"
+ },
+ {
+ "id": "8321",
+ "name": "Elite Dark Mage"
+ },
+ {
+ "id": "8322",
+ "name": "Elite Dark Mage"
+ },
+ {
+ "id": "8323",
+ "name": "Elite Dark Mage"
+ },
+ {
+ "id": "8324",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8325",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8326",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8327",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8328",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8329",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8330",
+ "name": "Elite Black Knight"
+ },
+ {
+ "id": "8331",
+ "name": "Guardian of Armadyl"
+ },
+ {
+ "id": "8332",
+ "name": "Guardian of Armadyl"
+ },
+ {
+ "id": "8333",
+ "name": "Guardian of Armadyl"
+ },
+ {
+ "id": "8334",
+ "name": "Mercenary axeman"
+ },
+ {
+ "id": "8335",
+ "name": "Mercenary mage"
+ },
+ {
+ "id": "8336",
+ "name": "Idria"
+ },
+ {
+ "id": "8337",
+ "name": "Idria"
+ },
+ {
+ "id": "8338",
+ "name": "Akrisae"
+ },
+ {
+ "id": "8339",
+ "name": "Shady stranger"
+ },
+ {
+ "id": "8340",
+ "name": "Shady stranger"
+ },
+ {
+ "id": "8341",
+ "name": "Shady stranger"
+ },
+ {
+ "id": "8342",
+ "name": "Guardian of Armadyl"
+ },
+ {
+ "id": "8344",
+ "name": "Guardian of Armadyl"
+ },
+ {
+ "id": "8345",
+ "name": "Local thug"
+ },
+ {
+ "id": "8347",
+ "name": "Local mage"
+ },
+ {
+ "id": "8367",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8378",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8379",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8380",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8381",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8382",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8383",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8384",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8385",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8386",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8387",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8388",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8389",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8390",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8391",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8392",
+ "name": "Undead troll"
+ },
+ {
+ "id": "8393",
+ "name": "Vasador"
+ },
+ {
+ "id": "8394",
+ "name": "Valator"
+ },
+ {
+ "id": "8395",
+ "name": "Vaasdor"
+ },
+ {
+ "id": "8396",
+ "name": "Varosad"
+ },
+ {
+ "id": "8397",
+ "name": "Verisad"
+ },
+ {
+ "id": "8398",
+ "name": "Vudisor"
+ },
+ {
+ "id": "8399",
+ "name": "Vlatoad"
+ },
+ {
+ "id": "8400",
+ "name": "Vedolas"
+ },
+ {
+ "id": "8401",
+ "name": "Vundiar"
+ },
+ {
+ "id": "8402",
+ "name": "Versita"
+ },
+ {
+ "id": "8403",
+ "name": "Vislota"
+ },
+ {
+ "id": "8404",
+ "name": "Vanjuta"
+ },
+ {
+ "id": "8405",
+ "name": "Vasador"
+ },
+ {
+ "id": "8406",
+ "name": "Valator"
+ },
+ {
+ "id": "8407",
+ "name": "Vaasdor"
+ },
+ {
+ "id": "8408",
+ "name": "Varosad"
+ },
+ {
+ "id": "8409",
+ "name": "Verisad"
+ },
+ {
+ "id": "8410",
+ "name": "Vudisor"
+ },
+ {
+ "id": "8411",
+ "name": "Vlatoad"
+ },
+ {
+ "id": "8412",
+ "name": "Vedolas"
+ },
+ {
+ "id": "8413",
+ "name": "Vundiar"
+ },
+ {
+ "id": "8414",
+ "name": "Versita"
+ },
+ {
+ "id": "8415",
+ "name": "Vislota"
+ },
+ {
+ "id": "8416",
+ "name": "Vanjuta"
+ },
+ {
+ "id": "8417",
+ "name": "Ivy Sophista"
+ },
+ {
+ "id": "8418",
+ "name": "Thaerisk Cemphier"
+ },
+ {
+ "id": "8419",
+ "name": "Thaerisk Cemphier"
+ },
+ {
+ "id": "8420",
+ "name": "Assassin"
+ },
+ {
+ "id": "8423",
+ "name": "Assassin"
+ },
+ {
+ "id": "8424",
+ "name": "Mithril dragon"
+ },
+ {
+ "id": "8425",
+ "name": "Dragon head"
+ },
+ {
+ "id": "8426",
+ "name": "Dragon head"
+ },
+ {
+ "id": "8427",
+ "name": "Dragon head"
+ },
+ {
+ "id": "8428",
+ "name": "Khazard launderer"
+ },
+ {
+ "id": "8429",
+ "name": "Khazard cook"
+ },
+ {
+ "id": "8430",
+ "name": "Silif"
+ },
+ {
+ "id": "8431",
+ "name": "Silif"
+ },
+ {
+ "id": "8432",
+ "name": "Silif"
+ },
+ {
+ "id": "8433",
+ "name": "Silif"
+ },
+ {
+ "id": "8434",
+ "name": "Silif"
+ },
+ {
+ "id": "8435",
+ "name": "Shady stranger"
+ },
+ {
+ "id": "8436",
+ "name": "Suspicious outsider"
+ },
+ {
+ "id": "8437",
+ "name": "Elite Khazard guard"
+ },
+ {
+ "id": "8438",
+ "name": "Elite Khazard guard"
+ },
+ {
+ "id": "8439",
+ "name": "Elite Khazard guard"
+ },
+ {
+ "id": "8440",
+ "name": "Elite Khazard guard"
+ },
+ {
+ "id": "8441",
+ "name": "Dark Squall"
+ },
+ {
+ "id": "8442",
+ "name": "Surok Magis"
+ },
+ {
+ "id": "8443",
+ "name": "Lucien"
+ },
+ {
+ "id": "8444",
+ "name": "Druid"
+ },
+ {
+ "id": "8445",
+ "name": "Druid"
+ },
+ {
+ "id": "8446",
+ "name": "Druid"
+ },
+ {
+ "id": "8447",
+ "name": "Druid bodyguard"
+ },
+ {
+ "id": "8448",
+ "name": "Druid bodyguard"
+ },
+ {
+ "id": "8449",
+ "name": "Movario"
+ },
+ {
+ "id": "8450",
+ "name": "Darve"
+ },
+ {
+ "id": "8451",
+ "name": "Cave goblin"
+ },
+ {
+ "id": "8452",
+ "name": "Movario"
+ },
+ {
+ "id": "8453",
+ "name": "Darve"
+ },
+ {
+ "id": "8454",
+ "name": "Light creature"
+ },
+ {
+ "id": "8455",
+ "name": "Light creature"
+ },
+ {
+ "id": "8456",
+ "name": "Druid spirit"
+ },
+ {
+ "id": "8457",
+ "name": "Druid spirit"
+ },
+ {
+ "id": "8458",
+ "name": "Druid spirit"
+ },
+ {
+ "id": "8459",
+ "name": "Druid spirit"
+ },
+ {
+ "id": "8460",
+ "name": "Turael"
+ },
+ {
+ "id": "8462",
+ "name": "Spria"
+ },
+ {
+ "id": "8463",
+ "name": "Mazchna"
+ },
+ {
+ "id": "8464",
+ "name": "Mazchna"
+ },
+ {
+ "id": "8465",
+ "name": "Achtryn"
+ },
+ {
+ "id": "8466",
+ "name": "Duradel"
+ },
+ {
+ "id": "8467",
+ "name": "Lapalok"
+ },
+ {
+ "id": "8468",
+ "name": "Laidee Gnonock"
+ },
+ {
+ "id": "8485",
+ "name": "Hazelmere"
+ },
+ {
+ "id": "8486",
+ "name": "Undead mage"
+ },
+ {
+ "id": "8487",
+ "name": "Wild broav"
+ },
+ {
+ "id": "8488",
+ "name": "Hazelmere"
+ },
+ {
+ "id": "8490",
+ "name": "Hazelmere"
+ },
+ {
+ "id": "8491",
+ "name": "Broav"
+ },
+ {
+ "id": "8492",
+ "name": "Sithaph"
+ },
+ {
+ "id": "8494",
+ "name": "Strisath"
+ },
+ {
+ "id": "8495",
+ "name": "Sakirth"
+ },
+ {
+ "id": "8496",
+ "name": "Hazelmere's hat"
+ },
+ {
+ "id": "8497",
+ "name": "Lucien"
+ },
+ {
+ "id": "8498",
+ "name": "A lazy Khazard guard"
+ },
+ {
+ "id": "8499",
+ "name": "Thanksgiving Turkey"
+ },
+ {
+ "id": "8500",
+ "name": "Cook's brother"
+ },
+ {
+ "id": "8501",
+ "name": "Turkey"
+ },
+ {
+ "id": "8502",
+ "name": "Cactus"
+ },
+ {
+ "id": "8503",
+ "name": "Cactus"
+ },
+ {
+ "id": "8504",
+ "name": "Bush"
+ },
+ {
+ "id": "8505",
+ "name": "Toadstool"
+ },
+ {
+ "id": "8506",
+ "name": "Barrel"
+ },
+ {
+ "id": "8507",
+ "name": "Bush"
+ },
+ {
+ "id": "8508",
+ "name": "Crate"
+ },
+ {
+ "id": "8509",
+ "name": "Bush"
+ },
+ {
+ "id": "8510",
+ "name": "Rock"
+ },
+ {
+ "id": "8511",
+ "name": "Bush"
+ },
+ {
+ "id": "8512",
+ "name": "Marvin"
+ },
+ {
+ "id": "8513",
+ "name": "Marius"
+ },
+ {
+ "id": "8514",
+ "name": "Benny"
+ },
+ {
+ "id": "8515",
+ "name": "Yeti"
+ },
+ {
+ "id": "8516",
+ "name": "Yeti"
+ },
+ {
+ "id": "8517",
+ "name": "Jack Frost"
+ },
+ {
+ "id": "8518",
+ "name": "Jack Frost"
+ },
+ {
+ "id": "8519",
+ "name": "Jack Frost"
+ },
+ {
+ "id": "8520",
+ "name": "Jack Frost"
+ },
+ {
+ "id": "8521",
+ "name": "Snow imp"
+ },
+ {
+ "id": "8537",
+ "name": "Snow imp"
+ },
+ {
+ "id": "8538",
+ "name": "Snow imp"
+ },
+ {
+ "id": "8539",
+ "name": "Queen of Snow"
+ },
+ {
+ "id": "8540",
+ "name": "Santa Claus"
+ },
+ {
+ "id": "8541",
+ "name": "Head snow imp"
+ },
+ {
+ "id": "8542",
+ "name": "Head snow imp"
+ },
+ {
+ "id": "8543",
+ "name": "Head snow imp"
+ },
+ {
+ "id": "8544",
+ "name": "Isidor"
+ },
+ {
+ "id": "8545",
+ "name": "Mystic"
+ },
+ {
+ "id": "8546",
+ "name": "Balance Elemental"
+ },
+ {
+ "id": "8547",
+ "name": "Wounded phoenix"
+ },
+ {
+ "id": "8548",
+ "name": "Phoenix"
+ },
+ {
+ "id": "8549",
+ "name": "Phoenix"
+ },
+ {
+ "id": "8550",
+ "name": "Phoenix eggling"
+ },
+ {
+ "id": "8551",
+ "name": "Phoenix eggling"
+ },
+ {
+ "id": "8552",
+ "name": "Large egg"
+ },
+ {
+ "id": "8553",
+ "name": "Priest of Guthix"
+ },
+ {
+ "id": "8556",
+ "name": "Brian Twitcher"
+ },
+ {
+ "id": "8557",
+ "name": "Lesser reborn warrior"
+ },
+ {
+ "id": "8558",
+ "name": "Lesser reborn warrior"
+ },
+ {
+ "id": "8559",
+ "name": "Greater reborn warrior"
+ },
+ {
+ "id": "8560",
+ "name": "Greater reborn warrior"
+ },
+ {
+ "id": "8561",
+ "name": "Lesser reborn ranger"
+ },
+ {
+ "id": "8562",
+ "name": "Lesser reborn ranger"
+ },
+ {
+ "id": "8563",
+ "name": "Greater reborn ranger"
+ },
+ {
+ "id": "8564",
+ "name": "Greater reborn ranger"
+ },
+ {
+ "id": "8565",
+ "name": "Lesser reborn mage"
+ },
+ {
+ "id": "8566",
+ "name": "Lesser reborn mage"
+ },
+ {
+ "id": "8567",
+ "name": "Greater reborn mage"
+ },
+ {
+ "id": "8568",
+ "name": "Greater reborn mage"
+ },
+ {
+ "id": "8569",
+ "name": "Lesser reborn warrior"
+ },
+ {
+ "id": "8570",
+ "name": "Greater reborn warrior"
+ },
+ {
+ "id": "8571",
+ "name": "Lesser reborn ranger"
+ },
+ {
+ "id": "8572",
+ "name": "Greater reborn ranger"
+ },
+ {
+ "id": "8573",
+ "name": "Lesser reborn mage"
+ },
+ {
+ "id": "8574",
+ "name": "Greater reborn mage"
+ },
+ {
+ "id": "8575",
+ "name": "Phoenix"
+ },
+ {
+ "id": "8576",
+ "name": "Phoenix"
+ },
+ {
+ "id": "8577",
+ "name": "Phoenix eggling"
+ },
+ {
+ "id": "8578",
+ "name": "Phoenix eggling"
+ },
+ {
+ "id": "8579",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8581",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8582",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8583",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8584",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8585",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8586",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8587",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8588",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8589",
+ "name": "Karma the chameleon"
+ },
+ {
+ "id": "8590",
+ "name": "Geoffrey"
+ },
+ {
+ "examine": "Ooh, shiny things!",
+ "name": "Magpie Impling",
+ "id": "1035"
+ },
+ {
+ "examine": "An earth impling. Rock on.",
+ "name": "Earth Impling",
+ "id": "1031"
+ },
+ {
+ "examine": "A baby impling. Ahhh.",
+ "name": "Baby Impling",
+ "id": "1028"
+ },
+ {
+ "examine": "A young impling. It's not fair!",
+ "name": "Young Impling",
+ "id": "1029"
+ },
+ {
+ "examine": "An impling gourmet. Mmmm, tasty.",
+ "name": "Gourmet Impling",
+ "id": "1030"
+ },
+ {
+ "examine": "An impling who likes magic. Magic!",
+ "name": "Essence Impling",
+ "id": "1032"
+ },
+ {
+ "examine": "Dodgy Mike.",
+ "name": "Mike",
+ "id": "3166"
+ },
+ {
+ "examine": "An impling with varied tastes.",
+ "name": "Eclectic Impling",
+ "id": "1033"
+ },
+ {
+ "examine": "He seems to be making odd sucking noises with his teeth.",
+ "name": "Leon",
+ "id": "5111"
+ },
+ {
+ "examine": "A very stealthy impling.",
+ "name": "Ninja Impling",
+ "id": "6053"
+ },
+ {
+ "examine": "A rare bird.",
+ "name": "Black Swan",
+ "water_npc": "true",
+ "id": "3297"
+ },
+ {
+ "examine": "A nature impling. Right on, maaan.",
+ "name": "Nature Impling",
+ "id": "1034"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "death_animation": "836",
+ "name": "Mourner (boss)",
+ "defence_level": "10",
+ "lifepoints": "19",
+ "melee_animation": "428",
+ "attack_speed": "4",
+ "strength_level": "10",
+ "id": "370",
+ "bonuses": "0,0,0,0,0,3,2,4,0,0,0,0,0,0,0",
+ "attack_level": "10"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "717"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "718"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "719"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "3216"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "death_animation": "836",
+ "name": "Mourner",
+ "defence_level": "14",
+ "melee_animation": "428",
+ "lifepoints": "24",
+ "attack_speed": "4",
+ "strength_level": "14",
+ "id": "357",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "attack_level": "14"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "death_animation": "836",
+ "name": "Mourner",
+ "defence_level": "19",
+ "melee_animation": "422",
+ "lifepoints": "30",
+ "attack_speed": "4",
+ "strength_level": "19",
+ "id": "348",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "attack_level": "19"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "death_animation": "836",
+ "name": "Mourner",
+ "defence_level": "19",
+ "melee_animation": "422",
+ "lifepoints": "30",
+ "attack_speed": "4",
+ "strength_level": "19",
+ "id": "369",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "attack_level": "19"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "death_animation": "836",
+ "name": "Mourner",
+ "defence_level": "8",
+ "lifepoints": "18",
+ "melee_animation": "428",
+ "strength_level": "8",
+ "attack_speed": "4",
+ "id": "347",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "attack_level": "8"
+ },
+ {
+ "examine": "A Mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "2374"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "372"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "death_animation": "836",
+ "name": "Mourner",
+ "defence_level": "8",
+ "lifepoints": "20",
+ "melee_animation": "422",
+ "attack_speed": "4",
+ "strength_level": "8",
+ "id": "371",
+ "bonuses": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
+ "attack_level": "8"
+ },
+ {
+ "examine": "In charge of people with silly outfits.",
+ "name": "Head Mourner",
+ "id": "716"
+ },
+ {
+ "examine": "A mourner, or plague healer.",
+ "name": "Mourner",
+ "id": "2784"
+ },
+ {
+ "examine": "She looks concerned.",
+ "name": "Elena",
+ "id": "3215"
+ },
+ {
+ "examine": "She looks concerned.",
+ "name": "Elena",
+ "id": "715"
+ },
+ {
+ "examine": "She doesn't look too happy.",
+ "name": "Elena",
+ "id": "3209"
+ },
+ {
+ "name": "Elena",
+ "id": "335",
+ "examine": "She doesn't look too happy."
+ },
+ {
+ "examine": "Use 1344 to change me",
+ "name": "Skippy Varbit",
+ "id": "2795"
+ },
+ {
+ "examine": "He looks angry and smells drunk.",
+ "name": "Skippy",
+ "id": "2796"
+ },
+ {
+ "name": "Skippy",
+ "id": "2797",
+ "examine": "Skippy, just looking a little 'tender'."
+ },
+ {
+ "name": "Skippy",
+ "id": "2798",
+ "examine": "He seems a lot less angry and smells a great deal fresher."
+ },
+ {
+ "name": "Skippy",
+ "id": "2799",
+ "examine": "He seems a bit confused."
}
]
\ No newline at end of file
diff --git a/Server/data/configs/npc_spawns.json b/Server/data/configs/npc_spawns.json
index 9315c35f1..8899eea83 100644
--- a/Server/data/configs/npc_spawns.json
+++ b/Server/data/configs/npc_spawns.json
@@ -1,10990 +1,12306 @@
-[
- {
- "npc_id": "0",
- "loc_data": "{3221,3218,0,1,0}-{2522,5000,0,0,4}"
- },
- {
- "npc_id": "1",
- "loc_data": "{3222,3221,0,1,3}-{2804,3427,0,1,2}-{3285,3208,0,1,4}-{3093,3509,0,1,3}-{3098,3508,0,1,7}-{3096,3510,0,1,3}-{3017,3239,0,1,2}-{2712,3484,0,1,4}-{2693,3495,0,1,1}-{3237,3404,0,1,6}-{3237,3408,0,1,0}-{3247,3396,0,1,3}-{3263,3403,0,1,3}-{3210,3223,1,1,4}-{3230,3208,0,1,1}"
- },
- {
- "npc_id": "2",
- "loc_data": "{3298,3185,0,1,3}-{3101,3511,0,1,4}-{2690,3489,0,1,3}-{3236,3203,0,1,4}-{3217,3209,0,1,4}-{3237,3217,0,1,6}-{3282,3503,0,1,6}"
- },
- {
- "npc_id": "3",
- "loc_data": "{2818,3443,0,1,3}-{3306,3200,0,1,6}-{3300,3208,0,1,3}-{3095,3511,0,1,3}-{3094,3513,0,1,4}-{3097,3510,0,1,4}-{2699,3491,0,1,1}-{3231,3239,0,1,4}-{3278,3502,0,1,6}"
- },
- {
- "npc_id": "4",
- "loc_data": "{3010,3236,0,1,6}-{2693,3493,0,1,7}-{2693,3492,0,1,0}-{2695,3497,0,1,1}-{2700,3496,0,1,5}-{3230,3204,0,1,3}-{3281,3499,0,1,4}"
- },
- {
- "npc_id": "5",
- "loc_data": "{2817,3447,0,1,5}-{2697,3493,0,1,4}-{3236,3205,0,1,2}-{3230,3238,0,1,1}-{3279,3497,0,1,3}"
- },
- {
- "npc_id": "6",
- "loc_data": "{3097,3259,0,1,4}-{3280,3491,0,1,0}-{3246,3207,0,1,4}"
- },
- {
- "npc_id": "7",
- "loc_data": "{2920,3434,0,1,0}-{3226,3290,0,1,3}-{2629,3360,0,1,4}-{3158, 3301, 0, 1, 0}"
- },
- {
- "npc_id": "8",
- "loc_data": "{3019,3230,0,1,4}-{2804,3186,0,1,4}"
- },
- {
- "npc_id": "9",
- "loc_data": "{2964,3392,0,1,6}-{2967,3393,0,1,1}-{3008,3324,0,1,2}-{3007,3321,0,1,6}-{3005,3321,0,1,4}-{2965,3389,0,1,6}-{2966,3392,0,1,1}-{2964,3392,0,1,1}"
- },
- {
- "npc_id": "11",
- "loc_data": "{3235,3399,0,1,5}"
- },
- {
- "npc_id": "13",
- "loc_data": "{3108,3157,1,1,3}-{3113,3157,1,1,4}-{3107,3170,0,1,0}-{3112,3167,0,1,0}-{3106,3157,0,1,3}-{3110,3155,0,1,6}-{2588,3087,0,1,4}-{2592,3086,0,1,6}-{2590,3083,1,1,4}-{2587,3086,1,1,4}-{2594,3084,1,1,6}-{2593,3090,2,1,5}-{2594,3085,2,1,1}-{2588,3089,2,1,4}"
- },
- {
- "npc_id": "14",
- "loc_data": "{2914,3444,0,1,3}-{2905,3450,1,1,0}"
- },
- {
- "npc_id": "15",
- "loc_data": "{2584,3304,0,1,3}-{2588,3291,0,1,7}-{2584,3288,0,1,0}-{2631,3294,0,1,6}-{2629,3296,0,1,4}-{2563,3382,0,1,6}-{2569,3383,0,1,6}-{2571,3381,0,1,1}-{2575,3384,0,1,4}-{2572,3385,0,1,4}"
- },
- {
- "npc_id": "16",
- "loc_data": "{3279,3191,0,1,4}-{3296,3202,1,1,3}"
- },
- {
- "npc_id": "18",
- "loc_data": "{3282,3176,0,1,0}-{3284,3170,0,1,7}-{3284,3174,0,1,0}-{3288,3168,0,1,5}-{3292,3169,0,1,3}-{3295,3168,0,1,3}-{3301,3170,0,1,6}-{3301,3174,0,1,6}-{3301,3177,0,1,0}"
- },
- {
- "npc_id": "19",
- "loc_data": "{2971,3349,0,1,4}-{2979,3350,0,1,2}-{2973,3337,0,1,3}-{2959,3335,0,1,6}-{2982,3339,0,1,6}-{2983,3346,0,1,4}-{2980,3329,0,1,4}-{2987,3330,0,1,6}-{2958,3340,1,1,1}-{2970,3333,1,1,3}-{2966,3329,1,1,4}-{2961,3353,1,1,4}-{2973,3337,1,1,6}-{2998,3341,0,1,6}-{2983,3342,2,1,6}"
- },
- {
- "npc_id": "20",
- "loc_data": "{2588,3301,1,0,0}"
- },
- {
- "npc_id": "21",
- "loc_data": "{2630,3288,0,1,1}-{2647,3306,0,1,1}-{2667,3315,0,1,4}"
- },
- {
- "npc_id": "23",
- "loc_data": "{2582,3297,0,1,6}-{2652,3318,0,1,0}-{2653,3300,0,1,5}-{2669,3298,0,1,4}-{2671,3313,0,1,6}"
- },
- {
- "npc_id": "24",
- "loc_data": "{2614,3318,0,1,6}-{2621,3293,0,1,3}"
- },
- {
- "npc_id": "25",
- "loc_data": "{2612,3316,0,1,1}-{2574,3321,1,1,4}-{2621,3293,1,1,3}"
- },
- {
- "npc_id": "27",
- "loc_data": "{2574,3285,2,0,0}-{2574,3308,2,0,0}-{2582,3284,2,0,0}-{2582,3309,2,0,0}-{2588,3290,2,0,0}-{2588,3303,2,0,0}-{2902,3568,1,1,3}-{2903,3569,1,1,3}-{2903,3567,1,0,3}-{2904,3566,1,0,3}-{2894,3559,1,0,3}-{2892,3557,1,0,3}-{2893,3569,1,0,3}"
- },
- {
- "npc_id": "28",
- "loc_data": "{2611,3269,0,0,0}"
- },
- {
- "npc_id": "31",
- "loc_data": "{2616,3308,0,1,1}"
- },
- {
- "npc_id": "32",
- "loc_data": "{2651,3307,0,1,1}-{2659,3309,0,1,6}-{2660,3309,0,1,3}-{2661,3309,0,1,1}-{2661,3317,0,1,5}-{2663,3301,0,1,3}-{2665,3300,0,1,3}-{2636,3342,0,1,4}-{2634,3342,0,1,3}-{2635,3339,0,1,3}-{2548,3111,1,1,3}-{2545,3116,1,1,7}-{2549,3115,1,1,1}-{2549,3112,1,1,4}"
- },
- {
- "npc_id": "35",
- "loc_data": "{2545,3094,0,1,3}-{2549,3093,0,1,2}-{2543,3089,0,1,3}-{2540,3098,0,1,3}"
- },
- {
- "npc_id": "36",
- "loc_data": "{3020,3373,0,1,0}"
- },
- {
- "npc_id": "38",
- "loc_data": "{2952,3063,0,0,0}-{2955,3057,0,0,0}-{2956,3035,0,0,0}-{2969,3034,0,0,0}-{2984,3048,0,0,0}"
- },
- {
- "npc_id": "39",
- "loc_data": "{2958,3055,0,0,0}-{2954,3029,0,0,0}-{2968,3039,0,0,0}-{2984,3048,0,0,0}-{2989,3058,0,0,0}-{2982,3060,0,0,0}-{2972,3060,0,0,0}-{2998,3061,0,0,0}-{2999,3049,0,0,0}"
- },
- {
- "npc_id": "40",
- "loc_data": "{3005,3060,0,0,0}-{3008,3067,0,0,0}"
- },
- {
- "npc_id": "41",
- "loc_data": "{3197,3356,0,1,4}-{3234,3297,0,1,3}-{3230,3296,0,1,5}-{3236,3288,0,1,6}-{3236,3300,0,1,2}-{3231,3308,0,1,3}-{2965,3336,0,1,4}-{3110,9573,0,1,6}-{2655,3441,0,1,6}-{2649,3438,0,1,7}-{2649,3446,0,1,6}-{2653,3444,0,1,6}-{2647,3441,0,1,1}-{2784,3062,0,1,4}-{2789,3063,0,1,4}-{3160,3082,0,1,3}-{3140,3096,0,1,3}-{3140,3093,0,1,0}-{3138,3094,0,1,1}-{3140,3093,0,1,3}-{3138,3093,0,1,1}-{3138,3094,0,1,0}-{3189,3278,0,1,3}-{3187,3276,0,1,5}-{3188,3278,0,1,4}-{2851,3370,0,1,3}-{2846,3374,0,1,3}-{2853,3372,0,1,3}-{2847,3373,0,1,3}-{2850,3371,0,1,1}-{2851,3373,0,1,4}-{2852,3370,0,1,4}-{3234,3293,0,1,4}-{3229,3298,0,1,1}-{3228,3296,0,1,4}-{2815,3560,0,1,7}-{2819,3561,0,1,4}-{2818,3559,0,1,6}-{3140,3093,0,1,1}-{2674,3652,0,1,3}-{2672,3655,0,1,6}-{2677,3655,0,1,6}-{2694,3274,0,1,6}-{2695,3275,0,1,3}"
- },
- {
- "npc_id": "42",
- "loc_data": "{3237,3346,0,1,1}"
- },
- {
- "npc_id": "43",
- "loc_data": "{3241,3354,0,1,3}-{3200,3263,0,0,0}-{3212,3262,0,1,1}-{2926,3323,0,1,0}-{2922,3325,0,1,3}"
- },
- {
- "npc_id": "44",
- "loc_data": "{3251,3418,0,0,1}-{3252,3418,0,0,1}-{3253,3418,0,0,1}-{3096,3489,0,0,3}-{3254,3418,0,0,1}-{3255,3418,0,0,1}-{3256,3418,0,0,1}-{3147,3448,0,0,1}-{3180,3436,0,0,4}-{3180,3440,0,0,4}-{3180,3444,0,0,4}-{3096,3493,0,0,3}-{3097,3494,0,0,1}-{3191,3437,0,0,3}-{3191,3441,0,0,3}-{3191,3445,0,0,3}"
- },
- {
- "npc_id": "45",
- "loc_data": "{3096,3491,0,0,3}-{3148,3448,0,0,0}-{3191,3443,0,0,3}-{3191,3439,0,0,3}-{3191,3435,0,0,3}-{3180,3442,0,0,4}-{3180,3434,0,0,4}-{2843,5214,0,0,4}-{3180,3438,0,0,4}"
- },
- {
- "npc_id": "46",
- "loc_data": "{3179,3348,0,1,0}-{3178,3353,0,1,0}-{3211,3322,0,1,0}-{3214,3314,0,1,0}-{3214,3318,0,1,0}-{3216,3314,0,1,0}-{3218,3287,0,1,0}-{3223,3281,0,1,0}-{3231,3271,0,1,0}-{3233,3267,0,1,0}-{3233,3270,0,1,0}-{3235,3265,0,1,0}-{3235,3259,0,1,0}-{3238,3244,0,1,0}-{3241,3230,0,1,0}-{3241,3234,0,1,0}-{3243,3228,0,1,0}-{3247,3221,0,1,0}-{3248,3220,0,1,0}-{3259,3212,0,1,0}-{2979,3359,0,1,0}-{2979,3357,0,1,0}-{2993,3384,0,1,6}-{3015,3285,0,1,0}"
- },
- {
- "npc_id": "47",
- "loc_data": "{3108, 9754, 0, 1, 5}-{3110, 9754, 0, 1, 5}-{3108, 9750, 0, 1, 5}-{2930,9699,0,1,0}-{2933,9697,0,1,0}-{2932,9685,0,1,0}-{2930,9693,0,1,0}-{3097,3364,0,1,3}-{3102,3363,0,1,5}-{3341,3267,0,1,5}-{3235,3224,0,1,3}-{3229,3220,0,1,4}-{3211,3211,0,1,3}-{3225,3220,0,1,1}-{3237,3215,0,1,5}-{3211,3210,0,1,7}-{3227,3220,0,1,7}-{3233,3227,0,1,5}-{3227,3210,0,1,6}-{3228,3222,0,1,4}-{3229,3226,0,1,0}-{3127,3487,0,1,4}-{3125,3486,0,1,6}-{3127,3486,0,1,4}-{3019,3292,0,1,7}-{3018,3295,0,1,7}-{3001,3202,0,1,5}-{3021,3205,0,1,6}-{3026,3174,0,1,5}-{3019,3176,0,1,7}-{3076,3282,0,1,5}-{3089,3266,0,1,4}-{3091,3266,0,1,4}-{3243,3687,0,1,5}-{3249,3669,0,1,3}-{3252,3675,0,1,4}-{3252,3680,0,1,3}-{3259,3683,0,1,0}-{3276,9871,0,1,1}-{3277,9871,0,1,3}-{3225,9862,0,1,4}-{3222,9861,0,1,6}-{3220,9860,0,1,6}-{3219,9865,0,1,6}-{3237,9862,0,1,4}-{3236,3217,0,1,4}-{3259,3230,0,1,4}-{3158,3226,0,1,5}-{3160,3202,0,1,4}-{3233,3237,0,1,7}-{2821,3170,0,1,1}-{2801,3158,0,1,2}-{2852,9642,0,1,6}-{2858,9632,0,1,3}-{2536,2982,0,1,3}-{2531,2980,0,1,0}-{2522,2981,0,1,4}-{2545,2989,0,1,4}-{2523,2970,0,1,2}-{2603,9480,0,1,1}-{2600,9477,0,1,0}-{2579,9496,0,1,4}-{2580,9508,0,1,0}-{2571,9522,0,1,4}-{2654,9640,0,1,6}-{2655,9637,0,1,4}-{2656,9639,0,1,7}-{2651,9636,0,1,5}-{2648,9637,0,1,4}-{2651,9642,0,1,1}-{2654,9640,0,1,0}-{2654,9635,0,1,6}-{2655,9635,0,1,3}-{2664,9626,0,1,6}-{2664,9624,0,1,1}-{2661,9623,0,1,1}-{2663,9623,0,1,3}-{2664,9626,0,1,6}-{2592,9831,0,1,3}-{2588,9825,0,1,6}-{2583,9829,0,1,4}-{2581,9841,0,1,0}-{2597,9823,0,1,2}-{2579,9805,0,1,3}-{2576,9804,0,1,0}-{2573,9805,0,1,5}-{2571,9808,0,1,3}-{2576,9810,0,1,2}-{2587,9802,0,1,2}-{2592,9800,0,1,4}-{2596,9805,0,1,6}-{2601,9802,0,1,5}-{2585,9801,0,1,7}-{2594,9803,0,1,0}-{2590,9806,0,1,3}-{2612,9808,0,1,6}-{2604,9810,0,1,6}-{2579,9821,0,1,2}-{2576,9812,0,1,6}-{2580,9813,0,1,6}-{2600,9813,0,1,4}-{2599,9809,0,1,4}-{2514,3193,0,1,6}-{2518,3192,0,1,3}-{2507,3181,0,1,3}-{2508,3178,0,1,6}-{2511,3183,0,1,3}-{2515,3182,0,1,1}-{2565,9505,0,1,1}-{2566,9510,0,1,6}-{2594,9497,0,1,4}-{3475,9840,0,1,6}-{3481,9842,0,1,1}-{3486,9843,0,1,7}-{3483,9824,0,1,4}-{3496,9808,0,0,5}-{3490,9815,0,1,1}-{3478,9834,0,0,3}-{3490,9824,0,1,4}"
- },
- {
- "npc_id": "48",
- "loc_data": "{2775,2929,0,1,2}-{2789,2926,0,1,5}-{2795,2932,0,1,6}-{2775,2933,0,1,0}-{2769,2928,0,1,3}-{2817,2921,0,1,2}"
- },
- {
- "npc_id": "49",
- "loc_data": "{2871,9819,0,1,0}-{2871,9822,0,1,0}-{2870,9826,0,1,0}-{2869,9829,0,1,0}-{2867,9834,0,1,0}-{2867,9841,0,1,0}-{2864,9853,0,1,0}-{2859,9852,0,1,0}-{2851,9850,0,1,0}-{2856,9846,0,1,0}-{2857,9841,0,1,0}-{2861,9838,0,1,0}-{2854,9838,0,1,0}-{3104,3680,0,1,3}-{3114,3688,0,1,1}-{3121,3675,0,1,1}-{3127,3695,0,1,3}-{3129,3678,0,1,2}-{3130,3689,0,1,2}-{3128,3665,0,1,3}-{3135,3701,0,1,6}-{3085,10134,0,1,0}-{3090,10123,0,1,0}-{3094,10133,0,1,0}-{3095,10120,0,1,0}-{3095,10128,0,1,0}-{3098,10122,0,1,0}-{3104,10127,0,1,0}-{3105,10125,0,1,0}-{3177,3905,0,1,4}-{3180,3908,0,1,2}-{3189,3914,0,1,6}-{3193,3906,0,1,2}-{2402,9785,0,1,1}-{2403,9782,0,1,1}-{2408,9782,0,1,1}-{2408,9785,0,1,1}-{2413,9776,0,1,1}-{2417,9777,0,1,1}-{2412,9773,0,1,1}-{2416,9773,0,1,1}-{2735,9692,0,1,1}-{2732,9687,0,1,1}-{2733,9688,0,1,1}-{2734,9690,0,1,1}-{2733,9686,0,1,1}-{2732,9692,0,1,1}-{2736,9685,0,1,1}-{2730,9691,0,1,1}"
- },
- {
- "npc_id": "50",
- "loc_data": "{2273,4698,0,0,0}"
- },
- {
- "npc_id": "52",
- "loc_data": "{2898,9764,0,1,0}-{2892,9800,0,1,0}-{2912,9808,0,1,0}"
- },
- {
- "npc_id": "53",
- "loc_data": "{2694,9508,0,0,3}-{2703,9505,0,0,6}-{2710,9499,0,0,1}-{2704,9520,0,0,5}-{2714,9523,0,0,3}-{2722,9520,0,0,7}-{3232,3790,0,0,4}"
- },
- {
- "npc_id": "54",
- "loc_data": "{2834,9824,0,1,0}"
- },
- {
- "npc_id": "55",
- "loc_data": "{2897,9802,0,1,0}-{2909,9906,0,1,4}"
- },
- {
- "npc_id": "58",
- "loc_data": "{3289,5482,0,1,1}-{3296,5472,0,1,0}-{3291,5466,0,1,6}-{3294,5481,0,1,0}-{3300,5479,0,1,7}-{3288,5480,0,1,3}-{3293,5475,0,1,3}-{3293,5481,0,1,2}-{3286,5465,0,1,3}-{3279,5478,0,1,4}-{3270,5464,0,1,2}-{3270,5468,0,1,1}-{2574,9874,0,1,0}-{2577,9877,0,1,3}-{2574,9878,0,1,0}-{2575,9871,0,1,4}"
- },
- {
- "npc_id": "59",
- "loc_data": "{3182,3244,0,1,1}-{3250,3239,0,1,1}-{3241,3241,0,1,1}-{3188,3216,0,1,1}-{3082,3362,0,1,4}-{3146,3347,0,1,3}-{3249,3249,0,1,1}-{3102,9881,0,1,3}-{3095,9883,0,1,2}-{3218,9890,0,1,3}-{3220,9887,0,1,0}-{3218,9887,0,1,1}-{3218,9889,0,1,5}-{3213,9890,0,1,1}-{3169,3257,0,1,1}-{3164,3236,0,1,6}-{3148,3226,0,1,5}-{3162,3223,0,1,7}-{3151,3221,0,1,0}-{3160,3221,0,1,0}-{2461,2880,0,1,5}-{2489,2935,0,1,7}-{2492,2907,0,1,1}-{2496,2890,0,1,4}-{2487,2894,0,1,2}-{2487,2888,0,1,7}-{2483,2877,0,1,3}-{2481,2876,0,1,4}-{2457,2867,0,1,4}-{2481,2847,0,1,0}-{2475,2854,0,1,3}-{2482,2873,0,1,3}-{2485,2876,0,1,2}-{2449,2865,0,1,1}-{2478,2916,0,1,5}-{2485,2902,0,1,3}-{2487,2902,0,1,2}-{2489,2894,0,1,2}-{2490,2905,0,1,7}-{2490,2917,0,1,5}-{2484,2890,0,1,1}-{2503,2889,0,1,1}-{2491,2927,0,1,1}-{2497,2939,0,1,2}-{2648,9766,0,1,4}-{2653,9761,0,1,3}"
- },
- {
- "npc_id": "60",
- "loc_data": "{3189,3883,0,1,5}-{3182,3882,0,1,5}-{3177,3871,0,1,0}-{3176,3878,0,1,0}-{3173,3892,0,1,6}-{3171,3884,0,1,4}-{3166,3874,0,1,1}-{3169,3900,0,1,1}-{3165,3881,0,1,3}-{3164,3888,0,1,6}-{3163,3894,0,1,7}-{3162,3894,0,1,4}-{2547,2982,0,1,6}-{2477,2866,0,1,5}-{2484,2897,0,1,3}-{2455,2857,0,1,6}-{2434,2845,0,1,4}-{2544,2904,0,1,2}-{2548,2981,0,1,1}-{2448,2784,0,1,7}-{2460,2869,0,1,3}-{2471,2890,0,1,6}-{2491,2906,0,1,0}-{2523,2975,0,1,1}"
- },
- {
- "npc_id": "61",
- "loc_data": "{2893,9835,0,1,0}-{2895,9828,0,1,0}-{2891,9831,0,1,0}-{3111, 9747, 0, 1, 5}-{3108, 9747, 0, 1, 5}-{3321,3145,0,1,3}-{3327,3131,0,1,5}-{3322,3143,0,1,3}-{3182,3878,0,1,6}-{3182,3886,0,1,7}-{3182,3888,0,1,5}-{3175,3888,0,1,4}-{3175,3879,0,1,7}-{3174,3879,0,1,3}-{3174,3882,0,1,0}-{3175,3885,0,1,3}-{3172,3876,0,1,2}-{3172,3894,0,1,1}-{3172,3885,0,1,3}-{3165,3886,0,1,3}-{3165,3896,0,1,1}-{3166,3886,0,1,1}-{3164,3893,0,1,4}-{3163,3881,0,1,4}-{3159,3889,0,1,0}-{3213,9890,0,1,5}-{3210,9886,0,1,4}-{3213,9887,0,1,1}-{3207,9880,0,1,0}-{3255,9870,0,1,4}-{3258,9872,0,1,3}-{3261,9870,0,1,4}-{3156,3248,0,1,4}-{3143,3241,0,1,4}-{3156,3249,0,1,4}-{3175,3248,0,1,7}-{3169,3260,0,1,4}-{3171,3254,0,1,5}-{3162,3246,0,1,6}-{3179,3262,0,1,1}-{3162,3226,0,1,1}-{3166,3222,0,1,1}-{3157,3229,0,1,5}-{3168,3222,0,1,4}-{3211,9622,0,1,2}-{3215,9620,0,1,4}-{3212,9618,0,1,3}-{3217,9617,0,1,3}-{3214,9620,0,1,7}-{2541,3189,0,1,3}-{2542,3187,0,1,6}-{2543,3186,0,1,4}-{2545,3183,0,1,3}-{2545,3183,0,1,3}-{2545,3182,0,1,3}-{2543,3183,0,1,0}-{2543,3182,0,1,3}-{2539,3182,0,1,0}"
- },
- {
- "npc_id": "62",
- "loc_data": "{2769,3198,0,1,7}-{2768,3206,0,1,1}-{2776,3107,0,1,1}-{2794,3121,0,1,3}-{2795,3118,0,1,1}-{2796,3109,0,1,1}-{2808,3112,0,1,6}-{2791,3124,0,1,1}-{2860,3094,0,1,6}-{2854,3086,0,1,6}-{2863,3083,0,1,3}-{2853,3081,0,1,4}-{2859,3079,0,1,4}-{2859,3075,0,1,6}-{2871,3092,0,1,1}-{2867,3094,0,1,1}-{2861,3082,0,1,3}-{2861,3094,0,1,3}-{2863,3081,0,1,2}-{2864,3089,0,1,3}-{2859,3084,0,1,0}-{2850,3060,0,1,6}-{2857,3044,0,1,7}-{2856,3066,0,1,4}-{2784,3030,0,1,4}-{2783,3017,0,1,3}-{2811,2975,0,1,7}-{2815,2987,0,1,5}-{2808,3007,0,1,6}-{2812,3007,0,1,1}-{2885,2950,0,1,4}-{2891,2951,0,1,6}-{2894,2946,0,1,4}-{2928,3022,0,1,3}-{2930,3029,0,1,4}-{2927,3039,0,1,6}-{2928,3043,0,1,0}-{2929,3036,0,1,7}-{2919,3040,0,1,4}-{2934,3045,0,1,2}-{2929,3035,0,1,4}-{2914,3055,0,1,4}-{2922,3059,0,1,3}-{2930,3049,0,1,4}-{2914,3047,0,1,4}-{2935,3049,0,1,1}-{2927,3058,0,1,3}"
- },
- {
- "npc_id": "63",
- "loc_data": "{3128,9954,0,1,0}-{3127,9956,0,1,0}-{3125,9958,0,1,0}-{3117,9956,0,1,0}-{3122,9956,0,1,0}-{3120,9952,0,1,0}-{3123,9951,0,1,0}-{3125,9948,0,1,0}-{3118,9950,0,1,0}-{3074,3892,0,1,3}-{3071,3894,0,1,7}-{3062,3897,0,1,3}-{3058,3889,0,1,4}-{3054,3880,0,1,2}-{3054,3895,0,1,7}-{3051,3879,0,1,6}-{3051,3886,0,1,6}-{3047,3893,0,1,1}-{3047,3881,0,1,4}-{3044,3893,0,1,5}-{3041,3894,0,1,1}-{3038,3890,0,1,1}-{3046,3872,0,1,4}-{3165,9891,0,1,6}-{3177,9886,0,1,4}-{3175,9889,0,1,4}-{3177,9879,0,1,4}-{3177,9888,0,1,1}-{3178,9895,0,1,4}-{3182,9884,0,1,3}-{2841,9583,0,1,4}-{2841,9582,0,1,4}-{2839,9582,0,1,1}-{2837,9572,0,1,6}-{2832,9580,0,1,1}-{3164,9888,0,1,3}-{3169,9892,0,1,6}-{3258,5560,0,1,2}-{3258,5555,0,1,3}-{3260,5557,0,1,3}-{3257,5552,0,1,1}-{3260,5558,0,1,5}-{3258,5556,0,1,6}-{3257,5555,0,1,6}-{3260,5559,0,1,7}-{3257,5561,0,1,1}"
- },
- {
- "npc_id": "64",
- "loc_data": "{2945,3910,0,1,0}-{2956,3923,0,1,0}-{2961,3919,0,1,0}-{2968,3915,0,1,0}-{2972,3927,0,1,0}-{2975,3949,0,1,0}-{2961,3945,0,1,0}-{2950,3927,0,1,0}-{2684,9798,0,1,2}-{2691,9814,0,1,5}-{2694,9819,0,1,6}-{2696,9831,0,1,3}-{2702,9837,0,1,6}-{2709,9844,0,1,3}-{2720,9847,0,1,4}-{2724,9843,0,1,6}-{2733,9846,0,1,4}-{2740,9841,0,1,3}-{2745,9836,0,1,4}-{2745,9828,0,1,5}-{2747,9826,0,1,1}"
- },
- {
- "npc_id": "66",
- "loc_data": "{2507,3204,0,1,5}-{2506,3205,0,1,6}-{2526,3169,0,1,6}-{2540,3226,0,1,6}-{2528,3164,0,1,6}-{2529,3169,0,1,1}-{2537,3170,0,1,1}"
- },
- {
- "npc_id": "67",
- "loc_data": "{2507,3200,0,1,6}-{2516,3212,0,1,1}"
- },
- {
- "npc_id": "68",
- "loc_data": "{2518,3209,0,1,3}-{2533,3209,0,1,5}-{2530,3212,0,1,1}"
- },
- {
- "npc_id": "73",
- "loc_data": "{3268,9893,0,1,3}-{3251,9896,0,1,6}-{3087,9672,0,1,1}-{3103,9672,0,1,1}-{3119,9670,0,1,1}-{3123,9657,0,1,2}"
- },
- {
- "npc_id": "74",
- "loc_data": "{3148,9899,0,1,3}-{3147,9905,0,1,6}-{3141,9901,0,1,5}-{3142,9891,0,1,6}-{3139,9886,0,1,2}-{3148,9883,0,1,1}-{3151,9889,0,1,3}-{3126,9865,0,1,7}-{3129,9859,0,1,3}-{3121,9863,0,1,3}-{3126,9862,0,1,5}-{3082,9671,0,1,3}-{3105,9672,0,1,1}-{3113,9673,0,1,3}-{3124,9660,0,1,3}-{3122,9656,0,1,4}-{3117,9646,0,1,1}-{3124,9651,0,1,2}-{3117,9645,0,1,3}-{3094,9671,0,1,3}-{2843,9767,0,1,3}-{2845,9762,0,1,7}-{2842,9759,0,1,6}"
- },
- {
- "npc_id": "75",
- "loc_data": "{2931,9641,0,1,6}-{3226,9909,0,1,4}-{3225,9905,0,1,0}-{3234,9907,0,1,4}-{2931,9643,0,1,6}-{2588,9493,0,1,3}-{2584,9491,0,1,3}-{2589,9492,0,1,4}-{2591,9492,0,1,6}-{2593,9491,0,1,6}-{2588,9491,0,1,3}-{2839,9774,0,1,4}"
- },
- {
- "npc_id": "76",
- "loc_data": "{2843,9774,0,1,6}-{2842,9769,0,1,4}-{2842,9764,0,1,7}-{2845,9754,0,1,4}-{2849,9751,0,1,1}-{2850,9747,0,1,3}-{2844,9758,0,1,7}-{2540,9814,0,1,6}-{2547,9817,0,1,6}"
- },
- {
- "npc_id": "78",
- "loc_data": "{2905,9832,0,1,0}-{2907,9831,0,1,0}-{2913,9828,0,1,0}-{2921,9826,0,1,0}-{2924,9831,0,1,0}-{2921,9834,0,1,0}-{2918,9831,0,1,0}-{2908,9838,0,1,0}-{2913,9841,0,1,0}-{3069,3901,0,1,4}-{3079,3955,0,1,3}-{3076,3953,0,1,0}-{3079,3952,0,1,1}-{3072,3952,0,1,0}-{3075,3948,0,1,2}-{3072,3956,0,1,1}-{3085,3951,0,1,6}-{2862,9569,0,1,4}-{2857,9571,0,1,7}-{2837,9561,0,1,1}-{3787,9459,0,1,1}-{3725,9369,0,1,1}-{3737,9390,0,1,4}-{3738,9399,0,1,0}-{3740,9407,0,1,1}-{3755,9424,0,1,0}-{3803,9447,0,1,4}-{3765,9407,0,1,1}-{3762,9395,0,1,3}-{3760,9440,0,1,4}-{3737,9425,0,1,7}-{3720,9430,0,1,4}-{3736,9451,0,1,3}-{3728,9463,0,1,2}-{3740,9462,0,1,4}-{3770,9463,0,1,1}-{3778,9438,0,1,1}-{3786,9422,0,1,4}-{3800,9419,0,1,3}-{3797,9427,0,1,4}-{3820,9432,0,1,5}-{3825,9414,0,1,3}-{3833,9415,0,1,0}-{3752,9450,0,1,6}-{3825,9449,0,1,3}-{3827,9459,0,1,1}-{3818,9466,0,1,4}-{3799,9460,0,1,1}-{3794,9451,0,1,1}-{3762,9432,0,1,1}-{3725,9390,0,1,3}-{2672,9805,0,1,3}-{2663,9804,0,1,4}-{2658,9809,0,1,5}-{3753,9387,0,1,0}-{3728,9382,0,1,3}-{3733,9421,0,1,7}-{2568,9528,0,1,5}-{2573,9530,0,1,3}-{2575,9525,0,1,6}-{2571,9528,0,1,7}-{2608,9818,0,1,7}-{2609,9825,0,1,5}-{2607,9830,0,1,1}-{2605,9837,0,1,1}-{2607,9833,0,1,6}-{3729,9360,0,1,6}-{2759,3402,0,1,2}-{2756,3400,0,1,0}-{2543,9564,0,1,1}-{2543,9562,0,1,1}-{2542,9557,0,1,1}-{2542,9569,0,1,4}-{2540,9566,0,1,0}-{2549,9568,0,1,6}-{2538,9568,0,1,3}"
- },
- {
- "npc_id": "80",
- "loc_data": "{2619,3265,0,1,0}-{2619,3265,0,1,3}-{2615,3267,0,1,4}"
- },
- {
- "npc_id": "81",
- "loc_data": "{3255,3255,0,1,3}-{3255,3256,0,1,4}-{3038,3310,0,1,5}-{3028,3312,0,1,6}-{3028,3299,0,1,6}-{3042,3300,0,1,6}-{2923,3277,0,1,1}-{2921,3289,0,1,1}-{2923,3280,0,1,6}-{2589,3120,0,1,4}-{2605,3116,0,1,5}-{3259,3261,0,1,1}-{3263,3283,0,1,6}-{3257,3268,0,1,4}"
- },
- {
- "npc_id": "82",
- "loc_data": "{2936,9652,0,1,3}-{2926,9803,0,1,0}-{2935,9794,0,1,0}-{3052,3117,2,1,1}-{2841,9557,0,1,3}-{2831,9562,0,1,3}-{2838,9605,0,1,3}-{3058,10128,0,1,0}-{3046,10139,0,1,0}-{3110,3157,2,1,5}"
- },
- {
- "npc_id": "83",
- "loc_data": "{3169,3711,0,1,7}-{3095,10095,0,1,0}-{3095,10086,0,1,0}-{2639,9477,2,0,3}-{2635,9497,2,0,2}"
- },
- {
- "npc_id": "84",
- "loc_data": "{2875,9776,0,1,0}-{2862,9776,0,1,0}-{2860,9762,0,1,0}-{2854,9780,0,1,0}-{2866,9781,0,1,0}-{2700,9481,0,0,5}-{2729,9483,0,0,5}"
- },
- {
- "npc_id": "86",
- "loc_data": "{2632,9696,0,1,1}-{2639,9697,0,1,3}-{2646,9696,0,1,3}-{2650,9697,0,1,4}-{2646,9702,0,1,6}-{3098,9880,0,1,5}-{3094,9883,0,1,1}-{3196,3208,0,1,1}-{3119,9891,0,1,4}-{3249,9868,0,1,4}-{3237,9868,0,1,3}-{3221,9873,0,1,6}-{3225,9862,0,1,2}-{3199,3209,0,1,1}-{3193,3211,0,1,5}-{3197,3203,0,1,1}-{3201,3200,0,1,4}-{3199,3210,0,1,0}-{3191,3207,0,1,4}-{3037,9511,0,1,6}-{3105,9517,0,1,7}-{3101,9517,0,1,6}-{3102,9521,0,1,4}-{3106,9519,0,1,1}-{3104,9514,0,1,4}-{3104,9518,0,1,1}-{3107,9519,0,1,1}-{3109,9516,0,1,1}-{3107,9515,0,1,7}-{3105,9512,0,1,6}-{3102,9513,0,1,3}-{3100,9514,0,1,1}-{3100,9516,0,1,7}-{3099,9521,0,1,0}-{3103,9523,0,1,1}-{3212,3191,0,1,6}-{3207,3192,0,1,2}-{3216,3184,0,1,2}-{3224,3174,0,1,4}-{3229,3183,0,1,5}-{3222,3185,0,1,3}-{3216,3177,0,1,4}-{3200,3182,0,1,5}-{3202,3189,0,1,6}-{3188,3181,0,1,7}-{3181,3191,0,1,7}-{3185,3199,0,1,4}-{3176,3198,0,1,6}-{3168,3188,0,1,4}-{3172,3178,0,1,1}-{3179,3174,0,1,1}-{3189,3168,0,1,5}-{3237,9866,0,1,6}-{3232,9867,0,1,7}-{3219,9862,0,1,7}-{3227,9875,0,1,4}-{3276,9870,0,1,3}-{3291,3388,0,1,6}-{2647,9713,0,1,3}-{2641,9719,0,1,1}-{2650,9716,0,1,1}-{2518,3187,0,1,3}-{3495,9812,0,1,1}-{3502,9807,0,0,4}"
- },
- {
- "npc_id": "87",
- "loc_data": "{3241,3531,0,1,7}-{3260,3540,0,1,7}-{3103,9881,0,1,3}-{3122,9889,0,1,2}-{3117,9890,0,1,2}-{3293,3382,0,1,4}-{2520,3188,0,1,3}"
- },
- {
- "npc_id": "88",
- "loc_data": "{2601,9802,0,1,6}-{2594,9805,0,1,1}-{2587,9806,0,1,2}-{2585,9803,0,1,1}-{2584,9801,0,1,5}"
- },
- {
- "npc_id": "89",
- "loc_data": "{2783,3463,0,1,7}-{2629,3266,0,1,2}-{2634,3265,0,1,1}-{2575,3058,0,0,6}-{3080,3451,0,1,1}-{3096,3460,0,1,3}-{3142,3211,0,1,6}-{2557,3065,0,0,1}-{3294,3344,0,1,3}-{3289,3349,0,1,6}-{3286,3345,0,1,1}"
- },
- {
- "npc_id": "90",
- "loc_data": "{2885,9812,0,1,0}-{2883,9836,0,1,0}-{2925,3254,2,0,3}-{3116,3534,0,0,4}-{3110,3367,0,0,3}-{3110,9909,0,1,4}-{3121,9910,0,1,4}-{3133,9909,0,1,5}-{3133,9904,0,1,6}-{3129,9916,0,1,3}-{3133,9916,0,1,0}-{3141,9875,0,1,6}-{3208,9905,0,1,4}-{2852,9577,0,1,1}-{2865,9567,0,1,3}-{2924,3252,2,1,3}-{2926,3255,2,1,4}-{2932,3255,2,1,3}-{2931,3251,2,1,4}-{3194,5448,0,1,3}-{3183,5447,0,1,3}-{3177,5457,0,1,4}-{3187,5456,0,1,1}-{3003,3593,0,1,5}-{3007,3596,0,1,4}-{3025,3595,0,1,4}-{3022,3594,0,1,0}"
- },
- {
- "npc_id": "91",
- "loc_data": "{3099,9910,0,1,3}-{3100,9906,0,1,6}-{3212,9906,0,1,6}-{3252,9916,0,1,3}-{3259,9915,0,1,3}-{3272,9913,0,1,6}-{3274,9914,0,1,1}-{3278,9908,0,1,1}-{3275,9911,0,1,5}-{3194,5454,0,1,4}"
- },
- {
- "npc_id": "92",
- "loc_data": "{3111,3561,0,1,3}-{3132,9915,0,1,5}-{3095,9909,0,1,3}-{3149,9869,0,1,6}-{3138,9878,0,1,5}-{3137,9869,0,1,3}-{2840,9652,0,1,1}-{2829,9657,0,1,4}-{2819,3288,0,1,1}-{2848,3248,0,1,3}-{2850,3235,0,1,3}-{3117,9671,0,1,1}-{3122,9661,0,1,6}-{3123,9648,0,1,6}-{3005,10362,0,1,1}-{3003,10358,0,1,1}-{3005,10351,0,1,1}-{3003,10345,0,1,5}-{2993,3940,0,1,4}-{2593,9883,0,1,1}-{2590,9885,0,1,4}-{2586,9883,0,1,1}-{2585,9878,0,1,3}-{2537,9845,0,1,1}-{2540,9846,0,1,4}-{2552,9844,0,1,6}-{2556,9846,0,1,4}-{2535,9844,0,1,3}-{2532,9843,0,1,4}-{2530,9845,0,1,3}-{2540,9820,0,1,4}-{2544,9824,0,1,4}"
- },
- {
- "npc_id": "93",
- "loc_data": "{3101,9956,0,1,3}-{3104,9948,0,1,0}-{3104,9955,0,1,4}-{3108,9951,0,1,4}-{3108,9954,0,1,1}-{3111,9954,0,1,6}-{3112,9958,0,1,4}-{2841,9625,0,1,4}-{2845,9628,0,1,3}-{2841,9638,0,1,6}-{2845,9645,0,1,1}-{2655,9824,0,1,1}-{2669,9824,0,1,4}-{2667,9823,0,1,5}-{2658,9830,0,1,6}-{2666,9829,0,1,6}-{3194,5460,0,1,6}-{3192,5466,0,1,7}-{2566,9507,0,1,3}-{2562,9505,0,1,1}-{2568,9509,0,1,3}-{3185,5493,0,1,4}-{3182,5494,0,1,6}-{3185,5486,0,1,7}-{3175,5492,0,1,3}-{3169,5496,0,1,4}-{3170,5492,0,1,3}-{3186,5487,0,1,4}-{3169,5491,0,1,2}-{2571,9509,0,1,1}-{2564,9504,0,1,1}-{2566,9505,0,1,1}-{2544,9841,0,1,1}-{2536,9844,0,1,6}-{2527,9844,0,1,3}-{2530,9842,0,1,4}-{2543,9815,0,1,3}"
- },
- {
- "npc_id": "94",
- "loc_data": "{2589,9881,0,1,6}-{2591,9882,0,1,4}"
- },
- {
- "npc_id": "95",
- "loc_data": "{2616,3283,0,1,3}-{2620,3283,0,1,3}-{2502,2969,0,1,6}-{2507,2971,0,1,2}-{2600,2959,0,1,6}-{2606,2971,0,1,6}-{2606,2963,0,1,4}-{2612,2965,0,1,6}-{2611,2973,0,1,5}-{2613,2963,0,1,3}-{2459,2884,0,1,7}-{2496,2907,0,1,6}-{2489,2887,0,1,7}-{2473,2885,0,1,7}-{2466,2872,0,1,4}-{2452,2883,0,1,5}-{2440,2869,0,1,5}-{2460,2849,0,1,1}-{2451,2842,0,1,4}-{2467,2838,0,1,6}-{2444,2832,0,1,6}-{2498,2845,0,1,3}-{2615,2957,0,1,4}-{2599,2960,0,1,2}-{2609,2966,0,1,0}-{2605,2967,0,1,5}-{2609,2963,0,1,2}-{2496,2857,0,1,4}-{2493,2849,0,1,4}-{2474,2860,0,1,1}-{2470,2865,0,1,4}-{2462,2874,0,1,1}-{2458,2853,0,1,4}-{2454,2876,0,1,5}-{2478,2884,0,1,6}-{2469,2886,0,1,5}-{2442,2876,0,1,1}-{2490,2903,0,1,1}-{2477,2928,0,1,4}-{2492,2956,0,1,1}-{2502,2956,0,1,4}-{2499,2965,0,1,0}-{2508,2968,0,1,4}-{2500,2974,0,1,0}-{3175,3948,0,1,1}-{3200,3931,0,1,1}-{3220,3921,0,1,7}-{2478,3272,0,1,1}-{2465,3276,0,1,1}-{2468,3277,0,1,4}-{2466,3271,0,1,5}-{2468,3277,0,1,0}"
- },
- {
- "npc_id": "96",
- "loc_data": "{2842,3450,0,0,0}-{2872,3437,0,0,0}-{2873,3449,0,0,0}-{2868,3456,0,0,0}-{2856,3490,0,0,0}-{2861,3492,0,0,0}-{2862,3505,0,0,0}-{2856,3507,0,0,0}-{3004,3920,0,1,7}-{3007,3925,0,1,3}-{3005,3927,0,1,3}-{3004,3924,0,1,3}-{2988,3918,0,1,2}-{2992,3921,0,1,2}-{2990,3923,0,1,3}-{2988,3925,0,1,6}-{2987,3921,0,1,6}"
- },
- {
- "npc_id": "97",
- "loc_data": "{2847,3485,0,0,0}-{2847,3489,0,0,0}-{2833,3511,0,0,0}-{2831,3506,0,0,0}-{2834,3514,0,0,0}-{3003,3921,0,1,6}-{3009,3920,0,1,3}-{3001,3923,0,1,1}-{3001,3927,0,1,4}-{2993,3919,0,1,4}-{2994,3924,0,1,1}-{2988,3918,0,1,4}"
- },
- {
- "npc_id": "98",
- "loc_data": "{3014,3294,0,1,1}"
- },
- {
- "npc_id": "99",
- "loc_data": "{2624,3319,0,1,1}-{2624,3327,0,1,6}-{2642,3314,0,1,4}-{2646,3325,0,1,1}-{2790,3199,0,1,2}-{2784,3188,0,1,1}-{2779,3207,0,1,1}-{2646,3504,0,1,4}-{2634,3476,0,1,5}-{2651,3477,0,1,5}-{2665,3472,0,1,5}-{2662,3488,0,1,5}-{2672,3505,0,1,5}"
- },
- {
- "npc_id": "100",
- "loc_data": "{2551,3408,0,1,6}-{2553,3405,0,1,3}-{2559,3452,0,1,3}-{2567,3440,0,1,3}"
- },
- {
- "npc_id": "101",
- "loc_data": "{2555,3407,0,1,3}-{2624,3391,0,1,1}-{2622,3389,0,1,4}-{2619,3390,0,1,4}-{2553,3457,0,1,3}-{2573,3437,0,1,3}"
- },
- {
- "npc_id": "102",
- "loc_data": "{2622,3390,0,1,7}-{2622,3390,0,1,7}"
- },
- {
- "npc_id": "103",
- "loc_data": "{2888,9850,0,1,0}-{2901,9848,0,1,0}-{2909,9848,0,1,0}-{2919,9848,0,1,0}-{2937,9837,0,1,0}-{2906,9818,0,1,0}-{2920,9818,0,1,0}-{2501,3289,0,1,1}-{2928,3251,1,1,3}-{3277,3659,0,1,1}-{3280,3658,0,1,1}-{3277,3661,0,1,3}-{3276,3657,0,1,3}-{3241,9907,0,1,4}-{3243,9914,0,1,1}-{3242,9913,0,1,6}-{3242,9916,0,1,5}-{3239,9914,0,1,1}-{2928,3244,1,1,4}-{2924,3253,1,1,3}-{2927,3252,1,1,4}-{2927,3254,1,1,3}-{2713,4892,0,1,3}-{2711,4899,0,1,3}-{2732,4901,0,1,3}-{2729,4893,0,1,3}-{2713,4907,0,1,3}"
- },
- {
- "npc_id": "104",
- "loc_data": "{2894,9849,0,1,0}-{2905,9851,0,1,0}-{2915,9852,0,1,0}-{2934,9837,0,1,0}-{2935,9828,0,1,0}-{2912,9820,0,1,0}-{2900,9819,0,1,0}-{3093,3357,1,1,6}"
- },
- {
- "npc_id": "105",
- "loc_data": "{2632,3280,0,1,1}-{2633,3274,0,1,3}-{3094,3601,0,1,6}-{3109,3600,0,1,2}-{3091,3604,0,1,0}-{2497,3164,0,1,2}-{3023,4508,0,1,7}-{2696, 3329, 0,1,4}-{2708, 3336, 0,1,4}"
- },
- {
- "npc_id": "106",
- "loc_data": "{2968,3480,0,1,6}-{2968,3490,0,1,3}-{2978,3507,0,1,1}-{2959,3445,0,1,3}-{2807,3377,0,1,6}-{3289,3353,0,1,3}"
- },
- {
- "npc_id": "107",
- "loc_data": "{2602,3267,0,1,6}-{2603,3270,0,1,4}-{2607,3268,0,1,5}-{3275,3154,0,1,6}-{3038,9802,0,1,5}-{3041,9804,0,1,6}-{3040,9795,0,1,7}-{3055,9776,0,1,4}-{3039,9769,0,1,6}-{3049,9764,0,1,3}-{3050,9770,0,1,1}-{3039,9765,0,1,1}-{3048,9762,0,1,4}-{3044,9760,0,1,6}-{3048,9779,0,1,1}-{2870,3166,0,1,3}-{2868,3159,0,1,4}-{2867,3172,0,1,5}-{2813,3112,0,1,4}-{2858,3167,0,1,3}-{2846,3153,0,1,3}-{2851,3149,0,1,1}-{2789,2949,0,1,3}-{2787,2943,0,1,3}-{2781,2949,0,1,3}-{3253,9909,0,1,4}-{3300,3312,0,1,1}-{3300,3305,0,1,3}-{3298,3300,0,1,5}-{3298,3294,0,1,0}-{3299,3290,0,1,6}-{2645,9823,0,1,1}-{2641,9819,0,1,7}-{2641,9817,0,1,2}-{2642,9813,0,1,5}-{2639,9809,0,1,2}-{2585,3479,0,1,1}-{2578,3476,0,1,7}-{2588,3485,0,1,3}"
- },
- {
- "npc_id": "108",
- "loc_data": "{2941,9779,0,1,0}-{2934,9776,0,1,0}-{2934,9768,0,1,0}-{2934,9757,0,1,0}-{2930,9752,0,1,0}-{2732,3225,0,1,0}-{2729,3224,0,1,0}-{2719,3223,0,1,0}-{2722,3220,0,1,0}-{2724,3216,0,1,0}-{2721,3213,0,1,0}-{2713,3217,0,1,0}"
- },
- {
- "npc_id": "109",
- "loc_data": "{2601,3269,0,0,0}-{2604,3272,0,0,0}-{2605,3268,0,0,0}-{2606,3271,0,0,0}"
- },
- {
- "npc_id": "110",
- "loc_data": "{3050,10337,0,1,4}-{3047,10340,0,1,4}-{3048,10346,0,1,4}-{3048,10346,0,1,3}-{3305,9400,0,1,1}-{3296,9378,0,1,3}-{3234,5497,0,1,1}-{2564,9887,0,1,4}-{2581,9897,0,1,1}-{2577,9888,0,1,1}"
- },
- {
- "npc_id": "111",
- "loc_data": "{2920,3800,0,1,3}-{2955,3901,0,1,6}-{3043,9581,0,1,1}-{3055,9577,0,1,6}-{3061,9576,0,1,4}-{3055,9571,0,1,7}-{3052,9566,0,1,6}"
- },
- {
- "npc_id": "112",
- "loc_data": "{2699,3206,0,1,1}-{3165,9880,0,1,3}-{3168,9880,0,1,1}-{3159,9903,0,1,4}-{2825,3249,0,1,6}-{3156,9907,0,1,0}-{2554,3411,0,1,3}-{2560,3406,0,1,3}-{2554,3400,0,1,3}-{2551,3401,0,1,4}-{3202,5490,0,1,4}-{3237,5555,0,1,5}-{2543,9823,0,1,3}-{2540,9819,0,1,5}-{2543,9817,0,1,4}"
- },
- {
- "npc_id": "113",
- "loc_data": "{2622,3272,0,0,0}-{2896,2946,0,0,0}-{2918,2961,0,0,0}-{2926,2986,0,0,0}-{2930,3044,0,0,0}-{2926,3056,0,0,0}-{2916,3065,0,0,0}-{2835,9526,0,1,4}-{2832,9514,0,1,4}-{2825,9521,0,1,5}-{2846,9520,0,1,3}-{2838,9508,0,1,0}-{2832,9495,0,1,6}-{2838,9492,0,1,6}-{2851,9485,0,1,3}-{2847,9481,0,1,3}-{2865,9494,0,1,3}-{2855,9502,0,1,2}-{2870,9496,0,1,1}-{2851,9511,0,1,2}-{2853,9519,0,1,3}-{2857,9520,0,1,6}-{2863,9525,0,1,1}-{2869,9530,0,1,5}-{2865,9515,0,1,4}-{2868,9507,0,1,3}-{2874,9512,0,1,6}"
- },
- {
- "npc_id": "115",
- "loc_data": "{2572,3028,0,1,2}-{2550,3046,0,1,4}-{2572,3034,0,1,3}-{2576,3026,0,1,4}-{2534,2975,0,1,1}-{2518,2974,0,1,1}-{2573,2987,0,1,1}-{2592,2967,0,1,3}-{2589,2961,0,0,2}-{2575,2989,0,1,0}-{2574,2992,0,1,4}-{2521,2974,0,1,4}-{2500,3092,0,1,6}-{2524,3375,0,1,3}-{2524,3374,0,1,3}-{2529,3374,0,1,3}-{2532,3375,0,1,1}-{2532,3373,0,1,1}-{2527,3376,0,1,6}-{2525,3373,0,1,7}-{2525,3373,0,1,5}-{2511,3086,0,1,1}-{2511,3084,0,1,3}-{2503,3114,0,1,6}-{2509,3120,0,1,4}-{2506,3107,0,1,4}-{2500,3112,0,1,4}-{2521,3045,0,1,6}-{2517,3043,0,1,5}-{2500,3095,0,1,3}-{2497,3090,0,1,4}-{2502,3099,0,1,4}-{2504,3097,0,1,4}-{2503,3134,0,1,3}-{2554,3196,0,1,7}-{2519,3039,0,1,4}-{2722,9701,0,1,1}-{2720,9715,0,1,1}-{2721,9669,0,1,1}-{2722,9707,0,1,1}-{2723,9716,0,1,1}-{2717,9669,0,1,1}"
- },
- {
- "npc_id": "116",
- "loc_data": "{2622,3277,0,1,5}"
- },
- {
- "npc_id": "117",
- "loc_data": "{2904,9734,0,1,0}-{3118,9845,0,1,4}-{3111,9844,0,1,6}-{3123,9845,0,1,3}-{3114,9833,0,1,3}-{3110,9841,0,1,1}-{3119,9839,0,1,1}-{3097,9832,0,1,0}-{3101,9832,0,1,1}-{3107,9829,0,1,3}-{3115,9831,0,1,4}-{3109,9835,0,1,4}-{3044,10321,0,1,2}-{3044,10316,0,1,4}-{3045,10308,0,1,4}-{3048,10317,0,1,2}-{2548,3146,0,1,1}-{2542,3145,0,1,4}-{2503,3150,0,1,4}"
- },
- {
- "npc_id": "118",
- "loc_data": "{2930,9703,0,1,0}-{2933,9702,0,1,0}-{3042,3465,0,1,1}-{3035,3443,0,1,6}-{3042,3468,0,1,3}-{3008,3449,0,1,4}-{3000,9842,0,1,2}-{2996,9844,0,1,4}-{3003,9828,0,1,1}-{2995,9811,0,1,3}-{3002,9811,0,1,3}-{2994,9809,0,1,5}-{3004,9813,0,1,6}-{2998,9828,0,1,4}-{3004,9799,0,1,4}-{2997,9809,0,1,0}-{3019,9813,0,1,4}-{2983,9807,0,1,6}-{3012,9812,0,1,3}-{3010,9811,0,1,3}-{2964,9811,0,1,1}-{3025,9801,0,1,4}-{3026,9824,0,1,1}-{3018,9819,0,1,6}-{3028,9815,0,1,3}-{3024,9811,0,1,4}-{3021,9826,0,1,5}-{3022,9832,0,1,1}-{3023,9833,0,1,6}-{3027,9833,0,1,3}-{3028,9828,0,1,6}-{3023,9814,0,1,6}-{3042,9831,0,1,4}-{3024,9824,0,1,6}-{3019,9847,0,1,0}-{3034,9847,0,1,7}-{3021,9851,0,1,5}-{3043,9824,0,1,3}-{3038,9821,0,1,1}-{3044,9818,0,1,4}-{3047,9814,0,1,4}-{3037,9814,0,1,6}-{2603,3056,0,1,0}-{2598,3064,0,1,3}-{2589,3068,0,1,5}"
- },
- {
- "npc_id": "119",
- "loc_data": "{3248,3794,0,1,1}-{2921,9757,0,1,0}-{2915,9759,0,1,0}-{2927,9761,0,1,0}-{2925,9769,0,1,0}-{2931,9784,0,1,0}-{2938,9788,0,1,0}-{3029,10313,0,1,4}-{3028,10309,0,1,4}-{3033,10311,0,1,6}-{3035,10309,0,1,1}-{3035,10313,0,1,1}-{3244,3797,0,1,3}-{3245,3790,0,1,4}-{3239,3781,0,1,5}-{3253,3791,0,1,1}-{3245,3802,0,1,1}-{3250,3808,0,1,3}-{3246,3800,0,1,6}-{3246,3795,0,1,2}"
- },
- {
- "npc_id": "120",
- "loc_data": "{2874,9880,0,1,0}-{2861,9874,0,1,0}-{2863,9874,0,1,0}-{2866,9874,0,1,0}-{2865,9877,0,1,0}-{2864,9877,0,1,0}-{2861,9877,0,1,0}-{2867,9877,0,1,0}-{2867,9879,0,1,0}"
- },
- {
- "npc_id": "122",
- "loc_data": "{2996,9574,0,1,6}-{3007,9579,0,1,7}-{3001,9580,0,1,4}-{3018,9580,0,1,3}-{3021,9585,0,1,4}-{3024,9582,0,1,4}-{2507,3726,0,1,2}-{2523,3724,0,1,3}-{2535,9556,0,1,4}"
- },
- {
- "npc_id": "123",
- "loc_data": "{3023,3801,0,1,4}-{3021,3805,0,1,0}-{3026,3805,0,1,1}-{3029,3801,0,1,3}-{3020,3808,0,1,3}-{3027,3810,0,1,6}-{3032,3805,0,1,1}-{2533,9554,0,1,4}-{2531,9556,0,1,5}-{2522,9562,0,1,4}-{2524,9558,0,1,4}-{2518,9562,0,1,6}-{2515,9566,0,1,3}-{2517,9573,0,1,1}-{2675,3731,0,1,6}-{2669,3726,0,1,6}-{2655,3727,0,1,6}-{2661,3732,0,1,6}-{2656,3720,0,1,6}"
- },
- {
- "npc_id": "124",
- "loc_data": "{3121,9997,0,1,0}-{3124,9996,0,1,0}-{3125,9993,0,1,0}-{3121,9993,0,1,0}-{3115,9992,0,1,0}-{3118,9990,0,1,0}-{3122,9989,0,1,0}-{3124,9974,0,1,0}-{3119,9976,0,1,0}-{3116,9974,0,1,0}-{3118,9971,0,1,0}-{3142,5532,0,1,6}-{3141,5531,0,1,6}-{3139,5526,0,1,3}-{3143,5524,0,1,3}-{3148,5523,0,1,4}-{3148,5531,0,1,4}"
- },
- {
- "npc_id": "125",
- "loc_data": "{2969,3916,0,1,0}-{2963,3928,0,1,0}-{2973,3941,0,1,0}-{2951,3908,0,1,0}-{2950,3912,0,1,0}-{2952,3915,0,1,0}-{2948,3917,0,1,0}-{2951,3923,0,1,0}-{2956,3924,0,1,0}-{2957,3931,0,1,0}-{2950,3939,0,1,0}-{2845,3517,0,1,4}-{2848,3515,0,1,4}-{3050,9570,0,1,3}-{2958,3867,0,1,3}-{2956,3857,0,1,6}-{2952,3862,0,1,3}-{2949,3858,0,1,4}-{2955,3875,0,1,7}-{2954,3874,0,1,5}-{2962,3876,0,1,1}-{2961,3877,0,1,3}-{2947,3878,0,1,6}-{2959,3884,0,1,4}-{2956,3885,0,1,3}-{2956,3886,0,1,3}-{2948,3886,0,1,1}-{3043,9579,0,1,2}-{3056,9585,0,1,0}-{3058,9575,0,1,1}-{3052,9582,0,1,0}-{3049,9577,0,1,4}-{3042,9586,0,1,6}-{3052,9588,0,1,1}-{3049,9590,0,1,5}-{3060,9578,0,1,3}-{3054,9566,0,1,7}-{3227,5443,0,1,5}-{3220,5448,0,1,5}-{3208,5443,0,1,6}-{3207,5448,0,1,4}"
- },
- {
- "npc_id": "126",
- "loc_data": "{2381,4422,0,1,5}-{2381,4425,0,1,4}-{2382,4429,0,1,0}-{2385,4419,0,1,0}-{2388,4421,0,1,1}-{2388,4428,0,1,4}"
- },
- {
- "npc_id": "127",
- "loc_data": "{2955,9795,0,1,0}-{2956,9791,0,1,0}-{2962,9792,0,1,0}-{2966,9788,0,1,0}-{2959,9783,0,1,0}-{2964,9775,0,1,0}-{2954,9776,0,1,0}-{3193,3959,0,0,0}-{3188,3960,0,0,0}-{3190,3962,0,0,0}-{3187,3959,0,0,0}-{3192,3961,0,0,0}-{3187,3960,0,0,0}-{3193,3959,0,0,0}-{3187,3961,0,0,0}"
- },
- {
- "npc_id": "128",
- "loc_data": "{2610,3274,0,1,0}-{2610,3275,0,1,0}-{2615,3276,0,1,0}-{2616,3275,0,1,0}-{2616,3276,0,1,0}-{3193,3958,0,1,0}-{2877,3154,0,1,0}-{2878,3153,0,1,0}-{2870,3161,0,1,0}-{2822,3192,0,1,5}-{2770,3213,0,0,0}-{2759,3179,0,0,0}-{2741,3173,0,0,0}-{2757,3170,0,0,0}-{2746,3167,0,0,0}-{2781,3173,0,1,0}-{2746,3147,0,1,0}-{2733,3162,0,1,0}-{2730,3146,0,1,0}-{2782,3104,0,1,0}-{2782,3103,0,1,0}-{2777,3090,0,1,0}-{2773,3089,0,1,0}-{2803,3115,0,1,0}-{2808,3112,0,1,0}-{2887,3145,0,1,0}-{2824,3084,0,1,0}-{2821,3078,0,1,0}-{2817,3078,0,1,0}-{2837,3076,0,1,0}-{2844,3040,0,1,0}-{2840,3049,0,1,0}-{2837,3043,0,1,0}-{2834,3042,0,1,0}-{2827,3026,0,1,0}-{2824,3018,0,1,0}-{2830,3021,0,1,0}-{2832,3018,0,1,0}-{2925,2969,0,1,0}-{2939,2977,0,1,0}-{2936,2980,0,1,0}-{2933,2976,0,1,0}-{2930,2971,0,1,0}-{2928,2984,0,1,0}-{2942,2983,0,1,0}-{2936,2989,0,1,0}"
- },
- {
- "npc_id": "131",
- "loc_data": "{2594,3271,0,1,4}-{2593,3269,0,1,1}-{2592,3272,0,1,6}"
- },
- {
- "npc_id": "132",
- "loc_data": "{2600,3275,0,1,6}-{2600,3279,0,1,4}-{2603,3279,0,1,3}-{2603,3281,0,1,3}-{2604,3277,0,1,6}-{2867,3163,0,1,3}-{2883,3147,0,1,6}-{2856,3144,0,1,7}-{2812,3180,0,1,1}-{2791,3181,0,1,3}-{2749,3173,0,1,3}-{2758,3170,0,1,4}-{2754,3167,0,1,3}-{2754,3175,0,1,1}-{2891,3079,0,1,1}-{2897,3064,0,1,0}-{2896,3071,0,1,1}-{2837,3038,0,1,0}-{2837,3041,0,1,3}-{2831,3031,0,1,3}-{2818,3054,0,1,4}-{2832,3050,0,1,6}-{2832,3011,0,1,4}-{2784,3005,0,1,1}-{2782,3008,0,1,1}-{2791,2999,0,1,2}-{2791,2988,0,1,1}-{2795,2987,0,1,6}-{2797,2985,0,1,3}-{2876,3011,0,1,3}-{2863,3021,0,1,3}-{2867,3016,0,1,1}-{2871,3022,0,1,4}-{2877,3028,0,1,3}-{2868,3012,0,1,4}-{2910,3026,0,1,5}-{2902,3010,0,1,1}-{2928,3029,0,1,4}-{2920,3027,0,1,6}-{2875,2936,0,1,2}-{2945,2979,0,1,3}-{2953,2965,0,1,4}-{2952,2982,0,1,4}-{2955,3003,0,1,3}-{2944,2999,0,1,5}-{2932,3023,0,1,3}-{2933,3024,0,1,3}-{2929,3009,0,1,0}-{2927,3022,0,1,1}-{2926,3023,0,1,6}-{2927,3020,0,1,7}-{2908,3078,0,1,4}-{2920,3081,0,1,4}-{2890,3082,0,1,1}-{2916,3082,0,1,1}"
- },
- {
- "npc_id": "133",
- "loc_data": "{3079,3618,0,0,7}-{3070,3629,0,0,3}-{3073,3634,0,0,6}-{3088,3636,0,0,3}-{3092,3637,0,0,2}-{3073,3636,0,0,0}-{3070,3657,0,0,5}-{3109,3634,0,0,2}-{3114,3628,0,0,1}-{3107,3626,0,0,2}-{3118,3639,0,0,5}-{3119,3627,0,0,3}-{3119,3604,0,0,1}-{3136,3612,0,0,5}-{3124,3586,0,0,0}"
- },
- {
- "npc_id": "134",
- "loc_data": "{2871,9793,0,1,0}-{2869,9799,0,1,0}-{2876,9806,0,1,0}-{2864,9819,0,1,0}-{2857,9822,0,1,0}-{2858,9814,0,1,0}-{2859,9802,0,1,0}-{2849,9809,0,1,0}-{3088,9945,0,1,3}-{3089,9943,0,1,0}-{3090,9944,0,1,7}-{3043,10262,0,1,1}-{3044,10252,0,1,4}-{3051,10257,0,1,3}-{3055,10253,0,1,3}-{3067,10255,0,1,3}-{3067,10257,0,1,3}-{3068,10253,0,1,2}-{3069,10257,0,1,4}-{3069,10259,0,1,0}-{3278,5477,0,1,1}-{3278,5476,0,1,2}-{3277,5451,0,1,5}-{3283,5449,0,1,4}-{3280,5476,0,1,3}-{3274,5463,0,1,1}-{3272,5477,0,1,1}-{3271,5473,0,1,4}-{3270,5459,0,1,1}-{3271,5454,0,1,3}-{3278,5525,0,1,3}-{3272,5529,0,1,3}-{3270,5536,0,1,6}-{3277,5536,0,1,4}-{3277,5512,0,1,3}-{3279,5516,0,1,6}-{3280,5531,0,1,6}-{2598,9558,0,1,6}-{2599,9557,0,1,4}-{2598,9556,0,1,4}-{2600,9555,0,1,3}-{2601,9553,0,1,1}-{2572,9569,0,1,3}-{2599,9552,0,1,6}-{2601,9560,0,1,1}-{2599,9564,0,1,6}-{2600,9563,0,1,4}-{2597,9569,0,1,1}-{2594,9571,0,1,2}-{2589,9571,0,1,4}-{2589,9574,0,1,3}-{2584,9572,0,1,6}-{2581,9575,0,1,6}-{2583,9577,0,1,6}-{2582,9572,0,1,3}-{2572,9568,0,1,1}-{2570,9567,0,1,1}-{2572,9571,0,1,3}-{2575,9572,0,1,0}-{2577,9574,0,1,3}-{2580,9578,0,1,3}-{2597,9572,0,1,6}"
- },
- {
- "npc_id": "138",
- "loc_data": "{2375,3434,0,1,4}-{2379,3438,0,1,6}"
- },
- {
- "npc_id": "139",
- "loc_data": "{2378,3432,0,1,2}-{2375,3438,0,1,7}-{2376,3431,0,1,1}-{2380,3438,0,1,4}"
- },
- {
- "npc_id": "141",
- "loc_data": "{3324,5510,0,1,3}-{3286,5512,0,1,1}-{3310,5524,0,1,2}-{3289,5527,0,1,7}-{3296,5519,0,1,4}"
- },
- {
- "npc_id": "142",
- "loc_data": "{2514,3194,0,1,3}-{2547,3178,0,1,1}"
- },
- {
- "npc_id": "143",
- "loc_data": "{2787,2929,0,1,6}-{2835,2934,0,1,4}-{2889,2936,0,1,2}-{2921,2937,0,1,1}"
- },
- {
- "npc_id": "144",
- "loc_data": "{3043,9779,0,1,4}-{3047,9769,0,1,1}-{2847,3282,0,1,6}-{2846,3293,0,1,6}-{2850,3301,0,1,4}-{2852,3308,0,1,4}-{2861,3297,0,1,1}-{2863,3283,0,1,5}"
- },
- {
- "npc_id": "146",
- "loc_data": "{2827,3139,0,1,0}-{2976,3053,0,1,0}-{2985,3038,0,1,0}-{2994,3048,0,1,5}-{2992,3030,0,1,0}-{2896,2992,0,1,7}"
- },
- {
- "npc_id": "151",
- "loc_data": "{2756,3156,0,0,4}-{2760,3152,0,0,6}"
- },
- {
- "npc_id": "152",
- "loc_data": "{3103,3347,0,0,0}-{3107,3337,0,0,0}-{3107,3342,0,0,0}-{3107,3344,0,0,0}-{3108,3346,0,0,0}-{3111,3339,0,0,0}-{3111,3348,0,0,0}-{3115,3344,0,0,0}-{3120,3344,0,0,0}-{3122,3335,0,0,0}"
- },
- {
- "npc_id": "153",
- "loc_data": "{2415,4466,0,0,0}-{2419,4427,0,0,0}-{2421,4468,0,0,0}-{2426,4431,0,0,0}-{2500,3492,0,1,4}-{2245,3147,0,1,4}-{2246,3143,0,1,0}-{2242,3140,0,1,3}-{2247,3149,0,1,1}"
- },
- {
- "npc_id": "154",
- "loc_data": "{2394,4453,0,0,0}-{2394,4457,0,0,0}-{2406,4447,0,0,0}-{2568,3470,0,1,5}-{2523,3164,0,1,4}-{2534,3173,0,1,3}-{2538,3160,0,1,3}-{2246,3144,0,1,4}-{2245,3147,0,1,4}-{2240,3147,0,1,3}-{2247,3142,0,1,5}"
- },
- {
- "npc_id": "155",
- "loc_data": "{3235,3222,0,0,0}-{3255,3226,0,0,0}-{2561,3471,0,1,0}"
- },
- {
- "npc_id": "157",
- "loc_data": "{2502,3521,0,1,5}"
- },
- {
- "npc_id": "162",
- "loc_data": "{2480,3426,0,1,6}-{2489,3429,0,1,1}-{2480,3431,0,1,0}-{2475,3418,0,1,4}-{2470,3423,0,1,1}"
- },
- {
- "npc_id": "166",
- "loc_data": "{2450,3480,1,0,1}-{2449,3480,1,0,1}-{2448,3480,1,0,1}-{2440,3488,1,0,4}-{2440,3487,1,0,4}-{2448,3427,1,0,6}-{2448,3424,1,0,6}-{2443,3424,1,0,3}-{2443,3425,1,0,3}"
- },
- {
- "npc_id": "170",
- "loc_data": "{2890,3175,0,1,4}"
- },
- {
- "npc_id": "175",
- "loc_data": "{3084,3495,0,1,4}-{2994,9549,0,1,6}-{2993,9551,0,1,6}-{2995,9555,0,1,6}-{2999,9548,0,1,0}-{3182,3365,0,1,6}"
- },
- {
- "npc_id": "178",
- "loc_data": "{2909,9690,0,1,0}-{2911,9689,0,1,0}-{2905,9687,0,1,0}-{2912,9682,0,1,0}-{2917,9681,0,1,0}-{2918,9679,0,1,0}-{2916,9677,0,1,0}-{2911,9675,0,1,0}-{2906,9675,0,1,0}-{2905,9673,0,1,0}-{2897,9675,0,1,0}-{2899,9678,0,1,0}-{2898,9682,0,1,0}-{2897,9687,0,1,0}-{2903,9690,0,1,0}-{2904,9692,0,1,0}-{2902,9693,0,1,0}-{2915,9691,0,1,0}-{2916,9694,0,1,0}-{2913,9694,0,1,0}-{2908,9694,0,1,0}-{2908,9702,0,1,0}-{2906,9706,0,1,0}-{2915,9703,0,1,0}-{2915,9711,0,1,0}-{2899,9700,0,1,0}-{2898,9703,0,1,0}-{2898,9708,0,1,0}-{2900,9710,0,1,0}-{2907,9711,0,1,0}-{2923,9710,0,1,0}-{2920,9708,0,1,0}-{2919,9703,0,1,0}-{2891,9679,0,1,0}-{2891,9682,0,1,0}-{2890,9692,0,1,0}-{2891,9695,0,1,0}-{2892,9701,0,1,0}-{2893,9701,0,1,0}-{2892,9709,0,1,0}-{2895,9710,0,1,0}-{2942,9801,0,1,0}-{2938,9812,0,1,0}-{3096,3220,0,1,1}-{3273,3507,0,1,6}"
- },
- {
- "npc_id": "179",
- "loc_data": "{3025,3511,1,1,3}-{3038,3505,0,1,4}-{3026,3494,0,1,6}-{3026,3505,0,1,4}-{3026,3512,0,1,6}-{3025,3512,0,1,4}-{3027,3512,0,1,6}-{3030,3511,0,1,6}-{3028,3511,0,1,1}-{3039,3855,0,1,4}-{3031,3852,0,1,1}-{3032,3849,0,1,3}-{3023,3849,0,1,6}-{3022,3847,0,1,3}-{3023,3514,1,1,3}-{3014,3516,2,1,1}"
- },
- {
- "npc_id": "180",
- "loc_data": "{2744,3519,0,0,0}-{2957,3238,0,1,4}-{2988,3423,0,1,7}-{2953,3240,0,1,3}-{3011,3277,0,1,1}-{3009,3280,0,1,1}-{3110,3295,0,1,4}"
- },
- {
- "npc_id": "181",
- "loc_data": "{2937,9847,0,1,0}-{2934,9846,0,1,0}-{2929,9848,0,1,0}-{2931,9846,0,1,0}-{2937,9849,0,1,0}-{2936,9850,0,1,0}-{3105,9942,0,1,3}-{3106,9934,0,1,3}-{3109,9930,0,1,1}-{2563,3355,0,1,4}-{2561,3355,0,1,3}-{2561,3357,0,1,1}-{2563,3358,0,1,4}"
- },
- {
- "npc_id": "182",
- "loc_data": "{3041,3958,0,0,0}-{3043,3958,0,0,0}-{3039,3958,0,0,0}-{3039,3950,0,0,0}-{3041,3958,0,0,0}-{3041,3954,0,0,0}-{3038,3957,0,0,0}-{3041,3954,0,0,0}-{3038,3955,0,0,0}-{3690,2966,0,1,4}"
- },
- {
- "npc_id": "183",
- "loc_data": "{3043,3958,0,0,0}-{3043,3950,0,0,0}-{3042,3950,0,0,0}-{3039,3951,0,0,0}-{3044,3949,0,0,0}-{2805,3160,0,0,0}-{2803,3190,0,1,4}-{2795,3167,0,0,0}-{2793,3184,0,1,3}-{3670,2977,0,1,1}-{3654,2960,0,1,0}-{3698,2969,0,1,2}-{3676,2991,0,1,3}-{3666,2994,0,1,7}-{3666,2981,1,1,4}"
- },
- {
- "npc_id": "184",
- "loc_data": "{2994,9584,0,1,6}-{2992,9573,0,1,1}-{2990,9583,0,1,4}-{2998,9572,0,1,2}-{2998,9573,0,1,4}-{2989,9578,0,1,0}-{2993,9566,0,1,4}-{2994,9570,0,1,3}-{3659,2952,0,1,6}-{3669,2961,0,1,4}-{3683,2977,0,1,6}-{3668,2981,0,1,3}-{3655,2973,0,1,1}-{3675,2967,0,1,3}"
- },
- {
- "npc_id": "186",
- "loc_data": "{3158,3571,0,0,7}-{3170,3575,0,0,0}-{3172,3578,0,0,5}-{3175,3564,0,0,4}-{3176,3570,0,0,2}-{3180,3565,0,0,5}-{3189,3565,0,0,7}-{3189,3580,0,0,0}-{3192,3568,0,0,7}-{3159,3563,0,0,1}-{3163,3572,0,0,6}-{3173,3574,0,0,3}-{3179,3561,0,0,2}"
- },
- {
- "npc_id": "187",
- "loc_data": "{3291,3924,0,1,4}-{3294,3930,0,1,4}-{3286,3933,0,1,6}-{3285,3928,0,1,6}-{3287,3935,1,1,6}-{3286,3927,1,1,6}-{3283,3936,2,1,6}-{3292,3932,1,1,4}-{3291,3940,0,1,6}-{3280,3943,0,1,6}-{3278,3926,0,1,4}"
- },
- {
- "npc_id": "188",
- "loc_data": "{2933,3516,0,1,3}-{2935,3515,0,1,3}-{2932,3514,0,1,2}-{3158,5497,0,1,6}-{3157,5494,0,1,1}-{3155,5498,0,1,6}-{3140,5494,0,1,6}-{3143,5493,0,1,5}-{3142,5497,0,1,4}-{3156,5494,0,1,5}-{3148,5496,0,1,4}"
- },
- {
- "npc_id": "189",
- "loc_data": "{3151,5489,0,1,7}-{3145,5495,0,1,3}-{3142,5493,0,1,3}-{3149,5489,0,1,6}-{3155,5491,0,1,2}-{3142,5497,0,1,3}"
- },
- {
- "npc_id": "190",
- "loc_data": "{2833,9814,0,1,0}-{2829,9812,0,1,0}-{2825,9811,0,1,0}-{2829,9808,0,1,0}-{2833,9808,0,1,0}-{2827,9805,0,1,0}"
- },
- {
- "npc_id": "191",
- "loc_data": "{2730,3161,0,1,0}-{2729,3159,0,1,0}-{2727,3163,0,1,0}-{2725,3157,0,1,0}-{2726,3161,0,1,0}-{2725,3161,0,1,0}-{2723,3155,0,1,0}-{2723,3156,0,1,0}-{2725,3162,0,1,0}-{2775,3066,0,1,0}-{2802,3071,0,1,0}-{2868,3053,0,1,0}-{2770,3018,0,1,0}-{2770,3014,0,1,0}-{2840,3018,0,1,0}-{2919,2983,0,1,0}-{2937,2993,0,1,0}-{2940,2994,0,1,0}-{2940,2997,0,1,0}-{2942,2997,0,1,0}"
- },
- {
- "npc_id": "192",
- "loc_data": "{3027,3612,0,1,6}-{3021,3611,0,1,1}-{3036,3613,0,1,4}-{3024,3606,0,1,1}-{3023,3634,0,1,3}-{3026,3637,0,1,5}-{3031,3637,0,1,2}-{3035,3637,0,1,6}-{3034,3632,0,1,6}-{3035,3629,0,1,6}-{3035,3625,0,1,5}-{3029,3626,0,1,3}-{3032,3626,0,1,4}-{3022,3626,0,1,1}-{3023,3623,0,1,6}"
- },
- {
- "npc_id": "193",
- "loc_data": "{2581,9505,0,1,4}-{2594,9497,0,1,1}-{2593,9499,0,1,7}-{2587,9498,0,1,3}-{2573,9500,0,1,5}-{2579,9503,0,1,5}-{2580,9500,0,1,4}-{2578,9497,0,1,7}"
- },
- {
- "npc_id": "195",
- "loc_data": "{3042,3708,0,0,6}-{3037,3702,0,0,5}"
- },
- {
- "npc_id": "196",
- "loc_data": "{3038,3670,0,1,1}-{3034,3674,0,1,2}"
- },
- {
- "npc_id": "198",
- "loc_data": "{3190,3358,0,1,1}"
- },
- {
- "npc_id": "199",
- "loc_data": "{3079,3443,0,1,3}"
- },
- {
- "npc_id": "201",
- "loc_data": "{2931,9692,0,0,0}"
- },
- {
- "npc_id": "205",
- "loc_data": "{2613,9523,0,1,0}"
- },
- {
- "npc_id": "206",
- "loc_data": "{3026,3455,0,1,6}-{3015,3458,0,1,5}"
- },
- {
- "npc_id": "208",
- "loc_data": "{2568,3459,0,1,4}"
- },
- {
- "npc_id": "209",
- "loc_data": "{3013,3452,0,1,6}"
- },
- {
- "npc_id": "216",
- "loc_data": "{2851,3348,0,0,7}"
- },
- {
- "npc_id": "217",
- "loc_data": "{2852,3343,0,1,2}"
- },
- {
- "npc_id": "218",
- "loc_data": "{2613,3475,0,1,2}"
- },
- {
- "npc_id": "222",
- "loc_data": "{2851,3351,0,0,7}-{2849,3348,0,0,7}"
- },
- {
- "npc_id": "225",
- "loc_data": "{2641,3437,0,0,0}"
- },
- {
- "npc_id": "227",
- "loc_data": "{2643,3440,0,0,0}"
- },
- {
- "npc_id": "228",
- "loc_data": "{2634,3427,0,0,0}"
- },
- {
- "npc_id": "229",
- "loc_data": "{2628,3413,0,1,4}"
- },
- {
- "npc_id": "230",
- "loc_data": "{2649,3454,0,0,0}"
- },
- {
- "npc_id": "231",
- "loc_data": "{2650,3468,0,0,0}"
- },
- {
- "npc_id": "232",
- "loc_data": "{2819,3487,0,0,4}"
- },
- {
- "npc_id": "237",
- "loc_data": "{2769,3403,0,1,0}-{2766,3402,0,1,3}-{2770,3402,0,1,0}-{2772,3404,0,1,1}-{2767,3405,1,1,0}-{2771,3403,1,1,6}-{2767,3401,1,1,7}"
- },
- {
- "npc_id": "239",
- "loc_data": "{2758,3516,1,0,0}"
- },
- {
- "npc_id": "240",
- "loc_data": "{2760,3501,0,1,1}"
- },
- {
- "npc_id": "241",
- "loc_data": "{2762,3498,0,0,0}"
- },
- {
- "npc_id": "242",
- "loc_data": "{2764,3509,1,0,0}"
- },
- {
- "npc_id": "243",
- "loc_data": "{2756,3513,1,0,0}"
- },
- {
- "npc_id": "244",
- "loc_data": "{2765,3504,1,0,0}"
- },
- {
- "npc_id": "245",
- "loc_data": "{2755,3517,0,0,0}"
- },
- {
- "npc_id": "247",
- "loc_data": "{2769,3402,2,1,5}"
- },
- {
- "npc_id": "250",
- "loc_data": "{2924,3405,0,0,1}"
- },
- {
- "npc_id": "251",
- "loc_data": "{2761,3512,0,0,0}"
- },
- {
- "npc_id": "253",
- "loc_data": "{2616,3172,0,1,1}-{2583,3142,0,1,6}"
- },
- {
- "npc_id": "254",
- "loc_data": "{2565,3150,0,1,6}-{2564,3146,0,1,5}-{2572,3143,0,1,4}"
- },
- {
- "npc_id": "255",
- "loc_data": "{2601,3195,0,1,3}-{2615,3188,0,1,6}-{2606,3186,0,1,3}"
- },
- {
- "npc_id": "256",
- "loc_data": "{2568,3144,0,1,3}-{2606,3180,0,1,5}-{2600,3184,0,1,4}-{2598,3185,0,1,6}-{2593,3175,0,1,2}-{2594,3182,0,1,3}-{2594,3188,0,1,3}-{2593,3193,0,1,3}-{2592,3179,0,1,1}-{2605,3171,0,1,3}-{2581,3170,0,1,6}-{2580,3166,0,1,6}-{2577,3163,0,1,1}-{2585,3150,0,1,4}"
- },
- {
- "npc_id": "259",
- "loc_data": "{2567,3140,0,0,0}"
- },
- {
- "npc_id": "260",
- "loc_data": "{2589,3142,0,0,0}"
- },
- {
- "npc_id": "261",
- "loc_data": "{2587,3142,0,0,0}"
- },
- {
- "npc_id": "262",
- "loc_data": "{2616,3162,0,0,0}-{2616,3161,0,0,0}-{2596,3142,0,0,0}"
- },
- {
- "npc_id": "263",
- "loc_data": "{2597,3143,0,0,0}"
- },
- {
- "npc_id": "265",
- "loc_data": "{2616,3167,0,0,0}"
- },
- {
- "npc_id": "267",
- "loc_data": "{2601,3168,0,0,0}"
- },
- {
- "npc_id": "268",
- "loc_data": "{2583,3171,0,0,0}"
- },
- {
- "npc_id": "278",
- "loc_data": "{3209,3215,0,0,0}"
- },
- {
- "npc_id": "279",
- "loc_data": "{2604,3209,0,0,0}"
- },
- {
- "npc_id": "280",
- "loc_data": "{2615,3258,0,1,6}"
- },
- {
- "npc_id": "281",
- "loc_data": "{2604,3219,0,1,6}-{2609,3207,0,1,6}-{2618,3211,0,1,6}"
- },
- {
- "npc_id": "282",
- "loc_data": "{3280,3494,0,1,6}-{2562,9608,0,1,6}-{2564,9604,0,1,6}"
- },
- {
- "npc_id": "283",
- "loc_data": "{2569,9602,0,1,6}"
- },
- {
- "npc_id": "284",
- "loc_data": "{2953,3450,0,0,0}"
- },
- {
- "npc_id": "285",
- "loc_data": "{3110,3330,0,0,0}"
- },
- {
- "npc_id": "286",
- "loc_data": "{3111,3367,2,0,4}"
- },
- {
- "npc_id": "287",
- "loc_data": "{2770,3403,2,1,3}"
- },
- {
- "npc_id": "288",
- "loc_data": "{3110,3366,2,0,2}-{2677,3655,0,1,3}-{2681,3653,0,1,6}"
- },
- {
- "npc_id": "289",
- "loc_data": "{2616,3302,0,1,3}"
- },
- {
- "npc_id": "290",
- "loc_data": "{2614,3306,0,1,4}"
- },
- {
- "npc_id": "296",
- "loc_data": "{3084,3518,0,1,1}"
- },
- {
- "npc_id": "297",
- "loc_data": "{3093,3518,0,1,5}"
- },
- {
- "npc_id": "298",
- "loc_data": "{3113,3513,0,1,3}"
- },
- {
- "npc_id": "299",
- "loc_data": "{3113,3511,0,1,3}"
- },
- {
- "npc_id": "300",
- "loc_data": "{3105,9569,0,0,0}"
- },
- {
- "npc_id": "302",
- "loc_data": "{2519,3429,0,1,1}"
- },
- {
- "npc_id": "304",
- "loc_data": "{2520,3496,0,1,3}"
- },
- {
- "npc_id": "305",
- "loc_data": "{2511,3484,0,0,4}"
- },
- {
- "npc_id": "306",
- "loc_data": "{2514,9580,0,1,1}"
- },
- {
- "npc_id": "307",
- "loc_data": "{2968,3206,0,0,0}"
- },
- {
- "npc_id": "308",
- "loc_data": "{2611,3393,0,1,4}"
- },
- {
- "npc_id": "309",
- "loc_data": "{2860,2976,0,0,4}-{2856,2977,0,0,4}-{2852,2973,0,0,4}-{2267,3253,0,0,4}-{2266,3253,0,0,4}-{2262,3249,0,0,4}-{2716,3530,0,0,0}-{2561,3374,0,0,4}-{2562,3374,0,0,4}-{2633,3693,0,0,4}-{2633,3694,0,0,4}-{2215,3248,0,0,4}-{2217,3245,0,0,4}-{2213,3241,0,0,4}-{3104,3424,0,0,0}-{3104,3425,0,0,0}-{2566,3370,0,0,0}-{2637,3444,0,0,0}-{2471,3146,0,0,4}-{2465,3156,0,0,4}-{2461,3150,0,0,4}-{2678,3595,0,0,4}-{2689,3598,0,0,4}"
- },
- {
- "npc_id": "310",
- "loc_data": "{2382,3414,0,0,4}-{2537,3406,0,0,4}-{2527,3412,0,0,4}-{2507,3421,0,0,4}-{2508,3421,0,0,4}-{3239,3243,0,0,6}-{3239,3241,0,0,6}-{3238,3252,0,0,6}-{2860,2972,0,0,6}-{2865,2972,0,0,4}-{2382,3415,0,0,0}-{2392,3420,0,0,0}"
- },
- {
- "npc_id": "312",
- "loc_data": "{2860,3426,0,0,1}"
- },
- {
- "npc_id": "313",
- "loc_data": "{2853,3423,0,0,1}-{2840,3356,0,0,1}-{2843,3359,0,0,1}-{2848,3361,0,0,1}-{2879,3339,0,0,1}-{2879,3338,0,0,1}-{2879,3335,0,0,1}-{2879,3334,0,0,1}-{2876,3331,0,0,1}"
- },
- {
- "npc_id": "316",
- "loc_data": "{2986,3176,0,0,4}-{3086,3227,0,0,1}-{2996,3157,0,0,1}-{3085,3230,0,0,0}"
- },
- {
- "npc_id": "322",
- "loc_data": "{2641,3700,0,0,4}-{2640,3700,0,0,4}-{2777,2740,0,0,4}-{2780,2741,0,0,4}-{2788,2741,0,0,4}-{2771,2733,0,0,4}-{2771,2734,0,0,4}"
- },
- {
- "npc_id": "323",
- "loc_data": "{2926,3177,0,0,6}-{3259,3204,0,0,3}-{3248,3161,0,0,4}-{3259,3206,0,0,3}-{2516,3575,0,0,7}-{2511,3562,0,0,7}-{2498,3547,0,0,7}"
- },
- {
- "npc_id": "324",
- "loc_data": "{2645,3708,0,0,1}-{2648,3708,0,0,1}-{2632,3427,0,0,0}-{2647,3711,0,0,1}"
- },
- {
- "npc_id": "325",
- "loc_data": "{2671,3160,0,0,4}-{2672,3160,0,0,4}-{2678,3160,0,0,4}-{2682,3160,0,0,4}-{2683,3160,0,0,4}"
- },
- {
- "npc_id": "326",
- "loc_data": "{2840,3431,0,0,0}-{3246,3156,0,0,0}-{3245,3152,0,0,0}-{3242,3148,0,0,0}-{2855,3423,0,0,1}-{3267,3148,0,0,6}-{3276,3140,0,0,6}-{3275,3140,0,0,6}-{3169,3266,0,0,3}-{3173,3274,0,0,3}-{2607,3416,0,0,1}-{2604,3417,0,0,1}-{2602,3419,0,0,1}"
- },
- {
- "npc_id": "333",
- "loc_data": "{2845,3429,0,0,6}-{2923,3178,0,0,6}-{2923,3180,0,0,6}-{2926,3180,0,0,6}-{2602,3411,0,0,3}-{2605,3413,0,0,3}-{2609,3416,0,0,3}-{2610,3413,0,0,3}-{2605,3421,0,0,1}-{2602,3423,0,0,1}-{2603,3426,0,0,1}"
- },
- {
- "npc_id": "334",
- "loc_data": "{2165,3268,0,0,4}-{2162,3274,0,0,4}-{2639,3698,0,0,4}-{2642,3698,0,0,4}-{2699,2702,0,0,4}-{2694,2706,0,0,4}-{2700,2702,0,0,4}-{2707,2698,0,0,4}-{2612,3411,0,0,0}-{2627,3415,0,0,0}-{2700,2702,0,0,0}-{2700,2702,0,0,0}-{2700,2702,0,0,0}-{2707,2698,0,0,0}-{2707,2698,0,0,0}-{2707,2698,0,0,0}"
- },
- {
- "npc_id": "336",
- "loc_data": "{2928,3218,0,1,4}"
- },
- {
- "npc_id": "338",
- "loc_data": "{2929,3222,0,0,6}"
- },
- {
- "npc_id": "340",
- "loc_data": "{2929,3217,0,1,6}"
- },
- {
- "npc_id": "342",
- "loc_data": "{3281,3382,0,0,0}"
- },
- {
- "npc_id": "343",
- "loc_data": "{3284,3382,0,0,0}"
- },
- {
- "npc_id": "344",
- "loc_data": "{3016,3187,1,1,0}-{3015,3183,1,1,0}-{3014,3181,1,1,0}-{3011,3185,1,1,0}"
- },
- {
- "npc_id": "345",
- "loc_data": "{3018,3185,2,1,0}"
- },
- {
- "npc_id": "347",
- "loc_data": "{2523,3292,0,0,0}-{2536,3294,0,0,0}-{2538,3321,0,0,0}"
- },
- {
- "npc_id": "348",
- "loc_data": "{2501,3315,0,0,0}-{2513,3325,0,0,0}-{2526,3279,0,0,0}-{2528,3297,0,0,0}-{2535,3288,0,0,0}-{2548,3287,0,0,0}"
- },
- {
- "npc_id": "349",
- "loc_data": "{2556,3266,0,0,0}"
- },
- {
- "npc_id": "350",
- "loc_data": "{2559,3266,0,0,0}"
- },
- {
- "npc_id": "351",
- "loc_data": "{2507,3325,0,1,4}"
- },
- {
- "npc_id": "352",
- "loc_data": "{2511,3322,0,1,2}-{2540,3279,0,1,6}"
- },
- {
- "npc_id": "353",
- "loc_data": "{2504,3326,0,1,1}-{2509,3314,0,1,3}-{2545,3278,0,1,3}"
- },
- {
- "npc_id": "354",
- "loc_data": "{2510,3318,0,1,6}-{2524,3271,0,1,3}"
- },
- {
- "npc_id": "355",
- "loc_data": "{2504,3318,0,0,0}"
- },
- {
- "npc_id": "356",
- "loc_data": "{2523,3307,0,0,0}"
- },
- {
- "npc_id": "357",
- "loc_data": "{2518,3309,0,0,0}-{2526,3303,0,0,0}-{2543,3309,0,0,0}-{2550,3319,0,0,0}-{2552,3319,0,0,0}"
- },
- {
- "npc_id": "358",
- "loc_data": "{2529,3285,0,0,0}"
- },
- {
- "npc_id": "360",
- "loc_data": "{2550,3272,0,1,4}"
- },
- {
- "npc_id": "361",
- "loc_data": "{2519,3277,0,1,6}"
- },
- {
- "npc_id": "362",
- "loc_data": "{2537,3324,0,1,6}"
- },
- {
- "npc_id": "363",
- "loc_data": "{2513,3315,0,1,4}"
- },
- {
- "npc_id": "364",
- "loc_data": "{2577,3298,1,0,0}"
- },
- {
- "npc_id": "366",
- "loc_data": "{2612,3324,0,0,0}"
- },
- {
- "npc_id": "367",
- "loc_data": "{2935,3210,0,1,2}"
- },
- {
- "npc_id": "368",
- "loc_data": "{3263,3407,0,1,2}"
- },
- {
- "npc_id": "369",
- "loc_data": "{2542,3326,0,0,0}-{2545,3324,0,0,0}-{2545,3327,0,0,0}-{2552,3326,0,0,0}-{2553,3322,0,0,0}-{2553,3324,0,0,0}"
- },
- {
- "npc_id": "370",
- "loc_data": "{2551,3324,1,0,0}-{2551,3327,1,0,0}"
- },
- {
- "npc_id": "371",
- "loc_data": "{2547,3326,0,0,0}-{2549,3322,0,0,0}-{2550,3326,0,0,0}-{2552,3323,0,0,0}"
- },
- {
- "npc_id": "372",
- "loc_data": "{2559,3303,0,0,6}-{2561,3303,0,0,6}-{2561,3305,0,0,4}-{2559,3305,0,0,1}"
- },
- {
- "npc_id": "373",
- "loc_data": "{2516,3274,0,0,0}"
- },
- {
- "npc_id": "375",
- "loc_data": "{3053,3249,0,0,0}"
- },
- {
- "npc_id": "376",
- "loc_data": "{3027,3217,0,1,4}"
- },
- {
- "npc_id": "377",
- "loc_data": "{3028,3223,0,1,2}"
- },
- {
- "npc_id": "378",
- "loc_data": "{3028,3220,0,1,4}"
- },
- {
- "npc_id": "379",
- "loc_data": "{2939,3156,0,1,4}"
- },
- {
- "npc_id": "380",
- "loc_data": "{2953,3149,0,0,0}-{2770,3226,0,0,0}"
- },
- {
- "npc_id": "381",
- "loc_data": "{2684,3272,0,1,4}"
- },
- {
- "npc_id": "382",
- "loc_data": "{3044,9758,0,1,3}"
- },
- {
- "npc_id": "383",
- "loc_data": "{2582,3485,0,1,7}"
- },
- {
- "npc_id": "384",
- "loc_data": "{2545,3568,0,1,7}-{2545,3571,0,1,6}"
- },
- {
- "npc_id": "385",
- "loc_data": "{2549,3568,0,1,6}"
- },
- {
- "npc_id": "386",
- "loc_data": "{2877,9797,0,1,0}"
- },
- {
- "npc_id": "387",
- "loc_data": "{3058,3488,1,0,0}"
- },
- {
- "npc_id": "388",
- "loc_data": "{2709,3485,0,1,1}-{2716,3475,0,1,3}-{2697,3472,0,1,6}-{2702,3469,0,1,3}"
- },
- {
- "npc_id": "389",
- "loc_data": "{2704,3405,3,1,3}"
- },
- {
- "npc_id": "397",
- "loc_data": "{3254,3258,0,1,1}-{3264,3258,0,1,2}-{3026,3303,0,1,4}-{2880,3248,0,1,0}-{3259,3279,0,1,6}-{3247,3292,0,1,3}-{3260,3291,0,1,2}-{3247,3282,0,1,5}-{3261,3260,0,1,1}-{3252,3283,0,1,6}"
- },
- {
- "npc_id": "398",
- "loc_data": "{2849,5091,0,0,0}-{2726,3349,0,1,6}"
- },
- {
- "npc_id": "399",
- "loc_data": "{2846,5081,0,0,0}-{2730,3349,0,1,1}"
- },
- {
- "npc_id": "400",
- "loc_data": "{2728,3377,0,1,1}"
- },
- {
- "npc_id": "401",
- "loc_data": "{2800,2943,0,0,0}-{2762,2944,0,0,0}-{2823,2941,0,0,0}-{2861,2941,0,0,0}"
- },
- {
- "npc_id": "402",
- "loc_data": "{2791,2944,0,0,0}-{2762,2943,0,0,0}-{2818,2939,0,0,0}-{2870,2943,0,0,0}-{2933,2944,0,0,0}"
- },
- {
- "npc_id": "407",
- "loc_data": "{3059,4507,0,0,3}"
- },
- {
- "npc_id": "411",
- "loc_data": "{2887,3164,0,0,0}-{2878,3161,0,0,0}"
- },
- {
- "npc_id": "412",
- "loc_data": "{2728,10122,0,1,1}-{2735,10123,0,1,3}-{2733,10129,0,1,1}-{2728,10133,0,1,6}-{2722,10133,0,1,6}-{2736,10137,0,1,1}-{2732,10142,0,1,0}-{2726,10142,0,1,6}-{2729,10140,0,1,3}-{2720,10144,0,1,6}-{2712,10142,0,1,3}-{2760,3402,0,1,4}-{2759,3400,0,1,1}-{2756,3403,0,1,1}-{2759,3400,0,1,3}-{2755,3402,0,1,1}"
- },
- {
- "npc_id": "419",
- "loc_data": "{3195,5450,0,1,6}-{3181,5449,0,1,1}"
- },
- {
- "npc_id": "420",
- "loc_data": "{3175,5454,0,1,4}"
- },
- {
- "npc_id": "421",
- "loc_data": "{3195,5459,0,1,6}-{3186,5454,0,1,5}-{3173,5494,0,1,6}-{3179,5491,0,1,1}-{3185,5492,0,1,4}-{3184,5487,0,1,3}"
- },
- {
- "npc_id": "423",
- "loc_data": "{2731,5340,0,1,7}"
- },
- {
- "npc_id": "424",
- "loc_data": "{2724,5359,0,1,3}"
- },
- {
- "npc_id": "425",
- "loc_data": "{2717,5332,0,1,7}"
- },
- {
- "npc_id": "429",
- "loc_data": "{2363,5214,0,1,6}-{2358,5214,0,1,7}-{2361,5212,0,1,6}-{2361,5209,0,1,4}-{2359,5213,0,1,1}-{2364,5215,0,1,6}-{2361,5216,0,1,1}-{2361,5212,0,1,0}"
- },
- {
- "npc_id": "437",
- "loc_data": "{2807,3191,0,0,0}"
- },
- {
- "npc_id": "444",
- "loc_data": "{2551,3197,0,1,1}-{2555,3194,0,1,4}-{2551,3157,0,1,3}-{2525,3155,0,1,3}-{2518,3149,0,1,3}-{2502,3175,0,1,1}"
- },
- {
- "npc_id": "445",
- "loc_data": "{2550,3196,0,1,4}-{2557,3197,0,1,1}-{2538,3155,0,1,7}"
- },
- {
- "npc_id": "446",
- "loc_data": "{2994,3194,0,1,1}-{3285,9896,0,1,1}-{3279,9895,0,1,6}"
- },
- {
- "npc_id": "447",
- "loc_data": "{3114,3242,0,1,1}"
- },
- {
- "npc_id": "448",
- "loc_data": "{3120,3238,0,1,6}"
- },
- {
- "npc_id": "449",
- "loc_data": "{3127,3248,0,1,1}"
- },
- {
- "npc_id": "450",
- "loc_data": "{3081,3220,0,1,0}-{3081,3222,0,1,0}"
- },
- {
- "npc_id": "451",
- "loc_data": "{2994,3215,0,1,2}-{3077,3234,0,1,0}"
- },
- {
- "npc_id": "452",
- "loc_data": "{3223,3293,0,0,0}"
- },
- {
- "npc_id": "454",
- "loc_data": "{2899,3430,1,1,3}"
- },
- {
- "npc_id": "455",
- "loc_data": "{2925,3485,0,1,5}"
- },
- {
- "npc_id": "456",
- "loc_data": "{3244,3205,0,0,0}"
- },
- {
- "npc_id": "458",
- "loc_data": "{3148,3175,0,1,4}"
- },
- {
- "npc_id": "459",
- "loc_data": "{2566,9507,0,1,6}-{2565,9506,0,0,5}-{2566,9507,0,1,3}"
- },
- {
- "npc_id": "460",
- "loc_data": "{2590,9488,0,1,3}"
- },
- {
- "npc_id": "461",
- "loc_data": "{2588,3091,1,1,3}"
- },
- {
- "npc_id": "462",
- "loc_data": "{2590,3084,0,1,5}"
- },
- {
- "npc_id": "469",
- "loc_data": "{2542,3169,0,1,4}"
- },
- {
- "npc_id": "470",
- "loc_data": "{2519,3212,0,1,3}"
- },
- {
- "npc_id": "471",
- "loc_data": "{2526,3160,1,1,6}"
- },
- {
- "npc_id": "472",
- "loc_data": "{2521,3168,0,1,4}"
- },
- {
- "npc_id": "473",
- "loc_data": "{2503,3192,0,0,0}-{2514,3159,0,0,6}"
- },
- {
- "npc_id": "475",
- "loc_data": "{2513,3262,0,1,3}-{2522,3251,0,1,1}-{2454,3300,0,1,7}-{2455,3301,0,1,7}"
- },
- {
- "npc_id": "477",
- "loc_data": "{2455,3301,0,1,6}"
- },
- {
- "npc_id": "478",
- "loc_data": "{2509,3255,0,1,3}-{2503,3254,1,1,3}"
- },
- {
- "npc_id": "481",
- "loc_data": "{2499,3266,0,0,4}"
- },
- {
- "npc_id": "482",
- "loc_data": "{2524,3258,0,1,4}"
- },
- {
- "npc_id": "483",
- "loc_data": "{2501,3234,0,0,4}"
- },
- {
- "npc_id": "484",
- "loc_data": "{2542,3169,0,1,4}-{2541,3170,0,1,4}-{2537,3168,0,1,5}"
- },
- {
- "npc_id": "491",
- "loc_data": ""
- },
- {
- "npc_id": "494",
- "loc_data": "{2807,3443,0,0,6}-{2810,3443,0,0,6}-{2657,3283,0,0,3}-{2657,3286,0,0,3}-{2615,3094,0,0,3}-{2615,3092,0,0,3}-{2615,3092,0,0,3}-{2615,3094,0,0,3}-{3122,3125,0,0,6}-{3120,3125,0,0,6}-{3090,3242,0,0,4}-{3090,3245,0,0,4}-{3090,3243,0,0,4}-{2584,3422,0,0,4}-{2584,3419,0,0,4}-{3682,2981,0,0,3}-{2618,3330,0,0,0}-{2619,3330,0,0,0}-{2584,3418,0,0,4}"
- },
- {
- "npc_id": "495",
- "loc_data": "{2809,3443,0,0,6}-{2811,3443,0,0,6}-{2615,3091,0,0,3}-{2615,3091,0,0,3}-{2615,3330,0,0,0}-{2584,3421,0,0,4}"
- },
- {
- "npc_id": "496",
- "loc_data": "{3267,3164,0,0,4}-{3267,3167,0,0,4}-{3267,3169,0,0,4}-{3682,2983,0,0,3}"
- },
- {
- "npc_id": "497",
- "loc_data": "{3267,3166,0,0,4}-{3267,3168,0,0,4}-{3682,2982,0,0,3}"
- },
- {
- "npc_id": "498",
- "loc_data": "{2384,4457,0,0,7}-{2385,4461,0,0,1}"
- },
- {
- "npc_id": "499",
- "loc_data": "{2853,2953,0,0,1}-{2852,2953,0,0,1}"
- },
- {
- "npc_id": "500",
- "loc_data": "{2880,2951,0,0,6}"
- },
- {
- "npc_id": "504",
- "loc_data": "{2870,2950,0,0,0}-{2877,2959,0,0,0}"
- },
- {
- "npc_id": "505",
- "loc_data": "{2868,2954,0,0,6}-{2876,2948,0,0,1}"
- },
- {
- "npc_id": "510",
- "loc_data": "{2780,3211,0,0,0}"
- },
- {
- "npc_id": "511",
- "loc_data": "{2834,2956,0,0,0}"
- },
- {
- "npc_id": "512",
- "loc_data": "{2862,2995,1,0,0}"
- },
- {
- "npc_id": "513",
- "loc_data": "{2857,2962,0,0,6}"
- },
- {
- "npc_id": "514",
- "loc_data": "{2870,2974,1,0,6}"
- },
- {
- "npc_id": "515",
- "loc_data": "{2834,2987,0,0,0}"
- },
- {
- "npc_id": "516",
- "loc_data": "{2826,2958,0,1,3}"
- },
- {
- "npc_id": "517",
- "loc_data": "{2870,2970,0,0,0}"
- },
- {
- "npc_id": "518",
- "loc_data": "{2764,2959,1,0,0}"
- },
- {
- "npc_id": "519",
- "loc_data": "{3228,3203,0,1,6}"
- },
- {
- "npc_id": "520",
- "loc_data": "{3217,3241,0,1,4}"
- },
- {
- "npc_id": "521",
- "loc_data": "{3217,3240,0,1,3}"
- },
- {
- "npc_id": "522",
- "loc_data": "{3218,3415,0,1,3}"
- },
- {
- "npc_id": "523",
- "loc_data": "{3217,3411,0,1,3}"
- },
- {
- "npc_id": "524",
- "loc_data": "{3316,3184,0,1,3}"
- },
- {
- "npc_id": "525",
- "loc_data": "{3316,3182,0,1,3}"
- },
- {
- "npc_id": "527",
- "loc_data": "{2959,3390,0,1,1}-{2957,3388,0,1,3}"
- },
- {
- "npc_id": "528",
- "loc_data": "{3078,3512,0,1,3}"
- },
- {
- "npc_id": "529",
- "loc_data": "{3079,3507,0,1,7}"
- },
- {
- "npc_id": "530",
- "loc_data": "{2947,3217,0,1,1}"
- },
- {
- "npc_id": "531",
- "loc_data": "{2947,3212,0,1,1}"
- },
- {
- "npc_id": "532",
- "loc_data": "{2906,3145,0,1,3}"
- },
- {
- "npc_id": "533",
- "loc_data": "{2906,3144,0,1,3}"
- },
- {
- "npc_id": "534",
- "loc_data": "{2375,4449,0,1,5}"
- },
- {
- "npc_id": "535",
- "loc_data": "{2376,4447,0,0,0}"
- },
- {
- "npc_id": "536",
- "loc_data": "{3192,3359,1,1,3}"
- },
- {
- "npc_id": "537",
- "loc_data": "{3192,3355,1,1,6}"
- },
- {
- "npc_id": "538",
- "loc_data": "{3076,3429,0,1,3}"
- },
- {
- "npc_id": "539",
- "loc_data": "{3299,3204,0,0,0}"
- },
- {
- "npc_id": "540",
- "loc_data": "{3288,3212,0,1,6}"
- },
- {
- "npc_id": "541",
- "loc_data": "{3288,3190,0,1,3}"
- },
- {
- "npc_id": "542",
- "loc_data": "{3316,3175,0,1,3}"
- },
- {
- "npc_id": "543",
- "loc_data": "{3272,3182,0,1,6}"
- },
- {
- "npc_id": "544",
- "loc_data": "{3316,3164,0,1,3}"
- },
- {
- "npc_id": "545",
- "loc_data": "{3322,3195,0,1,3}"
- },
- {
- "npc_id": "546",
- "loc_data": "{3203,3433,0,1,3}"
- },
- {
- "npc_id": "547",
- "loc_data": "{3217,3435,0,0,3}"
- },
- {
- "npc_id": "548",
- "loc_data": "{3205,3416,0,1,6}"
- },
- {
- "npc_id": "549",
- "loc_data": "{3229,3438,0,1,6}"
- },
- {
- "npc_id": "550",
- "loc_data": "{3232,3423,0,1,6}"
- },
- {
- "npc_id": "551",
- "loc_data": "{3203,3397,0,1,3}"
- },
- {
- "npc_id": "552",
- "loc_data": "{3205,3399,0,1,3}"
- },
- {
- "npc_id": "553",
- "loc_data": "{3253,3403,0,1,1}"
- },
- {
- "npc_id": "554",
- "loc_data": "{3281,3398,0,1,3}"
- },
- {
- "npc_id": "556",
- "loc_data": "{3012,3244,0,1,6}"
- },
- {
- "npc_id": "557",
- "loc_data": "{3012,3203,0,1,1}"
- },
- {
- "npc_id": "558",
- "loc_data": "{3013,3225,0,1,1}"
- },
- {
- "npc_id": "559",
- "loc_data": "{3026,3252,0,1,3}"
- },
- {
- "npc_id": "560",
- "loc_data": "{2767,3122,0,1,6}"
- },
- {
- "npc_id": "562",
- "loc_data": "{2799,3438,0,1,1}"
- },
- {
- "npc_id": "563",
- "loc_data": "{2803,3430,0,1,6}"
- },
- {
- "npc_id": "564",
- "loc_data": "{2485,4450,0,1,3}"
- },
- {
- "npc_id": "565",
- "loc_data": "{2476,4467,0,1,2}"
- },
- {
- "npc_id": "566",
- "loc_data": "{2480,4471,0,1,4}"
- },
- {
- "npc_id": "568",
- "loc_data": "{2925,3143,0,1,3}"
- },
- {
- "npc_id": "569",
- "loc_data": "{2659,3316,0,1,2}"
- },
- {
- "npc_id": "570",
- "loc_data": "{2669,3303,0,1,5}"
- },
- {
- "npc_id": "571",
- "loc_data": "{2655,3310,0,1,1}-{2669,3310,0,1,3}"
- },
- {
- "npc_id": "572",
- "loc_data": "{2659,3296,0,1,4}"
- },
- {
- "npc_id": "573",
- "loc_data": "{2663,3296,0,1,4}"
- },
- {
- "npc_id": "574",
- "loc_data": "{2656,3300,0,1,3}"
- },
- {
- "npc_id": "575",
- "loc_data": "{2821,3442,0,1,6}"
- },
- {
- "npc_id": "576",
- "loc_data": "{2836,3447,0,1,4}"
- },
- {
- "npc_id": "577",
- "loc_data": "{2975,3384,0,1,3}"
- },
- {
- "npc_id": "578",
- "loc_data": "{2807,3342,0,1,6}"
- },
- {
- "npc_id": "579",
- "loc_data": "{3034,9845,0,1,3}"
- },
- {
- "npc_id": "580",
- "loc_data": "{2952,3388,0,1,3}"
- },
- {
- "npc_id": "581",
- "loc_data": "{2975,3314,0,1,3}"
- },
- {
- "npc_id": "582",
- "loc_data": "{2998,9828,0,1,1}"
- },
- {
- "npc_id": "583",
- "loc_data": "{3011,3257,0,1,3}"
- },
- {
- "npc_id": "584",
- "loc_data": "{2944,3332,0,1,3}"
- },
- {
- "npc_id": "585",
- "loc_data": "{2946,3205,0,1,6}"
- },
- {
- "npc_id": "586",
- "loc_data": "{2884,3450,0,1,3}"
- },
- {
- "npc_id": "587",
- "loc_data": "{2897,3428,0,1,3}"
- },
- {
- "npc_id": "588",
- "loc_data": "{2803,3152,0,1,3}"
- },
- {
- "npc_id": "589",
- "loc_data": "{2660,3291,0,1,3}"
- },
- {
- "npc_id": "590",
- "loc_data": "{2613,3294,0,1,3}"
- },
- {
- "npc_id": "591",
- "loc_data": "{2615,3292,0,1,6}"
- },
- {
- "npc_id": "592",
- "loc_data": "{2597,3401,0,1,2}"
- },
- {
- "npc_id": "593",
- "loc_data": "{2569,3098,0,1,3}"
- },
- {
- "npc_id": "594",
- "loc_data": "{2998,9840,0,1,3}"
- },
- {
- "npc_id": "595",
- "loc_data": "{3271,3412,0,1,3}"
- },
- {
- "npc_id": "596",
- "loc_data": "{3037,3705,0,0,0}"
- },
- {
- "npc_id": "597",
- "loc_data": "{3025,3701,0,1,5}"
- },
- {
- "npc_id": "598",
- "loc_data": "{2943,3384,0,1,3}"
- },
- {
- "npc_id": "599",
- "loc_data": "{2522,5001,0,0,4}"
- },
- {
- "npc_id": "600",
- "loc_data": "{2449,3511,1,1,6}"
- },
- {
- "npc_id": "601",
- "loc_data": "{2482,3510,1,1,0}"
- },
- {
- "npc_id": "602",
- "loc_data": "{2469,3488,2,1,6}"
- },
- {
- "npc_id": "603",
- "loc_data": "{2491,3488,1,1,6}"
- },
- {
- "npc_id": "604",
- "loc_data": "{3001,3144,0,0,0}"
- },
- {
- "npc_id": "605",
- "loc_data": "{2985,3343,2,1,2}"
- },
- {
- "npc_id": "606",
- "loc_data": "{2974,3343,0,1,0}"
- },
- {
- "npc_id": "607",
- "loc_data": "{2539,3547,0,1,4}"
- },
- {
- "npc_id": "608",
- "loc_data": "{2962,3337,2,1,4}"
- },
- {
- "npc_id": "610",
- "loc_data": "{3027,3506,0,0,0}"
- },
- {
- "npc_id": "611",
- "loc_data": "{3029,3505,0,1,0}"
- },
- {
- "npc_id": "612",
- "loc_data": "{3028,3510,0,0,0}"
- },
- {
- "npc_id": "619",
- "loc_data": "{3353,3333,0,1,3}"
- },
- {
- "npc_id": "636",
- "loc_data": "{2395,3494,0,0,6}-{2396,3494,0,0,6}-{2397,3494,0,0,6}-{2396,3493,0,0,6}"
- },
- {
- "npc_id": "637",
- "loc_data": "{3158,3425,1,1,5}"
- },
- {
- "npc_id": "638",
- "loc_data": "{3195,3404,0,0,0}"
- },
- {
- "npc_id": "639",
- "loc_data": "{3211,3425,0,1,7}"
- },
- {
- "npc_id": "640",
- "loc_data": "{3253,3487,0,1,6}"
- },
- {
- "npc_id": "641",
- "loc_data": "{3207,3392,0,1,6}"
- },
- {
- "npc_id": "642",
- "loc_data": "{3185,3385,0,1,6}"
- },
- {
- "npc_id": "643",
- "loc_data": "{3246,3383,1,1,5}"
- },
- {
- "npc_id": "644",
- "loc_data": "{3247,9781,0,1,6}"
- },
- {
- "npc_id": "645",
- "loc_data": "{3223,3401,0,1,2}"
- },
- {
- "npc_id": "646",
- "loc_data": "{3257,3447,0,1,0}"
- },
- {
- "npc_id": "648",
- "loc_data": "{3220,3471,0,0,6}"
- },
- {
- "npc_id": "649",
- "loc_data": "{3149,3210,0,1,0}"
- },
- {
- "npc_id": "650",
- "loc_data": "{3148,3205,0,1,0}"
- },
- {
- "npc_id": "651",
- "loc_data": "{3148,3207,0,1,0}"
- },
- {
- "npc_id": "652",
- "loc_data": "{3147,3209,0,1,0}"
- },
- {
- "npc_id": "656",
- "loc_data": "{2822,3374,0,0,3}"
- },
- {
- "npc_id": "657",
- "loc_data": "{3048,3236,0,1,2}"
- },
- {
- "npc_id": "658",
- "loc_data": "{2832,3336,0,1,2}"
- },
- {
- "npc_id": "659",
- "loc_data": "{3052,3373,0,0,0}"
- },
- {
- "npc_id": "663",
- "loc_data": "{3290,3290,0,1,2}"
- },
- {
- "npc_id": "665",
- "loc_data": "{2986,9811,0,0,0}"
- },
- {
- "npc_id": "666",
- "loc_data": "{2819,3451,0,0,3}"
- },
- {
- "npc_id": "668",
- "loc_data": "{3284,3503,1,1,1}"
- },
- {
- "npc_id": "670",
- "loc_data": "{2465,3496,0,1,6}"
- },
- {
- "npc_id": "674",
- "loc_data": "{3001,3041,0,0,0}"
- },
- {
- "npc_id": "675",
- "loc_data": "{2944,3041,0,0,0}"
- },
- {
- "npc_id": "677",
- "loc_data": "{2708,9486,0,0,5}"
- },
- {
- "npc_id": "678",
- "loc_data": "{2658,3436,0,1,3}-{2655,3431,0,1,0}-{2656,3424,0,1,1}-{2664,3426,0,1,4}-{2671,3438,0,1,1}-{2669,3441,0,1,7}-{2674,3438,0,1,5}-{2671,3418,0,1,7}-{2666,3417,0,1,3}-{2666,3415,0,1,2}-{2664,3416,0,1,3}-{2680,3431,0,1,6}-{2678,3431,0,1,1}-{2661,3430,0,1,4}"
- },
- {
- "npc_id": "679",
- "loc_data": "{2658,3439,0,0,0}"
- },
- {
- "npc_id": "680",
- "loc_data": "{2679,3432,0,1,6}"
- },
- {
- "npc_id": "682",
- "loc_data": "{2671,3434,0,1,4}"
- },
- {
- "npc_id": "683",
- "loc_data": "{2673,3434,0,1,3}"
- },
- {
- "npc_id": "684",
- "loc_data": "{2667,3430,2,0,6}"
- },
- {
- "npc_id": "685",
- "loc_data": "{2670,3429,2,0,3}"
- },
- {
- "npc_id": "686",
- "loc_data": "{2669,3426,2,0,1}"
- },
- {
- "npc_id": "687",
- "loc_data": "{2666,3427,2,0,4}"
- },
- {
- "npc_id": "688",
- "loc_data": "{2668,3442,2,1,6}-{2667,3444,2,1,6}-{2669,3444,2,1,6}"
- },
- {
- "npc_id": "689",
- "loc_data": "{2682,3428,2,1,3}-{2684,3427,2,1,3}-{2684,3429,2,1,3}"
- },
- {
- "npc_id": "690",
- "loc_data": "{2654,3428,2,1,1}-{2652,3427,2,1,1}-{2652,3429,2,1,1}"
- },
- {
- "npc_id": "691",
- "loc_data": "{2668,3414,2,1,4}-{2667,3412,2,1,4}-{2669,3412,2,1,4}"
- },
- {
- "npc_id": "692",
- "loc_data": "{2661,3419,0,1,7}"
- },
- {
- "npc_id": "693",
- "loc_data": "{2673,3416,0,0,0}"
- },
- {
- "npc_id": "694",
- "loc_data": "{2659,3431,0,0,3}"
- },
- {
- "npc_id": "705",
- "loc_data": "{3208,3252,0,0,6}"
- },
- {
- "npc_id": "706",
- "loc_data": "{3103,3163,2,0,0}"
- },
- {
- "npc_id": "707",
- "loc_data": "{3113,3160,2,0,0}"
- },
- {
- "npc_id": "708",
- "loc_data": "{3215,3282,0,1,1}-{3242,3306,0,1,1}-{3208,3357,0,1,3}-{3240,3393,0,1,3}-{3219,3221,0,1,4}-{3162,3410,0,1,2}-{2962,3424,0,1,6}-{3011,3513,0,1,1}-{2980,3337,0,1,6}-{2997,3300,0,1,3}-{3031,3322,0,1,1}-{2957,3308,0,1,0}-{2935,3343,0,1,1}-{2942,3247,0,1,7}-{2976,3176,0,1,6}-{3239,3523,0,1,4}-{3262,3523,0,1,2}-{2865,3175,0,1,0}-{2855,3188,0,1,1}-{2838,3194,0,1,3}-{2806,3181,0,1,3}-{2827,3170,0,1,5}-{2788,3179,0,1,3}-{2753,3178,0,1,3}-{2759,3155,0,1,0}-{2603,3221,0,1,7}-{2604,3212,0,1,3}-{2612,3230,0,1,0}-{2611,3204,0,1,7}-{2544,3184,0,1,3}-{2627,3231,0,1,4}-{2595,3125,0,1,1}-{2598,3145,0,1,1}-{2588,3145,0,1,7}-{2601,3135,0,1,3}-{2598,3120,0,1,6}-{2615,3120,0,1,4}-{2598,3108,0,1,4}-{2733,3459,0,1,3}-{2732,3457,0,1,6}-{2715,3451,0,1,4}-{2715,3436,0,1,3}-{2977,3377,0,0,3}-{2941,3356,0,0,7}-{2932,3322,0,0,5}-{2934,3301,0,1,5}-{2934,3301,0,1,3}-{2973,3274,0,1,3}-{2994,3270,0,1,0}-{3010,3271,0,1,6}-{2977,3202,0,1,7}-{3068,3251,0,1,6}-{3189,3503,0,1,6}"
- },
- {
- "npc_id": "711",
- "loc_data": "{2536,3314,1,0,0}"
- },
- {
- "npc_id": "713",
- "loc_data": "{2526,3319,0,0,0}"
- },
- {
- "npc_id": "716",
- "loc_data": "{2540,3286,0,0,0}"
- },
- {
- "npc_id": "717",
- "loc_data": "{2513,3294,0,0,0}-{2518,3320,0,0,0}-{2530,3274,0,0,0}-{2535,3296,0,0,0}"
- },
- {
- "npc_id": "719",
- "loc_data": "{2560,3288,0,0,0}-{2026,4619,0,1,6}-{2026,4615,0,0,6}-{2020,4614,0,1,1}-{2021,4614,0,1,6}-{2008,4612,0,1,3}-{2002,4613,0,1,4}"
- },
- {
- "npc_id": "720",
- "loc_data": "{2542,3306,0,0,0}"
- },
- {
- "npc_id": "725",
- "loc_data": "{2540,3305,0,0,0}"
- },
- {
- "npc_id": "728",
- "loc_data": "{2540,3308,0,1,6}"
- },
- {
- "npc_id": "729",
- "loc_data": "{2536,3308,0,1,4}"
- },
- {
- "npc_id": "731",
- "loc_data": "{3278,3487,0,1,1}"
- },
- {
- "npc_id": "732",
- "loc_data": "{3267,3392,0,0,0}"
- },
- {
- "npc_id": "733",
- "loc_data": "{3226,3399,0,0,0}"
- },
- {
- "npc_id": "734",
- "loc_data": "{3045,3256,0,1,3}"
- },
- {
- "npc_id": "735",
- "loc_data": "{2795,3155,0,1,7}"
- },
- {
- "npc_id": "736",
- "loc_data": "{2957,3373,0,1,7}"
- },
- {
- "npc_id": "737",
- "loc_data": "{2572,3319,0,1,3}"
- },
- {
- "npc_id": "738",
- "loc_data": "{2691,3492,0,0,0}"
- },
- {
- "npc_id": "739",
- "loc_data": "{2554,3080,0,1,3}"
- },
- {
- "npc_id": "740",
- "loc_data": "{2808,3086,0,1,0}"
- },
- {
- "npc_id": "741",
- "loc_data": "{3212,3220,1,1,1}"
- },
- {
- "npc_id": "742",
- "loc_data": "{2854,9636,0,1,4}"
- },
- {
- "npc_id": "743",
- "loc_data": "{3098,3257,0,1,4}"
- },
- {
- "npc_id": "744",
- "loc_data": "{3047,3204,0,0,0}"
- },
- {
- "npc_id": "745",
- "loc_data": "{3013,3189,0,1,1}"
- },
- {
- "npc_id": "746",
- "loc_data": "{3010,3502,0,1,3}"
- },
- {
- "npc_id": "747",
- "loc_data": "{3069,3516,0,1,6}"
- },
- {
- "npc_id": "749",
- "loc_data": "{1749,5323,0,1,4}"
- },
- {
- "npc_id": "750",
- "loc_data": "{1765,5321,0,1,2}-{1744,5326,0,1,4}"
- },
- {
- "npc_id": "751",
- "loc_data": "{1778,5323,0,1,6}"
- },
- {
- "npc_id": "753",
- "loc_data": "{2929,9649,0,1,4}"
- },
- {
- "npc_id": "755",
- "loc_data": "{3100,3268,0,0,0}"
- },
- {
- "npc_id": "756",
- "loc_data": "{3222,3398,0,0,3}"
- },
- {
- "npc_id": "758",
- "loc_data": "{3189,3273,0,0,4}"
- },
- {
- "npc_id": "767",
- "loc_data": "{3303,3511,0,0,1}-{3302,3514,0,0,1}"
- },
- {
- "npc_id": "780",
- "loc_data": "{3151,3410,0,1,6}"
- },
- {
- "npc_id": "781",
- "loc_data": "{3221,3434,0,1,0}"
- },
- {
- "npc_id": "782",
- "loc_data": "{3150,3406,0,0,0}"
- },
- {
- "npc_id": "783",
- "loc_data": "{3221,3435,0,1,0}"
- },
- {
- "npc_id": "784",
- "loc_data": "{3155,3406,0,0,0}"
- },
- {
- "npc_id": "785",
- "loc_data": "{2470,3312,0,1,0}-{2479,3315,0,1,0}"
- },
- {
- "npc_id": "786",
- "loc_data": "{2482,3313,0,1,0}-{2477,3311,0,1,0}"
- },
- {
- "npc_id": "787",
- "loc_data": "{2486,3315,0,1,0}-{2479,3313,0,1,0}"
- },
- {
- "npc_id": "788",
- "loc_data": "{2773,3187,0,0,6}"
- },
- {
- "npc_id": "789",
- "loc_data": "{2811,3167,0,0,0}"
- },
- {
- "npc_id": "791",
- "loc_data": "{2450,3056,0,0,0}"
- },
- {
- "npc_id": "792",
- "loc_data": "{2774,3197,0,0,0}"
- },
- {
- "npc_id": "793",
- "loc_data": "{2790,3189,0,1,1}"
- },
- {
- "npc_id": "794",
- "loc_data": "{2793,3191,0,1,3}"
- },
- {
- "npc_id": "797",
- "loc_data": "{2900,3511,1,1,6}"
- },
- {
- "npc_id": "798",
- "loc_data": "{2930,9686,0,1,0}"
- },
- {
- "npc_id": "799",
- "loc_data": "{2778,3197,0,1,4}-{2777,3194,0,1,4}-{2777,3199,0,1,3}-{2771,3193,0,1,3}-{2761,3192,0,1,5}-{2775,3190,0,1,4}-{2803,3195,0,1,4}"
- },
- {
- "npc_id": "801",
- "loc_data": "{3058,3485,0,1,6}"
- },
- {
- "npc_id": "802",
- "loc_data": "{3046,3486,1,0,0}"
- },
- {
- "npc_id": "804",
- "loc_data": "{2934,3285,1,1,0}"
- },
- {
- "npc_id": "805",
- "loc_data": "{2936,3288,0,1,4}"
- },
- {
- "npc_id": "812",
- "loc_data": "{2738,3473,0,0,1}-{2733,3473,0,0,1}"
- },
- {
- "npc_id": "820",
- "loc_data": "{2697,3496,0,0,0}"
- },
- {
- "npc_id": "822",
- "loc_data": "{3302,9466,0,1,6}"
- },
- {
- "npc_id": "827",
- "loc_data": "{3273,9417,0,1,6}-{3289,9443,0,1,4}"
- },
- {
- "npc_id": "830",
- "loc_data": "{3271,3028,0,1,4}"
- },
- {
- "npc_id": "831",
- "loc_data": "{3291,3032,1,0,1}"
- },
- {
- "npc_id": "832",
- "loc_data": "{3171,3025,0,1,4}"
- },
- {
- "npc_id": "833",
- "loc_data": "{3167,3033,0,1,2}-{3170,3027,0,1,5}-{3174,3028,0,1,6}"
- },
- {
- "npc_id": "834",
- "loc_data": "{3170,3045,0,0,3}"
- },
- {
- "npc_id": "836",
- "loc_data": "{3304,3124,0,1,6}"
- },
- {
- "npc_id": "837",
- "loc_data": "{3305,3121,0,1,0}-{3301,3120,0,1,1}-{3302,3123,0,1,6}-{3307,3125,0,1,1}"
- },
- {
- "npc_id": "838",
- "loc_data": "{3306,3117,0,1,4}"
- },
- {
- "npc_id": "839",
- "loc_data": "{3153,3035,0,1,3}"
- },
- {
- "npc_id": "841",
- "loc_data": "{3288,3022,0,1,1}"
- },
- {
- "npc_id": "843",
- "loc_data": "{2644,3274,0,1,3}-{2644,3276,0,1,5}-{2647,3271,0,1,6}"
- },
- {
- "npc_id": "844",
- "loc_data": "{2683,3323,0,0,0}"
- },
- {
- "npc_id": "845",
- "loc_data": "{2635,3311,0,0,0}"
- },
- {
- "npc_id": "846",
- "loc_data": "{2787,3184,0,1,4}"
- },
- {
- "npc_id": "847",
- "loc_data": "{3143,3447,0,1,5}"
- },
- {
- "npc_id": "848",
- "loc_data": "{2480,3489,1,1,3}"
- },
- {
- "npc_id": "849",
- "loc_data": "{2482,3487,1,1,0}-{2482,3489,1,1,0}-{2417,3498,1,1,0}"
- },
- {
- "npc_id": "850",
- "loc_data": "{2439,3502,1,0,4}"
- },
- {
- "npc_id": "851",
- "loc_data": "{2449,3503,1,1,4}"
- },
- {
- "npc_id": "853",
- "loc_data": "{2506,3115,0,1,3}"
- },
- {
- "npc_id": "854",
- "loc_data": "{2511,3085,0,1,4}"
- },
- {
- "npc_id": "858",
- "loc_data": "{2550,3032,0,0,0}-{2552,3033,0,0,0}-{2550,3030,0,0,0}-{2550,3032,0,0,0}"
- },
- {
- "npc_id": "860",
- "loc_data": "{2503,3013,0,0,0}"
- },
- {
- "npc_id": "872",
- "loc_data": "{2547,3117,2,1,3}-{2547,3112,2,1,6}-{2544,3114,2,1,3}-{2547,3118,2,1,3}"
- },
- {
- "npc_id": "877",
- "loc_data": "{2536,3092,0,1,1}-{2534,3091,0,1,1}-{2550,3118,0,1,4}-{2543,3117,0,1,3}-{2546,3113,0,1,4}"
- },
- {
- "npc_id": "878",
- "loc_data": "{2534,3092,0,1,1}"
- },
- {
- "npc_id": "881",
- "loc_data": "{3112,3162,1,0,0}"
- },
- {
- "npc_id": "882",
- "loc_data": "{3203,3424,0,0,6}"
- },
- {
- "npc_id": "883",
- "loc_data": "{3204,3470,0,1,3}"
- },
- {
- "npc_id": "884",
- "loc_data": "{3204,3495,2,1,6}"
- },
- {
- "npc_id": "885",
- "loc_data": "{2565,3271,0,0,0}-{2573,3268,1,0,0}"
- },
- {
- "npc_id": "887",
- "loc_data": "{2570,3275,0,1,3}"
- },
- {
- "npc_id": "888",
- "loc_data": "{2565,3273,0,0,0}"
- },
- {
- "npc_id": "889",
- "loc_data": "{2571,3270,0,0,0}"
- },
- {
- "npc_id": "890",
- "loc_data": "{2569,3272,0,0,0}-{2573,3269,1,0,0}"
- },
- {
- "npc_id": "895",
- "loc_data": "{2929,3456,0,1,4}"
- },
- {
- "npc_id": "902",
- "loc_data": "{2535,4715,0,1,6}"
- },
- {
- "npc_id": "903",
- "loc_data": "{2541,4715,0,1,3}"
- },
- {
- "npc_id": "904",
- "loc_data": "{2507,4693,0,1,3}"
- },
- {
- "npc_id": "905",
- "loc_data": "{2540,4719,0,1,6}"
- },
- {
- "npc_id": "912",
- "loc_data": "{3101,3940,0,0,0}-{3109,3931,0,0,0}-{3109,3939,0,0,0}-{3097,3931,0,1,4}-{3098,3938,0,1,6}-{3113,3938,0,1,7}"
- },
- {
- "npc_id": "913",
- "loc_data": "{3105,3931,0,0,0}-{3101,3929,0,0,1}-{3111,3939,0,1,6}-{3109,3926,0,1,1}"
- },
- {
- "npc_id": "914",
- "loc_data": "{3099,3936,0,0,7}-{3104,3929,0,0,0}-{3110,3936,0,1,2}-{3096,3932,0,1,4}-{3113,3928,0,1,1}"
- },
- {
- "npc_id": "915",
- "loc_data": "{3108,3264,0,1,2}"
- },
- {
- "npc_id": "916",
- "loc_data": "{3122,3245,0,0,0}"
- },
- {
- "npc_id": "917",
- "loc_data": "{3125,3250,0,1,6}-{3122,3249,0,1,6}"
- },
- {
- "npc_id": "918",
- "loc_data": "{3048,3209,1,1,3}"
- },
- {
- "npc_id": "919",
- "loc_data": "{3128,3245,0,1,4}"
- },
- {
- "npc_id": "920",
- "loc_data": "{3123,3241,0,1,1}"
- },
- {
- "npc_id": "922",
- "loc_data": "{3086,3261,0,1,7}"
- },
- {
- "npc_id": "923",
- "loc_data": "{3302,3163,0,0,0}"
- },
- {
- "npc_id": "924",
- "loc_data": "{3286,3180,0,0,0}"
- },
- {
- "npc_id": "925",
- "loc_data": "{3267,3226,0,0,3}-{3266,3229,0,0,3}-{3269,3229,0,0,4}-{3268,3226,0,0,4}"
- },
- {
- "npc_id": "931",
- "loc_data": "{2792,2929,0,0,0}-{2815,2935,0,0,0}-{2842,2935,0,0,0}-{2842,2929,0,0,0}"
- },
- {
- "npc_id": "933",
- "loc_data": "{2725,3367,0,0,2}-{2725,3380,2,0,6}"
- },
- {
- "npc_id": "941",
- "loc_data": "{2974,3620,0,1,3}-{2975,3609,0,1,3}-{2983,3614,0,1,3}-{3340,3678,0,1,1}-{3339,3695,0,1,6}-{3344,3705,0,1,3}-{3307,5462,0,1,0}-{3121,10085,0,1,0}"
- },
- {
- "npc_id": "942",
- "loc_data": "{3074,3086,0,0,0}"
- },
- {
- "npc_id": "943",
- "loc_data": "{3103,3096,0,0,0}"
- },
- {
- "npc_id": "944",
- "loc_data": "{3107,9511,0,1,5}"
- },
- {
- "npc_id": "945",
- "loc_data": "{3093,3107,0,0,0}"
- },
- {
- "npc_id": "946",
- "loc_data": "{3141,3090,0,0,6}"
- },
- {
- "npc_id": "947",
- "loc_data": "{3127,3124,0,0,3}"
- },
- {
- "npc_id": "948",
- "loc_data": "{3084,9506,0,0,0}"
- },
- {
- "npc_id": "949",
- "loc_data": "{3086,3122,0,0,0}"
- },
- {
- "npc_id": "952",
- "loc_data": "{3101,3092,0,0,4}"
- },
- {
- "npc_id": "954",
- "loc_data": "{3123,3107,0,1,5}"
- },
- {
- "npc_id": "955",
- "loc_data": "{3176,3317,0,1,3}-{3169,3319,0,1,1}"
- },
- {
- "npc_id": "957",
- "loc_data": "{3314,3241,0,0,1}-{3314,3240,1,0,0}"
- },
- {
- "npc_id": "958",
- "loc_data": "{3383,3272,0,1,3}"
- },
- {
- "npc_id": "959",
- "loc_data": "{3359,3272,0,1,5}"
- },
- {
- "npc_id": "960",
- "loc_data": "{3370,3276,0,1,3}"
- },
- {
- "npc_id": "961",
- "loc_data": "{3377,3276,0,1,4}"
- },
- {
- "npc_id": "962",
- "loc_data": "{3362,3276,0,1,3}"
- },
- {
- "npc_id": "963",
- "loc_data": "{3375,3274,0,1,2}"
- },
- {
- "npc_id": "970",
- "loc_data": "{3082,3248,0,1,4}"
- },
- {
- "npc_id": "1005",
- "loc_data": "{3057,3905,0,1,3}"
- },
- {
- "npc_id": "1013",
- "loc_data": "{2544,2988,0,0,0}-{2532,2983,0,0,0}-{2549,2983,0,0,0}-{2545,2983,0,0,0}-{2528,2986,0,0,0}-{2550,2979,0,0,0}-{2522,2978,0,0,0}-{2523,2976,0,0,0}-{2526,2974,0,0,0}-{2593,2971,0,0,0}-{2594,2971,0,0,0}-{2596,2961,0,0,0}-{2598,2971,0,0,0}-{2599,2960,0,0,0}-{2598,2960,0,0,0}-{2603,2966,0,0,0}-{2603,2970,0,0,0}-{2598,2960,0,0,0}-{2596,2963,0,0,0}-{2595,2964,0,0,0}-{2594,2964,0,0,0}-{2601,2964,0,0,0}-{2598,2969,0,0,0}-{2604,2971,0,0,0}-{2601,2972,0,0,0}-{2544,2904,0,0,0}-{2548,2990,0,0,0}-{2552,2988,0,0,0}-{2548,2979,0,0,0}-{2547,2991,0,0,0}-{2525,2975,0,0,0}-{2464,2912,0,0,0}"
- },
- {
- "npc_id": "1017",
- "loc_data": "{3198,3359,0,1,0}-{3231,3296,0,1,6}-{3233,3300,0,1,4}-{3235,3293,0,1,3}-{3232,3288,0,1,0}-{3234,3298,0,1,6}-{2785,3069,0,1,4}-{2800,3072,0,1,6}-{3234,3297,0,1,3}-{3234,3292,0,1,4}-{3235,3289,0,1,1}-{2677,3656,0,1,2}-{2672,3654,0,1,2}-{2676,3652,0,1,4}-{2681,3652,0,1,4}-{2675,3652,0,1,3}-{2693,3271,0,1,3}-{2692,3272,0,1,3}"
- },
- {
- "npc_id": "1019",
- "loc_data": "{3187,5555,0,1,4}-{3213,9377,0,1,3}-{3209,9397,0,1,4}-{3245,9401,0,1,6}-{3237,9402,0,1,2}-{3207,9349,0,1,3}-{3220,9347,0,1,6}-{3233,9359,0,1,4}-{3235,9354,0,0,6}-{3259,9370,0,1,1}-{3258,9387,0,1,6}-{3278,9368,0,1,5}-{3271,9359,0,1,3}-{3287,9359,0,1,5}-{3301,9394,0,1,5}-{3318,9352,0,1,5}-{3190,5563,0,1,1}-{3193,5555,0,1,3}"
- },
- {
- "npc_id": "1019",
- "loc_data": "{2707,9880,0,1,0}-{2711,9876,0,1,0}-{2712,9871,0,1,0}-{2715,9874,0,1,0}-{2720,9871,0,1,0}-{2717,9880,0,1,0}-{2722,9879,0,1,0}-{2723,9875,0,1,0}"
- },
- {
- "npc_id": "1020",
- "loc_data": "{2697,9913,0,1,0}-{2695,9907,0,1,0}-{2693,9901,0,1,0}-{2701,9902,0,1,0}-{2704,9908,0,1,0}-{2694,9889,0,1,0}-{2694,9879,0,1,0}-{2699,9875,0,1,0}-{2700,9869,0,1,0}-{2695,9870,0,1,0}"
- },
- {
- "npc_id": "1021",
- "loc_data": "{2733,9882,0,1,0}-{2732,9888,0,1,0}-{2738,9889,0,1,0}-{2732,9892,0,1,0}-{2738,9894,0,1,0}-{2734,9896,0,1,0}"
- },
- {
- "npc_id": "1022",
- "loc_data": "{2714,9904,0,1,0}-{2718,9906,0,1,0}-{2717,9902,0,1,0}-{2720,9904,0,1,0}-{2724,9903,0,1,0}-{2727,9905,0,1,0}-{2726,9907,0,1,0}"
- },
- {
- "npc_id": "1027",
- "loc_data": "{3278,3155,0,0,0}-{2354,3608,0,0,0}"
- },
- {
- "npc_id": "1028",
- "loc_data": "{2778,3436,0,0,0}"
- },
- {
- "npc_id": "1029",
- "loc_data": "{2920,3499,0,0,0}-{2784,3480,0,0,0}"
- },
- {
- "npc_id": "1030",
- "loc_data": "{2768,3470,0,0,0}-{2843,3155,0,0,0}"
- },
- {
- "npc_id": "1032",
- "loc_data": "{2865,3504,0,0,0}"
- },
- {
- "npc_id": "1033",
- "loc_data": "{2606,2967,0,0,0}"
- },
- {
- "npc_id": "1035",
- "loc_data": "{2599,2954,0,0,0}"
- },
- {
- "npc_id": "1036",
- "loc_data": "{3514,3479,1,0,0}-{3514,3481,1,0,0}-{3514,3481,0,0,3}-{3514,3479,0,0,3}"
- },
- {
- "npc_id": "1037",
- "loc_data": "{2435,3412,0,1,3}"
- },
- {
- "npc_id": "1038",
- "loc_data": "{3507,3496,1,1,1}-{3508,3494,0,1,1}"
- },
- {
- "npc_id": "1039",
- "loc_data": "{3499,3506,1,1,5}-{3500,3505,0,1,5}"
- },
- {
- "npc_id": "1040",
- "loc_data": "{3475,3494,0,1,6}"
- },
- {
- "npc_id": "1041",
- "loc_data": "{3490,3503,1,0,0}-{3490,3500,0,1,4}"
- },
- {
- "npc_id": "1042",
- "loc_data": "{3495,3469,0,1,3}"
- },
- {
- "npc_id": "1043",
- "loc_data": "{3459,3457,0,0,0}-{3460,3462,0,0,0}-{3462,3459,0,0,0}-{3463,3490,0,0,0}-{3464,3511,0,0,0}-{3465,3466,0,0,0}-{3466,3495,0,0,0}-{3466,3497,0,0,0}-{3467,3485,0,0,0}-{3467,3497,0,0,0}-{3467,3509,0,0,0}-{3469,3470,0,0,0}-{3470,3469,0,0,0}-{3471,3477,0,0,0}-{3474,3505,0,0,0}-{3476,3507,0,0,0}-{3479,3511,0,0,0}-{3480,3468,0,0,0}-{3480,3470,0,0,0}-{3482,3469,0,0,0}-{3483,3511,0,0,0}-{3484,3464,0,0,0}-{3485,3509,0,0,0}-{3490,3461,0,0,0}-{3491,3460,0,0,0}-{3494,3461,0,0,0}-{3494,3512,0,0,0}-{3498,3461,0,0,0}-{3499,3513,0,0,0}-{3501,3513,0,0,0}-{3502,3464,0,0,0}-{3504,3463,0,0,0}-{3506,3512,0,0,0}-{3506,3515,0,0,0}-{3507,3515,0,0,0}-{3509,3512,0,0,0}-{3511,3488,0,0,0}-{3513,3467,0,0,0}-{3513,3487,0,0,0}-{3513,3489,0,0,0}-{3513,3503,0,0,0}-{3514,3490,0,0,0}-{3515,3495,0,0,0}-{3515,3499,0,0,0}-{3516,3469,0,0,0}"
- },
- {
- "npc_id": "1044",
- "loc_data": "{3408,3484,0,1,6}-{3408,3493,0,1,1}-{3410,3489,1,1,3}-{3412,3487,1,1,4}"
- },
- {
- "npc_id": "1045",
- "loc_data": "{3413,3489,0,1,3}-{3409,3485,1,1,4}-{3413,3489,1,1,1}-{3213,3476,0,1,3}"
- },
- {
- "npc_id": "1046",
- "loc_data": "{3409,3489,0,1,4}-{3413,3485,0,1,4}-{3414,3491,1,1,6}"
- },
- {
- "npc_id": "7690",
- "loc_data": "{3415,3489,2,0,0}"
- },
- {
- "npc_id": "1048",
- "loc_data": "{3437,3486,0,0,0}"
- },
- {
- "npc_id": "7707",
- "loc_data": "{3440,9895,0,0,0}"
- },
- {
- "npc_id": "1054",
- "loc_data": "{3444,3459,0,0,0}"
- },
- {
- "npc_id": "1055",
- "loc_data": "{2811,3191,0,0,0}"
- },
- {
- "npc_id": "1060",
- "loc_data": "{2898,3528,0,0,1}"
- },
- {
- "npc_id": "1061",
- "loc_data": "{2898,3532,0,0,4}"
- },
- {
- "npc_id": "1062",
- "loc_data": "{2893,3540,0,0,3}"
- },
- {
- "npc_id": "1063",
- "loc_data": "{2900,3531,0,0,7}-{2900,3533,0,0,7}"
- },
- {
- "npc_id": "1064",
- "loc_data": "{2895,3537,0,0,5}-{2894,3537,0,0,5}-{2893,3537,0,0,5}-{2892,3537,0,0,5}-{2891,3537,0,0,3}-{2891,3538,0,0,3}-{2892,3538,0,0,3}-{2893,3538,0,0,3}-{2894,3538,0,0,3}-{2895,3538,0,0,3}"
- },
- {
- "npc_id": "1065",
- "loc_data": "{2889,3529,0,1,1}-{2904,3538,0,1,6}-{2882,3531,0,1,4}-{2903,3544,0,1,4}-{2911,3542,0,1,4}-{2906,3540,0,1,3}"
- },
- {
- "npc_id": "1066",
- "loc_data": "{2892,3532,0,0,4}"
- },
- {
- "npc_id": "1067",
- "loc_data": "{2893,3533,0,0,6}"
- },
- {
- "npc_id": "1068",
- "loc_data": "{2894,3532,0,0,3}"
- },
- {
- "npc_id": "1069",
- "loc_data": "{2840,3589,0,0,3}"
- },
- {
- "npc_id": "1070",
- "loc_data": "{2269,4758,0,1,3}"
- },
- {
- "npc_id": "1071",
- "loc_data": "{2820,3554,0,1,1}"
- },
- {
- "npc_id": "1072",
- "loc_data": "{2897,3569,0,0,0}-{2893,3565,0,0,0}"
- },
- {
- "npc_id": "1073",
- "loc_data": "{2900,3549,0,0,3}"
- },
- {
- "npc_id": "1074",
- "loc_data": "{2897,3549,0,0,5}"
- },
- {
- "npc_id": "1076",
- "loc_data": "{2900,3556,0,0,1}-{2897,3565,0,1,4}"
- },
- {
- "npc_id": "1077",
- "loc_data": "{2897,3556,0,0,5}"
- },
- {
- "npc_id": "1079",
- "loc_data": "{2906,3537,0,1,5}"
- },
- {
- "npc_id": "1081",
- "loc_data": "{2896,3562,0,0,0}-{2891,3568,0,0,0}"
- },
- {
- "npc_id": "1082",
- "loc_data": "{2919,3576,0,0,0}"
- },
- {
- "npc_id": "1083",
- "loc_data": "{2931,3546,0,1,3}"
- },
- {
- "npc_id": "1084",
- "loc_data": "{2915,3549,0,0,0}"
- },
- {
- "npc_id": "1085",
- "loc_data": "{2921,3558,0,1,6}"
- },
- {
- "npc_id": "1086",
- "loc_data": "{2965,3262,0,1,4}"
- },
- {
- "npc_id": "1087",
- "loc_data": "{2911,3540,0,0,7}"
- },
- {
- "npc_id": "1088",
- "loc_data": "{2918,3545,0,0,0}"
- },
- {
- "npc_id": "1089",
- "loc_data": "{2919,3529,0,0,0}"
- },
- {
- "npc_id": "1090",
- "loc_data": "{2931,3566,0,1,1}"
- },
- {
- "npc_id": "1093",
- "loc_data": "{2817,3560,0,1,3}"
- },
- {
- "npc_id": "1096",
- "loc_data": "{2852,3591,0,1,7}"
- },
- {
- "npc_id": "1097",
- "loc_data": "{2858,3596,0,1,4}"
- },
- {
- "npc_id": "1098",
- "loc_data": "{2868,3591,0,1,6}"
- },
- {
- "npc_id": "1099",
- "loc_data": "{2857,3589,0,0,0}-{2857,3589,0,0,0}"
- },
- {
- "npc_id": "1100",
- "loc_data": "{2859,3589,0,0,0}-{2859,3589,0,0,0}"
- },
- {
- "npc_id": "1101",
- "loc_data": "{2851,3598,0,0,0}-{2854,3600,0,0,0}"
- },
- {
- "npc_id": "1106",
- "loc_data": "{2864,3594,0,1,1}-{2881,3592,0,1,5}-{2857,3587,0,1,7}-{2855,3596,0,1,4}-{2827,10078,1,1,6}-{2925,3626,0,1,0}-{2843,3682,0,1,1}"
- },
- {
- "npc_id": "1107",
- "loc_data": "{2874,3595,0,1,3}-{2875,3596,0,1,1}-{2873,3598,0,1,1}-{2836,10088,1,1,5}-{2845,3674,0,1,4}"
- },
- {
- "npc_id": "1108",
- "loc_data": "{2878,3592,0,1,6}-{2861,3586,0,1,6}-{2855,10058,2,1,4}-{2852,3673,0,1,2}"
- },
- {
- "npc_id": "1109",
- "loc_data": "{2875,3588,0,1,1}-{2883,3586,0,1,6}-{2825,10087,1,1,3}-{2836,10080,1,1,6}-{2784,10040,2,1,3}-{2920,3627,0,1,0}-{2923,10029,0,1,7}-{2851,3667,0,1,3}"
- },
- {
- "npc_id": "1110",
- "loc_data": "{2883,3591,0,1,4}-{2869,3594,0,1,3}-{2861,3587,0,1,4}-{2872,3594,0,1,5}-{2829,10080,1,1,6}-{2836,10097,2,1,4}-{2852,10110,2,1,4}"
- },
- {
- "npc_id": "1111",
- "loc_data": "{2863,3588,0,1,6}-{2865,3591,0,1,0}-{2866,3598,0,1,1}-{2840,10101,1,1,4}-{2857,10055,2,1,3}-{2836,10090,2,1,1}-{2925,10033,0,1,6}-{2855,3685,0,1,1}"
- },
- {
- "npc_id": "1112",
- "loc_data": "{2867,3595,0,1,6}-{2871,3597,0,1,4}-{2832,10089,1,1,1}-{2836,10077,2,1,1}-{2925,10030,0,1,1}"
- },
- {
- "npc_id": "1113",
- "loc_data": "{2831,10083,0,0,0}"
- },
- {
- "npc_id": "1114",
- "loc_data": "{2826,10078,0,0,0}"
- },
- {
- "npc_id": "1115",
- "loc_data": "{2832,10088,2,0,0}"
- },
- {
- "npc_id": "1116",
- "loc_data": "{2824,10073,2,0,0}"
- },
- {
- "npc_id": "1117",
- "loc_data": "{2829,10101,2,0,0}"
- },
- {
- "npc_id": "1118",
- "loc_data": "{2920,3613,0,0,0}"
- },
- {
- "npc_id": "1119",
- "loc_data": "{2930,3614,0,0,0}"
- },
- {
- "npc_id": "1120",
- "loc_data": "{2927,3608,0,0,0}"
- },
- {
- "npc_id": "1121",
- "loc_data": "{2930,3600,0,0,0}"
- },
- {
- "npc_id": "1122",
- "loc_data": "{2918,3604,0,0,0}"
- },
- {
- "npc_id": "1123",
- "loc_data": "{2914,3603,0,0,0}"
- },
- {
- "npc_id": "1124",
- "loc_data": "{2925,3600,0,0,0}"
- },
- {
- "npc_id": "1125",
- "loc_data": "{2916,3610,0,0,0}"
- },
- {
- "npc_id": "1128",
- "loc_data": "{2833,10080,0,0,0}"
- },
- {
- "npc_id": "1129",
- "loc_data": "{2833,10084,0,0,0}"
- },
- {
- "npc_id": "1131",
- "loc_data": "{2905,3694,0,0,1}"
- },
- {
- "npc_id": "1132",
- "loc_data": "{2901,3697,0,0,1}"
- },
- {
- "npc_id": "1133",
- "loc_data": "{2895,3699,0,0,1}"
- },
- {
- "npc_id": "1134",
- "loc_data": "{2891,3699,0,0,1}"
- },
- {
- "npc_id": "1135",
- "loc_data": "{2843,10057,1,0,0}"
- },
- {
- "npc_id": "1136",
- "loc_data": "{2840,10056,1,0,0}"
- },
- {
- "npc_id": "1137",
- "loc_data": "{2847,10056,1,0,0}"
- },
- {
- "npc_id": "1138",
- "loc_data": "{2826,10083,1,1,0}-{2837,10083,2,1,1}-{2909,3639,0,1,3}-{2923,10031,0,1,3}"
- },
- {
- "npc_id": "1140",
- "loc_data": "{2856,10054,1,0,0}-{2860,10057,1,0,0}-{2898,3688,0,0,0}-{2819,3586,0,1,4}"
- },
- {
- "npc_id": "1141",
- "loc_data": "{2857,10059,1,0,0}-{2857,10057,1,0,0}"
- },
- {
- "npc_id": "1142",
- "loc_data": "{2851,10089,0,1,1}-{2854,10092,0,1,3}"
- },
- {
- "npc_id": "1143",
- "loc_data": "{2850,10088,0,1,3}-{2854,10086,0,1,6}"
- },
- {
- "npc_id": "1144",
- "loc_data": "{2856,10089,0,1,4}-{2858,10089,0,1,6}"
- },
- {
- "npc_id": "1146",
- "loc_data": "{2864,10081,0,1,7}"
- },
- {
- "npc_id": "1147",
- "loc_data": "{2853,10076,0,1,5}"
- },
- {
- "npc_id": "1148",
- "loc_data": "{2858,10082,0,1,3}"
- },
- {
- "npc_id": "1149",
- "loc_data": "{2861,10085,0,1,2}"
- },
- {
- "npc_id": "1150",
- "loc_data": "{2857,10075,0,1,1}"
- },
- {
- "npc_id": "1151",
- "loc_data": "{2845,10058,1,0,0}"
- },
- {
- "npc_id": "1153",
- "loc_data": "{3489,9509,2,1,4}-{3499,9515,2,1,6}-{3505,9527,2,1,5}-{3510,9521,2,1,1}-{3490,9526,2,1,3}-{3475,9524,2,1,5}-{3465,9505,2,1,1}-{3479,9501,2,1,3}-{3487,9491,2,1,3}"
- },
- {
- "npc_id": "1154",
- "loc_data": "{3472,9501,2,1,3}-{3495,9494,2,1,4}-{3479,9484,2,1,1}-{3500,9477,2,1,6}"
- },
- {
- "npc_id": "1155",
- "loc_data": "{3468,9486,2,1,0}-{3467,9480,2,1,1}-{3505,9496,2,1,6}-{3513,9496,2,1,7}"
- },
- {
- "npc_id": "1157",
- "loc_data": "{3480,9508,0,1,0}-{3495,9505,0,1,2}-{3492,9490,0,1,1}-{3472,9497,0,1,6}"
- },
- {
- "npc_id": "1158",
- "loc_data": "{3484,9491,0,1,2}"
- },
- {
- "npc_id": "1161",
- "loc_data": "{3487,9526,2,1,5}-{3474,9519,2,1,1}-{3465,9512,2,1,0}-{3489,9501,2,1,4}-{3494,9501,2,1,3}-{3480,9489,2,1,6}-{3483,9477,2,1,3}-{3494,9476,2,1,3}-{3473,9487,0,1,3}-{3476,9496,0,1,6}-{3473,9501,0,1,7}-{3481,9504,0,1,6}-{3488,9514,0,1,6}-{3497,9501,0,1,3}-{3486,9490,0,1,0}"
- },
- {
- "npc_id": "1162",
- "loc_data": "{2781,3088,1,1,0}"
- },
- {
- "npc_id": "1171",
- "loc_data": "{2766,3168,0,1,6}"
- },
- {
- "npc_id": "1172",
- "loc_data": "{2909,3086,0,0,0}"
- },
- {
- "npc_id": "1174",
- "loc_data": "{2792,3015,0,0,0}-{2792,3019,0,0,0}-{2801,3010,0,0,0}-{2801,3010,0,0,4}"
- },
- {
- "npc_id": "1176",
- "loc_data": "{2928,3112,0,0,0}"
- },
- {
- "npc_id": "1177",
- "loc_data": "{2912,3119,0,0,0}"
- },
- {
- "npc_id": "1178",
- "loc_data": "{2768,3165,0,0,0}"
- },
- {
- "npc_id": "1179",
- "loc_data": "{2941,3100,0,1,6}"
- },
- {
- "npc_id": "1180",
- "loc_data": "{2916,3110,0,1,7}"
- },
- {
- "npc_id": "1181",
- "loc_data": "{2902,3101,0,1,1}-{2922,3105,0,1,6}"
- },
- {
- "npc_id": "1192",
- "loc_data": "{2924,3506,0,1,0}-{2927,3498,0,0,0}-{2297,3176,0,1,6}"
- },
- {
- "npc_id": "1193",
- "loc_data": "{2297,3176,0,1,6}"
- },
- {
- "npc_id": "1194",
- "loc_data": "{2298,3177,0,1,4}"
- },
- {
- "npc_id": "1195",
- "loc_data": "{3228,3501,0,1,5}-{3023,4504,0,1,4}-{2216,3174,0,1,4}-{2294,3155,0,1,3}"
- },
- {
- "npc_id": "1196",
- "loc_data": "{3025,4506,0,1,5}-{3023,4504,0,1,4}-{2212,3174,0,1,3}-{2294,3152,0,1,1}"
- },
- {
- "npc_id": "1198",
- "loc_data": "{2296,3192,0,1,2}"
- },
- {
- "npc_id": "1199",
- "loc_data": "{2262,3151,0,1,0}-{2194,3255,0,0,6}"
- },
- {
- "npc_id": "1201",
- "loc_data": "{2264,3147,0,1,1}-{2266,3145,0,1,4}-{2198,3250,0,0,6}-{2203,3250,0,0,4}"
- },
- {
- "npc_id": "1202",
- "loc_data": "{2352,3172,0,1,4}"
- },
- {
- "npc_id": "1203",
- "loc_data": "{2189,3155,0,0,1}-{2183,3156,0,1,4}-{2194,3156,0,1,6}-{2182,3148,0,1,4}-{2179,3137,0,1,3}-{2189,3136,0,1,3}-{2182,3146,0,1,3}-{2187,3172,0,0,1}-{2180,3180,0,1,1}"
- },
- {
- "npc_id": "1205",
- "loc_data": "{3054,3254,0,0,0}"
- },
- {
- "npc_id": "1206",
- "loc_data": "{2185,3144,0,0,4}"
- },
- {
- "npc_id": "1207",
- "loc_data": "{3055,3254,0,0,0}"
- },
- {
- "npc_id": "1208",
- "loc_data": "{2194,3140,0,1,5}"
- },
- {
- "npc_id": "1213",
- "loc_data": "{2914,3418,0,0,6}"
- },
- {
- "npc_id": "1215",
- "loc_data": "{2612,3287,0,0,0}-{2613,3287,0,0,0}"
- },
- {
- "npc_id": "1216",
- "loc_data": "{2611,3285,0,0,0}"
- },
- {
- "npc_id": "1217",
- "loc_data": "{3000,3386,0,1,0}-{3019,3368,0,1,0}"
- },
- {
- "npc_id": "1218",
- "loc_data": "{3412,3512,0,1,4}-{3412,3515,0,1,1}-{3413,3514,0,1,6}-{3414,3512,0,1,5}-{3415,3518,0,1,5}-{3416,3509,0,1,7}-{3416,3511,0,1,4}-{3417,3518,0,1,4}-{3418,3509,0,1,4}-{3419,3512,0,1,7}-{3420,3517,0,1,7}-{3420,3518,0,1,6}-{3423,3461,0,1,5}-{3426,3465,0,1,4}-{3427,3463,0,1,5}-{3428,3458,0,1,4}-{3428,3465,0,1,2}-{3430,3462,0,1,1}-{3430,3467,0,1,3}-{3433,3458,0,1,1}-{3433,3468,0,1,4}-{3434,3464,0,1,6}"
- },
- {
- "npc_id": "1219",
- "loc_data": "{3292,5455,0,1,3}-{3295,5452,0,1,0}-{3290,5448,0,1,4}"
- },
- {
- "npc_id": "1220",
- "loc_data": "{3600,3491,0,1,2}-{3598,3498,0,1,4}-{3600,3496,0,1,0}-{3600,3496,0,1,6}-{3602,3494,0,1,1}-{3597,3490,0,1,6}-{3595,3497,0,1,4}-{3605,3491,0,1,4}-{3604,3495,0,1,0}"
- },
- {
- "npc_id": "1227",
- "loc_data": "{3424,3318,0,1,0}-{3423,3312,0,1,4}-{3507,3435,0,1,4}-{3484,3456,0,1,0}-{3486,3458,0,1,4}-{3511,3455,0,1,0}-{3508,3420,0,1,3}-{3508,3420,0,1,4}-{3506,3402,0,1,7}-{3494,3388,0,1,0}-{3502,3392,0,1,3}"
- },
- {
- "npc_id": "1228",
- "loc_data": "{3469,3346,0,1,0}-{3494,3447,0,1,0}-{3530,3440,0,1,0}-{3556,3453,0,1,0}"
- },
- {
- "npc_id": "1229",
- "loc_data": "{3421,3302,0,1,4}-{3417,3291,0,1,4}-{3423,3288,0,1,4}-{3418,3284,0,1,6}-{3427,3298,0,1,3}-{3431,3303,0,1,1}-{3432,3311,0,1,1}-{3492,3457,0,1,1}-{3502,3455,0,1,2}-{3516,3415,0,1,4}-{3511,3401,0,1,1}"
- },
- {
- "npc_id": "1230",
- "loc_data": "{3419,3280,0,1,4}-{3421,3277,0,1,4}-{3431,3275,0,1,3}-{3428,3314,0,1,1}-{3436,3318,0,1,5}-{3434,3322,0,1,6}-{3496,3447,0,1,7}-{3520,3437,0,1,4}"
- },
- {
- "npc_id": "1231",
- "loc_data": "{3504,3437,0,1,0}-{3509,3437,0,1,0}-{3498,3419,0,1,0}-{3493,3413,0,1,0}-{3524,3397,0,1,0}-{3438,3354,0,1,0}-{3429,3313,0,1,0}-{3429,3314,0,1,0}-{3437,3312,0,1,0}-{3437,3311,0,1,0}-{3451,3308,0,1,0}-{3447,3268,0,1,0}"
- },
- {
- "npc_id": "1232",
- "loc_data": "{3441,3265,0,1,5}-{3438,3277,0,1,7}-{3438,3283,0,1,4}-{3439,3315,0,1,3}-{3439,3310,0,1,1}-{3435,3302,0,1,3}-{3508,3420,0,1,1}-{3514,3415,0,1,7}-{3525,3417,0,1,3}"
- },
- {
- "npc_id": "1233",
- "loc_data": "{3485,3443,0,1,0}-{3516,3441,0,1,0}-{3537,3428,0,1,0}"
- },
- {
- "npc_id": "1234",
- "loc_data": "{3446,3282,0,1,1}-{3446,3298,0,1,3}-{3449,3304,0,1,1}-{3493,3454,0,1,2}-{3493,3454,0,1,0}-{3518,3454,0,1,2}-{3519,3441,0,1,7}-{3506,3417,0,1,5}-{3519,3401,0,1,2}-{3499,3420,0,1,3}-{3520,3412,0,1,0}-{3516,3410,0,1,7}-{3513,3383,0,1,0}-{3491,3388,0,1,3}"
- },
- {
- "npc_id": "1235",
- "loc_data": "{3425,3306,0,1,1}-{3442,3303,0,1,3}-{3437,3299,0,1,1}-{3422,3321,0,1,1}-{3486,3458,0,1,7}-{3503,3420,0,1,3}-{3514,3398,0,1,4}-{3524,3419,0,1,1}-{3509,3386,0,1,2}"
- },
- {
- "npc_id": "1239",
- "loc_data": "{3166,3033,0,1,1}-{3174,3043,0,1,6}-{3177,3041,0,1,4}-{3176,3038,0,1,4}-{3177,3035,0,1,7}-{3183,3035,0,1,6}-{3182,3032,0,1,6}"
- },
- {
- "npc_id": "1240",
- "loc_data": "{3502,3288,0,1,4}-{3505,3284,0,1,4}-{3490,3292,0,1,4}-{3502,3300,0,1,4}-{3492,3303,0,1,4}-{3516,3303,0,1,4}-{3478,3281,0,1,4}-{3473,3273,0,1,4}-{3469,3288,0,1,4}-{3469,3304,0,1,4}"
- },
- {
- "npc_id": "1251",
- "loc_data": "{3474,3309,0,1,5}-{3486,3277,0,1,4}-{3496,3289,0,0,3}"
- },
- {
- "npc_id": "1253",
- "loc_data": "{3488,3297,0,0,6}"
- },
- {
- "npc_id": "1257",
- "loc_data": "{3490,3290,0,0,3}-{3487,3303,0,1,5}-{3496,3296,0,1,4}-{3479,3303,0,1,4}-{3498,3282,0,1,3}-{3473,3281,0,1,3}-{3478,3308,0,1,1}"
- },
- {
- "npc_id": "1258",
- "loc_data": "{3488,3287,0,1,1}-{3501,3285,0,1,5}-{3478,3274,0,1,4}-{3497,3283,0,1,1}"
- },
- {
- "npc_id": "1261",
- "loc_data": "{3492,3300,0,1,4}-{3498,3300,0,1,5}-{3487,3302,0,1,6}-{3497,3299,0,1,5}-{3488,3273,0,1,6}"
- },
- {
- "npc_id": "1262",
- "loc_data": "{3487,3283,0,1,1}-{3477,3300,0,1,4}-{3497,3276,0,1,1}-{3502,3279,0,1,1}-{3481,3296,0,1,2}"
- },
- {
- "npc_id": "1263",
- "loc_data": "{3108,3160,1,1,1}"
- },
- {
- "npc_id": "1266",
- "loc_data": "{2680,3719,0,0,7}-{2684,3722,0,0,1}-{2684,3726,0,0,1}-{2678,3728,0,0,2}-{2673,3728,0,0,0}-{2670,3724,0,0,3}-{2671,3726,0,0,2}-{2679,3731,0,0,2}-{2684,3729,0,0,6}-{2688,3721,0,0,1}-{2693,3715,0,0,5}-{2699,3715,0,0,2}-{2706,3711,0,0,1}-{2712,3718,0,0,5}-{2716,3721,0,0,7}-{2722,3726,0,0,1}-{2525,3763,0,0,7}-{2508,3762,0,0,0}-{2510,3755,0,0,2}-{2523,3756,0,0,1}-{2532,3752,0,0,0}-{2529,3755,0,0,1}-{2528,3739,0,0,6}-{2529,3730,0,0,0}-{2518,3724,0,0,1}-{2508,3723,0,0,1}-{2525,3718,0,0,1}-{2549,3733,0,0,3}"
- },
- {
- "npc_id": "1268",
- "loc_data": "{2681,3716,0,0,2}-{2678,3721,0,0,2}-{2684,3719,0,0,1}-{2699,3719,0,0,4}-{2701,3717,0,0,2}-{2707,3719,0,0,0}-{2700,3726,0,0,2}-{2695,3713,0,0,2}-{2716,3718,0,0,5}-{2706,3713,0,0,2}-{2537,3761,0,0,7}-{2537,3761,0,0,7}-{2528,3767,0,0,3}-{2526,3753,0,0,2}-{2513,3755,0,0,3}-{2505,3753,0,0,3}-{2530,3751,0,0,1}-{2527,3755,0,0,1}-{2532,3758,0,0,6}-{2532,3751,0,0,3}-{2530,3738,0,0,2}-{2531,3729,0,0,0}-{2523,3723,0,0,1}-{2520,3722,0,0,3}-{2515,3720,0,0,3}-{2505,3724,0,0,4}-{2505,3729,0,0,6}-{2535,3717,0,0,4}-{2536,3724,0,0,1}-{2543,3729,0,0,6}-{2550,3734,0,0,1}-{2552,3747,0,0,6}-{2552,3752,0,0,6}"
- },
- {
- "npc_id": "1269",
- "loc_data": "{2672,3683,0,1,3}"
- },
- {
- "npc_id": "1270",
- "loc_data": "{2770,3624,0,0,0}"
- },
- {
- "npc_id": "1274",
- "loc_data": "{2660,3680,0,0,6}"
- },
- {
- "npc_id": "1275",
- "loc_data": "{2657,3680,0,0,6}"
- },
- {
- "npc_id": "1276",
- "loc_data": "{2658,3679,0,0,6}"
- },
- {
- "npc_id": "1277",
- "loc_data": "{2659,3678,0,0,6}"
- },
- {
- "npc_id": "1278",
- "loc_data": "{2659,3664,0,1,3}"
- },
- {
- "npc_id": "1281",
- "loc_data": "{2661,3651,0,1,3}"
- },
- {
- "npc_id": "1282",
- "loc_data": "{2640,3681,0,1,4}"
- },
- {
- "npc_id": "1283",
- "loc_data": "{2647,3660,0,1,5}"
- },
- {
- "npc_id": "1284",
- "loc_data": "{2658,3673,0,1,1}"
- },
- {
- "npc_id": "1285",
- "loc_data": "{2657,3669,0,1,1}"
- },
- {
- "npc_id": "1286",
- "loc_data": "{2656,3676,0,1,1}"
- },
- {
- "npc_id": "1287",
- "loc_data": "{2652,3588,0,1,1}"
- },
- {
- "npc_id": "1288",
- "loc_data": "{2634,3667,0,1,1}"
- },
- {
- "npc_id": "1289",
- "loc_data": "{2667,3692,0,1,1}"
- },
- {
- "npc_id": "1294",
- "loc_data": "{2658,3673,0,1,7}"
- },
- {
- "npc_id": "1296",
- "loc_data": "{2660,3663,0,0,6}-{2657,3663,0,0,6}"
- },
- {
- "npc_id": "1298",
- "loc_data": "{2663,3646,0,0,6}"
- },
- {
- "npc_id": "1299",
- "loc_data": "{2660,3646,0,0,6}"
- },
- {
- "npc_id": "1300",
- "loc_data": "{2662,3674,0,1,1}"
- },
- {
- "npc_id": "1301",
- "loc_data": "{2623,3675,0,1,6}"
- },
- {
- "npc_id": "1302",
- "loc_data": "{2641,3699,0,0,4}"
- },
- {
- "npc_id": "1303",
- "loc_data": "{2664,3692,0,1,3}"
- },
- {
- "npc_id": "1304",
- "loc_data": "{2582,3845,0,0,3}"
- },
- {
- "npc_id": "1305",
- "loc_data": "{2643,3676,0,1,7}"
- },
- {
- "npc_id": "1306",
- "loc_data": "{2674,3677,0,1,6}"
- },
- {
- "npc_id": "1307",
- "loc_data": "{2658,3673,0,1,7}"
- },
- {
- "npc_id": "1308",
- "loc_data": "{2672,3662,0,1,3}"
- },
- {
- "npc_id": "1309",
- "loc_data": "{2667,3653,0,1,3}"
- },
- {
- "npc_id": "1310",
- "loc_data": "{2667,3701,0,1,4}"
- },
- {
- "npc_id": "1311",
- "loc_data": "{2655,3651,0,1,3}"
- },
- {
- "npc_id": "1312",
- "loc_data": "{2639,3651,0,1,6}"
- },
- {
- "npc_id": "1313",
- "loc_data": "{2626,3653,0,1,5}"
- },
- {
- "npc_id": "1314",
- "loc_data": "{2675,3677,0,1,3}"
- },
- {
- "npc_id": "1315",
- "loc_data": "{2646,3675,0,1,3}"
- },
- {
- "npc_id": "1317",
- "loc_data": "{2632,3677,0,1,2}-{2641,3682,0,1,3}-{2643,3675,0,1,6}-{2643,3674,0,1,4}-{2646,3668,0,1,3}-{2651,3669,0,1,3}-{2648,3688,0,1,4}-{2656,3692,0,1,1}"
- },
- {
- "npc_id": "1318",
- "loc_data": "{2671,3658,0,1,2}-{2638,3648,0,1,3}-{2626,3658,0,1,4}-{2626,3668,0,1,1}-{2613,3668,0,1,3}-{2630,3673,0,1,7}-{2635,3680,0,1,4}-{2644,3675,0,1,5}-{2642,3681,0,1,3}-{2631,3678,0,1,6}-{2661,3698,0,1,1}-{2663,3687,0,1,3}-{2673,3695,0,1,3}-{2674,3710,0,1,1}-{2676,3693,0,1,3}-{2675,3685,0,1,4}-{2669,3677,0,1,1}-{2667,3670,0,1,2}-{2675,3670,0,1,4}-{2679,3685,0,1,2}-{2667,3671,0,1,3}-{2666,3663,0,1,6}-{2688,3659,0,1,2}-{2658,3657,0,1,4}-{2684,3649,0,1,4}-{2679,3649,0,1,4}-{2646,3664,0,1,4}-{2646,3655,0,1,1}-{2637,3655,0,1,3}-{2667,3658,0,1,3}"
- },
- {
- "npc_id": "1320",
- "loc_data": "{2738,3636,0,1,7}-{2739,3636,0,1,7}-{2738,3637,0,1,4}-{2735,3637,0,1,3}"
- },
- {
- "npc_id": "1321",
- "loc_data": "{2736,3642,0,1,4}-{2744,3638,0,1,4}"
- },
- {
- "npc_id": "1329",
- "loc_data": "{3073,3640,0,0,0}"
- },
- {
- "npc_id": "1334",
- "loc_data": "{2510,3644,1,1,3}"
- },
- {
- "npc_id": "1338",
- "loc_data": "{3151,5559,0,1,2}-{3157,5548,0,1,3}-{3155,5553,0,1,4}-{3145,5559,0,1,6}-{3152,5556,0,1,3}-{3149,5544,0,1,0}-{3145,5548,0,1,3}"
- },
- {
- "npc_id": "1339",
- "loc_data": "{3153,5547,0,1,0}-{3150,5545,0,1,1}"
- },
- {
- "npc_id": "1340",
- "loc_data": "{3147,5557,0,1,3}-{3154,5559,0,1,4}"
- },
- {
- "npc_id": "1343",
- "loc_data": "{3145,5548,0,1,6}"
- },
- {
- "npc_id": "1359",
- "loc_data": "{2612,3875,1,1,6}"
- },
- {
- "npc_id": "1360",
- "loc_data": "{2620,3896,0,0,3}"
- },
- {
- "npc_id": "1369",
- "loc_data": "{2165,3276,0,1,0}"
- },
- {
- "npc_id": "1373",
- "loc_data": "{2500,3860,1,1,4}"
- },
- {
- "npc_id": "1374",
- "loc_data": "{2505,3854,1,0,4}-{2509,3849,0,0,4}"
- },
- {
- "npc_id": "1375",
- "loc_data": "{2501,3858,1,0,4}"
- },
- {
- "npc_id": "1376",
- "loc_data": "{2548,3895,0,1,0}"
- },
- {
- "npc_id": "1377",
- "loc_data": "{2544,3843,0,1,6}"
- },
- {
- "npc_id": "1378",
- "loc_data": "{2516,3865,0,1,4}"
- },
- {
- "npc_id": "1385",
- "loc_data": "{2629,3694,0,0,6}"
- },
- {
- "npc_id": "1389",
- "loc_data": "{2603,3877,0,1,1}"
- },
- {
- "npc_id": "1390",
- "loc_data": "{2604,3876,0,1,4}"
- },
- {
- "npc_id": "1391",
- "loc_data": "{2604,3876,0,1,3}"
- },
- {
- "npc_id": "1393",
- "loc_data": "{2519,3868,0,0,3}"
- },
- {
- "npc_id": "1394",
- "loc_data": "{2519,3863,0,0,1}"
- },
- {
- "npc_id": "1395",
- "loc_data": "{2547,3868,0,0,1}"
- },
- {
- "npc_id": "1396",
- "loc_data": "{2525,3892,0,0,4}"
- },
- {
- "npc_id": "1397",
- "loc_data": "{2573,3856,0,0,4}"
- },
- {
- "npc_id": "1398",
- "loc_data": "{2526,3850,0,0,6}"
- },
- {
- "npc_id": "1399",
- "loc_data": "{2577,3854,0,0,1}"
- },
- {
- "npc_id": "1400",
- "loc_data": "{3037,4512,0,1,0}-{3049,4498,0,1,1}"
- },
- {
- "npc_id": "1401",
- "loc_data": "{2605,3878,0,1,1}"
- },
- {
- "npc_id": "1402",
- "loc_data": "{2603,3877,0,1,1}"
- },
- {
- "npc_id": "1404",
- "loc_data": "{3037,4492,0,1,4}-{3036,4502,0,1,4}-{3029,4520,0,1,1}-{3019,4512,0,1,1}-{2239,3164,0,1,2}-{2241,3166,0,1,3}-{2242,3163,0,1,3}"
- },
- {
- "npc_id": "1405",
- "loc_data": "{2576,3843,0,0,6}"
- },
- {
- "npc_id": "1427",
- "loc_data": "{2957,3025,0,0,0}"
- },
- {
- "npc_id": "1434",
- "loc_data": "{2753,2770,0,1,6}"
- },
- {
- "npc_id": "1447",
- "loc_data": "{2761,2785,0,1,3}"
- },
- {
- "npc_id": "1452",
- "loc_data": "{2743,2796,0,1,6}"
- },
- {
- "npc_id": "1454",
- "loc_data": "{2742,2790,0,1,1}"
- },
- {
- "npc_id": "1457",
- "loc_data": "{2747,2782,0,0,1}-{2754,2778,0,1,1}-{2761,2778,0,1,1}-{2765,2779,0,1,4}-{2767,2784,0,1,6}-{2772,2781,0,1,5}-{2774,2787,0,1,1}-{2777,2790,0,1,4}-{2762,2793,0,1,3}-{2756,2789,0,1,3}"
- },
- {
- "npc_id": "1458",
- "loc_data": "{2728,2751,0,1,1}-{2728,2758,0,1,1}-{2727,2762,0,1,6}-{2728,2755,0,1,6}-{2714,2753,0,1,1}-{2714,2757,0,1,6}-{2714,2761,0,1,6}-{2715,2749,0,1,2}"
- },
- {
- "npc_id": "1459",
- "loc_data": "{2790,2791,0,1,4}-{2803,2785,0,1,7}-{2797,2792,0,1,0}-{2800,2779,0,1,5}-{2788,2779,0,1,7}-{2795,2776,0,1,3}"
- },
- {
- "npc_id": "1460",
- "loc_data": "{2787,2794,0,1,3}"
- },
- {
- "npc_id": "1463",
- "loc_data": "{2600,3276,0,1,4}-{2601,3276,0,1,6}-{2601,3277,0,1,6}-{2601,3278,0,1,2}-{2602,3279,0,1,5}-{2602,3282,0,1,4}-{2604,3276,0,1,4}-{2605,3280,0,1,4}-{2605,3281,0,1,7}-{2606,3280,0,1,4}"
- },
- {
- "npc_id": "1469",
- "loc_data": "{2595,3277,0,0,0}"
- },
- {
- "npc_id": "1471",
- "loc_data": "{2707,9102,0,1,0}-{2704,9107,0,1,0}-{2705,9110,0,1,0}-{2708,9107,0,1,0}-{2743,9105,0,1,0}-{2741,9103,0,1,0}-{2744,9101,0,1,0}-{2743,9099,0,1,0}-{2737,9124,0,1,0}-{2741,9123,0,1,0}-{2740,9120,0,1,0}-{2736,9119,0,1,0}-{2734,9117,0,1,0}-{2712,9135,0,1,0}-{2714,9131,0,1,0}-{2709,9131,0,1,0}-{2708,9135,0,1,0}"
- },
- {
- "npc_id": "1514",
- "loc_data": "{3432,3487,0,0,0}"
- },
- {
- "npc_id": "1515",
- "loc_data": "{3438,3487,0,0,0}"
- },
- {
- "npc_id": "1516",
- "loc_data": "{3437,3487,0,0,0}"
- },
- {
- "npc_id": "1517",
- "loc_data": "{3434,3483,0,0,0}"
- },
- {
- "npc_id": "1518",
- "loc_data": "{3435,3483,0,0,0}"
- },
- {
- "npc_id": "1519",
- "loc_data": "{3433,3486,0,0,0}"
- },
- {
- "npc_id": "1520",
- "loc_data": "{3434,3486,0,0,0}"
- },
- {
- "npc_id": "1553",
- "loc_data": "{2828,10065,1,0,0}"
- },
- {
- "npc_id": "1554",
- "loc_data": "{2829,10104,1,0,0}"
- },
- {
- "npc_id": "1555",
- "loc_data": "{2829,10096,1,0,0}"
- },
- {
- "npc_id": "1560",
- "loc_data": "{3150,5454,0,1,4}-{3144,5446,0,1,7}-{3166,5446,0,1,3}-{3158,5451,0,1,7}"
- },
- {
- "npc_id": "1561",
- "loc_data": "{3144,5450,0,1,1}-{3153,5454,0,1,5}-{3160,5450,0,1,5}-{3167,5450,0,1,3}-{3161,5451,0,1,1}"
- },
- {
- "npc_id": "1562",
- "loc_data": "{3147,5448,0,1,4}"
- },
- {
- "npc_id": "1563",
- "loc_data": "{3152,5453,0,1,0}"
- },
- {
- "npc_id": "1582",
- "loc_data": "{2657,9500,0,0,1}-{2632,9589,2,0,1}-{2628,9549,2,0,5}-{2629,9543,2,0,2}-{3249,5517,0,1,3}-{2568,9889,0,1,6}-{2578,9898,0,1,1}-{2352,9755,0,1,1}-{2343,9775,0,1,1}-{2340,9777,0,1,1}-{2334,9775,0,1,1}"
- },
- {
- "npc_id": "1583",
- "loc_data": "{2655,9481,0,0,3}-{2631,9579,2,0,4}-{3211,5519,0,1,0}-{3254,5513,0,1,7}-{2563,9885,0,1,7}-{2575,9897,0,1,1}-{2352,9760,0,1,1}"
- },
- {
- "npc_id": "1584",
- "loc_data": "{2661,9481,0,0,4}-{2635,9570,2,0,1}-{2627,9539,2,0,5}-{3209,5512,0,1,6}-{3231,5494,0,1,7}-{2350,9776,0,1,1}-{2337,9773,0,1,1}"
- },
- {
- "npc_id": "1585",
- "loc_data": "{2666,9482,0,0,5}-{2641,9563,2,0,5}-{3257,5523,0,1,1}-{3204,5516,0,1,3}-{2575,9892,0,1,6}-{2355,9762,0,1,1}-{2354,9768,0,1,1}-{2351,9770,0,1,1}-{2354,9773,0,1,1}"
- },
- {
- "npc_id": "1586",
- "loc_data": "{2668,9497,0,0,4}-{2635,9565,2,0,4}-{2633,9554,2,0,4}-{3247,5520,0,1,5}-{3205,5513,0,1,6}-{3213,5519,0,1,7}"
- },
- {
- "npc_id": "1587",
- "loc_data": "{2692,3202,0,1,4}-{2695,3216,0,1,0}-{2830,3241,0,1,6}-{2681,9577,0,0,0}-{2673,9591,0,0,5}-{2655,9575,0,0,5}-{2640,9580,0,0,0}-{2646,9553,0,0,1}-{2650,9536,0,0,7}-{2645,9489,0,0,7}-{2670,9543,0,0,0}-{2663,9555,0,0,7}-{3237,5557,0,1,3}"
- },
- {
- "npc_id": "1588",
- "loc_data": "{2691,3215,0,1,3}-{2826,3245,0,1,3}-{2679,9592,0,0,2}-{2654,9587,0,0,3}-{2650,9564,0,0,6}-{2647,9548,0,0,6}-{2637,9545,0,0,5}-{2637,9532,0,0,5}-{2634,9521,0,0,0}-{2642,9493,0,0,0}-{2645,9484,0,0,7}-{2678,9548,0,0,4}-{2658,9551,0,0,1}-{3246,5558,0,1,4}"
- },
- {
- "npc_id": "1589",
- "loc_data": "{2698,9503,0,0,7}-{2713,9505,0,0,0}-{2717,9502,0,0,7}-{2699,9523,0,0,0}-{2706,9525,0,0,2}-{2719,9517,0,0,5}-{2724,9515,0,0,3}"
- },
- {
- "npc_id": "1590",
- "loc_data": "{2730,9490,0,1,0}-{2731,9482,0,1,7}-{2742,9491,0,1,0}-{3184,5557,0,1,7}-{3148,5514,0,1,6}-{3144,5514,0,1,3}-{2340,9733,0,1,3}-{2348,9733,0,1,3}-{2348,9743,0,1,3}"
- },
- {
- "npc_id": "1591",
- "loc_data": "{2703,9456,0,0,0}-{2717,9459,0,0,7}-{2731,9460,0,0,3}-{2737,9454,0,0,3}-{2737,9444,0,0,3}-{2736,9432,0,0,3}-{2738,9421,0,0,5}-{2727,9418,0,0,1}-{2724,9439,0,0,0}-{2715,9443,0,0,4}-{2891,3919,0,1,0}-{2901,3914,0,1,0}-{2911,3914,0,1,0}-{2920,3919,0,1,0}-{2929,3919,0,1,0}-{2929,3935,0,1,0}-{2929,3944,0,1,0}-{2702,9443,0,0,3}-{2700,9428,0,0,3}-{2705,9419,0,0,7}-{2311,9744,0,1,3}-{2313,9733,0,1,3}-{2317,9735,0,1,3}-{2329,9736,0,1,3}"
- },
- {
- "npc_id": "1592",
- "loc_data": "{2893,3929,0,1,0}-{2893,3942,0,1,0}-{2897,3951,0,1,0}-{2903,3954,0,1,0}-{2910,3954,0,1,0}-{2920,3952,0,1,0}-{2929,3952,0,1,0}-{2728,9426,0,0,4}-{2714,9432,0,0,0}-{2707,9450,0,0,6}-{2724,9451,0,0,6}-{2311,9778,0,1,3}-{2313,9772,0,1,2}-{2318,9776,0,1,3}-{2318,9764,0,1,3}-{2318,9760,0,1,3}-{2313,9752,0,1,3}"
- },
- {
- "npc_id": "1593",
- "loc_data": "{2744,9503,0,0,2}-{2681,9563,0,0,5}-{2677,9586,0,0,2}-{2644,9587,0,0,1}-{2652,9526,0,0,7}-{2656,9514,0,0,7}-{2666,9522,0,0,4}-{2665,9513,0,0,3}-{2666,9489,0,0,1}-{2702,9525,0,0,2}-{2704,9487,0,0,7}-{2711,9485,0,0,2}-{2722,9486,0,0,4}-{2717,9480,0,0,6}-{2733,9494,0,0,1}-{2742,9489,0,0,0}-{2638,9592,2,0,5}-{2633,9583,2,0,7}-{2627,9545,2,0,6}-{2626,9535,2,0,6}-{2628,9507,2,0,5}-{2635,9508,2,0,2}-{2634,9483,2,0,7}"
- },
- {
- "npc_id": "1594",
- "loc_data": "{2672,9569,0,0,1}-{2657,9577,0,0,3}-{2643,9543,0,0,7}-{2646,9530,0,0,7}-{2643,9519,0,0,7}-{2660,9521,0,0,1}-{2665,9527,0,0,2}-{2671,9521,0,0,7}-{2670,9516,0,0,6}-{2660,9497,0,0,7}-{2643,9487,0,0,5}-{2653,9488,0,0,2}-{2677,9501,0,0,2}-{2699,9516,0,0,0}-{2709,9524,0,0,7}-{2683,9476,0,0,7}-{2700,9489,0,0,5}-{2703,9484,0,0,5}-{2710,9481,0,0,2}-{2716,9486,0,0,2}-{2726,9489,0,0,1}-{2735,9481,0,0,4}-{2740,9497,0,0,2}-{2739,9506,0,0,0}-{2658,9546,0,0,6}-{2636,9574,2,0,7}-{2643,9566,2,0,7}-{2635,9559,2,0,7}-{2630,9515,2,0,7}-{2642,9506,2,0,7}-{2629,9487,2,0,5}-{2648,9476,2,0,7}"
- },
- {
- "npc_id": "1595",
- "loc_data": "{2744,3152,0,1,7}"
- },
- {
- "npc_id": "1597",
- "loc_data": "{3147,9914,0,1,6}"
- },
- {
- "npc_id": "1598",
- "loc_data": "{2447,4429,0,1,6}"
- },
- {
- "npc_id": "1600",
- "loc_data": "{2791,9997,0,1,3}-{3190,9574,0,1,6}"
- },
- {
- "npc_id": "1601",
- "loc_data": "{2797,9997,0,1,6}-{2781,9996,0,1,7}"
- },
- {
- "npc_id": "1602",
- "loc_data": "{2793,9995,0,1,3}-{2783,9998,0,1,6}"
- },
- {
- "npc_id": "1603",
- "loc_data": "{2789,9994,0,1,1}-{2786,9998,0,1,5}"
- },
- {
- "npc_id": "1604",
- "loc_data": "{3434,3550,1,1,3}-{3439,3549,1,1,4}-{3425,3549,1,1,5}-{3423,3553,1,1,4}-{3426,3541,1,1,1}-{3425,3541,1,1,2}-{3426,3539,1,1,0}-{3420,3537,1,1,3}-{3417,3536,1,1,6}-{2373,9778,0,1,1}-{2372,9768,0,1,1}-{2371,9774,0,1,1}-{2375,9770,0,1,1}-{2383,9777,0,1,1}-{2387,9774,0,1,1}-{2384,9772,0,1,1}-{2387,9770,0,1,1}-{2392,9780,0,1,1}-{2396,9775,0,1,1}-{2399,9777,0,1,1}"
- },
- {
- "npc_id": "1608",
- "loc_data": "{2698,9999,0,1,6}-{2695,9997,0,1,7}-{2697,9996,0,1,5}-{2695,9999,0,1,6}"
- },
- {
- "npc_id": "1609",
- "loc_data": "{2700,9994,0,1,6}-{2698,10001,0,1,4}-{2703,9994,0,1,4}-{2701,10000,0,1,4}"
- },
- {
- "npc_id": "1610",
- "loc_data": "{3443,3537,2,1,4}-{3434,3536,2,1,4}-{3443,3540,2,1,3}-{3446,3548,2,1,4}-{3439,3549,2,1,3}-{3434,3547,2,1,1}-{3444,3537,2,1,3}-{3174,5474,0,1,4}-{3175,5479,0,1,6}-{3183,5473,0,1,7}-{3178,5468,0,1,4}-{2428,9745,0,1,1}-{2428,9742,0,1,1}-{2428,9735,0,1,1}-{2425,9737,0,1,1}-{2422,9735,0,1,1}-{2419,9738,0,1,1}"
- },
- {
- "npc_id": "1612",
- "loc_data": "{3438,3562,0,1,1}-{3430,3564,0,1,3}-{3434,3555,0,1,5}-{3443,3551,0,1,4}-{3442,3545,0,1,1}-{3449,3536,0,1,1}-{3440,3539,0,1,4}"
- },
- {
- "npc_id": "1613",
- "loc_data": "{3439,3565,2,1,6}-{3443,3571,2,1,1}-{3435,3565,2,1,3}-{3443,3564,2,1,2}-{3444,3559,2,1,2}-{3427,3558,2,1,0}-{3425,3557,2,1,4}-{3430,3557,2,1,3}-{3170,5554,0,1,2}-{3166,5556,0,1,5}-{3171,5560,0,1,4}-{3173,5556,0,1,3}-{2426,9751,0,1,1}-{2427,9754,0,1,1}-{2425,9757,0,1,1}-{2422,9756,0,1,1}-{2426,9753,0,1,1}-{2420,9755,0,1,1}-{2417,9755,0,1,1}-{2406,9763,0,1,1}-{2404,9765,0,1,1}-{2407,9766,0,1,1}-{2410,9764,0,1,1}-{2416,9765,0,1,1}-{2417,9763,0,1,1}-{2420,9764,0,1,1}-{2418,9765,0,1,1}"
- },
- {
- "npc_id": "1615",
- "loc_data": "{3422,3566,2,1,5}-{3426,3568,2,1,6}-{3418,3562,2,1,4}-{3414,3566,2,1,3}-{3412,3570,2,1,4}-{3421,3572,2,1,2}-{3422,3571,2,1,1}-{3033,4873,0,1,7}-{3039,4885,0,1,3}-{3050,4890,0,1,3}-{3062,4892,0,1,5}-{3064,4901,0,1,3}-{3056,4912,0,1,3}-{3048,4916,0,1,5}-{3038,4911,0,1,6}-{3022,4914,0,1,6}-{3018,4902,0,1,6}-{3025,4898,0,1,4}-{3033,4885,0,1,0}-{3021,4877,0,1,3}-{3048,4872,0,1,1}-{3061,4880,0,1,3}-{3061,4891,0,1,1}-{3054,4901,0,1,1}-{2402,9739,0,1,1}-{2402,9742,0,1,1}-{2402,9751,0,1,1}-{2406,9753,0,1,1}-{2408,9750,0,1,1}-{2404,9748,0,1,1}-{2407,9748,0,1,1}-{2416,9748,0,1,1}-{2415,9745,0,1,1}-{2418,9745,0,1,1}"
- },
- {
- "npc_id": "1616",
- "loc_data": "{2741,10011,0,1,2}-{2742,10010,0,1,3}-{2739,10014,0,1,1}-{2740,10006,0,1,3}"
- },
- {
- "npc_id": "1617",
- "loc_data": "{2743,10003,0,1,1}-{2746,10008,0,1,2}-{2743,10015,0,1,3}-{2745,10011,0,1,5}-{2744,10016,0,1,1}"
- },
- {
- "npc_id": "1618",
- "loc_data": "{3424,3565,1,1,1}-{3416,3562,1,1,6}-{3423,3559,1,1,0}-{3424,3560,1,1,4}-{3412,3558,1,1,1}-{3412,3568,1,1,1}-{3417,3565,1,1,3}-{2425,9774,0,1,1}-{2425,9776,0,1,1}-{2423,9779,0,1,1}-{2419,9785,0,1,1}-{2415,9785,0,1,1}-{2416,9788,0,1,1}-{2430,9788,0,1,1}-{2434,9789,0,1,1}-{2436,9794,0,1,1}"
- },
- {
- "npc_id": "1620",
- "loc_data": "{2794,10036,0,1,4}-{2788,10037,0,1,0}-{2795,10034,0,1,3}-{2785,10035,0,1,3}"
- },
- {
- "npc_id": "1621",
- "loc_data": "{2797,10035,0,1,6}-{2787,10032,0,1,3}-{2802,10031,0,1,3}"
- },
- {
- "npc_id": "1623",
- "loc_data": "{2725,9999,0,1,6}"
- },
- {
- "npc_id": "1624",
- "loc_data": "{3179,5522,0,1,6}-{3223,9393,0,1,5}-{3225,9401,0,1,0}-{3222,9375,0,1,6}-{3220,9380,0,1,6}-{3215,9364,0,1,3}-{3213,9361,0,1,1}-{3212,9355,0,1,2}-{3230,9367,0,1,3}-{3240,9350,0,1,5}-{3248,9348,0,1,4}-{3255,9350,0,1,4}-{3256,9392,0,1,4}-{3168,5513,0,1,3}-{3174,5514,0,1,6}-{3178,5517,0,1,4}-{3178,5528,0,1,1}-{3169,5516,0,1,3}-{3179,5524,0,1,4}"
- },
- {
- "npc_id": "1626",
- "loc_data": "{2723,10005,0,1,0}-{2726,9998,0,1,1}-{2723,10009,0,1,3}"
- },
- {
- "npc_id": "1627",
- "loc_data": "{2724,10008,0,1,4}-{2721,10005,0,1,1}-{2724,10005,0,1,3}-{2729,10004,0,1,3}-{2724,10012,0,1,4}-{2718,10009,0,1,1}-{2721,10001,0,1,7}-{2720,9996,0,1,7}-{2721,10006,0,1,3}"
- },
- {
- "npc_id": "1628",
- "loc_data": "{2723,10004,0,1,4}-{2722,9999,0,1,1}-{2729,10002,0,1,1}-{3155,5536,0,1,4}-{3156,5540,0,1,3}-{3157,5538,0,1,2}-{3166,5537,0,1,1}-{3165,5541,0,1,3}"
- },
- {
- "npc_id": "1629",
- "loc_data": "{3162,5538,0,1,2}-{3157,5538,0,1,4}-{3155,5537,0,1,1}-{3164,5538,0,1,2}"
- },
- {
- "npc_id": "1631",
- "loc_data": "{2800,10017,0,1,1}-{2796,10021,0,1,1}-{2805,10021,0,1,1}-{2803,10013,0,1,1}-{3160,9589,0,1,3}-{3167,9589,0,1,6}-{3179,9585,0,1,1}-{3188,9572,0,1,7}-{3190,9580,0,1,3}-{3206,9586,0,1,3}-{3221,9586,0,1,7}-{3226,9573,0,1,5}-{3223,9569,0,1,1}"
- },
- {
- "npc_id": "1632",
- "loc_data": "{2798,10019,0,1,1}-{2800,10015,0,1,1}-{2797,10018,0,1,1}"
- },
- {
- "npc_id": "1633",
- "loc_data": "{1935,3217,0,1,0}-{1933,3209,0,1,0}-{1930,3208,0,1,0}-{1929,3217,0,1,0}-{1927,3219,0,1,0}-{1924,3211,0,1,0}-{1920,3216,0,1,0}-{1925,3213,0,1,0}-{1837,3244,0,1,0}-{1836,3250,0,1,0}-{1845,3251,0,1,0}-{1845,3247,0,1,0}-{1849,3241,0,1,0}-{1858,3251,0,1,0}-{1853,3247,0,1,0}-{1848,3254,0,1,0}-{2761,10007,0,1,0}-{2757,10010,0,1,3}-{2763,10000,0,1,5}-{2760,10011,0,1,0}-{2761,9997,0,1,4}-{3263,9399,0,1,3}-{3274,9397,0,1,1}-{3275,9393,0,1,6}-{3271,9384,0,1,0}-{3270,9380,0,1,2}-{3283,9378,0,1,6}-{3285,9386,0,1,5}-{3284,9401,0,1,4}-{3278,9353,0,1,1}-{3299,9380,0,1,1}-{3319,9402,0,1,1}-{3305,9350,0,1,4}"
- },
- {
- "npc_id": "1634",
- "loc_data": "{2757,10008,0,1,6}-{2760,10005,0,1,5}"
- },
- {
- "npc_id": "1635",
- "loc_data": "{2758,10001,0,1,1}-{2763,10006,0,1,1}-{2766,10000,0,1,6}-{2759,9999,0,1,7}"
- },
- {
- "npc_id": "1636",
- "loc_data": "{2760,10004,0,1,1}-{2760,10002,0,1,6}"
- },
- {
- "npc_id": "1637",
- "loc_data": "{3276,5454,0,1,4}-{3279,5450,0,1,0}-{3271,5446,0,1,3}-{3277,5512,0,1,1}-{2700,10027,0,1,6}-{3278,5535,0,0,0}-{3277,5520,0,1,1}"
- },
- {
- "npc_id": "1638",
- "loc_data": "{3284,5456,0,1,1}-{3278,5453,0,1,1}-{3271,5512,0,1,4}-{2704,10022,0,1,4}-{2707,10023,0,1,4}"
- },
- {
- "npc_id": "1639",
- "loc_data": "{3283,5461,0,1,4}-{3285,5456,0,1,6}-{3275,5455,0,1,5}-{3272,5446,0,1,4}-{3277,5445,0,1,3}-{2711,10028,0,1,2}-{2710,10030,0,1,6}"
- },
- {
- "npc_id": "1640",
- "loc_data": "{3272,5445,0,1,4}-{2705,10028,0,1,3}-{2704,10031,0,1,6}"
- },
- {
- "npc_id": "1641",
- "loc_data": "{2708,10025,0,1,6}"
- },
- {
- "npc_id": "1642",
- "loc_data": "{2703,10020,0,1,0}"
- },
- {
- "npc_id": "1643",
- "loc_data": "{3246,5446,0,1,3}-{3434,3562,1,1,6}-{3439,3558,1,1,5}-{3444,3567,1,1,4}-{3439,3571,1,1,3}-{3435,3570,1,1,7}-{3447,3561,1,1,4}-{3442,3573,1,1,6}-{3237,5455,0,1,0}-{3246,5450,0,1,4}"
- },
- {
- "npc_id": "1644",
- "loc_data": "{3240,5448,0,1,7}"
- },
- {
- "npc_id": "1648",
- "loc_data": "{3426,3537,0,1,4}-{3413,3536,0,1,3}-{3419,3545,0,1,2}-{3426,3544,0,1,6}-{3410,3535,0,1,2}-{3425,3556,0,1,6}-{3418,3557,0,1,1}-{3428,3571,0,1,3}-{3432,3573,0,1,4}"
- },
- {
- "npc_id": "1650",
- "loc_data": "{3411,3541,0,1,3}"
- },
- {
- "npc_id": "1655",
- "loc_data": "{3424,3544,0,1,1}-{3423,3546,0,1,1}-{3409,3538,0,1,3}-{3421,3559,0,1,4}-{3413,3559,0,1,6}-{3433,3574,0,1,3}-{3428,3571,0,1,6}"
- },
- {
- "npc_id": "1658",
- "loc_data": "{2595,3087,1,1,1}"
- },
- {
- "npc_id": "1679",
- "loc_data": "{2291,3145,0,1,2}"
- },
- {
- "npc_id": "1680",
- "loc_data": "{2290,3143,0,1,3}"
- },
- {
- "npc_id": "1681",
- "loc_data": "{3202,5483,0,1,4}-{2544,9843,0,1,3}"
- },
- {
- "npc_id": "1683",
- "loc_data": "{3678,3511,0,1,4}"
- },
- {
- "npc_id": "1684",
- "loc_data": "{3660,3517,0,1,7}"
- },
- {
- "npc_id": "1685",
- "loc_data": "{3659,3497,0,1,0}"
- },
- {
- "npc_id": "1686",
- "loc_data": "{3657,3516,0,1,3}-{3663,3522,0,1,7}-{3654,3518,1,1,6}"
- },
- {
- "npc_id": "1688",
- "loc_data": "{3709,3497,0,0,3}"
- },
- {
- "npc_id": "1691",
- "loc_data": "{3624,3530,0,1,1}-{3623,3524,0,1,2}-{3618,3526,0,1,6}-{3612,3527,0,1,6}-{3609,3527,0,1,4}"
- },
- {
- "npc_id": "1692",
- "loc_data": "{3632,3528,0,1,5}-{3633,3525,0,1,6}-{3631,3529,0,1,3}-{3631,3529,0,1,2}-{3628,3530,0,1,1}-{3631,3530,0,1,4}-{3629,3529,0,1,4}"
- },
- {
- "npc_id": "1694",
- "loc_data": "{3673,3491,0,1,3}"
- },
- {
- "npc_id": "1695",
- "loc_data": "{3461,3558,0,0,3}"
- },
- {
- "npc_id": "1697",
- "loc_data": "{3662,3502,0,1,4}-{3664,3493,0,1,6}-{3672,3486,0,1,2}-{3685,3485,0,1,3}-{3684,3496,0,1,3}-{3675,3502,0,1,3}-{3667,3484,0,1,0}-{3666,3471,0,1,4}-{3676,3464,0,1,3}-{3683,3467,0,1,6}-{3685,3474,0,1,4}-{3690,3474,0,1,1}-{3695,3473,0,1,3}-{3693,3466,0,1,7}-{3698,3463,0,1,3}-{3688,3467,0,1,3}-{3675,3474,0,1,4}-{3665,3476,0,1,6}-{3662,3491,0,1,1}-{3662,3495,0,1,4}-{3661,3501,0,1,6}-{3682,3486,0,1,4}-{3678,3493,0,1,4}-{3673,3491,0,1,3}-{3658,3502,0,1,4}-{3660,3505,0,1,1}-{3665,3469,0,1,6}-{3659,3465,0,1,6}-{3667,3461,0,1,1}"
- },
- {
- "npc_id": "1698",
- "loc_data": "{3665,3529,0,1,4}-{3669,3522,0,1,4}-{3672,3529,0,1,4}-{3668,3534,0,1,4}-{3657,3534,0,1,4}-{3654,3537,0,1,4}-{3649,3503,0,1,2}-{3647,3473,0,1,3}"
- },
- {
- "npc_id": "1699",
- "loc_data": "{3659,3480,0,1,3}"
- },
- {
- "npc_id": "1700",
- "loc_data": "{3681,3493,0,1,5}"
- },
- {
- "npc_id": "1702",
- "loc_data": "{3690,3464,0,0,1}-{3691,3464,0,0,1}-{3688,3464,0,0,1}-{3687,3464,0,0,1}"
- },
- {
- "npc_id": "1703",
- "loc_data": "{3697,3496,0,1,3}-{3699,3497,0,1,2}-{3689,3503,0,1,3}-{3690,3508,0,1,6}-{3690,3512,0,1,6}-{3689,3517,0,1,1}-{3690,3524,0,1,6}-{3689,3528,0,1,5}-{3690,3518,0,1,5}-{3689,3503,0,1,3}-{3689,3496,0,1,0}"
- },
- {
- "npc_id": "1704",
- "loc_data": "{3703,3487,0,0,3}"
- },
- {
- "npc_id": "1706",
- "loc_data": "{3661,3508,0,0,1}-{3658,3508,0,0,1}-{3652,3487,0,0,3}-{3652,3484,0,0,3}"
- },
- {
- "npc_id": "1710",
- "loc_data": "{3165,9631,0,1,6}-{3165,9633,0,1,0}-{3160,9634,0,1,7}-{3156,9630,0,1,6}-{3152,9627,0,1,4}-{3148,9621,0,1,4}-{3175,9630,0,1,1}-{3174,9634,0,1,3}-{3172,9638,0,1,0}"
- },
- {
- "npc_id": "1711",
- "loc_data": "{3160,9638,0,1,1}-{3159,9633,0,1,6}-{3161,9626,0,1,6}-{3169,9626,0,1,4}-{3171,9634,0,1,4}-{3164,9634,0,1,3}-{3165,9631,0,1,7}-{3180,9631,0,1,7}-{3183,9629,0,1,6}-{3182,9633,0,1,1}-{3172,9632,0,1,4}-{3158,9631,0,1,1}-{3160,9630,0,1,1}-{3159,9633,0,1,4}-{3150,9623,0,1,6}-{3152,9620,0,1,6}-{3159,9622,0,1,0}-{3169,9623,0,1,6}-{3169,9623,0,1,4}-{2566,5197,0,1,4}"
- },
- {
- "npc_id": "1712",
- "loc_data": "{3153,9646,0,1,3}-{3151,9651,0,1,1}-{2573,5201,0,1,4}-{2577,5195,0,1,4}-{2577,5189,0,0,6}-{2571,5195,0,0,6}"
- },
- {
- "npc_id": "1714",
- "loc_data": "{3172,9624,0,1,2}-{3161,9623,0,1,1}-{3151,9624,0,1,1}-{3150,9622,0,1,4}-{3153,9627,0,1,3}-{3157,9634,0,1,2}-{3171,9636,0,1,6}-{3174,9639,0,1,3}-{3174,9634,0,1,3}"
- },
- {
- "npc_id": "1715",
- "loc_data": "{3171,9635,0,1,3}-{3159,9636,0,1,2}-{3169,9630,0,1,3}-{3172,9625,0,1,0}-{3159,9627,0,1,3}"
- },
- {
- "npc_id": "1752",
- "loc_data": "{2510,3228,0,1,3}"
- },
- {
- "npc_id": "1754",
- "loc_data": "{3259,3308,0,1,4}-{3100,3246,0,1,2}-{3131,3263,0,1,5}-{3122,3278,0,1,2}"
- },
- {
- "npc_id": "1755",
- "loc_data": "{3258,3312,0,1,3}-{3106,3275,0,1,1}-{3106,3266,0,1,3}-{3114,3273,0,1,4}"
- },
- {
- "npc_id": "1756",
- "loc_data": "{3262,3320,0,1,1}-{3096,3251,0,1,3}-{3117,3278,0,1,0}-{3102,3261,0,1,1}"
- },
- {
- "npc_id": "1757",
- "loc_data": "{3233,3308,0,0,4}"
- },
- {
- "npc_id": "1758",
- "loc_data": "{2895,3403,0,0,0}-{3262,3325,0,0,0}"
- },
- {
- "npc_id": "1759",
- "loc_data": "{3250,3310,0,0,0}"
- },
- {
- "npc_id": "1761",
- "loc_data": "{3121,3274,0,0,0}"
- },
- {
- "npc_id": "1765",
- "loc_data": "{3206,3265,0,1,4}-{2923,3320,0,1,7}-{2921,3320,0,1,4}-{2923,3320,0,1,5}"
- },
- {
- "npc_id": "1766",
- "loc_data": "{3259,3262,0,1,4}-{3262,3274,0,1,3}-{3259,3278,0,1,1}-{3263,3273,0,1,7}-{3171,3320,0,1,0}"
- },
- {
- "npc_id": "1767",
- "loc_data": "{3262,3262,0,1,6}-{3025,3311,0,1,5}-{2924,3288,0,0,1}-{2921,3290,0,1,1}-{2926,3279,0,1,1}-{2931,3272,0,1,1}-{2936,3273,0,1,6}"
- },
- {
- "npc_id": "1769",
- "loc_data": "{2979,3203,0,1,4}-{3264,3249,0,1,4}-{2596,9822,0,1,4}"
- },
- {
- "npc_id": "1770",
- "loc_data": "{2999,3212,0,1,1}-{3262,3253,0,1,6}-{3259,3254,0,1,3}-{2595,9826,0,1,1}"
- },
- {
- "npc_id": "1771",
- "loc_data": "{2993,3199,0,1,6}-{3248,3233,0,1,6}-{3247,3240,0,1,3}-{3187, 3286, 0, 1, 0}-{3209, 3277, 0, 1, 0}-{3174, 3294, 0, 1, 0}-{3178, 3294, 0, 1, 0}-{3144, 3302, 0, 1, 0}-{3142, 3303, 0, 1, 0}-{3151, 3300, 0, 1, 0}-{3139, 3299, 0, 1, 0}"
- },
- {
- "npc_id": "1772",
- "loc_data": "{2993,3203,0,1,0}-{3251,3231,0,1,1}-{3260,3241,0,1,0}-{3259,3222,0,0,4}"
- },
- {
- "npc_id": "1773",
- "loc_data": "{2991,3219,0,1,1}-{3252,3227,0,1,1}-{3263,3219,0,1,0}"
- },
- {
- "npc_id": "1774",
- "loc_data": "{3012,3204,0,1,3}-{3255,3228,0,1,4}-{3265,3219,0,1,2}-{2592,9834,0,1,6}"
- },
- {
- "npc_id": "1775",
- "loc_data": "{3010,3211,0,1,6}-{3254,3224,0,1,1}-{2585,9829,0,1,1}"
- },
- {
- "npc_id": "1776",
- "loc_data": "{2999,3216,0,1,6}-{3264,3247,0,1,2}"
- },
- {
- "npc_id": "1778",
- "loc_data": "{3260,3859,0,0,0}"
- },
- {
- "npc_id": "1779",
- "loc_data": "{2978,3752,0,1,6}"
- },
- {
- "npc_id": "1780",
- "loc_data": "{3272,3687,0,1,3}"
- },
- {
- "npc_id": "1781",
- "loc_data": "{3008,3862,0,0,0}"
- },
- {
- "npc_id": "1782",
- "loc_data": "{3363,3883,0,1,4}"
- },
- {
- "npc_id": "1783",
- "loc_data": "{3079,3516,0,1,6}"
- },
- {
- "npc_id": "1784",
- "loc_data": "{3025,3705,0,1,1}"
- },
- {
- "npc_id": "1785",
- "loc_data": "{3144,3788,0,1,6}"
- },
- {
- "npc_id": "1786",
- "loc_data": "{3234,3633,0,1,1}"
- },
- {
- "npc_id": "1787",
- "loc_data": "{3074,3609,0,1,3}"
- },
- {
- "npc_id": "1795",
- "loc_data": "{2967,9811,0,0,0}"
- },
- {
- "npc_id": "1796",
- "loc_data": "{2968,9809,0,0,0}"
- },
- {
- "npc_id": "1798",
- "loc_data": "{2701,3471,0,0,0}"
- },
- {
- "npc_id": "1805",
- "loc_data": "{2765,3652,0,1,0}"
- },
- {
- "npc_id": "1828",
- "loc_data": "{3231,9545,0,1,6}"
- },
- {
- "npc_id": "1829",
- "loc_data": "{3153,9548,0,1,1}-{3154,9547,0,1,4}-{3176,9546,0,1,4}-{3221,9558,0,1,4}-{3226,9548,0,1,7}-{3224,9551,0,1,1}-{3219,9558,0,1,7}"
- },
- {
- "npc_id": "1831",
- "loc_data": "{3208,9555,0,1,1}-{3165,9542,0,1,3}-{3211,9570,0,1,5}-{3211,9570,0,1,5}-{3208,9555,0,1,1}-{3208,9555,0,1,1}-{3164,9542,0,1,3}-{3207,9555,0,1,1}-{3166,9542,0,1,3}-{3213,9570,0,1,5}"
- },
- {
- "npc_id": "1832",
- "loc_data": "{3150,9573,0,1,1}-{3188,9550,0,1,0}-{3148,9578,0,1,4}-{3152,9556,0,1,3}-{3150,9553,0,1,2}-{3167,9547,0,1,1}-{3168,9546,0,1,3}-{3184,9551,0,1,3}-{3220,9573,0,1,4}-{3224,9574,0,1,1}-{3208,9588,0,1,6}-{3210,9585,0,1,4}-{3191,9583,0,1,4}-{3187,9583,0,1,3}-{3272,5549,0,1,0}-{3275,5546,0,1,0}-{3281,5545,0,1,2}-{3286,5544,0,1,0}-{3285,5539,0,1,3}-{3268,5553,0,1,1}-{3274,5558,0,1,6}-{3281,5557,0,1,4}-{3282,5554,0,1,4}-{3269,5551,0,1,3}-{3287,5549,0,1,3}-{3279,5546,0,1,6}-{3283,5545,0,1,0}-{3269,5548,0,1,1}"
- },
- {
- "npc_id": "1833",
- "loc_data": "{3151,9575,0,1,3}-{3150,9577,0,1,4}-{3148,9554,0,1,6}-{3165,9547,0,1,1}-{3165,9546,0,1,2}-{3184,9551,0,1,3}-{3222,9575,0,1,4}-{3226,9576,0,1,3}-{3210,9587,0,1,2}-{3189,9581,0,1,4}"
- },
- {
- "npc_id": "1834",
- "loc_data": "{3169,3174,0,0,6}"
- },
- {
- "npc_id": "1841",
- "loc_data": "{3020,3452,0,0,0}"
- },
- {
- "npc_id": "1860",
- "loc_data": "{2957,3203,0,1,3}"
- },
- {
- "npc_id": "1861",
- "loc_data": "{3208,3256,0,0,1}"
- },
- {
- "npc_id": "1862",
- "loc_data": "{3304,3211,0,1,1}"
- },
- {
- "npc_id": "1863",
- "loc_data": "{3358,2956,0,0,6}"
- },
- {
- "npc_id": "1864",
- "loc_data": "{3363,2956,0,0,3}"
- },
- {
- "npc_id": "1865",
- "loc_data": "{3352,2974,0,1,4}"
- },
- {
- "npc_id": "1866",
- "loc_data": "{3360,2983,0,1,4}"
- },
- {
- "npc_id": "1867",
- "loc_data": "{3347,2966,0,0,6}"
- },
- {
- "npc_id": "1870",
- "loc_data": "{3373,2972,0,1,5}"
- },
- {
- "npc_id": "1871",
- "loc_data": "{3344,2986,0,1,3}"
- },
- {
- "npc_id": "1872",
- "loc_data": "{3354,2953,0,0,6}"
- },
- {
- "npc_id": "1873",
- "loc_data": "{3343,2962,0,1,0}-{3343,2964,0,1,1}"
- },
- {
- "npc_id": "1875",
- "loc_data": "{3354,2952,0,0,1}"
- },
- {
- "npc_id": "1884",
- "loc_data": "{2811,3174,0,0,0}"
- },
- {
- "npc_id": "1902",
- "loc_data": "{3333,2946,0,0,1}"
- },
- {
- "npc_id": "1905",
- "loc_data": "{3335,2948,0,1,2}-{3331,2948,0,1,6}-{3333,2950,0,1,0}"
- },
- {
- "npc_id": "1917",
- "loc_data": "{3177,2987,0,1,6}"
- },
- {
- "npc_id": "1918",
- "loc_data": "{3180,3043,0,1,2}"
- },
- {
- "npc_id": "1920",
- "loc_data": "{3497,3478,0,0,0}"
- },
- {
- "npc_id": "1921",
- "loc_data": "{3159,2980,0,1,1}"
- },
- {
- "npc_id": "1923",
- "loc_data": "{3183,2974,0,0,7}"
- },
- {
- "npc_id": "1926",
- "loc_data": "{3179,2967,0,1,3}-{3172,2966,0,1,1}-{3171,2980,0,1,3}-{3166,2972,0,1,0}-{3181,2979,0,1,3}-{3187,2976,0,1,7}-{3174,2984,0,1,3}-{3183,2982,0,1,4}-{3187,2985,0,1,1}-{3182,2988,0,1,5}-{3188,2990,0,1,2}-{3172,2992,0,1,4}-{3171,2987,0,1,4}-{3161,2982,0,1,2}-{3161,2986,0,1,3}-{3159,2987,0,1,3}-{3163,2976,0,1,4}-{3161,2977,0,1,4}-{3161,2979,0,1,6}-{3162,2982,0,1,6}-{3164,2985,0,1,2}-{3158,2970,0,1,3}-{3155,2979,0,1,4}-{3167,2972,0,1,6}-{3172,2973,0,1,5}-{3175,2973,0,1,4}-{3185,2967,0,1,2}"
- },
- {
- "npc_id": "1927",
- "loc_data": "{3160,2979,0,0,5}-{3162,2989,0,0,1}"
- },
- {
- "npc_id": "1928",
- "loc_data": "{3161,2977,0,0,4}-{3161,2987,0,0,1}"
- },
- {
- "npc_id": "1929",
- "loc_data": "{3158,2987,0,0,3}"
- },
- {
- "npc_id": "1930",
- "loc_data": "{3161,2985,0,0,6}-{3161,2983,0,0,6}-{3161,2982,0,0,6}-{3161,2981,0,0,6}-{3161,2984,0,0,6}"
- },
- {
- "npc_id": "1951",
- "loc_data": "{2886,3723,0,1,3}-{2887,3720,0,1,4}-{2890,3721,0,1,7}-{2890,3724,0,1,1}-{2909,3736,0,1,5}-{2910,3736,0,1,2}-{2891,3724,0,1,7}"
- },
- {
- "npc_id": "1952",
- "loc_data": "{2892,3726,0,1,0}-{2894,3726,0,1,6}-{2895,3728,0,1,0}-{2895,3730,0,1,5}-{2922,3755,0,1,3}-{2893,3725,0,1,2}-{2894,3727,0,1,6}-{2895,3725,0,1,3}-{2898,3735,0,1,6}"
- },
- {
- "npc_id": "1953",
- "loc_data": "{2897,3733,0,1,5}-{2897,3737,0,1,5}-{2913,3736,0,1,3}-{2897,3737,0,1,6}-{2915,3740,0,1,1}-{2894,3742,0,1,0}"
- },
- {
- "npc_id": "1954",
- "loc_data": "{2895,3751,0,1,1}-{2895,3755,0,1,6}-{2898,3751,0,1,3}-{2898,3755,0,1,6}-{2930,3765,0,1,5}-{2893,3748,0,1,5}-{2896,3749,0,1,1}-{2929,3762,0,1,3}"
- },
- {
- "npc_id": "1955",
- "loc_data": "{2895,3740,0,1,1}-{2895,3744,0,1,3}-{2898,3740,0,1,6}-{2898,3744,0,1,1}-{2908,3739,0,1,0}-{2928,3763,0,1,3}-{2899,3737,0,1,2}-{2897,3739,0,1,6}-{2912,3742,0,1,2}-{2898,3750,0,1,3}-{2895,3751,0,1,4}"
- },
- {
- "npc_id": "1956",
- "loc_data": "{2886,3758,0,1,6}-{2886,3762,0,1,3}-{2890,3756,0,1,4}-{2890,3762,0,1,1}-{2928,3753,0,1,2}-{2926,3753,0,1,6}-{2895,3754,0,1,3}"
- },
- {
- "npc_id": "1958",
- "loc_data": "{3240,9326,0,1,3}-{3209,9310,0,1,4}-{3245,9333,0,1,4}-{3213,9307,0,1,4}-{3221,9318,0,1,3}-{3229,9333,0,1,3}-{3216,9329,0,1,4}-{3208,9294,0,1,3}-{3201,9286,0,1,1}-{3212,9326,0,1,4}-{3217,9284,0,1,7}-{3226,9284,0,1,4}-{3232,9299,0,1,6}-{3242,9295,0,1,1}-{3220,9302,0,1,0}-{3238,9305,0,1,6}-{3220,9296,0,1,1}-{3246,9291,0,1,3}-{3240,9289,0,1,4}-{3237,9305,0,1,3}-{3257,9292,0,0,5}-{3246,9321,0,1,1}-{3261,9310,0,1,3}-{3258,9309,0,1,4}-{3251,9316,0,1,3}-{3247,9310,0,1,3}-{3147,5467,0,1,1}-{3144,5466,0,1,2}-{3147,5479,0,1,2}-{3144,5475,0,1,6}-{3161,5482,0,1,5}-{3147,5475,0,1,6}"
- },
- {
- "npc_id": "1961",
- "loc_data": "{3250,9326,0,1,4}-{3258,9327,0,1,6}-{3256,9333,0,1,1}-{3220,9309,0,1,4}-{3252,9333,0,1,3}-{3208,9318,0,1,3}-{3241,9331,0,1,6}-{3204,9328,0,1,3}-{3209,9328,0,1,3}-{3228,9323,0,1,4}-{3210,9282,0,1,7}-{3225,9329,0,1,6}-{3207,9299,0,1,4}-{3215,9295,0,1,3}-{3213,9322,0,1,3}-{3214,9315,0,1,0}-{3221,9291,0,1,0}-{3213,9303,0,1,4}-{3227,9304,0,1,6}-{3247,9301,0,1,1}-{3228,9284,0,1,3}-{3254,9286,0,1,4}-{3262,9291,0,1,6}-{3224,9302,0,1,3}-{3250,9298,0,1,3}-{3252,9293,0,1,6}-{3262,9299,0,1,1}-{3256,9297,0,1,7}-{3262,9285,0,1,1}-{3254,9322,0,1,0}-{3261,9318,0,1,4}-{3242,9316,0,1,6}-{3250,9306,0,1,3}-{3250,9327,0,1,3}-{3156,5477,0,1,5}-{3162,5479,0,1,4}-{3159,5477,0,1,6}-{3150,5474,0,1,3}-{3147,5480,0,1,1}-{3159,5484,0,1,3}"
- },
- {
- "npc_id": "1962",
- "loc_data": "{3168,5458,0,1,2}-{3242,9331,0,1,3}-{3238,9333,0,1,6}-{3261,9330,0,1,1}-{3232,9333,0,1,0}-{3222,9324,0,1,4}-{3205,9303,0,1,3}"
- },
- {
- "npc_id": "1963",
- "loc_data": "{3166,5465,0,1,7}-{3168,5462,0,1,0}-{3167,5467,0,1,1}-{3167,5467,0,1,7}"
- },
- {
- "npc_id": "1972",
- "loc_data": "{2536, 3426, 0, 1, 0}"
- },
- {
- "npc_id": "1976",
- "loc_data": "{3315,5508,0,1,5}-{3308,5510,0,1,3}-{3304,5507,0,1,4}-{3299,5509,0,1,3}-{3317,5514,0,1,3}-{3319,5518,0,1,4}-{3320,5507,0,1,4}-{3324,5513,0,1,1}-{3283,5510,0,1,5}-{3320,5550,0,1,0}-{3313,5523,0,1,4}-{3310,5541,0,1,4}-{3308,5535,0,1,5}-{3301,5531,0,1,4}-{3315,5530,0,1,1}-{3322,5536,0,1,4}-{3320,5539,0,1,7}-{3311,5519,0,1,3}-{3289,5525,0,1,2}-{3300,5519,0,1,6}-{3289,5515,0,1,7}-{3287,5523,0,1,3}"
- },
- {
- "npc_id": "1990",
- "loc_data": "{3300,2797,0,0,6}"
- },
- {
- "npc_id": "1993",
- "loc_data": "{3360,2935,0,1,4}-{3359,2924,0,1,6}-{3352,2936,0,1,0}-{3349,2931,0,1,6}-{3341,2924,0,1,4}"
- },
- {
- "npc_id": "1994",
- "loc_data": "{3344,2933,0,1,3}-{3350,2936,0,1,4}"
- },
- {
- "npc_id": "2014",
- "loc_data": "{3293,2788,0,1,0}"
- },
- {
- "npc_id": "2020",
- "loc_data": "{3503,3477,0,0,0}"
- },
- {
- "npc_id": "2021",
- "loc_data": "{3222,9525,2,1,3}-{3216,9522,2,1,3}-{3219,9518,2,1,3}-{3224,9521,2,1,3}-{3218,9523,2,1,3}-{3215,9521,2,1,3}-{3213,9522,2,1,3}-{3227,9517,2,1,3}"
- },
- {
- "npc_id": "2031",
- "loc_data": "{3290,5448,0,1,6}-{3291,5452,0,1,1}-{3293,5456,0,1,6}-{3551,9680,0,0,2}-{3553,9679,0,0,1}-{3551,9675,0,0,6}-{3554,9676,0,0,7}-{3548,9676,0,0,5}-{3552,9691,0,0,2}-{3569,9681,0,0,7}-{3577,9711,0,0,5}-{3567,9675,0,0,5}-{3567,9675,0,0,5}-{3570,9678,0,0,2}-{3568,9686,0,0,1}-{3545,9721,0,0,7}-{3560,9712,0,0,6}-{3552,9685,0,0,1}-{3525,9698,0,0,6}-{3538,9668,0,0,4}"
- },
- {
- "npc_id": "2032",
- "loc_data": "{3549,9678,0,0,0}-{3569,9676,0,0,5}-{3566,9678,0,0,1}-{3560,9678,0,0,2}-{3526,9678,0,0,2}-{3532,9693,0,0,5}-{3534,9690,0,0,7}-{3536,9695,0,0,2}-{3542,9694,0,0,7}-{3548,9695,0,0,7}-{3556,9695,0,0,5}-{3554,9709,0,0,2}-{3533,9708,0,0,5}-{3534,9703,0,0,5}-{3538,9721,0,0,7}-{3567,9720,0,0,6}-{3561,9711,0,0,7}-{3552,9703,0,0,1}-{3551,9698,0,0,1}-{3532,9678,0,0,5}-{3531,9675,0,0,5}-{3537,9677,0,0,2}-{3187,5513,0,1,3}-{3186,5510,0,1,6}-{3186,5516,0,1,6}-{3194,5511,0,1,1}-{3185,5514,0,1,5}"
- },
- {
- "npc_id": "2033",
- "loc_data": "{3300,5494,0,1,2}-{3285,5492,0,1,6}-{3285,5495,0,1,0}-{3288,5497,0,1,3}-{3268,5487,0,0,0}-{3533,9691,0,0,4}-{3537,9694,0,0,2}-{3533,9696,0,0,2}-{3533,9693,0,0,5}-{3188,5511,0,1,7}-{3190,5511,0,1,6}"
- },
- {
- "npc_id": "2034",
- "loc_data": "{3288,5484,0,1,4}-{3288,5467,0,1,0}-{3293,5468,0,1,2}-{3296,5475,0,1,7}-{3296,5473,0,1,2}-{3297,5480,0,1,4}-{3565,9695,0,0,1}-{3566,9692,0,0,5}-{3572,9695,0,0,7}"
- },
- {
- "npc_id": "2035",
- "loc_data": "{3569,9696,0,0,2}-{3569,9693,0,0,6}-{3566,9694,0,0,6}-{3567,9698,0,0,2}-{3572,9692,0,0,5}"
- },
- {
- "npc_id": "2036",
- "loc_data": "{3569,9674,0,0,0}-{3561,9677,0,0,6}-{3535,9686,0,0,6}-{3535,9698,0,0,1}-{3576,9677,0,0,3}-{3577,9679,0,0,1}-{3568,9691,0,0,2}-{3560,9694,0,0,6}-{3570,9682,0,0,1}-{3569,9687,0,0,2}-{3550,9711,0,0,5}-{3551,9708,0,0,6}-{3548,9713,0,0,6}-{3537,9711,0,0,4}-{3535,9702,0,0,7}-{3553,9722,0,0,4}-{3567,9712,0,0,5}-{3569,9704,0,0,6}-{3579,9693,0,0,7}-{3534,9675,0,0,2}-{3526,9711,0,0,1}-{3566,9668,0,0,4}"
- },
- {
- "npc_id": "2037",
- "loc_data": "{3543,9677,0,0,3}-{3572,9680,0,0,7}-{3559,9677,0,0,4}-{3535,9685,0,0,1}-{3537,9693,0,0,1}-{3570,9697,0,0,2}-{3552,9713,0,0,6}-{3553,9711,0,0,3}-{3567,9708,0,0,6}-{3535,9679,0,0,1}-{3525,9683,0,0,6}"
- },
- {
- "npc_id": "2038",
- "loc_data": "{2392,2984,0,0,0}"
- },
- {
- "npc_id": "2039",
- "loc_data": "{2392,2984,0,0,0}"
- },
- {
- "npc_id": "2040",
- "loc_data": "{2444,3047,0,0,0}"
- },
- {
- "npc_id": "2041",
- "loc_data": "{2447,3050,0,0,0}"
- },
- {
- "npc_id": "2042",
- "loc_data": "{2455,3048,0,0,0}"
- },
- {
- "npc_id": "2043",
- "loc_data": "{2451,3030,0,0,0}-{2446,3040,0,0,0}"
- },
- {
- "npc_id": "2050",
- "loc_data": "{2460,3046,0,0,0}-{2465,3052,0,0,0}"
- },
- {
- "npc_id": "2051",
- "loc_data": "{2463,3053,0,0,0}"
- },
- {
- "npc_id": "2052",
- "loc_data": "{2468,3045,0,0,0}"
- },
- {
- "npc_id": "2053",
- "loc_data": "{2467,3051,0,0,0}"
- },
- {
- "npc_id": "2054",
- "loc_data": "{2466,3046,0,0,0}"
- },
- {
- "npc_id": "2055",
- "loc_data": "{2471,3056,0,0,0}"
- },
- {
- "npc_id": "2056",
- "loc_data": "{2470,3040,0,0,0}"
- },
- {
- "npc_id": "2059",
- "loc_data": "{2588,3088,0,1,3}"
- },
- {
- "npc_id": "2067",
- "loc_data": "{3154,9544,0,0,0}-{3245,9570,0,0,0}"
- },
- {
- "npc_id": "2082",
- "loc_data": "{3210,3220,1,1,6}"
- },
- {
- "npc_id": "2180",
- "loc_data": "{2997,9837,0,1,3}"
- },
- {
- "npc_id": "2234",
- "loc_data": "{3081,3251,0,1,6}-{2636,3365,0,1,6}"
- },
- {
- "npc_id": "2235",
- "loc_data": "{3241,3345,0,1,4}"
- },
- {
- "npc_id": "2236",
- "loc_data": "{3078,3250,0,1,1}-{3081,3250,0,1,2}"
- },
- {
- "npc_id": "2237",
- "loc_data": "{3249,3266,0,1,5}"
- },
- {
- "npc_id": "2240",
- "loc_data": "{3077,3259,0,1,4}"
- },
- {
- "npc_id": "2241",
- "loc_data": "{3078,3260,0,1,3}"
- },
- {
- "npc_id": "2242",
- "loc_data": "{3076,3260,0,1,1}-{3078,3260,0,1,6}"
- },
- {
- "npc_id": "2243",
- "loc_data": "{3078,3259,0,1,3}"
- },
- {
- "npc_id": "2244",
- "loc_data": "{3233,3228,0,1,3}"
- },
- {
- "npc_id": "2245",
- "loc_data": "{2505,3240,0,1,4}-{2512,3250,0,1,1}-{2506,3242,0,1,3}-{2510,3252,0,1,4}-{2516,3248,0,1,1}-{2518,3245,0,1,7}-{2518,3245,0,1,1}-{2517,3242,0,1,6}-{2523,3241,0,1,4}-{2525,3241,0,1,1}-{2515,3256,0,1,6}-{2519,3257,0,1,4}"
- },
- {
- "npc_id": "2246",
- "loc_data": "{2521,3239,0,1,5}"
- },
- {
- "npc_id": "2247",
- "loc_data": "{2543,3225,0,1,7}-{2553,3220,0,1,3}-{2545,3220,0,1,4}-{2525,3220,0,1,4}-{2518,3218,0,1,1}"
- },
- {
- "npc_id": "2248",
- "loc_data": "{2540,3218,0,1,1}-{2515,3216,0,1,1}-{2512,3215,0,1,7}"
- },
- {
- "npc_id": "2249",
- "loc_data": "{2530,3224,0,1,4}-{2524,3221,0,1,2}-{2543,3217,0,1,4}-{2530,3212,0,1,4}-{2557,3234,0,1,4}-{2540,3226,0,1,5}-{2532,3213,0,1,4}-{2527,3201,0,1,6}-{2544,3216,0,1,6}-{2519,3222,0,1,6}-{2526,3227,0,1,4}-{2550,3234,0,1,3}-{2553,3220,0,1,3}-{2521,3202,0,1,6}-{2525,3220,0,1,4}-{2544,3230,0,1,3}-{2547,3212,0,1,4}-{2545,3212,0,1,0}-{2540,3208,0,1,4}-{2533,3202,0,1,6}-{2536,3236,0,1,6}-{2525,3204,0,1,0}-{2539,3238,0,1,4}"
- },
- {
- "npc_id": "2250",
- "loc_data": "{2525,3209,0,1,4}-{2558,3228,0,1,4}-{2543,3212,0,1,3}-{2538,3223,0,1,0}-{2527,3201,0,1,7}-{2517,3222,0,1,3}-{2547,3231,0,1,6}-{2550,3220,0,1,4}-{2538,3224,0,1,3}-{2545,3213,0,1,0}-{2542,3208,0,1,5}"
- },
- {
- "npc_id": "2251",
- "loc_data": "{2520,3217,0,1,3}-{2524,3209,0,1,1}-{2529,3200,0,1,5}-{2530,3209,0,1,1}-{2519,3223,0,1,4}-{2518,3224,0,1,2}-{2527,3201,0,1,7}-{2521,3202,0,1,4}-{2542,3208,0,1,4}-{2539,3233,0,1,6}"
- },
- {
- "npc_id": "2252",
- "loc_data": "{3199,3302,0,1,3}-{3079,3257,0,1,1}-{3091,3250,0,1,6}-{3137,3254,0,1,0}"
- },
- {
- "npc_id": "2256",
- "loc_data": "{2571,3305,0,1,7}-{2572,3297,0,1,2}-{2572,3304,0,1,1}-{2577,3308,0,1,6}-{2582,3287,0,1,3}-{2582,3299,0,1,0}-{2583,3292,0,1,4}-{2572,3292,1,1,1}-{2577,3295,1,1,6}-{2576,3286,1,1,1}-{2585,3289,1,1,7}-{2585,3304,1,1,1}-{2582,3306,1,1,5}-{2582,3286,1,1,3}-{2653,3315,0,1,6}-{2658,3306,0,1,4}"
- },
- {
- "npc_id": "2257",
- "loc_data": "{3105,3554,0,1,1}"
- },
- {
- "npc_id": "2260",
- "loc_data": "{3259,3385,0,1,6}"
- },
- {
- "npc_id": "2262",
- "loc_data": "{3039,4834,0,0,7}"
- },
- {
- "npc_id": "2263",
- "loc_data": "{3037,4906,0,1,2}-{3021,4812,0,1,5}-{3057,4875,0,0,6}-{3014,4838,0,1,6}-{3016,4892,0,1,6}-{3058,4877,0,0,6}-{3051,4874,0,1,0}-{3061,4836,0,1,4}-{3029,4890,0,1,6}-{3032,4901,0,1,2}-{3024,4916,0,1,3}-{3020,4903,0,1,4}-{3061,4883,0,0,3}-{3058,4889,0,0,3}-{3053,4896,0,0,3}-{3038,4871,0,1,6}-{3053,4900,0,0,7}-{3017,4812,0,1,6}-{3061,4842,0,1,3}-{3048,4808,0,1,3}-{3021,4847,0,1,6}-{3054,4849,0,1,6}-{3055,4915,0,0,5}-{3015,4833,0,1,0}-{3035,4854,0,1,6}-{3016,4829,0,1,4}-{3037,4906,0,0,5}-{3040,4810,0,1,3}-{3047,4886,0,1,4}-{3059,4815,0,1,1}-{3033,4884,0,1,4}-{3027,4851,0,1,6}-{3020,4819,0,1,4}-{3020,4845,0,1,2}-{3061,4829,0,1,0}-{3030,4877,0,1,2}-{3026,4879,0,1,3}-{3024,4879,0,1,3}-{3018,4842,0,1,4}"
- },
- {
- "npc_id": "2264",
- "loc_data": "{3020,4888,0,1,3}-{3039,4871,0,1,4}-{3049,4921,0,1,7}-{3019,4877,0,1,6}-{3017,4893,0,1,7}-{3017,4821,0,1,4}-{3019,4898,0,1,4}-{3059,4813,0,1,0}-{3020,4912,0,1,2}-{3032,4808,0,1,3}-{3059,4820,0,1,3}-{3062,4828,0,1,6}-{3036,4856,0,1,7}-{3062,4837,0,1,5}-{3025,4850,0,1,1}-{3052,4859,0,1,1}-{3024,4813,0,1,4}-{3054,4915,0,1,7}-{3048,4854,0,1,3}-{3034,4852,0,1,1}-{3052,4898,0,1,1}-{3028,4808,0,1,1}-{3034,4905,0,1,4}-{3018,4843,0,1,2}-{3028,4851,0,1,0}-{3016,4831,0,1,1}-{3052,4896,0,1,3}-{3046,4901,0,1,2}-{3043,4810,0,1,3}-{3062,4884,0,1,6}-{3049,4873,0,1,1}-{3041,4871,0,1,1}"
- },
- {
- "npc_id": "2265",
- "loc_data": "{3020,4914,0,1,2}-{3038,4809,0,1,6}-{3059,4890,0,1,3}-{3024,4850,0,1,3}-{3031,4901,0,1,7}-{3044,4915,0,1,6}-{3052,4808,0,1,5}-{3021,4847,0,1,3}-{3058,4811,0,1,4}-{3055,4848,0,1,0}-{3062,4822,0,1,6}-{3017,4837,0,1,3}-{3044,4883,0,1,4}-{3017,4817,0,1,7}-{3025,4812,0,1,1}-{3039,4885,0,1,1}-{3048,4917,0,1,5}-{3060,4825,0,1,3}-{3059,4888,0,1,5}-{3047,4874,0,1,2}-{3062,4838,0,1,3}-{3055,4908,0,1,5}-{3016,4876,0,1,1}-{3029,4890,0,1,5}-{3059,4906,0,1,1}-{3021,4875,0,1,3}-{3032,4903,0,1,3}-{3054,4850,0,1,6}-{3026,4914,0,1,6}"
- },
- {
- "npc_id": "2266",
- "loc_data": "{3053,4978,1,1,1}"
- },
- {
- "npc_id": "2270",
- "loc_data": "{3048,4975,1,1,6}"
- },
- {
- "npc_id": "2271",
- "loc_data": "{3045,4971,1,0,4}"
- },
- {
- "npc_id": "2274",
- "loc_data": "{3243,3245,0,1,4}"
- },
- {
- "npc_id": "2275",
- "loc_data": "{3244,3248,0,1,1}"
- },
- {
- "npc_id": "2276",
- "loc_data": "{3243,3247,0,1,1}"
- },
- {
- "npc_id": "2277",
- "loc_data": "{3248,3247,0,1,4}"
- },
- {
- "npc_id": "2278",
- "loc_data": "{3247,3244,0,1,2}"
- },
- {
- "npc_id": "2279",
- "loc_data": "{3244,3247,0,1,3}"
- },
- {
- "npc_id": "2280",
- "loc_data": "{3245,3244,0,1,4}"
- },
- {
- "npc_id": "2281",
- "loc_data": "{3246,3245,0,1,4}"
- },
- {
- "npc_id": "2290",
- "loc_data": "{2997,3373,0,0,0}"
- },
- {
- "npc_id": "2291",
- "loc_data": "{3311,3109,0,0,3}"
- },
- {
- "npc_id": "2292",
- "loc_data": "{3182,3043,0,0,3}"
- },
- {
- "npc_id": "2293",
- "loc_data": "{3469,3111,0,1,6}"
- },
- {
- "npc_id": "2294",
- "loc_data": "{3350,3004,0,0,6}"
- },
- {
- "npc_id": "2296",
- "loc_data": "{3399,2916,0,0,6}"
- },
- {
- "npc_id": "2298",
- "loc_data": "{3287,2813,0,1,1}"
- },
- {
- "npc_id": "2301",
- "loc_data": "{3310,3107,0,1,4}-{3181,3043,0,1,3}"
- },
- {
- "npc_id": "2304",
- "loc_data": "{3039,3292,0,1,6}"
- },
- {
- "npc_id": "2305",
- "loc_data": "{2821,3463,0,1,3}"
- },
- {
- "npc_id": "2306",
- "loc_data": "{2643,3363,0,0,5}"
- },
- {
- "npc_id": "2307",
- "loc_data": "{3627,3526,0,1,6}"
- },
- {
- "npc_id": "2310",
- "loc_data": "{3025,3312,0,1,4}-{3043,3308,0,1,6}-{3023,3297,0,1,5}-{2928,3282,0,1,1}-{2927,3269,0,1,1}"
- },
- {
- "npc_id": "2311",
- "loc_data": "{3035,3296,0,0,0}"
- },
- {
- "npc_id": "2312",
- "loc_data": "{3014,3292,0,0,0}"
- },
- {
- "npc_id": "2313",
- "loc_data": "{3020,3297,0,1,6}-{3040,3296,0,1,3}-{3031,3283,0,1,4}-{3020,3288,0,1,0}"
- },
- {
- "npc_id": "2314",
- "loc_data": "{3018,3296,0,1,1}-{3016,3288,0,1,4}-{3030,3287,0,1,4}-{3017,3282,0,1,3}-{2549,3566,0,1,2}-{2553,3564,0,1,4}"
- },
- {
- "npc_id": "2315",
- "loc_data": "{3018,3282,0,1,5}-{3037,3289,0,1,1}-{2551,3562,0,1,1}-{2554,3561,0,1,3}"
- },
- {
- "npc_id": "2316",
- "loc_data": "{3015,3311,0,1,4}"
- },
- {
- "npc_id": "2317",
- "loc_data": "{3016,3309,0,1,6}"
- },
- {
- "npc_id": "2318",
- "loc_data": "{3017,3307,0,0,0}"
- },
- {
- "npc_id": "2319",
- "loc_data": "{3017,3309,0,0,0}"
- },
- {
- "npc_id": "2323",
- "loc_data": "{3056,3306,0,1,1}"
- },
- {
- "npc_id": "2324",
- "loc_data": "{2807,3464,0,1,3}"
- },
- {
- "npc_id": "2325",
- "loc_data": "{2664,3374,0,1,1}"
- },
- {
- "npc_id": "2326",
- "loc_data": "{3600,3527,0,1,1}"
- },
- {
- "npc_id": "2327",
- "loc_data": "{2814,3337,0,1,6}"
- },
- {
- "npc_id": "2330",
- "loc_data": "{2766,3211,0,1,0}"
- },
- {
- "npc_id": "2331",
- "loc_data": "{2860,3430,0,1,4}"
- },
- {
- "npc_id": "2332",
- "loc_data": "{2573,3102,0,1,4}"
- },
- {
- "npc_id": "2333",
- "loc_data": "{3226,3311,0,0,0}"
- },
- {
- "npc_id": "2334",
- "loc_data": "{2662,3525,0,1,1}"
- },
- {
- "npc_id": "2335",
- "loc_data": "{3181,3359,0,0,0}"
- },
- {
- "npc_id": "2336",
- "loc_data": "{2938,3221,0,1,0}"
- },
- {
- "npc_id": "2337",
- "loc_data": "{2589,3861,0,1,0}"
- },
- {
- "npc_id": "2338",
- "loc_data": "{2615,3229,0,1,0}"
- },
- {
- "npc_id": "2339",
- "loc_data": "{2934,3438,0,1,6}"
- },
- {
- "npc_id": "2340",
- "loc_data": "{3007,3373,0,1,4}"
- },
- {
- "npc_id": "2341",
- "loc_data": "{3229,3456,0,1,0}"
- },
- {
- "npc_id": "2342",
- "loc_data": "{3196,3231,0,1,4}"
- },
- {
- "npc_id": "2343",
- "loc_data": "{2473,3446,0,1,6}"
- },
- {
- "npc_id": "2344",
- "loc_data": "{2490,3183,0,1,3}"
- },
- {
- "npc_id": "2353",
- "loc_data": "{2324,3179,0,1,5}"
- },
- {
- "npc_id": "2355",
- "loc_data": "{2353,3163,0,0,4}"
- },
- {
- "npc_id": "2359",
- "loc_data": "{2335,3169,0,1,3}"
- },
- {
- "npc_id": "2360",
- "loc_data": "{2335,3174,0,1,4}-{2322,3172,0,1,5}"
- },
- {
- "npc_id": "2361",
- "loc_data": "{2345,3172,0,1,2}-{2340,3178,0,1,3}"
- },
- {
- "npc_id": "2362",
- "loc_data": "{2330,3163,0,1,3}"
- },
- {
- "npc_id": "2372",
- "loc_data": "{2044,4632,0,1,3}"
- },
- {
- "npc_id": "2374",
- "loc_data": "{2041,4632,0,1,3}-{2037,4630,0,1,3}-{2041,4644,0,1,4}"
- },
- {
- "npc_id": "2385",
- "loc_data": "{3112,3159,0,0,0}"
- },
- {
- "npc_id": "2386",
- "loc_data": "{3051,3496,1,0,0}"
- },
- {
- "npc_id": "2389",
- "loc_data": "{3219,3677,0,0,0}"
- },
- {
- "npc_id": "2392",
- "loc_data": "{3043,3204,0,0,0}"
- },
- {
- "npc_id": "2414",
- "loc_data": "{3263,3400,1,0,0}"
- },
- {
- "npc_id": "2435",
- "loc_data": "{2621,3682,0,0,6}"
- },
- {
- "npc_id": "2438",
- "loc_data": "{2544,3761,0,0,6}"
- },
- {
- "npc_id": "2439",
- "loc_data": "{2659,3657,0,1,3}"
- },
- {
- "npc_id": "2440",
- "loc_data": "{2545,10141,0,0,6}"
- },
- {
- "npc_id": "2443",
- "loc_data": "{2543,10143,0,0,3}"
- },
- {
- "npc_id": "2446",
- "loc_data": "{2545,10145,0,0,6}"
- },
- {
- "npc_id": "2449",
- "loc_data": "{2546,10144,0,0,1}-{2546,10142,0,0,6}"
- },
- {
- "npc_id": "2452",
- "loc_data": "{2526,10166,0,1,6}"
- },
- {
- "npc_id": "2453",
- "loc_data": "{2521,10160,0,0,1}-{2535,10163,0,0,6}-{2520,10165,0,0,3}-{2533,10162,0,0,3}-{2545,10158,0,0,5}-{2547,10151,0,0,3}-{2543,10166,0,0,3}-{2538,10160,0,0,6}-{2506,10163,0,0,3}-{2516,10163,0,0,3}-{2498,10164,0,0,5}-{2544,10160,0,0,0}-{2525,10162,0,0,3}-{2530,10161,0,0,0}-{2537,10167,0,0,7}-{2519,10163,0,0,3}-{2511,10163,0,0,3}-{2530,10161,0,0,7}-{2524,10166,0,0,3}-{2508,10159,0,0,0}-{1846,4405,3,0,2}-{1839,4400,3,0,3}-{1835,4394,3,0,3}-{1834,4406,3,0,1}-{1843,4406,3,0,2}-{1899,4372,0,0,2}-{1888,4362,0,0,7}-{1896,4362,0,0,2}-{1897,4368,0,0,5}"
- },
- {
- "npc_id": "2455",
- "loc_data": "{2457,10139,0,1,2}-{2465,10133,0,1,4}-{2449,10148,0,1,1}-{2471,10133,0,1,6}-{2446,10145,0,1,4}-{2443,10148,0,1,1}-{2452,10161,0,1,3}-{2444,10145,0,1,1}-{2462,10163,0,1,3}-{2446,10141,0,1,3}-{2454,10149,0,1,0}-{2476,10155,0,1,4}-{2456,10153,0,1,0}-{2485,10142,0,1,3}-{2457,10152,0,1,4}-{2485,10126,0,1,4}-{2475,10148,0,1,3}-{2471,10160,0,1,1}-{2453,10145,0,1,3}-{2463,10158,0,1,4}-{2457,10163,0,1,2}-{2471,10154,0,1,6}-{2476,10151,0,1,7}-{2479,10154,0,1,1}-{2486,10158,0,1,4}-{2485,10165,0,1,5}-{2485,10153,0,1,4}-{2474,10140,0,1,7}-{2466,10130,0,1,6}-{2464,10138,0,1,6}-{2486,10150,0,1,6}-{2473,10127,0,1,4}-{2483,10126,0,1,3}-{2456,10133,0,1,6}-{2467,10163,0,1,6}-{2477,10143,0,1,3}-{2489,10139,0,1,4}-{2486,10127,0,1,1}-{2480,10141,0,1,7}-{2490,10155,0,1,3}-{2459,10133,0,1,3}-{2455,10163,0,1,0}-{2496,10166,0,1,1}-{2494,10162,0,1,1}-{2502,10167,0,1,1}-{2493,10132,0,1,3}-{2499,10162,0,1,0}-{2502,10159,0,1,1}-{2502,10166,0,1,4}-{2494,10129,0,1,5}-{2496,10130,0,1,3}-{2498,10128,0,1,1}-{2497,10126,0,1,4}-{2499,10128,0,1,5}-{2501,10126,0,1,3}-{2506,10125,0,1,4}-{2506,10127,0,1,4}-{2507,10128,0,1,3}-{2507,10126,0,1,6}-{2511,10126,0,1,0}-{2513,10126,0,1,4}-{2517,10129,0,1,3}-{2513,10127,0,1,3}-{2516,10124,0,1,4}-{2520,10122,0,1,5}-{2522,10126,0,1,3}-{2524,10129,0,1,4}-{2525,10125,0,1,4}-{2529,10122,0,1,4}-{2529,10124,0,1,2}-{2526,10126,0,1,3}-{2529,10130,0,1,6}-{2530,10127,0,1,5}-{2532,10121,0,1,0}-{2532,10123,0,1,3}-{2538,10126,0,1,0}-{2535,10125,0,1,7}-{2536,10127,0,1,1}-{2539,10130,0,1,6}-{2543,10130,0,1,6}-{2548,10131,0,1,1}-{2542,10128,0,1,3}-{1815,4405,2,1,6}-{1818,4403,2,1,3}-{1813,4404,2,1,7}-{1814,4407,2,1,7}-{1821,4393,2,1,1}-{1823,4389,2,1,1}-{1828,4387,2,1,3}-{1821,4392,2,1,0}-{1826,4391,2,1,0}-{1865,4377,2,1,1}-{1865,4397,1,1,6}-{1844,4360,1,1,4}-{1844,4361,1,1,5}-{1851,4360,1,1,3}-{1857,4360,1,1,1}-{1862,4362,1,1,1}-{1862,4362,1,1,7}-{1864,4366,1,1,1}-{1865,4383,2,1,4}-{1864,4390,1,1,1}-{1865,4408,1,1,4}-{1877,4410,1,1,1}-{1883,4411,1,1,4}-{1889,4410,1,1,4}-{1887,4374,0,1,6}-{1890,4372,0,1,4}-{1890,4366,0,1,4}-{1896,4371,0,1,3}-{1890,4364,0,1,7}-{1831,4378,3,1,2}-{1838,4379,3,1,2}-{1824,4376,3,1,1}-{1832,4380,3,1,6}-{1844,4373,2,1,4}-{1849,4381,2,1,4}-{1846,4374,2,1,1}"
- },
- {
- "npc_id": "2456",
- "loc_data": "{2452,10145,0,0,4}-{2445,10138,0,0,7}"
- },
- {
- "npc_id": "2457",
- "loc_data": "{2500,10148,0,1,3}-{2505,10150,0,1,2}-{2510,10148,0,1,1}-{2511,10147,0,1,6}-{2517,10151,0,1,3}-{2519,10143,0,1,7}-{2529,10148,0,1,3}-{2528,10144,0,1,0}-{2532,10145,0,1,1}-{2532,10140,0,1,7}-{2520,10144,0,1,2}-{1804,4369,2,1,2}-{1812,4363,2,1,5}-{1817,4368,2,1,6}-{1801,4404,3,1,6}-{1805,4405,3,1,1}-{1803,4404,3,1,7}-{1811,4394,1,1,7}-{1804,4391,1,1,2}-{1798,4391,1,1,4}-{1802,4389,1,1,4}-{1799,4386,2,1,1}-{1799,4381,2,1,6}-{1798,4375,1,1,4}-{1803,4376,1,1,6}-{1797,4380,1,1,6}-{1902,4367,0,1,6}-{1894,4367,0,1,1}-{1893,4361,0,1,3}-{1886,4369,0,1,1}-{1848,4394,1,1,3}-{1850,4389,1,1,1}-{1850,4391,1,1,2}"
- },
- {
- "npc_id": "2424",
- "loc_data": "{2871,10187,0,1,0}"
- },
- {
- "npc_id": "1843",
- "loc_data": "{2841,10129,0,1,0}"
- },
- {
- "npc_id": "1844",
- "loc_data": "{2840,10127,0,1,0}"
- },
- {
- "npc_id": "2205",
- "loc_data": "{2839,10128,0,1,0}"
- },
- {
- "npc_id": "2154",
- "loc_data": "{2839,10128,0,1,0}"
- },
- {
- "npc_id": "2458",
- "loc_data": "{2599,4774,0,0,3}"
- },
- {
- "npc_id": "2459",
- "loc_data": "{2604,4772,0,1,4}-{2606,4771,0,1,6}-{2604,4769,0,1,2}"
- },
- {
- "npc_id": "2460",
- "loc_data": "{2600,4778,0,1,1}-{2607,4777,0,1,1}"
- },
- {
- "npc_id": "2461",
- "loc_data": "{2597,4776,0,1,1}-{2606,4771,0,1,1}"
- },
- {
- "npc_id": "2462",
- "loc_data": "{2596,4773,0,1,2}-{2602,4771,0,1,6}-{2596,4780,0,1,4}"
- },
- {
- "npc_id": "2482",
- "loc_data": "{3057,3902,0,1,3}"
- },
- {
- "npc_id": "2483",
- "loc_data": "{2914,3116,0,0,0}"
- },
- {
- "npc_id": "2484",
- "loc_data": "{2782,3058,0,0,0}"
- },
- {
- "npc_id": "2486",
- "loc_data": "{2789,3055,0,0,0}"
- },
- {
- "npc_id": "2487",
- "loc_data": "{2848,3042,0,0,0}"
- },
- {
- "npc_id": "2488",
- "loc_data": "{2799,3058,0,0,0}"
- },
- {
- "npc_id": "2489",
- "loc_data": "{3781,3031,0,1,5}-{3775,3033,0,1,4}-{3780,3022,0,1,1}-{3788,3011,0,1,2}-{3793,3019,0,1,5}-{3766,3010,0,1,4}-{3764,3020,0,1,1}-{3779,3045,0,1,1}-{3784,3040,0,1,3}-{3802,3037,0,1,2}-{3808,3026,0,1,3}-{3799,3024,0,1,4}-{3749,3000,0,1,6}-{3738,3010,0,1,3}-{3723,2998,0,1,2}-{3731,2991,0,1,1}-{3703,3040,0,1,3}-{3706,3051,0,1,1}-{3664,3013,0,1,7}-{3720,3040,0,1,6}-{3719,3045,0,1,6}"
- },
- {
- "npc_id": "2490",
- "loc_data": "{3782,3016,0,1,7}"
- },
- {
- "npc_id": "2491",
- "loc_data": "{2679,3080,0,1,6}-{2684,3084,0,1,4}-{2682,3093,0,1,4}-{2678,3095,0,1,3}-{2679,3102,0,1,1}-{2681,3110,0,1,4}-{2683,3115,0,1,6}-{2675,3108,0,1,3}-{2671,3109,0,1,3}-{2671,3113,0,1,4}-{2676,3090,0,1,4}-{2670,3088,0,1,6}-{2671,3086,0,1,6}-{2664,3088,0,1,7}-{2660,3086,0,1,6}-{2662,3088,0,1,6}-{2670,3082,0,1,7}-{2674,3081,0,1,3}-{2663,3086,0,1,6}-{2679,3082,0,1,1}-{2682,3093,0,1,3}"
- },
- {
- "npc_id": "2504",
- "loc_data": "{2796,3077,1,1,3}"
- },
- {
- "npc_id": "2507",
- "loc_data": "{2794,3077,0,1,6}"
- },
- {
- "npc_id": "2510",
- "loc_data": "{2786,3075,1,1,4}"
- },
- {
- "npc_id": "2513",
- "loc_data": "{2796,3088,0,1,7}"
- },
- {
- "npc_id": "2516",
- "loc_data": "{2791,3102,0,1,3}"
- },
- {
- "npc_id": "2519",
- "loc_data": "{2794,3064,0,1,5}"
- },
- {
- "npc_id": "2522",
- "loc_data": "{2758,3099,0,1,1}"
- },
- {
- "npc_id": "2525",
- "loc_data": "{2800,3048,0,1,2}"
- },
- {
- "npc_id": "2528",
- "loc_data": "{2816,3085,0,1,3}"
- },
- {
- "npc_id": "2531",
- "loc_data": "{2784,3089,0,1,1}"
- },
- {
- "npc_id": "2547",
- "loc_data": "{3109,9942,0,1,4}-{3111,9938,0,1,4}-{3116,9926,0,1,4}-{2615,9525,0,1,4}-{2615,9521,0,1,1}"
- },
- {
- "npc_id": "2548",
- "loc_data": "{3349,2970,0,0,4}-{3358,2987,0,0,4}"
- },
- {
- "npc_id": "2549",
- "loc_data": "{3364,3001,0,0,6}"
- },
- {
- "npc_id": "2568",
- "loc_data": "{2729,3495,0,0,6}-{2724,3495,0,0,6}-{2728,3495,0,0,6}-{2721,3495,0,0,6}"
- },
- {
- "npc_id": "2569",
- "loc_data": "{2727,3495,0,0,6}-{2722,3495,0,0,6}"
- },
- {
- "npc_id": "2572",
- "loc_data": "{3079,3250,0,1,2}"
- },
- {
- "npc_id": "2574",
- "loc_data": "{3087,3247,0,0,7}"
- },
- {
- "npc_id": "2580",
- "loc_data": "{2918,3535,0,1,0}"
- },
- {
- "npc_id": "2591",
- "loc_data": "{4786,5106,0,1,6}-{2474,5145,0,1,2}"
- },
- {
- "npc_id": "2592",
- "loc_data": "{4680,5117,0,1,6}-{2461,5142,0,1,6}"
- },
- {
- "npc_id": "2594",
- "loc_data": "{4703,5123,0,1,5}-{4680,5126,0,1,7}-{4730,5077,0,1,5}"
- },
- {
- "npc_id": "2595",
- "loc_data": "{4699,5100,0,1,6}-{4647,5132,0,1,7}-{4633,5069,0,1,4}-{4757,5100,0,1,2}"
- },
- {
- "npc_id": "2596",
- "loc_data": "{4628,5117,0,1,4}-{4787,5118,0,1,7}-{2483,5155,0,1,4}"
- },
- {
- "npc_id": "2597",
- "loc_data": "{4621,5094,0,1,5}-{2446,5144,0,1,1}-{2470,5141,0,1,6}"
- },
- {
- "npc_id": "2598",
- "loc_data": "{2485,5159,0,1,4}-{2489,5155,0,1,1}-{2471,5144,0,1,3}-{2476,5153,0,1,0}-{2477,5150,0,1,1}"
- },
- {
- "npc_id": "2600",
- "loc_data": "{4656,5125,0,1,5}-{4711,5072,0,1,4}-{4751,5087,0,1,3}"
- },
- {
- "npc_id": "2601",
- "loc_data": "{4676,5123,0,1,5}-{4693,5127,0,1,7}-{4724,5107,0,1,5}-{4788,5110,0,1,4}"
- },
- {
- "npc_id": "2602",
- "loc_data": "{4668,5133,0,1,7}-{4627,5122,0,1,5}-{4714,5113,0,1,6}-{4752,5074,0,1,7}-{4789,5122,0,1,2}"
- },
- {
- "npc_id": "2603",
- "loc_data": "{4711,5086,0,1,2}-{4760,5091,0,1,4}"
- },
- {
- "npc_id": "2604",
- "loc_data": "{2439,5170,0,1,3}-{2451,5170,0,1,3}-{2453,5161,0,1,6}-{2460,5160,0,1,7}-{2457,5155,0,1,3}-{2480,5168,0,1,6}-{2469,5166,0,1,1}-{2490,5173,0,1,3}-{2488,5171,0,1,4}-{2483,5156,0,1,3}-{2470,5147,0,1,4}-{2468,5139,0,1,7}-{2458,5141,0,1,3}-{2454,5141,0,1,1}-{2452,5124,0,1,3}-{2454,5122,0,1,2}-{2453,5143,0,1,3}-{2443,5144,0,1,6}"
- },
- {
- "npc_id": "2605",
- "loc_data": "{4633,5125,0,1,7}-{4631,5088,0,1,7}-{4760,5074,0,1,4}"
- },
- {
- "npc_id": "2606",
- "loc_data": "{4670,5081,0,1,6}-{4642,5115,0,1,7}-{4756,5086,0,1,4}"
- },
- {
- "npc_id": "2607",
- "loc_data": "{4638,5095,0,1,2}-{4647,5141,0,1,4}-{4699,5141,0,1,3}-{4774,5098,0,1,3}"
- },
- {
- "npc_id": "2608",
- "loc_data": "{4656,5091,0,1,5}-{4637,5093,0,1,0}"
- },
- {
- "npc_id": "2609",
- "loc_data": "{4691,5090,0,1,7}-{4617,5073,0,1,6}-{4711,5125,0,1,4}-{4727,5082,0,1,6}-{4748,5070,0,1,4}-{2440,5128,0,1,3}-{2436,5133,0,1,3}-{2450,5168,0,1,2}-{2443,5170,0,1,4}-{2445,5177,0,1,3}"
- },
- {
- "npc_id": "2610",
- "loc_data": "{2446,5169,0,1,4}-{2458,5159,0,1,3}-{2466,5166,0,1,7}-{2471,5166,0,1,3}-{2478,5164,0,1,4}-{2490,5174,0,1,4}-{2485,5159,0,1,5}-{2442,5173,0,1,0}-{2440,5171,0,1,7}-{2440,5170,0,1,3}"
- },
- {
- "npc_id": "2611",
- "loc_data": "{4646,5107,0,1,6}-{4683,5098,0,1,4}-{4690,5113,0,1,5}-{4720,5118,0,1,7}-{4716,5097,0,1,5}-{4762,5088,0,1,0}"
- },
- {
- "npc_id": "2614",
- "loc_data": "{4666,5082,0,1,0}-{4669,5103,0,1,2}-{4664,5121,0,1,4}-{4639,5074,0,1,3}-{4704,5077,0,1,5}-{4688,5016,0,1,3}"
- },
- {
- "npc_id": "2615",
- "loc_data": "{4695,5128,0,1,7}-{4625,5084,0,1,7}-{4628,5134,0,1,3}-{4725,5067,0,1,5}-{4748,5076,0,1,6}-{4790,5127,0,1,0}"
- },
- {
- "npc_id": "2616",
- "loc_data": "{4673,5114,0,1,1}-{4631,5106,0,1,0}-{2441,5130,0,1,1}-{2438,5135,0,1,6}-{2443,5138,0,1,2}"
- },
- {
- "npc_id": "2617",
- "loc_data": "{4611,5132,0,1,5}-{2440,5168,0,0,1}"
- },
- {
- "npc_id": "2618",
- "loc_data": "{4603,5065,0,1,1}-{2399,5178,0,1,6}"
- },
- {
- "npc_id": "2619",
- "loc_data": "{2446,5179,0,0,6}-{4644,5149,0,1,7}-{2418,5203,0,1,6}"
- },
- {
- "npc_id": "2620",
- "loc_data": "{4701,5153,0,1,0}-{2478,5146,0,1,2}"
- },
- {
- "npc_id": "2621",
- "loc_data": "{2724,3729,0,0,6}"
- },
- {
- "npc_id": "2622",
- "loc_data": "{4689,5173,0,0,0}-{2464,5149,0,0,7}"
- },
- {
- "npc_id": "2623",
- "loc_data": "{4655,5172,0,1,0}-{2462,5125,0,1,5}"
- },
- {
- "npc_id": "2624",
- "loc_data": "{4718,5148,0,1,6}-{4708,5173,0,1,6}-{4716,5178,0,1,7}-{4726,5173,0,1,0}-{4730,5163,0,1,3}-{4726,5153,0,1,5}"
- },
- {
- "npc_id": "2625",
- "loc_data": "{4668,5177,0,1,4}-{4676,5177,0,1,2}"
- },
- {
- "npc_id": "2634",
- "loc_data": "{3095,3252,0,0,0}"
- },
- {
- "npc_id": "2652",
- "loc_data": "{2868,3579,0,0,0}-{2851,3582,0,0,0}"
- },
- {
- "npc_id": "2660",
- "loc_data": "{3208,3496,0,1,3}"
- },
- {
- "npc_id": "2674",
- "loc_data": "{3017,3231,0,1,1}"
- },
- {
- "npc_id": "2676",
- "loc_data": "{2914,3322,0,0,0}"
- },
- {
- "npc_id": "2677",
- "loc_data": "{2945,3307,0,0,0}"
- },
- {
- "npc_id": "2678",
- "loc_data": "{2988,3210,0,1,7}"
- },
- {
- "npc_id": "2679",
- "loc_data": "{3000,3222,0,1,1}"
- },
- {
- "npc_id": "2680",
- "loc_data": "{2985,3193,0,1,1}-{2582,9836,0,1,2}"
- },
- {
- "npc_id": "2681",
- "loc_data": "{2991,3199,0,1,3}"
- },
- {
- "npc_id": "2682",
- "loc_data": "{1866,4237,0,1,0}-{1866,4240,0,1,0}-{1867,4243,0,1,0}-{2950,3204,0,1,5}-{2971,3212,0,1,4}-{2960,3201,0,1,1}-{2959,3202,0,1,4}-{2904,3208,0,1,0}-{2956,3203,0,1,1}-{2969,3204,0,1,4}"
- },
- {
- "npc_id": "2683",
- "loc_data": "{2967,3212,1,0,7}"
- },
- {
- "npc_id": "2684",
- "loc_data": "{2965,3213,1,0,0}"
- },
- {
- "npc_id": "2685",
- "loc_data": "{3124,9873,0,1,3}-{2911,3285,0,1,1}-{2696,9689,0,1,1}"
- },
- {
- "npc_id": "2686",
- "loc_data": "{2907,3293,0,1,4}-{2700,9696,0,1,1}"
- },
- {
- "npc_id": "2687",
- "loc_data": "{2907,3293,0,1,6}-{2908,3290,0,1,3}-{2703,9698,0,1,1}"
- },
- {
- "npc_id": "2688",
- "loc_data": "{3127,9874,0,1,4}-{2906,3288,0,1,1}-{2910,3293,0,1,4}-{2699,9690,0,1,1}"
- },
- {
- "npc_id": "2689",
- "loc_data": "{2918,3319,0,0,0}"
- },
- {
- "npc_id": "2690",
- "loc_data": "{3048,3258,0,1,3}"
- },
- {
- "npc_id": "2691",
- "loc_data": "{3048,3256,0,1,4}"
- },
- {
- "npc_id": "2692",
- "loc_data": "{3049,3256,0,0,0}"
- },
- {
- "npc_id": "2693",
- "loc_data": "{3214,3313,0,1,0}-{3214,3320,0,1,0}-{3215,3303,0,1,0}-{3219,3285,0,1,0}-{3219,3288,0,1,0}-{3234,3267,0,1,0}-{3234,3268,0,1,0}-{3238,3238,0,1,0}-{3238,3246,0,1,0}-{3239,3235,0,1,0}-{2976,3359,0,1,0}-{2977,3357,0,1,0}-{2988,3383,0,1,1}-{2992,3385,0,1,3}-{3015,3285,0,1,0}"
- },
- {
- "npc_id": "2695",
- "loc_data": "{3013,3192,0,1,1}"
- },
- {
- "npc_id": "2696",
- "loc_data": "{3013,3196,0,1,1}"
- },
- {
- "npc_id": "2697",
- "loc_data": "{3018,3189,0,1,4}"
- },
- {
- "npc_id": "2698",
- "loc_data": "{3018,3181,0,1,6}"
- },
- {
- "npc_id": "2699",
- "loc_data": "{3037,2982,0,0,6}-{3036,2979,0,0,6}"
- },
- {
- "npc_id": "2700",
- "loc_data": "{3037,2982,0,0,6}"
- },
- {
- "npc_id": "2704",
- "loc_data": "{3019,3185,0,0,0}-{3034,2979,0,0,1}-{3033,2980,1,0,4}-{3032,2979,0,0,1}-{3034,2985,0,0,1}-{3035,2982,0,0,1}"
- },
- {
- "npc_id": "2705",
- "loc_data": "{3034,2985,1,0,1}"
- },
- {
- "npc_id": "2706",
- "loc_data": "{3725,3015,0,1,4}-{3745,3026,0,1,6}-{3741,3033,0,1,6}-{3734,3045,0,1,1}-{3019,3145,0,1,3}-{3015,3142,0,1,4}-{3022,3139,0,1,4}"
- },
- {
- "npc_id": "2709",
- "loc_data": "{3002,3266,0,1,6}"
- },
- {
- "npc_id": "2710",
- "loc_data": "{3001,3268,0,1,4}"
- },
- {
- "npc_id": "2711",
- "loc_data": "{3002,3268,0,1,4}"
- },
- {
- "npc_id": "2712",
- "loc_data": "{3001,3268,0,1,3}"
- },
- {
- "npc_id": "2713",
- "loc_data": "{3002,3267,0,1,2}"
- },
- {
- "npc_id": "2725",
- "loc_data": "{2500,3488,0,1,2}"
- },
- {
- "npc_id": "2726",
- "loc_data": "{2994,3138,0,1,0}"
- },
- {
- "npc_id": "2727",
- "loc_data": "{2969,3146,0,1,0}"
- },
- {
- "npc_id": "2728",
- "loc_data": "{3043,3235,0,1,7}"
- },
- {
- "npc_id": "2729",
- "loc_data": "{3047,3234,0,1,7}"
- },
- {
- "npc_id": "2730",
- "loc_data": "{2835,3335,0,0,5}"
- },
- {
- "npc_id": "2731",
- "loc_data": "{2833,3335,0,0,3}"
- },
- {
- "npc_id": "2732",
- "loc_data": "{2933,3281,0,1,1}"
- },
- {
- "npc_id": "2733",
- "loc_data": "{2932,3286,0,1,1}"
- },
- {
- "npc_id": "2759",
- "loc_data": "{3254,3418,0,0,0}-{3255,3418,0,0,0}-{3256,3418,0,0,0}-{3096,3493,0,0,0}-{3097,3494,0,0,0}-{3104,3368,0,0,0}-{3180,3438,0,0,0}-{3180,3442,0,0,0}-{3191,3441,0,0,0}-{3191,3437,0,0,0}-{3191,3445,0,0,0}"
- },
- {
- "npc_id": "2782",
- "loc_data": "{1925,4636,0,1,7}"
- },
- {
- "npc_id": "2783",
- "loc_data": "{1995,4660,0,1,7}-{1989,4660,0,1,0}-{1989,4664,0,1,7}-{1995,4660,0,1,2}-{1997,4664,0,1,3}-{1989,4658,0,1,0}-{2001,4646,0,1,4}-{2000,4645,0,1,3}-{1997,4644,0,1,1}-{2006,4639,0,1,6}-{1999,4636,0,1,3}"
- },
- {
- "npc_id": "2792",
- "loc_data": "{3228,3412,0,0,0}"
- },
- {
- "npc_id": "2794",
- "loc_data": "{2606,3100,0,0,0}"
- },
- {
- "npc_id": "2796",
- "loc_data": "{3096,3108,0,0,6}"
- },
- {
- "npc_id": "2800",
- "loc_data": "{2981,3190,0,0,0}"
- },
- {
- "npc_id": "2803",
- "loc_data": "{3391,3066,0,1,6}-{3397,3054,0,1,6}-{3398,3060,0,1,0}-{3412,3059,0,1,3}"
- },
- {
- "npc_id": "2804",
- "loc_data": "{3388,3067,0,1,0}-{3396,3064,0,1,6}-{3402,3063,0,1,1}-{3423,3019,0,1,3}-{3420,3015,0,1,6}-{3430,3014,0,1,2}-{3426,3020,0,0,0}-{3416,3013,0,1,4}-{3410,3016,0,1,6}"
- },
- {
- "npc_id": "2805",
- "loc_data": "{3391,3071,0,1,2}-{3397,3069,0,1,2}-{3398,3068,0,1,1}-{3385,3064,0,1,6}-{3406,3064,0,1,6}-{3413,3053,0,1,6}-{3424,3061,0,1,2}-{3423,3020,0,1,0}-{3429,3019,0,0,0}"
- },
- {
- "npc_id": "2806",
- "loc_data": "{3426,3052,0,1,4}-{3423,3044,0,1,3}-{3415,3018,0,1,5}-{3425,3009,0,1,3}"
- },
- {
- "npc_id": "2807",
- "loc_data": "{3414,3045,0,1,1}-{3403,3050,0,1,4}-{3407,3058,0,1,3}-{3420,3022,0,0,0}"
- },
- {
- "npc_id": "2808",
- "loc_data": "{3384,3072,0,1,2}-{3394,3076,0,1,1}-{3403,3069,0,1,1}-{3402,3061,0,1,1}-{3419,3006,0,1,4}"
- },
- {
- "npc_id": "2809",
- "loc_data": "{3274,3168,0,1,0}"
- },
- {
- "npc_id": "2810",
- "loc_data": "{3311,3208,0,1,0}"
- },
- {
- "npc_id": "2811",
- "loc_data": "{3289,3209,0,1,0}"
- },
- {
- "npc_id": "2812",
- "loc_data": "{3296,3227,0,0,0}"
- },
- {
- "npc_id": "2813",
- "loc_data": "{3285,3201,0,0,0}"
- },
- {
- "npc_id": "2816",
- "loc_data": "{3301,3190,0,0,0}"
- },
- {
- "npc_id": "2817",
- "loc_data": "{3306,3197,0,0,0}"
- },
- {
- "npc_id": "2818",
- "loc_data": "{3303,3204,0,0,0}"
- },
- {
- "npc_id": "2819",
- "loc_data": "{3295,3193,0,0,0}"
- },
- {
- "npc_id": "2824",
- "loc_data": "{3275,3193,0,0,0}"
- },
- {
- "npc_id": "2860",
- "loc_data": "{2345,3165,0,1,4}"
- },
- {
- "npc_id": "2881",
- "loc_data": "{2907,4440,0,1,6}"
- },
- {
- "npc_id": "2882",
- "loc_data": "{2910,4457,0,1,6}"
- },
- {
- "npc_id": "2883",
- "loc_data": "{2923,4443,0,1,4}"
- },
- {
- "npc_id": "2890",
- "loc_data": "{1889,4411,0,0,4}-{1895,4409,0,0,2}-{1903,4409,0,0,3}-{1906,4407,0,0,5}-{1903,4400,0,0,1}-{1899,4400,0,0,2}-{1893,4398,0,0,2}-{1888,4386,0,0,6}-{1884,4383,0,0,5}-{1879,4376,0,0,5}-{1883,4376,0,0,1}-{1921,4368,0,0,2}-{1927,4362,0,0,7}-{1935,4360,0,0,7}-{1942,4356,0,0,7}-{1948,4355,0,0,7}-{1951,4358,0,0,2}-{1957,4365,0,0,2}-{1958,4368,0,0,2}"
- },
- {
- "npc_id": "2894",
- "loc_data": "{2908,4435,0,0,1}-{2924,4436,0,0,5}-{2924,4460,0,0,6}-{2908,4463,0,0,3}-{2901,4458,0,0,3}-{2928,4441,0,0,3}-{2929,4449,0,0,6}-{2902,4437,0,0,1}"
- },
- {
- "npc_id": "2935",
- "loc_data": "{3671,3484,0,1,4}"
- },
- {
- "npc_id": "2939",
- "loc_data": "{2657,3701,0,1,0}"
- },
- {
- "npc_id": "2940",
- "loc_data": "{2675,3671,0,1,3}"
- },
- {
- "npc_id": "2942",
- "loc_data": "{3017,3234,0,1,7}"
- },
- {
- "npc_id": "2943",
- "loc_data": "{3265,3400,0,0,0}"
- },
- {
- "npc_id": "2945",
- "loc_data": "{2562,3319,0,0,0}"
- },
- {
- "npc_id": "2946",
- "loc_data": "{3246,9865,0,1,1}"
- },
- {
- "npc_id": "2947",
- "loc_data": "{3245,9868,0,1,3}"
- },
- {
- "npc_id": "2948",
- "loc_data": "{3265,3403,0,0,0}"
- },
- {
- "npc_id": "2949",
- "loc_data": "{2562,3320,0,0,0}"
- },
- {
- "npc_id": "2950",
- "loc_data": "{3020,3229,0,0,7}"
- },
- {
- "npc_id": "2997",
- "loc_data": "{3308,3511,1,1,1}"
- },
- {
- "npc_id": "2998",
- "loc_data": "{2657,9641,0,1,0}"
- },
- {
- "npc_id": "2999",
- "loc_data": "{2658,9634,0,1,1}"
- },
- {
- "npc_id": "3001",
- "loc_data": "{2646,9639,0,1,4}"
- },
- {
- "npc_id": "3002",
- "loc_data": "{2666,9630,0,1,6}"
- },
- {
- "npc_id": "3003",
- "loc_data": "{2660,9624,0,1,6}"
- },
- {
- "npc_id": "3020",
- "loc_data": "{3348,2942,0,1,3}"
- },
- {
- "npc_id": "3021",
- "loc_data": "{2796,3104,0,1,0}-{2815,3466,0,1,3}-{2856,3435,0,1,0}-{2933,3434,0,1,4}-{3182,3354,0,1,0}-{3088,3357,0,1,0}-{3060,3263,0,1,0}-{3189,3234,0,1,0}-{3232,3459,0,1,3}-{3449,3471,0,1,6}-{2812,3333,0,1,4}-{3007,3371,0,1,2}-{3053,3304,0,1,1}-{2663,3374,0,1,4}-{3603,3529,0,1,6}-{2474,3446,0,1,4}-{2611,3859,0,1,6}-{2589,3863,0,1,0}-{2434,3415,0,1,3}-{2764,3210,0,1,1}-{2940,3225,0,1,6}-{2614,3226,0,1,4}-{3315,3205,0,1,6}-{2666,3521,0,1,4}-{2491,3177,0,1,1}-{2572,3105,0,1,0}"
- },
- {
- "npc_id": "3029",
- "loc_data": "{3422,2937,0,1,1}"
- },
- {
- "npc_id": "3030",
- "loc_data": "{3421,2912,0,0,1}"
- },
- {
- "npc_id": "3031",
- "loc_data": "{3439,2890,0,0,3}"
- },
- {
- "npc_id": "3032",
- "loc_data": "{3439,2927,0,1,5}"
- },
- {
- "npc_id": "3034",
- "loc_data": "{3409,2929,1,1,4}"
- },
- {
- "npc_id": "3035",
- "loc_data": "{3450,2895,0,0,3}"
- },
- {
- "npc_id": "3036",
- "loc_data": "{3424,2900,0,1,3}"
- },
- {
- "npc_id": "3037",
- "loc_data": "{3424,2906,0,0,1}"
- },
- {
- "npc_id": "3038",
- "loc_data": "{3406,2924,0,1,3}"
- },
- {
- "npc_id": "3039",
- "loc_data": "{3414,2907,0,1,3}"
- },
- {
- "npc_id": "3040",
- "loc_data": "{3443,2914,0,0,3}"
- },
- {
- "npc_id": "3041",
- "loc_data": "{3445,2910,0,0,1}"
- },
- {
- "npc_id": "3042",
- "loc_data": "{3441,2920,0,1,4}"
- },
- {
- "npc_id": "3043",
- "loc_data": "{3445,2917,0,0,3}"
- },
- {
- "npc_id": "3044",
- "loc_data": "{3428,2928,0,1,5}"
- },
- {
- "npc_id": "3045",
- "loc_data": "{3432,2912,0,0,1}"
- },
- {
- "npc_id": "3046",
- "loc_data": "{3425,2891,0,0,4}-{3425,2894,0,0,4}-{3425,2893,0,0,4}-{3425,2889,0,0,4}"
- },
- {
- "npc_id": "3050",
- "loc_data": "{3187,9758,0,1,3}"
- },
- {
- "npc_id": "3068",
- "loc_data": "{3062,9550,0,1,5}-{3050,9554,0,1,7}-{3048,9545,0,1,4}-{3061,9542,0,1,3}-{3065,9548,0,1,1}-{3034,9544,0,1,4}-{3033,9552,0,1,3}-{3029,9545,0,1,7}-{3027,9555,0,1,3}"
- },
- {
- "npc_id": "3072",
- "loc_data": "{3210,5562,0,1,3}-{3207,5448,0,1,3}-{3223,5446,0,1,4}"
- },
- {
- "npc_id": "3073",
- "loc_data": "{3217,5442,0,1,4}-{3231,5444,0,1,0}"
- },
- {
- "npc_id": "3074",
- "loc_data": "{3404,3492,0,0,6}"
- },
- {
- "npc_id": "3076",
- "loc_data": "{3403,3492,0,0,0}"
- },
- {
- "npc_id": "3090",
- "loc_data": "{3082,3442,0,0,0}"
- },
- {
- "npc_id": "3094",
- "loc_data": "{3361,3306,0,1,6}"
- },
- {
- "npc_id": "3095",
- "loc_data": "{3364,3309,0,1,3}-{3363,3317,1,1,1}"
- },
- {
- "npc_id": "3097",
- "loc_data": "{3364,3304,0,1,6}"
- },
- {
- "npc_id": "3099",
- "loc_data": "{3364,9626,2,1,1}"
- },
- {
- "npc_id": "3100",
- "loc_data": "{3363,9646,0,1,1}"
- },
- {
- "npc_id": "3101",
- "loc_data": "{3364,9644,1,1,6}"
- },
- {
- "npc_id": "3103",
- "loc_data": "{3362,3318,1,0,6}"
- },
- {
- "npc_id": "3104",
- "loc_data": "{3364,3310,0,1,1}-{3379,9627,0,1,0}-{3367,9647,2,1,4}"
- },
- {
- "npc_id": "3105",
- "loc_data": "{3367,3304,1,1,1}-{3376,9655,0,1,7}"
- },
- {
- "npc_id": "3106",
- "loc_data": "{3360,3305,1,1,3}-{3348,9654,0,1,4}-{3362,9648,2,1,4}"
- },
- {
- "npc_id": "3107",
- "loc_data": "{3361,3306,0,1,3}-{3348,9626,0,1,6}"
- },
- {
- "npc_id": "3108",
- "loc_data": "{2549,3100,0,0,4}"
- },
- {
- "npc_id": "3109",
- "loc_data": "{2551,3079,0,1,3}"
- },
- {
- "npc_id": "3110",
- "loc_data": "{2789,3175,0,0,4}"
- },
- {
- "npc_id": "3111",
- "loc_data": "{2788,3176,0,0,0}"
- },
- {
- "npc_id": "3114",
- "loc_data": "{2815,3344,0,1,3}"
- },
- {
- "npc_id": "3123",
- "loc_data": "{3344,2827,0,1,5}"
- },
- {
- "npc_id": "3124",
- "loc_data": "{3372,2847,1,0,3}"
- },
- {
- "npc_id": "3125",
- "loc_data": "{3366,2845,3,0,6}"
- },
- {
- "npc_id": "3127",
- "loc_data": "{3331,2948,0,1,4}"
- },
- {
- "npc_id": "3153",
- "loc_data": "{2871,3091,0,1,4}-{2862,3111,0,1,1}-{2861,3101,0,1,3}-{2870,3113,0,1,4}-{2870,3110,0,1,6}-{2865,3103,0,1,3}-{2873,3103,0,1,2}-{2863,3118,0,1,4}-{2886,3109,0,1,1}-{2892,3109,0,1,2}-{2883,3105,0,1,4}-{2889,3111,0,1,6}-{2883,3110,0,1,3}"
- },
- {
- "npc_id": "3155",
- "loc_data": "{3679,3494,0,1,3}-{3687,2953,0,1,1}"
- },
- {
- "npc_id": "3162",
- "loc_data": "{3691,2954,0,1,3}"
- },
- {
- "npc_id": "3164",
- "loc_data": "{3667,2990,0,1,3}"
- },
- {
- "npc_id": "3166",
- "loc_data": "{3693,2979,0,1,3}"
- },
- {
- "npc_id": "3167",
- "loc_data": "{3662,2978,1,1,4}"
- },
- {
- "npc_id": "3168",
- "loc_data": "{3663,2981,0,1,3}"
- },
- {
- "npc_id": "3170",
- "loc_data": "{3674,2970,0,1,0}"
- },
- {
- "npc_id": "3188",
- "loc_data": "{3664,2971,0,1,6}"
- },
- {
- "npc_id": "3189",
- "loc_data": "{3690,2976,0,1,1}-{3671,3006,0,1,6}"
- },
- {
- "npc_id": "3191",
- "loc_data": "{3659,2955,0,1,3}-{3683,2994,0,1,4}-{3662,3005,0,1,4}"
- },
- {
- "npc_id": "3192",
- "loc_data": "{3700,2994,0,1,4}-{3683,3005,0,1,3}"
- },
- {
- "npc_id": "3193",
- "loc_data": "{3696,2993,0,1,3}-{3693,3006,0,1,3}"
- },
- {
- "npc_id": "3194",
- "loc_data": "{3654,2992,0,1,4}-{3682,2962,0,1,3}-{3704,3006,0,1,0}"
- },
- {
- "npc_id": "3195",
- "loc_data": "{3696,2978,0,1,1}"
- },
- {
- "npc_id": "3196",
- "loc_data": "{3649,3004,0,1,6}"
- },
- {
- "npc_id": "3200",
- "loc_data": "{3263,3932,0,1,3}"
- },
- {
- "npc_id": "3205",
- "loc_data": "{3139,3448,0,1,3}"
- },
- {
- "npc_id": "3216",
- "loc_data": "{2534,3273,0,0,0}-{2539,3273,0,0,0}"
- },
- {
- "npc_id": "3217",
- "loc_data": "{2956,3370,0,1,3}"
- },
- {
- "npc_id": "3219",
- "loc_data": "{3027,3344,0,1,4}"
- },
- {
- "npc_id": "3220",
- "loc_data": "{3013,3338,0,1,4}"
- },
- {
- "npc_id": "3221",
- "loc_data": "{3016,3334,0,1,3}-{3016,3339,0,1,6}-{3019,3341,0,1,4}"
- },
- {
- "npc_id": "3223",
- "loc_data": "{2994,3365,0,1,4}"
- },
- {
- "npc_id": "3224",
- "loc_data": "{3047,3365,0,1,6}"
- },
- {
- "npc_id": "3226",
- "loc_data": "{2996,3375,0,1,4}"
- },
- {
- "npc_id": "3227",
- "loc_data": "{2756,3182,0,1,6}"
- },
- {
- "npc_id": "3228",
- "loc_data": "{2969,3373,0,1,3}-{2948,3353,0,1,3}-{3036,3357,0,1,3}"
- },
- {
- "npc_id": "3229",
- "loc_data": "{2912,3344,0,1,7}-{3040,3354,0,1,2}"
- },
- {
- "npc_id": "3230",
- "loc_data": "{2986,3370,0,1,1}"
- },
- {
- "npc_id": "3234",
- "loc_data": "{3011,3383,0,1,0}"
- },
- {
- "npc_id": "3237",
- "loc_data": "{2984,3435,0,0,0}"
- },
- {
- "npc_id": "3238",
- "loc_data": "{2981,3434,0,0,0}"
- },
- {
- "npc_id": "3239",
- "loc_data": "{2975,3436,0,0,0}"
- },
- {
- "npc_id": "3240",
- "loc_data": "{2977,3442,0,0,0}"
- },
- {
- "npc_id": "3241",
- "loc_data": "{2969,3451,0,1,4}"
- },
- {
- "npc_id": "3242",
- "loc_data": "{2910,3332,0,1,0}-{2910,3337,0,1,4}-{2904,3331,0,1,3}-{2979,3568,0,1,7}-{2983,3566,0,1,3}-{2979,3566,0,1,3}-{2981,3570,0,1,6}-{2984,3561,0,1,6}"
- },
- {
- "npc_id": "3243",
- "loc_data": "{2906,3331,0,1,6}-{2909,3333,0,1,6}"
- },
- {
- "npc_id": "3244",
- "loc_data": "{2909,3333,0,1,1}"
- },
- {
- "npc_id": "3245",
- "loc_data": "{2907,3336,0,1,0}"
- },
- {
- "npc_id": "3246",
- "loc_data": "{3071,3446,0,1,6}-{2548,3567,0,1,4}"
- },
- {
- "npc_id": "3247",
- "loc_data": "{2548,3567,0,1,1}"
- },
- {
- "npc_id": "3248",
- "loc_data": "{3073,3442,0,1,5}"
- },
- {
- "npc_id": "3249",
- "loc_data": "{3082,3441,0,1,0}"
- },
- {
- "npc_id": "3250",
- "loc_data": "{3088,3426,0,1,3}-{2547,3571,0,1,7}"
- },
- {
- "npc_id": "3251",
- "loc_data": "{3073,3422,0,1,6}"
- },
- {
- "npc_id": "3252",
- "loc_data": "{3077,3424,0,1,6}"
- },
- {
- "npc_id": "3253",
- "loc_data": "{2542,3578,0,1,3}"
- },
- {
- "npc_id": "3255",
- "loc_data": "{3073,3423,0,1,3}"
- },
- {
- "npc_id": "3256",
- "loc_data": "{3080,3415,0,1,3}-{3084,3415,0,1,6}"
- },
- {
- "npc_id": "3257",
- "loc_data": "{3096,3432,0,1,0}"
- },
- {
- "npc_id": "3258",
- "loc_data": "{3080,3444,0,1,3}"
- },
- {
- "npc_id": "3259",
- "loc_data": "{3075,3438,0,1,4}"
- },
- {
- "npc_id": "3260",
- "loc_data": "{3083,3425,0,1,3}-{2554,3564,0,1,6}-{2547,3558,0,1,6}"
- },
- {
- "npc_id": "3261",
- "loc_data": "{3086,3425,0,1,3}"
- },
- {
- "npc_id": "3262",
- "loc_data": "{3080,3423,0,1,1}"
- },
- {
- "npc_id": "3263",
- "loc_data": "{3084,3419,0,1,4}"
- },
- {
- "npc_id": "3264",
- "loc_data": "{3265,3331,0,1,7}-{3146,3460,0,1,6}-{3115,3414,0,1,3}-{3195,3240,0,1,6}-{2565,9843,0,1,0}"
- },
- {
- "npc_id": "3265",
- "loc_data": "{3121,3427,0,1,2}-{2582,9836,0,1,1}"
- },
- {
- "npc_id": "3266",
- "loc_data": "{3094,3406,0,1,3}"
- },
- {
- "npc_id": "3267",
- "loc_data": "{3134,3459,0,1,1}-{3194,3240,0,1,0}-{3178,3257,0,1,1}-{3170,3255,0,1,7}-{3192,3243,0,1,1}-{3175,3249,0,1,1}-{3170,3242,0,1,2}-{3193,3243,0,1,7}-{3189,3258,0,1,1}-{3172,3245,0,1,4}-{3172,3238,0,1,6}-{3187,3246,0,1,4}-{3186,3243,0,1,7}-{3222,3238,0,1,1}-{3144,3235,0,1,6}-{3147,3224,0,1,1}-{3131,3243,0,1,7}-{3142,3242,0,1,4}-{3157,3228,0,1,6}-{3151,3217,0,1,6}-{3152,3246,0,1,1}-{3145,3266,0,1,4}-{3148,3240,0,1,1}-{3135,3258,0,1,2}-{3140,3260,0,1,3}"
- },
- {
- "npc_id": "3268",
- "loc_data": "{3012,3454,0,1,1}"
- },
- {
- "npc_id": "3269",
- "loc_data": "{3022,3447,0,1,4}"
- },
- {
- "npc_id": "3270",
- "loc_data": "{3010,3452,0,1,3}"
- },
- {
- "npc_id": "3272",
- "loc_data": "{3042,3468,0,1,1}"
- },
- {
- "npc_id": "3273",
- "loc_data": "{3030,3465,0,1,5}"
- },
- {
- "npc_id": "3276",
- "loc_data": "{3039,3475,0,1,4}"
- },
- {
- "npc_id": "3277",
- "loc_data": "{3035,3471,0,1,2}"
- },
- {
- "npc_id": "3278",
- "loc_data": "{3045,3477,0,1,1}"
- },
- {
- "npc_id": "3279",
- "loc_data": "{3039,3471,0,1,6}"
- },
- {
- "npc_id": "3280",
- "loc_data": "{3015,3451,0,0,0}"
- },
- {
- "npc_id": "3281",
- "loc_data": "{3018,3450,0,0,0}"
- },
- {
- "npc_id": "3282",
- "loc_data": "{3008,3442,0,0,0}"
- },
- {
- "npc_id": "3283",
- "loc_data": "{3039,3424,0,1,5}-{3043,3429,0,1,4}-{3047,3427,0,1,1}-{2964,3455,0,0,0}-{3048,3441,0,1,3}"
- },
- {
- "npc_id": "3284",
- "loc_data": "{3058,3419,0,0,0}-{3048,3423,0,1,6}-{2969,3437,0,0,0}-{3054,3432,0,1,5}"
- },
- {
- "npc_id": "3285",
- "loc_data": "{3036,3430,0,1,3}-{3025,3442,0,0,0}-{2952,3376,0,0,0}"
- },
- {
- "npc_id": "3286",
- "loc_data": "{3034,3450,0,1,3}-{3057,3447,0,1,6}-{2968,3448,0,1,1}"
- },
- {
- "npc_id": "3287",
- "loc_data": "{3073,3443,0,1,0}-{3046,3453,0,1,6}-{2987,3444,0,1,0}"
- },
- {
- "npc_id": "3288",
- "loc_data": "{3034,3437,0,1,0}-{2987,3446,0,1,7}"
- },
- {
- "npc_id": "3294",
- "loc_data": "{3014,3339,0,1,2}"
- },
- {
- "npc_id": "3295",
- "loc_data": "{3020,3337,0,1,1}"
- },
- {
- "npc_id": "3296",
- "loc_data": "{2957,3359,0,1,0}-{2958,3358,0,1,0}-{2967,3360,0,1,0}-{2970,3361,0,1,0}-{2973,3359,0,1,0}-{2977,3357,0,1,0}-{2989,3384,0,1,0}"
- },
- {
- "npc_id": "3298",
- "loc_data": "{3366,9637,2,1,3}"
- },
- {
- "npc_id": "3299",
- "loc_data": "{3077,3257,0,1,1}"
- },
- {
- "npc_id": "3302",
- "loc_data": "{2453,4449,0,1,2}"
- },
- {
- "npc_id": "3307",
- "loc_data": "{2467,4438,0,1,4}-{2471,4439,0,1,7}-{2465,4436,0,1,3}-{2464,4432,0,1,4}"
- },
- {
- "npc_id": "3308",
- "loc_data": "{2905,3333,2,1,0}"
- },
- {
- "npc_id": "3310",
- "loc_data": "{2415,4451,0,1,6}-{2416,4435,0,1,7}-{2423,4432,0,1,4}"
- },
- {
- "npc_id": "3318",
- "loc_data": "{2401,4378,0,0,0}"
- },
- {
- "npc_id": "3324",
- "loc_data": "{3159, 3433, 0, 1, 0}"
- },
- {
- "npc_id": "3325",
- "loc_data": "{3161,3432,1,1,4}"
- },
- {
- "npc_id": "3328",
- "loc_data": "{3203,3344,0,0,0}"
- },
- {
- "npc_id": "3329",
- "loc_data": "{3112,3414,0,0,0}"
- },
- {
- "npc_id": "3330",
- "loc_data": "{3132,3508,0,0,0}"
- },
- {
- "npc_id": "3331",
- "loc_data": "{3242,3240,0,0,4}"
- },
- {
- "npc_id": "3340",
- "loc_data": "{1759,5182,0,1,0}"
- },
- {
- "npc_id": "3341",
- "loc_data": "{1759,5191,0,1,0}-{1754,5200,0,1,0}-{1748,5223,0,1,0}-{1784,5199,0,1,0}-{1739,5154,0,1,0}"
- },
- {
- "npc_id": "3342",
- "loc_data": "{1745,5208,0,1,0}-{1737,5215,0,1,0}-{1758,5210,0,1,0}-{1768,5175,0,1,0}-{1760,5152,0,1,0}-{1745,5169,0,1,0}"
- },
- {
- "npc_id": "3343",
- "loc_data": "{1764,5198,0,1,0}-{1774,5195,0,1,0}-{1773,5149,0,1,0}-{1742,5292,0,1,0}"
- },
- {
- "npc_id": "3344",
- "loc_data": "{2412,4470,0,0,0}-{2414,4467,0,0,0}-{2415,4475,0,0,0}-{2419,4467,0,0,0}-{2419,4474,0,0,0}"
- },
- {
- "npc_id": "3345",
- "loc_data": "{2412,4370,0,0,0}-{2416,4376,0,0,0}-{2419,4374,0,0,0}-{2420,4377,0,0,0}-{2421,4370,0,0,0}"
- },
- {
- "npc_id": "3348",
- "loc_data": "{2978,3343,0,1,4}-{2978,3337,0,1,1}-{2966,3337,1,1,6}-{2970,3330,2,1,1}"
- },
- {
- "npc_id": "3349",
- "loc_data": "{2961,3330,2,1,0}-{2966,3352,2,1,1}-{2974,3328,2,1,6}"
- },
- {
- "npc_id": "3350",
- "loc_data": "{2959,3340,2,1,3}"
- },
- {
- "npc_id": "3376",
- "loc_data": "{3313,5453,0,1,3}-{3312,5452,0,1,3}-{3310,5452,0,1,6}-{3311,5462,0,1,5}-{3313,5554,0,1,6}-{3297,5562,0,1,1}-{3305,5554,0,1,1}-{3300,5540,0,1,1}"
- },
- {
- "npc_id": "3384",
- "loc_data": "{3211,3225,0,0,0}"
- },
- {
- "npc_id": "3402",
- "loc_data": "{2560,2842,0,0,0}"
- },
- {
- "npc_id": "3407",
- "loc_data": "{3114,3515,0,1,4}"
- },
- {
- "npc_id": "3408",
- "loc_data": "{3113,3510,0,1,7}"
- },
- {
- "npc_id": "3419",
- "loc_data": "{2540,3020,0,0,0}-{2555,2953,0,0,0}"
- },
- {
- "npc_id": "3450",
- "loc_data": "{2901,2947,0,0,0}-{2925,2959,0,0,0}-{2920,3053,0,0,0}-{2924,3063,0,0,0}"
- },
- {
- "npc_id": "3469",
- "loc_data": "{2657,2966,0,0,0}"
- },
- {
- "npc_id": "3470",
- "loc_data": "{2755,3083,0,0,0}"
- },
- {
- "npc_id": "3479",
- "loc_data": "{2906,3514,1,0,0}"
- },
- {
- "npc_id": "3541",
- "loc_data": "{3517,3240,0,1,6}"
- },
- {
- "npc_id": "3587",
- "loc_data": "{2587,9741,0,1,4}-{2585,9739,0,1,7}-{2582,9736,0,1,3}-{2589,9734,0,1,4}-{2582,9743,0,1,3}-{2576,9746,0,1,7}-{2579,9741,0,1,6}"
- },
- {
- "npc_id": "3638",
- "loc_data": "{3309,3453,0,0,1}"
- },
- {
- "npc_id": "3671",
- "loc_data": "{3084,3250,0,1,1}"
- },
- {
- "npc_id": "3673",
- "loc_data": "{2925,3321,0,1,4}-{2924,3319,0,1,0}"
- },
- {
- "npc_id": "3675",
- "loc_data": "{3321,2857,0,1,3}-{3322,2861,0,0,4}-{3319,2855,0,1,1}-{3319,2853,0,1,6}-{3331,2791,0,1,1}-{3333,2803,0,1,2}-{3338,2801,0,1,4}-{3338,2776,0,1,3}"
- },
- {
- "npc_id": "3677",
- "loc_data": "{2637,3440,0,0,0}"
- },
- {
- "npc_id": "3679",
- "loc_data": "{2875,3482,0,0,4}"
- },
- {
- "npc_id": "3680",
- "loc_data": "{3281,3331,0,1,7}"
- },
- {
- "npc_id": "3695",
- "loc_data": "{2661,3701,0,1,0}"
- },
- {
- "npc_id": "3696",
- "loc_data": "{2673,3658,0,1,3}"
- },
- {
- "npc_id": "3707",
- "loc_data": "{2713,10133,0,1,2}-{2708,10133,0,1,4}-{2706,10135,0,0,3}-{2708,10133,0,1,3}-{2703,10135,0,1,6}-{2702,10131,0,1,4}-{2717,10133,0,1,0}-{2708,10130,0,1,1}"
- },
- {
- "npc_id": "3709",
- "loc_data": "{2974,2906,0,0,0}-{2847,5075,0,0,0}"
- },
- {
- "npc_id": "3711",
- "loc_data": "{2575,9746,0,1,0}-{2581,9747,0,1,0}-{2577,9743,0,1,1}-{2579,9740,0,1,0}-{2588,9733,0,1,4}"
- },
- {
- "npc_id": "3777",
- "loc_data": "{3230,3231,0,1,5}"
- },
- {
- "npc_id": "3778",
- "loc_data": "{1867,4233,0,0,0}"
- },
- {
- "npc_id": "3780",
- "loc_data": "{1906,4281,0,0,0}"
- },
- {
- "npc_id": "3781",
- "loc_data": "{2659,2675,0,1,1}"
- },
- {
- "npc_id": "3786",
- "loc_data": "{2658,2666,0,1,1}"
- },
- {
- "npc_id": "3787",
- "loc_data": "{2754,3509,0,0,0}"
- },
- {
- "npc_id": "3788",
- "loc_data": "{2664,2653,0,1,3}"
- },
- {
- "npc_id": "3789",
- "loc_data": "{2660,2649,0,1,3}"
- },
- {
- "npc_id": "3790",
- "loc_data": "{3041,3203,0,0,6}"
- },
- {
- "npc_id": "3791",
- "loc_data": "{2653,2655,0,1,1}"
- },
- {
- "npc_id": "3793",
- "loc_data": "{2659,2660,0,1,6}"
- },
- {
- "npc_id": "3796",
- "loc_data": "{2667,2661,0,0,3}"
- },
- {
- "npc_id": "3797",
- "loc_data": "{2649,2659,0,0,2}"
- },
- {
- "npc_id": "3798",
- "loc_data": "{2658,2652,0,1,6}"
- },
- {
- "npc_id": "3799",
- "loc_data": "{2650,2663,0,0,4}"
- },
- {
- "npc_id": "3802",
- "loc_data": "{2657,2637,0,0,6}"
- },
- {
- "npc_id": "3804",
- "loc_data": "{3349,3793,0,0,0}"
- },
- {
- "npc_id": "3806",
- "loc_data": "{3166, 3304, 0, 1, 0}"
- },
- {
- "npc_id": "3807",
- "loc_data": "{3254,3274,0,0,0}"
- },
- {
- "npc_id": "3808",
- "loc_data": "{2517,3205,0,1,3}-{2513,3204,0,1,3}-{2422,3526,0,1,1}"
- },
- {
- "npc_id": "3809",
- "loc_data": "{3285,3213,0,1,1}"
- },
- {
- "npc_id": "3810",
- "loc_data": "{2847,3499,0,1,7}-{2970,2973,0,0,0}"
- },
- {
- "npc_id": "3811",
- "loc_data": "{2918,3057,0,0,0}-{2894,2730,0,1,2}-{2465,3501,3,1,3}"
- },
- {
- "npc_id": "3813",
- "loc_data": "{2541,2969,0,1,4}"
- },
- {
- "npc_id": "3817",
- "loc_data": "{2521,3208,0,1,1}"
- },
- {
- "npc_id": "3819",
- "loc_data": "{2416,3525,0,1,3}-{2412,3527,0,1,6}"
- },
- {
- "npc_id": "3820",
- "loc_data": "{3088,3255,0,0,6}"
- },
- {
- "npc_id": "3823",
- "loc_data": "{2343,3668,0,0,0}"
- },
- {
- "npc_id": "3824",
- "loc_data": "{2329,3689,0,1,6}"
- },
- {
- "npc_id": "3831",
- "loc_data": "{2357,3637,0,0,0}"
- },
- {
- "npc_id": "3832",
- "loc_data": "{2345,3651,0,0,0}"
- },
- {
- "npc_id": "3848",
- "loc_data": "{2337,3703,0,0,6}-{2340,3702,0,0,6}-{2343,3702,0,0,3}-{2349,3702,0,0,6}-{2353,3703,0,0,6}-{2310,3704,0,0,6}-{2311,3696,0,0,4}-{2343,3702,0,0,3}"
- },
- {
- "npc_id": "3851",
- "loc_data": "{2332,3669,0,0,0}-{2325,3671,0,0,4}-{2331,3670,0,0,1}-{2333,3671,0,0,3}"
- },
- {
- "npc_id": "3915",
- "loc_data": "{2945,3146,0,1,3}"
- },
- {
- "npc_id": "3916",
- "loc_data": "{2595,3890,0,0,3}"
- },
- {
- "npc_id": "3917",
- "loc_data": "{2581,3861,0,0,1}"
- },
- {
- "npc_id": "3920",
- "loc_data": "{2527,10259,0,1,1}"
- },
- {
- "npc_id": "3921",
- "loc_data": "{2506,10251,0,1,1}"
- },
- {
- "npc_id": "3922",
- "loc_data": "{2508,10260,0,1,1}"
- },
- {
- "npc_id": "3923",
- "loc_data": "{2521,10251,0,1,1}"
- },
- {
- "npc_id": "3937",
- "loc_data": "{2508,3866,0,0,3}"
- },
- {
- "npc_id": "4235",
- "loc_data": "{2669,3332,0,0,1}"
- },
- {
- "npc_id": "4237",
- "loc_data": "{2669,3331,0,0,6}"
- },
- {
- "npc_id": "4239",
- "loc_data": "{2669,3331,0,0,6}"
- },
- {
- "npc_id": "4241",
- "loc_data": "{2669,3331,0,0,6}"
- },
- {
- "npc_id": "4243",
- "loc_data": "{2669,3331,0,0,6}"
- },
- {
- "npc_id": "4246",
- "loc_data": "{3480,3484,1,0,0}-{3479,3484,0,1,3}"
- },
- {
- "npc_id": "4247",
- "loc_data": "{2639,3291,0,0,0}-{2981,3370,0,0,0}-{3240,3474,0,0,0}-{2737,3500,0,1,6}"
- },
- {
- "npc_id": "4249",
- "loc_data": "{2981,3341,1,0,0}"
- },
- {
- "npc_id": "4250",
- "loc_data": "{3302,3492,0,1,6}"
- },
- {
- "npc_id": "4251",
- "loc_data": "{3009,3380,0,1,0}"
- },
- {
- "npc_id": "4261",
- "loc_data": "{2569,9851,0,1,3}-{2579,9851,0,1,4}"
- },
- {
- "npc_id": "4263",
- "loc_data": "{2584,9838,0,1,6}"
- },
- {
- "npc_id": "4264",
- "loc_data": "{2588,9837,0,1,4}"
- },
- {
- "npc_id": "4269",
- "loc_data": "{2608,9817,0,1,3}"
- },
- {
- "npc_id": "4270",
- "loc_data": "{2593,9820,0,1,4}"
- },
- {
- "npc_id": "4271",
- "loc_data": "{2596,9822,0,1,0}"
- },
- {
- "npc_id": "4273",
- "loc_data": "{2564,9851,0,1,4}"
- },
- {
- "npc_id": "4274",
- "loc_data": "{2586,9826,0,1,7}-{2569,9849,0,1,4}-{2581,9847,0,1,0}-{2609,9826,0,1,1}"
- },
- {
- "npc_id": "4275",
- "loc_data": "{2594,9817,0,1,0}"
- },
- {
- "npc_id": "4276",
- "loc_data": "{2581,9851,0,1,1}"
- },
- {
- "npc_id": "4285",
- "loc_data": "{2880,3546,0,0,4}"
- },
- {
- "npc_id": "4286",
- "loc_data": "{2866,3543,0,1,1}"
- },
- {
- "npc_id": "4287",
- "loc_data": "{2840,3541,1,0,2}"
- },
- {
- "npc_id": "4288",
- "loc_data": "{2851,3554,0,1,6}"
- },
- {
- "npc_id": "4289",
- "loc_data": "{2792,3488,2,0,0}-{2845,3539,2,0,7}"
- },
- {
- "npc_id": "4290",
- "loc_data": "{2854,3542,0,1,3}"
- },
- {
- "npc_id": "4291",
- "loc_data": "{2863,3546,2,1,3}-{2870,3551,2,1,0}-{2850,3547,2,1,0}-{2844,3552,2,1,5}-{2843,3547,2,1,5}-{2872,3542,2,1,3}-{2861,3551,2,1,1}-{2865,3538,2,1,2}"
- },
- {
- "npc_id": "4292",
- "loc_data": "{2847,3541,2,1,3}-{2855,3554,2,1,5}-{2860,3542,2,1,0}-{2869,3554,2,1,3}-{2872,3537,2,1,4}-{2850,3534,2,1,3}-{2857,3546,2,1,0}-{2838,3554,2,1,6}-{2869,3552,2,1,4}"
- },
- {
- "npc_id": "4293",
- "loc_data": "{2840,3554,0,1,1}"
- },
- {
- "npc_id": "4294",
- "loc_data": "{2847,3553,0,1,6}"
- },
- {
- "npc_id": "4295",
- "loc_data": "{2856,3537,1,1,1}"
- },
- {
- "npc_id": "4296",
- "loc_data": "{2841,3543,0,0,4}"
- },
- {
- "npc_id": "4297",
- "loc_data": "{2856,3549,1,0,2}"
- },
- {
- "npc_id": "4298",
- "loc_data": "{2864,3541,1,1,3}"
- },
- {
- "npc_id": "4299",
- "loc_data": "{2866,3556,1,0,5}"
- },
- {
- "npc_id": "4300",
- "loc_data": "{2865,3544,1,0,6}"
- },
- {
- "npc_id": "4312",
- "loc_data": "{3323,9609,0,0,6}"
- },
- {
- "npc_id": "4315",
- "loc_data": "{3224,3286,0,0,0}"
- },
- {
- "npc_id": "4317",
- "loc_data": "{3230,3285,0,0,0}"
- },
- {
- "npc_id": "4344",
- "loc_data": "{3747,3013,0,1,4}-{3766,3034,0,1,6}-{3733,2972,0,1,4}"
- },
- {
- "npc_id": "4346",
- "loc_data": "{3786,9463,0,1,6}-{3714,2952,0,1,1}"
- },
- {
- "npc_id": "4347",
- "loc_data": "{3728,3043,0,1,4}-{3725,3015,0,1,0}-{3722,3021,0,1,6}-{3717,3017,0,1,7}-{3723,3019,0,1,5}-{3731,3018,0,1,1}-{3734,3028,0,1,7}-{3743,3038,0,1,4}-{3749,2978,0,1,7}-{3756,2966,0,1,2}-{3759,2962,0,1,2}-{3749,2968,0,1,2}-{3757,2980,0,0,5}-{3742,3036,0,1,1}-{3747,3040,0,1,4}-{3748,3030,0,1,6}-{3748,3019,0,1,1}-{3745,3016,0,1,4}-{3741,3020,0,1,3}-{3727,3039,0,1,3}-{3734,3046,0,1,1}-{3736,3050,0,1,6}-{3735,3053,0,1,3}-{3741,3053,0,1,6}-{3756,3030,0,1,3}-{3754,3024,0,1,4}-{3769,3039,0,1,6}-{3766,3045,0,1,7}-{3764,3042,0,1,1}"
- },
- {
- "npc_id": "4348",
- "loc_data": "{3676,3017,0,1,3}-{3687,3018,0,1,3}-{3707,3015,0,1,6}-{3729,3021,0,1,3}"
- },
- {
- "npc_id": "4349",
- "loc_data": "{3664,3018,0,1,6}-{3658,3012,0,1,4}-{3718,3030,0,1,4}-{3757,3009,0,1,3}-{3729,2984,0,1,4}-{3720,3000,0,1,4}-{3727,3051,0,1,4}-{3809,3028,0,1,6}"
- },
- {
- "npc_id": "4350",
- "loc_data": "{3680,3026,0,1,4}-{3675,3029,0,1,3}-{3711,3028,0,1,4}-{3733,3011,0,1,4}-{3793,3036,0,1,4}-{3698,3046,0,1,6}"
- },
- {
- "npc_id": "4351",
- "loc_data": "{3694,3019,0,1,4}-{3760,3015,0,1,1}-{3758,3034,0,1,2}-{3728,2965,0,1,7}-{3787,3026,0,1,6}-{3714,3049,0,1,7}-{3770,3008,0,1,4}"
- },
- {
- "npc_id": "4352",
- "loc_data": "{3683,3034,0,1,4}-{3719,3037,0,1,7}-{3770,3027,0,1,5}-{3747,3007,0,1,4}-{3735,2957,0,1,2}-{3719,3011,0,1,3}-{3727,3003,0,1,3}-{3787,3035,0,1,1}"
- },
- {
- "npc_id": "4353",
- "loc_data": "{3719,9358,0,1,6}-{3738,9378,0,1,0}-{3765,9422,0,1,1}-{3741,9436,0,1,6}-{3727,9455,0,1,2}-{3780,9456,0,1,2}-{3827,9430,0,1,2}-{3737,9413,0,1,0}-{3735,9444,0,1,3}-{3819,9422,0,1,2}"
- },
- {
- "npc_id": "4354",
- "loc_data": "{3739,9369,0,1,0}-{3737,9350,0,1,4}-{3721,9349,0,1,4}-{3733,9396,0,1,6}-{3813,9445,0,1,0}-{3749,9461,0,1,0}-{3786,9443,0,1,6}-{3783,9430,0,1,5}-{3821,9443,0,1,4}-{3746,9423,0,1,0}-{3764,9404,0,1,6}-{3790,9456,0,1,7}-{3760,9417,0,1,3}-{3760,9451,0,1,6}-{3732,9368,0,1,1}"
- },
- {
- "npc_id": "4355",
- "loc_data": "{3728,9349,0,1,3}-{3749,9413,0,1,4}-{3810,9448,0,1,4}-{3752,9398,0,1,4}-{3721,9419,0,1,3}-{3786,9412,0,1,3}-{3797,9452,0,1,4}-{3754,9408,0,1,4}-{3723,9377,0,1,4}"
- },
- {
- "npc_id": "4356",
- "loc_data": "{3755,9391,0,1,5}-{3723,9441,0,1,4}-{3766,9459,0,1,4}-{3800,9414,0,1,2}-{3821,9418,0,1,3}-{3810,9462,0,1,0}-{3809,9440,0,1,2}-{3748,9450,0,1,6}-{3765,9424,0,1,2}-{3787,9464,0,1,0}"
- },
- {
- "npc_id": "4357",
- "loc_data": "{3771,9450,0,1,4}-{3730,9443,0,1,4}-{3808,9423,0,1,7}-{3797,9427,0,1,4}-{3833,9438,0,1,6}-{3834,9458,0,1,6}-{3797,9440,0,1,1}-{3793,9441,0,1,4}-{3829,9425,0,1,7}"
- },
- {
- "npc_id": "4358",
- "loc_data": "{3751,2977,0,1,2}"
- },
- {
- "npc_id": "4359",
- "loc_data": "{3669,2977,0,1,3}"
- },
- {
- "npc_id": "4375",
- "loc_data": "{3012,3192,1,0,2}"
- },
- {
- "npc_id": "4376",
- "loc_data": "{3081,3421,0,1,3}"
- },
- {
- "npc_id": "4381",
- "loc_data": "{3024,10152,0,0,0}-{3020,10148,0,0,0}-{3023,10145,0,0,0}-{3018,10140,0,0,0}-{3033,10139,0,0,0}-{3028,10137,0,0,0}-{2361,5241,0,0,1}-{2358,5240,0,0,1}-{2362,5239,0,0,1}-{2364,5240,0,0,1}-{2364,5242,0,0,1}-{2372,9743,0,1,1}-{2373,9745,0,1,1}-{2374,9742,0,1,1}-{2377,9750,0,1,1}-{2378,9752,0,1,1}-{2377,9754,0,1,1}"
- },
- {
- "npc_id": "4382",
- "loc_data": "{3162,3716,0,0,0}-{3175,3717,0,0,0}-{3161,3727,0,0,0}-{2304,5160,0,0,2}-{2324,5210,0,0,2}-{2322,5201,0,0,7}-{2324,5210,0,0,2}-{2322,5201,0,0,7}-{2327,5205,0,0,7}-{2328,5200,0,0,7}-{2326,5198,0,0,7}-{2331,5198,0,0,4}-{2333,5201,0,0,4}-{2333,5199,0,0,2}"
- },
- {
- "npc_id": "4383",
- "loc_data": "{2321,5225,0,1,3}-{2321,5223,0,1,4}-{2317,5229,0,1,7}-{2322,5225,0,1,1}-{2325,5231,0,1,6}-{2321,5225,0,1,1}-{2314,5227,0,1,2}-{2312,5229,0,1,2}-{2330,5229,0,1,1}-{2324,5233,0,1,4}-{2320,5232,0,1,3}-{2324,5237,0,1,1}-{2329,5229,0,1,6}-{2315,5227,0,1,7}-{2318,5226,0,1,6}-{2322,5222,0,1,6}"
- },
- {
- "npc_id": "4384",
- "loc_data": "{2355,5204,0,1,3}-{2347,5195,0,1,0}-{2336,5202,0,1,4}-{2332,5201,0,1,3}-{2327,5201,0,1,1}-{2328,5199,0,1,6}"
- },
- {
- "npc_id": "4385",
- "loc_data": "{2350,5201,0,1,1}-{2353,5192,0,1,1}-{2324,5203,0,1,1}-{2333,5204,0,1,4}-{2264,5136,0,1,6}-{2326,5197,0,1,5}"
- },
- {
- "npc_id": "4386",
- "loc_data": "{2312,5188,0,1,6}"
- },
- {
- "npc_id": "4387",
- "loc_data": "{2350,5192,0,1,6}-{2350,5191,0,1,4}-{2347,5188,0,1,2}"
- },
- {
- "npc_id": "4388",
- "loc_data": "{2305,5231,0,0,2}-{2312,5225,0,0,2}-{2314,5240,0,0,2}-{2310,5241,0,0,2}-{2308,5246,0,0,2}-{2309,5245,0,0,2}-{2315,5237,0,0,2}"
- },
- {
- "npc_id": "4389",
- "loc_data": "{2013,5238,0,1,0}"
- },
- {
- "npc_id": "4390",
- "loc_data": "{1984,5160,0,1,2}-{2040,5190,0,1,3}-{2044,5187,0,1,2}-{2042,5191,0,1,1}-{2045,5190,0,1,7}-{2041,5187,0,1,2}"
- },
- {
- "npc_id": "4391",
- "loc_data": "{1952,5192,0,1,2}-{1993,5240,0,1,4}-{1991,5235,0,1,4}-{1990,5240,0,1,3}-{1989,5237,0,1,6}-{2009,5202,0,1,1}-{2005,5199,0,1,3}"
- },
- {
- "npc_id": "4392",
- "loc_data": "{2033,5233,0,1,4}-{2033,5233,0,1,7}-{2026,5236,0,1,1}-{1984,5160,0,1,7}"
- },
- {
- "npc_id": "4393",
- "loc_data": "{2045,5222,0,1,4}-{1944,5152,0,1,2}-{1993,5190,0,1,6}-{1993,5190,0,1,4}-{2044,5216,0,1,4}-{2008,5203,0,1,1}-{2006,5208,0,1,1}-{2037,5214,0,1,3}-{2037,5210,0,1,1}"
- },
- {
- "npc_id": "4394",
- "loc_data": "{1997,5244,0,1,3}-{1992,5238,0,1,5}-{1990,5234,0,1,1}-{2010,5191,0,1,7}-{2018,5188,0,1,4}-{1989,5231,0,1,4}-{2018,5187,0,1,6}"
- },
- {
- "npc_id": "4395",
- "loc_data": "{2016,5237,0,1,7}-{1988,5190,0,1,2}-{2039,5216,0,1,6}"
- },
- {
- "npc_id": "4396",
- "loc_data": "{2034,5243,0,1,5}-{2034,5239,0,1,5}-{2032,5243,0,1,4}-{2034,5232,0,1,1}-{2033,5240,0,1,1}-{2029,5230,0,1,6}-{2030,5234,0,1,4}-{2029,5230,0,1,1}-{2029,5233,0,1,2}-{2031,5244,0,1,1}-{2039,5208,0,1,4}-{2029,5235,0,1,6}-{2028,5234,0,1,6}-{2030,5237,0,1,4}-{2033,5238,0,1,4}-{2030,5238,0,1,4}-{2032,5238,0,1,3}-{2027,5238,0,1,6}-{2034,5239,0,1,0}-{2016,5235,0,1,5}-{2015,5237,0,1,3}-{2004,5244,0,1,4}-{2005,5241,0,1,4}-{2035,5245,0,1,5}-{2004,5240,0,1,1}-{2027,5235,0,1,5}-{2027,5235,0,1,4}-{2027,5236,0,1,6}-{1999,5244,0,1,4}-{1995,5234,0,1,6}-{1993,5242,0,1,1}-{1990,5239,0,1,1}-{1990,5243,0,1,7}-{1989,5230,0,1,6}-{1990,5224,0,1,5}-{1993,5222,0,1,7}-{1986,5221,0,1,3}-{1990,5221,0,1,3}-{1986,5222,0,1,6}-{2002,5215,0,1,1}-{1996,5215,0,1,1}-{1994,5215,0,1,2}-{2002,5215,0,1,6}-{1995,5208,0,1,1}-{1993,5206,0,1,4}-{1986,5204,0,1,3}-{1986,5201,0,1,6}-{2001,5201,0,1,6}-{1987,5200,0,1,3}-{1986,5199,0,1,6}-{2009,5198,0,1,6}-{1995,5197,0,1,3}-{2009,5194,0,1,3}-{1944,5152,0,1,2}-{2005,5191,0,1,3}-{2004,5190,0,1,4}-{1991,5190,0,1,1}-{2003,5185,0,1,4}-{2004,5190,0,1,4}-{2004,5188,0,1,1}-{2005,5188,0,1,6}-{2008,5192,0,1,6}-{2008,5193,0,1,3}-{2009,5200,0,1,7}-{2010,5192,0,1,4}-{2010,5194,0,1,4}-{2013,5190,0,1,6}-{2018,5189,0,1,6}-{2018,5192,0,1,6}-{2018,5187,0,1,4}-{1993,5205,0,1,4}-{1994,5206,0,1,3}-{1989,5206,0,1,0}-{1993,5210,0,1,3}-{1989,5200,0,1,4}-{2002,5215,0,1,1}-{2022,5193,0,1,3}-{1995,5220,0,1,1}-{1992,5222,0,1,6}-{1992,5222,0,1,6}-{1988,5201,0,1,4}-{1988,5224,0,1,4}-{1989,5206,0,1,4}-{1987,5225,0,1,4}-{1988,5225,0,1,4}-{1986,5204,0,1,3}-{1987,5226,0,1,4}-{1990,5227,0,1,3}-{1993,5200,0,1,7}-{1990,5228,0,1,4}-{2004,5200,0,1,6}-{1990,5227,0,1,4}-{1990,5224,0,1,6}-{1994,5223,0,1,4}-{2036,5201,0,1,6}-{2038,5215,0,1,4}-{2042,5208,0,1,1}-{2045,5204,0,1,1}-{2046,5205,0,1,3}-{2028,5195,0,1,3}-{2026,5195,0,1,0}-{2039,5193,0,1,3}-{2025,5193,0,1,1}-{2022,5193,0,1,6}-{2043,5192,0,1,2}-{2018,5192,0,1,1}-{2045,5192,0,1,1}-{2032,5190,0,1,1}-{2030,5189,0,1,4}-{2024,5187,0,1,3}-{2038,5186,0,1,4}-{2038,5185,0,1,3}-{2033,5185,0,1,3}-{2016,5186,0,1,1}-{2017,5194,0,1,1}-{2024,5193,0,1,4}-{2008,5201,0,1,4}-{2005,5220,0,1,1}-{2005,5204,0,1,4}-{2037,5203,0,1,3}-{2037,5206,0,1,4}-{2041,5208,0,1,1}"
- },
- {
- "npc_id": "4397",
- "loc_data": "{2072,5200,0,1,5}-{2145,5251,0,1,3}-{2153,5253,0,1,1}-{2149,5255,0,1,3}-{2146,5252,0,1,5}-{2146,5261,0,1,6}-{2147,5254,0,1,4}"
- },
- {
- "npc_id": "4398",
- "loc_data": "{2160,5282,0,1,3}-{2162,5284,0,1,1}-{2164,5281,0,1,7}"
- },
- {
- "npc_id": "4399",
- "loc_data": "{2122,5290,0,1,0}-{2131,5297,0,1,6}-{2119,5297,0,1,4}-{2120,5302,0,1,3}-{2080,5240,0,1,2}-{2129,5306,0,1,3}-{2123,5304,0,1,1}-{2130,5306,0,1,4}-{2163,5301,0,1,5}-{2166,5306,0,1,0}-{2169,5303,0,1,4}-{2122,5291,0,1,0}-{2119,5296,0,1,3}-{2131,5297,0,1,6}-{2125,5302,0,1,0}-{2127,5304,0,1,4}-{2165,5302,0,1,3}-{2163,5301,0,1,4}-{2168,5306,0,1,4}-{2132,5300,0,1,6}-{2132,5302,0,1,4}"
- },
- {
- "npc_id": "4400",
- "loc_data": "{3018,10313,0,1,4}-{3016,10315,0,1,4}-{3018,10322,0,1,4}-{3024,10326,0,1,3}-{3030,10332,0,1,4}-{3029,10337,0,1,6}-{3034,10342,0,1,3}-{2072,5200,0,1,7}-{2130,5267,0,1,7}-{2140,5252,0,1,5}-{2141,5252,0,1,1}-{2142,5252,0,1,0}-{2148,5255,0,1,3}-{2125,5270,0,1,1}-{2148,5257,0,1,1}-{2117,5274,0,1,4}-{2146,5307,0,1,2}-{2145,5305,0,1,5}-{2152,5307,0,1,4}-{2148,5252,0,1,0}-{2142,5262,0,1,3}-{2124,5275,0,1,4}-{2121,5276,0,1,3}-{2148,5304,0,1,0}-{2146,5305,0,1,5}-{2148,5304,0,1,1}-{2151,5304,0,1,6}-{2145,5306,0,1,3}-{2134,5272,0,1,6}"
- },
- {
- "npc_id": "4401",
- "loc_data": "{2124,5273,0,1,1}-{2072,5200,0,1,6}-{2128,5270,0,1,4}-{2117,5274,0,1,3}-{2154,5273,0,1,3}-{2167,5259,0,1,6}-{2170,5257,0,1,1}-{2170,5256,0,1,0}-{2171,5256,0,1,4}-{2167,5256,0,1,3}-{2153,5273,0,1,3}-{2153,5270,0,1,1}-{2171,5255,0,1,2}-{2168,5250,0,1,4}-{2168,5251,0,1,3}-{2131,5264,0,1,6}-{2096,5248,0,1,6}-{2157,5272,0,1,6}-{2150,5268,0,1,0}-{2133,5272,0,1,2}-{2157,5274,0,1,1}-{2156,5270,0,1,3}-{2154,5271,0,1,5}"
- },
- {
- "npc_id": "4402",
- "loc_data": "{2080,5240,0,1,5}-{2171,5283,0,1,6}-{2170,5287,0,1,6}-{2170,5281,0,1,6}-{2172,5272,0,1,4}-{2172,5272,0,1,4}"
- },
- {
- "npc_id": "4403",
- "loc_data": "{2096,5248,0,1,4}-{2172,5276,0,1,1}-{2172,5284,0,1,1}-{2172,5281,0,1,2}"
- },
- {
- "npc_id": "4404",
- "loc_data": "{1872,5242,0,1,3}-{1873,5230,0,1,2}-{1870,5235,0,1,3}-{1872,5217,0,1,6}-{1873,5212,0,1,4}-{1877,5218,0,1,2}-{1877,5216,0,1,3}-{1875,5218,0,1,6}-{1808,5152,0,1,2}-{1871,5191,0,1,4}-{1868,5188,0,1,4}-{1861,5189,0,1,3}-{1882,5216,0,1,6}-{1874,5215,0,1,5}-{1873,5238,0,1,3}"
- },
- {
- "npc_id": "4406",
- "loc_data": "{1898,5197,0,1,6}-{1898,5191,0,1,7}-{1890,5195,0,1,3}-{1893,5191,0,1,4}-{1903,5190,0,1,0}-{1889,5190,0,1,3}-{1889,5190,0,1,4}-{1885,5191,0,1,4}-{1900,5208,0,1,1}-{1900,5210,0,1,1}-{1903,5243,0,1,6}-{1848,5176,0,1,2}-{1901,5245,0,1,4}-{1894,5243,0,1,5}-{1890,5242,0,1,6}-{1889,5244,0,1,4}-{1897,5196,0,1,1}-{1902,5207,0,1,3}"
- },
- {
- "npc_id": "4407",
- "loc_data": "{1860,5226,0,1,0}-{1859,5200,0,1,0}-{1860,5222,0,1,4}-{1865,5205,0,1,4}-{1862,5205,0,1,7}-{1862,5205,0,1,7}-{1864,5206,0,1,7}"
- },
- {
- "npc_id": "4408",
- "loc_data": "{1860,5215,0,1,5}-{1864,5218,0,1,1}"
- },
- {
- "npc_id": "4409",
- "loc_data": "{1864,5226,0,1,1}-{1859,5220,0,1,4}-{1861,5224,0,1,6}"
- },
- {
- "npc_id": "4410",
- "loc_data": "{1890,5205,0,1,6}-{1897,5232,0,1,6}-{1906,5236,0,1,3}-{1848,5176,0,1,2}-{1904,5235,0,1,6}-{1895,5227,0,1,3}-{1863,5221,0,1,4}"
- },
- {
- "npc_id": "4411",
- "loc_data": "{1882,5201,0,1,0}-{1884,5207,0,1,3}-{1912,5239,0,1,4}-{1912,5244,0,1,5}-{1890,5204,0,1,5}"
- },
- {
- "npc_id": "4412",
- "loc_data": "{1880,5200,0,1,6}-{1911,5241,0,1,0}-{1893,5228,0,1,3}"
- },
- {
- "npc_id": "4413",
- "loc_data": "{1871,5228,0,1,6}-{1872,5233,0,1,1}-{2645,3580,0,1,4}"
- },
- {
- "npc_id": "4414",
- "loc_data": "{1808,5152,0,1,2}-{1890,5215,0,1,5}-{1892,5216,0,1,1}-{1889,5223,0,1,3}-{1892,5224,0,1,2}-{1893,5219,0,1,5}"
- },
- {
- "npc_id": "4415",
- "loc_data": "{1874,5230,0,1,3}-{1870,5232,0,1,4}-{1858,5235,0,1,3}-{1871,5241,0,1,7}-{1860,5223,0,1,4}-{1862,5222,0,1,4}-{1874,5234,0,1,5}-{1874,5230,0,1,5}-{1875,5219,0,1,5}-{1876,5215,0,1,3}-{1876,5220,0,1,6}-{1859,5206,0,1,5}-{1877,5216,0,1,4}-{1862,5201,0,1,5}-{1858,5201,0,1,6}-{1874,5201,0,1,2}-{1858,5202,0,1,0}-{1860,5200,0,1,7}-{1875,5197,0,1,6}-{1875,5201,0,1,2}-{1861,5194,0,1,3}-{1861,5224,0,1,6}-{1808,5152,0,1,2}-{1860,5192,0,1,2}-{1874,5188,0,1,7}-{1867,5188,0,1,4}-{1866,5189,0,1,4}-{1876,5189,0,1,1}-{1876,5196,0,1,3}-{1876,5188,0,1,4}-{1876,5191,0,1,4}-{1877,5191,0,1,4}-{1877,5197,0,1,6}-{1881,5198,0,1,4}-{1882,5197,0,1,5}-{1883,5203,0,1,3}-{1882,5198,0,1,4}-{1863,5205,0,1,4}-{1883,5205,0,1,5}-{1861,5205,0,1,5}-{1887,5204,0,1,3}-{1883,5205,0,1,3}-{1884,5206,0,1,1}-{1876,5215,0,1,6}-{1879,5215,0,1,2}-{1870,5217,0,1,6}-{1881,5221,0,1,1}-{1871,5218,0,1,1}-{1872,5191,0,1,3}-{1874,5219,0,1,5}-{1884,5228,0,1,4}-{1882,5231,0,1,7}-{1882,5234,0,1,5}-{1879,5234,0,1,6}-{1897,5234,0,1,6}-{1884,5234,0,1,4}-{1884,5235,0,1,3}-{1885,5236,0,1,6}-{1879,5239,0,1,4}-{1893,5243,0,1,7}-{1880,5243,0,1,7}-{1882,5241,0,1,1}-{1902,5242,0,1,4}-{1848,5176,0,1,2}-{1901,5244,0,1,3}-{1910,5243,0,1,5}-{1911,5235,0,1,3}-{1881,5243,0,1,2}-{1879,5234,0,1,3}-{1880,5234,0,1,4}-{1879,5239,0,1,1}-{1874,5230,0,1,4}-{1874,5236,0,1,4}-{1911,5235,0,1,5}-{1912,5243,0,1,4}-{1912,5238,0,1,3}-{1913,5244,0,1,4}-{1890,5244,0,1,4}-{1907,5204,0,1,1}-{1909,5204,0,1,1}-{1908,5204,0,1,3}-{1889,5206,0,1,3}-{1890,5207,0,1,1}-{1890,5207,0,1,2}-{1912,5237,0,1,7}"
- },
- {
- "npc_id": "4422",
- "loc_data": "{2377,4450,0,0,0}-{2381,4459,0,0,0}-{2388,4425,0,0,0}-{2394,4440,0,0,0}-{2418,4447,0,0,0}-{2427,4461,0,0,0}"
- },
- {
- "npc_id": "4423",
- "loc_data": "{2387,4456,0,0,0}-{2423,4461,0,0,0}"
- },
- {
- "npc_id": "4424",
- "loc_data": "{2396,4455,0,0,0}"
- },
- {
- "npc_id": "4425",
- "loc_data": "{2398,4453,0,0,0}"
- },
- {
- "npc_id": "4431",
- "loc_data": "{2388,4470,0,0,0}"
- },
- {
- "npc_id": "4437",
- "loc_data": "{2447,4429,0,1,0}"
- },
- {
- "npc_id": "4438",
- "loc_data": "{3028,4498,0,1,3}-{3046,4493,0,1,4}"
- },
- {
- "npc_id": "4439",
- "loc_data": "{3035,4507,0,1,6}-{3041,4493,0,1,0}"
- },
- {
- "npc_id": "4443",
- "loc_data": "{2451,4424,0,1,6}-{2452,4428,0,1,3}-{2443,4423,0,1,7}-{2446,4422,0,1,3}-{2443,4431,0,1,1}-{2441,4427,0,1,1}-{2463,4422,0,1,4}-{2478,4420,0,1,6}-{2489,4428,0,1,6}-{2478,4452,0,1,3}-{2474,4444,0,1,6}-{2493,4454,0,1,3}-{2486,4463,0,1,4}-{2486,4469,0,1,7}-{2479,4456,0,1,4}-{2477,4462,0,1,3}"
- },
- {
- "npc_id": "4455",
- "loc_data": "{2410,4434,0,0,0}"
- },
- {
- "npc_id": "4472",
- "loc_data": "{2524,3056,0,1,2}"
- },
- {
- "npc_id": "4474",
- "loc_data": "{3214,3252,0,0,0}-{3214,3253,0,0,0}-{3214,3254,0,0,0}"
- },
- {
- "npc_id": "4478",
- "loc_data": "{3291,2787,0,0,6}"
- },
- {
- "npc_id": "4479",
- "loc_data": "{2952,3477,0,1,0}-{2959,3501,0,1,3}"
- },
- {
- "npc_id": "4481",
- "loc_data": "{2943,3474,0,1,3}"
- },
- {
- "npc_id": "4482",
- "loc_data": "{2952,3505,0,1,7}-{2950,3501,0,1,4}"
- },
- {
- "npc_id": "4483",
- "loc_data": "{2944,3467,0,1,6}-{2961,3508,0,1,6}-{2953,3467,0,1,3}"
- },
- {
- "npc_id": "4484",
- "loc_data": "{2956,3496,0,1,6}"
- },
- {
- "npc_id": "4485",
- "loc_data": "{2951,3509,0,1,4}"
- },
- {
- "npc_id": "4487",
- "loc_data": "{2943,3478,0,1,3}"
- },
- {
- "npc_id": "4488",
- "loc_data": "{2946,3474,0,1,4}-{2956,3494,0,1,3}"
- },
- {
- "npc_id": "4489",
- "loc_data": "{2946,3469,0,1,5}-{2943,3487,0,1,3}"
- },
- {
- "npc_id": "4491",
- "loc_data": "{2963,3510,0,1,2}-{2949,3475,0,1,3}"
- },
- {
- "npc_id": "4492",
- "loc_data": "{2953,3509,0,1,4}-{2987,3426,0,1,6}"
- },
- {
- "npc_id": "4493",
- "loc_data": "{2957,3513,0,1,6}"
- },
- {
- "npc_id": "4494",
- "loc_data": "{2957,3512,0,1,4}"
- },
- {
- "npc_id": "4495",
- "loc_data": "{2957,3512,0,1,5}"
- },
- {
- "npc_id": "4511",
- "loc_data": "{2149,3866,0,0,7}"
- },
- {
- "npc_id": "4512",
- "loc_data": "{2092,3930,0,1,4}"
- },
- {
- "npc_id": "4513",
- "loc_data": "{2450,4647,0,1,5}"
- },
- {
- "npc_id": "4514",
- "loc_data": "{2079,3923,0,1,7}"
- },
- {
- "npc_id": "4515",
- "loc_data": "{2081,3899,0,1,1}"
- },
- {
- "npc_id": "4516",
- "loc_data": "{2096,3907,0,1,6}"
- },
- {
- "npc_id": "4517",
- "loc_data": "{2086,3915,0,1,0}"
- },
- {
- "npc_id": "4518",
- "loc_data": "{2106,3907,0,1,6}"
- },
- {
- "npc_id": "4519",
- "loc_data": "{2098,3921,0,0,6}-{2099,3921,0,0,6}-{2097,3921,0,0,6}"
- },
- {
- "npc_id": "4524",
- "loc_data": "{2083,3903,0,1,3}"
- },
- {
- "npc_id": "4525",
- "loc_data": "{2098,3894,0,1,3}"
- },
- {
- "npc_id": "4526",
- "loc_data": "{2103,3914,0,1,7}"
- },
- {
- "npc_id": "4527",
- "loc_data": "{2071,3877,0,1,2}-{2084,3868,0,1,1}-{2089,3864,0,1,4}"
- },
- {
- "npc_id": "4528",
- "loc_data": "{2115,3864,0,1,6}-{2105,3848,0,1,1}-{2122,3946,0,1,3}"
- },
- {
- "npc_id": "4529",
- "loc_data": "{2070,3879,0,1,7}-{2097,3862,0,1,3}-{2118,3852,0,1,4}-{2144,3853,0,1,5}"
- },
- {
- "npc_id": "4530",
- "loc_data": "{2076,3866,0,1,1}-{2133,3874,0,1,4}-{2107,3945,0,1,1}"
- },
- {
- "npc_id": "4531",
- "loc_data": "{2103,3866,0,1,3}-{2134,3851,0,1,4}-{2116,3950,0,1,0}"
- },
- {
- "npc_id": "4534",
- "loc_data": "{3206,5487,0,1,6}-{3200,5492,0,1,1}"
- },
- {
- "npc_id": "4536",
- "loc_data": "{2213,3794,0,0,3}"
- },
- {
- "npc_id": "4537",
- "loc_data": "{2621,3688,0,0,6}"
- },
- {
- "npc_id": "4539",
- "loc_data": "{2079,3925,0,1,1}"
- },
- {
- "npc_id": "4540",
- "loc_data": "{2221,3797,2,1,3}-{2137,3899,2,1,2}"
- },
- {
- "npc_id": "4560",
- "loc_data": "{3062,3260,0,1,6}"
- },
- {
- "npc_id": "4561",
- "loc_data": "{2615,3855,0,1,0}"
- },
- {
- "npc_id": "4562",
- "loc_data": "{2799,3200,0,1,0}"
- },
- {
- "npc_id": "4563",
- "loc_data": "{3003,9798,0,1,3}"
- },
- {
- "npc_id": "4568",
- "loc_data": "{3364,3338,0,1,6}"
- },
- {
- "npc_id": "4570",
- "loc_data": "{3201,3301,0,1,3}-{3115,3276,0,1,6}"
- },
- {
- "npc_id": "4571",
- "loc_data": "{3205,3298,0,1,3}-{3095,3286,0,1,4}-{3098,3225,0,1,4}-{3056,3248,0,1,0}"
- },
- {
- "npc_id": "4572",
- "loc_data": "{2448,3510,1,0,4}"
- },
- {
- "npc_id": "4573",
- "loc_data": "{2441,3501,1,1,3}"
- },
- {
- "npc_id": "4575",
- "loc_data": "{2441,3503,1,1,4}"
- },
- {
- "npc_id": "4578",
- "loc_data": "{2933,2972,0,0,0}"
- },
- {
- "npc_id": "4580",
- "loc_data": "{2572,3299,1,0,0}"
- },
- {
- "npc_id": "4585",
- "loc_data": "{3115,3160,0,0,0}"
- },
- {
- "npc_id": "4586",
- "loc_data": "{2593,3087,0,1,4}"
- },
- {
- "npc_id": "4587",
- "loc_data": "{2449,3503,1,0,6}"
- },
- {
- "npc_id": "4588",
- "loc_data": "{2448,3500,1,0,3}"
- },
- {
- "npc_id": "4597",
- "loc_data": "{2375,3433,0,1,0}"
- },
- {
- "npc_id": "4599",
- "loc_data": "{2417,3513,0,1,4}"
- },
- {
- "npc_id": "4603",
- "loc_data": "{3008,3514,0,1,3}"
- },
- {
- "npc_id": "4604",
- "loc_data": "{3017,3513,0,1,0}-{3018,3515,0,1,1}"
- },
- {
- "npc_id": "4605",
- "loc_data": "{3018,3512,0,1,7}-{3019,3514,0,1,1}-{3019,3516,0,1,1}"
- },
- {
- "npc_id": "4606",
- "loc_data": "{3017,3514,0,1,4}"
- },
- {
- "npc_id": "4607",
- "loc_data": "{3030,3505,0,0,0}"
- },
- {
- "npc_id": "4611",
- "loc_data": "{3076,3259,0,0,0}"
- },
- {
- "npc_id": "4649",
- "loc_data": "{2142,3122,0,1,4}-{2147,3122,0,1,3}"
- },
- {
- "npc_id": "4650",
- "loc_data": "{3041,3194,0,1,4}"
- },
- {
- "npc_id": "4651",
- "loc_data": "{2760,3239,0,1,3}-{2143,3121,0,1,6}"
- },
- {
- "npc_id": "4652",
- "loc_data": "{2674,3144,0,1,3}-{3701,3501,0,1,6}"
- },
- {
- "npc_id": "4653",
- "loc_data": "{2794,3414,0,1,6}-{3040,3192,0,1,3}-{2954,3154,0,1,6}-{3671,2930,0,1,6}"
- },
- {
- "npc_id": "4654",
- "loc_data": "{3001,3033,0,1,6}-{2674,3146,0,1,6}-{2145,3122,0,1,3}"
- },
- {
- "npc_id": "4655",
- "loc_data": "{2954,3157,0,1,3}-{3701,3503,0,1,1}"
- },
- {
- "npc_id": "4656",
- "loc_data": "{2795,3414,0,1,6}-{3038,3192,0,1,3}-{2760,3238,0,1,3}"
- },
- {
- "npc_id": "4659",
- "loc_data": "{3095,3232,0,1,6}-{3095,3231,0,1,0}-{3225,3370,0,1,4}-{3230,3370,0,1,3}"
- },
- {
- "npc_id": "4660",
- "loc_data": "{3225,3369,0,1,3}-{3226,3371,0,1,7}-{3230,3372,0,1,0}-{3230,3370,0,1,3}-{3229,3368,0,1,1}-{3227,3367,0,1,1}"
- },
- {
- "npc_id": "4665",
- "loc_data": "{2894,9766,0,1,0}-{2904,9797,0,1,0}-{2918,9800,0,1,0}"
- },
- {
- "npc_id": "4666",
- "loc_data": "{2893,9769,0,1,0}-{2912,9797,0,1,0}-{2909,9807,0,1,0}"
- },
- {
- "npc_id": "4670",
- "loc_data": "{3192,3832,0,1,6}-{3211,3813,0,1,6}"
- },
- {
- "npc_id": "4671",
- "loc_data": "{3189,3836,0,1,6}-{3181,3815,0,1,6}"
- },
- {
- "npc_id": "4672",
- "loc_data": "{3212,3847,0,1,6}-{3221,3827,0,1,6}"
- },
- {
- "npc_id": "4673",
- "loc_data": "{2829,9827,0,1,0}"
- },
- {
- "npc_id": "4675",
- "loc_data": "{3048,10266,0,1,4}"
- },
- {
- "npc_id": "4676",
- "loc_data": "{3054,10269,0,1,4}"
- },
- {
- "npc_id": "4677",
- "loc_data": "{3335,3687,0,1,4}-{3338,3700,0,1,2}-{3316,5448,0,1,2}-{3107,10065,0,1,0}-{3299,5545,0,1,6}"
- },
- {
- "npc_id": "4678",
- "loc_data": "{3335,3701,0,1,6}-{3350,3687,0,1,5}-{3305,5454,0,1,6}-{3110,10076,0,1,0}"
- },
- {
- "npc_id": "4679",
- "loc_data": "{3333,3694,0,1,6}-{3341,3685,0,1,4}-{3118,10068,0,1,0}-{3312,5558,0,1,1}"
- },
- {
- "npc_id": "4680",
- "loc_data": "{3349,3696,0,1,5}-{3120,10080,0,1,0}"
- },
- {
- "npc_id": "4681",
- "loc_data": "{2904,9802,0,1,0}"
- },
- {
- "npc_id": "4682",
- "loc_data": "{2896,9796,0,1,0}"
- },
- {
- "npc_id": "4685",
- "loc_data": "{2957,3895,0,1,4}-{3209,5552,0,1,1}-{3223,5555,0,1,4}-{3220,5548,0,1,6}-{3220,5557,0,1,4}"
- },
- {
- "npc_id": "4686",
- "loc_data": "{2827,3512,0,1,5}-{2957,3898,0,1,6}-{2946,3898,0,1,7}-{3213,5548,0,1,4}"
- },
- {
- "npc_id": "4688",
- "loc_data": "{2700,3212,0,1,6}"
- },
- {
- "npc_id": "4689",
- "loc_data": "{2902,9736,0,1,0}"
- },
- {
- "npc_id": "4690",
- "loc_data": "{3256,3624,0,1,5}-{3105,3876,0,1,2}-{2912,9731,0,1,0}"
- },
- {
- "npc_id": "4693",
- "loc_data": "{2912,9741,0,1,0}-{2906,9736,0,1,0}"
- },
- {
- "npc_id": "4694",
- "loc_data": "{3098,3870,0,1,1}-{3020,3854,0,1,7}-{2843,9558,0,1,1}-{2840,9605,0,1,4}-{3053,10124,0,1,0}-{3056,10140,0,1,0}"
- },
- {
- "npc_id": "4695",
- "loc_data": "{3097,3696,0,1,4}-{3017,3851,0,1,2}-{2839,9565,0,1,3}-{2837,9601,0,1,4}-{2840,3279,0,1,6}-{3048,10134,0,1,0}-{3061,10138,0,1,0}"
- },
- {
- "npc_id": "4696",
- "loc_data": "{3118,3695,0,1,6}-{2931,9808,0,1,0}-{2930,9799,0,1,0}-{3010,3851,0,1,1}-{2839,9560,0,1,4}-{2846,9613,0,1,6}-{3062,10131,0,1,0}"
- },
- {
- "npc_id": "4697",
- "loc_data": "{3125,3706,0,1,5}-{3331,3853,0,1,2}-{3016,3841,0,1,4}-{2845,9557,0,1,2}-{2839,9624,0,1,6}-{2825,3277,0,1,3}-{3065,10125,0,1,0}"
- },
- {
- "npc_id": "4698",
- "loc_data": "{3139,3712,0,1,5}-{3306,3890,0,1,6}-{3085,10093,0,1,0}-{3090,10084,0,1,0}-{2861,9752,0,1,4}-{2363,9776,0,1,1}-{2361,9755,0,1,1}-{2365,9754,0,1,1}-{2362,9751,0,1,1}"
- },
- {
- "npc_id": "4699",
- "loc_data": "{3035,10245,0,1,4}-{3159,3707,0,1,3}-{3301,3871,0,1,5}-{3097,10092,0,1,0}-{3082,10083,0,1,0}-{2629,9477,2,0,0}-{2640,9502,2,0,1}-{2359,9741,0,1,1}"
- },
- {
- "npc_id": "4700",
- "loc_data": "{3030,10259,0,1,3}-{3144,3701,0,1,4}-{3279,3876,0,1,4}-{3094,10092,0,1,0}-{3089,10081,0,1,0}-{2633,9488,2,0,6}-{2862,9750,0,1,7}-{2358,9737,0,1,1}-{2366,9763,0,1,1}"
- },
- {
- "npc_id": "4701",
- "loc_data": "{3028,10250,0,1,4}-{3149,3690,0,1,4}-{3286,3901,0,1,3}-{3089,10089,0,1,0}-{3085,10081,0,1,0}-{2628,9489,2,0,0}-{2631,9504,2,0,5}-{2361,9755,0,1,1}-{2363,9743,0,1,1}-{2363,9772,0,1,1}"
- },
- {
- "npc_id": "4702",
- "loc_data": "{2869,9775,0,1,0}-{2853,9775,0,1,0}-{3084,9957,0,1,6}-{2712,9480,0,0,5}"
- },
- {
- "npc_id": "4703",
- "loc_data": "{2857,9774,0,1,0}-{2860,9781,0,1,0}-{3092,9958,0,1,2}"
- },
- {
- "npc_id": "4704",
- "loc_data": "{2863,9767,0,1,0}-{2871,9782,0,1,0}-{3160,5521,0,1,1}"
- },
- {
- "npc_id": "4705",
- "loc_data": "{3088,9961,0,1,1}-{3169,5528,0,1,0}"
- },
- {
- "npc_id": "4706",
- "loc_data": "{3242,5555,0,1,3}-{3206,5493,0,1,5}"
- },
- {
- "npc_id": "4707",
- "loc_data": "{3213,3253,0,0,6}"
- },
- {
- "npc_id": "4710",
- "loc_data": "{3222,3475,0,0,5}"
- },
- {
- "npc_id": "4732",
- "loc_data": "{3429,3701,0,0,0}"
- },
- {
- "npc_id": "4898",
- "loc_data": "{3124,9874,0,1,3}-{3128,9875,0,1,6}"
- },
- {
- "npc_id": "4899",
- "loc_data": "{3231,3197,0,1,6}"
- },
- {
- "npc_id": "4900",
- "loc_data": "{3210,3213,1,1,1}"
- },
- {
- "npc_id": "4901",
- "loc_data": "{3245,3157,0,0,7}"
- },
- {
- "npc_id": "4902",
- "loc_data": "{3227,3147,0,0,1}"
- },
- {
- "npc_id": "4903",
- "loc_data": "{3244,3214,0,1,1}"
- },
- {
- "npc_id": "4904",
- "loc_data": "{3228,3254,0,1,3}"
- },
- {
- "npc_id": "4906",
- "loc_data": "{3230,3244,0,1,4}"
- },
- {
- "npc_id": "4907",
- "loc_data": "{3208,3222,2,0,6}"
- },
- {
- "npc_id": "4909",
- "loc_data": "{2831,3352,0,0,7}"
- },
- {
- "npc_id": "4920",
- "loc_data": "{3289,5496,0,0,5}-{3272,5490,0,0,0}-{3188,5510,0,1,6}-{3194,5510,0,1,2}"
- },
- {
- "npc_id": "4921",
- "loc_data": "{3304,5493,0,1,3}-{3303,5496,0,1,0}-{3271,5490,0,0,5}"
- },
- {
- "npc_id": "4926",
- "loc_data": "{3225,3551,0,1,1}-{3248,3524,0,1,1}"
- },
- {
- "npc_id": "4927",
- "loc_data": "{3227,3529,0,1,1}"
- },
- {
- "npc_id": "4930",
- "loc_data": "{3412,2889,0,1,3}-{3414,2892,0,1,1}-{3414,2890,0,1,1}-{3416,2886,0,1,4}-{3416,2893,0,1,6}"
- },
- {
- "npc_id": "4932",
- "loc_data": "{3414,2891,0,1,1}-{3410,2888,0,1,7}"
- },
- {
- "npc_id": "4944",
- "loc_data": "{2042,5213,0,1,5}-{2020,5236,0,1,2}-{1944,5152,0,1,2}-{2041,5216,0,1,0}"
- },
- {
- "npc_id": "4945",
- "loc_data": "{1994,5192,0,1,4}-{1997,5190,0,1,1}"
- },
- {
- "npc_id": "4946",
- "loc_data": "{2721,3432,0,1,4}"
- },
- {
- "npc_id": "4947",
- "loc_data": "{2825,3696,0,1,3}"
- },
- {
- "npc_id": "4950",
- "loc_data": "{2855,10051,1,0,0}"
- },
- {
- "npc_id": "4953",
- "loc_data": "{2684,3274,1,0,0}"
- },
- {
- "npc_id": "4955",
- "loc_data": "{2772,3223,0,0,0}"
- },
- {
- "npc_id": "4956",
- "loc_data": "{2783,3119,0,0,0}"
- },
- {
- "npc_id": "4961",
- "loc_data": "{2683,3275,1,0,0}"
- },
- {
- "npc_id": "4975",
- "loc_data": "{3303,3024,0,0,7}-{3299,3016,0,0,2}-{3280,9438,0,0,6}-{3275,9460,0,0,3}-{3267,9458,0,0,3}-{3270,9415,0,0,6}-{3272,9429,0,0,4}-{3272,9421,0,0,4}-{3271,9450,0,0,1}-{3288,9413,0,0,6}-{3297,9414,0,0,6}-{3300,9414,0,0,6}-{3304,9424,0,0,1}-{3292,9426,0,0,4}-{3295,9421,0,0,3}-{3297,9412,0,0,1}-{3292,9413,0,0,3}-{3324,9429,0,0,3}-{3311,9440,0,0,6}-{3294,9459,0,0,1}-{3291,9463,0,0,6}-{3296,9468,0,0,1}-{3288,9468,0,0,1}-{3313,9449,0,0,1}-{3034,2971,0,0,5}-{3030,2971,0,0,1}"
- },
- {
- "npc_id": "4976",
- "loc_data": "{3301,3017,0,0,7}-{3281,9446,0,0,1}-{3270,9451,0,0,4}-{3269,9418,0,0,1}-{3267,9441,0,0,1}-{3280,9436,0,0,1}-{3291,9414,0,0,6}-{3305,9413,0,0,6}-{3308,9415,0,0,1}-{3309,9420,0,0,1}-{3296,9425,0,0,1}-{3294,9420,0,0,1}-{3295,9412,0,0,3}-{3323,9439,0,0,6}-{3295,9460,0,0,3}-{3294,9464,0,0,6}-{3294,9467,0,0,1}-{3311,9454,0,0,6}-{3036,2972,0,0,1}-{3039,2968,0,0,1}-{3046,2982,0,0,6}-{3045,2974,0,0,6}-{3042,2972,0,0,6}"
- },
- {
- "npc_id": "4977",
- "loc_data": "{3294,3016,0,0,6}-{3287,3016,0,0,3}-{3277,9452,0,0,1}-{3267,9443,0,0,6}-{3267,9431,0,0,6}-{3269,9420,0,0,6}-{3273,9460,0,0,4}-{3277,9454,0,0,6}-{3281,9448,0,0,6}-{3294,9413,0,0,6}-{3306,9423,0,0,1}-{3298,9436,0,0,6}-{3292,9466,0,0,6}-{3296,9462,0,0,3}-{3290,9467,0,0,1}-{3315,9451,0,0,1}-{3316,9454,0,0,3}-{3038,2973,0,0,1}-{3027,2974,0,0,1}-{3023,2977,0,0,1}-{3035,2989,0,0,4}-{3039,2985,0,0,4}"
- },
- {
- "npc_id": "4978",
- "loc_data": "{3291,3017,0,0,5}-{3275,9463,0,0,1}-{3273,9430,0,0,6}-{3273,9422,0,0,6}-{3267,9428,0,0,1}-{3294,9411,0,0,6}-{3300,9424,0,0,1}-{3289,9412,0,0,3}-{3042,2969,0,0,1}-{3038,2976,0,0,6}-{3041,2983,0,0,6}-{3043,2983,0,0,6}-{3044,2981,0,0,6}-{3043,2979,0,0,1}-{3038,2989,0,0,1}-{3025,2984,0,0,1}-{3026,2988,0,0,1}-{3030,2990,0,0,1}-{3024,2979,0,0,3}"
- },
- {
- "npc_id": "4985",
- "loc_data": "{3304,3027,0,1,2}"
- },
- {
- "npc_id": "4986",
- "loc_data": "{3308,3112,0,1,1}"
- },
- {
- "npc_id": "4989",
- "loc_data": "{3272,3029,0,1,4}"
- },
- {
- "npc_id": "4990",
- "loc_data": "{3269,3029,0,1,4}"
- },
- {
- "npc_id": "4991",
- "loc_data": "{3270,3030,0,1,6}"
- },
- {
- "npc_id": "4992",
- "loc_data": "{3267,3029,0,1,0}"
- },
- {
- "npc_id": "4993",
- "loc_data": "{3277,3028,0,1,1}-{3279,9441,0,1,4}"
- },
- {
- "npc_id": "4994",
- "loc_data": "{3285,3027,0,1,7}"
- },
- {
- "npc_id": "4995",
- "loc_data": "{3279,3024,0,1,3}-{3286,3036,1,1,4}"
- },
- {
- "npc_id": "4996",
- "loc_data": "{3284,3022,0,1,2}"
- },
- {
- "npc_id": "4997",
- "loc_data": "{3289,3026,0,1,3}-{3317,9438,0,0,3}"
- },
- {
- "npc_id": "4998",
- "loc_data": "{3293,3027,0,1,5}-{3286,9419,0,1,3}-{3296,9433,0,1,7}-{3310,9457,0,1,1}"
- },
- {
- "npc_id": "4999",
- "loc_data": "{3280,3020,0,1,6}-{3319,9439,0,1,0}-{3299,9467,0,1,3}"
- },
- {
- "npc_id": "5000",
- "loc_data": "{3285,3022,0,1,6}-{3295,9434,0,1,3}"
- },
- {
- "npc_id": "5001",
- "loc_data": "{3297,3020,0,1,6}-{3280,9414,0,1,1}-{3279,9416,0,1,1}"
- },
- {
- "npc_id": "5002",
- "loc_data": "{3295,3028,0,1,3}-{3291,9423,0,1,1}"
- },
- {
- "npc_id": "5020",
- "loc_data": "{2905,3180,0,0,0}"
- },
- {
- "npc_id": "5021",
- "loc_data": "{2906,3173,0,0,0}"
- },
- {
- "npc_id": "5022",
- "loc_data": "{2907,3169,0,0,0}"
- },
- {
- "npc_id": "5029",
- "loc_data": "{2534,3575,0,1,0}"
- },
- {
- "npc_id": "5030",
- "loc_data": "{2533,3570,0,1,4}"
- },
- {
- "npc_id": "5031",
- "loc_data": "{2525,3575,0,1,3}"
- },
- {
- "npc_id": "5032",
- "loc_data": "{2525,3566,0,1,3}"
- },
- {
- "npc_id": "5033",
- "loc_data": "{2520,3569,0,1,3}"
- },
- {
- "npc_id": "5049",
- "loc_data": "{2808,3355,0,1,6}"
- },
- {
- "npc_id": "5062",
- "loc_data": "{2927,3410,0,0,0}"
- },
- {
- "npc_id": "5065",
- "loc_data": "{2925,3303,0,0,0}"
- },
- {
- "npc_id": "5070",
- "loc_data": "{2912,3480,0,0,0}-{2911,3480,0,0,0}"
- },
- {
- "npc_id": "5071",
- "loc_data": "{2609,2922,0,0,0}"
- },
- {
- "npc_id": "5072",
- "loc_data": "{2526,2928,0,1,6}-{2510,2876,0,1,3}-{2517,2878,0,1,6}-{2527,2877,0,1,2}-{2532,2938,0,1,4}-{2527,2933,0,1,4}-{2521,2938,0,1,6}-{2507,2914,0,1,0}-{2512,2910,0,1,4}-{2517,2912,0,1,1}-{2517,2921,0,1,6}-{2511,2911,0,1,3}-{2521,2917,0,1,7}-{2522,2929,0,1,4}-{2510,2888,0,1,1}-{2502,2890,0,1,3}-{2520,2882,0,1,7}-{2507,2877,0,1,1}-{2464,2832,0,1,2}-{2500,2893,0,1,4}-{2548,2887,0,1,1}-{2544,2889,0,1,7}-{2536,2877,0,1,3}-{2530,2872,0,1,3}-{2520,2885,0,1,0}-{2517,2870,0,1,4}-{2498,2883,0,1,6}-{2501,2886,0,1,7}-{2508,2916,0,1,4}-{2502,2888,0,1,7}-{2514,2915,0,1,4}-{2520,2908,0,1,6}-{2515,2944,0,1,4}-{2526,2943,0,1,4}-{2525,2893,0,1,4}-{2521,2896,0,1,1}"
- },
- {
- "npc_id": "5073",
- "loc_data": "{2603,2892,0,1,1}-{2604,2892,0,1,6}-{2611,2917,0,1,6}-{2611,2916,0,1,3}-{2613,2894,0,1,1}-{2614,2892,0,1,6}-{2608,2927,0,1,2}-{2612,2934,0,1,4}-{2609,2930,0,1,0}-{2594,2929,0,1,2}-{2616,2922,0,1,4}-{2593,2911,0,1,1}-{2617,2911,0,1,1}-{2602,2900,0,1,3}-{2601,2886,0,1,6}-{2587,2897,0,1,4}-{2612,2936,0,1,3}-{2606,2929,0,1,5}-{2615,2930,0,1,3}-{2576,2896,0,1,1}-{2588,2879,0,1,6}-{2593,2880,0,1,7}-{2583,2886,0,1,5}-{2609,2897,0,1,3}-{2608,2905,0,1,2}-{2606,2917,0,1,4}-{2604,2918,0,1,4}-{2613,2890,0,1,5}-{2608,2921,0,1,6}-{2604,2886,0,1,6}-{2602,2920,0,1,1}-{2607,2932,0,1,6}-{2578,2885,0,1,1}"
- },
- {
- "npc_id": "5074",
- "loc_data": "{2727,3763,0,1,1}-{2724,3765,0,1,2}-{2725,3768,0,1,2}-{2730,3768,0,1,2}-{2731,3764,0,1,2}-{2731,3763,0,1,2}-{2731,3765,0,1,2}-{2733,3765,0,1,2}-{2709,3823,1,1,2}-{2713,3823,1,1,2}-{2709,3825,1,1,2}-{2710,3826,1,1,2}-{2709,3825,1,1,2}"
- },
- {
- "npc_id": "5075",
- "loc_data": "{3402,3140,0,1,2}-{3402,3138,0,1,3}-{3404,3139,0,1,5}-{3400,3142,0,1,6}-{3405,3143,0,1,5}-{3409,3078,0,1,5}-{3410,3075,0,1,5}-{3411,3079,0,1,5}-{3408,3076,0,1,5}-{3414,3077,0,1,5}"
- },
- {
- "npc_id": "5076",
- "loc_data": "{2310,3581,0,1,2}-{2314,3580,0,1,2}-{2311,3583,0,1,2}-{2304,3588,0,1,6}-{2305,3601,0,1,7}-{2341,3610,0,1,7}-{2344,3606,0,1,3}-{2340,3603,0,1,4}-{2348,3591,0,1,1}-{2356,3595,0,1,6}-{2361,3595,0,1,1}-{2359,3589,0,1,4}-{2346,3585,0,1,6}-{2360,3584,0,1,7}"
- },
- {
- "npc_id": "5077",
- "loc_data": "{2558,2911,0,0,0}-{2558,2913,0,0,0}-{2556,2913,0,0,0}-{2557,2912,0,0,0}-{2560,2911,0,0,0}-{2559,2910,0,0,0}-{2559,2909,0,0,0}-{2559,2917,0,0,0}-{2558,2914,0,0,0}-{2559,2915,0,0,0}-{2558,2916,0,0,0}-{2559,2932,0,0,0}-{2559,2928,0,0,0}-{2558,2928,0,0,0}-{2558,2931,0,0,0}-{2558,2929,0,0,0}-{2556,2911,0,0,0}-{2557,2911,0,0,0}-{2556,2910,0,0,0}-{2556,2912,0,0,0}-{2557,2919,0,0,0}-{2556,2914,0,0,0}-{2556,2913,0,0,0}-{2556,2918,0,0,0}-{2556,2929,0,0,0}-{2557,2933,0,0,0}-{2556,2932,0,0,0}-{2557,2932,0,0,0}-{2557,2928,0,0,0}-{2559,2934,0,0,0}-{2554,2911,0,0,0}-{2555,2911,0,0,0}-{2554,2912,0,0,0}-{2555,2915,0,0,0}-{2555,2919,0,0,0}-{2554,2919,0,0,0}-{2554,2913,0,0,0}-{2556,2915,0,0,0}-{2555,2931,0,0,0}-{2554,2933,0,0,0}-{2555,2934,0,0,0}-{2555,2933,0,0,0}-{2555,2932,0,0,0}-{2554,2935,0,0,0}-{2554,2934,0,0,0}-{2556,2936,0,0,0}-{2558,2936,0,0,0}-{2554,2936,0,0,0}-{2553,2935,0,0,0}-{2556,2933,0,0,0}-{2558,2938,0,0,0}-{2556,2938,0,0,0}-{2557,2937,0,0,0}-{2557,2917,0,0,0}-{2555,2917,0,0,0}-{2555,2912,0,0,0}-{2555,2935,0,0,0}-{2547,2940,0,0,0}-{2546,2939,0,0,0}-{2548,2939,0,0,0}-{2557,2930,0,0,0}-{2556,2929,0,0,0}-{2546,2941,0,0,0}-{2548,2941,0,0,0}-{2557,2931,0,0,0}-{2556,2935,0,0,0}-{2555,2936,0,0,0}-{2553,2935,0,0,0}-{2559,2930,0,0,0}-{2547,2940,0,0,0}-{2509,2910,0,0,0}-{2507,2910,0,0,0}-{2509,2908,0,0,0}-{2508,2908,0,0,0}-{2508,2909,0,0,0}-{2510,2908,0,0,0}-{2506,2906,0,0,0}-{2508,2906,0,0,0}-{2507,2906,0,0,0}-{2507,2905,0,0,0}-{2509,2905,0,0,0}-{2505,2907,0,0,0}-{2504,2908,0,0,0}-{2467,2879,0,0,0}-{2484,2877,0,0,0}-{2485,2876,0,0,0}-{2511,2908,0,0,0}-{2504,2906,0,0,0}-{2508,2907,0,0,0}-{2509,2906,0,0,0}-{2508,2909,0,0,0}-{2506,2906,0,0,0}-{2510,2907,0,0,0}-{2503,2907,0,0,0}-{2509,2908,0,0,0}-{2507,2908,0,0,0}-{2508,2906,0,0,0}-{2505,2907,0,0,0}-{2507,2905,0,0,0}-{2506,2904,0,0,0}-{2505,2903,0,0,0}-{2508,2902,0,0,0}-{2504,2901,0,0,0}-{2506,2907,0,0,0}-{2507,2906,0,0,0}-{2524,2898,0,0,0}-{2524,2896,0,0,0}-{2525,2897,0,0,0}-{2521,2895,0,0,0}-{2525,2895,0,0,0}-{2507,2903,0,0,0}-{2526,2898,0,0,0}-{2507,2889,0,0,0}-{2506,2903,0,0,0}-{2503,2905,0,0,0}-{2507,2905,0,0,0}-{2511,2908,0,0,0}-{2507,2887,0,0,0}-{2554,2937,0,0,0}-{2558,2938,0,0,0}-{2557,2937,0,0,0}-{2556,2938,0,0,0}-{2553,2937,0,0,0}-{2556,2937,0,0,0}-{2553,2935,0,0,0}-{2556,2935,0,0,0}-{2558,2936,0,0,0}-{2555,2936,0,0,0}-{2552,2936,0,0,0}-{2554,2936,0,0,0}-{2552,2934,0,0,0}-{2553,2934,0,0,0}-{2557,2931,0,0,0}-{2559,2932,0,0,0}-{2558,2932,0,0,0}-{2556,2936,0,0,0}-{2553,2936,0,0,0}-{2554,2935,0,0,0}-{2559,2917,0,0,0}-{2556,2916,0,0,0}-{2555,2917,0,0,0}-{2559,2914,0,0,0}-{2557,2915,0,0,0}-{2561,2914,0,0,0}-{2557,2912,0,0,0}-{2559,2912,0,0,0}-{2558,2913,0,0,0}-{2555,2911,0,0,0}-{2554,2910,0,0,0}-{2559,2916,0,0,0}-{2557,2932,0,0,0}-{2557,2909,0,0,0}-{2559,2913,0,0,0}-{2552,2935,0,0,0}-{2512,2864,0,0,0}-{2560,2909,0,0,0}-{2561,2916,0,0,0}-{2559,2909,0,0,0}-{2557,2914,0,0,0}-{2555,2915,0,0,0}-{2527,2896,0,0,0}-{2524,2895,0,0,0}-{2524,2894,0,0,0}-{2525,2896,0,0,0}-{2524,2896,0,0,0}-{2523,2893,0,0,0}-{2523,2896,0,0,0}-{2523,2897,0,0,0}-{2521,2895,0,0,0}-{2521,2893,0,0,0}-{2526,2895,0,0,0}-{2507,2887,0,0,0}-{2507,2890,0,0,0}-{2506,2886,0,0,0}-{2505,2887,0,0,0}-{2505,2888,0,0,0}-{2503,2889,0,0,0}-{2504,2889,0,0,0}-{2504,2903,0,0,0}-{2505,2907,0,0,0}-{2504,2906,0,0,0}-{2505,2905,0,0,0}-{2506,2907,0,0,0}-{2506,2905,0,0,0}-{2506,2906,0,0,0}-{2507,2903,0,0,0}-{2507,2906,0,0,0}-{2507,2907,0,0,0}-{2505,2893,0,0,0}-{2504,2892,0,0,0}-{2508,2909,0,0,0}-{2502,2891,0,0,0}-{2503,2890,0,0,0}-{2503,2891,0,0,0}-{2508,2891,0,0,0}-{2507,2891,0,0,0}-{2507,2890,0,0,0}-{2503,2889,0,0,0}-{2504,2889,0,0,0}-{2505,2888,0,0,0}-{2506,2909,0,0,0}-{2507,2887,0,0,0}-{2505,2887,0,0,0}-{2506,2887,0,0,0}-{2508,2890,0,0,0}-{2504,2894,0,0,0}-{2502,2891,0,0,0}-{2524,2899,0,0,0}-{2524,2898,0,0,0}-{2526,2899,0,0,0}-{2526,2895,0,0,0}-{2526,2900,0,0,0}-{2524,2900,0,0,0}-{2525,2900,0,0,0}-{2525,2899,0,0,0}-{2524,2893,0,0,0}-{2522,2894,0,0,0}-{2521,2895,0,0,0}-{2523,2895,0,0,0}-{2524,2895,0,0,0}-{2506,2886,0,0,0}-{2521,2893,0,0,0}-{2526,2898,0,0,0}-{2524,2899,0,0,0}-{2456,2832,0,0,0}-{2523,2896,0,0,0}-{2522,2894,0,0,0}-{2524,2901,0,0,0}-{2524,2900,0,0,0}-{2523,2895,0,0,0}-{2526,2901,0,0,0}-{2525,2896,0,0,0}-{2526,2900,0,0,0}-{2523,2893,0,0,0}-{2525,2900,0,0,0}-{2524,2898,0,0,0}-{2525,2894,0,0,0}-{2527,2894,0,0,0}-{2524,2899,0,0,0}-{2508,2904,0,0,0}-{2507,2907,0,0,0}-{2506,2902,0,0,0}-{2506,2907,0,0,0}-{2506,2906,0,0,0}-{2503,2907,0,0,0}-{2503,2905,0,0,0}-{2505,2893,0,0,0}-{2503,2891,0,0,0}-{2506,2891,0,0,0}-{2508,2891,0,0,0}-{2506,2892,0,0,0}-{2506,2909,0,0,0}-{2503,2890,0,0,0}-{2503,2889,0,0,0}-{2504,2889,0,0,0}-{2507,2890,0,0,0}-{2505,2887,0,0,0}-{2505,2888,0,0,0}-{2508,2890,0,0,0}-{2507,2905,0,0,0}-{2456,2832,0,0,0}-{2503,2890,0,0,0}-{2503,2891,0,0,0}-{2504,2892,0,0,0}-{2504,2894,0,0,0}-{2506,2887,0,0,0}-{2507,2887,0,0,0}-{2507,2891,0,0,0}-{2504,2889,0,0,0}-{2508,2891,0,0,0}-{2505,2888,0,0,0}-{2506,2894,0,0,0}-{2506,2902,0,0,0}-{2506,2904,0,0,0}-{2506,2886,0,0,0}-{2507,2903,0,0,0}-{2505,2893,0,0,0}-{2506,2891,0,0,0}-{2503,2889,0,0,0}-{2506,2887,0,0,0}-{2506,2892,0,0,0}-{2507,2891,0,0,0}-{2456,2832,0,0,0}-{2456,2832,0,0,0}-{2507,2887,0,0,0}-{2507,2890,0,0,0}-{2503,2905,0,0,0}-{2505,2906,0,0,0}-{2506,2905,0,0,0}-{2506,2906,0,0,0}-{2507,2905,0,0,0}-{2505,2905,0,0,0}-{2504,2906,0,0,0}-{2503,2907,0,0,0}-{2506,2894,0,0,0}-{2507,2908,0,0,0}-{2507,2907,0,0,0}-{2508,2909,0,0,0}-{2505,2888,0,0,0}-{2505,2907,0,0,0}-{2494,2940,0,0,0}-{2495,2940,0,0,0}-{2496,2939,0,0,0}-{2497,2938,0,0,0}-{2498,2942,0,0,0}-{2499,2943,0,0,0}-{2498,2944,0,0,0}-{2500,2942,0,0,0}-{2503,2940,0,0,0}-{2496,2939,0,0,0}-{2502,2939,0,0,0}-{2500,2944,0,0,0}"
- },
- {
- "npc_id": "5078",
- "loc_data": "{2556,2911,0,0,0}-{2560,2909,0,0,0}-{2560,2933,0,0,0}-{2558,2910,0,0,0}-{2558,2909,0,0,0}-{2558,2918,0,0,0}-{2559,2930,0,0,0}-{2557,2915,0,0,0}-{2557,2931,0,0,0}-{2558,2935,0,0,0}-{2555,2936,0,0,0}-{2553,2936,0,0,0}-{2553,2933,0,0,0}-{2553,2934,0,0,0}-{2506,2908,0,0,0}-{2507,2908,0,0,0}-{2510,2906,0,0,0}-{2509,2907,0,0,0}-{2508,2907,0,0,0}-{2506,2904,0,0,0}-{2508,2904,0,0,0}-{2504,2906,0,0,0}-{2467,2878,0,0,0}-{2486,2877,0,0,0}-{2506,2909,0,0,0}-{2508,2904,0,0,0}-{2506,2902,0,0,0}-{2504,2903,0,0,0}-{2504,2902,0,0,0}-{2525,2899,0,0,0}-{2523,2897,0,0,0}-{2522,2897,0,0,0}-{2523,2895,0,0,0}-{2521,2893,0,0,0}-{2523,2893,0,0,0}-{2506,2888,0,0,0}-{2509,2889,0,0,0}-{2505,2889,0,0,0}-{2508,2888,0,0,0}-{2506,2887,0,0,0}-{2505,2887,0,0,0}-{2554,2935,0,0,0}-{2552,2935,0,0,0}-{2557,2934,0,0,0}-{2554,2934,0,0,0}-{2558,2933,0,0,0}-{2559,2931,0,0,0}-{2560,2918,0,0,0}-{2558,2916,0,0,0}-{2557,2917,0,0,0}-{2561,2916,0,0,0}-{2555,2915,0,0,0}-{2557,2914,0,0,0}-{2560,2915,0,0,0}-{2554,2912,0,0,0}-{2556,2912,0,0,0}-{2559,2909,0,0,0}-{2558,2909,0,0,0}-{2527,2894,0,0,0}-{2525,2894,0,0,0}-{2523,2895,0,0,0}-{2522,2894,0,0,0}-{2508,2890,0,0,0}-{2508,2891,0,0,0}-{2503,2905,0,0,0}-{2503,2907,0,0,0}-{2506,2902,0,0,0}-{2506,2904,0,0,0}-{2504,2894,0,0,0}-{2506,2894,0,0,0}-{2506,2892,0,0,0}-{2508,2904,0,0,0}-{2506,2891,0,0,0}-{2524,2901,0,0,0}-{2526,2901,0,0,0}-{2524,2894,0,0,0}-{2525,2894,0,0,0}-{2527,2894,0,0,0}-{2523,2896,0,0,0}-{2525,2896,0,0,0}-{2507,2903,0,0,0}-{2507,2905,0,0,0}-{2505,2902,0,0,0}-{2506,2904,0,0,0}-{2505,2907,0,0,0}-{2506,2905,0,0,0}-{2505,2905,0,0,0}-{2504,2906,0,0,0}-{2506,2894,0,0,0}-{2504,2894,0,0,0}-{2507,2891,0,0,0}-{2507,2887,0,0,0}-{2506,2891,0,0,0}-{2506,2907,0,0,0}-{2495,2938,0,0,0}-{2501,2938,0,0,0}-{2501,2940,0,0,0}-{2503,2938,0,0,0}"
- },
- {
- "npc_id": "5079",
- "loc_data": "{2323,3538,0,1,6}-{2319,3539,0,1,6}-{2321,3545,0,1,5}-{2324,3556,0,1,1}-{2322,3594,0,1,5}-{2323,3594,0,1,1}-{2323,3602,0,1,1}-{2326,3602,0,1,4}-{2324,3622,0,1,1}-{2326,3630,0,1,6}-{2347,3617,0,1,7}-{2341,3615,0,1,3}-{2339,3596,0,1,3}-{2329,3584,0,1,6}-{2337,3589,0,1,5}-{2358,3573,0,1,3}-{2360,3571,0,1,4}-{2371,3560,0,1,3}-{2342,3549,0,1,0}-{2357,3539,0,1,1}-{2357,3537,0,1,4}-{2357,3549,0,1,6}"
- },
- {
- "npc_id": "5080",
- "loc_data": "{2562,2927,0,1,4}-{2557,2915,0,1,3}-{2557,2921,0,1,1}-{2556,2938,0,1,7}-{2551,2930,0,1,6}-{2558,2912,0,1,4}-{2558,2909,0,1,3}-{2557,2932,0,1,6}-{2556,2935,0,1,1}-{2555,2915,0,1,2}-{2553,2935,0,1,4}-{2559,2918,0,1,4}-{2508,2909,0,1,3}-{2466,2878,0,1,6}-{2467,2881,0,1,7}-{2501,2912,0,1,6}-{2507,2907,0,1,1}-{2505,2902,0,1,2}-{2504,2896,0,1,2}-{2522,2895,0,1,3}-{2526,2897,0,1,1}-{2527,2904,0,1,0}-{2507,2889,0,1,4}-{2464,2832,0,1,2}-{2545,2948,0,1,2}-{2553,2935,0,1,1}-{2556,2931,0,1,5}-{2555,2915,0,1,6}-{2559,2911,0,1,4}-{2559,2918,0,1,3}-{2527,2896,0,1,4}-{2533,2896,0,1,5}-{2508,2890,0,1,4}-{2522,2895,0,1,2}-{2490,2877,0,1,1}-{2496,2897,0,1,1}-{2506,2906,0,1,0}-{2506,2894,0,1,3}-{2506,2902,0,1,6}-{2499,2942,0,1,7}-{2496,2936,0,1,4}-{2498,2939,0,1,3}"
- },
- {
- "npc_id": "5081",
- "loc_data": "{2318,3501,0,1,5}-{2316,3502,0,1,6}-{2317,3512,0,1,6}-{2315,3512,0,1,5}-{2312,3504,0,1,1}-{2307,3513,0,1,6}-{2311,3517,0,1,0}-{2320,3517,0,1,1}-{2309,3520,0,1,6}"
- },
- {
- "npc_id": "5082",
- "loc_data": "{2554,2894,0,1,4}-{2538,2897,0,1,6}-{2545,2899,0,1,3}-{2561,2913,0,1,1}-{2559,2908,0,1,6}-{2557,2920,0,1,4}-{2553,2913,0,1,4}-{2544,2910,0,1,2}-{2547,2909,0,1,4}-{2537,2906,0,1,5}-{2525,2914,0,1,3}-{2561,2918,0,1,7}-{2560,2915,0,1,1}-{2555,2920,0,1,6}-{2557,2908,0,1,6}-{2539,2920,0,1,1}-{2528,2915,0,1,4}-{2527,2904,0,1,0}-{2487,2878,0,1,4}-{2518,2901,0,1,5}-{2528,2902,0,1,1}-{2529,2918,0,1,6}-{2566,2881,0,1,7}-{2568,2917,0,1,6}-{2568,2918,0,1,4}-{2557,2915,0,1,7}-{2546,2912,0,1,3}-{2542,2911,0,1,5}-{2548,2910,0,1,6}-{2554,2907,0,1,1}-{2568,2885,0,1,4}-{2548,2896,0,1,5}-{2545,2895,0,1,6}-{2544,2910,0,1,7}-{2536,2895,0,1,3}-{2538,2902,0,1,6}-{2523,2910,0,1,3}-{2533,2910,0,1,2}"
- },
- {
- "npc_id": "5085",
- "loc_data": "{2328,3526,0,0,0}-{2313,3528,0,0,0}-{2312,3542,0,0,0}-{2312,3544,0,0,0}-{2323,3543,0,0,0}-{2325,3544,0,0,0}-{2328,3539,0,0,0}-{2311,3564,0,0,0}-{2332,3548,0,0,0}-{2335,3545,0,0,0}-{2320,3580,0,0,0}-{2325,3582,0,0,0}-{2330,3583,0,0,0}-{2310,3585,0,0,0}-{2324,3584,0,0,0}-{2312,3587,0,0,0}-{2316,3599,0,0,0}-{2324,3599,0,0,0}-{2323,3600,0,0,0}-{2315,3602,0,0,0}-{2309,3605,0,0,0}-{2316,3608,0,0,0}-{2315,3608,0,0,0}-{2325,3614,0,0,0}-{2313,3620,0,0,0}-{2333,3612,0,0,0}-{2331,3608,0,0,0}-{2331,3604,0,0,0}-{2346,3591,0,0,0}-{2355,3573,0,0,0}-{2369,3573,0,0,0}-{2359,3571,0,0,0}-{2352,3567,0,0,0}-{2372,3561,0,0,0}-{2361,3554,0,0,0}-{2329,3561,0,0,0}-{2341,3560,0,0,0}-{2344,3543,0,0,0}-{2342,3539,0,0,0}-{2349,3547,0,0,0}-{2352,3545,0,0,0}-{2334,3522,0,0,0}"
- },
- {
- "npc_id": "5086",
- "loc_data": "{2321,3593,0,1,1}-{2322,3597,0,1,0}-{2309,3603,0,1,5}-{2306,3607,0,1,0}-{2305,3619,0,1,1}-{2309,3618,0,1,6}-{2322,3627,0,1,3}-{2324,3614,0,1,1}-{2323,3614,0,1,1}-{2323,3629,0,1,6}-{2329,3633,0,1,4}-{2328,3634,0,1,3}-{2311,3642,0,1,1}-{2307,3644,0,1,6}-{2318,3645,0,1,1}-{2323,3645,0,1,3}-{2333,3629,0,1,3}-{2340,3641,0,1,7}-{2343,3640,0,1,6}-{2335,3633,0,1,6}"
- },
- {
- "npc_id": "5087",
- "loc_data": "{2706,3776,0,1,4}-{2712,3774,0,1,3}-{2716,3778,0,1,4}-{2715,3772,0,1,3}-{2720,3767,0,1,4}-{2712,3766,0,1,0}-{2718,3767,0,1,7}-{2719,3771,0,1,3}"
- },
- {
- "npc_id": "5088",
- "loc_data": "{2586,2883,0,1,6}-{2589,2909,0,1,1}-{2574,2915,0,1,3}-{2572,2928,0,1,3}-{2567,2932,0,1,6}-{2568,2933,0,1,0}-{2538,2889,0,1,3}-{2538,2902,0,1,4}-{2536,2872,0,1,4}-{2536,2872,0,1,6}-{2536,2872,0,1,4}-{2536,2872,0,1,6}-{2536,2872,0,1,3}-{2585,2884,0,1,5}-{2577,2890,0,1,0}-{2578,2918,0,1,1}-{2536,2864,0,1,7}-{2568,2934,0,1,1}-{2574,2930,0,1,1}-{2576,2928,0,1,4}-{2512,2864,0,1,6}-{2512,2864,0,1,1}-{2580,2889,0,1,1}-{2580,2886,0,1,1}-{2580,2886,0,1,0}-{2572,2900,0,1,4}-{2572,2896,0,1,3}-{2568,2905,0,1,4}"
- },
- {
- "npc_id": "5089",
- "loc_data": "{2315,3523,0,1,1}-{2315,3530,0,1,6}-{2308,3536,0,1,4}-{2307,3538,0,1,1}-{2325,3551,0,1,3}-{2316,3559,0,1,1}-{2312,3559,0,1,1}-{2310,3572,0,1,3}-{2334,3552,0,1,4}-{2308,3582,0,1,2}-{2363,3579,0,1,1}-{2363,3577,0,1,1}-{2350,3568,0,1,1}-{2352,3561,0,1,1}-{2346,3547,0,1,7}-{2347,3546,0,1,3}-{2363,3541,0,1,1}-{2362,3536,0,1,2}-{2350,3526,0,1,7}-{2350,3521,0,1,4}-{2351,3562,0,1,0}-{2310,3574,0,1,6}"
- },
- {
- "npc_id": "5093",
- "loc_data": "{2375,3607,0,0,0}"
- },
- {
- "npc_id": "5098",
- "loc_data": "{2372,3592,0,1,5}-{2370,3587,0,1,3}-{2371,3586,0,1,6}-{2376,3582,0,1,6}-{2378,3582,0,1,1}-{2383,3582,0,1,5}-{2393,3590,0,1,6}"
- },
- {
- "npc_id": "5099",
- "loc_data": "{2365,3597,0,1,5}-{2369,3588,0,1,4}-{2366,3577,0,1,4}-{2372,3573,0,1,1}-{2377,3584,0,1,1}-{2385,3590,0,1,3}-{2388,3598,0,1,3}"
- },
- {
- "npc_id": "5100",
- "loc_data": "{2369,3579,0,1,5}-{2373,3575,0,1,1}-{2390,3588,0,1,4}"
- },
- {
- "npc_id": "5103",
- "loc_data": "{2733,3777,0,1,6}-{2731,3784,0,1,4}-{2735,3790,0,1,6}-{2741,3783,0,1,2}-{2738,3790,0,1,1}-{2731,3783,0,1,1}-{2724,3791,0,1,4}"
- },
- {
- "npc_id": "5104",
- "loc_data": "{2551,2890,0,0,1}-{2541,2899,0,0,0}-{2564,2896,0,0,4}-{2571,2882,0,1,1}-{2552,2910,0,0,0}-{2573,2900,0,1,3}-{2558,2881,0,0,0}-{2543,2899,0,0,0}-{2545,2925,0,0,0}-{2549,2905,0,1,3}"
- },
- {
- "npc_id": "5105",
- "loc_data": "{2780,3017,0,1,0}-{2766,3013,0,1,0}-{2785,3006,0,1,0}-{2775,2996,0,1,0}"
- },
- {
- "npc_id": "5109",
- "loc_data": "{3443,2902,0,1,3}"
- },
- {
- "npc_id": "5110",
- "loc_data": "{2566,3084,0,1,6}"
- },
- {
- "npc_id": "5111",
- "loc_data": "{2569,3083,0,1,1}"
- },
- {
- "npc_id": "5113",
- "loc_data": "{2525,2916,0,1,5}"
- },
- {
- "npc_id": "5114",
- "loc_data": "{3411,3076,0,1,6}-{3415,3075,0,1,1}-{3406,3093,0,1,3}-{3413,3078,0,1,1}-{3403,3093,0,1,1}-{3412,3081,0,1,3}-{3405,3099,0,1,3}-{3405,3102,0,1,0}-{3406,3098,0,1,4}-{3401,3099,0,1,7}-{3405,3093,0,1,4}-{3404,3085,0,1,5}-{3402,3094,0,1,6}-{3399,3096,0,1,1}-{3405,3088,0,1,3}-{3411,3088,0,1,2}"
- },
- {
- "npc_id": "5115",
- "loc_data": "{2451,3219,0,1,3}-{2448,3221,0,1,3}-{2476,3236,0,1,3}-{2450,3226,0,1,6}-{2474,3239,0,1,0}-{2470,3240,0,1,2}-{2468,3243,0,1,0}-{2455,3219,0,1,6}-{2449,3225,0,1,7}-{2445,3226,0,1,2}-{2467,3241,0,1,1}-{2452,3221,0,1,3}-{2473,3235,0,1,7}-{2472,3241,0,1,4}-{2475,3237,0,1,3}"
- },
- {
- "npc_id": "5116",
- "loc_data": "{3291,3675,0,1,6}-{3293,3678,0,1,1}-{3302,3671,0,1,0}-{3299,3666,0,1,5}-{3319,3662,0,1,2}-{3309,3661,0,1,5}-{3321,3661,0,1,1}-{3298,3672,0,1,0}-{3316,3657,0,1,4}-{3302,3667,0,1,1}-{3302,3666,0,1,3}-{3315,3663,0,1,1}"
- },
- {
- "npc_id": "5117",
- "loc_data": "{3537,3449,0,1,2}-{3535,3447,0,1,6}-{3539,3447,0,1,2}-{3533,3446,0,1,1}-{3549,3439,0,1,4}-{3547,3439,0,1,7}-{3549,3439,0,1,4}"
- },
- {
- "npc_id": "5120",
- "loc_data": "{2326,3488,0,1,0}-{2325,3483,0,1,0}-{2315,3482,0,1,0}-{2336,3491,0,1,0}"
- },
- {
- "npc_id": "5125",
- "loc_data": "{2316,3501,0,0,0}"
- },
- {
- "npc_id": "5138",
- "loc_data": "{2607,3264,0,0,0}"
- },
- {
- "npc_id": "5139",
- "loc_data": "{2607,3260,0,0,0}"
- },
- {
- "npc_id": "5146",
- "loc_data": "{3205,3263,0,0,0}-{2925,3324,0,1,0}"
- },
- {
- "npc_id": "5147",
- "loc_data": "{3207, 3270, 0, 1, 0}"
- },
- {
- "npc_id": "5148",
- "loc_data": "{3229,3347,0,1,1}-{3238,3347,0,1,1}"
- },
- {
- "npc_id": "5149",
- "loc_data": "{3233,3350,0,1,0}"
- },
- {
- "npc_id": "5156",
- "loc_data": "{3203,3262,0,1,5}"
- },
- {
- "npc_id": "5157",
- "loc_data": "{3205,3262,0,1,1}"
- },
- {
- "npc_id": "5160",
- "loc_data": "{3205,3270,0,1,4}-{3249,3345,0,1,5}"
- },
- {
- "npc_id": "5161",
- "loc_data": "{3210,3273,0,1,6}-{3233,3340,0,1,5}-{3241,3344,0,1,3}-{2926,3326,0,1,6}-{2924,3324,0,1,1}"
- },
- {
- "npc_id": "5164",
- "loc_data": "{2410,4456,0,1,1}-{2415,4429,0,1,2}"
- },
- {
- "npc_id": "5168",
- "loc_data": "{3207,3260,0,1,3}-{3197,3268,0,1,1}"
- },
- {
- "npc_id": "5171",
- "loc_data": "{2860,10054,1,0,0}"
- },
- {
- "npc_id": "5173",
- "loc_data": "{2769,3611,0,1,7}-{2768,3607,0,1,6}-{2764,3612,0,1,2}-{2763,3608,0,1,6}-{2762,3611,0,1,4}-{2765,3606,0,1,0}"
- },
- {
- "npc_id": "5199",
- "loc_data": "{3093,3357,0,0,0}"
- },
- {
- "npc_id": "5200",
- "loc_data": "{3099,3369,0,1,1}"
- },
- {
- "npc_id": "5202",
- "loc_data": "{3621,3528,0,1,4}"
- },
- {
- "npc_id": "5291",
- "loc_data": "{3300,2792,0,0,6}-{3282,2807,0,0,6}-{3285,2811,0,0,1}-{3283,2772,0,1,5}-{3281,2771,0,1,7}-{3283,2776,0,1,6}-{3278,2770,0,1,6}"
- },
- {
- "npc_id": "5298",
- "loc_data": "{2499,3286,0,1,6}"
- },
- {
- "npc_id": "5300",
- "loc_data": "{2500,3283,0,1,0}"
- },
- {
- "npc_id": "5303",
- "loc_data": "{2506,3284,0,1,6}"
- },
- {
- "npc_id": "5310",
- "loc_data": "{3212,3682,0,1,0}-{3228,3680,0,1,6}-{3230,3683,0,1,1}-{3234,3692,0,1,5}"
- },
- {
- "npc_id": "5311",
- "loc_data": "{3231,3673,0,1,0}-{3225,3677,0,1,3}-{3229,3689,0,1,4}-{3239,3681,0,1,4}-{3236,3694,0,1,6}"
- },
- {
- "npc_id": "5312",
- "loc_data": "{3210,3667,0,1,4}-{3217,3688,0,1,4}-{3241,3694,0,1,3}"
- },
- {
- "npc_id": "5313",
- "loc_data": "{3224,3686,0,1,5}-{3243,3688,0,1,1}-{3242,3687,0,1,0}"
- },
- {
- "npc_id": "5314",
- "loc_data": "{2588,9491,0,1,3}-{2585,9492,0,1,3}-{2586,9491,0,1,5}-{2591,9492,0,1,3}"
- },
- {
- "npc_id": "5316",
- "loc_data": "{2497,3292,0,1,3}"
- },
- {
- "npc_id": "5318",
- "loc_data": "{2511,3287,0,1,3}"
- },
- {
- "npc_id": "5323",
- "loc_data": "{3221,3693,0,1,6}"
- },
- {
- "npc_id": "5324",
- "loc_data": "{3221,3682,0,1,4}"
- },
- {
- "npc_id": "5325",
- "loc_data": "{3125,3627,0,1,6}-{3232,3698,0,1,7}"
- },
- {
- "npc_id": "5326",
- "loc_data": "{3229,3683,0,1,0}"
- },
- {
- "npc_id": "5327",
- "loc_data": "{3224,3671,0,1,6}"
- },
- {
- "npc_id": "5332",
- "loc_data": "{2887,9822,0,1,0}-{2884,9824,0,1,0}-{3102,3571,0,1,3}-{2855,9571,0,1,0}"
- },
- {
- "npc_id": "5333",
- "loc_data": "{2885,9815,0,1,0}-{3100,3560,0,1,4}-{3108,3545,0,1,2}-{2860,9571,0,1,7}"
- },
- {
- "npc_id": "5334",
- "loc_data": "{2884,9817,0,1,0}-{3108,3533,0,1,1}-{2860,9569,0,1,6}"
- },
- {
- "npc_id": "5337",
- "loc_data": "{2885,9825,0,1,0}-{3100,3563,0,1,1}-{2832,9656,0,1,6}-{2846,3250,0,1,7}-{2834,3233,0,1,5}-{3003,10347,0,1,7}-{3003,10350,0,1,6}-{3003,10357,0,1,4}-{2996,10343,0,1,3}-{2993,10346,0,1,4}-{2995,3938,0,1,4}"
- },
- {
- "npc_id": "5338",
- "loc_data": "{3119,3565,0,1,1}-{2838,9648,0,1,5}-{2831,9654,0,1,1}-{2843,3248,0,1,1}-{2840,3240,0,1,3}-{2994,10349,0,1,5}-{2998,10350,0,1,0}-{3003,10350,0,1,4}"
- },
- {
- "npc_id": "5339",
- "loc_data": "{3095,3554,0,1,4}-{2831,9655,0,1,7}-{2844,3239,0,1,0}"
- },
- {
- "npc_id": "5340",
- "loc_data": "{3112,3573,0,1,6}-{2833,9655,0,1,6}-{2848,3246,0,1,3}"
- },
- {
- "npc_id": "5341",
- "loc_data": "{2840,9633,0,1,1}-{2844,9634,0,1,6}-{2842,9637,0,1,3}"
- },
- {
- "npc_id": "5345",
- "loc_data": "{2501,3294,0,1,3}"
- },
- {
- "npc_id": "5349",
- "loc_data": "{3099,3354,1,1,3}"
- },
- {
- "npc_id": "5350",
- "loc_data": "{3116,3367,1,1,3}"
- },
- {
- "npc_id": "5351",
- "loc_data": "{3110,3358,1,1,1}"
- },
- {
- "npc_id": "5352",
- "loc_data": "{3121,3359,1,1,4}"
- },
- {
- "npc_id": "5355",
- "loc_data": "{2873,2950,0,0,0}-{2876,2951,0,0,0}"
- },
- {
- "npc_id": "5356",
- "loc_data": "{2877,2958,0,0,0}"
- },
- {
- "npc_id": "5357",
- "loc_data": "{2876,2958,0,0,0}"
- },
- {
- "npc_id": "5358",
- "loc_data": "{2874,2954,0,0,6}"
- },
- {
- "npc_id": "5361",
- "loc_data": "{3176,5543,0,1,3}-{3191,5542,0,1,4}-{1757,5358,0,1,5}-{1760,5357,0,1,5}-{1755,5352,0,1,5}-{1751,5342,0,1,3}-{1745,5342,0,1,6}-{1739,5342,0,1,3}-{1737,5344,0,1,7}-{1739,5347,0,1,6}-{1740,5350,0,1,5}-{1739,5355,0,1,3}-{1747,5363,0,1,4}-{1749,5363,0,1,4}-{1743,5360,0,1,3}-{1739,5356,0,1,0}-{3175,5543,0,1,2}-{3178,5541,0,1,2}-{3187,5542,0,1,3}-{3192,5545,0,1,2}-{3192,5542,0,1,3}-{3179,5549,0,1,6}-{2386,9745,0,1,1}-{2385,9748,0,1,1}-{2389,9746,0,1,1}-{2390,9751,0,1,1}-{2306,9760,0,1,1}-{2395,9757,0,1,1}-{2397,9756,0,1,1}-{2399,9758,0,1,1}-{2385,9762,0,1,1}-{2382,9759,0,1,1}-{2385,9757,0,1,1}-{2388,9759,0,1,1}-{2393,9768,0,1,1}-{2394,9741,0,1,1}"
- },
- {
- "npc_id": "5362",
- "loc_data": "{1774,5361,0,1,3}-{1776,5350,0,1,3}-{1772,5342,0,1,1}-{1772,5336,0,1,4}-{1778,5328,0,1,7}-{1761,5334,0,1,4}-{1754,5337,0,1,7}-{1749,5331,0,0,1}"
- },
- {
- "npc_id": "5363",
- "loc_data": "{1781,5340,1,1,5}-{1782,5356,1,1,1}-{1767,5343,1,1,6}-{1761,5338,1,1,3}-{1767,5332,1,1,6}-{1757,5326,1,1,7}-{1784,5329,1,1,1}"
- },
- {
- "npc_id": "5364",
- "loc_data": "{1765,5344,0,1,3}"
- },
- {
- "npc_id": "5365",
- "loc_data": "{2354,5191,0,1,4}-{2351,5191,0,1,5}"
- },
- {
- "npc_id": "5366",
- "loc_data": "{2357,5196,0,1,2}-{2356,5188,0,1,4}-{2343,5195,0,1,6}-{2335,5202,0,1,3}-{2323,5211,0,1,1}"
- },
- {
- "npc_id": "5367",
- "loc_data": "{2312,5189,0,1,7}"
- },
- {
- "npc_id": "5369",
- "loc_data": "{2345,5195,0,1,3}-{2264,5136,0,1,1}-{2323,5227,0,1,5}-{2319,5223,0,1,6}"
- },
- {
- "npc_id": "5370",
- "loc_data": "{2347,5195,0,1,3}-{2323,5225,0,1,3}-{2319,5227,0,1,0}-{2323,5227,0,1,3}-{2318,5227,0,1,0}-{2326,5227,0,1,6}"
- },
- {
- "npc_id": "5371",
- "loc_data": "{2356,5204,0,1,1}-{2324,5223,0,1,1}"
- },
- {
- "npc_id": "5375",
- "loc_data": "{2029,5236,0,1,6}-{2031,5235,0,1,1}-{2029,5230,0,1,3}"
- },
- {
- "npc_id": "5376",
- "loc_data": "{2031,5233,0,1,1}"
- },
- {
- "npc_id": "5377",
- "loc_data": "{2004,5189,0,1,3}-{2002,5207,0,1,3}-{2009,5199,0,1,5}-{2004,5203,0,1,6}"
- },
- {
- "npc_id": "5378",
- "loc_data": "{1993,5192,0,1,5}-{1999,5190,0,1,6}-{1989,5187,0,1,4}-{2008,5205,0,1,4}"
- },
- {
- "npc_id": "5379",
- "loc_data": "{1952,5192,0,1,5}-{1995,5240,0,1,5}-{1944,5152,0,1,2}-{2010,5186,0,1,4}-{2023,5190,0,1,1}"
- },
- {
- "npc_id": "5380",
- "loc_data": "{1952,5192,0,1,2}-{2028,5192,0,1,0}"
- },
- {
- "npc_id": "5383",
- "loc_data": "{3194,4569,0,0,0}"
- },
- {
- "npc_id": "5384",
- "loc_data": "{3165,4598,0,0,0}-{3167,4577,0,0,0}"
- },
- {
- "npc_id": "5385",
- "loc_data": "{3191,4595,1,1,1}-{3191,4601,1,1,2}"
- },
- {
- "npc_id": "5386",
- "loc_data": "{3143,4595,0,1,1}-{3145,4598,0,1,3}-{3182,4577,0,1,1}-{3187,4578,0,1,0}-{3158,4589,1,1,7}-{3194,4599,1,1,4}"
- },
- {
- "npc_id": "5387",
- "loc_data": "{3158,4584,0,1,4}-{3159,4577,0,1,6}-{3169,4587,0,1,1}-{3152,4569,1,1,1}"
- },
- {
- "npc_id": "5388",
- "loc_data": "{3156,4567,2,1,0}"
- },
- {
- "npc_id": "5389",
- "loc_data": "{3157,4568,0,1,6}-{3185,4562,0,1,3}"
- },
- {
- "npc_id": "5390",
- "loc_data": "{3182,4562,0,1,3}-{3185,4560,0,1,3}"
- },
- {
- "npc_id": "5391",
- "loc_data": "{3158,4552,0,1,4}-{3163,4569,0,1,1}-{3177,4549,0,1,3}-{3184,4550,0,1,3}-{3158,4560,1,1,4}-{3174,4566,1,1,1}-{3195,4577,1,1,6}"
- },
- {
- "npc_id": "5393",
- "loc_data": "{3146,4596,0,1,1}-{3163,4598,0,1,3}-{3155,4591,1,1,3}"
- },
- {
- "npc_id": "5394",
- "loc_data": "{3167,4589,0,1,6}-{3172,4598,0,1,1}-{2677,9688,0,1,1}-{2676,9679,0,1,4}-{2669,9681,0,1,1}"
- },
- {
- "npc_id": "5395",
- "loc_data": "{3141,4598,0,1,3}-{3170,4592,0,1,6}-{3144,4589,1,1,3}"
- },
- {
- "npc_id": "5396",
- "loc_data": "{3145,4583,1,1,0}"
- },
- {
- "npc_id": "5397",
- "loc_data": "{3155,4583,0,1,3}-{3176,4576,1,1,3}"
- },
- {
- "npc_id": "5398",
- "loc_data": "{3145,4574,1,1,3}-{3182,4586,1,1,3}"
- },
- {
- "npc_id": "5399",
- "loc_data": "{3140,4557,2,1,4}-{3188,4578,2,1,1}"
- },
- {
- "npc_id": "5400",
- "loc_data": "{3175,4579,1,1,6}-{3142,4560,2,1,3}-{3159,4569,2,1,1}"
- },
- {
- "npc_id": "5401",
- "loc_data": "{3151,4573,1,1,4}"
- },
- {
- "npc_id": "5402",
- "loc_data": "{3154,4559,0,1,6}-{3171,4571,1,1,6}-{3179,4586,1,1,1}"
- },
- {
- "npc_id": "5403",
- "loc_data": "{3141,4557,0,1,4}-{3182,4577,2,1,6}"
- },
- {
- "npc_id": "5404",
- "loc_data": "{3143,4555,0,1,4}-{3144,4549,1,1,4}-{3190,4587,1,1,1}-{3186,4576,2,1,3}"
- },
- {
- "npc_id": "5405",
- "loc_data": "{3163,4559,0,1,4}-{3146,4565,1,1,3}-{3195,4582,1,1,6}"
- },
- {
- "npc_id": "5406",
- "loc_data": "{3159,4603,1,1,1}"
- },
- {
- "npc_id": "5407",
- "loc_data": "{3141,4547,1,1,3}"
- },
- {
- "npc_id": "5408",
- "loc_data": "{3170,4559,1,1,4}"
- },
- {
- "npc_id": "5409",
- "loc_data": "{3173,4550,0,1,6}-{3190,4551,0,1,2}"
- },
- {
- "npc_id": "5410",
- "loc_data": "{3190,4561,0,1,5}"
- },
- {
- "npc_id": "5413",
- "loc_data": "{3187,5450,0,1,6}-{3177,5453,0,1,6}"
- },
- {
- "npc_id": "5414",
- "loc_data": "{3176,5454,0,1,3}-{3182,5447,0,1,3}"
- },
- {
- "npc_id": "5423",
- "loc_data": "{3212,3263,0,0,0}"
- },
- {
- "npc_id": "5439",
- "loc_data": "{3017,3277,0,0,0}"
- },
- {
- "npc_id": "5445",
- "loc_data": "{2596,3269,0,1,4}-{2571,3907,0,1,7}-{2571,3907,0,1,3}-{2569,3908,0,1,3}-{2571,3908,0,1,3}-{2572,3906,0,1,6}"
- },
- {
- "npc_id": "5478",
- "loc_data": "{2407,3803,0,1,3}"
- },
- {
- "npc_id": "5479",
- "loc_data": "{2407,3803,0,1,3}"
- },
- {
- "npc_id": "5480",
- "loc_data": "{2406,3803,0,1,3}"
- },
- {
- "npc_id": "5483",
- "loc_data": "{2395,3796,0,1,2}"
- },
- {
- "npc_id": "5484",
- "loc_data": "{2418,3816,0,1,3}"
- },
- {
- "npc_id": "5485",
- "loc_data": "{2393,3796,0,1,2}"
- },
- {
- "npc_id": "5486",
- "loc_data": "{2396,3805,0,1,3}"
- },
- {
- "npc_id": "5487",
- "loc_data": "{2417,3815,0,1,3}"
- },
- {
- "npc_id": "5488",
- "loc_data": "{2416,3799,0,0,1}"
- },
- {
- "npc_id": "5489",
- "loc_data": "{2372,3801,2,0,3}"
- },
- {
- "npc_id": "5490",
- "loc_data": "{2364,3800,2,0,4}"
- },
- {
- "npc_id": "5493",
- "loc_data": "{2391,3800,0,1,5}"
- },
- {
- "npc_id": "5494",
- "loc_data": "{2416,3808,0,1,5}"
- },
- {
- "npc_id": "5495",
- "loc_data": "{2406,3813,0,1,3}"
- },
- {
- "npc_id": "5496",
- "loc_data": "{2402,3800,0,1,4}"
- },
- {
- "npc_id": "5499",
- "loc_data": "{2403,3807,0,1,4}"
- },
- {
- "npc_id": "5500",
- "loc_data": "{2395,3812,0,2,2}"
- },
- {
- "npc_id": "5501",
- "loc_data": "{2408,3816,0,1,3}"
- },
- {
- "npc_id": "5502",
- "loc_data": "{2409,3814,0,1,3}"
- },
- {
- "npc_id": "5504",
- "loc_data": "{2336,3799,0,0,4}"
- },
- {
- "npc_id": "5505",
- "loc_data": "{2334,3800,0,0,4}"
- },
- {
- "npc_id": "5506",
- "loc_data": "{2334,3798,0,0,4}"
- },
- {
- "npc_id": "5507",
- "loc_data": "{2311,3781,0,0,1}"
- },
- {
- "npc_id": "5508",
- "loc_data": "{2646,3710,0,0,4}"
- },
- {
- "npc_id": "5509",
- "loc_data": "{2336,3808,0,0,6}"
- },
- {
- "npc_id": "5510",
- "loc_data": "{2333,3804,0,1,1}"
- },
- {
- "npc_id": "5511",
- "loc_data": "{2327,3794,0,1,6}"
- },
- {
- "npc_id": "5512",
- "loc_data": "{2319,3795,0,1,3}"
- },
- {
- "npc_id": "5513",
- "loc_data": "{2352,3797,0,1,2}"
- },
- {
- "npc_id": "5514",
- "loc_data": "{2333,3795,1,1,4}"
- },
- {
- "npc_id": "5515",
- "loc_data": "{2330,3799,1,1,3}"
- },
- {
- "npc_id": "5516",
- "loc_data": "{2329,3808,1,1,4}"
- },
- {
- "npc_id": "5518",
- "loc_data": "{2338,3798,0,0,1}"
- },
- {
- "npc_id": "5519",
- "loc_data": "{2338,3800,0,0,6}"
- },
- {
- "npc_id": "5520",
- "loc_data": "{2338,3810,0,0,3}"
- },
- {
- "npc_id": "5529",
- "loc_data": "{2323,3790,0,1,1}-{2323,3795,0,1,0}-{2322,3795,0,1,0}-{2317,3794,0,1,6}-{2317,3790,0,1,3}-{2321,3792,0,1,6}"
- },
- {
- "npc_id": "5531",
- "loc_data": "{3323,3138,1,1,6}"
- },
- {
- "npc_id": "5532",
- "loc_data": "{3320,3138,0,1,3}"
- },
- {
- "npc_id": "5533",
- "loc_data": "{2904,5460,0,1,4}"
- },
- {
- "npc_id": "5534",
- "loc_data": "{2900,5455,0,1,1}"
- },
- {
- "npc_id": "5535",
- "loc_data": "{2903,5449,0,1,4}"
- },
- {
- "npc_id": "5536",
- "loc_data": "{2905,5451,0,1,1}"
- },
- {
- "npc_id": "5537",
- "loc_data": "{2905,5457,0,1,4}"
- },
- {
- "npc_id": "5538",
- "loc_data": "{2912,5455,0,1,3}"
- },
- {
- "npc_id": "5539",
- "loc_data": "{2922,5464,0,1,1}"
- },
- {
- "npc_id": "5540",
- "loc_data": "{2924,5462,0,1,4}"
- },
- {
- "npc_id": "5541",
- "loc_data": "{2924,5458,0,1,4}"
- },
- {
- "npc_id": "5542",
- "loc_data": "{2930,5458,0,1,1}"
- },
- {
- "npc_id": "5544",
- "loc_data": "{2931,5469,0,1,3}"
- },
- {
- "npc_id": "5545",
- "loc_data": "{2925,5471,0,1,1}"
- },
- {
- "npc_id": "5546",
- "loc_data": "{2931,5475,0,1,1}"
- },
- {
- "npc_id": "5547",
- "loc_data": "{2907,5486,0,1,6}"
- },
- {
- "npc_id": "5548",
- "loc_data": "{2907,5492,0,1,6}"
- },
- {
- "npc_id": "5549",
- "loc_data": "{2910,5491,0,1,6}"
- },
- {
- "npc_id": "5550",
- "loc_data": "{2915,5483,0,1,1}"
- },
- {
- "npc_id": "5551",
- "loc_data": "{2922,5486,0,1,4}"
- },
- {
- "npc_id": "5552",
- "loc_data": "{2921,5493,0,1,4}"
- },
- {
- "npc_id": "5553",
- "loc_data": "{2899,5468,0,1,4}"
- },
- {
- "npc_id": "5554",
- "loc_data": "{2894,5470,0,1,3}"
- },
- {
- "npc_id": "5555",
- "loc_data": "{2898,5478,0,1,4}"
- },
- {
- "npc_id": "5556",
- "loc_data": "{2896,5482,0,1,3}"
- },
- {
- "npc_id": "5557",
- "loc_data": "{2894,5483,0,1,4}"
- },
- {
- "npc_id": "5558",
- "loc_data": "{2894,5485,0,1,3}"
- },
- {
- "npc_id": "5562",
- "loc_data": "{2913,5462,0,0,0}-{2900,5458,0,0,0}-{2908,5455,0,0,0}-{2910,5455,0,0,0}-{2913,5452,0,0,0}-{2914,5453,0,0,0}"
- },
- {
- "npc_id": "5563",
- "loc_data": "{2911,5474,0,0,0}"
- },
- {
- "npc_id": "5574",
- "loc_data": "{2836,3066,0,0,0}"
- },
- {
- "npc_id": "5576",
- "loc_data": "{3072,3336,0,0,0}-{3063,3348,0,0,0}"
- },
- {
- "npc_id": "5608",
- "loc_data": "{3786,2827,2,0,0}"
- },
- {
- "npc_id": "5609",
- "loc_data": "{3786,2824,1,0,0}"
- },
- {
- "npc_id": "5610",
- "loc_data": "{3785,2827,0,0,0}"
- },
- {
- "npc_id": "5611",
- "loc_data": "{3784,2824,0,0,0}"
- },
- {
- "npc_id": "5614",
- "loc_data": "{3779,2826,0,0,0}-{3789,2817,0,0,0}-{3794,2821,0,0,0}-{3808,2823,0,0,0}-{3812,2861,0,0,0}-{3813,2822,0,0,0}-{3818,2862,0,0,0}-{3819,2870,0,0,0}-{3821,2824,0,0,0}-{3831,2828,0,0,0}"
- },
- {
- "npc_id": "5627",
- "loc_data": "{3808,2845,0,0,0}-{3812,2846,0,0,0}-{3815,2844,0,0,3}-{3819,2839,0,0,0}-{3819,2851,0,0,0}-{3819,2838,1,0,0}-{3823,2836,1,0,0}-{3823,2846,1,0,0}"
- },
- {
- "npc_id": "5628",
- "loc_data": "{3810,2843,0,0,0}-{3813,2844,0,0,0}-{3821,2837,0,0,0}-{3820,2840,1,0,0}-{3820,2851,1,0,0}-{3823,2839,1,0,0}"
- },
- {
- "npc_id": "5629",
- "loc_data": "{3811,2826,0,0,0}"
- },
- {
- "npc_id": "5631",
- "loc_data": "{3827,2833,0,0,0}"
- },
- {
- "npc_id": "5633",
- "loc_data": "{3815,2859,0,0,0}"
- },
- {
- "npc_id": "5634",
- "loc_data": "{3793,2851,0,0,0}"
- },
- {
- "npc_id": "5635",
- "loc_data": "{3784,2843,0,0,0}"
- },
- {
- "npc_id": "5637",
- "loc_data": "{3803,2843,0,0,0}"
- },
- {
- "npc_id": "5638",
- "loc_data": "{3810,2833,0,0,0}"
- },
- {
- "npc_id": "5639",
- "loc_data": "{3824,2857,0,0,0}"
- },
- {
- "npc_id": "5640",
- "loc_data": "{3817,2824,0,0,0}"
- },
- {
- "npc_id": "5641",
- "loc_data": "{3799,2855,0,0,0}"
- },
- {
- "npc_id": "5642",
- "loc_data": "{3796,2858,0,0,0}"
- },
- {
- "npc_id": "5644",
- "loc_data": "{3795,2845,0,0,3}"
- },
- {
- "npc_id": "5646",
- "loc_data": "{3792,2830,0,0,0}"
- },
- {
- "npc_id": "5647",
- "loc_data": "{3803,2872,2,0,0}"
- },
- {
- "npc_id": "5650",
- "loc_data": "{3800,2835,0,0,0}"
- },
- {
- "npc_id": "5656",
- "loc_data": "{3794,2873,1,0,0}"
- },
- {
- "npc_id": "5658",
- "loc_data": "{3804,2873,1,0,0}"
- },
- {
- "npc_id": "5659",
- "loc_data": "{3805,2874,2,0,0}"
- },
- {
- "npc_id": "5661",
- "loc_data": "{3794,2874,3,0,0}"
- },
- {
- "npc_id": "5665",
- "loc_data": "{3803,2848,0,0,0}"
- },
- {
- "npc_id": "5668",
- "loc_data": "{3787,2824,0,0,0}"
- },
- {
- "npc_id": "5669",
- "loc_data": "{3787,2827,0,0,0}"
- },
- {
- "npc_id": "5670",
- "loc_data": "{3786,2827,1,0,0}"
- },
- {
- "npc_id": "5671",
- "loc_data": "{3788,2826,1,0,0}"
- },
- {
- "npc_id": "5672",
- "loc_data": "{3788,2825,2,0,0}"
- },
- {
- "npc_id": "5748",
- "loc_data": "{3483,3449,0,0,0}-{3490,3444,0,0,0}-{3479,3434,0,0,0}-{3481,3473,0,0,0}-{3479,3430,0,0,0}-{3434,3417,0,0,0}-{3431,3415,0,0,0}-{3440,3410,0,0,0}-{3424,3409,0,0,0}-{3425,3410,0,0,0}-{3425,3407,0,0,0}-{3429,3276,0,0,0}-{3440,3281,0,0,0}-{3437,3272,0,0,0}-{3440,3271,0,0,0}-{3443,3272,0,0,0}-{3445,3279,0,0,0}-{3445,3274,0,0,0}"
- },
- {
- "npc_id": "5750",
- "loc_data": "{3290,5544,0,1,4}-{3270,5552,0,1,1}-{3274,5547,0,1,7}"
- },
- {
- "npc_id": "5752",
- "loc_data": "{2711,5331,0,0,0}"
- },
- {
- "npc_id": "5753",
- "loc_data": "{2697,5332,0,0,0}"
- },
- {
- "npc_id": "5755",
- "loc_data": "{2723,5336,0,0,0}"
- },
- {
- "npc_id": "5756",
- "loc_data": "{2702,5352,1,0,0}"
- },
- {
- "npc_id": "5757",
- "loc_data": "{2743,5358,0,0,0}"
- },
- {
- "npc_id": "5758",
- "loc_data": "{2693,5332,0,0,0}-{2729,5329,0,0,0}"
- },
- {
- "npc_id": "5761",
- "loc_data": "{2725,5349,0,0,0}"
- },
- {
- "npc_id": "5764",
- "loc_data": "{2712,5342,0,0,0}"
- },
- {
- "npc_id": "5765",
- "loc_data": "{2694,5333,0,0,0}"
- },
- {
- "npc_id": "5766",
- "loc_data": "{2701,5352,1,0,0}"
- },
- {
- "npc_id": "5767",
- "loc_data": "{2695,5331,0,0,0}-{2719,5331,0,0,0}"
- },
- {
- "npc_id": "5770",
- "loc_data": "{2717,5359,0,0,0}"
- },
- {
- "npc_id": "5771",
- "loc_data": "{2722,5333,0,0,0}"
- },
- {
- "npc_id": "5772",
- "loc_data": "{2716,5359,0,0,0}"
- },
- {
- "npc_id": "5776",
- "loc_data": "{2699,5349,0,0,4}"
- },
- {
- "npc_id": "5777",
- "loc_data": "{2699,5348,0,0,4}"
- },
- {
- "npc_id": "5780",
- "loc_data": "{2722,5313,0,0,0}"
- },
- {
- "npc_id": "5781",
- "loc_data": "{2723,5321,0,0,0}"
- },
- {
- "npc_id": "5782",
- "loc_data": "{2742,5339,1,0,0}"
- },
- {
- "npc_id": "5783",
- "loc_data": "{2701,5348,0,0,0}"
- },
- {
- "npc_id": "5785",
- "loc_data": "{2726,5372,1,0,0}"
- },
- {
- "npc_id": "5786",
- "loc_data": "{2712,5369,1,0,0}"
- },
- {
- "npc_id": "5787",
- "loc_data": "{2704,5366,0,0,0}"
- },
- {
- "npc_id": "5789",
- "loc_data": "{2718,5313,0,0,0}"
- },
- {
- "npc_id": "5790",
- "loc_data": "{2715,5313,0,0,0}"
- },
- {
- "npc_id": "5794",
- "loc_data": "{2712,5321,0,0,0}"
- },
- {
- "npc_id": "5796",
- "loc_data": "{2711,5314,0,0,0}"
- },
- {
- "npc_id": "5798",
- "loc_data": "{2717,5315,0,1,2}"
- },
- {
- "npc_id": "5799",
- "loc_data": "{2730,5365,1,0,0}"
- },
- {
- "npc_id": "5800",
- "loc_data": "{2719,5335,0,1,1}-{2747,5373,0,1,3}"
- },
- {
- "npc_id": "5801",
- "loc_data": "{2730,5333,0,1,2}"
- },
- {
- "npc_id": "5802",
- "loc_data": "{2744,5353,1,0,0}"
- },
- {
- "npc_id": "5803",
- "loc_data": "{2741,5344,1,0,0}"
- },
- {
- "npc_id": "5804",
- "loc_data": "{2744,5333,1,0,0}"
- },
- {
- "npc_id": "5805",
- "loc_data": "{2743,5345,1,0,0}"
- },
- {
- "npc_id": "5806",
- "loc_data": "{2746,5333,1,0,0}"
- },
- {
- "npc_id": "5807",
- "loc_data": "{2741,5334,1,0,0}"
- },
- {
- "npc_id": "5809",
- "loc_data": "{2741,5341,1,0,0}"
- },
- {
- "npc_id": "5811",
- "loc_data": "{2744,5342,1,0,0}"
- },
- {
- "npc_id": "5813",
- "loc_data": "{2742,5338,1,0,0}"
- },
- {
- "npc_id": "5815",
- "loc_data": "{2743,5341,1,0,0}"
- },
- {
- "npc_id": "5817",
- "loc_data": "{2744,5338,1,0,0}"
- },
- {
- "npc_id": "5819",
- "loc_data": "{2744,5336,1,0,0}"
- },
- {
- "npc_id": "5821",
- "loc_data": "{2740,5334,1,0,0}"
- },
- {
- "npc_id": "5827",
- "loc_data": "{2699,5329,0,0,0}-{2699,5335,0,0,0}-{2747,5342,0,0,0}"
- },
- {
- "npc_id": "5828",
- "loc_data": "{2697,5316,0,0,0}-{3323,9606,0,0,0}"
- },
- {
- "npc_id": "5832",
- "loc_data": "{2730,5366,1,0,0}"
- },
- {
- "npc_id": "5833",
- "loc_data": "{3267,3334,0,1,3}"
- },
- {
- "npc_id": "5834",
- "loc_data": "{3208,3496,0,1,6}"
- },
- {
- "npc_id": "5837",
- "loc_data": "{3285,3468,0,0,4}"
- },
- {
- "npc_id": "5839",
- "loc_data": "{3183,5205,0,0,0}"
- },
- {
- "npc_id": "5840",
- "loc_data": "{3159,5211,0,0,0}"
- },
- {
- "npc_id": "5841",
- "loc_data": "{3176,5215,0,0,0}"
- },
- {
- "npc_id": "5842",
- "loc_data": "{3115,3475,0,1,1}"
- },
- {
- "npc_id": "5843",
- "loc_data": "{3117,3474,0,1,4}"
- },
- {
- "npc_id": "5844",
- "loc_data": "{3113,3473,0,1,7}"
- },
- {
- "npc_id": "5845",
- "loc_data": "{3115,3475,0,1,2}"
- },
- {
- "npc_id": "5846",
- "loc_data": "{3110,3471,0,0,2}"
- },
- {
- "npc_id": "5847",
- "loc_data": "{3115,3476,0,1,6}"
- },
- {
- "npc_id": "5848",
- "loc_data": "{3116,3475,0,1,1}"
- },
- {
- "npc_id": "5849",
- "loc_data": "{3112,3473,0,1,3}"
- },
- {
- "npc_id": "5850",
- "loc_data": "{3115,3476,0,1,4}"
- },
- {
- "npc_id": "5851",
- "loc_data": "{3119,3474,0,1,5}"
- },
- {
- "npc_id": "5869",
- "loc_data": "{2744,5344,0,0,0}"
- },
- {
- "npc_id": "5887",
- "loc_data": "{2737,5351,1,0,0}"
- },
- {
- "npc_id": "5909",
- "loc_data": "{3224,3402,0,1,4}"
- },
- {
- "npc_id": "5910",
- "loc_data": "{3230,3401,0,0,0}-{3284,3491,0,1,1}"
- },
- {
- "npc_id": "5914",
- "loc_data": "{3204,3419,0,0,6}"
- },
- {
- "npc_id": "5915",
- "loc_data": "{3255,3488,1,0,6}"
- },
- {
- "npc_id": "5916",
- "loc_data": "{3250,3429,0,1,5}"
- },
- {
- "npc_id": "5917",
- "loc_data": "{3200,3399,0,1,4}-{3262,3410,0,1,3}-{3176,3431,0,1,5}-{3261,3424,0,1,2}"
- },
- {
- "npc_id": "5918",
- "loc_data": "{3233,3394,0,0,7}-{3271,3399,0,1,3}"
- },
- {
- "npc_id": "5919",
- "loc_data": "{3244,3498,0,1,1}-{3244,3503,0,1,6}-{3247,3500,0,1,3}-{3175,3432,0,1,3}-{3175,3427,0,1,5}-{3205,3379,0,1,6}-{3211,3381,0,1,3}-{3172,3430,0,1,2}-{3175,3416,1,1,6}-{3175,3404,1,1,7}"
- },
- {
- "npc_id": "5920",
- "loc_data": "{3175,3421,0,1,0}-{3273,3430,0,1,0}-{3211,3378,0,1,0}-{3272,3429,0,1,1}-{3274,3427,0,1,3}-{3220,3461,0,1,3}-{3221,3464,0,1,4}-{3213,3466,0,1,1}-{3214,3461,0,1,5}-{3215,3464,0,1,0}-{3208,3467,0,1,6}-{3209,3460,0,1,4}-{3205,3463,0,1,4}"
- },
- {
- "npc_id": "5923",
- "loc_data": "{3224,3394,1,1,6}"
- },
- {
- "npc_id": "5924",
- "loc_data": "{3227,3396,0,1,1}"
- },
- {
- "npc_id": "5925",
- "loc_data": "{3220,3433,0,1,5}"
- },
- {
- "npc_id": "5926",
- "loc_data": "{3229,3392,0,1,6}-{3184,3386,0,1,4}-{3247,9775,0,1,3}-{3185,3391,0,1,5}-{3240,9770,0,1,4}-{3235,9766,0,1,3}"
- },
- {
- "npc_id": "5927",
- "loc_data": "{3250,9776,0,1,3}"
- },
- {
- "npc_id": "5928",
- "loc_data": "{3249,9772,0,1,5}"
- },
- {
- "npc_id": "5929",
- "loc_data": "{3245,9772,0,1,7}-{3239,9766,0,1,2}"
- },
- {
- "npc_id": "5930",
- "loc_data": "{3257,3454,2,0,0}"
- },
- {
- "npc_id": "5932",
- "loc_data": "{3255,3442,0,0,0}"
- },
- {
- "npc_id": "5933",
- "loc_data": "{3254,3443,0,0,0}"
- },
- {
- "npc_id": "5934",
- "loc_data": "{3259,3443,0,0,0}"
- },
- {
- "npc_id": "5935",
- "loc_data": "{3260,3442,0,0,0}"
- },
- {
- "npc_id": "5938",
- "loc_data": "{3253,3454,0,0,0}"
- },
- {
- "npc_id": "5939",
- "loc_data": "{3253,3453,1,1,0}"
- },
- {
- "npc_id": "5940",
- "loc_data": "{3262,3442,1,1,0}"
- },
- {
- "npc_id": "5941",
- "loc_data": "{3260,3447,0,0,0}"
- },
- {
- "npc_id": "5943",
- "loc_data": "{3263,3441,0,0,0}"
- },
- {
- "npc_id": "5944",
- "loc_data": "{3263,3450,0,0,0}-{1746,4961,0,1,4}-{1761, 4938, 0, 1, 4}-{1761, 4976, 0, 1, 5}"
- },
- {
- "npc_id": "5946",
- "loc_data": "{3261,3455,0,1,0}-{1758,4945,0,1,4}-{1757, 4935, 0, 1, 4}-{1746, 4980, 0, 1, 4}"
- },
- {
- "npc_id": "5947",
- "loc_data": "{3260,3452,0,1,0}-{3261,3451,2,1,0}-{1735,4950,0,1,4}-{1759, 4948, 0, 1, 4}-{1780, 4960, 0, 1, 4}-{1760, 4974, 0, 1, 5}"
- },
- {
- "npc_id": "5956",
- "loc_data": "{2659,2664,0,1,3}"
- },
- {
- "npc_id": "5984",
- "loc_data": "{3263,3452,0,1,0}-{1743,4950,0,1,4}-{1770, 4935, 0, 1, 4}-{1772, 4962, 0, 1, 4}-{1771, 4957, 0, 1, 4}-{1777, 4976, 0, 1, 6}"
- },
- {
- "npc_id": "5987",
- "loc_data": "{2891,3455,0,1,0}"
- },
- {
- "npc_id": "5991",
- "loc_data": "{2966,3466,0,0,0}"
- },
- {
- "npc_id": "5997",
- "loc_data": "{2862,3511,0,0,0}"
- },
- {
- "npc_id": "5998",
- "loc_data": "{2971,3473,0,0,0}"
- },
- {
- "npc_id": "6026",
- "loc_data": "{3489,3490,0,1,3}"
- },
- {
- "npc_id": "6027",
- "loc_data": "{3493,3472,0,1,4}"
- },
- {
- "npc_id": "6028",
- "loc_data": "{3497,3497,0,1,2}"
- },
- {
- "npc_id": "6030",
- "loc_data": "{3496,3476,0,1,2}"
- },
- {
- "npc_id": "6031",
- "loc_data": "{3511,3482,1,0,0}"
- },
- {
- "npc_id": "6032",
- "loc_data": "{3502,3487,0,1,1}"
- },
- {
- "npc_id": "6033",
- "loc_data": "{3484,3478,0,1,4}"
- },
- {
- "npc_id": "6034",
- "loc_data": "{3502,3493,0,1,3}"
- },
- {
- "npc_id": "6035",
- "loc_data": "{3486,3488,0,1,3}"
- },
- {
- "npc_id": "6036",
- "loc_data": "{3499,3474,1,0,0}"
- },
- {
- "npc_id": "6037",
- "loc_data": "{3499,3477,0,1,3}"
- },
- {
- "npc_id": "6038",
- "loc_data": "{3490,3472,1,0,0}"
- },
- {
- "npc_id": "6039",
- "loc_data": "{3483,3495,0,1,4}"
- },
- {
- "npc_id": "6040",
- "loc_data": "{3498,3472,1,0,0}"
- },
- {
- "npc_id": "6041",
- "loc_data": "{3479,3492,0,1,4}"
- },
- {
- "npc_id": "6042",
- "loc_data": "{3479,3498,0,1,4}"
- },
- {
- "npc_id": "6044",
- "loc_data": "{3505,3491,1,0,0}"
- },
- {
- "npc_id": "6045",
- "loc_data": "{3479,3498,1,0,0}"
- },
- {
- "npc_id": "6046",
- "loc_data": "{2835,3509,0,0,1}-{3306,5510,0,1,5}-{3309,5543,0,1,6}"
- },
- {
- "npc_id": "6047",
- "loc_data": "{2839,3497,0,1,6}-{2840,3504,0,1,4}"
- },
- {
- "npc_id": "6050",
- "loc_data": "{3291,3081,0,1,7}-{3298,3075,0,1,1}-{3284,3076,0,1,3}-{3266,3072,0,1,1}-{3259,3080,0,1,2}-{3246,3080,0,1,3}-{3252,3069,0,1,1}-{3244,3082,0,1,1}-{3235,3072,0,1,4}-{3242,3059,0,1,7}-{3235,3051,0,1,5}-{3248,3051,0,1,4}-{3257,3055,0,1,3}-{3263,3063,0,1,3}-{3267,3048,0,1,0}-{3253,3040,0,1,6}-{3243,3039,0,1,6}-{3254,3031,0,1,1}-{3243,3035,0,1,5}-{3232,3039,0,1,2}-{3230,3046,0,1,6}-{3219,3033,0,1,3}-{3219,3022,0,1,1}-{3227,3017,0,1,5}-{3235,3012,0,1,4}-{3243,3019,0,1,2}-{3251,3028,0,1,3}"
- },
- {
- "npc_id": "6051",
- "loc_data": "{3292,3069,0,1,1}-{3285,3071,0,1,1}-{3279,3078,0,1,4}-{3273,3065,0,1,3}-{3288,3066,0,1,6}-{3281,3057,0,1,5}-{3294,3056,0,1,5}-{3305,3064,0,1,3}-{3312,3075,0,1,6}-{3306,3086,0,1,4}-{3272,3082,0,1,4}"
- },
- {
- "npc_id": "6070",
- "loc_data": "{2589,4313,0,1,6}"
- },
- {
- "npc_id": "6072",
- "loc_data": "{2426,4442,0,0,0}"
- },
- {
- "npc_id": "6073",
- "loc_data": "{2424,4436,0,0,0}-{2594,4319,0,1,6}"
- },
- {
- "npc_id": "6074",
- "loc_data": "{2603,4306,0,1,4}-{2607,4312,0,1,7}-{2610,4319,0,1,6}-{2613,4326,0,1,5}-{2616,4333,0,1,0}-{2619,4340,0,1,6}-{2614,4344,0,1,3}-{2609,4347,0,1,4}-{2605,4347,0,1,4}-{2599,4345,0,1,3}-{2598,4342,0,1,3}-{2597,4339,0,1,3}-{2596,4336,0,1,3}-{2595,4333,0,1,3}-{2594,4330,0,1,4}-{2587,4330,0,1,3}-{2583,4332,0,1,4}-{2579,4335,0,1,3}-{2576,4339,0,1,4}-{2571,4342,0,1,1}-{2569,4332,0,1,4}-{2572,4326,0,1,6}-{2572,4297,0,1,1}-{2585,4291,0,1,3}-{2599,4297,0,1,4}-{2607,4300,0,1,1}-{2614,4301,0,1,6}-{2619,4305,0,1,0}-{2616,4320,0,1,6}-{2613,4327,0,1,0}-{2611,4335,0,1,6}-{2607,4336,0,1,6}-{2581,4322,0,1,1}-{2578,4315,0,1,6}-{2575,4308,0,1,6}-{2572,4301,0,1,4}-{2567,4295,0,1,3}-{2577,4291,0,1,3}-{2587,4298,0,1,3}-{2595,4307,0,1,3}-{2603,4314,0,1,3}"
- },
- {
- "npc_id": "6085",
- "loc_data": "{3046,3207,1,0,2}"
- },
- {
- "npc_id": "6088",
- "loc_data": "{2932,3253,0,1,4}-{2936,3249,0,1,2}-{2933,3244,0,1,4}-{2927,3247,0,1,5}-{2925,3256,0,1,0}"
- },
- {
- "npc_id": "6089",
- "loc_data": "{2932,3249,0,1,0}-{2929,3253,0,1,3}-{2938,3248,0,1,5}"
- },
- {
- "npc_id": "6090",
- "loc_data": "{2932,3245,0,1,0}-{2934,3246,0,1,3}"
- },
- {
- "npc_id": "6101",
- "loc_data": "{2932,9811,0,1,0}"
- },
- {
- "npc_id": "6102",
- "loc_data": "{1762,5329,0,1,1}"
- },
- {
- "npc_id": "6104",
- "loc_data": "{1751,5326,0,1,1}"
- },
- {
- "npc_id": "6105",
- "loc_data": "{1767,5355,0,0,6}"
- },
- {
- "npc_id": "6108",
- "loc_data": "{2854,3385,0,1,0}"
- },
- {
- "npc_id": "6109",
- "loc_data": "{2526,3215,0,1,6}-{2545,3231,0,1,4}-{2537,3236,0,1,4}"
- },
- {
- "npc_id": "6110",
- "loc_data": "{2532,3222,0,1,3}-{2533,3209,0,1,4}"
- },
- {
- "npc_id": "6112",
- "loc_data": "{3238,3247,0,1,0}"
- },
- {
- "npc_id": "6113",
- "loc_data": "{3232,3280,0,1,4}-{3222,3289,0,1,1}"
- },
- {
- "npc_id": "6114",
- "loc_data": "{3232,3283,0,1,1}"
- },
- {
- "npc_id": "6115",
- "loc_data": "{3033,3236,0,1,3}-{3041,3237,0,1,6}-{3035,3234,0,1,7}-{3028,3205,0,1,4}-{3019,3202,0,1,6}-{3026,3203,0,1,1}"
- },
- {
- "npc_id": "6116",
- "loc_data": "{3030,3244,0,1,0}-{3025,3203,0,1,3}-{3034,3204,0,1,4}"
- },
- {
- "npc_id": "6127",
- "loc_data": "{2467,3183,0,0,3}"
- },
- {
- "npc_id": "6128",
- "loc_data": "{2465,3183,0,0,4}"
- },
- {
- "npc_id": "6129",
- "loc_data": "{2470,3185,0,0,6}"
- },
- {
- "npc_id": "6135",
- "loc_data": "{3254,3427,0,1,1}"
- },
- {
- "npc_id": "6136",
- "loc_data": "{3077,3250,0,1,0}"
- },
- {
- "npc_id": "6137",
- "loc_data": "{2952,3381,0,1,0}"
- },
- {
- "npc_id": "6138",
- "loc_data": "{2665,3311,0,0,0}"
- },
- {
- "npc_id": "6139",
- "loc_data": "{2734,3484,0,1,1}"
- },
- {
- "npc_id": "6140",
- "loc_data": "{2644,2641,0,0,6}"
- },
- {
- "npc_id": "6141",
- "loc_data": "{2638,2656,0,0,0}"
- },
- {
- "npc_id": "6166",
- "loc_data": "{1904,4279,0,0,0}"
- },
- {
- "npc_id": "6167",
- "loc_data": "{1906,4277,0,0,0}"
- },
- {
- "npc_id": "6168",
- "loc_data": "{1904,4274,0,0,0}"
- },
- {
- "npc_id": "6188",
- "loc_data": "{1901,4271,0,0,0}-{1909,4271,0,0,0}"
- },
- {
- "npc_id": "6189",
- "loc_data": "{3016,3516,0,1,7}"
- },
- {
- "npc_id": "6190",
- "loc_data": "{1906,4270,0,1,0}"
- },
- {
- "npc_id": "6200",
- "loc_data": "{2947,3366,0,0,1}-{2949,3366,0,0,1}-{2946,3366,0,0,1}-{2948,3366,0,0,1}-{3010,3353,0,0,1}-{3011,3353,0,0,1}-{3012,3353,0,0,1}-{3013,3353,0,0,1}-{3014,3353,0,0,1}-{3015, 3353, 0, 0, 1}-{2945, 3366, 0, 0, 1}"
- },
- {
- "npc_id": "6202",
- "loc_data": "{2912,3749,0,0,0}"
- },
- {
- "npc_id": "6203",
- "loc_data": "{2924,5322,2,1,4}"
- },
- {
- "npc_id": "6205",
- "loc_data": "{2933,5329,2,1,1}"
- },
- {
- "npc_id": "6210",
- "loc_data": "{2927,5340,2,1,3}-{2884,5325,2,1,3}-{2837,5336,2,1,4}-{2876,5326,2,1,4}-{2898,5306,2,1,5}-{2886,5325,2,1,1}-{2838,5336,2,1,4}-{2919,5345,2,1,5}"
- },
- {
- "npc_id": "6211",
- "loc_data": "{2920,5353,2,1,4}-{2902,5357,2,1,4}-{2885,5315,2,1,4}-{2898,5313,2,1,2}-{2908,5354,2,1,2}-{2924,5354,2,1,6}-{2925,5352,2,1,3}-{2928,5355,2,1,6}"
- },
- {
- "npc_id": "6212",
- "loc_data": "{2920,5339,2,1,1}-{2836,5289,2,1,0}-{2869,5287,2,1,1}-{2867,5333,2,1,0}-{2921,5293,1,1,6}-{2877,5321,2,1,1}-{2888,5326,2,1,3}-{2872,5318,2,1,2}-{2894,5286,2,1,7}-{2896,5312,2,1,4}-{2894,5322,2,1,3}-{2836,5349,2,1,2}-{2858,5267,2,1,6}"
- },
- {
- "npc_id": "6213",
- "loc_data": "{2894,5353,2,1,0}-{2838,5347,2,1,6}-{2872,5318,2,1,4}-{2875,5313,2,1,4}-{2865,5327,2,1,4}-{2886,5293,2,1,5}-{2909,5297,2,1,0}-{2919,5293,3,1,4}-{2843,5352,2,1,4}-{2908,5346,2,1,6}-{2913,5355,2,1,3}-{2916,5345,2,1,1}-{2919,5349,2,1,2}-{2922,5356,2,1,1}-{2927,5354,2,1,6}-{2928,5350,2,1,4}-{2931,5357,2,1,3}-{2911,5338,2,1,6}-{2925,5295,3,1,0}-{2862,5290,2,1,1}-{2919,5293,1,1,5}"
- },
- {
- "npc_id": "6214",
- "loc_data": "{2919,5284,1,1,0}-{2862,5292,2,1,7}-{2864,5319,2,1,7}-{2828,5337,2,1,6}-{2878,5327,2,1,4}-{2884,5312,2,1,2}-{2883,5320,2,1,0}-{2895,5309,2,1,6}-{2853,5327,2,1,4}-{2854,5345,2,1,2}-{2861,5292,2,1,4}-{2881,5291,2,1,1}-{2892,5328,2,1,1}-{2828,5331,2,1,1}-{2924,5292,3,1,6}-{2918,5281,1,1,1}-{2918,5280,1,1,1}"
- },
- {
- "npc_id": "6215",
- "loc_data": "{2926,5345,2,1,7}-{2888,5361,2,1,5}-{2856,5349,2,1,1}-{2839,5275,2,1,5}-{2880,5293,2,1,4}-{2886,5313,2,1,3}-{2862,5334,2,1,0}-{2881,5320,2,1,3}-{2886,5325,2,1,2}-{2862,5337,2,1,4}-{2845,5286,2,1,0}-{2889,5322,2,1,4}-{2919,5359,2,1,0}-{2855,5352,2,1,1}-{2923,5357,2,1,6}-{2891,5353,2,1,1}-{2832,5288,2,1,6}"
- },
- {
- "npc_id": "6216",
- "loc_data": "{2888,5290,2,1,1}-{2865,5306,2,1,3}-{2871,5312,2,1,3}-{2867,5304,2,1,6}-{2871,5281,2,1,1}-{2864,5279,2,1,4}"
- },
- {
- "npc_id": "6217",
- "loc_data": "{2884,5307,2,1,0}-{2899,5304,2,1,3}-{2915,5270,0,1,5}"
- },
- {
- "npc_id": "6218",
- "loc_data": "{2906,5347,2,1,6}-{2913,5358,2,1,6}-{2856,5267,2,1,7}-{2911,5268,0,1,4}-{2887,5318,2,1,4}-{2888,5314,2,1,6}-{2859,5328,2,1,6}-{2861,5294,2,1,0}-{2931,5345,2,1,2}-{2903,5353,2,1,4}-{2836,5290,2,1,6}-{2907,5346,2,1,6}-{2921,5351,2,1,2}-{2858,5266,2,1,1}-{2916,5269,0,1,1}-{3044,5347,0,1,2}-{3041,5347,0,1,0}-{3031,5346,0,1,2}-{3023,5346,0,1,6}-{3038,5333,0,1,3}-{3048,5333,0,1,1}-{3054,5345,0,1,3}-{3043,5360,0,1,3}-{3030,5362,0,1,3}-{3040,5341,0,1,4}"
- },
- {
- "npc_id": "6219",
- "loc_data": "{2915,5340,2,1,6}"
- },
- {
- "npc_id": "6220",
- "loc_data": "{2931,5356,2,1,3}-{2846,5286,2,1,5}-{2937,5351,2,1,3}-{2848,5268,2,1,4}"
- },
- {
- "npc_id": "6221",
- "loc_data": "{2906,5354,2,1,7}-{2886,5354,2,1,5}-{2885,5352,2,1,2}-{2901,5362,2,1,1}-{2914,5344,2,1,3}-{2918,5343,2,1,2}-{2918,5361,2,1,0}-{2923,5345,2,1,3}-{2924,5352,2,1,4}"
- },
- {
- "npc_id": "6222",
- "loc_data": "{2831,5301,2,1,4}"
- },
- {
- "npc_id": "6229",
- "loc_data": "{2841,5285,2,1,3}-{2841,5289,2,1,1}-{2856,5264,2,1,5}-{2842,5282,2,1,6}"
- },
- {
- "npc_id": "6230",
- "loc_data": "{2843,5265,2,1,4}-{2851,5273,2,1,3}-{2846,5262,2,1,4}"
- },
- {
- "npc_id": "6231",
- "loc_data": "{2870,5265,2,1,0}-{2869,5266,2,1,7}-{2855,5273,2,1,2}-{2840,5263,2,1,3}-{2831,5285,2,1,4}"
- },
- {
- "npc_id": "6232",
- "loc_data": "{2872,5261,2,1,4}-{2863,5308,2,1,1}-{2872,5288,2,1,4}"
- },
- {
- "npc_id": "6233",
- "loc_data": "{2861,5261,2,1,0}-{2852,5264,2,1,0}-{2865,5263,2,1,6}"
- },
- {
- "npc_id": "6234",
- "loc_data": "{2862,5313,2,1,3}-{2839,5293,2,1,0}-{2842,5264,2,1,4}"
- },
- {
- "npc_id": "6235",
- "loc_data": "{2864,5270,2,1,3}-{2869,5314,2,1,3}-{2859,5303,2,1,4}-{2863,5293,2,1,7}-{2862,5286,2,1,1}"
- },
- {
- "npc_id": "6236",
- "loc_data": "{2854,5271,2,1,6}-{2872,5267,2,1,0}-{2858,5269,2,1,5}"
- },
- {
- "npc_id": "6237",
- "loc_data": "{2840,5290,2,1,6}-{2841,5269,2,1,7}-{2833,5292,2,1,3}"
- },
- {
- "npc_id": "6238",
- "loc_data": "{2874,5308,2,1,3}-{2851,5276,2,1,2}-{2864,5268,2,1,2}"
- },
- {
- "npc_id": "6239",
- "loc_data": "{2875,5298,2,1,4}-{2846,5288,2,1,0}-{2845,5281,2,1,1}-{2824,5216,2,1,7}"
- },
- {
- "npc_id": "6240",
- "loc_data": "{2837,5269,2,1,2}-{2860,5300,2,1,1}-{2852,5311,2,1,4}-{2879,5286,2,1,5}"
- },
- {
- "npc_id": "6241",
- "loc_data": "{2863,5272,2,1,6}-{2850,5269,2,1,7}"
- },
- {
- "npc_id": "6242",
- "loc_data": "{2836,5272,2,1,1}"
- },
- {
- "npc_id": "6243",
- "loc_data": "{2848,5275,2,1,0}-{2869,5304,2,1,4}-{2850,5292,2,1,1}-{2857,5300,2,1,3}-{2874,5287,2,1,4}"
- },
- {
- "npc_id": "6244",
- "loc_data": "{2847,5299,2,1,6}-{2844,5283,2,1,6}"
- },
- {
- "npc_id": "6245",
- "loc_data": "{2861,5299,2,1,4}-{2833,5290,2,1,1}-{2851,5262,2,1,0}"
- },
- {
- "npc_id": "6246",
- "loc_data": "{2855,5311,2,1,1}-{2872,5299,2,1,0}-{2872,5315,2,1,1}-{2856,5284,2,1,4}"
- },
- {
- "npc_id": "6247",
- "loc_data": "{2894,5265,0,1,2}"
- },
- {
- "npc_id": "6254",
- "loc_data": "{2917,5272,0,1,7}-{2898,5295,2,1,4}-{2881,5283,2,1,1}-{2883,5311,2,1,2}-{2894,5301,2,1,3}-{2882,5284,2,1,5}-{2890,5292,2,1,4}-{2896,5296,2,1,2}-{2905,5299,2,1,3}-{2905,5301,2,1,5}-{2921,5283,3,1,1}-{2925,5292,3,1,7}-{2906,5299,0,1,6}-{2910,5297,0,1,6}-{2915,5270,0,1,2}-{2910,5269,0,1,5}"
- },
- {
- "npc_id": "6255",
- "loc_data": "{2922,5290,1,1,5}-{2880,5304,2,1,1}-{2884,5311,2,1,2}-{2885,5311,2,1,2}-{2887,5312,2,1,1}-{2886,5313,2,1,0}-{2895,5310,2,1,1}-{2884,5280,2,1,3}-{2885,5293,2,1,6}-{2886,5291,2,1,6}-{2894,5285,2,1,3}-{2893,5286,2,1,7}-{2905,5292,2,1,4}-{2908,5297,2,1,4}-{2910,5297,2,1,6}-{2897,5308,2,1,4}-{2919,5299,3,1,1}-{2921,5292,3,1,5}-{2924,5288,3,1,0}-{2925,5287,3,1,1}-{2908,5300,0,1,6}-{2907,5294,0,1,6}-{2923,5293,1,1,5}-{2919,5298,1,1,1}-{2922,5291,1,1,6}-{2917,5285,1,1,0}-{2905,5295,0,1,6}"
- },
- {
- "npc_id": "6256",
- "loc_data": "{2922,5285,1,1,0}-{2886,5295,2,1,1}-{2891,5300,2,1,1}-{2889,5310,2,1,2}-{2887,5299,2,1,6}-{2891,5297,2,1,3}-{2884,5283,2,1,3}-{2885,5286,2,1,3}-{2886,5294,2,1,1}-{2896,5286,2,1,4}-{2908,5302,2,1,1}-{2919,5290,3,1,1}-{2923,5298,3,1,4}-{2924,5298,3,1,4}-{2911,5298,0,1,6}-{2919,5293,1,1,1}-{2917,5294,1,1,2}-{2923,5284,1,1,1}-{2916,5267,0,1,2}"
- },
- {
- "npc_id": "6257",
- "loc_data": "{2913,5267,0,1,6}-{2892,5291,2,1,4}-{2895,5313,2,1,6}-{2879,5329,2,1,5}-{2886,5311,2,1,0}-{2888,5305,2,1,3}-{2877,5293,2,1,5}-{2894,5284,2,1,0}-{2900,5287,2,1,0}-{2905,5302,2,1,1}-{2898,5307,2,1,6}-{2918,5292,3,1,3}-{2924,5286,3,1,0}-{2924,5292,3,1,1}-{2924,5297,3,1,3}-{2926,5285,3,1,1}-{2921,5289,1,1,6}-{2923,5294,1,1,0}-{2922,5285,1,1,3}-{2915,5273,0,1,7}-{2915,5271,0,1,4}"
- },
- {
- "npc_id": "6258",
- "loc_data": "{2918,5289,1,1,6}-{2884,5287,2,1,0}-{2895,5294,2,1,4}-{2897,5307,2,1,7}-{2918,5298,3,1,5}-{2917,5291,1,1,4}-{2916,5269,0,1,2}"
- },
- {
- "npc_id": "6259",
- "loc_data": "{2890,5304,2,1,7}-{2886,5299,2,1,3}-{2891,5297,2,1,5}-{2890,5291,2,1,3}-{2900,5286,2,1,7}-{2905,5303,2,1,1}-{2918,5282,3,1,6}-{2924,5295,3,1,2}-{2905,5297,0,1,6}-{2920,5291,1,1,5}-{2930,5290,0,1,6}"
- },
- {
- "npc_id": "6260",
- "loc_data": "{2870,5359,2,1,4}"
- },
- {
- "npc_id": "6262",
- "loc_data": "{2873,5356,0,1,1}-{2866,5358,2,1,6}"
- },
- {
- "npc_id": "6264",
- "loc_data": "{2870,5354,2,1,4}"
- },
- {
- "npc_id": "6266",
- "loc_data": "{2868,5362,2,1,3}"
- },
- {
- "npc_id": "6268",
- "loc_data": "{2856,5355,2,1,7}-{2838,5358,2,1,2}-{2841,5319,2,1,7}-{2856,5331,2,1,2}-{2854,5325,2,1,2}-{2873,5323,2,1,6}-{2860,5321,2,1,7}-{2868,5334,2,1,0}-{2856,5328,2,1,6}-{2855,5332,2,1,1}-{2845,5339,2,1,5}-{2831,5320,2,1,3}-{2847,5334,2,1,1}-{2858,5349,2,1,2}-{2829,5339,2,1,6}-{2856,5361,2,1,5}-{2839,5360,2,1,6}"
- },
- {
- "npc_id": "6269",
- "loc_data": "{2846,5351,2,1,3}-{2846,5339,2,1,2}-{2840,5327,2,1,1}-{2836,5345,2,1,7}-{2834,5328,2,1,2}-{2857,5359,2,1,4}-{2846,5357,2,1,3}"
- },
- {
- "npc_id": "6270",
- "loc_data": "{2845,5336,2,1,2}-{2848,5344,2,1,6}-{2842,5328,2,1,6}-{2844,5349,2,1,2}-{2836,5323,2,1,4}-{2832,5353,2,1,6}-{2848,5358,2,1,7}"
- },
- {
- "npc_id": "6271",
- "loc_data": "{2840,5330,2,1,0}-{2859,5328,2,1,6}-{2873,5317,2,1,3}-{2862,5332,2,1,2}-{2869,5332,2,1,6}"
- },
- {
- "npc_id": "6272",
- "loc_data": "{2838,5326,2,1,4}-{2870,5313,2,1,1}-{2865,5332,2,1,0}-{2838,5334,2,1,6}-{2837,5353,2,1,7}"
- },
- {
- "npc_id": "6273",
- "loc_data": "{2832,5324,2,1,7}-{2864,5325,2,1,2}-{2873,5325,2,1,7}-{2873,5324,2,1,7}-{2865,5336,2,1,6}-{2840,5333,2,1,6}-{2836,5336,2,1,4}-{2838,5354,2,1,6}"
- },
- {
- "npc_id": "6274",
- "loc_data": "{2858,5325,2,1,4}-{2873,5319,2,1,6}-{2872,5307,2,1,5}-{2867,5333,2,1,6}-{2866,5333,2,1,0}-{2839,5331,2,1,5}-{2837,5355,2,1,6}"
- },
- {
- "npc_id": "6275",
- "loc_data": "{2865,5340,2,1,1}-{2869,5326,2,1,7}-{2875,5318,2,1,1}-{2875,5314,2,1,1}-{2878,5313,2,1,3}-{2879,5322,2,1,3}-{2859,5317,2,1,6}-{2858,5319,2,1,4}-{2878,5320,2,1,0}-{2863,5337,2,1,7}-{2862,5338,2,1,7}-{2867,5341,2,1,6}-{2852,5312,2,1,2}"
- },
- {
- "npc_id": "6276",
- "loc_data": "{2856,5360,2,1,7}-{2854,5346,2,1,3}-{2845,5332,2,1,0}-{2845,5344,2,1,3}-{2848,5349,2,1,6}-{2837,5347,2,1,3}-{2835,5324,2,1,2}-{2835,5321,2,1,5}-{2858,5349,2,1,4}-{2830,5339,2,1,3}-{2828,5332,2,1,3}-{2846,5358,2,1,4}-{2855,5356,2,1,7}"
- },
- {
- "npc_id": "6277",
- "loc_data": "{2843,5341,2,1,3}-{2843,5331,2,1,3}-{2847,5341,2,1,5}-{2852,5350,2,1,1}-{2844,5341,2,1,6}-{2843,5347,2,1,1}-{2836,5325,2,1,6}-{2826,5335,2,1,2}-{2837,5351,2,1,4}-{2845,5353,2,1,3}-{2840,5361,2,1,3}"
- },
- {
- "npc_id": "6278",
- "loc_data": "{2845,5359,2,1,4}-{2830,5318,2,1,3}-{2848,5342,2,1,0}-{2846,5332,2,1,1}-{2843,5320,2,1,3}-{2838,5329,2,1,1}-{2855,5349,2,1,0}-{2837,5342,2,1,1}-{2792,5280,2,1,6}-{2827,5331,2,1,6}-{2830,5315,2,1,6}-{2845,5352,2,1,6}-{2839,5360,2,1,6}-{2851,5359,2,1,7}-{2860,5353,2,1,6}"
- },
- {
- "npc_id": "6279",
- "loc_data": "{2857,5315,2,1,6}-{2859,5318,2,1,5}-{2858,5329,2,1,3}-{2879,5326,2,1,4}"
- },
- {
- "npc_id": "6280",
- "loc_data": "{2869,5332,2,1,6}-{2871,5313,2,1,2}-{2879,5330,2,1,2}-{2877,5327,2,1,0}"
- },
- {
- "npc_id": "6281",
- "loc_data": "{2865,5316,2,1,2}-{2861,5333,2,1,2}"
- },
- {
- "npc_id": "6282",
- "loc_data": "{2874,5318,2,1,0}-{2859,5316,2,1,3}-{2878,5329,2,1,2}-{2858,5330,2,1,2}"
- },
- {
- "npc_id": "6283",
- "loc_data": "{2877,5326,2,1,2}-{2857,5328,2,1,3}-{2861,5315,2,1,7}"
- },
- {
- "npc_id": "6339",
- "loc_data": "{2547,3277,0,0,0}"
- },
- {
- "npc_id": "6345",
- "loc_data": "{2518,3275,0,0,0}"
- },
- {
- "npc_id": "6346",
- "loc_data": "{2799,3186,0,1,7}-{2797,3169,0,0,0}-{2793,3161,0,1,3}"
- },
- {
- "npc_id": "6347",
- "loc_data": "{2799,3167,0,0,0}-{2787,3188,0,1,1}"
- },
- {
- "npc_id": "6348",
- "loc_data": "{2793,3158,0,1,3}-{2798,3154,0,1,4}-{2796,3189,0,1,0}"
- },
- {
- "npc_id": "6349",
- "loc_data": "{2797,3186,0,1,6}-{2793,3161,0,1,0}"
- },
- {
- "npc_id": "6350",
- "loc_data": "{2798,3182,0,1,7}-{2793,3161,0,1,1}"
- },
- {
- "npc_id": "6357",
- "loc_data": "{3359,2969,0,1,3}"
- },
- {
- "npc_id": "6362",
- "loc_data": "{3270,4856,0,1,3}"
- },
- {
- "npc_id": "6363",
- "loc_data": "{3251,5455,0,1,4}-{3258,5456,0,1,6}-{3257,5451,0,1,6}-{3257,5464,0,1,2}-{3256,5473,0,1,2}-{3244,5469,0,1,1}-{3269,4829,0,1,3}-{3271,4823,0,1,2}-{3283,4809,0,1,3}-{3190,5523,0,1,3}-{3225,5485,0,1,5}-{3219,5528,0,1,2}-{3223,5520,0,1,3}-{3225,5511,0,1,0}-{3236,5511,0,1,6}-{3232,5523,0,1,0}-{3239,5530,0,1,4}-{3233,5546,0,1,3}-{3222,5539,0,1,5}-{3218,5482,0,1,7}-{3219,5486,0,1,4}-{3207,5461,0,1,6}-{3208,5458,0,1,3}-{3194,5530,0,1,3}"
- },
- {
- "npc_id": "6364",
- "loc_data": "{3271,4809,0,1,3}-{3188,5529,0,1,3}-{3194,5531,0,1,1}-{3222,5486,0,1,3}-{3221,5482,0,1,4}-{3212,5459,0,1,6}-{3210,5462,0,1,2}-{3188,5527,0,1,3}-{3234,5510,0,1,6}"
- },
- {
- "npc_id": "6365",
- "loc_data": "{3267,4817,0,1,4}-{3290,4803,0,1,3}"
- },
- {
- "npc_id": "6367",
- "loc_data": "{3276,4808,0,1,3}-{3291,4812,0,1,6}-{3207,5466,0,1,6}-{3223,5462,0,1,1}-{3237,5524,0,1,6}-{3229,5510,0,1,4}"
- },
- {
- "npc_id": "6368",
- "loc_data": "{3226,5458,0,1,3}-{3222,5470,0,1,6}-{3238,5541,0,1,1}-{3226,5540,0,1,7}-{3222,5522,0,1,7}"
- },
- {
- "npc_id": "6369",
- "loc_data": "{3268,4825,0,1,6}-{3268,4809,0,1,4}-{3288,4803,0,1,6}-{3298,4810,0,1,4}"
- },
- {
- "npc_id": "6376",
- "loc_data": "{2925,2976,0,1,1}-{2909,2978,0,1,5}"
- },
- {
- "npc_id": "6377",
- "loc_data": "{2920,2973,0,1,6}-{2919,2976,0,1,6}-{2910,2978,0,1,7}"
- },
- {
- "npc_id": "6379",
- "loc_data": "{2894,2995,0,0,0}-{2909,2970,0,0,0}-{3303,5485,0,1,1}-{3320,5494,0,1,4}-{3313,5490,0,1,4}-{3315,5484,0,1,3}-{3323,5471,0,1,6}-{3319,5471,0,1,4}-{3323,5477,0,1,0}-{3310,5484,0,1,4}-{3313,5488,0,1,6}-{3309,5481,0,1,1}-{3320,5495,0,1,0}"
- },
- {
- "npc_id": "6380",
- "loc_data": "{2883,2994,0,0,0}-{2882,2994,0,0,0}-{3319,5490,0,1,5}-{3298,5486,0,1,3}-{3312,5480,0,1,4}-{3315,5480,0,1,1}-{3308,5482,0,1,2}-{3321,5477,0,1,0}-{3317,5470,0,1,6}-{3324,5472,0,1,6}-{3311,5482,0,1,0}"
- },
- {
- "npc_id": "6383",
- "loc_data": "{2888,3001,0,0,0}-{2891,3002,0,0,0}-{2890,2998,0,0,0}-{2887,2994,0,0,0}-{2901,2991,0,0,0}-{2905,2990,0,0,0}-{2886,2989,0,0,0}-{2927,2979,0,0,0}-{2926,2973,0,0,0}-{2919,2973,0,0,0}-{2919,2976,0,0,0}-{2920,2979,0,0,0}"
- },
- {
- "npc_id": "6386",
- "loc_data": "{2683,3326,0,0,0}"
- },
- {
- "npc_id": "6387",
- "loc_data": "{3275,4808,0,1,3}-{3276,4808,0,1,4}"
- },
- {
- "npc_id": "6388",
- "loc_data": "{3369,2999,0,1,7}-{3368,2995,0,1,6}-{3362,2997,0,1,3}-{3361,2988,0,1,2}-{3367,2988,0,1,7}-{3379,2983,0,1,1}"
- },
- {
- "npc_id": "6390",
- "loc_data": "{1707,4814,0,0,6}"
- },
- {
- "npc_id": "6394",
- "loc_data": "{2703,5366,0,0,0}"
- },
- {
- "npc_id": "6396",
- "loc_data": "{2791,4279,0,0,0}"
- },
- {
- "npc_id": "6405",
- "loc_data": "{2799,4260,0,1,0}"
- },
- {
- "npc_id": "6406",
- "loc_data": "{2765,4267,0,1,0}"
- },
- {
- "npc_id": "6407",
- "loc_data": "{2802,4246,0,1,0}"
- },
- {
- "npc_id": "6408",
- "loc_data": "{2770,4238,0,1,0}"
- },
- {
- "npc_id": "6409",
- "loc_data": "{2787,4262,0,1,0}-{2792,4275,0,1,0}"
- },
- {
- "npc_id": "6410",
- "loc_data": "{2766,4257,0,1,0}"
- },
- {
- "npc_id": "6416",
- "loc_data": "{2801,4258,0,1,0}"
- },
- {
- "npc_id": "6417",
- "loc_data": "{2765,4264,0,1,0}-{2777,4260,0,1,0}"
- },
- {
- "npc_id": "6418",
- "loc_data": "{2799,4243,0,1,0}"
- },
- {
- "npc_id": "6419",
- "loc_data": "{2771,4237,0,1,0}"
- },
- {
- "npc_id": "6420",
- "loc_data": "{2796,4277,0,1,0}"
- },
- {
- "npc_id": "6421",
- "loc_data": "{2768,4254,0,1,0}"
- },
- {
- "npc_id": "6427",
- "loc_data": "{2802,4259,0,1,0}"
- },
- {
- "npc_id": "6428",
- "loc_data": "{2768,4268,0,1,0}"
- },
- {
- "npc_id": "6429",
- "loc_data": "{2776,4252,0,1,0}-{2805,4242,0,1,0}"
- },
- {
- "npc_id": "6430",
- "loc_data": "{2769,4236,0,1,0}"
- },
- {
- "npc_id": "6431",
- "loc_data": "{2792,4260,0,1,0}-{2796,4275,0,1,0}"
- },
- {
- "npc_id": "6432",
- "loc_data": "{2766,4255,0,1,0}"
- },
- {
- "npc_id": "6438",
- "loc_data": "{2790,4254,0,1,0}-{2800,4256,0,1,0}"
- },
- {
- "npc_id": "6439",
- "loc_data": "{2766,4265,0,1,0}"
- },
- {
- "npc_id": "6440",
- "loc_data": "{2789,4248,0,1,0}-{2802,4244,0,1,0}"
- },
- {
- "npc_id": "6441",
- "loc_data": "{2771,4241,0,1,0}-{2777,4252,0,1,0}"
- },
- {
- "npc_id": "6442",
- "loc_data": "{2795,4273,0,1,0}"
- },
- {
- "npc_id": "6443",
- "loc_data": "{2767,4252,0,1,0}-{2776,4250,0,1,0}"
- },
- {
- "npc_id": "6449",
- "loc_data": "{2792,4252,0,1,0}-{2800,4254,0,1,0}"
- },
- {
- "npc_id": "6450",
- "loc_data": "{2764,4266,0,1,0}-{2781,4261,0,1,0}"
- },
- {
- "npc_id": "6451",
- "loc_data": "{2802,4243,0,1,0}"
- },
- {
- "npc_id": "6452",
- "loc_data": "{2772,4235,0,1,0}"
- },
- {
- "npc_id": "6453",
- "loc_data": "{2797,4272,0,1,0}"
- },
- {
- "npc_id": "6454",
- "loc_data": "{2765,4253,0,1,0}-{2779,4256,0,1,0}"
- },
- {
- "npc_id": "6458",
- "loc_data": "{2784,4249,0,1,0}"
- },
- {
- "npc_id": "6459",
- "loc_data": "{2778,4264,0,1,0}-{2784,4252,0,1,0}"
- },
- {
- "npc_id": "6460",
- "loc_data": "{2783,4251,0,1,0}-{2789,4264,0,1,0}-{2801,4252,0,1,0}"
- },
- {
- "npc_id": "6461",
- "loc_data": "{2787,4250,0,1,0}-{2791,4249,0,1,0}"
- },
- {
- "npc_id": "6462",
- "loc_data": "{2785,4248,0,1,0}-{2786,4251,0,1,0}-{2801,4242,0,1,0}"
- },
- {
- "npc_id": "6463",
- "loc_data": "{2773,4238,0,1,0}-{2779,4248,0,1,0}-{2785,4250,0,1,0}"
- },
- {
- "npc_id": "6464",
- "loc_data": "{2796,4267,0,1,0}"
- },
- {
- "npc_id": "6465",
- "loc_data": "{2764,4251,0,1,0}"
- },
- {
- "npc_id": "6482",
- "loc_data": "{2801,4260,0,0,0}"
- },
- {
- "npc_id": "6483",
- "loc_data": "{2804,4246,0,0,0}"
- },
- {
- "npc_id": "6484",
- "loc_data": "{2795,4276,0,0,0}"
- },
- {
- "npc_id": "6485",
- "loc_data": "{2766,4250,0,0,0}"
- },
- {
- "npc_id": "6486",
- "loc_data": "{2774,4236,0,0,0}"
- },
- {
- "npc_id": "6487",
- "loc_data": "{2765,4268,0,0,0}"
- },
- {
- "npc_id": "6488",
- "loc_data": "{2784,4255,1,0,0}"
- },
- {
- "npc_id": "6489",
- "loc_data": "{2787,4266,0,0,0}"
- },
- {
- "npc_id": "6498",
- "loc_data": "{2796,4256,0,1,0}"
- },
- {
- "npc_id": "6499",
- "loc_data": "{2793,4247,0,1,0}"
- },
- {
- "npc_id": "6500",
- "loc_data": "{2793,4265,0,1,0}"
- },
- {
- "npc_id": "6501",
- "loc_data": "{2772,4256,0,1,0}"
- },
- {
- "npc_id": "6502",
- "loc_data": "{2775,4247,0,1,0}"
- },
- {
- "npc_id": "6503",
- "loc_data": "{2775,4265,0,1,0}"
- },
- {
- "npc_id": "6521",
- "loc_data": "{3161,3475,0,0,6}"
- },
- {
- "npc_id": "6522",
- "loc_data": "{3168,3475,0,0,6}"
- },
- {
- "npc_id": "6523",
- "loc_data": "{3173,3498,0,0,1}"
- },
- {
- "npc_id": "6524",
- "loc_data": "{3156,3481,0,0,1}"
- },
- {
- "npc_id": "6525",
- "loc_data": "{3175,3481,0,0,1}"
- },
- {
- "npc_id": "6526",
- "loc_data": "{3152,3490,0,0,1}"
- },
- {
- "npc_id": "6527",
- "loc_data": "{3154,3498,0,0,1}"
- },
- {
- "npc_id": "6528",
- "loc_data": "{3165,3491,0,0,1}"
- },
- {
- "npc_id": "6529",
- "loc_data": "{3164,3488,0,0,6}"
- },
- {
- "npc_id": "6530",
- "loc_data": "{3164,3491,0,0,1}"
- },
- {
- "npc_id": "6531",
- "loc_data": "{3165,3488,0,0,6}"
- },
- {
- "npc_id": "6532",
- "loc_data": "{3163,3489,0,0,3}"
- },
- {
- "npc_id": "6533",
- "loc_data": "{3166,3489,0,0,4}"
- },
- {
- "npc_id": "6534",
- "loc_data": "{3166,3490,0,0,4}"
- },
- {
- "npc_id": "6535",
- "loc_data": "{3163,3490,0,0,3}"
- },
- {
- "npc_id": "6538",
- "loc_data": "{3189,3690,0,0,3}"
- },
- {
- "npc_id": "6731",
- "loc_data": "{2655,5615,0,1,4}"
- },
- {
- "npc_id": "6750",
- "loc_data": "{2577,3078,0,1,3}"
- },
- {
- "npc_id": "6773",
- "loc_data": "{3439,2808,0,0,0}"
- },
- {
- "npc_id": "6774",
- "loc_data": "{3435,2808,0,0,0}"
- },
- {
- "npc_id": "6776",
- "loc_data": "{3441,2810,0,0,0}-{3445,2813,0,0,0}"
- },
- {
- "npc_id": "6777",
- "loc_data": "{3432,2810,0,0,0}"
- },
- {
- "npc_id": "6778",
- "loc_data": "{3440,2806,0,0,0}"
- },
- {
- "npc_id": "6779",
- "loc_data": "{3392,2759,0,1,2}-{3408,2763,0,1,7}-{3410,2786,0,1,2}-{3420,2778,0,1,6}-{3427,2792,0,1,6}-{3429,2802,0,1,4}"
- },
- {
- "npc_id": "6786",
- "loc_data": "{3409,2812,1,0,0}"
- },
- {
- "npc_id": "6787",
- "loc_data": "{3408,2813,1,0,0}"
- },
- {
- "npc_id": "6891",
- "loc_data": "{2598,3272,0,0,0}"
- },
- {
- "npc_id": "6893",
- "loc_data": "{2926,3435,0,1,2}"
- },
- {
- "npc_id": "6894",
- "loc_data": "{2928,3432,0,1,0}"
- },
- {
- "npc_id": "6895",
- "loc_data": "{2927,3431,0,1,0}"
- },
- {
- "npc_id": "6896",
- "loc_data": "{2573,3082,0,1,2}"
- },
- {
- "npc_id": "6897",
- "loc_data": "{2574,3083,0,1,0}"
- },
- {
- "npc_id": "6917",
- "loc_data": "{2916,3082,0,0,0}-{2917,3089,0,0,0}-{2912,3090,0,0,0}"
- },
- {
- "npc_id": "6918",
- "loc_data": "{2917,3088,0,1,4}-{2917,3092,0,1,4}"
- },
- {
- "npc_id": "6921",
- "loc_data": "{2974,3448,0,1,4}-{2971,3442,0,1,6}-{2968,3451,0,1,1}-{2967,3439,0,1,4}-{2965,3451,0,1,5}-{2954,3273,0,1,6}"
- },
- {
- "npc_id": "6942",
- "loc_data": "{2890,3100,0,1,4}"
- },
- {
- "npc_id": "6944",
- "loc_data": "{2855,3028,0,0,0}-{2841,3039,0,0,0}-{2838,3031,0,0,0}-{2836,3014,0,0,0}-{2839,3022,0,0,0}"
- },
- {
- "npc_id": "6962",
- "loc_data": "{2842,5222,0,1,6}"
- },
- {
- "npc_id": "6971",
- "loc_data": "{2926,3443,0,0,5}"
- },
- {
- "npc_id": "6972",
- "loc_data": "{2922,3482,0,1,0}"
- },
- {
- "npc_id": "6973",
- "loc_data": "{2893,3419,0,1,0}"
- },
- {
- "npc_id": "6974",
- "loc_data": "{2897,3419,0,1,0}"
- },
- {
- "npc_id": "6975",
- "loc_data": "{2928,3480,0,1,0}-{2932,3485,0,1,0}"
- },
- {
- "npc_id": "6976",
- "loc_data": "{2897,3432,1,1,0}-{2884,3418,0,1,0}-{2884,3434,0,1,0}-{2902,3449,0,1,0}"
- },
- {
- "npc_id": "6977",
- "loc_data": "{2890,3435,0,1,0}"
- },
- {
- "npc_id": "6978",
- "loc_data": "{2896,3437,0,1,0}-{2917,3446,0,1,0}"
- },
- {
- "npc_id": "6979",
- "loc_data": "{2888,3448,0,1,0}"
- },
- {
- "npc_id": "6981",
- "loc_data": "{2883,3431,0,1,0}-{2900,3449,0,1,0}"
- },
- {
- "npc_id": "6982",
- "loc_data": "{2918,3485,0,1,0}-{2896,3429,0,1,0}"
- },
- {
- "npc_id": "6983",
- "loc_data": "{2926,3488,0,1,0}-{2908,3441,0,1,0}"
- },
- {
- "npc_id": "6985",
- "loc_data": "{2894,3438,0,1,0}-{2913,3451,0,1,0}"
- },
- {
- "npc_id": "6986",
- "loc_data": "{2887,3441,0,1,0}"
- },
- {
- "npc_id": "6987",
- "loc_data": "{2894,3445,0,1,0}"
- },
- {
- "npc_id": "6997",
- "loc_data": "{3002,3257,0,0,0}-{3058,3429,0,0,0}-{3059,3420,0,0,0}-{3059,3425,0,0,0}-{3049,3429,0,0,0}-{3007,3261,0,0,0}"
- },
- {
- "npc_id": "7003",
- "loc_data": "{3253,5535,0,1,7}-{3230,5493,0,1,1}-{3224,5497,0,1,5}-{2582,9895,0,1,7}"
- },
- {
- "npc_id": "7004",
- "loc_data": "{3256,5540,0,1,4}-{3247,5536,0,1,6}-{3225,5495,0,1,4}-{2581,9891,0,1,2}"
- },
- {
- "npc_id": "7009",
- "loc_data": "{3282,3467,0,0,0}"
- },
- {
- "npc_id": "7021",
- "loc_data": "{2510,2822,0,1,3}-{2511,2823,0,1,4}-{2509,2825,0,1,6}"
- },
- {
- "npc_id": "7022",
- "loc_data": "{2503,2821,0,1,1}-{2500,2818,0,1,4}-{2503,2819,0,1,3}"
- },
- {
- "npc_id": "7023",
- "loc_data": "{2552,2821,0,1,4}-{2555,2826,0,1,5}-{2550,2821,0,1,1}"
- },
- {
- "npc_id": "7024",
- "loc_data": "{2523,2823,0,0,0}-{2525,2821,0,0,0}-{2525,2820,0,0,0}"
- },
- {
- "npc_id": "7025",
- "loc_data": "{2537,2820,0,0,0}-{2539,2819,0,0,0}-{2543,2817,0,0,0}"
- },
- {
- "npc_id": "7026",
- "loc_data": "{2543,2822,0,0,0}-{2542,2818,0,0,0}-{2549,2822,0,0,0}"
- },
- {
- "npc_id": "7031",
- "loc_data": "{2499,2820,0,1,4}-{2511,2819,0,1,3}-{2525,2820,0,1,0}-{2527,2818,0,1,3}-{2542,2819,0,1,4}-{2551,2817,0,1,3}-{2554,2819,0,1,3}-{2559,2819,0,1,4}-{2566,2820,0,1,5}-{2575,2818,0,1,4}-{2578,2819,0,1,4}-{2587,2819,0,1,7}-{2595,2821,0,1,4}-{2595,2826,0,1,0}-{2503,2824,0,1,3}-{2509,2822,0,1,4}-{2518,2825,0,1,7}-{2526,2822,0,1,1}-{2547,2822,0,1,4}-{2588,2801,0,1,1}-{2557,2826,0,1,4}-{2562,2819,0,1,6}-{2565,2828,0,1,0}-{2573,2825,0,1,1}-{2578,2820,0,1,6}-{2584,2822,0,1,4}-{2590,2831,0,1,4}-{2594,2823,0,1,4}-{2502,2823,0,1,4}-{2513,2820,0,1,7}-{2527,2819,0,1,4}-{2529,2818,0,1,6}-{2541,2822,0,1,3}-{2549,2817,0,1,2}-{2557,2818,0,1,2}-{2488,2768,0,1,1}"
- },
- {
- "npc_id": "7032",
- "loc_data": "{2539,2838,0,0,0}-{2542,2832,0,0,0}-{2532,2836,0,0,0}"
- },
- {
- "npc_id": "7033",
- "loc_data": "{2541,2837,0,0,0}-{2535,2832,0,0,0}-{2543,2832,0,0,0}"
- },
- {
- "npc_id": "7034",
- "loc_data": "{2536,2839,0,0,0}-{2537,2840,0,0,0}-{2533,2836,0,0,0}"
- },
- {
- "npc_id": "7035",
- "loc_data": "{2542,2839,0,0,0}-{2549,2835,0,0,0}-{2541,2839,0,0,0}"
- },
- {
- "npc_id": "7036",
- "loc_data": "{2538,2841,0,0,0}-{2537,2836,0,0,0}-{2531,2836,0,0,0}"
- },
- {
- "npc_id": "7039",
- "loc_data": "{2503,2824,0,1,4}-{2518,2824,0,1,4}-{2534,2821,0,1,1}-{2548,2823,0,1,4}-{2560,2822,0,1,1}-{2570,2823,0,1,1}-{2582,2824,0,1,6}-{2588,2828,0,1,4}-{2503,2825,0,1,4}-{2493,2828,0,1,3}-{2515,2823,0,1,6}-{2525,2827,0,1,4}-{2589,2808,0,1,2}-{2562,2825,0,1,7}-{2568,2820,0,1,4}-{2577,2821,0,1,4}-{2582,2832,0,1,6}-{2500,2818,0,1,1}-{2525,2827,0,1,7}-{2536,2826,0,1,2}-{2541,2819,0,1,4}-{2503,2822,0,1,3}"
- },
- {
- "npc_id": "7040",
- "loc_data": "{2563,2862,0,0,0}-{2563,2856,0,0,0}"
- },
- {
- "npc_id": "7041",
- "loc_data": "{2562,2863,0,0,0}-{2553,2861,0,0,0}"
- },
- {
- "npc_id": "7042",
- "loc_data": "{2551,2863,0,0,0}-{2552,2859,0,0,0}"
- },
- {
- "npc_id": "7043",
- "loc_data": "{2553,2862,0,0,0}-{2561,2861,0,0,0}"
- },
- {
- "npc_id": "7044",
- "loc_data": "{2467,2933,0,0,4}-{2470,2937,0,0,4}-{2445,2897,0,0,4}-{2444,2894,0,0,4}"
- },
- {
- "npc_id": "7045",
- "loc_data": "{2460,2922,0,0,4}-{2463,2928,0,0,4}"
- },
- {
- "npc_id": "7046",
- "loc_data": "{2460,2925,0,0,4}-{3364,3800,0,0,4}-{3368,3811,0,0,4}-{3347,3814,0,0,4}-{3363,3816,0,0,4}"
- },
- {
- "npc_id": "7047",
- "loc_data": "{2557,2836,0,0,0}-{2559,2838,0,0,0}"
- },
- {
- "npc_id": "7048",
- "loc_data": "{2545,2836,0,0,0}"
- },
- {
- "npc_id": "7049",
- "loc_data": "{2553,2839,0,0,4}-{2553,2836,0,0,4}"
- },
- {
- "npc_id": "7051",
- "loc_data": "{2547,2852,0,0,0}-{2549,2854,0,0,0}"
- },
- {
- "npc_id": "7052",
- "loc_data": "{2571,2855,0,0,0}"
- },
- {
- "npc_id": "7054",
- "loc_data": "{2561,2850,0,0,0}"
- },
- {
- "npc_id": "7055",
- "loc_data": "{2559,2851,0,0,0}-{2560,2852,0,0,0}"
- },
- {
- "npc_id": "7056",
- "loc_data": "{2560,2851,0,0,0}-{2561,2852,0,0,0}"
- },
- {
- "npc_id": "7057",
- "loc_data": "{2596,2845,0,0,0}"
- },
- {
- "npc_id": "7062",
- "loc_data": "{2571,2840,0,0,0}-{2572,2840,0,0,0}"
- },
- {
- "npc_id": "7065",
- "loc_data": "{2621,2857,1,0,0}-{2622,2857,0,0,0}"
- },
- {
- "npc_id": "7066",
- "loc_data": "{2619,2856,1,0,0}-{2620,2857,0,0,0}"
- },
- {
- "npc_id": "7067",
- "loc_data": "{2518,2842,0,0,0}"
- },
- {
- "npc_id": "7068",
- "loc_data": "{2531,2850,0,0,0}"
- },
- {
- "npc_id": "7069",
- "loc_data": "{2559,2858,0,0,0}"
- },
- {
- "npc_id": "7070",
- "loc_data": "{2581,2866,0,0,0}"
- },
- {
- "npc_id": "7071",
- "loc_data": "{2598,2864,0,0,0}"
- },
- {
- "npc_id": "7072",
- "loc_data": "{2517,2840,0,0,0}"
- },
- {
- "npc_id": "7073",
- "loc_data": "{2533,2848,0,0,0}"
- },
- {
- "npc_id": "7074",
- "loc_data": "{2556,2858,0,0,0}"
- },
- {
- "npc_id": "7075",
- "loc_data": "{2583,2865,0,0,0}"
- },
- {
- "npc_id": "7076",
- "loc_data": "{2596,2865,0,0,0}"
- },
- {
- "npc_id": "7077",
- "loc_data": "{2617,2856,1,0,0}-{2618,2857,0,0,0}"
- },
- {
- "npc_id": "7078",
- "loc_data": "{2502,2838,0,0,0}-{2478,2884,0,0,0}-{2476,2895,0,0,0}-{2472,2870,0,0,0}-{2455,2873,0,0,0}-{2455,2857,0,0,0}-{2474,2833,0,0,0}-{2505,2842,0,0,0}-{2507,2843,0,0,0}-{2481,2833,0,0,0}-{2476,2865,0,0,0}-{2456,2856,0,0,0}-{2454,2879,0,0,0}-{2472,2884,0,0,0}-{2475,2894,0,0,0}"
- },
- {
- "npc_id": "7079",
- "loc_data": "{2501,2851,0,0,0}-{2466,2878,0,0,0}-{2454,2847,0,0,0}-{2471,2857,0,0,0}-{2483,2840,0,0,0}-{2498,2854,0,0,0}-{2504,2851,0,0,0}-{2491,2838,0,0,0}-{2475,2852,0,0,0}-{2464,2873,0,0,0}-{2474,2903,0,0,0}-{2479,2906,0,0,0}"
- },
- {
- "npc_id": "7080",
- "loc_data": "{2508,2853,0,0,0}-{2492,2893,0,0,0}-{2483,2876,0,0,0}-{2456,2868,0,0,0}-{2459,2836,0,0,0}-{2514,2851,0,0,0}-{2506,2852,0,0,0}-{2487,2877,0,0,0}-{2486,2860,0,0,0}-{2458,2866,0,0,0}-{2416,2856,0,0,0}-{2495,2884,0,0,0}"
- },
- {
- "npc_id": "7081",
- "loc_data": "{2499,2860,0,0,0}-{2485,2892,0,0,0}-{2451,2870,0,0,0}-{2466,2864,0,0,0}-{2449,2826,0,0,0}-{2487,2842,0,0,0}-{2497,2863,0,0,0}-{2489,2843,0,0,0}-{2471,2860,0,0,0}-{2448,2870,0,0,0}-{2478,2888,0,0,0}-{2485,2922,0,0,0}"
- },
- {
- "npc_id": "7082",
- "loc_data": "{2516,2858,0,0,0}-{2493,2903,0,0,0}-{2485,2869,0,0,0}-{2484,2888,0,0,0}-{2444,2861,0,0,0}-{2457,2863,0,0,0}-{2474,2837,0,0,0}-{2521,2862,0,0,0}-{2483,2865,0,0,0}-{2474,2844,0,0,0}-{2460,2859,0,0,0}-{2492,2901,0,0,0}-{2486,2889,0,0,0}"
- },
- {
- "npc_id": "7091",
- "loc_data": "{2525,2852,0,0,0}-{2529,2844,0,0,0}"
- },
- {
- "npc_id": "7092",
- "loc_data": "{2526,2854,0,0,0}-{2528,2850,0,0,0}"
- },
- {
- "npc_id": "7093",
- "loc_data": "{2527,2853,0,0,0}-{2528,2849,0,0,0}"
- },
- {
- "npc_id": "7094",
- "loc_data": "{2527,2851,0,0,0}-{2523,2850,0,0,0}"
- },
- {
- "npc_id": "7095",
- "loc_data": "{2609,2863,0,0,0}-{2610,2862,0,0,0}"
- },
- {
- "npc_id": "7096",
- "loc_data": "{2610,2865,0,0,0}-{2605,2866,0,0,0}"
- },
- {
- "npc_id": "7097",
- "loc_data": "{2611,2862,0,0,0}-{2607,2867,0,0,0}"
- },
- {
- "npc_id": "7098",
- "loc_data": "{2611,2864,0,0,0}-{2608,2863,0,0,0}"
- },
- {
- "npc_id": "7099",
- "loc_data": "{2585,2844,0,0,0}-{2581,2845,0,0,0}"
- },
- {
- "npc_id": "7100",
- "loc_data": "{2586,2840,0,0,0}-{2587,2841,0,0,0}"
- },
- {
- "npc_id": "7101",
- "loc_data": "{2585,2842,0,0,0}"
- },
- {
- "npc_id": "7102",
- "loc_data": "{2576,2840,0,0,0}-{2576,2840,0,0,0}"
- },
- {
- "npc_id": "7103",
- "loc_data": "{2579,2843,0,0,0}-{2582,2843,0,0,0}-{2579,2843,0,0,0}-{2582,2843,0,0,0}"
- },
- {
- "npc_id": "7104",
- "loc_data": "{2549,2852,0,0,0}-{2547,2856,0,0,0}"
- },
- {
- "npc_id": "7105",
- "loc_data": "{3111,9929,0,1,7}-{3106,9941,0,1,1}-{3111,9935,0,1,4}-{3114,9931,0,1,1}-{2612,9484,0,1,1}-{2611,9484,0,1,0}-{2614,9484,0,1,6}-{2611,9486,0,1,1}"
- },
- {
- "npc_id": "7106",
- "loc_data": "{3131,9930,0,1,4}"
- },
- {
- "npc_id": "7107",
- "loc_data": "{3130,9928,0,1,0}-{3131,9931,0,1,4}"
- },
- {
- "npc_id": "7109",
- "loc_data": "{3127,9932,0,1,1}"
- },
- {
- "npc_id": "7110",
- "loc_data": "{3121,9929,0,1,4}"
- },
- {
- "npc_id": "7112",
- "loc_data": "{3130,9934,0,1,3}"
- },
- {
- "npc_id": "7113",
- "loc_data": "{3127,9932,0,1,4}"
- },
- {
- "npc_id": "7114",
- "loc_data": "{3132,9921,0,0,0}-{3132,9935,0,1,1}"
- },
- {
- "npc_id": "7115",
- "loc_data": "{3050,3259,0,0,0}"
- },
- {
- "npc_id": "7121",
- "loc_data": "{2189,3148,0,1,4}"
- },
- {
- "npc_id": "7138",
- "loc_data": "{3245,5462,0,1,7}-{3257,5454,0,1,3}-{3255,5461,0,1,1}-{3251,5473,0,1,3}-{3224,5540,0,1,0}-{3240,5541,0,1,6}-{3239,5529,0,1,6}-{3233,5524,0,1,4}-{3237,5512,0,1,6}-{3225,5510,0,1,1}-{3222,5524,0,1,1}-{3213,5472,0,1,3}-{3210,5469,0,1,5}-{3221,5468,0,1,0}-{3223,5465,0,1,0}-{3190,5523,0,1,2}-{3225,5540,0,1,7}-{3218,5537,0,1,3}-{3195,5527,0,1,6}"
- },
- {
- "npc_id": "7139",
- "loc_data": "{3220,5463,0,1,7}"
- },
- {
- "npc_id": "7142",
- "loc_data": "{3082,4246,0,1,4}"
- },
- {
- "npc_id": "7143",
- "loc_data": "{3082,3459,0,0,0}"
- },
- {
- "npc_id": "7144",
- "loc_data": "{3085,4230,0,1,3}"
- },
- {
- "npc_id": "7145",
- "loc_data": "{3081,4252,0,1,7}"
- },
- {
- "npc_id": "7146",
- "loc_data": "{3078,4240,0,1,4}"
- },
- {
- "npc_id": "7147",
- "loc_data": "{3079,4245,0,1,4}"
- },
- {
- "npc_id": "7148",
- "loc_data": "{3077,4229,0,1,4}"
- },
- {
- "npc_id": "7149",
- "loc_data": "{3085,4235,0,1,4}"
- },
- {
- "npc_id": "7150",
- "loc_data": "{3085,4240,0,1,3}"
- },
- {
- "npc_id": "7151",
- "loc_data": "{3081,3457,0,0,4}"
- },
- {
- "npc_id": "7152",
- "loc_data": "{3081,3455,0,0,4}"
- },
- {
- "npc_id": "7153",
- "loc_data": "{3081,3453,0,0,4}"
- },
- {
- "npc_id": "7154",
- "loc_data": "{3079,3457,0,0,4}"
- },
- {
- "npc_id": "7155",
- "loc_data": "{3079,3455,0,0,4}"
- },
- {
- "npc_id": "7156",
- "loc_data": "{3077,3457,0,0,4}"
- },
- {
- "npc_id": "7157",
- "loc_data": "{3077,3453,0,0,4}"
- },
- {
- "npc_id": "7158",
- "loc_data": "{3080,3463,0,1,0}-{3079,3463,0,1,0}-{3144,4250,2,1,4}-{3143,4255,2,1,2}-{3140,4253,2,1,3}-{3145,4255,2,1,6}-{3149,4257,2,1,5}-{3148,4262,2,1,5}-{3142,4260,2,1,3}-{3144,4259,2,1,4}-{3145,4261,2,1,4}-{3146,4265,2,1,5}-{3143,4264,2,1,3}-{3144,4266,2,1,5}-{3141,4265,2,1,1}-{3144,4270,2,1,1}-{3142,4269,2,1,6}-{3157,4262,2,1,1}-{3164,4265,2,1,6}-{3162,4266,2,1,6}-{3165,4266,2,1,3}-{3164,4261,2,1,2}-{3162,4259,2,1,5}-{3162,4255,2,1,7}-{3165,4256,2,1,4}-{3163,4251,2,1,3}-{3165,4249,2,1,6}-{3162,4250,2,1,4}-{3163,4241,2,1,4}-{3165,4239,2,1,4}-{3165,4241,2,1,0}-{3160,4235,2,1,2}-{3165,4235,2,1,4}-{3165,4237,2,1,4}-{3162,4234,2,1,3}-{3164,4231,2,1,4}-{3166,4229,2,1,6}-{3162,4230,2,1,1}-{3167,4229,2,1,3}-{3184,4236,2,1,1}-{3153,4246,1,1,3}-{3159,4236,1,1,6}-{3163,4236,1,1,4}-{3163,4234,1,1,7}-{3146,4235,1,1,5}-{3144,4236,1,1,1}-{3143,4234,1,1,2}-{3145,4240,1,1,4}-{3148,4242,1,1,1}-{3145,4241,1,1,7}-{3142,4242,1,1,3}-{3146,4230,1,1,4}"
- },
- {
- "npc_id": "7159",
- "loc_data": "{3174,4238,2,1,6}-{3175,4243,2,1,6}-{3179,4236,2,1,4}-{3145,4272,1,1,3}-{3145,4276,1,1,3}-{3152,4271,1,1,6}-{3144,4264,1,1,4}-{3153,4266,1,1,1}-{3152,4261,1,1,4}-{3145,4259,1,1,6}-{3161,4259,1,1,0}-{3160,4265,1,1,0}-{3153,4246,1,1,3}-{3157,4248,1,1,6}-{3161,4247,1,1,4}-{3146,4247,1,1,6}-{3153,4233,1,1,4}-{3153,4240,1,1,6}-{3155,4238,1,1,5}-{3169,4267,3,1,3}-{3160,4265,3,1,6}-{3168,4250,3,1,4}-{3168,4244,3,1,6}-{3160,4239,3,1,1}-{3160,4228,3,1,3}-{3147,4225,3,1,3}-{3145,4242,3,1,5}-{3139,4249,3,1,6}-{3144,4253,3,1,3}-{3145,4266,3,1,0}-{3138,4266,3,1,3}"
- },
- {
- "npc_id": "7160",
- "loc_data": "{3175,4254,2,1,7}-{3176,4247,2,1,5}-{3174,4269,2,1,1}-{3190,4253,2,1,3}-{3192,4247,2,1,3}-{3189,4235,2,1,0}-{3152,4269,0,1,4}-{3160,4278,0,1,1}-{3160,4262,0,1,3}-{3149,4250,0,1,0}-{3158,4250,0,1,5}-{3161,4236,0,1,6}-{3172,4250,0,1,2}-{3171,4269,3,1,1}-{3157,4277,3,1,3}-{3150,4278,3,1,3}"
- },
- {
- "npc_id": "7161",
- "loc_data": "{3142,4230,2,1,6}-{3143,4231,2,1,3}-{3141,4235,2,1,4}-{3144,4241,2,1,4}"
- },
- {
- "npc_id": "7162",
- "loc_data": "{3144,4229,2,1,1}-{3143,4236,2,1,1}-{3145,4235,2,1,1}-{3148,4244,2,1,6}"
- },
- {
- "npc_id": "7168",
- "loc_data": "{2714,3309,0,1,1}"
- },
- {
- "npc_id": "7228",
- "loc_data": "{2862,3101,0,0,0}-{2879,3109,0,0,0}-{2882,3104,0,0,0}-{2874,3098,0,0,0}-{2882,3098,0,0,0}"
- },
- {
- "npc_id": "7229",
- "loc_data": "{2833,3088,0,0,0}-{2830,3085,0,0,0}-{2844,3089,0,0,0}-{2837,3084,0,0,0}-{2840,3076,0,0,0}"
- },
- {
- "npc_id": "7230",
- "loc_data": "{2887,3051,0,0,0}-{2890,3052,0,0,0}-{2894,3058,0,0,0}-{2840,3008,0,0,0}-{2897,3035,0,0,0}"
- },
- {
- "npc_id": "7231",
- "loc_data": "{2930,2961,0,0,0}-{2942,2964,0,0,0}-{2933,2964,0,0,0}-{2932,2967,0,0,0}-{2936,2973,0,0,0}"
- },
- {
- "npc_id": "7232",
- "loc_data": "{2802,3106,0,0,0}-{2807,3101,0,0,0}-{2806,3108,0,0,0}-{2808,3105,0,0,0}-{2814,3100,0,0,0}"
- },
- {
- "npc_id": "7233",
- "loc_data": "{2922,3070,0,0,0}-{2929,3075,0,0,0}-{2919,3080,0,0,0}-{2924,3080,0,0,0}-{2923,3081,0,0,0}"
- },
- {
- "npc_id": "7234",
- "loc_data": "{2900,3107,0,0,0}-{2903,3098,0,0,0}-{2908,3104,0,0,0}-{2905,3107,0,0,0}-{2904,3107,0,0,0}"
- },
- {
- "npc_id": "7235",
- "loc_data": "{2820,3065,0,0,0}-{2830,3059,0,0,0}-{2825,3057,0,0,0}-{2827,3050,0,0,0}-{2822,3053,0,0,0}"
- },
- {
- "npc_id": "7236",
- "loc_data": "{2799,3005,0,0,0}-{2801,2995,0,0,0}-{2804,3001,0,0,0}-{2803,2986,0,0,0}-{2811,2999,0,0,0}"
- },
- {
- "npc_id": "7275",
- "loc_data": "{2995,3252,0,0,0}-{2996,3259,0,0,0}-{2993,3250,0,0,0}-{3000,3258,0,0,0}"
- },
- {
- "npc_id": "7276",
- "loc_data": "{2994,3256,0,0,0}-{3002,3250,0,0,0}-{2992,3252,0,0,0}-{3000,3250,0,0,0}-{2728,3422,0,1,1}-{2718,3413,0,1,4}-{2729,3420,0,1,4}-{2727,3414,0,1,6}-{2714,3419,0,1,3}-{2719,3427,0,1,7}"
- },
- {
- "npc_id": "7285",
- "loc_data": "{2835,3107,0,0,0}-{2836,3101,0,0,0}-{2836,3110,0,0,0}-{2837,3112,0,0,0}-{2841,3107,0,0,0}-{2885,3018,0,0,0}-{2885,3019,0,0,0}-{2891,3018,0,0,0}"
- },
- {
- "npc_id": "7286",
- "loc_data": "{2931,3090,0,0,0}-{2925,3097,0,0,0}-{2936,3096,0,0,0}-{2924,3102,0,0,0}-{2933,3104,0,0,0}"
- },
- {
- "npc_id": "7288",
- "loc_data": "{2834,3045,0,0,0}-{2826,3048,0,0,0}-{2824,3043,0,0,0}-{2822,3045,0,0,0}-{2818,3049,0,0,0}"
- },
- {
- "npc_id": "7289",
- "loc_data": "{2882,3018,0,1,7}-{2887,3024,0,1,2}"
- },
- {
- "npc_id": "7290",
- "loc_data": "{2845,3088,0,1,6}-{2854,3085,0,1,1}"
- },
- {
- "npc_id": "7292",
- "loc_data": "{2863,3048,0,1,5}-{2868,3037,0,1,4}"
- },
- {
- "npc_id": "7309",
- "loc_data": "{3023,3410,0,0,0}-{2946,3280,0,0,0}"
- },
- {
- "npc_id": "7310",
- "loc_data": "{3015,3409,0,0,0}-{2946,3272,0,0,0}"
- },
- {
- "npc_id": "7311",
- "loc_data": "{2956,3273,0,0,0}"
- },
- {
- "npc_id": "7312",
- "loc_data": "{2950,3268,0,0,0}"
- },
- {
- "npc_id": "7420",
- "loc_data": "{3168,3334,0,0,3}"
- },
- {
- "npc_id": "7421",
- "loc_data": "{3163,3336,0,0,1}"
- },
- {
- "npc_id": "7451",
- "loc_data": "{2328,3170,0,1,6}-{2341,3179,0,1,4}-{2338,3164,0,1,4}-{2189,3181,0,1,2}-{2178,3186,0,1,7}-{2199,3182,0,1,0}-{2288,3149,0,1,2}-{2282,3144,0,1,3}-{2285,3144,0,1,2}-{2281,3139,0,1,1}-{2289,3152,0,1,6}-{2287,3155,0,1,1}-{2286,3146,0,1,1}-{2289,3156,0,0,5}-{2285,3136,0,1,3}"
- },
- {
- "npc_id": "7636",
- "loc_data": "{3618,9736,0,0,0}-{3620,9732,0,0,0}-{3624,9736,0,0,0}-{3625,9738,0,0,0}-{3618,9736,0,0,4}-{3620,9732,0,0,4}-{3624,9736,0,0,4}-{3625,9738,0,0,4}"
- },
- {
- "npc_id": "7637",
- "loc_data": "{3588,9768,0,0,0}-{3600,9768,0,0,0}-{3606,9780,0,0,0}-{3612,9729,0,0,0}-{3613,9764,0,0,0}-{3614,9740,0,0,0}-{3614,9750,0,0,0}-{3621,9748,0,0,0}-{3629,9737,0,0,0}"
- },
- {
- "npc_id": "7639",
- "loc_data": "{3592,9766,0,0,0}-{3603,9770,0,0,0}-{3605,9757,0,0,0}-{3611,9749,0,0,0}-{3611,9766,0,0,0}-{3616,9737,0,0,0}-{3616,9756,0,0,0}-{3616,9762,0,0,0}-{3617,9779,0,0,0}-{3621,9754,0,0,0}"
- },
- {
- "npc_id": "7640",
- "loc_data": "{3608,9780,0,1,3}-{3610,9777,0,1,1}-{3613,9772,0,1,4}-{3617,9748,0,1,7}-{3617,9758,0,1,1}-{3621,9751,0,1,1}"
- },
- {
- "npc_id": "7641",
- "loc_data": "{3607,9776,0,1,1}-{3610,9772,0,1,0}-{3614,9778,0,1,7}-{3615,9746,0,1,7}-{3618,9753,0,1,1}-{3619,9748,0,1,6}"
- },
- {
- "npc_id": "7642",
- "loc_data": "{3595,9742,0,0,0}-{3597,9751,0,0,0}-{3598,9736,0,0,0}-{3604,9746,0,0,0}"
- },
- {
- "npc_id": "7643",
- "loc_data": "{3587,9737,0,0,0}-{3592,9746,0,0,0}-{3600,9740,0,0,0}-{3605,9738,0,0,0}"
- },
- {
- "npc_id": "7711",
- "loc_data": "{3405,9902,0,0,0}"
- },
- {
- "npc_id": "7716",
- "loc_data": "{3005,3475,0,1,7}-{3003,3473,0,1,4}-{2997,3471,0,0,0}-{3004,3494,0,0,0}-{3005,3505,0,0,0}"
- },
- {
- "npc_id": "7726",
- "loc_data": "{2996,3451,0,0,0}"
- },
- {
- "npc_id": "7727",
- "loc_data": "{3045,3483,0,0,0}-{3053,3492,0,0,4}-{3055,3491,0,0,0}-{3045,3496,0,0,0}-{3046,3490,1,0,0}-{3057,3497,1,0,3}"
- },
- {
- "npc_id": "7728",
- "loc_data": "{3009,3433,0,0,0}"
- },
- {
- "npc_id": "7731",
- "loc_data": "{3008,3466,0,0,0}"
- },
- {
- "npc_id": "7732",
- "loc_data": "{3009,3466,0,0,0}"
- },
- {
- "npc_id": "7733",
- "loc_data": "{3008,3479,0,0,0}"
- },
- {
- "npc_id": "7734",
- "loc_data": "{3009,3487,0,0,0}"
- },
- {
- "npc_id": "7735",
- "loc_data": "{2999,3469,0,0,0}"
- },
- {
- "npc_id": "7744",
- "loc_data": "{3149,3411,0,0,0}"
- },
- {
- "npc_id": "7746",
- "loc_data": "{4755,5116,0,1,7}"
- },
- {
- "npc_id": "7747",
- "loc_data": "{4751,5116,0,1,5}"
- },
- {
- "npc_id": "7748",
- "loc_data": "{4752,5114,0,1,5}"
- },
- {
- "npc_id": "7749",
- "loc_data": "{4739,5070,0,1,0}"
- },
- {
- "npc_id": "7750",
- "loc_data": "{4765,5064,0,1,7}"
- },
- {
- "npc_id": "7751",
- "loc_data": "{4778,5070,0,1,2}"
- },
- {
- "npc_id": "7752",
- "loc_data": "{4432,5096,0,1,0}"
- },
- {
- "npc_id": "7753",
- "loc_data": "{4438,5089,0,1,0}-{4428,5083,0,1,0}-{4437,5075,0,1,0}"
- },
- {
- "npc_id": "7763",
- "loc_data": "{4777,5080,0,1,2}"
- },
- {
- "npc_id": "7765",
- "loc_data": "{4776,5076,0,1,6}"
- },
- {
- "npc_id": "7767",
- "loc_data": "{4762,5145,0,1,2}-{2457,5139,0,1,6}-{2460,5140,0,1,0}-{2443,5147,0,1,3}-{2454,5155,0,1,5}-{2461,5125,0,1,3}-{2456,5124,0,1,4}-{2458,5129,0,1,4}-{2443,5145,0,1,1}-{2451,5148,0,1,1}-{2447,5143,0,1,4}-{2443,5138,0,1,4}"
- },
- {
- "npc_id": "7768",
- "loc_data": "{4762,5156,0,1,6}"
- },
- {
- "npc_id": "7823",
- "loc_data": "{3215,9560,0,0,1}-{3161,9547,0,0,3}-{3164,9556,0,0,4}-{3162,9574,0,0,3}-{3198,9554,0,0,7}-{3216,9588,0,0,1}-{3198,9572,0,0,1}"
- },
- {
- "npc_id": "7891",
- "loc_data": "{3207,3250,0,0,0}-{3208,3250,0,0,0}-{3209,3250,0,0,0}"
- },
- {
- "npc_id": "7959",
- "loc_data": "{3188, 3425, 0, 1, 0}"
- },
- {
- "npc_id": "7969",
- "loc_data": "{3205,3240,0,0,0}"
- },
- {
- "npc_id": "8041",
- "loc_data": "{2794,3100,0,1,0}"
- },
- {
- "npc_id": "8082",
- "loc_data": "{3552,5590,2,1,2}"
- },
- {
- "npc_id": "8083",
- "loc_data": "{3560,5602,0,1,3}"
- },
- {
- "npc_id": "8084",
- "loc_data": "{3541,5597,0,1,4}"
- },
- {
- "npc_id": "8085",
- "loc_data": "{3550,5598,0,1,3}"
- },
- {
- "npc_id": "8149",
- "loc_data": "{3244,9996,0,1,6}-{3229,10008,0,1,6}-{3222,10012,0,1,6}-{3205,10010,0,1,6}-{3212,10012,0,1,6}-{3205,10023,0,1,6}-{3210,10030,0,1,6}-{3212,10039,0,1,6}-{3213,10009,0,1,6}-{3243,9993,0,1,6}-{3218,10036,0,1,6}-{3218,10010,0,1,6}"
- },
- {
- "npc_id": "8150",
- "loc_data": "{3241,9997,0,1,6}-{3230,10011,0,1,6}-{3221,10012,0,1,6}-{3207,10006,0,1,6}-{3207,10017,0,1,6-{3209,10031,0,1,6}-{3209,10019,0,1,6}-{3217,10012,0,1,6}-{3224,10012,0,1,6}"
- },
- {
- "npc_id": "8151",
- "loc_data": "{3241,9998,0,1,6}-{3223,10010,0,1,6}-{3208,10012,0,1,6}-{3209,10026,0,1,6}-{3214,10038,0,1,6}-{3211,10035,0,1,6}-{3214,10037,0,1,6}-{3240,9991,0,1,6}-{3231,10010,0,1,6}-{3210,10007,0,1,6}-{3222,10010,0,1,6}"
- },
- {
- "npc_id": "8171",
- "loc_data": "{3281,3403,0,1,6}"
- },
- {
- "npc_id": "8273",
- "loc_data": "{2931,3536,0,1,5}"
- },
- {
- "npc_id": "8274",
- "loc_data": "{3514,3513,0,1,6}"
- },
- {
- "npc_id": "8275",
- "loc_data": "{2869,2982,1,1,5}"
- },
- {
- "npc_id": "8349",
- "loc_data": "{2589,5735,0,1,0}-{2589,5713,0,1,0}-{2610,5709,0,1,0}-{2613,5732,0,1,0}"
- },
- {
- "npc_id": "8358",
- "loc_data": "{2601,5710,0,1,0}-{2603,5737,0,1,0}"
- },
- {
- "npc_id": "8536",
- "loc_data": "{2654,5600,0,1,3}-{2650,5600,0,0,3}-{2662,5593,0,0,3}-{2653,5590,0,0,3}-{2644,5592,0,0,3-{2644,5601,0,0,3}-{2654,5604,0,0,3}-{2663,5606,0,0,3}-{2670,5597,0,0,3}-{2657,5589,0,0,3}-"
- },
- {
- "npc_id": "8590",
- "loc_data": "{2743,3444,0,1,0}"
- },
- {
- "npc_id": "7601",
- "loc_data": "{1697,5605,0,0,6}"
- },
- {
- "npc_id": "3579",
- "loc_data": "{3195,3263,0,1,0}"
- },
- {
- "npc_id": "5424",
- "loc_data": "{2594,3269,0,0,0}"
- },
- {
- "npc_id": "7010",
- "loc_data": "{2243,3200,0,1,3}-{2204,3229,0,1,3}-{2204,3229,0,1,3}-{2204,3229,0,1,3}-{2268,3239,0,1,3}-{2268,3239,0,1,3}-{2268,3239,0,1,3}-{2261,3260,0,1,3}-{2261,3260,0,1,3}-{2261,3260,0,1,3}"
- },
- {
- "npc_id": "7011",
- "loc_data": "{2243,3200,0,1,3}-{2268,3239,0,1,3}-{2261,3260,0,1,3}-{2261,3260,0,1,3}"
- },
- {
- "npc_id": "7014",
- "loc_data": "{2180,3201,0,1,3}-{2226,3143,0,1,3}-{2288,3147,0,1,3}-{2247,3187,0,1,3}"
- },
- {
- "npc_id": "7012",
- "loc_data": "{2180,3201,0,1,3}-{2180,3201,0,1,3}-{2182,3204,0,1,3}-{2226,3143,0,1,3}-{2226,3143,0,1,3}-{2226,3143,0,1,3}-{2223,3146,0,1,3}-{2223,3146,0,1,3}-{2288,3147,0,1,3}-{2288,3147,0,1,3}-{2288,3147,0,1,3}-{2247,3187,0,1,3}-{2247,3187,0,1,3}"
- },
- {
- "npc_id": "1183",
- "loc_data": "{2206,3258,0,1,3}-{2200,3261,0,1,3}-{2193,3253,0,1,3}-{2192,3243,0,1,3}"
- },
- {
- "npc_id": "1184",
- "loc_data": "{2192,3249,0,1,3}-{2200,3249,0,1,3}-{2195,3247,0,1,3}-{2212,3258,0,1,3}"
- },
- {
- "npc_id": "2160",
- "loc_data": "{2925,10211,0,1,0}"
- },
- {
- "npc_id": "2191",
- "loc_data": "{2925,10213,0,1,0}"
- },
- {
- "npc_id": "4248",
- "loc_data": "{2849,10183,0,1,0}"
- },
- {
- "npc_id": "2153",
- "loc_data": "{2826,10197,0,1,0}"
- },
- {
- "npc_id": "2152",
- "loc_data": "{2827,10231,0,1,0}"
- },
- {
- "npc_id": "2161",
- "loc_data": "{2869,10211,0,1,0}"
- },
- {
- "npc_id": "2162",
- "loc_data": "{2886,10187,0,1,0}"
- },
- {
- "npc_id": "2151",
- "loc_data": "{2873,10210,0,1,0}"
- },
- {
- "npc_id": "4558",
- "loc_data": "{2885,10202,0,1,0}"
- },
- {
- "npc_id": "2158",
- "loc_data": "{2885,10207,0,1,0}"
- },
- {
- "npc_id": "2157",
- "loc_data": "{2887,10212,0,1,0}"
- },
- {
- "npc_id": "2156",
- "loc_data": "{2892,10212,0,1,0}"
- },
- {
- "npc_id": "2159",
- "loc_data": "{2885,10196,0,1,0}"
- },
- {
- "npc_id": "2565",
- "loc_data": "{1937,4972,0,1,0}"
- },
- {
- "npc_id": "2564",
- "loc_data": "{1935,4964,0,0,4}"
- },
- {
- "npc_id": "2321",
- "loc_data": "{2918,10194,0,0,3}"
- },
- {
- "npc_id": "2198",
- "loc_data": "{2905,10213,0,1,0}"
- },
- {
- "npc_id": "2164",
- "loc_data": "{2838,10205,0,0,1}"
- },
- {
- "npc_id": "2163",
- "loc_data": "{2836,10205,0,1,0}"
- },
- {
- "npc_id": "2130",
- "loc_data": "{2892,10191,0,1,0}-{2919,10206,0,1,0}-{2923,10230,0,1,0}-{2865,10193,0,1,0}"
- },
- {
- "npc_id": "2131",
- "loc_data": "{2893,10205,0,1,0}-{2895,10223,0,1,0}-{2871,10199,0,1,0}-{2890,10199,0,1,0}"
- },
- {
- "npc_id": "2132",
- "loc_data": "{2913,10211,0,1,0}-{2901,10232,0,1,0}-{2823,10193,0,1,0}"
- },
- {
- "npc_id": "5880",
- "loc_data": "{2888,10226,0,1,0}-{2920,10196,0,1,0}-{2844,10214,0,1,0}"
- },
- {
- "npc_id": "5881",
- "loc_data": "{2847,10200,0,1,0}-{2863,10233,0,1,0}-{2920,10216,0,1,0}"
- },
- {
- "npc_id": "5882",
- "loc_data": "{2916,10191,0,1,0}-{2841,10195,0,1,0}-{2831,10219,0,1,0}"
- },
- {
- "npc_id": "2138",
- "loc_data": "{2890,10232,0,1,0}"
- },
- {
- "npc_id": "2178",
- "loc_data": "{2916,10192,0,1,0}-{2839,10196,0,1,0}"
- },
- {
- "npc_id": "2187",
- "loc_data": "{2913,10200,0,1,0}"
- },
- {
- "npc_id": "1546",
- "loc_data": "{2911,10175,0,0,4}-{2912,10175,0,0,4}-{2913,10175,0,0,4}-{2914,10175,0,0,4}-{2909,10173,0,0,4}-{2910,10173,0,0,4}-{2911,10173,0,0,4}-{2912,10173,0,0,4}-{2913,10173,0,0,4}-{2909,10171,0,0,4}-{2910,10171,0,0,4}-{2911,10169,0,0,4}-{2912,10169,0,0,4}-{2913,10169,0,0,4}"
- },
- {
- "npc_id": "2181",
- "loc_data": "{2874,9871,0,1,0}"
- },
- {
- "npc_id": "2182",
- "loc_data": "{2908,10176,0,1,0}"
- },
- {
- "npc_id": "2092",
- "loc_data": "{2869,10196,1,1,0}"
- },
- {
- "npc_id": "2100",
- "loc_data": "{2870,10196,1,1,0}"
- },
- {
- "npc_id": "2101",
- "loc_data": "{2868,10202,1,1,0}"
- },
- {
- "npc_id": "2094",
- "loc_data": "{2869,10205,1,0,6}"
- },
- {
- "npc_id": "2096",
- "loc_data": "{2890,10207,1,0,6}"
- },
- {
- "npc_id": "2104",
- "loc_data": "{2890,10204,1,1,0}"
- },
- {
- "npc_id": "2095",
- "loc_data": "{2889,10211,1,0,6}"
- },
- {
- "npc_id": "2103",
- "loc_data": "{2892,10209,1,1,0}"
- },
- {
- "npc_id": "2105",
- "loc_data": "{2890,10196,1,1,0}"
- },
- {
- "npc_id": "2097",
- "loc_data": "{2891,10196,1,0,6}"
- },
- {
- "npc_id": "2102",
- "loc_data": "{2869,10208,1,1,0}"
- },
- {
- "npc_id": "2093",
- "loc_data": "{2871,10207,1,1,0}"
- },
- {
- "npc_id": "2098",
- "loc_data": "{2890,10192,1,0,6}"
- },
- {
- "npc_id": "2106",
- "loc_data": "{2892,10190,1,1,0}"
- },
- {
- "npc_id": "2110",
- "loc_data": "{2877,10198,1,1,0}-{2878,10196,1,1,0}"
- },
- {
- "npc_id": "2111",
- "loc_data": "{2878,10201,1,1,0}-{2876,10201,1,1,0}"
- },
- {
- "npc_id": "2113",
- "loc_data": "{2878,10201,1,1,0}-{2876,10201,1,1,0}"
- },
- {
- "npc_id": "2115",
- "loc_data": "{2882,10201,1,1,0}-{2883,10200,1,1,0}"
- },
- {
- "npc_id": "2117",
- "loc_data": "{2883,10198,1,1,0}-{2884,10199,1,1,0}"
- },
- {
- "npc_id": "2119",
- "loc_data": "{2882,10197,1,1,0}-{2883,10196,1,1,0}"
- },
- {
- "npc_id": "2121",
- "loc_data": "{2880,10195,1,1,0}-{2879,10193,1,1,0}"
- },
- {
- "npc_id": "2193",
- "loc_data": "{2887,10223,0,1,0}"
- },
- {
- "npc_id": "2197",
- "loc_data": "{2848,10198,0,1,0}"
- },
- {
- "npc_id": "2188",
- "loc_data": "{2851,10223,0,1,0}"
- },
- {
- "npc_id": "2189",
- "loc_data": "{2851,10223,0,1,0}"
- },
- {
- "npc_id": "2171",
- "loc_data": "{2930,10184,0,1,0}"
- },
- {
- "npc_id": "1848",
- "loc_data": "{2868,10168,0,1,0}"
- },
- {
- "npc_id": "1849",
- "loc_data": "{2868,10168,0,1,0}"
- },
- {
- "npc_id": "1847",
- "loc_data": "{2868,10168,0,1,0}"
- },
- {
- "npc_id": "1839",
- "loc_data": "{2825,10167,0,1,0}"
- },
- {
- "npc_id": "2127",
- "loc_data": "{2880,10199,1,1,0}"
- },
- {
- "npc_id": "2201",
- "loc_data": "{2866,10208,0,1,0}"
- },
- {
- "npc_id": "2179",
- "loc_data": "{2840,10199,0,0,6}"
- },
- {
- "npc_id": "2177",
- "loc_data": "{2843,10191,1,0,1}"
- },
- {
- "npc_id": "2140",
- "loc_data": "{2835,10226,0,0,6}"
- },
- {
- "npc_id": "2169",
- "loc_data": "{2836,10222,0,1,0}"
- },
- {
- "npc_id": "2196",
- "loc_data": "{2838,10196,0,1,0}"
- },
- {
- "npc_id": "2170",
- "loc_data": "{2853,10196,0,1,0}"
- },
- {
- "npc_id": "2199",
- "loc_data": "{2855,10199,0,1,0}"
- },
- {
- "npc_id": "2192",
- "loc_data": "{2933,10219,0,1,0}"
- },
- {
- "npc_id": "2141",
- "loc_data": "{2906,10204,0,1,0}"
- },
- {
- "npc_id": "2202",
- "loc_data": "{2912,10222,0,1,0}"
- },
- {
- "npc_id": "2195",
- "loc_data": "{2901,10227,0,1,0}"
- },
- {
- "npc_id": "2194",
- "loc_data": "{2926,10225,0,1,0}"
- },
- {
- "npc_id": "2142",
- "loc_data": "{2904,10206,0,1,0}"
- },
- {
- "npc_id": "2190",
- "loc_data": "{2922,10201,0,1,0}"
- },
- {
- "npc_id": "2155",
- "loc_data": "{2871,10199,0,1,0}"
- },
- {
- "npc_id": "8065",
- "loc_data": "{3399,3464,0,0,1}"
- },
- {
- "npc_id": "8066",
- "loc_data": "{3346,3513,0,0,6}"
- },
- {
- "npc_id": "8067",
- "loc_data": "{3280,3524,0,0,0}"
- },
- {
- "npc_id": "8068",
- "loc_data": "{3237,3525,0,0,0}"
- },
- {
- "npc_id": "8069",
- "loc_data": "{3171,3535,0,0,0}"
- },
- {
- "npc_id": "8070",
- "loc_data": "{3088,3515,0,0,0}"
- },
- {
- "npc_id": "8071",
- "loc_data": "{3035,3517,0,0,0}"
- },
- {
- "npc_id": "8072",
- "loc_data": "{2972,3515,0,0,0}"
- },
- {
- "npc_id": "8073",
- "loc_data": "{2941,3564,0,0,0}"
- },
- {
- "npc_id": "8074",
- "loc_data": "{2946,3621,0,0,0}"
- },
- {
- "npc_id": "8075",
- "loc_data": "{2938,3679,0,0,0}"
- },
- {
- "npc_id": "8076",
- "loc_data": "{2939,3772,0,0,0}"
- },
- {
- "npc_id": "2085",
- "loc_data": "{3231,9610,0,1,0}"
- },
- {
- "npc_id": "2084",
- "loc_data": "{3314,9612,0,1,0}"
- },
- {
- "npc_id": "2078",
- "loc_data": "{3313,9622,0,0,3}"
- },
- {
- "npc_id": "2077",
- "loc_data": "{3323,9616,0,0,6}"
- },
- {
- "npc_id": "2076",
- "loc_data": "{3312,9628,0,0,3}"
- },
- {
- "npc_id": "2075",
- "loc_data": "{3312,9638,0,0,3}"
- },
- {
- "npc_id": "2072",
- "loc_data": "{3319,9632,0,1,0}"
- },
- {
- "npc_id": "2071",
- "loc_data": "{3323,9643,0,1,0}"
- },
- {
- "npc_id": "2070",
- "loc_data": "{3324,9621,0,1,0}"
- },
- {
- "npc_id": "2069",
- "loc_data": "{3313,9652,0,1,0}"
- },
- {
- "npc_id": "2074",
- "loc_data": "{3319,9605,0,0,1}"
- },
- {
- "npc_id": "7724",
- "loc_data": "{3054,3503,0,1,0}"
- },
- {
- "npc_id": "15",
- "loc_data": "{3203,3479,0,1,0}-{3202,3484,0,1,0}"
- },
- {
- "npc_id": "2910",
- "loc_data": "{3082,9885,0,1,4}"
- },
- {
- "npc_id": "3382",
- "loc_data": "{3080,9885,0,1,4}-{3076,9886,0,1,4}-{3081,9890,0,1,4}-{3081,9895,0,1,4}"
- },
- {
- "npc_id": "5965",
- "loc_data": "{1759,4955,0,0,0}"
- },
- {
- "npc_id": "5966",
- "loc_data": "{1754,4960,0,1,4}"
- },
- {
- "npc_id": "5967",
- "loc_data": "{1735,4950,0,1,4}-{1758, 4937, 0, 1, 4}-{1756, 4947, 0, 1, 4}-{1771, 4960, 0, 1, 4}-{1779, 4950, 0, 1, 4}-{1759, 4971, 0, 1, 4}-{1773, 4983, 0, 1, 4}"
- },
- {
- "npc_id": "5945",
- "loc_data": "{1743,4959,0,1,4}-{1739,4969,0,1,4}-{1748, 4941, 0, 1, 4}-{1759, 4979, 0, 1, 6}"
- },
- {
- "npc_id": "10",
- "loc_data": "{1740,4970,0,1,4}-{1783, 4950, 0, 1, 4}-{1755,4951,0,1,3}-{1754, 4986, 0, 1, 6}-{1763, 4972, 0, 1, 6}"
- },
- {
- "npc_id": "5971",
- "loc_data": "{1742,4964,0,0,0}"
- },
- {
- "npc_id": "5977",
- "loc_data": "{1735,4964,0,0,0}"
- },
- {
- "npc_id": "5982",
- "loc_data": "{1735,4954,0,0,0}"
- },
- {
- "npc_id": "5976",
- "loc_data": "{1742,4954,0,0,0}"
- },
- {
- "npc_id": "5978",
- "loc_data": "{1752,4938,0,0,0}"
- },
- {
- "npc_id": "5972",
- "loc_data": "{1781,4954,0,0,0}"
- },
- {
- "npc_id": "5973",
- "loc_data": "{1774,4964,0,0,0}"
- },
- {
- "npc_id": "5974",
- "loc_data": "{1774,4954,0,0,0}"
- },
- {
- "npc_id": "5975",
- "loc_data": "{1740,4979,0,0,0}"
- },
- {
- "npc_id": "5981",
- "loc_data": "{1750,4979,0,0,0}"
- },
- {
- "npc_id": "5979",
- "loc_data": "{1765,4979,0,0,0}"
- },
- {
- "npc_id": "5980",
- "loc_data": "{1775,4979,0,0,0}"
- },
- {
- "npc_id": "8000",
- "loc_data": "{2987,3691,0,0,3}"
- },
- {
- "npc_id": "2861",
- "loc_data": "{2347,3165,0,1,3}"
- },
- {
- "npc_id": "4965",
- "loc_data": "{2826,3685,0,0,1}"
- },
- {
- "npc_id": "2790",
- "loc_data": "{3163,4822,0,0,6}"
- },
- {
- "npc_id": "6117",
- "loc_data": "{1884,5020,0,0,6}"
- },
- {
- "npc_id": "6134",
- "loc_data": "{1890,5018,0,0,0}"
- },
- {
- "npc_id": "6132",
- "loc_data": "{1883,5029,0,0,6}"
- },
- {
- "npc_id": "6133",
- "loc_data": "{1883,5026,0,0,6}"
- },
- {
- "npc_id": "6131",
- "loc_data": "{1885,5026,0,0,6}"
- },
- {
- "npc_id": "490",
- "loc_data": "{1887,5026,0,0,6}"
- },
- {
- "npc_id": "487",
- "loc_data": "{1885,5029,0,0,6}"
- },
- {
- "npc_id": "555",
- "loc_data": "{2657,3153,0,1,0}"
- },
- {
- "npc_id": "2357",
- "loc_data": "{2340,3157,1,1,0}"
- },
- {
- "npc_id": "2356",
- "loc_data": "{2323,3163,0,1,0}"
- },
- {
- "npc_id": "4874",
- "loc_data": "{2709,3291,0,0,0}"
- },
- {
- "npc_id": "4856",
- "loc_data": "{2732,3292,0,1,1}"
- },
- {
- "npc_id": "4872",
- "loc_data": "{2740,3310,0,0,0}"
- },
- {
- "npc_id": "4878",
- "loc_data": "{2726,3283,0,1,1}"
- },
- {
- "npc_id": "4883",
- "loc_data": "{2713,3278,0,1,1}"
- },
- {
- "npc_id": "4885",
- "loc_data": "{2705,3287,0,1,1}-{2716,3287,0,1,1}-{2732,3282,0,1,1}"
- },
- {
- "npc_id": "4887",
- "loc_data": "{2738,3303,0,1,1}-{2723,3274,0,1,1}"
- },
- {
- "npc_id": "4895",
- "loc_data": "{2718,3302,0,1,1}"
- },
- {
- "npc_id": "696",
- "loc_data": "{2716,3303,0,1,1}"
- },
- {
- "npc_id": "698",
- "loc_data": "{2716,3303,0,1,1}"
- },
- {
- "npc_id": "2352",
- "loc_data": "{2334,3183,0,1,0}"
- },
- {
- "npc_id": "5497",
- "loc_data": "{2376,10198,0,1,0}-{2384,10202,0,1,0}-{2390,10207,0,1,0}-{2385,10193,0,1,0}-{2419,10192,0,1,0}-{2412,10200,0,1,0}"
- },
- {
- "npc_id": "5498",
- "loc_data": "{2412,3818,0,1,0}-{2412,3801,0,1,0}-{2392,3802,0,1,0}"
- },
- {
- "npc_id": "5474",
- "loc_data": "{2390,10216,0,1,0}-{2417,10228,0,1,0}-{2385,10227,0,1,0}"
- },
- {
- "npc_id": "5475",
- "loc_data": "{2396,10232,0,1,0}-{2402,10225,0,1,0}-{2420,10221,0,1,0}"
- },
- {
- "npc_id": "5473",
- "loc_data": "{2377,10212,0,1,0}-{2392,10226,0,1,0}-{2407,10228,0,1,0}-{2406,10214,0,1,0}-{2420,10214,0,1,0}"
- },
- {
- "npc_id": "5491",
- "loc_data": "{2387,3800,0,0,3}-{2411,3795,0,0,6}-{2417,3825,0,0,1}"
- },
- {
- "npc_id": "5492",
- "loc_data": "{2387,3797,0,0,3}-{2414,3825,0,0,1}-{2414,3795,0,0,6}"
- },
- {
- "npc_id": "5481",
- "loc_data": "{2644,3709,0,1,0}"
- },
- {
- "npc_id": "5482",
- "loc_data": "{2422,3781,0,1,0}"
- },
- {
- "npc_id": "5463",
- "loc_data": "{2324,3809,0,1,0}-{2317,3802,0,1,0}"
- },
- {
- "npc_id": "5521",
- "loc_data": "{2324,3832,0,1,0}-{2350,3859,0,1,0}-{2375,3892,0,1,0}-{2388,3867,0,1,0}-{2384,3863,0,1,0}-{2387,3859,0,1,0}-{2350,3862,0,1,0}-{2352,3857,0,1,0}"
- },
- {
- "npc_id": "5523",
- "loc_data": "{2367,3832,0,1,0}-{2319,3854,0,1,0}-{2324,3891,0,1,0}-{2406,3854,0,1,0}-{2405,3863,0,1,0}-{2400,3856,0,1,0}"
- },
- {
- "npc_id": "5522",
- "loc_data": "{2362,3893,0,1,0}-{2390,3861,0,1,0}-{2395,3859,0,1,0}-{2323,3857,0,1,0}-{2331,3860,0,1,0}"
- },
- {
- "npc_id": "5524",
- "loc_data": "{2340,3830,0,1,0}-{2338,3860,0,1,0}-{2339,3895,0,1,0}-{2411,3886,0,1,0}-{2396,3854,0,1,0}"
- },
- {
- "npc_id": "5514",
- "loc_data": "{2337,3831,0,1,0}-{2399,3852,0,1,0}-{2321,3833,0,1,0}"
- },
- {
- "npc_id": "5515",
- "loc_data": "{2327,3858,0,1,0}-{2321,3860,0,1,0}-{2343,3862,0,1,0}"
- },
- {
- "npc_id": "5516",
- "loc_data": "{2393,3861,0,1,0}-{2347,3890,0,1,0}-{2347,3890,0,1,0}"
- },
- {
- "npc_id": "5517",
- "loc_data": "{2403,3853,0,1,0}-{2328,3830,0,1,0}-{2405,3860,0,1,0}-{2335,3894,0,1,0}"
- },
- {
- "npc_id": "3848",
- "loc_data": "{2410,3780,0,1,0}-{2414,3780,0,1,0}"
- },
- {
- "npc_id": "313",
- "loc_data":"{2401,3781,0,1,0}"
- },
- {
- "npc_id": "312",
- "loc_data": "{2421,3789,0,1,0}"
- },
- {
- "npc_id": "1164",
- "loc_data": "{2780,3058,0,1,0}"
- },
- {
- "npc_id": "1051",
- "loc_data": "{3440,9738,1,1,0}"
- },
- {
- "npc_id": "1052",
- "loc_data": "{3420,3442,0,1,0}-{3429,3436,0,1,0}-{3439,3437,0,1,0}-{3448,3444,0,1,0}-{3458,3433,0,1,0}-{3459,3419,0,1,0}-{3449,3420,0,1,0}-{3441,3421,0,1,0}-{3427,3421,0,1,0}-{3414,3422,0,1,0}-{3411,3423,0,1,0}-{3415,3414,0,1,0}-{3410,3409,0,1,0}-{3422,3405,0,1,0}-{3431,3402,0,1,0}-{3444,3405,0,1,0}-{3453,3397,0,1,0}-{3467,3402,0,1,0}-{3473,3395,0,1,0}-{3470,3385,0,1,0}-{3463,3379,0,1,0}-{3451,3380,0,1,0}-{3445,3374,0,1,0}-{3438,3365,0,1,0}-{3429,3367,0,1,0}-{3417,3367,0,1,0}-{3413,3362,0,1,0}-{3417,3358,0,1,0}-{3426,3352,0,1,0}-{3435,3349,0,1,0}-{3442,3353,0,1,0}-{3448,3358,0,1,0}-{3457,3355,0,1,0}-{3461,3348,0,1,0}-{3457,3343,0,1,0}-{3471,3344,0,1,0}-{3426,3338,0,1,0}-{3423,3335,0,1,0}"
- },
- {
- "npc_id": "7132",
- "loc_data": "{1630,4705,0,0,0}"
- },
- {
- "npc_id": "7131",
- "loc_data": "{1634,4699,0,1,0}"
- },
- {
- "npc_id": "7125",
- "loc_data": "{1605,4702,0,1,0}-{1605,4720,0,1,0}-{1631,4730,0,1,0}-{1649,4730,0,1,0}-{1658,4705,0,1,0}-{1658,4687,0,1,0}-{1633,4678,0,1,0}-{1615,4678,0,1,0}"
- },
- {
- "npc_id": "7128",
- "loc_data": "{1625,4689,0,1,0}-{1614,4704,0,1,0}-{1631,4719,0,1,0}-{1651,4705,0,1,0}"
- },
- {
- "npc_id": "7129",
- "loc_data": "{1625,4689,0,1,0}-{1614,4704,0,1,0}-{1631,4719,0,1,0}-{1651,4705,0,1,0}"
- },
- {
- "npc_id": "7130",
- "loc_data": "{1625,4689,0,1,0}-{1614,4704,0,1,0}-{1631,4719,0,1,0}-{1651,4705,0,1,0}"
- },
- {
- "npc_id": "800",
- "loc_data": "{2884,9765,0,1,0}-{2890,9766,0,1,0}-{2894,9764,0,1,0}"
- },
- {
- "npc_id": "3322",
- "loc_data": "{2384,4439,0,1,0}"
- },
- {
- "npc_id": "223",
- "loc_data": "{2569,3250,0,1,0}"
- },
- {
- "npc_id": "224",
- "loc_data": "{2582,9656,0,1,0}-{2589,9657,0,1,0}-{2587,9658,0,1,0}-{2584,9657,0,1,0}-{2585,9656,0,1,0}-{2582,9658,0,1,0}-{2585,9653,0,1,0}-{2590,9658,0,1,0}-{2590,9655,0,1,0}"
- },
- {
- "npc_id": "1080",
- "loc_data": "{2900,3567,1,1,0}"
- },
- {
- "npc_id": "1078",
- "loc_data": "{2905,3540,1,1,0}"
- }
-]
+[
+ {
+ "npc_id": "0",
+ "loc_data": "{3221,3218,0,1,0}-"
+ },
+ {
+ "npc_id": "1",
+ "loc_data": "{3093,3509,0,1,3}-{3098,3508,0,1,7}-{3096,3510,0,1,3}-{3222,3221,0,1,3}-{3210,3223,1,1,4}-{3230,3208,0,1,1}-{3237,3404,0,1,6}-{3237,3408,0,1,0}-{3247,3396,0,1,3}-{3263,3403,0,1,3}-{2712,3484,0,1,4}-{2693,3495,0,1,1}-{3285,3208,0,1,4}-{3017,3239,0,1,2}-{2804,3427,0,1,2}-"
+ },
+ {
+ "npc_id": "2",
+ "loc_data": "{3101,3511,0,1,4}-{3236,3203,0,1,4}-{3217,3209,0,1,4}-{3237,3217,0,1,6}-{2690,3489,0,1,3}-{3298,3185,0,1,3}-{3282,3503,0,1,6}-"
+ },
+ {
+ "npc_id": "3",
+ "loc_data": "{2818,3443,0,1,3}-{3095,3511,0,1,3}-{3094,3513,0,1,4}-{3097,3510,0,1,4}-{3231,3239,0,1,4}-{2699,3491,0,1,1}-{3306,3200,0,1,6}-{3300,3208,0,1,3}-{3278,3502,0,1,6}-"
+ },
+ {
+ "npc_id": "4",
+ "loc_data": "{3230,3204,0,1,3}-{2693,3493,0,1,7}-{2693,3492,0,1,0}-{2695,3497,0,1,1}-{2700,3496,0,1,5}-{3010,3236,0,1,6}-{3281,3499,0,1,4}-"
+ },
+ {
+ "npc_id": "5",
+ "loc_data": "{2817,3447,0,1,5}-{3236,3205,0,1,2}-{3230,3238,0,1,1}-{2697,3493,0,1,4}-{3279,3497,0,1,3}-"
+ },
+ {
+ "npc_id": "6",
+ "loc_data": "{3097,3259,0,1,4}-{3246,3207,0,1,4}-{3280,3491,0,1,0}-"
+ },
+ {
+ "npc_id": "7",
+ "loc_data": "{3158,3301,0,1,0}-{2629,3360,0,1,4}-{2920,3434,0,1,0}-{3226,3290,0,1,3}-"
+ },
+ {
+ "npc_id": "8",
+ "loc_data": "{2804,3186,0,1,4}-{3019,3230,0,1,4}-"
+ },
+ {
+ "npc_id": "9",
+ "loc_data": "{3007,3321,0,1,6}-{3005,3321,0,1,4}-{2965,3389,0,1,6}-{2964,3392,0,1,6}-{2967,3393,0,1,1}-{2966,3392,0,1,1}-{2964,3392,0,1,1}-{3008,3324,0,1,2}-"
+ },
+ {
+ "npc_id": "10",
+ "loc_data": "{1740,4970,0,1,4}-{1783,4950,0,1,4}-{1755,4951,0,1,3}-{1754,4986,0,1,6}-{1763,4972,0,1,6}-"
+ },
+ {
+ "npc_id": "11",
+ "loc_data": "{3235,3399,0,1,5}-"
+ },
+ {
+ "npc_id": "13",
+ "loc_data": "{2588,3087,0,1,4}-{2592,3086,0,1,6}-{2590,3083,1,1,4}-{2587,3086,1,1,4}-{2594,3084,1,1,6}-{2593,3090,2,1,5}-{2594,3085,2,1,1}-{2588,3089,2,1,4}-{3108,3157,1,1,3}-{3113,3157,1,1,4}-{3107,3170,0,1,0}-{3112,3167,0,1,0}-{3106,3157,0,1,3}-{3110,3155,0,1,6}-"
+ },
+ {
+ "npc_id": "14",
+ "loc_data": "{2914,3444,0,1,3}-{2905,3450,1,1,0}-"
+ },
+ {
+ "npc_id": "15",
+ "loc_data": "{2584,3304,0,1,3}-{2588,3291,0,1,7}-{2584,3288,0,1,0}-{2563,3382,0,1,6}-{2569,3383,0,1,6}-{2571,3381,0,1,1}-{2575,3384,0,1,4}-{2572,3385,0,1,4}-{2631,3294,0,1,6}-{2629,3296,0,1,4}-{3203,3479,0,1,0}-{3202,3484,0,1,0}-"
+ },
+ {
+ "npc_id": "16",
+ "loc_data": "{3279,3191,0,1,4}-{3296,3202,1,1,3}-"
+ },
+ {
+ "npc_id": "18",
+ "loc_data": "{3282,3176,0,1,0}-{3284,3170,0,1,7}-{3284,3174,0,1,0}-{3288,3168,0,1,5}-{3292,3169,0,1,3}-{3295,3168,0,1,3}-{3301,3170,0,1,6}-{3301,3174,0,1,6}-{3301,3177,0,1,0}-"
+ },
+ {
+ "npc_id": "19",
+ "loc_data": "{2971,3349,0,1,4}-{2979,3350,0,1,2}-{2973,3337,0,1,3}-{2959,3335,0,1,6}-{2982,3339,0,1,6}-{2983,3346,0,1,4}-{2980,3329,0,1,4}-{2987,3330,0,1,6}-{2958,3340,1,1,1}-{2970,3333,1,1,3}-{2966,3329,1,1,4}-{2961,3353,1,1,4}-{2973,3337,1,1,6}-{2998,3341,0,1,6}-{2983,3342,2,1,6}-"
+ },
+ {
+ "npc_id": "20",
+ "loc_data": "{2588,3301,1,0,0}-"
+ },
+ {
+ "npc_id": "21",
+ "loc_data": "{2630,3288,0,1,1}-{2647,3306,0,1,1}-{2667,3315,0,1,4}-"
+ },
+ {
+ "npc_id": "23",
+ "loc_data": "{2582,3297,0,1,6}-{2652,3318,0,1,0}-{2653,3300,0,1,5}-{2669,3298,0,1,4}-{2671,3313,0,1,6}-"
+ },
+ {
+ "npc_id": "24",
+ "loc_data": "{2614,3318,0,1,6}-{2621,3293,0,1,3}-"
+ },
+ {
+ "npc_id": "25",
+ "loc_data": "{2612,3316,0,1,1}-{2574,3321,1,1,4}-{2621,3293,1,1,3}-"
+ },
+ {
+ "npc_id": "27",
+ "loc_data": "{2574,3285,2,0,0}-{2574,3308,2,0,0}-{2582,3284,2,0,0}-{2582,3309,2,0,0}-{2588,3290,2,0,0}-{2588,3303,2,0,0}-"
+ },
+ {
+ "npc_id": "28",
+ "loc_data": "{2611,3269,0,0,0}-"
+ },
+ {
+ "npc_id": "31",
+ "loc_data": "{2616,3308,0,1,1}-"
+ },
+ {
+ "npc_id": "32",
+ "loc_data": "{2651,3307,0,1,1}-{2659,3309,0,1,6}-{2660,3309,0,1,3}-{2661,3309,0,1,1}-{2661,3317,0,1,5}-{2663,3301,0,1,3}-{2665,3300,0,1,3}-{2636,3342,0,1,4}-{2634,3342,0,1,3}-{2635,3339,0,1,3}-"
+ },
+ {
+ "npc_id": "34",
+ "loc_data": "{2548,3111,1,1,3}-{2545,3116,1,1,7}-{2549,3115,1,1,1}-{2549,3112,1,1,4}-"
+ },
+ {
+ "npc_id": "35",
+ "loc_data": "{2545,3094,0,1,3}-{2549,3093,0,1,2}-{2543,3089,0,1,3}-{2540,3098,0,1,3}-"
+ },
+ {
+ "npc_id": "36",
+ "loc_data": "{3020,3373,0,1,0}-"
+ },
+ {
+ "npc_id": "38",
+ "loc_data": "{2952,3063,0,0,0}-{2955,3057,0,0,0}-{2956,3035,0,0,0}-{2969,3034,0,0,0}-{2984,3048,0,0,0}-"
+ },
+ {
+ "npc_id": "39",
+ "loc_data": "{2958,3055,0,0,0}-{2954,3029,0,0,0}-{2968,3039,0,0,0}-{2984,3048,0,0,0}-{2989,3058,0,0,0}-{2982,3060,0,0,0}-{2972,3060,0,0,0}-{2998,3061,0,0,0}-{2999,3049,0,0,0}-"
+ },
+ {
+ "npc_id": "40",
+ "loc_data": "{3005,3060,0,0,0}-{3008,3067,0,0,0}-"
+ },
+ {
+ "npc_id": "41",
+ "loc_data": "{2851,3370,0,1,3}-{2846,3374,0,1,3}-{2853,3372,0,1,3}-{2847,3373,0,1,3}-{2850,3371,0,1,1}-{2851,3373,0,1,4}-{2852,3370,0,1,4}-{2819,3561,0,1,4}-{2818,3559,0,1,6}-{3110,9573,0,1,6}-{3140,3096,0,1,3}-{3140,3093,0,1,0}-{3138,3094,0,1,1}-{3140,3093,0,1,3}-{3138,3093,0,1,1}-{3138,3094,0,1,0}-{3140,3093,0,1,1}-{3187,3276,0,1,5}-{3188,3278,0,1,4}-{3197,3356,0,1,4}-{2655,3441,0,1,6}-{2649,3438,0,1,7}-{2649,3446,0,1,6}-{2653,3444,0,1,6}-{2647,3441,0,1,1}-{2674,3652,0,1,3}-{2672,3655,0,1,6}-{2677,3655,0,1,6}-{3234,3297,0,1,3}-{3230,3296,0,1,5}-{3236,3288,0,1,6}-{3236,3300,0,1,2}-{3234,3293,0,1,4}-{3229,3298,0,1,1}-{3228,3296,0,1,4}-{2694,3274,0,1,6}-{2695,3275,0,1,3}-{2965,3336,0,1,4}-{2784,3062,0,1,4}-{2789,3063,0,1,4}-{2815,3560,0,1,7}-"
+ },
+ {
+ "npc_id": "42",
+ "loc_data": "{3185,3220,0,1,0}-{3183,3222,0,1,0}-{3237,3346,0,1,1}-"
+ },
+ {
+ "npc_id": "43",
+ "loc_data": "{2926,3323,0,1,0}-{2922,3325,0,1,3}-{3200,3263,0,1,0}-{3212,3262,0,1,1}-{3204,3268,0,1,0}-{3241,3354,0,1,3}-"
+ },
+ {
+ "npc_id": "44",
+ "loc_data": "{3096,3489,0,0,3}-{3096,3493,0,0,3}-{3097,3494,0,0,1}-{3147,3448,0,0,1}-{3180,3436,0,0,4}-{3180,3440,0,0,4}-{3180,3444,0,0,4}-{3191,3437,0,0,3}-{3191,3441,0,0,3}-{3191,3445,0,0,3}-{3251,3418,0,0,1}-{3252,3418,0,0,1}-{3253,3418,0,0,1}-{3254,3418,0,0,1}-{3255,3418,0,0,1}-{3256,3418,0,0,1}-"
+ },
+ {
+ "npc_id": "45",
+ "loc_data": "{3096,3491,0,0,3}-{2843,5214,0,0,4}-{3148,3448,0,0,0}-{3191,3443,0,0,3}-{3191,3439,0,0,3}-{3191,3435,0,0,3}-{3180,3442,0,0,4}-{3180,3434,0,0,4}-{3180,3438,0,0,4}-"
+ },
+ {
+ "npc_id": "46",
+ "loc_data": "{3179,3348,0,1,0}-{3178,3353,0,1,0}-{3235,3259,0,1,0}-{3238,3244,0,1,0}-{3241,3230,0,1,0}-{3241,3234,0,1,0}-{3243,3228,0,1,0}-{3247,3221,0,1,0}-{3248,3220,0,1,0}-{3259,3212,0,1,0}-{3211,3322,0,1,0}-{3214,3314,0,1,0}-{3214,3318,0,1,0}-{3216,3314,0,1,0}-{3218,3287,0,1,0}-{3223,3281,0,1,0}-{3231,3271,0,1,0}-{3233,3267,0,1,0}-{3233,3270,0,1,0}-{3235,3265,0,1,0}-{2979,3359,0,1,0}-{2979,3357,0,1,0}-{2993,3384,0,1,6}-{3015,3285,0,1,0}-"
+ },
+ {
+ "npc_id": "47",
+ "loc_data": "{2821,3170,0,1,1}-{3341,3267,0,1,5}-{3076,3282,0,1,5}-{3089,3266,0,1,4}-{3091,3266,0,1,4}-{3097,3364,0,1,3}-{3102,3363,0,1,5}-{3127,3487,0,1,4}-{3125,3486,0,1,6}-{3127,3486,0,1,4}-{2603,9480,0,1,1}-{2600,9477,0,1,0}-{2579,9496,0,1,4}-{2580,9508,0,1,0}-{2571,9522,0,1,4}-{2565,9505,0,1,1}-{2566,9510,0,1,6}-{2594,9497,0,1,4}-{2852,9642,0,1,6}-{2858,9632,0,1,3}-{2568,9620,0,1,0}-{2573,9612,0,1,0}-{2579,9631,0,1,0}-{2580,9600,0,1,0}-{2580,9614,0,1,0}-{2580,9620,0,1,0}-{2580,9626,0,1,0}-{2583,9632,0,1,0}-{2584,9625,0,1,0}-{2584,9637,0,1,0}-{2589,9644,0,1,0}-{2590,9601,0,1,0}-{2590,9638,0,1,0}-{2591,9601,0,1,0}-{2591,9621,0,1,0}-{2594,9636,0,1,0}-{2594,9644,0,1,0}-{2597,9604,0,1,0}-{2607,9615,0,1,0}-{2608,9628,0,1,0}-{2614,9651,0,1,0}-{2614,9656,0,1,0}-{2615,9647,0,1,0}-{2615,9661,0,1,0}-{2616,9633,0,1,0}-{2618,9630,0,1,0}-{3108,9754,0,1,5}-{3110,9754,0,1,5}-{3108,9750,0,1,5}-{2592,9831,0,1,3}-{2588,9825,0,1,6}-{2583,9829,0,1,4}-{2581,9841,0,1,0}-{2597,9823,0,1,2}-{2579,9805,0,1,3}-{2576,9804,0,1,0}-{2573,9805,0,1,5}-{2571,9808,0,1,3}-{2576,9810,0,1,2}-{2587,9802,0,1,2}-{2592,9800,0,1,4}-{2596,9805,0,1,6}-{2601,9802,0,1,5}-{2585,9801,0,1,7}-{2594,9803,0,1,0}-{2590,9806,0,1,3}-{2612,9808,0,1,6}-{2604,9810,0,1,6}-{2579,9821,0,1,2}-{2576,9812,0,1,6}-{2580,9813,0,1,6}-{2600,9813,0,1,4}-{2599,9809,0,1,4}-{3158,3226,0,1,5}-{3160,3202,0,1,4}-{3192,3203,0,1,0}-{3194,3204,0,1,0}-{3196,3206,0,1,0}-{3197,3204,0,1,0}-{2654,9640,0,1,6}-{2655,9637,0,1,4}-{2656,9639,0,1,7}-{2651,9636,0,1,5}-{2648,9637,0,1,4}-{2651,9642,0,1,1}-{2654,9640,0,1,0}-{2654,9635,0,1,6}-{2655,9635,0,1,3}-{2664,9626,0,1,6}-{2664,9624,0,1,1}-{2661,9623,0,1,1}-{2663,9623,0,1,3}-{2664,9626,0,1,6}-{2930,9699,0,1,0}-{2933,9697,0,1,0}-{2932,9685,0,1,0}-{2930,9693,0,1,0}-{3235,3224,0,1,3}-{3229,3220,0,1,4}-{3211,3211,0,1,3}-{3225,3220,0,1,1}-{3237,3215,0,1,5}-{3211,3210,0,1,7}-{3227,3220,0,1,7}-{3233,3227,0,1,5}-{3227,3210,0,1,6}-{3228,3222,0,1,4}-{3229,3226,0,1,0}-{3236,3217,0,1,4}-{3259,3230,0,1,4}-{3233,3237,0,1,7}-{3205,3204,0,1,0}-{3206,3204,0,1,0}-{3205,3203,0,1,0}-{3206,3202,0,1,0}-{3207,3202,0,1,0}-{3208,3203,0,1,0}-{3001,3202,0,1,5}-{3243,3687,0,1,5}-{3249,3669,0,1,3}-{3252,3675,0,1,4}-{3252,3680,0,1,3}-{3259,3683,0,1,0}-{3475,9840,0,1,6}-{3481,9842,0,1,1}-{3486,9843,0,1,7}-{3483,9824,0,1,4}-{3496,9808,0,0,5}-{3490,9815,0,1,1}-{3478,9834,0,0,3}-{3490,9824,0,1,4}-{3225,9862,0,1,4}-{3222,9861,0,1,6}-{3220,9860,0,1,6}-{3219,9865,0,1,6}-{3237,9862,0,1,4}-{2536,2982,0,1,3}-{2531,2980,0,1,0}-{2522,2981,0,1,4}-{2545,2989,0,1,4}-{2523,2970,0,1,2}-{3026,3174,0,1,5}-{3019,3176,0,1,7}-{2801,3158,0,1,2}-{2514,3193,0,1,6}-{2518,3192,0,1,3}-{2507,3181,0,1,3}-{2508,3178,0,1,6}-{2511,3183,0,1,3}-{2515,3182,0,1,1}-{3021,3205,0,1,6}-{3019,3292,0,1,7}-{3018,3295,0,1,7}-{2531,3325,0,1,3}-{2530,3327,0,1,5}-{2521,3331,0,1,3}-{2526,3328,0,1,3}-{2523,3331,0,1,4}-{2523,3334,0,1,1}-{2531,3329,0,1,5}-{2532,3333,0,1,5}-{3276,9871,0,1,1}-{3277,9871,0,1,3}-"
+ },
+ {
+ "npc_id": "48",
+ "loc_data": "{2817,2921,0,1,2}-{2775,2929,0,1,2}-{2789,2926,0,1,5}-{2795,2932,0,1,6}-{2775,2933,0,1,0}-{2769,2928,0,1,3}-"
+ },
+ {
+ "npc_id": "49",
+ "loc_data": "{3133,3678,0,1,0}-{3127,3677,0,1,0}-{3127,3667,0,1,0}-{3117,3674,0,1,0}-{3121,3679,0,1,0}-{3104,3678,0,1,0}-{3110,3687,0,1,0}-{3116,3688,0,1,0}-{3103,3704,0,1,0}-{2871,9819,0,1,0}-{2871,9822,0,1,0}-{2870,9826,0,1,0}-{2869,9829,0,1,0}-{2867,9834,0,1,0}-{2867,9841,0,1,0}-{2864,9853,0,1,0}-{2859,9852,0,1,0}-{2851,9850,0,1,0}-{2856,9846,0,1,0}-{2857,9841,0,1,0}-{2861,9838,0,1,0}-{2854,9838,0,1,0}-{3178,3929,0,1,0}-{3193,3926,0,1,0}-{3195,3915,0,1,0}-{3186,3913,0,1,0}-{3175,3906,0,1,0}-{2735,9692,0,1,1}-{2732,9687,0,1,1}-{2733,9688,0,1,1}-{2734,9690,0,1,1}-{2733,9686,0,1,1}-{2732,9692,0,1,1}-{2736,9685,0,1,1}-{2730,9691,0,1,1}-"
+ },
+ {
+ "npc_id": "50",
+ "loc_data": "{2273,4698,0,0,0}-"
+ },
+ {
+ "npc_id": "52",
+ "loc_data": "{2898,9764,0,1,0}-{2892,9800,0,1,0}-{2912,9808,0,1,0}-"
+ },
+ {
+ "npc_id": "53",
+ "loc_data": "{3212,3820,0,1,0}-{3222,3829,0,1,0}-{2694,9508,0,0,3}-{2703,9505,0,0,6}-{2710,9499,0,0,1}-{2704,9520,0,0,5}-{2714,9523,0,0,3}-{2722,9520,0,0,7}-"
+ },
+ {
+ "npc_id": "54",
+ "loc_data": "{2834,9824,0,1,0}-"
+ },
+ {
+ "npc_id": "55",
+ "loc_data": "{2897,9802,0,1,0}-{2909,9906,0,1,4}-"
+ },
+ {
+ "npc_id": "58",
+ "loc_data": "{2574,9874,0,1,0}-{2577,9877,0,1,3}-{2574,9878,0,1,0}-{2575,9871,0,1,4}-{3289,5482,0,1,1}-{3296,5472,0,1,0}-{3291,5466,0,1,6}-{3294,5481,0,1,0}-{3300,5479,0,1,7}-{3288,5480,0,1,3}-{3293,5475,0,1,3}-{3293,5481,0,1,2}-{3286,5465,0,1,3}-{3279,5478,0,1,4}-{3270,5464,0,1,2}-{3270,5468,0,1,1}-"
+ },
+ {
+ "npc_id": "59",
+ "loc_data": "{3082,3362,0,1,4}-{2602,9640,0,1,0}-{2603,9635,0,1,0}-{2603,9638,0,1,0}-{2605,9637,0,1,0}-{2605,9639,0,1,0}-{2606,9635,0,1,0}-{2606,9646,0,1,0}-{2607,9637,0,1,0}-{2607,9641,0,1,0}-{2607,9644,0,1,0}-{2607,9648,0,1,0}-{2608,9635,0,1,0}-{2608,9642,0,1,0}-{2609,9639,0,1,0}-{2609,9643,0,1,0}-{3102,9881,0,1,3}-{3095,9883,0,1,2}-{3182,3244,0,1,1}-{3162,3223,0,1,7}-{3164,3242,0,1,0}-{3169,3246,0,1,0}-{3170,3250,0,1,0}-{3166,3247,0,1,0}-{3164,3249,0,1,0}-{3157,3226,0,1,0}-{3163,3227,0,1,0}-{3165,3223,0,1,0}-{3194,3236,0,1,0}-{3146,3347,0,1,3}-{2648,9766,0,1,4}-{2653,9761,0,1,3}-{2483,2877,0,1,3}-{2481,2876,0,1,4}-{2457,2867,0,1,4}-{2481,2847,0,1,0}-{2475,2854,0,1,3}-{2482,2873,0,1,3}-{2485,2876,0,1,2}-{2449,2865,0,1,1}-{2461,2880,0,1,5}-{2489,2935,0,1,7}-{2492,2907,0,1,1}-{2487,2894,0,1,2}-{2487,2888,0,1,7}-{2478,2916,0,1,5}-{2485,2902,0,1,3}-{2487,2902,0,1,2}-{2489,2894,0,1,2}-{2490,2905,0,1,7}-{2490,2917,0,1,5}-{2484,2890,0,1,1}-{2491,2927,0,1,1}-{3250,3239,0,1,1}-{3241,3241,0,1,1}-{3249,3249,0,1,1}-{3218,9890,0,1,3}-{3220,9887,0,1,0}-{3218,9887,0,1,1}-{3218,9889,0,1,5}-{3213,9890,0,1,1}-{2496,2890,0,1,4}-{2503,2889,0,1,1}-{2497,2939,0,1,2}-{2369,3374,0,1,0}-{2372,3379,0,1,0}-{2378,3366,0,1,0}-{2379,3378,0,1,0}-{2387,3370,0,1,0}-{2394,3365,0,1,0}-{2402,3386,0,1,0}-{2405,3381,0,1,0}-{2407,3387,0,1,0}-{2412,3384,0,1,0}-"
+ },
+ {
+ "npc_id": "60",
+ "loc_data": "{3189,3883,0,1,5}-{3182,3882,0,1,5}-{3177,3871,0,1,0}-{3176,3878,0,1,0}-{3173,3892,0,1,6}-{3171,3884,0,1,4}-{3166,3874,0,1,1}-{3169,3900,0,1,1}-{3165,3881,0,1,3}-{3164,3888,0,1,6}-{3163,3894,0,1,7}-{3162,3894,0,1,4}-{2448,2784,0,1,7}-{2477,2866,0,1,5}-{2455,2857,0,1,6}-{2434,2845,0,1,4}-{2460,2869,0,1,3}-{2484,2897,0,1,3}-{2471,2890,0,1,6}-{2491,2906,0,1,0}-{2544,2904,0,1,2}-{2547,2982,0,1,6}-{2548,2981,0,1,1}-{2523,2975,0,1,1}-"
+ },
+ {
+ "npc_id": "61",
+ "loc_data": "{3111,9747,0,1,5}-{3108,9747,0,1,5}-{3156,3248,0,1,4}-{3143,3241,0,1,4}-{3156,3249,0,1,4}-{3175,3248,0,1,7}-{3169,3260,0,1,4}-{3171,3254,0,1,5}-{3162,3246,0,1,6}-{3179,3262,0,1,1}-{3162,3226,0,1,1}-{3166,3222,0,1,1}-{3157,3229,0,1,5}-{3168,3222,0,1,4}-{3182,3878,0,1,6}-{3182,3886,0,1,7}-{3182,3888,0,1,5}-{3175,3888,0,1,4}-{3175,3879,0,1,7}-{3174,3879,0,1,3}-{3174,3882,0,1,0}-{3175,3885,0,1,3}-{3172,3876,0,1,2}-{3172,3894,0,1,1}-{3172,3885,0,1,3}-{3165,3886,0,1,3}-{3165,3896,0,1,1}-{3166,3886,0,1,1}-{3164,3893,0,1,4}-{3163,3881,0,1,4}-{3159,3889,0,1,0}-{2893,9835,0,1,0}-{2895,9828,0,1,0}-{2891,9831,0,1,0}-{3211,9622,0,1,2}-{3215,9620,0,1,4}-{3212,9618,0,1,3}-{3217,9617,0,1,3}-{3214,9620,0,1,7}-{3213,9890,0,1,5}-{3210,9886,0,1,4}-{3213,9887,0,1,1}-{3207,9880,0,1,0}-{3255,9870,0,1,4}-{3258,9872,0,1,3}-{3261,9870,0,1,4}-{3327,3131,0,1,5}-{3321,3145,0,1,3}-{3322,3143,0,1,3}-{2541,3189,0,1,3}-{2542,3187,0,1,6}-{2543,3186,0,1,4}-{2545,3183,0,1,3}-{2545,3183,0,1,3}-{2545,3182,0,1,3}-{2543,3183,0,1,0}-{2543,3182,0,1,3}-{2539,3182,0,1,0}-"
+ },
+ {
+ "npc_id": "62",
+ "loc_data": "{2850,3060,0,1,6}-{2857,3044,0,1,7}-{2856,3066,0,1,4}-{2860,3094,0,1,6}-{2854,3086,0,1,6}-{2863,3083,0,1,3}-{2853,3081,0,1,4}-{2859,3079,0,1,4}-{2859,3075,0,1,6}-{2871,3092,0,1,1}-{2867,3094,0,1,1}-{2861,3082,0,1,3}-{2861,3094,0,1,3}-{2863,3081,0,1,2}-{2864,3089,0,1,3}-{2859,3084,0,1,0}-{2885,2950,0,1,4}-{2891,2951,0,1,6}-{2894,2946,0,1,4}-{2928,3022,0,1,3}-{2930,3029,0,1,4}-{2927,3039,0,1,6}-{2928,3043,0,1,0}-{2929,3036,0,1,7}-{2919,3040,0,1,4}-{2934,3045,0,1,2}-{2929,3035,0,1,4}-{2914,3055,0,1,4}-{2922,3059,0,1,3}-{2930,3049,0,1,4}-{2914,3047,0,1,4}-{2935,3049,0,1,1}-{2927,3058,0,1,3}-{2811,2975,0,1,7}-{2815,2987,0,1,5}-{2808,3007,0,1,6}-{2812,3007,0,1,1}-{2784,3030,0,1,4}-{2783,3017,0,1,3}-{2776,3107,0,1,1}-{2794,3121,0,1,3}-{2795,3118,0,1,1}-{2796,3109,0,1,1}-{2808,3112,0,1,6}-{2791,3124,0,1,1}-{2769,3198,0,1,7}-{2768,3206,0,1,1}-"
+ },
+ {
+ "npc_id": "63",
+ "loc_data": "{3074,3892,0,1,3}-{2841,9583,0,1,4}-{2841,9582,0,1,4}-{2839,9582,0,1,1}-{2837,9572,0,1,6}-{2832,9580,0,1,1}-{3128,9954,0,1,0}-{3127,9956,0,1,0}-{3125,9958,0,1,0}-{3117,9956,0,1,0}-{3122,9956,0,1,0}-{3120,9952,0,1,0}-{3123,9951,0,1,0}-{3125,9948,0,1,0}-{3118,9950,0,1,0}-{3165,9891,0,1,6}-{3177,9886,0,1,4}-{3175,9889,0,1,4}-{3177,9879,0,1,4}-{3177,9888,0,1,1}-{3178,9895,0,1,4}-{3182,9884,0,1,3}-{3164,9888,0,1,3}-{3169,9892,0,1,6}-{3213,3728,0,1,0}-{3211,3734,0,1,0}-{3214,3738,0,1,0}-{3215,3748,0,1,0}-{3218,3746,0,1,0}-{3226,3750,0,1,0}-{3239,3749,0,1,0}-{3247,3748,0,1,0}-{3248,3746,0,1,0}-{3244,3743,0,1,0}-{3245,3737,0,1,0}-{3258,5560,0,1,2}-{3258,5555,0,1,3}-{3260,5557,0,1,3}-{3257,5552,0,1,1}-{3260,5558,0,1,5}-{3258,5556,0,1,6}-{3257,5555,0,1,6}-{3260,5559,0,1,7}-{3257,5561,0,1,1}-{3071,3894,0,1,7}-{3062,3897,0,1,3}-{3058,3889,0,1,4}-{3054,3880,0,1,2}-{3054,3895,0,1,7}-{3051,3879,0,1,6}-{3051,3886,0,1,6}-{3047,3893,0,1,1}-{3047,3881,0,1,4}-{3044,3893,0,1,5}-{3041,3894,0,1,1}-{3038,3890,0,1,1}-{3046,3872,0,1,4}-"
+ },
+ {
+ "npc_id": "64",
+ "loc_data": "{2869,9912,0,1,0}-{2819,9950,0,1,0}-{2824,9934,0,1,0}-{2827,9925,0,1,0}-{2828,9956,0,1,0}-{2857,9969,0,1,0}-{2872,9972,0,1,0}-{2684,9798,0,1,2}-{2885,9962,0,1,0}-{2887,9936,0,1,0}-{2959,3917,0,1,0}-{2960,3925,0,1,0}-{2961,3920,0,1,0}-{2962,3915,0,1,0}-{2962,3933,0,1,0}-{2963,3923,0,1,0}-{2963,3929,0,1,0}-{2965,3927,0,1,0}-{2965,3931,0,1,0}-{2691,9814,0,1,5}-{2694,9819,0,1,6}-{2696,9831,0,1,3}-{2702,9837,0,1,6}-{2709,9844,0,1,3}-{2720,9847,0,1,4}-{2724,9843,0,1,6}-{2733,9846,0,1,4}-{2740,9841,0,1,3}-{2745,9836,0,1,4}-{2745,9828,0,1,5}-{2747,9826,0,1,1}-"
+ },
+ {
+ "npc_id": "66",
+ "loc_data": "{2417,3493,1,1,0}-{2418,3495,1,1,0}-{2383,3452,0,1,0}-{2401,3417,0,1,0}-{2402,3422,0,1,0}-{2402,3441,0,1,0}-{2403,3430,0,1,0}-{2408,3441,0,1,0}-{2409,3430,0,1,0}-{2423,3426,0,1,0}-{2427,3428,0,1,0}-{2427,3440,0,1,0}-{2526,3168,0,1,0}-{2529,3163,0,1,0}-{2530,3172,0,1,0}-{2536,3169,0,1,0}-{2435,3460,0,1,0}-{2440,3470,0,1,0}-{2447,3502,0,1,0}-{2457,3462,0,1,0}-{2478,3502,0,1,0}-{2449,3492,1,1,0}-{2450,3490,1,1,0}-{2474,3490,1,1,0}-{2482,3492,1,1,0}-{2482,3498,1,1,0}-{2399,3356,0,1,0}-"
+ },
+ {
+ "npc_id": "67",
+ "loc_data": "{2556,3226,0,1,0}-{2456,3425,0,1,0}-{2459,3421,0,1,0}-{2462,3431,0,1,0}-{2394,3500,1,1,0}-{2417,3483,1,1,0}-{2377,3442,0,1,0}-{2380,3425,0,1,0}-{2383,3433,0,1,0}-{2405,3447,0,1,0}-{2406,3440,0,1,0}-{2393,3451,1,1,0}-{2408,3437,1,1,0}-{2521,3169,0,1,0}-{2521,3171,0,1,0}-{2033,5530,1,1,0}-{2437,3478,0,1,0}-{2442,3465,0,1,0}-{2456,3467,0,1,0}-{2471,3496,0,1,0}-{2474,3508,0,1,0}-{2475,3471,0,1,0}-{2479,3468,0,1,0}-{2486,3470,0,1,0}-{2492,3474,0,1,0}-{2443,3464,1,1,0}-{2443,3502,1,1,0}-{2448,3496,1,1,0}-{2449,3506,1,1,0}-{2457,3498,1,1,0}-{2474,3498,1,1,0}-{2480,3502,1,1,0}-{2481,3482,1,1,0}-{2490,3503,1,1,0}-{2400,3356,0,1,0}-"
+ },
+ {
+ "npc_id": "68",
+ "loc_data": "{2400,3514,1,1,0}-{2418,3485,1,1,0}-{2378,3423,0,1,0}-{2393,3435,0,1,0}-{2394,3425,0,1,0}-{2395,3449,0,1,0}-{2403,3433,0,1,0}-{2420,3429,0,1,0}-{2420,3438,0,1,0}-{2522,3172,0,1,0}-{2433,3474,0,1,0}-{2433,3492,0,1,0}-{2458,3497,0,1,0}-{2464,3505,0,1,0}-{2476,3458,0,1,0}-{2445,3502,1,1,0}-{2453,3488,1,1,0}-{2475,3502,1,1,0}-{2465,3490,2,1,0}-{2401,3357,0,1,0}-"
+ },
+ {
+ "npc_id": "73",
+ "loc_data": "{3123,9657,0,1,2}-{3087,9672,0,1,1}-{3103,9672,0,1,1}-{3119,9670,0,1,1}-{3251,9896,0,1,6}-{3268,9893,0,1,3}-"
+ },
+ {
+ "npc_id": "74",
+ "loc_data": "{3124,9660,0,1,3}-{3122,9656,0,1,4}-{3117,9646,0,1,1}-{3124,9651,0,1,2}-{3117,9645,0,1,3}-{3082,9671,0,1,3}-{3105,9672,0,1,1}-{3113,9673,0,1,3}-{3094,9671,0,1,3}-{2843,9767,0,1,3}-{2845,9762,0,1,7}-{2842,9759,0,1,6}-{3126,9865,0,1,7}-{3129,9859,0,1,3}-{3121,9863,0,1,3}-{3126,9862,0,1,5}-{3148,9899,0,1,3}-{3147,9905,0,1,6}-{3141,9901,0,1,5}-{3142,9891,0,1,6}-{3139,9886,0,1,2}-{3148,9883,0,1,1}-{3151,9889,0,1,3}-"
+ },
+ {
+ "npc_id": "75",
+ "loc_data": "{2588,9493,0,1,3}-{2584,9491,0,1,3}-{2589,9492,0,1,4}-{2591,9492,0,1,6}-{2593,9491,0,1,6}-{2588,9491,0,1,3}-{2839,9774,0,1,4}-{2931,9641,0,1,6}-{2931,9643,0,1,6}-{3226,9909,0,1,4}-{3225,9905,0,1,0}-{3234,9907,0,1,4}-"
+ },
+ {
+ "npc_id": "76",
+ "loc_data": "{2843,9774,0,1,6}-{2842,9769,0,1,4}-{2842,9764,0,1,7}-{2845,9754,0,1,4}-{2849,9751,0,1,1}-{2850,9747,0,1,3}-{2844,9758,0,1,7}-{2540,9814,0,1,6}-{2547,9817,0,1,6}-"
+ },
+ {
+ "npc_id": "78",
+ "loc_data": "{2585,3479,0,1,1}-{2589,3480,0,1,2}-{2582,3476,0,1,3}-{2588,3485,0,1,4}-{2580,3490,0,1,5}-{2577,3482,0,1,6}-{2583,3484,0,1,7}-{3073,3961,0,1,0}-{3074,3952,0,1,0}-{3075,3955,0,1,0}-{3076,3961,0,1,0}-{3077,3949,0,1,0}-{3079,3957,0,1,0}-{3080,3961,0,1,0}-{2568,9528,0,1,5}-{2573,9530,0,1,3}-{2575,9525,0,1,6}-{2571,9528,0,1,7}-{2862,9569,0,1,4}-{2857,9571,0,1,7}-{2837,9561,0,1,1}-{2608,9818,0,1,7}-{2609,9825,0,1,5}-{2607,9830,0,1,1}-{2605,9837,0,1,1}-{2607,9833,0,1,6}-{2905,9832,0,1,0}-{2907,9831,0,1,0}-{2913,9828,0,1,0}-{2921,9826,0,1,0}-{2924,9831,0,1,0}-{2921,9834,0,1,0}-{2918,9831,0,1,0}-{2908,9838,0,1,0}-{2913,9841,0,1,0}-{2672,9805,0,1,3}-{2663,9804,0,1,4}-{2658,9809,0,1,5}-{3725,9369,0,1,1}-{3737,9390,0,1,4}-{3738,9399,0,1,0}-{3740,9407,0,1,1}-{3765,9407,0,1,1}-{3762,9395,0,1,3}-{3725,9390,0,1,3}-{3753,9387,0,1,0}-{3728,9382,0,1,3}-{3729,9360,0,1,6}-{3755,9424,0,1,0}-{3760,9440,0,1,4}-{3737,9425,0,1,7}-{3720,9430,0,1,4}-{3736,9451,0,1,3}-{3728,9463,0,1,2}-{3740,9462,0,1,4}-{3770,9463,0,1,1}-{3752,9450,0,1,6}-{3762,9432,0,1,1}-{3733,9421,0,1,7}-{2759,3402,0,1,2}-{2756,3400,0,1,0}-{3787,9459,0,1,1}-{3803,9447,0,1,4}-{3778,9438,0,1,1}-{3786,9422,0,1,4}-{3800,9419,0,1,3}-{3797,9427,0,1,4}-{3820,9432,0,1,5}-{3825,9414,0,1,3}-{3833,9415,0,1,0}-{3825,9449,0,1,3}-{3827,9459,0,1,1}-{3818,9466,0,1,4}-{3799,9460,0,1,1}-{3794,9451,0,1,1}-{2543,9564,0,1,1}-{2543,9562,0,1,1}-{2542,9557,0,1,1}-{2542,9569,0,1,4}-{2540,9566,0,1,0}-{2549,9568,0,1,6}-{2538,9568,0,1,3}-"
+ },
+ {
+ "npc_id": "80",
+ "loc_data": "{2619,3265,0,1,0}-{2619,3265,0,1,3}-{2615,3267,0,1,4}-"
+ },
+ {
+ "npc_id": "81",
+ "loc_data": "{2589,3120,0,1,4}-{2605,3116,0,1,5}-{2923,3277,0,1,1}-{2921,3289,0,1,1}-{2923,3280,0,1,6}-{3255,3255,0,1,3}-{3255,3256,0,1,4}-{3259,3261,0,1,1}-{3263,3283,0,1,6}-{3257,3268,0,1,4}-{2436,4443,0,1,3}-{2441,4449,0,1,6}-{3038,3310,0,1,5}-{3028,3312,0,1,6}-{3028,3299,0,1,6}-{3042,3300,0,1,6}-"
+ },
+ {
+ "npc_id": "82",
+ "loc_data": "{3110,3157,2,1,5}-{3096,3703,0,1,0}-{2841,9557,0,1,3}-{2831,9562,0,1,3}-{2838,9605,0,1,3}-{2936,9652,0,1,3}-{2926,9803,0,1,0}-{2935,9794,0,1,0}-{3052,3117,2,1,1}-{3311,3845,0,1,0}-"
+ },
+ {
+ "npc_id": "83",
+ "loc_data": "{3169,3711,0,1,7}-{2639,9477,2,0,3}-{2635,9497,2,0,2}-"
+ },
+ {
+ "npc_id": "84",
+ "loc_data": "{2875,9776,0,1,0}-{2862,9776,0,1,0}-{2860,9762,0,1,0}-{2854,9780,0,1,0}-{2866,9781,0,1,0}-{2700,9481,0,0,5}-{2729,9483,0,0,5}-"
+ },
+ {
+ "npc_id": "86",
+ "loc_data": "{3105,9517,0,1,7}-{3101,9517,0,1,6}-{3102,9521,0,1,4}-{3106,9519,0,1,1}-{3104,9514,0,1,4}-{3104,9518,0,1,1}-{3107,9519,0,1,1}-{3109,9516,0,1,1}-{3107,9515,0,1,7}-{3105,9512,0,1,6}-{3102,9513,0,1,3}-{3100,9514,0,1,1}-{3100,9516,0,1,7}-{3099,9521,0,1,0}-{3103,9523,0,1,1}-{3098,9880,0,1,5}-{3094,9883,0,1,1}-{3119,9891,0,1,4}-{3188,3181,0,1,7}-{3181,3191,0,1,7}-{3185,3199,0,1,4}-{3176,3198,0,1,6}-{3168,3188,0,1,4}-{3172,3178,0,1,1}-{3179,3174,0,1,1}-{3189,3168,0,1,5}-{3196,3208,0,1,1}-{3196,3205,0,1,0}-{3195,3212,0,1,0}-{2632,9696,0,1,1}-{2639,9697,0,1,3}-{2646,9696,0,1,3}-{2650,9697,0,1,4}-{2646,9702,0,1,6}-{2647,9713,0,1,3}-{2641,9719,0,1,1}-{2650,9716,0,1,1}-{3212,3191,0,1,6}-{3207,3192,0,1,2}-{3216,3184,0,1,2}-{3224,3174,0,1,4}-{3229,3183,0,1,5}-{3222,3185,0,1,3}-{3216,3177,0,1,4}-{3200,3182,0,1,5}-{3202,3189,0,1,6}-{2977,3700,0,1,0}-{2967,3694,0,1,0}-{2973,3694,0,1,0}-{3495,9812,0,1,1}-{3502,9807,0,0,4}-{3249,9868,0,1,4}-{3237,9868,0,1,3}-{3221,9873,0,1,6}-{3225,9862,0,1,2}-{3237,9866,0,1,6}-{3232,9867,0,1,7}-{3219,9862,0,1,7}-{3227,9875,0,1,4}-{2518,3187,0,1,3}-{3291,3388,0,1,6}-{3049,3691,0,1,0}-{3276,9870,0,1,3}-"
+ },
+ {
+ "npc_id": "87",
+ "loc_data": "{3103,9881,0,1,3}-{3122,9889,0,1,2}-{3117,9890,0,1,2}-{3242,3530,0,1,7}-{3256,3541,0,1,7}-{3248,3553,0,1,7}-{2520,3188,0,1,3}-{3293,3382,0,1,4}-"
+ },
+ {
+ "npc_id": "88",
+ "loc_data": "{2573,9630,0,1,0}-{2601,9802,0,1,6}-{2594,9805,0,1,1}-{2587,9806,0,1,2}-{2585,9803,0,1,1}-{2584,9801,0,1,5}-"
+ },
+ {
+ "npc_id": "89",
+ "loc_data": "{2575,3058,0,0,6}-{3080,3451,0,1,1}-{3096,3460,0,1,3}-{3142,3211,0,1,6}-{2629,3266,0,1,2}-{2634,3265,0,1,1}-{2557,3065,0,0,1}-{3294,3344,0,1,3}-{3289,3349,0,1,6}-{3286,3345,0,1,1}-{2783,3463,0,1,7}-"
+ },
+ {
+ "npc_id": "90",
+ "loc_data": "{3110,3367,0,0,3}-{3116,3534,0,0,4}-{3072,3531,0,1,0}-{3112,3538,0,1,0}-{2852,9577,0,1,1}-{2865,9567,0,1,3}-{3373,9748,0,1,0}-{3378,9748,0,1,0}-{3382,9753,0,1,0}-{3373,9812,0,1,0}-{3378,9812,0,1,0}-{3382,9817,0,1,0}-{3110,9909,0,1,4}-{3121,9910,0,1,4}-{3133,9909,0,1,5}-{3133,9904,0,1,6}-{3129,9916,0,1,3}-{3133,9916,0,1,0}-{2925,3254,2,0,3}-{2924,3252,2,1,3}-{2926,3255,2,1,4}-{2932,3255,2,1,3}-{2931,3251,2,1,4}-{3194,5448,0,1,3}-{3183,5447,0,1,3}-{3177,5457,0,1,4}-{3187,5456,0,1,1}-{2885,9812,0,1,0}-{2883,9836,0,1,0}-{3141,9875,0,1,6}-{3208,9905,0,1,4}-{3011,3590,0,1,0}-{3016,3596,0,1,0}-{3022,3586,0,1,0}-"
+ },
+ {
+ "npc_id": "91",
+ "loc_data": "{3099,9910,0,1,3}-{3100,9906,0,1,6}-{3194,5454,0,1,4}-{3212,9906,0,1,6}-{3252,9916,0,1,3}-{3259,9915,0,1,3}-{3272,9913,0,1,6}-{3274,9914,0,1,1}-{3278,9908,0,1,1}-{3275,9911,0,1,5}-"
+ },
+ {
+ "npc_id": "92",
+ "loc_data": "{2848,3248,0,1,3}-{2850,3235,0,1,3}-{2819,3288,0,1,1}-{3111,3561,0,1,3}-{2840,9652,0,1,1}-{2829,9657,0,1,4}-{3122,9661,0,1,6}-{3123,9648,0,1,6}-{3117,9671,0,1,1}-{2593,9883,0,1,1}-{2590,9885,0,1,4}-{2586,9883,0,1,1}-{2585,9878,0,1,3}-{3132,9915,0,1,5}-{3095,9909,0,1,3}-{3143,3802,0,1,0}-{3145,3779,0,1,0}-{3149,9869,0,1,6}-{3138,9878,0,1,5}-{3137,9869,0,1,3}-{2664,9877,0,1,0}-{2980,3763,0,1,0}-{2977,3753,0,1,0}-{2992,3942,0,1,4}-{3005,10362,0,1,1}-{3003,10358,0,1,1}-{3005,10351,0,1,1}-{3003,10345,0,1,5}-{2537,9845,0,1,1}-{2540,9846,0,1,4}-{2552,9844,0,1,6}-{2556,9846,0,1,4}-{2535,9844,0,1,3}-{2532,9843,0,1,4}-{2530,9845,0,1,3}-{2540,9820,0,1,4}-{2544,9824,0,1,4}-"
+ },
+ {
+ "npc_id": "93",
+ "loc_data": "{2566,9507,0,1,3}-{2562,9505,0,1,1}-{2568,9509,0,1,3}-{2571,9509,0,1,1}-{2564,9504,0,1,1}-{2566,9505,0,1,1}-{2841,9625,0,1,4}-{2845,9628,0,1,3}-{2841,9638,0,1,6}-{2845,9645,0,1,1}-{3101,9956,0,1,3}-{3104,9948,0,1,0}-{3104,9955,0,1,4}-{3108,9951,0,1,4}-{3108,9954,0,1,1}-{3111,9954,0,1,6}-{3112,9958,0,1,4}-{3194,5460,0,1,6}-{3192,5466,0,1,7}-{3185,5493,0,1,4}-{3182,5494,0,1,6}-{3185,5486,0,1,7}-{3175,5492,0,1,3}-{3169,5496,0,1,4}-{3170,5492,0,1,3}-{3186,5487,0,1,4}-{3169,5491,0,1,2}-{2655,9824,0,1,1}-{2669,9824,0,1,4}-{2667,9823,0,1,5}-{2658,9830,0,1,6}-{2666,9829,0,1,6}-{2637,9891,0,1,0}-{2645,9891,0,1,0}-{2653,9892,0,1,0}-{2653,9892,0,1,0}-{2544,9841,0,1,1}-{2536,9844,0,1,6}-{2527,9844,0,1,3}-{2530,9842,0,1,4}-{2543,9815,0,1,3}-"
+ },
+ {
+ "npc_id": "94",
+ "loc_data": "{2589,9881,0,1,6}-{2591,9882,0,1,4}-"
+ },
+ {
+ "npc_id": "95",
+ "loc_data": "{2602,2955,0,1,0}-{2605,2963,0,1,0}-{2607,2967,0,1,0}-{2610,2958,0,1,0}-{2610,2961,0,1,0}-{2610,2965,0,1,0}-{2616,3283,0,1,0}-{2620,3283,0,1,0}-{2379,3344,0,1,0}-{2395,3340,0,1,0}-{2398,3330,0,1,0}-{2406,3329,0,1,0}-{2647,3584,0,1,0}-{2680,3585,0,1,0}-{2682,3592,0,1,0}-{2482,2923,0,1,0}-{2462,3274,0,1,0}-{2465,3272,0,1,0}-{2465,3275,0,1,0}-{2470,3272,0,1,0}-{2472,3274,0,1,0}-{2477,3275,0,1,0}-{2437,3336,0,1,0}-{2439,3333,0,1,0}-{2439,3335,0,1,0}-{2440,3333,0,1,0}-{2440,3335,0,1,0}-{2706,3580,0,1,0}-{2717,3569,0,1,0}-{3207,3919,0,1,0}-{3218,3924,0,1,0}-{3229,3917,0,1,0}-{3241,3921,0,1,0}-{2496,2959,0,1,0}-{2498,2968,0,1,0}-{2500,2959,0,1,0}-{2502,2969,0,1,0}-{2509,2964,0,1,0}-{2516,3197,0,1,0}-{2548,3179,0,1,0}-"
+ },
+ {
+ "npc_id": "96",
+ "loc_data": "{2842,3450,0,1,0}-{2864,3453,0,1,0}-{2870,3438,0,1,0}-{2872,3445,0,1,0}-{2846,3477,0,1,0}-{2847,3474,0,1,0}-{2860,3492,0,1,0}-{2866,3498,0,1,0}-"
+ },
+ {
+ "npc_id": "97",
+ "loc_data": "{2831,3515,0,1,0}-{2833,3513,0,1,0}-{2848,3487,0,1,0}-{2850,3484,0,1,0}-{2854,3509,0,1,0}-{2856,3508,0,1,0}-{2988,3921,0,1,0}-{2991,3924,0,1,0}-{2992,3917,0,1,0}-{2994,3921,0,1,0}-{3002,3924,0,1,0}-{3004,3917,0,1,0}-{3005,3926,0,1,0}-{3006,3921,0,1,0}-"
+ },
+ {
+ "npc_id": "98",
+ "loc_data": "{3014,3294,0,1,1}-"
+ },
+ {
+ "npc_id": "99",
+ "loc_data": "{2624,3319,0,1,1}-{2624,3327,0,1,6}-{2642,3314,0,1,4}-{2646,3325,0,1,1}-{2646,3504,0,1,4}-{2634,3476,0,1,5}-{2651,3477,0,1,5}-{2665,3472,0,1,5}-{2662,3488,0,1,5}-{2672,3505,0,1,5}-{2790,3199,0,1,2}-{2784,3188,0,1,1}-{2779,3207,0,1,1}-"
+ },
+ {
+ "npc_id": "100",
+ "loc_data": "{2567,3440,0,1,3}-{2564,9653,0,1,0}-{2565,9655,0,1,0}-{2566,9626,0,1,0}-{2567,9653,0,1,0}-{2569,9633,0,1,0}-{2607,9621,0,1,0}-{2551,3408,0,1,6}-{2553,3405,0,1,3}-{2559,3452,0,1,3}-"
+ },
+ {
+ "npc_id": "101",
+ "loc_data": "{2622,3389,0,1,4}-{2619,3390,0,1,4}-{2573,3437,0,1,3}-{2562,9659,0,1,0}-{2563,9661,0,1,0}-{2599,9626,0,1,0}-{2601,9627,0,1,0}-{2605,9621,0,1,0}-{2610,9620,0,1,0}-{2624,3391,0,1,1}-{2555,3407,0,1,3}-{2553,3457,0,1,3}-"
+ },
+ {
+ "npc_id": "102",
+ "loc_data": "{2622,3390,0,1,7}-{2622,3390,0,1,7}-{2562,9657,0,1,0}-{2571,9653,0,1,0}-"
+ },
+ {
+ "npc_id": "103",
+ "loc_data": "{2928,3251,1,1,3}-{2928,3244,1,1,4}-{2924,3253,1,1,3}-{2927,3252,1,1,4}-{2927,3254,1,1,3}-{2888,9850,0,1,0}-{2901,9848,0,1,0}-{2909,9848,0,1,0}-{2919,9848,0,1,0}-{2937,9837,0,1,0}-{2906,9818,0,1,0}-{2920,9818,0,1,0}-{2968,3761,0,1,0}-{2985,3761,0,1,0}-{2962,3755,0,1,0}-{2990,3755,0,1,0}-{2968,3749,0,1,0}-{2985,3749,0,1,0}-{2713,4892,0,1,3}-{2711,4899,0,1,3}-{2732,4901,0,1,3}-{2729,4893,0,1,3}-{2713,4907,0,1,3}-{3241,9907,0,1,4}-{3243,9914,0,1,1}-{3242,9913,0,1,6}-{3242,9916,0,1,5}-{3239,9914,0,1,1}-{2501,3289,0,1,1}-{3272,3664,0,1,1}-"
+ },
+ {
+ "npc_id": "104",
+ "loc_data": "{3093,3357,1,1,6}-{2894,9849,0,1,0}-{2905,9851,0,1,0}-{2915,9852,0,1,0}-{2934,9837,0,1,0}-{2935,9828,0,1,0}-{2912,9820,0,1,0}-{2900,9819,0,1,0}-"
+ },
+ {
+ "npc_id": "105",
+ "loc_data": "{3100,3594,0,1,6}-{3107,3608,0,1,2}-{3099,3602,0,1,0}-{2632,3280,0,1,1}-{2633,3274,0,1,3}-{2696,3329,0,1,4}-{2708,3336,0,1,4}-{3230,3500,0,1,5}-{2988,3671,0,1,0}-{3001,3674,0,1,0}-{2497,3164,0,1,2}-{2387,3376,0,1,0}-{2398,3366,0,1,0}-{2412,3378,0,1,0}-{2419,3372,0,1,0}-"
+ },
+ {
+ "npc_id": "106",
+ "loc_data": "{2959,3445,0,1,3}-{2968,3480,0,1,6}-{2968,3490,0,1,3}-{2978,3507,0,1,1}-{2807,3377,0,1,6}-{3289,3353,0,1,3}-"
+ },
+ {
+ "npc_id": "107",
+ "loc_data": "{2870,3166,0,1,3}-{2868,3159,0,1,4}-{2867,3172,0,1,5}-{2858,3167,0,1,3}-{2846,3153,0,1,3}-{2851,3149,0,1,1}-{2602,3267,0,1,6}-{2603,3270,0,1,4}-{2607,3268,0,1,5}-{2645,9823,0,1,1}-{2641,9819,0,1,7}-{2641,9817,0,1,2}-{2642,9813,0,1,5}-{2639,9809,0,1,2}-{3256,3954,0,1,1}-{3249,3949,0,1,1}-{3246,3945,0,1,1}-{3239,3943,0,1,1}-{3231,3940,0,1,1}-{3225,3943,0,1,1}-{3234,3945,0,1,1}-{3253,9909,0,1,4}-{2787,2943,0,1,3}-{2789,2949,0,1,3}-{2781,2949,0,1,3}-{2813,3112,0,1,4}-{3275,3154,0,1,6}-{3300,3312,0,1,1}-{3300,3305,0,1,3}-{3298,3300,0,1,5}-{3298,3294,0,1,0}-{3299,3290,0,1,6}-{3025,3568,0,1,0}-{3028,3577,0,1,0}-{3032,3570,0,1,0}-{3040,3581,0,1,0}-{3041,3572,0,1,0}-{3047,3567,0,1,0}-{3055,3574,0,1,0}-{3056,3566,0,1,0}-{3062,3555,0,1,0}-{3062,3570,0,1,0}-{3055,9776,0,1,4}-{3039,9769,0,1,6}-{3049,9764,0,1,3}-{3050,9770,0,1,1}-{3039,9765,0,1,1}-{3048,9762,0,1,4}-{3044,9760,0,1,6}-{3048,9779,0,1,1}-{3038,9802,0,1,5}-{3041,9804,0,1,6}-{3040,9795,0,1,7}-"
+ },
+ {
+ "npc_id": "108",
+ "loc_data": "{2941,9779,0,1,0}-{2934,9776,0,1,0}-{2934,9768,0,1,0}-{2934,9757,0,1,0}-{2930,9752,0,1,0}-{2732,3225,0,1,0}-{2729,3224,0,1,0}-{2719,3223,0,1,0}-{2722,3220,0,1,0}-{2724,3216,0,1,0}-{2721,3213,0,1,0}-{2713,3217,0,1,0}-"
+ },
+ {
+ "npc_id": "109",
+ "loc_data": "{2601,3269,0,0,0}-{2604,3272,0,0,0}-{2605,3268,0,0,0}-{2606,3271,0,0,0}-"
+ },
+ {
+ "npc_id": "110",
+ "loc_data": "{2564,9887,0,1,4}-{2581,9897,0,1,1}-{2577,9888,0,1,1}-{3234,5497,0,1,1}-{3305,9400,0,1,1}-{3244,9356,0,1,1}-{3252,9370,0,1,1}-{3294,9375,0,1,3}-{3050,10337,0,1,4}-{3047,10340,0,1,4}-{3048,10346,0,1,4}-{3048,10346,0,1,3}-"
+ },
+ {
+ "npc_id": "111",
+ "loc_data": "{2920,3800,0,1,3}-{2883,9932,0,1,0}-{2883,9965,0,1,0}-{2952,3902,0,1,6}-{2953,3889,0,1,6}-{2947,3921,0,1,6}-{2811,3506,0,1,0}-{3043,9581,0,1,1}-{3055,9577,0,1,6}-{3061,9576,0,1,4}-{3055,9571,0,1,7}-{3052,9566,0,1,6}-"
+ },
+ {
+ "npc_id": "112",
+ "loc_data": "{2825,3249,0,1,6}-{2560,3406,0,1,3}-{3144,3822,0,1,0}-{3165,9880,0,1,3}-{3168,9880,0,1,1}-{3159,9903,0,1,4}-{3156,9907,0,1,0}-{2699,3206,0,1,1}-{3202,5490,0,1,4}-{3237,5555,0,1,5}-{2554,3411,0,1,3}-{2554,3400,0,1,3}-{2551,3401,0,1,4}-{2543,9823,0,1,3}-{2540,9819,0,1,5}-{2543,9817,0,1,4}-"
+ },
+ {
+ "npc_id": "113",
+ "loc_data": "{2622,3272,0,0,0}-{2835,9526,0,1,4}-{2832,9514,0,1,4}-{2825,9521,0,1,5}-{2846,9520,0,1,3}-{2838,9508,0,1,0}-{2832,9495,0,1,6}-{2838,9492,0,1,6}-{2851,9485,0,1,3}-{2847,9481,0,1,3}-{2865,9494,0,1,3}-{2855,9502,0,1,2}-{2870,9496,0,1,1}-{2851,9511,0,1,2}-{2853,9519,0,1,3}-{2857,9520,0,1,6}-{2863,9525,0,1,1}-{2869,9530,0,1,5}-{2865,9515,0,1,4}-{2868,9507,0,1,3}-{2874,9512,0,1,6}-{2896,2946,0,0,0}-{2918,2961,0,0,0}-{2926,2986,0,0,0}-{2930,3044,0,0,0}-{2926,3056,0,0,0}-{2916,3065,0,0,0}-"
+ },
+ {
+ "npc_id": "115",
+ "loc_data": "{2571,3027,0,1,0}-{2572,3031,0,1,0}-{2575,3024,0,1,0}-{2578,3031,0,1,0}-{2510,3044,0,1,0}-{2520,3046,0,1,0}-{2526,3039,0,1,0}-{2502,3114,0,1,0}-{2505,3111,0,1,0}-{2507,3108,0,1,0}-{2508,3119,0,1,0}-{2509,3087,0,1,0}-{2510,3084,0,1,0}-{2513,3087,0,1,0}-{2514,3081,0,1,0}-"
+ },
+ {
+ "npc_id": "116",
+ "loc_data": "{2622,3277,0,1,5}-"
+ },
+ {
+ "npc_id": "117",
+ "loc_data": "{2369,3404,0,1,0}-{3118,9845,0,1,4}-{3111,9844,0,1,6}-{3123,9845,0,1,3}-{3114,9833,0,1,3}-{3110,9841,0,1,1}-{3119,9839,0,1,1}-{3097,9832,0,1,0}-{3101,9832,0,1,1}-{3107,9829,0,1,3}-{3115,9831,0,1,4}-{3109,9835,0,1,4}-{2904,9734,0,1,0}-{2548,3146,0,1,1}-{2542,3145,0,1,4}-{2503,3150,0,1,4}-{3300,3649,0,1,0}-{3044,10321,0,1,2}-{3044,10316,0,1,4}-{3045,10308,0,1,4}-{3048,10317,0,1,2}-"
+ },
+ {
+ "npc_id": "118",
+ "loc_data": "{2603,3056,0,1,0}-{2598,3064,0,1,3}-{2589,3068,0,1,5}-{2930,9703,0,1,0}-{2933,9702,0,1,0}-{3000,9842,0,1,2}-{2996,9844,0,1,4}-{3003,9828,0,1,1}-{2995,9811,0,1,3}-{3002,9811,0,1,3}-{2994,9809,0,1,5}-{3004,9813,0,1,6}-{2998,9828,0,1,4}-{3004,9799,0,1,4}-{2997,9809,0,1,0}-{2983,9807,0,1,6}-{2964,9811,0,1,1}-{3035,3443,0,1,6}-{3008,3449,0,1,4}-{3042,3465,0,1,1}-{3042,3468,0,1,3}-{3019,9813,0,1,4}-{3012,9812,0,1,3}-{3010,9811,0,1,3}-{3025,9801,0,1,4}-{3026,9824,0,1,1}-{3018,9819,0,1,6}-{3028,9815,0,1,3}-{3024,9811,0,1,4}-{3021,9826,0,1,5}-{3022,9832,0,1,1}-{3023,9833,0,1,6}-{3027,9833,0,1,3}-{3028,9828,0,1,6}-{3023,9814,0,1,6}-{3042,9831,0,1,4}-{3024,9824,0,1,6}-{3019,9847,0,1,0}-{3034,9847,0,1,7}-{3021,9851,0,1,5}-{3043,9824,0,1,3}-{3038,9821,0,1,1}-{3044,9818,0,1,4}-{3047,9814,0,1,4}-{3037,9814,0,1,6}-"
+ },
+ {
+ "npc_id": "119",
+ "loc_data": "{2921,9757,0,1,0}-{2915,9759,0,1,0}-{2927,9761,0,1,0}-{2925,9769,0,1,0}-{2931,9784,0,1,0}-{2938,9788,0,1,0}-{3233,3783,0,1,0}-{3241,3796,0,1,0}-{3253,3782,0,1,0}-{3019,3760,0,1,0}-{3019,3766,0,1,0}-{3021,3755,0,1,0}-{3025,3763,0,1,0}-{3029,10313,0,1,4}-{3028,10309,0,1,4}-{3033,10311,0,1,6}-{3035,10309,0,1,1}-{3035,10313,0,1,1}-"
+ },
+ {
+ "npc_id": "120",
+ "loc_data": "{2874,9880,0,1,0}-{2861,9874,0,1,0}-{2863,9874,0,1,0}-{2866,9874,0,1,0}-{2865,9877,0,1,0}-{2864,9877,0,1,0}-{2861,9877,0,1,0}-{2867,9877,0,1,0}-{2867,9879,0,1,0}-"
+ },
+ {
+ "npc_id": "122",
+ "loc_data": "{2566,9632,0,1,0}-{2573,9626,0,1,0}-{2996,9574,0,1,6}-{3007,9579,0,1,7}-{3001,9580,0,1,4}-{2507,3726,0,1,2}-{2523,3724,0,1,3}-{2535,9556,0,1,4}-{3018,9580,0,1,3}-{3021,9585,0,1,4}-{3024,9582,0,1,4}-"
+ },
+ {
+ "npc_id": "123",
+ "loc_data": "{2675,3731,0,1,6}-{2669,3726,0,1,6}-{2655,3727,0,1,6}-{2661,3732,0,1,6}-{2656,3720,0,1,6}-{3014,3787,0,1,0}-{3015,3813,0,1,0}-{3017,3781,0,1,0}-{3017,3793,0,1,0}-{3017,3803,0,1,0}-{3019,3789,0,1,0}-{3019,3798,0,1,0}-{3020,3809,0,1,0}-{3022,3805,0,1,0}-{3024,3781,0,1,0}-{3024,3796,0,1,0}-{3024,3812,0,1,0}-{3026,3791,0,1,0}-{3027,3797,0,1,0}-{3027,3804,0,1,0}-{3028,3809,0,1,0}-{3031,3795,0,1,0}-{3031,3802,0,1,0}-{3033,3785,0,1,0}-{3033,3811,0,1,0}-{3035,3806,0,1,0}-{3036,3795,0,1,0}-{3036,3800,0,1,0}-{3038,3809,0,1,0}-{3044,3802,0,1,0}-{3046,3797,0,1,0}-{2533,9554,0,1,4}-{2531,9556,0,1,5}-{2522,9562,0,1,4}-{2524,9558,0,1,4}-{2518,9562,0,1,6}-{2515,9566,0,1,3}-{2517,9573,0,1,1}-"
+ },
+ {
+ "npc_id": "124",
+ "loc_data": "{3124,9974,0,1,0}-{3119,9976,0,1,0}-{3116,9974,0,1,0}-{3118,9971,0,1,0}-{3121,9997,0,1,0}-{3124,9996,0,1,0}-{3125,9993,0,1,0}-{3121,9993,0,1,0}-{3115,9992,0,1,0}-{3118,9990,0,1,0}-{3122,9989,0,1,0}-{3142,5532,0,1,6}-{3141,5531,0,1,6}-{3139,5526,0,1,3}-{3143,5524,0,1,3}-{3148,5523,0,1,4}-{3148,5531,0,1,4}-"
+ },
+ {
+ "npc_id": "125",
+ "loc_data": "{2845,3517,0,1,4}-{2848,3515,0,1,4}-{2822,9901,0,1,0}-{2836,9905,0,1,0}-{2838,9917,0,1,0}-{2847,9919,0,1,0}-{2848,9912,0,1,0}-{2834,9940,0,1,0}-{2836,9953,0,1,0}-{2844,9944,0,1,0}-{2958,3867,0,1,3}-{2956,3857,0,1,6}-{2952,3862,0,1,3}-{2949,3858,0,1,4}-{2955,3875,0,1,7}-{2954,3874,0,1,5}-{2962,3876,0,1,1}-{2961,3877,0,1,3}-{2947,3878,0,1,6}-{2959,3884,0,1,4}-{2956,3885,0,1,3}-{2956,3886,0,1,3}-{2948,3886,0,1,1}-{2947,3934,0,1,0}-{2948,3917,0,1,0}-{2949,3926,0,1,0}-{2952,3913,0,1,0}-{2952,3936,0,1,0}-{2954,3921,0,1,0}-{2956,3930,0,1,0}-{2964,3944,0,1,0}-{2970,3947,0,1,0}-{2971,3938,0,1,0}-{2977,3953,0,1,0}-{2978,3942,0,1,0}-{2984,3933,0,1,0}-{3227,5443,0,1,5}-{3220,5448,0,1,5}-{3208,5443,0,1,6}-{3207,5448,0,1,4}-{3050,9570,0,1,3}-{3043,9579,0,1,2}-{3056,9585,0,1,0}-{3058,9575,0,1,1}-{3052,9582,0,1,0}-{3049,9577,0,1,4}-{3042,9586,0,1,6}-{3052,9588,0,1,1}-{3049,9590,0,1,5}-{3060,9578,0,1,3}-{3054,9566,0,1,7}-"
+ },
+ {
+ "npc_id": "126",
+ "loc_data": "{2381,4422,0,1,5}-{2381,4425,0,1,4}-{2382,4429,0,1,0}-{2385,4419,0,1,0}-{2388,4421,0,1,1}-{2388,4428,0,1,4}-"
+ },
+ {
+ "npc_id": "127",
+ "loc_data": "{3193,3959,0,1,0}-{3188,3960,0,1,0}-{3190,3962,0,1,0}-{3187,3959,0,1,0}-{3192,3961,0,1,0}-{3187,3960,0,1,0}-{3193,3959,0,1,0}-{3187,3961,0,1,0}-{3193,3958,0,1,0}-{2956,9791,0,1,0}-{2966,9788,0,1,0}-{2959,9783,0,1,0}-{2964,9775,0,1,0}-{2954,9776,0,1,0}-{2955,9795,0,1,0}-{2962,9792,0,1,0}-"
+ },
+ {
+ "npc_id": "128",
+ "loc_data": "{2844,3040,0,1,0}-{2840,3049,0,1,0}-{2837,3043,0,1,0}-{2834,3042,0,1,0}-{2827,3026,0,1,0}-{2824,3018,0,1,0}-{2830,3021,0,1,0}-{2832,3018,0,1,0}-{2824,3084,0,1,0}-{2821,3078,0,1,0}-{2817,3078,0,1,0}-{2837,3076,0,1,0}-{2877,3154,0,1,0}-{2878,3153,0,1,0}-{2870,3161,0,1,0}-{2822,3192,0,1,5}-{2610,3274,0,1,0}-{2610,3275,0,1,0}-{2615,3276,0,1,0}-{2616,3275,0,1,0}-{2616,3276,0,1,0}-{2925,2969,0,1,0}-{2939,2977,0,1,0}-{2936,2980,0,1,0}-{2933,2976,0,1,0}-{2930,2971,0,1,0}-{2928,2984,0,1,0}-{2942,2983,0,1,0}-{2936,2989,0,1,0}-{2887,3145,0,1,0}-{2741,3173,0,0,0}-{2746,3167,0,0,0}-{2746,3147,0,1,0}-{2733,3162,0,1,0}-{2730,3146,0,1,0}-{2782,3104,0,1,0}-{2782,3103,0,1,0}-{2777,3090,0,1,0}-{2773,3089,0,1,0}-{2803,3115,0,1,0}-{2808,3112,0,1,0}-{2759,3179,0,0,0}-{2757,3170,0,0,0}-{2781,3173,0,1,0}-{2770,3213,0,0,0}-"
+ },
+ {
+ "npc_id": "131",
+ "loc_data": "{2594,3271,0,1,4}-{2593,3269,0,1,1}-{2592,3272,0,1,6}-"
+ },
+ {
+ "npc_id": "132",
+ "loc_data": "{2875,2936,0,1,2}-{2837,3038,0,1,0}-{2837,3041,0,1,3}-{2831,3031,0,1,3}-{2818,3054,0,1,4}-{2832,3050,0,1,6}-{2832,3011,0,1,4}-{2876,3011,0,1,3}-{2863,3021,0,1,3}-{2867,3016,0,1,1}-{2871,3022,0,1,4}-{2877,3028,0,1,3}-{2868,3012,0,1,4}-{2867,3163,0,1,3}-{2856,3144,0,1,7}-{2600,3275,0,1,6}-{2600,3279,0,1,4}-{2603,3279,0,1,3}-{2603,3281,0,1,3}-{2604,3277,0,1,6}-{2897,3064,0,1,0}-{2896,3071,0,1,1}-{2910,3026,0,1,5}-{2902,3010,0,1,1}-{2928,3029,0,1,4}-{2920,3027,0,1,6}-{2932,3023,0,1,3}-{2933,3024,0,1,3}-{2929,3009,0,1,0}-{2927,3022,0,1,1}-{2926,3023,0,1,6}-{2927,3020,0,1,7}-{2891,3079,0,1,1}-{2908,3078,0,1,4}-{2920,3081,0,1,4}-{2890,3082,0,1,1}-{2916,3082,0,1,1}-{2883,3147,0,1,6}-{2945,2979,0,1,3}-{2953,2965,0,1,4}-{2952,2982,0,1,4}-{2955,3003,0,1,3}-{2944,2999,0,1,5}-{2749,3173,0,1,3}-{2784,3005,0,1,1}-{2791,2999,0,1,2}-{2791,2988,0,1,1}-{2795,2987,0,1,6}-{2797,2985,0,1,3}-{2782,3008,0,1,1}-{2812,3180,0,1,1}-{2791,3181,0,1,3}-{2758,3170,0,1,4}-{2754,3167,0,1,3}-{2754,3175,0,1,1}-"
+ },
+ {
+ "npc_id": "133",
+ "loc_data": "{3072,3625,0,1,7}-{3079,3627,0,1,3}-{3083,3632,0,1,6}-{3082,3643,0,1,0}-{3079,3637,0,1,5}-{3086,3636,0,1,3}-{3096,3641,0,1,2}-{3115,3644,1,0,5}-{3112,3614,0,1,5}-{3124,3600,0,1,1}-{3132,3597,0,1,0}-{2730,3659,0,1,7}-{2708,3672,0,1,7}-"
+ },
+ {
+ "npc_id": "134",
+ "loc_data": "{2598,9558,0,1,6}-{2599,9557,0,1,4}-{2598,9556,0,1,4}-{2600,9555,0,1,3}-{2601,9553,0,1,1}-{2572,9569,0,1,3}-{2599,9552,0,1,6}-{2601,9560,0,1,1}-{2599,9564,0,1,6}-{2600,9563,0,1,4}-{2597,9569,0,1,1}-{2594,9571,0,1,2}-{2589,9571,0,1,4}-{2589,9574,0,1,3}-{2584,9572,0,1,6}-{2581,9575,0,1,6}-{2583,9577,0,1,6}-{2582,9572,0,1,3}-{2572,9568,0,1,1}-{2570,9567,0,1,1}-{2572,9571,0,1,3}-{2575,9572,0,1,0}-{2577,9574,0,1,3}-{2580,9578,0,1,3}-{2597,9572,0,1,6}-{2871,9793,0,1,0}-{2869,9799,0,1,0}-{2876,9806,0,1,0}-{2864,9819,0,1,0}-{2857,9822,0,1,0}-{2858,9814,0,1,0}-{2859,9802,0,1,0}-{2849,9809,0,1,0}-{3088,9945,0,1,3}-{3089,9943,0,1,0}-{3090,9944,0,1,7}-{3278,5477,0,1,1}-{3278,5476,0,1,2}-{3277,5451,0,1,5}-{3283,5449,0,1,4}-{3280,5476,0,1,3}-{3274,5463,0,1,1}-{3272,5477,0,1,1}-{3271,5473,0,1,4}-{3270,5459,0,1,1}-{3271,5454,0,1,3}-{3278,5525,0,1,3}-{3272,5529,0,1,3}-{3270,5536,0,1,6}-{3277,5536,0,1,4}-{3277,5512,0,1,3}-{3279,5516,0,1,6}-{3280,5531,0,1,6}-{3043,10262,0,1,1}-{3044,10252,0,1,4}-{3051,10257,0,1,3}-{3055,10253,0,1,3}-{3067,10255,0,1,3}-{3067,10257,0,1,3}-{3068,10253,0,1,2}-{3069,10257,0,1,4}-{3069,10259,0,1,0}-"
+ },
+ {
+ "npc_id": "138",
+ "loc_data": "{2375,3434,0,1,4}-{2379,3438,0,1,6}-"
+ },
+ {
+ "npc_id": "139",
+ "loc_data": "{2378,3432,0,1,2}-{2375,3438,0,1,7}-{2376,3431,0,1,1}-{2380,3438,0,1,4}-"
+ },
+ {
+ "npc_id": "141",
+ "loc_data": "{3324,5510,0,1,3}-{3286,5512,0,1,1}-{3310,5524,0,1,2}-{3289,5527,0,1,7}-{3296,5519,0,1,4}-"
+ },
+ {
+ "npc_id": "142",
+ "loc_data": "{2514,3194,0,1,3}-{2547,3178,0,1,1}-"
+ },
+ {
+ "npc_id": "143",
+ "loc_data": "{2835,2934,0,1,4}-{2889,2936,0,1,2}-{2921,2937,0,1,1}-{2787,2929,0,1,6}-"
+ },
+ {
+ "npc_id": "144",
+ "loc_data": "{2842,3298,0,1,6}-{2844,3291,0,1,6}-{2851,3298,0,1,4}-{2855,3303,0,1,4}-{2859,3283,0,1,1}-{2861,3295,0,1,5}-{3075,3848,0,1,0}-{3090,3841,0,1,0}-{3070,3829,0,1,0}-{3070,3836,0,1,0}-{3040,9775,0,1,4}-{3048,9770,0,1,1}-"
+ },
+ {
+ "npc_id": "145",
+ "loc_data": "{2864,9950,0,1,0}-{2865,9951,0,1,0}-{2866,9948,0,1,0}-{2867,9948,0,1,0}-{2867,9951,0,1,0}-{2868,9950,0,1,0}-"
+ },
+ {
+ "npc_id": "146",
+ "loc_data": "{2827,3139,0,1,0}-{2896,2992,0,1,7}-{2976,3053,0,1,0}-{2985,3038,0,1,0}-{2994,3048,0,1,5}-{2992,3030,0,1,0}-"
+ },
+ {
+ "npc_id": "151",
+ "loc_data": "{2756,3156,0,0,4}-{2760,3152,0,0,6}-"
+ },
+ {
+ "npc_id": "152",
+ "loc_data": "{3103,3347,0,0,0}-{3107,3337,0,0,0}-{3107,3342,0,0,0}-{3107,3344,0,0,0}-{3108,3346,0,0,0}-{3111,3339,0,0,0}-{3111,3348,0,0,0}-{3115,3344,0,0,0}-{3120,3344,0,0,0}-{3122,3335,0,0,0}-"
+ },
+ {
+ "npc_id": "153",
+ "loc_data": "{2540,9820,0,1,0}-{2543,9813,0,1,0}-{2546,9817,0,1,0}-{2464,4421,0,1,0}-{2466,4423,0,1,0}-{2486,4464,0,1,0}-{2556,3444,0,1,0}-{3082,3077,0,1,0}-{3092,3082,0,1,0}-{3109,3090,0,1,0}-{3112,3093,0,1,0}-{2249,3260,0,1,0}-{2250,3257,0,1,0}-{2250,3259,0,1,0}-{2252,3261,0,1,0}-{2253,3256,0,1,0}-{2262,3226,0,1,0}-{2264,3225,0,1,0}-{2266,3229,0,1,0}-{2268,3227,0,1,0}-{2269,3222,0,1,0}-{2269,3224,0,1,0}-{2270,3223,0,1,0}-{2270,3226,0,1,0}-{3200,5954,0,1,0}-{3202,5958,0,1,0}-{3204,5955,0,1,0}-{3204,5959,0,1,0}-{3231,5967,0,1,0}-{3236,5974,0,1,0}-{3237,5968,0,1,0}-{3240,5992,0,1,0}-{3240,5994,0,1,0}-{3242,5990,0,1,0}-{3242,5993,0,1,0}-{3244,5994,0,1,0}-{3246,5989,0,1,0}-{2196,3191,0,1,0}-{2197,3189,0,1,0}-{2198,3181,0,1,0}-{2198,3187,0,1,0}-{2199,3183,0,1,0}-{2199,3187,0,1,0}-{2200,3185,0,1,0}-{2201,3185,0,1,0}-{2204,3180,0,1,0}-{2324,4599,0,1,0}-{2325,4597,0,1,0}-{2326,4589,0,1,0}-{2326,4595,0,1,0}-{2327,4591,0,1,0}-{2327,4595,0,1,0}-{2328,4593,0,1,0}-{2329,4593,0,1,0}-{2332,4588,0,1,0}-{2176,3202,0,1,0}-{2178,3206,0,1,0}-{2180,3203,0,1,0}-{2180,3207,0,1,0}-{2207,3215,0,1,0}-{2212,3222,0,1,0}-{2213,3216,0,1,0}-{2216,3240,0,1,0}-{2216,3242,0,1,0}-{2218,3238,0,1,0}-{2218,3241,0,1,0}-{2220,3242,0,1,0}-{2222,3237,0,1,0}-{2437,3425,0,1,0}-{2438,3422,0,1,0}-{2450,3419,0,1,0}-{2415,4466,0,1,0}-{2419,4427,0,1,0}-{2421,4468,0,1,0}-{2426,4431,0,1,0}-{3175,3226,0,1,0}-{3178,3228,0,1,0}-{3179,3226,0,1,0}-{3182,3251,0,1,0}-{3183,3254,0,1,0}-{2697,6204,0,1,0}-{2698,6201,0,1,0}-{2698,6203,0,1,0}-{2700,6205,0,1,0}-{2701,6200,0,1,0}-{2710,6170,0,1,0}-{2712,6169,0,1,0}-{2714,6173,0,1,0}-{2716,6171,0,1,0}-{2717,6166,0,1,0}-{2717,6168,0,1,0}-{2718,6167,0,1,0}-{2718,6170,0,1,0}-{2478,3373,0,1,0}-{2479,3381,0,1,0}-{2481,3384,0,1,0}-{2490,3371,0,1,0}-{2689,6083,0,1,0}-{2689,6088,0,1,0}-{2690,6094,0,1,0}-{2691,6084,0,1,0}-{2692,6081,0,1,0}-{2692,6090,0,1,0}-{2693,6083,0,1,0}-{2693,6085,0,1,0}-{2693,6090,0,1,0}-{2694,6083,0,1,0}-{2694,6086,0,1,0}-{2695,6082,0,1,0}-{2695,6085,0,1,0}-{2695,6088,0,1,0}-{2695,6091,0,1,0}-{2695,6121,0,1,0}-{2698,6121,0,1,0}-{2699,6082,0,1,0}-{2699,6085,0,1,0}-{2700,6084,0,1,0}-{2701,6085,0,1,0}-{2702,6081,0,1,0}-{2702,6083,0,1,0}-{2703,6119,0,1,0}-{2704,6117,0,1,0}-{2705,6121,0,1,0}-{2730,6091,0,1,0}-{2732,6095,0,1,0}-{2734,6090,0,1,0}-{2735,6094,0,1,0}-{2735,6097,0,1,0}-{2738,6098,0,1,0}-{2416,3404,0,1,0}-{2424,3410,0,1,0}-{2430,3405,0,1,0}-{1906,5223,0,1,0}-{1907,5221,0,1,0}-{3273,6012,0,1,0}-{3274,6009,0,1,0}-{3274,6011,0,1,0}-{3276,6013,0,1,0}-{3277,6008,0,1,0}-{3286,5978,0,1,0}-{3288,5977,0,1,0}-{3290,5981,0,1,0}-{3292,5979,0,1,0}-{3293,5974,0,1,0}-{3293,5976,0,1,0}-{3294,5975,0,1,0}-{3294,5978,0,1,0}-{2828,5091,0,1,0}-{2832,5108,0,1,0}-{2835,5079,0,1,0}-{2846,5067,0,1,0}-{2850,5111,0,1,0}-{2853,5086,0,1,0}-{2864,5071,0,1,0}-{2549,3139,0,1,0}-{2241,3139,0,1,0}-{2241,3144,0,1,0}-{2242,3150,0,1,0}-{2243,3140,0,1,0}-{2244,3137,0,1,0}-{2244,3146,0,1,0}-{2245,3139,0,1,0}-{2245,3141,0,1,0}-{2245,3146,0,1,0}-{2246,3139,0,1,0}-{2246,3142,0,1,0}-{2247,3138,0,1,0}-{2247,3141,0,1,0}-{2247,3144,0,1,0}-{2247,3147,0,1,0}-{2247,3177,0,1,0}-{2250,3177,0,1,0}-{2251,3138,0,1,0}-{2251,3141,0,1,0}-{2252,3140,0,1,0}-{2253,3141,0,1,0}-{2254,3137,0,1,0}-{2254,3139,0,1,0}-{2255,3175,0,1,0}-{2256,3173,0,1,0}-{2257,3177,0,1,0}-{2282,3147,0,1,0}-{2284,3151,0,1,0}-{2286,3146,0,1,0}-{2287,3150,0,1,0}-{2287,3153,0,1,0}-{2290,3154,0,1,0}-"
+ },
+ {
+ "npc_id": "154",
+ "loc_data": "{2475,4459,0,1,0}-{2480,4458,0,1,0}-{2481,4454,0,1,0}-{2488,4465,0,1,0}-{3125,3084,0,1,0}-{2268,3228,0,1,0}-{3202,5955,0,1,0}-{3206,5953,0,1,0}-{3231,5976,0,1,0}-{3233,5974,0,1,0}-{3235,5970,0,1,0}-{3241,5996,0,1,0}-{3242,5988,0,1,0}-{3244,5992,0,1,0}-{2180,3173,0,1,0}-{2193,3187,0,1,0}-{2196,3184,0,1,0}-{2200,3181,0,1,0}-{2200,3188,0,1,0}-{2203,3189,0,1,0}-{2308,4581,0,1,0}-{2321,4595,0,1,0}-{2324,4592,0,1,0}-{2328,4589,0,1,0}-{2328,4596,0,1,0}-{2331,4597,0,1,0}-{2178,3203,0,1,0}-{2182,3201,0,1,0}-{2207,3224,0,1,0}-{2209,3222,0,1,0}-{2211,3218,0,1,0}-{2217,3244,0,1,0}-{2218,3236,0,1,0}-{2220,3240,0,1,0}-{2446,3396,0,1,0}-{2470,3397,0,1,0}-{2394,4453,0,1,0}-{2394,4457,0,1,0}-{2406,4447,0,1,0}-{2422,3489,0,1,0}-{2716,6172,0,1,0}-{2688,6092,0,1,0}-{2690,6087,0,1,0}-{2690,6095,0,1,0}-{2692,6082,0,1,0}-{2692,6088,0,1,0}-{2692,6123,0,1,0}-{2693,6081,0,1,0}-{2694,6125,0,1,0}-{2695,6087,0,1,0}-{2697,6086,0,1,0}-{2697,6087,0,1,0}-{2698,6081,0,1,0}-{2698,6124,0,1,0}-{2700,6083,0,1,0}-{2702,6084,0,1,0}-{2726,6085,0,1,0}-{2727,6081,0,1,0}-{2729,6083,0,1,0}-{2732,6084,0,1,0}-{2378,3418,0,1,0}-{2380,3422,0,1,0}-{2393,3442,0,1,0}-{2397,3440,0,1,0}-{2423,3399,0,1,0}-{2425,3406,0,1,0}-{2427,3402,0,1,0}-{1908,5222,0,1,0}-{3292,5980,0,1,0}-{2831,5070,0,1,0}-{2843,5106,0,1,0}-{2844,5080,0,1,0}-{2860,5079,0,1,0}-{2866,5104,0,1,0}-{2868,5096,0,1,0}-{2240,3148,0,1,0}-{2242,3143,0,1,0}-{2242,3151,0,1,0}-{2244,3138,0,1,0}-{2244,3144,0,1,0}-{2244,3179,0,1,0}-{2245,3137,0,1,0}-{2246,3181,0,1,0}-{2247,3143,0,1,0}-{2249,3142,0,1,0}-{2249,3143,0,1,0}-{2250,3137,0,1,0}-{2250,3180,0,1,0}-{2252,3139,0,1,0}-{2254,3140,0,1,0}-{2278,3141,0,1,0}-{2279,3137,0,1,0}-{2281,3139,0,1,0}-{2284,3140,0,1,0}-"
+ },
+ {
+ "npc_id": "155",
+ "loc_data": "{3093,3086,0,1,0}-{3097,3085,0,1,0}-{3129,3091,0,1,0}-{3135,3084,0,1,0}-{2190,3180,0,1,0}-{2318,4588,0,1,0}-{2374,3469,0,1,0}-{2376,3466,0,1,0}-{3254,3230,0,1,0}-{1986,5564,0,1,0}-{2434,3516,0,1,0}-{2479,3501,0,1,0}-"
+ },
+ {
+ "npc_id": "156",
+ "loc_data": "{2371,3460,0,1,0}-{2372,3456,0,1,0}-{2422,3467,0,1,0}-{2725,6127,0,1,0}-{2444,3491,0,1,0}-{2277,3183,0,1,0}-"
+ },
+ {
+ "npc_id": "157",
+ "loc_data": "{2180,2798,0,1,0}-{2209,2812,0,1,0}-{2217,2780,0,1,0}-{1921,5931,0,1,0}-{1947,5908,0,1,0}-{1955,5949,0,1,0}-{1973,5888,0,1,0}-{1975,5918,0,1,0}-{1988,5870,0,1,0}-{2017,5884,0,1,0}-{2025,5852,0,1,0}-{2182,2979,0,1,0}-{2211,2963,0,1,0}-{1931,6038,0,1,0}-{1983,6037,0,1,0}-{2153,2810,0,1,0}-{2172,2806,0,1,0}-{1961,5882,0,1,0}-{1980,5878,0,1,0}-{2242,2788,0,1,0}-{2248,2858,0,1,0}-{2256,2828,0,1,0}-{2284,2874,0,1,0}-{2255,3216,0,1,0}-{2262,3210,0,1,0}-{2271,3204,0,1,0}-{2294,3219,0,1,0}-{2296,3206,0,1,0}-{2298,3201,0,1,0}-{2056,5930,0,1,0}-{2064,5900,0,1,0}-{2092,5946,0,1,0}-{2050,5860,0,1,0}-{3201,5986,0,1,0}-{3254,5972,0,1,0}-{3255,5986,0,1,0}-{3256,6008,0,1,0}-{3257,5973,0,1,0}-{3257,5975,0,1,0}-{3260,5974,0,1,0}-{3261,5977,0,1,0}-{3262,5957,0,1,0}-{2194,3158,0,1,0}-{2216,3188,0,1,0}-{2217,3190,0,1,0}-{2220,3158,0,1,0}-{2222,3141,0,1,0}-{2229,3138,0,1,0}-{2231,3181,0,1,0}-{2236,3155,0,1,0}-{2278,2956,0,1,0}-{2322,4566,0,1,0}-{2344,4596,0,1,0}-{2345,4598,0,1,0}-{2348,4566,0,1,0}-{2350,4549,0,1,0}-{2357,4546,0,1,0}-{2359,4589,0,1,0}-{2364,4563,0,1,0}-{2177,3234,0,1,0}-{2230,3220,0,1,0}-{2231,3234,0,1,0}-{2232,3256,0,1,0}-{2233,3221,0,1,0}-{2233,3223,0,1,0}-{2236,3222,0,1,0}-{2237,3225,0,1,0}-{2238,3205,0,1,0}-{2479,3396,0,1,0}-{2102,2942,0,1,0}-{2108,2919,0,1,0}-{2104,2873,0,1,0}-{2122,6032,0,1,0}-{1912,5945,0,1,0}-{3143,3210,0,1,0}-{3155,3253,0,1,0}-{3163,3261,0,1,0}-{3168,3258,0,1,0}-{2086,6028,0,1,0}-{2703,6160,0,1,0}-{2710,6154,0,1,0}-{2719,6148,0,1,0}-{2742,6163,0,1,0}-{2744,6150,0,1,0}-{2746,6145,0,1,0}-{2314,2960,0,1,0}-{2723,6105,0,1,0}-{2739,6123,0,1,0}-{2744,6108,0,1,0}-{2326,2894,0,1,0}-{2333,2920,0,1,0}-{3279,5968,0,1,0}-{3286,5962,0,1,0}-{3295,5956,0,1,0}-{3318,5971,0,1,0}-{3320,5958,0,1,0}-{3322,5953,0,1,0}-{2134,5966,0,1,0}-{2141,5992,0,1,0}-{2123,2966,0,1,0}-{2175,2965,0,1,0}-{1910,6014,0,1,0}-{1916,5991,0,1,0}-{2540,3167,0,1,0}-{2110,2955,0,1,0}-{1990,6051,0,1,0}-{2019,6035,0,1,0}-{2447,3467,0,1,0}-{2448,3469,0,1,0}-{1918,6027,0,1,0}-{2275,3161,0,1,0}-{2291,3179,0,1,0}-{2296,3164,0,1,0}-{2113,2859,0,1,0}-{2139,2836,0,1,0}-{2147,2877,0,1,0}-{2165,2816,0,1,0}-{2167,2846,0,1,0}-"
+ },
+ {
+ "npc_id": "158",
+ "loc_data": "{2693,9776,0,1,0}-{2697,9773,0,1,0}-{2697,9779,0,1,0}-{2700,9770,0,1,0}-{2700,9774,0,1,0}-{2700,9777,0,1,0}-{2701,9781,0,1,0}-{2703,9770,0,1,0}-{2703,9774,0,1,0}-{2703,9779,0,1,0}-{2705,9757,0,1,0}-{2705,9760,0,1,0}-{2705,9766,0,1,0}-{2706,9753,0,1,0}-{2706,9763,0,1,0}-{2706,9772,0,1,0}-{2707,9756,0,1,0}-{2707,9761,0,1,0}-{2708,9758,0,1,0}-"
+ },
+ {
+ "npc_id": "159",
+ "loc_data": "{2392,3475,0,1,0}-{2394,3506,0,1,0}-{2396,3471,0,1,0}-{2405,3499,0,1,0}-{2416,3487,0,1,0}-{2413,3445,1,1,0}-{2415,3435,1,1,0}-{2416,3416,1,1,0}-{2424,3434,1,1,0}-{2483,3500,1,1,0}-"
+ },
+ {
+ "npc_id": "160",
+ "loc_data": "{2424,3430,1,1,0}-{2474,3500,1,1,0}-"
+ },
+ {
+ "npc_id": "161",
+ "loc_data": "{2409,3436,1,1,0}-{2484,3501,1,1,0}-"
+ },
+ {
+ "npc_id": "162",
+ "loc_data": "{2480,3426,0,1,6}-{2489,3429,0,1,1}-{2480,3431,0,1,0}-{2475,3418,0,1,4}-{2470,3423,0,1,1}-"
+ },
+ {
+ "npc_id": "163",
+ "loc_data": "{2451,3414,0,1,0}-{2459,3395,0,1,0}-{2459,3438,0,1,0}-{2462,3395,0,1,0}-{2445,3429,1,1,0}-{2409,3470,1,1,0}-{2416,3466,1,1,0}-{2420,3466,1,1,0}-{2461,9895,0,1,0}-{2465,9894,0,1,0}-{2465,9899,0,1,0}-{2459,3385,0,1,0}-{2463,3385,0,1,0}-{2392,3454,0,1,0}-{2394,3436,0,1,0}-{2408,3452,0,1,0}-{2421,3413,0,1,0}-{2442,3489,0,1,0}-{2450,3485,0,1,0}-{2451,3507,0,1,0}-{2453,3490,0,1,0}-{2459,3503,0,1,0}-{2461,3509,0,1,0}-{2464,3465,0,1,0}-{2464,3468,0,1,0}-{2468,3465,0,1,0}-{2468,3468,0,1,0}-{2468,3506,0,1,0}-{2472,3484,0,1,0}-{2475,3490,0,1,0}-{2475,3502,0,1,0}-{2477,3512,0,1,0}-{2481,3485,0,1,0}-{2482,3501,0,1,0}-{2467,3495,1,1,0}-{2473,3495,1,1,0}-{2448,3497,2,1,0}-{2463,3480,2,1,0}-{2465,3497,2,1,0}-{2465,3510,2,1,0}-{2466,3480,2,1,0}-"
+ },
+ {
+ "npc_id": "164",
+ "loc_data": "{2459,3392,0,1,0}-{2461,3422,0,1,0}-{2462,3392,0,1,0}-{2460,3382,0,1,0}-{2462,3382,0,1,0}-{2410,3416,0,1,0}-{2420,3435,0,1,0}-{2420,3447,0,1,0}-{2427,3410,0,1,0}-{2012,5535,2,1,0}-{2023,5544,2,1,0}-{2441,3497,0,1,0}-{2447,3510,0,1,0}-{2461,3487,0,1,0}-{2464,3472,0,1,0}-{2464,3489,0,1,0}-{2467,3489,0,1,0}-{2468,3472,0,1,0}-{2473,3503,0,1,0}-{2478,3497,0,1,0}-{2464,3496,1,1,0}-{2448,3495,2,1,0}-{2460,3487,2,1,0}-{2467,3494,2,1,0}-{2467,3510,2,1,0}-{2471,3496,2,1,0}-{2483,3495,2,1,0}-{2483,3497,2,1,0}-"
+ },
+ {
+ "npc_id": "166",
+ "loc_data": "{2448,3427,1,0,6}-{2448,3424,1,0,6}-{2443,3424,1,0,3}-{2443,3425,1,0,3}-{2450,3480,1,0,1}-{2449,3480,1,0,1}-{2448,3480,1,0,1}-{2440,3488,1,0,4}-{2440,3487,1,0,4}-"
+ },
+ {
+ "npc_id": "168",
+ "loc_data": "{2434,3436,0,1,0}-{2437,3451,0,1,0}-{2438,3427,0,1,0}-{2441,3411,0,1,0}-{2466,3449,0,1,0}-{2470,3399,0,1,0}-{2472,3400,0,1,0}-{2473,3412,0,1,0}-{2476,3454,0,1,0}-{2482,3397,0,1,0}-{2489,3401,0,1,0}-{2479,3407,1,1,0}-{2379,3482,0,1,0}-{2381,3496,0,1,0}-{2384,3497,0,1,0}-{2391,3476,0,1,0}-{2410,3496,0,1,0}-{2421,3481,0,1,0}-{2397,3514,1,1,0}-{2398,3451,1,1,0}-{2414,3447,1,1,0}-{2438,3465,0,1,0}-{2442,3505,0,1,0}-{2448,3486,0,1,0}-{2449,3487,0,1,0}-{2450,3489,0,1,0}-{2450,3505,0,1,0}-{2454,3465,0,1,0}-{2449,3486,1,1,0}-{2457,3488,1,1,0}-{2476,3488,1,1,0}-{2450,3496,2,1,0}-{2467,3488,2,1,0}-{2470,3503,2,1,0}-{2481,3498,2,1,0}-"
+ },
+ {
+ "npc_id": "169",
+ "loc_data": "{2439,3433,0,1,0}-{2441,3449,0,1,0}-{2442,3428,0,1,0}-{2446,3403,0,1,0}-{2450,3416,0,1,0}-{2468,3441,0,1,0}-{2480,3408,0,1,0}-{2480,3406,1,1,0}-{2486,3400,1,1,0}-{2378,3482,0,1,0}-{2383,3496,0,1,0}-{2402,3507,0,1,0}-{2406,3476,0,1,0}-{2422,3485,0,1,0}-{2382,3506,1,1,0}-{2418,3472,1,1,0}-{2392,3450,1,1,0}-{2415,3415,1,1,0}-{2416,3434,1,1,0}-{2423,3425,1,1,0}-{2424,3442,1,1,0}-{2448,3489,0,1,0}-{2450,3488,0,1,0}-{2463,3508,0,1,0}-{2473,3489,0,1,0}-{2474,3457,0,1,0}-{2479,3503,0,1,0}-{2486,3467,0,1,0}-{2437,3463,1,1,0}-{2448,3489,1,1,0}-{2482,3508,1,1,0}-"
+ },
+ {
+ "npc_id": "170",
+ "loc_data": "{2890,3175,0,1,4}-"
+ },
+ {
+ "npc_id": "171",
+ "loc_data": "{2409,9817,0,1,0}-"
+ },
+ {
+ "npc_id": "175",
+ "loc_data": "{3084,3495,0,1,4}-{3179,3215,0,1,0}-{3182,3365,0,1,6}-{2994,9549,0,1,6}-{2993,9551,0,1,6}-{2995,9555,0,1,6}-{2999,9548,0,1,0}-"
+ },
+ {
+ "npc_id": "178",
+ "loc_data": "{3096,3220,0,1,1}-{2909,9690,0,1,0}-{2911,9689,0,1,0}-{2905,9687,0,1,0}-{2912,9682,0,1,0}-{2917,9681,0,1,0}-{2918,9679,0,1,0}-{2916,9677,0,1,0}-{2911,9675,0,1,0}-{2906,9675,0,1,0}-{2905,9673,0,1,0}-{2897,9675,0,1,0}-{2899,9678,0,1,0}-{2898,9682,0,1,0}-{2897,9687,0,1,0}-{2903,9690,0,1,0}-{2904,9692,0,1,0}-{2902,9693,0,1,0}-{2915,9691,0,1,0}-{2916,9694,0,1,0}-{2913,9694,0,1,0}-{2908,9694,0,1,0}-{2908,9702,0,1,0}-{2906,9706,0,1,0}-{2915,9703,0,1,0}-{2915,9711,0,1,0}-{2899,9700,0,1,0}-{2898,9703,0,1,0}-{2898,9708,0,1,0}-{2900,9710,0,1,0}-{2907,9711,0,1,0}-{2923,9710,0,1,0}-{2920,9708,0,1,0}-{2919,9703,0,1,0}-{2891,9679,0,1,0}-{2891,9682,0,1,0}-{2890,9692,0,1,0}-{2891,9695,0,1,0}-{2892,9701,0,1,0}-{2893,9701,0,1,0}-{2892,9709,0,1,0}-{2895,9710,0,1,0}-{2942,9801,0,1,0}-{2938,9812,0,1,0}-{3273,3507,0,1,6}-"
+ },
+ {
+ "npc_id": "179",
+ "loc_data": "{3025,3511,1,1,3}-{3038,3505,0,1,4}-{3026,3494,0,1,6}-{3026,3505,0,1,4}-{3026,3512,0,1,6}-{3025,3512,0,1,4}-{3027,3512,0,1,6}-{3030,3511,0,1,6}-{3028,3511,0,1,1}-{3023,3514,1,1,3}-{3014,3516,2,1,1}-{3038,3854,0,1,4}-{3029,3852,0,1,1}-{3032,3851,0,1,3}-{3023,3849,0,1,6}-{3042,3856,0,1,0}-{3050,3849,0,1,0}-{3054,3852,0,1,0}-{3057,3842,0,1,0}-{3058,3854,0,1,0}-"
+ },
+ {
+ "npc_id": "180",
+ "loc_data": "{3110,3295,0,1,4}-{2957,3238,0,1,4}-{2953,3240,0,1,3}-{2988,3423,0,1,7}-{2744,3519,0,0,0}-{3011,3277,0,1,1}-{3009,3280,0,1,1}-"
+ },
+ {
+ "npc_id": "181",
+ "loc_data": "{2563,3355,0,1,4}-{2561,3355,0,1,3}-{2561,3357,0,1,1}-{2563,3358,0,1,4}-{3105,9942,0,1,3}-{3106,9934,0,1,3}-{3109,9930,0,1,1}-{2937,9847,0,1,0}-{2934,9846,0,1,0}-{2929,9848,0,1,0}-{2931,9846,0,1,0}-{2937,9849,0,1,0}-{2936,9850,0,1,0}-"
+ },
+ {
+ "npc_id": "182",
+ "loc_data": "{3690,2966,0,1,4}-"
+ },
+ {
+ "npc_id": "183",
+ "loc_data": "{3670,2977,0,1,1}-{3654,2960,0,1,0}-{3698,2969,0,1,2}-{3676,2991,0,1,3}-{3666,2994,0,1,7}-{3666,2981,1,1,4}-{2805,3160,0,0,0}-{2803,3190,0,1,4}-{2795,3167,0,0,0}-{2793,3184,0,1,3}-"
+ },
+ {
+ "npc_id": "184",
+ "loc_data": "{3659,2952,0,1,6}-{3669,2961,0,1,4}-{3683,2977,0,1,6}-{3668,2981,0,1,3}-{3655,2973,0,1,1}-{3675,2967,0,1,3}-{2994,9584,0,1,6}-{2992,9573,0,1,1}-{2990,9583,0,1,4}-{2998,9572,0,1,2}-{2998,9573,0,1,4}-{2989,9578,0,1,0}-{2993,9566,0,1,4}-{2994,9570,0,1,3}-{3039,3958,0,1,0}-"
+ },
+ {
+ "npc_id": "186",
+ "loc_data": "{3160,3568,0,1,0}-{3167,3576,0,1,0}-{3171,3579,0,1,0}-{3172,3561,0,1,0}-{3175,3572,0,1,0}-{3179,3564,0,1,0}-{3184,3580,0,1,0}-{3189,3563,0,1,0}-{3190,3570,0,1,0}-"
+ },
+ {
+ "npc_id": "187",
+ "loc_data": "{3076,3916,0,1,0}-{3079,3909,0,1,0}-{3291,3924,0,1,4}-{3294,3930,0,1,4}-{3286,3933,0,1,6}-{3285,3928,0,1,6}-{3287,3935,1,1,6}-{3286,3927,1,1,6}-{3283,3936,2,1,6}-{3292,3932,1,1,4}-{3291,3940,0,1,6}-{3280,3943,0,1,6}-{3278,3926,0,1,4}-"
+ },
+ {
+ "npc_id": "188",
+ "loc_data": "{2940,3517,0,1,3}-{2938,3517,0,1,3}-{3158,5497,0,1,6}-{3157,5494,0,1,1}-{3155,5498,0,1,6}-{3140,5494,0,1,6}-{3143,5493,0,1,5}-{3142,5497,0,1,4}-{3156,5494,0,1,5}-{3148,5496,0,1,4}-"
+ },
+ {
+ "npc_id": "189",
+ "loc_data": "{2936,3514,0,1,3}-{2931,3514,0,1,3}-{2933,3517,0,1,3}-{2936,3517,0,1,3}-{3151,5489,0,1,7}-{3151,5489,0,1,7}-{3145,5495,0,1,3}-{3142,5493,0,1,3}-{3149,5489,0,1,6}-{3155,5491,0,1,2}-{3142,5497,0,1,3}-"
+ },
+ {
+ "npc_id": "190",
+ "loc_data": "{2833,9814,0,1,0}-{2829,9812,0,1,0}-{2825,9811,0,1,0}-{2829,9808,0,1,0}-{2833,9808,0,1,0}-{2827,9805,0,1,0}-"
+ },
+ {
+ "npc_id": "191",
+ "loc_data": "{2868,3053,0,1,0}-{2840,3018,0,1,0}-{2919,2983,0,1,0}-{2937,2993,0,1,0}-{2940,2994,0,1,0}-{2940,2997,0,1,0}-{2942,2997,0,1,0}-{2730,3161,0,1,0}-{2729,3159,0,1,0}-{2727,3163,0,1,0}-{2725,3157,0,1,0}-{2726,3161,0,1,0}-{2725,3161,0,1,0}-{2723,3155,0,1,0}-{2723,3156,0,1,0}-{2725,3162,0,1,0}-{2775,3066,0,1,0}-{2802,3071,0,1,0}-{2770,3018,0,1,0}-{2770,3014,0,1,0}-"
+ },
+ {
+ "npc_id": "192",
+ "loc_data": "{3022,3624,0,1,0}-{3022,3639,0,1,0}-{3029,3638,0,1,0}-{3030,3626,0,1,0}-{3035,3632,0,1,0}-{3036,3624,0,1,0}-{3036,3639,0,1,0}-{3022,3624,1,1,0}-{3022,3639,1,1,0}-{3023,3632,1,1,0}-{3028,3626,1,1,0}-{3029,3637,1,1,0}-{3035,3631,1,1,0}-{3036,3624,1,1,0}-{3036,3639,1,1,0}-"
+ },
+ {
+ "npc_id": "193",
+ "loc_data": "{2581,9505,0,1,4}-{2594,9497,0,1,1}-{2593,9499,0,1,7}-{2587,9498,0,1,3}-{2573,9500,0,1,5}-{2579,9503,0,1,5}-{2580,9500,0,1,4}-{2578,9497,0,1,7}-"
+ },
+ {
+ "npc_id": "195",
+ "loc_data": "{3029,3701,0,1,6}-{3031,3685,0,1,6}-{3032,3695,0,1,6}-{3033,3705,0,1,6}-{3037,3683,0,1,6}-{3040,3703,0,1,6}-"
+ },
+ {
+ "npc_id": "196",
+ "loc_data": "{3038,3670,0,1,1}-{3036,3672,0,1,2}-{3037,3661,0,1,6}-{3039,3660,0,1,6}-"
+ },
+ {
+ "npc_id": "198",
+ "loc_data": "{3190,3358,0,1,1}-"
+ },
+ {
+ "npc_id": "199",
+ "loc_data": "{3079,3443,0,1,3}-"
+ },
+ {
+ "npc_id": "201",
+ "loc_data": "{2931,9692,0,0,0}-"
+ },
+ {
+ "npc_id": "202",
+ "loc_data": "{3039,3700,0,1,0}-"
+ },
+ {
+ "npc_id": "203",
+ "loc_data": "{3038,3695,0,1,0}-"
+ },
+ {
+ "npc_id": "204",
+ "loc_data": "{3035,3696,0,1,0}-"
+ },
+ {
+ "npc_id": "205",
+ "loc_data": "{2613,9523,0,1,0}-"
+ },
+ {
+ "npc_id": "206",
+ "loc_data": "{3026,3455,0,1,6}-{3015,3458,0,1,5}-"
+ },
+ {
+ "npc_id": "208",
+ "loc_data": "{2568,3459,0,1,4}-"
+ },
+ {
+ "npc_id": "209",
+ "loc_data": "{3013,3452,0,1,6}-"
+ },
+ {
+ "npc_id": "216",
+ "loc_data": "{2851,3348,0,0,7}-"
+ },
+ {
+ "npc_id": "217",
+ "loc_data": "{2852,3343,0,1,2}-"
+ },
+ {
+ "npc_id": "218",
+ "loc_data": "{2613,3475,0,1,2}-"
+ },
+ {
+ "npc_id": "222",
+ "loc_data": "{2851,3351,0,0,7}-{2849,3348,0,0,7}-"
+ },
+ {
+ "npc_id": "223",
+ "loc_data": "{2569,3250,0,1,0}-"
+ },
+ {
+ "npc_id": "224",
+ "loc_data": "{2579,9655,0,1,0}-{2581,9656,0,1,0}-{2581,9659,0,1,0}-{2583,9659,0,1,0}-{2584,9656,0,1,0}-{2586,9659,0,1,0}-{2587,9656,0,1,0}-{2589,9654,0,1,0}-{2589,9658,0,1,0}-{2591,9656,0,1,0}-{2591,9659,0,1,0}-"
+ },
+ {
+ "npc_id": "225",
+ "loc_data": "{2641,3437,0,0,0}-"
+ },
+ {
+ "npc_id": "227",
+ "loc_data": "{2643,3440,0,0,0}-"
+ },
+ {
+ "npc_id": "228",
+ "loc_data": "{2634,3427,0,0,0}-"
+ },
+ {
+ "npc_id": "229",
+ "loc_data": "{2628,3413,0,1,4}-"
+ },
+ {
+ "npc_id": "230",
+ "loc_data": "{2649,3454,0,0,0}-"
+ },
+ {
+ "npc_id": "231",
+ "loc_data": "{2650,3468,0,0,0}-"
+ },
+ {
+ "npc_id": "232",
+ "loc_data": "{2819,3487,0,0,4}-"
+ },
+ {
+ "npc_id": "237",
+ "loc_data": "{2769,3403,0,1,0}-{2766,3402,0,1,3}-{2770,3402,0,1,0}-{2772,3404,0,1,1}-{2767,3405,1,1,0}-{2771,3403,1,1,6}-{2767,3401,1,1,7}-"
+ },
+ {
+ "npc_id": "239",
+ "loc_data": "{2758,3516,1,0,0}-"
+ },
+ {
+ "npc_id": "240",
+ "loc_data": "{2760,3501,0,1,1}-"
+ },
+ {
+ "npc_id": "241",
+ "loc_data": "{2762,3498,0,0,0}-"
+ },
+ {
+ "npc_id": "242",
+ "loc_data": "{2764,3509,1,0,0}-"
+ },
+ {
+ "npc_id": "243",
+ "loc_data": "{2756,3513,1,0,0}-"
+ },
+ {
+ "npc_id": "244",
+ "loc_data": "{2765,3504,1,0,0}-"
+ },
+ {
+ "npc_id": "245",
+ "loc_data": "{2755,3517,0,0,0}-"
+ },
+ {
+ "npc_id": "247",
+ "loc_data": "{2769,3402,2,1,5}-"
+ },
+ {
+ "npc_id": "250",
+ "loc_data": "{2924,3405,0,0,1}-"
+ },
+ {
+ "npc_id": "251",
+ "loc_data": "{2761,3512,0,0,0}-"
+ },
+ {
+ "npc_id": "253",
+ "loc_data": "{2580,3163,0,1,1}-{2590,3184,0,1,1}-{2589,3140,0,1,1}-{2601,3177,0,1,1}-{2607,3182,0,1,1}-{2612,3187,0,1,1}-"
+ },
+ {
+ "npc_id": "254",
+ "loc_data": "{2569,3149,0,0,1}-{2614,3169,0,1,1}-{2564,3153,0,1,1}-{2568,3147,0,1,1}-{2579,3176,0,1,3}-{2580,3174,0,1,1}-{2584,3149,0,1,3}-{2590,3190,0,1,1}-{2594,3181,0,1,1}-{2595,3186,0,1,1}-{2597,3175,0,1,1}-{2597,3181,0,1,1}-{2607,3185,0,1,1}-{2614,3150,0,1,1}-{2619,3168,0,1,1}-"
+ },
+ {
+ "npc_id": "255",
+ "loc_data": "{2571,3142,0,1,1}-{2617,3150,0,1,1}-{2609,3171,0,0,1}-{2617,3157,0,1,1}-{2577,3167,0,1,1}-{2597,3176,0,1,1}-{2607,3181,0,1,1}-{2608,3148,0,1,1}-{2600,3190,0,1,1}-{2610,3150,0,1,1}-{2609,3171,0,1,1}-"
+ },
+ {
+ "npc_id": "256",
+ "loc_data": "{2609,3194,0,1,2}-"
+ },
+ {
+ "npc_id": "259",
+ "loc_data": "{2566,3140,0,0,1}-"
+ },
+ {
+ "npc_id": "260",
+ "loc_data": "{2589,3142,0,1,4}-"
+ },
+ {
+ "npc_id": "261",
+ "loc_data": "{2587,3142,0,1,3}-"
+ },
+ {
+ "npc_id": "262",
+ "loc_data": "{2615,3160,0,1,4}-{2616,3164,0,1,1}-{2594,3143,0,0,2}-"
+ },
+ {
+ "npc_id": "263",
+ "loc_data": "{2597,3143,0,0,4}-"
+ },
+ {
+ "npc_id": "264",
+ "loc_data": "{2568,3200,0,1,0}-"
+ },
+ {
+ "npc_id": "266",
+ "loc_data": "{2601,3154,0,1,0}-"
+ },
+ {
+ "npc_id": "267",
+ "loc_data": "{2601,3168,0,1,3}-"
+ },
+ {
+ "npc_id": "268",
+ "loc_data": "{2582,3172,0,1,1}-"
+ },
+ {
+ "npc_id": "269",
+ "loc_data": "{2608,3163,0,1,3}-"
+ },
+ {
+ "npc_id": "270",
+ "loc_data": "{2608,3165,0,1,3}-"
+ },
+ {
+ "npc_id": "271",
+ "loc_data": "{2608,3158,0,1,3}-"
+ },
+ {
+ "npc_id": "272",
+ "loc_data": "{3127,3485,0,1,1}-"
+ },
+ {
+ "npc_id": "273",
+ "loc_data": "{2573,3321,0,1,3}-"
+ },
+ {
+ "npc_id": "274",
+ "loc_data": "{2638,9899,0,1,6}-{2639,9911,0,1,6}-{2648,9901,0,1,6}-{2649,9912,0,1,6}-{2649,9905,0,1,6}-{2650,9897,0,1,6}-"
+ },
+ {
+ "npc_id": "275",
+ "loc_data": "{2636,9910,0,1,4}-{2637,9897,0,1,4}-{2643,9913,0,1,6}-{2646,9906,0,1,6}-"
+ },
+ {
+ "npc_id": "276",
+ "loc_data": "{2656,9875,0,1,3}-"
+ },
+ {
+ "npc_id": "278",
+ "loc_data": "{3209,3215,0,0,0}-"
+ },
+ {
+ "npc_id": "279",
+ "loc_data": "{2604,3209,0,0,0}-"
+ },
+ {
+ "npc_id": "280",
+ "loc_data": "{2615,3258,0,1,6}-"
+ },
+ {
+ "npc_id": "281",
+ "loc_data": "{2604,3219,0,1,6}-{2609,3207,0,1,6}-{2618,3211,0,1,6}-"
+ },
+ {
+ "npc_id": "282",
+ "loc_data": "{2562,9608,0,1,6}-{2564,9604,0,1,6}-{3280,3494,0,1,6}-"
+ },
+ {
+ "npc_id": "283",
+ "loc_data": "{2569,9602,0,1,6}-"
+ },
+ {
+ "npc_id": "284",
+ "loc_data": "{2953,3450,0,0,0}-"
+ },
+ {
+ "npc_id": "285",
+ "loc_data": "{3110,3330,0,0,0}-"
+ },
+ {
+ "npc_id": "286",
+ "loc_data": "{3111,3367,2,0,4}-"
+ },
+ {
+ "npc_id": "287",
+ "loc_data": "{2770,3403,2,1,3}-"
+ },
+ {
+ "npc_id": "288",
+ "loc_data": "{3110,3366,2,0,2}-{2677,3655,0,1,3}-{2681,3653,0,1,6}-"
+ },
+ {
+ "npc_id": "289",
+ "loc_data": "{2616,3302,0,1,3}-"
+ },
+ {
+ "npc_id": "290",
+ "loc_data": "{2614,3306,0,1,4}-"
+ },
+ {
+ "npc_id": "296",
+ "loc_data": "{3084,3518,0,1,1}-"
+ },
+ {
+ "npc_id": "297",
+ "loc_data": "{3093,3518,0,1,5}-"
+ },
+ {
+ "npc_id": "298",
+ "loc_data": "{3113,3513,0,1,3}-"
+ },
+ {
+ "npc_id": "299",
+ "loc_data": "{3113,3511,0,1,3}-"
+ },
+ {
+ "npc_id": "300",
+ "loc_data": "{3105,9569,0,0,0}-"
+ },
+ {
+ "npc_id": "302",
+ "loc_data": "{2519,3429,0,1,1}-"
+ },
+ {
+ "npc_id": "304",
+ "loc_data": "{2520,3496,0,1,3}-"
+ },
+ {
+ "npc_id": "305",
+ "loc_data": "{2511,3484,0,0,4}-"
+ },
+ {
+ "npc_id": "306",
+ "loc_data": "{2514,9580,0,1,1}-"
+ },
+ {
+ "npc_id": "307",
+ "loc_data": "{2968,3206,0,0,0}-"
+ },
+ {
+ "npc_id": "308",
+ "loc_data": "{2611,3393,0,1,4}-"
+ },
+ {
+ "npc_id": "309",
+ "loc_data": "{2860,2976,0,0,4}-{2856,2977,0,0,4}-{2852,2973,0,0,4}-{2561,3374,0,0,4}-{2562,3374,0,0,4}-{2566,3370,0,0,0}-{3104,3424,0,0,0}-{3104,3425,0,0,0}-{2637,3444,0,0,0}-{2678,3595,0,0,4}-{2633,3693,0,0,4}-{2633,3694,0,0,4}-{2471,3146,0,0,4}-{2465,3156,0,0,4}-{2461,3150,0,0,4}-{2215,3248,0,0,4}-{2217,3245,0,0,4}-{2213,3241,0,0,4}-{2716,3530,0,0,0}-{2267,3253,0,0,4}-{2266,3253,0,0,4}-{2262,3249,0,0,4}-"
+ },
+ {
+ "npc_id": "310",
+ "loc_data": "{2860,2972,0,0,6}-{2865,2972,0,0,4}-{2382,3414,0,0,4}-{2382,3415,0,0,0}-{2392,3420,0,0,0}-{3239,3243,0,0,6}-{3239,3241,0,0,6}-{3238,3252,0,0,6}-{2537,3406,0,0,4}-{2527,3412,0,0,4}-{2507,3421,0,0,4}-{2508,3421,0,0,4}-"
+ },
+ {
+ "npc_id": "312",
+ "loc_data": "{2860,3426,0,0,1}-{2421,3789,0,0,0}-{2410,3780,0,0,0}-{2414,3780,0,0,0}-"
+ },
+ {
+ "npc_id": "313",
+ "loc_data": "{2840,3356,0,0,1}-{2843,3359,0,0,1}-{2848,3361,0,0,1}-{2879,3339,0,0,1}-{2879,3338,0,0,1}-{2879,3335,0,0,1}-{2879,3334,0,0,1}-{2876,3331,0,0,1}-{2853,3423,0,0,1}-{2401,3781,0,0,0}-"
+ },
+ {
+ "npc_id": "316",
+ "loc_data": "{3086,3227,0,0,1}-{3085,3230,0,0,0}-{2986,3176,0,0,4}-{2996,3157,0,0,1}-{2790,3273,0,0,1}-{2790,3276,0,0,6}-{2794,3283,0,0,6}-{2795,3279,0,0,3}-"
+ },
+ {
+ "npc_id": "322",
+ "loc_data": "{2641,3700,0,0,4}-{2640,3700,0,0,4}-{2777,2740,0,0,4}-{2780,2741,0,0,4}-{2788,2741,0,0,4}-{2771,2733,0,0,4}-{2771,2734,0,0,4}-"
+ },
+ {
+ "npc_id": "323",
+ "loc_data": "{2926,3177,0,0,6}-{3248,3161,0,0,4}-{2516,3575,0,0,7}-{2511,3562,0,0,7}-{2498,3547,0,0,7}-"
+ },
+ {
+ "npc_id": "324",
+ "loc_data": "{2632,3427,0,0,0}-{2645,3708,0,0,1}-{2648,3708,0,0,1}-{2647,3711,0,0,1}-"
+ },
+ {
+ "npc_id": "325",
+ "loc_data": "{2671,3160,0,0,4}-{2672,3160,0,0,4}-{2678,3160,0,0,4}-{2682,3160,0,0,4}-{2683,3160,0,0,4}-"
+ },
+ {
+ "npc_id": "326",
+ "loc_data": "{2840,3431,0,0,0}-{2855,3423,0,0,1}-{2607,3416,0,0,1}-{2604,3417,0,0,1}-{2602,3419,0,0,1}-{3246,3156,0,0,0}-{3245,3152,0,0,0}-{3242,3148,0,0,0}-{3267,3148,0,0,6}-{3276,3140,0,0,6}-{3275,3140,0,0,6}-"
+ },
+ {
+ "npc_id": "333",
+ "loc_data": "{2845,3429,0,0,6}-{2602,3411,0,0,3}-{2605,3413,0,0,3}-{2609,3416,0,0,3}-{2610,3413,0,0,3}-{2605,3421,0,0,1}-{2602,3423,0,0,1}-{2603,3426,0,0,1}-{2923,3178,0,0,6}-{2923,3180,0,0,6}-{2926,3180,0,0,6}-"
+ },
+ {
+ "npc_id": "334",
+ "loc_data": "{2612,3411,0,0,0}-{2165,3268,0,0,4}-{2162,3274,0,0,4}-{2627,3415,0,0,0}-{2639,3698,0,0,4}-{2642,3698,0,0,4}-{2699,2702,0,0,4}-{2694,2706,0,0,4}-{2700,2702,0,0,4}-{2707,2698,0,0,4}-{2700,2702,0,0,0}-{2700,2702,0,0,0}-{2700,2702,0,0,0}-{2707,2698,0,0,0}-{2707,2698,0,0,0}-{2707,2698,0,0,0}-"
+ },
+ {
+ "npc_id": "335",
+ "loc_data": "{2592,3336,0,1,0}-"
+ },
+ {
+ "npc_id": "336",
+ "loc_data": "{2928,3218,0,1,4}-"
+ },
+ {
+ "npc_id": "338",
+ "loc_data": "{2929,3222,0,0,6}-"
+ },
+ {
+ "npc_id": "340",
+ "loc_data": "{2929,3217,0,1,6}-"
+ },
+ {
+ "npc_id": "342",
+ "loc_data": "{3281,3382,0,0,0}-"
+ },
+ {
+ "npc_id": "343",
+ "loc_data": "{3284,3382,0,0,0}-"
+ },
+ {
+ "npc_id": "344",
+ "loc_data": "{2510,3378,0,1,0}-{2511,3383,0,1,0}-{2515,3356,0,1,0}-{2519,3356,0,1,0}-{2521,3383,0,1,0}-{2524,3362,0,1,0}-{2525,3383,0,1,0}-"
+ },
+ {
+ "npc_id": "345",
+ "loc_data": "{2519,3366,0,1,0}-{2525,3369,0,1,0}-{2531,3368,0,1,0}-"
+ },
+ {
+ "npc_id": "346",
+ "loc_data": "{2508,3370,0,1,0}-{2512,3374,0,1,0}-{2518,3371,0,1,0}-{2525,3380,0,1,0}-"
+ },
+ {
+ "npc_id": "347",
+ "loc_data": "{2524,3292,0,1,3}-{2536,3294,0,1,3}-{2538,3321,0,1,3}-"
+ },
+ {
+ "npc_id": "348",
+ "loc_data": "{2501,3315,0,1,3}-{2513,3325,0,1,3}-{2526,3279,0,1,3}-{2528,3297,0,1,3}-{2535,3288,0,1,3}-{2548,3287,0,1,3}-"
+ },
+ {
+ "npc_id": "349",
+ "loc_data": "{2556,3266,0,0,0}-"
+ },
+ {
+ "npc_id": "350",
+ "loc_data": "{2559,3266,0,0,0}-"
+ },
+ {
+ "npc_id": "351",
+ "loc_data": "{2465,3307,0,1,0}-{2482,3293,0,1,0}-{2509,3325,0,1,0}-"
+ },
+ {
+ "npc_id": "352",
+ "loc_data": "{2453,3307,0,1,0}-{2480,3300,0,1,0}-{2511,3322,0,1,0}-{2540,3279,0,1,0}-"
+ },
+ {
+ "npc_id": "353",
+ "loc_data": "{2473,3288,0,1,0}-{2504,3326,0,1,0}-{2509,3314,0,1,0}-{2546,3277,0,1,0}-"
+ },
+ {
+ "npc_id": "354",
+ "loc_data": "{2470,3290,0,1,0}-{2472,3296,0,1,0}-{2483,3318,0,1,0}-{2483,3323,0,1,0}-{2490,3293,0,1,0}-{2510,3318,0,1,0}-{2524,3271,0,1,0}-"
+ },
+ {
+ "npc_id": "355",
+ "loc_data": "{2464,3302,0,1,0}-{2466,3300,0,1,0}-{2466,3307,0,1,0}-{2467,3306,0,1,0}-{2468,3315,0,1,0}-{2469,3319,0,1,0}-{2471,3323,0,1,0}-{2473,3305,0,1,0}-{2474,3296,0,1,0}-{2476,3307,0,1,0}-{2478,3323,0,1,0}-{2480,3296,0,1,0}-{2481,3313,0,1,0}-{2485,3312,0,1,0}-{2504,3318,0,1,0}-{2547,3277,0,1,0}-"
+ },
+ {
+ "npc_id": "356",
+ "loc_data": "{2462,3306,0,1,0}-{2465,3305,0,1,0}-{2469,3295,0,1,0}-{2477,3320,0,1,0}-{2482,3311,0,1,0}-{2518,3275,0,1,0}-{2523,3307,0,1,0}-"
+ },
+ {
+ "npc_id": "357",
+ "loc_data": "{2518,3309,0,1,3}-{2526,3303,0,1,3}-{2543,3309,0,1,3}-{2552,3320,0,1,3}-"
+ },
+ {
+ "npc_id": "358",
+ "loc_data": "{2529,3285,0,1,0}-"
+ },
+ {
+ "npc_id": "360",
+ "loc_data": "{2472,3307,0,1,0}-{2492,3314,0,1,0}-{2553,3275,0,1,0}-"
+ },
+ {
+ "npc_id": "361",
+ "loc_data": "{2463,3317,0,1,0}-{2482,3296,0,1,0}-{2485,3315,0,1,0}-{2519,3277,0,1,0}-"
+ },
+ {
+ "npc_id": "362",
+ "loc_data": "{2482,3286,0,1,0}-{2489,3295,0,1,0}-{2537,3324,0,1,0}-"
+ },
+ {
+ "npc_id": "363",
+ "loc_data": "{2468,3290,0,1,0}-{2475,3325,0,1,0}-{2479,3312,0,1,0}-{2513,3315,0,1,0}-"
+ },
+ {
+ "npc_id": "364",
+ "loc_data": "{2577,3298,1,0,0}-"
+ },
+ {
+ "npc_id": "366",
+ "loc_data": "{2612,3324,0,0,0}-"
+ },
+ {
+ "npc_id": "367",
+ "loc_data": "{2935,3210,0,1,2}-"
+ },
+ {
+ "npc_id": "368",
+ "loc_data": "{3263,3407,0,1,2}-"
+ },
+ {
+ "npc_id": "369",
+ "loc_data": "{2548,3324,0,1,3}-{2550,3326,0,1,3}-{2553,3325,0,1,3}-"
+ },
+ {
+ "npc_id": "370",
+ "loc_data": "{2549,3325,1,1,0}-{2550,3327,1,1,0}-"
+ },
+ {
+ "npc_id": "371",
+ "loc_data": "{2545,3326,0,1,3}-{2551,3322,0,1,3}-{2555,3324,0,1,3}-"
+ },
+ {
+ "npc_id": "372",
+ "loc_data": "{2561,3305,0,1,2}-{2561,3303,0,1,7}-{2559,3304,0,1,3}-"
+ },
+ {
+ "npc_id": "373",
+ "loc_data": "{2516,3274,0,1,0}-"
+ },
+ {
+ "npc_id": "375",
+ "loc_data": "{3053,3249,0,0,0}-"
+ },
+ {
+ "npc_id": "376",
+ "loc_data": "{3027,3217,0,1,4}-"
+ },
+ {
+ "npc_id": "377",
+ "loc_data": "{3028,3223,0,1,2}-"
+ },
+ {
+ "npc_id": "378",
+ "loc_data": "{3028,3220,0,1,4}-"
+ },
+ {
+ "npc_id": "379",
+ "loc_data": "{2939,3156,0,1,4}-"
+ },
+ {
+ "npc_id": "380",
+ "loc_data": "{2953,3149,0,0,0}-{2770,3226,0,0,0}-"
+ },
+ {
+ "npc_id": "381",
+ "loc_data": "{2684,3272,0,1,4}-"
+ },
+ {
+ "npc_id": "382",
+ "loc_data": "{3044,9758,0,1,3}-"
+ },
+ {
+ "npc_id": "383",
+ "loc_data": "{2582,3485,0,1,7}-"
+ },
+ {
+ "npc_id": "384",
+ "loc_data": "{2545,3568,0,1,7}-{2545,3571,0,1,6}-"
+ },
+ {
+ "npc_id": "385",
+ "loc_data": "{2552,3570,0,1,6}-"
+ },
+ {
+ "npc_id": "386",
+ "loc_data": "{2877,9797,0,1,0}-"
+ },
+ {
+ "npc_id": "387",
+ "loc_data": "{3058,3488,1,0,0}-"
+ },
+ {
+ "npc_id": "388",
+ "loc_data": "{2709,3485,0,1,1}-{2716,3475,0,1,3}-{2697,3472,0,1,6}-{2702,3469,0,1,3}-"
+ },
+ {
+ "npc_id": "389",
+ "loc_data": "{2704,3405,3,1,3}-"
+ },
+ {
+ "npc_id": "397",
+ "loc_data": "{3254,3258,0,1,1}-{3261,3260,0,1,1}-{3259,3279,0,1,6}-{3247,3292,0,1,3}-{3260,3291,0,1,2}-{3247,3282,0,1,5}-{3252,3283,0,1,6}-{3264,3258,0,1,2}-{3026,3303,0,1,4}-"
+ },
+ {
+ "npc_id": "398",
+ "loc_data": "{2849,5091,0,0,0}-{2726,3349,0,1,6}-"
+ },
+ {
+ "npc_id": "399",
+ "loc_data": "{2846,5081,0,0,0}-{2730,3349,0,1,1}-"
+ },
+ {
+ "npc_id": "400",
+ "loc_data": "{2728,3377,0,1,1}-"
+ },
+ {
+ "npc_id": "401",
+ "loc_data": "{2823,2941,0,0,0}-{2861,2941,0,0,0}-{2800,2943,0,0,0}-{2762,2944,0,0,0}-"
+ },
+ {
+ "npc_id": "402",
+ "loc_data": "{2818,2939,0,0,0}-{2870,2943,0,0,0}-{2933,2944,0,0,0}-{2762,2943,0,0,0}-{2791,2944,0,0,0}-"
+ },
+ {
+ "npc_id": "407",
+ "loc_data": "{3059,4507,0,0,3}-"
+ },
+ {
+ "npc_id": "411",
+ "loc_data": "{2878,3161,0,0,0}-{2887,3164,0,0,0}-"
+ },
+ {
+ "npc_id": "412",
+ "loc_data": "{3341,3478,0,1,0}-{3343,3484,0,1,0}-{3345,3484,0,1,0}-{3350,3493,0,1,0}-{3353,3494,0,1,0}-{3361,3484,0,1,0}-{3364,3489,0,1,0}-{3370,3497,0,1,0}-{3379,3478,0,1,0}-{3379,3484,0,1,0}-{3387,3483,0,1,0}-{3388,3494,0,1,0}-{3389,3483,0,1,0}-{3588,3472,0,1,0}-{3598,3509,0,1,0}-{3599,3486,0,1,0}-{3607,3462,0,1,0}-{3611,3499,0,1,0}-{3613,3482,0,1,0}-{3627,3511,0,1,0}-{3628,3473,0,1,0}-{3636,3466,0,1,0}-{3639,3510,0,1,0}-{3411,3536,0,1,0}-{3418,3522,0,1,0}-{3425,3525,0,1,0}-{3429,3522,0,1,0}-{3432,3527,0,1,0}-{3434,3521,0,1,0}-{3445,3526,0,1,0}-{2728,10122,0,1,1}-{2735,10123,0,1,3}-{2733,10129,0,1,1}-{2728,10133,0,1,6}-{2722,10133,0,1,6}-{2736,10137,0,1,1}-{2732,10142,0,1,0}-{2726,10142,0,1,6}-{2729,10140,0,1,3}-{2720,10144,0,1,6}-{2712,10142,0,1,3}-{3565,3503,0,1,0}-{3567,3481,0,1,0}-{3580,3491,0,1,0}-"
+ },
+ {
+ "npc_id": "419",
+ "loc_data": "{3195,5450,0,1,6}-{3181,5449,0,1,1}-"
+ },
+ {
+ "npc_id": "420",
+ "loc_data": "{3175,5454,0,1,4}-"
+ },
+ {
+ "npc_id": "421",
+ "loc_data": "{3195,5459,0,1,6}-{3186,5454,0,1,5}-{3173,5494,0,1,6}-{3179,5491,0,1,1}-{3185,5492,0,1,4}-{3184,5487,0,1,3}-"
+ },
+ {
+ "npc_id": "423",
+ "loc_data": "{2731,5340,0,1,7}-"
+ },
+ {
+ "npc_id": "424",
+ "loc_data": "{2724,5359,0,1,3}-"
+ },
+ {
+ "npc_id": "425",
+ "loc_data": "{2717,5332,0,1,7}-"
+ },
+ {
+ "npc_id": "429",
+ "loc_data": "{2363,5214,0,1,6}-{2358,5214,0,1,7}-{2361,5212,0,1,6}-{2361,5209,0,1,4}-{2359,5213,0,1,1}-{2364,5215,0,1,6}-{2361,5216,0,1,1}-{2361,5212,0,1,0}-"
+ },
+ {
+ "npc_id": "437",
+ "loc_data": "{2807,3191,0,0,0}-"
+ },
+ {
+ "npc_id": "444",
+ "loc_data": "{2551,3197,0,1,1}-{2555,3194,0,1,4}-{2551,3157,0,1,3}-{2525,3155,0,1,3}-{2518,3149,0,1,3}-{2502,3175,0,1,1}-"
+ },
+ {
+ "npc_id": "445",
+ "loc_data": "{2550,3196,0,1,4}-{2557,3197,0,1,1}-{2538,3155,0,1,7}-"
+ },
+ {
+ "npc_id": "446",
+ "loc_data": "{2994,3194,0,1,1}-{3285,9896,0,1,1}-{3279,9895,0,1,6}-"
+ },
+ {
+ "npc_id": "447",
+ "loc_data": "{3114,3242,0,1,1}-"
+ },
+ {
+ "npc_id": "448",
+ "loc_data": "{3120,3238,0,1,6}-"
+ },
+ {
+ "npc_id": "449",
+ "loc_data": "{3127,3248,0,1,1}-"
+ },
+ {
+ "npc_id": "450",
+ "loc_data": "{3081,3220,0,1,0}-{3081,3222,0,1,0}-"
+ },
+ {
+ "npc_id": "451",
+ "loc_data": "{3077,3234,0,1,0}-{2994,3215,0,1,2}-"
+ },
+ {
+ "npc_id": "452",
+ "loc_data": "{3223,3293,0,0,0}-"
+ },
+ {
+ "npc_id": "454",
+ "loc_data": "{2899,3430,1,1,3}-"
+ },
+ {
+ "npc_id": "455",
+ "loc_data": "{2925,3485,0,1,5}-"
+ },
+ {
+ "npc_id": "456",
+ "loc_data": "{3244,3205,0,0,0}-"
+ },
+ {
+ "npc_id": "458",
+ "loc_data": "{3148,3175,0,1,4}-"
+ },
+ {
+ "npc_id": "459",
+ "loc_data": "{2566,9507,0,1,6}-{2565,9506,0,0,5}-{2566,9507,0,1,3}-"
+ },
+ {
+ "npc_id": "460",
+ "loc_data": "{2590,9488,0,1,3}-"
+ },
+ {
+ "npc_id": "461",
+ "loc_data": "{2588,3091,1,1,3}-"
+ },
+ {
+ "npc_id": "462",
+ "loc_data": "{2590,3084,0,1,5}-"
+ },
+ {
+ "npc_id": "469",
+ "loc_data": "{2542,3169,0,1,4}-"
+ },
+ {
+ "npc_id": "470",
+ "loc_data": "{2519,3212,0,1,3}-"
+ },
+ {
+ "npc_id": "471",
+ "loc_data": "{2526,3160,1,1,6}-"
+ },
+ {
+ "npc_id": "472",
+ "loc_data": "{2521,3168,0,1,4}-"
+ },
+ {
+ "npc_id": "473",
+ "loc_data": "{2503,3192,0,0,0}-{2514,3159,0,0,6}-"
+ },
+ {
+ "npc_id": "475",
+ "loc_data": "{2454,3300,0,1,7}-{2455,3301,0,1,7}-{2513,3262,0,1,3}-{2522,3251,0,1,1}-"
+ },
+ {
+ "npc_id": "477",
+ "loc_data": "{2455,3301,0,1,6}-"
+ },
+ {
+ "npc_id": "478",
+ "loc_data": "{2509,3255,0,1,3}-{2503,3254,1,1,3}-"
+ },
+ {
+ "npc_id": "479",
+ "loc_data": "{1970,5522,3,1,0}-{2384,3481,0,1,0}-{2388,3473,0,1,0}-{2418,3474,3,1,0}-{2415,3433,3,1,0}-{2466,3500,2,1,0}-"
+ },
+ {
+ "npc_id": "480",
+ "loc_data": "{1964,5522,3,1,0}-{2458,3417,1,1,0}-{2460,3417,1,1,0}-{2409,3507,0,1,0}-{2412,3474,3,1,0}-{2463,3504,2,1,0}-"
+ },
+ {
+ "npc_id": "481",
+ "loc_data": "{2499,3266,0,0,4}-"
+ },
+ {
+ "npc_id": "482",
+ "loc_data": "{2524,3258,0,1,4}-"
+ },
+ {
+ "npc_id": "483",
+ "loc_data": "{2501,3234,0,0,4}-"
+ },
+ {
+ "npc_id": "484",
+ "loc_data": "{2537,3168,0,1,5}-{2542,3167,0,0,1}-{2541,3168,0,0,2}-{2541,3171,0,0,3}-{2542,3172,0,0,4}-"
+ },
+ {
+ "npc_id": "487",
+ "loc_data": "{1885,5029,0,0,6}-"
+ },
+ {
+ "npc_id": "490",
+ "loc_data": "{1887,5026,0,0,6}-"
+ },
+ {
+ "npc_id": "494",
+ "loc_data": "{2615,3094,0,0,3}-{2615,3092,0,0,3}-{2615,3092,0,0,3}-{2615,3094,0,0,3}-{3122,3125,0,0,6}-{3120,3125,0,0,6}-{3090,3242,0,0,4}-{3090,3245,0,0,4}-{3090,3243,0,0,4}-{2618,3330,0,0,0}-{2619,3330,0,0,0}-{2584,3422,0,0,4}-{2584,3419,0,0,4}-{2584,3418,0,0,4}-{2657,3283,0,0,3}-{2657,3286,0,0,3}-{2807,3443,0,0,6}-{2810,3443,0,0,6}-"
+ },
+ {
+ "npc_id": "495",
+ "loc_data": "{2615,3091,0,0,3}-{2615,3091,0,0,3}-{2615,3330,0,0,0}-{2584,3421,0,0,4}-{2809,3443,0,0,6}-{2811,3443,0,0,6}-"
+ },
+ {
+ "npc_id": "496",
+ "loc_data": "{3267,3164,0,0,4}-{3267,3167,0,0,4}-{3267,3169,0,0,4}-"
+ },
+ {
+ "npc_id": "497",
+ "loc_data": "{3267,3166,0,0,4}-{3267,3168,0,0,4}-"
+ },
+ {
+ "npc_id": "498",
+ "loc_data": "{2384,4457,0,0,7}-{2385,4461,0,0,1}-"
+ },
+ {
+ "npc_id": "499",
+ "loc_data": "{2853,2953,0,0,1}-{2852,2953,0,0,1}-"
+ },
+ {
+ "npc_id": "500",
+ "loc_data": "{2880,2951,0,0,6}-"
+ },
+ {
+ "npc_id": "504",
+ "loc_data": "{2870,2950,0,0,0}-{2877,2959,0,0,0}-"
+ },
+ {
+ "npc_id": "505",
+ "loc_data": "{2868,2954,0,0,6}-{2876,2948,0,0,1}-"
+ },
+ {
+ "npc_id": "510",
+ "loc_data": "{2780,3211,0,0,0}-"
+ },
+ {
+ "npc_id": "511",
+ "loc_data": "{2834,2956,0,0,0}-"
+ },
+ {
+ "npc_id": "512",
+ "loc_data": "{2862,2995,1,0,0}-"
+ },
+ {
+ "npc_id": "513",
+ "loc_data": "{2857,2962,0,0,6}-"
+ },
+ {
+ "npc_id": "514",
+ "loc_data": "{2870,2974,1,0,6}-"
+ },
+ {
+ "npc_id": "515",
+ "loc_data": "{2834,2987,0,0,0}-"
+ },
+ {
+ "npc_id": "516",
+ "loc_data": "{2826,2958,0,1,3}-"
+ },
+ {
+ "npc_id": "517",
+ "loc_data": "{2870,2970,0,0,0}-"
+ },
+ {
+ "npc_id": "518",
+ "loc_data": "{2764,2959,1,0,0}-"
+ },
+ {
+ "npc_id": "519",
+ "loc_data": "{3228,3203,0,1,6}-"
+ },
+ {
+ "npc_id": "520",
+ "loc_data": "{3217,3241,0,1,4}-"
+ },
+ {
+ "npc_id": "521",
+ "loc_data": "{3217,3240,0,1,3}-"
+ },
+ {
+ "npc_id": "522",
+ "loc_data": "{3218,3415,0,1,3}-"
+ },
+ {
+ "npc_id": "523",
+ "loc_data": "{3217,3411,0,1,3}-"
+ },
+ {
+ "npc_id": "524",
+ "loc_data": "{3316,3184,0,1,3}-"
+ },
+ {
+ "npc_id": "525",
+ "loc_data": "{3316,3182,0,1,3}-"
+ },
+ {
+ "npc_id": "527",
+ "loc_data": "{2959,3390,0,1,1}-{2957,3388,0,1,3}-"
+ },
+ {
+ "npc_id": "528",
+ "loc_data": "{3078,3512,0,1,3}-"
+ },
+ {
+ "npc_id": "529",
+ "loc_data": "{3079,3507,0,1,7}-"
+ },
+ {
+ "npc_id": "530",
+ "loc_data": "{2947,3217,0,1,1}-"
+ },
+ {
+ "npc_id": "531",
+ "loc_data": "{2947,3212,0,1,1}-"
+ },
+ {
+ "npc_id": "532",
+ "loc_data": "{2906,3145,0,1,3}-"
+ },
+ {
+ "npc_id": "533",
+ "loc_data": "{2906,3144,0,1,3}-"
+ },
+ {
+ "npc_id": "534",
+ "loc_data": "{2375,4449,0,1,5}-"
+ },
+ {
+ "npc_id": "535",
+ "loc_data": "{2376,4447,0,0,0}-"
+ },
+ {
+ "npc_id": "536",
+ "loc_data": "{3192,3359,1,1,3}-"
+ },
+ {
+ "npc_id": "537",
+ "loc_data": "{3192,3355,1,1,6}-"
+ },
+ {
+ "npc_id": "538",
+ "loc_data": "{3076,3429,0,1,3}-"
+ },
+ {
+ "npc_id": "539",
+ "loc_data": "{3299,3204,0,0,0}-"
+ },
+ {
+ "npc_id": "540",
+ "loc_data": "{3288,3212,0,1,6}-"
+ },
+ {
+ "npc_id": "541",
+ "loc_data": "{3288,3190,0,1,3}-"
+ },
+ {
+ "npc_id": "542",
+ "loc_data": "{3316,3175,0,1,3}-"
+ },
+ {
+ "npc_id": "543",
+ "loc_data": "{3272,3182,0,1,6}-"
+ },
+ {
+ "npc_id": "544",
+ "loc_data": "{3316,3164,0,1,3}-"
+ },
+ {
+ "npc_id": "545",
+ "loc_data": "{3322,3195,0,1,3}-"
+ },
+ {
+ "npc_id": "546",
+ "loc_data": "{3203,3433,0,1,3}-"
+ },
+ {
+ "npc_id": "547",
+ "loc_data": "{3217,3435,0,0,3}-"
+ },
+ {
+ "npc_id": "548",
+ "loc_data": "{3205,3416,0,1,6}-"
+ },
+ {
+ "npc_id": "549",
+ "loc_data": "{3229,3438,0,1,6}-"
+ },
+ {
+ "npc_id": "550",
+ "loc_data": "{3232,3423,0,1,6}-"
+ },
+ {
+ "npc_id": "551",
+ "loc_data": "{3210,3400,0,1,3}-"
+ },
+ {
+ "npc_id": "552",
+ "loc_data": "{3206,3400,0,1,3}-"
+ },
+ {
+ "npc_id": "553",
+ "loc_data": "{3253,3403,0,1,1}-"
+ },
+ {
+ "npc_id": "554",
+ "loc_data": "{3281,3398,0,1,3}-"
+ },
+ {
+ "npc_id": "555",
+ "loc_data": "{2657,3153,0,1,0}-"
+ },
+ {
+ "npc_id": "556",
+ "loc_data": "{3012,3244,0,1,6}-"
+ },
+ {
+ "npc_id": "557",
+ "loc_data": "{3012,3203,0,1,1}-"
+ },
+ {
+ "npc_id": "558",
+ "loc_data": "{3013,3225,0,1,1}-"
+ },
+ {
+ "npc_id": "559",
+ "loc_data": "{3026,3252,0,1,3}-"
+ },
+ {
+ "npc_id": "560",
+ "loc_data": "{2767,3122,0,1,6}-"
+ },
+ {
+ "npc_id": "561",
+ "loc_data": "{2514,3385,0,1,0}-"
+ },
+ {
+ "npc_id": "562",
+ "loc_data": "{2799,3438,0,1,1}-"
+ },
+ {
+ "npc_id": "563",
+ "loc_data": "{2803,3430,0,1,6}-"
+ },
+ {
+ "npc_id": "564",
+ "loc_data": "{2485,4450,0,1,3}-"
+ },
+ {
+ "npc_id": "565",
+ "loc_data": "{2476,4467,0,1,2}-"
+ },
+ {
+ "npc_id": "566",
+ "loc_data": "{2480,4471,0,1,4}-"
+ },
+ {
+ "npc_id": "568",
+ "loc_data": "{2925,3143,0,1,3}-"
+ },
+ {
+ "npc_id": "569",
+ "loc_data": "{2659,3316,0,1,2}-"
+ },
+ {
+ "npc_id": "570",
+ "loc_data": "{2669,3303,0,1,5}-"
+ },
+ {
+ "npc_id": "571",
+ "loc_data": "{2655,3310,0,1,1}-{2669,3310,0,1,3}-"
+ },
+ {
+ "npc_id": "572",
+ "loc_data": "{2659,3296,0,1,4}-"
+ },
+ {
+ "npc_id": "573",
+ "loc_data": "{2663,3296,0,1,4}-"
+ },
+ {
+ "npc_id": "574",
+ "loc_data": "{2656,3300,0,1,3}-"
+ },
+ {
+ "npc_id": "575",
+ "loc_data": "{2821,3442,0,1,6}-"
+ },
+ {
+ "npc_id": "576",
+ "loc_data": "{2836,3447,0,1,4}-"
+ },
+ {
+ "npc_id": "577",
+ "loc_data": "{2975,3384,0,1,3}-"
+ },
+ {
+ "npc_id": "578",
+ "loc_data": "{2807,3342,0,1,6}-"
+ },
+ {
+ "npc_id": "579",
+ "loc_data": "{3034,9845,0,1,3}-"
+ },
+ {
+ "npc_id": "580",
+ "loc_data": "{2952,3388,0,1,3}-"
+ },
+ {
+ "npc_id": "581",
+ "loc_data": "{2975,3314,0,1,3}-"
+ },
+ {
+ "npc_id": "582",
+ "loc_data": "{2998,9828,0,1,1}-"
+ },
+ {
+ "npc_id": "583",
+ "loc_data": "{3011,3257,0,1,3}-"
+ },
+ {
+ "npc_id": "584",
+ "loc_data": "{2944,3332,0,1,3}-"
+ },
+ {
+ "npc_id": "585",
+ "loc_data": "{2946,3205,0,1,6}-"
+ },
+ {
+ "npc_id": "586",
+ "loc_data": "{2884,3450,0,1,3}-"
+ },
+ {
+ "npc_id": "587",
+ "loc_data": "{2897,3428,0,1,3}-"
+ },
+ {
+ "npc_id": "588",
+ "loc_data": "{2803,3152,0,1,3}-"
+ },
+ {
+ "npc_id": "589",
+ "loc_data": "{2660,3291,0,1,3}-"
+ },
+ {
+ "npc_id": "590",
+ "loc_data": "{2613,3294,0,1,3}-"
+ },
+ {
+ "npc_id": "591",
+ "loc_data": "{2615,3292,0,1,6}-"
+ },
+ {
+ "npc_id": "592",
+ "loc_data": "{2597,3401,0,1,2}-"
+ },
+ {
+ "npc_id": "593",
+ "loc_data": "{2569,3098,0,1,3}-"
+ },
+ {
+ "npc_id": "594",
+ "loc_data": "{2998,9840,0,1,3}-"
+ },
+ {
+ "npc_id": "595",
+ "loc_data": "{3271,3412,0,1,3}-"
+ },
+ {
+ "npc_id": "596",
+ "loc_data": "{3037,3705,0,0,0}-"
+ },
+ {
+ "npc_id": "597",
+ "loc_data": "{3025,3701,0,1,5}-"
+ },
+ {
+ "npc_id": "598",
+ "loc_data": "{2943,3384,0,1,3}-"
+ },
+ {
+ "npc_id": "600",
+ "loc_data": "{2449,3511,1,1,6}-"
+ },
+ {
+ "npc_id": "601",
+ "loc_data": "{2482,3510,1,1,0}-"
+ },
+ {
+ "npc_id": "602",
+ "loc_data": "{2469,3488,2,1,6}-"
+ },
+ {
+ "npc_id": "603",
+ "loc_data": "{2491,3488,1,1,6}-"
+ },
+ {
+ "npc_id": "604",
+ "loc_data": "{3001,3144,0,0,0}-"
+ },
+ {
+ "npc_id": "605",
+ "loc_data": "{2985,3343,2,1,2}-"
+ },
+ {
+ "npc_id": "606",
+ "loc_data": "{2974,3343,0,1,0}-"
+ },
+ {
+ "npc_id": "607",
+ "loc_data": "{2539,3547,0,1,4}-"
+ },
+ {
+ "npc_id": "608",
+ "loc_data": "{2962,3337,2,1,4}-"
+ },
+ {
+ "npc_id": "610",
+ "loc_data": "{3027,3506,0,0,0}-"
+ },
+ {
+ "npc_id": "611",
+ "loc_data": "{3029,3505,0,1,0}-"
+ },
+ {
+ "npc_id": "612",
+ "loc_data": "{3028,3510,0,0,0}-"
+ },
+ {
+ "npc_id": "613",
+ "loc_data": "{3370,3387,0,1,6}-{3362,3416,0,1,6}-"
+ },
+ {
+ "npc_id": "614",
+ "loc_data": "{3351,9756,0,1,1}-{3351,9820,0,1,1}-"
+ },
+ {
+ "npc_id": "615",
+ "loc_data": "{3363,3397,0,1,3}-"
+ },
+ {
+ "npc_id": "616",
+ "loc_data": "{3370,3416,0,1,3}-"
+ },
+ {
+ "npc_id": "617",
+ "loc_data": "{3348,3424,0,1,3}-"
+ },
+ {
+ "npc_id": "618",
+ "loc_data": "{3364,3342,0,1,3}-"
+ },
+ {
+ "npc_id": "619",
+ "loc_data": "{3355,3333,0,1,3}-"
+ },
+ {
+ "npc_id": "620",
+ "loc_data": "{3376,3377,0,1,0}-"
+ },
+ {
+ "npc_id": "636",
+ "loc_data": "{2395,3494,0,0,6}-{2396,3494,0,0,6}-{2397,3494,0,0,6}-{2396,3493,0,0,6}-"
+ },
+ {
+ "npc_id": "637",
+ "loc_data": "{3158,3425,1,1,5}-"
+ },
+ {
+ "npc_id": "638",
+ "loc_data": "{3195,3404,0,0,0}-"
+ },
+ {
+ "npc_id": "639",
+ "loc_data": "{3211,3425,0,1,7}-"
+ },
+ {
+ "npc_id": "640",
+ "loc_data": "{3253,3487,0,1,6}-"
+ },
+ {
+ "npc_id": "641",
+ "loc_data": "{3207,3392,0,1,6}-"
+ },
+ {
+ "npc_id": "642",
+ "loc_data": "{3185,3385,0,1,6}-"
+ },
+ {
+ "npc_id": "643",
+ "loc_data": "{3246,3383,1,1,5}-"
+ },
+ {
+ "npc_id": "644",
+ "loc_data": "{3247,9781,0,1,6}-"
+ },
+ {
+ "npc_id": "645",
+ "loc_data": "{3223,3401,0,1,2}-"
+ },
+ {
+ "npc_id": "646",
+ "loc_data": "{3257,3447,0,1,0}-"
+ },
+ {
+ "npc_id": "648",
+ "loc_data": "{3220,3471,0,0,6}-"
+ },
+ {
+ "npc_id": "649",
+ "loc_data": "{3149,3210,0,1,0}-"
+ },
+ {
+ "npc_id": "650",
+ "loc_data": "{3148,3205,0,1,0}-"
+ },
+ {
+ "npc_id": "651",
+ "loc_data": "{3148,3207,0,1,0}-"
+ },
+ {
+ "npc_id": "652",
+ "loc_data": "{3147,3209,0,1,0}-"
+ },
+ {
+ "npc_id": "656",
+ "loc_data": "{2822,3374,0,0,3}-"
+ },
+ {
+ "npc_id": "657",
+ "loc_data": "{3048,3236,0,1,2}-"
+ },
+ {
+ "npc_id": "658",
+ "loc_data": "{2832,3336,0,1,2}-"
+ },
+ {
+ "npc_id": "659",
+ "loc_data": "{3052,3373,0,0,0}-"
+ },
+ {
+ "npc_id": "663",
+ "loc_data": "{3290,3290,0,1,2}-"
+ },
+ {
+ "npc_id": "665",
+ "loc_data": "{2986,9811,0,0,0}-"
+ },
+ {
+ "npc_id": "666",
+ "loc_data": "{2819,3451,0,0,3}-"
+ },
+ {
+ "npc_id": "668",
+ "loc_data": "{3284,3503,1,1,1}-"
+ },
+ {
+ "npc_id": "669",
+ "loc_data": "{2678,3086,1,1,1}-"
+ },
+ {
+ "npc_id": "670",
+ "loc_data": "{2465,3496,0,1,6}-{2466,9896,0,0,6}-"
+ },
+ {
+ "npc_id": "671",
+ "loc_data": "{2479,3463,1,1,6}-"
+ },
+ {
+ "npc_id": "672",
+ "loc_data": "{2390,3515,1,1,6}-"
+ },
+ {
+ "npc_id": "673",
+ "loc_data": "{2464,3495,3,0,6}-"
+ },
+ {
+ "npc_id": "674",
+ "loc_data": "{3001,3041,0,0,0}-{2954,3025,0,0,0}-"
+ },
+ {
+ "npc_id": "675",
+ "loc_data": "{2944,3041,0,0,0}-"
+ },
+ {
+ "npc_id": "677",
+ "loc_data": "{2708,9486,0,0,5}-"
+ },
+ {
+ "npc_id": "678",
+ "loc_data": "{2658,3436,0,1,3}-{2655,3431,0,1,0}-{2656,3424,0,1,1}-{2664,3426,0,1,4}-{2671,3438,0,1,1}-{2669,3441,0,1,7}-{2674,3438,0,1,5}-{2671,3418,0,1,7}-{2666,3417,0,1,3}-{2666,3415,0,1,2}-{2664,3416,0,1,3}-{2680,3431,0,1,6}-{2678,3431,0,1,1}-{2661,3430,0,1,4}-"
+ },
+ {
+ "npc_id": "679",
+ "loc_data": "{2658,3439,0,0,0}-"
+ },
+ {
+ "npc_id": "680",
+ "loc_data": "{2679,3432,0,1,6}-"
+ },
+ {
+ "npc_id": "682",
+ "loc_data": "{2671,3434,0,1,4}-"
+ },
+ {
+ "npc_id": "683",
+ "loc_data": "{2673,3434,0,1,3}-"
+ },
+ {
+ "npc_id": "684",
+ "loc_data": "{2667,3430,2,0,6}-"
+ },
+ {
+ "npc_id": "685",
+ "loc_data": "{2670,3429,2,0,3}-"
+ },
+ {
+ "npc_id": "686",
+ "loc_data": "{2669,3426,2,0,1}-"
+ },
+ {
+ "npc_id": "687",
+ "loc_data": "{2666,3427,2,0,4}-"
+ },
+ {
+ "npc_id": "688",
+ "loc_data": "{2668,3442,2,1,6}-{2667,3444,2,1,6}-{2669,3444,2,1,6}-"
+ },
+ {
+ "npc_id": "689",
+ "loc_data": "{2682,3428,2,1,3}-{2684,3427,2,1,3}-{2684,3429,2,1,3}-"
+ },
+ {
+ "npc_id": "690",
+ "loc_data": "{2654,3428,2,1,1}-{2652,3427,2,1,1}-{2652,3429,2,1,1}-"
+ },
+ {
+ "npc_id": "691",
+ "loc_data": "{2668,3414,2,1,4}-{2667,3412,2,1,4}-{2669,3412,2,1,4}-"
+ },
+ {
+ "npc_id": "692",
+ "loc_data": "{2661,3419,0,1,7}-"
+ },
+ {
+ "npc_id": "693",
+ "loc_data": "{2673,3416,0,0,0}-"
+ },
+ {
+ "npc_id": "694",
+ "loc_data": "{2659,3431,0,0,3}-"
+ },
+ {
+ "npc_id": "695",
+ "loc_data": "{2765,3276,0,1,3}-"
+ },
+ {
+ "npc_id": "696",
+ "loc_data": "{2716,3303,0,1,1}-"
+ },
+ {
+ "npc_id": "697",
+ "loc_data": "{2766,3288,1,0,6}-"
+ },
+ {
+ "npc_id": "698",
+ "loc_data": "{2799,3320,0,1,1}-"
+ },
+ {
+ "npc_id": "700",
+ "loc_data": "{2716,3303,0,1,1}-"
+ },
+ {
+ "npc_id": "701",
+ "loc_data": "{2793,3321,0,1,1}-"
+ },
+ {
+ "npc_id": "702",
+ "loc_data": "{2774,3273,0,1,0}-{2775,3284,0,1,0}-{2781,3290,1,1,0}-{2785,3284,1,1,0}-"
+ },
+ {
+ "npc_id": "703",
+ "loc_data": "{2770,3284,0,1,0}-{2794,3279,0,1,0}-{2768,3285,1,1,0}-{2784,3277,1,1,0}-"
+ },
+ {
+ "npc_id": "704",
+ "loc_data": "{2778,3291,0,1,0}-{2773,3282,1,1,0}-{2787,3280,1,1,0}-"
+ },
+ {
+ "npc_id": "705",
+ "loc_data": "{3208,3252,0,0,6}-"
+ },
+ {
+ "npc_id": "706",
+ "loc_data": "{3103,3163,2,0,0}-"
+ },
+ {
+ "npc_id": "707",
+ "loc_data": "{3113,3160,2,0,0}-"
+ },
+ {
+ "npc_id": "708",
+ "loc_data": "{2595,3125,0,1,1}-{2601,3135,0,1,3}-{2598,3120,0,1,6}-{2615,3120,0,1,4}-{2598,3108,0,1,4}-{2865,3175,0,1,0}-{2855,3188,0,1,1}-{2838,3194,0,1,3}-{2827,3170,0,1,5}-{2598,3145,0,1,1}-{2588,3145,0,1,7}-{2603,3221,0,1,7}-{2604,3212,0,1,3}-{2612,3230,0,1,0}-{2611,3204,0,1,7}-{2942,3247,0,1,7}-{2627,3231,0,1,4}-{2932,3322,0,0,5}-{2934,3301,0,1,5}-{2934,3301,0,1,3}-{2935,3343,0,1,1}-{2941,3356,0,0,7}-{3162,3410,0,1,2}-{3189,3503,0,1,6}-{3219,3221,0,1,4}-{2977,3202,0,1,7}-{2997,3300,0,1,3}-{2957,3308,0,1,0}-{2973,3274,0,1,3}-{2994,3270,0,1,0}-{3215,3282,0,1,1}-{3242,3306,0,1,1}-{2980,3337,0,1,6}-{2977,3377,0,0,3}-{3208,3357,0,1,3}-{2962,3424,0,1,6}-{3240,3393,0,1,3}-{2715,3451,0,1,4}-{2715,3436,0,1,3}-{2733,3459,0,1,3}-{2732,3457,0,1,6}-{3239,3523,0,1,4}-{3262,3523,0,1,2}-{2806,3181,0,1,3}-{2788,3179,0,1,3}-{2753,3178,0,1,3}-{2759,3155,0,1,0}-{2544,3184,0,1,3}-{3068,3251,0,1,6}-{3031,3322,0,1,1}-{3010,3271,0,1,6}-{3011,3513,0,1,1}-"
+ },
+ {
+ "npc_id": "710",
+ "loc_data": "{2575,3333,0,1,0}-"
+ },
+ {
+ "npc_id": "711",
+ "loc_data": "{2536,3314,1,0,0}-"
+ },
+ {
+ "npc_id": "713",
+ "loc_data": "{2526,3319,0,0,6}-"
+ },
+ {
+ "npc_id": "715",
+ "loc_data": "{2541,9672,0,1,0}-"
+ },
+ {
+ "npc_id": "716",
+ "loc_data": "{2542,3286,0,1,3}-"
+ },
+ {
+ "npc_id": "717",
+ "loc_data": "{2513,3294,0,1,0}-{2518,3320,0,1,0}-{2530,3274,0,1,0}-{2535,3296,0,1,0}-"
+ },
+ {
+ "npc_id": "718",
+ "loc_data": "{2582,3329,0,1,2}-"
+ },
+ {
+ "npc_id": "719",
+ "loc_data": "{2560,3288,0,1,2}-"
+ },
+ {
+ "npc_id": "720",
+ "loc_data": "{2542,3306,0,1,0}-"
+ },
+ {
+ "npc_id": "721",
+ "loc_data": "{2531,3331,0,1,3}-"
+ },
+ {
+ "npc_id": "722",
+ "loc_data": "{2532,3331,0,1,3}-"
+ },
+ {
+ "npc_id": "723",
+ "loc_data": "{2530,3331,0,1,3}-"
+ },
+ {
+ "npc_id": "724",
+ "loc_data": "{2531,3331,1,1,6}-"
+ },
+ {
+ "npc_id": "725",
+ "loc_data": "{2540,3305,0,1,0}-"
+ },
+ {
+ "npc_id": "728",
+ "loc_data": "{2540,3308,0,1,0}-"
+ },
+ {
+ "npc_id": "729",
+ "loc_data": "{2536,3308,0,1,0}-"
+ },
+ {
+ "npc_id": "731",
+ "loc_data": "{3278,3487,0,1,1}-"
+ },
+ {
+ "npc_id": "732",
+ "loc_data": "{3267,3392,0,0,0}-"
+ },
+ {
+ "npc_id": "733",
+ "loc_data": "{3226,3399,0,0,0}-"
+ },
+ {
+ "npc_id": "734",
+ "loc_data": "{3045,3256,0,1,3}-"
+ },
+ {
+ "npc_id": "735",
+ "loc_data": "{2795,3155,0,1,7}-"
+ },
+ {
+ "npc_id": "736",
+ "loc_data": "{2957,3373,0,1,7}-"
+ },
+ {
+ "npc_id": "737",
+ "loc_data": "{2572,3319,0,1,3}-"
+ },
+ {
+ "npc_id": "738",
+ "loc_data": "{2691,3492,0,0,0}-"
+ },
+ {
+ "npc_id": "739",
+ "loc_data": "{2554,3080,0,1,3}-"
+ },
+ {
+ "npc_id": "740",
+ "loc_data": "{2808,3086,0,1,0}-"
+ },
+ {
+ "npc_id": "741",
+ "loc_data": "{3212,3220,1,1,1}-"
+ },
+ {
+ "npc_id": "742",
+ "loc_data": "{2854,9636,0,1,4}-"
+ },
+ {
+ "npc_id": "743",
+ "loc_data": "{3098,3257,0,1,4}-"
+ },
+ {
+ "npc_id": "744",
+ "loc_data": "{3047,3204,0,0,0}-"
+ },
+ {
+ "npc_id": "745",
+ "loc_data": "{3013,3189,0,1,1}-"
+ },
+ {
+ "npc_id": "746",
+ "loc_data": "{3010,3502,0,1,3}-"
+ },
+ {
+ "npc_id": "747",
+ "loc_data": "{3069,3516,0,1,6}-"
+ },
+ {
+ "npc_id": "749",
+ "loc_data": "{1749,5323,0,1,4}-"
+ },
+ {
+ "npc_id": "750",
+ "loc_data": "{1765,5321,0,1,2}-{1744,5326,0,1,4}-"
+ },
+ {
+ "npc_id": "751",
+ "loc_data": "{1778,5323,0,1,6}-"
+ },
+ {
+ "npc_id": "753",
+ "loc_data": "{2929,9649,0,1,4}-"
+ },
+ {
+ "npc_id": "755",
+ "loc_data": "{3100,3268,0,0,0}-"
+ },
+ {
+ "npc_id": "756",
+ "loc_data": "{3222,3398,0,0,3}-"
+ },
+ {
+ "npc_id": "758",
+ "loc_data": "{3189,3273,0,0,4}-"
+ },
+ {
+ "npc_id": "767",
+ "loc_data": "{3303,3511,0,0,1}-{3302,3514,0,0,1}-"
+ },
+ {
+ "npc_id": "780",
+ "loc_data": "{3151,3410,0,1,6}-"
+ },
+ {
+ "npc_id": "781",
+ "loc_data": "{3221,3434,0,1,0}-"
+ },
+ {
+ "npc_id": "782",
+ "loc_data": "{3150,3406,0,0,0}-"
+ },
+ {
+ "npc_id": "783",
+ "loc_data": "{3221,3435,0,1,0}-"
+ },
+ {
+ "npc_id": "784",
+ "loc_data": "{3155,3406,0,0,0}-"
+ },
+ {
+ "npc_id": "785",
+ "loc_data": "{2468,3304,0,1,0}-{2476,3317,0,1,0}-{2478,3291,0,1,0}-{2492,3312,0,1,0}-"
+ },
+ {
+ "npc_id": "786",
+ "loc_data": "{2469,3309,0,1,0}-{2475,3298,0,1,0}-{2487,3308,0,1,0}-{2490,3289,0,1,0}-"
+ },
+ {
+ "npc_id": "787",
+ "loc_data": "{2476,3313,0,1,0}-{2481,3289,0,1,0}-{2490,3313,0,1,0}-{2491,3300,0,1,0}-"
+ },
+ {
+ "npc_id": "788",
+ "loc_data": "{2773,3187,0,0,6}-"
+ },
+ {
+ "npc_id": "789",
+ "loc_data": "{2811,3167,0,1,0}-"
+ },
+ {
+ "npc_id": "792",
+ "loc_data": "{2774,3197,0,1,0}-"
+ },
+ {
+ "npc_id": "793",
+ "loc_data": "{2790,3189,0,1,1}-"
+ },
+ {
+ "npc_id": "794",
+ "loc_data": "{2793,3191,0,1,3}-"
+ },
+ {
+ "npc_id": "795",
+ "loc_data": "{2866,9956,0,1,6}-"
+ },
+ {
+ "npc_id": "796",
+ "loc_data": "{2903,3511,0,1,3}-"
+ },
+ {
+ "npc_id": "797",
+ "loc_data": "{2900,3511,1,1,6}-"
+ },
+ {
+ "npc_id": "798",
+ "loc_data": "{2930,9686,0,1,0}-"
+ },
+ {
+ "npc_id": "799",
+ "loc_data": "{2778,3197,0,1,4}-{2777,3194,0,1,4}-{2777,3199,0,1,3}-{2771,3193,0,1,3}-{2761,3192,0,1,5}-{2775,3190,0,1,4}-{2803,3195,0,1,4}-"
+ },
+ {
+ "npc_id": "800",
+ "loc_data": "{2884,9765,0,0,0}-{2890,9766,0,0,0}-{2894,9764,0,0,0}-"
+ },
+ {
+ "npc_id": "801",
+ "loc_data": "{3058,3485,0,1,6}-"
+ },
+ {
+ "npc_id": "802",
+ "loc_data": "{3046,3486,1,0,0}-"
+ },
+ {
+ "npc_id": "804",
+ "loc_data": "{2934,3285,1,1,0}-"
+ },
+ {
+ "npc_id": "805",
+ "loc_data": "{2936,3288,0,1,4}-"
+ },
+ {
+ "npc_id": "812",
+ "loc_data": "{2738,3473,0,0,1}-{2733,3473,0,0,1}-"
+ },
+ {
+ "npc_id": "820",
+ "loc_data": "{2697,3496,0,0,0}-"
+ },
+ {
+ "npc_id": "822",
+ "loc_data": "{3302,9466,0,1,6}-"
+ },
+ {
+ "npc_id": "827",
+ "loc_data": "{3273,9417,0,1,6}-{3289,9443,0,1,4}-"
+ },
+ {
+ "npc_id": "830",
+ "loc_data": "{3271,3028,0,1,4}-"
+ },
+ {
+ "npc_id": "831",
+ "loc_data": "{3291,3032,1,0,1}-"
+ },
+ {
+ "npc_id": "832",
+ "loc_data": "{3171,3025,0,1,4}-"
+ },
+ {
+ "npc_id": "833",
+ "loc_data": "{3167,3033,0,1,2}-{3170,3027,0,1,5}-{3174,3028,0,1,6}-"
+ },
+ {
+ "npc_id": "834",
+ "loc_data": "{3170,3045,0,0,3}-"
+ },
+ {
+ "npc_id": "836",
+ "loc_data": "{3304,3124,0,1,6}-"
+ },
+ {
+ "npc_id": "837",
+ "loc_data": "{3305,3121,0,1,0}-{3301,3120,0,1,1}-{3302,3123,0,1,6}-{3307,3125,0,1,1}-"
+ },
+ {
+ "npc_id": "838",
+ "loc_data": "{3306,3117,0,1,4}-"
+ },
+ {
+ "npc_id": "839",
+ "loc_data": "{3265,3066,0,1,0}-{3267,3066,0,1,0}-{3310,3068,0,1,0}-{3322,3011,0,1,0}-{3322,3052,0,1,0}-{3324,3030,0,1,0}-{3150,3044,0,1,0}-{3172,3009,0,1,0}-{3197,3012,0,1,0}-{3198,3040,0,1,0}-{3217,3092,0,1,0}-{3235,3074,0,1,0}-{3252,3125,0,1,0}-{3258,3078,0,1,0}-{3237,2968,0,1,0}-{3224,3013,0,1,0}-{3225,3034,0,1,0}-{3226,3060,0,1,0}-{3250,3057,0,1,0}-{3283,3108,0,1,0}-{3323,3094,0,1,0}-"
+ },
+ {
+ "npc_id": "840",
+ "loc_data": "{3268,3052,0,1,0}-{3281,3056,0,1,0}-{3307,3055,0,1,0}-{3318,3020,0,1,0}-{3318,3040,0,1,0}-{3190,3054,0,1,0}-{3192,3016,0,1,0}-{3217,3111,0,1,0}-{3222,3086,0,1,0}-{3238,3101,0,1,0}-{3244,3080,0,1,0}-{3253,3116,0,1,0}-{3255,3095,0,1,0}-{3237,3000,0,1,0}-{3245,2960,0,1,0}-{3208,3032,0,1,0}-{3217,3064,0,1,0}-{3238,3015,0,1,0}-{3258,3063,0,1,0}-{3267,3077,0,1,0}-{3269,3110,0,1,0}-{3275,3094,0,1,0}-{3291,3078,0,1,0}-{3291,3100,0,1,0}-{3305,3089,0,1,0}-{3318,3078,0,1,0}-{3321,3104,0,1,0}-"
+ },
+ {
+ "npc_id": "841",
+ "loc_data": "{3288,3022,0,1,1}-"
+ },
+ {
+ "npc_id": "843",
+ "loc_data": "{2644,3274,0,1,3}-{2644,3276,0,1,5}-{2647,3271,0,1,6}-"
+ },
+ {
+ "npc_id": "844",
+ "loc_data": "{2683,3323,0,0,0}-"
+ },
+ {
+ "npc_id": "845",
+ "loc_data": "{2635,3311,0,0,0}-"
+ },
+ {
+ "npc_id": "846",
+ "loc_data": "{2787,3184,0,1,4}-"
+ },
+ {
+ "npc_id": "847",
+ "loc_data": "{3143,3447,0,1,5}-"
+ },
+ {
+ "npc_id": "848",
+ "loc_data": "{2480,3489,1,1,3}-"
+ },
+ {
+ "npc_id": "849",
+ "loc_data": "{2417,3498,1,1,0}-{2482,3487,1,1,0}-{2482,3489,1,1,0}-"
+ },
+ {
+ "npc_id": "850",
+ "loc_data": "{2439,3502,1,0,4}-"
+ },
+ {
+ "npc_id": "851",
+ "loc_data": "{2449,3503,1,1,4}-"
+ },
+ {
+ "npc_id": "852",
+ "loc_data": "{2615,2987,0,1,0}-{2568,9432,0,1,0}-{2573,9447,0,1,0}-{2579,9441,0,1,0}-{2580,9431,0,1,0}-{2611,9454,0,1,0}-{2616,9447,0,1,0}-{2505,3032,0,1,0}-{2512,3022,0,1,0}-{2518,3041,0,1,0}-{2528,3044,0,1,0}-"
+ },
+ {
+ "npc_id": "853",
+ "loc_data": "{2506,3115,0,1,3}-"
+ },
+ {
+ "npc_id": "854",
+ "loc_data": "{2511,3085,0,1,4}-"
+ },
+ {
+ "npc_id": "855",
+ "loc_data": "{2576,3027,0,1,3}-"
+ },
+ {
+ "npc_id": "856",
+ "loc_data": "{2577,3021,0,1,1}-"
+ },
+ {
+ "npc_id": "858",
+ "loc_data": "{2549,3029,0,1,0}-{2551,3031,0,1,0}-"
+ },
+ {
+ "npc_id": "859",
+ "loc_data": "{2505,3062,0,1,0}-{2507,3062,0,1,0}-"
+ },
+ {
+ "npc_id": "860",
+ "loc_data": "{2501,3012,0,1,0}-{2503,3011,0,1,0}-"
+ },
+ {
+ "npc_id": "861",
+ "loc_data": "{2526,3018,0,1,0}-{2529,3019,0,1,0}-"
+ },
+ {
+ "npc_id": "862",
+ "loc_data": "{2541,3034,0,1,3}-{2541,3029,0,1,3}-{2543,3031,0,1,3}-"
+ },
+ {
+ "npc_id": "870",
+ "loc_data": "{2507,3040,0,1,0}-{2507,3036,0,1,0}-"
+ },
+ {
+ "npc_id": "872",
+ "loc_data": "{2547,3117,2,1,3}-{2547,3112,2,1,6}-{2544,3114,2,1,3}-{2547,3118,2,1,3}-"
+ },
+ {
+ "npc_id": "873",
+ "loc_data": "{2518,3035,0,1,1}-"
+ },
+ {
+ "npc_id": "874",
+ "loc_data": "{2528,3048,0,1,6}-"
+ },
+ {
+ "npc_id": "875",
+ "loc_data": "{2513,3034,0,1,1}-"
+ },
+ {
+ "npc_id": "876",
+ "loc_data": "{2525,3043,0,1,3}-"
+ },
+ {
+ "npc_id": "877",
+ "loc_data": "{2536,3092,0,1,1}-{2534,3091,0,1,1}-{2550,3118,0,1,4}-{2543,3117,0,1,3}-{2546,3113,0,1,4}-"
+ },
+ {
+ "npc_id": "878",
+ "loc_data": "{2534,3092,0,1,1}-"
+ },
+ {
+ "npc_id": "881",
+ "loc_data": "{3112,3162,1,0,0}-"
+ },
+ {
+ "npc_id": "882",
+ "loc_data": "{3203,3424,0,0,6}-"
+ },
+ {
+ "npc_id": "883",
+ "loc_data": "{3204,3470,0,1,3}-"
+ },
+ {
+ "npc_id": "884",
+ "loc_data": "{3204,3495,2,1,6}-"
+ },
+ {
+ "npc_id": "885",
+ "loc_data": "{2565,3271,0,0,0}-{2573,3268,1,0,0}-"
+ },
+ {
+ "npc_id": "887",
+ "loc_data": "{2570,3275,0,1,3}-"
+ },
+ {
+ "npc_id": "888",
+ "loc_data": "{2565,3273,0,0,0}-"
+ },
+ {
+ "npc_id": "889",
+ "loc_data": "{2571,3270,0,0,0}-"
+ },
+ {
+ "npc_id": "890",
+ "loc_data": "{2569,3272,0,0,0}-{2573,3269,1,0,0}-"
+ },
+ {
+ "npc_id": "895",
+ "loc_data": "{2929,3456,0,1,4}-"
+ },
+ {
+ "npc_id": "902",
+ "loc_data": "{2535,4715,0,1,6}-"
+ },
+ {
+ "npc_id": "903",
+ "loc_data": "{2541,4715,0,1,3}-"
+ },
+ {
+ "npc_id": "904",
+ "loc_data": "{2507,4693,0,1,3}-"
+ },
+ {
+ "npc_id": "905",
+ "loc_data": "{2540,4719,0,1,6}-"
+ },
+ {
+ "npc_id": "912",
+ "loc_data": "{3100,3927,0,1,0}-{3102,3938,0,1,0}-{3116,3934,0,1,0}-"
+ },
+ {
+ "npc_id": "913",
+ "loc_data": "{3098,3925,0,1,0}-{3100,3940,0,1,0}-{3110,3934,0,1,0}-"
+ },
+ {
+ "npc_id": "914",
+ "loc_data": "{3098,3942,0,1,0}-{3102,3929,0,1,0}-{3113,3934,0,1,0}-"
+ },
+ {
+ "npc_id": "915",
+ "loc_data": "{3108,3264,0,1,2}-"
+ },
+ {
+ "npc_id": "916",
+ "loc_data": "{3122,3245,0,0,0}-"
+ },
+ {
+ "npc_id": "917",
+ "loc_data": "{3125,3250,0,1,6}-{3122,3249,0,1,6}-"
+ },
+ {
+ "npc_id": "918",
+ "loc_data": "{3048,3209,1,1,3}-"
+ },
+ {
+ "npc_id": "919",
+ "loc_data": "{3128,3245,0,1,4}-"
+ },
+ {
+ "npc_id": "920",
+ "loc_data": "{3123,3241,0,1,1}-"
+ },
+ {
+ "npc_id": "922",
+ "loc_data": "{3086,3261,0,1,7}-"
+ },
+ {
+ "npc_id": "923",
+ "loc_data": "{3302,3163,0,0,0}-"
+ },
+ {
+ "npc_id": "924",
+ "loc_data": "{3286,3180,0,0,0}-"
+ },
+ {
+ "npc_id": "925",
+ "loc_data": "{3267,3226,0,0,3}-{3266,3229,0,0,3}-{3269,3229,0,0,4}-{3268,3226,0,0,4}-"
+ },
+ {
+ "npc_id": "931",
+ "loc_data": "{2842,2935,0,0,0}-{2842,2929,0,0,0}-{2792,2929,0,0,0}-{2815,2935,0,0,0}-"
+ },
+ {
+ "npc_id": "933",
+ "loc_data": "{2725,3367,0,0,2}-{2725,3380,2,0,6}-"
+ },
+ {
+ "npc_id": "941",
+ "loc_data": "{3340,3678,0,1,1}-{3339,3695,0,1,6}-{3344,3705,0,1,3}-{3118,3820,0,1,0}-{2982,3618,0,1,3}-{3307,5462,0,1,0}-"
+ },
+ {
+ "npc_id": "942",
+ "loc_data": "{3074,3086,0,0,0}-"
+ },
+ {
+ "npc_id": "943",
+ "loc_data": "{3103,3096,0,0,0}-"
+ },
+ {
+ "npc_id": "944",
+ "loc_data": "{3107,9511,0,1,5}-"
+ },
+ {
+ "npc_id": "945",
+ "loc_data": "{3093,3107,0,0,0}-"
+ },
+ {
+ "npc_id": "946",
+ "loc_data": "{3141,3090,0,0,6}-"
+ },
+ {
+ "npc_id": "947",
+ "loc_data": "{3127,3124,0,0,3}-"
+ },
+ {
+ "npc_id": "948",
+ "loc_data": "{3084,9506,0,0,0}-"
+ },
+ {
+ "npc_id": "949",
+ "loc_data": "{3086,3122,0,0,0}-"
+ },
+ {
+ "npc_id": "952",
+ "loc_data": "{3101,3092,0,0,4}-"
+ },
+ {
+ "npc_id": "954",
+ "loc_data": "{3123,3107,0,1,5}-"
+ },
+ {
+ "npc_id": "955",
+ "loc_data": "{3176,3317,0,1,3}-{3169,3319,0,1,1}-"
+ },
+ {
+ "npc_id": "957",
+ "loc_data": "{3314,3241,0,0,1}-{3314,3240,1,0,0}-"
+ },
+ {
+ "npc_id": "958",
+ "loc_data": "{3383,3272,0,1,3}-"
+ },
+ {
+ "npc_id": "959",
+ "loc_data": "{3359,3272,0,1,5}-"
+ },
+ {
+ "npc_id": "960",
+ "loc_data": "{3370,3276,0,1,3}-"
+ },
+ {
+ "npc_id": "961",
+ "loc_data": "{3377,3276,0,1,4}-"
+ },
+ {
+ "npc_id": "962",
+ "loc_data": "{3362,3276,0,1,3}-"
+ },
+ {
+ "npc_id": "963",
+ "loc_data": "{3375,3274,0,1,2}-"
+ },
+ {
+ "npc_id": "970",
+ "loc_data": "{3081,3247,0,0,1}-"
+ },
+ {
+ "npc_id": "971",
+ "loc_data": "{2464,3287,0,1,0}-"
+ },
+ {
+ "npc_id": "1005",
+ "loc_data": "{3057,3905,0,1,3}-"
+ },
+ {
+ "npc_id": "1006",
+ "loc_data": "{2763,3284,0,1,0}-{2768,3274,0,1,0}-{2768,3288,0,1,0}-{2770,3277,0,1,0}-{2770,3290,0,1,0}-{2771,3279,0,1,0}-{2774,3291,0,1,0}-{2778,3285,0,1,0}-{2781,3278,0,1,0}-{2781,3285,0,1,0}-{2783,3275,0,1,0}-{2784,3279,0,1,0}-{2785,3276,0,1,0}-{2785,3287,0,1,0}-{2788,3274,0,1,0}-{2793,3275,0,1,0}-{2793,3280,0,1,0}-{2768,3282,1,1,0}-{2770,3282,1,1,0}-{2773,3291,1,1,0}-{2780,3283,1,1,0}-{2780,3290,1,1,0}-{2783,3286,1,1,0}-{2784,3279,1,1,0}-{2785,3282,1,1,0}-"
+ },
+ {
+ "npc_id": "1010",
+ "loc_data": "{2629,2979,0,1,0}-"
+ },
+ {
+ "npc_id": "1011",
+ "loc_data": "{2642,9394,0,1,0}-"
+ },
+ {
+ "npc_id": "1012",
+ "loc_data": "{2650,9393,0,1,0}-"
+ },
+ {
+ "npc_id": "1013",
+ "loc_data": "{2593,2971,0,1,0}-{2594,2971,0,1,0}-{2596,2961,0,1,0}-{2598,2971,0,1,0}-{2599,2960,0,1,0}-{2598,2960,0,1,0}-{2603,2966,0,1,0}-{2603,2970,0,1,0}-{2598,2960,0,1,0}-{2596,2963,0,1,0}-{2595,2964,0,1,0}-{2594,2964,0,1,0}-{2601,2964,0,1,0}-{2598,2969,0,1,0}-{2604,2971,0,1,0}-{2601,2972,0,1,0}-{2392,3057,0,1,0}-{2395,3056,0,1,0}-{2395,3052,0,1,0}-{2397,3048,0,1,0}-{2400,3050,0,1,0}-{2400,3053,0,1,0}-{2391,3052,0,1,0}-{2393,3047,0,1,0}-{2399,3046,0,1,0}-{2402,3044,0,1,0}-{2399,3040,0,1,0}-{2395,3042,0,1,0}-{2391,3045,0,1,0}-{2464,2912,0,1,0}-{2544,2904,0,1,0}-{2544,2988,0,1,0}-{2532,2983,0,1,0}-{2549,2983,0,1,0}-{2545,2983,0,1,0}-{2528,2986,0,1,0}-{2550,2979,0,1,0}-{2522,2978,0,1,0}-{2523,2976,0,1,0}-{2526,2974,0,1,0}-{2548,2990,0,1,0}-{2552,2988,0,1,0}-{2548,2979,0,1,0}-{2547,2991,0,1,0}-{2525,2975,0,1,0}-"
+ },
+ {
+ "npc_id": "1017",
+ "loc_data": "{3191,3277,0,1,0}-{3188,3279,0,1,0}-{3187,3277,0,1,0}-{3190,3278,0,1,0}-{3187,3277,0,1,0}-{3189,3278,0,1,3}-{3198,3359,0,1,0}-{2677,3656,0,1,2}-{2672,3654,0,1,2}-{2676,3652,0,1,4}-{2681,3652,0,1,4}-{2675,3652,0,1,3}-{3231,3296,0,1,6}-{3233,3300,0,1,4}-{3235,3293,0,1,3}-{3232,3288,0,1,0}-{3234,3298,0,1,6}-{3234,3297,0,1,3}-{3234,3292,0,1,4}-{3235,3289,0,1,1}-{2693,3271,0,1,3}-{2692,3272,0,1,3}-{2785,3069,0,1,4}-{2800,3072,0,1,6}-"
+ },
+ {
+ "npc_id": "1019",
+ "loc_data": "{3187,5555,0,1,4}-{3190,5563,0,1,1}-{3193,5555,0,1,3} -{3213,9377,0,1,3}-{3209,9397,0,1,4}-{3245,9401,0,1,6}- {3237,9402,0,1,2}-{3207,9349,0,1,3}-{3220,9347,0,1,6} -{3233,9359,0,1,4}-{3235,9354,0,0,6}-{3259,9370,0,1,1}- {3258,9387,0,1,6}-{2707,9880,0,1,0}-{2711,9876,0,1,0}- {2712,9871,0,1,0}-{2715,9874,0,1,0}-{2720,9871,0,1,0} -{2717,9880,0,1,0}-{2722,9879,0,1,0}-{2723,9875,0,1,0}- {3278,9368,0,1,5}-{3271,9359,0,1,3}-{3287,9359,0,1,5}- {3301,9394,0,1,5}-{3318,9352,0,1,5}-"
+ },
+ {
+ "npc_id": "1020",
+ "loc_data": "{2697,9913,0,1,0}-{2695,9907,0,1,0}-{2693,9901,0,1,0}-{2701,9902,0,1,0}-{2704,9908,0,1,0}-{2694,9889,0,1,0}-{2694,9879,0,1,0}-{2699,9875,0,1,0}-{2700,9869,0,1,0}-{2695,9870,0,1,0}-"
+ },
+ {
+ "npc_id": "1021",
+ "loc_data": "{2733,9882,0,1,0}-{2732,9888,0,1,0}-{2738,9889,0,1,0}-{2732,9892,0,1,0}-{2738,9894,0,1,0}-{2734,9896,0,1,0}-"
+ },
+ {
+ "npc_id": "1022",
+ "loc_data": "{2714,9904,0,1,0}-{2718,9906,0,1,0}-{2717,9902,0,1,0}-{2720,9904,0,1,0}-{2724,9903,0,1,0}-{2727,9905,0,1,0}-{2726,9907,0,1,0}-"
+ },
+ {
+ "npc_id": "1027",
+ "loc_data": "{2354,3608,0,0,0}-{3278,3155,0,0,0}-"
+ },
+ {
+ "npc_id": "1036",
+ "loc_data": "{3514,3478,0,0,0}-{3514,3479,0,0,0}-{3514,3480,0,0,0}-{3514,3481,0,0,0}-{3514,3482,0,0,0}-{3514,3483,0,0,0}-"
+ },
+ {
+ "npc_id": "1037",
+ "loc_data": "{2435,3412,0,1,3}-"
+ },
+ {
+ "npc_id": "1038",
+ "loc_data": "{3507,3496,1,1,1}-{3508,3494,0,1,1}-"
+ },
+ {
+ "npc_id": "1039",
+ "loc_data": "{3499,3506,1,1,5}-{3500,3505,0,1,5}-"
+ },
+ {
+ "npc_id": "1040",
+ "loc_data": "{3475,3494,0,1,6}-"
+ },
+ {
+ "npc_id": "1041",
+ "loc_data": "{3490,3503,1,0,0}-{3490,3500,0,1,4}-"
+ },
+ {
+ "npc_id": "1042",
+ "loc_data": "{3495,3469,0,1,3}-"
+ },
+ {
+ "npc_id": "1043",
+ "loc_data": "{3726,3381,0,0,0}-{3745,3359,0,0,0}-{3749,3365,0,0,0}-{3750,3354,0,0,0}-{3757,3363,0,0,0}-{3763,3337,0,0,0}-{3459,3457,0,0,0}-{3460,3462,0,0,0}-{3462,3459,0,0,0}-{3463,3490,0,0,0}-{3464,3511,0,0,0}-{3465,3466,0,0,0}-{3466,3495,0,0,0}-{3466,3497,0,0,0}-{3467,3485,0,0,0}-{3467,3497,0,0,0}-{3467,3509,0,0,0}-{3469,3470,0,0,0}-{3470,3469,0,0,0}-{3471,3477,0,0,0}-{3474,3505,0,0,0}-{3476,3507,0,0,0}-{3479,3511,0,0,0}-{3480,3468,0,0,0}-{3480,3470,0,0,0}-{3482,3469,0,0,0}-{3483,3511,0,0,0}-{3484,3464,0,0,0}-{3485,3509,0,0,0}-{3490,3461,0,0,0}-{3491,3460,0,0,0}-{3494,3461,0,0,0}-{3494,3512,0,0,0}-{3498,3461,0,0,0}-{3499,3513,0,0,0}-{3501,3513,0,0,0}-{3502,3464,0,0,0}-{3504,3463,0,0,0}-{3506,3512,0,0,0}-{3506,3515,0,0,0}-{3507,3515,0,0,0}-{3509,3512,0,0,0}-{3511,3488,0,0,0}-{3513,3467,0,0,0}-{3513,3487,0,0,0}-{3513,3489,0,0,0}-{3513,3503,0,0,0}-{3514,3490,0,0,0}-{3515,3495,0,0,0}-{3515,3499,0,0,0}-{3516,3469,0,0,0}-{3409,3369,0,0,0}-{3420,3349,0,0,0}-{3430,3340,0,0,0}-{3435,3330,0,0,0}-{3435,3359,0,0,0}-{3437,3374,0,0,0}-{3446,3385,0,0,0}-{3447,3388,0,0,0}-{3450,3370,0,0,0}-{3450,3387,0,0,0}-{3451,3336,0,0,0}-{3452,3355,0,0,0}-{3726,3289,0,0,0}-{3732,3291,0,0,0}-{3737,3280,0,0,0}-{3745,3285,0,0,0}-{3418,3420,0,0,0}-{3424,3452,0,0,0}-{3428,3409,0,0,0}-{3433,3416,0,0,0}-{3434,3394,0,0,0}-{3436,3407,0,0,0}-{3438,3414,0,0,0}-{3439,3449,0,0,0}-{3446,3439,0,0,0}-{3454,3410,0,0,0}-{3454,3423,0,0,0}-{2852,4561,0,0,0}-{2853,4566,0,0,0}-{2856,4568,0,0,0}-{2864,4561,0,0,0}-{2864,4563,0,0,0}-"
+ },
+ {
+ "npc_id": "1044",
+ "loc_data": "{3408,3484,0,1,6}-{3408,3493,0,1,1}-{3410,3489,1,1,3}-{3412,3487,1,1,4}-"
+ },
+ {
+ "npc_id": "1045",
+ "loc_data": "{3413,3489,0,1,3}-{3409,3485,1,1,4}-{3413,3489,1,1,1}-{3213,3476,0,1,3}-"
+ },
+ {
+ "npc_id": "1046",
+ "loc_data": "{3409,3489,0,1,4}-{3413,3485,0,1,4}-{3414,3491,1,1,6}-"
+ },
+ {
+ "npc_id": "1048",
+ "loc_data": "{3437,3486,0,0,0}-"
+ },
+ {
+ "npc_id": "1051",
+ "loc_data": "{3440,9738,1,1,0}-"
+ },
+ {
+ "npc_id": "1052",
+ "loc_data": "{3451,3380,0,1,0}-{3445,3374,0,1,0}-{3438,3365,0,1,0}-{3429,3367,0,1,0}-{3417,3367,0,1,0}-{3413,3362,0,1,0}-{3417,3358,0,1,0}-{3426,3352,0,1,0}-{3435,3349,0,1,0}-{3442,3353,0,1,0}-{3448,3358,0,1,0}-{3426,3338,0,1,0}-{3423,3335,0,1,0}-{3420,3442,0,1,0}-{3429,3436,0,1,0}-{3439,3437,0,1,0}-{3448,3444,0,1,0}-{3449,3420,0,1,0}-{3441,3421,0,1,0}-{3427,3421,0,1,0}-{3414,3422,0,1,0}-{3411,3423,0,1,0}-{3415,3414,0,1,0}-{3410,3409,0,1,0}-{3422,3405,0,1,0}-{3431,3402,0,1,0}-{3444,3405,0,1,0}-{3453,3397,0,1,0}-{3470,3385,0,1,0}-{3463,3379,0,1,0}-{3457,3355,0,1,0}-{3461,3348,0,1,0}-{3457,3343,0,1,0}-{3471,3344,0,1,0}-{3458,3433,0,1,0}-{3459,3419,0,1,0}-{3467,3402,0,1,0}-{3473,3395,0,1,0}-"
+ },
+ {
+ "npc_id": "1054",
+ "loc_data": "{3444,3459,0,0,0}-"
+ },
+ {
+ "npc_id": "1055",
+ "loc_data": "{2811,3191,0,0,0}-"
+ },
+ {
+ "npc_id": "1060",
+ "loc_data": "{2898,3528,0,0,1}-"
+ },
+ {
+ "npc_id": "1061",
+ "loc_data": "{2898,3532,0,0,4}-"
+ },
+ {
+ "npc_id": "1062",
+ "loc_data": "{2893,3540,0,0,3}-"
+ },
+ {
+ "npc_id": "1063",
+ "loc_data": "{2900,3531,0,0,7}-{2900,3533,0,0,7}-"
+ },
+ {
+ "npc_id": "1064",
+ "loc_data": "{2895,3537,0,0,1}-{2894,3537,0,0,1}-{2893,3537,0,0,1}-{2892,3537,0,0,1}-{2891,3537,0,0,1}-{2891,3538,0,0,1}-{2892,3538,0,0,1}-{2893,3538,0,0,1}-{2894,3538,0,0,1}-{2895,3538,0,0,1}-"
+ },
+ {
+ "npc_id": "1065",
+ "loc_data": "{2889,3529,0,1,1}-{2904,3538,0,1,6}-{2882,3531,0,1,4}-{2903,3544,0,1,4}-{2911,3542,0,1,4}-{2906,3540,0,1,3}-"
+ },
+ {
+ "npc_id": "1066",
+ "loc_data": "{2892,3532,0,0,4}-"
+ },
+ {
+ "npc_id": "1067",
+ "loc_data": "{2893,3533,0,0,6}-"
+ },
+ {
+ "npc_id": "1068",
+ "loc_data": "{2894,3532,0,0,3}-"
+ },
+ {
+ "npc_id": "1069",
+ "loc_data": "{2840,3589,0,0,3}-"
+ },
+ {
+ "npc_id": "1070",
+ "loc_data": "{2269,4758,0,1,3}-"
+ },
+ {
+ "npc_id": "1071",
+ "loc_data": "{2820,3554,0,1,1}-"
+ },
+ {
+ "npc_id": "1072",
+ "loc_data": "{2893,3558,0,1,3}-"
+ },
+ {
+ "npc_id": "1073",
+ "loc_data": "{2900,3549,0,0,3}-{2897,3549,0,0,4}-{2902,3568,1,1,3}-{2903,3559,1,1,3}-{2903,3557,1,1,3}-{2903,3569,1,1,3}-{2894,3559,1,1,3}-{2892,3557,1,0,3}-"
+ },
+ {
+ "npc_id": "1074",
+ "loc_data": "{2893,3569,1,1,3}-"
+ },
+ {
+ "npc_id": "1076",
+ "loc_data": "{2897,3556,0,0,6}-{2896,3566,0,0,6}-"
+ },
+ {
+ "npc_id": "1077",
+ "loc_data": "{2900,3556,0,0,6}-"
+ },
+ {
+ "npc_id": "1078",
+ "loc_data": "{2905,3540,1,1,0}-"
+ },
+ {
+ "npc_id": "1079",
+ "loc_data": "{2906,3537,0,1,5}-"
+ },
+ {
+ "npc_id": "1080",
+ "loc_data": "{2900,3567,1,1,0}-"
+ },
+ {
+ "npc_id": "1081",
+ "loc_data": "{2897,3565,0,1,4}-"
+ },
+ {
+ "npc_id": "1082",
+ "loc_data": "{2919,3576,0,0,0}-"
+ },
+ {
+ "npc_id": "1083",
+ "loc_data": "{2931,3546,0,1,3}-"
+ },
+ {
+ "npc_id": "1084",
+ "loc_data": "{2915,3549,0,1,0}-"
+ },
+ {
+ "npc_id": "1085",
+ "loc_data": "{2927,3558,0,1,6}-"
+ },
+ {
+ "npc_id": "1086",
+ "loc_data": "{2965,3262,0,1,4}-"
+ },
+ {
+ "npc_id": "1087",
+ "loc_data": "{2911,3540,0,1,7}-"
+ },
+ {
+ "npc_id": "1088",
+ "loc_data": "{2918,3545,0,1,0}-"
+ },
+ {
+ "npc_id": "1089",
+ "loc_data": "{2919,3529,0,1,0}-"
+ },
+ {
+ "npc_id": "1090",
+ "loc_data": "{2931,3566,0,1,1}-"
+ },
+ {
+ "npc_id": "1093",
+ "loc_data": "{2817,3560,0,1,3}-"
+ },
+ {
+ "npc_id": "1094",
+ "loc_data": "{2802,3841,0,1,0}-{2798,3842,0,1,0}-{2804,3843,0,1,0}-{2807,3843,0,1,0}-"
+ },
+ {
+ "npc_id": "1096",
+ "loc_data": "{2852,3591,0,1,7}-"
+ },
+ {
+ "npc_id": "1097",
+ "loc_data": "{2858,3596,0,1,4}-"
+ },
+ {
+ "npc_id": "1098",
+ "loc_data": "{2868,3591,0,1,6}-"
+ },
+ {
+ "npc_id": "1099",
+ "loc_data": "{2857,3589,0,0,0}-"
+ },
+ {
+ "npc_id": "1100",
+ "loc_data": "{2859,3589,0,0,0}-"
+ },
+ {
+ "npc_id": "1101",
+ "loc_data": "{2854,3600,0,0,1}-"
+ },
+ {
+ "npc_id": "1102",
+ "loc_data": "{2859,3600,0,0,1}-"
+ },
+ {
+ "npc_id": "1103",
+ "loc_data": "{2863,3600,0,0,1}-"
+ },
+ {
+ "npc_id": "1104",
+ "loc_data": "{2867,3600,0,0,1}-"
+ },
+ {
+ "npc_id": "1105",
+ "loc_data": "{2870,3600,0,0,1}-{2851,3598,0,0,1}-"
+ },
+ {
+ "npc_id": "1106",
+ "loc_data": "{2864,3594,0,1,1}-{2857,3587,0,1,7}-{2855,3596,0,1,4}-{2843,3682,0,1,1}-{2827,10078,1,1,6}-{2881,3592,0,1,5}-{2916,3631,0,1,0}-{2769,10149,0,1,0}-{2777,10142,0,1,0}-"
+ },
+ {
+ "npc_id": "1107",
+ "loc_data": "{2874,3595,0,1,3}-{2875,3596,0,1,1}-{2873,3598,0,1,1}-{2845,3674,0,1,4}-{2836,10088,1,1,5}-{2917,3634,0,1,0}-{2781,10143,0,1,0}-"
+ },
+ {
+ "npc_id": "1108",
+ "loc_data": "{2878,3592,0,1,6}-{2861,3586,0,1,6}-{2852,3673,0,1,2}-{2855,10058,2,1,4}-{2783,10140,0,1,0}-"
+ },
+ {
+ "npc_id": "1109",
+ "loc_data": "{2875,3588,0,1,1}-{2851,3667,0,1,3}-{2825,10087,1,1,3}-{2836,10080,1,1,6}-{2883,3586,0,1,6}-{2909,3641,0,1,0}-{2923,10029,0,1,7}-{2784,10040,2,1,3}-{2784,10134,0,1,0}-"
+ },
+ {
+ "npc_id": "1110",
+ "loc_data": "{2869,3594,0,1,3}-{2861,3587,0,1,4}-{2872,3594,0,1,5}-{2829,10080,1,1,6}-{2836,10097,2,1,4}-{2852,10110,2,1,4}-{2883,3591,0,1,4}-{2771,10143,0,1,0}-"
+ },
+ {
+ "npc_id": "1111",
+ "loc_data": "{2863,3588,0,1,6}-{2865,3591,0,1,0}-{2866,3598,0,1,1}-{2855,3685,0,1,1}-{2840,10101,1,1,4}-{2857,10055,2,1,3}-{2836,10090,2,1,1}-{2925,10033,0,1,6}-{2788,10131,0,1,0}-"
+ },
+ {
+ "npc_id": "1112",
+ "loc_data": "{2867,3595,0,1,6}-{2871,3597,0,1,4}-{2832,10089,1,1,1}-{2836,10077,2,1,1}-{2925,10030,0,1,1}-"
+ },
+ {
+ "npc_id": "1113",
+ "loc_data": "{2829,10083,0,1,0}-"
+ },
+ {
+ "npc_id": "1114",
+ "loc_data": "{2827,10077,0,1,0}-"
+ },
+ {
+ "npc_id": "1115",
+ "loc_data": "{2831,10086,2,0,0}-"
+ },
+ {
+ "npc_id": "1116",
+ "loc_data": "{2822,10073,2,0,0}-"
+ },
+ {
+ "npc_id": "1117",
+ "loc_data": "{2829,10100,2,0,0}-"
+ },
+ {
+ "npc_id": "1118",
+ "loc_data": "{2906,3623,0,0,6}-"
+ },
+ {
+ "npc_id": "1119",
+ "loc_data": "{2920,3622,0,0,3}-"
+ },
+ {
+ "npc_id": "1120",
+ "loc_data": "{2923,3616,0,0,3}-"
+ },
+ {
+ "npc_id": "1121",
+ "loc_data": "{2923,3612,0,0,3}-"
+ },
+ {
+ "npc_id": "1122",
+ "loc_data": "{2916,3601,0,0,0}-"
+ },
+ {
+ "npc_id": "1123",
+ "loc_data": "{2902,3604,0,0,1}-"
+ },
+ {
+ "npc_id": "1124",
+ "loc_data": "{2922,3606,0,0,3}-"
+ },
+ {
+ "npc_id": "1125",
+ "loc_data": "{2911,3612,0,0,3}-"
+ },
+ {
+ "npc_id": "1128",
+ "loc_data": "{2832,10079,0,0,4}-"
+ },
+ {
+ "npc_id": "1129",
+ "loc_data": "{2832,10083,0,0,4}-"
+ },
+ {
+ "npc_id": "1130",
+ "loc_data": "{2902,3696,0,0,1}-"
+ },
+ {
+ "npc_id": "1131",
+ "loc_data": "{2898,3698,0,0,1}-"
+ },
+ {
+ "npc_id": "1132",
+ "loc_data": "{2893,3700,0,0,1}-"
+ },
+ {
+ "npc_id": "1133",
+ "loc_data": "{2889,3699,0,0,1}-"
+ },
+ {
+ "npc_id": "1134",
+ "loc_data": "{2886,3698,0,0,1}-"
+ },
+ {
+ "npc_id": "1135",
+ "loc_data": "{2843,10057,1,0,0}-"
+ },
+ {
+ "npc_id": "1136",
+ "loc_data": "{2840,10056,1,0,0}-"
+ },
+ {
+ "npc_id": "1137",
+ "loc_data": "{2847,10056,1,0,0}-"
+ },
+ {
+ "npc_id": "1138",
+ "loc_data": "{2826,10083,1,1,0}-{2837,10083,2,1,1}-{2904,3642,0,1,3}-{2923,10031,0,1,3}-"
+ },
+ {
+ "npc_id": "1139",
+ "loc_data": "{2854,3689,0,0,6}-"
+ },
+ {
+ "npc_id": "1140",
+ "loc_data": "{2819,3586,0,1,4}-{2856,10054,1,0,0}-{2860,10057,1,0,0}-{2892,3685,0,1,0}-{2900,3671,0,1,0}-"
+ },
+ {
+ "npc_id": "1141",
+ "loc_data": "{2857,10059,1,0,0}-{2857,10057,1,0,0}-{2893,3678,0,1,0}-"
+ },
+ {
+ "npc_id": "1142",
+ "loc_data": "{2851,10089,0,1,1}-{2854,10092,0,1,3}-"
+ },
+ {
+ "npc_id": "1143",
+ "loc_data": "{2850,10088,0,1,3}-{2854,10086,0,1,6}-"
+ },
+ {
+ "npc_id": "1144",
+ "loc_data": "{2856,10089,0,1,4}-{2858,10089,0,1,6}-"
+ },
+ {
+ "npc_id": "1146",
+ "loc_data": "{2864,10081,0,1,7}-"
+ },
+ {
+ "npc_id": "1147",
+ "loc_data": "{2853,10076,0,1,5}-"
+ },
+ {
+ "npc_id": "1148",
+ "loc_data": "{2858,10082,0,1,3}-"
+ },
+ {
+ "npc_id": "1149",
+ "loc_data": "{2861,10085,0,1,2}-"
+ },
+ {
+ "npc_id": "1150",
+ "loc_data": "{2857,10075,0,1,1}-"
+ },
+ {
+ "npc_id": "1151",
+ "loc_data": "{2845,10058,1,0,0}-"
+ },
+ {
+ "npc_id": "1153",
+ "loc_data": "{3489,9509,2,1,4}-{3499,9515,2,1,6}-{3505,9527,2,1,5}-{3510,9521,2,1,1}-{3490,9526,2,1,3}-{3475,9524,2,1,5}-{3465,9505,2,1,1}-{3479,9501,2,1,3}-{3487,9491,2,1,3}-"
+ },
+ {
+ "npc_id": "1154",
+ "loc_data": "{3472,9501,2,1,3}-{3495,9494,2,1,4}-{3479,9484,2,1,1}-{3500,9477,2,1,6}-{3470,9482,2,1,6}-{3465,9481,2,1,3}-{3465,9491,2,1,6}-{3468,9488,2,1,0}-"
+ },
+ {
+ "npc_id": "1155",
+ "loc_data": "{3505,9496,2,1,6}-{3513,9496,2,1,7}-"
+ },
+ {
+ "npc_id": "1157",
+ "loc_data": "{3480,9508,0,1,0}-{3495,9505,0,1,2}-{3492,9490,0,1,1}-{3472,9497,0,1,6}-"
+ },
+ {
+ "npc_id": "1158",
+ "loc_data": "{3484,9491,0,1,2}-"
+ },
+ {
+ "npc_id": "1161",
+ "loc_data": "{3487,9526,2,1,5}-{3474,9519,2,1,1}-{3465,9512,2,1,0}-{3489,9501,2,1,4}-{3494,9501,2,1,3}-{3480,9489,2,1,6}-{3483,9477,2,1,3}-{3494,9476,2,1,3}-{3473,9487,0,1,3}-{3476,9496,0,1,6}-{3473,9501,0,1,7}-{3481,9504,0,1,6}-{3488,9514,0,1,6}-{3497,9501,0,1,3}-{3486,9490,0,1,0}-"
+ },
+ {
+ "npc_id": "1162",
+ "loc_data": "{2781,3088,1,1,0}-"
+ },
+ {
+ "npc_id": "1164",
+ "loc_data": "{2780,3058,0,1,0}-"
+ },
+ {
+ "npc_id": "1171",
+ "loc_data": "{2766,3168,0,1,6}-"
+ },
+ {
+ "npc_id": "1172",
+ "loc_data": "{2909,3086,0,0,0}-"
+ },
+ {
+ "npc_id": "1174",
+ "loc_data": "{2792,3015,0,0,0}-{2792,3019,0,0,0}-{2801,3010,0,0,0}-{2801,3010,0,0,4}-"
+ },
+ {
+ "npc_id": "1176",
+ "loc_data": "{2928,3112,0,0,0}-"
+ },
+ {
+ "npc_id": "1177",
+ "loc_data": "{2912,3119,0,0,0}-"
+ },
+ {
+ "npc_id": "1178",
+ "loc_data": "{2768,3165,0,0,0}-"
+ },
+ {
+ "npc_id": "1179",
+ "loc_data": "{2941,3100,0,1,6}-"
+ },
+ {
+ "npc_id": "1180",
+ "loc_data": "{2916,3110,0,1,7}-"
+ },
+ {
+ "npc_id": "1181",
+ "loc_data": "{2902,3101,0,1,1}-{2922,3105,0,1,6}-"
+ },
+ {
+ "npc_id": "1183",
+ "loc_data": "{2206,3258,0,1,3}-{2200,3261,0,1,3}-{2193,3253,0,1,3}-{2192,3243,0,1,3}-"
+ },
+ {
+ "npc_id": "1184",
+ "loc_data": "{2192,3249,0,1,3}-{2200,3249,0,1,3}-{2195,3247,0,1,3}-{2212,3258,0,1,3}-"
+ },
+ {
+ "npc_id": "1192",
+ "loc_data": "{2924,3506,0,1,0}-{2927,3498,0,0,0}-{2297,3176,0,1,6}-"
+ },
+ {
+ "npc_id": "1193",
+ "loc_data": "{2297,3176,0,1,6}-"
+ },
+ {
+ "npc_id": "1194",
+ "loc_data": "{2298,3177,0,1,4}-"
+ },
+ {
+ "npc_id": "1195",
+ "loc_data": "{2215,3171,0,1,4}-{2200,3224,0,1,0}-{2293,3156,0,1,3}-"
+ },
+ {
+ "npc_id": "1196",
+ "loc_data": "{2217,3171,0,1,0}-{2199,3222,0,1,0}-{2201,3218,0,1,0}-{2291,3156,0,1,0}-"
+ },
+ {
+ "npc_id": "1197",
+ "loc_data": "{2197,3218,0,1,0}-{2292,3153,0,1,0}-"
+ },
+ {
+ "npc_id": "1198",
+ "loc_data": "{2296,3192,0,1,2}-"
+ },
+ {
+ "npc_id": "1199",
+ "loc_data": "{2194,3255,0,0,6}-{2262,3151,0,1,0}-"
+ },
+ {
+ "npc_id": "1201",
+ "loc_data": "{2198,3250,0,0,6}-{2203,3250,0,0,4}-{2264,3147,0,1,1}-{2266,3145,0,1,4}-"
+ },
+ {
+ "npc_id": "1202",
+ "loc_data": "{2352,3172,0,1,4}-"
+ },
+ {
+ "npc_id": "1203",
+ "loc_data": "{2189,3155,0,0,1}-{2183,3156,0,1,4}-{2194,3156,0,1,6}-{2182,3148,0,1,4}-{2179,3137,0,1,3}-{2189,3136,0,1,3}-{2182,3146,0,1,3}-{2187,3172,0,0,1}-{2180,3180,0,1,1}-"
+ },
+ {
+ "npc_id": "1205",
+ "loc_data": "{3054,3254,0,0,0}-"
+ },
+ {
+ "npc_id": "1206",
+ "loc_data": "{2185,3144,0,0,4}-"
+ },
+ {
+ "npc_id": "1207",
+ "loc_data": "{3055,3254,0,0,0}-"
+ },
+ {
+ "npc_id": "1208",
+ "loc_data": "{2194,3140,0,1,5}-"
+ },
+ {
+ "npc_id": "1211",
+ "loc_data": "{2914,3418,0,0,6}-"
+ },
+ {
+ "npc_id": "1212",
+ "loc_data": "{2247,3226,0,0,0}-{2249,3227,0,0,0}-{2249,3258,0,0,0}-{2251,3260,0,0,0}-{2259,3211,0,0,0}-{2267,3223,0,0,0}-{2267,3225,0,0,0}-{2298,3262,0,0,0}-{3202,5990,0,0,0}-{3232,5977,0,0,0}-{3234,5969,0,0,0}-{3237,5995,0,0,0}-{3242,5997,0,0,0}-{3244,5995,0,0,0}-{3245,5995,0,0,0}-{2194,3189,0,0,0}-{2196,3187,0,0,0}-{2196,3189,0,0,0}-{2206,3164,0,0,0}-{2209,3164,0,0,0}-{2216,3142,0,0,0}-{2218,3139,0,0,0}-{2178,3238,0,0,0}-{2208,3225,0,0,0}-{2210,3217,0,0,0}-{2213,3243,0,0,0}-{2218,3245,0,0,0}-{2220,3243,0,0,0}-{2221,3243,0,0,0}-{2695,6170,0,0,0}-{2697,6171,0,0,0}-{2697,6202,0,0,0}-{2699,6204,0,0,0}-{2707,6155,0,0,0}-{2715,6167,0,0,0}-{2715,6169,0,0,0}-{2746,6206,0,0,0}-{2729,6086,0,0,0}-{2731,6080,0,0,0}-{2731,6089,0,0,0}-{2744,6139,0,0,0}-{3271,5978,0,0,0}-{3273,5979,0,0,0}-{3273,6010,0,0,0}-{3275,6012,0,0,0}-{3283,5963,0,0,0}-{3291,5975,0,0,0}-{3291,5977,0,0,0}-{3322,6014,0,0,0}-{2281,3142,0,0,0}-{2283,3136,0,0,0}-{2283,3145,0,0,0}-{2296,3195,0,0,0}-"
+ },
+ {
+ "npc_id": "1213",
+ "loc_data": "{2248,3225,0,0,0}-{2248,3227,0,0,0}-{2251,3257,0,0,0}-{2253,3259,0,0,0}-{2268,3224,0,0,0}-{2291,3262,0,0,0}-{3204,5988,0,0,0}-{3232,5979,0,0,0}-{3234,5967,0,0,0}-{3234,5976,0,0,0}-{3238,5996,0,0,0}-{3239,5997,0,0,0}-{3243,5996,0,0,0}-{2192,3188,0,0,0}-{2192,3191,0,0,0}-{2194,3190,0,0,0}-{2208,3163,0,0,0}-{2209,3163,0,0,0}-{2216,3136,0,0,0}-{2216,3140,0,0,0}-{2180,3236,0,0,0}-{2208,3227,0,0,0}-{2210,3215,0,0,0}-{2210,3224,0,0,0}-{2214,3244,0,0,0}-{2215,3245,0,0,0}-{2219,3244,0,0,0}-{2696,6169,0,0,0}-{2696,6171,0,0,0}-{2699,6201,0,0,0}-{2701,6203,0,0,0}-{2716,6168,0,0,0}-{2739,6206,0,0,0}-{2730,6084,0,0,0}-{3272,5977,0,0,0}-{3272,5979,0,0,0}-{3275,6009,0,0,0}-{3277,6011,0,0,0}-{3292,5976,0,0,0}-{3315,6014,0,0,0}-{2282,3140,0,0,0}-"
+ },
+ {
+ "npc_id": "1214",
+ "loc_data": "{2891,3676,0,0,1}-"
+ },
+ {
+ "npc_id": "1215",
+ "loc_data": "{2612,3287,0,0,0}-{2613,3287,0,0,0}-"
+ },
+ {
+ "npc_id": "1216",
+ "loc_data": "{2611,3285,0,0,0}-"
+ },
+ {
+ "npc_id": "1217",
+ "loc_data": "{3000,3386,0,1,0}-{3019,3368,0,1,0}-"
+ },
+ {
+ "npc_id": "1218",
+ "loc_data": "{3412,3512,0,1,4}-{3412,3515,0,1,1}-{3413,3514,0,1,6}-{3414,3512,0,1,5}-{3415,3518,0,1,5}-{3416,3509,0,1,7}-{3416,3511,0,1,4}-{3417,3518,0,1,4}-{3418,3509,0,1,4}-{3419,3512,0,1,7}-{3420,3517,0,1,7}-{3420,3518,0,1,6}-{3423,3461,0,1,5}-{3426,3465,0,1,4}-{3427,3463,0,1,5}-{3428,3458,0,1,4}-{3428,3465,0,1,2}-{3430,3462,0,1,1}-{3430,3467,0,1,3}-{3433,3458,0,1,1}-{3433,3468,0,1,4}-{3434,3464,0,1,6}-"
+ },
+ {
+ "npc_id": "1219",
+ "loc_data": "{3588,3461,0,1,0}-{3589,3493,0,1,0}-{3590,3509,0,1,0}-{3596,3476,0,1,0}-{3599,3483,0,1,0}-{3607,3460,0,1,0}-{3613,3499,0,1,0}-{3614,3515,0,1,0}-{3620,3472,0,1,0}-{3623,3504,0,1,0}-{3626,3475,0,1,0}-{3626,3491,0,1,0}-{3629,3511,0,1,0}-{3633,3463,0,1,0}-{3644,3498,0,1,0}-{3537,3496,0,1,0}-{3545,3502,0,1,0}-{3546,3462,0,1,0}-{3548,3480,0,1,0}-{3551,3489,0,1,0}-{3554,3506,0,1,0}-{3560,3462,0,1,0}-{3566,3483,0,1,0}-{3567,3474,0,1,0}-{3572,3492,0,1,0}-{3574,3507,0,1,0}-"
+ },
+ {
+ "npc_id": "1221",
+ "loc_data": "{3597,3489,0,1,0}-{3611,3462,0,1,0}-{3620,3500,0,1,0}-{3636,3484,0,1,0}-{3566,3457,0,1,0}-{3567,3503,0,1,0}-"
+ },
+ {
+ "npc_id": "1223",
+ "loc_data": "{3585,3478,0,1,0}-{3586,3480,0,1,0}-{3586,3496,0,1,0}-{3592,3477,0,1,0}-{3593,3458,0,1,0}-{3593,3508,0,1,0}-{3595,3491,0,1,0}-{3597,3479,0,1,0}-{3607,3466,0,1,0}-{3617,3477,0,1,0}-{3618,3514,0,1,0}-{3631,3471,0,1,0}-{3631,3499,0,1,0}-{3632,3459,0,1,0}-{3632,3475,0,1,0}-{3638,3472,0,1,0}-{3646,3467,0,1,0}-"
+ },
+ {
+ "npc_id": "1227",
+ "loc_data": "{3424,3318,0,1,0}-{3423,3312,0,1,4}-{3494,3388,0,1,0}-{3507,3435,0,1,4}-{3511,3455,0,1,0}-{3508,3420,0,1,3}-{3508,3420,0,1,4}-{3506,3402,0,1,7}-{3502,3392,0,1,3}-{3484,3456,0,1,0}-{3486,3458,0,1,4}-"
+ },
+ {
+ "npc_id": "1228",
+ "loc_data": "{3469,3346,0,1,0}-{3494,3447,0,1,0}-{3530,3440,0,1,0}-{3556,3453,0,1,0}-"
+ },
+ {
+ "npc_id": "1229",
+ "loc_data": "{3421,3302,0,1,4}-{3417,3291,0,1,4}-{3423,3288,0,1,4}-{3418,3284,0,1,6}-{3427,3298,0,1,3}-{3431,3303,0,1,1}-{3432,3311,0,1,1}-{3502,3455,0,1,2}-{3516,3415,0,1,4}-{3511,3401,0,1,1}-{3492,3457,0,1,1}-"
+ },
+ {
+ "npc_id": "1230",
+ "loc_data": "{3419,3280,0,1,4}-{3421,3277,0,1,4}-{3431,3275,0,1,3}-{3428,3314,0,1,1}-{3436,3318,0,1,5}-{3434,3322,0,1,6}-{3496,3447,0,1,7}-{3520,3437,0,1,4}-"
+ },
+ {
+ "npc_id": "1231",
+ "loc_data": "{3429,3313,0,1,0}-{3429,3314,0,1,0}-{3437,3312,0,1,0}-{3437,3311,0,1,0}-{3451,3308,0,1,0}-{3447,3268,0,1,0}-{3438,3354,0,1,0}-{3504,3437,0,1,0}-{3509,3437,0,1,0}-{3498,3419,0,1,0}-{3493,3413,0,1,0}-{3524,3397,0,1,0}-"
+ },
+ {
+ "npc_id": "1232",
+ "loc_data": "{3441,3265,0,1,5}-{3438,3277,0,1,7}-{3438,3283,0,1,4}-{3439,3315,0,1,3}-{3439,3310,0,1,1}-{3435,3302,0,1,3}-{3508,3420,0,1,1}-{3514,3415,0,1,7}-{3525,3417,0,1,3}-"
+ },
+ {
+ "npc_id": "1233",
+ "loc_data": "{3485,3443,0,1,0}-{3516,3441,0,1,0}-{3537,3428,0,1,0}-"
+ },
+ {
+ "npc_id": "1234",
+ "loc_data": "{3446,3282,0,1,1}-{3446,3298,0,1,3}-{3449,3304,0,1,1}-{3513,3383,0,1,0}-{3491,3388,0,1,3}-{3493,3454,0,1,2}-{3493,3454,0,1,0}-{3518,3454,0,1,2}-{3519,3441,0,1,7}-{3506,3417,0,1,5}-{3519,3401,0,1,2}-{3499,3420,0,1,3}-{3516,3410,0,1,7}-{3520,3412,0,1,0}-"
+ },
+ {
+ "npc_id": "1235",
+ "loc_data": "{3425,3306,0,1,1}-{3442,3303,0,1,3}-{3437,3299,0,1,1}-{3422,3321,0,1,1}-{3509,3386,0,1,2}-{3503,3420,0,1,3}-{3514,3398,0,1,4}-{3486,3458,0,1,7}-{3524,3419,0,1,1}-"
+ },
+ {
+ "npc_id": "1239",
+ "loc_data": "{3166,3033,0,1,1}-{3174,3043,0,1,6}-{3177,3041,0,1,4}-{3176,3038,0,1,4}-{3177,3035,0,1,7}-{3183,3035,0,1,6}-{3182,3032,0,1,6}-"
+ },
+ {
+ "npc_id": "1240",
+ "loc_data": "{3502,3288,0,1,4}-{3505,3284,0,1,4}-{3490,3292,0,1,4}-{3502,3300,0,1,4}-{3492,3303,0,1,4}-{3516,3303,0,1,4}-{3478,3281,0,1,4}-{3473,3273,0,1,4}-{3469,3288,0,1,4}-{3469,3304,0,1,4}-"
+ },
+ {
+ "npc_id": "1251",
+ "loc_data": "{3474,3309,0,1,5}-{3486,3277,0,1,4}-{3496,3289,0,0,3}-"
+ },
+ {
+ "npc_id": "1253",
+ "loc_data": "{3488,3297,0,0,6}-"
+ },
+ {
+ "npc_id": "1257",
+ "loc_data": "{3490,3290,0,0,3}-{3487,3303,0,1,5}-{3496,3296,0,1,4}-{3479,3303,0,1,4}-{3498,3282,0,1,3}-{3473,3281,0,1,3}-{3478,3308,0,1,1}-"
+ },
+ {
+ "npc_id": "1258",
+ "loc_data": "{3488,3287,0,1,1}-{3501,3285,0,1,5}-{3478,3274,0,1,4}-{3497,3283,0,1,1}-"
+ },
+ {
+ "npc_id": "1261",
+ "loc_data": "{3492,3300,0,1,4}-{3498,3300,0,1,5}-{3487,3302,0,1,6}-{3497,3299,0,1,5}-{3488,3273,0,1,6}-"
+ },
+ {
+ "npc_id": "1262",
+ "loc_data": "{3487,3283,0,1,1}-{3477,3300,0,1,4}-{3497,3276,0,1,1}-{3502,3279,0,1,1}-{3481,3296,0,1,2}-"
+ },
+ {
+ "npc_id": "1263",
+ "loc_data": "{3108,3160,1,1,1}-"
+ },
+ {
+ "npc_id": "1266",
+ "loc_data": "{2680,3719,0,0,7}-{2684,3722,0,0,1}-{2684,3726,0,0,1}-{2678,3728,0,0,2}-{2673,3728,0,0,0}-{2670,3724,0,0,3}-{2671,3726,0,0,2}-{2679,3731,0,0,2}-{2684,3729,0,0,6}-{2706,3711,0,0,1}-{2688,3721,0,0,1}-{2693,3715,0,0,5}-{2699,3715,0,0,2}-{2712,3718,0,0,5}-{2716,3721,0,0,7}-{2722,3726,0,0,1}-{2524,3764,0,0,7}-{2508,3762,0,0,0}-{2510,3755,0,0,2}-{2523,3756,0,0,1}-{2532,3753,0,0,0}-{2529,3755,0,0,1}-{2528,3739,0,0,6}-{2529,3730,0,0,0}-{2518,3724,0,0,1}-{2508,3723,0,0,1}-{2525,3718,0,0,1}-{2549,3733,0,0,3}-"
+ },
+ {
+ "npc_id": "1268",
+ "loc_data": "{2681,3716,0,0,2}-{2678,3721,0,0,2}-{2684,3719,0,0,1}-{2699,3719,0,0,4}-{2701,3717,0,0,2}-{2707,3719,0,0,0}-{2700,3726,0,0,2}-{2695,3713,0,0,2}-{2716,3718,0,0,5}-{2706,3713,0,0,2}-{2539,3761,0,0,7}-{2539,3759,0,0,7}-{2528,3767,0,0,3}-{2526,3753,0,0,2}-{2513,3755,0,0,3}-{2505,3753,0,0,3}-{2530,3751,0,0,1}-{2526,3755,0,0,1}-{2532,3758,0,0,6}-{2532,3751,0,0,3}-{2530,3737,0,0,2}-{2531,3728,0,0,0}-{2523,3723,0,0,1}-{2520,3724,0,0,3}-{2515,3718,0,0,3}-{2505,3724,0,0,4}-{2505,3729,0,0,6}-{2535,3718,0,0,4}-{2536,3724,0,0,1}-{2543,3729,0,0,6}-{2550,3734,0,0,1}-{2552,3747,0,0,6}-{2552,3752,0,0,6}-"
+ },
+ {
+ "npc_id": "1269",
+ "loc_data": "{2672,3683,0,1,3}-"
+ },
+ {
+ "npc_id": "1270",
+ "loc_data": "{2770,3624,0,0,0}-"
+ },
+ {
+ "npc_id": "1274",
+ "loc_data": "{2660,3680,0,0,6}-"
+ },
+ {
+ "npc_id": "1275",
+ "loc_data": "{2657,3680,0,0,6}-"
+ },
+ {
+ "npc_id": "1276",
+ "loc_data": "{2658,3679,0,0,6}-"
+ },
+ {
+ "npc_id": "1277",
+ "loc_data": "{2659,3678,0,0,6}-"
+ },
+ {
+ "npc_id": "1278",
+ "loc_data": "{2659,3664,0,1,3}-"
+ },
+ {
+ "npc_id": "1281",
+ "loc_data": "{2661,3651,0,1,3}-"
+ },
+ {
+ "npc_id": "1282",
+ "loc_data": "{2640,3681,0,1,4}-"
+ },
+ {
+ "npc_id": "1283",
+ "loc_data": "{2647,3660,0,1,5}-"
+ },
+ {
+ "npc_id": "1284",
+ "loc_data": "{2658,3673,0,1,1}-"
+ },
+ {
+ "npc_id": "1285",
+ "loc_data": "{2657,3669,0,1,1}-"
+ },
+ {
+ "npc_id": "1286",
+ "loc_data": "{2656,3676,0,1,1}-"
+ },
+ {
+ "npc_id": "1287",
+ "loc_data": "{2652,3588,0,1,1}-"
+ },
+ {
+ "npc_id": "1288",
+ "loc_data": "{2634,3667,0,1,1}-"
+ },
+ {
+ "npc_id": "1289",
+ "loc_data": "{2667,3692,0,1,1}-"
+ },
+ {
+ "npc_id": "1294",
+ "loc_data": "{2658,3673,0,1,7}-"
+ },
+ {
+ "npc_id": "1296",
+ "loc_data": "{2660,3663,0,0,6}-{2657,3663,0,0,6}-"
+ },
+ {
+ "npc_id": "1298",
+ "loc_data": "{2663,3646,0,0,6}-"
+ },
+ {
+ "npc_id": "1299",
+ "loc_data": "{2660,3646,0,0,6}-"
+ },
+ {
+ "npc_id": "1300",
+ "loc_data": "{2662,3674,0,1,1}-"
+ },
+ {
+ "npc_id": "1301",
+ "loc_data": "{2623,3675,0,1,6}-"
+ },
+ {
+ "npc_id": "1302",
+ "loc_data": "{2641,3699,0,0,4}-"
+ },
+ {
+ "npc_id": "1303",
+ "loc_data": "{2664,3692,0,1,3}-"
+ },
+ {
+ "npc_id": "1304",
+ "loc_data": "{2582,3845,0,0,3}-"
+ },
+ {
+ "npc_id": "1305",
+ "loc_data": "{2643,3676,0,1,7}-"
+ },
+ {
+ "npc_id": "1306",
+ "loc_data": "{2674,3677,0,1,6}-"
+ },
+ {
+ "npc_id": "1307",
+ "loc_data": "{2658,3673,0,1,7}-"
+ },
+ {
+ "npc_id": "1308",
+ "loc_data": "{2672,3662,0,1,3}-"
+ },
+ {
+ "npc_id": "1309",
+ "loc_data": "{2667,3653,0,1,3}-"
+ },
+ {
+ "npc_id": "1310",
+ "loc_data": "{2667,3701,0,1,4}-"
+ },
+ {
+ "npc_id": "1311",
+ "loc_data": "{2655,3651,0,1,3}-"
+ },
+ {
+ "npc_id": "1312",
+ "loc_data": "{2639,3651,0,1,6}-"
+ },
+ {
+ "npc_id": "1313",
+ "loc_data": "{2626,3653,0,1,5}-"
+ },
+ {
+ "npc_id": "1314",
+ "loc_data": "{2675,3677,0,1,3}-"
+ },
+ {
+ "npc_id": "1315",
+ "loc_data": "{2646,3675,0,1,3}-"
+ },
+ {
+ "npc_id": "1317",
+ "loc_data": "{2632,3677,0,1,2}-{2641,3682,0,1,3}-{2643,3675,0,1,6}-{2643,3674,0,1,4}-{2646,3668,0,1,3}-{2651,3669,0,1,3}-{2648,3688,0,1,4}-{2656,3692,0,1,1}-"
+ },
+ {
+ "npc_id": "1318",
+ "loc_data": "{2613,3668,0,1,3}-{2671,3658,0,1,2}-{2638,3648,0,1,3}-{2626,3658,0,1,4}-{2626,3668,0,1,1}-{2630,3673,0,1,7}-{2635,3680,0,1,4}-{2644,3675,0,1,5}-{2642,3681,0,1,3}-{2631,3678,0,1,6}-{2661,3698,0,1,1}-{2663,3687,0,1,3}-{2673,3695,0,1,3}-{2674,3710,0,1,1}-{2676,3693,0,1,3}-{2675,3685,0,1,4}-{2669,3677,0,1,1}-{2667,3670,0,1,2}-{2675,3670,0,1,4}-{2679,3685,0,1,2}-{2667,3671,0,1,3}-{2666,3663,0,1,6}-{2658,3657,0,1,4}-{2684,3649,0,1,4}-{2679,3649,0,1,4}-{2646,3664,0,1,4}-{2646,3655,0,1,1}-{2637,3655,0,1,3}-{2667,3658,0,1,3}-{2688,3659,0,1,2}-"
+ },
+ {
+ "npc_id": "1320",
+ "loc_data": "{2738,3636,0,1,7}-{2739,3636,0,1,7}-{2738,3637,0,1,4}-{2735,3637,0,1,3}-"
+ },
+ {
+ "npc_id": "1321",
+ "loc_data": "{2736,3642,0,1,4}-{2744,3638,0,1,4}-"
+ },
+ {
+ "npc_id": "1329",
+ "loc_data": "{3085,3640,0,1,0}-"
+ },
+ {
+ "npc_id": "1334",
+ "loc_data": "{2509,3639,1,1,3}-"
+ },
+ {
+ "npc_id": "1335",
+ "loc_data": "{2518,4633,0,1,1}-"
+ },
+ {
+ "npc_id": "1336",
+ "loc_data": "{2508,3635,0,1,3}-"
+ },
+ {
+ "npc_id": "1337",
+ "loc_data": "{2445,4599,1,1,3}-"
+ },
+ {
+ "npc_id": "1338",
+ "loc_data": "{3151,5559,0,1,2}-{3157,5548,0,1,3}-{3155,5553,0,1,4}-{3145,5559,0,1,6}-{3152,5556,0,1,3}-{3149,5544,0,1,0}-{3145,5548,0,1,3}-"
+ },
+ {
+ "npc_id": "1339",
+ "loc_data": "{3153,5547,0,1,0}-{3150,5545,0,1,1}-"
+ },
+ {
+ "npc_id": "1340",
+ "loc_data": "{3147,5557,0,1,3}-{3154,5559,0,1,4}-"
+ },
+ {
+ "npc_id": "1343",
+ "loc_data": "{3145,5548,0,1,6}-"
+ },
+ {
+ "npc_id": "1357",
+ "loc_data": "{2201,4942,0,1,4}-"
+ },
+ {
+ "npc_id": "1358",
+ "loc_data": "{2208,4959,0,1,6}-"
+ },
+ {
+ "npc_id": "1359",
+ "loc_data": "{2612,3875,1,1,6}-"
+ },
+ {
+ "npc_id": "1360",
+ "loc_data": "{2620,3896,0,0,3}-"
+ },
+ {
+ "npc_id": "1369",
+ "loc_data": "{2527,5876,0,1,0}-"
+ },
+ {
+ "npc_id": "1373",
+ "loc_data": "{2500,3860,1,1,4}-"
+ },
+ {
+ "npc_id": "1374",
+ "loc_data": "{2505,3854,1,0,4}-{2509,3849,0,0,4}-"
+ },
+ {
+ "npc_id": "1375",
+ "loc_data": "{2501,3858,1,0,4}-"
+ },
+ {
+ "npc_id": "1376",
+ "loc_data": "{2548,3895,0,1,0}-"
+ },
+ {
+ "npc_id": "1377",
+ "loc_data": "{2544,3843,0,1,6}-"
+ },
+ {
+ "npc_id": "1378",
+ "loc_data": "{2516,3865,0,1,4}-"
+ },
+ {
+ "npc_id": "1385",
+ "loc_data": "{2629,3694,0,0,6}-"
+ },
+ {
+ "npc_id": "1389",
+ "loc_data": "{2603,3877,0,1,1}-"
+ },
+ {
+ "npc_id": "1390",
+ "loc_data": "{2604,3876,0,1,4}-"
+ },
+ {
+ "npc_id": "1391",
+ "loc_data": "{2604,3876,0,1,3}-"
+ },
+ {
+ "npc_id": "1393",
+ "loc_data": "{2519,3868,0,0,3}-"
+ },
+ {
+ "npc_id": "1394",
+ "loc_data": "{2519,3863,0,0,1}-"
+ },
+ {
+ "npc_id": "1395",
+ "loc_data": "{2547,3868,0,0,1}-"
+ },
+ {
+ "npc_id": "1396",
+ "loc_data": "{2525,3892,0,0,4}-"
+ },
+ {
+ "npc_id": "1397",
+ "loc_data": "{2573,3856,0,0,4}-"
+ },
+ {
+ "npc_id": "1398",
+ "loc_data": "{2526,3850,0,0,6}-"
+ },
+ {
+ "npc_id": "1399",
+ "loc_data": "{2577,3854,0,0,1}-"
+ },
+ {
+ "npc_id": "1400",
+ "loc_data": "{3037,4512,0,1,0}-{3049,4498,0,1,1}-"
+ },
+ {
+ "npc_id": "1401",
+ "loc_data": "{2605,3878,0,1,1}-"
+ },
+ {
+ "npc_id": "1402",
+ "loc_data": "{2603,3877,0,1,1}-"
+ },
+ {
+ "npc_id": "1404",
+ "loc_data": "{2239,3164,0,1,2}-{2241,3166,0,1,3}-{2242,3163,0,1,3}-{3037,4492,0,1,4}-{3036,4502,0,1,4}-{3029,4520,0,1,1}-{3019,4512,0,1,1}-"
+ },
+ {
+ "npc_id": "1405",
+ "loc_data": "{2576,3843,0,0,6}-"
+ },
+ {
+ "npc_id": "1427",
+ "loc_data": "{2957,3025,0,0,0}-"
+ },
+ {
+ "npc_id": "1434",
+ "loc_data": "{2753,2770,0,1,6}-"
+ },
+ {
+ "npc_id": "1447",
+ "loc_data": "{2761,2785,0,1,3}-"
+ },
+ {
+ "npc_id": "1452",
+ "loc_data": "{2743,2796,0,1,6}-"
+ },
+ {
+ "npc_id": "1454",
+ "loc_data": "{2742,2790,0,1,1}-"
+ },
+ {
+ "npc_id": "1457",
+ "loc_data": "{2747,2782,0,0,1}-{2754,2778,0,1,1}-{2761,2778,0,1,1}-{2765,2779,0,1,4}-{2767,2784,0,1,6}-{2772,2781,0,1,5}-{2774,2787,0,1,1}-{2777,2790,0,1,4}-{2762,2793,0,1,3}-{2756,2789,0,1,3}-"
+ },
+ {
+ "npc_id": "1458",
+ "loc_data": "{2728,2751,0,1,1}-{2715,2749,0,1,2}-{2728,2758,0,1,1}-{2727,2762,0,1,6}-{2728,2755,0,1,6}-{2714,2753,0,1,1}-{2714,2757,0,1,6}-{2714,2761,0,1,6}-"
+ },
+ {
+ "npc_id": "1459",
+ "loc_data": "{2790,2791,0,1,4}-{2803,2785,0,1,7}-{2797,2792,0,1,0}-{2800,2779,0,1,5}-{2788,2779,0,1,7}-{2795,2776,0,1,3}-"
+ },
+ {
+ "npc_id": "1460",
+ "loc_data": "{2787,2794,0,1,3}-"
+ },
+ {
+ "npc_id": "1463",
+ "loc_data": "{2600,3276,0,1,4}-{2601,3276,0,1,6}-{2601,3277,0,1,6}-{2601,3278,0,1,2}-{2602,3279,0,1,5}-{2602,3282,0,1,4}-{2604,3276,0,1,4}-{2605,3280,0,1,4}-{2605,3281,0,1,7}-{2606,3280,0,1,4}-"
+ },
+ {
+ "npc_id": "1469",
+ "loc_data": "{2595,3277,0,0,0}-"
+ },
+ {
+ "npc_id": "1471",
+ "loc_data": "{2707,9102,0,1,0}-{2704,9107,0,1,0}-{2705,9110,0,1,0}-{2708,9107,0,1,0}-{2743,9105,0,1,0}-{2741,9103,0,1,0}-{2744,9101,0,1,0}-{2743,9099,0,1,0}-{2737,9124,0,1,0}-{2741,9123,0,1,0}-{2740,9120,0,1,0}-{2736,9119,0,1,0}-{2734,9117,0,1,0}-{2712,9135,0,1,0}-{2714,9131,0,1,0}-{2709,9131,0,1,0}-{2708,9135,0,1,0}-"
+ },
+ {
+ "npc_id": "1514",
+ "loc_data": "{3432,3487,0,0,0}-"
+ },
+ {
+ "npc_id": "1515",
+ "loc_data": "{3438,3487,0,0,0}-"
+ },
+ {
+ "npc_id": "1516",
+ "loc_data": "{3437,3487,0,0,0}-"
+ },
+ {
+ "npc_id": "1517",
+ "loc_data": "{3434,3483,0,0,0}-"
+ },
+ {
+ "npc_id": "1518",
+ "loc_data": "{3435,3483,0,0,0}-"
+ },
+ {
+ "npc_id": "1519",
+ "loc_data": "{3433,3486,0,0,0}-"
+ },
+ {
+ "npc_id": "1520",
+ "loc_data": "{3434,3486,0,0,0}-"
+ },
+ {
+ "npc_id": "1526",
+ "loc_data": "{2443,3089,0,0,0}-"
+ },
+ {
+ "npc_id": "1544",
+ "loc_data": "{2911,10175,0,0,4}-{2912,10175,0,0,4}-{2913,10175,0,0,4}-{2914,10175,0,0,4}-{2909,10173,0,0,4}-{2910,10173,0,0,4}-{2911,10173,0,0,4}-{2912,10173,0,0,4}-{2913,10173,0,0,4}-{2909,10171,0,0,4}-{2910,10171,0,0,4}-{2911,10169,0,0,4}-{2912,10169,0,0,4}-{2913,10169,0,0,4}-"
+ },
+ {
+ "npc_id": "1553",
+ "loc_data": "{2828,10065,1,0,0}-"
+ },
+ {
+ "npc_id": "1554",
+ "loc_data": "{2829,10104,1,0,0}-"
+ },
+ {
+ "npc_id": "1555",
+ "loc_data": "{2829,10096,1,0,0}-"
+ },
+ {
+ "npc_id": "1558",
+ "loc_data": "{2800,3859,0,1,0}-{2803,3864,0,1,0}-{2805,3859,0,1,0}-"
+ },
+ {
+ "npc_id": "1560",
+ "loc_data": "{3150,5454,0,1,4}-{3144,5446,0,1,7}-{3166,5446,0,1,3}-{3158,5451,0,1,7}-{2775,10224,0,1,0}-{2783,10199,0,1,0}-{2784,10233,0,1,0}-"
+ },
+ {
+ "npc_id": "1561",
+ "loc_data": "{3144,5450,0,1,1}-{3153,5454,0,1,5}-{3160,5450,0,1,5}-{3167,5450,0,1,3}-{3161,5451,0,1,1}-{2777,10224,0,1,0}-{2784,10231,0,1,0}-{2792,10222,0,1,0}-"
+ },
+ {
+ "npc_id": "1562",
+ "loc_data": "{3147,5448,0,1,4}-{2772,10221,0,1,0}-{2785,10201,0,1,0}-{2787,10232,0,1,0}-"
+ },
+ {
+ "npc_id": "1563",
+ "loc_data": "{3152,5453,0,1,0}-{2773,10220,0,1,0}-{2788,10198,0,1,0}-{2790,10220,0,1,0}-{2800,10218,0,1,0}-"
+ },
+ {
+ "npc_id": "1564",
+ "loc_data": "{2770,10219,0,1,0}-{2788,10230,0,1,0}-{2798,10216,0,1,0}-"
+ },
+ {
+ "npc_id": "1565",
+ "loc_data": "{2788,10221,0,1,0}-{2801,10216,0,1,0}-"
+ },
+ {
+ "npc_id": "1566",
+ "loc_data": "{2786,10199,0,1,0}-{2790,10222,0,1,0}-{2799,10214,0,1,0}-"
+ },
+ {
+ "npc_id": "1582",
+ "loc_data": "{2568,9889,0,1,6}-{2578,9898,0,1,1}-{2657,9500,0,0,1}-{2632,9589,2,0,1}-{2628,9549,2,0,5}-{2629,9543,2,0,2}-{3249,5517,0,1,3}-"
+ },
+ {
+ "npc_id": "1583",
+ "loc_data": "{2563,9885,0,1,7}-{2575,9897,0,1,1}-{2655,9481,0,0,3}-{2631,9579,2,0,4}-{3211,5519,0,1,0}-{3254,5513,0,1,7}-"
+ },
+ {
+ "npc_id": "1584",
+ "loc_data": "{2661,9481,0,0,4}-{2635,9570,2,0,1}-{2627,9539,2,0,5}-{3231,5494,0,1,7}-{3209,5512,0,1,6}-"
+ },
+ {
+ "npc_id": "1585",
+ "loc_data": "{2575,9892,0,1,6}-{2666,9482,0,0,5}-{2641,9563,2,0,5}-{3257,5523,0,1,1}-{3204,5516,0,1,3}-{3244,9369,0,1,3}-{3252,9359,0,1,3}-{3306,9400,0,1,3}-"
+ },
+ {
+ "npc_id": "1586",
+ "loc_data": "{2668,9497,0,0,4}-{2635,9565,2,0,4}-{2633,9554,2,0,4}-{3247,5520,0,1,5}-{3205,5513,0,1,6}-{3213,5519,0,1,7}-"
+ },
+ {
+ "npc_id": "1587",
+ "loc_data": "{2830,3241,0,1,6}-{3145,3812,0,1,0}-{3141,3826,0,1,0}-{2645,9489,0,0,7}-{2681,9577,0,0,0}-{2673,9591,0,0,5}-{2655,9575,0,0,5}-{2640,9580,0,0,0}-{2646,9553,0,0,1}-{2650,9536,0,0,7}-{2670,9543,0,0,0}-{2663,9555,0,0,7}-{2692,3202,0,1,4}-{2695,3216,0,1,0}-{3237,5557,0,1,3}-"
+ },
+ {
+ "npc_id": "1588",
+ "loc_data": "{2826,3245,0,1,3}-{2637,9532,0,0,5}-{2634,9521,0,0,0}-{2642,9493,0,0,0}-{2645,9484,0,0,7}-{2679,9592,0,0,2}-{2654,9587,0,0,3}-{2650,9564,0,0,6}-{2647,9548,0,0,6}-{2637,9545,0,0,5}-{2678,9548,0,0,4}-{2658,9551,0,0,1}-{2691,3215,0,1,3}-{3246,5558,0,1,4}-"
+ },
+ {
+ "npc_id": "1589",
+ "loc_data": "{2698,9503,0,0,7}-{2713,9505,0,0,0}-{2717,9502,0,0,7}-{2699,9523,0,0,0}-{2706,9525,0,0,2}-{2719,9517,0,0,5}-{2724,9515,0,0,3}-"
+ },
+ {
+ "npc_id": "1590",
+ "loc_data": "{3184,5557,0,1,7}-{3148,5514,0,1,6}-{3144,5514,0,1,3}-{2730,9490,0,1,0}-{2731,9482,0,1,7}-{2742,9491,0,1,0}-"
+ },
+ {
+ "npc_id": "1591",
+ "loc_data": "{2703,9456,0,0,0}-{2717,9459,0,0,7}-{2731,9460,0,0,3}-{2737,9454,0,0,3}-{2737,9444,0,0,3}-{2736,9432,0,0,3}-{2738,9421,0,0,5}-{2727,9418,0,0,1}-{2724,9439,0,0,0}-{2715,9443,0,0,4}-{2702,9443,0,0,3}-{2700,9428,0,0,3}-{2705,9419,0,0,7}-"
+ },
+ {
+ "npc_id": "1592",
+ "loc_data": "{2728,9426,0,0,4}-{2714,9432,0,0,0}-{2707,9450,0,0,6}-{2724,9451,0,0,6}-"
+ },
+ {
+ "npc_id": "1593",
+ "loc_data": "{2652,9526,0,0,7}-{2656,9514,0,0,7}-{2666,9522,0,0,4}-{2665,9513,0,0,3}-{2666,9489,0,0,1}-{2626,9535,2,0,6}-{2628,9507,2,0,5}-{2635,9508,2,0,2}-{2634,9483,2,0,7}-{2681,9563,0,0,5}-{2677,9586,0,0,2}-{2644,9587,0,0,1}-{2638,9592,2,0,5}-{2633,9583,2,0,7}-{2627,9545,2,0,6}-{2744,9503,0,0,2}-{2702,9525,0,0,2}-{2704,9487,0,0,7}-{2711,9485,0,0,2}-{2722,9486,0,0,4}-{2717,9480,0,0,6}-{2733,9494,0,0,1}-{2742,9489,0,0,0}-"
+ },
+ {
+ "npc_id": "1594",
+ "loc_data": "{2646,9530,0,0,7}-{2643,9519,0,0,7}-{2660,9521,0,0,1}-{2665,9527,0,0,2}-{2671,9521,0,0,7}-{2670,9516,0,0,6}-{2660,9497,0,0,7}-{2643,9487,0,0,5}-{2653,9488,0,0,2}-{2677,9501,0,0,2}-{2683,9476,0,0,7}-{2630,9515,2,0,7}-{2642,9506,2,0,7}-{2629,9487,2,0,5}-{2648,9476,2,0,7}-{2672,9569,0,0,1}-{2657,9577,0,0,3}-{2643,9543,0,0,7}-{2658,9546,0,0,6}-{2636,9574,2,0,7}-{2643,9566,2,0,7}-{2635,9559,2,0,7}-{2699,9516,0,0,0}-{2709,9524,0,0,7}-{2700,9489,0,0,5}-{2703,9484,0,0,5}-{2710,9481,0,0,2}-{2716,9486,0,0,2}-{2726,9489,0,0,1}-{2735,9481,0,0,4}-{2740,9497,0,0,2}-{2739,9506,0,0,0}-"
+ },
+ {
+ "npc_id": "1595",
+ "loc_data": "{2744,3152,0,1,7}-"
+ },
+ {
+ "npc_id": "1597",
+ "loc_data": "{3147,9914,0,1,6}-"
+ },
+ {
+ "npc_id": "1598",
+ "loc_data": "{2447,4429,0,1,6}-"
+ },
+ {
+ "npc_id": "1600",
+ "loc_data": "{3190,9574,0,1,6}-{2791,9997,0,1,3}-"
+ },
+ {
+ "npc_id": "1601",
+ "loc_data": "{2797,9997,0,1,6}-{2781,9996,0,1,7}-"
+ },
+ {
+ "npc_id": "1602",
+ "loc_data": "{2793,9995,0,1,3}-{2783,9998,0,1,6}-"
+ },
+ {
+ "npc_id": "1603",
+ "loc_data": "{2789,9994,0,1,1}-{2786,9998,0,1,5}-"
+ },
+ {
+ "npc_id": "1604",
+ "loc_data": "{3434,3550,1,1,3}-{3439,3549,1,1,4}-{3425,3549,1,1,5}-{3423,3553,1,1,4}-{3426,3541,1,1,1}-{3425,3541,1,1,2}-{3426,3539,1,1,0}-{3420,3537,1,1,3}-{3417,3536,1,1,6}-"
+ },
+ {
+ "npc_id": "1608",
+ "loc_data": "{2698,9999,0,1,6}-{2695,9997,0,1,7}-{2697,9996,0,1,5}-{2695,9999,0,1,6}-"
+ },
+ {
+ "npc_id": "1609",
+ "loc_data": "{2700,9994,0,1,6}-{2698,10001,0,1,4}-{2703,9994,0,1,4}-{2701,10000,0,1,4}-"
+ },
+ {
+ "npc_id": "1610",
+ "loc_data": "{3443,3537,2,1,4}-{3434,3536,2,1,4}-{3443,3540,2,1,3}-{3446,3548,2,1,4}-{3439,3549,2,1,3}-{3434,3547,2,1,1}-{3444,3537,2,1,3}-{3174,5474,0,1,4}-{3175,5479,0,1,6}-{3183,5473,0,1,7}-{3178,5468,0,1,4}-"
+ },
+ {
+ "npc_id": "1612",
+ "loc_data": "{3438,3562,0,1,1}-{3430,3564,0,1,3}-{3434,3555,0,1,5}-{3443,3551,0,1,4}-{3442,3545,0,1,1}-{3449,3536,0,1,1}-{3440,3539,0,1,4}-"
+ },
+ {
+ "npc_id": "1613",
+ "loc_data": "{3439,3565,2,1,6}-{3443,3571,2,1,1}-{3435,3565,2,1,3}-{3443,3564,2,1,2}-{3444,3559,2,1,2}-{3427,3558,2,1,0}-{3425,3557,2,1,4}-{3430,3557,2,1,3}-{3170,5554,0,1,2}-{3166,5556,0,1,5}-{3171,5560,0,1,4}-{3173,5556,0,1,3}-"
+ },
+ {
+ "npc_id": "1615",
+ "loc_data": "{3422,3566,2,1,5}-{3426,3568,2,1,6}-{3418,3562,2,1,4}-{3414,3566,2,1,3}-{3412,3570,2,1,4}-{3421,3572,2,1,2}-{3422,3571,2,1,1}-{3033,4873,0,1,7}-{3039,4885,0,1,3}-{3050,4890,0,1,3}-{3062,4892,0,1,5}-{3064,4901,0,1,3}-{3056,4912,0,1,3}-{3048,4916,0,1,5}-{3038,4911,0,1,6}-{3022,4914,0,1,6}-{3018,4902,0,1,6}-{3025,4898,0,1,4}-{3033,4885,0,1,0}-{3021,4877,0,1,3}-{3048,4872,0,1,1}-{3061,4880,0,1,3}-{3061,4891,0,1,1}-{3054,4901,0,1,1}-"
+ },
+ {
+ "npc_id": "1616",
+ "loc_data": "{2741,10011,0,1,2}-{2742,10010,0,1,3}-{2739,10014,0,1,1}-{2740,10006,0,1,3}-"
+ },
+ {
+ "npc_id": "1617",
+ "loc_data": "{2743,10003,0,1,1}-{2746,10008,0,1,2}-{2743,10015,0,1,3}-{2745,10011,0,1,5}-{2744,10016,0,1,1}-"
+ },
+ {
+ "npc_id": "1618",
+ "loc_data": "{3424,3565,1,1,1}-{3416,3562,1,1,6}-{3423,3559,1,1,0}-{3424,3560,1,1,4}-{3412,3558,1,1,1}-{3412,3568,1,1,1}-{3417,3565,1,1,3}-"
+ },
+ {
+ "npc_id": "1620",
+ "loc_data": "{2794,10036,0,1,4}-{2788,10037,0,1,0}-{2795,10034,0,1,3}-{2785,10035,0,1,3}-"
+ },
+ {
+ "npc_id": "1621",
+ "loc_data": "{2797,10035,0,1,6}-{2787,10032,0,1,3}-{2802,10031,0,1,3}-"
+ },
+ {
+ "npc_id": "1623",
+ "loc_data": "{2725,9999,0,1,6}-"
+ },
+ {
+ "npc_id": "1624",
+ "loc_data": "{3179,5522,0,1,6}-{3168,5513,0,1,3}-{3174,5514,0,1,6}-{3178,5517,0,1,4}-{3178,5528,0,1,1}-{3169,5516,0,1,3}-{3179,5524,0,1,4}-{3223,9393,0,1,5}-{3225,9401,0,1,0}-{3222,9375,0,1,6}-{3220,9380,0,1,6}-{3215,9364,0,1,3}-{3213,9361,0,1,1}-{3212,9355,0,1,2}-{3230,9367,0,1,3}-{3240,9350,0,1,5}-{3248,9348,0,1,4}-{3255,9350,0,1,4}-{3256,9392,0,1,4}-"
+ },
+ {
+ "npc_id": "1626",
+ "loc_data": "{2723,10005,0,1,0}-{2726,9998,0,1,1}-{2723,10009,0,1,3}-"
+ },
+ {
+ "npc_id": "1627",
+ "loc_data": "{2724,10008,0,1,4}-{2721,10005,0,1,1}-{2724,10005,0,1,3}-{2729,10004,0,1,3}-{2724,10012,0,1,4}-{2718,10009,0,1,1}-{2721,10001,0,1,7}-{2720,9996,0,1,7}-{2721,10006,0,1,3}-"
+ },
+ {
+ "npc_id": "1628",
+ "loc_data": "{3155,5536,0,1,4}-{3156,5540,0,1,3}-{3157,5538,0,1,2}-{3166,5537,0,1,1}-{3165,5541,0,1,3}-{2723,10004,0,1,4}-{2722,9999,0,1,1}-{2729,10002,0,1,1}-"
+ },
+ {
+ "npc_id": "1629",
+ "loc_data": "{3162,5538,0,1,2}-{3157,5538,0,1,4}-{3155,5537,0,1,1}-{3164,5538,0,1,2}-"
+ },
+ {
+ "npc_id": "1631",
+ "loc_data": "{3160,9589,0,1,3}-{3167,9589,0,1,6}-{3179,9585,0,1,1}-{3188,9572,0,1,7}-{3190,9580,0,1,3}-{3206,9586,0,1,3}-{3221,9586,0,1,7}-{3226,9573,0,1,5}-{3223,9569,0,1,1}-{2800,10017,0,1,1}-{2796,10021,0,1,1}-{2805,10021,0,1,1}-{2803,10013,0,1,1}-"
+ },
+ {
+ "npc_id": "1632",
+ "loc_data": "{2798,10019,0,1,1}-{2800,10015,0,1,1}-{2797,10018,0,1,1}-"
+ },
+ {
+ "npc_id": "1633",
+ "loc_data": "{1837,3244,0,1,0}-{1836,3250,0,1,0}-{1845,3251,0,1,0}-{1845,3247,0,1,0}-{1849,3241,0,1,0}-{1853,3247,0,1,0}-{1848,3254,0,1,0}-{1858,3251,0,1,0}-{1935,3217,0,1,0}-{1933,3209,0,1,0}-{1930,3208,0,1,0}-{1929,3217,0,1,0}-{1927,3219,0,1,0}-{1924,3211,0,1,0}-{1920,3216,0,1,0}-{1925,3213,0,1,0}-{3263,9399,0,1,3}-{3274,9397,0,1,1}-{3275,9393,0,1,6}-{3271,9384,0,1,0}-{3270,9380,0,1,2}-{3283,9378,0,1,6}-{3285,9386,0,1,5}-{3284,9401,0,1,4}-{3278,9353,0,1,1}-{3299,9380,0,1,1}-{3319,9402,0,1,1}-{3305,9350,0,1,4}-{3248,9374,0,1,3}-{3253,9363,0,1,3}-{3249,9355,0,1,3}-{2761,10007,0,1,0}-{2757,10010,0,1,3}-{2763,10000,0,1,5}-{2760,10011,0,1,0}-{2761,9997,0,1,4}-"
+ },
+ {
+ "npc_id": "1634",
+ "loc_data": "{2757,10008,0,1,6}-{2760,10005,0,1,5}-"
+ },
+ {
+ "npc_id": "1635",
+ "loc_data": "{2758,10001,0,1,1}-{2763,10006,0,1,1}-{2766,10000,0,1,6}-{2759,9999,0,1,7}-"
+ },
+ {
+ "npc_id": "1636",
+ "loc_data": "{2760,10004,0,1,1}-{2760,10002,0,1,6}-"
+ },
+ {
+ "npc_id": "1637",
+ "loc_data": "{2700,10027,0,1,6}-{3276,5454,0,1,4}-{3279,5450,0,1,0}-{3271,5446,0,1,3}-{3277,5512,0,1,1}-{3278,5535,0,0,0}-{3277,5520,0,1,1}-"
+ },
+ {
+ "npc_id": "1638",
+ "loc_data": "{2704,10022,0,1,4}-{2707,10023,0,1,4}-{3284,5456,0,1,1}-{3278,5453,0,1,1}-{3271,5512,0,1,4}-"
+ },
+ {
+ "npc_id": "1639",
+ "loc_data": "{2711,10028,0,1,2}-{2710,10030,0,1,6}-{3283,5461,0,1,4}-{3285,5456,0,1,6}-{3275,5455,0,1,5}-{3272,5446,0,1,4}-{3277,5445,0,1,3}-"
+ },
+ {
+ "npc_id": "1640",
+ "loc_data": "{2705,10028,0,1,3}-{2704,10031,0,1,6}-{3272,5445,0,1,4}-"
+ },
+ {
+ "npc_id": "1641",
+ "loc_data": "{2708,10025,0,1,6}-"
+ },
+ {
+ "npc_id": "1642",
+ "loc_data": "{2703,10020,0,1,0}-"
+ },
+ {
+ "npc_id": "1643",
+ "loc_data": "{3434,3562,1,1,6}-{3439,3558,1,1,5}-{3444,3567,1,1,4}-{3439,3571,1,1,3}-{3435,3570,1,1,7}-{3447,3561,1,1,4}-{3442,3573,1,1,6}-{3246,5446,0,1,3}-{3237,5455,0,1,0}-{3246,5450,0,1,4}-"
+ },
+ {
+ "npc_id": "1644",
+ "loc_data": "{3240,5448,0,1,7}-"
+ },
+ {
+ "npc_id": "1648",
+ "loc_data": "{3426,3537,0,1,4}-{3413,3536,0,1,3}-{3419,3545,0,1,2}-{3426,3544,0,1,6}-{3410,3535,0,1,2}-{3425,3556,0,1,6}-{3418,3557,0,1,1}-{3428,3571,0,1,3}-{3432,3573,0,1,4}-"
+ },
+ {
+ "npc_id": "1650",
+ "loc_data": "{3411,3541,0,1,3}-"
+ },
+ {
+ "npc_id": "1655",
+ "loc_data": "{3424,3544,0,1,1}-{3423,3546,0,1,1}-{3409,3538,0,1,3}-{3421,3559,0,1,4}-{3413,3559,0,1,6}-{3433,3574,0,1,3}-{3428,3571,0,1,6}-"
+ },
+ {
+ "npc_id": "1658",
+ "loc_data": "{2595,3087,1,1,1}-"
+ },
+ {
+ "npc_id": "1665",
+ "loc_data": "{3544,3462,0,0,1}-"
+ },
+ {
+ "npc_id": "1668",
+ "loc_data": "{3551,3550,0,1,0}-"
+ },
+ {
+ "npc_id": "1669",
+ "loc_data": "{3549,3555,2,0,3}-"
+ },
+ {
+ "npc_id": "1671",
+ "loc_data": "{3547,3555,2,0,6}-"
+ },
+ {
+ "npc_id": "1672",
+ "loc_data": "{3552,3550,0,1,0}-"
+ },
+ {
+ "npc_id": "1675",
+ "loc_data": "{3551,3561,0,1,0}-"
+ },
+ {
+ "npc_id": "1676",
+ "loc_data": "{3481,9942,0,1,0}-{3493,9925,0,1,0}-{3525,9932,0,1,0}-{3555,9927,0,1,0}-{3554,9947,0,1,0}-{3529,9968,0,1,0}-"
+ },
+ {
+ "npc_id": "1677",
+ "loc_data": "{3474,9933,0,1,0}-{3488,9934,0,1,0}-{3547,9932,0,1,0}-{3540,9958,0,1,0}-{3564,9959,0,1,0}-"
+ },
+ {
+ "npc_id": "1678",
+ "loc_data": "{3473,9943,0,1,0}-{3488,9944,0,1,0}-{3498,9937,0,1,0}-{3534,9926,0,1,0}-{3553,9941,0,1,0}-{3548,9956,0,1,0}-{3564,9949,0,1,0}-"
+ },
+ {
+ "npc_id": "1679",
+ "loc_data": "{2291,3145,0,1,2}-"
+ },
+ {
+ "npc_id": "1680",
+ "loc_data": "{2290,3143,0,1,3}-"
+ },
+ {
+ "npc_id": "1681",
+ "loc_data": "{3202,5483,0,1,4}-{2544,9843,0,1,3}-"
+ },
+ {
+ "npc_id": "1683",
+ "loc_data": "{3678,3511,0,1,4}-"
+ },
+ {
+ "npc_id": "1684",
+ "loc_data": "{3660,3517,0,1,7}-"
+ },
+ {
+ "npc_id": "1685",
+ "loc_data": "{3659,3497,0,1,0}-"
+ },
+ {
+ "npc_id": "1686",
+ "loc_data": "{3657,3516,0,1,3}-{3654,3518,1,1,6}-{3663,3522,0,1,7}-"
+ },
+ {
+ "npc_id": "1688",
+ "loc_data": "{3709,3497,0,0,3}-"
+ },
+ {
+ "npc_id": "1691",
+ "loc_data": "{3624,3530,0,1,1}-{3623,3524,0,1,2}-{3618,3526,0,1,6}-{3612,3527,0,1,6}-{3609,3527,0,1,4}-"
+ },
+ {
+ "npc_id": "1692",
+ "loc_data": "{3632,3528,0,1,5}-{3633,3525,0,1,6}-{3631,3529,0,1,3}-{3631,3529,0,1,2}-{3628,3530,0,1,1}-{3631,3530,0,1,4}-{3629,3529,0,1,4}-"
+ },
+ {
+ "npc_id": "1694",
+ "loc_data": "{3673,3491,0,1,3}-"
+ },
+ {
+ "npc_id": "1695",
+ "loc_data": "{3461,3558,0,0,3}-"
+ },
+ {
+ "npc_id": "1697",
+ "loc_data": "{3662,3502,0,1,4}-{3664,3493,0,1,6}-{3672,3486,0,1,2}-{3685,3485,0,1,3}-{3684,3496,0,1,3}-{3675,3502,0,1,3}-{3667,3484,0,1,0}-{3666,3471,0,1,4}-{3676,3464,0,1,3}-{3683,3467,0,1,6}-{3685,3474,0,1,4}-{3690,3474,0,1,1}-{3695,3473,0,1,3}-{3693,3466,0,1,7}-{3698,3463,0,1,3}-{3688,3467,0,1,3}-{3675,3474,0,1,4}-{3665,3476,0,1,6}-{3662,3491,0,1,1}-{3662,3495,0,1,4}-{3661,3501,0,1,6}-{3682,3486,0,1,4}-{3678,3493,0,1,4}-{3673,3491,0,1,3}-{3658,3502,0,1,4}-{3660,3505,0,1,1}-{3665,3469,0,1,6}-{3659,3465,0,1,6}-{3667,3461,0,1,1}-"
+ },
+ {
+ "npc_id": "1698",
+ "loc_data": "{3647,3473,0,1,3}-{3649,3503,0,1,2}-{3665,3529,0,1,4}-{3669,3522,0,1,4}-{3672,3529,0,1,4}-{3668,3534,0,1,4}-{3657,3534,0,1,4}-{3654,3537,0,1,4}-"
+ },
+ {
+ "npc_id": "1699",
+ "loc_data": "{3659,3480,0,1,3}-"
+ },
+ {
+ "npc_id": "1700",
+ "loc_data": "{3681,3493,0,1,5}-"
+ },
+ {
+ "npc_id": "1702",
+ "loc_data": "{3690,3464,0,0,1}-{3691,3464,0,0,1}-{3688,3464,0,0,1}-{3687,3464,0,0,1}-"
+ },
+ {
+ "npc_id": "1703",
+ "loc_data": "{3697,3496,0,1,3}-{3699,3497,0,1,2}-{3689,3503,0,1,3}-{3690,3508,0,1,6}-{3690,3512,0,1,6}-{3689,3517,0,1,1}-{3690,3518,0,1,5}-{3689,3503,0,1,3}-{3689,3496,0,1,0}-{3690,3524,0,1,6}-{3689,3528,0,1,5}-"
+ },
+ {
+ "npc_id": "1704",
+ "loc_data": "{3703,3487,0,0,3}-"
+ },
+ {
+ "npc_id": "1706",
+ "loc_data": "{3661,3508,0,0,1}-{3658,3508,0,0,1}-{3652,3487,0,0,3}-{3652,3484,0,0,3}-"
+ },
+ {
+ "npc_id": "1710",
+ "loc_data": "{3165,9631,0,1,6}-{3165,9633,0,1,0}-{3160,9634,0,1,7}-{3156,9630,0,1,6}-{3152,9627,0,1,4}-{3148,9621,0,1,4}-{3175,9630,0,1,1}-{3174,9634,0,1,3}-{3172,9638,0,1,0}-"
+ },
+ {
+ "npc_id": "1711",
+ "loc_data": "{2566,5197,0,1,4}-{3160,9638,0,1,1}-{3159,9633,0,1,6}-{3161,9626,0,1,6}-{3169,9626,0,1,4}-{3171,9634,0,1,4}-{3164,9634,0,1,3}-{3165,9631,0,1,7}-{3180,9631,0,1,7}-{3183,9629,0,1,6}-{3182,9633,0,1,1}-{3172,9632,0,1,4}-{3158,9631,0,1,1}-{3160,9630,0,1,1}-{3159,9633,0,1,4}-{3150,9623,0,1,6}-{3152,9620,0,1,6}-{3159,9622,0,1,0}-{3169,9623,0,1,6}-{3169,9623,0,1,4}-"
+ },
+ {
+ "npc_id": "1712",
+ "loc_data": "{2573,5201,0,1,4}-{2577,5195,0,1,4}-{2577,5189,0,0,6}-{2571,5195,0,0,6}-{3153,9646,0,1,3}-{3151,9651,0,1,1}-"
+ },
+ {
+ "npc_id": "1714",
+ "loc_data": "{3172,9624,0,1,2}-{3161,9623,0,1,1}-{3151,9624,0,1,1}-{3150,9622,0,1,4}-{3153,9627,0,1,3}-{3157,9634,0,1,2}-{3171,9636,0,1,6}-{3174,9639,0,1,3}-{3174,9634,0,1,3}-"
+ },
+ {
+ "npc_id": "1715",
+ "loc_data": "{3171,9635,0,1,3}-{3159,9636,0,1,2}-{3169,9630,0,1,3}-{3172,9625,0,1,0}-{3159,9627,0,1,3}-"
+ },
+ {
+ "npc_id": "1752",
+ "loc_data": "{2437,3442,0,1,0}-{2449,3421,0,1,0}-{2457,3394,0,1,0}-{2464,3394,0,1,0}-{2480,3406,0,1,0}-{2432,3387,0,1,0}-{2442,3388,0,1,0}-{2453,3363,0,1,0}-{2463,3375,0,1,0}-{2381,3428,0,1,0}-{2392,3405,0,1,0}-{2413,3397,0,1,0}-{2415,3408,0,1,0}-{2463,3456,0,1,0}-{2468,3456,0,1,0}-"
+ },
+ {
+ "npc_id": "1754",
+ "loc_data": "{3100,3246,0,1,2}-{3131,3263,0,1,5}-{3122,3278,0,1,2}-{3259,3308,0,1,4}-"
+ },
+ {
+ "npc_id": "1755",
+ "loc_data": "{3106,3275,0,1,1}-{3106,3266,0,1,3}-{3114,3273,0,1,4}-{3258,3312,0,1,3}-"
+ },
+ {
+ "npc_id": "1756",
+ "loc_data": "{3096,3251,0,1,3}-{3102,3261,0,1,1}-{3117,3278,0,1,0}-{3262,3320,0,1,1}-"
+ },
+ {
+ "npc_id": "1757",
+ "loc_data": "{3233,3308,0,1,4}-"
+ },
+ {
+ "npc_id": "1758",
+ "loc_data": "{2895,3403,0,0,0}-{3262,3325,0,0,0}-"
+ },
+ {
+ "npc_id": "1759",
+ "loc_data": "{3250,3310,0,0,0}-"
+ },
+ {
+ "npc_id": "1761",
+ "loc_data": "{3121,3274,0,0,0}-"
+ },
+ {
+ "npc_id": "1765",
+ "loc_data": "{3198,3270,0,1,0}-{2923,3320,0,1,7}-{2921,3320,0,1,4}-{2923,3320,0,1,5}-{3206,3265,0,1,4}-{3201,3265,0,1,0}-"
+ },
+ {
+ "npc_id": "1766",
+ "loc_data": "{3171,3320,0,1,0}-{3259,3262,0,1,4}-{3262,3274,0,1,3}-{3259,3278,0,1,1}-{3263,3273,0,1,7}-"
+ },
+ {
+ "npc_id": "1767",
+ "loc_data": "{2924,3288,0,0,1}-{2921,3290,0,1,1}-{2926,3279,0,1,1}-{2931,3272,0,1,1}-{2936,3273,0,1,6}-{3262,3262,0,1,6}-{3025,3311,0,1,5}-"
+ },
+ {
+ "npc_id": "1769",
+ "loc_data": "{2596,9822,0,1,4}-{2979,3203,0,1,4}-{3264,3249,0,1,4}-"
+ },
+ {
+ "npc_id": "1770",
+ "loc_data": "{2595,9826,0,1,1}-{3189,3246,0,1,0}-{3143,3231,0,1,0}-{3140,3263,0,1,0}-{3262,3253,0,1,6}-{3259,3254,0,1,3}-{2999,3212,0,1,1}-"
+ },
+ {
+ "npc_id": "1771",
+ "loc_data": "{3192,3245,0,1,0}-{3184,3248,0,1,0}-{3140,3230,0,1,0}-{3141,3261,0,1,0}-{3187,3286,0,1,0}-{3174,3294,0,1,0}-{3178,3294,0,1,0}-{3144,3302,0,1,0}-{3142,3303,0,1,0}-{3151,3300,0,1,0}-{3139,3299,0,1,0}-{2993,3199,0,1,6}-{3248,3233,0,1,6}-{3247,3240,0,1,3}-{3209,3277,0,1,0}-"
+ },
+ {
+ "npc_id": "1772",
+ "loc_data": "{3194,3255,0,1,0}-{3143,3234,0,1,0}-{3251,3231,0,1,1}-{3260,3241,0,1,0}-{3259,3222,0,0,4}-{2993,3203,0,1,0}-"
+ },
+ {
+ "npc_id": "1773",
+ "loc_data": "{3252,3227,0,1,1}-{3263,3219,0,1,0}-{2991,3219,0,1,1}-"
+ },
+ {
+ "npc_id": "1774",
+ "loc_data": "{2592,9834,0,1,6}-{3255,3228,0,1,4}-{3265,3219,0,1,2}-{3012,3204,0,1,3}-"
+ },
+ {
+ "npc_id": "1775",
+ "loc_data": "{2585,9829,0,1,1}-{3254,3224,0,1,1}-{3010,3211,0,1,6}-"
+ },
+ {
+ "npc_id": "1776",
+ "loc_data": "{2999,3216,0,1,6}-{3264,3247,0,1,2}-"
+ },
+ {
+ "npc_id": "1778",
+ "loc_data": "{3260,3859,0,0,0}-"
+ },
+ {
+ "npc_id": "1779",
+ "loc_data": "{2978,3752,0,1,6}-"
+ },
+ {
+ "npc_id": "1780",
+ "loc_data": "{3272,3687,0,1,3}-"
+ },
+ {
+ "npc_id": "1781",
+ "loc_data": "{3008,3862,0,0,0}-"
+ },
+ {
+ "npc_id": "1782",
+ "loc_data": "{3363,3883,0,1,4}-"
+ },
+ {
+ "npc_id": "1783",
+ "loc_data": "{3079,3516,0,1,6}-"
+ },
+ {
+ "npc_id": "1784",
+ "loc_data": "{3025,3705,0,1,1}-"
+ },
+ {
+ "npc_id": "1785",
+ "loc_data": "{3144,3788,0,1,6}-"
+ },
+ {
+ "npc_id": "1786",
+ "loc_data": "{3234,3633,0,1,1}-"
+ },
+ {
+ "npc_id": "1787",
+ "loc_data": "{3074,3609,0,1,3}-"
+ },
+ {
+ "npc_id": "1795",
+ "loc_data": "{2967,9811,0,0,0}-"
+ },
+ {
+ "npc_id": "1796",
+ "loc_data": "{2968,9809,0,0,0}-"
+ },
+ {
+ "npc_id": "1798",
+ "loc_data": "{2701,3471,0,0,0}-"
+ },
+ {
+ "npc_id": "1805",
+ "loc_data": "{2760,3660,0,1,6}-"
+ },
+ {
+ "npc_id": "1806",
+ "loc_data": "{2798,3667,0,1,3}-"
+ },
+ {
+ "npc_id": "1807",
+ "loc_data": "{2811,3673,0,1,3}-"
+ },
+ {
+ "npc_id": "1808",
+ "loc_data": "{2765,3676,0,1,3}-"
+ },
+ {
+ "npc_id": "1810",
+ "loc_data": "{2811,3681,0,1,3}-"
+ },
+ {
+ "npc_id": "1814",
+ "loc_data": "{2794,3668,0,1,0}-"
+ },
+ {
+ "npc_id": "1815",
+ "loc_data": "{2801,3669,0,1,0}-"
+ },
+ {
+ "npc_id": "1816",
+ "loc_data": "{2803,3668,0,1,0}-"
+ },
+ {
+ "npc_id": "1817",
+ "loc_data": "{2797,3672,0,1,0}-"
+ },
+ {
+ "npc_id": "1818",
+ "loc_data": "{2802,3674,0,1,0}-"
+ },
+ {
+ "npc_id": "1819",
+ "loc_data": "{2813,3687,0,1,0}-"
+ },
+ {
+ "npc_id": "1820",
+ "loc_data": "{2812,3685,0,1,0}-"
+ },
+ {
+ "npc_id": "1821",
+ "loc_data": "{2757,3674,0,1,0}-{2762,3671,0,1,0}-{2785,3658,0,1,0}-"
+ },
+ {
+ "npc_id": "1828",
+ "loc_data": "{3231,9545,0,1,6}-"
+ },
+ {
+ "npc_id": "1829",
+ "loc_data": "{3153,9548,0,1,1}-{3154,9547,0,1,4}-{3176,9546,0,1,4}-{3221,9558,0,1,4}-{3226,9548,0,1,7}-{3224,9551,0,1,1}-{3219,9558,0,1,7}-"
+ },
+ {
+ "npc_id": "1831",
+ "loc_data": "{3165,9542,0,1,3}-{3164,9542,0,1,3}-{3166,9542,0,1,3}-{3208,9555,0,1,1}-{3211,9570,0,1,5}-{3211,9570,0,1,5}-{3208,9555,0,1,1}-{3208,9555,0,1,1}-{3207,9555,0,1,1}-{3213,9570,0,1,5}-"
+ },
+ {
+ "npc_id": "1832",
+ "loc_data": "{3150,9573,0,1,1}-{3188,9550,0,1,0}-{3148,9578,0,1,4}-{3152,9556,0,1,3}-{3150,9553,0,1,2}-{3167,9547,0,1,1}-{3168,9546,0,1,3}-{3184,9551,0,1,3}-{3191,9583,0,1,4}-{3187,9583,0,1,3}-{3220,9573,0,1,4}-{3224,9574,0,1,1}-{3208,9588,0,1,6}-{3210,9585,0,1,4}-{3272,5549,0,1,0}-{3275,5546,0,1,0}-{3281,5545,0,1,2}-{3286,5544,0,1,0}-{3285,5539,0,1,3}-{3268,5553,0,1,1}-{3274,5558,0,1,6}-{3281,5557,0,1,4}-{3282,5554,0,1,4}-{3269,5551,0,1,3}-{3287,5549,0,1,3}-{3279,5546,0,1,6}-{3283,5545,0,1,0}-{3269,5548,0,1,1}-"
+ },
+ {
+ "npc_id": "1833",
+ "loc_data": "{3151,9575,0,1,3}-{3150,9577,0,1,4}-{3148,9554,0,1,6}-{3165,9547,0,1,1}-{3165,9546,0,1,2}-{3184,9551,0,1,3}-{3189,9581,0,1,4}-{3222,9575,0,1,4}-{3226,9576,0,1,3}-{3210,9587,0,1,2}-"
+ },
+ {
+ "npc_id": "1834",
+ "loc_data": "{3169,3174,0,0,6}-"
+ },
+ {
+ "npc_id": "1839",
+ "loc_data": "{2825,10167,0,1,0}-"
+ },
+ {
+ "npc_id": "1841",
+ "loc_data": "{3020,3452,0,0,0}-"
+ },
+ {
+ "npc_id": "1843",
+ "loc_data": "{2839,10128,0,1,0}-"
+ },
+ {
+ "npc_id": "1844",
+ "loc_data": "{2855,10144,0,1,0}-"
+ },
+ {
+ "npc_id": "1846",
+ "loc_data": "{2873,10166,0,1,3}-"
+ },
+ {
+ "npc_id": "1847",
+ "loc_data": "{2868,10168,0,1,0}-"
+ },
+ {
+ "npc_id": "1848",
+ "loc_data": "{2868,10168,0,1,0}-"
+ },
+ {
+ "npc_id": "1849",
+ "loc_data": "{2868,10168,0,1,0}-"
+ },
+ {
+ "npc_id": "1860",
+ "loc_data": "{2957,3203,0,1,3}-"
+ },
+ {
+ "npc_id": "1861",
+ "loc_data": "{3208,3256,0,0,1}-"
+ },
+ {
+ "npc_id": "1862",
+ "loc_data": "{3304,3211,0,1,1}-"
+ },
+ {
+ "npc_id": "1863",
+ "loc_data": "{3358,2956,0,0,6}-"
+ },
+ {
+ "npc_id": "1864",
+ "loc_data": "{3363,2956,0,0,3}-"
+ },
+ {
+ "npc_id": "1865",
+ "loc_data": "{3352,2974,0,1,4}-"
+ },
+ {
+ "npc_id": "1866",
+ "loc_data": "{3360,2983,0,1,4}-"
+ },
+ {
+ "npc_id": "1867",
+ "loc_data": "{3347,2966,0,0,6}-"
+ },
+ {
+ "npc_id": "1870",
+ "loc_data": "{3373,2972,0,1,5}-"
+ },
+ {
+ "npc_id": "1871",
+ "loc_data": "{3344,2986,0,1,3}-"
+ },
+ {
+ "npc_id": "1872",
+ "loc_data": "{3354,2953,0,0,6}-"
+ },
+ {
+ "npc_id": "1873",
+ "loc_data": "{3343,2962,0,1,0}-{3343,2964,0,1,1}-"
+ },
+ {
+ "npc_id": "1874",
+ "loc_data": "{3371,9301,0,1,0}-{3371,9303,0,1,0}-{3371,9305,0,1,0}-{3371,9307,0,1,0}-{3371,9309,0,1,0}-{3373,9301,0,1,0}-{3373,9303,0,1,0}-{3373,9306,0,1,0}-{3373,9308,0,1,0}-{3375,9301,0,1,0}-{3375,9303,0,1,0}-{3375,9305,0,1,0}-{3375,9307,0,1,0}-{3375,9309,0,1,0}-{3403,2963,0,1,0}-{3429,2976,0,1,0}-{3328,2952,0,1,0}-{3328,2957,0,1,0}-{3331,2955,0,1,0}-{3331,2961,0,1,0}-{3266,2955,0,1,0}-{3271,2967,0,1,0}-{3279,2957,0,1,0}-{3280,2975,0,1,0}-{3284,2959,0,1,0}-{3294,2964,0,1,0}-{3295,2978,0,1,0}-{3305,2966,0,1,0}-{3307,2959,0,1,0}-{3309,2973,0,1,0}-{3396,3029,0,1,0}-{3397,3044,0,1,0}-{3398,3038,0,1,0}-"
+ },
+ {
+ "npc_id": "1875",
+ "loc_data": "{3354,2952,0,0,1}-"
+ },
+ {
+ "npc_id": "1884",
+ "loc_data": "{2811,3174,0,1,0}-"
+ },
+ {
+ "npc_id": "1902",
+ "loc_data": "{3333,2946,0,0,1}-"
+ },
+ {
+ "npc_id": "1905",
+ "loc_data": "{3335,2948,0,1,2}-{3331,2948,0,1,6}-{3333,2950,0,1,0}-"
+ },
+ {
+ "npc_id": "1907",
+ "loc_data": "{3488,3091,0,1,0}-"
+ },
+ {
+ "npc_id": "1911",
+ "loc_data": "{3416,3155,0,1,0}-"
+ },
+ {
+ "npc_id": "1912",
+ "loc_data": "{3376,3429,0,1,6}-"
+ },
+ {
+ "npc_id": "1916",
+ "loc_data": "{3112,9690,0,0,7}-"
+ },
+ {
+ "npc_id": "1917",
+ "loc_data": "{3177,2987,0,1,6}-"
+ },
+ {
+ "npc_id": "1918",
+ "loc_data": "{3180,3043,0,1,2}-"
+ },
+ {
+ "npc_id": "1920",
+ "loc_data": "{3497,3478,0,0,0}-"
+ },
+ {
+ "npc_id": "1921",
+ "loc_data": "{3159,2980,0,1,1}-"
+ },
+ {
+ "npc_id": "1923",
+ "loc_data": "{3185,2983,0,1,4}-"
+ },
+ {
+ "npc_id": "1924",
+ "loc_data": "{3213,2956,0,1,1}-"
+ },
+ {
+ "npc_id": "1926",
+ "loc_data": "{3179,2967,0,1,3}-{3172,2966,0,1,1}-{3171,2980,0,1,3}-{3166,2972,0,1,0}-{3181,2979,0,1,3}-{3187,2976,0,1,7}-{3174,2984,0,1,3}-{3183,2982,0,1,4}-{3187,2985,0,1,1}-{3182,2988,0,1,5}-{3188,2990,0,1,2}-{3172,2992,0,1,4}-{3171,2987,0,1,4}-{3161,2982,0,1,2}-{3161,2986,0,1,3}-{3159,2987,0,1,3}-{3163,2976,0,1,4}-{3161,2977,0,1,4}-{3161,2979,0,1,6}-{3162,2982,0,1,6}-{3164,2985,0,1,2}-{3158,2970,0,1,3}-{3155,2979,0,1,4}-{3167,2972,0,1,6}-{3172,2973,0,1,5}-{3175,2973,0,1,4}-{3185,2967,0,1,2}-"
+ },
+ {
+ "npc_id": "1927",
+ "loc_data": "{3160,2979,0,0,5}-{3162,2989,0,0,1}-"
+ },
+ {
+ "npc_id": "1928",
+ "loc_data": "{3161,2977,0,0,4}-{3161,2987,0,0,1}-"
+ },
+ {
+ "npc_id": "1929",
+ "loc_data": "{3158,2987,0,0,3}-"
+ },
+ {
+ "npc_id": "1930",
+ "loc_data": "{3161,2985,0,0,6}-{3161,2983,0,0,6}-{3161,2982,0,0,6}-{3161,2981,0,0,6}-{3161,2984,0,0,6}-"
+ },
+ {
+ "npc_id": "1932",
+ "loc_data": "{2836,3740,0,0,6}-"
+ },
+ {
+ "npc_id": "1935",
+ "loc_data": "{2841,3738,0,0,3}-"
+ },
+ {
+ "npc_id": "1936",
+ "loc_data": "{2852,3735,0,1,0}-{2855,3729,0,1,0}-{2861,3725,0,1,0}-"
+ },
+ {
+ "npc_id": "1937",
+ "loc_data": "{2850,3732,0,1,0}-{2857,3726,0,1,0}-{2865,3729,0,1,0}-"
+ },
+ {
+ "npc_id": "1938",
+ "loc_data": "{2849,3735,0,1,0}-{2853,3731,0,1,0}-{2859,3728,0,1,0}-"
+ },
+ {
+ "npc_id": "1939",
+ "loc_data": "{2856,3728,0,1,0}-{2862,3722,0,1,0}-{2864,3723,0,1,0}-"
+ },
+ {
+ "npc_id": "1940",
+ "loc_data": "{2853,3728,0,1,0}-{2856,3732,0,1,0}-{2863,3720,0,1,0}-"
+ },
+ {
+ "npc_id": "1941",
+ "loc_data": "{2854,3725,0,1,0}-{2862,3728,0,1,0}-{2862,3731,0,1,0}-"
+ },
+ {
+ "npc_id": "1942",
+ "loc_data": "{2855,3735,0,1,0}-{2858,3730,0,1,0}-{2865,3726,0,1,0}-"
+ },
+ {
+ "npc_id": "1943",
+ "loc_data": "{2825,3807,2,0,1}-"
+ },
+ {
+ "npc_id": "1945",
+ "loc_data": "{2825,3811,2,0,6}-"
+ },
+ {
+ "npc_id": "1947",
+ "loc_data": "{2835,3740,0,0,6}-"
+ },
+ {
+ "npc_id": "1949",
+ "loc_data": "{2837,3740,0,0,6}-"
+ },
+ {
+ "npc_id": "1951",
+ "loc_data": "{2886,3723,0,1,3}-{2887,3720,0,1,4}-{2890,3721,0,1,7}-{2890,3724,0,1,1}-{2909,3736,0,1,5}-{2910,3736,0,1,2}-{2891,3724,0,1,7}-"
+ },
+ {
+ "npc_id": "1952",
+ "loc_data": "{2892,3726,0,1,0}-{2894,3726,0,1,6}-{2895,3728,0,1,0}-{2895,3730,0,1,5}-{2922,3755,0,1,3}-{2893,3725,0,1,2}-{2894,3727,0,1,6}-{2895,3725,0,1,3}-{2898,3735,0,1,6}-"
+ },
+ {
+ "npc_id": "1953",
+ "loc_data": "{2897,3733,0,1,5}-{2897,3737,0,1,5}-{2913,3736,0,1,3}-{2897,3737,0,1,6}-{2915,3740,0,1,1}-{2894,3742,0,1,0}-"
+ },
+ {
+ "npc_id": "1954",
+ "loc_data": "{2895,3751,0,1,1}-{2895,3755,0,1,6}-{2898,3751,0,1,3}-{2898,3755,0,1,6}-{2930,3765,0,1,5}-{2893,3748,0,1,5}-{2896,3749,0,1,1}-{2929,3762,0,1,3}-"
+ },
+ {
+ "npc_id": "1955",
+ "loc_data": "{2895,3740,0,1,1}-{2895,3744,0,1,3}-{2898,3740,0,1,6}-{2898,3744,0,1,1}-{2908,3739,0,1,0}-{2928,3763,0,1,3}-{2899,3737,0,1,2}-{2897,3739,0,1,6}-{2912,3742,0,1,2}-{2898,3750,0,1,3}-{2895,3751,0,1,4}-"
+ },
+ {
+ "npc_id": "1956",
+ "loc_data": "{2886,3758,0,1,6}-{2886,3762,0,1,3}-{2890,3756,0,1,4}-{2890,3762,0,1,1}-{2928,3753,0,1,2}-{2926,3753,0,1,6}-{2895,3754,0,1,3}-"
+ },
+ {
+ "npc_id": "1958",
+ "loc_data": "{3147,5467,0,1,1}-{3144,5466,0,1,2}-{3147,5479,0,1,2}-{3144,5475,0,1,6}-{3161,5482,0,1,5}-{3147,5475,0,1,6}-{3240,9326,0,1,3}-{3209,9310,0,1,4}-{3245,9333,0,1,4}-{3213,9307,0,1,4}-{3221,9318,0,1,3}-{3229,9333,0,1,3}-{3216,9329,0,1,4}-{3208,9294,0,1,3}-{3201,9286,0,1,1}-{3212,9326,0,1,4}-{3217,9284,0,1,7}-{3226,9284,0,1,4}-{3232,9299,0,1,6}-{3242,9295,0,1,1}-{3220,9302,0,1,0}-{3238,9305,0,1,6}-{3220,9296,0,1,1}-{3246,9291,0,1,3}-{3240,9289,0,1,4}-{3237,9305,0,1,3}-{3257,9292,0,0,5}-{3246,9321,0,1,1}-{3261,9310,0,1,3}-{3258,9309,0,1,4}-{3251,9316,0,1,3}-{3247,9310,0,1,3}-"
+ },
+ {
+ "npc_id": "1961",
+ "loc_data": "{3156,5477,0,1,5}-{3162,5479,0,1,4}-{3159,5477,0,1,6}-{3150,5474,0,1,3}-{3147,5480,0,1,1}-{3159,5484,0,1,3}-{2764,4944,1,1,0}-{2796,4976,1,1,0}-{2798,4950,1,1,0}-{2806,4939,1,1,0}-{2832,4959,2,1,0}-{3201,9293,0,1,0}-{3205,9303,0,1,0}-{3206,9328,0,1,0}-{3207,9310,0,1,0}-{3211,9284,0,1,0}-{3220,9289,0,1,0}-{3224,9334,0,1,0}-{3249,9286,0,1,0}-{3251,9303,0,1,0}-{3252,9327,0,1,0}-{3252,9332,0,1,0}-{3255,9315,0,1,0}-{3261,9296,0,1,0}-{3261,9306,0,1,0}-"
+ },
+ {
+ "npc_id": "1962",
+ "loc_data": "{3168,5458,0,1,2}-{2900,4948,3,1,0}-{2762,4962,1,1,0}-{2763,4973,1,1,0}-{2780,4977,1,1,0}-{2787,4967,1,1,0}-{2796,4959,1,1,0}-{2838,4948,2,1,0}-{3205,9329,0,1,0}-{3210,9292,0,1,0}-{3221,9310,0,1,0}-{3225,9323,0,1,0}-{3243,9310,0,1,0}-{3246,9290,0,1,0}-{3255,9301,0,1,0}-{3255,9321,0,1,0}-{3261,9331,0,1,0}-"
+ },
+ {
+ "npc_id": "1963",
+ "loc_data": "{3166,5465,0,1,7}-{3168,5462,0,1,0}-{3167,5467,0,1,1}-{3167,5467,0,1,7}-{2926,4965,3,1,0}-{2771,4947,1,1,0}-{2775,4963,1,1,0}-{2781,4948,1,1,0}-{2792,4942,1,1,0}-{2798,4954,1,1,0}-{2858,4964,2,1,0}-{3204,9309,0,1,0}-{3214,9333,0,1,0}-{3219,9297,0,1,0}-{3239,9300,0,1,0}-{3240,9286,0,1,0}-{3240,9330,0,1,0}-{3245,9306,0,1,0}-{3250,9316,0,1,0}-{3250,9317,0,1,0}-{3257,9290,0,1,0}-"
+ },
+ {
+ "npc_id": "1964",
+ "loc_data": "{2761,4950,1,1,0}-{2765,4938,1,1,0}-{2770,4955,1,1,0}-{2772,4940,1,1,0}-{2777,4943,1,1,0}-{2782,4967,1,1,0}-{2797,4965,1,1,0}-{2799,4937,1,1,0}-{2799,4941,1,1,0}-{2807,4968,1,1,0}-{2808,4975,1,1,0}-{2809,4953,1,1,0}-{2864,4946,2,1,0}-{3202,9283,0,1,0}-{3206,9333,0,1,0}-{3209,9299,0,1,0}-{3219,9301,0,1,0}-{3226,9285,0,1,0}-{3227,9303,0,1,0}-{3228,9293,0,1,0}-{3229,9333,0,1,0}-{3237,9293,0,1,0}-{3246,9321,0,1,0}-{3256,9296,0,1,0}-{3260,9285,0,1,0}-{3262,9317,0,1,0}-"
+ },
+ {
+ "npc_id": "1970",
+ "loc_data": "{3233,9317,0,1,1}-"
+ },
+ {
+ "npc_id": "1972",
+ "loc_data": "{2536,3426,0,1,0}-"
+ },
+ {
+ "npc_id": "1973",
+ "loc_data": "{2693,5075,0,1,0}-{2695,5089,0,1,0}-{2697,5096,0,1,0}-{2703,5064,0,1,0}-{2710,5105,0,1,0}-{2719,5078,0,1,0}-{2719,5112,0,1,0}-{2720,5096,0,1,0}-{2726,5086,0,1,0}-{2729,5096,0,1,0}-{2735,5061,0,1,0}-{2740,5069,0,1,0}-{2740,5085,0,1,0}-{2746,5092,0,1,0}-{2746,5114,0,1,0}-{2626,5065,0,1,0}-{2637,5099,0,1,0}-{2638,5058,0,1,0}-{2644,5090,0,1,0}-{2658,5082,0,1,0}-{2666,5097,0,1,0}-{2680,5074,0,1,0}-"
+ },
+ {
+ "npc_id": "1976",
+ "loc_data": "{2694,5067,0,1,0}-{2717,5081,0,1,0}-{2718,5108,0,1,0}-{2721,5104,0,1,0}-{2726,5091,0,1,0}-{2731,5060,0,1,0}-{2732,5073,0,1,0}-{2740,5083,0,1,0}-{2742,5103,0,1,0}-{2747,5094,0,1,0}-{3315,5508,0,1,5}-{3308,5510,0,1,3}-{3304,5507,0,1,4}-{3299,5509,0,1,3}-{3317,5514,0,1,3}-{3319,5518,0,1,4}-{3320,5507,0,1,4}-{3324,5513,0,1,1}-{3283,5510,0,1,5}-{3320,5550,0,1,0}-{3313,5523,0,1,4}-{3310,5541,0,1,4}-{3308,5535,0,1,5}-{3301,5531,0,1,4}-{3315,5530,0,1,1}-{3322,5536,0,1,4}-{3320,5539,0,1,7}-{3311,5519,0,1,3}-{3289,5525,0,1,2}-{3300,5519,0,1,6}-{3289,5515,0,1,7}-{3287,5523,0,1,3}-"
+ },
+ {
+ "npc_id": "1990",
+ "loc_data": "{3300,2797,0,0,6}-"
+ },
+ {
+ "npc_id": "1993",
+ "loc_data": "{3264,2886,0,1,0}-{3267,2891,0,1,0}-{3268,2881,0,1,0}-{3269,2885,0,1,0}-{3296,2912,0,1,0}-{3297,2919,0,1,0}-{3301,2920,0,1,0}-{3308,2916,0,1,0}-{3258,2868,0,1,0}-{3259,2823,0,1,0}-{3259,2845,0,1,0}-{3260,2830,0,1,0}-{3260,2859,0,1,0}-{3261,2819,0,1,0}-{3261,2851,0,1,0}-{3337,2922,0,1,0}-{3343,2931,0,1,0}-{3349,2922,0,1,0}-{3351,2927,0,1,0}-{3357,2922,0,1,0}-{3359,2927,0,1,0}-{3364,2937,0,1,0}-{3268,2854,0,1,0}-{3269,2827,0,1,0}-{3269,2866,0,1,0}-{3269,2875,0,1,0}-{3270,2818,0,1,0}-{3272,2841,0,1,0}-{3276,2842,0,1,0}-{3282,2839,0,1,0}-{3290,2847,0,1,0}-"
+ },
+ {
+ "npc_id": "1994",
+ "loc_data": "{3265,2931,0,1,0}-{3265,2935,0,1,0}-{3268,2932,0,1,0}-{3268,2935,0,1,0}-{3316,2900,0,1,0}-{3319,2897,0,1,0}-{3320,2901,0,1,0}-{3321,2899,0,1,0}-{3212,2863,0,1,0}-{3213,2866,0,1,0}-{3215,2863,0,1,0}-{3216,2865,0,1,0}-{3216,2868,0,1,0}-{3218,2831,0,1,0}-{3220,2830,0,1,0}-{3220,2833,0,1,0}-{3221,2831,0,1,0}-{3238,2845,0,1,0}-{3240,2845,0,1,0}-{3241,2843,0,1,0}-{3241,2847,0,1,0}-{3400,2997,0,1,0}-{3402,2999,0,1,0}-{3403,2997,0,1,0}-{3445,2993,0,1,0}-{3446,2992,0,1,0}-{3448,2991,0,1,0}-{3448,2994,0,1,0}-{3329,2933,0,1,0}-{3330,2931,0,1,0}-{3331,2933,0,1,0}-{3343,2895,0,1,0}-{3345,2896,0,1,0}-{3346,2894,0,1,0}-{3348,2894,0,1,0}-{3376,2934,0,1,0}-{3378,2933,0,1,0}-{3378,2935,0,1,0}-{3381,2907,0,1,0}-{3383,2905,0,1,0}-{3383,2908,0,1,0}-{3384,2907,0,1,0}-{3306,2817,0,1,0}-{3308,2818,0,1,0}-{3309,2816,0,1,0}-{3312,2817,0,1,0}-{3314,2861,0,1,0}-{3319,2873,0,1,0}-{3321,2871,0,1,0}-{3324,2870,0,1,0}-{3327,2858,0,1,0}-{3406,3014,0,1,0}-{3408,3013,0,1,0}-{3408,3016,0,1,0}-{3410,3015,0,1,0}-"
+ },
+ {
+ "npc_id": "1995",
+ "loc_data": "{3309,2806,0,1,0}-{3312,2806,0,1,0}-{3314,2752,0,1,0}-{3314,2806,0,1,0}-{3315,2805,0,1,0}-{3316,2780,0,1,0}-{3316,2795,0,1,0}-{3317,2752,0,1,0}-{3317,2762,0,1,0}-{3317,2763,0,1,0}-{3317,2779,0,1,0}-{3317,2794,0,1,0}-{3318,2761,0,1,0}-{3318,2778,0,1,0}-{3318,2781,0,1,0}-{3318,2794,0,1,0}-{3318,2795,0,1,0}-{3319,2760,0,1,0}-{3319,2763,0,1,0}-"
+ },
+ {
+ "npc_id": "1997",
+ "loc_data": "{3272,2802,0,1,0}-{3273,2802,0,1,0}-{3273,2805,0,1,0}-{3274,2798,0,1,0}-{3274,2799,0,1,0}-{3274,2802,0,1,0}-{3274,2804,0,1,0}-{3275,2795,0,1,0}-{3275,2796,0,1,0}-{3275,2798,0,1,0}-{3277,2752,0,1,0}-{3277,2753,0,1,0}-{3277,2756,0,1,0}-{3277,2757,0,1,0}-{3278,2752,0,1,0}-{3278,2753,0,1,0}-{3278,2754,0,1,0}-{3278,2755,0,1,0}-"
+ },
+ {
+ "npc_id": "1998",
+ "loc_data": "{3275,2803,0,1,0}-"
+ },
+ {
+ "npc_id": "1999",
+ "loc_data": "{3278,2804,0,1,0}-"
+ },
+ {
+ "npc_id": "2000",
+ "loc_data": "{3277,2802,0,1,0}-"
+ },
+ {
+ "npc_id": "2002",
+ "loc_data": "{3315,2849,0,1,0}-"
+ },
+ {
+ "npc_id": "2003",
+ "loc_data": "{3304,9196,0,1,0}-"
+ },
+ {
+ "npc_id": "2004",
+ "loc_data": "{3304,9195,0,1,0}-"
+ },
+ {
+ "npc_id": "2014",
+ "loc_data": "{3293,2788,0,1,0}-"
+ },
+ {
+ "npc_id": "2020",
+ "loc_data": "{3503,3477,0,0,0}-"
+ },
+ {
+ "npc_id": "2021",
+ "loc_data": "{3224,9516,2,1,0}-{3224,9517,2,1,0}-{3224,9518,2,1,0}-{3225,9516,2,1,0}-{3225,9517,2,1,0}-{3225,9518,2,1,0}-{3226,9516,2,1,0}-{3226,9517,2,1,0}-{3226,9518,2,1,0}-"
+ },
+ {
+ "npc_id": "2031",
+ "loc_data": "{3290,5448,0,1,6}-{3291,5452,0,1,1}-{3293,5456,0,1,6}-{3551,9680,0,0,2}-{3553,9679,0,0,1}-{3551,9675,0,0,6}-{3554,9676,0,0,7}-{3548,9676,0,0,5}-{3552,9691,0,0,2}-{3569,9681,0,0,7}-{3577,9711,0,0,5}-{3567,9675,0,0,5}-{3567,9675,0,0,5}-{3570,9678,0,0,2}-{3568,9686,0,0,1}-{3545,9721,0,0,7}-{3560,9712,0,0,6}-{3552,9685,0,0,1}-{3525,9698,0,0,6}-{3538,9668,0,0,4}-"
+ },
+ {
+ "npc_id": "2032",
+ "loc_data": "{3187,5513,0,1,3}-{3186,5510,0,1,6}-{3186,5516,0,1,6}-{3194,5511,0,1,1}-{3185,5514,0,1,5}-{3549,9678,0,0,0}-{3569,9676,0,0,5}-{3566,9678,0,0,1}-{3560,9678,0,0,2}-{3526,9678,0,0,2}-{3532,9693,0,0,5}-{3534,9690,0,0,7}-{3536,9695,0,0,2}-{3542,9694,0,0,7}-{3548,9695,0,0,7}-{3556,9695,0,0,5}-{3554,9709,0,0,2}-{3533,9708,0,0,5}-{3534,9703,0,0,5}-{3538,9721,0,0,7}-{3567,9720,0,0,6}-{3561,9711,0,0,7}-{3552,9703,0,0,1}-{3551,9698,0,0,1}-{3532,9678,0,0,5}-{3531,9675,0,0,5}-{3537,9677,0,0,2}-"
+ },
+ {
+ "npc_id": "2033",
+ "loc_data": "{3188,5511,0,1,7}-{3190,5511,0,1,6}-{3300,5494,0,1,2}-{3285,5492,0,1,6}-{3285,5495,0,1,0}-{3288,5497,0,1,3}-{3268,5487,0,0,0}-{3533,9691,0,0,4}-{3537,9694,0,0,2}-{3533,9696,0,0,2}-{3533,9693,0,0,5}-"
+ },
+ {
+ "npc_id": "2034",
+ "loc_data": "{3288,5484,0,1,4}-{3288,5467,0,1,0}-{3293,5468,0,1,2}-{3296,5475,0,1,7}-{3296,5473,0,1,2}-{3297,5480,0,1,4}-{3565,9695,0,0,1}-{3566,9692,0,0,5}-{3572,9695,0,0,7}-"
+ },
+ {
+ "npc_id": "2035",
+ "loc_data": "{3569,9696,0,0,2}-{3569,9693,0,0,6}-{3566,9694,0,0,6}-{3567,9698,0,0,2}-{3572,9692,0,0,5}-"
+ },
+ {
+ "npc_id": "2036",
+ "loc_data": "{3569,9674,0,0,0}-{3561,9677,0,0,6}-{3535,9686,0,0,6}-{3535,9698,0,0,1}-{3576,9677,0,0,3}-{3577,9679,0,0,1}-{3568,9691,0,0,2}-{3560,9694,0,0,6}-{3570,9682,0,0,1}-{3569,9687,0,0,2}-{3550,9711,0,0,5}-{3551,9708,0,0,6}-{3548,9713,0,0,6}-{3537,9711,0,0,4}-{3535,9702,0,0,7}-{3553,9722,0,0,4}-{3567,9712,0,0,5}-{3569,9704,0,0,6}-{3579,9693,0,0,7}-{3534,9675,0,0,2}-{3526,9711,0,0,1}-{3566,9668,0,0,4}-"
+ },
+ {
+ "npc_id": "2037",
+ "loc_data": "{3543,9677,0,0,3}-{3572,9680,0,0,7}-{3559,9677,0,0,4}-{3535,9685,0,0,1}-{3537,9693,0,0,1}-{3570,9697,0,0,2}-{3552,9713,0,0,6}-{3553,9711,0,0,3}-{3567,9708,0,0,6}-{3535,9679,0,0,1}-{3525,9683,0,0,6}-"
+ },
+ {
+ "npc_id": "2038",
+ "loc_data": "{2443,3051,0,0,1}-"
+ },
+ {
+ "npc_id": "2039",
+ "loc_data": "{2442,3049,0,0,3}-"
+ },
+ {
+ "npc_id": "2040",
+ "loc_data": "{2444,3047,0,0,0}-"
+ },
+ {
+ "npc_id": "2041",
+ "loc_data": "{2447,3050,0,0,0}-"
+ },
+ {
+ "npc_id": "2042",
+ "loc_data": "{2454,3047,0,0,2}-"
+ },
+ {
+ "npc_id": "2043",
+ "loc_data": "{2443,3038,0,1,1}-{2452,3030,0,1,1}-"
+ },
+ {
+ "npc_id": "2044",
+ "loc_data": "{2486,3048,0,1,3}-{2484,9392,2,1,0}-{2465,9454,2,1,0}-{2471,9422,2,1,0}-{2448,9442,2,1,0}-"
+ },
+ {
+ "npc_id": "2045",
+ "loc_data": "{2482,3046,0,1,3}-{2459,9394,2,1,0}-{2473,9430,2,1,0}-{2478,9442,2,1,0}-{2487,9455,2,1,0}-"
+ },
+ {
+ "npc_id": "2046",
+ "loc_data": "{2466,9389,2,1,0}-{2449,9429,0,1,0}-{2436,9452,2,1,0}-{2436,9465,2,1,0}-{2450,9460,2,1,0}-{2455,9440,2,1,0}-{2473,9439,2,1,0}-{2483,9408,2,1,0}-"
+ },
+ {
+ "npc_id": "2047",
+ "loc_data": "{2480,3046,0,1,3}-{2477,9384,2,1,0}-{2449,9434,0,1,0}-{2437,9429,2,1,0}-{2440,9438,2,1,0}-{2458,9408,2,1,0}-"
+ },
+ {
+ "npc_id": "2048",
+ "loc_data": "{2485,9398,2,1,0}-{2455,9435,0,1,0}-{2457,9420,2,1,0}-{2462,9431,2,1,0}-{2482,9422,2,1,0}-"
+ },
+ {
+ "npc_id": "2049",
+ "loc_data": "{2452,9440,0,1,0}-"
+ },
+ {
+ "npc_id": "2050",
+ "loc_data": "{2461,3047,0,1,3}-{2466,3052,0,1,6}-"
+ },
+ {
+ "npc_id": "2051",
+ "loc_data": "{2464,3049,0,1,2}-"
+ },
+ {
+ "npc_id": "2052",
+ "loc_data": "{2464,3045,0,1,2}-"
+ },
+ {
+ "npc_id": "2053",
+ "loc_data": "{2467,3049,0,1,2}-"
+ },
+ {
+ "npc_id": "2054",
+ "loc_data": "{2468,3046,0,1,2}-"
+ },
+ {
+ "npc_id": "2055",
+ "loc_data": "{2470,3055,0,0,5}-"
+ },
+ {
+ "npc_id": "2056",
+ "loc_data": "{2470,3040,0,0,0}-"
+ },
+ {
+ "npc_id": "2057",
+ "loc_data": "{2442,9436,2,1,0}-{2458,9413,2,1,0}-{2470,9435,2,1,0}-{2472,9460,2,1,0}-{2483,9413,2,1,0}-{2485,9447,2,1,0}-{2480,3046,0,1,0}-{2453,9393,2,1,0}-{2461,9403,2,1,0}-{2464,9380,2,1,0}-"
+ },
+ {
+ "npc_id": "2059",
+ "loc_data": "{2588,3088,0,1,3}-"
+ },
+ {
+ "npc_id": "2067",
+ "loc_data": "{3154,9544,0,0,0}-{3245,9570,0,0,0}-"
+ },
+ {
+ "npc_id": "2069",
+ "loc_data": "{3313,9652,0,1,0}-"
+ },
+ {
+ "npc_id": "2070",
+ "loc_data": "{3324,9621,0,1,0}-"
+ },
+ {
+ "npc_id": "2071",
+ "loc_data": "{3323,9643,0,1,0}-"
+ },
+ {
+ "npc_id": "2072",
+ "loc_data": "{3319,9632,0,1,0}-"
+ },
+ {
+ "npc_id": "2074",
+ "loc_data": "{3319,9605,0,0,1}-"
+ },
+ {
+ "npc_id": "2075",
+ "loc_data": "{3312,9638,0,0,3}-"
+ },
+ {
+ "npc_id": "2076",
+ "loc_data": "{3312,9628,0,0,3}-"
+ },
+ {
+ "npc_id": "2077",
+ "loc_data": "{3323,9616,0,0,6}-"
+ },
+ {
+ "npc_id": "2078",
+ "loc_data": "{3313,9622,0,0,3}-"
+ },
+ {
+ "npc_id": "2082",
+ "loc_data": "{3210,3220,1,1,6}-"
+ },
+ {
+ "npc_id": "2084",
+ "loc_data": "{3314,9612,0,1,0}-"
+ },
+ {
+ "npc_id": "2085",
+ "loc_data": "{3231,9610,0,1,0}-"
+ },
+ {
+ "npc_id": "2092",
+ "loc_data": "{2869,10196,1,1,0}-"
+ },
+ {
+ "npc_id": "2093",
+ "loc_data": "{2871,10207,1,1,0}-"
+ },
+ {
+ "npc_id": "2094",
+ "loc_data": "{2869,10205,1,0,6}-"
+ },
+ {
+ "npc_id": "2095",
+ "loc_data": "{2889,10211,1,0,6}-"
+ },
+ {
+ "npc_id": "2096",
+ "loc_data": "{2890,10207,1,0,6}-"
+ },
+ {
+ "npc_id": "2097",
+ "loc_data": "{2891,10196,1,0,6}-"
+ },
+ {
+ "npc_id": "2098",
+ "loc_data": "{2890,10192,1,0,6}-"
+ },
+ {
+ "npc_id": "2100",
+ "loc_data": "{2870,10196,1,1,0}-"
+ },
+ {
+ "npc_id": "2101",
+ "loc_data": "{2868,10202,1,1,0}-"
+ },
+ {
+ "npc_id": "2102",
+ "loc_data": "{2869,10208,1,1,0}-"
+ },
+ {
+ "npc_id": "2103",
+ "loc_data": "{2892,10209,1,1,0}-"
+ },
+ {
+ "npc_id": "2104",
+ "loc_data": "{2890,10204,1,1,0}-"
+ },
+ {
+ "npc_id": "2105",
+ "loc_data": "{2890,10196,1,1,0}-"
+ },
+ {
+ "npc_id": "2106",
+ "loc_data": "{2892,10190,1,1,0}-"
+ },
+ {
+ "npc_id": "2110",
+ "loc_data": "{2877,10198,1,1,0}-{2878,10196,1,1,0}-"
+ },
+ {
+ "npc_id": "2111",
+ "loc_data": "{2878,10201,1,1,0}-{2876,10201,1,1,0}-"
+ },
+ {
+ "npc_id": "2113",
+ "loc_data": "{2878,10201,1,1,0}-{2876,10201,1,1,0}-"
+ },
+ {
+ "npc_id": "2115",
+ "loc_data": "{2882,10201,1,1,0}-{2883,10200,1,1,0}-"
+ },
+ {
+ "npc_id": "2117",
+ "loc_data": "{2883,10198,1,1,0}-{2884,10199,1,1,0}-"
+ },
+ {
+ "npc_id": "2119",
+ "loc_data": "{2882,10197,1,1,0}-{2883,10196,1,1,0}-"
+ },
+ {
+ "npc_id": "2121",
+ "loc_data": "{2879,10193,1,1,0}-{2880,10195,1,1,0}-"
+ },
+ {
+ "npc_id": "2127",
+ "loc_data": "{2880,10199,1,1,0}-"
+ },
+ {
+ "npc_id": "2130",
+ "loc_data": "{2889,10207,0,1,0}-"
+ },
+ {
+ "npc_id": "2131",
+ "loc_data": "{2822,10212,0,1,0}-{2891,10192,0,1,0}-"
+ },
+ {
+ "npc_id": "2132",
+ "loc_data": "{2828,10210,0,1,0}-{2891,10199,0,1,0}-"
+ },
+ {
+ "npc_id": "2133",
+ "loc_data": "{2847,10190,0,1,0}-"
+ },
+ {
+ "npc_id": "2134",
+ "loc_data": "{2823,10220,0,1,0}-"
+ },
+ {
+ "npc_id": "2135",
+ "loc_data": "{2825,10209,0,1,0}-"
+ },
+ {
+ "npc_id": "2136",
+ "loc_data": "{2827,10212,1,1,0}-"
+ },
+ {
+ "npc_id": "2138",
+ "loc_data": "{2836,10192,1,1,0}-"
+ },
+ {
+ "npc_id": "2139",
+ "loc_data": "{2835,10193,1,0,1}-"
+ },
+ {
+ "npc_id": "2140",
+ "loc_data": "{2835,10226,0,0,6}-"
+ },
+ {
+ "npc_id": "2141",
+ "loc_data": "{2906,10204,0,1,0}-"
+ },
+ {
+ "npc_id": "2142",
+ "loc_data": "{2904,10206,0,1,0}-"
+ },
+ {
+ "npc_id": "2151",
+ "loc_data": "{2873,10210,0,1,0}-"
+ },
+ {
+ "npc_id": "2152",
+ "loc_data": "{2827,10231,0,1,0}-"
+ },
+ {
+ "npc_id": "2153",
+ "loc_data": "{2826,10197,0,1,0}-"
+ },
+ {
+ "npc_id": "2154",
+ "loc_data": "{2869,10190,0,1,0}-"
+ },
+ {
+ "npc_id": "2155",
+ "loc_data": "{2871,10199,0,1,0}-"
+ },
+ {
+ "npc_id": "2156",
+ "loc_data": "{2892,10212,0,1,0}-"
+ },
+ {
+ "npc_id": "2157",
+ "loc_data": "{2887,10212,0,1,0}-"
+ },
+ {
+ "npc_id": "2158",
+ "loc_data": "{2885,10207,0,1,0}-"
+ },
+ {
+ "npc_id": "2159",
+ "loc_data": "{2885,10196,0,1,0}-"
+ },
+ {
+ "npc_id": "2160",
+ "loc_data": "{2925,10210,0,1,0}-"
+ },
+ {
+ "npc_id": "2161",
+ "loc_data": "{2869,10211,0,1,0}-"
+ },
+ {
+ "npc_id": "2162",
+ "loc_data": "{2886,10187,0,1,0}-"
+ },
+ {
+ "npc_id": "2163",
+ "loc_data": "{2836,10205,0,1,0}-"
+ },
+ {
+ "npc_id": "2164",
+ "loc_data": "{2838,10205,0,0,1}-"
+ },
+ {
+ "npc_id": "2169",
+ "loc_data": "{2836,10222,0,1,0}-"
+ },
+ {
+ "npc_id": "2170",
+ "loc_data": "{2853,10196,0,1,0}-"
+ },
+ {
+ "npc_id": "2171",
+ "loc_data": "{2931,10184,0,1,0}-"
+ },
+ {
+ "npc_id": "2172",
+ "loc_data": "{2929,10191,0,1,0}-"
+ },
+ {
+ "npc_id": "2173",
+ "loc_data": "{2931,10191,0,1,0}-"
+ },
+ {
+ "npc_id": "2174",
+ "loc_data": "{2930,10188,0,1,0}-"
+ },
+ {
+ "npc_id": "2175",
+ "loc_data": "{2931,10187,0,1,0}-"
+ },
+ {
+ "npc_id": "2177",
+ "loc_data": "{2843,10191,1,0,1}-"
+ },
+ {
+ "npc_id": "2178",
+ "loc_data": "{2916,10195,0,1,0}-"
+ },
+ {
+ "npc_id": "2179",
+ "loc_data": "{2840,10199,0,0,6}-"
+ },
+ {
+ "npc_id": "2180",
+ "loc_data": "{2997,9837,0,1,3}-"
+ },
+ {
+ "npc_id": "2181",
+ "loc_data": "{2874,9871,0,1,0}-"
+ },
+ {
+ "npc_id": "2182",
+ "loc_data": "{2908,10176,0,1,0}-"
+ },
+ {
+ "npc_id": "2187",
+ "loc_data": "{2906,10198,0,1,0}-"
+ },
+ {
+ "npc_id": "2188",
+ "loc_data": "{2851,10223,0,1,0}-"
+ },
+ {
+ "npc_id": "2189",
+ "loc_data": "{2851,10223,0,1,0}-"
+ },
+ {
+ "npc_id": "2190",
+ "loc_data": "{2923,10203,0,1,0}-"
+ },
+ {
+ "npc_id": "2191",
+ "loc_data": "{2924,10213,0,1,0}-"
+ },
+ {
+ "npc_id": "2192",
+ "loc_data": "{2933,10219,0,0,3}-"
+ },
+ {
+ "npc_id": "2193",
+ "loc_data": "{2899,10218,0,1,0}-"
+ },
+ {
+ "npc_id": "2194",
+ "loc_data": "{2926,10225,0,1,0}-"
+ },
+ {
+ "npc_id": "2195",
+ "loc_data": "{2900,10227,0,1,0}-"
+ },
+ {
+ "npc_id": "2196",
+ "loc_data": "{2838,10196,0,1,0}-"
+ },
+ {
+ "npc_id": "2197",
+ "loc_data": "{2848,10198,0,1,0}-"
+ },
+ {
+ "npc_id": "2198",
+ "loc_data": "{2906,10216,0,1,0}-"
+ },
+ {
+ "npc_id": "2199",
+ "loc_data": "{2855,10199,0,1,0}-"
+ },
+ {
+ "npc_id": "2201",
+ "loc_data": "{2866,10208,0,1,0}-"
+ },
+ {
+ "npc_id": "2203",
+ "loc_data": "{2912,10222,0,1,0}-"
+ },
+ {
+ "npc_id": "2205",
+ "loc_data": "{2842,10129,0,0,3}-"
+ },
+ {
+ "npc_id": "2206",
+ "loc_data": "{2888,10227,0,0,6}-"
+ },
+ {
+ "npc_id": "2234",
+ "loc_data": "{3081,3251,0,1,6}-{2636,3365,0,1,6}-"
+ },
+ {
+ "npc_id": "2235",
+ "loc_data": "{3241,3345,0,1,4}-"
+ },
+ {
+ "npc_id": "2236",
+ "loc_data": "{3078,3250,0,1,1}-{3081,3250,0,1,2}-"
+ },
+ {
+ "npc_id": "2237",
+ "loc_data": "{3249,3266,0,1,5}-"
+ },
+ {
+ "npc_id": "2238",
+ "loc_data": "{3219,3247,0,1,6}-"
+ },
+ {
+ "npc_id": "2240",
+ "loc_data": "{3077,3259,0,1,4}-"
+ },
+ {
+ "npc_id": "2241",
+ "loc_data": "{3078,3260,0,1,3}-"
+ },
+ {
+ "npc_id": "2242",
+ "loc_data": "{3076,3260,0,1,1}-{3078,3260,0,1,6}-"
+ },
+ {
+ "npc_id": "2243",
+ "loc_data": "{3078,3259,0,1,3}-"
+ },
+ {
+ "npc_id": "2244",
+ "loc_data": "{3233,3228,0,1,3}-"
+ },
+ {
+ "npc_id": "2245",
+ "loc_data": "{2505,3240,0,1,4}-{2512,3250,0,1,1}-{2506,3242,0,1,3}-{2510,3252,0,1,4}-{2516,3248,0,1,1}-{2518,3245,0,1,7}-{2518,3245,0,1,1}-{2517,3242,0,1,6}-{2523,3241,0,1,4}-{2525,3241,0,1,1}-{2515,3256,0,1,6}-{2519,3257,0,1,4}-"
+ },
+ {
+ "npc_id": "2246",
+ "loc_data": "{2521,3239,0,1,5}-"
+ },
+ {
+ "npc_id": "2247",
+ "loc_data": "{2543,3225,0,1,7}-{2553,3220,0,1,3}-{2545,3220,0,1,4}-{2525,3220,0,1,4}-{2518,3218,0,1,1}-"
+ },
+ {
+ "npc_id": "2248",
+ "loc_data": "{2540,3218,0,1,1}-{2515,3216,0,1,1}-{2512,3215,0,1,7}-"
+ },
+ {
+ "npc_id": "2249",
+ "loc_data": "{2530,3224,0,1,4}-{2524,3221,0,1,2}-{2543,3217,0,1,4}-{2530,3212,0,1,4}-{2557,3234,0,1,4}-{2540,3226,0,1,5}-{2532,3213,0,1,4}-{2527,3201,0,1,6}-{2544,3216,0,1,6}-{2519,3222,0,1,6}-{2526,3227,0,1,4}-{2550,3234,0,1,3}-{2553,3220,0,1,3}-{2521,3202,0,1,6}-{2525,3220,0,1,4}-{2544,3230,0,1,3}-{2547,3212,0,1,4}-{2545,3212,0,1,0}-{2540,3208,0,1,4}-{2533,3202,0,1,6}-{2536,3236,0,1,6}-{2525,3204,0,1,0}-{2539,3238,0,1,4}-"
+ },
+ {
+ "npc_id": "2250",
+ "loc_data": "{2525,3209,0,1,4}-{2558,3228,0,1,4}-{2543,3212,0,1,3}-{2538,3223,0,1,0}-{2527,3201,0,1,7}-{2517,3222,0,1,3}-{2547,3231,0,1,6}-{2550,3220,0,1,4}-{2538,3224,0,1,3}-{2545,3213,0,1,0}-{2542,3208,0,1,5}-"
+ },
+ {
+ "npc_id": "2251",
+ "loc_data": "{2520,3217,0,1,3}-{2524,3209,0,1,1}-{2529,3200,0,1,5}-{2530,3209,0,1,1}-{2519,3223,0,1,4}-{2518,3224,0,1,2}-{2527,3201,0,1,7}-{2521,3202,0,1,4}-{2542,3208,0,1,4}-{2539,3233,0,1,6}-"
+ },
+ {
+ "npc_id": "2252",
+ "loc_data": "{3079,3257,0,1,1}-{3091,3250,0,1,6}-{3137,3254,0,1,0}-{3199,3302,0,1,3}-"
+ },
+ {
+ "npc_id": "2256",
+ "loc_data": "{2571,3305,0,1,7}-{2572,3297,0,1,2}-{2572,3304,0,1,1}-{2577,3308,0,1,6}-{2582,3287,0,1,3}-{2582,3299,0,1,0}-{2583,3292,0,1,4}-{2572,3292,1,1,1}-{2577,3295,1,1,6}-{2576,3286,1,1,1}-{2585,3289,1,1,7}-{2585,3304,1,1,1}-{2582,3306,1,1,5}-{2582,3286,1,1,3}-{2653,3315,0,1,6}-{2658,3306,0,1,4}-"
+ },
+ {
+ "npc_id": "2257",
+ "loc_data": "{3105,3554,0,1,1}-"
+ },
+ {
+ "npc_id": "2260",
+ "loc_data": "{3259,3385,0,1,6}-"
+ },
+ {
+ "npc_id": "2262",
+ "loc_data": "{3039,4834,0,0,7}-"
+ },
+ {
+ "npc_id": "2263",
+ "loc_data": "{3021,4812,0,1,5}-{3014,4838,0,1,6}-{3061,4836,0,1,4}-{3017,4812,0,1,6}-{3061,4842,0,1,3}-{3048,4808,0,1,3}-{3021,4847,0,1,6}-{3054,4849,0,1,6}-{3015,4833,0,1,0}-{3035,4854,0,1,6}-{3016,4829,0,1,4}-{3040,4810,0,1,3}-{3059,4815,0,1,1}-{3027,4851,0,1,6}-{3020,4819,0,1,4}-{3020,4845,0,1,2}-{3061,4829,0,1,0}-{3018,4842,0,1,4}-{3037,4906,0,1,2}-{3057,4875,0,0,6}-{3016,4892,0,1,6}-{3058,4877,0,0,6}-{3051,4874,0,1,0}-{3029,4890,0,1,6}-{3032,4901,0,1,2}-{3024,4916,0,1,3}-{3020,4903,0,1,4}-{3061,4883,0,0,3}-{3058,4889,0,0,3}-{3053,4896,0,0,3}-{3038,4871,0,1,6}-{3053,4900,0,0,7}-{3055,4915,0,0,5}-{3037,4906,0,0,5}-{3047,4886,0,1,4}-{3033,4884,0,1,4}-{3030,4877,0,1,2}-{3026,4879,0,1,3}-{3024,4879,0,1,3}-"
+ },
+ {
+ "npc_id": "2264",
+ "loc_data": "{3017,4821,0,1,4}-{3059,4813,0,1,0}-{3032,4808,0,1,3}-{3059,4820,0,1,3}-{3062,4828,0,1,6}-{3036,4856,0,1,7}-{3062,4837,0,1,5}-{3025,4850,0,1,1}-{3052,4858,0,1,1}-{3024,4813,0,1,4}-{3048,4854,0,1,3}-{3034,4852,0,1,1}-{3028,4808,0,1,1}-{3018,4843,0,1,2}-{3028,4851,0,1,0}-{3016,4831,0,1,1}-{3043,4810,0,1,3}-{3020,4888,0,1,3}-{3039,4871,0,1,4}-{3049,4921,0,1,7}-{3019,4877,0,1,6}-{3017,4893,0,1,7}-{3019,4898,0,1,4}-{3020,4912,0,1,2}-{3054,4915,0,1,7}-{3052,4898,0,1,1}-{3034,4905,0,1,4}-{3052,4896,0,1,3}-{3046,4901,0,1,2}-{3062,4884,0,1,6}-{3049,4873,0,1,1}-{3041,4871,0,1,1}-"
+ },
+ {
+ "npc_id": "2265",
+ "loc_data": "{3038,4809,0,1,6}-{3024,4850,0,1,3}-{3052,4808,0,1,5}-{3021,4847,0,1,3}-{3058,4811,0,1,4}-{3055,4848,0,1,0}-{3062,4822,0,1,6}-{3017,4837,0,1,3}-{3017,4817,0,1,7}-{3025,4812,0,1,1}-{3060,4825,0,1,3}-{3062,4838,0,1,3}-{3054,4850,0,1,6}-{3020,4914,0,1,2}-{3059,4890,0,1,3}-{3031,4901,0,1,7}-{3044,4915,0,1,6}-{3044,4883,0,1,4}-{3039,4885,0,1,1}-{3048,4917,0,1,5}-{3059,4888,0,1,5}-{3047,4874,0,1,2}-{3055,4908,0,1,5}-{3016,4876,0,1,1}-{3029,4890,0,1,5}-{3059,4906,0,1,1}-{3021,4875,0,1,3}-{3032,4903,0,1,3}-{3026,4914,0,1,6}-"
+ },
+ {
+ "npc_id": "2266",
+ "loc_data": "{3053,4978,1,1,1}-"
+ },
+ {
+ "npc_id": "2270",
+ "loc_data": "{3048,4975,1,1,6}-"
+ },
+ {
+ "npc_id": "2271",
+ "loc_data": "{3045,4971,1,0,4}-"
+ },
+ {
+ "npc_id": "2274",
+ "loc_data": "{3243,3245,0,1,4}-"
+ },
+ {
+ "npc_id": "2275",
+ "loc_data": "{3244,3248,0,1,1}-"
+ },
+ {
+ "npc_id": "2276",
+ "loc_data": "{3243,3247,0,1,1}-"
+ },
+ {
+ "npc_id": "2277",
+ "loc_data": "{3248,3247,0,1,4}-"
+ },
+ {
+ "npc_id": "2278",
+ "loc_data": "{3190,3251,0,1,0}-{3179,3243,0,1,0}-{3179,3248,0,1,0}-{3146,3235,0,1,0}-{3146,3261,0,1,0}-{3247,3244,0,1,2}-"
+ },
+ {
+ "npc_id": "2279",
+ "loc_data": "{3181,3243,0,1,0}-{3176,3248,0,1,0}-{3182,3248,0,1,0}-{3140,3226,0,1,0}-{3140,3259,0,1,0}-{3143,3260,0,1,0}-{3244,3247,0,1,3}-"
+ },
+ {
+ "npc_id": "2280",
+ "loc_data": "{3144,3228,0,1,0}-{3245,3244,0,1,4}-"
+ },
+ {
+ "npc_id": "2281",
+ "loc_data": "{3187,3241,0,1,0}-{3177,3243,0,1,0}-{3246,3245,0,1,4}-"
+ },
+ {
+ "npc_id": "2282",
+ "loc_data": "{2488,4973,0,0,6}-"
+ },
+ {
+ "npc_id": "2283",
+ "loc_data": "{2458,4980,0,0,6}-"
+ },
+ {
+ "npc_id": "2284",
+ "loc_data": "{2457,4966,0,0,6}-"
+ },
+ {
+ "npc_id": "2286",
+ "loc_data": "{2476,4958,0,0,3}-"
+ },
+ {
+ "npc_id": "2287",
+ "loc_data": "{2443,4956,0,0,4}-"
+ },
+ {
+ "npc_id": "2288",
+ "loc_data": "{2469,4941,0,0,6}-"
+ },
+ {
+ "npc_id": "2289",
+ "loc_data": "{2451,4939,0,0,6}-"
+ },
+ {
+ "npc_id": "2290",
+ "loc_data": "{2997,3373,0,0,0}-"
+ },
+ {
+ "npc_id": "2291",
+ "loc_data": "{3311,3109,0,0,3}-"
+ },
+ {
+ "npc_id": "2292",
+ "loc_data": "{3182,3043,0,0,3}-"
+ },
+ {
+ "npc_id": "2293",
+ "loc_data": "{3469,3111,0,1,6}-"
+ },
+ {
+ "npc_id": "2294",
+ "loc_data": "{3350,3004,0,0,6}-"
+ },
+ {
+ "npc_id": "2296",
+ "loc_data": "{3401,2918,0,0,6}-"
+ },
+ {
+ "npc_id": "2298",
+ "loc_data": "{3287,2813,0,1,1}-"
+ },
+ {
+ "npc_id": "2300",
+ "loc_data": "{3243,2813,0,0,1}-"
+ },
+ {
+ "npc_id": "2301",
+ "loc_data": "{3181,3043,0,1,3}-{3310,3107,0,1,4}-"
+ },
+ {
+ "npc_id": "2302",
+ "loc_data": "{3243,2812,0,1,1}-"
+ },
+ {
+ "npc_id": "2304",
+ "loc_data": "{3039,3292,0,1,6}-"
+ },
+ {
+ "npc_id": "2305",
+ "loc_data": "{2821,3463,0,1,3}-"
+ },
+ {
+ "npc_id": "2306",
+ "loc_data": "{2643,3363,0,0,5}-"
+ },
+ {
+ "npc_id": "2307",
+ "loc_data": "{3627,3526,0,1,6}-"
+ },
+ {
+ "npc_id": "2310",
+ "loc_data": "{2928,3282,0,1,1}-{2927,3269,0,1,1}-{3025,3312,0,1,4}-{3043,3308,0,1,6}-{3023,3297,0,1,5}-"
+ },
+ {
+ "npc_id": "2311",
+ "loc_data": "{3035,3296,0,0,0}-"
+ },
+ {
+ "npc_id": "2312",
+ "loc_data": "{3014,3292,0,0,0}-"
+ },
+ {
+ "npc_id": "2313",
+ "loc_data": "{3020,3297,0,1,6}-{3040,3296,0,1,3}-{3031,3283,0,1,4}-{3020,3288,0,1,0}-"
+ },
+ {
+ "npc_id": "2314",
+ "loc_data": "{3018,3296,0,1,1}-{3016,3288,0,1,4}-{3030,3287,0,1,4}-{3017,3282,0,1,3}-{2549,3566,0,1,2}-{2553,3564,0,1,4}-"
+ },
+ {
+ "npc_id": "2315",
+ "loc_data": "{3018,3282,0,1,5}-{3037,3289,0,1,1}-{2551,3562,0,1,1}-{2554,3561,0,1,3}-"
+ },
+ {
+ "npc_id": "2316",
+ "loc_data": "{3015,3311,0,1,4}-"
+ },
+ {
+ "npc_id": "2317",
+ "loc_data": "{3016,3309,0,1,6}-"
+ },
+ {
+ "npc_id": "2318",
+ "loc_data": "{3017,3307,0,0,0}-"
+ },
+ {
+ "npc_id": "2319",
+ "loc_data": "{3017,3309,0,0,0}-"
+ },
+ {
+ "npc_id": "2321",
+ "loc_data": "{2915,10194,1,1,0}-"
+ },
+ {
+ "npc_id": "2323",
+ "loc_data": "{3056,3306,0,1,1}-"
+ },
+ {
+ "npc_id": "2324",
+ "loc_data": "{2807,3464,0,1,3}-"
+ },
+ {
+ "npc_id": "2325",
+ "loc_data": "{2664,3374,0,1,1}-"
+ },
+ {
+ "npc_id": "2326",
+ "loc_data": "{3600,3527,0,1,1}-"
+ },
+ {
+ "npc_id": "2327",
+ "loc_data": "{2814,3337,0,1,6}-"
+ },
+ {
+ "npc_id": "2330",
+ "loc_data": "{2766,3211,0,1,0}-"
+ },
+ {
+ "npc_id": "2331",
+ "loc_data": "{2860,3430,0,1,4}-"
+ },
+ {
+ "npc_id": "2332",
+ "loc_data": "{2573,3102,0,1,4}-"
+ },
+ {
+ "npc_id": "2333",
+ "loc_data": "{3226,3311,0,0,0}-"
+ },
+ {
+ "npc_id": "2334",
+ "loc_data": "{2662,3525,0,1,1}-"
+ },
+ {
+ "npc_id": "2335",
+ "loc_data": "{3181,3359,0,0,0}-"
+ },
+ {
+ "npc_id": "2336",
+ "loc_data": "{2938,3221,0,1,0}-"
+ },
+ {
+ "npc_id": "2337",
+ "loc_data": "{2589,3861,0,1,0}-"
+ },
+ {
+ "npc_id": "2338",
+ "loc_data": "{2615,3229,0,1,0}-"
+ },
+ {
+ "npc_id": "2339",
+ "loc_data": "{2934,3438,0,1,6}-"
+ },
+ {
+ "npc_id": "2340",
+ "loc_data": "{3007,3373,0,1,4}-"
+ },
+ {
+ "npc_id": "2341",
+ "loc_data": "{3229,3456,0,1,0}-"
+ },
+ {
+ "npc_id": "2342",
+ "loc_data": "{3196,3231,0,1,4}-"
+ },
+ {
+ "npc_id": "2343",
+ "loc_data": "{2473,3446,0,1,6}-"
+ },
+ {
+ "npc_id": "2344",
+ "loc_data": "{2490,3183,0,1,3}-"
+ },
+ {
+ "npc_id": "2352",
+ "loc_data": "{2334,3183,0,1,0}-"
+ },
+ {
+ "npc_id": "2353",
+ "loc_data": "{2324,3179,0,1,5}-"
+ },
+ {
+ "npc_id": "2355",
+ "loc_data": "{2353,3163,0,0,4}-"
+ },
+ {
+ "npc_id": "2356",
+ "loc_data": "{2323,3163,0,1,0}-"
+ },
+ {
+ "npc_id": "2357",
+ "loc_data": "{2340,3157,1,1,0}-"
+ },
+ {
+ "npc_id": "2359",
+ "loc_data": "{2335,3169,0,1,3}-"
+ },
+ {
+ "npc_id": "2360",
+ "loc_data": "{2335,3174,0,1,4}-{2322,3172,0,1,5}-"
+ },
+ {
+ "npc_id": "2361",
+ "loc_data": "{2345,3172,0,1,2}-{2340,3178,0,1,3}-"
+ },
+ {
+ "npc_id": "2362",
+ "loc_data": "{2330,3163,0,1,3}-"
+ },
+ {
+ "npc_id": "2372",
+ "loc_data": "{2044,4628,0,1,0}-"
+ },
+ {
+ "npc_id": "2373",
+ "loc_data": "{2037,4636,0,1,0}-{2038,4644,0,1,0}-{2041,4638,0,1,0}-{2044,4642,0,1,0}-"
+ },
+ {
+ "npc_id": "2374",
+ "loc_data": "{2036,4633,0,0,6}-"
+ },
+ {
+ "npc_id": "2381",
+ "loc_data": "{2555,3444,0,1,0}-"
+ },
+ {
+ "npc_id": "2382",
+ "loc_data": "{3022,3946,0,1,0}-"
+ },
+ {
+ "npc_id": "2383",
+ "loc_data": "{3034,3701,0,1,0}-"
+ },
+ {
+ "npc_id": "2384",
+ "loc_data": "{3162,2982,0,1,0}-"
+ },
+ {
+ "npc_id": "2385",
+ "loc_data": "{3112,3158,0,1,0}-"
+ },
+ {
+ "npc_id": "2386",
+ "loc_data": "{3052,3496,1,1,0}-"
+ },
+ {
+ "npc_id": "2387",
+ "loc_data": "{3053,3378,1,1,0}-"
+ },
+ {
+ "npc_id": "2388",
+ "loc_data": "{2950,3820,0,1,0}-"
+ },
+ {
+ "npc_id": "2389",
+ "loc_data": "{3218,3677,0,1,0}-"
+ },
+ {
+ "npc_id": "2390",
+ "loc_data": "{3068,3858,0,1,0}-"
+ },
+ {
+ "npc_id": "2391",
+ "loc_data": "{2850,3348,0,1,0}-"
+ },
+ {
+ "npc_id": "2392",
+ "loc_data": "{3044,3204,0,1,0}-"
+ },
+ {
+ "npc_id": "2393",
+ "loc_data": "{2396,3481,0,1,0}-"
+ },
+ {
+ "npc_id": "2394",
+ "loc_data": "{3294,3934,1,1,0}-"
+ },
+ {
+ "npc_id": "2395",
+ "loc_data": "{3448,3550,1,1,0}-"
+ },
+ {
+ "npc_id": "2396",
+ "loc_data": "{3119,9996,0,1,0}-"
+ },
+ {
+ "npc_id": "2414",
+ "loc_data": "{3263,3400,1,0,0}-"
+ },
+ {
+ "npc_id": "2435",
+ "loc_data": "{2621,3682,0,0,6}-"
+ },
+ {
+ "npc_id": "2438",
+ "loc_data": "{2544,3761,0,0,6}-"
+ },
+ {
+ "npc_id": "2439",
+ "loc_data": "{2659,3657,0,1,3}-"
+ },
+ {
+ "npc_id": "2440",
+ "loc_data": "{2545,10141,0,0,6}-"
+ },
+ {
+ "npc_id": "2443",
+ "loc_data": "{2543,10143,0,0,3}-"
+ },
+ {
+ "npc_id": "2446",
+ "loc_data": "{2545,10145,0,0,6}-"
+ },
+ {
+ "npc_id": "2449",
+ "loc_data": "{2546,10144,0,0,1}-{2546,10142,0,0,6}-"
+ },
+ {
+ "npc_id": "2452",
+ "loc_data": "{2526,10166,0,1,6}-"
+ },
+ {
+ "npc_id": "2453",
+ "loc_data": "{1846,4405,3,0,2}-{1839,4400,3,0,3}-{1835,4394,3,0,3}-{1834,4406,3,0,1}-{1843,4406,3,0,2}-{1899,4372,0,0,2}-{1888,4362,0,0,7}-{1896,4362,0,0,2}-{1897,4368,0,0,5}-{2521,10160,0,0,1}-{2535,10163,0,0,6}-{2520,10165,0,0,3}-{2533,10162,0,0,3}-{2545,10158,0,0,5}-{2547,10151,0,0,3}-{2543,10166,0,0,3}-{2538,10160,0,0,6}-{2506,10163,0,0,3}-{2516,10163,0,0,3}-{2498,10164,0,0,5}-{2544,10160,0,0,0}-{2525,10162,0,0,3}-{2530,10161,0,0,0}-{2537,10167,0,0,7}-{2519,10163,0,0,3}-{2511,10163,0,0,3}-{2530,10161,0,0,7}-{2524,10166,0,0,3}-{2508,10159,0,0,0}-"
+ },
+ {
+ "npc_id": "2455",
+ "loc_data": "{1815,4405,2,1,6}-{1818,4403,2,1,3}-{1813,4404,2,1,7}-{1814,4407,2,1,7}-{1821,4393,2,1,1}-{1823,4389,2,1,1}-{1828,4387,2,1,3}-{1821,4392,2,1,0}-{1826,4391,2,1,0}-{1844,4360,1,1,4}-{1844,4361,1,1,5}-{1851,4360,1,1,3}-{1831,4378,3,1,2}-{1838,4379,3,1,2}-{1824,4376,3,1,1}-{1832,4380,3,1,6}-{1844,4373,2,1,4}-{1849,4381,2,1,4}-{1846,4374,2,1,1}-{1865,4377,2,1,1}-{1865,4397,1,1,6}-{1857,4360,1,1,1}-{1862,4362,1,1,1}-{1862,4362,1,1,7}-{1864,4366,1,1,1}-{1865,4383,2,1,4}-{1864,4390,1,1,1}-{1865,4408,1,1,4}-{1877,4410,1,1,1}-{1883,4411,1,1,4}-{1889,4410,1,1,4}-{1887,4374,0,1,6}-{1890,4372,0,1,4}-{1890,4366,0,1,4}-{1896,4371,0,1,3}-{1890,4364,0,1,7}-{2457,10139,0,1,2}-{2465,10133,0,1,4}-{2449,10148,0,1,1}-{2471,10133,0,1,6}-{2446,10145,0,1,4}-{2443,10148,0,1,1}-{2452,10161,0,1,3}-{2444,10145,0,1,1}-{2462,10163,0,1,3}-{2446,10141,0,1,3}-{2454,10149,0,1,0}-{2476,10155,0,1,4}-{2456,10153,0,1,0}-{2485,10142,0,1,3}-{2457,10152,0,1,4}-{2485,10126,0,1,4}-{2475,10148,0,1,3}-{2471,10160,0,1,1}-{2453,10145,0,1,3}-{2463,10158,0,1,4}-{2457,10163,0,1,2}-{2471,10154,0,1,6}-{2476,10151,0,1,7}-{2479,10154,0,1,1}-{2486,10158,0,1,4}-{2485,10165,0,1,5}-{2485,10153,0,1,4}-{2474,10140,0,1,7}-{2466,10130,0,1,6}-{2464,10138,0,1,6}-{2486,10150,0,1,6}-{2473,10127,0,1,4}-{2483,10126,0,1,3}-{2456,10133,0,1,6}-{2467,10163,0,1,6}-{2477,10143,0,1,3}-{2489,10139,0,1,4}-{2486,10127,0,1,1}-{2480,10141,0,1,7}-{2490,10155,0,1,3}-{2459,10133,0,1,3}-{2455,10163,0,1,0}-{2494,10162,0,1,1}-{2493,10132,0,1,3}-{2494,10129,0,1,5}-{2496,10166,0,1,1}-{2502,10167,0,1,1}-{2499,10162,0,1,0}-{2502,10159,0,1,1}-{2502,10166,0,1,4}-{2496,10130,0,1,3}-{2498,10128,0,1,1}-{2497,10126,0,1,4}-{2499,10128,0,1,5}-{2501,10126,0,1,3}-{2506,10125,0,1,4}-{2506,10127,0,1,4}-{2507,10128,0,1,3}-{2507,10126,0,1,6}-{2511,10126,0,1,0}-{2513,10126,0,1,4}-{2517,10129,0,1,3}-{2513,10127,0,1,3}-{2516,10124,0,1,4}-{2520,10122,0,1,5}-{2522,10126,0,1,3}-{2524,10129,0,1,4}-{2525,10125,0,1,4}-{2529,10122,0,1,4}-{2529,10124,0,1,2}-{2526,10126,0,1,3}-{2529,10130,0,1,6}-{2530,10127,0,1,5}-{2532,10121,0,1,0}-{2532,10123,0,1,3}-{2538,10126,0,1,0}-{2535,10125,0,1,7}-{2536,10127,0,1,1}-{2539,10130,0,1,6}-{2543,10130,0,1,6}-{2548,10131,0,1,1}-{2542,10128,0,1,3}-"
+ },
+ {
+ "npc_id": "2456",
+ "loc_data": "{2452,10145,0,0,4}-{2445,10138,0,0,7}-"
+ },
+ {
+ "npc_id": "2457",
+ "loc_data": "{1804,4369,2,1,2}-{1812,4363,2,1,5}-{1817,4368,2,1,6}-{1801,4404,3,1,6}-{1805,4405,3,1,1}-{1803,4404,3,1,7}-{1811,4394,1,1,7}-{1804,4391,1,1,2}-{1798,4391,1,1,4}-{1802,4389,1,1,4}-{1799,4386,2,1,1}-{1799,4381,2,1,6}-{1798,4375,1,1,4}-{1803,4376,1,1,6}-{1797,4380,1,1,6}-{1848,4394,1,1,3}-{1850,4389,1,1,1}-{1850,4391,1,1,2}-{1902,4367,0,1,6}-{1894,4367,0,1,1}-{1893,4361,0,1,3}-{1886,4369,0,1,1}-{2500,10148,0,1,3}-{2505,10150,0,1,2}-{2510,10148,0,1,1}-{2511,10147,0,1,6}-{2517,10151,0,1,3}-{2519,10143,0,1,7}-{2529,10148,0,1,3}-{2528,10144,0,1,0}-{2532,10145,0,1,1}-{2532,10140,0,1,7}-{2520,10144,0,1,2}-"
+ },
+ {
+ "npc_id": "2458",
+ "loc_data": "{2599,4774,0,0,3}-"
+ },
+ {
+ "npc_id": "2459",
+ "loc_data": "{2604,4772,0,1,4}-{2606,4771,0,1,6}-{2604,4769,0,1,2}-"
+ },
+ {
+ "npc_id": "2460",
+ "loc_data": "{2600,4778,0,1,1}-{2607,4777,0,1,1}-"
+ },
+ {
+ "npc_id": "2461",
+ "loc_data": "{2597,4776,0,1,1}-{2606,4771,0,1,1}-"
+ },
+ {
+ "npc_id": "2462",
+ "loc_data": "{2596,4773,0,1,2}-{2602,4771,0,1,6}-{2596,4780,0,1,4}-"
+ },
+ {
+ "npc_id": "2477",
+ "loc_data": "{1952,4768,1,0,6}-"
+ },
+ {
+ "npc_id": "2479",
+ "loc_data": "{3420,4777,0,0,0}-"
+ },
+ {
+ "npc_id": "2481",
+ "loc_data": "{3423,4777,0,0,5}-"
+ },
+ {
+ "npc_id": "2483",
+ "loc_data": "{2914,3116,0,0,0}-"
+ },
+ {
+ "npc_id": "2484",
+ "loc_data": "{2782,3058,0,0,0}-"
+ },
+ {
+ "npc_id": "2486",
+ "loc_data": "{2789,3055,0,0,0}-"
+ },
+ {
+ "npc_id": "2487",
+ "loc_data": "{2848,3042,0,0,0}-"
+ },
+ {
+ "npc_id": "2488",
+ "loc_data": "{2799,3058,0,0,0}-"
+ },
+ {
+ "npc_id": "2489",
+ "loc_data": "{3703,3040,0,1,3}-{3706,3051,0,1,1}-{3664,3013,0,1,7}-{3749,3000,0,1,6}-{3723,2998,0,1,2}-{3731,2991,0,1,1}-{3775,3033,0,1,4}-{3766,3010,0,1,4}-{3764,3020,0,1,1}-{3738,3010,0,1,3}-{3720,3040,0,1,6}-{3719,3045,0,1,6}-{3781,3031,0,1,5}-{3780,3022,0,1,1}-{3788,3011,0,1,2}-{3793,3019,0,1,5}-{3779,3045,0,1,1}-{3784,3040,0,1,3}-{3802,3037,0,1,2}-{3808,3026,0,1,3}-{3799,3024,0,1,4}-"
+ },
+ {
+ "npc_id": "2490",
+ "loc_data": "{3782,3016,0,1,7}-"
+ },
+ {
+ "npc_id": "2491",
+ "loc_data": "{2679,3080,0,1,6}-{2684,3084,0,1,4}-{2682,3093,0,1,4}-{2678,3095,0,1,3}-{2679,3102,0,1,1}-{2681,3110,0,1,4}-{2683,3115,0,1,6}-{2675,3108,0,1,3}-{2671,3109,0,1,3}-{2671,3113,0,1,4}-{2676,3090,0,1,4}-{2670,3088,0,1,6}-{2671,3086,0,1,6}-{2664,3088,0,1,7}-{2660,3086,0,1,6}-{2662,3088,0,1,6}-{2670,3082,0,1,7}-{2674,3081,0,1,3}-{2663,3086,0,1,6}-{2679,3082,0,1,1}-{2682,3093,0,1,3}-"
+ },
+ {
+ "npc_id": "2504",
+ "loc_data": "{2796,3077,1,1,3}-"
+ },
+ {
+ "npc_id": "2507",
+ "loc_data": "{2794,3077,0,1,6}-"
+ },
+ {
+ "npc_id": "2510",
+ "loc_data": "{2786,3075,1,1,4}-"
+ },
+ {
+ "npc_id": "2513",
+ "loc_data": "{2796,3088,0,1,7}-"
+ },
+ {
+ "npc_id": "2516",
+ "loc_data": "{2791,3102,0,1,3}-"
+ },
+ {
+ "npc_id": "2519",
+ "loc_data": "{2794,3064,0,1,5}-"
+ },
+ {
+ "npc_id": "2522",
+ "loc_data": "{2758,3099,0,1,1}-"
+ },
+ {
+ "npc_id": "2525",
+ "loc_data": "{2800,3048,0,1,2}-"
+ },
+ {
+ "npc_id": "2528",
+ "loc_data": "{2816,3085,0,1,3}-"
+ },
+ {
+ "npc_id": "2531",
+ "loc_data": "{2784,3089,0,1,1}-"
+ },
+ {
+ "npc_id": "2547",
+ "loc_data": "{2615,9525,0,1,4}-{2615,9521,0,1,1}-{3109,9942,0,1,4}-{3111,9938,0,1,4}-{3116,9926,0,1,4}-"
+ },
+ {
+ "npc_id": "2548",
+ "loc_data": "{3349,2970,0,0,4}-{3358,2987,0,0,4}-"
+ },
+ {
+ "npc_id": "2549",
+ "loc_data": "{3364,3001,0,0,6}-"
+ },
+ {
+ "npc_id": "2553",
+ "loc_data": "{1944,4958,0,1,0}-"
+ },
+ {
+ "npc_id": "2564",
+ "loc_data": "{1936,4966,0,0,4}-"
+ },
+ {
+ "npc_id": "2565",
+ "loc_data": "{1939,4968,0,1,0}-"
+ },
+ {
+ "npc_id": "2568",
+ "loc_data": "{2729,3495,0,0,6}-{2724,3495,0,0,6}-{2728,3495,0,0,6}-{2721,3495,0,0,6}-"
+ },
+ {
+ "npc_id": "2569",
+ "loc_data": "{2727,3495,0,0,6}-{2722,3495,0,0,6}-"
+ },
+ {
+ "npc_id": "2572",
+ "loc_data": "{3079,3250,0,1,2}-"
+ },
+ {
+ "npc_id": "2574",
+ "loc_data": "{3087,3247,0,0,7}-"
+ },
+ {
+ "npc_id": "2580",
+ "loc_data": "{2918,3535,0,1,0}-"
+ },
+ {
+ "npc_id": "2591",
+ "loc_data": "{4786,5106,0,1,6}-{2474,5145,0,1,2}-"
+ },
+ {
+ "npc_id": "2592",
+ "loc_data": "{4680,5117,0,1,6}-{2461,5142,0,1,6}-"
+ },
+ {
+ "npc_id": "2594",
+ "loc_data": "{4730,5077,0,1,5}-{4703,5123,0,1,5}-{4680,5126,0,1,7}-"
+ },
+ {
+ "npc_id": "2595",
+ "loc_data": "{4633,5069,0,1,4}-{4647,5132,0,1,7}-{4699,5100,0,1,6}-{4757,5100,0,1,2}-"
+ },
+ {
+ "npc_id": "2596",
+ "loc_data": "{4628,5117,0,1,4}-{4787,5118,0,1,7}-{2483,5155,0,1,4}-"
+ },
+ {
+ "npc_id": "2597",
+ "loc_data": "{4621,5094,0,1,5}-{2446,5144,0,1,1}-{2470,5141,0,1,6}-"
+ },
+ {
+ "npc_id": "2598",
+ "loc_data": "{2485,5159,0,1,4}-{2489,5155,0,1,1}-{2471,5144,0,1,3}-{2476,5153,0,1,0}-{2477,5150,0,1,1}-"
+ },
+ {
+ "npc_id": "2600",
+ "loc_data": "{4656,5125,0,1,5}-{4711,5072,0,1,4}-{4751,5087,0,1,3}-"
+ },
+ {
+ "npc_id": "2601",
+ "loc_data": "{4724,5107,0,1,5}-{4676,5123,0,1,5}-{4693,5127,0,1,7}-{4788,5110,0,1,4}-"
+ },
+ {
+ "npc_id": "2602",
+ "loc_data": "{4668,5133,0,1,7}-{4627,5122,0,1,5}-{4714,5113,0,1,6}-{4752,5074,0,1,7}-{4789,5122,0,1,2}-"
+ },
+ {
+ "npc_id": "2603",
+ "loc_data": "{4711,5086,0,1,2}-{4760,5091,0,1,4}-"
+ },
+ {
+ "npc_id": "2604",
+ "loc_data": "{2439,5170,0,1,3}-{2451,5170,0,1,3}-{2453,5161,0,1,6}-{2460,5160,0,1,7}-{2457,5155,0,1,3}-{2480,5168,0,1,6}-{2469,5166,0,1,1}-{2490,5173,0,1,3}-{2488,5171,0,1,4}-{2483,5156,0,1,3}-{2470,5147,0,1,4}-{2468,5139,0,1,7}-{2458,5141,0,1,3}-{2454,5141,0,1,1}-{2452,5124,0,1,3}-{2454,5122,0,1,2}-{2453,5143,0,1,3}-{2443,5144,0,1,6}-"
+ },
+ {
+ "npc_id": "2605",
+ "loc_data": "{4631,5088,0,1,7}-{4633,5125,0,1,7}-{4760,5074,0,1,4}-"
+ },
+ {
+ "npc_id": "2606",
+ "loc_data": "{4670,5081,0,1,6}-{4642,5115,0,1,7}-{4756,5086,0,1,4}-"
+ },
+ {
+ "npc_id": "2607",
+ "loc_data": "{4638,5095,0,1,2}-{4647,5141,0,1,4}-{4699,5141,0,1,3}-{4774,5098,0,1,3}-"
+ },
+ {
+ "npc_id": "2608",
+ "loc_data": "{4656,5091,0,1,5}-{4637,5093,0,1,0}-"
+ },
+ {
+ "npc_id": "2609",
+ "loc_data": "{4617,5073,0,1,6}-{4691,5090,0,1,7}-{4727,5082,0,1,6}-{4711,5125,0,1,4}-{4748,5070,0,1,4}-{2440,5128,0,1,3}-{2436,5133,0,1,3}-{2450,5168,0,1,2}-{2443,5170,0,1,4}-{2445,5177,0,1,3}-"
+ },
+ {
+ "npc_id": "2610",
+ "loc_data": "{2446,5169,0,1,4}-{2458,5159,0,1,3}-{2466,5166,0,1,7}-{2471,5166,0,1,3}-{2478,5164,0,1,4}-{2490,5174,0,1,4}-{2485,5159,0,1,5}-{2442,5173,0,1,0}-{2440,5171,0,1,7}-{2440,5170,0,1,3}-"
+ },
+ {
+ "npc_id": "2611",
+ "loc_data": "{4646,5107,0,1,6}-{4683,5098,0,1,4}-{4690,5113,0,1,5}-{4720,5118,0,1,7}-{4716,5097,0,1,5}-{4762,5088,0,1,0}-"
+ },
+ {
+ "npc_id": "2614",
+ "loc_data": "{4666,5082,0,1,0}-{4669,5103,0,1,2}-{4639,5074,0,1,3}-{4664,5121,0,1,4}-{4688,5016,0,1,3}-{4704,5077,0,1,5}-"
+ },
+ {
+ "npc_id": "2615",
+ "loc_data": "{4625,5084,0,1,7}-{4628,5134,0,1,3}-{4725,5067,0,1,5}-{4695,5128,0,1,7}-{4748,5076,0,1,6}-{4790,5127,0,1,0}-"
+ },
+ {
+ "npc_id": "2616",
+ "loc_data": "{4631,5106,0,1,0}-{4673,5114,0,1,1}-{2441,5130,0,1,1}-{2438,5135,0,1,6}-{2443,5138,0,1,2}-"
+ },
+ {
+ "npc_id": "2617",
+ "loc_data": "{4611,5132,0,1,5}-{2440,5168,0,0,1}-"
+ },
+ {
+ "npc_id": "2618",
+ "loc_data": "{2399,5178,0,1,6}-{4603,5065,0,1,1}-"
+ },
+ {
+ "npc_id": "2619",
+ "loc_data": "{4644,5149,0,1,7}-{2418,5203,0,1,6}-{2446,5179,0,0,6}-"
+ },
+ {
+ "npc_id": "2620",
+ "loc_data": "{4701,5153,0,1,0}-{2478,5146,0,1,2}-"
+ },
+ {
+ "npc_id": "2621",
+ "loc_data": "{2724,3729,0,0,6}-"
+ },
+ {
+ "npc_id": "2622",
+ "loc_data": "{4689,5173,0,0,0}-{2464,5149,0,0,7}-"
+ },
+ {
+ "npc_id": "2623",
+ "loc_data": "{4655,5172,0,1,0}-{2462,5125,0,1,5}-"
+ },
+ {
+ "npc_id": "2624",
+ "loc_data": "{4718,5148,0,1,6}-{4708,5173,0,1,6}-{4716,5178,0,1,7}-{4726,5173,0,1,0}-{4730,5163,0,1,3}-{4726,5153,0,1,5}-"
+ },
+ {
+ "npc_id": "2625",
+ "loc_data": "{4668,5177,0,1,4}-{4676,5177,0,1,2}-"
+ },
+ {
+ "npc_id": "2634",
+ "loc_data": "{3095,3252,0,0,0}-"
+ },
+ {
+ "npc_id": "2652",
+ "loc_data": "{2868,3579,0,0,0}-{2851,3582,0,0,0}-"
+ },
+ {
+ "npc_id": "2655",
+ "loc_data": "{2921,3558,0,1,6}-"
+ },
+ {
+ "npc_id": "2660",
+ "loc_data": "{3208,3496,0,1,3}-"
+ },
+ {
+ "npc_id": "2674",
+ "loc_data": "{3017,3231,0,1,1}-"
+ },
+ {
+ "npc_id": "2676",
+ "loc_data": "{2914,3322,0,0,0}-"
+ },
+ {
+ "npc_id": "2677",
+ "loc_data": "{2945,3307,0,0,0}-"
+ },
+ {
+ "npc_id": "2678",
+ "loc_data": "{2988,3210,0,1,7}-"
+ },
+ {
+ "npc_id": "2679",
+ "loc_data": "{3000,3222,0,1,1}-"
+ },
+ {
+ "npc_id": "2680",
+ "loc_data": "{2582,9836,0,1,2}-{2985,3193,0,1,1}-"
+ },
+ {
+ "npc_id": "2681",
+ "loc_data": "{2991,3199,0,1,3}-"
+ },
+ {
+ "npc_id": "2682",
+ "loc_data": "{2904,3208,0,1,0}-{1866,4237,0,1,0}-{1866,4240,0,1,0}-{1867,4243,0,1,0}-{2950,3204,0,1,5}-{2971,3212,0,1,4}-{2960,3201,0,1,1}-{2959,3202,0,1,4}-{2956,3203,0,1,1}-{2969,3204,0,1,4}-"
+ },
+ {
+ "npc_id": "2683",
+ "loc_data": "{2967,3212,1,0,7}-"
+ },
+ {
+ "npc_id": "2684",
+ "loc_data": "{2965,3213,1,0,0}-"
+ },
+ {
+ "npc_id": "2685",
+ "loc_data": "{3124,9873,0,1,3}-{2911,3285,0,1,1}-{2696,9689,0,1,1}-"
+ },
+ {
+ "npc_id": "2686",
+ "loc_data": "{2907,3293,0,1,4}-{2700,9696,0,1,1}-"
+ },
+ {
+ "npc_id": "2687",
+ "loc_data": "{2907,3293,0,1,6}-{2908,3290,0,1,3}-{2703,9698,0,1,1}-"
+ },
+ {
+ "npc_id": "2688",
+ "loc_data": "{3127,9874,0,1,4}-{2906,3288,0,1,1}-{2910,3293,0,1,4}-{2699,9690,0,1,1}-"
+ },
+ {
+ "npc_id": "2689",
+ "loc_data": "{2918,3319,0,0,0}-"
+ },
+ {
+ "npc_id": "2690",
+ "loc_data": "{3048,3258,0,1,3}-"
+ },
+ {
+ "npc_id": "2691",
+ "loc_data": "{3048,3256,0,1,4}-"
+ },
+ {
+ "npc_id": "2692",
+ "loc_data": "{3049,3256,0,0,0}-"
+ },
+ {
+ "npc_id": "2693",
+ "loc_data": "{3238,3238,0,1,0}-{3238,3246,0,1,0}-{3239,3235,0,1,0}-{3214,3313,0,1,0}-{3214,3320,0,1,0}-{3215,3303,0,1,0}-{3219,3285,0,1,0}-{3219,3288,0,1,0}-{3234,3267,0,1,0}-{3234,3268,0,1,0}-{2976,3359,0,1,0}-{2977,3357,0,1,0}-{2988,3383,0,1,1}-{2992,3385,0,1,3}-{3015,3285,0,1,0}-"
+ },
+ {
+ "npc_id": "2695",
+ "loc_data": "{3013,3192,0,1,1}-"
+ },
+ {
+ "npc_id": "2696",
+ "loc_data": "{3013,3196,0,1,1}-"
+ },
+ {
+ "npc_id": "2697",
+ "loc_data": "{3018,3189,0,1,4}-"
+ },
+ {
+ "npc_id": "2698",
+ "loc_data": "{3018,3181,0,1,6}-"
+ },
+ {
+ "npc_id": "2699",
+ "loc_data": "{3016,3184,1,1,0}-"
+ },
+ {
+ "npc_id": "2700",
+ "loc_data": "{3016,3182,1,1,0}-"
+ },
+ {
+ "npc_id": "2701",
+ "loc_data": "{3011,3181,1,1,0}-"
+ },
+ {
+ "npc_id": "2702",
+ "loc_data": "{3019,3180,1,1,0}-"
+ },
+ {
+ "npc_id": "2703",
+ "loc_data": "{3012,3185,1,1,0}-"
+ },
+ {
+ "npc_id": "2704",
+ "loc_data": "{3019,3185,0,0,0}-"
+ },
+ {
+ "npc_id": "2705",
+ "loc_data": "{3018,3185,2,1,0}-"
+ },
+ {
+ "npc_id": "2706",
+ "loc_data": "{3725,3015,0,1,4}-{3745,3026,0,1,6}-{3741,3033,0,1,6}-{3734,3045,0,1,1}-{3019,3145,0,1,3}-{3015,3142,0,1,4}-{3022,3139,0,1,4}-"
+ },
+ {
+ "npc_id": "2709",
+ "loc_data": "{3002,3266,0,1,6}-"
+ },
+ {
+ "npc_id": "2710",
+ "loc_data": "{3001,3268,0,1,4}-"
+ },
+ {
+ "npc_id": "2711",
+ "loc_data": "{3002,3268,0,1,4}-"
+ },
+ {
+ "npc_id": "2712",
+ "loc_data": "{3001,3268,0,1,3}-"
+ },
+ {
+ "npc_id": "2713",
+ "loc_data": "{3002,3267,0,1,2}-"
+ },
+ {
+ "npc_id": "2725",
+ "loc_data": "{2500,3488,0,1,2}-"
+ },
+ {
+ "npc_id": "2726",
+ "loc_data": "{2994,3138,0,1,0}-"
+ },
+ {
+ "npc_id": "2727",
+ "loc_data": "{2969,3146,0,1,0}-"
+ },
+ {
+ "npc_id": "2728",
+ "loc_data": "{3043,3235,0,1,7}-"
+ },
+ {
+ "npc_id": "2729",
+ "loc_data": "{3047,3234,0,1,7}-"
+ },
+ {
+ "npc_id": "2730",
+ "loc_data": "{2835,3335,0,0,5}-"
+ },
+ {
+ "npc_id": "2731",
+ "loc_data": "{2833,3335,0,0,3}-"
+ },
+ {
+ "npc_id": "2732",
+ "loc_data": "{2933,3281,0,1,1}-"
+ },
+ {
+ "npc_id": "2733",
+ "loc_data": "{2932,3286,0,1,1}-"
+ },
+ {
+ "npc_id": "2759",
+ "loc_data": "{3104,3368,0,0,0}-{3096,3493,0,0,0}-{3097,3494,0,0,0}-{3180,3438,0,0,0}-{3180,3442,0,0,0}-{3191,3441,0,0,0}-{3191,3437,0,0,0}-{3191,3445,0,0,0}-{3254,3418,0,0,0}-{3255,3418,0,0,0}-{3256,3418,0,0,0}-"
+ },
+ {
+ "npc_id": "2782",
+ "loc_data": "{1925,4636,0,1,7}-"
+ },
+ {
+ "npc_id": "2783",
+ "loc_data": "{1995,4660,0,1,7}-{1989,4660,0,1,0}-{1989,4664,0,1,7}-{1997,4664,0,1,3}-{1989,4658,0,1,0}-{2001,4646,0,1,4}-{2000,4645,0,1,3}-{1997,4644,0,1,1}-{1999,4636,0,1,3}-{2022,4665,0,1,0}-{2024,4662,0,1,0}-{2020,4660,0,1,0}-{2023,4656,0,1,0}-{2029,4660,0,1,0}-{2031,4665,0,1,0}-{2034,4661,0,1,0}-{2032,4658,0,1,0}-{1991,4653,0,1,0}-{1995,4651,0,1,0}-"
+ },
+ {
+ "npc_id": "2784",
+ "loc_data": "{2022,4616,0,1,5}-{2024,4620,0,1,5}-"
+ },
+ {
+ "npc_id": "2785",
+ "loc_data": "{2000,4613,0,0,0}-{2000,4611,0,0,5}-"
+ },
+ {
+ "npc_id": "2786",
+ "loc_data": "{2008,4613,0,1,0}-"
+ },
+ {
+ "npc_id": "2787",
+ "loc_data": "{2023,4612,0,1,0}-"
+ },
+ {
+ "npc_id": "2790",
+ "loc_data": "{3163,4822,0,0,6}-"
+ },
+ {
+ "npc_id": "2792",
+ "loc_data": "{3228,3412,0,0,0}-"
+ },
+ {
+ "npc_id": "2794",
+ "loc_data": "{2606,3100,0,0,0}-"
+ },
+ {
+ "npc_id": "2795",
+ "loc_data": "{2979,3197,0,1,0}-"
+ },
+ {
+ "npc_id": "2796",
+ "loc_data": "{3096,3108,0,0,6}-"
+ },
+ {
+ "npc_id": "2800",
+ "loc_data": "{2981,3190,0,0,0}-"
+ },
+ {
+ "npc_id": "2801",
+ "loc_data": "{2523,3373,0,1,0}-{2523,3376,0,1,0}-{2526,3373,0,1,0}-{2526,3376,0,1,0}-{2529,3373,0,1,0}-{2529,3376,0,1,0}-{2531,3376,0,1,0}-{2532,3373,0,1,0}-"
+ },
+ {
+ "npc_id": "2802",
+ "loc_data": "{2406,3498,0,1,0}-"
+ },
+ {
+ "npc_id": "2803",
+ "loc_data": "{3387,3068,0,1,0}-{3387,3017,0,1,0}-{3404,3062,0,1,0}-{3441,3061,0,1,0}-{3445,3034,0,1,0}-{3338,2804,0,1,0}-{3339,2815,0,1,0}-{3342,2809,0,1,0}-{3344,2800,0,1,0}-{3348,2809,0,1,0}-{3349,2814,0,1,0}-{3357,2813,0,1,0}-{3357,2806,0,1,0}-{3365,2815,0,1,0}-"
+ },
+ {
+ "npc_id": "2804",
+ "loc_data": "{3388,3067,0,1,0}-{3396,3064,0,1,6}-{3402,3063,0,1,1}-{3423,3019,0,1,3}-{3420,3015,0,1,6}-{3430,3014,0,1,2}-{3426,3020,0,0,0}-{3416,3013,0,1,4}-{3410,3016,0,1,6}-"
+ },
+ {
+ "npc_id": "2805",
+ "loc_data": "{3391,3071,0,1,2}-{3385,3064,0,1,6}-{3397,3069,0,1,2}-{3398,3068,0,1,1}-{3406,3064,0,1,6}-{3413,3053,0,1,6}-{3424,3061,0,1,2}-{3423,3020,0,1,0}-{3429,3019,0,0,0}-"
+ },
+ {
+ "npc_id": "2806",
+ "loc_data": "{3426,3052,0,1,4}-{3423,3044,0,1,3}-{3415,3018,0,1,5}-{3425,3009,0,1,3}-"
+ },
+ {
+ "npc_id": "2807",
+ "loc_data": "{3384,3013,0,1,0}-{3387,3014,0,1,0}-{3441,3059,0,1,0}-{3443,3033,0,1,0}-{3443,3059,0,1,0}-"
+ },
+ {
+ "npc_id": "2808",
+ "loc_data": "{3385,3067,0,1,0}-{3389,3065,0,1,0}-{3400,3032,0,1,0}-{3402,3061,0,1,0}-{3404,3060,0,1,0}-{3407,3067,0,1,0}-{3408,3060,0,1,0}-{3411,3065,0,1,0}-{3412,3032,0,1,0}-{3412,3049,0,1,0}-{3414,3029,0,1,0}-{3417,3036,0,1,0}-{3418,3032,0,1,0}-{3419,3034,0,1,0}-{3422,3058,0,1,0}-{3424,3059,0,1,0}-{3435,3057,0,1,0}-{3435,3062,0,1,0}-{3439,3013,0,1,0}-{3439,3065,0,1,0}-{3440,3016,0,1,0}-{3443,3012,0,1,0}-{3443,3017,0,1,0}-{3443,3034,0,1,0}-{3443,3047,0,1,0}-{3446,3014,0,1,0}-"
+ },
+ {
+ "npc_id": "2809",
+ "loc_data": "{3274,3168,0,1,0}-"
+ },
+ {
+ "npc_id": "2810",
+ "loc_data": "{3311,3208,0,1,0}-"
+ },
+ {
+ "npc_id": "2811",
+ "loc_data": "{3289,3209,0,1,0}-"
+ },
+ {
+ "npc_id": "2812",
+ "loc_data": "{3296,3227,0,0,0}-"
+ },
+ {
+ "npc_id": "2813",
+ "loc_data": "{3285,3201,0,0,0}-"
+ },
+ {
+ "npc_id": "2816",
+ "loc_data": "{3301,3190,0,0,0}-"
+ },
+ {
+ "npc_id": "2817",
+ "loc_data": "{3306,3197,0,0,0}-"
+ },
+ {
+ "npc_id": "2818",
+ "loc_data": "{3303,3204,0,0,0}-"
+ },
+ {
+ "npc_id": "2819",
+ "loc_data": "{3295,3193,0,0,0}-"
+ },
+ {
+ "npc_id": "2820",
+ "loc_data": "{3302,3185,0,1,4}-"
+ },
+ {
+ "npc_id": "2821",
+ "loc_data": "{3306,3196,0,0,4}-"
+ },
+ {
+ "npc_id": "2823",
+ "loc_data": "{3302,3197,0,1,4}-"
+ },
+ {
+ "npc_id": "2824",
+ "loc_data": "{3275,3193,0,0,0}-"
+ },
+ {
+ "npc_id": "2860",
+ "loc_data": "{2345,3165,0,1,4}-"
+ },
+ {
+ "npc_id": "2861",
+ "loc_data": "{2347,3165,0,1,3}-"
+ },
+ {
+ "npc_id": "2881",
+ "loc_data": "{2907,4440,0,1,6}-"
+ },
+ {
+ "npc_id": "2882",
+ "loc_data": "{2910,4457,0,1,6}-"
+ },
+ {
+ "npc_id": "2883",
+ "loc_data": "{2923,4443,0,1,4}-"
+ },
+ {
+ "npc_id": "2890",
+ "loc_data": "{1889,4411,0,0,4}-{1895,4409,0,0,2}-{1903,4409,0,0,3}-{1906,4407,0,0,5}-{1903,4400,0,0,1}-{1899,4400,0,0,2}-{1893,4398,0,0,2}-{1888,4386,0,0,6}-{1884,4383,0,0,5}-{1879,4376,0,0,5}-{1883,4376,0,0,1}-{1921,4368,0,0,2}-{1927,4362,0,0,7}-{1935,4360,0,0,7}-{1942,4356,0,0,7}-{1948,4355,0,0,7}-{1951,4358,0,0,2}-{1957,4365,0,0,2}-{1958,4368,0,0,2}-"
+ },
+ {
+ "npc_id": "2894",
+ "loc_data": "{2908,4435,0,0,1}-{2924,4436,0,0,5}-{2924,4460,0,0,6}-{2908,4463,0,0,3}-{2901,4458,0,0,3}-{2928,4441,0,0,3}-{2929,4449,0,0,6}-{2902,4437,0,0,1}-"
+ },
+ {
+ "npc_id": "2910",
+ "loc_data": "{3082,9885,0,1,4}-"
+ },
+ {
+ "npc_id": "2932",
+ "loc_data": "{2437,3347,0,1,0}-"
+ },
+ {
+ "npc_id": "2935",
+ "loc_data": "{3671,3484,0,1,4}-"
+ },
+ {
+ "npc_id": "2939",
+ "loc_data": "{2657,3701,0,1,0}-"
+ },
+ {
+ "npc_id": "2940",
+ "loc_data": "{2675,3671,0,1,3}-"
+ },
+ {
+ "npc_id": "2942",
+ "loc_data": "{3017,3234,0,1,7}-"
+ },
+ {
+ "npc_id": "2943",
+ "loc_data": "{3265,3400,0,0,0}-"
+ },
+ {
+ "npc_id": "2945",
+ "loc_data": "{2562,3319,0,0,0}-"
+ },
+ {
+ "npc_id": "2946",
+ "loc_data": "{3246,9865,0,1,1}-"
+ },
+ {
+ "npc_id": "2947",
+ "loc_data": "{3245,9868,0,1,3}-"
+ },
+ {
+ "npc_id": "2948",
+ "loc_data": "{3265,3403,0,0,0}-"
+ },
+ {
+ "npc_id": "2949",
+ "loc_data": "{2562,3320,0,0,0}-"
+ },
+ {
+ "npc_id": "2950",
+ "loc_data": "{3020,3229,0,0,7}-"
+ },
+ {
+ "npc_id": "2997",
+ "loc_data": "{3308,3511,1,1,1}-"
+ },
+ {
+ "npc_id": "2998",
+ "loc_data": "{2657,9641,0,1,0}-"
+ },
+ {
+ "npc_id": "2999",
+ "loc_data": "{2658,9634,0,1,1}-"
+ },
+ {
+ "npc_id": "3001",
+ "loc_data": "{2646,9639,0,1,4}-"
+ },
+ {
+ "npc_id": "3002",
+ "loc_data": "{2666,9630,0,1,6}-"
+ },
+ {
+ "npc_id": "3003",
+ "loc_data": "{2660,9624,0,1,6}-"
+ },
+ {
+ "npc_id": "3020",
+ "loc_data": "{3348,2942,0,1,3}-"
+ },
+ {
+ "npc_id": "3021",
+ "loc_data": "{2572,3105,0,1,0}-{2614,3226,0,1,4}-{3088,3357,0,1,0}-{2856,3435,0,1,0}-{3603,3529,0,1,6}-{2611,3859,0,1,6}-{2589,3863,0,1,0}-{3189,3234,0,1,0}-{2940,3225,0,1,6}-{2663,3374,0,1,4}-{3182,3354,0,1,0}-{2933,3434,0,1,4}-{3449,3471,0,1,6}-{2666,3521,0,1,4}-{2491,3177,0,1,1}-{3007,3371,0,1,2}-{2474,3446,0,1,4}-{2434,3415,0,1,3}-{3232,3459,0,1,3}-{2796,3104,0,1,0}-{2764,3210,0,1,1}-{3315,3205,0,1,6}-{3060,3263,0,1,0}-{3053,3304,0,1,1}-{2812,3333,0,1,4}-{2815,3466,0,1,3}-"
+ },
+ {
+ "npc_id": "3022",
+ "loc_data": "{3371,9320,0,0,6}-"
+ },
+ {
+ "npc_id": "3029",
+ "loc_data": "{3422,2937,0,1,1}-"
+ },
+ {
+ "npc_id": "3030",
+ "loc_data": "{3421,2912,0,0,1}-"
+ },
+ {
+ "npc_id": "3031",
+ "loc_data": "{3439,2890,0,0,3}-"
+ },
+ {
+ "npc_id": "3032",
+ "loc_data": "{3439,2927,0,1,5}-"
+ },
+ {
+ "npc_id": "3034",
+ "loc_data": "{3409,2929,1,1,4}-"
+ },
+ {
+ "npc_id": "3035",
+ "loc_data": "{3450,2895,0,0,3}-"
+ },
+ {
+ "npc_id": "3036",
+ "loc_data": "{3424,2900,0,1,3}-"
+ },
+ {
+ "npc_id": "3037",
+ "loc_data": "{3424,2906,0,0,1}-"
+ },
+ {
+ "npc_id": "3038",
+ "loc_data": "{3406,2924,0,1,3}-"
+ },
+ {
+ "npc_id": "3039",
+ "loc_data": "{3414,2907,0,1,3}-"
+ },
+ {
+ "npc_id": "3040",
+ "loc_data": "{3443,2914,0,0,3}-"
+ },
+ {
+ "npc_id": "3041",
+ "loc_data": "{3445,2910,0,0,1}-"
+ },
+ {
+ "npc_id": "3042",
+ "loc_data": "{3441,2920,0,1,4}-"
+ },
+ {
+ "npc_id": "3043",
+ "loc_data": "{3445,2917,0,0,3}-"
+ },
+ {
+ "npc_id": "3044",
+ "loc_data": "{3428,2928,0,1,5}-"
+ },
+ {
+ "npc_id": "3045",
+ "loc_data": "{3432,2912,0,0,1}-"
+ },
+ {
+ "npc_id": "3046",
+ "loc_data": "{3425,2891,0,0,4}-{3425,2894,0,0,4}-{3425,2893,0,0,4}-{3425,2889,0,0,4}-"
+ },
+ {
+ "npc_id": "3050",
+ "loc_data": "{3187,9758,0,1,3}-"
+ },
+ {
+ "npc_id": "3068",
+ "loc_data": "{3062,9550,0,1,5}-{3050,9554,0,1,7}-{3048,9545,0,1,4}-{3061,9542,0,1,3}-{3065,9548,0,1,1}-{3034,9544,0,1,4}-{3033,9552,0,1,3}-{3029,9545,0,1,7}-{3027,9555,0,1,3}-"
+ },
+ {
+ "npc_id": "3072",
+ "loc_data": "{3207,5448,0,1,3}-{3223,5446,0,1,4}-{3210,5562,0,1,3}-"
+ },
+ {
+ "npc_id": "3073",
+ "loc_data": "{3217,5442,0,1,4}-{3231,5444,0,1,0}-"
+ },
+ {
+ "npc_id": "3074",
+ "loc_data": "{3404,3492,0,0,6}-"
+ },
+ {
+ "npc_id": "3076",
+ "loc_data": "{3403,3492,0,0,0}-"
+ },
+ {
+ "npc_id": "3090",
+ "loc_data": "{3082,3442,0,0,0}-"
+ },
+ {
+ "npc_id": "3094",
+ "loc_data": "{3361,3306,0,1,6}-"
+ },
+ {
+ "npc_id": "3095",
+ "loc_data": "{3364,3309,0,1,3}-{3363,3317,1,1,1}-"
+ },
+ {
+ "npc_id": "3097",
+ "loc_data": "{3364,3304,0,1,6}-"
+ },
+ {
+ "npc_id": "3099",
+ "loc_data": "{3364,9626,2,1,1}-"
+ },
+ {
+ "npc_id": "3100",
+ "loc_data": "{3363,9646,0,1,1}-"
+ },
+ {
+ "npc_id": "3101",
+ "loc_data": "{3364,9644,1,1,6}-"
+ },
+ {
+ "npc_id": "3103",
+ "loc_data": "{3362,3318,1,0,6}-"
+ },
+ {
+ "npc_id": "3104",
+ "loc_data": "{3364,3310,0,1,1}-{3379,9627,0,1,0}-{3367,9647,2,1,4}-"
+ },
+ {
+ "npc_id": "3105",
+ "loc_data": "{3367,3304,1,1,1}-{3376,9655,0,1,7}-"
+ },
+ {
+ "npc_id": "3106",
+ "loc_data": "{3360,3305,1,1,3}-{3348,9654,0,1,4}-{3362,9648,2,1,4}-"
+ },
+ {
+ "npc_id": "3107",
+ "loc_data": "{3361,3306,0,1,3}-{3348,9626,0,1,6}-"
+ },
+ {
+ "npc_id": "3108",
+ "loc_data": "{2549,3100,0,0,4}-"
+ },
+ {
+ "npc_id": "3109",
+ "loc_data": "{2551,3079,0,1,3}-"
+ },
+ {
+ "npc_id": "3110",
+ "loc_data": "{2789,3175,0,0,4}-"
+ },
+ {
+ "npc_id": "3111",
+ "loc_data": "{2788,3176,0,0,0}-"
+ },
+ {
+ "npc_id": "3114",
+ "loc_data": "{2815,3344,0,1,3}-"
+ },
+ {
+ "npc_id": "3115",
+ "loc_data": "{2439,4444,0,1,3}-"
+ },
+ {
+ "npc_id": "3123",
+ "loc_data": "{3344,2827,0,1,5}-"
+ },
+ {
+ "npc_id": "3124",
+ "loc_data": "{3372,2847,1,0,3}-"
+ },
+ {
+ "npc_id": "3125",
+ "loc_data": "{3366,2845,3,0,6}-"
+ },
+ {
+ "npc_id": "3127",
+ "loc_data": "{3331,2948,0,1,4}-"
+ },
+ {
+ "npc_id": "3153",
+ "loc_data": "{2871,3091,0,1,4}-{2862,3111,0,1,1}-{2861,3101,0,1,3}-{2870,3113,0,1,4}-{2870,3110,0,1,6}-{2865,3103,0,1,3}-{2873,3103,0,1,2}-{2863,3118,0,1,4}-{2886,3109,0,1,1}-{2892,3109,0,1,2}-{2883,3105,0,1,4}-{2889,3111,0,1,6}-{2883,3110,0,1,3}-"
+ },
+ {
+ "npc_id": "3155",
+ "loc_data": "{3687,2953,0,1,1}-{3679,3494,0,1,3}-"
+ },
+ {
+ "npc_id": "3162",
+ "loc_data": "{3691,2954,0,1,3}-"
+ },
+ {
+ "npc_id": "3164",
+ "loc_data": "{3667,2990,0,1,3}-"
+ },
+ {
+ "npc_id": "3166",
+ "loc_data": "{3693,2979,0,1,3}-"
+ },
+ {
+ "npc_id": "3167",
+ "loc_data": "{3662,2978,1,1,4}-"
+ },
+ {
+ "npc_id": "3168",
+ "loc_data": "{3663,2981,0,1,3}-"
+ },
+ {
+ "npc_id": "3170",
+ "loc_data": "{3674,2970,0,1,0}-"
+ },
+ {
+ "npc_id": "3188",
+ "loc_data": "{3664,2971,0,1,6}-"
+ },
+ {
+ "npc_id": "3189",
+ "loc_data": "{3690,2976,0,1,1}-{3671,3006,0,1,6}-"
+ },
+ {
+ "npc_id": "3191",
+ "loc_data": "{3659,2955,0,1,3}-{3683,2994,0,1,4}-{3662,3005,0,1,4}-"
+ },
+ {
+ "npc_id": "3192",
+ "loc_data": "{3700,2994,0,1,4}-{3683,3005,0,1,3}-"
+ },
+ {
+ "npc_id": "3193",
+ "loc_data": "{3696,2993,0,1,3}-{3693,3006,0,1,3}-"
+ },
+ {
+ "npc_id": "3194",
+ "loc_data": "{3654,2992,0,1,4}-{3682,2962,0,1,3}-{3704,3006,0,1,0}-"
+ },
+ {
+ "npc_id": "3195",
+ "loc_data": "{3696,2978,0,1,1}-"
+ },
+ {
+ "npc_id": "3196",
+ "loc_data": "{3649,3004,0,1,6}-"
+ },
+ {
+ "npc_id": "3198",
+ "loc_data": "{3682,2982,0,0,3}-"
+ },
+ {
+ "npc_id": "3199",
+ "loc_data": "{3682,2981,0,0,3}-{3682,2983,0,0,3}-"
+ },
+ {
+ "npc_id": "3200",
+ "loc_data": "{3263,3932,0,1,3}-"
+ },
+ {
+ "npc_id": "3205",
+ "loc_data": "{3139,3448,0,1,3}-"
+ },
+ {
+ "npc_id": "3213",
+ "loc_data": "{2568,3334,0,1,0}-"
+ },
+ {
+ "npc_id": "3214",
+ "loc_data": "{2517,9755,0,1,0}-"
+ },
+ {
+ "npc_id": "3216",
+ "loc_data": "{2534,3273,0,0,1}-{2539,3273,0,0,1}-"
+ },
+ {
+ "npc_id": "3217",
+ "loc_data": "{2956,3370,0,1,3}-"
+ },
+ {
+ "npc_id": "3219",
+ "loc_data": "{3027,3344,0,1,4}-"
+ },
+ {
+ "npc_id": "3220",
+ "loc_data": "{3013,3338,0,1,4}-"
+ },
+ {
+ "npc_id": "3221",
+ "loc_data": "{3016,3334,0,1,3}-{3016,3339,0,1,6}-{3019,3341,0,1,4}-"
+ },
+ {
+ "npc_id": "3223",
+ "loc_data": "{2994,3365,0,1,4}-"
+ },
+ {
+ "npc_id": "3224",
+ "loc_data": "{3047,3365,0,1,6}-"
+ },
+ {
+ "npc_id": "3226",
+ "loc_data": "{2996,3375,0,1,4}-"
+ },
+ {
+ "npc_id": "3227",
+ "loc_data": "{2756,3182,0,1,6}-"
+ },
+ {
+ "npc_id": "3228",
+ "loc_data": "{2969,3373,0,1,3}-{2948,3353,0,1,3}-{3036,3357,0,1,3}-"
+ },
+ {
+ "npc_id": "3229",
+ "loc_data": "{2912,3344,0,1,7}-{3040,3354,0,1,2}-"
+ },
+ {
+ "npc_id": "3230",
+ "loc_data": "{2986,3370,0,1,1}-"
+ },
+ {
+ "npc_id": "3234",
+ "loc_data": "{3011,3383,0,1,0}-"
+ },
+ {
+ "npc_id": "3235",
+ "loc_data": "{2970,3369,1,1,6}-"
+ },
+ {
+ "npc_id": "3236",
+ "loc_data": "{2973,3369,1,1,6}-"
+ },
+ {
+ "npc_id": "3237",
+ "loc_data": "{2984,3435,0,0,0}-"
+ },
+ {
+ "npc_id": "3238",
+ "loc_data": "{2981,3434,0,0,0}-"
+ },
+ {
+ "npc_id": "3239",
+ "loc_data": "{2975,3436,0,0,0}-"
+ },
+ {
+ "npc_id": "3240",
+ "loc_data": "{2977,3442,0,0,0}-"
+ },
+ {
+ "npc_id": "3241",
+ "loc_data": "{2969,3451,0,1,4}-"
+ },
+ {
+ "npc_id": "3242",
+ "loc_data": "{2910,3332,0,1,0}-{2910,3337,0,1,4}-{2904,3331,0,1,3}-{2979,3568,0,1,7}-{2983,3566,0,1,3}-{2979,3566,0,1,3}-{2981,3570,0,1,6}-{2984,3561,0,1,6}-"
+ },
+ {
+ "npc_id": "3243",
+ "loc_data": "{2906,3331,0,1,6}-{2909,3333,0,1,6}-"
+ },
+ {
+ "npc_id": "3244",
+ "loc_data": "{2909,3333,0,1,1}-"
+ },
+ {
+ "npc_id": "3245",
+ "loc_data": "{2907,3336,0,1,0}-"
+ },
+ {
+ "npc_id": "3246",
+ "loc_data": "{3071,3446,0,1,6}-{2548,3567,0,1,4}-"
+ },
+ {
+ "npc_id": "3247",
+ "loc_data": "{2548,3567,0,1,1}-"
+ },
+ {
+ "npc_id": "3248",
+ "loc_data": "{3073,3442,0,1,5}-"
+ },
+ {
+ "npc_id": "3249",
+ "loc_data": "{3082,3441,0,1,0}-"
+ },
+ {
+ "npc_id": "3250",
+ "loc_data": "{3088,3426,0,1,3}-{2547,3571,0,1,7}-"
+ },
+ {
+ "npc_id": "3251",
+ "loc_data": "{3073,3422,0,1,6}-"
+ },
+ {
+ "npc_id": "3252",
+ "loc_data": "{3077,3424,0,1,6}-"
+ },
+ {
+ "npc_id": "3253",
+ "loc_data": "{2542,3578,0,1,3}-"
+ },
+ {
+ "npc_id": "3255",
+ "loc_data": "{3073,3423,0,1,3}-"
+ },
+ {
+ "npc_id": "3256",
+ "loc_data": "{3080,3415,0,1,3}-{3084,3415,0,1,6}-"
+ },
+ {
+ "npc_id": "3257",
+ "loc_data": "{3096,3432,0,1,0}-"
+ },
+ {
+ "npc_id": "3258",
+ "loc_data": "{3080,3444,0,1,3}-"
+ },
+ {
+ "npc_id": "3259",
+ "loc_data": "{3075,3438,0,1,4}-"
+ },
+ {
+ "npc_id": "3260",
+ "loc_data": "{3083,3425,0,1,3}-{2554,3564,0,1,6}-{2547,3558,0,1,6}-"
+ },
+ {
+ "npc_id": "3261",
+ "loc_data": "{3086,3425,0,1,3}-"
+ },
+ {
+ "npc_id": "3262",
+ "loc_data": "{3080,3423,0,1,1}-"
+ },
+ {
+ "npc_id": "3263",
+ "loc_data": "{3084,3419,0,1,4}-"
+ },
+ {
+ "npc_id": "3264",
+ "loc_data": "{3126,3450,0,1,6}-{3121,3422,0,1,3}-{2565,9843,0,1,0}-{3259,3338,0,1,7}-{3311,3375,0,1,0}-"
+ },
+ {
+ "npc_id": "3265",
+ "loc_data": "{3121,3427,0,1,2}-{2582,9836,0,1,1}-"
+ },
+ {
+ "npc_id": "3266",
+ "loc_data": "{3094,3406,0,1,3}-"
+ },
+ {
+ "npc_id": "3267",
+ "loc_data": "{3134,3459,0,1,1}-"
+ },
+ {
+ "npc_id": "3268",
+ "loc_data": "{3012,3454,0,1,1}-"
+ },
+ {
+ "npc_id": "3269",
+ "loc_data": "{3022,3447,0,1,4}-"
+ },
+ {
+ "npc_id": "3270",
+ "loc_data": "{3010,3452,0,1,3}-"
+ },
+ {
+ "npc_id": "3272",
+ "loc_data": "{3042,3468,0,1,1}-"
+ },
+ {
+ "npc_id": "3273",
+ "loc_data": "{3030,3465,0,1,5}-"
+ },
+ {
+ "npc_id": "3276",
+ "loc_data": "{3039,3475,0,1,4}-"
+ },
+ {
+ "npc_id": "3277",
+ "loc_data": "{3035,3471,0,1,2}-"
+ },
+ {
+ "npc_id": "3278",
+ "loc_data": "{3045,3477,0,1,1}-"
+ },
+ {
+ "npc_id": "3279",
+ "loc_data": "{3039,3471,0,1,6}-"
+ },
+ {
+ "npc_id": "3280",
+ "loc_data": "{3015,3451,0,0,0}-"
+ },
+ {
+ "npc_id": "3281",
+ "loc_data": "{3018,3450,0,0,0}-"
+ },
+ {
+ "npc_id": "3282",
+ "loc_data": "{3008,3442,0,0,0}-"
+ },
+ {
+ "npc_id": "3283",
+ "loc_data": "{2964,3455,0,0,0}-{3039,3424,0,1,5}-{3043,3429,0,1,4}-{3047,3427,0,1,1}-{3048,3441,0,1,3}-"
+ },
+ {
+ "npc_id": "3284",
+ "loc_data": "{2969,3437,0,0,0}-{3058,3419,0,0,0}-{3048,3423,0,1,6}-{3054,3432,0,1,5}-"
+ },
+ {
+ "npc_id": "3285",
+ "loc_data": "{2952,3376,0,0,0}-{3036,3430,0,1,3}-{3025,3442,0,0,0}-"
+ },
+ {
+ "npc_id": "3286",
+ "loc_data": "{2968,3448,0,1,1}-{3034,3450,0,1,3}-{3057,3447,0,1,6}-"
+ },
+ {
+ "npc_id": "3287",
+ "loc_data": "{3073,3443,0,1,0}-{2987,3444,0,1,0}-{3046,3453,0,1,6}-"
+ },
+ {
+ "npc_id": "3288",
+ "loc_data": "{2987,3446,0,1,7}-{3034,3437,0,1,0}-"
+ },
+ {
+ "npc_id": "3294",
+ "loc_data": "{3014,3339,0,1,2}-"
+ },
+ {
+ "npc_id": "3295",
+ "loc_data": "{3020,3337,0,1,1}-"
+ },
+ {
+ "npc_id": "3296",
+ "loc_data": "{2957,3359,0,1,0}-{2958,3358,0,1,0}-{2967,3360,0,1,0}-{2970,3361,0,1,0}-{2973,3359,0,1,0}-{2977,3357,0,1,0}-{2989,3384,0,1,0}-"
+ },
+ {
+ "npc_id": "3298",
+ "loc_data": "{3366,9637,2,1,3}-"
+ },
+ {
+ "npc_id": "3299",
+ "loc_data": "{3077,3257,0,1,1}-"
+ },
+ {
+ "npc_id": "3302",
+ "loc_data": "{2453,4449,0,1,2}-"
+ },
+ {
+ "npc_id": "3307",
+ "loc_data": "{2467,4438,0,1,4}-{2471,4439,0,1,7}-{2465,4436,0,1,3}-{2464,4432,0,1,4}-"
+ },
+ {
+ "npc_id": "3308",
+ "loc_data": "{2905,3333,2,1,0}-"
+ },
+ {
+ "npc_id": "3310",
+ "loc_data": "{2415,4451,0,1,6}-{2416,4435,0,1,7}-{2423,4432,0,1,4}-"
+ },
+ {
+ "npc_id": "3318",
+ "loc_data": "{2401,4378,0,0,0}-"
+ },
+ {
+ "npc_id": "3322",
+ "loc_data": "{2384,4439,0,1,0}-"
+ },
+ {
+ "npc_id": "3324",
+ "loc_data": "{3159,3433,0,1,0}-"
+ },
+ {
+ "npc_id": "3325",
+ "loc_data": "{3161,3432,1,1,4}-"
+ },
+ {
+ "npc_id": "3328",
+ "loc_data": "{3203,3344,0,0,0}-"
+ },
+ {
+ "npc_id": "3329",
+ "loc_data": "{3112,3414,0,0,0}-"
+ },
+ {
+ "npc_id": "3330",
+ "loc_data": "{3132,3508,0,0,0}-"
+ },
+ {
+ "npc_id": "3331",
+ "loc_data": "{3242,3240,0,0,4}-"
+ },
+ {
+ "npc_id": "3340",
+ "loc_data": "{1759,5182,0,1,0}-"
+ },
+ {
+ "npc_id": "3341",
+ "loc_data": "{1739,5154,0,1,0}-{1759,5191,0,1,0}-{1754,5200,0,1,0}-{1748,5223,0,1,0}-{1784,5199,0,1,0}-"
+ },
+ {
+ "npc_id": "3342",
+ "loc_data": "{1768,5175,0,1,0}-{1760,5152,0,1,0}-{1745,5169,0,1,0}-{1745,5208,0,1,0}-{1737,5215,0,1,0}-{1758,5210,0,1,0}-"
+ },
+ {
+ "npc_id": "3343",
+ "loc_data": "{1773,5149,0,1,0}-{1764,5198,0,1,0}-{1774,5195,0,1,0}-{1742,5292,0,1,0}-"
+ },
+ {
+ "npc_id": "3344",
+ "loc_data": "{2412,4470,0,0,0}-{2414,4467,0,0,0}-{2415,4475,0,0,0}-{2419,4467,0,0,0}-{2419,4474,0,0,0}-"
+ },
+ {
+ "npc_id": "3345",
+ "loc_data": "{2412,4370,0,0,0}-{2416,4376,0,0,0}-{2419,4374,0,0,0}-{2420,4377,0,0,0}-{2421,4370,0,0,0}-"
+ },
+ {
+ "npc_id": "3348",
+ "loc_data": "{2978,3343,0,1,4}-{2978,3337,0,1,1}-{2966,3337,1,1,6}-{2970,3330,2,1,1}-"
+ },
+ {
+ "npc_id": "3349",
+ "loc_data": "{2961,3330,2,1,0}-{2966,3352,2,1,1}-{2974,3328,2,1,6}-"
+ },
+ {
+ "npc_id": "3350",
+ "loc_data": "{2959,3340,2,1,3}-"
+ },
+ {
+ "npc_id": "3376",
+ "loc_data": "{2438,4393,0,1,1}-{3313,5453,0,1,3}-{3312,5452,0,1,3}-{3310,5452,0,1,6}-{3311,5462,0,1,5}-{3313,5554,0,1,6}-{3297,5562,0,1,1}-{3305,5554,0,1,1}-{3300,5540,0,1,1}-"
+ },
+ {
+ "npc_id": "3382",
+ "loc_data": "{3080,9885,0,1,4}-{3076,9886,0,1,4}-{3081,9890,0,1,4}-{3081,9895,0,1,4}-"
+ },
+ {
+ "npc_id": "3384",
+ "loc_data": "{3211,3225,0,0,0}-"
+ },
+ {
+ "npc_id": "3402",
+ "loc_data": "{2560,2842,0,0,1}-"
+ },
+ {
+ "npc_id": "3407",
+ "loc_data": "{3114,3515,0,1,4}-"
+ },
+ {
+ "npc_id": "3408",
+ "loc_data": "{3113,3510,0,1,7}-"
+ },
+ {
+ "npc_id": "3419",
+ "loc_data": "{2568,2991,0,1,0}-{2574,2988,0,1,0}-{2584,2967,0,1,0}-{2585,2977,0,1,0}-{2592,2965,0,1,0}-{2608,2980,0,1,0}-{2609,2990,0,1,0}-{2614,2998,0,1,0}-{2561,3020,0,1,0}-{2567,3046,0,1,0}-{2585,9608,0,1,0}-{2586,9614,0,1,0}-{2588,9606,0,1,0}-{2581,9738,0,1,0}-{2581,9742,0,1,0}-{2584,9734,0,1,0}-{2585,9738,0,1,0}-{2587,9733,0,1,0}-{2587,9740,0,1,0}-{2590,9737,0,1,0}-{2387,9685,0,1,0}-{2389,9683,0,1,0}-{2719,9668,0,1,0}-{2719,9715,0,1,0}-{2720,9702,0,1,0}-{2722,9669,0,1,0}-{2723,9707,0,1,0}-{2724,9713,0,1,0}-{2504,2965,0,1,0}-{2504,2984,0,1,0}-{2520,2973,0,1,0}-{2525,2986,0,1,0}-{2533,2977,0,1,0}-{2536,2975,0,1,0}-{2539,2990,0,1,0}-{2549,2979,0,1,0}-{2551,2955,0,1,0}-{2552,2961,0,1,0}-{2513,3026,0,1,0}-{2522,3055,0,1,0}-{2523,3057,0,1,0}-{2529,3032,0,1,0}-{2539,3018,0,1,0}-{2541,3016,0,1,0}-{2550,3043,0,1,0}-{2550,3046,0,1,0}-{2553,3047,0,1,0}-{2496,3092,0,1,0}-{2497,3089,0,1,0}-{2500,3092,0,1,0}-{2500,3097,0,1,0}-{2503,3095,0,1,0}-{2504,3133,0,1,0}-{2554,3192,0,1,0}-"
+ },
+ {
+ "npc_id": "3450",
+ "loc_data": "{2901,2947,0,0,0}-{2925,2959,0,0,0}-{2920,3053,0,0,0}-{2924,3063,0,0,0}-"
+ },
+ {
+ "npc_id": "3469",
+ "loc_data": "{2657,2966,0,0,0}-"
+ },
+ {
+ "npc_id": "3470",
+ "loc_data": "{2755,3083,0,0,0}-"
+ },
+ {
+ "npc_id": "3479",
+ "loc_data": "{2906,3514,1,0,0}-"
+ },
+ {
+ "npc_id": "3541",
+ "loc_data": "{3517,3240,0,1,6}-"
+ },
+ {
+ "npc_id": "3579",
+ "loc_data": "{3195,3263,0,1,0}-"
+ },
+ {
+ "npc_id": "3638",
+ "loc_data": "{3309,3453,0,0,1}-"
+ },
+ {
+ "npc_id": "3661",
+ "loc_data": "{3276,9836,0,1,0}-{3287,9840,0,1,0}-"
+ },
+ {
+ "npc_id": "3662",
+ "loc_data": "{3280,9849,0,1,0}-{3286,9830,0,1,0}-"
+ },
+ {
+ "npc_id": "3663",
+ "loc_data": "{3269,9849,0,1,0}-{3291,9843,0,1,0}-"
+ },
+ {
+ "npc_id": "3664",
+ "loc_data": "{3269,9843,0,1,0}-{3275,9833,0,1,0}-"
+ },
+ {
+ "npc_id": "3665",
+ "loc_data": "{3305,9832,0,1,0}-{3305,9843,0,1,0}-{3311,9850,0,1,0}-{3312,9845,0,1,0}-{3313,9827,0,1,0}-{3315,9837,0,1,0}-{3319,9832,0,1,0}-{3319,9849,0,1,0}-{3323,9842,0,1,0}-"
+ },
+ {
+ "npc_id": "3666",
+ "loc_data": "{3302,9806,0,1,0}-{3302,9816,0,1,0}-{3304,9801,0,1,0}-{3310,9796,0,1,0}-{3312,9811,0,1,0}-{3313,9805,0,1,0}-{3313,9817,0,1,0}-{3314,9797,0,1,0}-{3319,9800,0,1,0}-{3319,9806,0,1,0}-{3321,9811,0,1,0}-"
+ },
+ {
+ "npc_id": "3667",
+ "loc_data": "{3269,9798,0,1,0}-{3269,9806,0,1,0}-{3269,9814,0,1,0}-{3275,9817,0,1,0}-{3276,9809,0,1,0}-{3280,9803,0,1,0}-{3282,9797,0,1,0}-{3285,9812,0,1,0}-{3288,9819,0,1,0}-{3289,9809,0,1,0}-{3290,9797,0,1,0}-"
+ },
+ {
+ "npc_id": "3670",
+ "loc_data": "{3361,3505,0,1,0}-"
+ },
+ {
+ "npc_id": "3671",
+ "loc_data": "{3085,3251,0,0,3}-"
+ },
+ {
+ "npc_id": "3673",
+ "loc_data": "{2322,3189,0,1,0}-{3195,3265,0,1,0}-{2924,3318,0,1,0}-{2924,3325,0,1,4}-{2656,3359,0,1,0}-{2656,3375,0,1,0}-{2653,4716,0,1,0}-{3248,3351,0,1,0}-"
+ },
+ {
+ "npc_id": "3675",
+ "loc_data": "{3333,2864,0,1,1}-{3335,2860,0,1,2}-{3338,2864,0,1,4}-{3215,2841,0,1,0}-{3217,2845,0,1,0}-{3220,2841,0,1,0}-{3295,2866,0,1,0}-{3297,2863,0,1,0}-{3301,2864,0,1,0}-{3336,2778,0,1,0}-{3343,2793,0,1,0}-{3367,2791,0,1,0}-"
+ },
+ {
+ "npc_id": "3677",
+ "loc_data": "{2637,3440,0,0,0}-"
+ },
+ {
+ "npc_id": "3679",
+ "loc_data": "{2875,3482,0,0,4}-"
+ },
+ {
+ "npc_id": "3680",
+ "loc_data": "{3282,3327,0,1,7}-"
+ },
+ {
+ "npc_id": "3695",
+ "loc_data": "{2661,3701,0,1,0}-"
+ },
+ {
+ "npc_id": "3696",
+ "loc_data": "{2673,3658,0,1,3}-"
+ },
+ {
+ "npc_id": "3707",
+ "loc_data": "{2713,10133,0,1,2}-{2708,10133,0,1,4}-{2706,10135,0,0,3}-{2708,10133,0,1,3}-{2703,10135,0,1,6}-{2702,10131,0,1,4}-{2717,10133,0,1,0}-{2708,10130,0,1,1}-"
+ },
+ {
+ "npc_id": "3709",
+ "loc_data": "{2847,5075,0,0,0}-{2974,2906,0,0,0}-"
+ },
+ {
+ "npc_id": "3711",
+ "loc_data": "{2575,9746,0,1,0}-{2581,9747,0,1,0}-{2577,9743,0,1,1}-{2579,9740,0,1,0}-{2588,9733,0,1,4}-"
+ },
+ {
+ "npc_id": "3777",
+ "loc_data": "{3230,3231,0,1,5}-"
+ },
+ {
+ "npc_id": "3778",
+ "loc_data": "{1867,4233,0,0,0}-"
+ },
+ {
+ "npc_id": "3780",
+ "loc_data": "{1906,4281,0,0,0}-"
+ },
+ {
+ "npc_id": "3781",
+ "loc_data": "{2659,2675,0,1,1}-"
+ },
+ {
+ "npc_id": "3786",
+ "loc_data": "{2658,2666,0,1,1}-"
+ },
+ {
+ "npc_id": "3787",
+ "loc_data": "{2754,3509,0,0,0}-"
+ },
+ {
+ "npc_id": "3788",
+ "loc_data": "{2664,2653,0,1,3}-"
+ },
+ {
+ "npc_id": "3789",
+ "loc_data": "{2660,2649,0,1,3}-"
+ },
+ {
+ "npc_id": "3790",
+ "loc_data": "{3041,3203,0,0,6}-"
+ },
+ {
+ "npc_id": "3791",
+ "loc_data": "{2653,2655,0,1,1}-"
+ },
+ {
+ "npc_id": "3793",
+ "loc_data": "{2659,2660,0,1,6}-"
+ },
+ {
+ "npc_id": "3796",
+ "loc_data": "{2667,2661,0,0,3}-"
+ },
+ {
+ "npc_id": "3797",
+ "loc_data": "{2649,2659,0,0,2}-"
+ },
+ {
+ "npc_id": "3798",
+ "loc_data": "{2658,2652,0,1,6}-"
+ },
+ {
+ "npc_id": "3799",
+ "loc_data": "{2650,2663,0,0,4}-"
+ },
+ {
+ "npc_id": "3802",
+ "loc_data": "{2657,2637,0,0,6}-"
+ },
+ {
+ "npc_id": "3804",
+ "loc_data": "{3349,3793,0,0,0}-"
+ },
+ {
+ "npc_id": "3805",
+ "loc_data": "{2445,3097,0,1,5}-"
+ },
+ {
+ "npc_id": "3806",
+ "loc_data": "{3166,3304,0,1,0}-"
+ },
+ {
+ "npc_id": "3807",
+ "loc_data": "{3254,3274,0,0,0}-"
+ },
+ {
+ "npc_id": "3808",
+ "loc_data": "{2422,3526,0,1,1}-{2517,3205,0,1,3}-{2513,3204,0,1,3}-"
+ },
+ {
+ "npc_id": "3809",
+ "loc_data": "{3285,3213,0,1,1}-"
+ },
+ {
+ "npc_id": "3810",
+ "loc_data": "{2847,3499,0,1,7}-{2970,2973,0,0,0}-"
+ },
+ {
+ "npc_id": "3811",
+ "loc_data": "{2894,2730,0,1,2}-{2918,3057,0,0,0}-{2465,3501,3,1,3}-"
+ },
+ {
+ "npc_id": "3813",
+ "loc_data": "{2541,2969,0,1,4}-"
+ },
+ {
+ "npc_id": "3817",
+ "loc_data": "{2521,3208,0,1,1}-"
+ },
+ {
+ "npc_id": "3819",
+ "loc_data": "{2416,3525,0,1,3}-{2412,3527,0,1,6}-"
+ },
+ {
+ "npc_id": "3820",
+ "loc_data": "{3088,3255,0,0,6}-"
+ },
+ {
+ "npc_id": "3822",
+ "loc_data": "{2353,3680,0,1,3}-"
+ },
+ {
+ "npc_id": "3823",
+ "loc_data": "{2343,3668,0,1,3}-"
+ },
+ {
+ "npc_id": "3824",
+ "loc_data": "{2329,3689,0,1,6}-"
+ },
+ {
+ "npc_id": "3831",
+ "loc_data": "{2357,3637,0,0,0}-"
+ },
+ {
+ "npc_id": "3832",
+ "loc_data": "{2345,3651,0,0,0}-"
+ },
+ {
+ "npc_id": "3848",
+ "loc_data": "{2337,3703,0,0,6}-{2340,3702,0,0,6}-{2343,3702,0,0,3}-{2349,3702,0,0,6}-{2353,3703,0,0,6}-{2310,3704,0,0,6}-{2311,3696,0,0,4}-{2343,3702,0,0,3}-"
+ },
+ {
+ "npc_id": "3851",
+ "loc_data": "{2332,3669,0,0,0}-{2325,3671,0,0,4}-{2331,3670,0,0,1}-{2333,3671,0,0,3}-"
+ },
+ {
+ "npc_id": "3915",
+ "loc_data": "{2945,3146,0,1,3}-"
+ },
+ {
+ "npc_id": "3916",
+ "loc_data": "{2595,3890,0,0,3}-"
+ },
+ {
+ "npc_id": "3917",
+ "loc_data": "{2581,3861,0,0,1}-"
+ },
+ {
+ "npc_id": "3920",
+ "loc_data": "{2527,10259,0,1,1}-"
+ },
+ {
+ "npc_id": "3921",
+ "loc_data": "{2506,10251,0,1,1}-"
+ },
+ {
+ "npc_id": "3922",
+ "loc_data": "{2508,10260,0,1,1}-"
+ },
+ {
+ "npc_id": "3923",
+ "loc_data": "{2521,10251,0,1,1}-"
+ },
+ {
+ "npc_id": "3937",
+ "loc_data": "{2508,3866,0,0,3}-"
+ },
+ {
+ "npc_id": "4235",
+ "loc_data": "{2669,3332,0,0,1}-"
+ },
+ {
+ "npc_id": "4237",
+ "loc_data": "{2669,3331,0,0,6}-"
+ },
+ {
+ "npc_id": "4239",
+ "loc_data": "{2669,3331,0,0,6}-"
+ },
+ {
+ "npc_id": "4241",
+ "loc_data": "{2669,3331,0,0,6}-"
+ },
+ {
+ "npc_id": "4243",
+ "loc_data": "{2669,3331,0,0,6}-"
+ },
+ {
+ "npc_id": "4246",
+ "loc_data": "{3480,3484,1,0,0}-{3479,3484,0,1,3}-"
+ },
+ {
+ "npc_id": "4247",
+ "loc_data": "{2639,3291,0,0,0}-{2981,3370,0,0,0}-{2737,3500,0,1,6}-{3240,3474,0,0,0}-"
+ },
+ {
+ "npc_id": "4248",
+ "loc_data": "{2849,10183,0,1,0}-"
+ },
+ {
+ "npc_id": "4249",
+ "loc_data": "{2981,3341,1,0,0}-"
+ },
+ {
+ "npc_id": "4250",
+ "loc_data": "{3302,3492,0,1,6}-"
+ },
+ {
+ "npc_id": "4251",
+ "loc_data": "{3009,3380,0,1,0}-"
+ },
+ {
+ "npc_id": "4261",
+ "loc_data": "{2569,9851,0,1,3}-{2579,9851,0,1,4}-"
+ },
+ {
+ "npc_id": "4263",
+ "loc_data": "{2584,9838,0,1,6}-"
+ },
+ {
+ "npc_id": "4264",
+ "loc_data": "{2588,9837,0,1,4}-"
+ },
+ {
+ "npc_id": "4269",
+ "loc_data": "{2608,9817,0,1,3}-"
+ },
+ {
+ "npc_id": "4270",
+ "loc_data": "{2593,9820,0,1,4}-"
+ },
+ {
+ "npc_id": "4271",
+ "loc_data": "{2596,9822,0,1,0}-"
+ },
+ {
+ "npc_id": "4273",
+ "loc_data": "{2564,9851,0,1,4}-"
+ },
+ {
+ "npc_id": "4274",
+ "loc_data": "{2586,9826,0,1,7}-{2569,9849,0,1,4}-{2581,9847,0,1,0}-{2609,9826,0,1,1}-"
+ },
+ {
+ "npc_id": "4275",
+ "loc_data": "{2594,9817,0,1,0}-"
+ },
+ {
+ "npc_id": "4276",
+ "loc_data": "{2581,9851,0,1,1}-"
+ },
+ {
+ "npc_id": "4285",
+ "loc_data": "{2880,3546,0,0,4}-"
+ },
+ {
+ "npc_id": "4287",
+ "loc_data": "{2840,3541,1,0,2}-"
+ },
+ {
+ "npc_id": "4288",
+ "loc_data": "{2851,3554,0,1,6}-"
+ },
+ {
+ "npc_id": "4289",
+ "loc_data": "{2845,3539,2,0,7}-{2792,3488,2,0,0}-"
+ },
+ {
+ "npc_id": "4290",
+ "loc_data": "{2854,3542,0,1,3}-"
+ },
+ {
+ "npc_id": "4291",
+ "loc_data": "{2863,3546,2,1,3}-{2870,3551,2,1,0}-{2850,3547,2,1,0}-{2844,3552,2,1,5}-{2843,3547,2,1,5}-{2872,3542,2,1,3}-{2861,3551,2,1,1}-{2865,3538,2,1,2}-"
+ },
+ {
+ "npc_id": "4292",
+ "loc_data": "{2847,3541,2,1,3}-{2855,3554,2,1,5}-{2860,3542,2,1,0}-{2869,3554,2,1,3}-{2872,3537,2,1,4}-{2850,3534,2,1,3}-{2857,3546,2,1,0}-{2838,3554,2,1,6}-{2869,3552,2,1,4}-"
+ },
+ {
+ "npc_id": "4293",
+ "loc_data": "{2840,3554,0,1,1}-"
+ },
+ {
+ "npc_id": "4294",
+ "loc_data": "{2847,3553,0,1,6}-"
+ },
+ {
+ "npc_id": "4295",
+ "loc_data": "{2856,3537,1,1,1}-"
+ },
+ {
+ "npc_id": "4296",
+ "loc_data": "{2841,3543,0,0,4}-"
+ },
+ {
+ "npc_id": "4297",
+ "loc_data": "{2856,3549,1,0,2}-"
+ },
+ {
+ "npc_id": "4298",
+ "loc_data": "{2864,3541,1,1,3}-"
+ },
+ {
+ "npc_id": "4299",
+ "loc_data": "{2866,3556,1,0,5}-"
+ },
+ {
+ "npc_id": "4300",
+ "loc_data": "{2865,3544,1,0,6}-"
+ },
+ {
+ "npc_id": "4312",
+ "loc_data": "{3323,9609,0,0,6}-"
+ },
+ {
+ "npc_id": "4315",
+ "loc_data": "{3224,3286,0,0,0}-"
+ },
+ {
+ "npc_id": "4317",
+ "loc_data": "{3230,3285,0,0,0}-"
+ },
+ {
+ "npc_id": "4344",
+ "loc_data": "{3733,2972,0,1,4}-{3747,3013,0,1,4}-{3766,3034,0,1,6}-"
+ },
+ {
+ "npc_id": "4346",
+ "loc_data": "{3714,2952,0,1,1}-{3786,9463,0,1,6}-"
+ },
+ {
+ "npc_id": "4347",
+ "loc_data": "{3749,2978,0,1,7}-{3756,2966,0,1,2}-{3759,2962,0,1,2}-{3749,2968,0,1,2}-{3757,2980,0,0,5}-{3728,3043,0,1,4}-{3725,3015,0,1,0}-{3722,3021,0,1,6}-{3717,3017,0,1,7}-{3723,3019,0,1,5}-{3731,3018,0,1,1}-{3734,3028,0,1,7}-{3743,3038,0,1,4}-{3742,3036,0,1,1}-{3747,3040,0,1,4}-{3748,3030,0,1,6}-{3748,3019,0,1,1}-{3745,3016,0,1,4}-{3741,3020,0,1,3}-{3727,3039,0,1,3}-{3734,3046,0,1,1}-{3736,3050,0,1,6}-{3735,3053,0,1,3}-{3741,3053,0,1,6}-{3756,3030,0,1,3}-{3754,3024,0,1,4}-{3769,3039,0,1,6}-{3766,3045,0,1,7}-{3764,3042,0,1,1}-"
+ },
+ {
+ "npc_id": "4348",
+ "loc_data": "{3676,3017,0,1,3}-{3687,3018,0,1,3}-{3707,3015,0,1,6}-{3729,3021,0,1,3}-"
+ },
+ {
+ "npc_id": "4349",
+ "loc_data": "{3664,3018,0,1,6}-{3658,3012,0,1,4}-{3729,2984,0,1,4}-{3720,3000,0,1,4}-{3718,3030,0,1,4}-{3757,3009,0,1,3}-{3727,3051,0,1,4}-{3809,3028,0,1,6}-"
+ },
+ {
+ "npc_id": "4350",
+ "loc_data": "{3680,3026,0,1,4}-{3675,3029,0,1,3}-{3711,3028,0,1,4}-{3698,3046,0,1,6}-{3733,3011,0,1,4}-{3793,3036,0,1,4}-"
+ },
+ {
+ "npc_id": "4351",
+ "loc_data": "{3694,3019,0,1,4}-{3728,2965,0,1,7}-{3760,3015,0,1,1}-{3758,3034,0,1,2}-{3714,3049,0,1,7}-{3770,3008,0,1,4}-{3787,3026,0,1,6}-"
+ },
+ {
+ "npc_id": "4352",
+ "loc_data": "{3683,3034,0,1,4}-{3747,3007,0,1,4}-{3735,2957,0,1,2}-{3727,3003,0,1,3}-{3719,3037,0,1,7}-{3770,3027,0,1,5}-{3719,3011,0,1,3}-{3787,3035,0,1,1}-"
+ },
+ {
+ "npc_id": "4353",
+ "loc_data": "{3719,9358,0,1,6}-{3738,9378,0,1,0}-{3765,9422,0,1,1}-{3741,9436,0,1,6}-{3727,9455,0,1,2}-{3737,9413,0,1,0}-{3735,9444,0,1,3}-{3780,9456,0,1,2}-{3827,9430,0,1,2}-{3819,9422,0,1,2}-"
+ },
+ {
+ "npc_id": "4354",
+ "loc_data": "{3739,9369,0,1,0}-{3737,9350,0,1,4}-{3721,9349,0,1,4}-{3733,9396,0,1,6}-{3764,9404,0,1,6}-{3732,9368,0,1,1}-{3749,9461,0,1,0}-{3746,9423,0,1,0}-{3760,9417,0,1,3}-{3760,9451,0,1,6}-{3813,9445,0,1,0}-{3786,9443,0,1,6}-{3783,9430,0,1,5}-{3821,9443,0,1,4}-{3790,9456,0,1,7}-"
+ },
+ {
+ "npc_id": "4355",
+ "loc_data": "{3728,9349,0,1,3}-{3752,9398,0,1,4}-{3723,9377,0,1,4}-{3749,9413,0,1,4}-{3721,9419,0,1,3}-{3754,9408,0,1,4}-{3810,9448,0,1,4}-{3786,9412,0,1,3}-{3797,9452,0,1,4}-"
+ },
+ {
+ "npc_id": "4356",
+ "loc_data": "{3755,9391,0,1,5}-{3723,9441,0,1,4}-{3766,9459,0,1,4}-{3748,9450,0,1,6}-{3765,9424,0,1,2}-{3800,9414,0,1,2}-{3821,9418,0,1,3}-{3810,9462,0,1,0}-{3809,9440,0,1,2}-{3787,9464,0,1,0}-"
+ },
+ {
+ "npc_id": "4357",
+ "loc_data": "{3771,9450,0,1,4}-{3730,9443,0,1,4}-{3808,9423,0,1,7}-{3797,9427,0,1,4}-{3833,9438,0,1,6}-{3834,9458,0,1,6}-{3797,9440,0,1,1}-{3793,9441,0,1,4}-{3829,9425,0,1,7}-"
+ },
+ {
+ "npc_id": "4358",
+ "loc_data": "{3751,2977,0,1,2}-"
+ },
+ {
+ "npc_id": "4359",
+ "loc_data": "{3669,2977,0,1,3}-"
+ },
+ {
+ "npc_id": "4375",
+ "loc_data": "{3013,3192,1,0,6}-"
+ },
+ {
+ "npc_id": "4376",
+ "loc_data": "{3081,3421,0,1,3}-"
+ },
+ {
+ "npc_id": "4381",
+ "loc_data": "{2361,5241,0,1,1}-{2358,5240,0,1,1}-{2362,5239,0,1,1}-{2364,5240,0,1,1}-{2364,5242,0,1,1}-{2357,5242,0,1,1}-{2356,5240,0,1,1}-{2356,5242,0,1,1}-{2360,5243,0,1,1}-"
+ },
+ {
+ "npc_id": "4382",
+ "loc_data": "{2324,5210,0,1,2}-{2322,5201,0,1,7}-{2324,5210,0,1,2}-{2322,5201,0,1,7}-{2327,5205,0,1,7}-{2328,5200,0,1,7}-{2326,5198,0,1,7}-{2331,5198,0,1,4}-{2333,5201,0,1,4}-{2333,5199,0,1,2}-{3139,3747,0,1,0}-{3141,3737,0,1,0}-{3157,3735,0,1,0}-{3165,3746,0,1,0}-{3164,3727,0,1,0}-{3172,3713,0,1,0}-{3177,3724,0,1,0}-"
+ },
+ {
+ "npc_id": "4383",
+ "loc_data": "{2321,5225,0,1,3}-{2321,5223,0,1,4}-{2317,5229,0,1,7}-{2322,5225,0,1,1}-{2325,5231,0,1,6}-{2321,5225,0,1,1}-{2314,5227,0,1,2}-{2312,5229,0,1,2}-{2330,5229,0,1,1}-{2324,5233,0,1,4}-{2320,5232,0,1,3}-{2324,5237,0,1,1}-{2329,5229,0,1,6}-{2315,5227,0,1,7}-{2318,5226,0,1,6}-{2322,5222,0,1,6}-"
+ },
+ {
+ "npc_id": "4384",
+ "loc_data": "{2355,5204,0,1,3}-{2347,5195,0,1,0}-{2336,5202,0,1,4}-{2332,5201,0,1,3}-{2327,5201,0,1,1}-{2328,5199,0,1,6}-"
+ },
+ {
+ "npc_id": "4385",
+ "loc_data": "{2350,5201,0,1,1}-{2353,5192,0,1,1}-{2324,5203,0,1,1}-{2333,5204,0,1,4}-{2326,5197,0,1,5}-{2264,5136,0,1,6}-"
+ },
+ {
+ "npc_id": "4386",
+ "loc_data": "{3097,3728,0,1,0}-{3130,3754,0,1,0}-{3128,3719,0,1,0}-{2311,5187,0,1,6}-"
+ },
+ {
+ "npc_id": "4387",
+ "loc_data": "{2350,5192,0,1,6}-{2350,5191,0,1,4}-{2347,5188,0,1,2}-"
+ },
+ {
+ "npc_id": "4388",
+ "loc_data": "{2305,5231,0,1,2}-{2312,5225,0,1,2}-{2314,5240,0,1,2}-{2310,5241,0,1,2}-{2308,5246,0,1,2}-{2309,5245,0,1,2}-{2315,5237,0,1,2}-"
+ },
+ {
+ "npc_id": "4389",
+ "loc_data": "{2013,5238,0,1,0}-{2043,5233,0,1,0}-{2041,5231,0,1,0}-{2029,5233,0,1,0}-{2020,5238,0,1,0}-"
+ },
+ {
+ "npc_id": "4390",
+ "loc_data": "{2040,5190,0,1,3}-{2044,5187,0,1,2}-{2042,5191,0,1,1}-{2045,5190,0,1,7}-{2041,5187,0,1,2}-{2045,5186,0,1,2}-{2044,5188,0,1,2}-{2042,5192,0,1,2}-"
+ },
+ {
+ "npc_id": "4391",
+ "loc_data": "{1952,5192,0,1,2}-{1993,5240,0,1,4}-{1991,5235,0,1,4}-{1990,5240,0,1,3}-{1989,5237,0,1,6}-{2009,5202,0,1,1}-{2005,5199,0,1,3}-{1994,5236,0,1,6}-{1991,5242,0,1,6}-{2007,5201,0,1,6}-{2009,5201,0,1,6}-{2004,5197,0,1,6}-{2004,5207,0,1,6}-{2006,5205,0,1,6}-"
+ },
+ {
+ "npc_id": "4392",
+ "loc_data": "{2033,5233,0,1,4}-{2033,5233,0,1,7}-{2026,5236,0,1,1}-"
+ },
+ {
+ "npc_id": "4393",
+ "loc_data": "{2045,5222,0,1,4}-{1993,5190,0,1,6}-{1993,5190,0,1,4}-{2044,5216,0,1,4}-{2008,5203,0,1,1}-{2006,5208,0,1,1}-{2037,5214,0,1,3}-{2037,5210,0,1,1}-{2043,5217,0,1,1}-{2040,5214,0,1,1}-{2042,5217,0,1,1}-{2038,5214,0,1,1}-{2041,5218,0,1,1}-"
+ },
+ {
+ "npc_id": "4394",
+ "loc_data": "{1997,5244,0,1,3}-{1992,5238,0,1,5}-{1990,5234,0,1,1}-{2010,5191,0,1,7}-{2018,5188,0,1,4}-{1989,5231,0,1,4}-{2018,5187,0,1,6}-"
+ },
+ {
+ "npc_id": "4395",
+ "loc_data": "{2016,5237,0,1,7}-{1988,5190,0,1,2}-{2039,5216,0,1,6}-{2017,5238,0,1,6}-"
+ },
+ {
+ "npc_id": "4396",
+ "loc_data": "{2034,5243,0,1,5}-{2034,5239,0,1,5}-{2032,5243,0,1,4}-{2034,5232,0,1,1}-{2033,5240,0,1,1}-{2029,5230,0,1,6}-{2030,5234,0,1,4}-{2029,5230,0,1,1}-{2029,5233,0,1,2}-{2031,5244,0,1,1}-{2039,5208,0,1,4}-{2029,5235,0,1,6}-{2028,5234,0,1,6}-{2030,5237,0,1,4}-{2033,5238,0,1,4}-{2030,5238,0,1,4}-{2032,5238,0,1,3}-{2027,5238,0,1,6}-{2034,5239,0,1,0}-{2016,5235,0,1,5}-{2015,5237,0,1,3}-{2004,5244,0,1,4}-{2005,5241,0,1,4}-{2035,5245,0,1,5}-{2004,5240,0,1,1}-{2027,5235,0,1,5}-{2027,5235,0,1,4}-{2027,5236,0,1,6}-{1999,5244,0,1,4}-{1995,5234,0,1,6}-{1993,5242,0,1,1}-{1990,5239,0,1,1}-{1990,5243,0,1,7}-{1989,5230,0,1,6}-{1990,5224,0,1,5}-{1993,5222,0,1,7}-{1986,5221,0,1,3}-{1990,5221,0,1,3}-{1986,5222,0,1,6}-{2002,5215,0,1,1}-{1996,5215,0,1,1}-{1994,5215,0,1,2}-{2002,5215,0,1,6}-{1995,5208,0,1,1}-{1993,5206,0,1,4}-{1986,5204,0,1,3}-{1986,5201,0,1,6}-{2001,5201,0,1,6}-{1987,5200,0,1,3}-{1986,5199,0,1,6}-{2009,5198,0,1,6}-{1995,5197,0,1,3}-{2009,5194,0,1,3}-{2005,5191,0,1,3}-{2004,5190,0,1,4}-{1991,5190,0,1,1}-{2003,5185,0,1,4}-{2004,5190,0,1,4}-{2004,5188,0,1,1}-{2005,5188,0,1,6}-{2008,5192,0,1,6}-{2008,5193,0,1,3}-{2009,5200,0,1,7}-{2010,5192,0,1,4}-{2010,5194,0,1,4}-{2013,5190,0,1,6}-{2018,5189,0,1,6}-{2018,5192,0,1,6}-{2018,5187,0,1,4}-{1993,5205,0,1,4}-{1994,5206,0,1,3}-{1989,5206,0,1,0}-{1993,5210,0,1,3}-{1989,5200,0,1,4}-{2002,5215,0,1,1}-{2022,5193,0,1,3}-{1995,5220,0,1,1}-{1992,5222,0,1,6}-{1992,5222,0,1,6}-{1988,5201,0,1,4}-{1988,5224,0,1,4}-{1989,5206,0,1,4}-{1987,5225,0,1,4}-{1988,5225,0,1,4}-{1986,5204,0,1,3}-{1987,5226,0,1,4}-{1990,5227,0,1,3}-{1993,5200,0,1,7}-{1990,5228,0,1,4}-{2004,5200,0,1,6}-{1990,5227,0,1,4}-{1990,5224,0,1,6}-{1994,5223,0,1,4}-{2036,5201,0,1,6}-{2038,5215,0,1,4}-{2042,5208,0,1,1}-{2045,5204,0,1,1}-{2046,5205,0,1,3}-{2028,5195,0,1,3}-{2026,5195,0,1,0}-{2039,5193,0,1,3}-{2025,5193,0,1,1}-{2022,5193,0,1,6}-{2043,5192,0,1,2}-{2018,5192,0,1,1}-{2045,5192,0,1,1}-{2032,5190,0,1,1}-{2030,5189,0,1,4}-{2024,5187,0,1,3}-{2038,5186,0,1,4}-{2038,5185,0,1,3}-{2033,5185,0,1,3}-{2016,5186,0,1,1}-{2017,5194,0,1,1}-{2024,5193,0,1,4}-{2008,5201,0,1,4}-{2005,5220,0,1,1}-{2005,5204,0,1,4}-{2037,5203,0,1,3}-{2037,5206,0,1,4}-{2041,5208,0,1,1}-"
+ },
+ {
+ "npc_id": "4397",
+ "loc_data": "{2072,5200,0,1,5}-{2145,5251,0,1,3}-{2153,5253,0,1,1}-{2149,5255,0,1,3}-{2146,5252,0,1,5}-{2146,5261,0,1,6}-{2147,5254,0,1,4}-"
+ },
+ {
+ "npc_id": "4398",
+ "loc_data": "{2160,5282,0,1,3}-{2162,5284,0,1,1}-{2164,5281,0,1,7}-"
+ },
+ {
+ "npc_id": "4399",
+ "loc_data": "{2080,5240,0,1,2}-{2122,5290,0,1,0}-{2131,5297,0,1,6}-{2119,5297,0,1,4}-{2120,5302,0,1,3}-{2129,5306,0,1,3}-{2123,5304,0,1,1}-{2130,5306,0,1,4}-{2163,5301,0,1,5}-{2166,5306,0,1,0}-{2169,5303,0,1,4}-{2122,5291,0,1,0}-{2119,5296,0,1,3}-{2131,5297,0,1,6}-{2125,5302,0,1,0}-{2127,5304,0,1,4}-{2165,5302,0,1,3}-{2163,5301,0,1,4}-{2168,5306,0,1,4}-{2132,5300,0,1,6}-{2132,5302,0,1,4}-"
+ },
+ {
+ "npc_id": "4400",
+ "loc_data": "{2072,5200,0,1,7}-{2130,5267,0,1,7}-{2140,5252,0,1,5}-{2141,5252,0,1,1}-{2142,5252,0,1,0}-{2148,5255,0,1,3}-{2125,5270,0,1,1}-{2148,5257,0,1,1}-{2117,5274,0,1,4}-{2146,5307,0,1,2}-{2145,5305,0,1,5}-{2152,5307,0,1,4}-{2148,5252,0,1,0}-{2142,5262,0,1,3}-{2124,5275,0,1,4}-{2121,5276,0,1,3}-{2148,5304,0,1,0}-{2146,5305,0,1,5}-{2148,5304,0,1,1}-{2151,5304,0,1,6}-{2145,5306,0,1,3}-{2134,5272,0,1,6}-{2151,5307,0,1,6}-{2151,5308,0,1,6}-{2149,5307,0,1,6}-{2150,5308,0,1,6}-{2150,5305,0,1,6}-{2153,5307,0,1,6}-{2152,5305,0,1,6}-{2128,5272,0,1,6}-{2129,5272,0,1,6}-{2124,5271,0,1,6}-{2124,5272,0,1,6}-{2122,5272,0,1,6}-{2121,5275,0,1,6}-{3018,10313,0,1,4}-{3016,10315,0,1,4}-{3018,10322,0,1,4}-{3024,10326,0,1,3}-{3030,10332,0,1,4}-{3029,10337,0,1,6}-{3034,10342,0,1,3}-"
+ },
+ {
+ "npc_id": "4401",
+ "loc_data": "{2072,5200,0,1,6}-{2096,5248,0,1,6}-{2124,5273,0,1,1}-{2128,5270,0,1,4}-{2117,5274,0,1,3}-{2154,5273,0,1,3}-{2167,5259,0,1,6}-{2170,5257,0,1,1}-{2170,5256,0,1,0}-{2171,5256,0,1,4}-{2167,5256,0,1,3}-{2153,5273,0,1,3}-{2153,5270,0,1,1}-{2171,5255,0,1,2}-{2168,5250,0,1,4}-{2168,5251,0,1,3}-{2131,5264,0,1,6}-{2157,5272,0,1,6}-{2150,5268,0,1,0}-{2133,5272,0,1,2}-{2157,5274,0,1,1}-{2156,5270,0,1,3}-{2154,5271,0,1,5}-"
+ },
+ {
+ "npc_id": "4402",
+ "loc_data": "{2080,5240,0,1,5}-{2171,5283,0,1,6}-{2170,5287,0,1,6}-{2170,5281,0,1,6}-{2172,5272,0,1,4}-{2172,5272,0,1,4}-"
+ },
+ {
+ "npc_id": "4403",
+ "loc_data": "{2096,5248,0,1,4}-{2172,5276,0,1,1}-{2172,5284,0,1,1}-{2172,5281,0,1,2}-"
+ },
+ {
+ "npc_id": "4404",
+ "loc_data": "{1872,5242,0,1,3}-{1873,5230,0,1,2}-{1870,5235,0,1,3}-{1872,5217,0,1,6}-{1873,5212,0,1,4}-{1877,5218,0,1,2}-{1877,5216,0,1,3}-{1875,5218,0,1,6}-{1871,5191,0,1,4}-{1868,5188,0,1,4}-{1861,5189,0,1,3}-{1882,5216,0,1,6}-{1874,5215,0,1,5}-{1873,5238,0,1,3}-"
+ },
+ {
+ "npc_id": "4406",
+ "loc_data": "{1848,5176,0,1,2}-{1898,5197,0,1,6}-{1898,5191,0,1,7}-{1890,5195,0,1,3}-{1893,5191,0,1,4}-{1903,5190,0,1,0}-{1889,5190,0,1,3}-{1889,5190,0,1,4}-{1885,5191,0,1,4}-{1900,5208,0,1,1}-{1900,5210,0,1,1}-{1903,5243,0,1,6}-{1901,5245,0,1,4}-{1894,5243,0,1,5}-{1890,5242,0,1,6}-{1889,5244,0,1,4}-{1897,5196,0,1,1}-{1902,5207,0,1,3}-"
+ },
+ {
+ "npc_id": "4407",
+ "loc_data": "{1860,5226,0,1,0}-{1859,5200,0,1,0}-{1860,5222,0,1,4}-{1865,5205,0,1,4}-{1862,5205,0,1,7}-{1862,5205,0,1,7}-{1864,5206,0,1,7}-"
+ },
+ {
+ "npc_id": "4408",
+ "loc_data": "{1860,5215,0,1,5}-{1864,5218,0,1,1}-"
+ },
+ {
+ "npc_id": "4409",
+ "loc_data": "{1864,5226,0,1,1}-{1859,5220,0,1,4}-{1861,5224,0,1,6}-"
+ },
+ {
+ "npc_id": "4410",
+ "loc_data": "{1848,5176,0,1,2}-{1890,5205,0,1,6}-{1897,5232,0,1,6}-{1906,5236,0,1,3}-{1904,5235,0,1,6}-{1895,5227,0,1,3}-{1863,5221,0,1,4}-"
+ },
+ {
+ "npc_id": "4411",
+ "loc_data": "{1882,5201,0,1,0}-{1884,5207,0,1,3}-{1912,5239,0,1,4}-{1912,5244,0,1,5}-{1890,5204,0,1,5}-"
+ },
+ {
+ "npc_id": "4412",
+ "loc_data": "{1880,5200,0,1,6}-{1911,5241,0,1,0}-{1893,5228,0,1,3}-"
+ },
+ {
+ "npc_id": "4413",
+ "loc_data": "{2645,3580,0,1,4}-{1871,5228,0,1,6}-{1872,5233,0,1,1}-"
+ },
+ {
+ "npc_id": "4414",
+ "loc_data": "{1890,5215,0,1,5}-{1892,5216,0,1,1}-{1889,5223,0,1,3}-{1892,5224,0,1,2}-{1893,5219,0,1,5}-"
+ },
+ {
+ "npc_id": "4415",
+ "loc_data": "{1848,5176,0,1,2}-{1874,5230,0,1,3}-{1870,5232,0,1,4}-{1858,5235,0,1,3}-{1871,5241,0,1,7}-{1860,5223,0,1,4}-{1862,5222,0,1,4}-{1874,5234,0,1,5}-{1874,5230,0,1,5}-{1875,5219,0,1,5}-{1876,5215,0,1,3}-{1876,5220,0,1,6}-{1859,5206,0,1,5}-{1877,5216,0,1,4}-{1862,5201,0,1,5}-{1858,5201,0,1,6}-{1874,5201,0,1,2}-{1858,5202,0,1,0}-{1860,5200,0,1,7}-{1875,5197,0,1,6}-{1875,5201,0,1,2}-{1861,5194,0,1,3}-{1861,5224,0,1,6}-{1860,5192,0,1,2}-{1874,5188,0,1,7}-{1867,5188,0,1,4}-{1866,5189,0,1,4}-{1876,5189,0,1,1}-{1876,5196,0,1,3}-{1876,5188,0,1,4}-{1876,5191,0,1,4}-{1877,5191,0,1,4}-{1877,5197,0,1,6}-{1881,5198,0,1,4}-{1882,5197,0,1,5}-{1883,5203,0,1,3}-{1882,5198,0,1,4}-{1863,5205,0,1,4}-{1883,5205,0,1,5}-{1861,5205,0,1,5}-{1887,5204,0,1,3}-{1883,5205,0,1,3}-{1884,5206,0,1,1}-{1876,5215,0,1,6}-{1879,5215,0,1,2}-{1870,5217,0,1,6}-{1881,5221,0,1,1}-{1871,5218,0,1,1}-{1872,5191,0,1,3}-{1874,5219,0,1,5}-{1884,5228,0,1,4}-{1882,5231,0,1,7}-{1882,5234,0,1,5}-{1879,5234,0,1,6}-{1897,5234,0,1,6}-{1884,5234,0,1,4}-{1884,5235,0,1,3}-{1885,5236,0,1,6}-{1879,5239,0,1,4}-{1893,5243,0,1,7}-{1880,5243,0,1,7}-{1882,5241,0,1,1}-{1902,5242,0,1,4}-{1901,5244,0,1,3}-{1910,5243,0,1,5}-{1911,5235,0,1,3}-{1881,5243,0,1,2}-{1879,5234,0,1,3}-{1880,5234,0,1,4}-{1879,5239,0,1,1}-{1874,5230,0,1,4}-{1874,5236,0,1,4}-{1911,5235,0,1,5}-{1912,5243,0,1,4}-{1912,5238,0,1,3}-{1913,5244,0,1,4}-{1890,5244,0,1,4}-{1907,5204,0,1,1}-{1909,5204,0,1,1}-{1908,5204,0,1,3}-{1889,5206,0,1,3}-{1890,5207,0,1,1}-{1890,5207,0,1,2}-{1912,5237,0,1,7}-"
+ },
+ {
+ "npc_id": "4422",
+ "loc_data": "{2377,4450,0,0,0}-{2381,4459,0,0,0}-{2388,4425,0,0,0}-{2394,4440,0,0,0}-{2418,4447,0,0,0}-{2427,4461,0,0,0}-"
+ },
+ {
+ "npc_id": "4423",
+ "loc_data": "{2387,4456,0,0,0}-{2423,4461,0,0,0}-"
+ },
+ {
+ "npc_id": "4424",
+ "loc_data": "{2396,4455,0,0,0}-"
+ },
+ {
+ "npc_id": "4425",
+ "loc_data": "{2398,4453,0,0,0}-"
+ },
+ {
+ "npc_id": "4431",
+ "loc_data": "{2388,4470,0,0,0}-"
+ },
+ {
+ "npc_id": "4437",
+ "loc_data": "{2447,4429,0,1,0}-"
+ },
+ {
+ "npc_id": "4438",
+ "loc_data": "{3028,4498,0,1,3}-{3046,4493,0,1,4}-"
+ },
+ {
+ "npc_id": "4439",
+ "loc_data": "{3035,4507,0,1,6}-{3041,4493,0,1,0}-"
+ },
+ {
+ "npc_id": "4443",
+ "loc_data": "{2451,4424,0,1,6}-{2452,4428,0,1,3}-{2443,4423,0,1,7}-{2446,4422,0,1,3}-{2443,4431,0,1,1}-{2441,4427,0,1,1}-{2463,4422,0,1,4}-{2478,4420,0,1,6}-{2489,4428,0,1,6}-{2478,4452,0,1,3}-{2474,4444,0,1,6}-{2493,4454,0,1,3}-{2486,4463,0,1,4}-{2486,4469,0,1,7}-{2479,4456,0,1,4}-{2477,4462,0,1,3}-"
+ },
+ {
+ "npc_id": "4455",
+ "loc_data": "{2410,4434,0,0,0}-"
+ },
+ {
+ "npc_id": "4472",
+ "loc_data": "{2524,3056,0,1,2}-"
+ },
+ {
+ "npc_id": "4474",
+ "loc_data": "{3214,3252,0,0,0}-{3214,3253,0,0,0}-{3214,3254,0,0,0}-"
+ },
+ {
+ "npc_id": "4478",
+ "loc_data": "{3291,2787,0,0,6}-"
+ },
+ {
+ "npc_id": "4479",
+ "loc_data": "{2952,3477,0,1,0}-{2959,3501,0,1,3}-"
+ },
+ {
+ "npc_id": "4481",
+ "loc_data": "{2943,3474,0,1,3}-"
+ },
+ {
+ "npc_id": "4482",
+ "loc_data": "{2952,3505,0,1,7}-{2950,3501,0,1,4}-"
+ },
+ {
+ "npc_id": "4483",
+ "loc_data": "{2944,3467,0,1,6}-{2961,3508,0,1,6}-{2953,3467,0,1,3}-"
+ },
+ {
+ "npc_id": "4484",
+ "loc_data": "{2956,3496,0,1,6}-"
+ },
+ {
+ "npc_id": "4485",
+ "loc_data": "{2951,3509,0,1,4}-"
+ },
+ {
+ "npc_id": "4487",
+ "loc_data": "{2943,3478,0,1,3}-"
+ },
+ {
+ "npc_id": "4488",
+ "loc_data": "{2946,3474,0,1,4}-{2956,3494,0,1,3}-"
+ },
+ {
+ "npc_id": "4489",
+ "loc_data": "{2943,3487,0,1,3}-{2946,3469,0,1,5}-"
+ },
+ {
+ "npc_id": "4491",
+ "loc_data": "{2963,3510,0,1,2}-{2949,3475,0,1,3}-"
+ },
+ {
+ "npc_id": "4492",
+ "loc_data": "{2987,3426,0,1,6}-{2953,3509,0,1,4}-"
+ },
+ {
+ "npc_id": "4493",
+ "loc_data": "{2957,3513,0,1,6}-"
+ },
+ {
+ "npc_id": "4494",
+ "loc_data": "{2957,3512,0,1,4}-"
+ },
+ {
+ "npc_id": "4495",
+ "loc_data": "{2957,3512,0,1,5}-"
+ },
+ {
+ "npc_id": "4511",
+ "loc_data": "{2149,3866,0,0,7}-"
+ },
+ {
+ "npc_id": "4512",
+ "loc_data": "{2092,3930,0,1,4}-"
+ },
+ {
+ "npc_id": "4513",
+ "loc_data": "{2450,4647,0,1,5}-"
+ },
+ {
+ "npc_id": "4514",
+ "loc_data": "{2079,3923,0,1,7}-"
+ },
+ {
+ "npc_id": "4515",
+ "loc_data": "{2081,3899,0,1,1}-"
+ },
+ {
+ "npc_id": "4516",
+ "loc_data": "{2096,3907,0,1,6}-"
+ },
+ {
+ "npc_id": "4517",
+ "loc_data": "{2086,3915,0,1,0}-"
+ },
+ {
+ "npc_id": "4518",
+ "loc_data": "{2106,3907,0,1,6}-"
+ },
+ {
+ "npc_id": "4519",
+ "loc_data": "{2098,3921,0,0,6}-{2099,3921,0,0,6}-{2097,3921,0,0,6}-"
+ },
+ {
+ "npc_id": "4524",
+ "loc_data": "{2083,3903,0,1,3}-"
+ },
+ {
+ "npc_id": "4525",
+ "loc_data": "{2098,3894,0,1,3}-"
+ },
+ {
+ "npc_id": "4526",
+ "loc_data": "{2103,3914,0,1,7}-"
+ },
+ {
+ "npc_id": "4527",
+ "loc_data": "{2071,3877,0,1,2}-{2084,3868,0,1,1}-{2089,3864,0,1,4}-"
+ },
+ {
+ "npc_id": "4528",
+ "loc_data": "{2105,3848,0,1,1}-{2115,3864,0,1,6}-{2122,3946,0,1,3}-"
+ },
+ {
+ "npc_id": "4529",
+ "loc_data": "{2070,3879,0,1,7}-{2097,3862,0,1,3}-{2118,3852,0,1,4}-{2144,3853,0,1,5}-"
+ },
+ {
+ "npc_id": "4530",
+ "loc_data": "{2076,3866,0,1,1}-{2107,3945,0,1,1}-{2133,3874,0,1,4}-"
+ },
+ {
+ "npc_id": "4531",
+ "loc_data": "{2103,3866,0,1,3}-{2134,3851,0,1,4}-{2116,3950,0,1,0}-"
+ },
+ {
+ "npc_id": "4534",
+ "loc_data": "{3206,5487,0,1,6}-{3200,5492,0,1,1}-"
+ },
+ {
+ "npc_id": "4536",
+ "loc_data": "{2213,3794,0,0,3}-"
+ },
+ {
+ "npc_id": "4537",
+ "loc_data": "{2621,3688,0,0,6}-"
+ },
+ {
+ "npc_id": "4539",
+ "loc_data": "{2079,3925,0,1,1}-"
+ },
+ {
+ "npc_id": "4540",
+ "loc_data": "{2137,3899,2,1,2}-{2221,3797,2,1,3}-"
+ },
+ {
+ "npc_id": "4558",
+ "loc_data": "{2885,10202,0,1,0}-"
+ },
+ {
+ "npc_id": "4560",
+ "loc_data": "{3062,3260,0,1,6}-"
+ },
+ {
+ "npc_id": "4561",
+ "loc_data": "{2615,3855,0,1,0}-"
+ },
+ {
+ "npc_id": "4562",
+ "loc_data": "{2799,3200,0,1,0}-"
+ },
+ {
+ "npc_id": "4563",
+ "loc_data": "{3003,9798,0,1,3}-"
+ },
+ {
+ "npc_id": "4564",
+ "loc_data": "{3356,3385,0,1,0}-{3354,3408,0,1,0}-{3365,3429,0,1,0}-{3373,3418,0,1,0}-"
+ },
+ {
+ "npc_id": "4565",
+ "loc_data": "{3350,3401,0,1,0}-{3362,3408,0,1,0}-{3366,3425,0,1,0}-"
+ },
+ {
+ "npc_id": "4566",
+ "loc_data": "{3360,3343,0,1,6}-"
+ },
+ {
+ "npc_id": "4567",
+ "loc_data": "{3364,3339,0,1,6}-"
+ },
+ {
+ "npc_id": "4568",
+ "loc_data": "{3365,3333,0,1,6}-"
+ },
+ {
+ "npc_id": "4569",
+ "loc_data": "{3381,3379,0,0,0}-"
+ },
+ {
+ "npc_id": "4570",
+ "loc_data": "{3115,3276,0,1,6}-{3201,3301,0,1,3}-"
+ },
+ {
+ "npc_id": "4571",
+ "loc_data": "{3098,3225,0,1,4}-{3095,3286,0,1,4}-{3205,3298,0,1,3}-{3056,3248,0,1,0}-"
+ },
+ {
+ "npc_id": "4572",
+ "loc_data": "{2448,3510,1,0,4}-"
+ },
+ {
+ "npc_id": "4573",
+ "loc_data": "{2441,3501,1,1,3}-"
+ },
+ {
+ "npc_id": "4575",
+ "loc_data": "{2441,3503,1,1,4}-"
+ },
+ {
+ "npc_id": "4576",
+ "loc_data": "{2786,3862,0,1,0}-"
+ },
+ {
+ "npc_id": "4578",
+ "loc_data": "{2933,2972,0,0,0}-"
+ },
+ {
+ "npc_id": "4580",
+ "loc_data": "{2572,3299,1,0,0}-"
+ },
+ {
+ "npc_id": "4585",
+ "loc_data": "{3115,3160,0,0,0}-"
+ },
+ {
+ "npc_id": "4586",
+ "loc_data": "{2593,3087,0,1,4}-"
+ },
+ {
+ "npc_id": "4587",
+ "loc_data": "{2449,3503,1,0,6}-"
+ },
+ {
+ "npc_id": "4588",
+ "loc_data": "{2448,3500,1,0,3}-"
+ },
+ {
+ "npc_id": "4597",
+ "loc_data": "{2375,3433,0,1,0}-"
+ },
+ {
+ "npc_id": "4599",
+ "loc_data": "{2417,3513,0,1,4}-"
+ },
+ {
+ "npc_id": "4603",
+ "loc_data": "{3008,3514,0,1,3}-"
+ },
+ {
+ "npc_id": "4604",
+ "loc_data": "{3017,3513,0,1,0}-{3018,3515,0,1,1}-"
+ },
+ {
+ "npc_id": "4605",
+ "loc_data": "{3018,3512,0,1,7}-{3019,3514,0,1,1}-{3019,3516,0,1,1}-"
+ },
+ {
+ "npc_id": "4606",
+ "loc_data": "{3017,3514,0,1,4}-"
+ },
+ {
+ "npc_id": "4607",
+ "loc_data": "{3030,3505,0,0,0}-"
+ },
+ {
+ "npc_id": "4611",
+ "loc_data": "{3076,3259,0,0,0}-"
+ },
+ {
+ "npc_id": "4648",
+ "loc_data": "{3376,3373,0,0,0}-"
+ },
+ {
+ "npc_id": "4649",
+ "loc_data": "{2142,3122,0,1,4}-{2147,3122,0,1,3}-"
+ },
+ {
+ "npc_id": "4650",
+ "loc_data": "{3041,3194,0,1,4}-"
+ },
+ {
+ "npc_id": "4651",
+ "loc_data": "{2143,3121,0,1,6}-{2760,3239,0,1,3}-"
+ },
+ {
+ "npc_id": "4652",
+ "loc_data": "{2674,3144,0,1,3}-{3701,3501,0,1,6}-"
+ },
+ {
+ "npc_id": "4653",
+ "loc_data": "{3671,2930,0,1,6}-{2954,3154,0,1,6}-{3040,3192,0,1,3}-{2794,3414,0,1,6}-"
+ },
+ {
+ "npc_id": "4654",
+ "loc_data": "{2145,3122,0,1,3}-{2674,3146,0,1,6}-{3001,3033,0,1,6}-"
+ },
+ {
+ "npc_id": "4655",
+ "loc_data": "{3701,3503,0,1,1}-{2954,3157,0,1,3}-"
+ },
+ {
+ "npc_id": "4656",
+ "loc_data": "{3038,3192,0,1,3}-{2760,3238,0,1,3}-{2795,3414,0,1,6}-"
+ },
+ {
+ "npc_id": "4659",
+ "loc_data": "{3095,3232,0,1,6}-{3095,3231,0,1,0}-{3225,3370,0,1,4}-{3230,3370,0,1,3}-"
+ },
+ {
+ "npc_id": "4660",
+ "loc_data": "{3225,3369,0,1,3}-{3226,3371,0,1,7}-{3230,3372,0,1,0}-{3230,3370,0,1,3}-{3229,3368,0,1,1}-{3227,3367,0,1,1}-"
+ },
+ {
+ "npc_id": "4665",
+ "loc_data": "{2894,9766,0,1,0}-{2904,9797,0,1,0}-{2918,9800,0,1,0}-"
+ },
+ {
+ "npc_id": "4666",
+ "loc_data": "{2893,9769,0,1,0}-{2912,9797,0,1,0}-{2909,9807,0,1,0}-"
+ },
+ {
+ "npc_id": "4670",
+ "loc_data": "{3181,3850,0,1,6}-"
+ },
+ {
+ "npc_id": "4672",
+ "loc_data": "{3190,3834,0,1,6}-"
+ },
+ {
+ "npc_id": "4673",
+ "loc_data": "{2829,9827,0,1,0}-{2454,4368,0,1,0}-"
+ },
+ {
+ "npc_id": "4674",
+ "loc_data": "{2464,4365,0,1,4}-"
+ },
+ {
+ "npc_id": "4675",
+ "loc_data": "{2460,4374,0,1,4}-{3048,10266,0,1,4}-"
+ },
+ {
+ "npc_id": "4676",
+ "loc_data": "{2451,4362,0,1,4}-{3054,10269,0,1,4}-"
+ },
+ {
+ "npc_id": "4677",
+ "loc_data": "{3335,3687,0,1,4}-{3337,3701,0,1,2}-{3107,3812,0,1,0}-{3316,5448,0,1,2}-{3299,5545,0,1,6}-"
+ },
+ {
+ "npc_id": "4678",
+ "loc_data": "{3333,3699,0,1,6}-{3350,3687,0,1,5}-{3098,3821,0,1,0}-{3305,5454,0,1,6}-"
+ },
+ {
+ "npc_id": "4679",
+ "loc_data": "{3332,3693,0,1,6}-{3341,3685,0,1,4}-{3092,3810,0,1,0}-{2973,3620,0,1,3}-{3312,5558,0,1,1}-"
+ },
+ {
+ "npc_id": "4680",
+ "loc_data": "{3331,3672,0,1,0}-{3347,3694,0,1,5}-{3078,3810,0,1,0}-{2977,3611,0,1,3}-"
+ },
+ {
+ "npc_id": "4681",
+ "loc_data": "{2904,9802,0,1,0}-"
+ },
+ {
+ "npc_id": "4682",
+ "loc_data": "{2896,9796,0,1,0}-"
+ },
+ {
+ "npc_id": "4685",
+ "loc_data": "{2817,3514,0,1,0}-{2884,9959,0,1,0}-{2890,9950,0,1,0}-{3209,5552,0,1,1}-{3223,5555,0,1,4}-{3220,5548,0,1,6}-{3220,5557,0,1,4}-"
+ },
+ {
+ "npc_id": "4686",
+ "loc_data": "{2824,3510,0,1,5}-{2880,9927,0,1,0}-{2887,9955,0,1,0}-{2891,9941,0,1,0}-{2954,3894,0,1,4}-{2950,3932,0,1,0}-{2955,3945,0,1,0}-{3213,5548,0,1,4}-{2804,3507,0,1,0}-"
+ },
+ {
+ "npc_id": "4687",
+ "loc_data": "{2957,3898,0,1,6}-{2946,3898,0,1,7}-{2978,3956,0,1,0}-"
+ },
+ {
+ "npc_id": "4688",
+ "loc_data": "{3139,3818,0,1,0}-{2700,3212,0,1,6}-"
+ },
+ {
+ "npc_id": "4689",
+ "loc_data": "{2369,3401,0,1,0}-{2902,9736,0,1,0}-"
+ },
+ {
+ "npc_id": "4690",
+ "loc_data": "{2372,3401,0,1,0}-{3104,3875,0,1,2}-{2912,9731,0,1,0}-{3256,3624,0,1,5}-{3308,3661,0,1,2}-"
+ },
+ {
+ "npc_id": "4691",
+ "loc_data": "{2371,3398,0,1,0}-{3110,3854,0,1,0}-"
+ },
+ {
+ "npc_id": "4692",
+ "loc_data": "{2372,3395,0,1,0}-{3116,3858,0,1,0}-"
+ },
+ {
+ "npc_id": "4693",
+ "loc_data": "{2369,3394,0,1,0}-{3094,3849,0,1,0}-{2912,9741,0,1,0}-{2906,9736,0,1,0}-"
+ },
+ {
+ "npc_id": "4694",
+ "loc_data": "{3103,3709,0,1,0}-{3094,3869,0,1,1}-{2843,9558,0,1,1}-{2840,9605,0,1,4}-{3017,3852,0,1,7}-"
+ },
+ {
+ "npc_id": "4695",
+ "loc_data": "{2840,3279,0,1,6}-{3098,3699,0,1,4}-{2839,9565,0,1,3}-{2837,9601,0,1,4}-{2631,9880,0,1,1}-{3015,3851,0,1,2}-"
+ },
+ {
+ "npc_id": "4696",
+ "loc_data": "{3096,3691,0,1,6}-{3091,3861,0,1,0}-{2839,9560,0,1,4}-{2846,9613,0,1,6}-{2931,9808,0,1,0}-{2930,9799,0,1,0}-{2632,9874,0,1,1}-{3014,3848,0,1,1}-"
+ },
+ {
+ "npc_id": "4697",
+ "loc_data": "{2825,3277,0,1,3}-{3105,3695,0,1,5}-{2845,9557,0,1,2}-{2839,9624,0,1,6}-{2630,9867,0,1,1}-{3016,3845,0,1,4}-{3324,3856,0,1,2}-"
+ },
+ {
+ "npc_id": "4698",
+ "loc_data": "{2861,9752,0,1,4}-{3139,3712,0,1,5}-{3304,3886,0,1,6}-"
+ },
+ {
+ "npc_id": "4699",
+ "loc_data": "{3159,3707,0,1,3}-{2629,9477,2,0,0}-{2640,9502,2,0,1}-{3296,3872,0,1,5}-{3035,10245,0,1,4}-"
+ },
+ {
+ "npc_id": "4700",
+ "loc_data": "{2862,9750,0,1,7}-{3144,3701,0,1,4}-{2633,9488,2,0,6}-{3282,3880,0,1,4}-"
+ },
+ {
+ "npc_id": "4701",
+ "loc_data": "{3149,3690,0,1,4}-{3287,3894,0,1,3}-{3028,10250,0,1,4}-"
+ },
+ {
+ "npc_id": "4702",
+ "loc_data": "{2869,9775,0,1,0}-{2853,9775,0,1,0}-{3084,9957,0,1,6}-{2712,9480,0,0,5}-"
+ },
+ {
+ "npc_id": "4703",
+ "loc_data": "{2857,9774,0,1,0}-{2860,9781,0,1,0}-{3092,9958,0,1,2}-"
+ },
+ {
+ "npc_id": "4704",
+ "loc_data": "{2863,9767,0,1,0}-{2871,9782,0,1,0}-{3160,5521,0,1,1}-"
+ },
+ {
+ "npc_id": "4705",
+ "loc_data": "{3088,9961,0,1,1}-{3169,5528,0,1,0}-"
+ },
+ {
+ "npc_id": "4706",
+ "loc_data": "{2195,3808,0,1,0}-{2196,3822,0,1,0}-{2197,3805,0,1,0}-{2197,3813,0,1,0}-{2201,3812,0,1,0}-{2202,3824,0,1,0}-{2203,3804,0,1,0}-{2207,3813,0,1,0}-{2211,3818,0,1,0}-{2214,3819,0,1,0}-{3237,5559,0,1,3}-{3244,5554,0,1,3}-{3239,5553,0,1,5}-{3249,5559,0,1,5}-"
+ },
+ {
+ "npc_id": "4707",
+ "loc_data": "{3213,3253,0,0,6}-"
+ },
+ {
+ "npc_id": "4710",
+ "loc_data": "{3222,3475,0,0,5}-"
+ },
+ {
+ "npc_id": "4732",
+ "loc_data": "{3429,3701,0,0,0}-"
+ },
+ {
+ "npc_id": "4856",
+ "loc_data": "{2732,3292,0,1,1}-"
+ },
+ {
+ "npc_id": "4871",
+ "loc_data": "{2782,3276,0,1,0}-"
+ },
+ {
+ "npc_id": "4872",
+ "loc_data": "{2740,3310,0,0,0}-"
+ },
+ {
+ "npc_id": "4874",
+ "loc_data": "{2709,3291,0,0,0}-"
+ },
+ {
+ "npc_id": "4878",
+ "loc_data": "{2726,3283,0,1,1}-"
+ },
+ {
+ "npc_id": "4883",
+ "loc_data": "{2713,3278,0,1,1}-"
+ },
+ {
+ "npc_id": "4885",
+ "loc_data": "{2705,3287,0,1,1}-{2716,3287,0,1,1}-{2732,3282,0,1,1}-"
+ },
+ {
+ "npc_id": "4887",
+ "loc_data": "{2738,3303,0,1,1}-{2723,3274,0,1,1}-"
+ },
+ {
+ "npc_id": "4891",
+ "loc_data": "{2768,3286,0,1,0}-{2777,3278,0,1,0}-{2783,3289,0,1,0}-{2784,3277,0,1,0}-{2768,3289,1,1,0}-{2780,3288,1,1,0}-"
+ },
+ {
+ "npc_id": "4895",
+ "loc_data": "{2718,3302,0,1,1}-"
+ },
+ {
+ "npc_id": "4898",
+ "loc_data": "{3124,9874,0,1,3}-{3128,9875,0,1,6}-"
+ },
+ {
+ "npc_id": "4899",
+ "loc_data": "{3231,3197,0,1,6}-"
+ },
+ {
+ "npc_id": "4900",
+ "loc_data": "{3210,3213,1,1,1}-"
+ },
+ {
+ "npc_id": "4901",
+ "loc_data": "{3245,3157,0,0,7}-"
+ },
+ {
+ "npc_id": "4902",
+ "loc_data": "{3227,3147,0,0,1}-"
+ },
+ {
+ "npc_id": "4903",
+ "loc_data": "{3244,3214,0,1,1}-"
+ },
+ {
+ "npc_id": "4904",
+ "loc_data": "{3228,3254,0,1,3}-"
+ },
+ {
+ "npc_id": "4906",
+ "loc_data": "{3230,3244,0,1,4}-"
+ },
+ {
+ "npc_id": "4907",
+ "loc_data": "{3208,3222,2,0,6}-"
+ },
+ {
+ "npc_id": "4909",
+ "loc_data": "{2831,3352,0,0,7}-"
+ },
+ {
+ "npc_id": "4911",
+ "loc_data": "{2703,9894,0,0,0}-{2705,9897,0,0,0}-{2706,9904,0,0,0}-{2707,9906,0,0,0}-{2704,9906,0,0,0}-{2706,9910,0,0,0}-{2703,9911,0,0,0}-{2699,9915,0,0,0}-{2697,9915,0,0,0}-{2694,9915,0,0,0}-{2692,9914,0,0,0}-{2696,9910,0,0,0}-{2694,9908,0,0,0}-{2693,9906,0,0,0}-{2696,9906,0,0,0}-{2698,9901,0,0,0}-{2698,9900,0,0,0}-{2696,9900,0,0,0}-{2690,9903,0,0,0}-{2692,9902,0,0,0}-{2693,9900,0,0,0}-{2692,9900,0,0,0}-{2691,9899,0,0,0}-{2692,9895,0,0,0}-{2693,9891,0,0,0}-{2695,9889,0,0,0}-{2692,9885,0,0,0}-{2699,9882,0,0,0}-{2695,9881,0,0,0}-{2693,9881,0,0,0}-{2690,9880,0,0,0}-{2700,9879,0,0,0}-{2696,9880,0,0,0}-{2694,9878,0,0,0}-{2695,9877,0,0,0}-{2699,9876,0,0,0}-{2692,9876,0,0,0}-{2692,9874,0,0,0}-{2699,9872,0,0,0}-{2698,9871,0,0,0}-{2701,9870,0,0,0}-{2695,9870,0,0,0}-{2695,9869,0,0,0}-{2702,9868,0,0,0}-{2701,9867,0,0,0}-{2697,9866,0,0,0}-{2699,9865,0,0,0}-"
+ },
+ {
+ "npc_id": "4920",
+ "loc_data": "{3188,5510,0,1,6}-{3194,5510,0,1,2}-{3289,5496,0,0,5}-{3272,5490,0,0,0}-"
+ },
+ {
+ "npc_id": "4921",
+ "loc_data": "{3304,5493,0,1,3}-{3303,5496,0,1,0}-{3271,5490,0,0,5}-"
+ },
+ {
+ "npc_id": "4926",
+ "loc_data": "{3227,3547,0,1,1}-{3251,3528,0,1,1}-{2969,3686,0,1,1}-"
+ },
+ {
+ "npc_id": "4927",
+ "loc_data": "{3227,3533,0,1,1}-{3236,3549,0,1,1}-{2962,3689,0,1,1}-{2971,3690,0,1,1}-{3049,3695,0,1,1}-"
+ },
+ {
+ "npc_id": "4930",
+ "loc_data": "{3412,2889,0,1,3}-{3414,2892,0,1,1}-{3414,2890,0,1,1}-{3416,2886,0,1,4}-{3416,2893,0,1,6}-"
+ },
+ {
+ "npc_id": "4932",
+ "loc_data": "{3414,2891,0,1,1}-{3410,2888,0,1,7}-"
+ },
+ {
+ "npc_id": "4942",
+ "loc_data": "{3191,3210,0,1,0}-"
+ },
+ {
+ "npc_id": "4944",
+ "loc_data": "{2042,5213,0,1,5}-{2020,5236,0,1,2}-{1993,5188,0,1,2}-{1994,5191,0,1,2}-"
+ },
+ {
+ "npc_id": "4945",
+ "loc_data": "{1994,5192,0,1,4}-{1997,5190,0,1,1}-"
+ },
+ {
+ "npc_id": "4946",
+ "loc_data": "{2721,3432,0,1,4}-"
+ },
+ {
+ "npc_id": "4947",
+ "loc_data": "{2825,3696,0,1,3}-"
+ },
+ {
+ "npc_id": "4950",
+ "loc_data": "{2855,10051,1,0,0}-"
+ },
+ {
+ "npc_id": "4953",
+ "loc_data": "{2684,3274,1,0,0}-"
+ },
+ {
+ "npc_id": "4955",
+ "loc_data": "{2772,3223,0,0,0}-"
+ },
+ {
+ "npc_id": "4956",
+ "loc_data": "{2783,3119,0,0,0}-"
+ },
+ {
+ "npc_id": "4961",
+ "loc_data": "{2683,3275,1,0,0}-"
+ },
+ {
+ "npc_id": "4965",
+ "loc_data": "{2826,3685,0,0,1}-"
+ },
+ {
+ "npc_id": "4975",
+ "loc_data": "{3034,2971,0,0,5}-{3030,2971,0,0,1}-{3303,3024,0,0,7}-{3299,3016,0,0,2}-{3280,9438,0,0,6}-{3275,9460,0,0,3}-{3267,9458,0,0,3}-{3270,9415,0,0,6}-{3272,9429,0,0,4}-{3272,9421,0,0,4}-{3271,9450,0,0,1}-{3288,9413,0,0,6}-{3297,9414,0,0,6}-{3300,9414,0,0,6}-{3304,9424,0,0,1}-{3292,9426,0,0,4}-{3295,9421,0,0,3}-{3297,9412,0,0,1}-{3292,9413,0,0,3}-{3324,9429,0,0,3}-{3311,9440,0,0,6}-{3294,9459,0,0,1}-{3291,9463,0,0,6}-{3296,9468,0,0,1}-{3288,9468,0,0,1}-{3313,9449,0,0,1}-"
+ },
+ {
+ "npc_id": "4976",
+ "loc_data": "{3036,2972,0,0,1}-{3039,2968,0,0,1}-{3046,2982,0,0,6}-{3045,2974,0,0,6}-{3042,2972,0,0,6}-{3301,3017,0,0,7}-{3281,9446,0,0,1}-{3270,9451,0,0,4}-{3269,9418,0,0,1}-{3267,9441,0,0,1}-{3280,9436,0,0,1}-{3291,9414,0,0,6}-{3305,9413,0,0,6}-{3308,9415,0,0,1}-{3309,9420,0,0,1}-{3296,9425,0,0,1}-{3294,9420,0,0,1}-{3295,9412,0,0,3}-{3323,9439,0,0,6}-{3295,9460,0,0,3}-{3294,9464,0,0,6}-{3294,9467,0,0,1}-{3311,9454,0,0,6}-"
+ },
+ {
+ "npc_id": "4977",
+ "loc_data": "{3038,2973,0,0,1}-{3027,2974,0,0,1}-{3023,2977,0,0,1}-{3035,2989,0,0,4}-{3039,2985,0,0,4}-{3294,3016,0,0,6}-{3287,3016,0,0,3}-{3277,9452,0,0,1}-{3267,9443,0,0,6}-{3267,9431,0,0,6}-{3269,9420,0,0,6}-{3273,9460,0,0,4}-{3277,9454,0,0,6}-{3281,9448,0,0,6}-{3294,9413,0,0,6}-{3306,9423,0,0,1}-{3298,9436,0,0,6}-{3292,9466,0,0,6}-{3296,9462,0,0,3}-{3290,9467,0,0,1}-{3315,9451,0,0,1}-{3316,9454,0,0,3}-"
+ },
+ {
+ "npc_id": "4978",
+ "loc_data": "{3042,2969,0,0,1}-{3038,2976,0,0,6}-{3041,2983,0,0,6}-{3043,2983,0,0,6}-{3044,2981,0,0,6}-{3043,2979,0,0,1}-{3038,2989,0,0,1}-{3025,2984,0,0,1}-{3026,2988,0,0,1}-{3030,2990,0,0,1}-{3024,2979,0,0,3}-{3291,3017,0,0,5}-{3275,9463,0,0,1}-{3273,9430,0,0,6}-{3273,9422,0,0,6}-{3267,9428,0,0,1}-{3294,9411,0,0,6}-{3300,9424,0,0,1}-{3289,9412,0,0,3}-"
+ },
+ {
+ "npc_id": "4985",
+ "loc_data": "{3304,3027,0,1,2}-"
+ },
+ {
+ "npc_id": "4986",
+ "loc_data": "{3308,3112,0,1,1}-"
+ },
+ {
+ "npc_id": "4989",
+ "loc_data": "{3272,3029,0,1,4}-"
+ },
+ {
+ "npc_id": "4990",
+ "loc_data": "{3269,3029,0,1,4}-"
+ },
+ {
+ "npc_id": "4991",
+ "loc_data": "{3270,3030,0,1,6}-"
+ },
+ {
+ "npc_id": "4992",
+ "loc_data": "{3267,3029,0,1,0}-"
+ },
+ {
+ "npc_id": "4993",
+ "loc_data": "{3277,3028,0,1,1}-{3279,9441,0,1,4}-"
+ },
+ {
+ "npc_id": "4994",
+ "loc_data": "{3285,3027,0,1,7}-"
+ },
+ {
+ "npc_id": "4995",
+ "loc_data": "{3279,3024,0,1,3}-{3286,3036,1,1,4}-"
+ },
+ {
+ "npc_id": "4996",
+ "loc_data": "{3284,3022,0,1,2}-"
+ },
+ {
+ "npc_id": "4997",
+ "loc_data": "{3289,3026,0,1,3}-{3317,9438,0,0,3}-"
+ },
+ {
+ "npc_id": "4998",
+ "loc_data": "{3293,3027,0,1,5}-{3286,9419,0,1,3}-{3296,9433,0,1,7}-{3310,9457,0,1,1}-"
+ },
+ {
+ "npc_id": "4999",
+ "loc_data": "{3280,3020,0,1,6}-{3319,9439,0,1,0}-{3299,9467,0,1,3}-"
+ },
+ {
+ "npc_id": "5000",
+ "loc_data": "{3285,3022,0,1,6}-{3295,9434,0,1,3}-"
+ },
+ {
+ "npc_id": "5001",
+ "loc_data": "{3297,3020,0,1,6}-{3280,9414,0,1,1}-{3279,9416,0,1,1}-"
+ },
+ {
+ "npc_id": "5002",
+ "loc_data": "{3295,3028,0,1,3}-{3291,9423,0,1,1}-"
+ },
+ {
+ "npc_id": "5020",
+ "loc_data": "{2905,3180,0,0,0}-"
+ },
+ {
+ "npc_id": "5021",
+ "loc_data": "{2906,3173,0,0,0}-"
+ },
+ {
+ "npc_id": "5022",
+ "loc_data": "{2907,3169,0,0,0}-"
+ },
+ {
+ "npc_id": "5029",
+ "loc_data": "{2534,3575,0,1,0}-"
+ },
+ {
+ "npc_id": "5030",
+ "loc_data": "{2533,3570,0,1,4}-"
+ },
+ {
+ "npc_id": "5031",
+ "loc_data": "{2525,3575,0,1,3}-"
+ },
+ {
+ "npc_id": "5032",
+ "loc_data": "{2525,3566,0,1,3}-"
+ },
+ {
+ "npc_id": "5033",
+ "loc_data": "{2520,3569,0,1,3}-"
+ },
+ {
+ "npc_id": "5049",
+ "loc_data": "{2808,3355,0,1,6}-"
+ },
+ {
+ "npc_id": "5062",
+ "loc_data": "{2927,3410,0,0,0}-"
+ },
+ {
+ "npc_id": "5063",
+ "loc_data": "{2460,3108,0,1,3}-"
+ },
+ {
+ "npc_id": "5065",
+ "loc_data": "{2925,3303,0,0,0}-"
+ },
+ {
+ "npc_id": "5070",
+ "loc_data": "{2912,3480,0,0,0}-{2911,3480,0,0,0}-"
+ },
+ {
+ "npc_id": "5071",
+ "loc_data": "{2609,2922,0,0,0}-"
+ },
+ {
+ "npc_id": "5072",
+ "loc_data": "{2464,2832,0,1,2}-{2510,2876,0,1,3}-{2517,2878,0,1,6}-{2527,2877,0,1,2}-{2507,2877,0,1,1}-{2536,2877,0,1,3}-{2530,2872,0,1,3}-{2517,2870,0,1,4}-{2526,2928,0,1,6}-{2532,2938,0,1,4}-{2527,2933,0,1,4}-{2521,2938,0,1,6}-{2507,2914,0,1,0}-{2512,2910,0,1,4}-{2517,2912,0,1,1}-{2517,2921,0,1,6}-{2511,2911,0,1,3}-{2521,2917,0,1,7}-{2522,2929,0,1,4}-{2510,2888,0,1,1}-{2502,2890,0,1,3}-{2520,2882,0,1,7}-{2500,2893,0,1,4}-{2548,2887,0,1,1}-{2544,2889,0,1,7}-{2520,2885,0,1,0}-{2498,2883,0,1,6}-{2501,2886,0,1,7}-{2508,2916,0,1,4}-{2502,2888,0,1,7}-{2514,2915,0,1,4}-{2520,2908,0,1,6}-{2526,2943,0,1,4}-{2525,2893,0,1,4}-{2521,2896,0,1,1}-{2515,2944,0,1,4}-"
+ },
+ {
+ "npc_id": "5073",
+ "loc_data": "{2588,2879,0,1,6}-{2603,2892,0,1,1}-{2604,2892,0,1,6}-{2611,2917,0,1,6}-{2611,2916,0,1,3}-{2613,2894,0,1,1}-{2614,2892,0,1,6}-{2608,2927,0,1,2}-{2612,2934,0,1,4}-{2609,2930,0,1,0}-{2594,2929,0,1,2}-{2616,2922,0,1,4}-{2593,2911,0,1,1}-{2617,2911,0,1,1}-{2602,2900,0,1,3}-{2601,2886,0,1,6}-{2587,2897,0,1,4}-{2612,2936,0,1,3}-{2606,2929,0,1,5}-{2615,2930,0,1,3}-{2576,2896,0,1,1}-{2593,2880,0,1,7}-{2583,2886,0,1,5}-{2609,2897,0,1,3}-{2608,2905,0,1,2}-{2606,2917,0,1,4}-{2604,2918,0,1,4}-{2613,2890,0,1,5}-{2608,2921,0,1,6}-{2604,2886,0,1,6}-{2602,2920,0,1,1}-{2607,2932,0,1,6}-{2578,2885,0,1,1}-"
+ },
+ {
+ "npc_id": "5074",
+ "loc_data": "{2727,3763,0,1,1}-{2724,3765,0,1,2}-{2725,3768,0,1,2}-{2730,3768,0,1,2}-{2731,3764,0,1,2}-{2731,3763,0,1,2}-{2731,3765,0,1,2}-{2733,3765,0,1,2}-{2709,3823,1,1,2}-{2713,3823,1,1,2}-{2709,3825,1,1,2}-{2710,3826,1,1,2}-{2709,3825,1,1,2}-"
+ },
+ {
+ "npc_id": "5075",
+ "loc_data": "{3409,3078,0,1,5}-{3410,3075,0,1,5}-{3411,3079,0,1,5}-{3408,3076,0,1,5}-{3414,3077,0,1,5}-{3402,3140,0,1,2}-{3402,3138,0,1,3}-{3404,3139,0,1,5}-{3400,3142,0,1,6}-{3405,3143,0,1,5}-"
+ },
+ {
+ "npc_id": "5076",
+ "loc_data": "{2310,3581,0,1,2}-{2314,3580,0,1,2}-{2311,3583,0,1,2}-{2304,3588,0,1,6}-{2305,3601,0,1,7}-{2341,3610,0,1,7}-{2344,3606,0,1,3}-{2340,3603,0,1,4}-{2348,3591,0,1,1}-{2356,3595,0,1,6}-{2361,3595,0,1,1}-{2359,3589,0,1,4}-{2346,3585,0,1,6}-{2360,3584,0,1,7}-"
+ },
+ {
+ "npc_id": "5077",
+ "loc_data": "{2560,2911,0,0,0}-{2561,2914,0,0,0}-{2560,2909,0,0,0}-{2561,2916,0,0,0}-{2467,2879,0,0,0}-{2484,2877,0,0,0}-{2485,2876,0,0,0}-{2456,2832,0,0,0}-{2456,2832,0,0,0}-{2456,2832,0,0,0}-{2456,2832,0,0,0}-{2494,2940,0,0,0}-{2495,2940,0,0,0}-{2512,2864,0,0,0}-{2558,2911,0,0,0}-{2558,2913,0,0,0}-{2556,2913,0,0,0}-{2557,2912,0,0,0}-{2559,2910,0,0,0}-{2559,2909,0,0,0}-{2559,2917,0,0,0}-{2558,2914,0,0,0}-{2559,2915,0,0,0}-{2558,2916,0,0,0}-{2559,2932,0,0,0}-{2559,2928,0,0,0}-{2558,2928,0,0,0}-{2558,2931,0,0,0}-{2558,2929,0,0,0}-{2556,2911,0,0,0}-{2557,2911,0,0,0}-{2556,2910,0,0,0}-{2556,2912,0,0,0}-{2557,2919,0,0,0}-{2556,2914,0,0,0}-{2556,2913,0,0,0}-{2556,2918,0,0,0}-{2556,2929,0,0,0}-{2557,2933,0,0,0}-{2556,2932,0,0,0}-{2557,2932,0,0,0}-{2557,2928,0,0,0}-{2559,2934,0,0,0}-{2554,2911,0,0,0}-{2555,2911,0,0,0}-{2554,2912,0,0,0}-{2555,2915,0,0,0}-{2555,2919,0,0,0}-{2554,2919,0,0,0}-{2554,2913,0,0,0}-{2556,2915,0,0,0}-{2555,2931,0,0,0}-{2554,2933,0,0,0}-{2555,2934,0,0,0}-{2555,2933,0,0,0}-{2555,2932,0,0,0}-{2554,2935,0,0,0}-{2554,2934,0,0,0}-{2556,2936,0,0,0}-{2558,2936,0,0,0}-{2554,2936,0,0,0}-{2553,2935,0,0,0}-{2556,2933,0,0,0}-{2558,2938,0,0,0}-{2556,2938,0,0,0}-{2557,2937,0,0,0}-{2557,2917,0,0,0}-{2555,2917,0,0,0}-{2555,2912,0,0,0}-{2555,2935,0,0,0}-{2547,2940,0,0,0}-{2546,2939,0,0,0}-{2548,2939,0,0,0}-{2557,2930,0,0,0}-{2556,2929,0,0,0}-{2546,2941,0,0,0}-{2548,2941,0,0,0}-{2557,2931,0,0,0}-{2556,2935,0,0,0}-{2555,2936,0,0,0}-{2553,2935,0,0,0}-{2559,2930,0,0,0}-{2547,2940,0,0,0}-{2509,2910,0,0,0}-{2507,2910,0,0,0}-{2509,2908,0,0,0}-{2508,2908,0,0,0}-{2508,2909,0,0,0}-{2510,2908,0,0,0}-{2506,2906,0,0,0}-{2508,2906,0,0,0}-{2507,2906,0,0,0}-{2507,2905,0,0,0}-{2509,2905,0,0,0}-{2505,2907,0,0,0}-{2504,2908,0,0,0}-{2511,2908,0,0,0}-{2504,2906,0,0,0}-{2508,2907,0,0,0}-{2509,2906,0,0,0}-{2508,2909,0,0,0}-{2506,2906,0,0,0}-{2510,2907,0,0,0}-{2503,2907,0,0,0}-{2509,2908,0,0,0}-{2507,2908,0,0,0}-{2508,2906,0,0,0}-{2505,2907,0,0,0}-{2507,2905,0,0,0}-{2506,2904,0,0,0}-{2505,2903,0,0,0}-{2508,2902,0,0,0}-{2504,2901,0,0,0}-{2506,2907,0,0,0}-{2507,2906,0,0,0}-{2524,2898,0,0,0}-{2524,2896,0,0,0}-{2525,2897,0,0,0}-{2521,2895,0,0,0}-{2525,2895,0,0,0}-{2507,2903,0,0,0}-{2526,2898,0,0,0}-{2507,2889,0,0,0}-{2506,2903,0,0,0}-{2503,2905,0,0,0}-{2507,2905,0,0,0}-{2511,2908,0,0,0}-{2507,2887,0,0,0}-{2554,2937,0,0,0}-{2558,2938,0,0,0}-{2557,2937,0,0,0}-{2556,2938,0,0,0}-{2553,2937,0,0,0}-{2556,2937,0,0,0}-{2553,2935,0,0,0}-{2556,2935,0,0,0}-{2558,2936,0,0,0}-{2555,2936,0,0,0}-{2552,2936,0,0,0}-{2554,2936,0,0,0}-{2552,2934,0,0,0}-{2553,2934,0,0,0}-{2557,2931,0,0,0}-{2559,2932,0,0,0}-{2558,2932,0,0,0}-{2556,2936,0,0,0}-{2553,2936,0,0,0}-{2554,2935,0,0,0}-{2559,2917,0,0,0}-{2556,2916,0,0,0}-{2555,2917,0,0,0}-{2559,2914,0,0,0}-{2557,2915,0,0,0}-{2557,2912,0,0,0}-{2559,2912,0,0,0}-{2558,2913,0,0,0}-{2555,2911,0,0,0}-{2554,2910,0,0,0}-{2559,2916,0,0,0}-{2557,2932,0,0,0}-{2557,2909,0,0,0}-{2559,2913,0,0,0}-{2552,2935,0,0,0}-{2559,2909,0,0,0}-{2557,2914,0,0,0}-{2555,2915,0,0,0}-{2527,2896,0,0,0}-{2524,2895,0,0,0}-{2524,2894,0,0,0}-{2525,2896,0,0,0}-{2524,2896,0,0,0}-{2523,2893,0,0,0}-{2523,2896,0,0,0}-{2523,2897,0,0,0}-{2521,2895,0,0,0}-{2521,2893,0,0,0}-{2526,2895,0,0,0}-{2507,2887,0,0,0}-{2507,2890,0,0,0}-{2506,2886,0,0,0}-{2505,2887,0,0,0}-{2505,2888,0,0,0}-{2503,2889,0,0,0}-{2504,2889,0,0,0}-{2504,2903,0,0,0}-{2505,2907,0,0,0}-{2504,2906,0,0,0}-{2505,2905,0,0,0}-{2506,2907,0,0,0}-{2506,2905,0,0,0}-{2506,2906,0,0,0}-{2507,2903,0,0,0}-{2507,2906,0,0,0}-{2507,2907,0,0,0}-{2505,2893,0,0,0}-{2504,2892,0,0,0}-{2508,2909,0,0,0}-{2502,2891,0,0,0}-{2503,2890,0,0,0}-{2503,2891,0,0,0}-{2508,2891,0,0,0}-{2507,2891,0,0,0}-{2507,2890,0,0,0}-{2503,2889,0,0,0}-{2504,2889,0,0,0}-{2505,2888,0,0,0}-{2506,2909,0,0,0}-{2507,2887,0,0,0}-{2505,2887,0,0,0}-{2506,2887,0,0,0}-{2508,2890,0,0,0}-{2504,2894,0,0,0}-{2502,2891,0,0,0}-{2524,2899,0,0,0}-{2524,2898,0,0,0}-{2526,2899,0,0,0}-{2526,2895,0,0,0}-{2526,2900,0,0,0}-{2524,2900,0,0,0}-{2525,2900,0,0,0}-{2525,2899,0,0,0}-{2524,2893,0,0,0}-{2522,2894,0,0,0}-{2521,2895,0,0,0}-{2523,2895,0,0,0}-{2524,2895,0,0,0}-{2506,2886,0,0,0}-{2521,2893,0,0,0}-{2526,2898,0,0,0}-{2524,2899,0,0,0}-{2523,2896,0,0,0}-{2522,2894,0,0,0}-{2524,2901,0,0,0}-{2524,2900,0,0,0}-{2523,2895,0,0,0}-{2526,2901,0,0,0}-{2525,2896,0,0,0}-{2526,2900,0,0,0}-{2523,2893,0,0,0}-{2525,2900,0,0,0}-{2524,2898,0,0,0}-{2525,2894,0,0,0}-{2527,2894,0,0,0}-{2524,2899,0,0,0}-{2508,2904,0,0,0}-{2507,2907,0,0,0}-{2506,2902,0,0,0}-{2506,2907,0,0,0}-{2506,2906,0,0,0}-{2503,2907,0,0,0}-{2503,2905,0,0,0}-{2505,2893,0,0,0}-{2503,2891,0,0,0}-{2506,2891,0,0,0}-{2508,2891,0,0,0}-{2506,2892,0,0,0}-{2506,2909,0,0,0}-{2503,2890,0,0,0}-{2503,2889,0,0,0}-{2504,2889,0,0,0}-{2507,2890,0,0,0}-{2505,2887,0,0,0}-{2505,2888,0,0,0}-{2508,2890,0,0,0}-{2507,2905,0,0,0}-{2503,2890,0,0,0}-{2503,2891,0,0,0}-{2504,2892,0,0,0}-{2504,2894,0,0,0}-{2506,2887,0,0,0}-{2507,2887,0,0,0}-{2507,2891,0,0,0}-{2504,2889,0,0,0}-{2508,2891,0,0,0}-{2505,2888,0,0,0}-{2506,2894,0,0,0}-{2506,2902,0,0,0}-{2506,2904,0,0,0}-{2506,2886,0,0,0}-{2507,2903,0,0,0}-{2505,2893,0,0,0}-{2506,2891,0,0,0}-{2503,2889,0,0,0}-{2506,2887,0,0,0}-{2506,2892,0,0,0}-{2507,2891,0,0,0}-{2507,2887,0,0,0}-{2507,2890,0,0,0}-{2503,2905,0,0,0}-{2505,2906,0,0,0}-{2506,2905,0,0,0}-{2506,2906,0,0,0}-{2507,2905,0,0,0}-{2505,2905,0,0,0}-{2504,2906,0,0,0}-{2503,2907,0,0,0}-{2506,2894,0,0,0}-{2507,2908,0,0,0}-{2507,2907,0,0,0}-{2508,2909,0,0,0}-{2505,2888,0,0,0}-{2505,2907,0,0,0}-{2496,2939,0,0,0}-{2497,2938,0,0,0}-{2498,2942,0,0,0}-{2499,2943,0,0,0}-{2500,2942,0,0,0}-{2503,2940,0,0,0}-{2496,2939,0,0,0}-{2502,2939,0,0,0}-{2498,2944,0,0,0}-{2500,2944,0,0,0}-"
+ },
+ {
+ "npc_id": "5078",
+ "loc_data": "{2560,2909,0,0,0}-{2560,2933,0,0,0}-{2560,2918,0,0,0}-{2561,2916,0,0,0}-{2560,2915,0,0,0}-{2467,2878,0,0,0}-{2486,2877,0,0,0}-{2495,2938,0,0,0}-{2556,2911,0,0,0}-{2558,2910,0,0,0}-{2558,2909,0,0,0}-{2558,2918,0,0,0}-{2559,2930,0,0,0}-{2557,2915,0,0,0}-{2557,2931,0,0,0}-{2558,2935,0,0,0}-{2555,2936,0,0,0}-{2553,2936,0,0,0}-{2553,2933,0,0,0}-{2553,2934,0,0,0}-{2506,2908,0,0,0}-{2507,2908,0,0,0}-{2510,2906,0,0,0}-{2509,2907,0,0,0}-{2508,2907,0,0,0}-{2506,2904,0,0,0}-{2508,2904,0,0,0}-{2504,2906,0,0,0}-{2506,2909,0,0,0}-{2508,2904,0,0,0}-{2506,2902,0,0,0}-{2504,2903,0,0,0}-{2504,2902,0,0,0}-{2525,2899,0,0,0}-{2523,2897,0,0,0}-{2522,2897,0,0,0}-{2523,2895,0,0,0}-{2521,2893,0,0,0}-{2523,2893,0,0,0}-{2506,2888,0,0,0}-{2509,2889,0,0,0}-{2505,2889,0,0,0}-{2508,2888,0,0,0}-{2506,2887,0,0,0}-{2505,2887,0,0,0}-{2554,2935,0,0,0}-{2552,2935,0,0,0}-{2557,2934,0,0,0}-{2554,2934,0,0,0}-{2558,2933,0,0,0}-{2559,2931,0,0,0}-{2558,2916,0,0,0}-{2557,2917,0,0,0}-{2555,2915,0,0,0}-{2557,2914,0,0,0}-{2554,2912,0,0,0}-{2556,2912,0,0,0}-{2559,2909,0,0,0}-{2558,2909,0,0,0}-{2527,2894,0,0,0}-{2525,2894,0,0,0}-{2523,2895,0,0,0}-{2522,2894,0,0,0}-{2508,2890,0,0,0}-{2508,2891,0,0,0}-{2503,2905,0,0,0}-{2503,2907,0,0,0}-{2506,2902,0,0,0}-{2506,2904,0,0,0}-{2504,2894,0,0,0}-{2506,2894,0,0,0}-{2506,2892,0,0,0}-{2508,2904,0,0,0}-{2506,2891,0,0,0}-{2524,2901,0,0,0}-{2526,2901,0,0,0}-{2524,2894,0,0,0}-{2525,2894,0,0,0}-{2527,2894,0,0,0}-{2523,2896,0,0,0}-{2525,2896,0,0,0}-{2507,2903,0,0,0}-{2507,2905,0,0,0}-{2505,2902,0,0,0}-{2506,2904,0,0,0}-{2505,2907,0,0,0}-{2506,2905,0,0,0}-{2505,2905,0,0,0}-{2504,2906,0,0,0}-{2506,2894,0,0,0}-{2504,2894,0,0,0}-{2507,2891,0,0,0}-{2507,2887,0,0,0}-{2506,2891,0,0,0}-{2506,2907,0,0,0}-{2501,2938,0,0,0}-{2501,2940,0,0,0}-{2503,2938,0,0,0}-"
+ },
+ {
+ "npc_id": "5079",
+ "loc_data": "{2323,3538,0,1,6}-{2319,3539,0,1,6}-{2321,3545,0,1,5}-{2324,3556,0,1,1}-{2358,3573,0,1,3}-{2360,3571,0,1,4}-{2342,3549,0,1,0}-{2357,3539,0,1,1}-{2357,3537,0,1,4}-{2357,3549,0,1,6}-{2322,3594,0,1,5}-{2323,3594,0,1,1}-{2323,3602,0,1,1}-{2326,3602,0,1,4}-{2324,3622,0,1,1}-{2326,3630,0,1,6}-{2347,3617,0,1,7}-{2341,3615,0,1,3}-{2339,3596,0,1,3}-{2329,3584,0,1,6}-{2337,3589,0,1,5}-{2371,3560,0,1,3}-"
+ },
+ {
+ "npc_id": "5080",
+ "loc_data": "{2562,2927,0,1,4}-{2466,2878,0,1,6}-{2464,2832,0,1,2}-{2490,2877,0,1,1}-{2467,2881,0,1,7}-{2557,2915,0,1,3}-{2557,2921,0,1,1}-{2556,2938,0,1,7}-{2551,2930,0,1,6}-{2558,2912,0,1,4}-{2558,2909,0,1,3}-{2557,2932,0,1,6}-{2556,2935,0,1,1}-{2555,2915,0,1,2}-{2553,2935,0,1,4}-{2559,2918,0,1,4}-{2508,2909,0,1,3}-{2501,2912,0,1,6}-{2507,2907,0,1,1}-{2505,2902,0,1,2}-{2504,2896,0,1,2}-{2522,2895,0,1,3}-{2526,2897,0,1,1}-{2527,2904,0,1,0}-{2507,2889,0,1,4}-{2553,2935,0,1,1}-{2556,2931,0,1,5}-{2555,2915,0,1,6}-{2559,2911,0,1,4}-{2559,2918,0,1,3}-{2527,2896,0,1,4}-{2533,2896,0,1,5}-{2508,2890,0,1,4}-{2522,2895,0,1,2}-{2496,2897,0,1,1}-{2506,2906,0,1,0}-{2506,2894,0,1,3}-{2506,2902,0,1,6}-{2499,2942,0,1,7}-{2496,2936,0,1,4}-{2498,2939,0,1,3}-{2545,2948,0,1,2}-"
+ },
+ {
+ "npc_id": "5081",
+ "loc_data": "{2318,3501,0,1,5}-{2316,3502,0,1,6}-{2317,3512,0,1,6}-{2315,3512,0,1,5}-{2312,3504,0,1,1}-{2307,3513,0,1,6}-{2311,3517,0,1,0}-{2320,3517,0,1,1}-{2309,3520,0,1,6}-"
+ },
+ {
+ "npc_id": "5082",
+ "loc_data": "{2561,2913,0,1,1}-{2561,2918,0,1,7}-{2560,2915,0,1,1}-{2566,2881,0,1,7}-{2568,2917,0,1,6}-{2568,2918,0,1,4}-{2568,2885,0,1,4}-{2487,2878,0,1,4}-{2554,2894,0,1,4}-{2538,2897,0,1,6}-{2545,2899,0,1,3}-{2559,2908,0,1,6}-{2557,2920,0,1,4}-{2553,2913,0,1,4}-{2544,2910,0,1,2}-{2547,2909,0,1,4}-{2537,2906,0,1,5}-{2525,2914,0,1,3}-{2555,2920,0,1,6}-{2557,2908,0,1,6}-{2539,2920,0,1,1}-{2528,2915,0,1,4}-{2527,2904,0,1,0}-{2518,2901,0,1,5}-{2528,2902,0,1,1}-{2529,2918,0,1,6}-{2557,2915,0,1,7}-{2546,2912,0,1,3}-{2542,2911,0,1,5}-{2548,2910,0,1,6}-{2554,2907,0,1,1}-{2548,2896,0,1,5}-{2545,2895,0,1,6}-{2544,2910,0,1,7}-{2536,2895,0,1,3}-{2538,2902,0,1,6}-{2523,2910,0,1,3}-{2533,2910,0,1,2}-"
+ },
+ {
+ "npc_id": "5083",
+ "loc_data": "{2621,3835,1,1,4}-{2708,3772,0,1,0}-{2714,3765,0,1,0}-{2699,3780,0,1,4}-{2694,3785,0,1,4}-{2717,3776,0,1,0}-{2718,3784,0,1,0}-{2723,3786,0,1,0}-{2725,3833,1,1,0}-{2728,3776,0,1,0}-"
+ },
+ {
+ "npc_id": "5084",
+ "loc_data": "{2724,3771,0,1,0}-{2738,3769,0,1,0}-{2703,3829,1,1,0}-{2708,3824,1,1,0}-{2714,3826,1,1,0}-{2722,3833,1,1,0}-{2737,3776,0,1,0}-"
+ },
+ {
+ "npc_id": "5085",
+ "loc_data": "{2328,3526,0,0,0}-{2313,3528,0,0,0}-{2312,3542,0,0,0}-{2312,3544,0,0,0}-{2323,3543,0,0,0}-{2325,3544,0,0,0}-{2328,3539,0,0,0}-{2311,3564,0,0,0}-{2332,3548,0,0,0}-{2335,3545,0,0,0}-{2320,3580,0,0,0}-{2325,3582,0,0,0}-{2330,3583,0,0,0}-{2355,3573,0,0,0}-{2359,3571,0,0,0}-{2352,3567,0,0,0}-{2361,3554,0,0,0}-{2329,3561,0,0,0}-{2341,3560,0,0,0}-{2344,3543,0,0,0}-{2342,3539,0,0,0}-{2349,3547,0,0,0}-{2352,3545,0,0,0}-{2334,3522,0,0,0}-{2310,3585,0,0,0}-{2324,3584,0,0,0}-{2312,3587,0,0,0}-{2316,3599,0,0,0}-{2324,3599,0,0,0}-{2323,3600,0,0,0}-{2315,3602,0,0,0}-{2309,3605,0,0,0}-{2316,3608,0,0,0}-{2315,3608,0,0,0}-{2325,3614,0,0,0}-{2313,3620,0,0,0}-{2333,3612,0,0,0}-{2331,3608,0,0,0}-{2331,3604,0,0,0}-{2346,3591,0,0,0}-{2369,3573,0,0,0}-{2372,3561,0,0,0}-"
+ },
+ {
+ "npc_id": "5086",
+ "loc_data": "{2321,3593,0,1,1}-{2322,3597,0,1,0}-{2309,3603,0,1,5}-{2306,3607,0,1,0}-{2305,3619,0,1,1}-{2309,3618,0,1,6}-{2322,3627,0,1,3}-{2324,3614,0,1,1}-{2323,3614,0,1,1}-{2323,3629,0,1,6}-{2329,3633,0,1,4}-{2328,3634,0,1,3}-{2311,3642,0,1,1}-{2307,3644,0,1,6}-{2318,3645,0,1,1}-{2323,3645,0,1,3}-{2333,3629,0,1,3}-{2340,3641,0,1,7}-{2343,3640,0,1,6}-{2335,3633,0,1,6}-"
+ },
+ {
+ "npc_id": "5087",
+ "loc_data": "{2712,3774,0,1,3}-{2715,3772,0,1,3}-{2720,3767,0,1,4}-{2712,3766,0,1,0}-{2718,3767,0,1,7}-{2719,3771,0,1,3}-{2706,3776,0,1,4}-{2716,3778,0,1,4}-"
+ },
+ {
+ "npc_id": "5088",
+ "loc_data": "{2586,2883,0,1,6}-{2589,2909,0,1,1}-{2574,2915,0,1,3}-{2572,2928,0,1,3}-{2567,2932,0,1,6}-{2568,2933,0,1,0}-{2585,2884,0,1,5}-{2577,2890,0,1,0}-{2578,2918,0,1,1}-{2568,2934,0,1,1}-{2574,2930,0,1,1}-{2576,2928,0,1,4}-{2580,2889,0,1,1}-{2580,2886,0,1,1}-{2580,2886,0,1,0}-{2572,2900,0,1,4}-{2572,2896,0,1,3}-{2568,2905,0,1,4}-{2536,2872,0,1,4}-{2536,2872,0,1,6}-{2536,2872,0,1,4}-{2536,2872,0,1,6}-{2536,2872,0,1,3}-{2536,2864,0,1,7}-{2512,2864,0,1,6}-{2512,2864,0,1,1}-{2538,2889,0,1,3}-{2538,2902,0,1,4}-"
+ },
+ {
+ "npc_id": "5089",
+ "loc_data": "{2315,3523,0,1,1}-{2315,3530,0,1,6}-{2308,3536,0,1,4}-{2307,3538,0,1,1}-{2325,3551,0,1,3}-{2316,3559,0,1,1}-{2312,3559,0,1,1}-{2310,3572,0,1,3}-{2334,3552,0,1,4}-{2308,3582,0,1,2}-{2363,3579,0,1,1}-{2363,3577,0,1,1}-{2350,3568,0,1,1}-{2352,3561,0,1,1}-{2346,3547,0,1,7}-{2347,3546,0,1,3}-{2363,3541,0,1,1}-{2362,3536,0,1,2}-{2350,3526,0,1,7}-{2350,3521,0,1,4}-{2351,3562,0,1,0}-{2310,3574,0,1,6}-"
+ },
+ {
+ "npc_id": "5093",
+ "loc_data": "{2375,3607,0,0,0}-"
+ },
+ {
+ "npc_id": "5098",
+ "loc_data": "{2376,3582,0,1,6}-{2378,3582,0,1,1}-{2383,3582,0,1,5}-{2372,3592,0,1,5}-{2370,3587,0,1,3}-{2371,3586,0,1,6}-{2393,3590,0,1,6}-"
+ },
+ {
+ "npc_id": "5099",
+ "loc_data": "{2366,3577,0,1,4}-{2365,3597,0,1,5}-{2372,3573,0,1,1}-{2369,3588,0,1,4}-{2377,3584,0,1,1}-{2385,3590,0,1,3}-{2388,3598,0,1,3}-"
+ },
+ {
+ "npc_id": "5100",
+ "loc_data": "{2369,3579,0,1,5}-{2373,3575,0,1,1}-{2390,3588,0,1,4}-"
+ },
+ {
+ "npc_id": "5103",
+ "loc_data": "{2733,3777,0,1,6}-{2731,3784,0,1,4}-{2735,3790,0,1,6}-{2741,3783,0,1,2}-{2738,3790,0,1,1}-{2731,3783,0,1,1}-{2724,3791,0,1,4}-"
+ },
+ {
+ "npc_id": "5104",
+ "loc_data": "{2564,2896,0,0,4}-{2571,2882,0,1,1}-{2573,2900,0,1,3}-{2551,2890,0,0,1}-{2541,2899,0,0,0}-{2552,2910,0,0,0}-{2558,2881,0,0,0}-{2543,2899,0,0,0}-{2545,2925,0,0,0}-{2549,2905,0,1,3}-"
+ },
+ {
+ "npc_id": "5105",
+ "loc_data": "{2785,3006,0,1,0}-{2775,2996,0,1,0}-{2780,3017,0,1,0}-{2766,3013,0,1,0}-"
+ },
+ {
+ "npc_id": "5109",
+ "loc_data": "{3443,2902,0,1,3}-"
+ },
+ {
+ "npc_id": "5110",
+ "loc_data": "{2566,3084,0,1,6}-"
+ },
+ {
+ "npc_id": "5111",
+ "loc_data": "{2569,3083,0,1,1}-"
+ },
+ {
+ "npc_id": "5112",
+ "loc_data": "{2712,3833,1,1,1}-"
+ },
+ {
+ "npc_id": "5113",
+ "loc_data": "{2525,2916,0,1,5}-"
+ },
+ {
+ "npc_id": "5114",
+ "loc_data": "{3411,3076,0,1,6}-{3415,3075,0,1,1}-{3406,3093,0,1,3}-{3413,3078,0,1,1}-{3403,3093,0,1,1}-{3412,3081,0,1,3}-{3405,3099,0,1,3}-{3405,3102,0,1,0}-{3406,3098,0,1,4}-{3401,3099,0,1,7}-{3405,3093,0,1,4}-{3404,3085,0,1,5}-{3402,3094,0,1,6}-{3399,3096,0,1,1}-{3405,3088,0,1,3}-{3411,3088,0,1,2}-"
+ },
+ {
+ "npc_id": "5115",
+ "loc_data": "{2451,3219,0,1,3}-{2448,3221,0,1,3}-{2476,3236,0,1,3}-{2450,3226,0,1,6}-{2474,3239,0,1,0}-{2470,3240,0,1,2}-{2468,3243,0,1,0}-{2455,3219,0,1,6}-{2449,3225,0,1,7}-{2445,3226,0,1,2}-{2467,3241,0,1,1}-{2452,3221,0,1,3}-{2473,3235,0,1,7}-{2472,3241,0,1,4}-{2475,3237,0,1,3}-"
+ },
+ {
+ "npc_id": "5116",
+ "loc_data": "{3291,3675,0,1,6}-{3293,3678,0,1,1}-{3302,3671,0,1,0}-{3299,3666,0,1,5}-{3319,3662,0,1,2}-{3309,3661,0,1,5}-{3321,3661,0,1,1}-{3298,3672,0,1,0}-{3316,3657,0,1,4}-{3302,3667,0,1,1}-{3302,3666,0,1,3}-{3315,3663,0,1,1}-"
+ },
+ {
+ "npc_id": "5117",
+ "loc_data": "{3537,3449,0,1,2}-{3535,3447,0,1,6}-{3539,3447,0,1,2}-{3533,3446,0,1,1}-{3549,3439,0,1,4}-{3547,3439,0,1,7}-{3549,3439,0,1,4}-"
+ },
+ {
+ "npc_id": "5120",
+ "loc_data": "{2326,3488,0,1,2}-{2325,3483,0,1,2}-{2315,3482,0,1,2}-{2336,3491,0,1,2}-"
+ },
+ {
+ "npc_id": "5125",
+ "loc_data": "{2316,3501,0,0,0}-"
+ },
+ {
+ "npc_id": "5138",
+ "loc_data": "{2607,3264,0,0,0}-"
+ },
+ {
+ "npc_id": "5139",
+ "loc_data": "{2607,3260,0,0,0}-"
+ },
+ {
+ "npc_id": "5146",
+ "loc_data": "{2925,3324,0,1,0}-{3205,3263,0,0,0}-"
+ },
+ {
+ "npc_id": "5147",
+ "loc_data": "{3207,3270,0,1,0}-"
+ },
+ {
+ "npc_id": "5148",
+ "loc_data": "{3229,3347,0,1,1}-{3238,3347,0,1,1}-"
+ },
+ {
+ "npc_id": "5149",
+ "loc_data": "{3233,3350,0,1,0}-"
+ },
+ {
+ "npc_id": "5156",
+ "loc_data": "{3195,3265,0,1,0}-{3199,3267,0,1,0}-{3203,3262,0,1,5}-"
+ },
+ {
+ "npc_id": "5157",
+ "loc_data": "{3194,3265,0,1,0}-{3205,3262,0,1,1}-{3201,3274,0,1,0}-"
+ },
+ {
+ "npc_id": "5160",
+ "loc_data": "{3195,3272,0,1,0}-{3195,3268,0,1,0}-{3205,3270,0,1,4}-{3249,3345,0,1,5}-"
+ },
+ {
+ "npc_id": "5161",
+ "loc_data": "{2926,3326,0,1,6}-{2924,3324,0,1,1}-{3210,3273,0,1,6}-{3233,3340,0,1,5}-{3241,3344,0,1,3}-"
+ },
+ {
+ "npc_id": "5164",
+ "loc_data": "{2410,4456,0,1,1}-{2415,4429,0,1,2}-"
+ },
+ {
+ "npc_id": "5166",
+ "loc_data": "{2811,3687,0,1,0}-"
+ },
+ {
+ "npc_id": "5167",
+ "loc_data": "{2810,3684,0,1,0}-"
+ },
+ {
+ "npc_id": "5168",
+ "loc_data": "{3199,3270,0,1,1}-{2658,4713,0,1,0}-{3209,3259,0,1,3}-{3260,3349,0,1,0}-"
+ },
+ {
+ "npc_id": "5169",
+ "loc_data": "{3196,3275,0,1,0}-{2657,4705,0,1,0}-{3234,3345,0,1,0}-"
+ },
+ {
+ "npc_id": "5170",
+ "loc_data": "{3052,3516,0,1,0}-"
+ },
+ {
+ "npc_id": "5171",
+ "loc_data": "{2860,10054,1,0,0}-"
+ },
+ {
+ "npc_id": "5173",
+ "loc_data": "{2769,3611,0,1,7}-{2768,3607,0,1,6}-{2764,3612,0,1,2}-{2763,3608,0,1,6}-{2762,3611,0,1,4}-{2765,3606,0,1,0}-"
+ },
+ {
+ "npc_id": "5199",
+ "loc_data": "{3093,3357,0,0,0}-"
+ },
+ {
+ "npc_id": "5200",
+ "loc_data": "{3099,3369,0,1,1}-"
+ },
+ {
+ "npc_id": "5202",
+ "loc_data": "{3621,3528,0,1,4}-"
+ },
+ {
+ "npc_id": "5249",
+ "loc_data": "{3321,3431,0,0,1}-"
+ },
+ {
+ "npc_id": "5258",
+ "loc_data": "{2666,2651,0,0,1}-{2668,2651,0,0,1}-"
+ },
+ {
+ "npc_id": "5260",
+ "loc_data": "{2665,2651,0,0,1}-{2667,2651,0,0,1}-"
+ },
+ {
+ "npc_id": "5277",
+ "loc_data": "{3264,2784,0,0,4}-{3264,2785,0,0,4}-"
+ },
+ {
+ "npc_id": "5291",
+ "loc_data": "{3300,2792,0,0,6}-{3282,2807,0,0,6}-{3285,2811,0,0,1}-{3283,2772,0,1,5}-{3281,2771,0,1,7}-{3283,2776,0,1,6}-{3278,2770,0,1,6}-"
+ },
+ {
+ "npc_id": "5298",
+ "loc_data": "{2499,3286,0,1,6}-"
+ },
+ {
+ "npc_id": "5300",
+ "loc_data": "{2500,3283,0,1,0}-"
+ },
+ {
+ "npc_id": "5303",
+ "loc_data": "{2506,3284,0,1,6}-"
+ },
+ {
+ "npc_id": "5310",
+ "loc_data": "{3212,3682,0,1,0}-{3228,3680,0,1,6}-{3230,3683,0,1,1}-{3234,3692,0,1,5}-"
+ },
+ {
+ "npc_id": "5311",
+ "loc_data": "{3231,3673,0,1,0}-{3225,3677,0,1,3}-{3229,3689,0,1,4}-{3239,3681,0,1,4}-{3236,3694,0,1,6}-"
+ },
+ {
+ "npc_id": "5312",
+ "loc_data": "{3210,3667,0,1,4}-{3217,3688,0,1,4}-{3241,3694,0,1,3}-"
+ },
+ {
+ "npc_id": "5313",
+ "loc_data": "{3224,3686,0,1,5}-{3243,3688,0,1,1}-{3242,3687,0,1,0}-"
+ },
+ {
+ "npc_id": "5314",
+ "loc_data": "{2588,9491,0,1,3}-{2585,9492,0,1,3}-{2586,9491,0,1,5}-{2591,9492,0,1,3}-"
+ },
+ {
+ "npc_id": "5316",
+ "loc_data": "{2497,3292,0,1,3}-"
+ },
+ {
+ "npc_id": "5318",
+ "loc_data": "{2511,3287,0,1,3}-"
+ },
+ {
+ "npc_id": "5323",
+ "loc_data": "{3221,3693,0,1,6}-"
+ },
+ {
+ "npc_id": "5324",
+ "loc_data": "{3221,3682,0,1,4}-"
+ },
+ {
+ "npc_id": "5325",
+ "loc_data": "{3223,3675,0,1,6}-{3237,3692,0,1,7}-"
+ },
+ {
+ "npc_id": "5326",
+ "loc_data": "{3232,3685,0,1,0}-"
+ },
+ {
+ "npc_id": "5327",
+ "loc_data": "{3229,3678,0,1,6}-"
+ },
+ {
+ "npc_id": "5332",
+ "loc_data": "{3102,3571,0,1,3}-{2855,9571,0,1,0}-{3368,9748,0,1,0}-{3378,9757,0,1,0}-{3383,9746,0,1,0}-{3368,9812,0,1,0}-{3378,9821,0,1,0}-{3383,9810,0,1,0}-{2887,9822,0,1,0}-{2884,9824,0,1,0}-{3008,3595,0,1,0}-{3018,3584,0,1,0}-{3022,3595,0,1,0}-"
+ },
+ {
+ "npc_id": "5333",
+ "loc_data": "{3116,3524,0,1,4}-{3106,3548,0,1,2}-{2860,9571,0,1,7}-{3376,9751,0,1,0}-{3380,9756,0,1,0}-{3376,9815,0,1,0}-{3380,9820,0,1,0}-{2886,9816,0,1,0}-{3013,3586,0,1,0}-{3013,3602,0,1,0}-{3025,3597,0,1,0}-"
+ },
+ {
+ "npc_id": "5334",
+ "loc_data": "{3107,3528,0,1,1}-{2859,9572,0,1,6}-{3377,9743,0,1,0}-{3377,9754,0,1,0}-{3377,9807,0,1,0}-{3377,9818,0,1,0}-{2885,9819,0,1,0}-{3012,3597,0,1,0}-{3018,3592,0,1,0}-{3018,3599,0,1,0}-{3025,3590,0,1,0}-"
+ },
+ {
+ "npc_id": "5337",
+ "loc_data": "{2846,3250,0,1,7}-{2834,3233,0,1,5}-{3100,3563,0,1,1}-{2832,9656,0,1,6}-{3179,3786,0,1,0}-{2885,9825,0,1,0}-{3003,10347,0,1,7}-{3003,10350,0,1,6}-{3003,10357,0,1,4}-{2996,10343,0,1,3}-{2993,10346,0,1,4}-"
+ },
+ {
+ "npc_id": "5338",
+ "loc_data": "{2843,3248,0,1,1}-{2840,3240,0,1,3}-{3119,3565,0,1,1}-{2838,9648,0,1,5}-{2831,9654,0,1,1}-{2989,3944,0,1,4}-{2994,10349,0,1,5}-{2998,10350,0,1,0}-{3003,10350,0,1,4}-"
+ },
+ {
+ "npc_id": "5339",
+ "loc_data": "{2844,3239,0,1,0}-{3095,3554,0,1,4}-{2831,9655,0,1,7}-"
+ },
+ {
+ "npc_id": "5340",
+ "loc_data": "{2848,3246,0,1,3}-{3112,3573,0,1,6}-{2833,9655,0,1,6}-{2982,3947,0,1,0}-"
+ },
+ {
+ "npc_id": "5341",
+ "loc_data": "{2840,9633,0,1,1}-{2844,9634,0,1,6}-{2842,9637,0,1,3}-{2641,9889,0,1,0}-{2648,9890,0,1,0}-{2657,9894,0,1,0}-{2658,9888,0,1,0}-"
+ },
+ {
+ "npc_id": "5342",
+ "loc_data": "{3276,3659,0,1,0}-"
+ },
+ {
+ "npc_id": "5343",
+ "loc_data": "{3282,3662,0,1,0}-"
+ },
+ {
+ "npc_id": "5345",
+ "loc_data": "{2501,3294,0,1,3}-"
+ },
+ {
+ "npc_id": "5346",
+ "loc_data": "{3279,3654,0,1,0}-"
+ },
+ {
+ "npc_id": "5347",
+ "loc_data": "{3288,3650,0,1,0}-"
+ },
+ {
+ "npc_id": "5348",
+ "loc_data": "{3290,3653,0,1,0}-"
+ },
+ {
+ "npc_id": "5349",
+ "loc_data": "{3099,3354,1,1,3}-"
+ },
+ {
+ "npc_id": "5350",
+ "loc_data": "{3116,3367,1,1,3}-"
+ },
+ {
+ "npc_id": "5351",
+ "loc_data": "{3110,3358,1,1,1}-"
+ },
+ {
+ "npc_id": "5352",
+ "loc_data": "{3121,3359,1,1,4}-"
+ },
+ {
+ "npc_id": "5355",
+ "loc_data": "{2873,2950,0,0,0}-{2876,2951,0,0,0}-"
+ },
+ {
+ "npc_id": "5356",
+ "loc_data": "{2877,2958,0,0,0}-"
+ },
+ {
+ "npc_id": "5357",
+ "loc_data": "{2876,2958,0,0,0}-"
+ },
+ {
+ "npc_id": "5358",
+ "loc_data": "{2874,2954,0,0,6}-"
+ },
+ {
+ "npc_id": "5359",
+ "loc_data": "{2693,5065,0,1,0}-{2693,5089,0,1,0}-{2704,5091,0,1,0}-{2710,5095,0,1,0}-{2712,5076,0,1,0}-{2714,5108,0,1,0}-{2716,5092,0,1,0}-{2719,5071,0,1,0}-{2722,5061,0,1,0}-{2732,5087,0,1,0}-{2739,5078,0,1,0}-{2740,5104,0,1,0}-{2747,5083,0,1,0}-{2627,5093,0,1,0}-{2629,5061,0,1,0}-{2638,5090,0,1,0}-{2651,5105,0,1,0}-{2654,5079,0,1,0}-{2663,5116,0,1,0}-{2683,5059,0,1,0}-{2685,5111,0,1,0}-"
+ },
+ {
+ "npc_id": "5361",
+ "loc_data": "{3176,5543,0,1,3}-{3191,5542,0,1,4}-{3175,5543,0,1,2}-{3178,5541,0,1,2}-{3187,5542,0,1,3}-{3192,5545,0,1,2}-{3192,5542,0,1,3}-{3179,5549,0,1,6}-{1757,5358,0,1,5}-{1760,5357,0,1,5}-{1755,5352,0,1,5}-{1751,5342,0,1,3}-{1745,5342,0,1,6}-{1739,5342,0,1,3}-{1737,5344,0,1,7}-{1739,5347,0,1,6}-{1740,5350,0,1,5}-{1739,5355,0,1,3}-{1747,5363,0,1,4}-{1749,5363,0,1,4}-{1743,5360,0,1,3}-{1739,5356,0,1,0}-"
+ },
+ {
+ "npc_id": "5362",
+ "loc_data": "{1774,5361,0,1,3}-{1776,5350,0,1,3}-{1772,5342,0,1,1}-{1772,5336,0,1,4}-{1778,5328,0,1,7}-{1761,5334,0,1,4}-{1754,5337,0,1,7}-{1749,5331,0,0,1}-"
+ },
+ {
+ "npc_id": "5363",
+ "loc_data": "{1781,5340,1,1,5}-{1782,5356,1,1,1}-{1767,5343,1,1,6}-{1761,5338,1,1,3}-{1767,5332,1,1,6}-{1757,5326,1,1,7}-{1784,5329,1,1,1}-"
+ },
+ {
+ "npc_id": "5364",
+ "loc_data": "{1765,5344,0,1,3}-"
+ },
+ {
+ "npc_id": "5365",
+ "loc_data": "{2354,5191,0,1,4}-{2351,5191,0,1,5}-"
+ },
+ {
+ "npc_id": "5366",
+ "loc_data": "{2357,5196,0,1,2}-{2356,5188,0,1,4}-{2343,5195,0,1,6}-{2335,5202,0,1,3}-{2323,5211,0,1,1}-"
+ },
+ {
+ "npc_id": "5367",
+ "loc_data": "{3092,3717,0,1,0}-{3105,3721,0,1,0}-{3113,3740,0,1,0}-{2312,5189,0,1,7}-"
+ },
+ {
+ "npc_id": "5368",
+ "loc_data": "{3096,3738,0,1,0}-{3102,3716,0,1,0}-{3118,3733,0,1,0}-{3128,3741,0,1,0}-"
+ },
+ {
+ "npc_id": "5369",
+ "loc_data": "{2345,5195,0,1,3}-{2323,5227,0,1,5}-{2319,5223,0,1,6}-{2264,5136,0,1,1}-"
+ },
+ {
+ "npc_id": "5370",
+ "loc_data": "{2347,5195,0,1,3}-{2323,5225,0,1,3}-{2319,5227,0,1,0}-{2323,5227,0,1,3}-{2318,5227,0,1,0}-{2326,5227,0,1,6}-"
+ },
+ {
+ "npc_id": "5371",
+ "loc_data": "{2356,5204,0,1,1}-{2324,5223,0,1,1}-"
+ },
+ {
+ "npc_id": "5375",
+ "loc_data": "{2029,5236,0,1,6}-{2031,5235,0,1,1}-{2029,5230,0,1,3}-"
+ },
+ {
+ "npc_id": "5376",
+ "loc_data": "{2031,5233,0,1,1}-"
+ },
+ {
+ "npc_id": "5377",
+ "loc_data": "{2004,5189,0,1,3}-{2002,5207,0,1,3}-{2009,5199,0,1,5}-{2004,5203,0,1,6}-{1989,5192,0,1,6}-{1988,5187,0,1,6}-"
+ },
+ {
+ "npc_id": "5378",
+ "loc_data": "{1993,5192,0,1,5}-{1999,5190,0,1,6}-{1989,5187,0,1,4}-{2008,5205,0,1,4}-"
+ },
+ {
+ "npc_id": "5379",
+ "loc_data": "{1952,5192,0,1,5}-{1995,5240,0,1,5}-{2010,5186,0,1,4}-{2023,5190,0,1,1}-"
+ },
+ {
+ "npc_id": "5380",
+ "loc_data": "{1952,5192,0,1,2}-{2028,5192,0,1,0}-{2031,5186,0,1,0}-{2027,5194,0,1,0}-{2021,5188,0,1,0}-"
+ },
+ {
+ "npc_id": "5383",
+ "loc_data": "{3194,4569,0,0,0}-"
+ },
+ {
+ "npc_id": "5384",
+ "loc_data": "{3165,4598,0,0,0}-{3167,4577,0,0,0}-"
+ },
+ {
+ "npc_id": "5385",
+ "loc_data": "{3191,4595,1,1,1}-{3191,4601,1,1,2}-"
+ },
+ {
+ "npc_id": "5386",
+ "loc_data": "{3143,4595,0,1,1}-{3145,4598,0,1,3}-{3182,4577,0,1,1}-{3187,4578,0,1,0}-{3158,4589,1,1,7}-{3194,4599,1,1,4}-"
+ },
+ {
+ "npc_id": "5387",
+ "loc_data": "{3158,4584,0,1,4}-{3159,4577,0,1,6}-{3169,4587,0,1,1}-{3152,4569,1,1,1}-"
+ },
+ {
+ "npc_id": "5388",
+ "loc_data": "{3156,4567,2,1,0}-"
+ },
+ {
+ "npc_id": "5389",
+ "loc_data": "{3157,4568,0,1,6}-{3185,4562,0,1,3}-"
+ },
+ {
+ "npc_id": "5390",
+ "loc_data": "{3182,4562,0,1,3}-{3185,4560,0,1,3}-"
+ },
+ {
+ "npc_id": "5391",
+ "loc_data": "{3158,4552,0,1,4}-{3163,4569,0,1,1}-{3177,4549,0,1,3}-{3184,4550,0,1,3}-{3158,4560,1,1,4}-{3174,4566,1,1,1}-{3195,4577,1,1,6}-"
+ },
+ {
+ "npc_id": "5393",
+ "loc_data": "{3146,4596,0,1,1}-{3163,4598,0,1,3}-{3155,4591,1,1,3}-"
+ },
+ {
+ "npc_id": "5394",
+ "loc_data": "{3167,4589,0,1,6}-{3172,4598,0,1,1}-{2677,9688,0,1,1}-{2676,9679,0,1,4}-{2669,9681,0,1,1}-"
+ },
+ {
+ "npc_id": "5395",
+ "loc_data": "{3141,4598,0,1,3}-{3170,4592,0,1,6}-{3144,4589,1,1,3}-"
+ },
+ {
+ "npc_id": "5396",
+ "loc_data": "{3145,4583,1,1,0}-"
+ },
+ {
+ "npc_id": "5397",
+ "loc_data": "{3155,4583,0,1,3}-{3176,4576,1,1,3}-"
+ },
+ {
+ "npc_id": "5398",
+ "loc_data": "{3145,4574,1,1,3}-{3182,4586,1,1,3}-"
+ },
+ {
+ "npc_id": "5399",
+ "loc_data": "{3140,4557,2,1,4}-{3188,4578,2,1,1}-"
+ },
+ {
+ "npc_id": "5400",
+ "loc_data": "{3175,4579,1,1,6}-{3142,4560,2,1,3}-{3159,4569,2,1,1}-"
+ },
+ {
+ "npc_id": "5401",
+ "loc_data": "{3151,4573,1,1,4}-"
+ },
+ {
+ "npc_id": "5402",
+ "loc_data": "{3154,4559,0,1,6}-{3171,4571,1,1,6}-{3179,4586,1,1,1}-"
+ },
+ {
+ "npc_id": "5403",
+ "loc_data": "{3141,4557,0,1,4}-{3182,4577,2,1,6}-"
+ },
+ {
+ "npc_id": "5404",
+ "loc_data": "{3143,4555,0,1,4}-{3144,4549,1,1,4}-{3190,4587,1,1,1}-{3186,4576,2,1,3}-"
+ },
+ {
+ "npc_id": "5405",
+ "loc_data": "{3163,4559,0,1,4}-{3146,4565,1,1,3}-{3195,4582,1,1,6}-"
+ },
+ {
+ "npc_id": "5406",
+ "loc_data": "{3159,4603,1,1,1}-"
+ },
+ {
+ "npc_id": "5407",
+ "loc_data": "{3141,4547,1,1,3}-"
+ },
+ {
+ "npc_id": "5408",
+ "loc_data": "{3170,4559,1,1,4}-"
+ },
+ {
+ "npc_id": "5409",
+ "loc_data": "{3173,4550,0,1,6}-{3190,4551,0,1,2}-"
+ },
+ {
+ "npc_id": "5410",
+ "loc_data": "{3190,4561,0,1,5}-"
+ },
+ {
+ "npc_id": "5413",
+ "loc_data": "{3187,5450,0,1,6}-{3177,5453,0,1,6}-"
+ },
+ {
+ "npc_id": "5414",
+ "loc_data": "{3176,5454,0,1,3}-{3182,5447,0,1,3}-"
+ },
+ {
+ "npc_id": "5423",
+ "loc_data": "{3212,3263,0,0,0}-"
+ },
+ {
+ "npc_id": "5424",
+ "loc_data": "{2594,3269,0,0,0}-"
+ },
+ {
+ "npc_id": "5439",
+ "loc_data": "{3017,3277,0,0,0}-"
+ },
+ {
+ "npc_id": "5445",
+ "loc_data": "{2596,3269,0,1,4}-{2571,3907,0,1,7}-{2571,3907,0,1,3}-{2569,3908,0,1,3}-{2571,3908,0,1,3}-{2572,3906,0,1,6}-"
+ },
+ {
+ "npc_id": "5463",
+ "loc_data": "{2324,3809,0,1,0}-{2317,3802,0,1,0}-"
+ },
+ {
+ "npc_id": "5473",
+ "loc_data": "{2377,10212,0,1,0}-{2392,10226,0,1,0}-{2407,10228,0,1,0}-{2406,10214,0,1,0}-{2420,10214,0,1,0}-"
+ },
+ {
+ "npc_id": "5474",
+ "loc_data": "{2390,10216,0,1,0}-{2417,10228,0,1,0}-{2385,10227,0,1,0}-"
+ },
+ {
+ "npc_id": "5475",
+ "loc_data": "{2396,10232,0,1,0}-{2402,10225,0,1,0}-{2420,10221,0,1,0}-"
+ },
+ {
+ "npc_id": "5478",
+ "loc_data": "{2407,3803,0,1,3}-"
+ },
+ {
+ "npc_id": "5479",
+ "loc_data": "{2407,3803,0,1,3}-"
+ },
+ {
+ "npc_id": "5480",
+ "loc_data": "{2406,3803,0,1,3}-"
+ },
+ {
+ "npc_id": "5481",
+ "loc_data": "{2644,3709,0,1,0}-"
+ },
+ {
+ "npc_id": "5482",
+ "loc_data": "{2422,3781,0,1,0}-"
+ },
+ {
+ "npc_id": "5483",
+ "loc_data": "{2395,3796,0,1,2}-"
+ },
+ {
+ "npc_id": "5484",
+ "loc_data": "{2418,3816,0,1,3}-"
+ },
+ {
+ "npc_id": "5485",
+ "loc_data": "{2393,3796,0,1,2}-"
+ },
+ {
+ "npc_id": "5486",
+ "loc_data": "{2396,3805,0,1,3}-"
+ },
+ {
+ "npc_id": "5487",
+ "loc_data": "{2417,3815,0,1,3}-"
+ },
+ {
+ "npc_id": "5488",
+ "loc_data": "{2416,3799,0,0,1}-"
+ },
+ {
+ "npc_id": "5489",
+ "loc_data": "{2372,3801,2,0,3}-"
+ },
+ {
+ "npc_id": "5490",
+ "loc_data": "{2364,3800,2,0,4}-"
+ },
+ {
+ "npc_id": "5491",
+ "loc_data": "{2387,3800,0,0,3}-{2411,3795,0,0,6}-{2417,3825,0,0,1}-"
+ },
+ {
+ "npc_id": "5492",
+ "loc_data": "{2387,3797,0,0,3}-{2414,3825,0,0,1}-{2414,3795,0,0,6}-"
+ },
+ {
+ "npc_id": "5493",
+ "loc_data": "{2391,3800,0,1,5}-"
+ },
+ {
+ "npc_id": "5494",
+ "loc_data": "{2416,3808,0,1,5}-"
+ },
+ {
+ "npc_id": "5495",
+ "loc_data": "{2406,3813,0,1,3}-"
+ },
+ {
+ "npc_id": "5496",
+ "loc_data": "{2402,3800,0,1,4}-"
+ },
+ {
+ "npc_id": "5497",
+ "loc_data": "{2376,10198,0,1,0}-{2384,10202,0,1,0}-{2390,10207,0,1,0}-{2385,10193,0,1,0}-{2419,10192,0,1,0}-{2412,10200,0,1,0}-"
+ },
+ {
+ "npc_id": "5498",
+ "loc_data": "{2412,3818,0,1,0}-{2412,3801,0,1,0}-{2392,3802,0,1,0}-"
+ },
+ {
+ "npc_id": "5499",
+ "loc_data": "{2403,3807,0,1,4}-"
+ },
+ {
+ "npc_id": "5500",
+ "loc_data": "{2395,3812,0,0,2}-"
+ },
+ {
+ "npc_id": "5501",
+ "loc_data": "{2408,3816,0,1,3}-"
+ },
+ {
+ "npc_id": "5502",
+ "loc_data": "{2409,3814,0,1,3}-"
+ },
+ {
+ "npc_id": "5504",
+ "loc_data": "{2336,3799,0,0,4}-"
+ },
+ {
+ "npc_id": "5505",
+ "loc_data": "{2334,3800,0,0,4}-"
+ },
+ {
+ "npc_id": "5506",
+ "loc_data": "{2334,3798,0,0,4}-"
+ },
+ {
+ "npc_id": "5507",
+ "loc_data": "{2311,3781,0,0,1}-"
+ },
+ {
+ "npc_id": "5508",
+ "loc_data": "{2646,3710,0,0,4}-"
+ },
+ {
+ "npc_id": "5509",
+ "loc_data": "{2336,3808,0,0,6}-"
+ },
+ {
+ "npc_id": "5510",
+ "loc_data": "{2333,3804,0,1,1}-"
+ },
+ {
+ "npc_id": "5511",
+ "loc_data": "{2327,3794,0,1,6}-"
+ },
+ {
+ "npc_id": "5512",
+ "loc_data": "{2319,3795,0,1,3}-"
+ },
+ {
+ "npc_id": "5513",
+ "loc_data": "{2352,3797,0,1,2}-"
+ },
+ {
+ "npc_id": "5514",
+ "loc_data": "{2333,3795,1,1,4}-{2337,3831,0,1,0}-{2321,3833,0,1,0}-{2399,3852,0,1,0}-"
+ },
+ {
+ "npc_id": "5515",
+ "loc_data": "{2330,3799,1,1,3}-{2327,3858,0,1,0}-{2321,3860,0,1,0}-{2343,3862,0,1,0}-"
+ },
+ {
+ "npc_id": "5516",
+ "loc_data": "{2329,3808,1,1,4}-{2347,3890,0,1,0}-{2347,3890,0,1,0}-{2393,3861,0,1,0}-"
+ },
+ {
+ "npc_id": "5517",
+ "loc_data": "{2328,3830,0,1,0}-{2335,3894,0,1,0}-{2403,3853,0,1,0}-{2405,3860,0,1,0}-"
+ },
+ {
+ "npc_id": "5518",
+ "loc_data": "{2338,3798,0,0,1}-"
+ },
+ {
+ "npc_id": "5519",
+ "loc_data": "{2338,3800,0,0,6}-"
+ },
+ {
+ "npc_id": "5520",
+ "loc_data": "{2338,3810,0,0,3}-"
+ },
+ {
+ "npc_id": "5521",
+ "loc_data": "{2324,3832,0,1,0}-{2350,3859,0,1,0}-{2350,3862,0,1,0}-{2352,3857,0,1,0}-{2375,3892,0,1,0}-{2388,3867,0,1,0}-{2384,3863,0,1,0}-{2387,3859,0,1,0}-"
+ },
+ {
+ "npc_id": "5522",
+ "loc_data": "{2362,3893,0,1,0}-{2323,3857,0,1,0}-{2331,3860,0,1,0}-{2390,3861,0,1,0}-{2395,3859,0,1,0}-"
+ },
+ {
+ "npc_id": "5523",
+ "loc_data": "{2367,3832,0,1,0}-{2319,3854,0,1,0}-{2324,3891,0,1,0}-{2406,3854,0,1,0}-{2405,3863,0,1,0}-{2400,3856,0,1,0}-"
+ },
+ {
+ "npc_id": "5524",
+ "loc_data": "{2340,3830,0,1,0}-{2338,3860,0,1,0}-{2339,3895,0,1,0}-{2411,3886,0,1,0}-{2396,3854,0,1,0}-"
+ },
+ {
+ "npc_id": "5529",
+ "loc_data": "{2323,3790,0,1,1}-{2323,3795,0,1,0}-{2322,3795,0,1,0}-{2317,3794,0,1,6}-{2317,3790,0,1,3}-{2321,3792,0,1,6}-"
+ },
+ {
+ "npc_id": "5531",
+ "loc_data": "{3323,3138,1,1,6}-"
+ },
+ {
+ "npc_id": "5532",
+ "loc_data": "{3320,3138,0,1,3}-"
+ },
+ {
+ "npc_id": "5533",
+ "loc_data": "{2904,5460,0,1,4}-"
+ },
+ {
+ "npc_id": "5534",
+ "loc_data": "{2900,5455,0,1,1}-"
+ },
+ {
+ "npc_id": "5535",
+ "loc_data": "{2903,5449,0,1,4}-"
+ },
+ {
+ "npc_id": "5536",
+ "loc_data": "{2905,5451,0,1,1}-"
+ },
+ {
+ "npc_id": "5537",
+ "loc_data": "{2905,5457,0,1,4}-"
+ },
+ {
+ "npc_id": "5538",
+ "loc_data": "{2912,5455,0,1,3}-"
+ },
+ {
+ "npc_id": "5539",
+ "loc_data": "{2922,5464,0,1,1}-"
+ },
+ {
+ "npc_id": "5540",
+ "loc_data": "{2924,5462,0,1,4}-"
+ },
+ {
+ "npc_id": "5541",
+ "loc_data": "{2924,5458,0,1,4}-"
+ },
+ {
+ "npc_id": "5542",
+ "loc_data": "{2930,5458,0,1,1}-"
+ },
+ {
+ "npc_id": "5544",
+ "loc_data": "{2931,5469,0,1,3}-"
+ },
+ {
+ "npc_id": "5545",
+ "loc_data": "{2925,5471,0,1,1}-"
+ },
+ {
+ "npc_id": "5546",
+ "loc_data": "{2931,5475,0,1,1}-"
+ },
+ {
+ "npc_id": "5547",
+ "loc_data": "{2907,5486,0,1,6}-"
+ },
+ {
+ "npc_id": "5548",
+ "loc_data": "{2907,5492,0,1,6}-"
+ },
+ {
+ "npc_id": "5549",
+ "loc_data": "{2910,5491,0,1,6}-"
+ },
+ {
+ "npc_id": "5550",
+ "loc_data": "{2915,5483,0,1,1}-"
+ },
+ {
+ "npc_id": "5551",
+ "loc_data": "{2922,5486,0,1,4}-"
+ },
+ {
+ "npc_id": "5552",
+ "loc_data": "{2921,5493,0,1,4}-"
+ },
+ {
+ "npc_id": "5553",
+ "loc_data": "{2899,5468,0,1,4}-"
+ },
+ {
+ "npc_id": "5554",
+ "loc_data": "{2894,5470,0,1,3}-"
+ },
+ {
+ "npc_id": "5555",
+ "loc_data": "{2898,5478,0,1,4}-"
+ },
+ {
+ "npc_id": "5556",
+ "loc_data": "{2896,5482,0,1,3}-"
+ },
+ {
+ "npc_id": "5557",
+ "loc_data": "{2894,5483,0,1,4}-"
+ },
+ {
+ "npc_id": "5558",
+ "loc_data": "{2894,5485,0,1,3}-"
+ },
+ {
+ "npc_id": "5562",
+ "loc_data": "{2913,5462,0,0,0}-{2900,5458,0,0,0}-{2908,5455,0,0,0}-{2910,5455,0,0,0}-{2913,5452,0,0,0}-{2914,5453,0,0,0}-"
+ },
+ {
+ "npc_id": "5563",
+ "loc_data": "{2911,5474,0,0,0}-"
+ },
+ {
+ "npc_id": "5574",
+ "loc_data": "{2836,3066,0,0,0}-"
+ },
+ {
+ "npc_id": "5576",
+ "loc_data": "{3072,3336,0,0,0}-{3063,3348,0,0,0}-"
+ },
+ {
+ "npc_id": "5608",
+ "loc_data": "{3786,2827,2,0,0}-"
+ },
+ {
+ "npc_id": "5609",
+ "loc_data": "{3786,2824,1,0,0}-"
+ },
+ {
+ "npc_id": "5610",
+ "loc_data": "{3785,2827,0,0,0}-"
+ },
+ {
+ "npc_id": "5611",
+ "loc_data": "{3784,2824,0,0,0}-"
+ },
+ {
+ "npc_id": "5614",
+ "loc_data": "{3779,2826,0,0,0}-{3789,2817,0,0,0}-{3794,2821,0,0,0}-{3808,2823,0,0,0}-{3812,2861,0,0,0}-{3813,2822,0,0,0}-{3818,2862,0,0,0}-{3819,2870,0,0,0}-{3821,2824,0,0,0}-{3831,2828,0,0,0}-"
+ },
+ {
+ "npc_id": "5627",
+ "loc_data": "{3808,2845,0,0,0}-{3812,2846,0,0,0}-{3815,2844,0,0,3}-{3819,2839,0,0,0}-{3819,2851,0,0,0}-{3819,2838,1,0,0}-{3823,2836,1,0,0}-{3823,2846,1,0,0}-"
+ },
+ {
+ "npc_id": "5628",
+ "loc_data": "{3810,2843,0,0,0}-{3813,2844,0,0,0}-{3821,2837,0,0,0}-{3820,2840,1,0,0}-{3820,2851,1,0,0}-{3823,2839,1,0,0}-"
+ },
+ {
+ "npc_id": "5629",
+ "loc_data": "{3811,2826,0,0,0}-"
+ },
+ {
+ "npc_id": "5631",
+ "loc_data": "{3827,2833,0,0,0}-"
+ },
+ {
+ "npc_id": "5633",
+ "loc_data": "{3815,2859,0,0,0}-"
+ },
+ {
+ "npc_id": "5634",
+ "loc_data": "{3793,2851,0,0,0}-"
+ },
+ {
+ "npc_id": "5635",
+ "loc_data": "{3784,2843,0,0,0}-"
+ },
+ {
+ "npc_id": "5637",
+ "loc_data": "{3803,2843,0,0,0}-"
+ },
+ {
+ "npc_id": "5638",
+ "loc_data": "{3810,2833,0,0,0}-"
+ },
+ {
+ "npc_id": "5639",
+ "loc_data": "{3824,2857,0,0,0}-"
+ },
+ {
+ "npc_id": "5640",
+ "loc_data": "{3817,2824,0,0,0}-"
+ },
+ {
+ "npc_id": "5641",
+ "loc_data": "{3799,2855,0,0,0}-"
+ },
+ {
+ "npc_id": "5642",
+ "loc_data": "{3796,2858,0,0,0}-"
+ },
+ {
+ "npc_id": "5644",
+ "loc_data": "{3795,2845,0,0,3}-"
+ },
+ {
+ "npc_id": "5646",
+ "loc_data": "{3792,2830,0,0,0}-"
+ },
+ {
+ "npc_id": "5647",
+ "loc_data": "{3803,2872,2,0,0}-"
+ },
+ {
+ "npc_id": "5650",
+ "loc_data": "{3800,2835,0,0,0}-"
+ },
+ {
+ "npc_id": "5656",
+ "loc_data": "{3794,2873,1,0,0}-"
+ },
+ {
+ "npc_id": "5658",
+ "loc_data": "{3804,2873,1,0,0}-"
+ },
+ {
+ "npc_id": "5659",
+ "loc_data": "{3805,2874,2,0,0}-"
+ },
+ {
+ "npc_id": "5661",
+ "loc_data": "{3794,2874,3,0,0}-"
+ },
+ {
+ "npc_id": "5665",
+ "loc_data": "{3803,2848,0,0,0}-"
+ },
+ {
+ "npc_id": "5668",
+ "loc_data": "{3787,2824,0,0,0}-"
+ },
+ {
+ "npc_id": "5669",
+ "loc_data": "{3787,2827,0,0,0}-"
+ },
+ {
+ "npc_id": "5670",
+ "loc_data": "{3786,2827,1,0,0}-"
+ },
+ {
+ "npc_id": "5671",
+ "loc_data": "{3788,2826,1,0,0}-"
+ },
+ {
+ "npc_id": "5672",
+ "loc_data": "{3788,2825,2,0,0}-"
+ },
+ {
+ "npc_id": "5748",
+ "loc_data": "{3429,3276,0,0,0}-{3440,3281,0,0,0}-{3437,3272,0,0,0}-{3440,3271,0,0,0}-{3443,3272,0,0,0}-{3445,3279,0,0,0}-{3445,3274,0,0,0}-{3434,3417,0,0,0}-{3431,3415,0,0,0}-{3440,3410,0,0,0}-{3424,3409,0,0,0}-{3425,3410,0,0,0}-{3425,3407,0,0,0}-{3483,3449,0,0,0}-{3490,3444,0,0,0}-{3479,3434,0,0,0}-{3479,3430,0,0,0}-{3481,3473,0,0,0}-"
+ },
+ {
+ "npc_id": "5750",
+ "loc_data": "{3290,5544,0,1,4}-{3270,5552,0,1,1}-{3274,5547,0,1,7}-"
+ },
+ {
+ "npc_id": "5752",
+ "loc_data": "{2711,5331,0,0,0}-"
+ },
+ {
+ "npc_id": "5753",
+ "loc_data": "{2697,5332,0,0,0}-"
+ },
+ {
+ "npc_id": "5755",
+ "loc_data": "{2723,5336,0,0,0}-"
+ },
+ {
+ "npc_id": "5756",
+ "loc_data": "{2702,5352,1,0,0}-"
+ },
+ {
+ "npc_id": "5757",
+ "loc_data": "{2743,5358,0,0,0}-"
+ },
+ {
+ "npc_id": "5758",
+ "loc_data": "{2693,5332,0,0,0}-{2729,5329,0,0,0}-"
+ },
+ {
+ "npc_id": "5761",
+ "loc_data": "{2725,5349,0,0,0}-"
+ },
+ {
+ "npc_id": "5764",
+ "loc_data": "{2712,5342,0,0,0}-"
+ },
+ {
+ "npc_id": "5765",
+ "loc_data": "{2694,5333,0,0,0}-"
+ },
+ {
+ "npc_id": "5766",
+ "loc_data": "{2701,5352,1,0,0}-"
+ },
+ {
+ "npc_id": "5767",
+ "loc_data": "{2695,5331,0,0,0}-{2719,5331,0,0,0}-"
+ },
+ {
+ "npc_id": "5770",
+ "loc_data": "{2717,5359,0,0,0}-"
+ },
+ {
+ "npc_id": "5771",
+ "loc_data": "{2722,5333,0,0,0}-"
+ },
+ {
+ "npc_id": "5772",
+ "loc_data": "{2716,5359,0,0,0}-"
+ },
+ {
+ "npc_id": "5776",
+ "loc_data": "{2699,5349,0,0,4}-"
+ },
+ {
+ "npc_id": "5777",
+ "loc_data": "{2699,5348,0,0,4}-"
+ },
+ {
+ "npc_id": "5780",
+ "loc_data": "{2722,5313,0,0,0}-"
+ },
+ {
+ "npc_id": "5781",
+ "loc_data": "{2723,5321,0,0,0}-"
+ },
+ {
+ "npc_id": "5782",
+ "loc_data": "{2742,5339,1,0,0}-"
+ },
+ {
+ "npc_id": "5783",
+ "loc_data": "{2701,5348,0,0,0}-"
+ },
+ {
+ "npc_id": "5785",
+ "loc_data": "{2726,5372,1,0,0}-"
+ },
+ {
+ "npc_id": "5786",
+ "loc_data": "{2712,5369,1,0,0}-"
+ },
+ {
+ "npc_id": "5787",
+ "loc_data": "{2704,5366,0,0,0}-"
+ },
+ {
+ "npc_id": "5789",
+ "loc_data": "{2718,5313,0,0,0}-"
+ },
+ {
+ "npc_id": "5790",
+ "loc_data": "{2715,5313,0,0,0}-"
+ },
+ {
+ "npc_id": "5794",
+ "loc_data": "{2712,5321,0,0,0}-"
+ },
+ {
+ "npc_id": "5796",
+ "loc_data": "{2711,5314,0,0,0}-"
+ },
+ {
+ "npc_id": "5798",
+ "loc_data": "{2717,5315,0,1,2}-"
+ },
+ {
+ "npc_id": "5799",
+ "loc_data": "{2730,5365,1,0,0}-"
+ },
+ {
+ "npc_id": "5800",
+ "loc_data": "{2719,5335,0,1,1}-{2747,5373,0,1,3}-"
+ },
+ {
+ "npc_id": "5801",
+ "loc_data": "{2730,5333,0,1,2}-"
+ },
+ {
+ "npc_id": "5802",
+ "loc_data": "{2744,5353,1,0,0}-"
+ },
+ {
+ "npc_id": "5803",
+ "loc_data": "{2741,5344,1,0,0}-"
+ },
+ {
+ "npc_id": "5804",
+ "loc_data": "{2744,5333,1,0,0}-"
+ },
+ {
+ "npc_id": "5805",
+ "loc_data": "{2743,5345,1,0,0}-"
+ },
+ {
+ "npc_id": "5806",
+ "loc_data": "{2746,5333,1,0,0}-"
+ },
+ {
+ "npc_id": "5807",
+ "loc_data": "{2741,5334,1,0,0}-"
+ },
+ {
+ "npc_id": "5809",
+ "loc_data": "{2741,5341,1,0,0}-"
+ },
+ {
+ "npc_id": "5811",
+ "loc_data": "{2744,5342,1,0,0}-"
+ },
+ {
+ "npc_id": "5813",
+ "loc_data": "{2742,5338,1,0,0}-"
+ },
+ {
+ "npc_id": "5815",
+ "loc_data": "{2743,5341,1,0,0}-"
+ },
+ {
+ "npc_id": "5817",
+ "loc_data": "{2744,5338,1,0,0}-"
+ },
+ {
+ "npc_id": "5819",
+ "loc_data": "{2744,5336,1,0,0}-"
+ },
+ {
+ "npc_id": "5821",
+ "loc_data": "{2740,5334,1,0,0}-"
+ },
+ {
+ "npc_id": "5827",
+ "loc_data": "{2699,5329,0,0,0}-{2699,5335,0,0,0}-{2747,5342,0,0,0}-"
+ },
+ {
+ "npc_id": "5828",
+ "loc_data": "{2697,5316,0,0,0}-{3323,9606,0,0,0}-"
+ },
+ {
+ "npc_id": "5832",
+ "loc_data": "{2730,5366,1,0,0}-"
+ },
+ {
+ "npc_id": "5833",
+ "loc_data": "{3267,3334,0,1,3}-"
+ },
+ {
+ "npc_id": "5834",
+ "loc_data": "{3208,3496,0,1,6}-"
+ },
+ {
+ "npc_id": "5837",
+ "loc_data": "{3285,3468,0,0,4}-"
+ },
+ {
+ "npc_id": "5839",
+ "loc_data": "{3183,5205,0,0,0}-"
+ },
+ {
+ "npc_id": "5840",
+ "loc_data": "{3159,5211,0,0,0}-"
+ },
+ {
+ "npc_id": "5841",
+ "loc_data": "{3176,5215,0,0,0}-"
+ },
+ {
+ "npc_id": "5842",
+ "loc_data": "{3115,3475,0,1,1}-"
+ },
+ {
+ "npc_id": "5843",
+ "loc_data": "{3117,3474,0,1,4}-"
+ },
+ {
+ "npc_id": "5844",
+ "loc_data": "{3113,3473,0,1,7}-"
+ },
+ {
+ "npc_id": "5845",
+ "loc_data": "{3115,3475,0,1,2}-"
+ },
+ {
+ "npc_id": "5846",
+ "loc_data": "{3110,3471,0,0,2}-"
+ },
+ {
+ "npc_id": "5847",
+ "loc_data": "{3115,3476,0,1,6}-"
+ },
+ {
+ "npc_id": "5848",
+ "loc_data": "{3116,3475,0,1,1}-"
+ },
+ {
+ "npc_id": "5849",
+ "loc_data": "{3112,3473,0,1,3}-"
+ },
+ {
+ "npc_id": "5850",
+ "loc_data": "{3115,3476,0,1,4}-"
+ },
+ {
+ "npc_id": "5851",
+ "loc_data": "{3119,3474,0,1,5}-"
+ },
+ {
+ "npc_id": "5869",
+ "loc_data": "{2744,5344,0,0,0}-"
+ },
+ {
+ "npc_id": "5880",
+ "loc_data": "{2439,5544,0,1,0}-{2485,5535,0,1,0}-"
+ },
+ {
+ "npc_id": "5881",
+ "loc_data": "{2436,5540,0,1,0}-"
+ },
+ {
+ "npc_id": "5882",
+ "loc_data": "{2437,5549,0,1,0}-{2484,5531,0,1,0}-"
+ },
+ {
+ "npc_id": "5883",
+ "loc_data": "{2436,5526,0,1,0}-{2486,5525,0,1,0}-"
+ },
+ {
+ "npc_id": "5884",
+ "loc_data": "{2439,5520,0,1,0}-"
+ },
+ {
+ "npc_id": "5885",
+ "loc_data": "{2487,5538,0,1,0}-"
+ },
+ {
+ "npc_id": "5887",
+ "loc_data": "{2737,5351,1,0,0}-"
+ },
+ {
+ "npc_id": "5909",
+ "loc_data": "{3224,3402,0,1,4}-"
+ },
+ {
+ "npc_id": "5910",
+ "loc_data": "{3230,3401,0,0,0}-{3284,3491,0,1,1}-"
+ },
+ {
+ "npc_id": "5914",
+ "loc_data": "{3204,3419,0,0,6}-"
+ },
+ {
+ "npc_id": "5915",
+ "loc_data": "{3255,3488,1,0,6}-"
+ },
+ {
+ "npc_id": "5916",
+ "loc_data": "{3250,3429,0,1,5}-"
+ },
+ {
+ "npc_id": "5917",
+ "loc_data": "{3176,3431,0,1,5}-{3200,3399,0,1,4}-{3262,3410,0,1,3}-{3261,3424,0,1,2}-"
+ },
+ {
+ "npc_id": "5918",
+ "loc_data": "{3233,3394,0,0,7}-{3271,3399,0,1,3}-"
+ },
+ {
+ "npc_id": "5919",
+ "loc_data": "{3175,3432,0,1,3}-{3175,3427,0,1,5}-{3172,3430,0,1,2}-{3175,3416,1,1,6}-{3175,3404,1,1,7}-{3205,3379,0,1,6}-{3211,3381,0,1,3}-{3244,3498,0,1,1}-{3244,3503,0,1,6}-{3247,3500,0,1,3}-"
+ },
+ {
+ "npc_id": "5920",
+ "loc_data": "{3175,3421,0,1,0}-{3211,3378,0,1,0}-{3220,3461,0,1,3}-{3221,3464,0,1,4}-{3213,3466,0,1,1}-{3214,3461,0,1,5}-{3215,3464,0,1,0}-{3208,3467,0,1,6}-{3209,3460,0,1,4}-{3205,3463,0,1,4}-{3273,3430,0,1,0}-{3272,3429,0,1,1}-{3274,3427,0,1,3}-"
+ },
+ {
+ "npc_id": "5923",
+ "loc_data": "{3224,3394,1,1,6}-"
+ },
+ {
+ "npc_id": "5924",
+ "loc_data": "{3227,3396,0,1,1}-"
+ },
+ {
+ "npc_id": "5925",
+ "loc_data": "{3220,3433,0,1,5}-"
+ },
+ {
+ "npc_id": "5926",
+ "loc_data": "{3184,3386,0,1,4}-{3185,3391,0,1,5}-{3229,3392,0,1,6}-{3247,9775,0,1,3}-{3240,9770,0,1,4}-{3235,9766,0,1,3}-"
+ },
+ {
+ "npc_id": "5927",
+ "loc_data": "{3250,9776,0,1,3}-"
+ },
+ {
+ "npc_id": "5928",
+ "loc_data": "{3249,9772,0,1,5}-"
+ },
+ {
+ "npc_id": "5929",
+ "loc_data": "{3245,9772,0,1,7}-{3239,9766,0,1,2}-"
+ },
+ {
+ "npc_id": "5930",
+ "loc_data": "{3257,3454,2,0,0}-"
+ },
+ {
+ "npc_id": "5932",
+ "loc_data": "{3253,3445,0,0,6}-"
+ },
+ {
+ "npc_id": "5933",
+ "loc_data": "{3254,3444,0,0,1}-"
+ },
+ {
+ "npc_id": "5934",
+ "loc_data": "{3256,3443,0,0,6}-"
+ },
+ {
+ "npc_id": "5935",
+ "loc_data": "{3257,3442,0,0,1}-"
+ },
+ {
+ "npc_id": "5936",
+ "loc_data": "{3266,3445,0,0,6}-"
+ },
+ {
+ "npc_id": "5937",
+ "loc_data": "{3267,3444,0,0,1}-"
+ },
+ {
+ "npc_id": "5938",
+ "loc_data": "{3253,3454,0,0,0}-"
+ },
+ {
+ "npc_id": "5939",
+ "loc_data": "{3253,3453,1,1,0}-"
+ },
+ {
+ "npc_id": "5940",
+ "loc_data": "{3262,3442,1,1,0}-"
+ },
+ {
+ "npc_id": "5941",
+ "loc_data": "{3260,3447,0,0,0}-"
+ },
+ {
+ "npc_id": "5942",
+ "loc_data": "{3295,3427,0,0,1}-"
+ },
+ {
+ "npc_id": "5943",
+ "loc_data": "{3263,3441,0,0,0}-"
+ },
+ {
+ "npc_id": "5944",
+ "loc_data": "{3263,3450,0,0,0}-{1746,4961,0,1,4}-{1761,4938,0,1,4}-{1761,4976,0,1,5}-"
+ },
+ {
+ "npc_id": "5945",
+ "loc_data": "{1743,4959,0,1,4}-{1739,4969,0,1,4}-{1748,4941,0,1,4}-{1759,4979,0,1,6}-"
+ },
+ {
+ "npc_id": "5946",
+ "loc_data": "{3261,3455,0,1,0}-{1758,4945,0,1,4}-{1757,4935,0,1,4}-{1746,4980,0,1,4}-"
+ },
+ {
+ "npc_id": "5947",
+ "loc_data": "{3260,3452,0,1,0}-{3261,3451,2,1,0}-{1735,4950,0,1,4}-{1759,4948,0,1,4}-{1780,4960,0,1,4}-{1760,4974,0,1,5}-"
+ },
+ {
+ "npc_id": "5952",
+ "loc_data": "{3326,3443,0,1,5}-"
+ },
+ {
+ "npc_id": "5954",
+ "loc_data": "{3310,3425,0,1,5}-"
+ },
+ {
+ "npc_id": "5956",
+ "loc_data": "{2659,2664,0,1,3}-"
+ },
+ {
+ "npc_id": "5958",
+ "loc_data": "{3357,3415,0,0,3}-"
+ },
+ {
+ "npc_id": "5959",
+ "loc_data": "{3352,3449,0,0,0}-"
+ },
+ {
+ "npc_id": "5960",
+ "loc_data": "{3354,3449,0,0,0}-"
+ },
+ {
+ "npc_id": "5961",
+ "loc_data": "{3352,3446,0,0,0}-"
+ },
+ {
+ "npc_id": "5962",
+ "loc_data": "{3357,3446,0,0,0}-"
+ },
+ {
+ "npc_id": "5963",
+ "loc_data": "{3363,3445,0,0,0}-"
+ },
+ {
+ "npc_id": "5964",
+ "loc_data": "{3324,3445,0,1,7}-"
+ },
+ {
+ "npc_id": "5965",
+ "loc_data": "{1759,4955,0,0,0}-"
+ },
+ {
+ "npc_id": "5966",
+ "loc_data": "{1754,4960,0,1,4}-"
+ },
+ {
+ "npc_id": "5967",
+ "loc_data": "{1735,4950,0,1,4}-{1758,4937,0,1,4}-{1756,4947,0,1,4}-{1771,4960,0,1,4}-{1779,4950,0,1,4}-{1759,4971,0,1,4}-{1773,4983,0,1,4}-"
+ },
+ {
+ "npc_id": "5971",
+ "loc_data": "{1742,4964,0,0,0}-"
+ },
+ {
+ "npc_id": "5972",
+ "loc_data": "{1781,4954,0,0,0}-"
+ },
+ {
+ "npc_id": "5973",
+ "loc_data": "{1774,4964,0,0,0}-"
+ },
+ {
+ "npc_id": "5974",
+ "loc_data": "{1774,4954,0,0,0}-"
+ },
+ {
+ "npc_id": "5975",
+ "loc_data": "{1740,4979,0,0,0}-"
+ },
+ {
+ "npc_id": "5976",
+ "loc_data": "{1742,4954,0,0,0}-"
+ },
+ {
+ "npc_id": "5977",
+ "loc_data": "{1735,4964,0,0,0}-"
+ },
+ {
+ "npc_id": "5978",
+ "loc_data": "{1752,4938,0,0,0}-"
+ },
+ {
+ "npc_id": "5979",
+ "loc_data": "{1765,4979,0,0,0}-"
+ },
+ {
+ "npc_id": "5980",
+ "loc_data": "{1775,4979,0,0,0}-"
+ },
+ {
+ "npc_id": "5981",
+ "loc_data": "{1750,4979,0,0,0}-"
+ },
+ {
+ "npc_id": "5982",
+ "loc_data": "{1735,4954,0,0,0}-"
+ },
+ {
+ "npc_id": "5984",
+ "loc_data": "{3263,3452,0,1,0}-{1743,4950,0,1,4}-{1770,4935,0,1,4}-{1772,4962,0,1,4}-{1771,4957,0,1,4}-{1777,4976,0,1,6}-"
+ },
+ {
+ "npc_id": "5987",
+ "loc_data": "{2891,3455,0,1,0}-"
+ },
+ {
+ "npc_id": "5991",
+ "loc_data": "{2966,3466,0,0,0}-"
+ },
+ {
+ "npc_id": "5997",
+ "loc_data": "{2862,3511,0,0,0}-"
+ },
+ {
+ "npc_id": "5998",
+ "loc_data": "{2971,3473,0,0,0}-"
+ },
+ {
+ "npc_id": "6026",
+ "loc_data": "{3489,3490,0,1,3}-"
+ },
+ {
+ "npc_id": "6027",
+ "loc_data": "{3493,3472,0,1,4}-"
+ },
+ {
+ "npc_id": "6028",
+ "loc_data": "{3497,3497,0,1,2}-"
+ },
+ {
+ "npc_id": "6030",
+ "loc_data": "{3496,3476,0,1,2}-"
+ },
+ {
+ "npc_id": "6031",
+ "loc_data": "{3511,3482,1,0,0}-"
+ },
+ {
+ "npc_id": "6032",
+ "loc_data": "{3502,3487,0,1,1}-"
+ },
+ {
+ "npc_id": "6033",
+ "loc_data": "{3484,3478,0,1,4}-"
+ },
+ {
+ "npc_id": "6034",
+ "loc_data": "{3502,3493,0,1,3}-"
+ },
+ {
+ "npc_id": "6035",
+ "loc_data": "{3486,3488,0,1,3}-"
+ },
+ {
+ "npc_id": "6036",
+ "loc_data": "{3499,3474,1,0,0}-"
+ },
+ {
+ "npc_id": "6037",
+ "loc_data": "{3499,3477,0,1,3}-"
+ },
+ {
+ "npc_id": "6038",
+ "loc_data": "{3490,3472,1,0,0}-"
+ },
+ {
+ "npc_id": "6039",
+ "loc_data": "{3483,3495,0,1,4}-"
+ },
+ {
+ "npc_id": "6040",
+ "loc_data": "{3498,3472,1,0,0}-"
+ },
+ {
+ "npc_id": "6041",
+ "loc_data": "{3479,3492,0,1,4}-"
+ },
+ {
+ "npc_id": "6042",
+ "loc_data": "{3479,3498,0,1,4}-"
+ },
+ {
+ "npc_id": "6044",
+ "loc_data": "{3505,3491,1,0,0}-"
+ },
+ {
+ "npc_id": "6045",
+ "loc_data": "{3479,3498,1,0,0}-"
+ },
+ {
+ "npc_id": "6046",
+ "loc_data": "{2835,3509,0,1,1}-{3306,5510,0,1,5}-{3309,5543,0,1,6}-"
+ },
+ {
+ "npc_id": "6047",
+ "loc_data": "{2836,3495,0,1,0}-{2837,3499,0,1,0}-{2839,3502,0,1,0}-{2839,3506,0,1,0}-{2842,3504,0,1,0}-{2844,3507,0,1,0}-"
+ },
+ {
+ "npc_id": "6050",
+ "loc_data": "{3264,3008,0,1,0}-{3266,3008,0,1,0}-{3285,3066,0,1,0}-{3322,3032,0,1,0}-{3323,3055,0,1,0}-{3325,3010,0,1,0}-{3174,3010,0,1,0}-{3198,3061,0,1,0}-{3199,3016,0,1,0}-{3219,3125,0,1,0}-{3233,3075,0,1,0}-{3250,3126,0,1,0}-{3223,3011,0,1,0}-{3228,3060,0,1,0}-{3251,3059,0,1,0}-{3310,3076,0,1,0}-"
+ },
+ {
+ "npc_id": "6051",
+ "loc_data": "{3266,3010,0,1,0}-{3267,3068,0,1,0}-{3287,3065,0,1,0}-{3287,3067,0,1,0}-{3310,3070,0,1,0}-{3312,3068,0,1,0}-{3320,3054,0,1,0}-{3324,3013,0,1,0}-{3325,3033,0,1,0}-{3153,3047,0,1,0}-{3196,3063,0,1,0}-{3199,3036,0,1,0}-{3215,3092,0,1,0}-{3217,3124,0,1,0}-{3260,3077,0,1,0}-{3223,3035,0,1,0}-{3225,3011,0,1,0}-{3283,3084,0,1,0}-"
+ },
+ {
+ "npc_id": "6052",
+ "loc_data": "{2761,3863,0,1,0}-{2764,3858,0,1,0}-{2769,3854,0,1,0}-{2769,3861,0,1,0}-"
+ },
+ {
+ "npc_id": "6055",
+ "loc_data": "{2563,4348,0,1,0}-{2620,4348,0,1,0}-{2620,4291,0,1,0}-{2563,4291,0,1,0}-{2572,4339,0,1,0}-{2565,4327,0,1,0}-{2575,4315,0,1,0}-{2586,4306,0,1,0}-{2593,4304,0,1,0}-{2605,4312,0,1,0}-{2614,4330,0,1,0}-"
+ },
+ {
+ "npc_id": "6056",
+ "loc_data": "{2565,4320,0,1,0}-{2592,4348,0,1,0}-{2596,4346,0,1,0}-{2576,4333,0,1,0}-{2576,4324,0,1,0}-{2612,4333,0,1,0}-{2617,4329,0,1,0}-{2608,4316,0,1,0}-{2593,4295,0,1,0}-{2587,4307,0,1,0}-"
+ },
+ {
+ "npc_id": "6057",
+ "loc_data": "{2604,4348,0,1,0}-{2613,4346,0,1,0}-{2582,4347,0,1,0}-{2568,4333,0,1,0}-{2576,4321,0,1,0}-{2571,4302,0,1,0}-{2587,4296,0,1,0}-{2598,4301,0,1,0}-{2612,4303,0,1,0}-{2607,4321,0,1,0}-{2617,4325,0,1,0}-{2617,4346,0,1,0}-"
+ },
+ {
+ "npc_id": "6058",
+ "loc_data": "{2585,4343,0,1,0}-{2599,4338,0,1,0}-{2612,4338,0,1,0}-{2573,4329,0,1,0}-{2572,4320,0,1,0}-{2575,4309,0,1,0}-{2587,4302,0,1,0}-{2606,4319,0,1,0}-{2608,4336,0,1,0}-"
+ },
+ {
+ "npc_id": "6059",
+ "loc_data": "{2579,4340,0,1,0}-{2578,4323,0,1,0}-{2580,4302,0,1,0}-{2611,4324,0,1,0}-{2594,4338,0,1,0}-"
+ },
+ {
+ "npc_id": "6060",
+ "loc_data": "{2589,4341,0,1,0}-{2569,4315,0,1,0}-{2591,4299,0,1,0}-{2611,4330,0,1,0}-"
+ },
+ {
+ "npc_id": "6065",
+ "loc_data": "{2612,4348,0,1,0}-{2606,4340,0,1,0}-{2592,4333,0,1,0}-{2579,4336,0,1,0}-{2565,4340,0,1,0}-{2569,4329,0,1,0}-{2574,4311,0,1,0}-{2570,4304,0,1,0}-{2567,4294,0,1,0}-{2604,4305,0,1,0}-{2610,4293,0,1,0}-{2612,4320,0,1,0}-"
+ },
+ {
+ "npc_id": "6066",
+ "loc_data": "{2601,4334,0,1,0}-{2586,4335,0,1,0}-{2572,4334,0,1,0}-{2574,4323,0,1,0}-{2579,4295,0,1,0}-{2588,4298,0,1,0}-{2600,4304,0,1,0}-{2612,4312,0,1,0}-{2607,4329,0,1,0}-{2616,4336,0,1,0}-"
+ },
+ {
+ "npc_id": "6067",
+ "loc_data": "{2570,4341,0,0,0}-{2613,4298,0,0,0}-"
+ },
+ {
+ "npc_id": "6070",
+ "loc_data": "{2589,4313,0,1,6}-"
+ },
+ {
+ "npc_id": "6072",
+ "loc_data": "{2426,4442,0,0,0}-"
+ },
+ {
+ "npc_id": "6073",
+ "loc_data": "{2594,4319,0,1,6}-{2424,4436,0,0,0}-"
+ },
+ {
+ "npc_id": "6074",
+ "loc_data": "{2603,4306,0,1,4}-{2607,4312,0,1,7}-{2610,4319,0,1,6}-{2613,4326,0,1,5}-{2616,4333,0,1,0}-{2619,4340,0,1,6}-{2614,4344,0,1,3}-{2609,4347,0,1,4}-{2605,4347,0,1,4}-{2599,4345,0,1,3}-{2598,4342,0,1,3}-{2597,4339,0,1,3}-{2596,4336,0,1,3}-{2595,4333,0,1,3}-{2594,4330,0,1,4}-{2587,4330,0,1,3}-{2583,4332,0,1,4}-{2579,4335,0,1,3}-{2576,4339,0,1,4}-{2571,4342,0,1,1}-{2569,4332,0,1,4}-{2572,4326,0,1,6}-{2572,4297,0,1,1}-{2585,4291,0,1,3}-{2599,4297,0,1,4}-{2607,4300,0,1,1}-{2614,4301,0,1,6}-{2619,4305,0,1,0}-{2616,4320,0,1,6}-{2613,4327,0,1,0}-{2611,4335,0,1,6}-{2607,4336,0,1,6}-{2581,4322,0,1,1}-{2578,4315,0,1,6}-{2575,4308,0,1,6}-{2572,4301,0,1,4}-{2567,4295,0,1,3}-{2577,4291,0,1,3}-{2587,4298,0,1,3}-{2595,4307,0,1,3}-{2603,4314,0,1,3}-"
+ },
+ {
+ "npc_id": "6085",
+ "loc_data": "{3046,3207,1,0,2}-"
+ },
+ {
+ "npc_id": "6088",
+ "loc_data": "{2932,3253,0,1,4}-{2936,3249,0,1,2}-{2933,3244,0,1,4}-{2927,3247,0,1,5}-{2925,3256,0,1,0}-"
+ },
+ {
+ "npc_id": "6089",
+ "loc_data": "{2932,3249,0,1,0}-{2929,3253,0,1,3}-{2938,3248,0,1,5}-"
+ },
+ {
+ "npc_id": "6090",
+ "loc_data": "{2932,3245,0,1,0}-{2934,3246,0,1,3}-"
+ },
+ {
+ "npc_id": "6101",
+ "loc_data": "{2932,9811,0,1,0}-"
+ },
+ {
+ "npc_id": "6102",
+ "loc_data": "{1762,5329,0,1,1}-"
+ },
+ {
+ "npc_id": "6104",
+ "loc_data": "{1751,5326,0,1,1}-"
+ },
+ {
+ "npc_id": "6105",
+ "loc_data": "{1767,5355,0,0,6}-"
+ },
+ {
+ "npc_id": "6108",
+ "loc_data": "{2854,3385,0,1,0}-"
+ },
+ {
+ "npc_id": "6109",
+ "loc_data": "{2526,3215,0,1,6}-{2545,3231,0,1,4}-{2537,3236,0,1,4}-"
+ },
+ {
+ "npc_id": "6110",
+ "loc_data": "{2532,3222,0,1,3}-{2533,3209,0,1,4}-"
+ },
+ {
+ "npc_id": "6112",
+ "loc_data": "{3238,3247,0,1,0}-"
+ },
+ {
+ "npc_id": "6113",
+ "loc_data": "{3232,3280,0,1,4}-{3222,3289,0,1,1}-"
+ },
+ {
+ "npc_id": "6114",
+ "loc_data": "{3232,3283,0,1,1}-"
+ },
+ {
+ "npc_id": "6115",
+ "loc_data": "{3033,3236,0,1,3}-{3041,3237,0,1,6}-{3035,3234,0,1,7}-{3028,3205,0,1,4}-{3019,3202,0,1,6}-{3026,3203,0,1,1}-"
+ },
+ {
+ "npc_id": "6116",
+ "loc_data": "{3030,3244,0,1,0}-{3025,3203,0,1,3}-{3034,3204,0,1,4}-"
+ },
+ {
+ "npc_id": "6117",
+ "loc_data": "{1884,5020,0,0,6}-"
+ },
+ {
+ "npc_id": "6127",
+ "loc_data": "{2467,3183,0,0,3}-"
+ },
+ {
+ "npc_id": "6128",
+ "loc_data": "{2465,3183,0,0,4}-"
+ },
+ {
+ "npc_id": "6129",
+ "loc_data": "{2470,3185,0,0,6}-"
+ },
+ {
+ "npc_id": "6131",
+ "loc_data": "{1885,5026,0,0,6}-"
+ },
+ {
+ "npc_id": "6132",
+ "loc_data": "{1883,5029,0,0,6}-"
+ },
+ {
+ "npc_id": "6133",
+ "loc_data": "{1883,5026,0,0,6}-"
+ },
+ {
+ "npc_id": "6134",
+ "loc_data": "{1890,5018,0,0,0}-"
+ },
+ {
+ "npc_id": "6135",
+ "loc_data": "{3254,3427,0,1,1}-"
+ },
+ {
+ "npc_id": "6136",
+ "loc_data": "{3077,3250,0,1,0}-"
+ },
+ {
+ "npc_id": "6137",
+ "loc_data": "{2952,3381,0,1,0}-"
+ },
+ {
+ "npc_id": "6138",
+ "loc_data": "{2665,3311,0,0,0}-"
+ },
+ {
+ "npc_id": "6139",
+ "loc_data": "{2734,3484,0,1,1}-"
+ },
+ {
+ "npc_id": "6140",
+ "loc_data": "{2644,2641,0,0,6}-"
+ },
+ {
+ "npc_id": "6141",
+ "loc_data": "{2638,2656,0,0,0}-"
+ },
+ {
+ "npc_id": "6166",
+ "loc_data": "{1904,4279,0,0,0}-"
+ },
+ {
+ "npc_id": "6167",
+ "loc_data": "{1906,4277,0,0,0}-"
+ },
+ {
+ "npc_id": "6168",
+ "loc_data": "{1904,4274,0,0,0}-"
+ },
+ {
+ "npc_id": "6188",
+ "loc_data": "{1901,4271,0,0,0}-{1909,4271,0,0,0}-"
+ },
+ {
+ "npc_id": "6189",
+ "loc_data": "{3016,3516,0,1,7}-"
+ },
+ {
+ "npc_id": "6190",
+ "loc_data": "{1906,4270,0,1,0}-"
+ },
+ {
+ "npc_id": "6200",
+ "loc_data": "{2947,3366,0,0,1}-{2949,3366,0,0,1}-{2946,3366,0,0,1}-{2948,3366,0,0,1}-{2945,3366,0,0,1}-{3010,3353,0,0,1}-{3011,3353,0,0,1}-{3012,3353,0,0,1}-{3013,3353,0,0,1}-{3014,3353,0,0,1}-{3015,3353,0,0,1}-"
+ },
+ {
+ "npc_id": "6202",
+ "loc_data": "{2912,3749,0,0,0}-"
+ },
+ {
+ "npc_id": "6203",
+ "loc_data": "{2924,5322,2,1,4}-"
+ },
+ {
+ "npc_id": "6205",
+ "loc_data": "{2933,5329,2,1,1}-"
+ },
+ {
+ "npc_id": "6210",
+ "loc_data": "{2837,5336,2,1,4}-{2876,5326,2,1,4}-{2838,5336,2,1,4}-{2898,5306,2,1,5}-{2927,5340,2,1,3}-{2884,5325,2,1,3}-{2886,5325,2,1,1}-{2919,5345,2,1,5}-"
+ },
+ {
+ "npc_id": "6211",
+ "loc_data": "{2920,5353,2,1,4}-{2902,5357,2,1,4}-{2885,5315,2,1,4}-{2898,5313,2,1,2}-{2908,5354,2,1,2}-{2924,5354,2,1,6}-{2925,5352,2,1,3}-{2928,5355,2,1,6}-"
+ },
+ {
+ "npc_id": "6212",
+ "loc_data": "{2836,5289,2,1,0}-{2869,5287,2,1,1}-{2858,5267,2,1,6}-{2867,5333,2,1,0}-{2877,5321,2,1,1}-{2872,5318,2,1,2}-{2836,5349,2,1,2}-{2921,5293,1,1,6}-{2894,5286,2,1,7}-{2920,5339,2,1,1}-{2888,5326,2,1,3}-{2896,5312,2,1,4}-{2894,5322,2,1,3}-"
+ },
+ {
+ "npc_id": "6213",
+ "loc_data": "{2862,5290,2,1,1}-{2838,5347,2,1,6}-{2872,5318,2,1,4}-{2875,5313,2,1,4}-{2865,5327,2,1,4}-{2843,5352,2,1,4}-{2886,5293,2,1,5}-{2909,5297,2,1,0}-{2919,5293,1,1,4}-{2922,5295,1,1,0}-{2919,5293,1,1,5}-{2894,5353,2,1,0}-{2908,5346,2,1,6}-{2913,5355,2,1,3}-{2916,5345,2,1,1}-{2919,5349,2,1,2}-{2922,5356,2,1,1}-{2927,5354,2,1,6}-{2928,5350,2,1,4}-{2931,5357,2,1,3}-{2911,5338,2,1,6}-"
+ },
+ {
+ "npc_id": "6214",
+ "loc_data": "{2862,5292,2,1,7}-{2861,5292,2,1,4}-{2864,5319,2,1,7}-{2828,5337,2,1,6}-{2878,5327,2,1,4}-{2853,5327,2,1,4}-{2854,5345,2,1,2}-{2828,5331,2,1,1}-{2919,5284,1,1,0}-{2895,5309,2,1,6}-{2881,5291,2,1,1}-{2924,5292,1,1,6}-{2918,5281,1,1,1}-{2918,5280,1,1,1}-{2884,5312,2,1,2}-{2883,5320,2,1,0}-{2892,5328,2,1,1}-"
+ },
+ {
+ "npc_id": "6215",
+ "loc_data": "{2839,5275,2,1,5}-{2845,5286,2,1,0}-{2832,5288,2,1,6}-{2856,5349,2,1,1}-{2862,5334,2,1,0}-{2862,5337,2,1,4}-{2855,5352,2,1,1}-{2880,5293,2,1,4}-{2926,5345,2,1,7}-{2888,5361,2,1,5}-{2886,5313,2,1,3}-{2881,5320,2,1,3}-{2886,5325,2,1,2}-{2889,5322,2,1,4}-{2919,5359,2,1,0}-{2923,5357,2,1,6}-{2891,5353,2,1,1}-"
+ },
+ {
+ "npc_id": "6216",
+ "loc_data": "{2865,5306,2,1,3}-{2867,5304,2,1,6}-{2871,5281,2,1,1}-{2864,5279,2,1,4}-{2871,5312,2,1,3}-{2888,5290,2,1,1}-"
+ },
+ {
+ "npc_id": "6217",
+ "loc_data": "{2884,5307,2,1,0}-{2899,5304,2,1,3}-{2915,5270,0,1,5}-"
+ },
+ {
+ "npc_id": "6218",
+ "loc_data": "{2856,5267,2,1,7}-{2861,5294,2,1,0}-{2836,5290,2,1,6}-{2858,5266,2,1,1}-{2859,5328,2,1,6}-{2911,5268,0,1,4}-{2916,5269,0,1,1}-{2906,5347,2,1,6}-{2913,5358,2,1,6}-{2887,5318,2,1,4}-{2888,5314,2,1,6}-{2931,5345,2,1,2}-{2903,5353,2,1,4}-{2907,5346,2,1,6}-{2921,5351,2,1,2}-{3044,5347,0,1,2}-{3041,5347,0,1,0}-{3031,5346,0,1,2}-{3023,5346,0,1,6}-{3038,5333,0,1,3}-{3048,5333,0,1,1}-{3054,5345,0,1,3}-{3043,5360,0,1,3}-{3030,5362,0,1,3}-{3040,5341,0,1,4}-"
+ },
+ {
+ "npc_id": "6219",
+ "loc_data": "{2915,5340,2,1,6}-"
+ },
+ {
+ "npc_id": "6220",
+ "loc_data": "{2846,5286,2,1,5}-{2848,5268,2,1,4}-{2931,5356,2,1,3}-{2937,5351,2,1,3}-"
+ },
+ {
+ "npc_id": "6221",
+ "loc_data": "{2906,5354,2,1,7}-{2886,5354,2,1,5}-{2885,5352,2,1,2}-{2901,5362,2,1,1}-{2914,5344,2,1,3}-{2918,5343,2,1,2}-{2918,5361,2,1,0}-{2923,5345,2,1,3}-{2924,5352,2,1,4}-"
+ },
+ {
+ "npc_id": "6222",
+ "loc_data": "{2831,5301,2,1,4}-"
+ },
+ {
+ "npc_id": "6229",
+ "loc_data": "{2841,5285,2,1,3}-{2841,5289,2,1,1}-{2856,5264,2,1,5}-{2842,5282,2,1,6}-"
+ },
+ {
+ "npc_id": "6230",
+ "loc_data": "{2843,5265,2,1,4}-{2851,5273,2,1,3}-{2846,5262,2,1,4}-"
+ },
+ {
+ "npc_id": "6231",
+ "loc_data": "{2870,5265,2,1,0}-{2869,5266,2,1,7}-{2855,5273,2,1,2}-{2840,5263,2,1,3}-{2831,5285,2,1,4}-"
+ },
+ {
+ "npc_id": "6232",
+ "loc_data": "{2872,5261,2,1,4}-{2863,5308,2,1,1}-{2872,5288,2,1,4}-"
+ },
+ {
+ "npc_id": "6233",
+ "loc_data": "{2861,5261,2,1,0}-{2852,5264,2,1,0}-{2865,5263,2,1,6}-"
+ },
+ {
+ "npc_id": "6234",
+ "loc_data": "{2839,5293,2,1,0}-{2842,5264,2,1,4}-{2862,5313,2,1,3}-"
+ },
+ {
+ "npc_id": "6235",
+ "loc_data": "{2864,5270,2,1,3}-{2859,5303,2,1,4}-{2863,5293,2,1,7}-{2862,5286,2,1,1}-{2869,5314,2,1,3}-"
+ },
+ {
+ "npc_id": "6236",
+ "loc_data": "{2854,5271,2,1,6}-{2872,5267,2,1,0}-{2858,5269,2,1,5}-"
+ },
+ {
+ "npc_id": "6237",
+ "loc_data": "{2840,5290,2,1,6}-{2841,5269,2,1,7}-{2833,5292,2,1,3}-"
+ },
+ {
+ "npc_id": "6238",
+ "loc_data": "{2874,5308,2,1,3}-{2851,5276,2,1,2}-{2864,5268,2,1,2}-"
+ },
+ {
+ "npc_id": "6239",
+ "loc_data": "{2824,5216,2,1,7}-{2875,5298,2,1,4}-{2846,5288,2,1,0}-{2845,5281,2,1,1}-"
+ },
+ {
+ "npc_id": "6240",
+ "loc_data": "{2837,5269,2,1,2}-{2860,5300,2,1,1}-{2852,5311,2,1,4}-{2879,5286,2,1,5}-"
+ },
+ {
+ "npc_id": "6241",
+ "loc_data": "{2863,5272,2,1,6}-{2850,5269,2,1,7}-"
+ },
+ {
+ "npc_id": "6242",
+ "loc_data": "{2836,5272,2,1,1}-"
+ },
+ {
+ "npc_id": "6243",
+ "loc_data": "{2848,5275,2,1,0}-{2869,5304,2,1,4}-{2850,5292,2,1,1}-{2857,5300,2,1,3}-{2874,5287,2,1,4}-"
+ },
+ {
+ "npc_id": "6244",
+ "loc_data": "{2847,5299,2,1,6}-{2844,5283,2,1,6}-"
+ },
+ {
+ "npc_id": "6245",
+ "loc_data": "{2861,5299,2,1,4}-{2833,5290,2,1,1}-{2851,5262,2,1,0}-"
+ },
+ {
+ "npc_id": "6246",
+ "loc_data": "{2855,5311,2,1,1}-{2872,5299,2,1,0}-{2856,5284,2,1,4}-{2872,5315,2,1,1}-"
+ },
+ {
+ "npc_id": "6247",
+ "loc_data": "{2894,5265,0,1,2}-"
+ },
+ {
+ "npc_id": "6254",
+ "loc_data": "{2917,5272,0,1,7}-{2898,5295,2,1,4}-{2881,5283,2,1,1}-{2883,5311,2,1,2}-{2894,5301,2,1,3}-{2882,5284,2,1,5}-{2890,5292,2,1,4}-{2896,5296,2,1,2}-{2905,5299,2,1,3}-{2905,5301,2,1,5}-{2921,5283,1,1,1}-{2923,5292,1,1,7}-{2906,5299,0,1,6}-{2910,5297,0,1,6}-{2915,5270,0,1,2}-{2910,5269,0,1,5}-"
+ },
+ {
+ "npc_id": "6255",
+ "loc_data": "{2922,5290,1,1,5}-{2880,5304,2,1,1}-{2884,5311,2,1,2}-{2885,5311,2,1,2}-{2895,5310,2,1,1}-{2884,5280,2,1,3}-{2885,5293,2,1,6}-{2886,5291,2,1,6}-{2894,5285,2,1,3}-{2893,5286,2,1,7}-{2905,5292,2,1,4}-{2908,5297,2,1,4}-{2910,5297,2,1,6}-{2897,5308,2,1,4}-{2919,5299,1,1,1}-{2921,5292,1,1,5}-{2924,5288,1,1,0}-{2923,5287,1,1,1}-{2908,5300,0,1,6}-{2907,5294,0,1,6}-{2923,5293,1,1,5}-{2919,5298,1,1,1}-{2922,5291,1,1,6}-{2917,5285,1,1,0}-{2905,5295,0,1,6}-{2887,5312,2,1,1}-{2886,5313,2,1,0}-"
+ },
+ {
+ "npc_id": "6256",
+ "loc_data": "{2922,5285,1,1,0}-{2886,5295,2,1,1}-{2891,5300,2,1,1}-{2889,5310,2,1,2}-{2887,5299,2,1,6}-{2891,5297,2,1,3}-{2884,5283,2,1,3}-{2885,5286,2,1,3}-{2886,5294,2,1,1}-{2896,5286,2,1,4}-{2908,5302,2,1,1}-{2919,5290,1,1,1}-{2919,5298,1,1,4}-{2918,5298,1,1,4}-{2911,5298,0,1,6}-{2919,5293,1,1,1}-{2917,5294,1,1,2}-{2923,5284,1,1,1}-{2916,5267,0,1,2}-"
+ },
+ {
+ "npc_id": "6257",
+ "loc_data": "{2877,5293,2,1,5}-{2879,5329,2,1,5}-{2913,5267,0,1,6}-{2892,5291,2,1,4}-{2886,5311,2,1,0}-{2888,5305,2,1,3}-{2894,5285,2,1,0}-{2900,5287,2,1,0}-{2905,5302,2,1,1}-{2898,5307,2,1,6}-{2918,5292,1,1,3}-{2924,5286,1,1,0}-{2924,5292,1,1,1}-{2920,5297,1,1,3}-{2924,5285,1,1,1}-{2921,5289,1,1,6}-{2923,5294,1,1,0}-{2922,5285,1,1,3}-{2915,5273,0,1,7}-{2915,5271,0,1,4}-{2895,5313,2,1,6}-"
+ },
+ {
+ "npc_id": "6258",
+ "loc_data": "{2918,5289,1,1,6}-{2884,5287,2,1,0}-{2895,5294,2,1,4}-{2897,5307,2,1,7}-{2918,5298,1,1,5}-{2917,5291,1,1,4}-{2916,5269,0,1,2}-"
+ },
+ {
+ "npc_id": "6259",
+ "loc_data": "{2890,5304,2,1,7}-{2886,5299,2,1,3}-{2891,5297,2,1,5}-{2890,5291,2,1,3}-{2900,5286,2,1,7}-{2905,5303,2,1,1}-{2918,5282,1,1,6}-{2922,5295,1,1,2}-{2905,5297,0,1,6}-{2920,5291,1,1,5}-{2920,5290,1,1,6}-"
+ },
+ {
+ "npc_id": "6260",
+ "loc_data": "{2870,5359,2,1,4}-"
+ },
+ {
+ "npc_id": "6262",
+ "loc_data": "{2873,5356,0,1,1}-{2866,5358,2,1,6}-"
+ },
+ {
+ "npc_id": "6264",
+ "loc_data": "{2870,5354,2,1,4}-"
+ },
+ {
+ "npc_id": "6266",
+ "loc_data": "{2868,5362,2,1,3}-"
+ },
+ {
+ "npc_id": "6268",
+ "loc_data": "{2856,5355,2,1,7}-{2838,5358,2,1,2}-{2841,5319,2,1,7}-{2856,5331,2,1,2}-{2854,5325,2,1,2}-{2873,5323,2,1,6}-{2860,5321,2,1,7}-{2868,5334,2,1,0}-{2856,5328,2,1,6}-{2855,5332,2,1,1}-{2845,5339,2,1,5}-{2831,5320,2,1,3}-{2847,5334,2,1,1}-{2858,5349,2,1,2}-{2829,5339,2,1,6}-{2856,5361,2,1,5}-{2839,5360,2,1,6}-"
+ },
+ {
+ "npc_id": "6269",
+ "loc_data": "{2846,5351,2,1,3}-{2846,5339,2,1,2}-{2840,5327,2,1,1}-{2836,5345,2,1,7}-{2834,5328,2,1,2}-{2857,5359,2,1,4}-{2846,5357,2,1,3}-"
+ },
+ {
+ "npc_id": "6270",
+ "loc_data": "{2845,5336,2,1,2}-{2848,5344,2,1,6}-{2842,5328,2,1,6}-{2844,5349,2,1,2}-{2836,5323,2,1,4}-{2832,5353,2,1,6}-{2848,5358,2,1,7}-"
+ },
+ {
+ "npc_id": "6271",
+ "loc_data": "{2840,5330,2,1,0}-{2859,5328,2,1,6}-{2873,5317,2,1,3}-{2862,5332,2,1,2}-{2869,5332,2,1,6}-"
+ },
+ {
+ "npc_id": "6272",
+ "loc_data": "{2838,5326,2,1,4}-{2870,5313,2,1,1}-{2865,5332,2,1,0}-{2838,5334,2,1,6}-{2837,5353,2,1,7}-"
+ },
+ {
+ "npc_id": "6273",
+ "loc_data": "{2832,5324,2,1,7}-{2864,5325,2,1,2}-{2873,5325,2,1,7}-{2873,5324,2,1,7}-{2865,5336,2,1,6}-{2840,5333,2,1,6}-{2836,5336,2,1,4}-{2838,5354,2,1,6}-"
+ },
+ {
+ "npc_id": "6274",
+ "loc_data": "{2872,5307,2,1,5}-{2858,5325,2,1,4}-{2873,5319,2,1,6}-{2867,5333,2,1,6}-{2866,5333,2,1,0}-{2839,5331,2,1,5}-{2837,5355,2,1,6}-"
+ },
+ {
+ "npc_id": "6275",
+ "loc_data": "{2865,5340,2,1,1}-{2869,5326,2,1,7}-{2875,5318,2,1,1}-{2875,5314,2,1,1}-{2878,5313,2,1,3}-{2879,5322,2,1,3}-{2859,5317,2,1,6}-{2858,5319,2,1,4}-{2878,5320,2,1,0}-{2863,5337,2,1,7}-{2862,5338,2,1,7}-{2867,5341,2,1,6}-{2852,5312,2,1,2}-"
+ },
+ {
+ "npc_id": "6276",
+ "loc_data": "{2856,5360,2,1,7}-{2854,5346,2,1,3}-{2845,5332,2,1,0}-{2845,5344,2,1,3}-{2848,5349,2,1,6}-{2837,5347,2,1,3}-{2835,5324,2,1,2}-{2835,5321,2,1,5}-{2858,5349,2,1,4}-{2830,5339,2,1,3}-{2828,5332,2,1,3}-{2846,5358,2,1,4}-{2855,5356,2,1,7}-"
+ },
+ {
+ "npc_id": "6277",
+ "loc_data": "{2843,5341,2,1,3}-{2843,5331,2,1,3}-{2847,5341,2,1,5}-{2852,5350,2,1,1}-{2844,5341,2,1,6}-{2843,5347,2,1,1}-{2836,5325,2,1,6}-{2826,5335,2,1,2}-{2837,5351,2,1,4}-{2845,5353,2,1,3}-{2840,5361,2,1,3}-"
+ },
+ {
+ "npc_id": "6278",
+ "loc_data": "{2845,5359,2,1,4}-{2830,5318,2,1,3}-{2848,5342,2,1,0}-{2846,5332,2,1,1}-{2843,5320,2,1,3}-{2838,5329,2,1,1}-{2855,5349,2,1,0}-{2837,5342,2,1,1}-{2827,5331,2,1,6}-{2830,5315,2,1,6}-{2845,5352,2,1,6}-{2839,5360,2,1,6}-{2851,5359,2,1,7}-{2860,5353,2,1,6}-{2792,5280,2,1,6}-"
+ },
+ {
+ "npc_id": "6279",
+ "loc_data": "{2857,5315,2,1,6}-{2859,5318,2,1,5}-{2858,5329,2,1,3}-{2879,5326,2,1,4}-"
+ },
+ {
+ "npc_id": "6280",
+ "loc_data": "{2869,5332,2,1,6}-{2871,5313,2,1,2}-{2879,5330,2,1,2}-{2877,5327,2,1,0}-"
+ },
+ {
+ "npc_id": "6281",
+ "loc_data": "{2865,5316,2,1,2}-{2861,5333,2,1,2}-"
+ },
+ {
+ "npc_id": "6282",
+ "loc_data": "{2874,5318,2,1,0}-{2859,5316,2,1,3}-{2878,5329,2,1,2}-{2858,5330,2,1,2}-"
+ },
+ {
+ "npc_id": "6283",
+ "loc_data": "{2877,5326,2,1,2}-{2857,5328,2,1,3}-{2861,5315,2,1,7}-"
+ },
+ {
+ "npc_id": "6346",
+ "loc_data": "{2799,3186,0,1,7}-{2797,3169,0,0,0}-{2793,3161,0,1,3}-"
+ },
+ {
+ "npc_id": "6347",
+ "loc_data": "{2799,3167,0,0,0}-{2787,3188,0,1,1}-"
+ },
+ {
+ "npc_id": "6348",
+ "loc_data": "{2793,3158,0,1,3}-{2798,3154,0,1,4}-{2796,3189,0,1,0}-"
+ },
+ {
+ "npc_id": "6349",
+ "loc_data": "{2797,3186,0,1,6}-{2793,3161,0,1,0}-"
+ },
+ {
+ "npc_id": "6350",
+ "loc_data": "{2798,3182,0,1,7}-{2793,3161,0,1,1}-"
+ },
+ {
+ "npc_id": "6351",
+ "loc_data": "{3041,3951,0,1,0}-{3043,3958,0,1,0}-"
+ },
+ {
+ "npc_id": "6352",
+ "loc_data": "{3039,3955,0,1,0}-{3043,3951,0,1,0}-"
+ },
+ {
+ "npc_id": "6353",
+ "loc_data": "{3040,3955,0,1,0}-{3039,3950,0,1,0}-"
+ },
+ {
+ "npc_id": "6354",
+ "loc_data": "{3041,3950,0,1,0}-{3041,3956,0,1,0}-"
+ },
+ {
+ "npc_id": "6355",
+ "loc_data": "{3043,3950,0,1,0}-{3043,3956,0,1,0}-"
+ },
+ {
+ "npc_id": "6356",
+ "loc_data": "{3041,3953,0,1,0}-"
+ },
+ {
+ "npc_id": "6357",
+ "loc_data": "{3359,2969,0,1,3}-"
+ },
+ {
+ "npc_id": "6362",
+ "loc_data": "{3270,4856,0,1,3}-"
+ },
+ {
+ "npc_id": "6363",
+ "loc_data": "{3190,5523,0,1,3}-{3194,5530,0,1,3}-{3251,5455,0,1,4}-{3258,5456,0,1,6}-{3257,5451,0,1,6}-{3257,5464,0,1,2}-{3256,5473,0,1,2}-{3244,5469,0,1,1}-{3225,5485,0,1,5}-{3218,5482,0,1,7}-{3219,5486,0,1,4}-{3207,5461,0,1,6}-{3208,5458,0,1,3}-{3219,5528,0,1,2}-{3223,5520,0,1,3}-{3225,5511,0,1,0}-{3236,5511,0,1,6}-{3232,5523,0,1,0}-{3239,5530,0,1,4}-{3233,5546,0,1,3}-{3222,5539,0,1,5}-{3269,4829,0,1,3}-{3271,4823,0,1,2}-{3283,4809,0,1,3}-"
+ },
+ {
+ "npc_id": "6364",
+ "loc_data": "{3188,5529,0,1,3}-{3194,5531,0,1,1}-{3188,5527,0,1,3}-{3222,5486,0,1,3}-{3221,5482,0,1,4}-{3212,5459,0,1,6}-{3210,5462,0,1,2}-{3234,5510,0,1,6}-{3271,4809,0,1,3}-"
+ },
+ {
+ "npc_id": "6365",
+ "loc_data": "{3267,4817,0,1,4}-{3290,4803,0,1,3}-"
+ },
+ {
+ "npc_id": "6367",
+ "loc_data": "{3207,5466,0,1,6}-{3223,5462,0,1,1}-{3237,5524,0,1,6}-{3229,5510,0,1,4}-{3276,4808,0,1,3}-{3291,4812,0,1,6}-"
+ },
+ {
+ "npc_id": "6368",
+ "loc_data": "{3226,5458,0,1,3}-{3222,5470,0,1,6}-{3238,5541,0,1,1}-{3226,5540,0,1,7}-{3222,5522,0,1,7}-"
+ },
+ {
+ "npc_id": "6369",
+ "loc_data": "{3268,4825,0,1,6}-{3268,4809,0,1,4}-{3288,4803,0,1,6}-{3298,4810,0,1,4}-"
+ },
+ {
+ "npc_id": "6376",
+ "loc_data": "{2925,2976,0,1,1}-{2909,2978,0,1,5}-"
+ },
+ {
+ "npc_id": "6377",
+ "loc_data": "{2920,2973,0,1,6}-{2919,2976,0,1,6}-{2910,2978,0,1,7}-"
+ },
+ {
+ "npc_id": "6379",
+ "loc_data": "{2894,2995,0,0,0}-{2909,2970,0,0,0}-{3303,5485,0,1,1}-{3320,5494,0,1,4}-{3313,5490,0,1,4}-{3315,5484,0,1,3}-{3323,5471,0,1,6}-{3319,5471,0,1,4}-{3323,5477,0,1,0}-{3310,5484,0,1,4}-{3313,5488,0,1,6}-{3309,5481,0,1,1}-{3320,5495,0,1,0}-"
+ },
+ {
+ "npc_id": "6380",
+ "loc_data": "{2883,2994,0,0,0}-{2882,2994,0,0,0}-{3319,5490,0,1,5}-{3298,5486,0,1,3}-{3312,5480,0,1,4}-{3315,5480,0,1,1}-{3308,5482,0,1,2}-{3321,5477,0,1,0}-{3317,5470,0,1,6}-{3324,5472,0,1,6}-{3311,5482,0,1,0}-"
+ },
+ {
+ "npc_id": "6383",
+ "loc_data": "{2888,3001,0,0,0}-{2891,3002,0,0,0}-{2890,2998,0,0,0}-{2887,2994,0,0,0}-{2901,2991,0,0,0}-{2905,2990,0,0,0}-{2886,2989,0,0,0}-{2927,2979,0,0,0}-{2926,2973,0,0,0}-{2919,2973,0,0,0}-{2919,2976,0,0,0}-{2920,2979,0,0,0}-"
+ },
+ {
+ "npc_id": "6386",
+ "loc_data": "{2683,3326,0,0,0}-"
+ },
+ {
+ "npc_id": "6387",
+ "loc_data": "{3275,4808,0,1,3}-{3276,4808,0,1,4}-"
+ },
+ {
+ "npc_id": "6388",
+ "loc_data": "{3369,2999,0,1,7}-{3368,2995,0,1,6}-{3362,2997,0,1,3}-{3361,2988,0,1,2}-{3367,2988,0,1,7}-{3379,2983,0,1,1}-"
+ },
+ {
+ "npc_id": "6390",
+ "loc_data": "{1707,4814,0,0,6}-"
+ },
+ {
+ "npc_id": "6394",
+ "loc_data": "{2703,5366,0,0,0}-"
+ },
+ {
+ "npc_id": "6396",
+ "loc_data": "{2791,4279,0,0,0}-"
+ },
+ {
+ "npc_id": "6405",
+ "loc_data": "{2799,4260,0,1,0}-"
+ },
+ {
+ "npc_id": "6406",
+ "loc_data": "{2765,4267,0,1,0}-"
+ },
+ {
+ "npc_id": "6407",
+ "loc_data": "{2802,4246,0,1,0}-"
+ },
+ {
+ "npc_id": "6408",
+ "loc_data": "{2770,4238,0,1,0}-"
+ },
+ {
+ "npc_id": "6409",
+ "loc_data": "{2787,4262,0,1,0}-{2792,4275,0,1,0}-"
+ },
+ {
+ "npc_id": "6410",
+ "loc_data": "{2766,4257,0,1,0}-"
+ },
+ {
+ "npc_id": "6416",
+ "loc_data": "{2801,4258,0,1,0}-"
+ },
+ {
+ "npc_id": "6417",
+ "loc_data": "{2765,4264,0,1,0}-{2777,4260,0,1,0}-"
+ },
+ {
+ "npc_id": "6418",
+ "loc_data": "{2799,4243,0,1,0}-"
+ },
+ {
+ "npc_id": "6419",
+ "loc_data": "{2771,4237,0,1,0}-"
+ },
+ {
+ "npc_id": "6420",
+ "loc_data": "{2796,4277,0,1,0}-"
+ },
+ {
+ "npc_id": "6421",
+ "loc_data": "{2768,4254,0,1,0}-"
+ },
+ {
+ "npc_id": "6427",
+ "loc_data": "{2802,4259,0,1,0}-"
+ },
+ {
+ "npc_id": "6428",
+ "loc_data": "{2768,4268,0,1,0}-"
+ },
+ {
+ "npc_id": "6429",
+ "loc_data": "{2776,4252,0,1,0}-{2805,4242,0,1,0}-"
+ },
+ {
+ "npc_id": "6430",
+ "loc_data": "{2769,4236,0,1,0}-"
+ },
+ {
+ "npc_id": "6431",
+ "loc_data": "{2792,4260,0,1,0}-{2796,4275,0,1,0}-"
+ },
+ {
+ "npc_id": "6432",
+ "loc_data": "{2766,4255,0,1,0}-"
+ },
+ {
+ "npc_id": "6438",
+ "loc_data": "{2790,4254,0,1,0}-{2800,4256,0,1,0}-"
+ },
+ {
+ "npc_id": "6439",
+ "loc_data": "{2766,4265,0,1,0}-"
+ },
+ {
+ "npc_id": "6440",
+ "loc_data": "{2789,4248,0,1,0}-{2802,4244,0,1,0}-"
+ },
+ {
+ "npc_id": "6441",
+ "loc_data": "{2771,4241,0,1,0}-{2777,4252,0,1,0}-"
+ },
+ {
+ "npc_id": "6442",
+ "loc_data": "{2795,4273,0,1,0}-"
+ },
+ {
+ "npc_id": "6443",
+ "loc_data": "{2767,4252,0,1,0}-{2776,4250,0,1,0}-"
+ },
+ {
+ "npc_id": "6449",
+ "loc_data": "{2792,4252,0,1,0}-{2800,4254,0,1,0}-"
+ },
+ {
+ "npc_id": "6450",
+ "loc_data": "{2764,4266,0,1,0}-{2781,4261,0,1,0}-"
+ },
+ {
+ "npc_id": "6451",
+ "loc_data": "{2802,4243,0,1,0}-"
+ },
+ {
+ "npc_id": "6452",
+ "loc_data": "{2772,4235,0,1,0}-"
+ },
+ {
+ "npc_id": "6453",
+ "loc_data": "{2797,4272,0,1,0}-"
+ },
+ {
+ "npc_id": "6454",
+ "loc_data": "{2765,4253,0,1,0}-{2779,4256,0,1,0}-"
+ },
+ {
+ "npc_id": "6458",
+ "loc_data": "{2784,4249,0,1,0}-"
+ },
+ {
+ "npc_id": "6459",
+ "loc_data": "{2778,4264,0,1,0}-{2784,4252,0,1,0}-"
+ },
+ {
+ "npc_id": "6460",
+ "loc_data": "{2783,4251,0,1,0}-{2789,4264,0,1,0}-{2801,4252,0,1,0}-"
+ },
+ {
+ "npc_id": "6461",
+ "loc_data": "{2787,4250,0,1,0}-{2791,4249,0,1,0}-"
+ },
+ {
+ "npc_id": "6462",
+ "loc_data": "{2785,4248,0,1,0}-{2786,4251,0,1,0}-{2801,4242,0,1,0}-"
+ },
+ {
+ "npc_id": "6463",
+ "loc_data": "{2773,4238,0,1,0}-{2779,4248,0,1,0}-{2785,4250,0,1,0}-"
+ },
+ {
+ "npc_id": "6464",
+ "loc_data": "{2796,4267,0,1,0}-"
+ },
+ {
+ "npc_id": "6465",
+ "loc_data": "{2764,4251,0,1,0}-"
+ },
+ {
+ "npc_id": "6482",
+ "loc_data": "{2801,4260,0,0,0}-"
+ },
+ {
+ "npc_id": "6483",
+ "loc_data": "{2804,4246,0,0,0}-"
+ },
+ {
+ "npc_id": "6484",
+ "loc_data": "{2795,4276,0,0,0}-"
+ },
+ {
+ "npc_id": "6485",
+ "loc_data": "{2766,4250,0,0,0}-"
+ },
+ {
+ "npc_id": "6486",
+ "loc_data": "{2774,4236,0,0,0}-"
+ },
+ {
+ "npc_id": "6487",
+ "loc_data": "{2765,4268,0,0,0}-"
+ },
+ {
+ "npc_id": "6488",
+ "loc_data": "{2784,4255,1,0,0}-"
+ },
+ {
+ "npc_id": "6489",
+ "loc_data": "{2787,4266,0,0,0}-"
+ },
+ {
+ "npc_id": "6498",
+ "loc_data": "{2796,4256,0,1,0}-"
+ },
+ {
+ "npc_id": "6499",
+ "loc_data": "{2793,4247,0,1,0}-"
+ },
+ {
+ "npc_id": "6500",
+ "loc_data": "{2793,4265,0,1,0}-"
+ },
+ {
+ "npc_id": "6501",
+ "loc_data": "{2772,4256,0,1,0}-"
+ },
+ {
+ "npc_id": "6502",
+ "loc_data": "{2775,4247,0,1,0}-"
+ },
+ {
+ "npc_id": "6503",
+ "loc_data": "{2775,4265,0,1,0}-"
+ },
+ {
+ "npc_id": "6521",
+ "loc_data": "{3161,3475,0,0,6}-"
+ },
+ {
+ "npc_id": "6522",
+ "loc_data": "{3168,3475,0,0,6}-"
+ },
+ {
+ "npc_id": "6523",
+ "loc_data": "{3173,3498,0,0,1}-"
+ },
+ {
+ "npc_id": "6524",
+ "loc_data": "{3156,3481,0,0,1}-"
+ },
+ {
+ "npc_id": "6525",
+ "loc_data": "{3175,3481,0,0,1}-"
+ },
+ {
+ "npc_id": "6526",
+ "loc_data": "{3152,3490,0,0,1}-"
+ },
+ {
+ "npc_id": "6527",
+ "loc_data": "{3154,3498,0,0,1}-"
+ },
+ {
+ "npc_id": "6528",
+ "loc_data": "{3165,3491,0,0,1}-"
+ },
+ {
+ "npc_id": "6529",
+ "loc_data": "{3164,3488,0,0,6}-"
+ },
+ {
+ "npc_id": "6530",
+ "loc_data": "{3164,3491,0,0,1}-"
+ },
+ {
+ "npc_id": "6531",
+ "loc_data": "{3165,3488,0,0,6}-"
+ },
+ {
+ "npc_id": "6532",
+ "loc_data": "{3163,3489,0,0,3}-"
+ },
+ {
+ "npc_id": "6533",
+ "loc_data": "{3166,3489,0,0,4}-"
+ },
+ {
+ "npc_id": "6534",
+ "loc_data": "{3166,3490,0,0,4}-"
+ },
+ {
+ "npc_id": "6535",
+ "loc_data": "{3163,3490,0,0,3}-"
+ },
+ {
+ "npc_id": "6538",
+ "loc_data": "{3189,3690,0,0,3}-"
+ },
+ {
+ "npc_id": "6731",
+ "loc_data": "{2655,5615,0,1,4}-"
+ },
+ {
+ "npc_id": "6750",
+ "loc_data": "{2577,3078,0,1,3}-"
+ },
+ {
+ "npc_id": "6753",
+ "loc_data": "{3381,2816,1,1,0}-{3061,4672,1,1,0}-"
+ },
+ {
+ "npc_id": "6754",
+ "loc_data": "{3386,2824,1,1,0}-{3066,4680,1,1,0}-"
+ },
+ {
+ "npc_id": "6755",
+ "loc_data": "{3382,2820,1,1,0}-{3062,4676,1,1,0}-"
+ },
+ {
+ "npc_id": "6756",
+ "loc_data": "{3384,2822,1,1,0}-{3064,4678,1,1,0}-"
+ },
+ {
+ "npc_id": "6761",
+ "loc_data": "{3424,2828,1,1,3}-{3430,2835,1,1,3}-{3436,2830,1,1,3}-"
+ },
+ {
+ "npc_id": "6762",
+ "loc_data": "{3420,2829,1,1,3}-{3429,2827,1,1,3}-{3432,2832,1,1,3}-"
+ },
+ {
+ "npc_id": "6763",
+ "loc_data": "{3427,2832,1,1,3}-{3432,2828,1,1,3}-{3435,2835,1,1,3}-"
+ },
+ {
+ "npc_id": "6764",
+ "loc_data": "{3415,2840,1,1,0}-{3426,2852,1,1,0}-{3439,2857,1,1,0}-"
+ },
+ {
+ "npc_id": "6765",
+ "loc_data": "{3418,2851,1,1,0}-{3432,2854,1,1,0}-"
+ },
+ {
+ "npc_id": "6766",
+ "loc_data": "{3406,2837,1,1,0}-{3434,2848,1,1,0}-"
+ },
+ {
+ "npc_id": "6767",
+ "loc_data": "{3409,2844,1,1,0}-{3421,2855,1,1,0}-"
+ },
+ {
+ "npc_id": "6768",
+ "loc_data": "{3414,2844,1,1,0}-{3439,2851,1,1,0}-"
+ },
+ {
+ "npc_id": "6773",
+ "loc_data": "{3358,9233,1,1,0}-{3363,9246,1,1,0}-{3369,9233,1,1,0}-{3373,9246,1,1,0}-{3377,9244,1,1,0}-{3381,9225,1,1,0}-{3389,9241,1,1,0}-{3391,9237,1,1,0}-{3391,9230,1,1,0}-{3439,2808,0,1,0}-"
+ },
+ {
+ "npc_id": "6774",
+ "loc_data": "{3361,9238,1,1,0}-{3363,9241,1,1,0}-{3373,9241,1,1,0}-{3374,9225,1,1,0}-{3379,9230,1,1,0}-{3383,9232,1,1,0}-{3387,9229,1,1,0}-{3389,9236,1,1,0}-{3435,2808,0,1,2}-"
+ },
+ {
+ "npc_id": "6776",
+ "loc_data": "{3441,2810,0,1,0}-{3445,2813,0,1,0}-"
+ },
+ {
+ "npc_id": "6777",
+ "loc_data": "{3432,2810,0,1,4}-"
+ },
+ {
+ "npc_id": "6778",
+ "loc_data": "{3440,2806,0,1,0}-"
+ },
+ {
+ "npc_id": "6779",
+ "loc_data": "{3337,2762,0,1,0}-{3340,2767,0,1,0}-{3345,2763,0,1,0}-{3350,2766,0,1,0}-{3352,2761,0,1,0}-{3356,2769,0,1,0}-{3358,2758,0,1,0}-{3359,2763,0,1,0}-{3365,2769,0,1,0}-{3368,2764,0,1,0}-{3375,2762,0,1,0}-{3392,2759,0,1,2}-{3408,2763,0,1,7}-{3410,2786,0,1,2}-{3420,2778,0,1,6}-{3427,2792,0,1,6}-{3429,2802,0,1,4}-"
+ },
+ {
+ "npc_id": "6780",
+ "loc_data": "{3366,9254,1,1,6}-{3398,9232,1,1,0}-{3409,9230,1,1,0}-"
+ },
+ {
+ "npc_id": "6781",
+ "loc_data": "{3363,9231,1,1,0}-{3369,9254,1,1,6}-{3370,9226,1,1,0}-{3397,9225,1,1,0}-{3408,9226,1,1,0}-"
+ },
+ {
+ "npc_id": "6785",
+ "loc_data": "{3442,9245,1,0,1}-"
+ },
+ {
+ "npc_id": "6786",
+ "loc_data": "{3409,2812,1,0,0}-"
+ },
+ {
+ "npc_id": "6787",
+ "loc_data": "{3408,2813,1,0,0}-"
+ },
+ {
+ "npc_id": "6788",
+ "loc_data": "{3368,9263,1,0,6}-"
+ },
+ {
+ "npc_id": "6891",
+ "loc_data": "{2598,3272,0,1,0}-"
+ },
+ {
+ "npc_id": "6893",
+ "loc_data": "{2926,3435,0,1,2}-"
+ },
+ {
+ "npc_id": "6894",
+ "loc_data": "{2928,3432,0,1,0}-"
+ },
+ {
+ "npc_id": "6895",
+ "loc_data": "{2927,3431,0,1,0}-"
+ },
+ {
+ "npc_id": "6896",
+ "loc_data": "{2573,3082,0,1,2}-"
+ },
+ {
+ "npc_id": "6897",
+ "loc_data": "{2574,3083,0,1,0}-"
+ },
+ {
+ "npc_id": "6917",
+ "loc_data": "{2916,3082,0,0,0}-{2917,3089,0,0,0}-{2912,3090,0,0,0}-"
+ },
+ {
+ "npc_id": "6918",
+ "loc_data": "{2917,3088,0,1,4}-{2917,3092,0,1,4}-"
+ },
+ {
+ "npc_id": "6921",
+ "loc_data": "{2954,3273,0,1,6}-{2974,3448,0,1,4}-{2971,3442,0,1,6}-{2968,3451,0,1,1}-{2967,3439,0,1,4}-{2965,3451,0,1,5}-"
+ },
+ {
+ "npc_id": "6942",
+ "loc_data": "{2890,3100,0,1,4}-"
+ },
+ {
+ "npc_id": "6944",
+ "loc_data": "{2855,3028,0,0,0}-{2841,3039,0,0,0}-{2838,3031,0,0,0}-{2836,3014,0,0,0}-{2839,3022,0,0,0}-"
+ },
+ {
+ "npc_id": "6962",
+ "loc_data": "{2842,5222,0,1,6}-"
+ },
+ {
+ "npc_id": "6971",
+ "loc_data": "{2926,3443,0,0,5}-"
+ },
+ {
+ "npc_id": "6972",
+ "loc_data": "{2922,3482,0,1,0}-"
+ },
+ {
+ "npc_id": "6973",
+ "loc_data": "{2893,3419,0,1,0}-"
+ },
+ {
+ "npc_id": "6974",
+ "loc_data": "{2897,3419,0,1,0}-"
+ },
+ {
+ "npc_id": "6975",
+ "loc_data": "{2928,3480,0,1,0}-{2932,3485,0,1,0}-"
+ },
+ {
+ "npc_id": "6976",
+ "loc_data": "{2897,3432,1,1,0}-{2884,3418,0,1,0}-{2884,3434,0,1,0}-{2902,3449,0,1,0}-"
+ },
+ {
+ "npc_id": "6977",
+ "loc_data": "{2890,3435,0,1,0}-"
+ },
+ {
+ "npc_id": "6978",
+ "loc_data": "{2896,3437,0,1,0}-{2917,3446,0,1,0}-"
+ },
+ {
+ "npc_id": "6979",
+ "loc_data": "{2888,3448,0,1,0}-"
+ },
+ {
+ "npc_id": "6981",
+ "loc_data": "{2883,3431,0,1,0}-{2900,3449,0,1,0}-"
+ },
+ {
+ "npc_id": "6982",
+ "loc_data": "{2896,3429,0,1,0}-{2918,3485,0,1,0}-"
+ },
+ {
+ "npc_id": "6983",
+ "loc_data": "{2908,3441,0,1,0}-{2926,3488,0,1,0}-"
+ },
+ {
+ "npc_id": "6985",
+ "loc_data": "{2894,3438,0,1,0}-{2913,3451,0,1,0}-"
+ },
+ {
+ "npc_id": "6986",
+ "loc_data": "{2887,3441,0,1,0}-"
+ },
+ {
+ "npc_id": "6987",
+ "loc_data": "{2894,3445,0,1,0}-"
+ },
+ {
+ "npc_id": "6996",
+ "loc_data": "{3169,3266,0,0,3}-{3173,3274,0,0,3}-{3259,3206,0,0,3}-{3259,3204,0,0,3}-{2689,3598,0,0,4}-"
+ },
+ {
+ "npc_id": "6997",
+ "loc_data": "{3002,3257,0,0,0}-{3007,3261,0,0,0}-{3058,3429,0,0,0}-{3059,3420,0,0,0}-{3059,3425,0,0,0}-{3049,3429,0,0,0}-"
+ },
+ {
+ "npc_id": "7003",
+ "loc_data": "{2582,9895,0,1,7}-{3230,5493,0,1,1}-{3224,5497,0,1,5}-{3253,5535,0,1,7}-"
+ },
+ {
+ "npc_id": "7004",
+ "loc_data": "{2581,9891,0,1,2}-{3225,5495,0,1,4}-{3256,5540,0,1,4}-{3247,5536,0,1,6}-"
+ },
+ {
+ "npc_id": "7005",
+ "loc_data": "{2487,2924,0,1,0}-"
+ },
+ {
+ "npc_id": "7009",
+ "loc_data": "{3282,3467,0,0,0}-"
+ },
+ {
+ "npc_id": "7010",
+ "loc_data": "{2204,3229,0,1,3}-{2204,3229,0,1,3}-{2204,3229,0,1,3}-{2243,3200,0,1,3}-{2268,3239,0,1,3}-{2268,3239,0,1,3}-{2268,3239,0,1,3}-{2261,3260,0,1,3}-{2261,3260,0,1,3}-{2261,3260,0,1,3}-"
+ },
+ {
+ "npc_id": "7011",
+ "loc_data": "{2243,3200,0,1,3}-{2268,3239,0,1,3}-{2261,3260,0,1,3}-{2261,3260,0,1,3}-"
+ },
+ {
+ "npc_id": "7012",
+ "loc_data": "{2226,3143,0,1,3}-{2226,3143,0,1,3}-{2226,3143,0,1,3}-{2223,3146,0,1,3}-{2223,3146,0,1,3}-{2180,3201,0,1,3}-{2180,3201,0,1,3}-{2182,3204,0,1,3}-{2288,3147,0,1,3}-{2288,3147,0,1,3}-{2288,3147,0,1,3}-{2247,3187,0,1,3}-{2247,3187,0,1,3}-"
+ },
+ {
+ "npc_id": "7014",
+ "loc_data": "{2226,3143,0,1,3}-{2180,3201,0,1,3}-{2288,3147,0,1,3}-{2247,3187,0,1,3}-"
+ },
+ {
+ "npc_id": "7021",
+ "loc_data": "{2510,2822,0,1,3}-{2511,2823,0,1,4}-{2509,2825,0,1,6}-"
+ },
+ {
+ "npc_id": "7022",
+ "loc_data": "{2503,2821,0,1,1}-{2500,2818,0,1,4}-{2503,2819,0,1,3}-"
+ },
+ {
+ "npc_id": "7023",
+ "loc_data": "{2552,2821,0,1,4}-"
+ },
+ {
+ "npc_id": "7024",
+ "loc_data": "{2523,2823,0,1,1}-"
+ },
+ {
+ "npc_id": "7025",
+ "loc_data": "{2537,2820,0,1,1}-"
+ },
+ {
+ "npc_id": "7026",
+ "loc_data": "{2543,2822,0,1,1}-"
+ },
+ {
+ "npc_id": "7027",
+ "loc_data": "{2609,2863,0,1,0}-"
+ },
+ {
+ "npc_id": "7028",
+ "loc_data": "{2610,2865,0,1,0}-"
+ },
+ {
+ "npc_id": "7029",
+ "loc_data": "{2611,2862,0,1,0}-"
+ },
+ {
+ "npc_id": "7030",
+ "loc_data": "{2611,2864,0,1,0}-"
+ },
+ {
+ "npc_id": "7031",
+ "loc_data": "{2588,2801,0,1,1}-{2566,2820,0,1,5}-{2575,2818,0,1,4}-{2578,2819,0,1,4}-{2587,2819,0,1,7}-{2595,2821,0,1,4}-{2595,2826,0,1,0}-{2562,2819,0,1,6}-{2565,2828,0,1,0}-{2573,2825,0,1,1}-{2578,2820,0,1,6}-{2584,2822,0,1,4}-{2590,2831,0,1,4}-{2594,2823,0,1,4}-{2488,2768,0,1,1}-{2499,2820,0,1,4}-{2511,2819,0,1,3}-{2525,2820,0,1,0}-{2527,2818,0,1,3}-{2542,2819,0,1,4}-{2551,2817,0,1,3}-{2554,2819,0,1,3}-{2559,2819,0,1,4}-{2503,2824,0,1,3}-{2509,2822,0,1,4}-{2518,2825,0,1,7}-{2526,2822,0,1,1}-{2547,2822,0,1,4}-{2557,2826,0,1,4}-{2502,2823,0,1,4}-{2513,2820,0,1,7}-{2527,2819,0,1,4}-{2529,2818,0,1,6}-{2541,2822,0,1,3}-{2549,2817,0,1,2}-{2557,2818,0,1,2}-"
+ },
+ {
+ "npc_id": "7032",
+ "loc_data": "{2539,2838,0,1,1}-"
+ },
+ {
+ "npc_id": "7033",
+ "loc_data": "{2541,2837,0,1,1}-"
+ },
+ {
+ "npc_id": "7034",
+ "loc_data": "{2536,2839,0,1,1}-"
+ },
+ {
+ "npc_id": "7035",
+ "loc_data": "{2542,2839,0,1,1}-"
+ },
+ {
+ "npc_id": "7036",
+ "loc_data": "{2538,2841,0,1,1}-"
+ },
+ {
+ "npc_id": "7039",
+ "loc_data": "{2560,2822,0,1,1}-{2570,2823,0,1,1}-{2582,2824,0,1,6}-{2588,2828,0,1,4}-{2503,2824,0,1,4}-{2518,2824,0,1,4}-{2534,2821,0,1,1}-{2548,2823,0,1,4}-"
+ },
+ {
+ "npc_id": "7040",
+ "loc_data": "{2562,2863,0,1,4}-{2617,5539,0,1,4}-"
+ },
+ {
+ "npc_id": "7041",
+ "loc_data": "{2562,2863,0,1,4}-{2616,5540,0,1,4}-"
+ },
+ {
+ "npc_id": "7042",
+ "loc_data": "{2605,5540,0,1,6}-{2551,2863,0,1,6}-"
+ },
+ {
+ "npc_id": "7043",
+ "loc_data": "{2607,5539,0,1,6}-{2553,2862,0,1,6}-"
+ },
+ {
+ "npc_id": "7044",
+ "loc_data": "{2467,2933,0,0,4}-{2470,2937,0,0,4}-{2445,2897,0,0,4}-{2444,2894,0,0,4}-"
+ },
+ {
+ "npc_id": "7045",
+ "loc_data": "{2460,2922,0,0,4}-{2463,2928,0,0,4}-"
+ },
+ {
+ "npc_id": "7046",
+ "loc_data": "{3364,3800,0,0,4}-{3368,3811,0,0,4}-{3347,3814,0,0,4}-{3363,3816,0,0,4}-{2460,2925,0,0,4}-"
+ },
+ {
+ "npc_id": "7047",
+ "loc_data": "{2611,5513,0,0,1}-{2557,2836,0,1,1}-"
+ },
+ {
+ "npc_id": "7048",
+ "loc_data": "{2599,5513,0,0,0}-{2545,2836,0,0,0}-"
+ },
+ {
+ "npc_id": "7049",
+ "loc_data": "{2553,2839,0,0,4}-{2553,2836,0,0,4}-"
+ },
+ {
+ "npc_id": "7051",
+ "loc_data": "{2547,2852,0,1,0}-"
+ },
+ {
+ "npc_id": "7052",
+ "loc_data": "{2571,2855,0,1,3}-"
+ },
+ {
+ "npc_id": "7054",
+ "loc_data": "{2560,2851,0,0,1}-"
+ },
+ {
+ "npc_id": "7055",
+ "loc_data": "{2559,2851,0,0,1}-"
+ },
+ {
+ "npc_id": "7056",
+ "loc_data": "{2560,2851,0,1,6}-{2613,5528,0,0,6}-"
+ },
+ {
+ "npc_id": "7057",
+ "loc_data": "{2596,2845,0,1,0}-"
+ },
+ {
+ "npc_id": "7062",
+ "loc_data": "{2571,2840,0,1,4}-"
+ },
+ {
+ "npc_id": "7065",
+ "loc_data": "{2621,2857,0,1,3}-"
+ },
+ {
+ "npc_id": "7066",
+ "loc_data": "{2619,2856,0,1,3}-"
+ },
+ {
+ "npc_id": "7067",
+ "loc_data": "{2572,5519,0,0,6}-{2518,2842,0,1,0}-"
+ },
+ {
+ "npc_id": "7068",
+ "loc_data": "{2585,5527,0,0,6}-{2531,2850,0,1,6}-"
+ },
+ {
+ "npc_id": "7069",
+ "loc_data": "{2613,5535,0,0,6}-{2559,2858,0,1,0}-"
+ },
+ {
+ "npc_id": "7070",
+ "loc_data": "{2581,2866,0,1,6}-"
+ },
+ {
+ "npc_id": "7071",
+ "loc_data": "{2598,2864,0,1,6}-"
+ },
+ {
+ "npc_id": "7072",
+ "loc_data": "{2517,2840,0,1,6}-"
+ },
+ {
+ "npc_id": "7073",
+ "loc_data": "{2533,2848,0,1,6}-"
+ },
+ {
+ "npc_id": "7074",
+ "loc_data": "{2556,2858,0,1,6}-"
+ },
+ {
+ "npc_id": "7075",
+ "loc_data": "{2583,2865,0,1,6}-"
+ },
+ {
+ "npc_id": "7076",
+ "loc_data": "{2596,2865,0,1,6}-"
+ },
+ {
+ "npc_id": "7077",
+ "loc_data": "{2617,2856,0,1,3}-"
+ },
+ {
+ "npc_id": "7078",
+ "loc_data": "{2451,2857,0,1,0}-{2453,2874,0,1,0}-{2475,2868,0,1,0}-{2477,2832,0,1,0}-{2475,2896,0,1,0}-{2476,2883,0,1,0}-{2502,2838,0,1,0}-"
+ },
+ {
+ "npc_id": "7079",
+ "loc_data": "{2451,2849,0,1,0}-{2463,2872,0,1,0}-{2470,2853,0,1,0}-{2487,2837,0,1,0}-{2477,2903,0,1,0}-{2478,2907,0,1,0}-{2501,2851,0,1,0}-"
+ },
+ {
+ "npc_id": "7080",
+ "loc_data": "{2562,5530,0,0,6}-{2456,2867,0,1,0}-{2457,2836,0,1,0}-{2484,2873,0,1,0}-{2487,2856,0,1,0}-{2480,2916,0,1,0}-{2492,2888,0,1,0}-{2508,2853,0,1,0}-"
+ },
+ {
+ "npc_id": "7081",
+ "loc_data": "{2446,2869,0,1,0}-{2451,2828,0,1,0}-{2467,2860,0,1,0}-{2487,2844,0,1,0}-{2480,2892,0,1,0}-{2484,2917,0,1,0}-{2499,2860,0,1,0}-"
+ },
+ {
+ "npc_id": "7082",
+ "loc_data": "{2569,5541,0,0,6}-{2440,2858,0,1,0}-{2459,2859,0,1,0}-{2471,2839,0,1,0}-{2482,2863,0,1,0}-{2483,2883,0,1,0}-{2491,2901,0,1,0}-{2516,2858,0,1,0}-"
+ },
+ {
+ "npc_id": "7091",
+ "loc_data": "{2609,2863,0,0,0}-"
+ },
+ {
+ "npc_id": "7092",
+ "loc_data": "{2610,2865,0,0,0}-"
+ },
+ {
+ "npc_id": "7093",
+ "loc_data": "{2611,2862,0,0,0}-"
+ },
+ {
+ "npc_id": "7094",
+ "loc_data": "{2611,2864,0,0,0}-"
+ },
+ {
+ "npc_id": "7095",
+ "loc_data": "{2609,2863,0,0,0}-{2610,2862,0,0,0}-"
+ },
+ {
+ "npc_id": "7096",
+ "loc_data": "{2610,2865,0,0,0}-{2605,2866,0,0,0}-"
+ },
+ {
+ "npc_id": "7097",
+ "loc_data": "{2611,2862,0,0,0}-{2607,2867,0,0,0}-"
+ },
+ {
+ "npc_id": "7098",
+ "loc_data": "{2611,2864,0,0,0}-{2608,2863,0,0,0}-"
+ },
+ {
+ "npc_id": "7099",
+ "loc_data": "{2585,2844,0,1,3}-"
+ },
+ {
+ "npc_id": "7100",
+ "loc_data": "{2586,2840,0,0,4}-"
+ },
+ {
+ "npc_id": "7101",
+ "loc_data": "{2585,2842,0,1,1}-"
+ },
+ {
+ "npc_id": "7102",
+ "loc_data": "{2576,2840,0,0,0}-{2576,2840,0,0,0}-"
+ },
+ {
+ "npc_id": "7103",
+ "loc_data": "{2579,2843,0,0,0}-{2582,2843,0,0,0}-{2579,2843,0,0,0}-{2582,2843,0,0,0}-"
+ },
+ {
+ "npc_id": "7104",
+ "loc_data": "{2603,5529,0,0,4}-{2549,2852,0,1,4}-"
+ },
+ {
+ "npc_id": "7105",
+ "loc_data": "{2612,9484,0,1,1}-{2611,9484,0,1,0}-{2614,9484,0,1,6}-{2611,9486,0,1,1}-{3111,9929,0,1,7}-{3106,9941,0,1,1}-{3111,9935,0,1,4}-{3114,9931,0,1,1}-"
+ },
+ {
+ "npc_id": "7106",
+ "loc_data": "{3131,9930,0,1,4}-"
+ },
+ {
+ "npc_id": "7107",
+ "loc_data": "{3130,9928,0,1,0}-{3131,9931,0,1,4}-"
+ },
+ {
+ "npc_id": "7109",
+ "loc_data": "{3127,9932,0,1,1}-"
+ },
+ {
+ "npc_id": "7110",
+ "loc_data": "{3121,9929,0,1,4}-"
+ },
+ {
+ "npc_id": "7112",
+ "loc_data": "{3130,9934,0,1,3}-"
+ },
+ {
+ "npc_id": "7113",
+ "loc_data": "{3127,9932,0,1,4}-"
+ },
+ {
+ "npc_id": "7114",
+ "loc_data": "{3132,9921,0,0,0}-{3132,9935,0,1,1}-"
+ },
+ {
+ "npc_id": "7115",
+ "loc_data": "{3050,3259,0,0,0}-"
+ },
+ {
+ "npc_id": "7121",
+ "loc_data": "{2189,3148,0,1,4}-"
+ },
+ {
+ "npc_id": "7125",
+ "loc_data": "{1605,4702,0,1,0}-{1649,4730,0,1,0}-"
+ },
+ {
+ "npc_id": "7126",
+ "loc_data": "{1605,4720,0,1,0}-{1658,4705,0,1,0}-{1633,4678,0,1,0}-"
+ },
+ {
+ "npc_id": "7127",
+ "loc_data": "{1631,4730,0,1,0}-{1658,4687,0,1,0}-{1615,4678,0,1,0}-"
+ },
+ {
+ "npc_id": "7128",
+ "loc_data": "{1625,4689,0,1,0}-{1614,4704,0,1,0}-{1631,4719,0,1,0}-{1651,4705,0,1,0}-"
+ },
+ {
+ "npc_id": "7129",
+ "loc_data": "{1625,4689,0,1,0}-{1614,4704,0,1,0}-{1631,4719,0,1,0}-{1651,4705,0,1,0}-"
+ },
+ {
+ "npc_id": "7130",
+ "loc_data": "{1625,4689,0,1,0}-{1614,4704,0,1,0}-{1631,4719,0,1,0}-{1651,4705,0,1,0}-"
+ },
+ {
+ "npc_id": "7131",
+ "loc_data": "{1634,4699,0,1,0}-"
+ },
+ {
+ "npc_id": "7132",
+ "loc_data": "{1630,4705,0,0,0}-"
+ },
+ {
+ "npc_id": "7138",
+ "loc_data": "{3190,5523,0,1,2}-{3195,5527,0,1,6}-{3245,5462,0,1,7}-{3257,5454,0,1,3}-{3255,5461,0,1,1}-{3251,5473,0,1,3}-{3213,5472,0,1,3}-{3210,5469,0,1,5}-{3221,5468,0,1,0}-{3223,5465,0,1,0}-{3224,5540,0,1,0}-{3240,5541,0,1,6}-{3239,5529,0,1,6}-{3233,5524,0,1,4}-{3237,5512,0,1,6}-{3225,5510,0,1,1}-{3222,5524,0,1,1}-{3225,5540,0,1,7}-{3218,5537,0,1,3}-"
+ },
+ {
+ "npc_id": "7139",
+ "loc_data": "{3220,5463,0,1,7}-"
+ },
+ {
+ "npc_id": "7142",
+ "loc_data": "{3082,4246,0,1,4}-"
+ },
+ {
+ "npc_id": "7143",
+ "loc_data": "{3082,3459,0,0,0}-"
+ },
+ {
+ "npc_id": "7144",
+ "loc_data": "{3085,4230,0,1,3}-"
+ },
+ {
+ "npc_id": "7145",
+ "loc_data": "{3081,4252,0,1,7}-"
+ },
+ {
+ "npc_id": "7146",
+ "loc_data": "{3078,4240,0,1,4}-"
+ },
+ {
+ "npc_id": "7147",
+ "loc_data": "{3079,4245,0,1,4}-"
+ },
+ {
+ "npc_id": "7148",
+ "loc_data": "{3077,4229,0,1,4}-"
+ },
+ {
+ "npc_id": "7149",
+ "loc_data": "{3085,4235,0,1,4}-"
+ },
+ {
+ "npc_id": "7150",
+ "loc_data": "{3085,4240,0,1,3}-"
+ },
+ {
+ "npc_id": "7151",
+ "loc_data": "{3081,3457,0,0,4}-"
+ },
+ {
+ "npc_id": "7152",
+ "loc_data": "{3081,3455,0,0,4}-"
+ },
+ {
+ "npc_id": "7153",
+ "loc_data": "{3081,3453,0,0,4}-"
+ },
+ {
+ "npc_id": "7154",
+ "loc_data": "{3079,3457,0,0,4}-"
+ },
+ {
+ "npc_id": "7155",
+ "loc_data": "{3079,3455,0,0,4}-"
+ },
+ {
+ "npc_id": "7156",
+ "loc_data": "{3077,3457,0,0,4}-"
+ },
+ {
+ "npc_id": "7157",
+ "loc_data": "{3077,3453,0,0,4}-"
+ },
+ {
+ "npc_id": "7158",
+ "loc_data": "{3080,3463,0,1,0}-{3079,3463,0,1,0}-{3144,4250,2,1,4}-{3143,4255,2,1,2}-{3140,4253,2,1,3}-{3145,4255,2,1,6}-{3149,4257,2,1,5}-{3148,4262,2,1,5}-{3142,4260,2,1,3}-{3144,4259,2,1,4}-{3145,4261,2,1,4}-{3146,4265,2,1,5}-{3143,4264,2,1,3}-{3144,4266,2,1,5}-{3141,4265,2,1,1}-{3144,4270,2,1,1}-{3142,4269,2,1,6}-{3157,4262,2,1,1}-{3164,4265,2,1,6}-{3162,4266,2,1,6}-{3165,4266,2,1,3}-{3164,4261,2,1,2}-{3162,4259,2,1,5}-{3162,4255,2,1,7}-{3165,4256,2,1,4}-{3163,4251,2,1,3}-{3165,4249,2,1,6}-{3162,4250,2,1,4}-{3163,4241,2,1,4}-{3165,4239,2,1,4}-{3165,4241,2,1,0}-{3160,4235,2,1,2}-{3165,4235,2,1,4}-{3165,4237,2,1,4}-{3162,4234,2,1,3}-{3164,4231,2,1,4}-{3166,4229,2,1,6}-{3162,4230,2,1,1}-{3167,4229,2,1,3}-{3184,4236,2,1,1}-{3153,4246,1,1,3}-{3159,4236,1,1,6}-{3163,4236,1,1,4}-{3163,4234,1,1,7}-{3146,4235,1,1,5}-{3144,4236,1,1,1}-{3143,4234,1,1,2}-{3145,4240,1,1,4}-{3148,4242,1,1,1}-{3145,4241,1,1,7}-{3142,4242,1,1,3}-{3146,4230,1,1,4}-"
+ },
+ {
+ "npc_id": "7159",
+ "loc_data": "{3174,4238,2,1,6}-{3175,4243,2,1,6}-{3179,4236,2,1,4}-{3145,4272,1,1,3}-{3145,4276,1,1,3}-{3152,4271,1,1,6}-{3144,4264,1,1,4}-{3153,4266,1,1,1}-{3152,4261,1,1,4}-{3145,4259,1,1,6}-{3161,4259,1,1,0}-{3160,4265,1,1,0}-{3153,4246,1,1,3}-{3157,4248,1,1,6}-{3161,4247,1,1,4}-{3146,4247,1,1,6}-{3153,4233,1,1,4}-{3153,4240,1,1,6}-{3155,4238,1,1,5}-{3169,4267,3,1,3}-{3160,4265,3,1,6}-{3168,4250,3,1,4}-{3168,4244,3,1,6}-{3160,4239,3,1,1}-{3160,4228,3,1,3}-{3147,4225,3,1,3}-{3145,4242,3,1,5}-{3139,4249,3,1,6}-{3144,4253,3,1,3}-{3145,4266,3,1,0}-{3138,4266,3,1,3}-{3151,4272,3,1,0}-{3139,4272,3,1,0}-{3146,4231,3,1,0}-{3169,4270,3,1,0}-"
+ },
+ {
+ "npc_id": "7160",
+ "loc_data": "{3175,4254,2,1,7}-{3176,4247,2,1,5}-{3174,4269,2,1,1}-{3190,4253,2,1,3}-{3192,4247,2,1,3}-{3189,4235,2,1,0}-{3152,4269,0,1,4}-{3160,4278,0,1,1}-{3160,4262,0,1,3}-{3149,4250,0,1,0}-{3158,4250,0,1,5}-{3161,4236,0,1,6}-{3172,4250,0,1,2}-{3171,4269,3,1,1}-{3157,4277,3,1,3}-{3150,4278,3,1,3}-{3160,4271,1,1,0}-{3163,4274,1,1,0}-{3167,4277,1,1,0}-{3173,4277,1,1,0}-{3175,4275,1,1,0}-{3160,4269,0,1,0}-{3173,4264,0,1,0}-{3190,4237,2,1,0}-{3154,4279,3,1,0}-"
+ },
+ {
+ "npc_id": "7161",
+ "loc_data": "{3142,4230,2,1,6}-{3143,4231,2,1,3}-{3141,4235,2,1,4}-{3144,4241,2,1,4}-"
+ },
+ {
+ "npc_id": "7162",
+ "loc_data": "{3144,4229,2,1,1}-{3143,4236,2,1,1}-{3145,4235,2,1,1}-{3148,4244,2,1,6}-"
+ },
+ {
+ "npc_id": "7168",
+ "loc_data": "{2714,3309,0,1,1}-"
+ },
+ {
+ "npc_id": "7228",
+ "loc_data": "{2862,3101,0,0,0}-{2879,3109,0,0,0}-{2874,3098,0,0,0}-{2882,3104,0,0,0}-{2882,3098,0,0,0}-"
+ },
+ {
+ "npc_id": "7229",
+ "loc_data": "{2833,3088,0,0,0}-{2830,3085,0,0,0}-{2844,3089,0,0,0}-{2837,3084,0,0,0}-{2840,3076,0,0,0}-"
+ },
+ {
+ "npc_id": "7230",
+ "loc_data": "{2840,3008,0,0,0}-{2887,3051,0,0,0}-{2890,3052,0,0,0}-{2894,3058,0,0,0}-{2897,3035,0,0,0}-"
+ },
+ {
+ "npc_id": "7231",
+ "loc_data": "{2930,2961,0,0,0}-{2942,2964,0,0,0}-{2933,2964,0,0,0}-{2932,2967,0,0,0}-{2936,2973,0,0,0}-"
+ },
+ {
+ "npc_id": "7232",
+ "loc_data": "{2802,3106,0,0,0}-{2807,3101,0,0,0}-{2806,3108,0,0,0}-{2808,3105,0,0,0}-{2814,3100,0,0,0}-"
+ },
+ {
+ "npc_id": "7233",
+ "loc_data": "{2922,3070,0,0,0}-{2929,3075,0,0,0}-{2919,3080,0,0,0}-{2924,3080,0,0,0}-{2923,3081,0,0,0}-"
+ },
+ {
+ "npc_id": "7234",
+ "loc_data": "{2900,3107,0,0,0}-{2903,3098,0,0,0}-{2908,3104,0,0,0}-{2905,3107,0,0,0}-{2904,3107,0,0,0}-"
+ },
+ {
+ "npc_id": "7235",
+ "loc_data": "{2820,3065,0,0,0}-{2830,3059,0,0,0}-{2825,3057,0,0,0}-{2827,3050,0,0,0}-{2822,3053,0,0,0}-"
+ },
+ {
+ "npc_id": "7236",
+ "loc_data": "{2799,3005,0,0,0}-{2801,2995,0,0,0}-{2804,3001,0,0,0}-{2803,2986,0,0,0}-{2811,2999,0,0,0}-"
+ },
+ {
+ "npc_id": "7275",
+ "loc_data": "{2995,3252,0,0,0}-{2996,3259,0,0,0}-{2993,3250,0,0,0}-{3000,3258,0,0,0}-"
+ },
+ {
+ "npc_id": "7276",
+ "loc_data": "{2994,3256,0,0,0}-{3002,3250,0,0,0}-{2992,3252,0,0,0}-{3000,3250,0,0,0}-{2728,3422,0,1,1}-{2718,3413,0,1,4}-{2729,3420,0,1,4}-{2727,3414,0,1,6}-{2714,3419,0,1,3}-{2719,3427,0,1,7}-"
+ },
+ {
+ "npc_id": "7285",
+ "loc_data": "{2835,3107,0,0,0}-{2836,3101,0,0,0}-{2836,3110,0,0,0}-{2837,3112,0,0,0}-{2841,3107,0,0,0}-{2885,3018,0,0,0}-{2885,3019,0,0,0}-{2891,3018,0,0,0}-"
+ },
+ {
+ "npc_id": "7286",
+ "loc_data": "{2931,3090,0,0,0}-{2925,3097,0,0,0}-{2936,3096,0,0,0}-{2924,3102,0,0,0}-{2933,3104,0,0,0}-"
+ },
+ {
+ "npc_id": "7288",
+ "loc_data": "{2834,3045,0,0,0}-{2826,3048,0,0,0}-{2824,3043,0,0,0}-{2822,3045,0,0,0}-{2818,3049,0,0,0}-"
+ },
+ {
+ "npc_id": "7289",
+ "loc_data": "{2882,3018,0,1,7}-{2887,3024,0,1,2}-"
+ },
+ {
+ "npc_id": "7290",
+ "loc_data": "{2845,3088,0,1,6}-{2854,3085,0,1,1}-"
+ },
+ {
+ "npc_id": "7292",
+ "loc_data": "{2863,3048,0,1,5}-{2868,3037,0,1,4}-"
+ },
+ {
+ "npc_id": "7309",
+ "loc_data": "{2946,3280,0,0,0}-{3023,3410,0,0,0}-"
+ },
+ {
+ "npc_id": "7310",
+ "loc_data": "{2946,3272,0,0,0}-{3015,3409,0,0,0}-"
+ },
+ {
+ "npc_id": "7311",
+ "loc_data": "{2956,3273,0,0,0}-"
+ },
+ {
+ "npc_id": "7312",
+ "loc_data": "{2950,3268,0,0,0}-"
+ },
+ {
+ "npc_id": "7420",
+ "loc_data": "{3168,3334,0,0,3}-"
+ },
+ {
+ "npc_id": "7421",
+ "loc_data": "{3163,3336,0,0,1}-"
+ },
+ {
+ "npc_id": "7451",
+ "loc_data": "{2328,3170,0,1,6}-{2341,3179,0,1,4}-{2338,3164,0,1,4}-{2189,3181,0,1,2}-{2178,3186,0,1,7}-{2199,3182,0,1,0}-{2288,3149,0,1,2}-{2282,3144,0,1,3}-{2285,3144,0,1,2}-{2281,3139,0,1,1}-{2289,3152,0,1,6}-{2287,3155,0,1,1}-{2286,3146,0,1,1}-{2289,3156,0,0,5}-{2285,3136,0,1,3}-"
+ },
+ {
+ "npc_id": "7600",
+ "loc_data": "{1714,5602,0,0,6}-"
+ },
+ {
+ "npc_id": "7601",
+ "loc_data": "{1697,5605,0,0,6}-"
+ },
+ {
+ "npc_id": "7602",
+ "loc_data": "{1693,5598,0,1,0}-"
+ },
+ {
+ "npc_id": "7603",
+ "loc_data": "{1696,5600,0,1,0}-"
+ },
+ {
+ "npc_id": "7604",
+ "loc_data": "{1699,5599,0,1,0}-"
+ },
+ {
+ "npc_id": "7605",
+ "loc_data": "{1705,5599,0,0,1}-"
+ },
+ {
+ "npc_id": "7636",
+ "loc_data": "{3618,9736,0,0,0}-{3620,9732,0,0,0}-{3624,9736,0,0,0}-{3625,9738,0,0,0}-{3618,9736,0,0,4}-{3620,9732,0,0,4}-{3624,9736,0,0,4}-{3625,9738,0,0,4}-"
+ },
+ {
+ "npc_id": "7637",
+ "loc_data": "{3588,9768,0,0,0}-{3600,9768,0,0,0}-{3606,9780,0,0,0}-{3612,9729,0,0,0}-{3613,9764,0,0,0}-{3614,9740,0,0,0}-{3614,9750,0,0,0}-{3621,9748,0,0,0}-{3629,9737,0,0,0}-"
+ },
+ {
+ "npc_id": "7639",
+ "loc_data": "{3592,9766,0,0,0}-{3603,9770,0,0,0}-{3605,9757,0,0,0}-{3611,9749,0,0,0}-{3611,9766,0,0,0}-{3616,9737,0,0,0}-{3616,9756,0,0,0}-{3616,9762,0,0,0}-{3617,9779,0,0,0}-{3621,9754,0,0,0}-"
+ },
+ {
+ "npc_id": "7640",
+ "loc_data": "{3608,9780,0,1,3}-{3610,9777,0,1,1}-{3613,9772,0,1,4}-{3617,9748,0,1,7}-{3617,9758,0,1,1}-{3621,9751,0,1,1}-"
+ },
+ {
+ "npc_id": "7641",
+ "loc_data": "{3607,9776,0,1,1}-{3610,9772,0,1,0}-{3614,9778,0,1,7}-{3615,9746,0,1,7}-{3618,9753,0,1,1}-{3619,9748,0,1,6}-"
+ },
+ {
+ "npc_id": "7642",
+ "loc_data": "{3595,9742,0,0,0}-{3597,9751,0,0,0}-{3598,9736,0,0,0}-{3604,9746,0,0,0}-"
+ },
+ {
+ "npc_id": "7643",
+ "loc_data": "{3587,9737,0,0,0}-{3592,9746,0,0,0}-{3600,9740,0,0,0}-{3605,9738,0,0,0}-"
+ },
+ {
+ "npc_id": "7690",
+ "loc_data": "{3415,3489,2,0,0}-"
+ },
+ {
+ "npc_id": "7707",
+ "loc_data": "{3440,9895,0,0,0}-"
+ },
+ {
+ "npc_id": "7711",
+ "loc_data": "{3405,9902,0,0,0}-"
+ },
+ {
+ "npc_id": "7716",
+ "loc_data": "{3005,3475,0,1,7}-{3003,3473,0,1,4}-{2997,3471,0,0,0}-{3004,3494,0,0,0}-{3005,3505,0,0,0}-"
+ },
+ {
+ "npc_id": "7724",
+ "loc_data": "{3054,3503,0,1,0}-"
+ },
+ {
+ "npc_id": "7726",
+ "loc_data": "{2996,3451,0,0,0}-"
+ },
+ {
+ "npc_id": "7727",
+ "loc_data": "{3045,3483,0,0,0}-{3053,3492,0,0,4}-{3055,3491,0,0,0}-{3045,3496,0,0,0}-{3046,3490,1,0,0}-{3057,3497,1,0,3}-"
+ },
+ {
+ "npc_id": "7728",
+ "loc_data": "{3009,3433,0,0,0}-"
+ },
+ {
+ "npc_id": "7731",
+ "loc_data": "{3008,3466,0,0,0}-"
+ },
+ {
+ "npc_id": "7732",
+ "loc_data": "{3009,3466,0,0,0}-"
+ },
+ {
+ "npc_id": "7733",
+ "loc_data": "{3008,3479,0,0,0}-"
+ },
+ {
+ "npc_id": "7734",
+ "loc_data": "{3009,3487,0,0,0}-"
+ },
+ {
+ "npc_id": "7735",
+ "loc_data": "{2999,3469,0,0,0}-"
+ },
+ {
+ "npc_id": "7744",
+ "loc_data": "{3149,3411,0,0,0}-"
+ },
+ {
+ "npc_id": "7746",
+ "loc_data": "{4755,5116,0,1,7}-"
+ },
+ {
+ "npc_id": "7747",
+ "loc_data": "{4751,5116,0,1,5}-"
+ },
+ {
+ "npc_id": "7748",
+ "loc_data": "{4752,5114,0,1,5}-"
+ },
+ {
+ "npc_id": "7749",
+ "loc_data": "{4739,5070,0,1,0}-"
+ },
+ {
+ "npc_id": "7750",
+ "loc_data": "{4765,5064,0,1,7}-"
+ },
+ {
+ "npc_id": "7751",
+ "loc_data": "{4778,5070,0,1,2}-"
+ },
+ {
+ "npc_id": "7752",
+ "loc_data": "{4432,5096,0,1,0}-"
+ },
+ {
+ "npc_id": "7753",
+ "loc_data": "{4438,5089,0,1,0}-{4428,5083,0,1,0}-{4437,5075,0,1,0}-"
+ },
+ {
+ "npc_id": "7763",
+ "loc_data": "{4777,5080,0,1,2}-"
+ },
+ {
+ "npc_id": "7765",
+ "loc_data": "{4776,5076,0,1,6}-"
+ },
+ {
+ "npc_id": "7767",
+ "loc_data": "{2457,5139,0,1,6}-{2460,5140,0,1,0}-{2443,5147,0,1,3}-{2454,5155,0,1,5}-{2461,5125,0,1,3}-{2456,5124,0,1,4}-{2458,5129,0,1,4}-{2443,5145,0,1,1}-{2451,5148,0,1,1}-{2447,5143,0,1,4}-{2443,5138,0,1,4}-{4762,5145,0,1,2}-"
+ },
+ {
+ "npc_id": "7768",
+ "loc_data": "{4762,5156,0,1,6}-"
+ },
+ {
+ "npc_id": "7780",
+ "loc_data": "{3358,2993,0,1,0}-"
+ },
+ {
+ "npc_id": "7786",
+ "loc_data": "{3348,9388,0,1,0}-{3350,9393,0,1,0}-{3350,9400,0,1,0}-{3350,9406,0,1,0}-{3351,9380,0,1,0}-{3352,9374,0,1,0}-{3354,9387,0,1,0}-{3358,9378,0,1,0}-{3358,9396,0,1,0}-{3358,9406,0,1,0}-{3365,9381,0,1,0}-{3365,9387,0,1,0}-{3365,9402,0,1,0}-{3369,9390,0,1,0}-{3350,9412,0,1,0}-{3351,9420,0,1,0}-{3356,9414,0,1,0}-{3358,9421,0,1,0}-{3364,9424,0,1,0}-{3365,9416,0,1,0}-"
+ },
+ {
+ "npc_id": "7787",
+ "loc_data": "{3301,4413,0,1,0}-{3302,4394,0,1,0}-{3304,4397,0,1,0}-{3306,4410,0,1,0}-{3307,4383,0,1,0}-{3307,4397,0,1,0}-{3308,4407,0,1,0}-{3310,4383,0,1,0}-{3310,4386,0,1,0}-{3310,4398,0,1,0}-{3311,4407,0,1,0}-{3312,4380,0,1,0}-{3313,4401,0,1,0}-{3314,4411,0,1,0}-{3316,4376,0,1,0}-{3316,4382,0,1,0}-{3316,4387,0,1,0}-{3316,4397,0,1,0}-{3316,4401,0,1,0}-{3316,4405,0,1,0}-{3317,4391,0,1,0}-{3318,4412,0,1,0}-{3319,4373,0,1,0}-{3319,4407,0,1,0}-{3321,4385,0,1,0}-{3321,4398,0,1,0}-{3322,4412,0,1,0}-{3323,4402,0,1,0}-{3324,4394,0,1,0}-{3324,4397,0,1,0}-{3325,4410,0,1,0}-"
+ },
+ {
+ "npc_id": "7801",
+ "loc_data": "{3283,4346,0,1,0}-{3308,4349,0,1,0}-{3293,4375,0,1,0}-{3303,4363,0,1,0}-"
+ },
+ {
+ "npc_id": "7802",
+ "loc_data": "{3288,4350,0,1,0}-{3296,4340,0,1,0}-{3288,4361,0,1,0}-{3310,4355,0,1,0}-"
+ },
+ {
+ "npc_id": "7803",
+ "loc_data": "{3297,4347,0,1,0}-{3315,4346,0,1,0}-{3282,4357,0,1,0}-{3303,4369,0,1,0}-"
+ },
+ {
+ "npc_id": "7804",
+ "loc_data": "{3279,4350,0,1,0}-{3294,4353,0,1,0}-{3294,4366,0,1,0}-"
+ },
+ {
+ "npc_id": "7823",
+ "loc_data": "{3161,9547,0,0,3}-{3164,9556,0,0,4}-{3162,9574,0,0,3}-{3198,9554,0,0,7}-{3198,9572,0,0,1}-{3215,9560,0,0,1}-{3216,9588,0,0,1}-"
+ },
+ {
+ "npc_id": "7891",
+ "loc_data": "{3207,3250,0,0,0}-{3208,3250,0,0,0}-{3209,3250,0,0,0}-"
+ },
+ {
+ "npc_id": "7942",
+ "loc_data": "{3294,4937,0,0,6}-"
+ },
+ {
+ "npc_id": "7959",
+ "loc_data": "{3188,3425,0,1,0}-"
+ },
+ {
+ "npc_id": "7969",
+ "loc_data": "{3205,3240,0,0,0}-"
+ },
+ {
+ "npc_id": "8000",
+ "loc_data": "{2987,3691,0,1,3}-"
+ },
+ {
+ "npc_id": "8041",
+ "loc_data": "{2794,3100,0,1,0}-"
+ },
+ {
+ "npc_id": "8065",
+ "loc_data": "{3399,3464,0,0,1}-"
+ },
+ {
+ "npc_id": "8066",
+ "loc_data": "{3346,3513,0,0,6}-"
+ },
+ {
+ "npc_id": "8067",
+ "loc_data": "{3280,3524,0,0,0}-"
+ },
+ {
+ "npc_id": "8068",
+ "loc_data": "{3237,3525,0,0,0}-"
+ },
+ {
+ "npc_id": "8069",
+ "loc_data": "{3171,3535,0,0,0}-"
+ },
+ {
+ "npc_id": "8070",
+ "loc_data": "{3088,3515,0,0,0}-"
+ },
+ {
+ "npc_id": "8071",
+ "loc_data": "{3035,3517,0,0,0}-"
+ },
+ {
+ "npc_id": "8072",
+ "loc_data": "{2972,3515,0,0,0}-"
+ },
+ {
+ "npc_id": "8073",
+ "loc_data": "{2941,3564,0,0,0}-"
+ },
+ {
+ "npc_id": "8074",
+ "loc_data": "{2946,3621,0,0,0}-"
+ },
+ {
+ "npc_id": "8075",
+ "loc_data": "{2938,3679,0,0,0}-"
+ },
+ {
+ "npc_id": "8076",
+ "loc_data": "{2939,3772,0,0,0}-"
+ },
+ {
+ "npc_id": "8082",
+ "loc_data": "{3552,5590,2,1,2}-"
+ },
+ {
+ "npc_id": "8083",
+ "loc_data": "{3560,5602,0,1,3}-"
+ },
+ {
+ "npc_id": "8084",
+ "loc_data": "{3541,5597,0,1,4}-"
+ },
+ {
+ "npc_id": "8085",
+ "loc_data": "{3550,5598,0,1,3}-"
+ },
+ {
+ "npc_id": "8111",
+ "loc_data": "{3273,3681,0,1,0}-"
+ },
+ {
+ "npc_id": "8133",
+ "loc_data": "{2993,4380,2,1,0}-"
+ },
+ {
+ "npc_id": "8149",
+ "loc_data": "{3244,9996,0,1,6}-{3229,10008,0,1,6}-{3222,10012,0,1,6}-{3205,10010,0,1,6}-{3212,10012,0,1,6}-{3205,10023,0,1,6}-{3210,10030,0,1,6}-{3212,10039,0,1,6}-{3213,10009,0,1,6}-{3243,9993,0,1,6}-{3218,10036,0,1,6}-{3218,10010,0,1,6}-"
+ },
+ {
+ "npc_id": "8150",
+ "loc_data": "{3241,9997,0,1,6}-{3230,10011,0,1,6}-{3221,10012,0,1,6}-{3207,10006,0,1,6}-{3207,10017,0,1,6}-{3209,10031,0,1,6}-{3209,10019,0,1,6}-{3217,10012,0,1,6}-{3224,10012,0,1,6}-"
+ },
+ {
+ "npc_id": "8151",
+ "loc_data": "{3241,9998,0,1,6}-{3223,10010,0,1,6}-{3208,10012,0,1,6}-{3209,10026,0,1,6}-{3214,10038,0,1,6}-{3211,10035,0,1,6}-{3214,10037,0,1,6}-{3240,9991,0,1,6}-{3231,10010,0,1,6}-{3210,10007,0,1,6}-{3222,10010,0,1,6}-"
+ },
+ {
+ "npc_id": "8171",
+ "loc_data": "{3281,3403,0,1,6}-"
+ },
+ {
+ "npc_id": "8227",
+ "loc_data": "{3135,3631,0,1,6}-"
+ },
+ {
+ "npc_id": "8228",
+ "loc_data": "{3142,3635,0,1,0}-"
+ },
+ {
+ "npc_id": "8229",
+ "loc_data": "{3128,3632,0,1,0}-{3135,3616,0,1,6}-"
+ },
+ {
+ "npc_id": "8231",
+ "loc_data": "{3135,3627,0,1,0}-"
+ },
+ {
+ "npc_id": "8233",
+ "loc_data": "{3133,3628,0,1,0}-"
+ },
+ {
+ "npc_id": "8267",
+ "loc_data": "{2866,3546,0,1,1}-"
+ },
+ {
+ "npc_id": "8273",
+ "loc_data": "{2931,3536,0,1,5}-"
+ },
+ {
+ "npc_id": "8274",
+ "loc_data": "{3514,3513,0,1,6}-"
+ },
+ {
+ "npc_id": "8275",
+ "loc_data": "{2869,2982,1,1,5}-"
+ },
+ {
+ "npc_id": "8312",
+ "loc_data": "{3016,9974,1,1,0}-{3021,9940,1,1,0}-{3023,9940,1,1,0}-{3024,9959,1,1,0}-{3027,9960,1,1,0}-{3043,9967,1,1,0}-{3023,9992,1,1,0}-{3016,10021,2,1,0}-{3028,10013,2,1,0}-{3029,10028,2,1,0}-{3038,10005,2,1,0}-{3044,10001,2,1,0}-{3045,9993,2,1,0}-{3045,9999,2,1,0}-{3047,10000,2,1,0}-{3052,10009,2,1,0}-{3054,10001,2,1,0}-{3056,10006,2,1,0}-{3032,10090,1,1,0}-{3040,10096,1,1,0}-{3048,10095,1,1,0}-"
+ },
+ {
+ "npc_id": "8316",
+ "loc_data": "{3017,9972,1,1,0}-{3025,9962,1,1,0}-{3030,9943,1,1,0}-{3033,9941,1,1,0}-{3034,9950,1,1,0}-{3035,9950,1,1,0}-{3036,9940,1,1,0}-{3038,9939,1,1,0}-{3045,9968,1,1,0}-{3058,9952,1,1,0}-{3063,9952,1,1,0}-{3025,9995,1,1,0}-{3027,10029,2,1,0}-{3051,10006,2,1,0}-{3052,10002,2,1,0}-{3054,10005,2,1,0}-{3027,10101,1,1,0}-{3039,10100,1,1,0}-{3054,10097,1,1,0}-"
+ },
+ {
+ "npc_id": "8320",
+ "loc_data": "{3014,9971,1,1,0}-{3016,9969,1,1,0}-{3028,9942,1,1,0}-{3029,9943,1,1,0}-{3030,9951,1,1,0}-{3033,9950,1,1,0}-{3045,9965,1,1,0}-{3061,9953,1,1,0}-{3062,9953,1,1,0}-{3030,9995,1,1,0}-{3016,10023,2,1,0}-{3029,10014,2,1,0}-{3029,10030,2,1,0}-{3036,10005,2,1,0}-{3042,9994,2,1,0}-{3047,10005,2,1,0}-{3049,10002,2,1,0}-{3053,9998,2,1,0}-{3031,10100,1,1,0}-{3044,10098,1,1,0}-{3049,10102,1,1,0}-"
+ },
+ {
+ "npc_id": "8324",
+ "loc_data": "{2911,3811,0,1,0}-{2911,3812,0,1,0}-{2911,3813,0,1,0}-{2925,3821,0,1,0}-{2925,3822,0,1,0}-{2925,3823,0,1,0}-{2929,3798,0,1,0}-{2936,3790,0,1,0}-{2936,3810,0,1,0}-{2939,3823,0,1,0}-{2949,3819,1,1,0}-{2949,3822,1,1,0}-{2955,3822,1,1,0}-{2957,3822,1,1,0}-{3016,9977,1,1,0}-{3021,9939,1,1,0}-{3024,9954,1,1,0}-{3025,9943,1,1,0}-{3025,9954,1,1,0}-{3026,9966,1,1,0}-{3032,9952,1,1,0}-{3039,9954,1,1,0}-{3044,9967,1,1,0}-{3044,9971,1,1,0}-{3057,9936,1,1,0}-{3059,9953,1,1,0}-{3041,9975,2,1,0}-{3043,9975,2,1,0}-{3045,9975,2,1,0}-{3016,10022,2,1,0}-{3017,10039,2,1,0}-{3027,10028,2,1,0}-{3029,10013,2,1,0}-{3036,10038,2,1,0}-{3037,10006,2,1,0}-{3041,10024,2,1,0}-{3043,10032,2,1,0}-{3057,10002,2,1,0}-{3058,10021,2,1,0}-{3065,10006,2,1,0}-{3027,10092,1,1,0}-{3035,10097,1,1,0}-{3051,10099,1,1,0}-{3427,5102,0,1,0}-{3428,5099,0,1,0}-{3428,5102,0,1,0}-{3430,5099,0,1,0}-"
+ },
+ {
+ "npc_id": "8328",
+ "loc_data": "{3055,10103,1,1,0}-"
+ },
+ {
+ "npc_id": "8349",
+ "loc_data": "{2589,5735,0,1,0}-{2589,5713,0,1,0}-{2610,5709,0,1,0}-{2613,5732,0,1,0}-"
+ },
+ {
+ "npc_id": "8358",
+ "loc_data": "{2601,5710,0,1,0}-{2603,5737,0,1,0}-"
+ },
+ {
+ "npc_id": "8380",
+ "loc_data": "{2907,3806,0,1,0}-"
+ },
+ {
+ "npc_id": "8381",
+ "loc_data": "{2910,3805,0,1,0}-"
+ },
+ {
+ "npc_id": "8382",
+ "loc_data": "{2912,3812,0,1,0}-{2923,3823,0,1,0}-"
+ },
+ {
+ "npc_id": "8383",
+ "loc_data": "{2908,3809,0,1,0}-{2919,3823,0,1,0}-"
+ },
+ {
+ "npc_id": "8384",
+ "loc_data": "{2922,3827,0,1,0}-"
+ },
+ {
+ "npc_id": "8385",
+ "loc_data": "{2924,3825,0,1,0}-"
+ },
+ {
+ "npc_id": "8386",
+ "loc_data": "{2921,3824,0,1,0}-"
+ },
+ {
+ "npc_id": "8387",
+ "loc_data": "{2934,3786,0,1,0}-"
+ },
+ {
+ "npc_id": "8388",
+ "loc_data": "{2935,3784,0,1,0}-{2940,3827,0,1,0}-"
+ },
+ {
+ "npc_id": "8389",
+ "loc_data": "{2937,3785,0,1,0}-"
+ },
+ {
+ "npc_id": "8390",
+ "loc_data": "{2935,3781,0,1,0}-{2939,3829,0,1,0}-"
+ },
+ {
+ "npc_id": "8391",
+ "loc_data": "{2937,3780,0,1,0}-{2940,3833,0,1,0}-"
+ },
+ {
+ "npc_id": "8392",
+ "loc_data": "{2938,3782,0,1,0}-{2938,3831,0,1,0}-"
+ },
+ {
+ "npc_id": "8536",
+ "loc_data": "{2654,5600,0,1,3}-{2650,5600,0,0,3}-{2662,5593,0,0,3}-{2653,5590,0,0,3}-{2644,5592,0,0,3}-{2644,5601,0,0,3}-{2654,5604,0,0,3}-{2663,5606,0,0,3}-{2670,5597,0,0,3}-{2657,5589,0,0,3}-"
+ },
+ {
+ "npc_id": "8545",
+ "loc_data": "{3122,3626,0,1,0}-"
+ },
+ {
+ "npc_id": "8590",
+ "loc_data": "{2743,3444,0,1,0}-"
+ }
+]
\ No newline at end of file
diff --git a/Server/data/configs/object_configs.json b/Server/data/configs/object_configs.json
index 354bfc6de..54f50f614 100644
--- a/Server/data/configs/object_configs.json
+++ b/Server/data/configs/object_configs.json
@@ -145,7 +145,7 @@
},
{
"examine": "Used for storage.",
- "ids": "63,64"
+ "ids": "63,64,36351,36352"
},
{
"examine": "Surprisingly sturdy looking.",
@@ -968,7 +968,7 @@
"ids": "573"
},
{
- "examine": "A carving of a figure from the history of RuneScape.",
+ "examine": "A carving of a figure from the history of 2009Scape.",
"ids": "574,575,576,577,578"
},
{
@@ -1753,7 +1753,7 @@
},
{
"examine": "Danger!",
- "ids": "1032,5127,29373"
+ "ids": "1032,5127"
},
{
"examine": "This tells you which way is which.",
@@ -2148,7 +2148,7 @@
"ids": "1231"
},
{
- "examine": "One of the most common trees in RuneScape.",
+ "examine": "One of the most common trees in 2009Scape.",
"ids": "1276"
},
{
@@ -2601,7 +2601,7 @@
},
{
"examine": "I can climb this.",
- "ids": "1729"
+ "ids": "1729,36347,36363,36644"
},
{
"examine": "Dare I go up?",
@@ -3584,7 +3584,7 @@
"ids": "2375"
},
{
- "examine": "Soil",
+ "examine": "Soil. Dug up!",
"ids": "2376,2377,2378"
},
{
@@ -3641,7 +3641,7 @@
},
{
"examine": "I can climb down this.",
- "ids": "2408"
+ "ids": "2408,36693,36694"
},
{
"examine": "A commonly found tree.",
@@ -4964,7 +4964,7 @@
"ids": "3032"
},
{
- "examine": "One of the most common trees in RuneScape.",
+ "examine": "One of the most common trees in 2009Scape.",
"ids": "3033,3034,3035,3036"
},
{
@@ -6384,12 +6384,12 @@
"ids": "4131"
},
{
- "examine": "These doors look very ominous. A sign says 'To the tombs'.",
- "ids": "4132,4133"
+ "examine": "This tells you which way is which.",
+ "ids": "4132,4133,4134,4135"
},
{
- "examine": "Large doors set into the hillside.",
- "ids": "4134,4135,4136,4137"
+ "examine": "These doors look very ominous. A sign says 'To the tombs'.",
+ "ids": "4136,4137"
},
{
"examine": "Items are for sale here.",
@@ -6777,7 +6777,7 @@
},
{
"examine": "A solid stone staircase.",
- "ids": "4415,4416,4417,4418,4419,4420"
+ "ids": "4415,4416,4417,4418,4419,4420,36480,36481,36484,36495,36521,36523,36532,36540"
},
{
"examine": "A spiky barricade.",
@@ -7609,7 +7609,7 @@
},
{
"examine": "I can climb down this.",
- "ids": "4911,4912"
+ "ids": "4911,4912,36349,36365"
},
{
"examine": "It looks cramped and dark.",
@@ -8592,7 +8592,7 @@
"ids": "5789,5790"
},
{
- "examine": "A carving of a figure from the history of RuneScape.",
+ "examine": "A carving of a figure from the history of 2009Scape.",
"ids": "5791,36749,36751"
},
{
@@ -12788,7 +12788,7 @@
"ids": "8972"
},
{
- "examine": "One of the most common trees in RuneScape.",
+ "examine": "One of the most common trees in 2009Scape.",
"ids": "8973"
},
{
@@ -14100,7 +14100,7 @@
"ids": "10080"
},
{
- "examine": "One of the most common trees in RuneScape.",
+ "examine": "One of the most common trees in 2009Scape.",
"ids": "10081"
},
{
@@ -15964,7 +15964,7 @@
"ids": "11354,11355"
},
{
- "examine": "A gateway back to RuneScape.",
+ "examine": "A gateway back to 2009Scape.",
"ids": "11356"
},
{
@@ -16324,7 +16324,7 @@
"ids": "11629"
},
{
- "examine": "South to Falador :: West to Taverley :: East to Varrock.",
+ "examine": "This tells you which way is which.",
"ids": "11630,11631,11632,11633"
},
{
@@ -16564,7 +16564,7 @@
"ids": "11759"
},
{
- "examine": "A carving of a figure from the history of RuneScape.",
+ "examine": "A carving of a figure from the history of 2009Scape.",
"ids": "11761"
},
{
@@ -16741,7 +16741,7 @@
},
{
"examine": "Better not eat them!",
- "ids": "12003"
+ "ids": "12003,12128"
},
{
"examine": "It's going to be a tight squeeze!",
@@ -16881,7 +16881,7 @@
},
{
"examine": "A wall jutting out into the path.",
- "ids": "12127,12128,12129,12130"
+ "ids": "12127,12129,12130"
},
{
"examine": "Spooky.",
@@ -18728,7 +18728,7 @@
"ids": "13409,13410"
},
{
- "examine": "One of the most common trees in RuneScape.",
+ "examine": "One of the most common trees in 2009Scape.",
"ids": "13411,13412"
},
{
@@ -18996,11 +18996,11 @@
"ids": "13525"
},
{
- "examine": "A map of RuneScape.",
+ "examine": "A map of 2009Scape.",
"ids": "13526"
},
{
- "examine": "A map of RuneScape including major cave systems.",
+ "examine": "A map of 2009Scape including major cave systems.",
"ids": "13527"
},
{
@@ -20007,6 +20007,46 @@
"examine": "Why do I never take time to look at the grass?",
"ids": "14003"
},
+ {
+ "examine": "Well, I have the logs in place, now to get something to boil.",
+ "ids": "14005"
+ },
+ {
+ "examine": "Covered in a thick layer of grease.",
+ "ids": "14006"
+ },
+ {
+ "examine": "I'm glad this isn't for dinner.",
+ "ids": "14007"
+ },
+ {
+ "examine": "This smells so very, very bad...",
+ "ids": "14008"
+ },
+ {
+ "examine": "It seems to have all boiled away.",
+ "ids": "14009"
+ },
+ {
+ "examine": "Stop examining signs! You're in the Wilderness now!",
+ "ids": "14503"
+ },
+ {
+ "examine": "Danger, Wilderness up ahead. Last chance to turn back...",
+ "ids": "14504"
+ },
+ {
+ "examine": "Danger, Wilderness up ahead. Watch out for the Beast!",
+ "ids": "14505"
+ },
+ {
+ "examine": "Danger, Wilderness up ahead. Beware of stray magma.",
+ "ids": "14506"
+ },
+ {
+ "examine": "Danger, Wilderness up ahead. Almost certain death!",
+ "ids": "14507"
+ },
{
"examine": "Home sweet home?",
"ids": "15477"
@@ -20019,10 +20059,30 @@
"examine": "Home sweet home?",
"ids": "15748"
},
+ {
+ "examine": "Danger - Possibly deadly creatures below!",
+ "ids": "16083,16151,16117"
+ },
+ {
+ "examine": "Large urn.",
+ "ids": "17362"
+ },
{
"examine": "A large fish.",
"ids": "18482"
},
+ {
+ "examine": "A sign on a cactus.",
+ "ids": "18876"
+ },
+ {
+ "examine": "Dead and half-buried.",
+ "ids": "19996"
+ },
+ {
+ "examine": "Dead animal head. Lovely.",
+ "ids": "19997"
+ },
{
"examine": "Might be worth opening?",
"ids": "21299"
@@ -20127,10 +20187,18 @@
"examine": "Contains traces of summoning energy.",
"ids": "29939,29943,29944,29945,29947,29951,29952,29953,29954"
},
+ {
+ "examine": "An interesting sign.",
+ "ids": "31297,31298,31299,31300,31301"
+ },
{
"examine": "I wonder what this spooky contains.",
"ids": "37051"
},
+ {
+ "examine": "The mine has collapsed.",
+ "ids": "37634"
+ },
{
"examine": "It really was this big!",
"ids": "40043"
@@ -20195,6 +20263,14 @@
"examine": "A wooden crate.",
"ids": "15031"
},
+ {
+ "examine": "A sealed barrel with a warning sign on it.",
+ "ids": "17296"
+ },
+ {
+ "examine": "A barrel with a warning sign on it.",
+ "ids": "17297"
+ },
{
"examine": "A beautiful landscape.",
"ids": "24184"
@@ -20275,6 +20351,10 @@
"examine": "Technically a bed.",
"ids": "32031"
},
+ {
+ "examine": "Now that's what I call slimline!",
+ "ids": "32072"
+ },
{
"examine": "A really bad portrait of the King.",
"ids": "32326"
@@ -20293,7 +20373,7 @@
},
{
"examine": "A wooden barrel for storage.",
- "ids": "31136,36798"
+ "ids": "17308,31136,36798"
},
{
"examine": "A home for baby creatures.",
@@ -20519,10 +20599,6 @@
"examine": "Popular on sandy beaches where fruity cocktails may be found.",
"ids": "18856"
},
- {
- "examine": "Stop examining signs! You're in the Wilderness now!",
- "ids": "14503"
- },
{
"examine": "Looks like part of the entrance is blocked by rubble.",
"ids": "15767"
@@ -20602,5 +20678,41 @@
{
"examine": "Keeps the puppies out of trouble.",
"ids": "28341"
+ },
+ {
+ "examine": "Warning! Danger of death.",
+ "ids": "29373"
+ },
+ {
+ "examine": "There are some toolboxes on this table.",
+ "ids": "36573,36580"
+ },
+ {
+ "examine": "There's some rock I can use with the catapult here.",
+ "ids": "36574,36581"
+ },
+ {
+ "examine": "There are some barricades here.",
+ "ids": "36575,36582"
+ },
+ {
+ "examine": "There is some rope here.",
+ "ids": "36576,36583"
+ },
+ {
+ "examine": "There are some explosive potions here.",
+ "ids": "36577,36584"
+ },
+ {
+ "examine": "There are some pickaxes on this table.",
+ "ids": "36578,36585"
+ },
+ {
+ "examine": "There are some bandages on this table.",
+ "ids": "36579,36586"
+ },
+ {
+ "examine": "Rough but adequate.",
+ "ids": "14918"
}
]
\ No newline at end of file
diff --git a/Server/data/configs/ranged_weapon_configs.json b/Server/data/configs/ranged_weapon_configs.json
index a2790b612..335c9f031 100644
--- a/Server/data/configs/ranged_weapon_configs.json
+++ b/Server/data/configs/ranged_weapon_configs.json
@@ -15,7 +15,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,13280"
+ "ammunition": "877,878,6061,6062,879,9236"
},
{
"itemId": "800",
@@ -294,7 +294,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,13280"
+ "ammunition": "877,878,6061,6062,879,9236"
},
{
"itemId": "839",
@@ -1095,7 +1095,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "8882,877,878,6061,6062,879,9236"
+ "ammunition": "8882,877,878,6061,6062,879,9236,9139,9286,9293,9300,9140,9287,9294,9237,9145,9301,9292,9299,9306,9335,880,9238"
},
{
"itemId": "9174",
@@ -1104,7 +1104,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,13280"
+ "ammunition": "877,878,6061,6062,879,9236"
},
{
"itemId": "9176",
@@ -1113,7 +1113,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,9140,879,9139,9236,13280"
+ "ammunition": "877,878,6061,6062,879,9139,9236,9286,9293,9300,9335,9237"
},
{
"itemId": "9177",
@@ -1122,7 +1122,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,9139,9140,9287,9294,9301,880,9238,9145,13280"
+ "ammunition": "877,878,6061,6062,879,9236,9139,9140,9287,9294,9301,880,9238,9145,9286,9293,9300,9292,9299,9306,9335,9237"
},
{
"itemId": "9179",
@@ -1131,7 +1131,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9139,9140,9236,9141,9288,9295,9302,9336,9239,9145,13280"
+ "ammunition": "877,878,6061,6062,879,9139,9140,9236,9141,9288,9295,9302,9336,9239,9145,9286,9293,9300,9287,9294,9301,9292,9299,9306,9335,9237,880,9238"
},
{
"itemId": "9181",
@@ -1140,7 +1140,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,9141,9288,9295,9302,9336,9239,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9145,9139,9140,9241,13280"
+ "ammunition": "877,878,6061,6062,879,9236,9141,9288,9295,9302,9336,9239,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9145,9139,9140,9241,9286,9293,9300,9140,9287,9294,9301,9292,9299,9306,9335,9237,880,9238,13083,13084,13085,13086"
},
{
"itemId": "9183",
@@ -1149,7 +1149,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,9139,9141,9288,9295,9302,9336,9239,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9241,9145,9143,9290,9297,9304,9339,9242,9340,9243,13280"
+ "ammunition": "877,878,6061,6062,879,9236,9139,9141,9288,9295,9302,9336,9239,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9241,9145,9143,9290,9297,9304,9339,9242,9340,9243,9286,9293,9300,9140,9287,9294,9301,9292,9299,9306,9335,9237,880,9238,13083,13084,13085,13086"
},
{
"itemId": "9185",
@@ -1158,7 +1158,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,9139,9141,9288,9295,9302,9336,9239,9236,9237,9238,9239,9240,9241,9242,9243,9244,9245,9145,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9241,9143,9290,9297,9304,9339,9242,9340,9243,9144,9291,9298,9305,9341,9244,9342,9245,9140,13280"
+ "ammunition": "877,878,6061,6062,879,9236,9139,9141,9288,9295,9302,9336,9239,9236,9237,9238,9239,9240,9241,9242,9243,9244,9245,9145,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9241,9143,9290,9297,9304,9339,9242,9340,9243,9144,9291,9298,9305,9341,9244,9342,9245,9140,13280,9139,9286,9293,9300,9287,9294,9301,9292,9299,9306,9335,9237,880,13083,13084,13085,13086"
},
{
"itemId": "9705",
@@ -1293,7 +1293,7 @@
"weapon_type": "1",
"animation": "4230",
"drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,9141,9288,9295,9302,9140,9336,9239,13083,13084,13085,13086,13280"
+ "ammunition": "877,878,6061,6062,879,9139,9140,9236,9141,9288,9295,9302,9336,9239,9145,9286,9293,9300,9287,9294,9301,9292,9299,9306,9335,9237,880,9238,13083,13084,13085,13086"
},
{
"itemId": "13405",
@@ -1502,69 +1502,6 @@
"drop_ammo": "true",
"ammunition": "882,883,5616,5622,598,884,885,5617,5623,2532,886,887,5618,5624,2534,888,889,5619,5625,2536,890,891,5620,5626,2538,892,893,5621,5627,2540,78,4160"
},
- {
- "itemId": "14671",
- "name": "Armadyl crossbow",
- "ammo_slot": "13",
- "weapon_type": "1",
- "animation": "4230",
- "drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236,9141,9288,9295,9302,9336,9239,9236,9237,9238,9239,9240,9241,9242,9243,9244,9245,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9241,9143,9290,9297,9304,9339,9242,9340,9243,9144,9291,9298,9305,9341,9244,9342,9245,9140,13280"
- },
- {
- "itemId": "14684",
- "name": "Odium ward",
- "ammo_slot": "13",
- "weapon_type": "1",
- "animation": "4230",
- "drop_ammo": "true",
- "ammunition": "8882,877,878,6061,6062,879,9236,9141,9288,9295,9302,9336,9239,13083,13084,13085,13086,9142,9289,9296,9303,9337,9240,9338,9241,9143,9290,9297,9304,9339,9242,9340,9243"
- },
- {
- "itemId": "14685",
- "name": "Odium shard 1",
- "ammo_slot": "13",
- "weapon_type": "1",
- "animation": "4230",
- "drop_ammo": "true",
- "ammunition": "877,878,6061,6062,879,9236"
- },
- {
- "itemId": "14803",
- "name": "Dark bow",
- "ammo_slot": "13",
- "weapon_type": "2",
- "animation": "426",
- "drop_ammo": "true",
- "ammunition": "882,883,5616,5622,598,884,885,5617,5623,2532,886,887,5618,5624,2534,888,889,5619,5625,2536,890,891,5620,5626,2538,892,893,5621,5627,2540,11212,11227,11228,11229,11217,78,4160"
- },
- {
- "itemId": "14804",
- "name": "Dark bow",
- "ammo_slot": "13",
- "weapon_type": "2",
- "animation": "426",
- "drop_ammo": "true",
- "ammunition": "882,883,5616,5622,598,884,885,5617,5623,2532,886,887,5618,5624,2534,888,889,5619,5625,2536,890,891,5620,5626,2538,892,893,5621,5627,2540,11212,11227,11228,11229,11217,78,4160"
- },
- {
- "itemId": "14805",
- "name": "Dark bow",
- "ammo_slot": "13",
- "weapon_type": "2",
- "animation": "426",
- "drop_ammo": "true",
- "ammunition": "882,883,5616,5622,598,884,885,5617,5623,2532,886,887,5618,5624,2534,888,889,5619,5625,2536,890,891,5620,5626,2538,892,893,5621,5627,2540,11212,11227,11228,11229,11217,78,4160"
- },
- {
- "itemId": "14806",
- "name": "Dark bow",
- "ammo_slot": "13",
- "weapon_type": "2",
- "animation": "426",
- "drop_ammo": "true",
- "ammunition": "882,883,5616,5622,598,884,885,5617,5623,2532,886,887,5618,5624,2534,888,889,5619,5625,2536,890,891,5620,5626,2538,892,893,5621,5627,2540,11212,11227,11228,11229,11217,78,4160"
- },
{
"itemId": "14192",
"name": "Bow (class 1)",
diff --git a/Server/data/configs/shared_tables/ASDT.xml b/Server/data/configs/shared_tables/ASDT.xml
new file mode 100644
index 000000000..bc11f62de
--- /dev/null
+++ b/Server/data/configs/shared_tables/ASDT.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Server/data/configs/shared_tables/CELEDT.xml b/Server/data/configs/shared_tables/CELEDT.xml
new file mode 100644
index 000000000..e7d8bc57d
--- /dev/null
+++ b/Server/data/configs/shared_tables/CELEDT.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Server/data/configs/shared_tables/GDT.xml b/Server/data/configs/shared_tables/GDT.xml
new file mode 100644
index 000000000..e10dd5bd2
--- /dev/null
+++ b/Server/data/configs/shared_tables/GDT.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Server/data/configs/shared_tables/HDT.xml b/Server/data/configs/shared_tables/HDT.xml
new file mode 100644
index 000000000..d8f0223c5
--- /dev/null
+++ b/Server/data/configs/shared_tables/HDT.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Server/data/RDT.xml b/Server/data/configs/shared_tables/RDT.xml
similarity index 96%
rename from Server/data/RDT.xml
rename to Server/data/configs/shared_tables/RDT.xml
index 080dd9049..78ed522a6 100644
--- a/Server/data/RDT.xml
+++ b/Server/data/configs/shared_tables/RDT.xml
@@ -26,4 +26,5 @@
+
\ No newline at end of file
diff --git a/Server/data/configs/shared_tables/RSDT.xml b/Server/data/configs/shared_tables/RSDT.xml
new file mode 100644
index 000000000..58bf5ad32
--- /dev/null
+++ b/Server/data/configs/shared_tables/RSDT.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Server/data/configs/shared_tables/USDT.xml b/Server/data/configs/shared_tables/USDT.xml
new file mode 100644
index 000000000..105e7428c
--- /dev/null
+++ b/Server/data/configs/shared_tables/USDT.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Server/data/configs/shops.json b/Server/data/configs/shops.json
index 4963ac841..d1c888651 100644
--- a/Server/data/configs/shops.json
+++ b/Server/data/configs/shops.json
@@ -45,22 +45,13 @@
"stock": "{1931,30,100}-{1935,30,100}-{1735,10,100}-{1925,10,100}-{1923,10,100}-{1887,10,100}-{590,10,100}-{1755,10,100}-{2347,10,100}-{550,10,100}-{9003,10,100}"
},
{
- "npcs": "590",
+ "npcs": "590,591",
"high_alch": "0",
"currency": "995",
"general_store": "true",
"id": "6",
- "title": "Aemad's Adventuring Supplies Store",
- "stock": "{1759,100,100}-{882,1000,100}-{1265,10,100}-{2142,10,100}-{1349,10,100}-{946,10,100}-{970,10,100}-{954,10,100}-{590,10,100}-{227,10,100}"
- },
- {
- "npcs": "591",
- "high_alch": "0",
- "currency": "995",
- "general_store": "true",
- "id": "7",
- "title": "Kortan General Store",
- "stock": "{1931,30,100}-{1935,30,100}-{1735,10,100}-{1925,10,100}-{1923,10,100}-{1887,10,100}-{590,10,100}-{1755,10,100}-{2347,10,100}-{550,10,100}-{9003,10,100}"
+ "title": "Aemad's Adventuring Supplies",
+ "stock": "{227,10,100}-{1265,10,100}-{1349,10,100}-{2142,10,100}-{590,10,100}-{1759,100,100}-{882,1000,100}-{954,10,100}-{970,10,100}-{946,10,100}-{1935,10,100}"
},
{
"npcs": "971",
@@ -222,7 +213,7 @@
"general_store": "true",
"id": "25",
"title": "Lumbridge General Store",
- "stock": "{1931,30,100}-{1935,30,100}-{1735,10,100}-{1925,10,100}-{1923,10,100}-{1887,10,100}-{590,10,100}-{1755,10,100}-{2347,10,100}-{550,10,100}-{9003,10,100}"
+ "stock": "{1931,30,100}-{1935,30,100}-{1735,10,100}-{1925,10,100}-{1923,10,100}-{1887,10,100}-{590,10,100}-{1755,10,100}-{2347,10,100}-{550,10,100}-{9003,10,100}-{1939,1000,1}"
},
{
"npcs": "4716",
@@ -312,7 +303,7 @@
"general_store": "true",
"id": "36",
"title": "Obli's General Store",
- "stock": "{590,2,100}-{229,10,100}-{233,3,100}-{1931,3,100}-{1351,3,100}-{1265,2,100}-{1349,5,100}-{1129,12,100}-{1059,10,100}-{1061,10,100}-{2142,2,100}-{2309,10,100}-{2349,10,100}-{952,10,100}-{36,10,100}-{596,10,100}-{1755,10,100}-{2347,10,100}-{970,50,100}-{973,50,100}-{227,50,100}-{975,50,100}-{954,10,100}"
+ "stock": "{590,10,100}-{229,1000,100}-{233,10,100}-{1931,30,100}-{1351,10,100}-{1265,10,100}-{1349,10,100}-{1129,10,100}-{1059,10,100}-{1061,10,100}-{2142,10,100}-{2309,10,100}-{952,10,100}-{36,10,100}-{596,10,100}-{1755,10,100}-{2347,10,100}-{970,10,100}-{973,10,100}-{227,1000,100}-{975,10,100}-{954,10,100}"
},
{
"npcs": "560",
@@ -411,7 +402,7 @@
"general_store": "false",
"id": "47",
"title": "Lowe's Archery Emporium",
- "stock": "{882,2500,100}-{884,500,100}-{886,500,100}-{888,500,100}-{890,300,100}-{877,500,100}-{841,10,100}-{843,10,100}-{849,10,100}-{853,10,100}-{837,10,100}-{9177,10,100}-{9179,10,100}"
+ "stock": "{882,1000,100}-{884,100,100}-{886,100,100}-{888,100,100}-{890,30,100}-{877,300,100}-{841,10,100}-{843,10,100}-{849,10,100}-{853,10,100}-{837,10,100}-{839,10,100}-{845,10,100}-{847,10,100}-{851,10,100}"
},
{
"npcs": "575",
@@ -519,7 +510,7 @@
"general_store": "false",
"id": "59",
"title": "Fancy Clothes Store",
- "stock": "{1949,10,100}-{958,10,100}-{948,10,100}-{1733,10,100}-{1734,1000,100}-{1059,30,100}-{1061,10,100}-{1757,10,100}-{1013,10,100}-{1025,10,100}-{10088,0,100}-{10090,0,100}-{10091,0,100}-{10089,0,100}-{10087,0,100}-{11525,0,100}"
+ "stock": "{1949,0,100}-{579,10,100}-{1023,10,100}-{958,10,100}-{948,10,100}-{1733,10,100}-{1734,1000,100}-{1059,30,100}-{1061,10,100}-{428,10,100}-{426,10,100}-{1757,10,100}-{1013,10,100}-{1015,10,100}-{1011,10,100}-{1007,10,100}-{1025,10,100}-{10088,0,100}-{10090,0,100}-{10091,0,100}-{10089,0,100}-{10087,0,100}-{11525,0,100}"
},
{
"npcs": "548",
@@ -573,7 +564,7 @@
"general_store": "false",
"id": "65",
"title": "Dodgy Mikes Second-hand Clothing",
- "stock": "{7114,10,100}"
+ "stock": "{7114,10,100}-{7122,10,100}-{7128,10,100}-{7134,10,100}-{7110,10,100}-{7126,10,100}-{7132,10,100}-{7138,10,100}-{7116,10,100}-{7124,10,100}-{7130,10,100}-{7112,10,100}-{7136,10,100}"
},
{
"npcs": "2161",
@@ -645,7 +636,7 @@
"general_store": "false",
"id": "73",
"title": "Vanessa's Farming Shop",
- "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5354,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
+ "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5350,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
},
{
"npcs": "2307",
@@ -654,7 +645,7 @@
"general_store": "false",
"id": "74",
"title": "Alice's Farming Shop",
- "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5354,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
+ "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5350,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
},
{
"npcs": "2304",
@@ -663,7 +654,7 @@
"general_store": "false",
"id": "75",
"title": "Sarah's Farming Shop",
- "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5354,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
+ "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5350,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
},
{
"npcs": "2306",
@@ -672,7 +663,7 @@
"general_store": "false",
"id": "76",
"title": "Richard's Farming Shop",
- "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5354,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
+ "stock": "{5376,10,100}-{6032,300,100}-{5418,10,100}-{6036,10,100}-{5350,100,100}-{5341,10,100}-{5329,10,100}-{5343,10,100}-{952,10,100}-{5325,10,100}-{1925,100,100}-{5331,30,100}-{12622,10,100}-{5996,0,100}-{6006,0,100}-{1965,0,100}-{5994,0,100}-{5931,0,100}-{6000,0,100}-{1957,0,100}-{5504,0,100}-{5986,0,100}-{1982,0,100}-{5982,0,100}-{6002,0,100}-{5998,0,100}"
},
{
"npcs": "557",
@@ -906,7 +897,7 @@
"general_store": "false",
"id": "103",
"title": "Jatix's Herblore Shop",
- "stock": "{229,300,100}-{233,10,100}-{221,1000,100}"
+ "stock": "{229,300,480}-{233,10,100}-{221,1000,100}"
},
{
"npcs": "5110",
@@ -1112,7 +1103,7 @@
"currency": "995",
"general_store": "false",
"id": "126",
- "title": "Pickaxe-is-mine",
+ "title": "Pickaxe-Is-Mine",
"stock": "{1265,10,100}-{1269,10,100}-{1273,10,100}-{1271,10,100}-{1275,10,100}"
},
{
@@ -1239,7 +1230,7 @@
"general_store": "false",
"id": "140",
"title": "Staff Shop",
- "stock": "{1379,10,100}-{1389,10,100}-{1381,10,100}-{1383,10,100}-{1385,10,100}-{1387,10,100}-{2890,10,100}"
+ "stock": "{1379,10,100}-{1389,10,100}-{1381,10,100}-{1383,10,100}-{1385,10,100}-{1387,10,100}"
},
{
"npcs": "6971",
@@ -1251,13 +1242,13 @@
"stock": "{12204,10,100}-{12207,10,100}-{12210,10,100}-{12213,10,100}-{12216,10,100}-{12219,10,100}-{12222,10,100}-{12183,125000,100}-{12155,5000,100}"
},
{
- "npcs": "6996",
+ "npcs": "4472",
"high_alch": "0",
"currency": "995",
"general_store": "false",
"id": "142",
"title": "Bogrog's Summoning Shop",
- "stock": "{12204,10,100}-{12207,10,100}-{12210,10,100}-{12213,10,100}-{12216,10,100}-{12219,10,100}-{12222,10,100}-{12183,125000,100}-{12155,5000,100}"
+ "stock": "{12204,10,100}-{12207,10,100}-{12210,0,100}-{12213,0,100}-{12216,0,100}-{12219,0,100}-{12222,0,100}-{12183,65000,100}-{12155,5000,100}"
},
{
"npcs": "3671",
@@ -1266,7 +1257,7 @@
"general_store": "false",
"id": "143",
"title": "Fortunato's Fine Wine",
- "stock": "{1993,10,100}-{1937,10,100}-{7919,10,100}-{1935,10,100}"
+ "stock": "{1993,10,100}-{7810,10,100}-{7919,10,100}-{1935,10,100}"
},
{
"npcs": "558",
@@ -1404,7 +1395,7 @@
"stock": "{2323,1,100}-{2325,1,100}-{2327,1,100}-{7178,1,100}-{7188,1,100}-{7198,1,100}"
},
{
- "npcs": "70,1598,1596,1597,1599,8274,8275,8276,8277,8273,8271,8270,2253",
+ "npcs": "70,1598,1596,1597,1599,8274,8275,8276,8277,8273,8271,8270,2253,7780",
"high_alch": "0",
"currency": "995",
"general_store": "false",
@@ -1476,7 +1467,7 @@
"stock": "{8794,10,100}-{8790,300,100}-{4819,300,100}-{4820,300,100}-{1539,300,100}"
},
{
- "npcs": "1079",
+ "npcs": "1079,1357,1358",
"high_alch": "0",
"currency": "995",
"general_store": "false",
@@ -1608,7 +1599,7 @@
"general_store": "false",
"id": "181",
"title": "MoonClan Fine Clothes",
- "stock": "{9068,10,100}-{9069,10,100}-{9070,10,100}-{9071,10,100}-{9072,10,100}-{9073,10,100}-{9074,10,100}-{1733,50,100}-{1734,500,100}"
+ "stock": "{9068,10,100}-{9069,10,100}-{9070,10,100}-{9071,10,100}-{9072,10,100}-{9073,10,100}-{9074,10,100}-{1733,50,100}-{1734,500,100}-{9084,10,100}-{9096,10,100}-{9097,10,100}-{9098,10,100}-{9099,10,100}-{9100,10,100}-{9101,10,100}-{9102,10,100}-{9104,10,100}"
},
{
"npcs": "",
@@ -1662,7 +1653,7 @@
"general_store": "false",
"id": "187",
"title": "William's Wilderness Cape Shop",
- "stock": "{4315,100,100}-{4335,100,100}-{4375,100,100}-{4395,100,100}"
+ "stock": "{4315,100,100}-{4335,100,100}-{4355,100,100}-{4375,100,100}-{4395,100,100}"
},
{
"npcs": "1779",
@@ -1842,7 +1833,7 @@
"general_store": "false",
"id": "216",
"title": "Ore Store",
- "stock": "{436,20,100}-{438,10,100}-{440,10,100}-{442,5,100}-{453,10,100}-{444,5,100}-{447,0,100}-{449,0,100}"
+ "stock": "{436,10,100}-{438,10,100}-{440,0,100}-{442,0,100}-{453,0,100}-{444,0,100}-{447,0,100}-{449,0,100}"
},
{
"npcs": "596",
@@ -1891,12 +1882,13 @@
},
{
"npcs": "2564",
+ "force_shared": "true",
"high_alch": "0",
"currency": "995",
"general_store": "false",
"id": "222",
"title": "Ore Shop\b",
- "stock": "{436,1500,100}-{438,1500,100}-{440,1500,100}-{442,1500,100}-{444,1500,100}-{447,1500,100}-{453,1500,100}"
+ "stock": "{436,0,0}-{438,0,0}-{440,0,0}-{442,0,0}-{444,0,0}-{447,0,0}-{453,0,0}"
},
{
"npcs": "603",
@@ -1977,7 +1969,7 @@
"general_store": "false",
"id": "232",
"title": "Sigmund the Merchant",
- "stock": "{590,2,100}-{954,10,100}-{233,3,100}-{1931,3,100}-{2142,2,100}-{2309,10,100}-{952,10,100}-{36,10,100}-{1755,10,100}-{2347,10,100}-{229,10,100}-{227,10,100}-{1925,10,100}-{1929,10,100}-{1944,10,100}-{1942,10,100}-{1965,10,100}"
+ "stock": "{590,10,100}-{954,10,100}-{1931,30,100}-{2142,10,100}-{2309,10,100}-{952,10,100}-{36,10,100}-{1755,10,100}-{229,310,100}-{227,310,100}-{1925,30,100}-{1944,10,100}-{1942,10,100}-{233,10,100}-{2347,10,100}-{1929,10,100}"
},
{
"npcs": "1315",
@@ -2167,5 +2159,41 @@
"id": "253",
"title": "Fremennik Fur Trader",
"stock": "{948,10,100}-{958,10,100}-{10117,0,100}-{10121,0,100}-{10119,0,100}-{10123,0,100}-{10093,0,100}-{10095,0,100}-{10097,0,100}-{10099,0,100}-{10101,0,100}-{10103,0,100}"
+ },
+ {
+ "npcs": "",
+ "high_alch": "0",
+ "currency": "6306",
+ "general_store": "false",
+ "id": "254",
+ "title": "Gabooty's Tai Bwo Wannai Drinky Store",
+ "stock": "{2084,0,100}-{2092,0,100}-{2048,0,100}-{2054,0,100}-{2064,0,100}-{2074,0,100}"
+ },
+ {
+ "npcs": "1526",
+ "high_alch": "0",
+ "currency": "4067",
+ "general_store": "false",
+ "id": "255",
+ "title": "Castle Wars Ticket Exchange",
+ "stock": "{4068,1,100}-{4069,1,100}-{4070,1,100}-{4071,1,100}-{4072,1,100}-{4503,1,100}-{4504,1,100}-{4505,1,100}-{4506,1,100}-{4507,1,100}-{4508,1,100}-{4509,1,100}-{4510,1,100}-{4511,1,100}-{4512,1,100}-{4513,1,100}-{4514,1,100}-{4515,1,100}-{4516,1,100}"
+ },
+ {
+ "npcs": "5111",
+ "high_alch": "0",
+ "currency": "995",
+ "general_store": "false",
+ "id": "256",
+ "title": "Leon's Prototype Crossbow",
+ "stock": "{10156,2,100}"
+ },
+ {
+ "npcs": "2039",
+ "high_alch": "0",
+ "currency": "995",
+ "general_store": "false",
+ "id": "256",
+ "title": "Uglug's Stuffsies",
+ "stock": "{4844,100,10}-{10927,0,100}-{2862,100,100}-{1777,10,200}-{2876,0,500}-{2878,10,100}-{4850,0,100}-{946,5,100}-{4773,0,1000}-{4778,0,1000}-{4783,0,1000}-{4788,0,1500}-{4793,0,2000}-{4798,0,3000}-{4803,0,4000}-{4827,0,2000}"
}
]
\ No newline at end of file
diff --git a/Server/data/configs/varbit_definitions.json b/Server/data/configs/varbit_definitions.json
new file mode 100644
index 000000000..720b1676e
--- /dev/null
+++ b/Server/data/configs/varbit_definitions.json
@@ -0,0 +1,19 @@
+[
+ {
+ "description": "Bank insert mode",
+
+ "varpId": "304",
+ "varbitId": "7000",
+ "startBit": "0",
+ "endBit": "0"
+ },
+
+ {
+ "description": "Bank note mode",
+
+ "varpId": "115",
+ "varbitId": "7001",
+ "startBit": "0",
+ "endBit": "0"
+ }
+]
\ No newline at end of file
diff --git a/Server/data/configs/xteas.json b/Server/data/configs/xteas.json
index e8b3049ed..5b8de21a7 100644
--- a/Server/data/configs/xteas.json
+++ b/Server/data/configs/xteas.json
@@ -1,17 +1,5 @@
{
"xteas": [
- {
- "regionId": "6230",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6231",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6232",
- "keys": "0,0,0,0"
- },
{
"regionId": "6234",
"keys": "-1591922206,-1429764510,-1087339341,1592935185"
@@ -25,16 +13,8 @@
"keys": "779607549,1253385498,-2146148208,-1240685073"
},
{
- "regionId": "6484",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6485",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6486",
- "keys": "0,0,0,0"
+ "regionId": "6483",
+ "keys": "14881828,-6662814,58238456,146761213"
},
{
"regionId": "6487",
@@ -60,50 +40,10 @@
"regionId": "6726",
"keys": "-3492110,65044555,1450623668,-483811536"
},
- {
- "regionId": "6732",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6733",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6734",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6735",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6736",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6737",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6738",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6739",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6740",
- "keys": "0,0,0,0"
- },
{
"regionId": "6741",
"keys": "-1634995791,710519356,-47126463,-1180416882"
},
- {
- "regionId": "6742",
- "keys": "0,0,0,0"
- },
{
"regionId": "6743",
"keys": "-1239303400,-1604922847,-1532369005,982307785"
@@ -117,33 +57,13 @@
"keys": "365190378,-1767339898,2011432030,276148826"
},
{
- "regionId": "6746",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6979",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6980",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6981",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6988",
- "keys": "0,0,0,0"
+ "regionId": "6985",
+ "keys": "1193572731,-1288765743,-386862979,351599890"
},
{
"regionId": "6989",
"keys": "-891749173,-113432144,-1228601828,695082558"
},
- {
- "regionId": "6990",
- "keys": "0,0,0,0"
- },
{
"regionId": "6991",
"keys": "-1448188175,626198836,1985989165,-1062391664"
@@ -164,46 +84,14 @@
"regionId": "6995",
"keys": "-1227889203,-199624313,2143494494,531356102"
},
- {
- "regionId": "6996",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6997",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6998",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "6999",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7000",
- "keys": "0,0,0,0"
- },
{
"regionId": "7001",
"keys": "170738852,2045755396,-1580637869,-1933392334"
},
- {
- "regionId": "7002",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7235",
- "keys": "0,0,0,0"
- },
{
"regionId": "7236",
"keys": "570290255,-1513898184,-1269691884,782850050"
},
- {
- "regionId": "7237",
- "keys": "0,0,0,0"
- },
{
"regionId": "7238",
"keys": "-853120516,1697831503,-12188711,770411534"
@@ -212,14 +100,6 @@
"regionId": "7244",
"keys": "796665731,1335649913,758227393,585095755"
},
- {
- "regionId": "7245",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7246",
- "keys": "0,0,0,0"
- },
{
"regionId": "7247",
"keys": "-122734679,-1029771956,1633683499,846700218"
@@ -236,30 +116,10 @@
"regionId": "7250",
"keys": "497663526,-1258315657,-785166329,-999527877"
},
- {
- "regionId": "7251",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7252",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7490",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7491",
- "keys": "0,0,0,0"
- },
{
"regionId": "7492",
"keys": "417150556,1135530200,2139696777,-742314409"
},
- {
- "regionId": "7493",
- "keys": "0,0,0,0"
- },
{
"regionId": "7494",
"keys": "-1653750072,103282771,384178856,1122166637"
@@ -268,17 +128,9 @@
"regionId": "7496",
"keys": "-1890766195,-149577199,919306397,-954784877"
},
- {
- "regionId": "7497",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7498",
- "keys": "0,0,0,0"
- },
{
"regionId": "7499",
- "keys": "1187151706,718898064,1304406549,-1997198061"
+ "keys": "-2007696984,-1215288615,-1572330641,-2125382604"
},
{
"regionId": "7500",
@@ -304,10 +156,6 @@
"regionId": "7505",
"keys": "-1177354806,-1864641630,23736540,750869235"
},
- {
- "regionId": "7506",
- "keys": "0,0,0,0"
- },
{
"regionId": "7507",
"keys": "-1476331852,1093075535,-2003580146,734573751"
@@ -324,6 +172,10 @@
"regionId": "7510",
"keys": "2073894230,-553352720,274325814,-1461052837"
},
+ {
+ "regionId": "7511",
+ "keys": "14881828,-6662814,58238456,146761213"
+ },
{
"regionId": "7513",
"keys": "1066375195,548376104,-1771348528,1096433429"
@@ -332,10 +184,6 @@
"regionId": "7745",
"keys": "1212560091,-662504525,-1213494614,-1245629284"
},
- {
- "regionId": "7747",
- "keys": "0,0,0,0"
- },
{
"regionId": "7748",
"keys": "-850453392,-249468744,1635462867,100471784"
@@ -344,10 +192,6 @@
"regionId": "7749",
"keys": "369356966,-1038198212,282112206,802717032"
},
- {
- "regionId": "7750",
- "keys": "0,0,0,0"
- },
{
"regionId": "7752",
"keys": "1894158557,20416613,-1434347651,-1209846311"
@@ -384,46 +228,14 @@
"regionId": "7760",
"keys": "2042192998,743878512,-1804236758,-1160501924"
},
- {
- "regionId": "7761",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7762",
- "keys": "0,0,0,0"
- },
{
"regionId": "7763",
"keys": "14881828,-6662814,58238456,146761213"
},
- {
- "regionId": "7764",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7765",
- "keys": "0,0,0,0"
- },
{
"regionId": "7769",
"keys": "560280774,910095015,871073102,263015376"
},
- {
- "regionId": "7995",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7996",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7997",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "7998",
- "keys": "0,0,0,0"
- },
{
"regionId": "8001",
"keys": "690512367,1578449236,-1443501555,546253393"
@@ -432,10 +244,6 @@
"regionId": "8002",
"keys": "1597309277,469931771,1619035792,663887748"
},
- {
- "regionId": "8003",
- "keys": "0,0,0,0"
- },
{
"regionId": "8004",
"keys": "609107948,-755432209,-723012522,1175820911"
@@ -480,26 +288,14 @@
"regionId": "8015",
"keys": "305015825,-634097708,865786116,-1850059578"
},
- {
- "regionId": "8016",
- "keys": "0,0,0,0"
- },
{
"regionId": "8017",
"keys": "959968310,-363819769,-1402232275,-1678358818"
},
- {
- "regionId": "8018",
- "keys": "0,0,0,0"
- },
{
"regionId": "8019",
"keys": "-1512999074,1064201012,2143076355,-1937376726"
},
- {
- "regionId": "8020",
- "keys": "-955989323,1284433026,690014510,2145912092"
- },
{
"regionId": "8021",
"keys": "-297039986,-1011877372,-1763869337,-900998253"
@@ -520,6 +316,14 @@
"regionId": "8241",
"keys": "-320813650,-1654452876,-352291520,-290946896"
},
+ {
+ "regionId": "8242",
+ "keys": "347990635,-1017326068,-1600504696,1565374916"
+ },
+ {
+ "regionId": "8243",
+ "keys": "-107199068,-843304946,910528064,-626516712"
+ },
{
"regionId": "8251",
"keys": "1142567601,1650263019,49659607,-899246535"
@@ -544,6 +348,10 @@
"regionId": "8260",
"keys": "-357122149,-546918388,1659548066,2023267334"
},
+ {
+ "regionId": "8261",
+ "keys": "14881828,-6662814,58238456,146761213"
+ },
{
"regionId": "8262",
"keys": "937196178,1968517712,1697292009,-2036678778"
@@ -568,10 +376,6 @@
"regionId": "8267",
"keys": "-474856962,-1295973639,789657650,-1769058462"
},
- {
- "regionId": "8268",
- "keys": "0,0,0,0"
- },
{
"regionId": "8269",
"keys": "-497435078,2028988145,486156819,-1178938803"
@@ -593,20 +397,8 @@
"keys": "978831670,664328414,1943273766,-1823800887"
},
{
- "regionId": "8274",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8275",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8276",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8277",
- "keys": "0,0,0,0"
+ "regionId": "8280",
+ "keys": "-1615836970,1947387796,2141672540,-333423400"
},
{
"regionId": "8282",
@@ -628,10 +420,6 @@
"regionId": "8499",
"keys": "1158999293,2131770333,-861122128,1149793504"
},
- {
- "regionId": "8500",
- "keys": "0,0,0,0"
- },
{
"regionId": "8506",
"keys": "-1227747958,1491928866,1293676120,2065870654"
@@ -708,30 +496,14 @@
"regionId": "8530",
"keys": "-1466808210,962381183,-1581244207,-457271917"
},
- {
- "regionId": "8531",
- "keys": "0,0,0,0"
- },
{
"regionId": "8532",
"keys": "1553260654,1996107908,-2124357970,1441816370"
},
- {
- "regionId": "8533",
- "keys": "0,0,0,0"
- },
{
"regionId": "8534",
"keys": "1712031920,299813553,484205392,-939092911"
},
- {
- "regionId": "8545",
- "keys": "1322297584,105544016,-1148309508,-574484176"
- },
- {
- "regionId": "8751",
- "keys": "0,0,0,0"
- },
{
"regionId": "8752",
"keys": "238354066,1687454525,1494747147,1911377137"
@@ -748,22 +520,6 @@
"regionId": "8755",
"keys": "-1165798584,772244190,-402783978,541755309"
},
- {
- "regionId": "8756",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8757",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8759",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8760",
- "keys": "0,0,0,0"
- },
{
"regionId": "8761",
"keys": "1760753095,-1427813077,266675077,-255782653"
@@ -788,6 +544,14 @@
"regionId": "8766",
"keys": "1244410566,-1397143615,-1848205088,-1435723900"
},
+ {
+ "regionId": "8767",
+ "keys": "-368125809,-1805271492,-400403765,697149536"
+ },
+ {
+ "regionId": "8768",
+ "keys": "-517024281,-1363386333,227729042,-1950025355"
+ },
{
"regionId": "8769",
"keys": "2044453226,-2064473213,1306128347,784973817"
@@ -824,10 +588,6 @@
"regionId": "8779",
"keys": "-1680845199,-1149954104,-1177525481,-576614197"
},
- {
- "regionId": "8780",
- "keys": "0,0,0,0"
- },
{
"regionId": "8781",
"keys": "-2133721491,843228961,1706232103,-934369964"
@@ -848,34 +608,14 @@
"regionId": "8785",
"keys": "1543774040,-487517297,-1630373503,102220753"
},
- {
- "regionId": "8786",
- "keys": "0,0,0,0"
- },
{
"regionId": "8787",
"keys": "1791798624,-1711313280,166719404,-1487207913"
},
- {
- "regionId": "8788",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "8789",
- "keys": "0,0,0,0"
- },
{
"regionId": "8790",
"keys": "230755787,-1139640838,-21592892,49661984"
},
- {
- "regionId": "9006",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9007",
- "keys": "0,0,0,0"
- },
{
"regionId": "9008",
"keys": "2084752401,-1394447522,2084945842,1474596929"
@@ -896,18 +636,6 @@
"regionId": "9012",
"keys": "1204696185,-486414605,-1016110497,134649113"
},
- {
- "regionId": "9013",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9014",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9015",
- "keys": "0,0,0,0"
- },
{
"regionId": "9016",
"keys": "-1274221467,730617286,-1448054569,427043430"
@@ -932,6 +660,14 @@
"regionId": "9021",
"keys": "-665917952,-432697139,-602494723,-2097936281"
},
+ {
+ "regionId": "9022",
+ "keys": "1910381678,352194237,836248,347278834"
+ },
+ {
+ "regionId": "9024",
+ "keys": "-785865296,-520648067,-1207176889,-441641818"
+ },
{
"regionId": "9025",
"keys": "1812159970,1795526437,1172074678,289074337"
@@ -960,34 +696,10 @@
"regionId": "9035",
"keys": "1525685385,1372975156,-2010144170,-1594192581"
},
- {
- "regionId": "9036",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9037",
- "keys": "0,0,0,0"
- },
{
"regionId": "9038",
"keys": "-473165893,2110570897,-1726275929,806180444"
},
- {
- "regionId": "9040",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9041",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9042",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9043",
- "keys": "0,0,0,0"
- },
{
"regionId": "9044",
"keys": "1541894861,-2145670115,-138793212,-921922364"
@@ -1012,18 +724,6 @@
"regionId": "9050",
"keys": "-1725663967,1678055280,1100896300,706957861"
},
- {
- "regionId": "9109",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9110",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9111",
- "keys": "0,0,0,0"
- },
{
"regionId": "9113",
"keys": "-570298090,-864625293,-668545435,8389096"
@@ -1032,18 +732,6 @@
"regionId": "9114",
"keys": "-962790446,-1706163576,82969599,310163719"
},
- {
- "regionId": "9120",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9121",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9122",
- "keys": "0,0,0,0"
- },
{
"regionId": "9262",
"keys": "-1327237404,-257519940,-1398355053,-970581711"
@@ -1109,21 +797,21 @@
"keys": "272801923,1797149371,-131972865,1265002008"
},
{
- "regionId": "9283",
- "keys": "0,0,0,0"
+ "regionId": "9278",
+ "keys": "-1782196006,1021278723,887209787,-1016997291"
},
{
- "regionId": "9284",
- "keys": "0,0,0,0"
+ "regionId": "9279",
+ "keys": "-841578670,318269186,-353500843,-932268603"
+ },
+ {
+ "regionId": "9280",
+ "keys": "727010382,181752242,1033156911,1262921484"
},
{
"regionId": "9285",
"keys": "1742241898,-1564206342,-460725435,1614032789"
},
- {
- "regionId": "9286",
- "keys": "0,0,0,0"
- },
{
"regionId": "9287",
"keys": "-272431907,639665846,-1633276264,1645937141"
@@ -1140,14 +828,6 @@
"regionId": "9290",
"keys": "702687456,43635181,-1983533012,-319469910"
},
- {
- "regionId": "9291",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9292",
- "keys": "0,0,0,0"
- },
{
"regionId": "9293",
"keys": "-810831340,-1857428683,-892017185,249052010"
@@ -1160,30 +840,14 @@
"regionId": "9295",
"keys": "224580924,-858933614,-432602901,-1433710083"
},
- {
- "regionId": "9296",
- "keys": "0,0,0,0"
- },
{
"regionId": "9297",
"keys": "-1667110403,-655319123,-2124588845,-262291671"
},
- {
- "regionId": "9298",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9299",
- "keys": "0,0,0,0"
- },
{
"regionId": "9300",
"keys": "644587156,-605721698,681391959,1688865408"
},
- {
- "regionId": "9301",
- "keys": "0,0,0,0"
- },
{
"regionId": "9304",
"keys": "14881828,-6662814,58238456,146761213"
@@ -1200,10 +864,6 @@
"regionId": "9362",
"keys": "-253025041,376209206,1663580032,1115549308"
},
- {
- "regionId": "9363",
- "keys": "0,0,0,0"
- },
{
"regionId": "9364",
"keys": "1350964684,-1141243546,-158288919,1853454502"
@@ -1216,10 +876,6 @@
"regionId": "9366",
"keys": "-1691974727,-1591730841,1506117200,822346809"
},
- {
- "regionId": "9367",
- "keys": "0,0,0,0"
- },
{
"regionId": "9368",
"keys": "-911562498,-1433720091,257702084,1652121807"
@@ -1240,30 +896,10 @@
"regionId": "9372",
"keys": "1005996231,-569567890,-1578994771,-1136932414"
},
- {
- "regionId": "9376",
- "keys": "0,0,0,0"
- },
{
"regionId": "9377",
"keys": "-1671261866,-750153286,1731026368,-1501269926"
},
- {
- "regionId": "9378",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9515",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9516",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9517",
- "keys": "0,0,0,0"
- },
{
"regionId": "9518",
"keys": "-557639005,398566091,-133936467,-850662847"
@@ -1328,6 +964,14 @@
"regionId": "9533",
"keys": "1393307887,646464303,-1582337843,2048412434"
},
+ {
+ "regionId": "9534",
+ "keys": "-2072244370,1114739695,-1096608867,-1932870993"
+ },
+ {
+ "regionId": "9535",
+ "keys": "-1107428972,531677783,-1575581308,1343828898"
+ },
{
"regionId": "9536",
"keys": "679931979,-1660801436,-1184954844,-1006016912"
@@ -1344,10 +988,6 @@
"regionId": "9541",
"keys": "1352006827,1096305726,805420370,-1426885864"
},
- {
- "regionId": "9542",
- "keys": "0,0,0,0"
- },
{
"regionId": "9543",
"keys": "1852273964,-104833248,-2069080639,-188650169"
@@ -1368,10 +1008,6 @@
"regionId": "9547",
"keys": "-1998382641,30700550,1548517068,-855708219"
},
- {
- "regionId": "9548",
- "keys": "0,0,0,0"
- },
{
"regionId": "9549",
"keys": "-1648136735,1402264941,639592027,348907048"
@@ -1392,22 +1028,10 @@
"regionId": "9553",
"keys": "-1873675730,-1930195432,759400017,-1395479956"
},
- {
- "regionId": "9554",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9555",
- "keys": "0,0,0,0"
- },
{
"regionId": "9556",
"keys": "-300312374,-1152515846,-863452271,-1500855067"
},
- {
- "regionId": "9557",
- "keys": "0,0,0,0"
- },
{
"regionId": "9558",
"keys": "1245928204,-1892089406,-1321168410,-1108146443"
@@ -1424,10 +1048,6 @@
"regionId": "9562",
"keys": "-1047298777,1197811918,663745433,-2098029011"
},
- {
- "regionId": "9619",
- "keys": "0,0,0,0"
- },
{
"regionId": "9620",
"keys": "1941157140,-1630547377,-1114648519,87057467"
@@ -1456,18 +1076,6 @@
"regionId": "9626",
"keys": "-1411729186,1049744836,-1608961973,-1681145313"
},
- {
- "regionId": "9627",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9629",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9630",
- "keys": "0,0,0,0"
- },
{
"regionId": "9631",
"keys": "1266963397,269916041,734658458,725243574"
@@ -1476,18 +1084,6 @@
"regionId": "9632",
"keys": "1023657558,-2001662423,-46679010,2064543607"
},
- {
- "regionId": "9633",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9634",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9771",
- "keys": "0,0,0,0"
- },
{
"regionId": "9772",
"keys": "-1742165439,-1273697376,2055229018,901215817"
@@ -1560,6 +1156,10 @@
"regionId": "9789",
"keys": "-620749099,528872615,1976629038,667155751"
},
+ {
+ "regionId": "9791",
+ "keys": "-2105683947,1913166182,-1697741730,-25818496"
+ },
{
"regionId": "9792",
"keys": "1500471532,1729075639,-304984137,1117230148"
@@ -1568,10 +1168,6 @@
"regionId": "9794",
"keys": "1788083183,2097372895,1633476682,-589223611"
},
- {
- "regionId": "9795",
- "keys": "0,0,0,0"
- },
{
"regionId": "9796",
"keys": "517509106,-2019799796,1066150754,-676371780"
@@ -1580,10 +1176,6 @@
"regionId": "9797",
"keys": "672333395,-284721288,262558790,-344798491"
},
- {
- "regionId": "9798",
- "keys": "0,0,0,0"
- },
{
"regionId": "9799",
"keys": "181886191,758691911,810524169,1456599388"
@@ -1616,10 +1208,6 @@
"regionId": "9806",
"keys": "368995667,940146211,957819918,-761335591"
},
- {
- "regionId": "9807",
- "keys": "0,0,0,0"
- },
{
"regionId": "9808",
"keys": "308766586,-214665927,-1255727041,-1034716346"
@@ -1640,10 +1228,6 @@
"regionId": "9812",
"keys": "50571970,-1762921782,-1667424270,524742325"
},
- {
- "regionId": "9813",
- "keys": "0,0,0,0"
- },
{
"regionId": "9814",
"keys": "-34428628,1940609264,-1638642159,-295486604"
@@ -1688,38 +1272,14 @@
"regionId": "9883",
"keys": "472234846,1198089044,500187071,239458328"
},
- {
- "regionId": "9884",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9885",
- "keys": "0,0,0,0"
- },
{
"regionId": "9886",
"keys": "1515209815,-1457146379,-146402808,-1454274033"
},
- {
- "regionId": "9887",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9888",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "9889",
- "keys": "0,0,0,0"
- },
{
"regionId": "10027",
"keys": "1491811841,1724263915,-1397066186,1733646819"
},
- {
- "regionId": "10028",
- "keys": "0,0,0,0"
- },
{
"regionId": "10029",
"keys": "203145796,-773666188,-569831878,-1510455793"
@@ -1744,10 +1304,6 @@
"regionId": "10034",
"keys": "-1435464304,-836439389,-788586899,1579582706"
},
- {
- "regionId": "10035",
- "keys": "0,0,0,0"
- },
{
"regionId": "10036",
"keys": "689954852,-1377739344,-847433475,-1883927289"
@@ -1788,26 +1344,18 @@
"regionId": "10045",
"keys": "-1429464298,1580360509,-1936477065,-337842786"
},
+ {
+ "regionId": "10046",
+ "keys": "1579643227,-1819574910,1035634488,-1469908551"
+ },
+ {
+ "regionId": "10047",
+ "keys": "1248461784,913422340,-928862457,-1858877253"
+ },
{
"regionId": "10048",
"keys": "-1457016886,349941309,-400267403,-1711584223"
},
- {
- "regionId": "10051",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10052",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10053",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10054",
- "keys": "0,0,0,0"
- },
{
"regionId": "10055",
"keys": "-813287484,-1417786621,-1794468339,578992617"
@@ -1828,10 +1376,6 @@
"regionId": "10059",
"keys": "1185163869,-1047826729,-1461057337,139139001"
},
- {
- "regionId": "10060",
- "keys": "0,0,0,0"
- },
{
"regionId": "10061",
"keys": "1683880127,1851133137,-567572662,-1477799312"
@@ -1840,10 +1384,6 @@
"regionId": "10062",
"keys": "2024717410,-1807032706,1106507805,1426160484"
},
- {
- "regionId": "10063",
- "keys": "0,0,0,0"
- },
{
"regionId": "10064",
"keys": "1978019309,1433546802,-1989346624,-1611361553"
@@ -1856,10 +1396,6 @@
"regionId": "10066",
"keys": "105954939,-1741244981,-1491777272,207112205"
},
- {
- "regionId": "10067",
- "keys": "0,0,0,0"
- },
{
"regionId": "10068",
"keys": "-452138979,-1929816521,364996963,-1315825295"
@@ -1936,26 +1472,14 @@
"regionId": "10140",
"keys": "-104825447,-1092637213,-105814713,-2129567531"
},
- {
- "regionId": "10141",
- "keys": "0,0,0,0"
- },
{
"regionId": "10142",
"keys": "1872120942,-765842959,449655176,-1168971827"
},
- {
- "regionId": "10143",
- "keys": "0,0,0,0"
- },
{
"regionId": "10144",
"keys": "265530509,2033515489,-2022406749,-591072091"
},
- {
- "regionId": "10145",
- "keys": "0,0,0,0"
- },
{
"regionId": "10280",
"keys": "-1245893544,-118079793,-1624599660,-626968532"
@@ -1972,10 +1496,6 @@
"regionId": "10283",
"keys": "-2133080221,1327669620,173304076,-151662318"
},
- {
- "regionId": "10284",
- "keys": "0,0,0,0"
- },
{
"regionId": "10285",
"keys": "-1317120534,1321149083,-1700628824,1028203235"
@@ -2000,10 +1520,6 @@
"regionId": "10290",
"keys": "-587752684,-318735232,336724431,-1931735346"
},
- {
- "regionId": "10291",
- "keys": "0,0,0,0"
- },
{
"regionId": "10292",
"keys": "933507835,1135929795,-1932059890,1492191263"
@@ -2092,10 +1608,6 @@
"regionId": "10315",
"keys": "-1034094191,1810212216,618808107,1905492210"
},
- {
- "regionId": "10316",
- "keys": "0,0,0,0"
- },
{
"regionId": "10317",
"keys": "216403117,1910251124,144162918,224240414"
@@ -2104,14 +1616,6 @@
"regionId": "10318",
"keys": "1053988597,-2121917140,1730755899,1549334321"
},
- {
- "regionId": "10319",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10320",
- "keys": "0,0,0,0"
- },
{
"regionId": "10321",
"keys": "1996825886,-1552231723,1721080145,-869420516"
@@ -2120,18 +1624,10 @@
"regionId": "10322",
"keys": "1773602876,-1410394076,-239593243,148286798"
},
- {
- "regionId": "10323",
- "keys": "0,0,0,0"
- },
{
"regionId": "10324",
"keys": "-1670587478,-401532783,1705875521,995683837"
},
- {
- "regionId": "10325",
- "keys": "0,0,0,0"
- },
{
"regionId": "10326",
"keys": "-375687378,472100528,-288941184,523344380"
@@ -2192,26 +1688,10 @@
"regionId": "10396",
"keys": "-1878072140,1648991920,1054624070,333445417"
},
- {
- "regionId": "10397",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10398",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10399",
- "keys": "0,0,0,0"
- },
{
"regionId": "10400",
"keys": "-1656816922,1318311812,-811481661,1625916625"
},
- {
- "regionId": "10401",
- "keys": "0,0,0,0"
- },
{
"regionId": "10536",
"keys": "349537117,1202512092,-698870718,-2083455397"
@@ -2256,10 +1736,6 @@
"regionId": "10546",
"keys": "192659093,263441429,29086759,670094037"
},
- {
- "regionId": "10547",
- "keys": "0,0,0,0"
- },
{
"regionId": "10548",
"keys": "-1157394711,-1306553144,2105373539,798383108"
@@ -2316,10 +1792,6 @@
"regionId": "10564",
"keys": "1279522133,380240348,604239496,1759916207"
},
- {
- "regionId": "10565",
- "keys": "0,0,0,0"
- },
{
"regionId": "10566",
"keys": "221004409,1368318650,-1237341956,25411913"
@@ -2348,10 +1820,6 @@
"regionId": "10572",
"keys": "-1375061166,-1411427241,-294467489,-2106748278"
},
- {
- "regionId": "10573",
- "keys": "0,0,0,0"
- },
{
"regionId": "10574",
"keys": "-1609693854,991245740,148787249,-1011766477"
@@ -2360,10 +1828,6 @@
"regionId": "10575",
"keys": "434036980,-780702800,-1042242727,-354464628"
},
- {
- "regionId": "10576",
- "keys": "0,0,0,0"
- },
{
"regionId": "10577",
"keys": "824897954,-1807466644,2079017570,1299975025"
@@ -2377,12 +1841,8 @@
"keys": "-123618550,684067223,486273630,-1103816964"
},
{
- "regionId": "10580",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10637",
- "keys": "0,0,0,0"
+ "regionId": "10583",
+ "keys": "14881828,-6662814,58238456,146761213"
},
{
"regionId": "10638",
@@ -2432,10 +1892,6 @@
"regionId": "10650",
"keys": "-908578223,-911827513,1137573080,-419444146"
},
- {
- "regionId": "10651",
- "keys": "0,0,0,0"
- },
{
"regionId": "10652",
"keys": "1580722385,609745227,1407021351,1098485033"
@@ -2444,22 +1900,6 @@
"regionId": "10653",
"keys": "570189753,-1700559836,2108215671,-701775893"
},
- {
- "regionId": "10654",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10655",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10656",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "10657",
- "keys": "0,0,0,0"
- },
{
"regionId": "10792",
"keys": "-125671574,254943715,1343095705,-1965171670"
@@ -2500,10 +1940,6 @@
"regionId": "10801",
"keys": "850125851,1199386038,-1494136472,-1487577933"
},
- {
- "regionId": "10802",
- "keys": "0,0,0,0"
- },
{
"regionId": "10803",
"keys": "-1028081880,964144306,174845257,1906118817"
@@ -2556,6 +1992,10 @@
"regionId": "10815",
"keys": "2102925673,1133406202,-1885710196,165240951"
},
+ {
+ "regionId": "10816",
+ "keys": "-1909517714,218137505,744896894,831968418"
+ },
{
"regionId": "10819",
"keys": "-904401587,-2054970579,55120674,-1889562804"
@@ -2596,10 +2036,6 @@
"regionId": "10828",
"keys": "1665018619,-1607107877,-1997272567,1342325223"
},
- {
- "regionId": "10829",
- "keys": "0,0,0,0"
- },
{
"regionId": "10830",
"keys": "-608096960,58771202,1174291927,-1613596249"
@@ -2620,18 +2056,10 @@
"regionId": "10834",
"keys": "-1640569486,-512141704,-1179536382,720004469"
},
- {
- "regionId": "10835",
- "keys": "0,0,0,0"
- },
{
"regionId": "10836",
"keys": "1637505449,619992365,-1935536269,-1526242295"
},
- {
- "regionId": "10837",
- "keys": "0,0,0,0"
- },
{
"regionId": "10838",
"keys": "1678881362,-952862831,-1804688659,-1247653912"
@@ -2728,10 +2156,6 @@
"regionId": "10911",
"keys": "948965123,-545528654,-459191491,-860302360"
},
- {
- "regionId": "10912",
- "keys": "0,0,0,0"
- },
{
"regionId": "11049",
"keys": "-621090199,-1004888612,-749707219,2052444337"
@@ -2856,30 +2280,14 @@
"regionId": "11083",
"keys": "1255503855,-674022312,-807132804,-1287799121"
},
- {
- "regionId": "11084",
- "keys": "0,0,0,0"
- },
{
"regionId": "11085",
"keys": "327229160,-1433790638,1944433240,234034136"
},
- {
- "regionId": "11086",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11087",
- "keys": "0,0,0,0"
- },
{
"regionId": "11088",
"keys": "-1943123304,1713176080,-1524844090,-445387865"
},
- {
- "regionId": "11089",
- "keys": "0,0,0,0"
- },
{
"regionId": "11090",
"keys": "2089067081,828176382,-1112393031,-1452165920"
@@ -2888,10 +2296,6 @@
"regionId": "11091",
"keys": "977844365,-245927723,99303766,-735341354"
},
- {
- "regionId": "11092",
- "keys": "0,0,0,0"
- },
{
"regionId": "11093",
"keys": "-379710910,-2088433559,1180928189,-54938349"
@@ -2956,14 +2360,6 @@
"regionId": "11158",
"keys": "160361538,733169435,1244326761,1681727551"
},
- {
- "regionId": "11159",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11160",
- "keys": "0,0,0,0"
- },
{
"regionId": "11161",
"keys": "-1713920755,1291269906,320754968,741637543"
@@ -2992,10 +2388,6 @@
"regionId": "11167",
"keys": "-1735216162,2141149053,57787230,-1263840909"
},
- {
- "regionId": "11168",
- "keys": "0,0,0,0"
- },
{
"regionId": "11305",
"keys": "-1429346525,-118378130,1002549662,1383588995"
@@ -3072,10 +2464,6 @@
"regionId": "11323",
"keys": "-1710808226,725482732,1863997544,5983834"
},
- {
- "regionId": "11324",
- "keys": "0,0,0,0"
- },
{
"regionId": "11326",
"keys": "1862093150,1696245244,1320714102,1241887579"
@@ -3092,30 +2480,14 @@
"regionId": "11332",
"keys": "-936631483,-1093055133,-161202591,-1476364681"
},
- {
- "regionId": "11333",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11334",
- "keys": "0,0,0,0"
- },
{
"regionId": "11335",
"keys": "-133492081,-915358326,-714649892,-2093709476"
},
- {
- "regionId": "11338",
- "keys": "0,0,0,0"
- },
{
"regionId": "11339",
"keys": "140118336,-1920268877,-1967576060,-1437209189"
},
- {
- "regionId": "11340",
- "keys": "0,0,0,0"
- },
{
"regionId": "11341",
"keys": "-1219163353,-1635920416,-2124217842,-1318908036"
@@ -3136,14 +2508,6 @@
"regionId": "11347",
"keys": "-122396964,-1996200666,-585000602,-863390951"
},
- {
- "regionId": "11348",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11349",
- "keys": "0,0,0,0"
- },
{
"regionId": "11350",
"keys": "-1365557009,-1350738529,-1074800707,-446118748"
@@ -3168,22 +2532,10 @@
"regionId": "11356",
"keys": "2033204014,1416145849,-1721330996,2134394884"
},
- {
- "regionId": "11405",
- "keys": "0,0,0,0"
- },
{
"regionId": "11406",
"keys": "375301159,353365492,-940259891,-223647771"
},
- {
- "regionId": "11407",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11408",
- "keys": "0,0,0,0"
- },
{
"regionId": "11409",
"keys": "1937092760,-1545935537,29954084,-1081016062"
@@ -3192,10 +2544,6 @@
"regionId": "11410",
"keys": "1509299526,-892391942,1485831814,1255407038"
},
- {
- "regionId": "11411",
- "keys": "0,0,0,0"
- },
{
"regionId": "11412",
"keys": "-1379772393,621580805,-316850307,1026773740"
@@ -3300,10 +2648,6 @@
"regionId": "11572",
"keys": "892185929,686162443,1793819023,-992991976"
},
- {
- "regionId": "11573",
- "keys": "0,0,0,0"
- },
{
"regionId": "11574",
"keys": "-1406155502,13961326,1071473330,1528558089"
@@ -3320,22 +2664,10 @@
"regionId": "11577",
"keys": "1283493672,1550135524,-1621670256,769418438"
},
- {
- "regionId": "11578",
- "keys": "0,0,0,0"
- },
{
"regionId": "11579",
"keys": "-719996638,-1831948234,494156672,1684753309"
},
- {
- "regionId": "11580",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11581",
- "keys": "0,0,0,0"
- },
{
"regionId": "11582",
"keys": "602331327,-1036793753,1702673112,-1107214996"
@@ -3360,18 +2692,10 @@
"regionId": "11589",
"keys": "39678032,469576041,-1878694956,-1720799345"
},
- {
- "regionId": "11590",
- "keys": "0,0,0,0"
- },
{
"regionId": "11591",
"keys": "1300749474,-912770362,-1665451776,480747745"
},
- {
- "regionId": "11592",
- "keys": "0,0,0,0"
- },
{
"regionId": "11593",
"keys": "14881828,-6662814,58238456,146761213"
@@ -3384,26 +2708,14 @@
"regionId": "11595",
"keys": "-1497259084,-1208341848,874209282,-1950133061"
},
- {
- "regionId": "11596",
- "keys": "0,0,0,0"
- },
{
"regionId": "11597",
"keys": "-824244627,-1750674106,-2032396270,-451550546"
},
- {
- "regionId": "11598",
- "keys": "0,0,0,0"
- },
{
"regionId": "11599",
"keys": "-1124938025,110281395,-1121479364,68953473"
},
- {
- "regionId": "11600",
- "keys": "0,0,0,0"
- },
{
"regionId": "11601",
"keys": "722657934,1495340205,-437272583,-1331954618"
@@ -3416,10 +2728,6 @@
"regionId": "11603",
"keys": "-254635141,-1757221941,-2072225761,-752948578"
},
- {
- "regionId": "11604",
- "keys": "0,0,0,0"
- },
{
"regionId": "11605",
"keys": "57037316,1119657363,2040370510,801474589"
@@ -3428,10 +2736,6 @@
"regionId": "11606",
"keys": "-1790275662,-1050505330,-1496410655,679769180"
},
- {
- "regionId": "11607",
- "keys": "0,0,0,0"
- },
{
"regionId": "11608",
"keys": "248039728,1861834308,1335200688,317723667"
@@ -3440,10 +2744,6 @@
"regionId": "11609",
"keys": "-1581925228,-215021003,-1695323698,-1853661356"
},
- {
- "regionId": "11610",
- "keys": "0,0,0,0"
- },
{
"regionId": "11612",
"keys": "-1751954695,954770889,-337304771,986015401"
@@ -3548,14 +2848,6 @@
"regionId": "11824",
"keys": "-1116727390,-659788658,307002260,354360287"
},
- {
- "regionId": "11825",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11826",
- "keys": "0,0,0,0"
- },
{
"regionId": "11827",
"keys": "379001889,1835230493,1861106702,338991847"
@@ -3616,42 +2908,10 @@
"regionId": "11844",
"keys": "46502425,-1301719099,-1597781617,1434487073"
},
- {
- "regionId": "11845",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11846",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11847",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11848",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11849",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11850",
- "keys": "0,0,0,0"
- },
{
"regionId": "11851",
"keys": "-516358140,791692293,-1663509747,1243508195"
},
- {
- "regionId": "11852",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11853",
- "keys": "0,0,0,0"
- },
{
"regionId": "11854",
"keys": "311566497,-486013229,1351929142,744327317"
@@ -3660,30 +2920,10 @@
"regionId": "11855",
"keys": "770787544,-1305958539,670684335,208100825"
},
- {
- "regionId": "11856",
- "keys": "0,0,0,0"
- },
{
"regionId": "11857",
"keys": "150488681,419659968,-1871963555,1031596369"
},
- {
- "regionId": "11858",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11859",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11860",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11861",
- "keys": "0,0,0,0"
- },
{
"regionId": "11862",
"keys": "2071521092,797384499,364423664,-1286422461"
@@ -3728,10 +2968,6 @@
"regionId": "11926",
"keys": "-501586879,235710413,-1122707717,-354940885"
},
- {
- "regionId": "11927",
- "keys": "0,0,0,0"
- },
{
"regionId": "11928",
"keys": "-445378710,-788377286,1363332226,627739779"
@@ -3744,18 +2980,6 @@
"regionId": "11930",
"keys": "1436132147,-902725534,590285278,2018675988"
},
- {
- "regionId": "11931",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11932",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "11933",
- "keys": "0,0,0,0"
- },
{
"regionId": "11934",
"keys": "-854127330,1609124159,-999989310,-734721734"
@@ -3764,22 +2988,10 @@
"regionId": "11935",
"keys": "-1453725493,-1575973068,1979334907,1130399929"
},
- {
- "regionId": "11936",
- "keys": "0,0,0,0"
- },
{
"regionId": "11937",
"keys": "-1518927827,1819850502,-992647105,299958470"
},
- {
- "regionId": "11938",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12073",
- "keys": "-882281631,257910959,1642484329,-1342807140"
- },
{
"regionId": "12076",
"keys": "193939514,-115011236,-1406304015,-1626342231"
@@ -3860,26 +3072,10 @@
"regionId": "12097",
"keys": "-862465947,2109948185,583246321,-850147469"
},
- {
- "regionId": "12098",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12099",
- "keys": "0,0,0,0"
- },
{
"regionId": "12100",
"keys": "1852910519,712916664,1670787779,1294835477"
},
- {
- "regionId": "12101",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12102",
- "keys": "14881828,-6662814,58238456,146761213"
- },
{
"regionId": "12105",
"keys": "1153497516,-449169462,-635419798,-1471828315"
@@ -3908,10 +3104,6 @@
"regionId": "12111",
"keys": "-746445771,1759120362,1253848335,1433199232"
},
- {
- "regionId": "12112",
- "keys": "0,0,0,0"
- },
{
"regionId": "12113",
"keys": "-1749952613,1569535680,1900425482,-1993748284"
@@ -3920,10 +3112,6 @@
"regionId": "12115",
"keys": "2146362785,1996258091,-613445101,539756591"
},
- {
- "regionId": "12116",
- "keys": "0,0,0,0"
- },
{
"regionId": "12117",
"keys": "-97063310,1962833557,-849078816,-1560293275"
@@ -3960,10 +3148,6 @@
"regionId": "12182",
"keys": "-499997333,1910872683,-234510566,-361238419"
},
- {
- "regionId": "12183",
- "keys": "0,0,0,0"
- },
{
"regionId": "12184",
"keys": "-1993918550,1977224805,-1048356116,-1578331413"
@@ -3976,10 +3160,6 @@
"regionId": "12186",
"keys": "-259674875,-949495016,1835821953,1740556829"
},
- {
- "regionId": "12187",
- "keys": "0,0,0,0"
- },
{
"regionId": "12188",
"keys": "22801476,-1237575758,2139201694,-163382547"
@@ -3988,26 +3168,10 @@
"regionId": "12189",
"keys": "-626419958,-861781849,-400257621,465575053"
},
- {
- "regionId": "12191",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12192",
- "keys": "0,0,0,0"
- },
{
"regionId": "12193",
"keys": "1013552068,-364826455,4137749,729786125"
},
- {
- "regionId": "12194",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12332",
- "keys": "0,0,0,0"
- },
{
"regionId": "12333",
"keys": "372281878,-809369100,-1989039261,-980074402"
@@ -4096,54 +3260,18 @@
"regionId": "12356",
"keys": "-1201681208,106398334,-2123418385,1010672418"
},
- {
- "regionId": "12362",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12363",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12364",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12365",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12366",
- "keys": "0,0,0,0"
- },
{
"regionId": "12367",
"keys": "-2006617355,-1390093250,-1950318553,1842364433"
},
- {
- "regionId": "12368",
- "keys": "0,0,0,0"
- },
{
"regionId": "12369",
"keys": "-891954120,1710352781,-1883639556,-1461026236"
},
- {
- "regionId": "12372",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12373",
- "keys": "0,0,0,0"
- },
{
"regionId": "12374",
"keys": "1620519366,-1309341299,68411383,1308746010"
},
- {
- "regionId": "12375",
- "keys": "0,0,0,0"
- },
{
"regionId": "12376",
"keys": "1918934265,1530066885,-1991367516,1783839145"
@@ -4188,38 +3316,10 @@
"regionId": "12442",
"keys": "1883167946,191149821,-1270401415,-126025128"
},
- {
- "regionId": "12443",
- "keys": "0,0,0,0"
- },
{
"regionId": "12444",
"keys": "1576354846,-1768236409,821965805,-861456742"
},
- {
- "regionId": "12447",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12448",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12449",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12450",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12587",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12588",
- "keys": "0,0,0,0"
- },
{
"regionId": "12589",
"keys": "1981659006,1591583400,1958084245,667979721"
@@ -4308,10 +3408,6 @@
"regionId": "12614",
"keys": "1621048325,1179863793,357058137,-1896311701"
},
- {
- "regionId": "12615",
- "keys": "0,0,0,0"
- },
{
"regionId": "12616",
"keys": "1951523008,-2131232747,-381301931,2007660709"
@@ -4324,26 +3420,14 @@
"regionId": "12619",
"keys": "1922733696,773456556,-1923866275,-1305839916"
},
- {
- "regionId": "12620",
- "keys": "0,0,0,0"
- },
{
"regionId": "12621",
"keys": "1619333755,-1869146576,77302288,-937694202"
},
- {
- "regionId": "12622",
- "keys": "0,0,0,0"
- },
{
"regionId": "12623",
"keys": "-369583241,545715110,-134871454,1404138108"
},
- {
- "regionId": "12624",
- "keys": "0,0,0,0"
- },
{
"regionId": "12625",
"keys": "-260562230,1208275247,436993278,30028881"
@@ -4364,18 +3448,6 @@
"regionId": "12631",
"keys": "693308333,-269450306,-924437218,309489139"
},
- {
- "regionId": "12632",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12633",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12634",
- "keys": "0,0,0,0"
- },
{
"regionId": "12688",
"keys": "1861636222,1638403446,-649444098,2131977195"
@@ -4392,10 +3464,6 @@
"regionId": "12691",
"keys": "-998717750,-178246764,973015517,-1732934591"
},
- {
- "regionId": "12692",
- "keys": "0,0,0,0"
- },
{
"regionId": "12693",
"keys": "1339198001,799729854,-750687990,1703141753"
@@ -4404,10 +3472,6 @@
"regionId": "12694",
"keys": "631068451,-510806123,2026757696,207332608"
},
- {
- "regionId": "12695",
- "keys": "0,0,0,0"
- },
{
"regionId": "12696",
"keys": "690970369,-466418236,-666391415,1091047140"
@@ -4428,10 +3492,6 @@
"regionId": "12700",
"keys": "-1802430094,1220107446,-1897971895,-1437873968"
},
- {
- "regionId": "12842",
- "keys": "0,0,0,0"
- },
{
"regionId": "12843",
"keys": "-203885401,22803731,234561826,140244374"
@@ -4460,22 +3520,6 @@
"regionId": "12849",
"keys": "183396243,-461663209,-212681663,-266126212"
},
- {
- "regionId": "12850",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12851",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12852",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12853",
- "keys": "0,0,0,0"
- },
{
"regionId": "12854",
"keys": "-648789394,672092351,713515997,1153393095"
@@ -4525,24 +3569,12 @@
"keys": "1462732309,395803116,803023666,-1139113006"
},
{
- "regionId": "12874",
- "keys": "0,0,0,0"
+ "regionId": "12869",
+ "keys": "14881828,-6662814,58238456,146761213"
},
{
- "regionId": "12875",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12876",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12877",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "12878",
- "keys": "0,0,0,0"
+ "regionId": "12870",
+ "keys": "14881828,-6662814,58238456,146761213"
},
{
"regionId": "12879",
@@ -4620,10 +3652,6 @@
"regionId": "12956",
"keys": "-1383918319,-1190517730,-1037058957,534994622"
},
- {
- "regionId": "13098",
- "keys": "0,0,0,0"
- },
{
"regionId": "13099",
"keys": "919393388,-1011543647,454982828,-809340931"
@@ -4648,14 +3676,6 @@
"regionId": "13104",
"keys": "-421493992,1381068261,1710426242,2142500778"
},
- {
- "regionId": "13105",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13106",
- "keys": "0,0,0,0"
- },
{
"regionId": "13107",
"keys": "-1161498786,-880845643,1588242926,2124040528"
@@ -4716,33 +3736,21 @@
"regionId": "13126",
"keys": "1732039952,536833573,-81136437,1031070663"
},
- {
- "regionId": "13130",
- "keys": "0,0,0,0"
- },
{
"regionId": "13131",
"keys": "-1234145533,479347649,1835828804,1685593501"
},
- {
- "regionId": "13132",
- "keys": "0,0,0,0"
- },
{
"regionId": "13133",
"keys": "-1026003062,917176839,-84576515,-1037395862"
},
- {
- "regionId": "13134",
- "keys": "0,0,0,0"
- },
{
"regionId": "13135",
"keys": "425723212,580084357,1788364975,1608414630"
},
{
- "regionId": "13136",
- "keys": "0,0,0,0"
+ "regionId": "13138",
+ "keys": "14881828,-6662814,58238456,146761213"
},
{
"regionId": "13140",
@@ -4780,10 +3788,6 @@
"regionId": "13203",
"keys": "-1342258113,-2106603709,395365404,-973258459"
},
- {
- "regionId": "13204",
- "keys": "0,0,0,0"
- },
{
"regionId": "13205",
"keys": "1250202258,-2009534633,1981493488,10068968"
@@ -4792,14 +3796,6 @@
"regionId": "13206",
"keys": "1456157358,1036496685,-1478577110,-1039552689"
},
- {
- "regionId": "13207",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13208",
- "keys": "0,0,0,0"
- },
{
"regionId": "13209",
"keys": "-441828435,-1834839387,-1652863357,1161715526"
@@ -4909,24 +3905,8 @@
"keys": "50769406,1445159687,1657343198,-1977600563"
},
{
- "regionId": "13388",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13389",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13397",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13398",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13399",
- "keys": "0,0,0,0"
+ "regionId": "13393",
+ "keys": "14881828,-6662814,58238456,146761213"
},
{
"regionId": "13456",
@@ -4972,10 +3952,6 @@
"regionId": "13466",
"keys": "-460228398,-76181685,2062962515,1167974062"
},
- {
- "regionId": "13467",
- "keys": "0,0,0,0"
- },
{
"regionId": "13610",
"keys": "-1259340500,2094890289,-1255134464,1578867778"
@@ -5024,10 +4000,6 @@
"regionId": "13621",
"keys": "-1291167236,-1205011126,-1949699235,1530879202"
},
- {
- "regionId": "13622",
- "keys": "0,0,0,0"
- },
{
"regionId": "13623",
"keys": "-1700397822,-1427942931,1638091118,438962861"
@@ -5072,10 +4044,6 @@
"regionId": "13643",
"keys": "1113875885,-236852397,193142585,-854043613"
},
- {
- "regionId": "13644",
- "keys": "0,0,0,0"
- },
{
"regionId": "13650",
"keys": "-1281992532,-252178835,-207196406,32900092"
@@ -5088,10 +4056,6 @@
"regionId": "13713",
"keys": "676853493,-1887443315,-998811191,1947183065"
},
- {
- "regionId": "13715",
- "keys": "0,0,0,0"
- },
{
"regionId": "13716",
"keys": "-913580283,340446282,893998558,589419388"
@@ -5116,10 +4080,6 @@
"regionId": "13721",
"keys": "-1188425330,1307846097,888707126,-1843934128"
},
- {
- "regionId": "13722",
- "keys": "0,0,0,0"
- },
{
"regionId": "13723",
"keys": "-310574621,110640497,1685108265,-1931806505"
@@ -5136,18 +4096,6 @@
"regionId": "13868",
"keys": "255205616,-1585903009,-1371243067,-264891948"
},
- {
- "regionId": "13869",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13870",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13871",
- "keys": "0,0,0,0"
- },
{
"regionId": "13872",
"keys": "-865041276,1374390842,-909885942,30088570"
@@ -5172,10 +4120,6 @@
"regionId": "13877",
"keys": "1498185652,2064367906,152992439,585271079"
},
- {
- "regionId": "13878",
- "keys": "0,0,0,0"
- },
{
"regionId": "13879",
"keys": "-2101514338,-1139447054,51825149,-512907347"
@@ -5196,18 +4140,6 @@
"regionId": "13899",
"keys": "-2117805741,-268051413,-733527930,471010998"
},
- {
- "regionId": "13900",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13901",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "13902",
- "keys": "0,0,0,0"
- },
{
"regionId": "13905",
"keys": "14881828,-6662814,58238456,146761213"
@@ -5216,18 +4148,10 @@
"regionId": "13968",
"keys": "-620062336,-1110235330,-1095431209,-470716307"
},
- {
- "regionId": "13971",
- "keys": "0,0,0,0"
- },
{
"regionId": "13972",
"keys": "1266294685,1139088638,1514900183,-1389022839"
},
- {
- "regionId": "13973",
- "keys": "0,0,0,0"
- },
{
"regionId": "13974",
"keys": "1384510929,1857691725,-293821029,-1219099456"
@@ -5256,10 +4180,6 @@
"regionId": "13980",
"keys": "-12957944,-743456598,2041601862,618819565"
},
- {
- "regionId": "14127",
- "keys": "0,0,0,0"
- },
{
"regionId": "14128",
"keys": "1907787432,-241593923,1152767085,-541422403"
@@ -5296,26 +4216,10 @@
"regionId": "14136",
"keys": "-1104533465,1792124817,-1564247177,79706641"
},
- {
- "regionId": "14154",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14155",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14156",
- "keys": "0,0,0,0"
- },
{
"regionId": "14157",
"keys": "-852479713,1901063521,-1097484894,1013793379"
},
- {
- "regionId": "14158",
- "keys": "0,0,0,0"
- },
{
"regionId": "14161",
"keys": "14881828,-6662814,58238456,146761213"
@@ -5324,18 +4228,6 @@
"regionId": "14167",
"keys": "-1398455,-469478596,190482870,-1233173597"
},
- {
- "regionId": "14227",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14228",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14229",
- "keys": "0,0,0,0"
- },
{
"regionId": "14230",
"keys": "-453901412,-2074594443,-809419406,1774073603"
@@ -5364,6 +4256,10 @@
"regionId": "14236",
"keys": "816141215,-2114312227,1578950035,1471842311"
},
+ {
+ "regionId": "14380",
+ "keys": "1663518625,-107913441,-1625821936,330353351"
+ },
{
"regionId": "14381",
"keys": "-534048527,1614741928,-469012711,1064350100"
@@ -5396,10 +4292,6 @@
"regionId": "14388",
"keys": "2048238173,2003642395,1658667134,411519881"
},
- {
- "regionId": "14389",
- "keys": "0,0,0,0"
- },
{
"regionId": "14390",
"keys": "-1631704360,1281079278,-1549067757,-2034268623"
@@ -5412,18 +4304,6 @@
"regionId": "14392",
"keys": "993603906,-1477196579,593064486,166369140"
},
- {
- "regionId": "14412",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14413",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14414",
- "keys": "0,0,0,0"
- },
{
"regionId": "14486",
"keys": "-131982139,-1189975142,-1667401999,-1794787704"
@@ -5432,14 +4312,6 @@
"regionId": "14487",
"keys": "-330478679,11506767,395036194,-971774384"
},
- {
- "regionId": "14488",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "14489",
- "keys": "0,0,0,0"
- },
{
"regionId": "14490",
"keys": "1578682567,-1175551739,170259358,-1972709096"
@@ -5452,6 +4324,10 @@
"regionId": "14492",
"keys": "420310205,1004898846,889537686,13961361"
},
+ {
+ "regionId": "14636",
+ "keys": "-1554034534,-545576842,-416921234,1887723532"
+ },
{
"regionId": "14637",
"keys": "112774068,-1867270219,-442076728,-1436438131"
@@ -5472,10 +4348,6 @@
"regionId": "14641",
"keys": "-310201697,1724559662,90126688,-664432561"
},
- {
- "regionId": "14645",
- "keys": "0,0,0,0"
- },
{
"regionId": "14646",
"keys": "-2069357113,-2117603296,1620573021,-239596308"
@@ -5488,10 +4360,6 @@
"regionId": "14648",
"keys": "-1757352130,-1996516705,263017190,1647356258"
},
- {
- "regionId": "14745",
- "keys": "0,0,0,0"
- },
{
"regionId": "14746",
"keys": "2081288932,-143900986,-1978370486,-544919360"
@@ -5524,10 +4392,6 @@
"regionId": "14896",
"keys": "548765086,801664009,-1716752945,-1492954302"
},
- {
- "regionId": "14901",
- "keys": "0,0,0,0"
- },
{
"regionId": "14902",
"keys": "1158948283,-12013143,1242958376,-1265402384"
@@ -5548,26 +4412,10 @@
"regionId": "14995",
"keys": "958328498,239876404,608758325,933929091"
},
- {
- "regionId": "15001",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "15002",
- "keys": "0,0,0,0"
- },
- {
- "regionId": "15003",
- "keys": "0,0,0,0"
- },
{
"regionId": "15147",
"keys": "-423978185,359589519,280220972,-1608470374"
},
- {
- "regionId": "15148",
- "keys": "0,0,0,0"
- },
{
"regionId": "15149",
"keys": "-1200628316,15132614,-465260385,-1525542932"
diff --git a/Server/data/eco/.gitignore b/Server/data/eco/.gitignore
new file mode 100644
index 000000000..5e7d2734c
--- /dev/null
+++ b/Server/data/eco/.gitignore
@@ -0,0 +1,4 @@
+# Ignore everything in this directory
+*
+# Except this file
+!.gitignore
diff --git a/Server/data/eco/autostock.json b/Server/data/eco/autostock.json
deleted file mode 100644
index 09fa93713..000000000
--- a/Server/data/eco/autostock.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "offers": [
- {
- "__comment" : "coal",
- "item" : "453",
- "qty" : "1000"
- },
- {
- "__comment" : "vial",
- "item" : "227",
- "qty" : "10000"
- },
- {
- "__comment" : "water vial",
- "item" : "229",
- "qty" : "10000"
- },
- {
- "__comment" : "cooked lobster",
- "item" : "379",
- "qty" : "10000"
- },
- {
- "__comment" : "Ashes",
- "item" : "592",
- "qty" : "1000"
- },
- {
- "__comment" : "Mort myre fungi",
- "item" : "2970",
- "qty" : "1000"
- },
- {
- "__comment" : "Poison ivy berries",
- "item" : "6018",
- "qty" : "1000"
- },
- {
- "__comment" : "Potato cactus",
- "item" : "3138",
- "qty" : "1000"
- },
- {
- "__comment" : "Unicorn horn",
- "item" : "237",
- "qty" : "1000"
- },
- {
- "__comment" : "Red spider eggs",
- "item" : "223",
- "qty" : "1000"
- },
- {
- "__comment" : "Bird nest",
- "item" : "6693",
- "qty" : "1000"
- },
- {
- "__comment" : "Chocolate dust",
- "item" : "1975",
- "qty" : "1000"
- },
- {
- "__comment" : "Limpwurt root",
- "item" : "225",
- "qty" : "10000"
- }
- ]
-}
diff --git a/Server/data/eco/ge_resource.emp b/Server/data/eco/ge_resource.emp
deleted file mode 100644
index f96c401f3..000000000
--- a/Server/data/eco/ge_resource.emp
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/Server/data/eco/gedb.xml b/Server/data/eco/gedb.xml
deleted file mode 100644
index 4f89c9973..000000000
--- a/Server/data/eco/gedb.xml
+++ /dev/null
@@ -1,102497 +0,0 @@
-
-
-
- 0
- 1
- 0
- 0
- 0
-
-
- 1
- 1
- 0
- 0
- 0
-
-
- 2
- 5
- 0
- 0
- 0
-
-
- 3
- 1
- 0
- 0
- 0
-
-
- 4
- 5
- 0
- 0
- 0
-
-
- 5
- 10
- 0
- 0
- 0
-
-
- 6
- 187500
- 0
- 0
- 0
-
-
- 7
- 187500
- 0
- 0
- 0
-
-
- 8
- 187500
- 0
- 0
- 0
-
-
- 9
- 187500
- 0
- 0
- 0
-
-
- 10
- 187500
- 0
- 0
- 0
-
-
- 11
- 187500
- 0
- 0
- 0
-
-
- 12
- 187500
- 0
- 0
- 0
-
-
- 13
- 187500
- 0
- 0
- 0
-
-
- 14
- 1
- 0
- 0
- 0
-
-
- 15
- 10
- 0
- 0
- 0
-
-
- 16
- 10
- 0
- 0
- 0
-
-
- 17
- 10
- 0
- 0
- 0
-
-
- 18
- 2
- 0
- 0
- 0
-
-
- 19
- 3
- 0
- 0
- 0
-
-
- 20
- 1
- 0
- 0
- 0
-
-
- 21
- 1
- 0
- 0
- 0
-
-
- 22
- 1
- 0
- 0
- 0
-
-
- 23
- 1
- 0
- 0
- 0
-
-
- 24
- 1
- 0
- 0
- 0
-
-
- 25
- 1
- 0
- 0
- 0
-
-
- 26
- 1
- 0
- 0
- 0
-
-
- 27
- 1
- 0
- 0
- 0
-
-
- 28
- 3
- 0
- 0
- 0
-
-
- 29
- 1
- 0
- 0
- 0
-
-
- 30
- 6
- 0
- 0
- 0
-
-
- 31
- 1
- 0
- 0
- 0
-
-
- 32
- 3
- 0
- 0
- 0
-
-
- 33
- 3
- 0
- 0
- 0
-
-
- 34
- 3
- 0
- 0
- 0
-
-
- 35
- 200
- 0
- 0
- 0
-
-
- 36
- 3
- 0
- 0
- 0
-
-
- 37
- 3
- 0
- 0
- 0
-
-
- 38
- 3
- 0
- 0
- 0
-
-
- 39
- 10
- 0
- 0
- 0
-
-
- 40
- 26
- 0
- 0
- 0
-
-
- 41
- 36
- 0
- 0
- 0
-
-
- 42
- 68
- 0
- 0
- 0
-
-
- 43
- 160
- 0
- 0
- 0
-
-
- 44
- 460
- 0
- 0
- 0
-
-
- 45
- 7
- 0
- 0
- 0
-
-
- 46
- 12
- 0
- 0
- 0
-
-
- 47
- 95
- 0
- 0
- 0
-
-
- 48
- 60
- 0
- 0
- 0
-
-
- 49
- 60
- 0
- 0
- 0
-
-
- 50
- 23
- 0
- 0
- 0
-
-
- 51
- 23
- 0
- 0
- 0
-
-
- 52
- 12
- 0
- 0
- 0
-
-
- 53
- 1
- 0
- 0
- 0
-
-
- 54
- 50
- 0
- 0
- 0
-
-
- 55
- 50
- 0
- 0
- 0
-
-
- 56
- 80
- 0
- 0
- 0
-
-
- 57
- 80
- 0
- 0
- 0
-
-
- 58
- 160
- 0
- 0
- 0
-
-
- 59
- 160
- 0
- 0
- 0
-
-
- 60
- 100
- 0
- 0
- 0
-
-
- 61
- 100
- 0
- 0
- 0
-
-
- 62
- 320
- 0
- 0
- 0
-
-
- 63
- 320
- 0
- 0
- 0
-
-
- 64
- 200
- 0
- 0
- 0
-
-
- 65
- 200
- 0
- 0
- 0
-
-
- 66
- 640
- 0
- 0
- 0
-
-
- 67
- 640
- 0
- 0
- 0
-
-
- 68
- 400
- 0
- 0
- 0
-
-
- 69
- 400
- 0
- 0
- 0
-
-
- 70
- 1280
- 0
- 0
- 0
-
-
- 71
- 1280
- 0
- 0
- 0
-
-
- 72
- 800
- 0
- 0
- 0
-
-
- 73
- 800
- 0
- 0
- 0
-
-
- 74
- 10
- 0
- 0
- 0
-
-
- 75
- 12
- 0
- 0
- 0
-
-
- 76
- 1
- 0
- 0
- 0
-
-
- 77
- 5
- 0
- 0
- 0
-
-
- 78
- 2
- 0
- 0
- 0
-
-
- 79
- 1
- 0
- 0
- 0
-
-
- 80
- 1
- 0
- 0
- 0
-
-
- 81
- 1
- 0
- 0
- 0
-
-
- 82
- 1
- 0
- 0
- 0
-
-
- 83
- 15
- 0
- 0
- 0
-
-
- 84
- 15
- 0
- 0
- 0
-
-
- 85
- 1
- 0
- 0
- 0
-
-
- 86
- 12
- 0
- 0
- 0
-
-
- 87
- 12
- 0
- 0
- 0
-
-
- 88
- 6
- 0
- 0
- 0
-
-
- 89
- 6
- 0
- 0
- 0
-
-
- 90
- 5
- 0
- 0
- 0
-
-
- 91
- 3
- 0
- 0
- 0
-
-
- 92
- 3
- 0
- 0
- 0
-
-
- 93
- 5
- 0
- 0
- 0
-
-
- 94
- 5
- 0
- 0
- 0
-
-
- 95
- 11
- 0
- 0
- 0
-
-
- 96
- 11
- 0
- 0
- 0
-
-
- 97
- 20
- 0
- 0
- 0
-
-
- 98
- 20
- 0
- 0
- 0
-
-
- 99
- 25
- 0
- 0
- 0
-
-
- 100
- 25
- 0
- 0
- 0
-
-
- 101
- 40
- 0
- 0
- 0
-
-
- 102
- 40
- 0
- 0
- 0
-
-
- 103
- 48
- 0
- 0
- 0
-
-
- 104
- 48
- 0
- 0
- 0
-
-
- 105
- 54
- 0
- 0
- 0
-
-
- 106
- 54
- 0
- 0
- 0
-
-
- 107
- 65
- 0
- 0
- 0
-
-
- 108
- 65
- 0
- 0
- 0
-
-
- 109
- 70
- 0
- 0
- 0
-
-
- 110
- 70
- 0
- 0
- 0
-
-
- 111
- 25
- 0
- 0
- 0
-
-
- 112
- 25
- 0
- 0
- 0
-
-
- 113
- 1500
- 0
- 0
- 0
-
-
- 114
- 1500
- 0
- 0
- 0
-
-
- 115
- 1200
- 0
- 0
- 0
-
-
- 116
- 1200
- 0
- 0
- 0
-
-
- 117
- 900
- 0
- 0
- 0
-
-
- 118
- 900
- 0
- 0
- 0
-
-
- 119
- 600
- 0
- 0
- 0
-
-
- 120
- 600
- 0
- 0
- 0
-
-
- 121
- 560
- 0
- 0
- 0
-
-
- 122
- 560
- 0
- 0
- 0
-
-
- 123
- 420
- 0
- 0
- 0
-
-
- 124
- 420
- 0
- 0
- 0
-
-
- 125
- 280
- 0
- 0
- 0
-
-
- 126
- 280
- 0
- 0
- 0
-
-
- 127
- 88
- 0
- 0
- 0
-
-
- 128
- 88
- 0
- 0
- 0
-
-
- 129
- 66
- 0
- 0
- 0
-
-
- 130
- 66
- 0
- 0
- 0
-
-
- 131
- 44
- 0
- 0
- 0
-
-
- 132
- 44
- 0
- 0
- 0
-
-
- 133
- 880
- 0
- 0
- 0
-
-
- 134
- 880
- 0
- 0
- 0
-
-
- 135
- 660
- 0
- 0
- 0
-
-
- 136
- 660
- 0
- 0
- 0
-
-
- 137
- 440
- 0
- 0
- 0
-
-
- 138
- 440
- 0
- 0
- 0
-
-
- 139
- 152
- 0
- 0
- 0
-
-
- 140
- 152
- 0
- 0
- 0
-
-
- 141
- 114
- 0
- 0
- 0
-
-
- 142
- 114
- 0
- 0
- 0
-
-
- 143
- 76
- 0
- 0
- 0
-
-
- 144
- 76
- 0
- 0
- 0
-
-
- 145
- 180
- 0
- 0
- 0
-
-
- 146
- 180
- 0
- 0
- 0
-
-
- 147
- 135
- 0
- 0
- 0
-
-
- 148
- 135
- 0
- 0
- 0
-
-
- 149
- 90
- 0
- 0
- 0
-
-
- 150
- 90
- 0
- 0
- 0
-
-
- 151
- 200
- 0
- 0
- 0
-
-
- 152
- 200
- 0
- 0
- 0
-
-
- 153
- 150
- 0
- 0
- 0
-
-
- 154
- 150
- 0
- 0
- 0
-
-
- 155
- 100
- 0
- 0
- 0
-
-
- 156
- 100
- 0
- 0
- 0
-
-
- 157
- 220
- 0
- 0
- 0
-
-
- 158
- 220
- 0
- 0
- 0
-
-
- 159
- 165
- 0
- 0
- 0
-
-
- 160
- 165
- 0
- 0
- 0
-
-
- 161
- 110
- 0
- 0
- 0
-
-
- 162
- 110
- 0
- 0
- 0
-
-
- 163
- 264
- 0
- 0
- 0
-
-
- 164
- 264
- 0
- 0
- 0
-
-
- 165
- 198
- 0
- 0
- 0
-
-
- 166
- 198
- 0
- 0
- 0
-
-
- 167
- 132
- 0
- 0
- 0
-
-
- 168
- 132
- 0
- 0
- 0
-
-
- 169
- 288
- 0
- 0
- 0
-
-
- 170
- 288
- 0
- 0
- 0
-
-
- 171
- 216
- 0
- 0
- 0
-
-
- 172
- 216
- 0
- 0
- 0
-
-
- 173
- 144
- 0
- 0
- 0
-
-
- 174
- 144
- 0
- 0
- 0
-
-
- 175
- 288
- 0
- 0
- 0
-
-
- 176
- 288
- 0
- 0
- 0
-
-
- 177
- 216
- 0
- 0
- 0
-
-
- 178
- 216
- 0
- 0
- 0
-
-
- 179
- 144
- 0
- 0
- 0
-
-
- 180
- 144
- 0
- 0
- 0
-
-
- 181
- 288
- 0
- 0
- 0
-
-
- 182
- 288
- 0
- 0
- 0
-
-
- 183
- 216
- 0
- 0
- 0
-
-
- 184
- 216
- 0
- 0
- 0
-
-
- 185
- 144
- 0
- 0
- 0
-
-
- 186
- 144
- 0
- 0
- 0
-
-
- 187
- 144
- 0
- 0
- 0
-
-
- 188
- 144
- 0
- 0
- 0
-
-
- 189
- 175
- 0
- 0
- 0
-
-
- 190
- 175
- 0
- 0
- 0
-
-
- 191
- 150
- 0
- 0
- 0
-
-
- 192
- 150
- 0
- 0
- 0
-
-
- 193
- 125
- 0
- 0
- 0
-
-
- 194
- 125
- 0
- 0
- 0
-
-
- 195
- 1
- 0
- 0
- 0
-
-
- 196
- 1
- 0
- 0
- 0
-
-
- 197
- 20
- 0
- 0
- 0
-
-
- 198
- 20
- 0
- 0
- 0
-
-
- 199
- 1
- 0
- 0
- 0
-
-
- 200
- 1
- 0
- 0
- 0
-
-
- 201
- 1
- 0
- 0
- 0
-
-
- 202
- 1
- 0
- 0
- 0
-
-
- 203
- 1
- 0
- 0
- 0
-
-
- 204
- 1
- 0
- 0
- 0
-
-
- 205
- 1
- 0
- 0
- 0
-
-
- 206
- 1
- 0
- 0
- 0
-
-
- 207
- 1
- 0
- 0
- 0
-
-
- 208
- 1
- 0
- 0
- 0
-
-
- 209
- 1
- 0
- 0
- 0
-
-
- 210
- 1
- 0
- 0
- 0
-
-
- 211
- 1
- 0
- 0
- 0
-
-
- 212
- 1
- 0
- 0
- 0
-
-
- 213
- 1
- 0
- 0
- 0
-
-
- 214
- 1
- 0
- 0
- 0
-
-
- 215
- 1
- 0
- 0
- 0
-
-
- 216
- 1
- 0
- 0
- 0
-
-
- 217
- 1
- 0
- 0
- 0
-
-
- 218
- 1
- 0
- 0
- 0
-
-
- 219
- 1
- 0
- 0
- 0
-
-
- 220
- 1
- 0
- 0
- 0
-
-
- 221
- 3
- 0
- 0
- 0
-
-
- 222
- 3
- 0
- 0
- 0
-
-
- 223
- 7
- 0
- 0
- 0
-
-
- 224
- 7
- 0
- 0
- 0
-
-
- 225
- 7
- 0
- 0
- 0
-
-
- 226
- 7
- 0
- 0
- 0
-
-
- 227
- 10
- 0
- 0
- 0
-
-
- 228
- 10
- 0
- 0
- 0
-
-
- 229
- 5
- 0
- 0
- 0
-
-
- 230
- 5
- 0
- 0
- 0
-
-
- 231
- 10
- 0
- 0
- 0
-
-
- 232
- 10
- 0
- 0
- 0
-
-
- 233
- 4
- 0
- 0
- 0
-
-
- 234
- 4
- 0
- 0
- 0
-
-
- 235
- 20
- 0
- 0
- 0
-
-
- 236
- 20
- 0
- 0
- 0
-
-
- 237
- 20
- 0
- 0
- 0
-
-
- 238
- 20
- 0
- 0
- 0
-
-
- 239
- 10
- 0
- 0
- 0
-
-
- 240
- 10
- 0
- 0
- 0
-
-
- 241
- 52
- 0
- 0
- 0
-
-
- 242
- 52
- 0
- 0
- 0
-
-
- 243
- 50
- 0
- 0
- 0
-
-
- 244
- 50
- 0
- 0
- 0
-
-
- 245
- 1
- 0
- 0
- 0
-
-
- 246
- 1
- 0
- 0
- 0
-
-
- 247
- 1
- 0
- 0
- 0
-
-
- 248
- 1
- 0
- 0
- 0
-
-
- 249
- 3
- 0
- 0
- 0
-
-
- 250
- 3
- 0
- 0
- 0
-
-
- 251
- 5
- 0
- 0
- 0
-
-
- 252
- 5
- 0
- 0
- 0
-
-
- 253
- 11
- 0
- 0
- 0
-
-
- 254
- 11
- 0
- 0
- 0
-
-
- 255
- 20
- 0
- 0
- 0
-
-
- 256
- 20
- 0
- 0
- 0
-
-
- 257
- 25
- 0
- 0
- 0
-
-
- 258
- 25
- 0
- 0
- 0
-
-
- 259
- 40
- 0
- 0
- 0
-
-
- 260
- 40
- 0
- 0
- 0
-
-
- 261
- 48
- 0
- 0
- 0
-
-
- 262
- 48
- 0
- 0
- 0
-
-
- 263
- 54
- 0
- 0
- 0
-
-
- 264
- 54
- 0
- 0
- 0
-
-
- 265
- 65
- 0
- 0
- 0
-
-
- 266
- 65
- 0
- 0
- 0
-
-
- 267
- 70
- 0
- 0
- 0
-
-
- 268
- 70
- 0
- 0
- 0
-
-
- 269
- 75
- 0
- 0
- 0
-
-
- 270
- 75
- 0
- 0
- 0
-
-
- 271
- 1
- 0
- 0
- 0
-
-
- 272
- 1
- 0
- 0
- 0
-
-
- 273
- 1
- 0
- 0
- 0
-
-
- 274
- 1
- 0
- 0
- 0
-
-
- 275
- 1
- 0
- 0
- 0
-
-
- 276
- 3
- 0
- 0
- 0
-
-
- 277
- 3
- 0
- 0
- 0
-
-
- 278
- 3
- 0
- 0
- 0
-
-
- 279
- 3
- 0
- 0
- 0
-
-
- 280
- 1
- 0
- 0
- 0
-
-
- 281
- 1
- 0
- 0
- 0
-
-
- 282
- 1
- 0
- 0
- 0
-
-
- 283
- 1
- 0
- 0
- 0
-
-
- 284
- 50
- 0
- 0
- 0
-
-
- 285
- 50
- 0
- 0
- 0
-
-
- 286
- 40
- 0
- 0
- 0
-
-
- 287
- 40
- 0
- 0
- 0
-
-
- 288
- 40
- 0
- 0
- 0
-
-
- 289
- 40
- 0
- 0
- 0
-
-
- 290
- 2
- 0
- 0
- 0
-
-
- 291
- 5
- 0
- 0
- 0
-
-
- 292
- 2
- 0
- 0
- 0
-
-
- 293
- 1
- 0
- 0
- 0
-
-
- 294
- 1
- 0
- 0
- 0
-
-
- 295
- 1
- 0
- 0
- 0
-
-
- 296
- 1
- 0
- 0
- 0
-
-
- 297
- 1
- 0
- 0
- 0
-
-
- 298
- 1
- 0
- 0
- 0
-
-
- 299
- 300
- 0
- 0
- 0
-
-
- 300
- 3
- 0
- 0
- 0
-
-
- 301
- 20
- 0
- 0
- 0
-
-
- 302
- 20
- 0
- 0
- 0
-
-
- 303
- 5
- 0
- 0
- 0
-
-
- 304
- 5
- 0
- 0
- 0
-
-
- 305
- 20
- 0
- 0
- 0
-
-
- 306
- 20
- 0
- 0
- 0
-
-
- 307
- 5
- 0
- 0
- 0
-
-
- 308
- 5
- 0
- 0
- 0
-
-
- 309
- 5
- 0
- 0
- 0
-
-
- 310
- 5
- 0
- 0
- 0
-
-
- 311
- 5
- 0
- 0
- 0
-
-
- 312
- 5
- 0
- 0
- 0
-
-
- 313
- 3
- 0
- 0
- 0
-
-
- 314
- 6
- 0
- 0
- 0
-
-
- 315
- 5
- 0
- 0
- 0
-
-
- 316
- 5
- 0
- 0
- 0
-
-
- 317
- 6
- 0
- 0
- 0
-
-
- 318
- 6
- 0
- 0
- 0
-
-
- 319
- 15
- 0
- 0
- 0
-
-
- 320
- 15
- 0
- 0
- 0
-
-
- 321
- 16
- 0
- 0
- 0
-
-
- 322
- 16
- 0
- 0
- 0
-
-
- 323
- 1
- 0
- 0
- 0
-
-
- 324
- 1
- 0
- 0
- 0
-
-
- 325
- 10
- 0
- 0
- 0
-
-
- 326
- 10
- 0
- 0
- 0
-
-
- 327
- 10
- 0
- 0
- 0
-
-
- 328
- 10
- 0
- 0
- 0
-
-
- 329
- 88
- 0
- 0
- 0
-
-
- 330
- 88
- 0
- 0
- 0
-
-
- 331
- 92
- 0
- 0
- 0
-
-
- 332
- 92
- 0
- 0
- 0
-
-
- 333
- 68
- 0
- 0
- 0
-
-
- 334
- 68
- 0
- 0
- 0
-
-
- 335
- 20
- 0
- 0
- 0
-
-
- 336
- 20
- 0
- 0
- 0
-
-
- 337
- 50
- 0
- 0
- 0
-
-
- 338
- 50
- 0
- 0
- 0
-
-
- 339
- 26
- 0
- 0
- 0
-
-
- 340
- 26
- 0
- 0
- 0
-
-
- 341
- 34
- 0
- 0
- 0
-
-
- 342
- 34
- 0
- 0
- 0
-
-
- 343
- 1
- 0
- 0
- 0
-
-
- 344
- 1
- 0
- 0
- 0
-
-
- 345
- 16
- 0
- 0
- 0
-
-
- 346
- 16
- 0
- 0
- 0
-
-
- 347
- 15
- 0
- 0
- 0
-
-
- 348
- 15
- 0
- 0
- 0
-
-
- 349
- 25
- 0
- 0
- 0
-
-
- 350
- 25
- 0
- 0
- 0
-
-
- 351
- 25
- 0
- 0
- 0
-
-
- 352
- 25
- 0
- 0
- 0
-
-
- 353
- 26
- 0
- 0
- 0
-
-
- 354
- 26
- 0
- 0
- 0
-
-
- 355
- 17
- 0
- 0
- 0
-
-
- 356
- 17
- 0
- 0
- 0
-
-
- 357
- 1
- 0
- 0
- 0
-
-
- 358
- 1
- 0
- 0
- 0
-
-
- 359
- 120
- 0
- 0
- 0
-
-
- 360
- 120
- 0
- 0
- 0
-
-
- 361
- 120
- 0
- 0
- 0
-
-
- 362
- 120
- 0
- 0
- 0
-
-
- 363
- 280
- 0
- 0
- 0
-
-
- 364
- 280
- 0
- 0
- 0
-
-
- 365
- 270
- 0
- 0
- 0
-
-
- 366
- 270
- 0
- 0
- 0
-
-
- 367
- 1
- 0
- 0
- 0
-
-
- 368
- 1
- 0
- 0
- 0
-
-
- 369
- 1
- 0
- 0
- 0
-
-
- 370
- 1
- 0
- 0
- 0
-
-
- 371
- 340
- 0
- 0
- 0
-
-
- 372
- 340
- 0
- 0
- 0
-
-
- 373
- 400
- 0
- 0
- 0
-
-
- 374
- 400
- 0
- 0
- 0
-
-
- 375
- 1
- 0
- 0
- 0
-
-
- 376
- 1
- 0
- 0
- 0
-
-
- 377
- 284
- 0
- 0
- 0
-
-
- 378
- 284
- 0
- 0
- 0
-
-
- 379
- 268
- 173
- 57782
- 0
-
-
- 380
- 268
- 0
- 0
- 0
-
-
- 381
- 1
- 0
- 0
- 0
-
-
- 382
- 1
- 0
- 0
- 0
-
-
- 383
- 300
- 0
- 0
- 0
-
-
- 384
- 300
- 0
- 0
- 0
-
-
- 385
- 300
- 0
- 0
- 0
-
-
- 386
- 300
- 0
- 0
- 0
-
-
- 387
- 1
- 0
- 0
- 0
-
-
- 388
- 1
- 0
- 0
- 0
-
-
- 389
- 500
- 0
- 0
- 0
-
-
- 390
- 500
- 0
- 0
- 0
-
-
- 391
- 500
- 0
- 0
- 0
-
-
- 392
- 500
- 0
- 0
- 0
-
-
- 393
- 1
- 0
- 0
- 0
-
-
- 394
- 1
- 0
- 0
- 0
-
-
- 395
- 500
- 0
- 0
- 0
-
-
- 396
- 500
- 0
- 0
- 0
-
-
- 397
- 500
- 0
- 0
- 0
-
-
- 398
- 500
- 0
- 0
- 0
-
-
- 399
- 1
- 0
- 0
- 0
-
-
- 400
- 1
- 0
- 0
- 0
-
-
- 401
- 2
- 0
- 0
- 0
-
-
- 402
- 2
- 0
- 0
- 0
-
-
- 403
- 2
- 0
- 0
- 0
-
-
- 404
- 2
- 0
- 0
- 0
-
-
- 405
- 50
- 0
- 0
- 0
-
-
- 406
- 50
- 0
- 0
- 0
-
-
- 407
- 200
- 0
- 0
- 0
-
-
- 408
- 200
- 0
- 0
- 0
-
-
- 409
- 5
- 0
- 0
- 0
-
-
- 410
- 5
- 0
- 0
- 0
-
-
- 411
- 112
- 0
- 0
- 0
-
-
- 412
- 112
- 0
- 0
- 0
-
-
- 413
- 1400
- 0
- 0
- 0
-
-
- 414
- 1400
- 0
- 0
- 0
-
-
- 415
- 10
- 0
- 0
- 0
-
-
- 416
- 1
- 0
- 0
- 0
-
-
- 417
- 1
- 0
- 0
- 0
-
-
- 418
- 1
- 0
- 0
- 0
-
-
- 419
- 1
- 0
- 0
- 0
-
-
- 420
- 1
- 0
- 0
- 0
-
-
- 421
- 10
- 0
- 0
- 0
-
-
- 422
- 1
- 0
- 0
- 0
-
-
- 423
- 1
- 0
- 0
- 0
-
-
- 424
- 1
- 0
- 0
- 0
-
-
- 425
- 1
- 0
- 0
- 0
-
-
- 426
- 5
- 0
- 0
- 0
-
-
- 427
- 5
- 0
- 0
- 0
-
-
- 428
- 5
- 0
- 0
- 0
-
-
- 429
- 5
- 0
- 0
- 0
-
-
- 430
- 40
- 0
- 0
- 0
-
-
- 431
- 30
- 0
- 0
- 0
-
-
- 432
- 1
- 0
- 0
- 0
-
-
- 433
- 1
- 0
- 0
- 0
-
-
- 434
- 1
- 0
- 0
- 0
-
-
- 435
- 1
- 0
- 0
- 0
-
-
- 436
- 20
- 0
- 0
- 0
-
-
- 437
- 20
- 0
- 0
- 0
-
-
- 438
- 20
- 0
- 0
- 0
-
-
- 439
- 20
- 0
- 0
- 0
-
-
- 440
- 17
- 0
- 0
- 0
-
-
- 441
- 17
- 0
- 0
- 0
-
-
- 442
- 75
- 0
- 0
- 0
-
-
- 443
- 75
- 0
- 0
- 0
-
-
- 444
- 150
- 0
- 0
- 0
-
-
- 445
- 150
- 0
- 0
- 0
-
-
- 446
- 150
- 0
- 0
- 0
-
-
- 447
- 162
- 0
- 0
- 0
-
-
- 448
- 162
- 0
- 0
- 0
-
-
- 449
- 400
- 0
- 0
- 0
-
-
- 450
- 400
- 0
- 0
- 0
-
-
- 451
- 3200
- 0
- 0
- 0
-
-
- 452
- 3200
- 0
- 0
- 0
-
-
- 453
- 45
- 0
- 0
- 0
-
-
- 454
- 45
- 0
- 0
- 0
-
-
- 455
- 10
- 0
- 0
- 0
-
-
- 456
- 10
- 0
- 0
- 0
-
-
- 457
- 10
- 0
- 0
- 0
-
-
- 458
- 10
- 0
- 0
- 0
-
-
- 459
- 10
- 0
- 0
- 0
-
-
- 460
- 10
- 0
- 0
- 0
-
-
- 461
- 10
- 0
- 0
- 0
-
-
- 462
- 10
- 0
- 0
- 0
-
-
- 463
- 10
- 0
- 0
- 0
-
-
- 464
- 1
- 0
- 0
- 0
-
-
- 465
- 1
- 0
- 0
- 0
-
-
- 466
- 1
- 0
- 0
- 0
-
-
- 467
- 1
- 0
- 0
- 0
-
-
- 468
- 1
- 0
- 0
- 0
-
-
- 469
- 1
- 0
- 0
- 0
-
-
- 470
- 1
- 0
- 0
- 0
-
-
- 471
- 1
- 0
- 0
- 0
-
-
- 472
- 17
- 0
- 0
- 0
-
-
- 473
- 17
- 0
- 0
- 0
-
-
- 474
- 43
- 0
- 0
- 0
-
-
- 475
- 43
- 0
- 0
- 0
-
-
- 476
- 107
- 0
- 0
- 0
-
-
- 477
- 107
- 0
- 0
- 0
-
-
- 478
- 1100
- 0
- 0
- 0
-
-
- 479
- 1100
- 0
- 0
- 0
-
-
- 480
- 1
- 0
- 0
- 0
-
-
- 481
- 1
- 0
- 0
- 0
-
-
- 482
- 139
- 0
- 0
- 0
-
-
- 483
- 139
- 0
- 0
- 0
-
-
- 484
- 499
- 0
- 0
- 0
-
-
- 485
- 499
- 0
- 0
- 0
-
-
- 486
- 1299
- 0
- 0
- 0
-
-
- 487
- 1299
- 0
- 0
- 0
-
-
- 488
- 3199
- 0
- 0
- 0
-
-
- 489
- 3199
- 0
- 0
- 0
-
-
- 490
- 31999
- 0
- 0
- 0
-
-
- 491
- 31999
- 0
- 0
- 0
-
-
- 492
- 1
- 0
- 0
- 0
-
-
- 493
- 1
- 0
- 0
- 0
-
-
- 494
- 1
- 0
- 0
- 0
-
-
- 495
- 1
- 0
- 0
- 0
-
-
- 496
- 1
- 0
- 0
- 0
-
-
- 497
- 1
- 0
- 0
- 0
-
-
- 498
- 1
- 0
- 0
- 0
-
-
- 499
- 1
- 0
- 0
- 0
-
-
- 500
- 10
- 0
- 0
- 0
-
-
- 501
- 10
- 0
- 0
- 0
-
-
- 502
- 18
- 0
- 0
- 0
-
-
- 503
- 18
- 0
- 0
- 0
-
-
- 504
- 43
- 0
- 0
- 0
-
-
- 505
- 43
- 0
- 0
- 0
-
-
- 506
- 427
- 0
- 0
- 0
-
-
- 507
- 427
- 0
- 0
- 0
-
-
- 508
- 15
- 0
- 0
- 0
-
-
- 509
- 15
- 0
- 0
- 0
-
-
- 510
- 55
- 0
- 0
- 0
-
-
- 511
- 55
- 0
- 0
- 0
-
-
- 512
- 199
- 0
- 0
- 0
-
-
- 513
- 199
- 0
- 0
- 0
-
-
- 514
- 383
- 0
- 0
- 0
-
-
- 515
- 383
- 0
- 0
- 0
-
-
- 516
- 519
- 0
- 0
- 0
-
-
- 517
- 519
- 0
- 0
- 0
-
-
- 518
- 1279
- 0
- 0
- 0
-
-
- 519
- 1279
- 0
- 0
- 0
-
-
- 520
- 12799
- 0
- 0
- 0
-
-
- 521
- 12799
- 0
- 0
- 0
-
-
- 522
- 1
- 0
- 0
- 0
-
-
- 523
- 1
- 0
- 0
- 0
-
-
- 524
- 1
- 0
- 0
- 0
-
-
- 525
- 1
- 0
- 0
- 0
-
-
- 526
- 1
- 0
- 0
- 0
-
-
- 527
- 1
- 0
- 0
- 0
-
-
- 528
- 1
- 0
- 0
- 0
-
-
- 529
- 1
- 0
- 0
- 0
-
-
- 530
- 1
- 0
- 0
- 0
-
-
- 531
- 1
- 0
- 0
- 0
-
-
- 532
- 1
- 0
- 0
- 0
-
-
- 533
- 1
- 0
- 0
- 0
-
-
- 534
- 1
- 0
- 0
- 0
-
-
- 535
- 1
- 0
- 0
- 0
-
-
- 536
- 1
- 0
- 0
- 0
-
-
- 537
- 1
- 0
- 0
- 0
-
-
- 538
- 30
- 0
- 0
- 0
-
-
- 539
- 30
- 0
- 0
- 0
-
-
- 540
- 40
- 0
- 0
- 0
-
-
- 541
- 40
- 0
- 0
- 0
-
-
- 542
- 30
- 0
- 0
- 0
-
-
- 543
- 30
- 0
- 0
- 0
-
-
- 544
- 40
- 0
- 0
- 0
-
-
- 545
- 40
- 0
- 0
- 0
-
-
- 546
- 40
- 0
- 0
- 0
-
-
- 547
- 1
- 0
- 0
- 0
-
-
- 548
- 30
- 0
- 0
- 0
-
-
- 549
- 1
- 0
- 0
- 0
-
-
- 550
- 1
- 0
- 0
- 0
-
-
- 551
- 1
- 0
- 0
- 0
-
-
- 552
- 35
- 0
- 0
- 0
-
-
- 553
- 1
- 0
- 0
- 0
-
-
- 554
- 17
- 0
- 0
- 0
-
-
- 555
- 17
- 0
- 0
- 0
-
-
- 556
- 17
- 0
- 0
- 0
-
-
- 557
- 17
- 0
- 0
- 0
-
-
- 558
- 17
- 0
- 0
- 0
-
-
- 559
- 16
- 0
- 0
- 0
-
-
- 560
- 310
- 0
- 0
- 0
-
-
- 561
- 372
- 0
- 0
- 0
-
-
- 562
- 140
- 0
- 0
- 0
-
-
- 563
- 378
- 0
- 0
- 0
-
-
- 564
- 232
- 0
- 0
- 0
-
-
- 565
- 550
- 0
- 0
- 0
-
-
- 566
- 410
- 0
- 0
- 0
-
-
- 567
- 100
- 0
- 0
- 0
-
-
- 568
- 100
- 0
- 0
- 0
-
-
- 569
- 300
- 0
- 0
- 0
-
-
- 570
- 300
- 0
- 0
- 0
-
-
- 571
- 300
- 0
- 0
- 0
-
-
- 572
- 300
- 0
- 0
- 0
-
-
- 573
- 300
- 0
- 0
- 0
-
-
- 574
- 300
- 0
- 0
- 0
-
-
- 575
- 300
- 0
- 0
- 0
-
-
- 576
- 300
- 0
- 0
- 0
-
-
- 577
- 15
- 0
- 0
- 0
-
-
- 578
- 15
- 0
- 0
- 0
-
-
- 579
- 2
- 0
- 0
- 0
-
-
- 580
- 2
- 0
- 0
- 0
-
-
- 581
- 13
- 0
- 0
- 0
-
-
- 582
- 13
- 0
- 0
- 0
-
-
- 583
- 10
- 0
- 0
- 0
-
-
- 584
- 10
- 0
- 0
- 0
-
-
- 585
- 10
- 0
- 0
- 0
-
-
- 586
- 10
- 0
- 0
- 0
-
-
- 587
- 1
- 0
- 0
- 0
-
-
- 588
- 1
- 0
- 0
- 0
-
-
- 589
- 1
- 0
- 0
- 0
-
-
- 590
- 1
- 0
- 0
- 0
-
-
- 591
- 1
- 0
- 0
- 0
-
-
- 592
- 2
- 0
- 0
- 0
-
-
- 593
- 2
- 0
- 0
- 0
-
-
- 594
- 4
- 0
- 0
- 0
-
-
- 595
- 4
- 0
- 0
- 0
-
-
- 596
- 4
- 0
- 0
- 0
-
-
- 597
- 4
- 0
- 0
- 0
-
-
- 598
- 10
- 0
- 0
- 0
-
-
- 599
- 1
- 0
- 0
- 0
-
-
- 600
- 3
- 0
- 0
- 0
-
-
- 601
- 1
- 0
- 0
- 0
-
-
- 602
- 1
- 0
- 0
- 0
-
-
- 603
- 3
- 0
- 0
- 0
-
-
- 604
- 1
- 0
- 0
- 0
-
-
- 605
- 1
- 0
- 0
- 0
-
-
- 606
- 1
- 0
- 0
- 0
-
-
- 607
- 1
- 0
- 0
- 0
-
-
- 608
- 1
- 0
- 0
- 0
-
-
- 609
- 1
- 0
- 0
- 0
-
-
- 610
- 1
- 0
- 0
- 0
-
-
- 611
- 1
- 0
- 0
- 0
-
-
- 612
- 1
- 0
- 0
- 0
-
-
- 613
- 1
- 0
- 0
- 0
-
-
- 614
- 1
- 0
- 0
- 0
-
-
- 615
- 1
- 0
- 0
- 0
-
-
- 616
- 1
- 0
- 0
- 0
-
-
- 617
- 1
- 0
- 0
- 0
-
-
- 618
- 1
- 0
- 0
- 0
-
-
- 619
- 5
- 0
- 0
- 0
-
-
- 620
- 5
- 0
- 0
- 0
-
-
- 621
- 5
- 0
- 0
- 0
-
-
- 622
- 1
- 0
- 0
- 0
-
-
- 623
- 1
- 0
- 0
- 0
-
-
- 624
- 1
- 0
- 0
- 0
-
-
- 625
- 5
- 0
- 0
- 0
-
-
- 626
- 200
- 0
- 0
- 0
-
-
- 627
- 200
- 0
- 0
- 0
-
-
- 628
- 200
- 0
- 0
- 0
-
-
- 629
- 200
- 0
- 0
- 0
-
-
- 630
- 200
- 0
- 0
- 0
-
-
- 631
- 200
- 0
- 0
- 0
-
-
- 632
- 200
- 0
- 0
- 0
-
-
- 633
- 200
- 0
- 0
- 0
-
-
- 634
- 200
- 0
- 0
- 0
-
-
- 635
- 200
- 0
- 0
- 0
-
-
- 636
- 180
- 0
- 0
- 0
-
-
- 637
- 180
- 0
- 0
- 0
-
-
- 638
- 180
- 0
- 0
- 0
-
-
- 639
- 180
- 0
- 0
- 0
-
-
- 640
- 180
- 0
- 0
- 0
-
-
- 641
- 180
- 0
- 0
- 0
-
-
- 642
- 180
- 0
- 0
- 0
-
-
- 643
- 180
- 0
- 0
- 0
-
-
- 644
- 180
- 0
- 0
- 0
-
-
- 645
- 180
- 0
- 0
- 0
-
-
- 646
- 180
- 0
- 0
- 0
-
-
- 647
- 180
- 0
- 0
- 0
-
-
- 648
- 180
- 0
- 0
- 0
-
-
- 649
- 180
- 0
- 0
- 0
-
-
- 650
- 180
- 0
- 0
- 0
-
-
- 651
- 180
- 0
- 0
- 0
-
-
- 652
- 180
- 0
- 0
- 0
-
-
- 653
- 180
- 0
- 0
- 0
-
-
- 654
- 180
- 0
- 0
- 0
-
-
- 655
- 180
- 0
- 0
- 0
-
-
- 656
- 160
- 0
- 0
- 0
-
-
- 657
- 160
- 0
- 0
- 0
-
-
- 658
- 160
- 0
- 0
- 0
-
-
- 659
- 160
- 0
- 0
- 0
-
-
- 660
- 160
- 0
- 0
- 0
-
-
- 661
- 160
- 0
- 0
- 0
-
-
- 662
- 160
- 0
- 0
- 0
-
-
- 663
- 160
- 0
- 0
- 0
-
-
- 664
- 160
- 0
- 0
- 0
-
-
- 665
- 160
- 0
- 0
- 0
-
-
- 666
- 3
- 0
- 0
- 0
-
-
- 667
- 200
- 0
- 0
- 0
-
-
- 668
- 3
- 0
- 0
- 0
-
-
- 669
- 1
- 0
- 0
- 0
-
-
- 670
- 1
- 0
- 0
- 0
-
-
- 671
- 1
- 0
- 0
- 0
-
-
- 672
- 1
- 0
- 0
- 0
-
-
- 673
- 1
- 0
- 0
- 0
-
-
- 674
- 1
- 0
- 0
- 0
-
-
- 675
- 1
- 0
- 0
- 0
-
-
- 676
- 1
- 0
- 0
- 0
-
-
- 677
- 1
- 0
- 0
- 0
-
-
- 678
- 1
- 0
- 0
- 0
-
-
- 679
- 1
- 0
- 0
- 0
-
-
- 680
- 1
- 0
- 0
- 0
-
-
- 681
- 1
- 0
- 0
- 0
-
-
- 682
- 1
- 0
- 0
- 0
-
-
- 683
- 1
- 0
- 0
- 0
-
-
- 684
- 1
- 0
- 0
- 0
-
-
- 685
- 1
- 0
- 0
- 0
-
-
- 686
- 1
- 0
- 0
- 0
-
-
- 687
- 1
- 0
- 0
- 0
-
-
- 688
- 1
- 0
- 0
- 0
-
-
- 689
- 1
- 0
- 0
- 0
-
-
- 690
- 1
- 0
- 0
- 0
-
-
- 691
- 1
- 0
- 0
- 0
-
-
- 692
- 1
- 0
- 0
- 0
-
-
- 693
- 1
- 0
- 0
- 0
-
-
- 694
- 1
- 0
- 0
- 0
-
-
- 695
- 1
- 0
- 0
- 0
-
-
- 696
- 1
- 0
- 0
- 0
-
-
- 697
- 1
- 0
- 0
- 0
-
-
- 698
- 1
- 0
- 0
- 0
-
-
- 699
- 1
- 0
- 0
- 0
-
-
- 700
- 1
- 0
- 0
- 0
-
-
- 701
- 1
- 0
- 0
- 0
-
-
- 702
- 1
- 0
- 0
- 0
-
-
- 703
- 1
- 0
- 0
- 0
-
-
- 704
- 1
- 0
- 0
- 0
-
-
- 705
- 1
- 0
- 0
- 0
-
-
- 706
- 1
- 0
- 0
- 0
-
-
- 707
- 1
- 0
- 0
- 0
-
-
- 708
- 1
- 0
- 0
- 0
-
-
- 709
- 1
- 0
- 0
- 0
-
-
- 710
- 1
- 0
- 0
- 0
-
-
- 711
- 1
- 0
- 0
- 0
-
-
- 712
- 1
- 0
- 0
- 0
-
-
- 713
- 1
- 0
- 0
- 0
-
-
- 714
- 1
- 0
- 0
- 0
-
-
- 715
- 1
- 0
- 0
- 0
-
-
- 716
- 1
- 0
- 0
- 0
-
-
- 717
- 1
- 0
- 0
- 0
-
-
- 718
- 1
- 0
- 0
- 0
-
-
- 719
- 1
- 0
- 0
- 0
-
-
- 720
- 10
- 0
- 0
- 0
-
-
- 721
- 700
- 0
- 0
- 0
-
-
- 722
- 700
- 0
- 0
- 0
-
-
- 723
- 700
- 0
- 0
- 0
-
-
- 724
- 700
- 0
- 0
- 0
-
-
- 725
- 700
- 0
- 0
- 0
-
-
- 726
- 700
- 0
- 0
- 0
-
-
- 727
- 2
- 0
- 0
- 0
-
-
- 728
- 1
- 0
- 0
- 0
-
-
- 729
- 1
- 0
- 0
- 0
-
-
- 730
- 1
- 0
- 0
- 0
-
-
- 731
- 1
- 0
- 0
- 0
-
-
- 732
- 1
- 0
- 0
- 0
-
-
- 733
- 1
- 0
- 0
- 0
-
-
- 734
- 1
- 0
- 0
- 0
-
-
- 735
- 1
- 0
- 0
- 0
-
-
- 736
- 1
- 0
- 0
- 0
-
-
- 737
- 1
- 0
- 0
- 0
-
-
- 738
- 1
- 0
- 0
- 0
-
-
- 739
- 1
- 0
- 0
- 0
-
-
- 740
- 2
- 0
- 0
- 0
-
-
- 741
- 1
- 0
- 0
- 0
-
-
- 742
- 1
- 0
- 0
- 0
-
-
- 743
- 1
- 0
- 0
- 0
-
-
- 744
- 1
- 0
- 0
- 0
-
-
- 745
- 1
- 0
- 0
- 0
-
-
- 746
- 1
- 0
- 0
- 0
-
-
- 747
- 1
- 0
- 0
- 0
-
-
- 748
- 1
- 0
- 0
- 0
-
-
- 749
- 1
- 0
- 0
- 0
-
-
- 750
- 1
- 0
- 0
- 0
-
-
- 751
- 1
- 0
- 0
- 0
-
-
- 752
- 1
- 0
- 0
- 0
-
-
- 753
- 1
- 0
- 0
- 0
-
-
- 754
- 1
- 0
- 0
- 0
-
-
- 755
- 5
- 0
- 0
- 0
-
-
- 756
- 1
- 0
- 0
- 0
-
-
- 757
- 1
- 0
- 0
- 0
-
-
- 758
- 1
- 0
- 0
- 0
-
-
- 759
- 1
- 0
- 0
- 0
-
-
- 760
- 1
- 0
- 0
- 0
-
-
- 761
- 5
- 0
- 0
- 0
-
-
- 762
- 1
- 0
- 0
- 0
-
-
- 763
- 1
- 0
- 0
- 0
-
-
- 764
- 1
- 0
- 0
- 0
-
-
- 765
- 1
- 0
- 0
- 0
-
-
- 766
- 1
- 0
- 0
- 0
-
-
- 767
- 4
- 0
- 0
- 0
-
-
- 768
- 4
- 0
- 0
- 0
-
-
- 769
- 1
- 0
- 0
- 0
-
-
- 770
- 1
- 0
- 0
- 0
-
-
- 771
- 15
- 0
- 0
- 0
-
-
- 772
- 15
- 0
- 0
- 0
-
-
- 773
- 2025
- 0
- 0
- 0
-
-
- 774
- 2175
- 0
- 0
- 0
-
-
- 775
- 1
- 0
- 0
- 0
-
-
- 776
- 1
- 0
- 0
- 0
-
-
- 777
- 1
- 0
- 0
- 0
-
-
- 778
- 1
- 0
- 0
- 0
-
-
- 779
- 1
- 0
- 0
- 0
-
-
- 780
- 1
- 0
- 0
- 0
-
-
- 781
- 1
- 0
- 0
- 0
-
-
- 782
- 1
- 0
- 0
- 0
-
-
- 783
- 2
- 0
- 0
- 0
-
-
- 784
- 2
- 0
- 0
- 0
-
-
- 785
- 2
- 0
- 0
- 0
-
-
- 786
- 2
- 0
- 0
- 0
-
-
- 787
- 2
- 0
- 0
- 0
-
-
- 788
- 1
- 0
- 0
- 0
-
-
- 789
- 1
- 0
- 0
- 0
-
-
- 790
- 1
- 0
- 0
- 0
-
-
- 791
- 1
- 0
- 0
- 0
-
-
- 792
- 1
- 0
- 0
- 0
-
-
- 793
- 1
- 0
- 0
- 0
-
-
- 794
- 2
- 0
- 0
- 0
-
-
- 795
- 2
- 0
- 0
- 0
-
-
- 796
- 1
- 0
- 0
- 0
-
-
- 797
- 1
- 0
- 0
- 0
-
-
- 798
- 1
- 0
- 0
- 0
-
-
- 799
- 1
- 0
- 0
- 0
-
-
- 800
- 4
- 0
- 0
- 0
-
-
- 801
- 13
- 0
- 0
- 0
-
-
- 802
- 38
- 0
- 0
- 0
-
-
- 803
- 105
- 0
- 0
- 0
-
-
- 804
- 262
- 0
- 0
- 0
-
-
- 805
- 698
- 0
- 0
- 0
-
-
- 806
- 1
- 0
- 0
- 0
-
-
- 807
- 2
- 0
- 0
- 0
-
-
- 808
- 10
- 0
- 0
- 0
-
-
- 809
- 25
- 0
- 0
- 0
-
-
- 810
- 65
- 0
- 0
- 0
-
-
- 811
- 350
- 0
- 0
- 0
-
-
- 812
- 1
- 0
- 0
- 0
-
-
- 813
- 2
- 0
- 0
- 0
-
-
- 814
- 10
- 0
- 0
- 0
-
-
- 815
- 25
- 0
- 0
- 0
-
-
- 816
- 65
- 0
- 0
- 0
-
-
- 817
- 350
- 0
- 0
- 0
-
-
- 818
- 1
- 0
- 0
- 0
-
-
- 819
- 1
- 0
- 0
- 0
-
-
- 820
- 3
- 0
- 0
- 0
-
-
- 821
- 5
- 0
- 0
- 0
-
-
- 822
- 12
- 0
- 0
- 0
-
-
- 823
- 36
- 0
- 0
- 0
-
-
- 824
- 175
- 0
- 0
- 0
-
-
- 825
- 6
- 0
- 0
- 0
-
-
- 826
- 8
- 0
- 0
- 0
-
-
- 827
- 37
- 0
- 0
- 0
-
-
- 828
- 98
- 0
- 0
- 0
-
-
- 829
- 246
- 0
- 0
- 0
-
-
- 830
- 624
- 0
- 0
- 0
-
-
- 831
- 4
- 0
- 0
- 0
-
-
- 832
- 6
- 0
- 0
- 0
-
-
- 833
- 24
- 0
- 0
- 0
-
-
- 834
- 64
- 0
- 0
- 0
-
-
- 835
- 160
- 0
- 0
- 0
-
-
- 836
- 400
- 0
- 0
- 0
-
-
- 837
- 70
- 0
- 0
- 0
-
-
- 838
- 70
- 0
- 0
- 0
-
-
- 839
- 80
- 0
- 0
- 0
-
-
- 840
- 80
- 0
- 0
- 0
-
-
- 841
- 50
- 0
- 0
- 0
-
-
- 842
- 50
- 0
- 0
- 0
-
-
- 843
- 100
- 0
- 0
- 0
-
-
- 844
- 100
- 0
- 0
- 0
-
-
- 845
- 160
- 0
- 0
- 0
-
-
- 846
- 160
- 0
- 0
- 0
-
-
- 847
- 320
- 0
- 0
- 0
-
-
- 848
- 320
- 0
- 0
- 0
-
-
- 849
- 200
- 0
- 0
- 0
-
-
- 850
- 200
- 0
- 0
- 0
-
-
- 851
- 640
- 0
- 0
- 0
-
-
- 852
- 640
- 0
- 0
- 0
-
-
- 853
- 400
- 0
- 0
- 0
-
-
- 854
- 400
- 0
- 0
- 0
-
-
- 855
- 1280
- 0
- 0
- 0
-
-
- 856
- 1280
- 0
- 0
- 0
-
-
- 857
- 800
- 0
- 0
- 0
-
-
- 858
- 800
- 0
- 0
- 0
-
-
- 859
- 2560
- 0
- 0
- 0
-
-
- 860
- 2560
- 0
- 0
- 0
-
-
- 861
- 1600
- 0
- 0
- 0
-
-
- 862
- 1600
- 0
- 0
- 0
-
-
- 863
- 58
- 0
- 0
- 0
-
-
- 864
- 14
- 0
- 0
- 0
-
-
- 865
- 68
- 0
- 0
- 0
-
-
- 866
- 27
- 0
- 0
- 0
-
-
- 867
- 66
- 0
- 0
- 0
-
-
- 868
- 167
- 0
- 0
- 0
-
-
- 869
- 19
- 0
- 0
- 0
-
-
- 870
- 1
- 0
- 0
- 0
-
-
- 871
- 3
- 0
- 0
- 0
-
-
- 872
- 10
- 0
- 0
- 0
-
-
- 873
- 27
- 0
- 0
- 0
-
-
- 874
- 18
- 0
- 0
- 0
-
-
- 875
- 66
- 0
- 0
- 0
-
-
- 876
- 166
- 0
- 0
- 0
-
-
- 877
- 3
- 0
- 0
- 0
-
-
- 878
- 3
- 0
- 0
- 0
-
-
- 879
- 7
- 0
- 0
- 0
-
-
- 880
- 13
- 0
- 0
- 0
-
-
- 881
- 200
- 0
- 0
- 0
-
-
- 882
- 7
- 0
- 0
- 0
-
-
- 883
- 1
- 0
- 0
- 0
-
-
- 884
- 20
- 0
- 0
- 0
-
-
- 885
- 3
- 0
- 0
- 0
-
-
- 886
- 46
- 0
- 0
- 0
-
-
- 887
- 12
- 0
- 0
- 0
-
-
- 888
- 76
- 0
- 0
- 0
-
-
- 889
- 32
- 0
- 0
- 0
-
-
- 890
- 172
- 0
- 0
- 0
-
-
- 891
- 80
- 0
- 0
- 0
-
-
- 892
- 510
- 0
- 0
- 0
-
-
- 893
- 400
- 0
- 0
- 0
-
-
- 894
- 1
- 0
- 0
- 0
-
-
- 895
- 1
- 0
- 0
- 0
-
-
- 896
- 1
- 0
- 0
- 0
-
-
- 897
- 1
- 0
- 0
- 0
-
-
- 898
- 1
- 0
- 0
- 0
-
-
- 899
- 1
- 0
- 0
- 0
-
-
- 900
- 1
- 0
- 0
- 0
-
-
- 901
- 1
- 0
- 0
- 0
-
-
- 902
- 1
- 0
- 0
- 0
-
-
- 903
- 1
- 0
- 0
- 0
-
-
- 904
- 1
- 0
- 0
- 0
-
-
- 905
- 1
- 0
- 0
- 0
-
-
- 906
- 1
- 0
- 0
- 0
-
-
- 907
- 1
- 0
- 0
- 0
-
-
- 908
- 1
- 0
- 0
- 0
-
-
- 909
- 1
- 0
- 0
- 0
-
-
- 910
- 1
- 0
- 0
- 0
-
-
- 911
- 1
- 0
- 0
- 0
-
-
- 912
- 1
- 0
- 0
- 0
-
-
- 913
- 1
- 0
- 0
- 0
-
-
- 914
- 1
- 0
- 0
- 0
-
-
- 915
- 1
- 0
- 0
- 0
-
-
- 916
- 1
- 0
- 0
- 0
-
-
- 917
- 1
- 0
- 0
- 0
-
-
- 918
- 1
- 0
- 0
- 0
-
-
- 919
- 1
- 0
- 0
- 0
-
-
- 920
- 1
- 0
- 0
- 0
-
-
- 921
- 1
- 0
- 0
- 0
-
-
- 922
- 1
- 0
- 0
- 0
-
-
- 923
- 1
- 0
- 0
- 0
-
-
- 924
- 1
- 0
- 0
- 0
-
-
- 925
- 1
- 0
- 0
- 0
-
-
- 926
- 1
- 0
- 0
- 0
-
-
- 927
- 1
- 0
- 0
- 0
-
-
- 928
- 1
- 0
- 0
- 0
-
-
- 929
- 1
- 0
- 0
- 0
-
-
- 930
- 1
- 0
- 0
- 0
-
-
- 931
- 1
- 0
- 0
- 0
-
-
- 932
- 1
- 0
- 0
- 0
-
-
- 933
- 1
- 0
- 0
- 0
-
-
- 934
- 1
- 0
- 0
- 0
-
-
- 935
- 1
- 0
- 0
- 0
-
-
- 936
- 1
- 0
- 0
- 0
-
-
- 937
- 1
- 0
- 0
- 0
-
-
- 938
- 1
- 0
- 0
- 0
-
-
- 939
- 1
- 0
- 0
- 0
-
-
- 940
- 1
- 0
- 0
- 0
-
-
- 941
- 1
- 0
- 0
- 0
-
-
- 942
- 10
- 0
- 0
- 0
-
-
- 943
- 1
- 0
- 0
- 0
-
-
- 944
- 1
- 0
- 0
- 0
-
-
- 945
- 1
- 0
- 0
- 0
-
-
- 946
- 6
- 0
- 0
- 0
-
-
- 947
- 6
- 0
- 0
- 0
-
-
- 948
- 10
- 0
- 0
- 0
-
-
- 949
- 10
- 0
- 0
- 0
-
-
- 950
- 55
- 0
- 0
- 0
-
-
- 951
- 55
- 0
- 0
- 0
-
-
- 952
- 3
- 0
- 0
- 0
-
-
- 953
- 3
- 0
- 0
- 0
-
-
- 954
- 18
- 0
- 0
- 0
-
-
- 955
- 18
- 0
- 0
- 0
-
-
- 956
- 1
- 0
- 0
- 0
-
-
- 957
- 1
- 0
- 0
- 0
-
-
- 958
- 150
- 0
- 0
- 0
-
-
- 959
- 150
- 0
- 0
- 0
-
-
- 960
- 100
- 0
- 0
- 0
-
-
- 961
- 100
- 0
- 0
- 0
-
-
- 962
- 1
- 0
- 0
- 0
-
-
- 963
- 1
- 0
- 0
- 0
-
-
- 964
- 1
- 0
- 0
- 0
-
-
- 965
- 1
- 0
- 0
- 0
-
-
- 966
- 1
- 0
- 0
- 0
-
-
- 967
- 1
- 0
- 0
- 0
-
-
- 968
- 1
- 0
- 0
- 0
-
-
- 969
- 1
- 0
- 0
- 0
-
-
- 970
- 10
- 0
- 0
- 0
-
-
- 971
- 10
- 0
- 0
- 0
-
-
- 972
- 1
- 0
- 0
- 0
-
-
- 973
- 45
- 0
- 0
- 0
-
-
- 974
- 45
- 0
- 0
- 0
-
-
- 975
- 52
- 0
- 0
- 0
-
-
- 976
- 52
- 0
- 0
- 0
-
-
- 977
- 1
- 0
- 0
- 0
-
-
- 978
- 1
- 0
- 0
- 0
-
-
- 979
- 1
- 0
- 0
- 0
-
-
- 980
- 1
- 0
- 0
- 0
-
-
- 981
- 12
- 0
- 0
- 0
-
-
- 982
- 12
- 0
- 0
- 0
-
-
- 983
- 1
- 0
- 0
- 0
-
-
- 984
- 1
- 0
- 0
- 0
-
-
- 985
- 1
- 0
- 0
- 0
-
-
- 986
- 1
- 0
- 0
- 0
-
-
- 987
- 1
- 0
- 0
- 0
-
-
- 988
- 1
- 0
- 0
- 0
-
-
- 989
- 1
- 0
- 0
- 0
-
-
- 990
- 1
- 0
- 0
- 0
-
-
- 991
- 1
- 0
- 0
- 0
-
-
- 992
- 1
- 0
- 0
- 0
-
-
- 993
- 1
- 0
- 0
- 0
-
-
- 994
- 1
- 0
- 0
- 0
-
-
- 995
- 1
- 0
- 0
- 0
-
-
- 996
- 1
- 0
- 0
- 0
-
-
- 997
- 1
- 0
- 0
- 0
-
-
- 998
- 1
- 0
- 0
- 0
-
-
- 999
- 1
- 0
- 0
- 0
-
-
- 1000
- 1
- 0
- 0
- 0
-
-
- 1001
- 1
- 0
- 0
- 0
-
-
- 1002
- 1
- 0
- 0
- 0
-
-
- 1003
- 1
- 0
- 0
- 0
-
-
- 1004
- 1
- 0
- 0
- 0
-
-
- 1005
- 2
- 0
- 0
- 0
-
-
- 1006
- 2
- 0
- 0
- 0
-
-
- 1007
- 20
- 0
- 0
- 0
-
-
- 1008
- 20
- 0
- 0
- 0
-
-
- 1009
- 30
- 0
- 0
- 0
-
-
- 1010
- 30
- 0
- 0
- 0
-
-
- 1011
- 2
- 0
- 0
- 0
-
-
- 1012
- 2
- 0
- 0
- 0
-
-
- 1013
- 2
- 0
- 0
- 0
-
-
- 1014
- 2
- 0
- 0
- 0
-
-
- 1015
- 2
- 0
- 0
- 0
-
-
- 1016
- 2
- 0
- 0
- 0
-
-
- 1017
- 2
- 0
- 0
- 0
-
-
- 1018
- 2
- 0
- 0
- 0
-
-
- 1019
- 20
- 0
- 0
- 0
-
-
- 1020
- 20
- 0
- 0
- 0
-
-
- 1021
- 20
- 0
- 0
- 0
-
-
- 1022
- 20
- 0
- 0
- 0
-
-
- 1023
- 20
- 0
- 0
- 0
-
-
- 1024
- 20
- 0
- 0
- 0
-
-
- 1025
- 2
- 0
- 0
- 0
-
-
- 1026
- 2
- 0
- 0
- 0
-
-
- 1027
- 20
- 0
- 0
- 0
-
-
- 1028
- 20
- 0
- 0
- 0
-
-
- 1029
- 20
- 0
- 0
- 0
-
-
- 1030
- 20
- 0
- 0
- 0
-
-
- 1031
- 20
- 0
- 0
- 0
-
-
- 1032
- 20
- 0
- 0
- 0
-
-
- 1033
- 30
- 0
- 0
- 0
-
-
- 1034
- 30
- 0
- 0
- 0
-
-
- 1035
- 40
- 0
- 0
- 0
-
-
- 1036
- 40
- 0
- 0
- 0
-
-
- 1037
- 1
- 0
- 0
- 0
-
-
- 1038
- 1
- 0
- 0
- 0
-
-
- 1039
- 1
- 0
- 0
- 0
-
-
- 1040
- 1
- 0
- 0
- 0
-
-
- 1041
- 1
- 0
- 0
- 0
-
-
- 1042
- 1
- 0
- 0
- 0
-
-
- 1043
- 1
- 0
- 0
- 0
-
-
- 1044
- 1
- 0
- 0
- 0
-
-
- 1045
- 1
- 0
- 0
- 0
-
-
- 1046
- 1
- 0
- 0
- 0
-
-
- 1047
- 1
- 0
- 0
- 0
-
-
- 1048
- 1
- 0
- 0
- 0
-
-
- 1049
- 1
- 0
- 0
- 0
-
-
- 1050
- 160
- 0
- 0
- 0
-
-
- 1051
- 160
- 0
- 0
- 0
-
-
- 1052
- 450
- 0
- 0
- 0
-
-
- 1053
- 15
- 0
- 0
- 0
-
-
- 1054
- 15
- 0
- 0
- 0
-
-
- 1055
- 15
- 0
- 0
- 0
-
-
- 1056
- 15
- 0
- 0
- 0
-
-
- 1057
- 15
- 0
- 0
- 0
-
-
- 1058
- 15
- 0
- 0
- 0
-
-
- 1059
- 6
- 0
- 0
- 0
-
-
- 1060
- 6
- 0
- 0
- 0
-
-
- 1061
- 6
- 0
- 0
- 0
-
-
- 1062
- 6
- 0
- 0
- 0
-
-
- 1063
- 18
- 0
- 0
- 0
-
-
- 1064
- 18
- 0
- 0
- 0
-
-
- 1065
- 2500
- 0
- 0
- 0
-
-
- 1066
- 2500
- 0
- 0
- 0
-
-
- 1067
- 280
- 0
- 0
- 0
-
-
- 1068
- 280
- 0
- 0
- 0
-
-
- 1069
- 1000
- 0
- 0
- 0
-
-
- 1070
- 1000
- 0
- 0
- 0
-
-
- 1071
- 2600
- 0
- 0
- 0
-
-
- 1072
- 2600
- 0
- 0
- 0
-
-
- 1073
- 6400
- 0
- 0
- 0
-
-
- 1074
- 6400
- 0
- 0
- 0
-
-
- 1075
- 80
- 0
- 0
- 0
-
-
- 1076
- 80
- 0
- 0
- 0
-
-
- 1077
- 1920
- 0
- 0
- 0
-
-
- 1078
- 1920
- 0
- 0
- 0
-
-
- 1079
- 64000
- 0
- 0
- 0
-
-
- 1080
- 64000
- 0
- 0
- 0
-
-
- 1081
- 280
- 0
- 0
- 0
-
-
- 1082
- 280
- 0
- 0
- 0
-
-
- 1083
- 1000
- 0
- 0
- 0
-
-
- 1084
- 1000
- 0
- 0
- 0
-
-
- 1085
- 2600
- 0
- 0
- 0
-
-
- 1086
- 2600
- 0
- 0
- 0
-
-
- 1087
- 80
- 0
- 0
- 0
-
-
- 1088
- 80
- 0
- 0
- 0
-
-
- 1089
- 1920
- 0
- 0
- 0
-
-
- 1090
- 1920
- 0
- 0
- 0
-
-
- 1091
- 6400
- 0
- 0
- 0
-
-
- 1092
- 6400
- 0
- 0
- 0
-
-
- 1093
- 64000
- 0
- 0
- 0
-
-
- 1094
- 64000
- 0
- 0
- 0
-
-
- 1095
- 20
- 0
- 0
- 0
-
-
- 1096
- 20
- 0
- 0
- 0
-
-
- 1097
- 750
- 0
- 0
- 0
-
-
- 1098
- 750
- 0
- 0
- 0
-
-
- 1099
- 3900
- 0
- 0
- 0
-
-
- 1100
- 3900
- 0
- 0
- 0
-
-
- 1101
- 210
- 0
- 0
- 0
-
-
- 1102
- 210
- 0
- 0
- 0
-
-
- 1103
- 60
- 0
- 0
- 0
-
-
- 1104
- 60
- 0
- 0
- 0
-
-
- 1105
- 750
- 0
- 0
- 0
-
-
- 1106
- 750
- 0
- 0
- 0
-
-
- 1107
- 1440
- 0
- 0
- 0
-
-
- 1108
- 1440
- 0
- 0
- 0
-
-
- 1109
- 1950
- 0
- 0
- 0
-
-
- 1110
- 1950
- 0
- 0
- 0
-
-
- 1111
- 4800
- 0
- 0
- 0
-
-
- 1112
- 4800
- 0
- 0
- 0
-
-
- 1113
- 50000
- 0
- 0
- 0
-
-
- 1114
- 50000
- 0
- 0
- 0
-
-
- 1115
- 560
- 0
- 0
- 0
-
-
- 1116
- 560
- 0
- 0
- 0
-
-
- 1117
- 160
- 0
- 0
- 0
-
-
- 1118
- 160
- 0
- 0
- 0
-
-
- 1119
- 2000
- 0
- 0
- 0
-
-
- 1120
- 2000
- 0
- 0
- 0
-
-
- 1121
- 5200
- 0
- 0
- 0
-
-
- 1122
- 5200
- 0
- 0
- 0
-
-
- 1123
- 16640
- 0
- 0
- 0
-
-
- 1124
- 16640
- 0
- 0
- 0
-
-
- 1125
- 3840
- 0
- 0
- 0
-
-
- 1126
- 3840
- 0
- 0
- 0
-
-
- 1127
- 65000
- 0
- 0
- 0
-
-
- 1128
- 65000
- 0
- 0
- 0
-
-
- 1129
- 21
- 0
- 0
- 0
-
-
- 1130
- 21
- 0
- 0
- 0
-
-
- 1131
- 170
- 0
- 0
- 0
-
-
- 1132
- 170
- 0
- 0
- 0
-
-
- 1133
- 850
- 0
- 0
- 0
-
-
- 1134
- 850
- 0
- 0
- 0
-
-
- 1135
- 7800
- 0
- 0
- 0
-
-
- 1136
- 7800
- 0
- 0
- 0
-
-
- 1137
- 84
- 0
- 0
- 0
-
-
- 1138
- 84
- 0
- 0
- 0
-
-
- 1139
- 24
- 0
- 0
- 0
-
-
- 1140
- 24
- 0
- 0
- 0
-
-
- 1141
- 300
- 0
- 0
- 0
-
-
- 1142
- 300
- 0
- 0
- 0
-
-
- 1143
- 780
- 0
- 0
- 0
-
-
- 1144
- 780
- 0
- 0
- 0
-
-
- 1145
- 1920
- 0
- 0
- 0
-
-
- 1146
- 1920
- 0
- 0
- 0
-
-
- 1147
- 19200
- 0
- 0
- 0
-
-
- 1148
- 19200
- 0
- 0
- 0
-
-
- 1149
- 100000
- 0
- 0
- 0
-
-
- 1150
- 100000
- 0
- 0
- 0
-
-
- 1151
- 576
- 0
- 0
- 0
-
-
- 1152
- 576
- 0
- 0
- 0
-
-
- 1153
- 154
- 0
- 0
- 0
-
-
- 1154
- 154
- 0
- 0
- 0
-
-
- 1155
- 44
- 0
- 0
- 0
-
-
- 1156
- 44
- 0
- 0
- 0
-
-
- 1157
- 550
- 0
- 0
- 0
-
-
- 1158
- 550
- 0
- 0
- 0
-
-
- 1159
- 1430
- 0
- 0
- 0
-
-
- 1160
- 1430
- 0
- 0
- 0
-
-
- 1161
- 3520
- 0
- 0
- 0
-
-
- 1162
- 3520
- 0
- 0
- 0
-
-
- 1163
- 35200
- 0
- 0
- 0
-
-
- 1164
- 35200
- 0
- 0
- 0
-
-
- 1165
- 1372
- 0
- 0
- 0
-
-
- 1166
- 1372
- 0
- 0
- 0
-
-
- 1167
- 24
- 0
- 0
- 0
-
-
- 1168
- 24
- 0
- 0
- 0
-
-
- 1169
- 200
- 0
- 0
- 0
-
-
- 1170
- 200
- 0
- 0
- 0
-
-
- 1171
- 20
- 0
- 0
- 0
-
-
- 1172
- 20
- 0
- 0
- 0
-
-
- 1173
- 48
- 0
- 0
- 0
-
-
- 1174
- 48
- 0
- 0
- 0
-
-
- 1175
- 168
- 0
- 0
- 0
-
-
- 1176
- 168
- 0
- 0
- 0
-
-
- 1177
- 600
- 0
- 0
- 0
-
-
- 1178
- 600
- 0
- 0
- 0
-
-
- 1179
- 1152
- 0
- 0
- 0
-
-
- 1180
- 1152
- 0
- 0
- 0
-
-
- 1181
- 1560
- 0
- 0
- 0
-
-
- 1182
- 1560
- 0
- 0
- 0
-
-
- 1183
- 3840
- 0
- 0
- 0
-
-
- 1184
- 3840
- 0
- 0
- 0
-
-
- 1185
- 38400
- 0
- 0
- 0
-
-
- 1186
- 38400
- 0
- 0
- 0
-
-
- 1187
- 500000
- 0
- 0
- 0
-
-
- 1188
- 500000
- 0
- 0
- 0
-
-
- 1189
- 68
- 0
- 0
- 0
-
-
- 1190
- 68
- 0
- 0
- 0
-
-
- 1191
- 238
- 0
- 0
- 0
-
-
- 1192
- 238
- 0
- 0
- 0
-
-
- 1193
- 850
- 0
- 0
- 0
-
-
- 1194
- 850
- 0
- 0
- 0
-
-
- 1195
- 2121
- 0
- 0
- 0
-
-
- 1196
- 2121
- 0
- 0
- 0
-
-
- 1197
- 2210
- 0
- 0
- 0
-
-
- 1198
- 2210
- 0
- 0
- 0
-
-
- 1199
- 5440
- 0
- 0
- 0
-
-
- 1200
- 5440
- 0
- 0
- 0
-
-
- 1201
- 54400
- 0
- 0
- 0
-
-
- 1202
- 54400
- 0
- 0
- 0
-
-
- 1203
- 35
- 0
- 0
- 0
-
-
- 1204
- 35
- 0
- 0
- 0
-
-
- 1205
- 10
- 0
- 0
- 0
-
-
- 1206
- 10
- 0
- 0
- 0
-
-
- 1207
- 125
- 0
- 0
- 0
-
-
- 1208
- 125
- 0
- 0
- 0
-
-
- 1209
- 325
- 0
- 0
- 0
-
-
- 1210
- 325
- 0
- 0
- 0
-
-
- 1211
- 800
- 0
- 0
- 0
-
-
- 1212
- 800
- 0
- 0
- 0
-
-
- 1213
- 8000
- 0
- 0
- 0
-
-
- 1214
- 8000
- 0
- 0
- 0
-
-
- 1215
- 30000
- 0
- 0
- 0
-
-
- 1216
- 30000
- 0
- 0
- 0
-
-
- 1217
- 240
- 0
- 0
- 0
-
-
- 1218
- 240
- 0
- 0
- 0
-
-
- 1219
- 35
- 0
- 0
- 0
-
-
- 1220
- 35
- 0
- 0
- 0
-
-
- 1221
- 10
- 0
- 0
- 0
-
-
- 1222
- 10
- 0
- 0
- 0
-
-
- 1223
- 125
- 0
- 0
- 0
-
-
- 1224
- 125
- 0
- 0
- 0
-
-
- 1225
- 325
- 0
- 0
- 0
-
-
- 1226
- 325
- 0
- 0
- 0
-
-
- 1227
- 800
- 0
- 0
- 0
-
-
- 1228
- 800
- 0
- 0
- 0
-
-
- 1229
- 8000
- 0
- 0
- 0
-
-
- 1230
- 8000
- 0
- 0
- 0
-
-
- 1231
- 24000
- 0
- 0
- 0
-
-
- 1232
- 24000
- 0
- 0
- 0
-
-
- 1233
- 240
- 0
- 0
- 0
-
-
- 1234
- 240
- 0
- 0
- 0
-
-
- 1235
- 565
- 0
- 0
- 0
-
-
- 1236
- 565
- 0
- 0
- 0
-
-
- 1237
- 26
- 0
- 0
- 0
-
-
- 1238
- 26
- 0
- 0
- 0
-
-
- 1239
- 91
- 0
- 0
- 0
-
-
- 1240
- 91
- 0
- 0
- 0
-
-
- 1241
- 325
- 0
- 0
- 0
-
-
- 1242
- 325
- 0
- 0
- 0
-
-
- 1243
- 845
- 0
- 0
- 0
-
-
- 1244
- 845
- 0
- 0
- 0
-
-
- 1245
- 2080
- 0
- 0
- 0
-
-
- 1246
- 2080
- 0
- 0
- 0
-
-
- 1247
- 20800
- 0
- 0
- 0
-
-
- 1248
- 20800
- 0
- 0
- 0
-
-
- 1249
- 62400
- 0
- 0
- 0
-
-
- 1250
- 62400
- 0
- 0
- 0
-
-
- 1251
- 26
- 0
- 0
- 0
-
-
- 1252
- 26
- 0
- 0
- 0
-
-
- 1253
- 91
- 0
- 0
- 0
-
-
- 1254
- 91
- 0
- 0
- 0
-
-
- 1255
- 325
- 0
- 0
- 0
-
-
- 1256
- 325
- 0
- 0
- 0
-
-
- 1257
- 845
- 0
- 0
- 0
-
-
- 1258
- 845
- 0
- 0
- 0
-
-
- 1259
- 2080
- 0
- 0
- 0
-
-
- 1260
- 2080
- 0
- 0
- 0
-
-
- 1261
- 20800
- 0
- 0
- 0
-
-
- 1262
- 20800
- 0
- 0
- 0
-
-
- 1263
- 62400
- 0
- 0
- 0
-
-
- 1264
- 62400
- 0
- 0
- 0
-
-
- 1265
- 1
- 0
- 0
- 0
-
-
- 1266
- 1
- 0
- 0
- 0
-
-
- 1267
- 140
- 0
- 0
- 0
-
-
- 1268
- 140
- 0
- 0
- 0
-
-
- 1269
- 500
- 0
- 0
- 0
-
-
- 1270
- 500
- 0
- 0
- 0
-
-
- 1271
- 3200
- 0
- 0
- 0
-
-
- 1272
- 3200
- 0
- 0
- 0
-
-
- 1273
- 1300
- 0
- 0
- 0
-
-
- 1274
- 1300
- 0
- 0
- 0
-
-
- 1275
- 32000
- 0
- 0
- 0
-
-
- 1276
- 32000
- 0
- 0
- 0
-
-
- 1277
- 26
- 0
- 0
- 0
-
-
- 1278
- 26
- 0
- 0
- 0
-
-
- 1279
- 91
- 0
- 0
- 0
-
-
- 1280
- 91
- 0
- 0
- 0
-
-
- 1281
- 325
- 0
- 0
- 0
-
-
- 1282
- 325
- 0
- 0
- 0
-
-
- 1283
- 624
- 0
- 0
- 0
-
-
- 1284
- 624
- 0
- 0
- 0
-
-
- 1285
- 845
- 0
- 0
- 0
-
-
- 1286
- 845
- 0
- 0
- 0
-
-
- 1287
- 2080
- 0
- 0
- 0
-
-
- 1288
- 2080
- 0
- 0
- 0
-
-
- 1289
- 20800
- 0
- 0
- 0
-
-
- 1290
- 20800
- 0
- 0
- 0
-
-
- 1291
- 40
- 0
- 0
- 0
-
-
- 1292
- 40
- 0
- 0
- 0
-
-
- 1293
- 140
- 0
- 0
- 0
-
-
- 1294
- 140
- 0
- 0
- 0
-
-
- 1295
- 500
- 0
- 0
- 0
-
-
- 1296
- 500
- 0
- 0
- 0
-
-
- 1297
- 960
- 0
- 0
- 0
-
-
- 1298
- 960
- 0
- 0
- 0
-
-
- 1299
- 1300
- 0
- 0
- 0
-
-
- 1300
- 1300
- 0
- 0
- 0
-
-
- 1301
- 3200
- 0
- 0
- 0
-
-
- 1302
- 3200
- 0
- 0
- 0
-
-
- 1303
- 32000
- 0
- 0
- 0
-
-
- 1304
- 32000
- 0
- 0
- 0
-
-
- 1305
- 100000
- 0
- 0
- 0
-
-
- 1306
- 100000
- 0
- 0
- 0
-
-
- 1307
- 80
- 0
- 0
- 0
-
-
- 1308
- 80
- 0
- 0
- 0
-
-
- 1309
- 280
- 0
- 0
- 0
-
-
- 1310
- 280
- 0
- 0
- 0
-
-
- 1311
- 1000
- 0
- 0
- 0
-
-
- 1312
- 1000
- 0
- 0
- 0
-
-
- 1313
- 1920
- 0
- 0
- 0
-
-
- 1314
- 1920
- 0
- 0
- 0
-
-
- 1315
- 2600
- 0
- 0
- 0
-
-
- 1316
- 2600
- 0
- 0
- 0
-
-
- 1317
- 6400
- 0
- 0
- 0
-
-
- 1318
- 6400
- 0
- 0
- 0
-
-
- 1319
- 64000
- 0
- 0
- 0
-
-
- 1320
- 64000
- 0
- 0
- 0
-
-
- 1321
- 32
- 0
- 0
- 0
-
-
- 1322
- 32
- 0
- 0
- 0
-
-
- 1323
- 112
- 0
- 0
- 0
-
-
- 1324
- 112
- 0
- 0
- 0
-
-
- 1325
- 400
- 0
- 0
- 0
-
-
- 1326
- 400
- 0
- 0
- 0
-
-
- 1327
- 768
- 0
- 0
- 0
-
-
- 1328
- 768
- 0
- 0
- 0
-
-
- 1329
- 1040
- 0
- 0
- 0
-
-
- 1330
- 1040
- 0
- 0
- 0
-
-
- 1331
- 2560
- 0
- 0
- 0
-
-
- 1332
- 2560
- 0
- 0
- 0
-
-
- 1333
- 25600
- 0
- 0
- 0
-
-
- 1334
- 25600
- 0
- 0
- 0
-
-
- 1335
- 224
- 0
- 0
- 0
-
-
- 1336
- 224
- 0
- 0
- 0
-
-
- 1337
- 61
- 0
- 0
- 0
-
-
- 1338
- 61
- 0
- 0
- 0
-
-
- 1339
- 832
- 0
- 0
- 0
-
-
- 1340
- 832
- 0
- 0
- 0
-
-
- 1341
- 1274
- 0
- 0
- 0
-
-
- 1342
- 1274
- 0
- 0
- 0
-
-
- 1343
- 2158
- 0
- 0
- 0
-
-
- 1344
- 2158
- 0
- 0
- 0
-
-
- 1345
- 5356
- 0
- 0
- 0
-
-
- 1346
- 5356
- 0
- 0
- 0
-
-
- 1347
- 41500
- 0
- 0
- 0
-
-
- 1348
- 41500
- 0
- 0
- 0
-
-
- 1349
- 56
- 0
- 0
- 0
-
-
- 1350
- 56
- 0
- 0
- 0
-
-
- 1351
- 16
- 0
- 0
- 0
-
-
- 1352
- 16
- 0
- 0
- 0
-
-
- 1353
- 200
- 0
- 0
- 0
-
-
- 1354
- 200
- 0
- 0
- 0
-
-
- 1355
- 520
- 0
- 0
- 0
-
-
- 1356
- 520
- 0
- 0
- 0
-
-
- 1357
- 1280
- 0
- 0
- 0
-
-
- 1358
- 1280
- 0
- 0
- 0
-
-
- 1359
- 12800
- 0
- 0
- 0
-
-
- 1360
- 12800
- 0
- 0
- 0
-
-
- 1361
- 384
- 0
- 0
- 0
-
-
- 1362
- 384
- 0
- 0
- 0
-
-
- 1363
- 182
- 0
- 0
- 0
-
-
- 1364
- 182
- 0
- 0
- 0
-
-
- 1365
- 650
- 0
- 0
- 0
-
-
- 1366
- 650
- 0
- 0
- 0
-
-
- 1367
- 1248
- 0
- 0
- 0
-
-
- 1368
- 1248
- 0
- 0
- 0
-
-
- 1369
- 1690
- 0
- 0
- 0
-
-
- 1370
- 1690
- 0
- 0
- 0
-
-
- 1371
- 4160
- 0
- 0
- 0
-
-
- 1372
- 4160
- 0
- 0
- 0
-
-
- 1373
- 41600
- 0
- 0
- 0
-
-
- 1374
- 41600
- 0
- 0
- 0
-
-
- 1375
- 52
- 0
- 0
- 0
-
-
- 1376
- 52
- 0
- 0
- 0
-
-
- 1377
- 200000
- 0
- 0
- 0
-
-
- 1378
- 200000
- 0
- 0
- 0
-
-
- 1379
- 15
- 0
- 0
- 0
-
-
- 1380
- 15
- 0
- 0
- 0
-
-
- 1381
- 1500
- 0
- 0
- 0
-
-
- 1382
- 1500
- 0
- 0
- 0
-
-
- 1383
- 1500
- 0
- 0
- 0
-
-
- 1384
- 1500
- 0
- 0
- 0
-
-
- 1385
- 1500
- 0
- 0
- 0
-
-
- 1386
- 1500
- 0
- 0
- 0
-
-
- 1387
- 1500
- 0
- 0
- 0
-
-
- 1388
- 1500
- 0
- 0
- 0
-
-
- 1389
- 200
- 0
- 0
- 0
-
-
- 1390
- 200
- 0
- 0
- 0
-
-
- 1391
- 7000
- 0
- 0
- 0
-
-
- 1392
- 7000
- 0
- 0
- 0
-
-
- 1393
- 15500
- 0
- 0
- 0
-
-
- 1394
- 15500
- 0
- 0
- 0
-
-
- 1395
- 15500
- 0
- 0
- 0
-
-
- 1396
- 15500
- 0
- 0
- 0
-
-
- 1397
- 15500
- 0
- 0
- 0
-
-
- 1398
- 15500
- 0
- 0
- 0
-
-
- 1399
- 15500
- 0
- 0
- 0
-
-
- 1400
- 15500
- 0
- 0
- 0
-
-
- 1401
- 42500
- 0
- 0
- 0
-
-
- 1402
- 42500
- 0
- 0
- 0
-
-
- 1403
- 42500
- 0
- 0
- 0
-
-
- 1404
- 42500
- 0
- 0
- 0
-
-
- 1405
- 42500
- 0
- 0
- 0
-
-
- 1406
- 42500
- 0
- 0
- 0
-
-
- 1407
- 42500
- 0
- 0
- 0
-
-
- 1408
- 42500
- 0
- 0
- 0
-
-
- 1409
- 42500
- 0
- 0
- 0
-
-
- 1410
- 20
- 0
- 0
- 0
-
-
- 1411
- 1
- 0
- 0
- 0
-
-
- 1412
- 1
- 0
- 0
- 0
-
-
- 1413
- 1
- 0
- 0
- 0
-
-
- 1414
- 1
- 0
- 0
- 0
-
-
- 1415
- 1
- 0
- 0
- 0
-
-
- 1416
- 1
- 0
- 0
- 0
-
-
- 1417
- 1
- 0
- 0
- 0
-
-
- 1418
- 1
- 0
- 0
- 0
-
-
- 1419
- 1
- 0
- 0
- 0
-
-
- 1420
- 63
- 0
- 0
- 0
-
-
- 1421
- 63
- 0
- 0
- 0
-
-
- 1422
- 18
- 0
- 0
- 0
-
-
- 1423
- 18
- 0
- 0
- 0
-
-
- 1424
- 225
- 0
- 0
- 0
-
-
- 1425
- 225
- 0
- 0
- 0
-
-
- 1426
- 432
- 0
- 0
- 0
-
-
- 1427
- 432
- 0
- 0
- 0
-
-
- 1428
- 585
- 0
- 0
- 0
-
-
- 1429
- 585
- 0
- 0
- 0
-
-
- 1430
- 1440
- 0
- 0
- 0
-
-
- 1431
- 1440
- 0
- 0
- 0
-
-
- 1432
- 14400
- 0
- 0
- 0
-
-
- 1433
- 14400
- 0
- 0
- 0
-
-
- 1434
- 50000
- 0
- 0
- 0
-
-
- 1435
- 50000
- 0
- 0
- 0
-
-
- 1436
- 4
- 0
- 0
- 0
-
-
- 1437
- 4
- 0
- 0
- 0
-
-
- 1438
- 4
- 0
- 0
- 0
-
-
- 1439
- 4
- 0
- 0
- 0
-
-
- 1440
- 4
- 0
- 0
- 0
-
-
- 1441
- 4
- 0
- 0
- 0
-
-
- 1442
- 4
- 0
- 0
- 0
-
-
- 1443
- 4
- 0
- 0
- 0
-
-
- 1444
- 4
- 0
- 0
- 0
-
-
- 1445
- 4
- 0
- 0
- 0
-
-
- 1446
- 4
- 0
- 0
- 0
-
-
- 1447
- 4
- 0
- 0
- 0
-
-
- 1448
- 4
- 0
- 0
- 0
-
-
- 1449
- 4
- 0
- 0
- 0
-
-
- 1450
- 4
- 0
- 0
- 0
-
-
- 1451
- 4
- 0
- 0
- 0
-
-
- 1452
- 4
- 0
- 0
- 0
-
-
- 1453
- 4
- 0
- 0
- 0
-
-
- 1454
- 4
- 0
- 0
- 0
-
-
- 1455
- 4
- 0
- 0
- 0
-
-
- 1456
- 4
- 0
- 0
- 0
-
-
- 1457
- 4
- 0
- 0
- 0
-
-
- 1458
- 4
- 0
- 0
- 0
-
-
- 1459
- 4
- 0
- 0
- 0
-
-
- 1460
- 4
- 0
- 0
- 0
-
-
- 1461
- 4
- 0
- 0
- 0
-
-
- 1462
- 4
- 0
- 0
- 0
-
-
- 1463
- 4
- 0
- 0
- 0
-
-
- 1464
- 25
- 0
- 0
- 0
-
-
- 1465
- 11
- 0
- 0
- 0
-
-
- 1466
- 4
- 0
- 0
- 0
-
-
- 1467
- 1
- 0
- 0
- 0
-
-
- 1468
- 1
- 0
- 0
- 0
-
-
- 1469
- 1
- 0
- 0
- 0
-
-
- 1470
- 4
- 0
- 0
- 0
-
-
- 1471
- 4
- 0
- 0
- 0
-
-
- 1472
- 4
- 0
- 0
- 0
-
-
- 1473
- 4
- 0
- 0
- 0
-
-
- 1474
- 4
- 0
- 0
- 0
-
-
- 1475
- 4
- 0
- 0
- 0
-
-
- 1476
- 4
- 0
- 0
- 0
-
-
- 1477
- 4
- 0
- 0
- 0
-
-
- 1478
- 100
- 0
- 0
- 0
-
-
- 1479
- 100
- 0
- 0
- 0
-
-
- 1480
- 1
- 0
- 0
- 0
-
-
- 1481
- 10
- 0
- 0
- 0
-
-
- 1482
- 10
- 0
- 0
- 0
-
-
- 1483
- 10
- 0
- 0
- 0
-
-
- 1484
- 20
- 0
- 0
- 0
-
-
- 1485
- 10
- 0
- 0
- 0
-
-
- 1486
- 10
- 0
- 0
- 0
-
-
- 1487
- 20
- 0
- 0
- 0
-
-
- 1488
- 10
- 0
- 0
- 0
-
-
- 1489
- 10
- 0
- 0
- 0
-
-
- 1490
- 10
- 0
- 0
- 0
-
-
- 1491
- 1
- 0
- 0
- 0
-
-
- 1492
- 2
- 0
- 0
- 0
-
-
- 1493
- 1
- 0
- 0
- 0
-
-
- 1494
- 1
- 0
- 0
- 0
-
-
- 1495
- 6
- 0
- 0
- 0
-
-
- 1496
- 1
- 0
- 0
- 0
-
-
- 1497
- 1
- 0
- 0
- 0
-
-
- 1498
- 1
- 0
- 0
- 0
-
-
- 1499
- 1
- 0
- 0
- 0
-
-
- 1500
- 2
- 0
- 0
- 0
-
-
- 1501
- 2
- 0
- 0
- 0
-
-
- 1502
- 2
- 0
- 0
- 0
-
-
- 1503
- 5
- 0
- 0
- 0
-
-
- 1504
- 2
- 0
- 0
- 0
-
-
- 1505
- 1
- 0
- 0
- 0
-
-
- 1506
- 2
- 0
- 0
- 0
-
-
- 1507
- 1
- 0
- 0
- 0
-
-
- 1508
- 2
- 0
- 0
- 0
-
-
- 1509
- 1
- 0
- 0
- 0
-
-
- 1510
- 1
- 0
- 0
- 0
-
-
- 1511
- 4
- 0
- 0
- 0
-
-
- 1512
- 4
- 0
- 0
- 0
-
-
- 1513
- 320
- 0
- 0
- 0
-
-
- 1514
- 320
- 0
- 0
- 0
-
-
- 1515
- 160
- 0
- 0
- 0
-
-
- 1516
- 160
- 0
- 0
- 0
-
-
- 1517
- 80
- 0
- 0
- 0
-
-
- 1518
- 80
- 0
- 0
- 0
-
-
- 1519
- 40
- 0
- 0
- 0
-
-
- 1520
- 40
- 0
- 0
- 0
-
-
- 1521
- 20
- 0
- 0
- 0
-
-
- 1522
- 20
- 0
- 0
- 0
-
-
- 1523
- 20
- 0
- 0
- 0
-
-
- 1524
- 20
- 0
- 0
- 0
-
-
- 1525
- 1
- 0
- 0
- 0
-
-
- 1526
- 5
- 0
- 0
- 0
-
-
- 1527
- 1
- 0
- 0
- 0
-
-
- 1528
- 5
- 0
- 0
- 0
-
-
- 1529
- 1
- 0
- 0
- 0
-
-
- 1530
- 5
- 0
- 0
- 0
-
-
- 1531
- 1
- 0
- 0
- 0
-
-
- 1532
- 5
- 0
- 0
- 0
-
-
- 1533
- 1
- 0
- 0
- 0
-
-
- 1534
- 5
- 0
- 0
- 0
-
-
- 1535
- 1
- 0
- 0
- 0
-
-
- 1536
- 1
- 0
- 0
- 0
-
-
- 1537
- 1
- 0
- 0
- 0
-
-
- 1538
- 1
- 0
- 0
- 0
-
-
- 1539
- 52
- 0
- 0
- 0
-
-
- 1540
- 20
- 0
- 0
- 0
-
-
- 1541
- 20
- 0
- 0
- 0
-
-
- 1542
- 1
- 0
- 0
- 0
-
-
- 1543
- 1
- 0
- 0
- 0
-
-
- 1544
- 1
- 0
- 0
- 0
-
-
- 1545
- 1
- 0
- 0
- 0
-
-
- 1546
- 1
- 0
- 0
- 0
-
-
- 1547
- 1
- 0
- 0
- 0
-
-
- 1548
- 1
- 0
- 0
- 0
-
-
- 1549
- 8
- 0
- 0
- 0
-
-
- 1550
- 3
- 0
- 0
- 0
-
-
- 1551
- 3
- 0
- 0
- 0
-
-
- 1552
- 10
- 0
- 0
- 0
-
-
- 1553
- 1
- 0
- 0
- 0
-
-
- 1554
- 1
- 0
- 0
- 0
-
-
- 1555
- 1
- 0
- 0
- 0
-
-
- 1556
- 1
- 0
- 0
- 0
-
-
- 1557
- 1
- 0
- 0
- 0
-
-
- 1558
- 1
- 0
- 0
- 0
-
-
- 1559
- 1
- 0
- 0
- 0
-
-
- 1560
- 1
- 0
- 0
- 0
-
-
- 1561
- 1
- 0
- 0
- 0
-
-
- 1562
- 1
- 0
- 0
- 0
-
-
- 1563
- 1
- 0
- 0
- 0
-
-
- 1564
- 1
- 0
- 0
- 0
-
-
- 1565
- 1
- 0
- 0
- 0
-
-
- 1566
- 1
- 0
- 0
- 0
-
-
- 1567
- 1
- 0
- 0
- 0
-
-
- 1568
- 1
- 0
- 0
- 0
-
-
- 1569
- 1
- 0
- 0
- 0
-
-
- 1570
- 1
- 0
- 0
- 0
-
-
- 1571
- 1
- 0
- 0
- 0
-
-
- 1572
- 1
- 0
- 0
- 0
-
-
- 1573
- 2
- 0
- 0
- 0
-
-
- 1574
- 1
- 0
- 0
- 0
-
-
- 1575
- 350
- 0
- 0
- 0
-
-
- 1576
- 1
- 0
- 0
- 0
-
-
- 1577
- 5
- 0
- 0
- 0
-
-
- 1578
- 5
- 0
- 0
- 0
-
-
- 1579
- 2
- 0
- 0
- 0
-
-
- 1580
- 6
- 0
- 0
- 0
-
-
- 1581
- 5
- 0
- 0
- 0
-
-
- 1582
- 10
- 0
- 0
- 0
-
-
- 1583
- 2
- 0
- 0
- 0
-
-
- 1584
- 1
- 0
- 0
- 0
-
-
- 1585
- 15
- 0
- 0
- 0
-
-
- 1586
- 1
- 0
- 0
- 0
-
-
- 1587
- 1
- 0
- 0
- 0
-
-
- 1588
- 1
- 0
- 0
- 0
-
-
- 1589
- 1
- 0
- 0
- 0
-
-
- 1590
- 1
- 0
- 0
- 0
-
-
- 1591
- 1
- 0
- 0
- 0
-
-
- 1592
- 5
- 0
- 0
- 0
-
-
- 1593
- 5
- 0
- 0
- 0
-
-
- 1594
- 200
- 0
- 0
- 0
-
-
- 1595
- 5
- 0
- 0
- 0
-
-
- 1596
- 5
- 0
- 0
- 0
-
-
- 1597
- 5
- 0
- 0
- 0
-
-
- 1598
- 5
- 0
- 0
- 0
-
-
- 1599
- 5
- 0
- 0
- 0
-
-
- 1600
- 5
- 0
- 0
- 0
-
-
- 1601
- 2000
- 0
- 0
- 0
-
-
- 1602
- 2000
- 0
- 0
- 0
-
-
- 1603
- 1000
- 0
- 0
- 0
-
-
- 1604
- 1000
- 0
- 0
- 0
-
-
- 1605
- 500
- 0
- 0
- 0
-
-
- 1606
- 500
- 0
- 0
- 0
-
-
- 1607
- 250
- 0
- 0
- 0
-
-
- 1608
- 250
- 0
- 0
- 0
-
-
- 1609
- 100
- 0
- 0
- 0
-
-
- 1610
- 100
- 0
- 0
- 0
-
-
- 1611
- 150
- 0
- 0
- 0
-
-
- 1612
- 150
- 0
- 0
- 0
-
-
- 1613
- 200
- 0
- 0
- 0
-
-
- 1614
- 200
- 0
- 0
- 0
-
-
- 1615
- 10000
- 0
- 0
- 0
-
-
- 1616
- 10000
- 0
- 0
- 0
-
-
- 1617
- 200
- 0
- 0
- 0
-
-
- 1618
- 200
- 0
- 0
- 0
-
-
- 1619
- 100
- 0
- 0
- 0
-
-
- 1620
- 100
- 0
- 0
- 0
-
-
- 1621
- 50
- 0
- 0
- 0
-
-
- 1622
- 50
- 0
- 0
- 0
-
-
- 1623
- 25
- 0
- 0
- 0
-
-
- 1624
- 25
- 0
- 0
- 0
-
-
- 1625
- 20
- 0
- 0
- 0
-
-
- 1626
- 20
- 0
- 0
- 0
-
-
- 1627
- 30
- 0
- 0
- 0
-
-
- 1628
- 30
- 0
- 0
- 0
-
-
- 1629
- 40
- 0
- 0
- 0
-
-
- 1630
- 40
- 0
- 0
- 0
-
-
- 1631
- 1000
- 0
- 0
- 0
-
-
- 1632
- 1000
- 0
- 0
- 0
-
-
- 1633
- 1
- 0
- 0
- 0
-
-
- 1634
- 1
- 0
- 0
- 0
-
-
- 1635
- 350
- 0
- 0
- 0
-
-
- 1636
- 350
- 0
- 0
- 0
-
-
- 1637
- 900
- 0
- 0
- 0
-
-
- 1638
- 900
- 0
- 0
- 0
-
-
- 1639
- 1275
- 0
- 0
- 0
-
-
- 1640
- 1275
- 0
- 0
- 0
-
-
- 1641
- 2025
- 0
- 0
- 0
-
-
- 1642
- 2025
- 0
- 0
- 0
-
-
- 1643
- 3525
- 0
- 0
- 0
-
-
- 1644
- 3525
- 0
- 0
- 0
-
-
- 1645
- 17625
- 0
- 0
- 0
-
-
- 1646
- 17625
- 0
- 0
- 0
-
-
- 1647
- 1
- 0
- 0
- 0
-
-
- 1648
- 1
- 0
- 0
- 0
-
-
- 1649
- 1
- 0
- 0
- 0
-
-
- 1650
- 1
- 0
- 0
- 0
-
-
- 1651
- 1
- 0
- 0
- 0
-
-
- 1652
- 1
- 0
- 0
- 0
-
-
- 1653
- 1
- 0
- 0
- 0
-
-
- 1654
- 450
- 0
- 0
- 0
-
-
- 1655
- 450
- 0
- 0
- 0
-
-
- 1656
- 1050
- 0
- 0
- 0
-
-
- 1657
- 1050
- 0
- 0
- 0
-
-
- 1658
- 1425
- 0
- 0
- 0
-
-
- 1659
- 1425
- 0
- 0
- 0
-
-
- 1660
- 2175
- 0
- 0
- 0
-
-
- 1661
- 2175
- 0
- 0
- 0
-
-
- 1662
- 3675
- 0
- 0
- 0
-
-
- 1663
- 3675
- 0
- 0
- 0
-
-
- 1664
- 18375
- 0
- 0
- 0
-
-
- 1665
- 18375
- 0
- 0
- 0
-
-
- 1666
- 1
- 0
- 0
- 0
-
-
- 1667
- 1
- 0
- 0
- 0
-
-
- 1668
- 1
- 0
- 0
- 0
-
-
- 1669
- 1
- 0
- 0
- 0
-
-
- 1670
- 1
- 0
- 0
- 0
-
-
- 1671
- 1
- 0
- 0
- 0
-
-
- 1672
- 1
- 0
- 0
- 0
-
-
- 1673
- 350
- 0
- 0
- 0
-
-
- 1674
- 350
- 0
- 0
- 0
-
-
- 1675
- 900
- 0
- 0
- 0
-
-
- 1676
- 900
- 0
- 0
- 0
-
-
- 1677
- 1275
- 0
- 0
- 0
-
-
- 1678
- 1275
- 0
- 0
- 0
-
-
- 1679
- 2025
- 0
- 0
- 0
-
-
- 1680
- 2025
- 0
- 0
- 0
-
-
- 1681
- 3525
- 0
- 0
- 0
-
-
- 1682
- 3525
- 0
- 0
- 0
-
-
- 1683
- 17625
- 0
- 0
- 0
-
-
- 1684
- 17625
- 0
- 0
- 0
-
-
- 1685
- 1
- 0
- 0
- 0
-
-
- 1686
- 1
- 0
- 0
- 0
-
-
- 1687
- 1
- 0
- 0
- 0
-
-
- 1688
- 1
- 0
- 0
- 0
-
-
- 1689
- 1
- 0
- 0
- 0
-
-
- 1690
- 1
- 0
- 0
- 0
-
-
- 1691
- 1
- 0
- 0
- 0
-
-
- 1692
- 350
- 0
- 0
- 0
-
-
- 1693
- 350
- 0
- 0
- 0
-
-
- 1694
- 900
- 0
- 0
- 0
-
-
- 1695
- 900
- 0
- 0
- 0
-
-
- 1696
- 1275
- 0
- 0
- 0
-
-
- 1697
- 1275
- 0
- 0
- 0
-
-
- 1698
- 2025
- 0
- 0
- 0
-
-
- 1699
- 2025
- 0
- 0
- 0
-
-
- 1700
- 3525
- 0
- 0
- 0
-
-
- 1701
- 3525
- 0
- 0
- 0
-
-
- 1702
- 17625
- 0
- 0
- 0
-
-
- 1703
- 17625
- 0
- 0
- 0
-
-
- 1704
- 17625
- 0
- 0
- 0
-
-
- 1705
- 17625
- 0
- 0
- 0
-
-
- 1706
- 17625
- 0
- 0
- 0
-
-
- 1707
- 17625
- 0
- 0
- 0
-
-
- 1708
- 17625
- 0
- 0
- 0
-
-
- 1709
- 17625
- 0
- 0
- 0
-
-
- 1710
- 17625
- 0
- 0
- 0
-
-
- 1711
- 17625
- 0
- 0
- 0
-
-
- 1712
- 17625
- 0
- 0
- 0
-
-
- 1713
- 17625
- 0
- 0
- 0
-
-
- 1714
- 200
- 0
- 0
- 0
-
-
- 1715
- 200
- 0
- 0
- 0
-
-
- 1716
- 200
- 0
- 0
- 0
-
-
- 1717
- 200
- 0
- 0
- 0
-
-
- 1718
- 300
- 0
- 0
- 0
-
-
- 1719
- 300
- 0
- 0
- 0
-
-
- 1720
- 200
- 0
- 0
- 0
-
-
- 1721
- 200
- 0
- 0
- 0
-
-
- 1722
- 200
- 0
- 0
- 0
-
-
- 1723
- 200
- 0
- 0
- 0
-
-
- 1724
- 200
- 0
- 0
- 0
-
-
- 1725
- 2025
- 0
- 0
- 0
-
-
- 1726
- 2025
- 0
- 0
- 0
-
-
- 1727
- 900
- 0
- 0
- 0
-
-
- 1728
- 900
- 0
- 0
- 0
-
-
- 1729
- 1275
- 0
- 0
- 0
-
-
- 1730
- 1275
- 0
- 0
- 0
-
-
- 1731
- 3525
- 0
- 0
- 0
-
-
- 1732
- 3525
- 0
- 0
- 0
-
-
- 1733
- 1
- 0
- 0
- 0
-
-
- 1734
- 4
- 0
- 0
- 0
-
-
- 1735
- 1
- 0
- 0
- 0
-
-
- 1736
- 1
- 0
- 0
- 0
-
-
- 1737
- 1
- 0
- 0
- 0
-
-
- 1738
- 1
- 0
- 0
- 0
-
-
- 1739
- 1
- 0
- 0
- 0
-
-
- 1740
- 1
- 0
- 0
- 0
-
-
- 1741
- 1
- 0
- 0
- 0
-
-
- 1742
- 1
- 0
- 0
- 0
-
-
- 1743
- 1
- 0
- 0
- 0
-
-
- 1744
- 1
- 0
- 0
- 0
-
-
- 1745
- 50
- 0
- 0
- 0
-
-
- 1746
- 50
- 0
- 0
- 0
-
-
- 1747
- 80
- 0
- 0
- 0
-
-
- 1748
- 80
- 0
- 0
- 0
-
-
- 1749
- 60
- 0
- 0
- 0
-
-
- 1750
- 60
- 0
- 0
- 0
-
-
- 1751
- 40
- 0
- 0
- 0
-
-
- 1752
- 40
- 0
- 0
- 0
-
-
- 1753
- 20
- 0
- 0
- 0
-
-
- 1754
- 20
- 0
- 0
- 0
-
-
- 1755
- 1
- 0
- 0
- 0
-
-
- 1756
- 1
- 0
- 0
- 0
-
-
- 1757
- 2
- 0
- 0
- 0
-
-
- 1758
- 2
- 0
- 0
- 0
-
-
- 1759
- 5
- 0
- 0
- 0
-
-
- 1760
- 5
- 0
- 0
- 0
-
-
- 1761
- 2
- 0
- 0
- 0
-
-
- 1762
- 2
- 0
- 0
- 0
-
-
- 1763
- 6
- 0
- 0
- 0
-
-
- 1764
- 6
- 0
- 0
- 0
-
-
- 1765
- 6
- 0
- 0
- 0
-
-
- 1766
- 6
- 0
- 0
- 0
-
-
- 1767
- 6
- 0
- 0
- 0
-
-
- 1768
- 6
- 0
- 0
- 0
-
-
- 1769
- 6
- 0
- 0
- 0
-
-
- 1770
- 6
- 0
- 0
- 0
-
-
- 1771
- 6
- 0
- 0
- 0
-
-
- 1772
- 6
- 0
- 0
- 0
-
-
- 1773
- 6
- 0
- 0
- 0
-
-
- 1774
- 6
- 0
- 0
- 0
-
-
- 1775
- 3
- 0
- 0
- 0
-
-
- 1776
- 3
- 0
- 0
- 0
-
-
- 1777
- 10
- 0
- 0
- 0
-
-
- 1778
- 10
- 0
- 0
- 0
-
-
- 1779
- 5
- 0
- 0
- 0
-
-
- 1780
- 5
- 0
- 0
- 0
-
-
- 1781
- 2
- 0
- 0
- 0
-
-
- 1782
- 2
- 0
- 0
- 0
-
-
- 1783
- 2
- 0
- 0
- 0
-
-
- 1784
- 2
- 0
- 0
- 0
-
-
- 1785
- 2
- 0
- 0
- 0
-
-
- 1786
- 2
- 0
- 0
- 0
-
-
- 1787
- 1
- 0
- 0
- 0
-
-
- 1788
- 1
- 0
- 0
- 0
-
-
- 1789
- 3
- 0
- 0
- 0
-
-
- 1790
- 3
- 0
- 0
- 0
-
-
- 1791
- 2
- 0
- 0
- 0
-
-
- 1792
- 2
- 0
- 0
- 0
-
-
- 1793
- 1
- 0
- 0
- 0
-
-
- 1794
- 20
- 0
- 0
- 0
-
-
- 1795
- 20
- 0
- 0
- 0
-
-
- 1796
- 1
- 0
- 0
- 0
-
-
- 1797
- 1
- 0
- 0
- 0
-
-
- 1798
- 1
- 0
- 0
- 0
-
-
- 1799
- 1
- 0
- 0
- 0
-
-
- 1800
- 1
- 0
- 0
- 0
-
-
- 1801
- 1
- 0
- 0
- 0
-
-
- 1802
- 1
- 0
- 0
- 0
-
-
- 1803
- 1
- 0
- 0
- 0
-
-
- 1804
- 1
- 0
- 0
- 0
-
-
- 1805
- 1
- 0
- 0
- 0
-
-
- 1806
- 1
- 0
- 0
- 0
-
-
- 1807
- 1
- 0
- 0
- 0
-
-
- 1808
- 1
- 0
- 0
- 0
-
-
- 1809
- 1
- 0
- 0
- 0
-
-
- 1810
- 1
- 0
- 0
- 0
-
-
- 1811
- 1
- 0
- 0
- 0
-
-
- 1812
- 1
- 0
- 0
- 0
-
-
- 1813
- 1
- 0
- 0
- 0
-
-
- 1814
- 1
- 0
- 0
- 0
-
-
- 1815
- 1
- 0
- 0
- 0
-
-
- 1816
- 1
- 0
- 0
- 0
-
-
- 1817
- 1
- 0
- 0
- 0
-
-
- 1818
- 1
- 0
- 0
- 0
-
-
- 1819
- 1
- 0
- 0
- 0
-
-
- 1820
- 1
- 0
- 0
- 0
-
-
- 1821
- 1
- 0
- 0
- 0
-
-
- 1822
- 1
- 0
- 0
- 0
-
-
- 1823
- 30
- 0
- 0
- 0
-
-
- 1824
- 30
- 0
- 0
- 0
-
-
- 1825
- 27
- 0
- 0
- 0
-
-
- 1826
- 27
- 0
- 0
- 0
-
-
- 1827
- 24
- 0
- 0
- 0
-
-
- 1828
- 24
- 0
- 0
- 0
-
-
- 1829
- 18
- 0
- 0
- 0
-
-
- 1830
- 18
- 0
- 0
- 0
-
-
- 1831
- 15
- 0
- 0
- 0
-
-
- 1832
- 15
- 0
- 0
- 0
-
-
- 1833
- 40
- 0
- 0
- 0
-
-
- 1834
- 40
- 0
- 0
- 0
-
-
- 1835
- 40
- 0
- 0
- 0
-
-
- 1836
- 40
- 0
- 0
- 0
-
-
- 1837
- 20
- 0
- 0
- 0
-
-
- 1838
- 20
- 0
- 0
- 0
-
-
- 1839
- 1
- 0
- 0
- 0
-
-
- 1840
- 1
- 0
- 0
- 0
-
-
- 1841
- 1
- 0
- 0
- 0
-
-
- 1842
- 1
- 0
- 0
- 0
-
-
- 1843
- 1
- 0
- 0
- 0
-
-
- 1844
- 40
- 0
- 0
- 0
-
-
- 1845
- 40
- 0
- 0
- 0
-
-
- 1846
- 1
- 0
- 0
- 0
-
-
- 1847
- 10
- 0
- 0
- 0
-
-
- 1848
- 1
- 0
- 0
- 0
-
-
- 1849
- 2
- 0
- 0
- 0
-
-
- 1850
- 1
- 0
- 0
- 0
-
-
- 1851
- 1
- 0
- 0
- 0
-
-
- 1852
- 1
- 0
- 0
- 0
-
-
- 1853
- 1
- 0
- 0
- 0
-
-
- 1854
- 5
- 0
- 0
- 0
-
-
- 1855
- 1
- 0
- 0
- 0
-
-
- 1856
- 1
- 0
- 0
- 0
-
-
- 1857
- 10
- 0
- 0
- 0
-
-
- 1858
- 10
- 0
- 0
- 0
-
-
- 1859
- 2
- 0
- 0
- 0
-
-
- 1860
- 2
- 0
- 0
- 0
-
-
- 1861
- 5
- 0
- 0
- 0
-
-
- 1862
- 5
- 0
- 0
- 0
-
-
- 1863
- 4
- 0
- 0
- 0
-
-
- 1864
- 4
- 0
- 0
- 0
-
-
- 1865
- 10
- 0
- 0
- 0
-
-
- 1866
- 10
- 0
- 0
- 0
-
-
- 1867
- 1
- 0
- 0
- 0
-
-
- 1868
- 1
- 0
- 0
- 0
-
-
- 1869
- 3
- 0
- 0
- 0
-
-
- 1870
- 3
- 0
- 0
- 0
-
-
- 1871
- 3
- 0
- 0
- 0
-
-
- 1872
- 3
- 0
- 0
- 0
-
-
- 1873
- 5
- 0
- 0
- 0
-
-
- 1874
- 5
- 0
- 0
- 0
-
-
- 1875
- 5
- 0
- 0
- 0
-
-
- 1876
- 5
- 0
- 0
- 0
-
-
- 1877
- 7
- 0
- 0
- 0
-
-
- 1878
- 7
- 0
- 0
- 0
-
-
- 1879
- 7
- 0
- 0
- 0
-
-
- 1880
- 7
- 0
- 0
- 0
-
-
- 1881
- 9
- 0
- 0
- 0
-
-
- 1882
- 9
- 0
- 0
- 0
-
-
- 1883
- 20
- 0
- 0
- 0
-
-
- 1884
- 20
- 0
- 0
- 0
-
-
- 1885
- 20
- 0
- 0
- 0
-
-
- 1886
- 20
- 0
- 0
- 0
-
-
- 1887
- 10
- 0
- 0
- 0
-
-
- 1888
- 10
- 0
- 0
- 0
-
-
- 1889
- 20
- 0
- 0
- 0
-
-
- 1890
- 20
- 0
- 0
- 0
-
-
- 1891
- 50
- 0
- 0
- 0
-
-
- 1892
- 50
- 0
- 0
- 0
-
-
- 1893
- 30
- 0
- 0
- 0
-
-
- 1894
- 30
- 0
- 0
- 0
-
-
- 1895
- 10
- 0
- 0
- 0
-
-
- 1896
- 10
- 0
- 0
- 0
-
-
- 1897
- 70
- 0
- 0
- 0
-
-
- 1898
- 70
- 0
- 0
- 0
-
-
- 1899
- 50
- 0
- 0
- 0
-
-
- 1900
- 50
- 0
- 0
- 0
-
-
- 1901
- 30
- 0
- 0
- 0
-
-
- 1902
- 30
- 0
- 0
- 0
-
-
- 1903
- 1
- 0
- 0
- 0
-
-
- 1904
- 1
- 0
- 0
- 0
-
-
- 1905
- 2
- 0
- 0
- 0
-
-
- 1906
- 2
- 0
- 0
- 0
-
-
- 1907
- 2
- 0
- 0
- 0
-
-
- 1908
- 2
- 0
- 0
- 0
-
-
- 1909
- 2
- 0
- 0
- 0
-
-
- 1910
- 2
- 0
- 0
- 0
-
-
- 1911
- 2
- 0
- 0
- 0
-
-
- 1912
- 2
- 0
- 0
- 0
-
-
- 1913
- 2
- 0
- 0
- 0
-
-
- 1914
- 2
- 0
- 0
- 0
-
-
- 1915
- 3
- 0
- 0
- 0
-
-
- 1916
- 3
- 0
- 0
- 0
-
-
- 1917
- 2
- 0
- 0
- 0
-
-
- 1918
- 2
- 0
- 0
- 0
-
-
- 1919
- 2
- 0
- 0
- 0
-
-
- 1920
- 2
- 0
- 0
- 0
-
-
- 1921
- 4
- 0
- 0
- 0
-
-
- 1922
- 4
- 0
- 0
- 0
-
-
- 1923
- 4
- 0
- 0
- 0
-
-
- 1924
- 4
- 0
- 0
- 0
-
-
- 1925
- 2
- 0
- 0
- 0
-
-
- 1926
- 2
- 0
- 0
- 0
-
-
- 1927
- 12
- 0
- 0
- 0
-
-
- 1928
- 12
- 0
- 0
- 0
-
-
- 1929
- 6
- 0
- 0
- 0
-
-
- 1930
- 6
- 0
- 0
- 0
-
-
- 1931
- 1
- 0
- 0
- 0
-
-
- 1932
- 1
- 0
- 0
- 0
-
-
- 1933
- 14
- 0
- 0
- 0
-
-
- 1934
- 14
- 0
- 0
- 0
-
-
- 1935
- 1
- 0
- 0
- 0
-
-
- 1936
- 1
- 0
- 0
- 0
-
-
- 1937
- 1
- 0
- 0
- 0
-
-
- 1938
- 1
- 0
- 0
- 0
-
-
- 1939
- 1
- 0
- 0
- 0
-
-
- 1940
- 1
- 0
- 0
- 0
-
-
- 1941
- 31
- 0
- 0
- 0
-
-
- 1942
- 16
- 0
- 0
- 0
-
-
- 1943
- 16
- 0
- 0
- 0
-
-
- 1944
- 4
- 0
- 0
- 0
-
-
- 1945
- 4
- 0
- 0
- 0
-
-
- 1946
- 2
- 0
- 0
- 0
-
-
- 1947
- 2
- 0
- 0
- 0
-
-
- 1948
- 2
- 0
- 0
- 0
-
-
- 1949
- 2
- 0
- 0
- 0
-
-
- 1950
- 2
- 0
- 0
- 0
-
-
- 1951
- 3
- 0
- 0
- 0
-
-
- 1952
- 3
- 0
- 0
- 0
-
-
- 1953
- 1
- 0
- 0
- 0
-
-
- 1954
- 1
- 0
- 0
- 0
-
-
- 1955
- 36
- 0
- 0
- 0
-
-
- 1956
- 36
- 0
- 0
- 0
-
-
- 1957
- 12
- 0
- 0
- 0
-
-
- 1958
- 12
- 0
- 0
- 0
-
-
- 1959
- 30
- 0
- 0
- 0
-
-
- 1960
- 30
- 0
- 0
- 0
-
-
- 1961
- 10
- 0
- 0
- 0
-
-
- 1962
- 10
- 0
- 0
- 0
-
-
- 1963
- 2
- 0
- 0
- 0
-
-
- 1964
- 2
- 0
- 0
- 0
-
-
- 1965
- 1
- 0
- 0
- 0
-
-
- 1966
- 1
- 0
- 0
- 0
-
-
- 1967
- 1
- 0
- 0
- 0
-
-
- 1968
- 1
- 0
- 0
- 0
-
-
- 1969
- 1
- 0
- 0
- 0
-
-
- 1970
- 1
- 0
- 0
- 0
-
-
- 1971
- 3
- 0
- 0
- 0
-
-
- 1972
- 3
- 0
- 0
- 0
-
-
- 1973
- 20
- 0
- 0
- 0
-
-
- 1974
- 20
- 0
- 0
- 0
-
-
- 1975
- 20
- 0
- 0
- 0
-
-
- 1976
- 20
- 0
- 0
- 0
-
-
- 1977
- 2
- 0
- 0
- 0
-
-
- 1978
- 10
- 0
- 0
- 0
-
-
- 1979
- 10
- 0
- 0
- 0
-
-
- 1980
- 2
- 0
- 0
- 0
-
-
- 1981
- 2
- 0
- 0
- 0
-
-
- 1982
- 14
- 0
- 0
- 0
-
-
- 1983
- 14
- 0
- 0
- 0
-
-
- 1984
- 1
- 0
- 0
- 0
-
-
- 1985
- 8
- 0
- 0
- 0
-
-
- 1986
- 8
- 0
- 0
- 0
-
-
- 1987
- 1
- 0
- 0
- 0
-
-
- 1988
- 1
- 0
- 0
- 0
-
-
- 1989
- 1
- 0
- 0
- 0
-
-
- 1990
- 1
- 0
- 0
- 0
-
-
- 1991
- 1
- 0
- 0
- 0
-
-
- 1992
- 1
- 0
- 0
- 0
-
-
- 1993
- 128
- 0
- 0
- 0
-
-
- 1994
- 128
- 0
- 0
- 0
-
-
- 1995
- 10
- 0
- 0
- 0
-
-
- 1996
- 10
- 0
- 0
- 0
-
-
- 1997
- 4
- 0
- 0
- 0
-
-
- 1998
- 4
- 0
- 0
- 0
-
-
- 1999
- 4
- 0
- 0
- 0
-
-
- 2000
- 4
- 0
- 0
- 0
-
-
- 2001
- 10
- 0
- 0
- 0
-
-
- 2002
- 10
- 0
- 0
- 0
-
-
- 2003
- 100
- 0
- 0
- 0
-
-
- 2004
- 100
- 0
- 0
- 0
-
-
- 2005
- 1
- 0
- 0
- 0
-
-
- 2006
- 1
- 0
- 0
- 0
-
-
- 2007
- 230
- 0
- 0
- 0
-
-
- 2008
- 230
- 0
- 0
- 0
-
-
- 2009
- 10
- 0
- 0
- 0
-
-
- 2010
- 10
- 0
- 0
- 0
-
-
- 2011
- 20
- 0
- 0
- 0
-
-
- 2012
- 20
- 0
- 0
- 0
-
-
- 2013
- 1
- 0
- 0
- 0
-
-
- 2014
- 1
- 0
- 0
- 0
-
-
- 2015
- 5
- 0
- 0
- 0
-
-
- 2016
- 5
- 0
- 0
- 0
-
-
- 2017
- 5
- 0
- 0
- 0
-
-
- 2018
- 5
- 0
- 0
- 0
-
-
- 2019
- 5
- 0
- 0
- 0
-
-
- 2020
- 5
- 0
- 0
- 0
-
-
- 2021
- 5
- 0
- 0
- 0
-
-
- 2022
- 5
- 0
- 0
- 0
-
-
- 2023
- 2
- 0
- 0
- 0
-
-
- 2024
- 2
- 0
- 0
- 0
-
-
- 2025
- 2
- 0
- 0
- 0
-
-
- 2026
- 1
- 0
- 0
- 0
-
-
- 2027
- 1
- 0
- 0
- 0
-
-
- 2028
- 30
- 0
- 0
- 0
-
-
- 2029
- 30
- 0
- 0
- 0
-
-
- 2030
- 30
- 0
- 0
- 0
-
-
- 2031
- 30
- 0
- 0
- 0
-
-
- 2032
- 30
- 0
- 0
- 0
-
-
- 2033
- 30
- 0
- 0
- 0
-
-
- 2034
- 30
- 0
- 0
- 0
-
-
- 2035
- 30
- 0
- 0
- 0
-
-
- 2036
- 30
- 0
- 0
- 0
-
-
- 2037
- 30
- 0
- 0
- 0
-
-
- 2038
- 30
- 0
- 0
- 0
-
-
- 2039
- 30
- 0
- 0
- 0
-
-
- 2040
- 30
- 0
- 0
- 0
-
-
- 2041
- 30
- 0
- 0
- 0
-
-
- 2042
- 2
- 0
- 0
- 0
-
-
- 2043
- 2
- 0
- 0
- 0
-
-
- 2044
- 2
- 0
- 0
- 0
-
-
- 2045
- 2
- 0
- 0
- 0
-
-
- 2046
- 2
- 0
- 0
- 0
-
-
- 2047
- 2
- 0
- 0
- 0
-
-
- 2048
- 30
- 0
- 0
- 0
-
-
- 2049
- 30
- 0
- 0
- 0
-
-
- 2050
- 2
- 0
- 0
- 0
-
-
- 2051
- 2
- 0
- 0
- 0
-
-
- 2052
- 2
- 0
- 0
- 0
-
-
- 2053
- 2
- 0
- 0
- 0
-
-
- 2054
- 30
- 0
- 0
- 0
-
-
- 2055
- 30
- 0
- 0
- 0
-
-
- 2056
- 2
- 0
- 0
- 0
-
-
- 2057
- 2
- 0
- 0
- 0
-
-
- 2058
- 2
- 0
- 0
- 0
-
-
- 2059
- 2
- 0
- 0
- 0
-
-
- 2060
- 2
- 0
- 0
- 0
-
-
- 2061
- 2
- 0
- 0
- 0
-
-
- 2062
- 2
- 0
- 0
- 0
-
-
- 2063
- 2
- 0
- 0
- 0
-
-
- 2064
- 30
- 0
- 0
- 0
-
-
- 2065
- 30
- 0
- 0
- 0
-
-
- 2066
- 2
- 0
- 0
- 0
-
-
- 2067
- 2
- 0
- 0
- 0
-
-
- 2068
- 2
- 0
- 0
- 0
-
-
- 2069
- 2
- 0
- 0
- 0
-
-
- 2070
- 2
- 0
- 0
- 0
-
-
- 2071
- 2
- 0
- 0
- 0
-
-
- 2072
- 2
- 0
- 0
- 0
-
-
- 2073
- 2
- 0
- 0
- 0
-
-
- 2074
- 30
- 0
- 0
- 0
-
-
- 2075
- 30
- 0
- 0
- 0
-
-
- 2076
- 2
- 0
- 0
- 0
-
-
- 2077
- 2
- 0
- 0
- 0
-
-
- 2078
- 2
- 0
- 0
- 0
-
-
- 2079
- 2
- 0
- 0
- 0
-
-
- 2080
- 30
- 0
- 0
- 0
-
-
- 2081
- 30
- 0
- 0
- 0
-
-
- 2082
- 2
- 0
- 0
- 0
-
-
- 2083
- 2
- 0
- 0
- 0
-
-
- 2084
- 30
- 0
- 0
- 0
-
-
- 2085
- 30
- 0
- 0
- 0
-
-
- 2086
- 2
- 0
- 0
- 0
-
-
- 2087
- 2
- 0
- 0
- 0
-
-
- 2088
- 2
- 0
- 0
- 0
-
-
- 2089
- 2
- 0
- 0
- 0
-
-
- 2090
- 2
- 0
- 0
- 0
-
-
- 2091
- 2
- 0
- 0
- 0
-
-
- 2092
- 30
- 0
- 0
- 0
-
-
- 2093
- 30
- 0
- 0
- 0
-
-
- 2094
- 2
- 0
- 0
- 0
-
-
- 2095
- 2
- 0
- 0
- 0
-
-
- 2096
- 2
- 0
- 0
- 0
-
-
- 2097
- 2
- 0
- 0
- 0
-
-
- 2098
- 2
- 0
- 0
- 0
-
-
- 2099
- 2
- 0
- 0
- 0
-
-
- 2100
- 2
- 0
- 0
- 0
-
-
- 2101
- 2
- 0
- 0
- 0
-
-
- 2102
- 2
- 0
- 0
- 0
-
-
- 2103
- 2
- 0
- 0
- 0
-
-
- 2104
- 2
- 0
- 0
- 0
-
-
- 2105
- 2
- 0
- 0
- 0
-
-
- 2106
- 2
- 0
- 0
- 0
-
-
- 2107
- 2
- 0
- 0
- 0
-
-
- 2108
- 70
- 0
- 0
- 0
-
-
- 2109
- 70
- 0
- 0
- 0
-
-
- 2110
- 2
- 0
- 0
- 0
-
-
- 2111
- 2
- 0
- 0
- 0
-
-
- 2112
- 2
- 0
- 0
- 0
-
-
- 2113
- 2
- 0
- 0
- 0
-
-
- 2114
- 2
- 0
- 0
- 0
-
-
- 2115
- 2
- 0
- 0
- 0
-
-
- 2116
- 1
- 0
- 0
- 0
-
-
- 2117
- 1
- 0
- 0
- 0
-
-
- 2118
- 1
- 0
- 0
- 0
-
-
- 2119
- 1
- 0
- 0
- 0
-
-
- 2120
- 2
- 0
- 0
- 0
-
-
- 2121
- 2
- 0
- 0
- 0
-
-
- 2122
- 1
- 0
- 0
- 0
-
-
- 2123
- 1
- 0
- 0
- 0
-
-
- 2124
- 2
- 0
- 0
- 0
-
-
- 2125
- 2
- 0
- 0
- 0
-
-
- 2126
- 4
- 0
- 0
- 0
-
-
- 2127
- 4
- 0
- 0
- 0
-
-
- 2128
- 2
- 0
- 0
- 0
-
-
- 2129
- 2
- 0
- 0
- 0
-
-
- 2130
- 19
- 0
- 0
- 0
-
-
- 2131
- 19
- 0
- 0
- 0
-
-
- 2132
- 8
- 0
- 0
- 0
-
-
- 2133
- 8
- 0
- 0
- 0
-
-
- 2134
- 8
- 0
- 0
- 0
-
-
- 2135
- 8
- 0
- 0
- 0
-
-
- 2136
- 8
- 0
- 0
- 0
-
-
- 2137
- 8
- 0
- 0
- 0
-
-
- 2138
- 9
- 0
- 0
- 0
-
-
- 2139
- 9
- 0
- 0
- 0
-
-
- 2140
- 4
- 0
- 0
- 0
-
-
- 2141
- 4
- 0
- 0
- 0
-
-
- 2142
- 4
- 0
- 0
- 0
-
-
- 2143
- 4
- 0
- 0
- 0
-
-
- 2144
- 1
- 0
- 0
- 0
-
-
- 2145
- 1
- 0
- 0
- 0
-
-
- 2146
- 1
- 0
- 0
- 0
-
-
- 2147
- 1
- 0
- 0
- 0
-
-
- 2148
- 150
- 0
- 0
- 0
-
-
- 2149
- 150
- 0
- 0
- 0
-
-
- 2150
- 2
- 0
- 0
- 0
-
-
- 2151
- 2
- 0
- 0
- 0
-
-
- 2152
- 2
- 0
- 0
- 0
-
-
- 2153
- 2
- 0
- 0
- 0
-
-
- 2154
- 2
- 0
- 0
- 0
-
-
- 2155
- 2
- 0
- 0
- 0
-
-
- 2156
- 2
- 0
- 0
- 0
-
-
- 2157
- 2
- 0
- 0
- 0
-
-
- 2158
- 2
- 0
- 0
- 0
-
-
- 2159
- 2
- 0
- 0
- 0
-
-
- 2160
- 2
- 0
- 0
- 0
-
-
- 2161
- 2
- 0
- 0
- 0
-
-
- 2162
- 2
- 0
- 0
- 0
-
-
- 2163
- 2
- 0
- 0
- 0
-
-
- 2164
- 10
- 0
- 0
- 0
-
-
- 2165
- 10
- 0
- 0
- 0
-
-
- 2166
- 10
- 0
- 0
- 0
-
-
- 2167
- 2
- 0
- 0
- 0
-
-
- 2168
- 2
- 0
- 0
- 0
-
-
- 2169
- 2
- 0
- 0
- 0
-
-
- 2170
- 2
- 0
- 0
- 0
-
-
- 2171
- 2
- 0
- 0
- 0
-
-
- 2172
- 2
- 0
- 0
- 0
-
-
- 2173
- 2
- 0
- 0
- 0
-
-
- 2174
- 2
- 0
- 0
- 0
-
-
- 2175
- 1
- 0
- 0
- 0
-
-
- 2176
- 1
- 0
- 0
- 0
-
-
- 2177
- 2
- 0
- 0
- 0
-
-
- 2178
- 2
- 0
- 0
- 0
-
-
- 2179
- 1
- 0
- 0
- 0
-
-
- 2180
- 1
- 0
- 0
- 0
-
-
- 2181
- 1
- 0
- 0
- 0
-
-
- 2182
- 1
- 0
- 0
- 0
-
-
- 2183
- 1
- 0
- 0
- 0
-
-
- 2184
- 1
- 0
- 0
- 0
-
-
- 2185
- 2
- 0
- 0
- 0
-
-
- 2186
- 2
- 0
- 0
- 0
-
-
- 2187
- 2
- 0
- 0
- 0
-
-
- 2188
- 2
- 0
- 0
- 0
-
-
- 2189
- 1
- 0
- 0
- 0
-
-
- 2190
- 1
- 0
- 0
- 0
-
-
- 2191
- 2
- 0
- 0
- 0
-
-
- 2192
- 2
- 0
- 0
- 0
-
-
- 2193
- 1
- 0
- 0
- 0
-
-
- 2194
- 1
- 0
- 0
- 0
-
-
- 2195
- 2
- 0
- 0
- 0
-
-
- 2196
- 2
- 0
- 0
- 0
-
-
- 2197
- 2
- 0
- 0
- 0
-
-
- 2198
- 2
- 0
- 0
- 0
-
-
- 2199
- 1
- 0
- 0
- 0
-
-
- 2200
- 1
- 0
- 0
- 0
-
-
- 2201
- 2
- 0
- 0
- 0
-
-
- 2202
- 2
- 0
- 0
- 0
-
-
- 2203
- 1
- 0
- 0
- 0
-
-
- 2204
- 1
- 0
- 0
- 0
-
-
- 2205
- 2
- 0
- 0
- 0
-
-
- 2206
- 2
- 0
- 0
- 0
-
-
- 2207
- 1
- 0
- 0
- 0
-
-
- 2208
- 1
- 0
- 0
- 0
-
-
- 2209
- 2
- 0
- 0
- 0
-
-
- 2210
- 2
- 0
- 0
- 0
-
-
- 2211
- 1
- 0
- 0
- 0
-
-
- 2212
- 1
- 0
- 0
- 0
-
-
- 2213
- 2
- 0
- 0
- 0
-
-
- 2214
- 2
- 0
- 0
- 0
-
-
- 2215
- 1
- 0
- 0
- 0
-
-
- 2216
- 1
- 0
- 0
- 0
-
-
- 2217
- 2
- 0
- 0
- 0
-
-
- 2218
- 2
- 0
- 0
- 0
-
-
- 2219
- 195
- 0
- 0
- 0
-
-
- 2220
- 195
- 0
- 0
- 0
-
-
- 2221
- 195
- 0
- 0
- 0
-
-
- 2222
- 195
- 0
- 0
- 0
-
-
- 2223
- 195
- 0
- 0
- 0
-
-
- 2224
- 195
- 0
- 0
- 0
-
-
- 2225
- 195
- 0
- 0
- 0
-
-
- 2226
- 195
- 0
- 0
- 0
-
-
- 2227
- 195
- 0
- 0
- 0
-
-
- 2228
- 195
- 0
- 0
- 0
-
-
- 2229
- 450
- 0
- 0
- 0
-
-
- 2230
- 450
- 0
- 0
- 0
-
-
- 2231
- 450
- 0
- 0
- 0
-
-
- 2232
- 450
- 0
- 0
- 0
-
-
- 2233
- 270
- 0
- 0
- 0
-
-
- 2234
- 270
- 0
- 0
- 0
-
-
- 2235
- 270
- 0
- 0
- 0
-
-
- 2236
- 270
- 0
- 0
- 0
-
-
- 2237
- 80
- 0
- 0
- 0
-
-
- 2238
- 80
- 0
- 0
- 0
-
-
- 2239
- 70
- 0
- 0
- 0
-
-
- 2240
- 70
- 0
- 0
- 0
-
-
- 2241
- 70
- 0
- 0
- 0
-
-
- 2242
- 70
- 0
- 0
- 0
-
-
- 2243
- 80
- 0
- 0
- 0
-
-
- 2244
- 80
- 0
- 0
- 0
-
-
- 2245
- 2
- 0
- 0
- 0
-
-
- 2246
- 2
- 0
- 0
- 0
-
-
- 2247
- 1
- 0
- 0
- 0
-
-
- 2248
- 1
- 0
- 0
- 0
-
-
- 2249
- 2
- 0
- 0
- 0
-
-
- 2250
- 2
- 0
- 0
- 0
-
-
- 2251
- 1
- 0
- 0
- 0
-
-
- 2252
- 1
- 0
- 0
- 0
-
-
- 2253
- 1
- 0
- 0
- 0
-
-
- 2254
- 1
- 0
- 0
- 0
-
-
- 2255
- 2
- 0
- 0
- 0
-
-
- 2256
- 2
- 0
- 0
- 0
-
-
- 2257
- 1
- 0
- 0
- 0
-
-
- 2258
- 1
- 0
- 0
- 0
-
-
- 2259
- 2
- 0
- 0
- 0
-
-
- 2260
- 2
- 0
- 0
- 0
-
-
- 2261
- 1
- 0
- 0
- 0
-
-
- 2262
- 1
- 0
- 0
- 0
-
-
- 2263
- 1
- 0
- 0
- 0
-
-
- 2264
- 1
- 0
- 0
- 0
-
-
- 2265
- 1
- 0
- 0
- 0
-
-
- 2266
- 1
- 0
- 0
- 0
-
-
- 2267
- 1
- 0
- 0
- 0
-
-
- 2268
- 1
- 0
- 0
- 0
-
-
- 2269
- 1
- 0
- 0
- 0
-
-
- 2270
- 1
- 0
- 0
- 0
-
-
- 2271
- 1
- 0
- 0
- 0
-
-
- 2272
- 1
- 0
- 0
- 0
-
-
- 2273
- 1
- 0
- 0
- 0
-
-
- 2274
- 1
- 0
- 0
- 0
-
-
- 2275
- 1
- 0
- 0
- 0
-
-
- 2276
- 1
- 0
- 0
- 0
-
-
- 2277
- 2
- 0
- 0
- 0
-
-
- 2278
- 2
- 0
- 0
- 0
-
-
- 2279
- 1
- 0
- 0
- 0
-
-
- 2280
- 1
- 0
- 0
- 0
-
-
- 2281
- 2
- 0
- 0
- 0
-
-
- 2282
- 2
- 0
- 0
- 0
-
-
- 2283
- 4
- 0
- 0
- 0
-
-
- 2284
- 4
- 0
- 0
- 0
-
-
- 2285
- 10
- 0
- 0
- 0
-
-
- 2286
- 10
- 0
- 0
- 0
-
-
- 2287
- 25
- 0
- 0
- 0
-
-
- 2288
- 25
- 0
- 0
- 0
-
-
- 2289
- 200
- 0
- 0
- 0
-
-
- 2290
- 200
- 0
- 0
- 0
-
-
- 2291
- 20
- 0
- 0
- 0
-
-
- 2292
- 20
- 0
- 0
- 0
-
-
- 2293
- 50
- 0
- 0
- 0
-
-
- 2294
- 50
- 0
- 0
- 0
-
-
- 2295
- 25
- 0
- 0
- 0
-
-
- 2296
- 25
- 0
- 0
- 0
-
-
- 2297
- 60
- 0
- 0
- 0
-
-
- 2298
- 60
- 0
- 0
- 0
-
-
- 2299
- 30
- 0
- 0
- 0
-
-
- 2300
- 30
- 0
- 0
- 0
-
-
- 2301
- 100
- 0
- 0
- 0
-
-
- 2302
- 100
- 0
- 0
- 0
-
-
- 2303
- 50
- 0
- 0
- 0
-
-
- 2304
- 50
- 0
- 0
- 0
-
-
- 2305
- 1
- 0
- 0
- 0
-
-
- 2306
- 1
- 0
- 0
- 0
-
-
- 2307
- 4
- 0
- 0
- 0
-
-
- 2308
- 4
- 0
- 0
- 0
-
-
- 2309
- 12
- 0
- 0
- 0
-
-
- 2310
- 12
- 0
- 0
- 0
-
-
- 2311
- 1
- 0
- 0
- 0
-
-
- 2312
- 1
- 0
- 0
- 0
-
-
- 2313
- 3
- 0
- 0
- 0
-
-
- 2314
- 3
- 0
- 0
- 0
-
-
- 2315
- 4
- 0
- 0
- 0
-
-
- 2316
- 4
- 0
- 0
- 0
-
-
- 2317
- 16
- 0
- 0
- 0
-
-
- 2318
- 16
- 0
- 0
- 0
-
-
- 2319
- 8
- 0
- 0
- 0
-
-
- 2320
- 8
- 0
- 0
- 0
-
-
- 2321
- 6
- 0
- 0
- 0
-
-
- 2322
- 6
- 0
- 0
- 0
-
-
- 2323
- 140
- 0
- 0
- 0
-
-
- 2324
- 140
- 0
- 0
- 0
-
-
- 2325
- 150
- 0
- 0
- 0
-
-
- 2326
- 150
- 0
- 0
- 0
-
-
- 2327
- 160
- 0
- 0
- 0
-
-
- 2328
- 160
- 0
- 0
- 0
-
-
- 2329
- 1
- 0
- 0
- 0
-
-
- 2330
- 1
- 0
- 0
- 0
-
-
- 2331
- 8
- 0
- 0
- 0
-
-
- 2332
- 8
- 0
- 0
- 0
-
-
- 2333
- 6
- 0
- 0
- 0
-
-
- 2334
- 6
- 0
- 0
- 0
-
-
- 2335
- 15
- 0
- 0
- 0
-
-
- 2336
- 15
- 0
- 0
- 0
-
-
- 2337
- 10
- 0
- 0
- 0
-
-
- 2338
- 10
- 0
- 0
- 0
-
-
- 2339
- 5
- 0
- 0
- 0
-
-
- 2340
- 5
- 0
- 0
- 0
-
-
- 2341
- 16
- 0
- 0
- 0
-
-
- 2342
- 16
- 0
- 0
- 0
-
-
- 2343
- 35
- 0
- 0
- 0
-
-
- 2344
- 35
- 0
- 0
- 0
-
-
- 2345
- 1
- 0
- 0
- 0
-
-
- 2346
- 1
- 0
- 0
- 0
-
-
- 2347
- 1
- 0
- 0
- 0
-
-
- 2348
- 1
- 0
- 0
- 0
-
-
- 2349
- 8
- 0
- 0
- 0
-
-
- 2350
- 8
- 0
- 0
- 0
-
-
- 2351
- 28
- 0
- 0
- 0
-
-
- 2352
- 28
- 0
- 0
- 0
-
-
- 2353
- 100
- 0
- 0
- 0
-
-
- 2354
- 100
- 0
- 0
- 0
-
-
- 2355
- 150
- 0
- 0
- 0
-
-
- 2356
- 150
- 0
- 0
- 0
-
-
- 2357
- 300
- 0
- 0
- 0
-
-
- 2358
- 300
- 0
- 0
- 0
-
-
- 2359
- 300
- 0
- 0
- 0
-
-
- 2360
- 300
- 0
- 0
- 0
-
-
- 2361
- 640
- 0
- 0
- 0
-
-
- 2362
- 640
- 0
- 0
- 0
-
-
- 2363
- 5000
- 0
- 0
- 0
-
-
- 2364
- 5000
- 0
- 0
- 0
-
-
- 2365
- 300
- 0
- 0
- 0
-
-
- 2366
- 110000
- 0
- 0
- 0
-
-
- 2367
- 110000
- 0
- 0
- 0
-
-
- 2368
- 750000
- 0
- 0
- 0
-
-
- 2369
- 750000
- 0
- 0
- 0
-
-
- 2370
- 150
- 0
- 0
- 0
-
-
- 2371
- 150
- 0
- 0
- 0
-
-
- 2372
- 1
- 0
- 0
- 0
-
-
- 2373
- 1
- 0
- 0
- 0
-
-
- 2374
- 1
- 0
- 0
- 0
-
-
- 2375
- 1
- 0
- 0
- 0
-
-
- 2376
- 1
- 0
- 0
- 0
-
-
- 2377
- 1
- 0
- 0
- 0
-
-
- 2378
- 1
- 0
- 0
- 0
-
-
- 2379
- 1
- 0
- 0
- 0
-
-
- 2380
- 1
- 0
- 0
- 0
-
-
- 2381
- 1
- 0
- 0
- 0
-
-
- 2382
- 1
- 0
- 0
- 0
-
-
- 2383
- 1
- 0
- 0
- 0
-
-
- 2384
- 1
- 0
- 0
- 0
-
-
- 2385
- 1
- 0
- 0
- 0
-
-
- 2386
- 1
- 0
- 0
- 0
-
-
- 2387
- 1
- 0
- 0
- 0
-
-
- 2388
- 1
- 0
- 0
- 0
-
-
- 2389
- 1
- 0
- 0
- 0
-
-
- 2390
- 1
- 0
- 0
- 0
-
-
- 2391
- 20
- 0
- 0
- 0
-
-
- 2392
- 20
- 0
- 0
- 0
-
-
- 2393
- 300
- 0
- 0
- 0
-
-
- 2394
- 120
- 0
- 0
- 0
-
-
- 2395
- 120
- 0
- 0
- 0
-
-
- 2396
- 5
- 0
- 0
- 0
-
-
- 2397
- 40
- 0
- 0
- 0
-
-
- 2398
- 30
- 0
- 0
- 0
-
-
- 2399
- 100
- 0
- 0
- 0
-
-
- 2400
- 100
- 0
- 0
- 0
-
-
- 2401
- 100
- 0
- 0
- 0
-
-
- 2402
- 50
- 0
- 0
- 0
-
-
- 2403
- 1
- 0
- 0
- 0
-
-
- 2404
- 1
- 0
- 0
- 0
-
-
- 2405
- 65
- 0
- 0
- 0
-
-
- 2406
- 1
- 0
- 0
- 0
-
-
- 2407
- 1
- 0
- 0
- 0
-
-
- 2408
- 1
- 0
- 0
- 0
-
-
- 2409
- 1
- 0
- 0
- 0
-
-
- 2410
- 3
- 0
- 0
- 0
-
-
- 2411
- 1
- 0
- 0
- 0
-
-
- 2412
- 100
- 0
- 0
- 0
-
-
- 2413
- 100
- 0
- 0
- 0
-
-
- 2414
- 100
- 0
- 0
- 0
-
-
- 2415
- 80000
- 0
- 0
- 0
-
-
- 2416
- 80000
- 0
- 0
- 0
-
-
- 2417
- 80000
- 0
- 0
- 0
-
-
- 2418
- 1
- 0
- 0
- 0
-
-
- 2419
- 1
- 0
- 0
- 0
-
-
- 2420
- 1
- 0
- 0
- 0
-
-
- 2421
- 1
- 0
- 0
- 0
-
-
- 2422
- 1
- 0
- 0
- 0
-
-
- 2423
- 1
- 0
- 0
- 0
-
-
- 2424
- 5
- 0
- 0
- 0
-
-
- 2425
- 1
- 0
- 0
- 0
-
-
- 2426
- 1
- 0
- 0
- 0
-
-
- 2427
- 1
- 0
- 0
- 0
-
-
- 2428
- 700
- 0
- 0
- 0
-
-
- 2429
- 700
- 0
- 0
- 0
-
-
- 2430
- 110
- 0
- 0
- 0
-
-
- 2431
- 110
- 0
- 0
- 0
-
-
- 2432
- 1100
- 0
- 0
- 0
-
-
- 2433
- 1100
- 0
- 0
- 0
-
-
- 2434
- 190
- 0
- 0
- 0
-
-
- 2435
- 190
- 0
- 0
- 0
-
-
- 2436
- 225
- 0
- 0
- 0
-
-
- 2437
- 225
- 0
- 0
- 0
-
-
- 2438
- 250
- 0
- 0
- 0
-
-
- 2439
- 250
- 0
- 0
- 0
-
-
- 2440
- 275
- 0
- 0
- 0
-
-
- 2441
- 275
- 0
- 0
- 0
-
-
- 2442
- 330
- 0
- 0
- 0
-
-
- 2443
- 330
- 0
- 0
- 0
-
-
- 2444
- 360
- 0
- 0
- 0
-
-
- 2445
- 360
- 0
- 0
- 0
-
-
- 2446
- 360
- 0
- 0
- 0
-
-
- 2447
- 360
- 0
- 0
- 0
-
-
- 2448
- 360
- 0
- 0
- 0
-
-
- 2449
- 360
- 0
- 0
- 0
-
-
- 2450
- 200
- 0
- 0
- 0
-
-
- 2451
- 200
- 0
- 0
- 0
-
-
- 2452
- 330
- 0
- 0
- 0
-
-
- 2453
- 330
- 0
- 0
- 0
-
-
- 2454
- 264
- 0
- 0
- 0
-
-
- 2455
- 264
- 0
- 0
- 0
-
-
- 2456
- 198
- 0
- 0
- 0
-
-
- 2457
- 198
- 0
- 0
- 0
-
-
- 2458
- 132
- 0
- 0
- 0
-
-
- 2459
- 132
- 0
- 0
- 0
-
-
- 2460
- 100
- 0
- 0
- 0
-
-
- 2461
- 100
- 0
- 0
- 0
-
-
- 2462
- 100
- 0
- 0
- 0
-
-
- 2463
- 100
- 0
- 0
- 0
-
-
- 2464
- 100
- 0
- 0
- 0
-
-
- 2465
- 100
- 0
- 0
- 0
-
-
- 2466
- 100
- 0
- 0
- 0
-
-
- 2467
- 100
- 0
- 0
- 0
-
-
- 2468
- 100
- 0
- 0
- 0
-
-
- 2469
- 100
- 0
- 0
- 0
-
-
- 2470
- 100
- 0
- 0
- 0
-
-
- 2471
- 100
- 0
- 0
- 0
-
-
- 2472
- 100
- 0
- 0
- 0
-
-
- 2473
- 100
- 0
- 0
- 0
-
-
- 2474
- 100
- 0
- 0
- 0
-
-
- 2475
- 100
- 0
- 0
- 0
-
-
- 2476
- 100
- 0
- 0
- 0
-
-
- 2477
- 100
- 0
- 0
- 0
-
-
- 2478
- 1
- 0
- 0
- 0
-
-
- 2479
- 1
- 0
- 0
- 0
-
-
- 2480
- 1
- 0
- 0
- 0
-
-
- 2481
- 68
- 0
- 0
- 0
-
-
- 2482
- 68
- 0
- 0
- 0
-
-
- 2483
- 68
- 0
- 0
- 0
-
-
- 2484
- 68
- 0
- 0
- 0
-
-
- 2485
- 1
- 0
- 0
- 0
-
-
- 2486
- 1
- 0
- 0
- 0
-
-
- 2487
- 3000
- 0
- 0
- 0
-
-
- 2488
- 3000
- 0
- 0
- 0
-
-
- 2489
- 3600
- 0
- 0
- 0
-
-
- 2490
- 3600
- 0
- 0
- 0
-
-
- 2491
- 4320
- 0
- 0
- 0
-
-
- 2492
- 4320
- 0
- 0
- 0
-
-
- 2493
- 4320
- 0
- 0
- 0
-
-
- 2494
- 4320
- 0
- 0
- 0
-
-
- 2495
- 5180
- 0
- 0
- 0
-
-
- 2496
- 5180
- 0
- 0
- 0
-
-
- 2497
- 6220
- 0
- 0
- 0
-
-
- 2498
- 6220
- 0
- 0
- 0
-
-
- 2499
- 9360
- 0
- 0
- 0
-
-
- 2500
- 9360
- 0
- 0
- 0
-
-
- 2501
- 11230
- 0
- 0
- 0
-
-
- 2502
- 11230
- 0
- 0
- 0
-
-
- 2503
- 13480
- 0
- 0
- 0
-
-
- 2504
- 13480
- 0
- 0
- 0
-
-
- 2505
- 70
- 0
- 0
- 0
-
-
- 2506
- 70
- 0
- 0
- 0
-
-
- 2507
- 90
- 0
- 0
- 0
-
-
- 2508
- 90
- 0
- 0
- 0
-
-
- 2509
- 110
- 0
- 0
- 0
-
-
- 2510
- 110
- 0
- 0
- 0
-
-
- 2511
- 4
- 0
- 0
- 0
-
-
- 2512
- 1
- 0
- 0
- 0
-
-
- 2513
- 6
- 0
- 0
- 0
-
-
- 2514
- 5
- 0
- 0
- 0
-
-
- 2515
- 5
- 0
- 0
- 0
-
-
- 2516
- 10
- 0
- 0
- 0
-
-
- 2517
- 10
- 0
- 0
- 0
-
-
- 2518
- 1
- 0
- 0
- 0
-
-
- 2519
- 1
- 0
- 0
- 0
-
-
- 2520
- 150
- 0
- 0
- 0
-
-
- 2521
- 150
- 0
- 0
- 0
-
-
- 2522
- 150
- 0
- 0
- 0
-
-
- 2523
- 150
- 0
- 0
- 0
-
-
- 2524
- 150
- 0
- 0
- 0
-
-
- 2525
- 150
- 0
- 0
- 0
-
-
- 2526
- 150
- 0
- 0
- 0
-
-
- 2527
- 150
- 0
- 0
- 0
-
-
- 2528
- 1
- 0
- 0
- 0
-
-
- 2529
- 1
- 0
- 0
- 0
-
-
- 2530
- 1
- 0
- 0
- 0
-
-
- 2531
- 1
- 0
- 0
- 0
-
-
- 2532
- 3
- 0
- 0
- 0
-
-
- 2533
- 10
- 0
- 0
- 0
-
-
- 2534
- 3
- 0
- 0
- 0
-
-
- 2535
- 10
- 0
- 0
- 0
-
-
- 2536
- 3
- 0
- 0
- 0
-
-
- 2537
- 10
- 0
- 0
- 0
-
-
- 2538
- 3
- 0
- 0
- 0
-
-
- 2539
- 10
- 0
- 0
- 0
-
-
- 2540
- 3
- 0
- 0
- 0
-
-
- 2541
- 10
- 0
- 0
- 0
-
-
- 2542
- 1
- 0
- 0
- 0
-
-
- 2543
- 1
- 0
- 0
- 0
-
-
- 2544
- 1
- 0
- 0
- 0
-
-
- 2545
- 1
- 0
- 0
- 0
-
-
- 2546
- 1
- 0
- 0
- 0
-
-
- 2547
- 1
- 0
- 0
- 0
-
-
- 2548
- 1
- 0
- 0
- 0
-
-
- 2549
- 1
- 0
- 0
- 0
-
-
- 2550
- 900
- 0
- 0
- 0
-
-
- 2551
- 900
- 0
- 0
- 0
-
-
- 2552
- 1275
- 0
- 0
- 0
-
-
- 2553
- 1275
- 0
- 0
- 0
-
-
- 2554
- 1275
- 0
- 0
- 0
-
-
- 2555
- 1275
- 0
- 0
- 0
-
-
- 2556
- 1275
- 0
- 0
- 0
-
-
- 2557
- 1275
- 0
- 0
- 0
-
-
- 2558
- 1275
- 0
- 0
- 0
-
-
- 2559
- 1275
- 0
- 0
- 0
-
-
- 2560
- 1275
- 0
- 0
- 0
-
-
- 2561
- 1275
- 0
- 0
- 0
-
-
- 2562
- 1275
- 0
- 0
- 0
-
-
- 2563
- 1275
- 0
- 0
- 0
-
-
- 2564
- 1275
- 0
- 0
- 0
-
-
- 2565
- 1275
- 0
- 0
- 0
-
-
- 2566
- 1275
- 0
- 0
- 0
-
-
- 2567
- 1275
- 0
- 0
- 0
-
-
- 2568
- 2025
- 0
- 0
- 0
-
-
- 2569
- 2025
- 0
- 0
- 0
-
-
- 2570
- 3525
- 0
- 0
- 0
-
-
- 2571
- 3525
- 0
- 0
- 0
-
-
- 2573
- 17625
- 0
- 0
- 0
-
-
- 2574
- 50
- 0
- 0
- 0
-
-
- 2575
- 100
- 0
- 0
- 0
-
-
- 2576
- 2
- 0
- 0
- 0
-
-
- 2577
- 200
- 0
- 0
- 0
-
-
- 2578
- 200
- 0
- 0
- 0
-
-
- 2579
- 200
- 0
- 0
- 0
-
-
- 2580
- 200
- 0
- 0
- 0
-
-
- 2581
- 450
- 0
- 0
- 0
-
-
- 2582
- 450
- 0
- 0
- 0
-
-
- 2583
- 3840
- 0
- 0
- 0
-
-
- 2584
- 3840
- 0
- 0
- 0
-
-
- 2585
- 1920
- 0
- 0
- 0
-
-
- 2586
- 1920
- 0
- 0
- 0
-
-
- 2587
- 1056
- 0
- 0
- 0
-
-
- 2588
- 1056
- 0
- 0
- 0
-
-
- 2589
- 1632
- 0
- 0
- 0
-
-
- 2590
- 1632
- 0
- 0
- 0
-
-
- 2591
- 3840
- 0
- 0
- 0
-
-
- 2592
- 3840
- 0
- 0
- 0
-
-
- 2593
- 1920
- 0
- 0
- 0
-
-
- 2594
- 1920
- 0
- 0
- 0
-
-
- 2595
- 1056
- 0
- 0
- 0
-
-
- 2596
- 1056
- 0
- 0
- 0
-
-
- 2597
- 1632
- 0
- 0
- 0
-
-
- 2598
- 1632
- 0
- 0
- 0
-
-
- 2599
- 12800
- 0
- 0
- 0
-
-
- 2600
- 12800
- 0
- 0
- 0
-
-
- 2601
- 6400
- 0
- 0
- 0
-
-
- 2602
- 6400
- 0
- 0
- 0
-
-
- 2603
- 5440
- 0
- 0
- 0
-
-
- 2604
- 5440
- 0
- 0
- 0
-
-
- 2605
- 3520
- 0
- 0
- 0
-
-
- 2606
- 3520
- 0
- 0
- 0
-
-
- 2607
- 12800
- 0
- 0
- 0
-
-
- 2608
- 12800
- 0
- 0
- 0
-
-
- 2609
- 6400
- 0
- 0
- 0
-
-
- 2610
- 6400
- 0
- 0
- 0
-
-
- 2611
- 5440
- 0
- 0
- 0
-
-
- 2612
- 5440
- 0
- 0
- 0
-
-
- 2613
- 3520
- 0
- 0
- 0
-
-
- 2614
- 3520
- 0
- 0
- 0
-
-
- 2615
- 65000
- 0
- 0
- 0
-
-
- 2616
- 65000
- 0
- 0
- 0
-
-
- 2617
- 64000
- 0
- 0
- 0
-
-
- 2618
- 64000
- 0
- 0
- 0
-
-
- 2619
- 35200
- 0
- 0
- 0
-
-
- 2620
- 35200
- 0
- 0
- 0
-
-
- 2621
- 54400
- 0
- 0
- 0
-
-
- 2622
- 54400
- 0
- 0
- 0
-
-
- 2623
- 65000
- 0
- 0
- 0
-
-
- 2624
- 65000
- 0
- 0
- 0
-
-
- 2625
- 64000
- 0
- 0
- 0
-
-
- 2626
- 64000
- 0
- 0
- 0
-
-
- 2627
- 35200
- 0
- 0
- 0
-
-
- 2628
- 35200
- 0
- 0
- 0
-
-
- 2629
- 54400
- 0
- 0
- 0
-
-
- 2630
- 54400
- 0
- 0
- 0
-
-
- 2631
- 40
- 0
- 0
- 0
-
-
- 2632
- 40
- 0
- 0
- 0
-
-
- 2633
- 80
- 0
- 0
- 0
-
-
- 2634
- 80
- 0
- 0
- 0
-
-
- 2635
- 80
- 0
- 0
- 0
-
-
- 2636
- 80
- 0
- 0
- 0
-
-
- 2637
- 80
- 0
- 0
- 0
-
-
- 2638
- 80
- 0
- 0
- 0
-
-
- 2639
- 200
- 0
- 0
- 0
-
-
- 2640
- 200
- 0
- 0
- 0
-
-
- 2641
- 200
- 0
- 0
- 0
-
-
- 2642
- 200
- 0
- 0
- 0
-
-
- 2643
- 200
- 0
- 0
- 0
-
-
- 2644
- 200
- 0
- 0
- 0
-
-
- 2645
- 40
- 0
- 0
- 0
-
-
- 2646
- 40
- 0
- 0
- 0
-
-
- 2647
- 40
- 0
- 0
- 0
-
-
- 2648
- 40
- 0
- 0
- 0
-
-
- 2649
- 40
- 0
- 0
- 0
-
-
- 2650
- 40
- 0
- 0
- 0
-
-
- 2651
- 180
- 0
- 0
- 0
-
-
- 2652
- 180
- 0
- 0
- 0
-
-
- 2653
- 65000
- 0
- 0
- 0
-
-
- 2654
- 65000
- 0
- 0
- 0
-
-
- 2655
- 64000
- 0
- 0
- 0
-
-
- 2656
- 64000
- 0
- 0
- 0
-
-
- 2657
- 35200
- 0
- 0
- 0
-
-
- 2658
- 35200
- 0
- 0
- 0
-
-
- 2659
- 54400
- 0
- 0
- 0
-
-
- 2660
- 54400
- 0
- 0
- 0
-
-
- 2661
- 65000
- 0
- 0
- 0
-
-
- 2662
- 65000
- 0
- 0
- 0
-
-
- 2663
- 64000
- 0
- 0
- 0
-
-
- 2664
- 64000
- 0
- 0
- 0
-
-
- 2665
- 35200
- 0
- 0
- 0
-
-
- 2666
- 35200
- 0
- 0
- 0
-
-
- 2667
- 54400
- 0
- 0
- 0
-
-
- 2668
- 54400
- 0
- 0
- 0
-
-
- 2669
- 65000
- 0
- 0
- 0
-
-
- 2670
- 65000
- 0
- 0
- 0
-
-
- 2671
- 64000
- 0
- 0
- 0
-
-
- 2672
- 64000
- 0
- 0
- 0
-
-
- 2673
- 35200
- 0
- 0
- 0
-
-
- 2674
- 35200
- 0
- 0
- 0
-
-
- 2675
- 54400
- 0
- 0
- 0
-
-
- 2676
- 54400
- 0
- 0
- 0
-
-
- 2677
- 1
- 0
- 0
- 0
-
-
- 2678
- 1
- 0
- 0
- 0
-
-
- 2679
- 1
- 0
- 0
- 0
-
-
- 2680
- 1
- 0
- 0
- 0
-
-
- 2681
- 1
- 0
- 0
- 0
-
-
- 2682
- 1
- 0
- 0
- 0
-
-
- 2683
- 1
- 0
- 0
- 0
-
-
- 2684
- 1
- 0
- 0
- 0
-
-
- 2685
- 1
- 0
- 0
- 0
-
-
- 2686
- 1
- 0
- 0
- 0
-
-
- 2687
- 1
- 0
- 0
- 0
-
-
- 2688
- 1
- 0
- 0
- 0
-
-
- 2689
- 1
- 0
- 0
- 0
-
-
- 2690
- 1
- 0
- 0
- 0
-
-
- 2691
- 1
- 0
- 0
- 0
-
-
- 2692
- 1
- 0
- 0
- 0
-
-
- 2693
- 1
- 0
- 0
- 0
-
-
- 2694
- 1
- 0
- 0
- 0
-
-
- 2695
- 1
- 0
- 0
- 0
-
-
- 2696
- 1
- 0
- 0
- 0
-
-
- 2697
- 1
- 0
- 0
- 0
-
-
- 2698
- 1
- 0
- 0
- 0
-
-
- 2699
- 1
- 0
- 0
- 0
-
-
- 2700
- 1
- 0
- 0
- 0
-
-
- 2701
- 1
- 0
- 0
- 0
-
-
- 2702
- 1
- 0
- 0
- 0
-
-
- 2703
- 1
- 0
- 0
- 0
-
-
- 2704
- 1
- 0
- 0
- 0
-
-
- 2705
- 1
- 0
- 0
- 0
-
-
- 2706
- 1
- 0
- 0
- 0
-
-
- 2707
- 1
- 0
- 0
- 0
-
-
- 2708
- 1
- 0
- 0
- 0
-
-
- 2709
- 1
- 0
- 0
- 0
-
-
- 2710
- 1
- 0
- 0
- 0
-
-
- 2711
- 1
- 0
- 0
- 0
-
-
- 2712
- 1
- 0
- 0
- 0
-
-
- 2713
- 1
- 0
- 0
- 0
-
-
- 2714
- 50
- 0
- 0
- 0
-
-
- 2715
- 50
- 0
- 0
- 0
-
-
- 2716
- 1
- 0
- 0
- 0
-
-
- 2717
- 50
- 0
- 0
- 0
-
-
- 2718
- 50
- 0
- 0
- 0
-
-
- 2719
- 1
- 0
- 0
- 0
-
-
- 2720
- 50
- 0
- 0
- 0
-
-
- 2721
- 50
- 0
- 0
- 0
-
-
- 2722
- 1
- 0
- 0
- 0
-
-
- 2723
- 1
- 0
- 0
- 0
-
-
- 2724
- 50
- 0
- 0
- 0
-
-
- 2725
- 1
- 0
- 0
- 0
-
-
- 2726
- 50
- 0
- 0
- 0
-
-
- 2727
- 1
- 0
- 0
- 0
-
-
- 2728
- 50
- 0
- 0
- 0
-
-
- 2729
- 1
- 0
- 0
- 0
-
-
- 2730
- 50
- 0
- 0
- 0
-
-
- 2731
- 1
- 0
- 0
- 0
-
-
- 2732
- 50
- 0
- 0
- 0
-
-
- 2733
- 1
- 0
- 0
- 0
-
-
- 2734
- 50
- 0
- 0
- 0
-
-
- 2735
- 1
- 0
- 0
- 0
-
-
- 2736
- 50
- 0
- 0
- 0
-
-
- 2737
- 1
- 0
- 0
- 0
-
-
- 2738
- 50
- 0
- 0
- 0
-
-
- 2739
- 1
- 0
- 0
- 0
-
-
- 2740
- 50
- 0
- 0
- 0
-
-
- 2741
- 1
- 0
- 0
- 0
-
-
- 2742
- 50
- 0
- 0
- 0
-
-
- 2743
- 1
- 0
- 0
- 0
-
-
- 2744
- 50
- 0
- 0
- 0
-
-
- 2745
- 1
- 0
- 0
- 0
-
-
- 2746
- 50
- 0
- 0
- 0
-
-
- 2747
- 1
- 0
- 0
- 0
-
-
- 2748
- 50
- 0
- 0
- 0
-
-
- 2749
- 1
- 0
- 0
- 0
-
-
- 2750
- 1
- 0
- 0
- 0
-
-
- 2751
- 1
- 0
- 0
- 0
-
-
- 2752
- 1
- 0
- 0
- 0
-
-
- 2753
- 1
- 0
- 0
- 0
-
-
- 2754
- 1
- 0
- 0
- 0
-
-
- 2755
- 1
- 0
- 0
- 0
-
-
- 2756
- 1
- 0
- 0
- 0
-
-
- 2757
- 1
- 0
- 0
- 0
-
-
- 2758
- 1
- 0
- 0
- 0
-
-
- 2759
- 1
- 0
- 0
- 0
-
-
- 2760
- 1
- 0
- 0
- 0
-
-
- 2761
- 1
- 0
- 0
- 0
-
-
- 2762
- 1
- 0
- 0
- 0
-
-
- 2763
- 1
- 0
- 0
- 0
-
-
- 2764
- 1
- 0
- 0
- 0
-
-
- 2765
- 1
- 0
- 0
- 0
-
-
- 2766
- 1
- 0
- 0
- 0
-
-
- 2767
- 1
- 0
- 0
- 0
-
-
- 2768
- 1
- 0
- 0
- 0
-
-
- 2769
- 1
- 0
- 0
- 0
-
-
- 2770
- 1
- 0
- 0
- 0
-
-
- 2771
- 1
- 0
- 0
- 0
-
-
- 2772
- 1
- 0
- 0
- 0
-
-
- 2773
- 1
- 0
- 0
- 0
-
-
- 2774
- 1
- 0
- 0
- 0
-
-
- 2775
- 50
- 0
- 0
- 0
-
-
- 2776
- 1
- 0
- 0
- 0
-
-
- 2777
- 50
- 0
- 0
- 0
-
-
- 2778
- 1
- 0
- 0
- 0
-
-
- 2779
- 50
- 0
- 0
- 0
-
-
- 2780
- 1
- 0
- 0
- 0
-
-
- 2781
- 50
- 0
- 0
- 0
-
-
- 2782
- 1
- 0
- 0
- 0
-
-
- 2783
- 1
- 0
- 0
- 0
-
-
- 2784
- 50
- 0
- 0
- 0
-
-
- 2785
- 1
- 0
- 0
- 0
-
-
- 2786
- 1
- 0
- 0
- 0
-
-
- 2787
- 50
- 0
- 0
- 0
-
-
- 2788
- 1
- 0
- 0
- 0
-
-
- 2789
- 50
- 0
- 0
- 0
-
-
- 2790
- 1
- 0
- 0
- 0
-
-
- 2791
- 50
- 0
- 0
- 0
-
-
- 2792
- 1
- 0
- 0
- 0
-
-
- 2793
- 1
- 0
- 0
- 0
-
-
- 2794
- 1
- 0
- 0
- 0
-
-
- 2795
- 100
- 0
- 0
- 0
-
-
- 2796
- 1
- 0
- 0
- 0
-
-
- 2797
- 1
- 0
- 0
- 0
-
-
- 2798
- 100
- 0
- 0
- 0
-
-
- 2799
- 1
- 0
- 0
- 0
-
-
- 2800
- 100
- 0
- 0
- 0
-
-
- 2801
- 1
- 0
- 0
- 0
-
-
- 2802
- 50
- 0
- 0
- 0
-
-
- 2803
- 1
- 0
- 0
- 0
-
-
- 2804
- 50
- 0
- 0
- 0
-
-
- 2805
- 1
- 0
- 0
- 0
-
-
- 2806
- 50
- 0
- 0
- 0
-
-
- 2807
- 1
- 0
- 0
- 0
-
-
- 2808
- 50
- 0
- 0
- 0
-
-
- 2809
- 1
- 0
- 0
- 0
-
-
- 2810
- 50
- 0
- 0
- 0
-
-
- 2811
- 1
- 0
- 0
- 0
-
-
- 2812
- 50
- 0
- 0
- 0
-
-
- 2813
- 1
- 0
- 0
- 0
-
-
- 2814
- 50
- 0
- 0
- 0
-
-
- 2815
- 1
- 0
- 0
- 0
-
-
- 2816
- 50
- 0
- 0
- 0
-
-
- 2817
- 1
- 0
- 0
- 0
-
-
- 2818
- 50
- 0
- 0
- 0
-
-
- 2819
- 1
- 0
- 0
- 0
-
-
- 2820
- 50
- 0
- 0
- 0
-
-
- 2821
- 1
- 0
- 0
- 0
-
-
- 2822
- 50
- 0
- 0
- 0
-
-
- 2823
- 1
- 0
- 0
- 0
-
-
- 2824
- 50
- 0
- 0
- 0
-
-
- 2825
- 1
- 0
- 0
- 0
-
-
- 2826
- 50
- 0
- 0
- 0
-
-
- 2827
- 1
- 0
- 0
- 0
-
-
- 2828
- 50
- 0
- 0
- 0
-
-
- 2829
- 1
- 0
- 0
- 0
-
-
- 2830
- 50
- 0
- 0
- 0
-
-
- 2831
- 1
- 0
- 0
- 0
-
-
- 2832
- 1
- 0
- 0
- 0
-
-
- 2833
- 1
- 0
- 0
- 0
-
-
- 2834
- 1
- 0
- 0
- 0
-
-
- 2835
- 1
- 0
- 0
- 0
-
-
- 2836
- 1
- 0
- 0
- 0
-
-
- 2837
- 1
- 0
- 0
- 0
-
-
- 2838
- 1
- 0
- 0
- 0
-
-
- 2839
- 1
- 0
- 0
- 0
-
-
- 2840
- 1
- 0
- 0
- 0
-
-
- 2841
- 1
- 0
- 0
- 0
-
-
- 2842
- 1
- 0
- 0
- 0
-
-
- 2843
- 1
- 0
- 0
- 0
-
-
- 2844
- 1
- 0
- 0
- 0
-
-
- 2845
- 1
- 0
- 0
- 0
-
-
- 2846
- 1
- 0
- 0
- 0
-
-
- 2847
- 1
- 0
- 0
- 0
-
-
- 2848
- 1
- 0
- 0
- 0
-
-
- 2849
- 1
- 0
- 0
- 0
-
-
- 2850
- 1
- 0
- 0
- 0
-
-
- 2851
- 1
- 0
- 0
- 0
-
-
- 2852
- 1
- 0
- 0
- 0
-
-
- 2853
- 1
- 0
- 0
- 0
-
-
- 2854
- 1
- 0
- 0
- 0
-
-
- 2855
- 1
- 0
- 0
- 0
-
-
- 2856
- 1
- 0
- 0
- 0
-
-
- 2857
- 1
- 0
- 0
- 0
-
-
- 2858
- 1
- 0
- 0
- 0
-
-
- 2859
- 1
- 0
- 0
- 0
-
-
- 2860
- 1
- 0
- 0
- 0
-
-
- 2861
- 3
- 0
- 0
- 0
-
-
- 2862
- 4
- 0
- 0
- 0
-
-
- 2863
- 4
- 0
- 0
- 0
-
-
- 2864
- 1
- 0
- 0
- 0
-
-
- 2865
- 1
- 0
- 0
- 0
-
-
- 2866
- 25
- 0
- 0
- 0
-
-
- 2867
- 1
- 0
- 0
- 0
-
-
- 2868
- 1
- 0
- 0
- 0
-
-
- 2869
- 1
- 0
- 0
- 0
-
-
- 2870
- 1
- 0
- 0
- 0
-
-
- 2871
- 1
- 0
- 0
- 0
-
-
- 2872
- 1
- 0
- 0
- 0
-
-
- 2873
- 1
- 0
- 0
- 0
-
-
- 2874
- 1
- 0
- 0
- 0
-
-
- 2875
- 1
- 0
- 0
- 0
-
-
- 2876
- 85
- 0
- 0
- 0
-
-
- 2877
- 85
- 0
- 0
- 0
-
-
- 2878
- 130
- 0
- 0
- 0
-
-
- 2879
- 130
- 0
- 0
- 0
-
-
- 2880
- 1
- 0
- 0
- 0
-
-
- 2881
- 1
- 0
- 0
- 0
-
-
- 2882
- 10
- 0
- 0
- 0
-
-
- 2883
- 500
- 0
- 0
- 0
-
-
- 2884
- 1
- 0
- 0
- 0
-
-
- 2885
- 1
- 0
- 0
- 0
-
-
- 2886
- 10
- 0
- 0
- 0
-
-
- 2887
- 1
- 0
- 0
- 0
-
-
- 2888
- 1
- 0
- 0
- 0
-
-
- 2889
- 1
- 0
- 0
- 0
-
-
- 2890
- 20
- 0
- 0
- 0
-
-
- 2891
- 20
- 0
- 0
- 0
-
-
- 2892
- 5
- 0
- 0
- 0
-
-
- 2893
- 8
- 0
- 0
- 0
-
-
- 2894
- 650
- 0
- 0
- 0
-
-
- 2895
- 650
- 0
- 0
- 0
-
-
- 2896
- 650
- 0
- 0
- 0
-
-
- 2897
- 650
- 0
- 0
- 0
-
-
- 2898
- 650
- 0
- 0
- 0
-
-
- 2899
- 650
- 0
- 0
- 0
-
-
- 2900
- 650
- 0
- 0
- 0
-
-
- 2901
- 650
- 0
- 0
- 0
-
-
- 2902
- 650
- 0
- 0
- 0
-
-
- 2903
- 650
- 0
- 0
- 0
-
-
- 2904
- 650
- 0
- 0
- 0
-
-
- 2905
- 650
- 0
- 0
- 0
-
-
- 2906
- 650
- 0
- 0
- 0
-
-
- 2907
- 650
- 0
- 0
- 0
-
-
- 2908
- 650
- 0
- 0
- 0
-
-
- 2909
- 650
- 0
- 0
- 0
-
-
- 2910
- 650
- 0
- 0
- 0
-
-
- 2911
- 650
- 0
- 0
- 0
-
-
- 2912
- 650
- 0
- 0
- 0
-
-
- 2913
- 650
- 0
- 0
- 0
-
-
- 2914
- 650
- 0
- 0
- 0
-
-
- 2915
- 650
- 0
- 0
- 0
-
-
- 2916
- 650
- 0
- 0
- 0
-
-
- 2917
- 650
- 0
- 0
- 0
-
-
- 2918
- 650
- 0
- 0
- 0
-
-
- 2919
- 650
- 0
- 0
- 0
-
-
- 2920
- 650
- 0
- 0
- 0
-
-
- 2921
- 650
- 0
- 0
- 0
-
-
- 2922
- 650
- 0
- 0
- 0
-
-
- 2923
- 650
- 0
- 0
- 0
-
-
- 2924
- 650
- 0
- 0
- 0
-
-
- 2925
- 650
- 0
- 0
- 0
-
-
- 2926
- 650
- 0
- 0
- 0
-
-
- 2927
- 650
- 0
- 0
- 0
-
-
- 2928
- 650
- 0
- 0
- 0
-
-
- 2929
- 650
- 0
- 0
- 0
-
-
- 2930
- 650
- 0
- 0
- 0
-
-
- 2931
- 650
- 0
- 0
- 0
-
-
- 2932
- 650
- 0
- 0
- 0
-
-
- 2933
- 650
- 0
- 0
- 0
-
-
- 2934
- 650
- 0
- 0
- 0
-
-
- 2935
- 650
- 0
- 0
- 0
-
-
- 2936
- 650
- 0
- 0
- 0
-
-
- 2937
- 650
- 0
- 0
- 0
-
-
- 2938
- 650
- 0
- 0
- 0
-
-
- 2939
- 650
- 0
- 0
- 0
-
-
- 2940
- 650
- 0
- 0
- 0
-
-
- 2941
- 650
- 0
- 0
- 0
-
-
- 2942
- 650
- 0
- 0
- 0
-
-
- 2943
- 650
- 0
- 0
- 0
-
-
- 2944
- 300
- 0
- 0
- 0
-
-
- 2945
- 2
- 0
- 0
- 0
-
-
- 2946
- 300
- 0
- 0
- 0
-
-
- 2947
- 300
- 0
- 0
- 0
-
-
- 2948
- 300
- 0
- 0
- 0
-
-
- 2949
- 300
- 0
- 0
- 0
-
-
- 2950
- 300
- 0
- 0
- 0
-
-
- 2951
- 300
- 0
- 0
- 0
-
-
- 2952
- 300
- 0
- 0
- 0
-
-
- 2953
- 6
- 0
- 0
- 0
-
-
- 2954
- 6
- 0
- 0
- 0
-
-
- 2955
- 5
- 0
- 0
- 0
-
-
- 2956
- 5
- 0
- 0
- 0
-
-
- 2957
- 5
- 0
- 0
- 0
-
-
- 2958
- 5
- 0
- 0
- 0
-
-
- 2959
- 1
- 0
- 0
- 0
-
-
- 2960
- 1
- 0
- 0
- 0
-
-
- 2961
- 175
- 0
- 0
- 0
-
-
- 2962
- 175
- 0
- 0
- 0
-
-
- 2963
- 250
- 0
- 0
- 0
-
-
- 2964
- 4
- 0
- 0
- 0
-
-
- 2965
- 1
- 0
- 0
- 0
-
-
- 2966
- 1
- 0
- 0
- 0
-
-
- 2967
- 1
- 0
- 0
- 0
-
-
- 2968
- 1
- 0
- 0
- 0
-
-
- 2969
- 1
- 0
- 0
- 0
-
-
- 2970
- 1
- 0
- 0
- 0
-
-
- 2971
- 1
- 0
- 0
- 0
-
-
- 2972
- 1
- 0
- 0
- 0
-
-
- 2973
- 1
- 0
- 0
- 0
-
-
- 2974
- 1
- 0
- 0
- 0
-
-
- 2975
- 1
- 0
- 0
- 0
-
-
- 2976
- 10
- 0
- 0
- 0
-
-
- 2977
- 10
- 0
- 0
- 0
-
-
- 2978
- 1
- 0
- 0
- 0
-
-
- 2979
- 1
- 0
- 0
- 0
-
-
- 2980
- 1
- 0
- 0
- 0
-
-
- 2981
- 1
- 0
- 0
- 0
-
-
- 2982
- 1
- 0
- 0
- 0
-
-
- 2983
- 1
- 0
- 0
- 0
-
-
- 2984
- 1
- 0
- 0
- 0
-
-
- 2985
- 1
- 0
- 0
- 0
-
-
- 2986
- 1
- 0
- 0
- 0
-
-
- 2987
- 1
- 0
- 0
- 0
-
-
- 2988
- 1
- 0
- 0
- 0
-
-
- 2989
- 1
- 0
- 0
- 0
-
-
- 2990
- 1
- 0
- 0
- 0
-
-
- 2991
- 1
- 0
- 0
- 0
-
-
- 2992
- 1
- 0
- 0
- 0
-
-
- 2993
- 1
- 0
- 0
- 0
-
-
- 2994
- 1
- 0
- 0
- 0
-
-
- 2995
- 1
- 0
- 0
- 0
-
-
- 2996
- 1
- 0
- 0
- 0
-
-
- 2997
- 89
- 0
- 0
- 0
-
-
- 2998
- 48
- 0
- 0
- 0
-
-
- 2999
- 48
- 0
- 0
- 0
-
-
- 3000
- 59
- 0
- 0
- 0
-
-
- 3001
- 59
- 0
- 0
- 0
-
-
- 3002
- 48
- 0
- 0
- 0
-
-
- 3003
- 48
- 0
- 0
- 0
-
-
- 3004
- 59
- 0
- 0
- 0
-
-
- 3005
- 59
- 0
- 0
- 0
-
-
- 3006
- 60
- 0
- 0
- 0
-
-
- 3007
- 60
- 0
- 0
- 0
-
-
- 3008
- 146
- 0
- 0
- 0
-
-
- 3009
- 146
- 0
- 0
- 0
-
-
- 3010
- 110
- 0
- 0
- 0
-
-
- 3011
- 110
- 0
- 0
- 0
-
-
- 3012
- 72
- 0
- 0
- 0
-
-
- 3013
- 72
- 0
- 0
- 0
-
-
- 3014
- 36
- 0
- 0
- 0
-
-
- 3015
- 36
- 0
- 0
- 0
-
-
- 3016
- 300
- 0
- 0
- 0
-
-
- 3017
- 300
- 0
- 0
- 0
-
-
- 3018
- 230
- 0
- 0
- 0
-
-
- 3019
- 230
- 0
- 0
- 0
-
-
- 3020
- 160
- 0
- 0
- 0
-
-
- 3021
- 160
- 0
- 0
- 0
-
-
- 3022
- 90
- 0
- 0
- 0
-
-
- 3023
- 90
- 0
- 0
- 0
-
-
- 3024
- 300
- 0
- 0
- 0
-
-
- 3025
- 300
- 0
- 0
- 0
-
-
- 3026
- 240
- 0
- 0
- 0
-
-
- 3027
- 240
- 0
- 0
- 0
-
-
- 3028
- 180
- 0
- 0
- 0
-
-
- 3029
- 180
- 0
- 0
- 0
-
-
- 3030
- 120
- 0
- 0
- 0
-
-
- 3031
- 120
- 0
- 0
- 0
-
-
- 3032
- 200
- 0
- 0
- 0
-
-
- 3033
- 200
- 0
- 0
- 0
-
-
- 3034
- 150
- 0
- 0
- 0
-
-
- 3035
- 150
- 0
- 0
- 0
-
-
- 3036
- 100
- 0
- 0
- 0
-
-
- 3037
- 100
- 0
- 0
- 0
-
-
- 3038
- 50
- 0
- 0
- 0
-
-
- 3039
- 50
- 0
- 0
- 0
-
-
- 3040
- 300
- 0
- 0
- 0
-
-
- 3041
- 300
- 0
- 0
- 0
-
-
- 3042
- 250
- 0
- 0
- 0
-
-
- 3043
- 250
- 0
- 0
- 0
-
-
- 3044
- 200
- 0
- 0
- 0
-
-
- 3045
- 200
- 0
- 0
- 0
-
-
- 3046
- 150
- 0
- 0
- 0
-
-
- 3047
- 150
- 0
- 0
- 0
-
-
- 3048
- 89
- 0
- 0
- 0
-
-
- 3049
- 1
- 0
- 0
- 0
-
-
- 3050
- 1
- 0
- 0
- 0
-
-
- 3051
- 1
- 0
- 0
- 0
-
-
- 3052
- 1
- 0
- 0
- 0
-
-
- 3053
- 17000
- 0
- 0
- 0
-
-
- 3054
- 45000
- 0
- 0
- 0
-
-
- 3055
- 17000
- 0
- 0
- 0
-
-
- 3056
- 45000
- 0
- 0
- 0
-
-
- 3057
- 1
- 0
- 0
- 0
-
-
- 3058
- 1
- 0
- 0
- 0
-
-
- 3059
- 1
- 0
- 0
- 0
-
-
- 3060
- 1
- 0
- 0
- 0
-
-
- 3061
- 1
- 0
- 0
- 0
-
-
- 3062
- 1
- 0
- 0
- 0
-
-
- 3063
- 1
- 0
- 0
- 0
-
-
- 3064
- 1
- 0
- 0
- 0
-
-
- 3065
- 1
- 0
- 0
- 0
-
-
- 3066
- 1
- 0
- 0
- 0
-
-
- 3067
- 1
- 0
- 0
- 0
-
-
- 3068
- 1
- 0
- 0
- 0
-
-
- 3069
- 1
- 0
- 0
- 0
-
-
- 3070
- 1
- 0
- 0
- 0
-
-
- 3071
- 1
- 0
- 0
- 0
-
-
- 3072
- 1
- 0
- 0
- 0
-
-
- 3073
- 1
- 0
- 0
- 0
-
-
- 3074
- 1
- 0
- 0
- 0
-
-
- 3075
- 1
- 0
- 0
- 0
-
-
- 3076
- 1
- 0
- 0
- 0
-
-
- 3077
- 1
- 0
- 0
- 0
-
-
- 3078
- 1
- 0
- 0
- 0
-
-
- 3079
- 1
- 0
- 0
- 0
-
-
- 3080
- 1
- 0
- 0
- 0
-
-
- 3081
- 1
- 0
- 0
- 0
-
-
- 3082
- 1
- 0
- 0
- 0
-
-
- 3083
- 1
- 0
- 0
- 0
-
-
- 3084
- 1
- 0
- 0
- 0
-
-
- 3085
- 1
- 0
- 0
- 0
-
-
- 3086
- 1
- 0
- 0
- 0
-
-
- 3087
- 1
- 0
- 0
- 0
-
-
- 3088
- 1
- 0
- 0
- 0
-
-
- 3089
- 1
- 0
- 0
- 0
-
-
- 3090
- 1
- 0
- 0
- 0
-
-
- 3091
- 1
- 0
- 0
- 0
-
-
- 3092
- 1
- 0
- 0
- 0
-
-
- 3093
- 1
- 0
- 0
- 0
-
-
- 3094
- 18
- 0
- 0
- 0
-
-
- 3095
- 15
- 0
- 0
- 0
-
-
- 3096
- 50
- 0
- 0
- 0
-
-
- 3097
- 175
- 0
- 0
- 0
-
-
- 3098
- 360
- 0
- 0
- 0
-
-
- 3099
- 475
- 0
- 0
- 0
-
-
- 3100
- 1200
- 0
- 0
- 0
-
-
- 3101
- 12000
- 0
- 0
- 0
-
-
- 3102
- 1
- 0
- 0
- 0
-
-
- 3103
- 1
- 0
- 0
- 0
-
-
- 3104
- 1
- 0
- 0
- 0
-
-
- 3105
- 12
- 0
- 0
- 0
-
-
- 3106
- 12
- 0
- 0
- 0
-
-
- 3107
- 30
- 0
- 0
- 0
-
-
- 3108
- 1
- 0
- 0
- 0
-
-
- 3109
- 1
- 0
- 0
- 0
-
-
- 3110
- 1
- 0
- 0
- 0
-
-
- 3111
- 1
- 0
- 0
- 0
-
-
- 3112
- 1
- 0
- 0
- 0
-
-
- 3113
- 1
- 0
- 0
- 0
-
-
- 3114
- 1
- 0
- 0
- 0
-
-
- 3115
- 15
- 0
- 0
- 0
-
-
- 3116
- 50
- 0
- 0
- 0
-
-
- 3117
- 175
- 0
- 0
- 0
-
-
- 3118
- 360
- 0
- 0
- 0
-
-
- 3119
- 475
- 0
- 0
- 0
-
-
- 3120
- 1200
- 0
- 0
- 0
-
-
- 3121
- 12000
- 0
- 0
- 0
-
-
- 3122
- 56000
- 0
- 0
- 0
-
-
- 3123
- 1
- 0
- 0
- 0
-
-
- 3124
- 1
- 0
- 0
- 0
-
-
- 3125
- 1
- 0
- 0
- 0
-
-
- 3126
- 1
- 0
- 0
- 0
-
-
- 3127
- 1
- 0
- 0
- 0
-
-
- 3128
- 1
- 0
- 0
- 0
-
-
- 3129
- 1
- 0
- 0
- 0
-
-
- 3130
- 1
- 0
- 0
- 0
-
-
- 3131
- 1
- 0
- 0
- 0
-
-
- 3132
- 1
- 0
- 0
- 0
-
-
- 3133
- 1
- 0
- 0
- 0
-
-
- 3134
- 56000
- 0
- 0
- 0
-
-
- 3135
- 1
- 0
- 0
- 0
-
-
- 3136
- 1
- 0
- 0
- 0
-
-
- 3137
- 1
- 0
- 0
- 0
-
-
- 3138
- 1
- 0
- 0
- 0
-
-
- 3139
- 1
- 0
- 0
- 0
-
-
- 3140
- 250000
- 0
- 0
- 0
-
-
- 3141
- 250000
- 0
- 0
- 0
-
-
- 3142
- 440
- 0
- 0
- 0
-
-
- 3143
- 440
- 0
- 0
- 0
-
-
- 3144
- 460
- 0
- 0
- 0
-
-
- 3145
- 460
- 0
- 0
- 0
-
-
- 3146
- 250
- 0
- 0
- 0
-
-
- 3147
- 250
- 0
- 0
- 0
-
-
- 3148
- 1
- 0
- 0
- 0
-
-
- 3149
- 1
- 0
- 0
- 0
-
-
- 3150
- 10
- 0
- 0
- 0
-
-
- 3151
- 10
- 0
- 0
- 0
-
-
- 3152
- 15
- 0
- 0
- 0
-
-
- 3153
- 15
- 0
- 0
- 0
-
-
- 3154
- 15
- 0
- 0
- 0
-
-
- 3155
- 15
- 0
- 0
- 0
-
-
- 3156
- 15
- 0
- 0
- 0
-
-
- 3157
- 5
- 0
- 0
- 0
-
-
- 3158
- 5
- 0
- 0
- 0
-
-
- 3159
- 40
- 0
- 0
- 0
-
-
- 3160
- 40
- 0
- 0
- 0
-
-
- 3161
- 5
- 0
- 0
- 0
-
-
- 3162
- 2
- 0
- 0
- 0
-
-
- 3163
- 2
- 0
- 0
- 0
-
-
- 3164
- 30
- 0
- 0
- 0
-
-
- 3165
- 30
- 0
- 0
- 0
-
-
- 3166
- 1
- 0
- 0
- 0
-
-
- 3167
- 10
- 0
- 0
- 0
-
-
- 3168
- 1
- 0
- 0
- 0
-
-
- 3169
- 1
- 0
- 0
- 0
-
-
- 3170
- 26
- 0
- 0
- 0
-
-
- 3171
- 91
- 0
- 0
- 0
-
-
- 3172
- 325
- 0
- 0
- 0
-
-
- 3173
- 845
- 0
- 0
- 0
-
-
- 3174
- 2080
- 0
- 0
- 0
-
-
- 3175
- 20800
- 0
- 0
- 0
-
-
- 3176
- 62400
- 0
- 0
- 0
-
-
- 3177
- 2
- 0
- 0
- 0
-
-
- 3178
- 2
- 0
- 0
- 0
-
-
- 3179
- 1
- 0
- 0
- 0
-
-
- 3180
- 1
- 0
- 0
- 0
-
-
- 3181
- 1
- 0
- 0
- 0
-
-
- 3182
- 1
- 0
- 0
- 0
-
-
- 3183
- 1
- 0
- 0
- 0
-
-
- 3184
- 1
- 0
- 0
- 0
-
-
- 3185
- 1
- 0
- 0
- 0
-
-
- 3186
- 1
- 0
- 0
- 0
-
-
- 3187
- 1
- 0
- 0
- 0
-
-
- 3188
- 60
- 0
- 0
- 0
-
-
- 3189
- 60
- 0
- 0
- 0
-
-
- 3190
- 104
- 0
- 0
- 0
-
-
- 3191
- 104
- 0
- 0
- 0
-
-
- 3192
- 364
- 0
- 0
- 0
-
-
- 3193
- 364
- 0
- 0
- 0
-
-
- 3194
- 1300
- 0
- 0
- 0
-
-
- 3195
- 1300
- 0
- 0
- 0
-
-
- 3196
- 2496
- 0
- 0
- 0
-
-
- 3197
- 2496
- 0
- 0
- 0
-
-
- 3198
- 3380
- 0
- 0
- 0
-
-
- 3199
- 3380
- 0
- 0
- 0
-
-
- 3200
- 8320
- 0
- 0
- 0
-
-
- 3201
- 8320
- 0
- 0
- 0
-
-
- 3202
- 128000
- 0
- 0
- 0
-
-
- 3203
- 128000
- 0
- 0
- 0
-
-
- 3204
- 325000
- 0
- 0
- 0
-
-
- 3205
- 325000
- 0
- 0
- 0
-
-
- 3206
- 1
- 0
- 0
- 0
-
-
- 3207
- 1
- 0
- 0
- 0
-
-
- 3208
- 10
- 0
- 0
- 0
-
-
- 3209
- 1
- 0
- 0
- 0
-
-
- 3210
- 1
- 0
- 0
- 0
-
-
- 3211
- 10
- 0
- 0
- 0
-
-
- 3212
- 10
- 0
- 0
- 0
-
-
- 3213
- 4
- 0
- 0
- 0
-
-
- 3214
- 5
- 0
- 0
- 0
-
-
- 3215
- 5
- 0
- 0
- 0
-
-
- 3216
- 1
- 0
- 0
- 0
-
-
- 3217
- 1
- 0
- 0
- 0
-
-
- 3218
- 1
- 0
- 0
- 0
-
-
- 3219
- 1
- 0
- 0
- 0
-
-
- 3220
- 1
- 0
- 0
- 0
-
-
- 3221
- 1
- 0
- 0
- 0
-
-
- 3222
- 1
- 0
- 0
- 0
-
-
- 3223
- 1
- 0
- 0
- 0
-
-
- 3224
- 10
- 0
- 0
- 0
-
-
- 3225
- 1
- 0
- 0
- 0
-
-
- 3226
- 20
- 0
- 0
- 0
-
-
- 3227
- 20
- 0
- 0
- 0
-
-
- 3228
- 4
- 0
- 0
- 0
-
-
- 3229
- 4
- 0
- 0
- 0
-
-
- 3230
- 1
- 0
- 0
- 0
-
-
- 3231
- 1
- 0
- 0
- 0
-
-
- 3232
- 1
- 0
- 0
- 0
-
-
- 3233
- 1
- 0
- 0
- 0
-
-
- 3234
- 1
- 0
- 0
- 0
-
-
- 3235
- 1
- 0
- 0
- 0
-
-
- 3236
- 1
- 0
- 0
- 0
-
-
- 3237
- 1
- 0
- 0
- 0
-
-
- 3238
- 1
- 0
- 0
- 0
-
-
- 3239
- 1
- 0
- 0
- 0
-
-
- 3240
- 1
- 0
- 0
- 0
-
-
- 3241
- 1
- 0
- 0
- 0
-
-
- 3242
- 1
- 0
- 0
- 0
-
-
- 3243
- 1
- 0
- 0
- 0
-
-
- 3244
- 1
- 0
- 0
- 0
-
-
- 3245
- 1
- 0
- 0
- 0
-
-
- 3246
- 1
- 0
- 0
- 0
-
-
- 3247
- 1
- 0
- 0
- 0
-
-
- 3248
- 1
- 0
- 0
- 0
-
-
- 3249
- 1
- 0
- 0
- 0
-
-
- 3250
- 1
- 0
- 0
- 0
-
-
- 3251
- 1
- 0
- 0
- 0
-
-
- 3252
- 1
- 0
- 0
- 0
-
-
- 3253
- 1
- 0
- 0
- 0
-
-
- 3254
- 1
- 0
- 0
- 0
-
-
- 3255
- 1
- 0
- 0
- 0
-
-
- 3256
- 1
- 0
- 0
- 0
-
-
- 3257
- 1
- 0
- 0
- 0
-
-
- 3258
- 1
- 0
- 0
- 0
-
-
- 3259
- 1
- 0
- 0
- 0
-
-
- 3260
- 1
- 0
- 0
- 0
-
-
- 3261
- 1
- 0
- 0
- 0
-
-
- 3262
- 1
- 0
- 0
- 0
-
-
- 3263
- 1
- 0
- 0
- 0
-
-
- 3264
- 1
- 0
- 0
- 0
-
-
- 3265
- 1
- 0
- 0
- 0
-
-
- 3266
- 1
- 0
- 0
- 0
-
-
- 3267
- 1
- 0
- 0
- 0
-
-
- 3268
- 1
- 0
- 0
- 0
-
-
- 3269
- 1
- 0
- 0
- 0
-
-
- 3270
- 1
- 0
- 0
- 0
-
-
- 3271
- 1
- 0
- 0
- 0
-
-
- 3272
- 1
- 0
- 0
- 0
-
-
- 3273
- 1
- 0
- 0
- 0
-
-
- 3274
- 1
- 0
- 0
- 0
-
-
- 3275
- 1
- 0
- 0
- 0
-
-
- 3276
- 1
- 0
- 0
- 0
-
-
- 3277
- 1
- 0
- 0
- 0
-
-
- 3278
- 1
- 0
- 0
- 0
-
-
- 3279
- 1
- 0
- 0
- 0
-
-
- 3280
- 1
- 0
- 0
- 0
-
-
- 3281
- 1
- 0
- 0
- 0
-
-
- 3282
- 1
- 0
- 0
- 0
-
-
- 3283
- 1
- 0
- 0
- 0
-
-
- 3284
- 1
- 0
- 0
- 0
-
-
- 3285
- 1
- 0
- 0
- 0
-
-
- 3286
- 1
- 0
- 0
- 0
-
-
- 3287
- 1
- 0
- 0
- 0
-
-
- 3288
- 1
- 0
- 0
- 0
-
-
- 3289
- 1
- 0
- 0
- 0
-
-
- 3290
- 1
- 0
- 0
- 0
-
-
- 3291
- 1
- 0
- 0
- 0
-
-
- 3292
- 1
- 0
- 0
- 0
-
-
- 3293
- 1
- 0
- 0
- 0
-
-
- 3294
- 1
- 0
- 0
- 0
-
-
- 3295
- 1
- 0
- 0
- 0
-
-
- 3296
- 1
- 0
- 0
- 0
-
-
- 3297
- 1
- 0
- 0
- 0
-
-
- 3298
- 1
- 0
- 0
- 0
-
-
- 3299
- 1
- 0
- 0
- 0
-
-
- 3300
- 1
- 0
- 0
- 0
-
-
- 3301
- 1
- 0
- 0
- 0
-
-
- 3302
- 1
- 0
- 0
- 0
-
-
- 3303
- 1
- 0
- 0
- 0
-
-
- 3304
- 1
- 0
- 0
- 0
-
-
- 3305
- 1
- 0
- 0
- 0
-
-
- 3306
- 1
- 0
- 0
- 0
-
-
- 3307
- 1
- 0
- 0
- 0
-
-
- 3308
- 1
- 0
- 0
- 0
-
-
- 3309
- 1
- 0
- 0
- 0
-
-
- 3310
- 1
- 0
- 0
- 0
-
-
- 3311
- 1
- 0
- 0
- 0
-
-
- 3312
- 1
- 0
- 0
- 0
-
-
- 3313
- 1
- 0
- 0
- 0
-
-
- 3314
- 1
- 0
- 0
- 0
-
-
- 3315
- 1
- 0
- 0
- 0
-
-
- 3316
- 1
- 0
- 0
- 0
-
-
- 3317
- 1
- 0
- 0
- 0
-
-
- 3318
- 1
- 0
- 0
- 0
-
-
- 3319
- 1
- 0
- 0
- 0
-
-
- 3320
- 1
- 0
- 0
- 0
-
-
- 3321
- 1
- 0
- 0
- 0
-
-
- 3322
- 1
- 0
- 0
- 0
-
-
- 3323
- 1
- 0
- 0
- 0
-
-
- 3324
- 1
- 0
- 0
- 0
-
-
- 3325
- 2
- 0
- 0
- 0
-
-
- 3326
- 2
- 0
- 0
- 0
-
-
- 3327
- 300
- 0
- 0
- 0
-
-
- 3328
- 300
- 0
- 0
- 0
-
-
- 3329
- 300
- 0
- 0
- 0
-
-
- 3330
- 300
- 0
- 0
- 0
-
-
- 3331
- 300
- 0
- 0
- 0
-
-
- 3332
- 300
- 0
- 0
- 0
-
-
- 3333
- 300
- 0
- 0
- 0
-
-
- 3334
- 300
- 0
- 0
- 0
-
-
- 3335
- 300
- 0
- 0
- 0
-
-
- 3336
- 300
- 0
- 0
- 0
-
-
- 3337
- 300
- 0
- 0
- 0
-
-
- 3338
- 300
- 0
- 0
- 0
-
-
- 3339
- 300
- 0
- 0
- 0
-
-
- 3340
- 300
- 0
- 0
- 0
-
-
- 3341
- 300
- 0
- 0
- 0
-
-
- 3342
- 300
- 0
- 0
- 0
-
-
- 3343
- 300
- 0
- 0
- 0
-
-
- 3344
- 300
- 0
- 0
- 0
-
-
- 3345
- 150
- 0
- 0
- 0
-
-
- 3346
- 150
- 0
- 0
- 0
-
-
- 3347
- 150
- 0
- 0
- 0
-
-
- 3348
- 150
- 0
- 0
- 0
-
-
- 3349
- 150
- 0
- 0
- 0
-
-
- 3350
- 150
- 0
- 0
- 0
-
-
- 3351
- 150
- 0
- 0
- 0
-
-
- 3352
- 150
- 0
- 0
- 0
-
-
- 3353
- 150
- 0
- 0
- 0
-
-
- 3354
- 150
- 0
- 0
- 0
-
-
- 3355
- 150
- 0
- 0
- 0
-
-
- 3356
- 150
- 0
- 0
- 0
-
-
- 3357
- 150
- 0
- 0
- 0
-
-
- 3358
- 150
- 0
- 0
- 0
-
-
- 3359
- 150
- 0
- 0
- 0
-
-
- 3360
- 150
- 0
- 0
- 0
-
-
- 3361
- 150
- 0
- 0
- 0
-
-
- 3362
- 150
- 0
- 0
- 0
-
-
- 3363
- 60
- 0
- 0
- 0
-
-
- 3364
- 60
- 0
- 0
- 0
-
-
- 3365
- 10
- 0
- 0
- 0
-
-
- 3366
- 10
- 0
- 0
- 0
-
-
- 3367
- 15
- 0
- 0
- 0
-
-
- 3368
- 15
- 0
- 0
- 0
-
-
- 3369
- 10
- 0
- 0
- 0
-
-
- 3370
- 10
- 0
- 0
- 0
-
-
- 3371
- 20
- 0
- 0
- 0
-
-
- 3372
- 20
- 0
- 0
- 0
-
-
- 3373
- 30
- 0
- 0
- 0
-
-
- 3374
- 30
- 0
- 0
- 0
-
-
- 3375
- 10
- 0
- 0
- 0
-
-
- 3376
- 10
- 0
- 0
- 0
-
-
- 3377
- 5
- 0
- 0
- 0
-
-
- 3378
- 5
- 0
- 0
- 0
-
-
- 3379
- 1
- 0
- 0
- 0
-
-
- 3380
- 1
- 0
- 0
- 0
-
-
- 3381
- 1
- 0
- 0
- 0
-
-
- 3382
- 1
- 0
- 0
- 0
-
-
- 3383
- 1
- 0
- 0
- 0
-
-
- 3384
- 1
- 0
- 0
- 0
-
-
- 3385
- 10000
- 0
- 0
- 0
-
-
- 3386
- 10000
- 0
- 0
- 0
-
-
- 3387
- 45000
- 0
- 0
- 0
-
-
- 3388
- 45000
- 0
- 0
- 0
-
-
- 3389
- 40000
- 0
- 0
- 0
-
-
- 3390
- 40000
- 0
- 0
- 0
-
-
- 3391
- 5000
- 0
- 0
- 0
-
-
- 3392
- 5000
- 0
- 0
- 0
-
-
- 3393
- 5000
- 0
- 0
- 0
-
-
- 3394
- 5000
- 0
- 0
- 0
-
-
- 3395
- 1
- 0
- 0
- 0
-
-
- 3396
- 1
- 0
- 0
- 0
-
-
- 3397
- 1
- 0
- 0
- 0
-
-
- 3398
- 1
- 0
- 0
- 0
-
-
- 3399
- 1
- 0
- 0
- 0
-
-
- 3400
- 1
- 0
- 0
- 0
-
-
- 3401
- 1
- 0
- 0
- 0
-
-
- 3402
- 1
- 0
- 0
- 0
-
-
- 3403
- 1
- 0
- 0
- 0
-
-
- 3404
- 1
- 0
- 0
- 0
-
-
- 3405
- 1
- 0
- 0
- 0
-
-
- 3406
- 11
- 0
- 0
- 0
-
-
- 3407
- 11
- 0
- 0
- 0
-
-
- 3408
- 14
- 0
- 0
- 0
-
-
- 3409
- 1
- 0
- 0
- 0
-
-
- 3410
- 13
- 0
- 0
- 0
-
-
- 3411
- 1
- 0
- 0
- 0
-
-
- 3412
- 13
- 0
- 0
- 0
-
-
- 3413
- 1
- 0
- 0
- 0
-
-
- 3414
- 11
- 0
- 0
- 0
-
-
- 3415
- 1
- 0
- 0
- 0
-
-
- 3416
- 14
- 0
- 0
- 0
-
-
- 3417
- 13
- 0
- 0
- 0
-
-
- 3418
- 13
- 0
- 0
- 0
-
-
- 3419
- 11
- 0
- 0
- 0
-
-
- 3420
- 21
- 0
- 0
- 0
-
-
- 3421
- 21
- 0
- 0
- 0
-
-
- 3422
- 22
- 0
- 0
- 0
-
-
- 3423
- 22
- 0
- 0
- 0
-
-
- 3424
- 26
- 0
- 0
- 0
-
-
- 3425
- 26
- 0
- 0
- 0
-
-
- 3426
- 17
- 0
- 0
- 0
-
-
- 3427
- 17
- 0
- 0
- 0
-
-
- 3428
- 14
- 0
- 0
- 0
-
-
- 3429
- 14
- 0
- 0
- 0
-
-
- 3430
- 100
- 0
- 0
- 0
-
-
- 3431
- 100
- 0
- 0
- 0
-
-
- 3432
- 90
- 0
- 0
- 0
-
-
- 3433
- 90
- 0
- 0
- 0
-
-
- 3434
- 75
- 0
- 0
- 0
-
-
- 3435
- 75
- 0
- 0
- 0
-
-
- 3436
- 60
- 0
- 0
- 0
-
-
- 3437
- 60
- 0
- 0
- 0
-
-
- 3438
- 8
- 0
- 0
- 0
-
-
- 3439
- 8
- 0
- 0
- 0
-
-
- 3440
- 40
- 0
- 0
- 0
-
-
- 3441
- 40
- 0
- 0
- 0
-
-
- 3442
- 80
- 0
- 0
- 0
-
-
- 3443
- 80
- 0
- 0
- 0
-
-
- 3444
- 160
- 0
- 0
- 0
-
-
- 3445
- 160
- 0
- 0
- 0
-
-
- 3446
- 320
- 0
- 0
- 0
-
-
- 3447
- 320
- 0
- 0
- 0
-
-
- 3448
- 640
- 0
- 0
- 0
-
-
- 3449
- 640
- 0
- 0
- 0
-
-
- 3450
- 81
- 0
- 0
- 0
-
-
- 3451
- 82
- 0
- 0
- 0
-
-
- 3452
- 83
- 0
- 0
- 0
-
-
- 3453
- 84
- 0
- 0
- 0
-
-
- 3454
- 85
- 0
- 0
- 0
-
-
- 3455
- 86
- 0
- 0
- 0
-
-
- 3456
- 87
- 0
- 0
- 0
-
-
- 3457
- 88
- 0
- 0
- 0
-
-
- 3458
- 89
- 0
- 0
- 0
-
-
- 3459
- 90
- 0
- 0
- 0
-
-
- 3460
- 91
- 0
- 0
- 0
-
-
- 3461
- 92
- 0
- 0
- 0
-
-
- 3462
- 93
- 0
- 0
- 0
-
-
- 3463
- 94
- 0
- 0
- 0
-
-
- 3464
- 95
- 0
- 0
- 0
-
-
- 3465
- 96
- 0
- 0
- 0
-
-
- 3466
- 97
- 0
- 0
- 0
-
-
- 3467
- 98
- 0
- 0
- 0
-
-
- 3468
- 99
- 0
- 0
- 0
-
-
- 3469
- 100
- 0
- 0
- 0
-
-
- 3470
- 500
- 0
- 0
- 0
-
-
- 3471
- 500
- 0
- 0
- 0
-
-
- 3472
- 1920
- 0
- 0
- 0
-
-
- 3473
- 1920
- 0
- 0
- 0
-
-
- 3474
- 6400
- 0
- 0
- 0
-
-
- 3475
- 6400
- 0
- 0
- 0
-
-
- 3476
- 64000
- 0
- 0
- 0
-
-
- 3477
- 64000
- 0
- 0
- 0
-
-
- 3478
- 64000
- 0
- 0
- 0
-
-
- 3479
- 64000
- 0
- 0
- 0
-
-
- 3480
- 64000
- 0
- 0
- 0
-
-
- 3481
- 65000
- 0
- 0
- 0
-
-
- 3482
- 65000
- 0
- 0
- 0
-
-
- 3483
- 64000
- 0
- 0
- 0
-
-
- 3484
- 64000
- 0
- 0
- 0
-
-
- 3485
- 64000
- 0
- 0
- 0
-
-
- 3486
- 35200
- 0
- 0
- 0
-
-
- 3487
- 35200
- 0
- 0
- 0
-
-
- 3488
- 54400
- 0
- 0
- 0
-
-
- 3489
- 54400
- 0
- 0
- 0
-
-
- 3490
- 1
- 0
- 0
- 0
-
-
- 3491
- 1
- 0
- 0
- 0
-
-
- 3492
- 1
- 0
- 0
- 0
-
-
- 3493
- 1
- 0
- 0
- 0
-
-
- 3494
- 1
- 0
- 0
- 0
-
-
- 3495
- 1
- 0
- 0
- 0
-
-
- 3496
- 1
- 0
- 0
- 0
-
-
- 3497
- 1
- 0
- 0
- 0
-
-
- 3498
- 1
- 0
- 0
- 0
-
-
- 3499
- 1
- 0
- 0
- 0
-
-
- 3500
- 1
- 0
- 0
- 0
-
-
- 3501
- 1
- 0
- 0
- 0
-
-
- 3502
- 1
- 0
- 0
- 0
-
-
- 3503
- 1
- 0
- 0
- 0
-
-
- 3504
- 1
- 0
- 0
- 0
-
-
- 3505
- 1
- 0
- 0
- 0
-
-
- 3506
- 1
- 0
- 0
- 0
-
-
- 3507
- 1
- 0
- 0
- 0
-
-
- 3508
- 1
- 0
- 0
- 0
-
-
- 3509
- 1
- 0
- 0
- 0
-
-
- 3510
- 1
- 0
- 0
- 0
-
-
- 3511
- 50
- 0
- 0
- 0
-
-
- 3512
- 1
- 0
- 0
- 0
-
-
- 3513
- 1
- 0
- 0
- 0
-
-
- 3514
- 1
- 0
- 0
- 0
-
-
- 3515
- 1
- 0
- 0
- 0
-
-
- 3516
- 1
- 0
- 0
- 0
-
-
- 3517
- 50
- 0
- 0
- 0
-
-
- 3518
- 1
- 0
- 0
- 0
-
-
- 3519
- 50
- 0
- 0
- 0
-
-
- 3520
- 1
- 0
- 0
- 0
-
-
- 3521
- 50
- 0
- 0
- 0
-
-
- 3522
- 1
- 0
- 0
- 0
-
-
- 3523
- 50
- 0
- 0
- 0
-
-
- 3524
- 1
- 0
- 0
- 0
-
-
- 3525
- 1
- 0
- 0
- 0
-
-
- 3526
- 1
- 0
- 0
- 0
-
-
- 3527
- 50
- 0
- 0
- 0
-
-
- 3528
- 1
- 0
- 0
- 0
-
-
- 3529
- 50
- 0
- 0
- 0
-
-
- 3530
- 1
- 0
- 0
- 0
-
-
- 3531
- 50
- 0
- 0
- 0
-
-
- 3532
- 1
- 0
- 0
- 0
-
-
- 3533
- 50
- 0
- 0
- 0
-
-
- 3534
- 1
- 0
- 0
- 0
-
-
- 3535
- 50
- 0
- 0
- 0
-
-
- 3536
- 1
- 0
- 0
- 0
-
-
- 3537
- 50
- 0
- 0
- 0
-
-
- 3538
- 1
- 0
- 0
- 0
-
-
- 3539
- 50
- 0
- 0
- 0
-
-
- 3540
- 1
- 0
- 0
- 0
-
-
- 3541
- 50
- 0
- 0
- 0
-
-
- 3542
- 1
- 0
- 0
- 0
-
-
- 3543
- 50
- 0
- 0
- 0
-
-
- 3544
- 1
- 0
- 0
- 0
-
-
- 3545
- 50
- 0
- 0
- 0
-
-
- 3546
- 1
- 0
- 0
- 0
-
-
- 3547
- 50
- 0
- 0
- 0
-
-
- 3548
- 1
- 0
- 0
- 0
-
-
- 3549
- 50
- 0
- 0
- 0
-
-
- 3550
- 1
- 0
- 0
- 0
-
-
- 3551
- 50
- 0
- 0
- 0
-
-
- 3552
- 1
- 0
- 0
- 0
-
-
- 3553
- 50
- 0
- 0
- 0
-
-
- 3554
- 1
- 0
- 0
- 0
-
-
- 3555
- 50
- 0
- 0
- 0
-
-
- 3556
- 1
- 0
- 0
- 0
-
-
- 3557
- 50
- 0
- 0
- 0
-
-
- 3558
- 1
- 0
- 0
- 0
-
-
- 3559
- 50
- 0
- 0
- 0
-
-
- 3560
- 1
- 0
- 0
- 0
-
-
- 3561
- 50
- 0
- 0
- 0
-
-
- 3562
- 1
- 0
- 0
- 0
-
-
- 3563
- 50
- 0
- 0
- 0
-
-
- 3564
- 1
- 0
- 0
- 0
-
-
- 3565
- 100
- 0
- 0
- 0
-
-
- 3566
- 1
- 0
- 0
- 0
-
-
- 3567
- 100
- 0
- 0
- 0
-
-
- 3568
- 1
- 0
- 0
- 0
-
-
- 3569
- 100
- 0
- 0
- 0
-
-
- 3570
- 1
- 0
- 0
- 0
-
-
- 3571
- 100
- 0
- 0
- 0
-
-
- 3572
- 1
- 0
- 0
- 0
-
-
- 3573
- 1
- 0
- 0
- 0
-
-
- 3574
- 1
- 0
- 0
- 0
-
-
- 3575
- 1
- 0
- 0
- 0
-
-
- 3576
- 100
- 0
- 0
- 0
-
-
- 3577
- 1
- 0
- 0
- 0
-
-
- 3578
- 100
- 0
- 0
- 0
-
-
- 3579
- 1
- 0
- 0
- 0
-
-
- 3580
- 1
- 0
- 0
- 0
-
-
- 3581
- 50
- 0
- 0
- 0
-
-
- 3582
- 1
- 0
- 0
- 0
-
-
- 3583
- 50
- 0
- 0
- 0
-
-
- 3584
- 1
- 0
- 0
- 0
-
-
- 3585
- 50
- 0
- 0
- 0
-
-
- 3586
- 1
- 0
- 0
- 0
-
-
- 3587
- 50
- 0
- 0
- 0
-
-
- 3588
- 1
- 0
- 0
- 0
-
-
- 3589
- 50
- 0
- 0
- 0
-
-
- 3590
- 1
- 0
- 0
- 0
-
-
- 3591
- 50
- 0
- 0
- 0
-
-
- 3592
- 1
- 0
- 0
- 0
-
-
- 3593
- 50
- 0
- 0
- 0
-
-
- 3594
- 1
- 0
- 0
- 0
-
-
- 3595
- 50
- 0
- 0
- 0
-
-
- 3596
- 1
- 0
- 0
- 0
-
-
- 3597
- 50
- 0
- 0
- 0
-
-
- 3598
- 1
- 0
- 0
- 0
-
-
- 3599
- 1
- 0
- 0
- 0
-
-
- 3600
- 50
- 0
- 0
- 0
-
-
- 3601
- 1
- 0
- 0
- 0
-
-
- 3602
- 1
- 0
- 0
- 0
-
-
- 3603
- 50
- 0
- 0
- 0
-
-
- 3604
- 1
- 0
- 0
- 0
-
-
- 3605
- 1
- 0
- 0
- 0
-
-
- 3606
- 1
- 0
- 0
- 0
-
-
- 3607
- 1
- 0
- 0
- 0
-
-
- 3608
- 1
- 0
- 0
- 0
-
-
- 3609
- 1
- 0
- 0
- 0
-
-
- 3610
- 1
- 0
- 0
- 0
-
-
- 3611
- 1
- 0
- 0
- 0
-
-
- 3612
- 1
- 0
- 0
- 0
-
-
- 3613
- 1
- 0
- 0
- 0
-
-
- 3614
- 1
- 0
- 0
- 0
-
-
- 3615
- 1
- 0
- 0
- 0
-
-
- 3616
- 1
- 0
- 0
- 0
-
-
- 3617
- 1
- 0
- 0
- 0
-
-
- 3618
- 1
- 0
- 0
- 0
-
-
- 3619
- 1
- 0
- 0
- 0
-
-
- 3620
- 1
- 0
- 0
- 0
-
-
- 3621
- 1
- 0
- 0
- 0
-
-
- 3622
- 1
- 0
- 0
- 0
-
-
- 3623
- 1
- 0
- 0
- 0
-
-
- 3624
- 1
- 0
- 0
- 0
-
-
- 3625
- 1
- 0
- 0
- 0
-
-
- 3626
- 1
- 0
- 0
- 0
-
-
- 3627
- 1
- 0
- 0
- 0
-
-
- 3628
- 1
- 0
- 0
- 0
-
-
- 3629
- 1
- 0
- 0
- 0
-
-
- 3630
- 1
- 0
- 0
- 0
-
-
- 3631
- 1
- 0
- 0
- 0
-
-
- 3632
- 1
- 0
- 0
- 0
-
-
- 3633
- 1
- 0
- 0
- 0
-
-
- 3634
- 1
- 0
- 0
- 0
-
-
- 3635
- 1
- 0
- 0
- 0
-
-
- 3636
- 1
- 0
- 0
- 0
-
-
- 3637
- 1
- 0
- 0
- 0
-
-
- 3638
- 1
- 0
- 0
- 0
-
-
- 3639
- 1
- 0
- 0
- 0
-
-
- 3640
- 1
- 0
- 0
- 0
-
-
- 3641
- 1
- 0
- 0
- 0
-
-
- 3642
- 1
- 0
- 0
- 0
-
-
- 3643
- 1
- 0
- 0
- 0
-
-
- 3644
- 1
- 0
- 0
- 0
-
-
- 3645
- 1
- 0
- 0
- 0
-
-
- 3646
- 1
- 0
- 0
- 0
-
-
- 3647
- 1
- 0
- 0
- 0
-
-
- 3648
- 1
- 0
- 0
- 0
-
-
- 3649
- 1
- 0
- 0
- 0
-
-
- 3650
- 1
- 0
- 0
- 0
-
-
- 3651
- 1
- 0
- 0
- 0
-
-
- 3652
- 1
- 0
- 0
- 0
-
-
- 3653
- 1
- 0
- 0
- 0
-
-
- 3654
- 1
- 0
- 0
- 0
-
-
- 3655
- 1
- 0
- 0
- 0
-
-
- 3656
- 1
- 0
- 0
- 0
-
-
- 3657
- 1
- 0
- 0
- 0
-
-
- 3658
- 1
- 0
- 0
- 0
-
-
- 3659
- 1
- 0
- 0
- 0
-
-
- 3660
- 1
- 0
- 0
- 0
-
-
- 3661
- 1
- 0
- 0
- 0
-
-
- 3662
- 1
- 0
- 0
- 0
-
-
- 3663
- 1
- 0
- 0
- 0
-
-
- 3664
- 1
- 0
- 0
- 0
-
-
- 3665
- 1
- 0
- 0
- 0
-
-
- 3666
- 1
- 0
- 0
- 0
-
-
- 3667
- 1
- 0
- 0
- 0
-
-
- 3668
- 1920
- 0
- 0
- 0
-
-
- 3669
- 1920
- 0
- 0
- 0
-
-
- 3670
- 6400
- 0
- 0
- 0
-
-
- 3671
- 6400
- 0
- 0
- 0
-
-
- 3672
- 64000
- 0
- 0
- 0
-
-
- 3673
- 64000
- 0
- 0
- 0
-
-
- 3674
- 64000
- 0
- 0
- 0
-
-
- 3675
- 64000
- 0
- 0
- 0
-
-
- 3676
- 64000
- 0
- 0
- 0
-
-
- 3677
- 64000
- 0
- 0
- 0
-
-
- 3678
- 13000
- 0
- 0
- 0
-
-
- 3679
- 1
- 0
- 0
- 0
-
-
- 3680
- 1
- 0
- 0
- 0
-
-
- 3681
- 1
- 0
- 0
- 0
-
-
- 3682
- 1
- 0
- 0
- 0
-
-
- 3683
- 1
- 0
- 0
- 0
-
-
- 3684
- 1
- 0
- 0
- 0
-
-
- 3685
- 1
- 0
- 0
- 0
-
-
- 3686
- 1
- 0
- 0
- 0
-
-
- 3687
- 1
- 0
- 0
- 0
-
-
- 3688
- 1
- 0
- 0
- 0
-
-
- 3689
- 1
- 0
- 0
- 0
-
-
- 3690
- 1
- 0
- 0
- 0
-
-
- 3691
- 1000
- 0
- 0
- 0
-
-
- 3692
- 1
- 0
- 0
- 0
-
-
- 3693
- 1
- 0
- 0
- 0
-
-
- 3694
- 1
- 0
- 0
- 0
-
-
- 3695
- 1
- 0
- 0
- 0
-
-
- 3696
- 4
- 0
- 0
- 0
-
-
- 3697
- 4
- 0
- 0
- 0
-
-
- 3698
- 1
- 0
- 0
- 0
-
-
- 3699
- 1
- 0
- 0
- 0
-
-
- 3700
- 1
- 0
- 0
- 0
-
-
- 3701
- 1
- 0
- 0
- 0
-
-
- 3702
- 1
- 0
- 0
- 0
-
-
- 3703
- 1
- 0
- 0
- 0
-
-
- 3704
- 1
- 0
- 0
- 0
-
-
- 3705
- 1
- 0
- 0
- 0
-
-
- 3706
- 1
- 0
- 0
- 0
-
-
- 3707
- 1
- 0
- 0
- 0
-
-
- 3708
- 1
- 0
- 0
- 0
-
-
- 3709
- 1
- 0
- 0
- 0
-
-
- 3710
- 1
- 0
- 0
- 0
-
-
- 3711
- 1
- 0
- 0
- 0
-
-
- 3712
- 1
- 0
- 0
- 0
-
-
- 3713
- 1
- 0
- 0
- 0
-
-
- 3714
- 1
- 0
- 0
- 0
-
-
- 3715
- 1
- 0
- 0
- 0
-
-
- 3716
- 1
- 0
- 0
- 0
-
-
- 3717
- 1
- 0
- 0
- 0
-
-
- 3718
- 3
- 0
- 0
- 0
-
-
- 3719
- 1
- 0
- 0
- 0
-
-
- 3720
- 1
- 0
- 0
- 0
-
-
- 3721
- 2
- 0
- 0
- 0
-
-
- 3722
- 1
- 0
- 0
- 0
-
-
- 3723
- 1
- 0
- 0
- 0
-
-
- 3724
- 1
- 0
- 0
- 0
-
-
- 3725
- 1
- 0
- 0
- 0
-
-
- 3726
- 1
- 0
- 0
- 0
-
-
- 3727
- 1
- 0
- 0
- 0
-
-
- 3728
- 1
- 0
- 0
- 0
-
-
- 3729
- 1
- 0
- 0
- 0
-
-
- 3730
- 1
- 0
- 0
- 0
-
-
- 3731
- 1
- 0
- 0
- 0
-
-
- 3732
- 1
- 0
- 0
- 0
-
-
- 3733
- 1
- 0
- 0
- 0
-
-
- 3734
- 1
- 0
- 0
- 0
-
-
- 3735
- 1
- 0
- 0
- 0
-
-
- 3736
- 1
- 0
- 0
- 0
-
-
- 3737
- 1
- 0
- 0
- 0
-
-
- 3738
- 1
- 0
- 0
- 0
-
-
- 3739
- 1
- 0
- 0
- 0
-
-
- 3740
- 1
- 0
- 0
- 0
-
-
- 3741
- 1
- 0
- 0
- 0
-
-
- 3742
- 1
- 0
- 0
- 0
-
-
- 3743
- 1
- 0
- 0
- 0
-
-
- 3744
- 1
- 0
- 0
- 0
-
-
- 3745
- 1
- 0
- 0
- 0
-
-
- 3746
- 1
- 0
- 0
- 0
-
-
- 3747
- 1
- 0
- 0
- 0
-
-
- 3748
- 6500
- 0
- 0
- 0
-
-
- 3749
- 78000
- 0
- 0
- 0
-
-
- 3750
- 78000
- 0
- 0
- 0
-
-
- 3751
- 78000
- 0
- 0
- 0
-
-
- 3752
- 78000
- 0
- 0
- 0
-
-
- 3753
- 78000
- 0
- 0
- 0
-
-
- 3754
- 78000
- 0
- 0
- 0
-
-
- 3755
- 78000
- 0
- 0
- 0
-
-
- 3756
- 78000
- 0
- 0
- 0
-
-
- 3757
- 5000
- 0
- 0
- 0
-
-
- 3758
- 5000
- 0
- 0
- 0
-
-
- 3759
- 325
- 0
- 0
- 0
-
-
- 3760
- 325
- 0
- 0
- 0
-
-
- 3761
- 325
- 0
- 0
- 0
-
-
- 3762
- 325
- 0
- 0
- 0
-
-
- 3763
- 325
- 0
- 0
- 0
-
-
- 3764
- 325
- 0
- 0
- 0
-
-
- 3765
- 325
- 0
- 0
- 0
-
-
- 3766
- 325
- 0
- 0
- 0
-
-
- 3767
- 325
- 0
- 0
- 0
-
-
- 3768
- 325
- 0
- 0
- 0
-
-
- 3769
- 325
- 0
- 0
- 0
-
-
- 3770
- 325
- 0
- 0
- 0
-
-
- 3771
- 325
- 0
- 0
- 0
-
-
- 3772
- 325
- 0
- 0
- 0
-
-
- 3773
- 325
- 0
- 0
- 0
-
-
- 3774
- 325
- 0
- 0
- 0
-
-
- 3775
- 325
- 0
- 0
- 0
-
-
- 3776
- 325
- 0
- 0
- 0
-
-
- 3777
- 325
- 0
- 0
- 0
-
-
- 3778
- 325
- 0
- 0
- 0
-
-
- 3779
- 325
- 0
- 0
- 0
-
-
- 3780
- 325
- 0
- 0
- 0
-
-
- 3781
- 325
- 0
- 0
- 0
-
-
- 3782
- 325
- 0
- 0
- 0
-
-
- 3783
- 325
- 0
- 0
- 0
-
-
- 3784
- 325
- 0
- 0
- 0
-
-
- 3785
- 325
- 0
- 0
- 0
-
-
- 3786
- 325
- 0
- 0
- 0
-
-
- 3787
- 325
- 0
- 0
- 0
-
-
- 3788
- 325
- 0
- 0
- 0
-
-
- 3789
- 325
- 0
- 0
- 0
-
-
- 3790
- 325
- 0
- 0
- 0
-
-
- 3791
- 650
- 0
- 0
- 0
-
-
- 3792
- 650
- 0
- 0
- 0
-
-
- 3793
- 650
- 0
- 0
- 0
-
-
- 3794
- 650
- 0
- 0
- 0
-
-
- 3795
- 650
- 0
- 0
- 0
-
-
- 3796
- 650
- 0
- 0
- 0
-
-
- 3797
- 650
- 0
- 0
- 0
-
-
- 3798
- 650
- 0
- 0
- 0
-
-
- 3799
- 650
- 0
- 0
- 0
-
-
- 3800
- 650
- 0
- 0
- 0
-
-
- 3801
- 325
- 0
- 0
- 0
-
-
- 3802
- 325
- 0
- 0
- 0
-
-
- 3803
- 26
- 0
- 0
- 0
-
-
- 3804
- 26
- 0
- 0
- 0
-
-
- 3805
- 5
- 0
- 0
- 0
-
-
- 3806
- 5
- 0
- 0
- 0
-
-
- 3807
- 1
- 0
- 0
- 0
-
-
- 3808
- 1
- 0
- 0
- 0
-
-
- 3809
- 1
- 0
- 0
- 0
-
-
- 3810
- 1
- 0
- 0
- 0
-
-
- 3811
- 1
- 0
- 0
- 0
-
-
- 3812
- 1
- 0
- 0
- 0
-
-
- 3813
- 1
- 0
- 0
- 0
-
-
- 3814
- 1
- 0
- 0
- 0
-
-
- 3815
- 1
- 0
- 0
- 0
-
-
- 3816
- 1
- 0
- 0
- 0
-
-
- 3817
- 1
- 0
- 0
- 0
-
-
- 3818
- 1
- 0
- 0
- 0
-
-
- 3819
- 1
- 0
- 0
- 0
-
-
- 3820
- 1
- 0
- 0
- 0
-
-
- 3821
- 1
- 0
- 0
- 0
-
-
- 3822
- 1
- 0
- 0
- 0
-
-
- 3823
- 1
- 0
- 0
- 0
-
-
- 3824
- 1
- 0
- 0
- 0
-
-
- 3825
- 1
- 0
- 0
- 0
-
-
- 3826
- 1
- 0
- 0
- 0
-
-
- 3827
- 200
- 0
- 0
- 0
-
-
- 3828
- 200
- 0
- 0
- 0
-
-
- 3829
- 200
- 0
- 0
- 0
-
-
- 3830
- 200
- 0
- 0
- 0
-
-
- 3831
- 200
- 0
- 0
- 0
-
-
- 3832
- 200
- 0
- 0
- 0
-
-
- 3833
- 200
- 0
- 0
- 0
-
-
- 3834
- 200
- 0
- 0
- 0
-
-
- 3835
- 200
- 0
- 0
- 0
-
-
- 3836
- 200
- 0
- 0
- 0
-
-
- 3837
- 200
- 0
- 0
- 0
-
-
- 3838
- 200
- 0
- 0
- 0
-
-
- 3839
- 200
- 0
- 0
- 0
-
-
- 3840
- 200
- 0
- 0
- 0
-
-
- 3841
- 200
- 0
- 0
- 0
-
-
- 3842
- 200
- 0
- 0
- 0
-
-
- 3843
- 200
- 0
- 0
- 0
-
-
- 3844
- 200
- 0
- 0
- 0
-
-
- 3845
- 1
- 0
- 0
- 0
-
-
- 3846
- 1
- 0
- 0
- 0
-
-
- 3847
- 1
- 0
- 0
- 0
-
-
- 3848
- 1
- 0
- 0
- 0
-
-
- 3849
- 1
- 0
- 0
- 0
-
-
- 3850
- 1
- 0
- 0
- 0
-
-
- 3851
- 1
- 0
- 0
- 0
-
-
- 3852
- 200
- 0
- 0
- 0
-
-
- 3853
- 1050
- 0
- 0
- 0
-
-
- 3854
- 1050
- 0
- 0
- 0
-
-
- 3855
- 1050
- 0
- 0
- 0
-
-
- 3856
- 1050
- 0
- 0
- 0
-
-
- 3857
- 1050
- 0
- 0
- 0
-
-
- 3858
- 1050
- 0
- 0
- 0
-
-
- 3859
- 1050
- 0
- 0
- 0
-
-
- 3860
- 1050
- 0
- 0
- 0
-
-
- 3861
- 1050
- 0
- 0
- 0
-
-
- 3862
- 1050
- 0
- 0
- 0
-
-
- 3863
- 1050
- 0
- 0
- 0
-
-
- 3864
- 1050
- 0
- 0
- 0
-
-
- 3865
- 1050
- 0
- 0
- 0
-
-
- 3866
- 1050
- 0
- 0
- 0
-
-
- 3867
- 1050
- 0
- 0
- 0
-
-
- 3868
- 1050
- 0
- 0
- 0
-
-
- 3869
- 1
- 0
- 0
- 0
-
-
- 3870
- 1
- 0
- 0
- 0
-
-
- 3871
- 1
- 0
- 0
- 0
-
-
- 3872
- 1
- 0
- 0
- 0
-
-
- 3873
- 1
- 0
- 0
- 0
-
-
- 3874
- 1
- 0
- 0
- 0
-
-
- 3875
- 1
- 0
- 0
- 0
-
-
- 3876
- 1
- 0
- 0
- 0
-
-
- 3877
- 1
- 0
- 0
- 0
-
-
- 3878
- 1
- 0
- 0
- 0
-
-
- 3879
- 1
- 0
- 0
- 0
-
-
- 3880
- 1
- 0
- 0
- 0
-
-
- 3881
- 1
- 0
- 0
- 0
-
-
- 3882
- 1
- 0
- 0
- 0
-
-
- 3883
- 1
- 0
- 0
- 0
-
-
- 3884
- 1
- 0
- 0
- 0
-
-
- 3885
- 1
- 0
- 0
- 0
-
-
- 3886
- 1
- 0
- 0
- 0
-
-
- 3887
- 1
- 0
- 0
- 0
-
-
- 3888
- 1
- 0
- 0
- 0
-
-
- 3889
- 1
- 0
- 0
- 0
-
-
- 3890
- 1
- 0
- 0
- 0
-
-
- 3891
- 1
- 0
- 0
- 0
-
-
- 3892
- 1
- 0
- 0
- 0
-
-
- 3893
- 800
- 0
- 0
- 0
-
-
- 3894
- 1
- 0
- 0
- 0
-
-
- 3895
- 1
- 0
- 0
- 0
-
-
- 3896
- 1
- 0
- 0
- 0
-
-
- 3897
- 1
- 0
- 0
- 0
-
-
- 3898
- 1
- 0
- 0
- 0
-
-
- 3899
- 15
- 0
- 0
- 0
-
-
- 3900
- 1
- 0
- 0
- 0
-
-
- 3901
- 1
- 0
- 0
- 0
-
-
- 3902
- 1
- 0
- 0
- 0
-
-
- 3903
- 1
- 0
- 0
- 0
-
-
- 3904
- 1
- 0
- 0
- 0
-
-
- 3905
- 1
- 0
- 0
- 0
-
-
- 3906
- 1
- 0
- 0
- 0
-
-
- 3907
- 1
- 0
- 0
- 0
-
-
- 3908
- 1
- 0
- 0
- 0
-
-
- 3909
- 1
- 0
- 0
- 0
-
-
- 3910
- 1
- 0
- 0
- 0
-
-
- 3911
- 1
- 0
- 0
- 0
-
-
- 3912
- 1
- 0
- 0
- 0
-
-
- 3913
- 1
- 0
- 0
- 0
-
-
- 3914
- 1
- 0
- 0
- 0
-
-
- 3915
- 1
- 0
- 0
- 0
-
-
- 3916
- 1
- 0
- 0
- 0
-
-
- 3917
- 1
- 0
- 0
- 0
-
-
- 3918
- 1
- 0
- 0
- 0
-
-
- 3919
- 1
- 0
- 0
- 0
-
-
- 3920
- 1
- 0
- 0
- 0
-
-
- 3921
- 1
- 0
- 0
- 0
-
-
- 3922
- 1
- 0
- 0
- 0
-
-
- 3923
- 1
- 0
- 0
- 0
-
-
- 3924
- 1
- 0
- 0
- 0
-
-
- 3925
- 1
- 0
- 0
- 0
-
-
- 3926
- 1
- 0
- 0
- 0
-
-
- 3927
- 1
- 0
- 0
- 0
-
-
- 3928
- 1
- 0
- 0
- 0
-
-
- 3929
- 1
- 0
- 0
- 0
-
-
- 3930
- 1
- 0
- 0
- 0
-
-
- 3931
- 1
- 0
- 0
- 0
-
-
- 3932
- 1
- 0
- 0
- 0
-
-
- 3933
- 1
- 0
- 0
- 0
-
-
- 3934
- 1
- 0
- 0
- 0
-
-
- 3935
- 1
- 0
- 0
- 0
-
-
- 3936
- 1
- 0
- 0
- 0
-
-
- 3937
- 1
- 0
- 0
- 0
-
-
- 3938
- 1
- 0
- 0
- 0
-
-
- 3939
- 1
- 0
- 0
- 0
-
-
- 3940
- 1
- 0
- 0
- 0
-
-
- 3941
- 1
- 0
- 0
- 0
-
-
- 3942
- 1
- 0
- 0
- 0
-
-
- 3943
- 1
- 0
- 0
- 0
-
-
- 3944
- 1
- 0
- 0
- 0
-
-
- 3945
- 1
- 0
- 0
- 0
-
-
- 3946
- 1
- 0
- 0
- 0
-
-
- 3947
- 1
- 0
- 0
- 0
-
-
- 3948
- 1
- 0
- 0
- 0
-
-
- 3949
- 1
- 0
- 0
- 0
-
-
- 3950
- 1
- 0
- 0
- 0
-
-
- 3951
- 1
- 0
- 0
- 0
-
-
- 3952
- 1
- 0
- 0
- 0
-
-
- 3953
- 1
- 0
- 0
- 0
-
-
- 3954
- 1
- 0
- 0
- 0
-
-
- 3955
- 1
- 0
- 0
- 0
-
-
- 3956
- 1
- 0
- 0
- 0
-
-
- 3957
- 1
- 0
- 0
- 0
-
-
- 3958
- 1
- 0
- 0
- 0
-
-
- 3959
- 1
- 0
- 0
- 0
-
-
- 3960
- 1
- 0
- 0
- 0
-
-
- 3961
- 1
- 0
- 0
- 0
-
-
- 3962
- 1
- 0
- 0
- 0
-
-
- 3963
- 1
- 0
- 0
- 0
-
-
- 3964
- 1
- 0
- 0
- 0
-
-
- 3965
- 1
- 0
- 0
- 0
-
-
- 3966
- 1
- 0
- 0
- 0
-
-
- 3967
- 1
- 0
- 0
- 0
-
-
- 3968
- 1
- 0
- 0
- 0
-
-
- 3969
- 1
- 0
- 0
- 0
-
-
- 3970
- 1
- 0
- 0
- 0
-
-
- 3971
- 1
- 0
- 0
- 0
-
-
- 3972
- 1
- 0
- 0
- 0
-
-
- 3973
- 1
- 0
- 0
- 0
-
-
- 3974
- 1
- 0
- 0
- 0
-
-
- 3975
- 1
- 0
- 0
- 0
-
-
- 3976
- 1
- 0
- 0
- 0
-
-
- 3977
- 1
- 0
- 0
- 0
-
-
- 3978
- 1
- 0
- 0
- 0
-
-
- 3979
- 1
- 0
- 0
- 0
-
-
- 3980
- 1
- 0
- 0
- 0
-
-
- 3981
- 1
- 0
- 0
- 0
-
-
- 3982
- 1
- 0
- 0
- 0
-
-
- 3983
- 1
- 0
- 0
- 0
-
-
- 3984
- 1
- 0
- 0
- 0
-
-
- 3985
- 1
- 0
- 0
- 0
-
-
- 3986
- 1
- 0
- 0
- 0
-
-
- 3987
- 1
- 0
- 0
- 0
-
-
- 3988
- 1
- 0
- 0
- 0
-
-
- 3989
- 1
- 0
- 0
- 0
-
-
- 3990
- 1
- 0
- 0
- 0
-
-
- 3991
- 1
- 0
- 0
- 0
-
-
- 3992
- 1
- 0
- 0
- 0
-
-
- 3993
- 1
- 0
- 0
- 0
-
-
- 3994
- 1
- 0
- 0
- 0
-
-
- 3995
- 1
- 0
- 0
- 0
-
-
- 3996
- 1
- 0
- 0
- 0
-
-
- 3997
- 1
- 0
- 0
- 0
-
-
- 3998
- 1
- 0
- 0
- 0
-
-
- 3999
- 1
- 0
- 0
- 0
-
-
- 4000
- 1
- 0
- 0
- 0
-
-
- 4001
- 5
- 0
- 0
- 0
-
-
- 4002
- 1
- 0
- 0
- 0
-
-
- 4003
- 1
- 0
- 0
- 0
-
-
- 4004
- 1
- 0
- 0
- 0
-
-
- 4005
- 1
- 0
- 0
- 0
-
-
- 4006
- 10
- 0
- 0
- 0
-
-
- 4007
- 800
- 0
- 0
- 0
-
-
- 4008
- 3
- 0
- 0
- 0
-
-
- 4009
- 3
- 0
- 0
- 0
-
-
- 4010
- 3
- 0
- 0
- 0
-
-
- 4011
- 1
- 0
- 0
- 0
-
-
- 4012
- 3
- 0
- 0
- 0
-
-
- 4013
- 1
- 0
- 0
- 0
-
-
- 4014
- 50
- 0
- 0
- 0
-
-
- 4015
- 1
- 0
- 0
- 0
-
-
- 4016
- 300
- 0
- 0
- 0
-
-
- 4017
- 1
- 0
- 0
- 0
-
-
- 4018
- 10
- 0
- 0
- 0
-
-
- 4019
- 1
- 0
- 0
- 0
-
-
- 4020
- 10
- 0
- 0
- 0
-
-
- 4021
- 550
- 0
- 0
- 0
-
-
- 4022
- 500
- 0
- 0
- 0
-
-
- 4023
- 1000
- 0
- 0
- 0
-
-
- 4024
- 3000
- 0
- 0
- 0
-
-
- 4025
- 6000
- 0
- 0
- 0
-
-
- 4026
- 1000
- 0
- 0
- 0
-
-
- 4027
- 1500
- 0
- 0
- 0
-
-
- 4028
- 10000
- 0
- 0
- 0
-
-
- 4029
- 500
- 0
- 0
- 0
-
-
- 4030
- 2000
- 0
- 0
- 0
-
-
- 4031
- 500
- 0
- 0
- 0
-
-
- 4032
- 1
- 0
- 0
- 0
-
-
- 4033
- 1
- 0
- 0
- 0
-
-
- 4034
- 1
- 0
- 0
- 0
-
-
- 4035
- 1
- 0
- 0
- 0
-
-
- 4036
- 1
- 0
- 0
- 0
-
-
- 4037
- 1
- 0
- 0
- 0
-
-
- 4038
- 1
- 0
- 0
- 0
-
-
- 4039
- 1
- 0
- 0
- 0
-
-
- 4040
- 1
- 0
- 0
- 0
-
-
- 4041
- 1
- 0
- 0
- 0
-
-
- 4042
- 1
- 0
- 0
- 0
-
-
- 4043
- 1
- 0
- 0
- 0
-
-
- 4044
- 1
- 0
- 0
- 0
-
-
- 4045
- 1
- 0
- 0
- 0
-
-
- 4046
- 1
- 0
- 0
- 0
-
-
- 4047
- 1
- 0
- 0
- 0
-
-
- 4048
- 1
- 0
- 0
- 0
-
-
- 4049
- 1
- 0
- 0
- 0
-
-
- 4050
- 1
- 0
- 0
- 0
-
-
- 4051
- 1
- 0
- 0
- 0
-
-
- 4052
- 1
- 0
- 0
- 0
-
-
- 4053
- 1
- 0
- 0
- 0
-
-
- 4054
- 1
- 0
- 0
- 0
-
-
- 4055
- 5
- 0
- 0
- 0
-
-
- 4056
- 1
- 0
- 0
- 0
-
-
- 4057
- 1
- 0
- 0
- 0
-
-
- 4058
- 1
- 0
- 0
- 0
-
-
- 4059
- 1
- 0
- 0
- 0
-
-
- 4060
- 1
- 0
- 0
- 0
-
-
- 4061
- 1
- 0
- 0
- 0
-
-
- 4062
- 1
- 0
- 0
- 0
-
-
- 4063
- 1
- 0
- 0
- 0
-
-
- 4064
- 1
- 0
- 0
- 0
-
-
- 4065
- 1
- 0
- 0
- 0
-
-
- 4066
- 1
- 0
- 0
- 0
-
-
- 4067
- 1
- 0
- 0
- 0
-
-
- 4068
- 500
- 0
- 0
- 0
-
-
- 4069
- 2000
- 0
- 0
- 0
-
-
- 4070
- 1000
- 0
- 0
- 0
-
-
- 4071
- 300
- 0
- 0
- 0
-
-
- 4072
- 850
- 0
- 0
- 0
-
-
- 4073
- 1
- 0
- 0
- 0
-
-
- 4074
- 1
- 0
- 0
- 0
-
-
- 4075
- 1
- 0
- 0
- 0
-
-
- 4076
- 1
- 0
- 0
- 0
-
-
- 4077
- 1
- 0
- 0
- 0
-
-
- 4078
- 1
- 0
- 0
- 0
-
-
- 4079
- 10
- 0
- 0
- 0
-
-
- 4080
- 1
- 0
- 0
- 0
-
-
- 4081
- 1
- 0
- 0
- 0
-
-
- 4082
- 1
- 0
- 0
- 0
-
-
- 4083
- 150
- 0
- 0
- 0
-
-
- 4084
- 175
- 0
- 0
- 0
-
-
- 4085
- 15
- 0
- 0
- 0
-
-
- 4086
- 5
- 0
- 0
- 0
-
-
- 4087
- 270000
- 0
- 0
- 0
-
-
- 4088
- 270000
- 0
- 0
- 0
-
-
- 4089
- 15000
- 0
- 0
- 0
-
-
- 4090
- 15000
- 0
- 0
- 0
-
-
- 4091
- 120000
- 0
- 0
- 0
-
-
- 4092
- 120000
- 0
- 0
- 0
-
-
- 4093
- 80000
- 0
- 0
- 0
-
-
- 4094
- 80000
- 0
- 0
- 0
-
-
- 4095
- 10000
- 0
- 0
- 0
-
-
- 4096
- 10000
- 0
- 0
- 0
-
-
- 4097
- 10000
- 0
- 0
- 0
-
-
- 4098
- 10000
- 0
- 0
- 0
-
-
- 4099
- 15000
- 0
- 0
- 0
-
-
- 4100
- 15000
- 0
- 0
- 0
-
-
- 4101
- 120000
- 0
- 0
- 0
-
-
- 4102
- 120000
- 0
- 0
- 0
-
-
- 4103
- 80000
- 0
- 0
- 0
-
-
- 4104
- 80000
- 0
- 0
- 0
-
-
- 4105
- 10000
- 0
- 0
- 0
-
-
- 4106
- 10000
- 0
- 0
- 0
-
-
- 4107
- 10000
- 0
- 0
- 0
-
-
- 4108
- 10000
- 0
- 0
- 0
-
-
- 4109
- 15000
- 0
- 0
- 0
-
-
- 4110
- 15000
- 0
- 0
- 0
-
-
- 4111
- 120000
- 0
- 0
- 0
-
-
- 4112
- 120000
- 0
- 0
- 0
-
-
- 4113
- 80000
- 0
- 0
- 0
-
-
- 4114
- 80000
- 0
- 0
- 0
-
-
- 4115
- 10000
- 0
- 0
- 0
-
-
- 4116
- 10000
- 0
- 0
- 0
-
-
- 4117
- 10000
- 0
- 0
- 0
-
-
- 4118
- 10000
- 0
- 0
- 0
-
-
- 4119
- 24
- 0
- 0
- 0
-
-
- 4120
- 24
- 0
- 0
- 0
-
-
- 4121
- 84
- 0
- 0
- 0
-
-
- 4122
- 84
- 0
- 0
- 0
-
-
- 4123
- 300
- 0
- 0
- 0
-
-
- 4124
- 300
- 0
- 0
- 0
-
-
- 4125
- 576
- 0
- 0
- 0
-
-
- 4126
- 576
- 0
- 0
- 0
-
-
- 4127
- 780
- 0
- 0
- 0
-
-
- 4128
- 780
- 0
- 0
- 0
-
-
- 4129
- 1920
- 0
- 0
- 0
-
-
- 4130
- 1920
- 0
- 0
- 0
-
-
- 4131
- 12500
- 0
- 0
- 0
-
-
- 4132
- 12500
- 0
- 0
- 0
-
-
- 4133
- 1
- 0
- 0
- 0
-
-
- 4134
- 1
- 0
- 0
- 0
-
-
- 4135
- 1
- 0
- 0
- 0
-
-
- 4136
- 1
- 0
- 0
- 0
-
-
- 4137
- 1
- 0
- 0
- 0
-
-
- 4138
- 1
- 0
- 0
- 0
-
-
- 4139
- 1
- 0
- 0
- 0
-
-
- 4140
- 1
- 0
- 0
- 0
-
-
- 4141
- 1
- 0
- 0
- 0
-
-
- 4142
- 1
- 0
- 0
- 0
-
-
- 4143
- 1
- 0
- 0
- 0
-
-
- 4144
- 1
- 0
- 0
- 0
-
-
- 4145
- 1
- 0
- 0
- 0
-
-
- 4146
- 1
- 0
- 0
- 0
-
-
- 4147
- 1
- 0
- 0
- 0
-
-
- 4148
- 1
- 0
- 0
- 0
-
-
- 4149
- 1
- 0
- 0
- 0
-
-
- 4150
- 1
- 0
- 0
- 0
-
-
- 4151
- 120001
- 0
- 0
- 0
-
-
- 4152
- 120001
- 0
- 0
- 0
-
-
- 4153
- 50000
- 0
- 0
- 0
-
-
- 4154
- 50000
- 0
- 0
- 0
-
-
- 4155
- 1
- 0
- 0
- 0
-
-
- 4156
- 5000
- 0
- 0
- 0
-
-
- 4157
- 5000
- 0
- 0
- 0
-
-
- 4158
- 31000
- 0
- 0
- 0
-
-
- 4159
- 31000
- 0
- 0
- 0
-
-
- 4160
- 90
- 0
- 0
- 0
-
-
- 4161
- 10
- 0
- 0
- 0
-
-
- 4162
- 500
- 0
- 0
- 0
-
-
- 4163
- 500
- 0
- 0
- 0
-
-
- 4164
- 200
- 0
- 0
- 0
-
-
- 4165
- 200
- 0
- 0
- 0
-
-
- 4166
- 200
- 0
- 0
- 0
-
-
- 4167
- 200
- 0
- 0
- 0
-
-
- 4168
- 200
- 0
- 0
- 0
-
-
- 4169
- 200
- 0
- 0
- 0
-
-
- 4170
- 21000
- 0
- 0
- 0
-
-
- 4171
- 21000
- 0
- 0
- 0
-
-
- 4172
- 1
- 0
- 0
- 0
-
-
- 4173
- 1
- 0
- 0
- 0
-
-
- 4174
- 1
- 0
- 0
- 0
-
-
- 4175
- 1
- 0
- 0
- 0
-
-
- 4176
- 1
- 0
- 0
- 0
-
-
- 4177
- 1
- 0
- 0
- 0
-
-
- 4178
- 6
- 0
- 0
- 0
-
-
- 4179
- 1
- 0
- 0
- 0
-
-
- 4180
- 6
- 0
- 0
- 0
-
-
- 4181
- 1
- 0
- 0
- 0
-
-
- 4182
- 6
- 0
- 0
- 0
-
-
- 4183
- 1
- 0
- 0
- 0
-
-
- 4184
- 1
- 0
- 0
- 0
-
-
- 4185
- 1
- 0
- 0
- 0
-
-
- 4186
- 1
- 0
- 0
- 0
-
-
- 4187
- 1
- 0
- 0
- 0
-
-
- 4188
- 1
- 0
- 0
- 0
-
-
- 4189
- 1
- 0
- 0
- 0
-
-
- 4190
- 1
- 0
- 0
- 0
-
-
- 4191
- 1
- 0
- 0
- 0
-
-
- 4192
- 1
- 0
- 0
- 0
-
-
- 4193
- 1
- 0
- 0
- 0
-
-
- 4194
- 1
- 0
- 0
- 0
-
-
- 4195
- 1
- 0
- 0
- 0
-
-
- 4196
- 1
- 0
- 0
- 0
-
-
- 4197
- 1
- 0
- 0
- 0
-
-
- 4198
- 1
- 0
- 0
- 0
-
-
- 4199
- 1
- 0
- 0
- 0
-
-
- 4200
- 1
- 0
- 0
- 0
-
-
- 4201
- 1
- 0
- 0
- 0
-
-
- 4202
- 1
- 0
- 0
- 0
-
-
- 4203
- 1
- 0
- 0
- 0
-
-
- 4204
- 1
- 0
- 0
- 0
-
-
- 4205
- 1
- 0
- 0
- 0
-
-
- 4206
- 1
- 0
- 0
- 0
-
-
- 4207
- 1
- 0
- 0
- 0
-
-
- 4208
- 1
- 0
- 0
- 0
-
-
- 4209
- 2
- 0
- 0
- 0
-
-
- 4210
- 1
- 0
- 0
- 0
-
-
- 4211
- 1
- 0
- 0
- 0
-
-
- 4212
- 900000
- 0
- 0
- 0
-
-
- 4213
- 900000
- 0
- 0
- 0
-
-
- 4214
- 900000
- 0
- 0
- 0
-
-
- 4215
- 800000
- 0
- 0
- 0
-
-
- 4216
- 700000
- 0
- 0
- 0
-
-
- 4217
- 600000
- 0
- 0
- 0
-
-
- 4218
- 500000
- 0
- 0
- 0
-
-
- 4219
- 400000
- 0
- 0
- 0
-
-
- 4220
- 300000
- 0
- 0
- 0
-
-
- 4221
- 200000
- 0
- 0
- 0
-
-
- 4222
- 100000
- 0
- 0
- 0
-
-
- 4223
- 50000
- 0
- 0
- 0
-
-
- 4224
- 800000
- 0
- 0
- 0
-
-
- 4225
- 750000
- 0
- 0
- 0
-
-
- 4226
- 670000
- 0
- 0
- 0
-
-
- 4227
- 590000
- 0
- 0
- 0
-
-
- 4228
- 510000
- 0
- 0
- 0
-
-
- 4229
- 430000
- 0
- 0
- 0
-
-
- 4230
- 350000
- 0
- 0
- 0
-
-
- 4231
- 270000
- 0
- 0
- 0
-
-
- 4232
- 190000
- 0
- 0
- 0
-
-
- 4233
- 100000
- 0
- 0
- 0
-
-
- 4234
- 25000
- 0
- 0
- 0
-
-
- 4235
- 800000
- 0
- 0
- 0
-
-
- 4236
- 160
- 0
- 0
- 0
-
-
- 4237
- 4
- 0
- 0
- 0
-
-
- 4238
- 1
- 0
- 0
- 0
-
-
- 4239
- 4
- 0
- 0
- 0
-
-
- 4240
- 4
- 0
- 0
- 0
-
-
- 4241
- 3
- 0
- 0
- 0
-
-
- 4242
- 10
- 0
- 0
- 0
-
-
- 4243
- 10
- 0
- 0
- 0
-
-
- 4244
- 2
- 0
- 0
- 0
-
-
- 4245
- 10
- 0
- 0
- 0
-
-
- 4246
- 10
- 0
- 0
- 0
-
-
- 4247
- 1
- 0
- 0
- 0
-
-
- 4248
- 1
- 0
- 0
- 0
-
-
- 4249
- 1
- 0
- 0
- 0
-
-
- 4250
- 35
- 0
- 0
- 0
-
-
- 4251
- 1
- 0
- 0
- 0
-
-
- 4252
- 1
- 0
- 0
- 0
-
-
- 4253
- 1
- 0
- 0
- 0
-
-
- 4254
- 1
- 0
- 0
- 0
-
-
- 4255
- 1
- 0
- 0
- 0
-
-
- 4256
- 1
- 0
- 0
- 0
-
-
- 4257
- 1
- 0
- 0
- 0
-
-
- 4258
- 1
- 0
- 0
- 0
-
-
- 4259
- 1
- 0
- 0
- 0
-
-
- 4260
- 1
- 0
- 0
- 0
-
-
- 4261
- 1
- 0
- 0
- 0
-
-
- 4262
- 1
- 0
- 0
- 0
-
-
- 4263
- 1
- 0
- 0
- 0
-
-
- 4264
- 1
- 0
- 0
- 0
-
-
- 4265
- 1
- 0
- 0
- 0
-
-
- 4266
- 1
- 0
- 0
- 0
-
-
- 4267
- 1
- 0
- 0
- 0
-
-
- 4268
- 1
- 0
- 0
- 0
-
-
- 4269
- 1
- 0
- 0
- 0
-
-
- 4270
- 1
- 0
- 0
- 0
-
-
- 4271
- 1
- 0
- 0
- 0
-
-
- 4272
- 1
- 0
- 0
- 0
-
-
- 4273
- 1
- 0
- 0
- 0
-
-
- 4274
- 1
- 0
- 0
- 0
-
-
- 4275
- 1
- 0
- 0
- 0
-
-
- 4276
- 1
- 0
- 0
- 0
-
-
- 4277
- 1
- 0
- 0
- 0
-
-
- 4278
- 1
- 0
- 0
- 0
-
-
- 4279
- 1
- 0
- 0
- 0
-
-
- 4280
- 1
- 0
- 0
- 0
-
-
- 4281
- 1
- 0
- 0
- 0
-
-
- 4282
- 1
- 0
- 0
- 0
-
-
- 4283
- 1
- 0
- 0
- 0
-
-
- 4284
- 1
- 0
- 0
- 0
-
-
- 4285
- 1
- 0
- 0
- 0
-
-
- 4286
- 1
- 0
- 0
- 0
-
-
- 4287
- 1
- 0
- 0
- 0
-
-
- 4288
- 1
- 0
- 0
- 0
-
-
- 4289
- 1
- 0
- 0
- 0
-
-
- 4290
- 1
- 0
- 0
- 0
-
-
- 4291
- 4
- 0
- 0
- 0
-
-
- 4292
- 4
- 0
- 0
- 0
-
-
- 4293
- 4
- 0
- 0
- 0
-
-
- 4294
- 4
- 0
- 0
- 0
-
-
- 4295
- 1
- 0
- 0
- 0
-
-
- 4296
- 1
- 0
- 0
- 0
-
-
- 4297
- 1
- 0
- 0
- 0
-
-
- 4298
- 75
- 0
- 0
- 0
-
-
- 4299
- 75
- 0
- 0
- 0
-
-
- 4300
- 75
- 0
- 0
- 0
-
-
- 4301
- 75
- 0
- 0
- 0
-
-
- 4302
- 75
- 0
- 0
- 0
-
-
- 4303
- 75
- 0
- 0
- 0
-
-
- 4304
- 75
- 0
- 0
- 0
-
-
- 4305
- 75
- 0
- 0
- 0
-
-
- 4306
- 75
- 0
- 0
- 0
-
-
- 4307
- 75
- 0
- 0
- 0
-
-
- 4308
- 75
- 0
- 0
- 0
-
-
- 4309
- 75
- 0
- 0
- 0
-
-
- 4310
- 75
- 0
- 0
- 0
-
-
- 4311
- 75
- 0
- 0
- 0
-
-
- 4312
- 1
- 0
- 0
- 0
-
-
- 4313
- 2
- 0
- 0
- 0
-
-
- 4314
- 1
- 0
- 0
- 0
-
-
- 4315
- 50
- 0
- 0
- 0
-
-
- 4316
- 50
- 0
- 0
- 0
-
-
- 4317
- 50
- 0
- 0
- 0
-
-
- 4318
- 50
- 0
- 0
- 0
-
-
- 4319
- 50
- 0
- 0
- 0
-
-
- 4320
- 50
- 0
- 0
- 0
-
-
- 4321
- 50
- 0
- 0
- 0
-
-
- 4322
- 50
- 0
- 0
- 0
-
-
- 4323
- 50
- 0
- 0
- 0
-
-
- 4324
- 50
- 0
- 0
- 0
-
-
- 4325
- 50
- 0
- 0
- 0
-
-
- 4326
- 50
- 0
- 0
- 0
-
-
- 4327
- 50
- 0
- 0
- 0
-
-
- 4328
- 50
- 0
- 0
- 0
-
-
- 4329
- 50
- 0
- 0
- 0
-
-
- 4330
- 50
- 0
- 0
- 0
-
-
- 4331
- 50
- 0
- 0
- 0
-
-
- 4332
- 50
- 0
- 0
- 0
-
-
- 4333
- 50
- 0
- 0
- 0
-
-
- 4334
- 50
- 0
- 0
- 0
-
-
- 4335
- 50
- 0
- 0
- 0
-
-
- 4336
- 50
- 0
- 0
- 0
-
-
- 4337
- 50
- 0
- 0
- 0
-
-
- 4338
- 50
- 0
- 0
- 0
-
-
- 4339
- 50
- 0
- 0
- 0
-
-
- 4340
- 50
- 0
- 0
- 0
-
-
- 4341
- 50
- 0
- 0
- 0
-
-
- 4342
- 50
- 0
- 0
- 0
-
-
- 4343
- 50
- 0
- 0
- 0
-
-
- 4344
- 50
- 0
- 0
- 0
-
-
- 4345
- 50
- 0
- 0
- 0
-
-
- 4346
- 50
- 0
- 0
- 0
-
-
- 4347
- 50
- 0
- 0
- 0
-
-
- 4348
- 50
- 0
- 0
- 0
-
-
- 4349
- 50
- 0
- 0
- 0
-
-
- 4350
- 50
- 0
- 0
- 0
-
-
- 4351
- 50
- 0
- 0
- 0
-
-
- 4352
- 50
- 0
- 0
- 0
-
-
- 4353
- 50
- 0
- 0
- 0
-
-
- 4354
- 50
- 0
- 0
- 0
-
-
- 4355
- 50
- 0
- 0
- 0
-
-
- 4356
- 50
- 0
- 0
- 0
-
-
- 4357
- 50
- 0
- 0
- 0
-
-
- 4358
- 50
- 0
- 0
- 0
-
-
- 4359
- 50
- 0
- 0
- 0
-
-
- 4360
- 50
- 0
- 0
- 0
-
-
- 4361
- 50
- 0
- 0
- 0
-
-
- 4362
- 50
- 0
- 0
- 0
-
-
- 4363
- 50
- 0
- 0
- 0
-
-
- 4364
- 50
- 0
- 0
- 0
-
-
- 4365
- 50
- 0
- 0
- 0
-
-
- 4366
- 50
- 0
- 0
- 0
-
-
- 4367
- 50
- 0
- 0
- 0
-
-
- 4368
- 50
- 0
- 0
- 0
-
-
- 4369
- 50
- 0
- 0
- 0
-
-
- 4370
- 50
- 0
- 0
- 0
-
-
- 4371
- 50
- 0
- 0
- 0
-
-
- 4372
- 50
- 0
- 0
- 0
-
-
- 4373
- 50
- 0
- 0
- 0
-
-
- 4374
- 50
- 0
- 0
- 0
-
-
- 4375
- 50
- 0
- 0
- 0
-
-
- 4376
- 50
- 0
- 0
- 0
-
-
- 4377
- 50
- 0
- 0
- 0
-
-
- 4378
- 50
- 0
- 0
- 0
-
-
- 4379
- 50
- 0
- 0
- 0
-
-
- 4380
- 50
- 0
- 0
- 0
-
-
- 4381
- 50
- 0
- 0
- 0
-
-
- 4382
- 50
- 0
- 0
- 0
-
-
- 4383
- 50
- 0
- 0
- 0
-
-
- 4384
- 50
- 0
- 0
- 0
-
-
- 4385
- 50
- 0
- 0
- 0
-
-
- 4386
- 50
- 0
- 0
- 0
-
-
- 4387
- 50
- 0
- 0
- 0
-
-
- 4388
- 50
- 0
- 0
- 0
-
-
- 4389
- 50
- 0
- 0
- 0
-
-
- 4390
- 50
- 0
- 0
- 0
-
-
- 4391
- 50
- 0
- 0
- 0
-
-
- 4392
- 50
- 0
- 0
- 0
-
-
- 4393
- 50
- 0
- 0
- 0
-
-
- 4394
- 50
- 0
- 0
- 0
-
-
- 4395
- 50
- 0
- 0
- 0
-
-
- 4396
- 50
- 0
- 0
- 0
-
-
- 4397
- 50
- 0
- 0
- 0
-
-
- 4398
- 50
- 0
- 0
- 0
-
-
- 4399
- 50
- 0
- 0
- 0
-
-
- 4400
- 50
- 0
- 0
- 0
-
-
- 4401
- 50
- 0
- 0
- 0
-
-
- 4402
- 50
- 0
- 0
- 0
-
-
- 4403
- 50
- 0
- 0
- 0
-
-
- 4404
- 50
- 0
- 0
- 0
-
-
- 4405
- 50
- 0
- 0
- 0
-
-
- 4406
- 50
- 0
- 0
- 0
-
-
- 4407
- 50
- 0
- 0
- 0
-
-
- 4408
- 50
- 0
- 0
- 0
-
-
- 4409
- 50
- 0
- 0
- 0
-
-
- 4410
- 50
- 0
- 0
- 0
-
-
- 4411
- 50
- 0
- 0
- 0
-
-
- 4412
- 50
- 0
- 0
- 0
-
-
- 4413
- 50
- 0
- 0
- 0
-
-
- 4414
- 50
- 0
- 0
- 0
-
-
- 4415
- 56
- 0
- 0
- 0
-
-
- 4416
- 100
- 0
- 0
- 0
-
-
- 4417
- 50
- 0
- 0
- 0
-
-
- 4418
- 50
- 0
- 0
- 0
-
-
- 4419
- 50
- 0
- 0
- 0
-
-
- 4420
- 50
- 0
- 0
- 0
-
-
- 4421
- 50
- 0
- 0
- 0
-
-
- 4422
- 50
- 0
- 0
- 0
-
-
- 4423
- 50
- 0
- 0
- 0
-
-
- 4424
- 50
- 0
- 0
- 0
-
-
- 4425
- 1
- 0
- 0
- 0
-
-
- 4426
- 1
- 0
- 0
- 0
-
-
- 4427
- 5
- 0
- 0
- 0
-
-
- 4428
- 50
- 0
- 0
- 0
-
-
- 4429
- 1
- 0
- 0
- 0
-
-
- 4430
- 1
- 0
- 0
- 0
-
-
- 4431
- 1
- 0
- 0
- 0
-
-
- 4432
- 1
- 0
- 0
- 0
-
-
- 4433
- 1
- 0
- 0
- 0
-
-
- 4434
- 1
- 0
- 0
- 0
-
-
- 4435
- 1
- 0
- 0
- 0
-
-
- 4436
- 10
- 0
- 0
- 0
-
-
- 4437
- 10
- 0
- 0
- 0
-
-
- 4438
- 10
- 0
- 0
- 0
-
-
- 4439
- 10
- 0
- 0
- 0
-
-
- 4440
- 15
- 0
- 0
- 0
-
-
- 4441
- 15
- 0
- 0
- 0
-
-
- 4442
- 1
- 0
- 0
- 0
-
-
- 4443
- 1
- 0
- 0
- 0
-
-
- 4444
- 56
- 0
- 0
- 0
-
-
- 4445
- 1
- 0
- 0
- 0
-
-
- 4446
- 1
- 0
- 0
- 0
-
-
- 4447
- 1
- 0
- 0
- 0
-
-
- 4448
- 1
- 0
- 0
- 0
-
-
- 4449
- 1
- 0
- 0
- 0
-
-
- 4450
- 1
- 0
- 0
- 0
-
-
- 4451
- 1
- 0
- 0
- 0
-
-
- 4452
- 1
- 0
- 0
- 0
-
-
- 4453
- 1
- 0
- 0
- 0
-
-
- 4454
- 1
- 0
- 0
- 0
-
-
- 4455
- 1
- 0
- 0
- 0
-
-
- 4456
- 10
- 0
- 0
- 0
-
-
- 4457
- 10
- 0
- 0
- 0
-
-
- 4458
- 10
- 0
- 0
- 0
-
-
- 4459
- 10
- 0
- 0
- 0
-
-
- 4460
- 10
- 0
- 0
- 0
-
-
- 4461
- 10
- 0
- 0
- 0
-
-
- 4462
- 10
- 0
- 0
- 0
-
-
- 4463
- 10
- 0
- 0
- 0
-
-
- 4464
- 10
- 0
- 0
- 0
-
-
- 4465
- 10
- 0
- 0
- 0
-
-
- 4466
- 10
- 0
- 0
- 0
-
-
- 4467
- 10
- 0
- 0
- 0
-
-
- 4468
- 10
- 0
- 0
- 0
-
-
- 4469
- 10
- 0
- 0
- 0
-
-
- 4470
- 15
- 0
- 0
- 0
-
-
- 4471
- 15
- 0
- 0
- 0
-
-
- 4472
- 15
- 0
- 0
- 0
-
-
- 4473
- 15
- 0
- 0
- 0
-
-
- 4474
- 15
- 0
- 0
- 0
-
-
- 4475
- 15
- 0
- 0
- 0
-
-
- 4476
- 15
- 0
- 0
- 0
-
-
- 4477
- 15
- 0
- 0
- 0
-
-
- 4478
- 30
- 0
- 0
- 0
-
-
- 4479
- 30
- 0
- 0
- 0
-
-
- 4480
- 30
- 0
- 0
- 0
-
-
- 4481
- 30
- 0
- 0
- 0
-
-
- 4482
- 30
- 0
- 0
- 0
-
-
- 4483
- 30
- 0
- 0
- 0
-
-
- 4484
- 1
- 0
- 0
- 0
-
-
- 4485
- 1
- 0
- 0
- 0
-
-
- 4486
- 1
- 0
- 0
- 0
-
-
- 4487
- 1
- 0
- 0
- 0
-
-
- 4488
- 1
- 0
- 0
- 0
-
-
- 4489
- 1
- 0
- 0
- 0
-
-
- 4490
- 1
- 0
- 0
- 0
-
-
- 4491
- 1
- 0
- 0
- 0
-
-
- 4492
- 1
- 0
- 0
- 0
-
-
- 4493
- 1
- 0
- 0
- 0
-
-
- 4494
- 1
- 0
- 0
- 0
-
-
- 4495
- 1
- 0
- 0
- 0
-
-
- 4496
- 1
- 0
- 0
- 0
-
-
- 4497
- 1
- 0
- 0
- 0
-
-
- 4498
- 1
- 0
- 0
- 0
-
-
- 4499
- 1
- 0
- 0
- 0
-
-
- 4500
- 1
- 0
- 0
- 0
-
-
- 4501
- 1
- 0
- 0
- 0
-
-
- 4502
- 1
- 0
- 0
- 0
-
-
- 4503
- 1300
- 0
- 0
- 0
-
-
- 4504
- 5200
- 0
- 0
- 0
-
-
- 4505
- 2600
- 0
- 0
- 0
-
-
- 4506
- 780
- 0
- 0
- 0
-
-
- 4507
- 2210
- 0
- 0
- 0
-
-
- 4508
- 3200
- 0
- 0
- 0
-
-
- 4509
- 12800
- 0
- 0
- 0
-
-
- 4510
- 6400
- 0
- 0
- 0
-
-
- 4511
- 1920
- 0
- 0
- 0
-
-
- 4512
- 5440
- 0
- 0
- 0
-
-
- 4513
- 1
- 0
- 0
- 0
-
-
- 4514
- 100
- 0
- 0
- 0
-
-
- 4515
- 1
- 0
- 0
- 0
-
-
- 4516
- 100
- 0
- 0
- 0
-
-
- 4517
- 100
- 0
- 0
- 0
-
-
- 4518
- 100
- 0
- 0
- 0
-
-
- 4519
- 1
- 0
- 0
- 0
-
-
- 4520
- 1
- 0
- 0
- 0
-
-
- 4521
- 1
- 0
- 0
- 0
-
-
- 4522
- 28
- 0
- 0
- 0
-
-
- 4523
- 28
- 0
- 0
- 0
-
-
- 4524
- 28
- 0
- 0
- 0
-
-
- 4525
- 25
- 0
- 0
- 0
-
-
- 4526
- 25
- 0
- 0
- 0
-
-
- 4527
- 10
- 0
- 0
- 0
-
-
- 4528
- 10
- 0
- 0
- 0
-
-
- 4529
- 15
- 0
- 0
- 0
-
-
- 4530
- 15
- 0
- 0
- 0
-
-
- 4531
- 15
- 0
- 0
- 0
-
-
- 4532
- 15
- 0
- 0
- 0
-
-
- 4533
- 15
- 0
- 0
- 0
-
-
- 4534
- 15
- 0
- 0
- 0
-
-
- 4535
- 120
- 0
- 0
- 0
-
-
- 4536
- 120
- 0
- 0
- 0
-
-
- 4537
- 125
- 0
- 0
- 0
-
-
- 4538
- 125
- 0
- 0
- 0
-
-
- 4539
- 125
- 0
- 0
- 0
-
-
- 4540
- 90
- 0
- 0
- 0
-
-
- 4541
- 90
- 0
- 0
- 0
-
-
- 4542
- 70
- 0
- 0
- 0
-
-
- 4543
- 70
- 0
- 0
- 0
-
-
- 4544
- 300
- 0
- 0
- 0
-
-
- 4545
- 300
- 0
- 0
- 0
-
-
- 4546
- 400
- 0
- 0
- 0
-
-
- 4547
- 400
- 0
- 0
- 0
-
-
- 4548
- 420
- 0
- 0
- 0
-
-
- 4549
- 420
- 0
- 0
- 0
-
-
- 4550
- 420
- 0
- 0
- 0
-
-
- 4551
- 650
- 0
- 0
- 0
-
-
- 4552
- 650
- 0
- 0
- 0
-
-
- 4553
- 1
- 0
- 0
- 0
-
-
- 4554
- 1
- 0
- 0
- 0
-
-
- 4555
- 1
- 0
- 0
- 0
-
-
- 4556
- 1
- 0
- 0
- 0
-
-
- 4557
- 1
- 0
- 0
- 0
-
-
- 4558
- 1
- 0
- 0
- 0
-
-
- 4559
- 1
- 0
- 0
- 0
-
-
- 4560
- 1
- 0
- 0
- 0
-
-
- 4561
- 1
- 0
- 0
- 0
-
-
- 4562
- 1
- 0
- 0
- 0
-
-
- 4563
- 1
- 0
- 0
- 0
-
-
- 4564
- 1
- 0
- 0
- 0
-
-
- 4565
- 1
- 0
- 0
- 0
-
-
- 4566
- 1
- 0
- 0
- 0
-
-
- 4567
- 1
- 0
- 0
- 0
-
-
- 4568
- 1
- 0
- 0
- 0
-
-
- 4569
- 1
- 0
- 0
- 0
-
-
- 4570
- 1
- 0
- 0
- 0
-
-
- 4571
- 1
- 0
- 0
- 0
-
-
- 4572
- 1
- 0
- 0
- 0
-
-
- 4573
- 1
- 0
- 0
- 0
-
-
- 4574
- 1
- 0
- 0
- 0
-
-
- 4575
- 1
- 0
- 0
- 0
-
-
- 4576
- 1
- 0
- 0
- 0
-
-
- 4577
- 1
- 0
- 0
- 0
-
-
- 4578
- 1
- 0
- 0
- 0
-
-
- 4579
- 1
- 0
- 0
- 0
-
-
- 4580
- 650
- 0
- 0
- 0
-
-
- 4581
- 650
- 0
- 0
- 0
-
-
- 4582
- 750
- 0
- 0
- 0
-
-
- 4583
- 750
- 0
- 0
- 0
-
-
- 4584
- 750
- 0
- 0
- 0
-
-
- 4585
- 270000
- 0
- 0
- 0
-
-
- 4586
- 270000
- 0
- 0
- 0
-
-
- 4587
- 100000
- 0
- 0
- 0
-
-
- 4588
- 100000
- 0
- 0
- 0
-
-
- 4589
- 1
- 0
- 0
- 0
-
-
- 4590
- 1
- 0
- 0
- 0
-
-
- 4591
- 1
- 0
- 0
- 0
-
-
- 4592
- 1
- 0
- 0
- 0
-
-
- 4593
- 1
- 0
- 0
- 0
-
-
- 4594
- 1
- 0
- 0
- 0
-
-
- 4595
- 1
- 0
- 0
- 0
-
-
- 4596
- 1
- 0
- 0
- 0
-
-
- 4597
- 1
- 0
- 0
- 0
-
-
- 4598
- 1
- 0
- 0
- 0
-
-
- 4599
- 1
- 0
- 0
- 0
-
-
- 4600
- 600
- 0
- 0
- 0
-
-
- 4601
- 1
- 0
- 0
- 0
-
-
- 4602
- 1
- 0
- 0
- 0
-
-
- 4603
- 1
- 0
- 0
- 0
-
-
- 4604
- 1
- 0
- 0
- 0
-
-
- 4605
- 1
- 0
- 0
- 0
-
-
- 4606
- 1
- 0
- 0
- 0
-
-
- 4607
- 1
- 0
- 0
- 0
-
-
- 4608
- 3
- 0
- 0
- 0
-
-
- 4609
- 3
- 0
- 0
- 0
-
-
- 4610
- 1
- 0
- 0
- 0
-
-
- 4611
- 1
- 0
- 0
- 0
-
-
- 4612
- 600
- 0
- 0
- 0
-
-
- 4613
- 75
- 0
- 0
- 0
-
-
- 4614
- 1
- 0
- 0
- 0
-
-
- 4615
- 1
- 0
- 0
- 0
-
-
- 4616
- 2
- 0
- 0
- 0
-
-
- 4617
- 1
- 0
- 0
- 0
-
-
- 4618
- 2
- 0
- 0
- 0
-
-
- 4619
- 1
- 0
- 0
- 0
-
-
- 4620
- 1
- 0
- 0
- 0
-
-
- 4621
- 1
- 0
- 0
- 0
-
-
- 4622
- 1
- 0
- 0
- 0
-
-
- 4623
- 1
- 0
- 0
- 0
-
-
- 4624
- 1
- 0
- 0
- 0
-
-
- 4625
- 1
- 0
- 0
- 0
-
-
- 4626
- 1
- 0
- 0
- 0
-
-
- 4627
- 650
- 0
- 0
- 0
-
-
- 4628
- 650
- 0
- 0
- 0
-
-
- 4629
- 1
- 0
- 0
- 0
-
-
- 4630
- 1
- 0
- 0
- 0
-
-
- 4631
- 1
- 0
- 0
- 0
-
-
- 4632
- 1
- 0
- 0
- 0
-
-
- 4633
- 1
- 0
- 0
- 0
-
-
- 4634
- 1
- 0
- 0
- 0
-
-
- 4635
- 1
- 0
- 0
- 0
-
-
- 4636
- 1
- 0
- 0
- 0
-
-
- 4637
- 1
- 0
- 0
- 0
-
-
- 4638
- 1
- 0
- 0
- 0
-
-
- 4639
- 1
- 0
- 0
- 0
-
-
- 4640
- 1
- 0
- 0
- 0
-
-
- 4641
- 1
- 0
- 0
- 0
-
-
- 4642
- 1
- 0
- 0
- 0
-
-
- 4643
- 1
- 0
- 0
- 0
-
-
- 4644
- 1
- 0
- 0
- 0
-
-
- 4645
- 1
- 0
- 0
- 0
-
-
- 4646
- 1
- 0
- 0
- 0
-
-
- 4647
- 1
- 0
- 0
- 0
-
-
- 4648
- 1
- 0
- 0
- 0
-
-
- 4649
- 1
- 0
- 0
- 0
-
-
- 4650
- 1
- 0
- 0
- 0
-
-
- 4651
- 1
- 0
- 0
- 0
-
-
- 4652
- 1
- 0
- 0
- 0
-
-
- 4653
- 250
- 0
- 0
- 0
-
-
- 4654
- 250
- 0
- 0
- 0
-
-
- 4655
- 250
- 0
- 0
- 0
-
-
- 4656
- 250
- 0
- 0
- 0
-
-
- 4657
- 350
- 0
- 0
- 0
-
-
- 4658
- 250
- 0
- 0
- 0
-
-
- 4659
- 250
- 0
- 0
- 0
-
-
- 4660
- 250
- 0
- 0
- 0
-
-
- 4661
- 250
- 0
- 0
- 0
-
-
- 4662
- 250
- 0
- 0
- 0
-
-
- 4663
- 250
- 0
- 0
- 0
-
-
- 4664
- 250
- 0
- 0
- 0
-
-
- 4665
- 250
- 0
- 0
- 0
-
-
- 4666
- 250
- 0
- 0
- 0
-
-
- 4667
- 250
- 0
- 0
- 0
-
-
- 4668
- 10
- 0
- 0
- 0
-
-
- 4669
- 1
- 0
- 0
- 0
-
-
- 4670
- 250
- 0
- 0
- 0
-
-
- 4671
- 250
- 0
- 0
- 0
-
-
- 4672
- 250
- 0
- 0
- 0
-
-
- 4673
- 250
- 0
- 0
- 0
-
-
- 4674
- 250
- 0
- 0
- 0
-
-
- 4675
- 100000
- 0
- 0
- 0
-
-
- 4676
- 100000
- 0
- 0
- 0
-
-
- 4677
- 1
- 0
- 0
- 0
-
-
- 4678
- 1
- 0
- 0
- 0
-
-
- 4679
- 1
- 0
- 0
- 0
-
-
- 4680
- 1
- 0
- 0
- 0
-
-
- 4681
- 1
- 0
- 0
- 0
-
-
- 4682
- 1
- 0
- 0
- 0
-
-
- 4683
- 1
- 0
- 0
- 0
-
-
- 4684
- 30
- 0
- 0
- 0
-
-
- 4685
- 1
- 0
- 0
- 0
-
-
- 4686
- 1
- 0
- 0
- 0
-
-
- 4687
- 30
- 0
- 0
- 0
-
-
- 4688
- 1
- 0
- 0
- 0
-
-
- 4689
- 20
- 0
- 0
- 0
-
-
- 4690
- 1
- 0
- 0
- 0
-
-
- 4691
- 1
- 0
- 0
- 0
-
-
- 4692
- 1
- 0
- 0
- 0
-
-
- 4693
- 6
- 0
- 0
- 0
-
-
- 4694
- 20
- 0
- 0
- 0
-
-
- 4695
- 20
- 0
- 0
- 0
-
-
- 4696
- 20
- 0
- 0
- 0
-
-
- 4697
- 20
- 0
- 0
- 0
-
-
- 4698
- 20
- 0
- 0
- 0
-
-
- 4699
- 20
- 0
- 0
- 0
-
-
- 4700
- 600
- 0
- 0
- 0
-
-
- 4701
- 600
- 0
- 0
- 0
-
-
- 4702
- 600
- 0
- 0
- 0
-
-
- 4703
- 1
- 0
- 0
- 0
-
-
- 4704
- 1
- 0
- 0
- 0
-
-
- 4705
- 1
- 0
- 0
- 0
-
-
- 4706
- 1
- 0
- 0
- 0
-
-
- 4707
- 5
- 0
- 0
- 0
-
-
- 4708
- 13000
- 0
- 0
- 0
-
-
- 4709
- 13000
- 0
- 0
- 0
-
-
- 4710
- 85000
- 0
- 0
- 0
-
-
- 4711
- 85000
- 0
- 0
- 0
-
-
- 4712
- 50000
- 0
- 0
- 0
-
-
- 4713
- 50000
- 0
- 0
- 0
-
-
- 4714
- 47000
- 0
- 0
- 0
-
-
- 4715
- 47000
- 0
- 0
- 0
-
-
- 4716
- 103000
- 0
- 0
- 0
-
-
- 4717
- 103000
- 0
- 0
- 0
-
-
- 4718
- 208000
- 0
- 0
- 0
-
-
- 4719
- 208000
- 0
- 0
- 0
-
-
- 4720
- 280000
- 0
- 0
- 0
-
-
- 4721
- 280000
- 0
- 0
- 0
-
-
- 4722
- 275000
- 0
- 0
- 0
-
-
- 4723
- 275000
- 0
- 0
- 0
-
-
- 4724
- 103000
- 0
- 0
- 0
-
-
- 4725
- 103000
- 0
- 0
- 0
-
-
- 4726
- 100000
- 0
- 0
- 0
-
-
- 4727
- 100000
- 0
- 0
- 0
-
-
- 4728
- 280000
- 0
- 0
- 0
-
-
- 4729
- 280000
- 0
- 0
- 0
-
-
- 4730
- 275000
- 0
- 0
- 0
-
-
- 4731
- 275000
- 0
- 0
- 0
-
-
- 4732
- 13000
- 0
- 0
- 0
-
-
- 4733
- 13000
- 0
- 0
- 0
-
-
- 4734
- 160000
- 0
- 0
- 0
-
-
- 4735
- 160000
- 0
- 0
- 0
-
-
- 4736
- 50000
- 0
- 0
- 0
-
-
- 4737
- 50000
- 0
- 0
- 0
-
-
- 4738
- 47000
- 0
- 0
- 0
-
-
- 4739
- 47000
- 0
- 0
- 0
-
-
- 4740
- 420
- 0
- 0
- 0
-
-
- 4741
- 1
- 0
- 0
- 0
-
-
- 4742
- 1
- 0
- 0
- 0
-
-
- 4743
- 1
- 0
- 0
- 0
-
-
- 4744
- 1
- 0
- 0
- 0
-
-
- 4745
- 103000
- 0
- 0
- 0
-
-
- 4746
- 103000
- 0
- 0
- 0
-
-
- 4747
- 160000
- 0
- 0
- 0
-
-
- 4748
- 160000
- 0
- 0
- 0
-
-
- 4749
- 280000
- 0
- 0
- 0
-
-
- 4750
- 280000
- 0
- 0
- 0
-
-
- 4751
- 275000
- 0
- 0
- 0
-
-
- 4752
- 275000
- 0
- 0
- 0
-
-
- 4753
- 103000
- 0
- 0
- 0
-
-
- 4754
- 103000
- 0
- 0
- 0
-
-
- 4755
- 160000
- 0
- 0
- 0
-
-
- 4756
- 160000
- 0
- 0
- 0
-
-
- 4757
- 280000
- 0
- 0
- 0
-
-
- 4758
- 280000
- 0
- 0
- 0
-
-
- 4759
- 275000
- 0
- 0
- 0
-
-
- 4760
- 275000
- 0
- 0
- 0
-
-
- 4761
- 1
- 0
- 0
- 0
-
-
- 4762
- 1
- 0
- 0
- 0
-
-
- 4763
- 1
- 0
- 0
- 0
-
-
- 4764
- 1
- 0
- 0
- 0
-
-
- 4765
- 1
- 0
- 0
- 0
-
-
- 4766
- 1
- 0
- 0
- 0
-
-
- 4767
- 1
- 0
- 0
- 0
-
-
- 4768
- 1
- 0
- 0
- 0
-
-
- 4769
- 1
- 0
- 0
- 0
-
-
- 4770
- 1
- 0
- 0
- 0
-
-
- 4771
- 1
- 0
- 0
- 0
-
-
- 4772
- 1
- 0
- 0
- 0
-
-
- 4773
- 5
- 0
- 0
- 0
-
-
- 4774
- 1
- 0
- 0
- 0
-
-
- 4775
- 1
- 0
- 0
- 0
-
-
- 4776
- 1
- 0
- 0
- 0
-
-
- 4777
- 1
- 0
- 0
- 0
-
-
- 4778
- 10
- 0
- 0
- 0
-
-
- 4779
- 1
- 0
- 0
- 0
-
-
- 4780
- 1
- 0
- 0
- 0
-
-
- 4781
- 1
- 0
- 0
- 0
-
-
- 4782
- 1
- 0
- 0
- 0
-
-
- 4783
- 20
- 0
- 0
- 0
-
-
- 4784
- 1
- 0
- 0
- 0
-
-
- 4785
- 1
- 0
- 0
- 0
-
-
- 4786
- 1
- 0
- 0
- 0
-
-
- 4787
- 1
- 0
- 0
- 0
-
-
- 4788
- 35
- 0
- 0
- 0
-
-
- 4789
- 1
- 0
- 0
- 0
-
-
- 4790
- 1
- 0
- 0
- 0
-
-
- 4791
- 1
- 0
- 0
- 0
-
-
- 4792
- 1
- 0
- 0
- 0
-
-
- 4793
- 50
- 0
- 0
- 0
-
-
- 4794
- 1
- 0
- 0
- 0
-
-
- 4795
- 1
- 0
- 0
- 0
-
-
- 4796
- 1
- 0
- 0
- 0
-
-
- 4797
- 1
- 0
- 0
- 0
-
-
- 4798
- 95
- 0
- 0
- 0
-
-
- 4799
- 1
- 0
- 0
- 0
-
-
- 4800
- 1
- 0
- 0
- 0
-
-
- 4801
- 1
- 0
- 0
- 0
-
-
- 4802
- 1
- 0
- 0
- 0
-
-
- 4803
- 450
- 0
- 0
- 0
-
-
- 4804
- 1
- 0
- 0
- 0
-
-
- 4805
- 1
- 0
- 0
- 0
-
-
- 4806
- 1
- 0
- 0
- 0
-
-
- 4807
- 1
- 0
- 0
- 0
-
-
- 4808
- 1
- 0
- 0
- 0
-
-
- 4809
- 1
- 0
- 0
- 0
-
-
- 4810
- 1
- 0
- 0
- 0
-
-
- 4811
- 1
- 0
- 0
- 0
-
-
- 4812
- 1
- 0
- 0
- 0
-
-
- 4813
- 1
- 0
- 0
- 0
-
-
- 4814
- 1
- 0
- 0
- 0
-
-
- 4815
- 1
- 0
- 0
- 0
-
-
- 4816
- 1
- 0
- 0
- 0
-
-
- 4817
- 1
- 0
- 0
- 0
-
-
- 4818
- 1
- 0
- 0
- 0
-
-
- 4819
- 7
- 0
- 0
- 0
-
-
- 4820
- 33
- 0
- 0
- 0
-
-
- 4821
- 12
- 0
- 0
- 0
-
-
- 4822
- 18
- 0
- 0
- 0
-
-
- 4823
- 45
- 0
- 0
- 0
-
-
- 4824
- 220
- 0
- 0
- 0
-
-
- 4825
- 90
- 0
- 0
- 0
-
-
- 4826
- 90
- 0
- 0
- 0
-
-
- 4827
- 180
- 0
- 0
- 0
-
-
- 4828
- 180
- 0
- 0
- 0
-
-
- 4829
- 1
- 0
- 0
- 0
-
-
- 4830
- 1
- 0
- 0
- 0
-
-
- 4831
- 1
- 0
- 0
- 0
-
-
- 4832
- 1
- 0
- 0
- 0
-
-
- 4833
- 1
- 0
- 0
- 0
-
-
- 4834
- 1
- 0
- 0
- 0
-
-
- 4835
- 1
- 0
- 0
- 0
-
-
- 4836
- 1
- 0
- 0
- 0
-
-
- 4837
- 1
- 0
- 0
- 0
-
-
- 4838
- 10
- 0
- 0
- 0
-
-
- 4839
- 1
- 0
- 0
- 0
-
-
- 4840
- 5
- 0
- 0
- 0
-
-
- 4841
- 5
- 0
- 0
- 0
-
-
- 4842
- 225
- 0
- 0
- 0
-
-
- 4843
- 225
- 0
- 0
- 0
-
-
- 4844
- 200
- 0
- 0
- 0
-
-
- 4845
- 200
- 0
- 0
- 0
-
-
- 4846
- 150
- 0
- 0
- 0
-
-
- 4847
- 150
- 0
- 0
- 0
-
-
- 4848
- 75
- 0
- 0
- 0
-
-
- 4849
- 75
- 0
- 0
- 0
-
-
- 4850
- 100
- 0
- 0
- 0
-
-
- 4851
- 100
- 0
- 0
- 0
-
-
- 4852
- 1
- 0
- 0
- 0
-
-
- 4853
- 1
- 0
- 0
- 0
-
-
- 4854
- 1
- 0
- 0
- 0
-
-
- 4855
- 1
- 0
- 0
- 0
-
-
- 4856
- 13000
- 0
- 0
- 0
-
-
- 4857
- 13000
- 0
- 0
- 0
-
-
- 4858
- 13000
- 0
- 0
- 0
-
-
- 4859
- 13000
- 0
- 0
- 0
-
-
- 4860
- 13000
- 0
- 0
- 0
-
-
- 4861
- 13000
- 0
- 0
- 0
-
-
- 4862
- 85000
- 0
- 0
- 0
-
-
- 4863
- 85000
- 0
- 0
- 0
-
-
- 4864
- 85000
- 0
- 0
- 0
-
-
- 4865
- 85000
- 0
- 0
- 0
-
-
- 4866
- 85000
- 0
- 0
- 0
-
-
- 4867
- 85000
- 0
- 0
- 0
-
-
- 4868
- 50000
- 0
- 0
- 0
-
-
- 4869
- 50000
- 0
- 0
- 0
-
-
- 4870
- 50000
- 0
- 0
- 0
-
-
- 4871
- 50000
- 0
- 0
- 0
-
-
- 4872
- 50000
- 0
- 0
- 0
-
-
- 4873
- 50000
- 0
- 0
- 0
-
-
- 4874
- 47000
- 0
- 0
- 0
-
-
- 4875
- 47000
- 0
- 0
- 0
-
-
- 4876
- 47000
- 0
- 0
- 0
-
-
- 4877
- 47000
- 0
- 0
- 0
-
-
- 4878
- 47000
- 0
- 0
- 0
-
-
- 4879
- 47000
- 0
- 0
- 0
-
-
- 4880
- 103000
- 0
- 0
- 0
-
-
- 4881
- 103000
- 0
- 0
- 0
-
-
- 4882
- 103000
- 0
- 0
- 0
-
-
- 4883
- 103000
- 0
- 0
- 0
-
-
- 4884
- 103000
- 0
- 0
- 0
-
-
- 4885
- 103000
- 0
- 0
- 0
-
-
- 4886
- 208000
- 0
- 0
- 0
-
-
- 4887
- 208000
- 0
- 0
- 0
-
-
- 4888
- 208000
- 0
- 0
- 0
-
-
- 4889
- 208000
- 0
- 0
- 0
-
-
- 4890
- 208000
- 0
- 0
- 0
-
-
- 4891
- 208000
- 0
- 0
- 0
-
-
- 4892
- 280000
- 0
- 0
- 0
-
-
- 4893
- 280000
- 0
- 0
- 0
-
-
- 4894
- 280000
- 0
- 0
- 0
-
-
- 4895
- 280000
- 0
- 0
- 0
-
-
- 4896
- 280000
- 0
- 0
- 0
-
-
- 4897
- 280000
- 0
- 0
- 0
-
-
- 4898
- 275000
- 0
- 0
- 0
-
-
- 4899
- 275000
- 0
- 0
- 0
-
-
- 4900
- 275000
- 0
- 0
- 0
-
-
- 4901
- 275000
- 0
- 0
- 0
-
-
- 4902
- 275000
- 0
- 0
- 0
-
-
- 4903
- 275000
- 0
- 0
- 0
-
-
- 4904
- 103000
- 0
- 0
- 0
-
-
- 4905
- 103000
- 0
- 0
- 0
-
-
- 4906
- 103000
- 0
- 0
- 0
-
-
- 4907
- 103000
- 0
- 0
- 0
-
-
- 4908
- 103000
- 0
- 0
- 0
-
-
- 4909
- 103000
- 0
- 0
- 0
-
-
- 4910
- 100000
- 0
- 0
- 0
-
-
- 4911
- 100000
- 0
- 0
- 0
-
-
- 4912
- 100000
- 0
- 0
- 0
-
-
- 4913
- 100000
- 0
- 0
- 0
-
-
- 4914
- 100000
- 0
- 0
- 0
-
-
- 4915
- 100000
- 0
- 0
- 0
-
-
- 4916
- 280000
- 0
- 0
- 0
-
-
- 4917
- 280000
- 0
- 0
- 0
-
-
- 4918
- 280000
- 0
- 0
- 0
-
-
- 4919
- 280000
- 0
- 0
- 0
-
-
- 4920
- 280000
- 0
- 0
- 0
-
-
- 4921
- 280000
- 0
- 0
- 0
-
-
- 4922
- 275000
- 0
- 0
- 0
-
-
- 4923
- 275000
- 0
- 0
- 0
-
-
- 4924
- 275000
- 0
- 0
- 0
-
-
- 4925
- 275000
- 0
- 0
- 0
-
-
- 4926
- 275000
- 0
- 0
- 0
-
-
- 4927
- 275000
- 0
- 0
- 0
-
-
- 4928
- 13000
- 0
- 0
- 0
-
-
- 4929
- 13000
- 0
- 0
- 0
-
-
- 4930
- 13000
- 0
- 0
- 0
-
-
- 4931
- 13000
- 0
- 0
- 0
-
-
- 4932
- 13000
- 0
- 0
- 0
-
-
- 4933
- 13000
- 0
- 0
- 0
-
-
- 4934
- 160000
- 0
- 0
- 0
-
-
- 4935
- 160000
- 0
- 0
- 0
-
-
- 4936
- 160000
- 0
- 0
- 0
-
-
- 4937
- 160000
- 0
- 0
- 0
-
-
- 4938
- 160000
- 0
- 0
- 0
-
-
- 4939
- 160000
- 0
- 0
- 0
-
-
- 4940
- 50000
- 0
- 0
- 0
-
-
- 4941
- 50000
- 0
- 0
- 0
-
-
- 4942
- 50000
- 0
- 0
- 0
-
-
- 4943
- 50000
- 0
- 0
- 0
-
-
- 4944
- 50000
- 0
- 0
- 0
-
-
- 4945
- 50000
- 0
- 0
- 0
-
-
- 4946
- 47000
- 0
- 0
- 0
-
-
- 4947
- 47000
- 0
- 0
- 0
-
-
- 4948
- 47000
- 0
- 0
- 0
-
-
- 4949
- 47000
- 0
- 0
- 0
-
-
- 4950
- 47000
- 0
- 0
- 0
-
-
- 4951
- 47000
- 0
- 0
- 0
-
-
- 4952
- 103000
- 0
- 0
- 0
-
-
- 4953
- 103000
- 0
- 0
- 0
-
-
- 4954
- 103000
- 0
- 0
- 0
-
-
- 4955
- 103000
- 0
- 0
- 0
-
-
- 4956
- 103000
- 0
- 0
- 0
-
-
- 4957
- 103000
- 0
- 0
- 0
-
-
- 4958
- 160000
- 0
- 0
- 0
-
-
- 4959
- 160000
- 0
- 0
- 0
-
-
- 4960
- 160000
- 0
- 0
- 0
-
-
- 4961
- 160000
- 0
- 0
- 0
-
-
- 4962
- 160000
- 0
- 0
- 0
-
-
- 4963
- 160000
- 0
- 0
- 0
-
-
- 4964
- 280000
- 0
- 0
- 0
-
-
- 4965
- 280000
- 0
- 0
- 0
-
-
- 4966
- 280000
- 0
- 0
- 0
-
-
- 4967
- 280000
- 0
- 0
- 0
-
-
- 4968
- 280000
- 0
- 0
- 0
-
-
- 4969
- 280000
- 0
- 0
- 0
-
-
- 4970
- 275000
- 0
- 0
- 0
-
-
- 4971
- 275000
- 0
- 0
- 0
-
-
- 4972
- 275000
- 0
- 0
- 0
-
-
- 4973
- 275000
- 0
- 0
- 0
-
-
- 4974
- 275000
- 0
- 0
- 0
-
-
- 4975
- 275000
- 0
- 0
- 0
-
-
- 4976
- 103000
- 0
- 0
- 0
-
-
- 4977
- 103000
- 0
- 0
- 0
-
-
- 4978
- 103000
- 0
- 0
- 0
-
-
- 4979
- 103000
- 0
- 0
- 0
-
-
- 4980
- 103000
- 0
- 0
- 0
-
-
- 4981
- 103000
- 0
- 0
- 0
-
-
- 4982
- 160000
- 0
- 0
- 0
-
-
- 4983
- 160000
- 0
- 0
- 0
-
-
- 4984
- 160000
- 0
- 0
- 0
-
-
- 4985
- 160000
- 0
- 0
- 0
-
-
- 4986
- 160000
- 0
- 0
- 0
-
-
- 4987
- 160000
- 0
- 0
- 0
-
-
- 4988
- 280000
- 0
- 0
- 0
-
-
- 4989
- 280000
- 0
- 0
- 0
-
-
- 4990
- 280000
- 0
- 0
- 0
-
-
- 4991
- 280000
- 0
- 0
- 0
-
-
- 4992
- 280000
- 0
- 0
- 0
-
-
- 4993
- 280000
- 0
- 0
- 0
-
-
- 4994
- 275000
- 0
- 0
- 0
-
-
- 4995
- 275000
- 0
- 0
- 0
-
-
- 4996
- 275000
- 0
- 0
- 0
-
-
- 4997
- 275000
- 0
- 0
- 0
-
-
- 4998
- 275000
- 0
- 0
- 0
-
-
- 4999
- 275000
- 0
- 0
- 0
-
-
- 5000
- 1
- 0
- 0
- 0
-
-
- 5001
- 15
- 0
- 0
- 0
-
-
- 5002
- 1
- 0
- 0
- 0
-
-
- 5003
- 15
- 0
- 0
- 0
-
-
- 5004
- 5
- 0
- 0
- 0
-
-
- 5005
- 15
- 0
- 0
- 0
-
-
- 5006
- 1
- 0
- 0
- 0
-
-
- 5007
- 15
- 0
- 0
- 0
-
-
- 5008
- 1
- 0
- 0
- 0
-
-
- 5009
- 1
- 0
- 0
- 0
-
-
- 5010
- 1
- 0
- 0
- 0
-
-
- 5011
- 1
- 0
- 0
- 0
-
-
- 5012
- 1
- 0
- 0
- 0
-
-
- 5013
- 600
- 0
- 0
- 0
-
-
- 5014
- 900
- 0
- 0
- 0
-
-
- 5015
- 900
- 0
- 0
- 0
-
-
- 5016
- 600
- 0
- 0
- 0
-
-
- 5017
- 600
- 0
- 0
- 0
-
-
- 5018
- 600
- 0
- 0
- 0
-
-
- 5019
- 600
- 0
- 0
- 0
-
-
- 5020
- 1
- 0
- 0
- 0
-
-
- 5021
- 1
- 0
- 0
- 0
-
-
- 5022
- 1
- 0
- 0
- 0
-
-
- 5023
- 1
- 0
- 0
- 0
-
-
- 5024
- 650
- 0
- 0
- 0
-
-
- 5025
- 650
- 0
- 0
- 0
-
-
- 5026
- 812
- 0
- 0
- 0
-
-
- 5027
- 812
- 0
- 0
- 0
-
-
- 5028
- 845
- 0
- 0
- 0
-
-
- 5029
- 845
- 0
- 0
- 0
-
-
- 5030
- 585
- 0
- 0
- 0
-
-
- 5031
- 585
- 0
- 0
- 0
-
-
- 5032
- 780
- 0
- 0
- 0
-
-
- 5033
- 780
- 0
- 0
- 0
-
-
- 5034
- 812
- 0
- 0
- 0
-
-
- 5035
- 812
- 0
- 0
- 0
-
-
- 5036
- 715
- 0
- 0
- 0
-
-
- 5037
- 715
- 0
- 0
- 0
-
-
- 5038
- 910
- 0
- 0
- 0
-
-
- 5039
- 910
- 0
- 0
- 0
-
-
- 5040
- 975
- 0
- 0
- 0
-
-
- 5041
- 975
- 0
- 0
- 0
-
-
- 5042
- 364
- 0
- 0
- 0
-
-
- 5043
- 364
- 0
- 0
- 0
-
-
- 5044
- 468
- 0
- 0
- 0
-
-
- 5045
- 468
- 0
- 0
- 0
-
-
- 5046
- 507
- 0
- 0
- 0
-
-
- 5047
- 507
- 0
- 0
- 0
-
-
- 5048
- 455
- 0
- 0
- 0
-
-
- 5049
- 455
- 0
- 0
- 0
-
-
- 5050
- 715
- 0
- 0
- 0
-
-
- 5051
- 715
- 0
- 0
- 0
-
-
- 5052
- 812
- 0
- 0
- 0
-
-
- 5053
- 812
- 0
- 0
- 0
-
-
- 5054
- 1
- 0
- 0
- 0
-
-
- 5055
- 1
- 0
- 0
- 0
-
-
- 5056
- 1
- 0
- 0
- 0
-
-
- 5057
- 1
- 0
- 0
- 0
-
-
- 5058
- 1
- 0
- 0
- 0
-
-
- 5059
- 1
- 0
- 0
- 0
-
-
- 5060
- 1
- 0
- 0
- 0
-
-
- 5061
- 1
- 0
- 0
- 0
-
-
- 5062
- 1
- 0
- 0
- 0
-
-
- 5063
- 1
- 0
- 0
- 0
-
-
- 5064
- 1
- 0
- 0
- 0
-
-
- 5065
- 1
- 0
- 0
- 0
-
-
- 5066
- 1
- 0
- 0
- 0
-
-
- 5067
- 1
- 0
- 0
- 0
-
-
- 5068
- 1
- 0
- 0
- 0
-
-
- 5069
- 1
- 0
- 0
- 0
-
-
- 5070
- 1
- 0
- 0
- 0
-
-
- 5071
- 1
- 0
- 0
- 0
-
-
- 5072
- 1
- 0
- 0
- 0
-
-
- 5073
- 1
- 0
- 0
- 0
-
-
- 5074
- 1
- 0
- 0
- 0
-
-
- 5075
- 1
- 0
- 0
- 0
-
-
- 5076
- 1
- 0
- 0
- 0
-
-
- 5077
- 1
- 0
- 0
- 0
-
-
- 5078
- 1
- 0
- 0
- 0
-
-
- 5079
- 1
- 0
- 0
- 0
-
-
- 5080
- 1
- 0
- 0
- 0
-
-
- 5081
- 1
- 0
- 0
- 0
-
-
- 5082
- 1
- 0
- 0
- 0
-
-
- 5083
- 1
- 0
- 0
- 0
-
-
- 5084
- 1
- 0
- 0
- 0
-
-
- 5085
- 1
- 0
- 0
- 0
-
-
- 5086
- 1
- 0
- 0
- 0
-
-
- 5087
- 1
- 0
- 0
- 0
-
-
- 5088
- 1
- 0
- 0
- 0
-
-
- 5089
- 1
- 0
- 0
- 0
-
-
- 5090
- 1
- 0
- 0
- 0
-
-
- 5091
- 1
- 0
- 0
- 0
-
-
- 5092
- 1
- 0
- 0
- 0
-
-
- 5093
- 1
- 0
- 0
- 0
-
-
- 5094
- 1
- 0
- 0
- 0
-
-
- 5095
- 1
- 0
- 0
- 0
-
-
- 5096
- 84
- 0
- 0
- 0
-
-
- 5097
- 98
- 0
- 0
- 0
-
-
- 5098
- 11
- 0
- 0
- 0
-
-
- 5099
- 11
- 0
- 0
- 0
-
-
- 5100
- 12
- 0
- 0
- 0
-
-
- 5101
- 4
- 0
- 0
- 0
-
-
- 5102
- 9
- 0
- 0
- 0
-
-
- 5103
- 25
- 0
- 0
- 0
-
-
- 5104
- 60
- 0
- 0
- 0
-
-
- 5105
- 133
- 0
- 0
- 0
-
-
- 5106
- 166
- 0
- 0
- 0
-
-
- 5107
- 1
- 0
- 0
- 0
-
-
- 5108
- 1
- 0
- 0
- 0
-
-
- 5109
- 1
- 0
- 0
- 0
-
-
- 5110
- 1
- 0
- 0
- 0
-
-
- 5111
- 1
- 0
- 0
- 0
-
-
- 5112
- 1
- 0
- 0
- 0
-
-
- 5113
- 1
- 0
- 0
- 0
-
-
- 5114
- 1
- 0
- 0
- 0
-
-
- 5115
- 1
- 0
- 0
- 0
-
-
- 5116
- 1
- 0
- 0
- 0
-
-
- 5117
- 1
- 0
- 0
- 0
-
-
- 5118
- 1
- 0
- 0
- 0
-
-
- 5119
- 1
- 0
- 0
- 0
-
-
- 5120
- 1
- 0
- 0
- 0
-
-
- 5121
- 1
- 0
- 0
- 0
-
-
- 5122
- 1
- 0
- 0
- 0
-
-
- 5123
- 1
- 0
- 0
- 0
-
-
- 5124
- 1
- 0
- 0
- 0
-
-
- 5125
- 1
- 0
- 0
- 0
-
-
- 5126
- 1
- 0
- 0
- 0
-
-
- 5127
- 1
- 0
- 0
- 0
-
-
- 5128
- 1
- 0
- 0
- 0
-
-
- 5129
- 1
- 0
- 0
- 0
-
-
- 5130
- 1
- 0
- 0
- 0
-
-
- 5131
- 1
- 0
- 0
- 0
-
-
- 5132
- 1
- 0
- 0
- 0
-
-
- 5133
- 1
- 0
- 0
- 0
-
-
- 5134
- 1
- 0
- 0
- 0
-
-
- 5135
- 1
- 0
- 0
- 0
-
-
- 5136
- 1
- 0
- 0
- 0
-
-
- 5137
- 1
- 0
- 0
- 0
-
-
- 5138
- 1
- 0
- 0
- 0
-
-
- 5139
- 1
- 0
- 0
- 0
-
-
- 5140
- 1
- 0
- 0
- 0
-
-
- 5141
- 1
- 0
- 0
- 0
-
-
- 5142
- 1
- 0
- 0
- 0
-
-
- 5143
- 1
- 0
- 0
- 0
-
-
- 5144
- 1
- 0
- 0
- 0
-
-
- 5145
- 1
- 0
- 0
- 0
-
-
- 5146
- 1
- 0
- 0
- 0
-
-
- 5147
- 1
- 0
- 0
- 0
-
-
- 5148
- 1
- 0
- 0
- 0
-
-
- 5149
- 1
- 0
- 0
- 0
-
-
- 5150
- 1
- 0
- 0
- 0
-
-
- 5151
- 1
- 0
- 0
- 0
-
-
- 5152
- 1
- 0
- 0
- 0
-
-
- 5153
- 1
- 0
- 0
- 0
-
-
- 5154
- 1
- 0
- 0
- 0
-
-
- 5155
- 1
- 0
- 0
- 0
-
-
- 5156
- 1
- 0
- 0
- 0
-
-
- 5157
- 1
- 0
- 0
- 0
-
-
- 5158
- 1
- 0
- 0
- 0
-
-
- 5159
- 1
- 0
- 0
- 0
-
-
- 5160
- 1
- 0
- 0
- 0
-
-
- 5161
- 1
- 0
- 0
- 0
-
-
- 5162
- 1
- 0
- 0
- 0
-
-
- 5163
- 1
- 0
- 0
- 0
-
-
- 5164
- 1
- 0
- 0
- 0
-
-
- 5165
- 1
- 0
- 0
- 0
-
-
- 5166
- 1
- 0
- 0
- 0
-
-
- 5167
- 1
- 0
- 0
- 0
-
-
- 5168
- 1
- 0
- 0
- 0
-
-
- 5169
- 1
- 0
- 0
- 0
-
-
- 5170
- 1
- 0
- 0
- 0
-
-
- 5171
- 1
- 0
- 0
- 0
-
-
- 5172
- 1
- 0
- 0
- 0
-
-
- 5173
- 1
- 0
- 0
- 0
-
-
- 5174
- 1
- 0
- 0
- 0
-
-
- 5175
- 1
- 0
- 0
- 0
-
-
- 5176
- 1
- 0
- 0
- 0
-
-
- 5177
- 1
- 0
- 0
- 0
-
-
- 5178
- 1
- 0
- 0
- 0
-
-
- 5179
- 1
- 0
- 0
- 0
-
-
- 5180
- 1
- 0
- 0
- 0
-
-
- 5181
- 1
- 0
- 0
- 0
-
-
- 5182
- 1
- 0
- 0
- 0
-
-
- 5183
- 1
- 0
- 0
- 0
-
-
- 5184
- 1
- 0
- 0
- 0
-
-
- 5185
- 1
- 0
- 0
- 0
-
-
- 5186
- 1
- 0
- 0
- 0
-
-
- 5187
- 1
- 0
- 0
- 0
-
-
- 5188
- 1
- 0
- 0
- 0
-
-
- 5189
- 1
- 0
- 0
- 0
-
-
- 5190
- 1
- 0
- 0
- 0
-
-
- 5191
- 1
- 0
- 0
- 0
-
-
- 5192
- 1
- 0
- 0
- 0
-
-
- 5193
- 1
- 0
- 0
- 0
-
-
- 5194
- 1
- 0
- 0
- 0
-
-
- 5195
- 1
- 0
- 0
- 0
-
-
- 5196
- 1
- 0
- 0
- 0
-
-
- 5197
- 1
- 0
- 0
- 0
-
-
- 5198
- 1
- 0
- 0
- 0
-
-
- 5199
- 1
- 0
- 0
- 0
-
-
- 5200
- 1
- 0
- 0
- 0
-
-
- 5201
- 1
- 0
- 0
- 0
-
-
- 5202
- 1
- 0
- 0
- 0
-
-
- 5203
- 1
- 0
- 0
- 0
-
-
- 5204
- 1
- 0
- 0
- 0
-
-
- 5205
- 1
- 0
- 0
- 0
-
-
- 5206
- 1
- 0
- 0
- 0
-
-
- 5207
- 1
- 0
- 0
- 0
-
-
- 5208
- 1
- 0
- 0
- 0
-
-
- 5209
- 1
- 0
- 0
- 0
-
-
- 5210
- 1
- 0
- 0
- 0
-
-
- 5211
- 1
- 0
- 0
- 0
-
-
- 5212
- 1
- 0
- 0
- 0
-
-
- 5213
- 1
- 0
- 0
- 0
-
-
- 5214
- 1
- 0
- 0
- 0
-
-
- 5215
- 1
- 0
- 0
- 0
-
-
- 5216
- 1
- 0
- 0
- 0
-
-
- 5217
- 1
- 0
- 0
- 0
-
-
- 5218
- 1
- 0
- 0
- 0
-
-
- 5219
- 1
- 0
- 0
- 0
-
-
- 5220
- 1
- 0
- 0
- 0
-
-
- 5221
- 1
- 0
- 0
- 0
-
-
- 5222
- 1
- 0
- 0
- 0
-
-
- 5223
- 1
- 0
- 0
- 0
-
-
- 5224
- 1
- 0
- 0
- 0
-
-
- 5225
- 1
- 0
- 0
- 0
-
-
- 5226
- 1
- 0
- 0
- 0
-
-
- 5227
- 1
- 0
- 0
- 0
-
-
- 5228
- 1
- 0
- 0
- 0
-
-
- 5229
- 1
- 0
- 0
- 0
-
-
- 5230
- 1
- 0
- 0
- 0
-
-
- 5231
- 1
- 0
- 0
- 0
-
-
- 5232
- 1
- 0
- 0
- 0
-
-
- 5233
- 1
- 0
- 0
- 0
-
-
- 5234
- 1
- 0
- 0
- 0
-
-
- 5235
- 1
- 0
- 0
- 0
-
-
- 5236
- 1
- 0
- 0
- 0
-
-
- 5237
- 1
- 0
- 0
- 0
-
-
- 5238
- 1
- 0
- 0
- 0
-
-
- 5239
- 1
- 0
- 0
- 0
-
-
- 5240
- 1
- 0
- 0
- 0
-
-
- 5241
- 1
- 0
- 0
- 0
-
-
- 5242
- 1
- 0
- 0
- 0
-
-
- 5243
- 1
- 0
- 0
- 0
-
-
- 5244
- 1
- 0
- 0
- 0
-
-
- 5245
- 1
- 0
- 0
- 0
-
-
- 5246
- 1
- 0
- 0
- 0
-
-
- 5247
- 1
- 0
- 0
- 0
-
-
- 5248
- 1
- 0
- 0
- 0
-
-
- 5249
- 1
- 0
- 0
- 0
-
-
- 5250
- 1
- 0
- 0
- 0
-
-
- 5251
- 1
- 0
- 0
- 0
-
-
- 5252
- 1
- 0
- 0
- 0
-
-
- 5253
- 1
- 0
- 0
- 0
-
-
- 5254
- 1
- 0
- 0
- 0
-
-
- 5255
- 1
- 0
- 0
- 0
-
-
- 5256
- 1
- 0
- 0
- 0
-
-
- 5257
- 1
- 0
- 0
- 0
-
-
- 5258
- 1
- 0
- 0
- 0
-
-
- 5259
- 1
- 0
- 0
- 0
-
-
- 5260
- 1
- 0
- 0
- 0
-
-
- 5261
- 1
- 0
- 0
- 0
-
-
- 5262
- 1
- 0
- 0
- 0
-
-
- 5263
- 1
- 0
- 0
- 0
-
-
- 5264
- 1
- 0
- 0
- 0
-
-
- 5265
- 1
- 0
- 0
- 0
-
-
- 5266
- 1
- 0
- 0
- 0
-
-
- 5267
- 1
- 0
- 0
- 0
-
-
- 5268
- 1
- 0
- 0
- 0
-
-
- 5269
- 1
- 0
- 0
- 0
-
-
- 5270
- 1
- 0
- 0
- 0
-
-
- 5271
- 1
- 0
- 0
- 0
-
-
- 5272
- 1
- 0
- 0
- 0
-
-
- 5273
- 1
- 0
- 0
- 0
-
-
- 5274
- 1
- 0
- 0
- 0
-
-
- 5275
- 1
- 0
- 0
- 0
-
-
- 5276
- 1
- 0
- 0
- 0
-
-
- 5277
- 1
- 0
- 0
- 0
-
-
- 5278
- 1
- 0
- 0
- 0
-
-
- 5279
- 1
- 0
- 0
- 0
-
-
- 5280
- 99
- 0
- 0
- 0
-
-
- 5281
- 177
- 0
- 0
- 0
-
-
- 5282
- 86
- 0
- 0
- 0
-
-
- 5283
- 13
- 0
- 0
- 0
-
-
- 5284
- 20
- 0
- 0
- 0
-
-
- 5285
- 31
- 0
- 0
- 0
-
-
- 5286
- 39
- 0
- 0
- 0
-
-
- 5287
- 74
- 0
- 0
- 0
-
-
- 5288
- 115
- 0
- 0
- 0
-
-
- 5289
- 254
- 0
- 0
- 0
-
-
- 5290
- 340
- 0
- 0
- 0
-
-
- 5291
- 4
- 0
- 0
- 0
-
-
- 5292
- 5
- 0
- 0
- 0
-
-
- 5293
- 7
- 0
- 0
- 0
-
-
- 5294
- 12
- 0
- 0
- 0
-
-
- 5295
- 19
- 0
- 0
- 0
-
-
- 5296
- 34
- 0
- 0
- 0
-
-
- 5297
- 64
- 0
- 0
- 0
-
-
- 5298
- 64
- 0
- 0
- 0
-
-
- 5299
- 64
- 0
- 0
- 0
-
-
- 5300
- 64
- 0
- 0
- 0
-
-
- 5301
- 64
- 0
- 0
- 0
-
-
- 5302
- 64
- 0
- 0
- 0
-
-
- 5303
- 64
- 0
- 0
- 0
-
-
- 5304
- 64
- 0
- 0
- 0
-
-
- 5305
- 38
- 0
- 0
- 0
-
-
- 5306
- 86
- 0
- 0
- 0
-
-
- 5307
- 52
- 0
- 0
- 0
-
-
- 5308
- 60
- 0
- 0
- 0
-
-
- 5309
- 210
- 0
- 0
- 0
-
-
- 5310
- 8
- 0
- 0
- 0
-
-
- 5311
- 14
- 0
- 0
- 0
-
-
- 5312
- 6
- 0
- 0
- 0
-
-
- 5313
- 16
- 0
- 0
- 0
-
-
- 5314
- 48
- 0
- 0
- 0
-
-
- 5315
- 143
- 0
- 0
- 0
-
-
- 5316
- 422
- 0
- 0
- 0
-
-
- 5317
- 1
- 0
- 0
- 0
-
-
- 5318
- 8
- 0
- 0
- 0
-
-
- 5319
- 10
- 0
- 0
- 0
-
-
- 5320
- 8
- 0
- 0
- 0
-
-
- 5321
- 56
- 0
- 0
- 0
-
-
- 5322
- 4
- 0
- 0
- 0
-
-
- 5323
- 18
- 0
- 0
- 0
-
-
- 5324
- 25
- 0
- 0
- 0
-
-
- 5325
- 12
- 0
- 0
- 0
-
-
- 5326
- 12
- 0
- 0
- 0
-
-
- 5327
- 1
- 0
- 0
- 0
-
-
- 5328
- 1
- 0
- 0
- 0
-
-
- 5329
- 5
- 0
- 0
- 0
-
-
- 5330
- 5
- 0
- 0
- 0
-
-
- 5331
- 8
- 0
- 0
- 0
-
-
- 5332
- 8
- 0
- 0
- 0
-
-
- 5333
- 1
- 0
- 0
- 0
-
-
- 5334
- 1
- 0
- 0
- 0
-
-
- 5335
- 1
- 0
- 0
- 0
-
-
- 5336
- 1
- 0
- 0
- 0
-
-
- 5337
- 1
- 0
- 0
- 0
-
-
- 5338
- 1
- 0
- 0
- 0
-
-
- 5339
- 1
- 0
- 0
- 0
-
-
- 5340
- 1
- 0
- 0
- 0
-
-
- 5341
- 6
- 0
- 0
- 0
-
-
- 5342
- 6
- 0
- 0
- 0
-
-
- 5343
- 6
- 0
- 0
- 0
-
-
- 5344
- 6
- 0
- 0
- 0
-
-
- 5345
- 25
- 0
- 0
- 0
-
-
- 5346
- 25
- 0
- 0
- 0
-
-
- 5347
- 1
- 0
- 0
- 0
-
-
- 5348
- 1
- 0
- 0
- 0
-
-
- 5349
- 1
- 0
- 0
- 0
-
-
- 5350
- 1
- 0
- 0
- 0
-
-
- 5351
- 1
- 0
- 0
- 0
-
-
- 5352
- 1
- 0
- 0
- 0
-
-
- 5353
- 1
- 0
- 0
- 0
-
-
- 5354
- 1
- 0
- 0
- 0
-
-
- 5355
- 1
- 0
- 0
- 0
-
-
- 5356
- 1
- 0
- 0
- 0
-
-
- 5357
- 1
- 0
- 0
- 0
-
-
- 5358
- 1
- 0
- 0
- 0
-
-
- 5359
- 1
- 0
- 0
- 0
-
-
- 5360
- 1
- 0
- 0
- 0
-
-
- 5361
- 1
- 0
- 0
- 0
-
-
- 5362
- 1
- 0
- 0
- 0
-
-
- 5363
- 1
- 0
- 0
- 0
-
-
- 5364
- 1
- 0
- 0
- 0
-
-
- 5365
- 1
- 0
- 0
- 0
-
-
- 5366
- 1
- 0
- 0
- 0
-
-
- 5367
- 1
- 0
- 0
- 0
-
-
- 5368
- 1
- 0
- 0
- 0
-
-
- 5369
- 1
- 0
- 0
- 0
-
-
- 5370
- 1
- 0
- 0
- 0
-
-
- 5371
- 1
- 0
- 0
- 0
-
-
- 5372
- 1
- 0
- 0
- 0
-
-
- 5373
- 1
- 0
- 0
- 0
-
-
- 5374
- 1
- 0
- 0
- 0
-
-
- 5375
- 1
- 0
- 0
- 0
-
-
- 5376
- 1
- 0
- 0
- 0
-
-
- 5377
- 1
- 0
- 0
- 0
-
-
- 5378
- 1
- 0
- 0
- 0
-
-
- 5379
- 1
- 0
- 0
- 0
-
-
- 5380
- 1
- 0
- 0
- 0
-
-
- 5381
- 1
- 0
- 0
- 0
-
-
- 5382
- 1
- 0
- 0
- 0
-
-
- 5383
- 1
- 0
- 0
- 0
-
-
- 5384
- 1
- 0
- 0
- 0
-
-
- 5385
- 1
- 0
- 0
- 0
-
-
- 5386
- 1
- 0
- 0
- 0
-
-
- 5387
- 1
- 0
- 0
- 0
-
-
- 5388
- 1
- 0
- 0
- 0
-
-
- 5389
- 1
- 0
- 0
- 0
-
-
- 5390
- 1
- 0
- 0
- 0
-
-
- 5391
- 1
- 0
- 0
- 0
-
-
- 5392
- 1
- 0
- 0
- 0
-
-
- 5393
- 1
- 0
- 0
- 0
-
-
- 5394
- 1
- 0
- 0
- 0
-
-
- 5395
- 1
- 0
- 0
- 0
-
-
- 5396
- 1
- 0
- 0
- 0
-
-
- 5397
- 1
- 0
- 0
- 0
-
-
- 5398
- 1
- 0
- 0
- 0
-
-
- 5399
- 1
- 0
- 0
- 0
-
-
- 5400
- 1
- 0
- 0
- 0
-
-
- 5401
- 1
- 0
- 0
- 0
-
-
- 5402
- 1
- 0
- 0
- 0
-
-
- 5403
- 1
- 0
- 0
- 0
-
-
- 5404
- 1
- 0
- 0
- 0
-
-
- 5405
- 1
- 0
- 0
- 0
-
-
- 5406
- 1
- 0
- 0
- 0
-
-
- 5407
- 1
- 0
- 0
- 0
-
-
- 5408
- 1
- 0
- 0
- 0
-
-
- 5409
- 1
- 0
- 0
- 0
-
-
- 5410
- 1
- 0
- 0
- 0
-
-
- 5411
- 1
- 0
- 0
- 0
-
-
- 5412
- 1
- 0
- 0
- 0
-
-
- 5413
- 1
- 0
- 0
- 0
-
-
- 5414
- 1
- 0
- 0
- 0
-
-
- 5415
- 1
- 0
- 0
- 0
-
-
- 5416
- 1
- 0
- 0
- 0
-
-
- 5417
- 1
- 0
- 0
- 0
-
-
- 5418
- 1
- 0
- 0
- 0
-
-
- 5419
- 1
- 0
- 0
- 0
-
-
- 5420
- 1
- 0
- 0
- 0
-
-
- 5421
- 1
- 0
- 0
- 0
-
-
- 5422
- 1
- 0
- 0
- 0
-
-
- 5423
- 1
- 0
- 0
- 0
-
-
- 5424
- 1
- 0
- 0
- 0
-
-
- 5425
- 1
- 0
- 0
- 0
-
-
- 5426
- 1
- 0
- 0
- 0
-
-
- 5427
- 1
- 0
- 0
- 0
-
-
- 5428
- 1
- 0
- 0
- 0
-
-
- 5429
- 1
- 0
- 0
- 0
-
-
- 5430
- 1
- 0
- 0
- 0
-
-
- 5431
- 1
- 0
- 0
- 0
-
-
- 5432
- 1
- 0
- 0
- 0
-
-
- 5433
- 1
- 0
- 0
- 0
-
-
- 5434
- 1
- 0
- 0
- 0
-
-
- 5435
- 1
- 0
- 0
- 0
-
-
- 5436
- 1
- 0
- 0
- 0
-
-
- 5437
- 1
- 0
- 0
- 0
-
-
- 5438
- 1
- 0
- 0
- 0
-
-
- 5439
- 1
- 0
- 0
- 0
-
-
- 5440
- 1
- 0
- 0
- 0
-
-
- 5441
- 1
- 0
- 0
- 0
-
-
- 5442
- 1
- 0
- 0
- 0
-
-
- 5443
- 1
- 0
- 0
- 0
-
-
- 5444
- 1
- 0
- 0
- 0
-
-
- 5445
- 1
- 0
- 0
- 0
-
-
- 5446
- 1
- 0
- 0
- 0
-
-
- 5447
- 1
- 0
- 0
- 0
-
-
- 5448
- 1
- 0
- 0
- 0
-
-
- 5449
- 1
- 0
- 0
- 0
-
-
- 5450
- 1
- 0
- 0
- 0
-
-
- 5451
- 1
- 0
- 0
- 0
-
-
- 5452
- 1
- 0
- 0
- 0
-
-
- 5453
- 1
- 0
- 0
- 0
-
-
- 5454
- 1
- 0
- 0
- 0
-
-
- 5455
- 1
- 0
- 0
- 0
-
-
- 5456
- 1
- 0
- 0
- 0
-
-
- 5457
- 1
- 0
- 0
- 0
-
-
- 5458
- 1
- 0
- 0
- 0
-
-
- 5459
- 1
- 0
- 0
- 0
-
-
- 5460
- 1
- 0
- 0
- 0
-
-
- 5461
- 1
- 0
- 0
- 0
-
-
- 5462
- 1
- 0
- 0
- 0
-
-
- 5463
- 1
- 0
- 0
- 0
-
-
- 5464
- 1
- 0
- 0
- 0
-
-
- 5465
- 1
- 0
- 0
- 0
-
-
- 5466
- 1
- 0
- 0
- 0
-
-
- 5467
- 1
- 0
- 0
- 0
-
-
- 5468
- 1
- 0
- 0
- 0
-
-
- 5469
- 1
- 0
- 0
- 0
-
-
- 5470
- 1
- 0
- 0
- 0
-
-
- 5471
- 1
- 0
- 0
- 0
-
-
- 5472
- 1
- 0
- 0
- 0
-
-
- 5473
- 1
- 0
- 0
- 0
-
-
- 5474
- 1
- 0
- 0
- 0
-
-
- 5475
- 1
- 0
- 0
- 0
-
-
- 5476
- 1
- 0
- 0
- 0
-
-
- 5477
- 1
- 0
- 0
- 0
-
-
- 5478
- 1
- 0
- 0
- 0
-
-
- 5479
- 1
- 0
- 0
- 0
-
-
- 5480
- 1
- 0
- 0
- 0
-
-
- 5481
- 1
- 0
- 0
- 0
-
-
- 5482
- 1
- 0
- 0
- 0
-
-
- 5483
- 1
- 0
- 0
- 0
-
-
- 5484
- 1
- 0
- 0
- 0
-
-
- 5485
- 1
- 0
- 0
- 0
-
-
- 5486
- 1
- 0
- 0
- 0
-
-
- 5487
- 1
- 0
- 0
- 0
-
-
- 5488
- 1
- 0
- 0
- 0
-
-
- 5489
- 1
- 0
- 0
- 0
-
-
- 5490
- 1
- 0
- 0
- 0
-
-
- 5491
- 1
- 0
- 0
- 0
-
-
- 5492
- 1
- 0
- 0
- 0
-
-
- 5493
- 1
- 0
- 0
- 0
-
-
- 5494
- 1
- 0
- 0
- 0
-
-
- 5495
- 1
- 0
- 0
- 0
-
-
- 5496
- 1
- 0
- 0
- 0
-
-
- 5497
- 1
- 0
- 0
- 0
-
-
- 5498
- 1
- 0
- 0
- 0
-
-
- 5499
- 1
- 0
- 0
- 0
-
-
- 5500
- 1
- 0
- 0
- 0
-
-
- 5501
- 1
- 0
- 0
- 0
-
-
- 5502
- 1
- 0
- 0
- 0
-
-
- 5503
- 1
- 0
- 0
- 0
-
-
- 5504
- 17
- 0
- 0
- 0
-
-
- 5505
- 17
- 0
- 0
- 0
-
-
- 5506
- 1
- 0
- 0
- 0
-
-
- 5507
- 1
- 0
- 0
- 0
-
-
- 5508
- 1
- 0
- 0
- 0
-
-
- 5509
- 150
- 0
- 0
- 0
-
-
- 5510
- 300
- 0
- 0
- 0
-
-
- 5511
- 300
- 0
- 0
- 0
-
-
- 5512
- 600
- 0
- 0
- 0
-
-
- 5513
- 600
- 0
- 0
- 0
-
-
- 5514
- 1200
- 0
- 0
- 0
-
-
- 5515
- 1200
- 0
- 0
- 0
-
-
- 5516
- 500
- 0
- 0
- 0
-
-
- 5517
- 500
- 0
- 0
- 0
-
-
- 5518
- 1
- 0
- 0
- 0
-
-
- 5519
- 1
- 0
- 0
- 0
-
-
- 5520
- 10
- 0
- 0
- 0
-
-
- 5521
- 1425
- 0
- 0
- 0
-
-
- 5522
- 1425
- 0
- 0
- 0
-
-
- 5523
- 100
- 0
- 0
- 0
-
-
- 5524
- 100
- 0
- 0
- 0
-
-
- 5525
- 100
- 0
- 0
- 0
-
-
- 5526
- 100
- 0
- 0
- 0
-
-
- 5527
- 100
- 0
- 0
- 0
-
-
- 5528
- 100
- 0
- 0
- 0
-
-
- 5529
- 100
- 0
- 0
- 0
-
-
- 5530
- 100
- 0
- 0
- 0
-
-
- 5531
- 100
- 0
- 0
- 0
-
-
- 5532
- 100
- 0
- 0
- 0
-
-
- 5533
- 100
- 0
- 0
- 0
-
-
- 5534
- 100
- 0
- 0
- 0
-
-
- 5535
- 100
- 0
- 0
- 0
-
-
- 5536
- 100
- 0
- 0
- 0
-
-
- 5537
- 100
- 0
- 0
- 0
-
-
- 5538
- 100
- 0
- 0
- 0
-
-
- 5539
- 100
- 0
- 0
- 0
-
-
- 5540
- 100
- 0
- 0
- 0
-
-
- 5541
- 100
- 0
- 0
- 0
-
-
- 5542
- 100
- 0
- 0
- 0
-
-
- 5543
- 100
- 0
- 0
- 0
-
-
- 5544
- 100
- 0
- 0
- 0
-
-
- 5545
- 100
- 0
- 0
- 0
-
-
- 5546
- 100
- 0
- 0
- 0
-
-
- 5547
- 100
- 0
- 0
- 0
-
-
- 5548
- 100
- 0
- 0
- 0
-
-
- 5549
- 100
- 0
- 0
- 0
-
-
- 5550
- 100
- 0
- 0
- 0
-
-
- 5551
- 100
- 0
- 0
- 0
-
-
- 5552
- 100
- 0
- 0
- 0
-
-
- 5553
- 625
- 0
- 0
- 0
-
-
- 5554
- 375
- 0
- 0
- 0
-
-
- 5555
- 500
- 0
- 0
- 0
-
-
- 5556
- 250
- 0
- 0
- 0
-
-
- 5557
- 250
- 0
- 0
- 0
-
-
- 5558
- 50
- 0
- 0
- 0
-
-
- 5559
- 1
- 0
- 0
- 0
-
-
- 5560
- 10
- 0
- 0
- 0
-
-
- 5561
- 1
- 0
- 0
- 0
-
-
- 5562
- 1
- 0
- 0
- 0
-
-
- 5563
- 1
- 0
- 0
- 0
-
-
- 5564
- 1
- 0
- 0
- 0
-
-
- 5565
- 1
- 0
- 0
- 0
-
-
- 5566
- 1
- 0
- 0
- 0
-
-
- 5567
- 1
- 0
- 0
- 0
-
-
- 5568
- 1
- 0
- 0
- 0
-
-
- 5569
- 1
- 0
- 0
- 0
-
-
- 5570
- 1
- 0
- 0
- 0
-
-
- 5571
- 1
- 0
- 0
- 0
-
-
- 5572
- 1
- 0
- 0
- 0
-
-
- 5573
- 1
- 0
- 0
- 0
-
-
- 5574
- 6000
- 0
- 0
- 0
-
-
- 5575
- 10000
- 0
- 0
- 0
-
-
- 5576
- 8000
- 0
- 0
- 0
-
-
- 5577
- 1
- 0
- 0
- 0
-
-
- 5578
- 1
- 0
- 0
- 0
-
-
- 5579
- 1
- 0
- 0
- 0
-
-
- 5580
- 1
- 0
- 0
- 0
-
-
- 5581
- 1
- 0
- 0
- 0
-
-
- 5582
- 1
- 0
- 0
- 0
-
-
- 5583
- 1
- 0
- 0
- 0
-
-
- 5584
- 1
- 0
- 0
- 0
-
-
- 5585
- 1
- 0
- 0
- 0
-
-
- 5586
- 1
- 0
- 0
- 0
-
-
- 5587
- 1
- 0
- 0
- 0
-
-
- 5588
- 1
- 0
- 0
- 0
-
-
- 5589
- 1
- 0
- 0
- 0
-
-
- 5590
- 1
- 0
- 0
- 0
-
-
- 5591
- 1
- 0
- 0
- 0
-
-
- 5592
- 10
- 0
- 0
- 0
-
-
- 5593
- 20
- 0
- 0
- 0
-
-
- 5594
- 20
- 0
- 0
- 0
-
-
- 5595
- 20
- 0
- 0
- 0
-
-
- 5596
- 20
- 0
- 0
- 0
-
-
- 5597
- 20
- 0
- 0
- 0
-
-
- 5598
- 20
- 0
- 0
- 0
-
-
- 5599
- 20
- 0
- 0
- 0
-
-
- 5600
- 20
- 0
- 0
- 0
-
-
- 5601
- 1
- 0
- 0
- 0
-
-
- 5602
- 20
- 0
- 0
- 0
-
-
- 5603
- 1
- 0
- 0
- 0
-
-
- 5604
- 3
- 0
- 0
- 0
-
-
- 5605
- 6
- 0
- 0
- 0
-
-
- 5606
- 1
- 0
- 0
- 0
-
-
- 5607
- 1
- 0
- 0
- 0
-
-
- 5608
- 1
- 0
- 0
- 0
-
-
- 5609
- 1
- 0
- 0
- 0
-
-
- 5610
- 1
- 0
- 0
- 0
-
-
- 5611
- 6000
- 0
- 0
- 0
-
-
- 5612
- 10000
- 0
- 0
- 0
-
-
- 5613
- 8000
- 0
- 0
- 0
-
-
- 5614
- 1
- 0
- 0
- 0
-
-
- 5615
- 1
- 0
- 0
- 0
-
-
- 5616
- 1
- 0
- 0
- 0
-
-
- 5617
- 3
- 0
- 0
- 0
-
-
- 5618
- 12
- 0
- 0
- 0
-
-
- 5619
- 32
- 0
- 0
- 0
-
-
- 5620
- 80
- 0
- 0
- 0
-
-
- 5621
- 400
- 0
- 0
- 0
-
-
- 5622
- 1
- 0
- 0
- 0
-
-
- 5623
- 3
- 0
- 0
- 0
-
-
- 5624
- 12
- 0
- 0
- 0
-
-
- 5625
- 32
- 0
- 0
- 0
-
-
- 5626
- 80
- 0
- 0
- 0
-
-
- 5627
- 400
- 0
- 0
- 0
-
-
- 5628
- 1
- 0
- 0
- 0
-
-
- 5629
- 2
- 0
- 0
- 0
-
-
- 5630
- 10
- 0
- 0
- 0
-
-
- 5631
- 18
- 0
- 0
- 0
-
-
- 5632
- 25
- 0
- 0
- 0
-
-
- 5633
- 65
- 0
- 0
- 0
-
-
- 5634
- 350
- 0
- 0
- 0
-
-
- 5635
- 1
- 0
- 0
- 0
-
-
- 5636
- 2
- 0
- 0
- 0
-
-
- 5637
- 10
- 0
- 0
- 0
-
-
- 5638
- 18
- 0
- 0
- 0
-
-
- 5639
- 25
- 0
- 0
- 0
-
-
- 5640
- 65
- 0
- 0
- 0
-
-
- 5641
- 350
- 0
- 0
- 0
-
-
- 5642
- 4
- 0
- 0
- 0
-
-
- 5643
- 6
- 0
- 0
- 0
-
-
- 5644
- 24
- 0
- 0
- 0
-
-
- 5645
- 64
- 0
- 0
- 0
-
-
- 5646
- 160
- 0
- 0
- 0
-
-
- 5647
- 400
- 0
- 0
- 0
-
-
- 5648
- 4
- 0
- 0
- 0
-
-
- 5649
- 6
- 0
- 0
- 0
-
-
- 5650
- 24
- 0
- 0
- 0
-
-
- 5651
- 64
- 0
- 0
- 0
-
-
- 5652
- 160
- 0
- 0
- 0
-
-
- 5653
- 400
- 0
- 0
- 0
-
-
- 5654
- 1
- 0
- 0
- 0
-
-
- 5655
- 3
- 0
- 0
- 0
-
-
- 5656
- 10
- 0
- 0
- 0
-
-
- 5657
- 27
- 0
- 0
- 0
-
-
- 5658
- 18
- 0
- 0
- 0
-
-
- 5659
- 66
- 0
- 0
- 0
-
-
- 5660
- 166
- 0
- 0
- 0
-
-
- 5661
- 1
- 0
- 0
- 0
-
-
- 5662
- 3
- 0
- 0
- 0
-
-
- 5663
- 10
- 0
- 0
- 0
-
-
- 5664
- 27
- 0
- 0
- 0
-
-
- 5665
- 18
- 0
- 0
- 0
-
-
- 5666
- 66
- 0
- 0
- 0
-
-
- 5667
- 166
- 0
- 0
- 0
-
-
- 5668
- 35
- 0
- 0
- 0
-
-
- 5669
- 35
- 0
- 0
- 0
-
-
- 5670
- 10
- 0
- 0
- 0
-
-
- 5671
- 10
- 0
- 0
- 0
-
-
- 5672
- 125
- 0
- 0
- 0
-
-
- 5673
- 125
- 0
- 0
- 0
-
-
- 5674
- 325
- 0
- 0
- 0
-
-
- 5675
- 325
- 0
- 0
- 0
-
-
- 5676
- 800
- 0
- 0
- 0
-
-
- 5677
- 800
- 0
- 0
- 0
-
-
- 5678
- 8000
- 0
- 0
- 0
-
-
- 5679
- 8000
- 0
- 0
- 0
-
-
- 5680
- 24000
- 0
- 0
- 0
-
-
- 5681
- 24000
- 0
- 0
- 0
-
-
- 5682
- 240
- 0
- 0
- 0
-
-
- 5683
- 240
- 0
- 0
- 0
-
-
- 5684
- 565
- 0
- 0
- 0
-
-
- 5685
- 565
- 0
- 0
- 0
-
-
- 5686
- 35
- 0
- 0
- 0
-
-
- 5687
- 35
- 0
- 0
- 0
-
-
- 5688
- 10
- 0
- 0
- 0
-
-
- 5689
- 10
- 0
- 0
- 0
-
-
- 5690
- 125
- 0
- 0
- 0
-
-
- 5691
- 125
- 0
- 0
- 0
-
-
- 5692
- 325
- 0
- 0
- 0
-
-
- 5693
- 325
- 0
- 0
- 0
-
-
- 5694
- 800
- 0
- 0
- 0
-
-
- 5695
- 800
- 0
- 0
- 0
-
-
- 5696
- 8000
- 0
- 0
- 0
-
-
- 5697
- 8000
- 0
- 0
- 0
-
-
- 5698
- 24000
- 0
- 0
- 0
-
-
- 5699
- 24000
- 0
- 0
- 0
-
-
- 5700
- 240
- 0
- 0
- 0
-
-
- 5701
- 240
- 0
- 0
- 0
-
-
- 5702
- 565
- 0
- 0
- 0
-
-
- 5703
- 565
- 0
- 0
- 0
-
-
- 5704
- 26
- 0
- 0
- 0
-
-
- 5705
- 26
- 0
- 0
- 0
-
-
- 5706
- 91
- 0
- 0
- 0
-
-
- 5707
- 91
- 0
- 0
- 0
-
-
- 5708
- 325
- 0
- 0
- 0
-
-
- 5709
- 325
- 0
- 0
- 0
-
-
- 5710
- 845
- 0
- 0
- 0
-
-
- 5711
- 845
- 0
- 0
- 0
-
-
- 5712
- 2080
- 0
- 0
- 0
-
-
- 5713
- 2080
- 0
- 0
- 0
-
-
- 5714
- 20800
- 0
- 0
- 0
-
-
- 5715
- 20800
- 0
- 0
- 0
-
-
- 5716
- 62400
- 0
- 0
- 0
-
-
- 5717
- 62400
- 0
- 0
- 0
-
-
- 5718
- 26
- 0
- 0
- 0
-
-
- 5719
- 26
- 0
- 0
- 0
-
-
- 5720
- 91
- 0
- 0
- 0
-
-
- 5721
- 91
- 0
- 0
- 0
-
-
- 5722
- 325
- 0
- 0
- 0
-
-
- 5723
- 325
- 0
- 0
- 0
-
-
- 5724
- 845
- 0
- 0
- 0
-
-
- 5725
- 845
- 0
- 0
- 0
-
-
- 5726
- 2080
- 0
- 0
- 0
-
-
- 5727
- 2080
- 0
- 0
- 0
-
-
- 5728
- 20800
- 0
- 0
- 0
-
-
- 5729
- 20800
- 0
- 0
- 0
-
-
- 5730
- 62400
- 0
- 0
- 0
-
-
- 5731
- 62400
- 0
- 0
- 0
-
-
- 5732
- 1
- 0
- 0
- 0
-
-
- 5733
- 1
- 0
- 0
- 0
-
-
- 5734
- 750
- 0
- 0
- 0
-
-
- 5735
- 750
- 0
- 0
- 0
-
-
- 5736
- 750
- 0
- 0
- 0
-
-
- 5737
- 750
- 0
- 0
- 0
-
-
- 5738
- 1
- 0
- 0
- 0
-
-
- 5739
- 2
- 0
- 0
- 0
-
-
- 5740
- 2
- 0
- 0
- 0
-
-
- 5741
- 2
- 0
- 0
- 0
-
-
- 5742
- 2
- 0
- 0
- 0
-
-
- 5743
- 2
- 0
- 0
- 0
-
-
- 5744
- 2
- 0
- 0
- 0
-
-
- 5745
- 2
- 0
- 0
- 0
-
-
- 5746
- 2
- 0
- 0
- 0
-
-
- 5747
- 2
- 0
- 0
- 0
-
-
- 5748
- 2
- 0
- 0
- 0
-
-
- 5749
- 5
- 0
- 0
- 0
-
-
- 5750
- 5
- 0
- 0
- 0
-
-
- 5751
- 2
- 0
- 0
- 0
-
-
- 5752
- 2
- 0
- 0
- 0
-
-
- 5753
- 2
- 0
- 0
- 0
-
-
- 5754
- 2
- 0
- 0
- 0
-
-
- 5755
- 2
- 0
- 0
- 0
-
-
- 5756
- 2
- 0
- 0
- 0
-
-
- 5757
- 2
- 0
- 0
- 0
-
-
- 5758
- 2
- 0
- 0
- 0
-
-
- 5759
- 2
- 0
- 0
- 0
-
-
- 5760
- 2
- 0
- 0
- 0
-
-
- 5761
- 2
- 0
- 0
- 0
-
-
- 5762
- 2
- 0
- 0
- 0
-
-
- 5763
- 2
- 0
- 0
- 0
-
-
- 5764
- 2
- 0
- 0
- 0
-
-
- 5765
- 2
- 0
- 0
- 0
-
-
- 5766
- 2
- 0
- 0
- 0
-
-
- 5767
- 1
- 0
- 0
- 0
-
-
- 5768
- 1
- 0
- 0
- 0
-
-
- 5769
- 1
- 0
- 0
- 0
-
-
- 5770
- 1
- 0
- 0
- 0
-
-
- 5771
- 1
- 0
- 0
- 0
-
-
- 5772
- 1
- 0
- 0
- 0
-
-
- 5773
- 1
- 0
- 0
- 0
-
-
- 5774
- 1
- 0
- 0
- 0
-
-
- 5775
- 1
- 0
- 0
- 0
-
-
- 5776
- 1
- 0
- 0
- 0
-
-
- 5777
- 1
- 0
- 0
- 0
-
-
- 5778
- 1
- 0
- 0
- 0
-
-
- 5779
- 1
- 0
- 0
- 0
-
-
- 5780
- 1
- 0
- 0
- 0
-
-
- 5781
- 1
- 0
- 0
- 0
-
-
- 5782
- 1
- 0
- 0
- 0
-
-
- 5783
- 1
- 0
- 0
- 0
-
-
- 5784
- 1
- 0
- 0
- 0
-
-
- 5785
- 1
- 0
- 0
- 0
-
-
- 5786
- 1
- 0
- 0
- 0
-
-
- 5787
- 1
- 0
- 0
- 0
-
-
- 5788
- 1
- 0
- 0
- 0
-
-
- 5789
- 1
- 0
- 0
- 0
-
-
- 5790
- 1
- 0
- 0
- 0
-
-
- 5791
- 1
- 0
- 0
- 0
-
-
- 5792
- 1
- 0
- 0
- 0
-
-
- 5793
- 1
- 0
- 0
- 0
-
-
- 5794
- 1
- 0
- 0
- 0
-
-
- 5795
- 1
- 0
- 0
- 0
-
-
- 5796
- 1
- 0
- 0
- 0
-
-
- 5797
- 1
- 0
- 0
- 0
-
-
- 5798
- 1
- 0
- 0
- 0
-
-
- 5799
- 1
- 0
- 0
- 0
-
-
- 5800
- 1
- 0
- 0
- 0
-
-
- 5801
- 1
- 0
- 0
- 0
-
-
- 5802
- 1
- 0
- 0
- 0
-
-
- 5803
- 1
- 0
- 0
- 0
-
-
- 5804
- 1
- 0
- 0
- 0
-
-
- 5805
- 1
- 0
- 0
- 0
-
-
- 5806
- 1
- 0
- 0
- 0
-
-
- 5807
- 1
- 0
- 0
- 0
-
-
- 5808
- 1
- 0
- 0
- 0
-
-
- 5809
- 1
- 0
- 0
- 0
-
-
- 5810
- 1
- 0
- 0
- 0
-
-
- 5811
- 1
- 0
- 0
- 0
-
-
- 5812
- 1
- 0
- 0
- 0
-
-
- 5813
- 1
- 0
- 0
- 0
-
-
- 5814
- 1
- 0
- 0
- 0
-
-
- 5815
- 1
- 0
- 0
- 0
-
-
- 5816
- 1
- 0
- 0
- 0
-
-
- 5817
- 1
- 0
- 0
- 0
-
-
- 5818
- 1
- 0
- 0
- 0
-
-
- 5819
- 1
- 0
- 0
- 0
-
-
- 5820
- 1
- 0
- 0
- 0
-
-
- 5821
- 1
- 0
- 0
- 0
-
-
- 5822
- 1
- 0
- 0
- 0
-
-
- 5823
- 1
- 0
- 0
- 0
-
-
- 5824
- 1
- 0
- 0
- 0
-
-
- 5825
- 1
- 0
- 0
- 0
-
-
- 5826
- 1
- 0
- 0
- 0
-
-
- 5827
- 1
- 0
- 0
- 0
-
-
- 5828
- 1
- 0
- 0
- 0
-
-
- 5829
- 1
- 0
- 0
- 0
-
-
- 5830
- 1
- 0
- 0
- 0
-
-
- 5831
- 1
- 0
- 0
- 0
-
-
- 5832
- 1
- 0
- 0
- 0
-
-
- 5833
- 1
- 0
- 0
- 0
-
-
- 5834
- 1
- 0
- 0
- 0
-
-
- 5835
- 1
- 0
- 0
- 0
-
-
- 5836
- 1
- 0
- 0
- 0
-
-
- 5837
- 1
- 0
- 0
- 0
-
-
- 5838
- 1
- 0
- 0
- 0
-
-
- 5839
- 1
- 0
- 0
- 0
-
-
- 5840
- 1
- 0
- 0
- 0
-
-
- 5841
- 1
- 0
- 0
- 0
-
-
- 5842
- 1
- 0
- 0
- 0
-
-
- 5843
- 1
- 0
- 0
- 0
-
-
- 5844
- 1
- 0
- 0
- 0
-
-
- 5845
- 1
- 0
- 0
- 0
-
-
- 5846
- 1
- 0
- 0
- 0
-
-
- 5847
- 1
- 0
- 0
- 0
-
-
- 5848
- 1
- 0
- 0
- 0
-
-
- 5849
- 1
- 0
- 0
- 0
-
-
- 5850
- 1
- 0
- 0
- 0
-
-
- 5851
- 1
- 0
- 0
- 0
-
-
- 5852
- 1
- 0
- 0
- 0
-
-
- 5853
- 1
- 0
- 0
- 0
-
-
- 5854
- 1
- 0
- 0
- 0
-
-
- 5855
- 1
- 0
- 0
- 0
-
-
- 5856
- 1
- 0
- 0
- 0
-
-
- 5857
- 1
- 0
- 0
- 0
-
-
- 5858
- 1
- 0
- 0
- 0
-
-
- 5859
- 1
- 0
- 0
- 0
-
-
- 5860
- 1
- 0
- 0
- 0
-
-
- 5861
- 1
- 0
- 0
- 0
-
-
- 5862
- 1
- 0
- 0
- 0
-
-
- 5863
- 1
- 0
- 0
- 0
-
-
- 5864
- 1
- 0
- 0
- 0
-
-
- 5865
- 1
- 0
- 0
- 0
-
-
- 5866
- 1
- 0
- 0
- 0
-
-
- 5867
- 1
- 0
- 0
- 0
-
-
- 5868
- 1
- 0
- 0
- 0
-
-
- 5869
- 1
- 0
- 0
- 0
-
-
- 5870
- 1
- 0
- 0
- 0
-
-
- 5871
- 1
- 0
- 0
- 0
-
-
- 5872
- 1
- 0
- 0
- 0
-
-
- 5873
- 1
- 0
- 0
- 0
-
-
- 5874
- 1
- 0
- 0
- 0
-
-
- 5875
- 1
- 0
- 0
- 0
-
-
- 5876
- 1
- 0
- 0
- 0
-
-
- 5877
- 1
- 0
- 0
- 0
-
-
- 5878
- 1
- 0
- 0
- 0
-
-
- 5879
- 1
- 0
- 0
- 0
-
-
- 5880
- 1
- 0
- 0
- 0
-
-
- 5881
- 1
- 0
- 0
- 0
-
-
- 5882
- 1
- 0
- 0
- 0
-
-
- 5883
- 1
- 0
- 0
- 0
-
-
- 5884
- 1
- 0
- 0
- 0
-
-
- 5885
- 1
- 0
- 0
- 0
-
-
- 5886
- 1
- 0
- 0
- 0
-
-
- 5887
- 1
- 0
- 0
- 0
-
-
- 5888
- 1
- 0
- 0
- 0
-
-
- 5889
- 1
- 0
- 0
- 0
-
-
- 5890
- 1
- 0
- 0
- 0
-
-
- 5891
- 1
- 0
- 0
- 0
-
-
- 5892
- 1
- 0
- 0
- 0
-
-
- 5893
- 1
- 0
- 0
- 0
-
-
- 5894
- 1
- 0
- 0
- 0
-
-
- 5895
- 1
- 0
- 0
- 0
-
-
- 5896
- 1
- 0
- 0
- 0
-
-
- 5897
- 1
- 0
- 0
- 0
-
-
- 5898
- 1
- 0
- 0
- 0
-
-
- 5899
- 1
- 0
- 0
- 0
-
-
- 5900
- 1
- 0
- 0
- 0
-
-
- 5901
- 1
- 0
- 0
- 0
-
-
- 5902
- 1
- 0
- 0
- 0
-
-
- 5903
- 1
- 0
- 0
- 0
-
-
- 5904
- 1
- 0
- 0
- 0
-
-
- 5905
- 1
- 0
- 0
- 0
-
-
- 5906
- 1
- 0
- 0
- 0
-
-
- 5907
- 1
- 0
- 0
- 0
-
-
- 5908
- 1
- 0
- 0
- 0
-
-
- 5909
- 1
- 0
- 0
- 0
-
-
- 5910
- 1
- 0
- 0
- 0
-
-
- 5911
- 1
- 0
- 0
- 0
-
-
- 5912
- 1
- 0
- 0
- 0
-
-
- 5913
- 1
- 0
- 0
- 0
-
-
- 5914
- 1
- 0
- 0
- 0
-
-
- 5915
- 1
- 0
- 0
- 0
-
-
- 5916
- 1
- 0
- 0
- 0
-
-
- 5917
- 1
- 0
- 0
- 0
-
-
- 5918
- 1
- 0
- 0
- 0
-
-
- 5919
- 1
- 0
- 0
- 0
-
-
- 5920
- 1
- 0
- 0
- 0
-
-
- 5921
- 1
- 0
- 0
- 0
-
-
- 5922
- 1
- 0
- 0
- 0
-
-
- 5923
- 1
- 0
- 0
- 0
-
-
- 5924
- 1
- 0
- 0
- 0
-
-
- 5925
- 1
- 0
- 0
- 0
-
-
- 5926
- 1
- 0
- 0
- 0
-
-
- 5927
- 1
- 0
- 0
- 0
-
-
- 5928
- 1
- 0
- 0
- 0
-
-
- 5929
- 1
- 0
- 0
- 0
-
-
- 5930
- 1
- 0
- 0
- 0
-
-
- 5931
- 6
- 0
- 0
- 0
-
-
- 5932
- 6
- 0
- 0
- 0
-
-
- 5933
- 2
- 0
- 0
- 0
-
-
- 5934
- 2
- 0
- 0
- 0
-
-
- 5935
- 1
- 0
- 0
- 0
-
-
- 5936
- 1
- 0
- 0
- 0
-
-
- 5937
- 288
- 0
- 0
- 0
-
-
- 5938
- 288
- 0
- 0
- 0
-
-
- 5939
- 14
- 0
- 0
- 0
-
-
- 5940
- 432
- 0
- 0
- 0
-
-
- 5941
- 432
- 0
- 0
- 0
-
-
- 5942
- 14
- 0
- 0
- 0
-
-
- 5943
- 360
- 0
- 0
- 0
-
-
- 5944
- 360
- 0
- 0
- 0
-
-
- 5945
- 288
- 0
- 0
- 0
-
-
- 5946
- 288
- 0
- 0
- 0
-
-
- 5947
- 216
- 0
- 0
- 0
-
-
- 5948
- 216
- 0
- 0
- 0
-
-
- 5949
- 144
- 0
- 0
- 0
-
-
- 5950
- 144
- 0
- 0
- 0
-
-
- 5951
- 14
- 0
- 0
- 0
-
-
- 5952
- 360
- 0
- 0
- 0
-
-
- 5953
- 360
- 0
- 0
- 0
-
-
- 5954
- 288
- 0
- 0
- 0
-
-
- 5955
- 288
- 0
- 0
- 0
-
-
- 5956
- 216
- 0
- 0
- 0
-
-
- 5957
- 216
- 0
- 0
- 0
-
-
- 5958
- 144
- 0
- 0
- 0
-
-
- 5959
- 144
- 0
- 0
- 0
-
-
- 5960
- 1
- 0
- 0
- 0
-
-
- 5961
- 1
- 0
- 0
- 0
-
-
- 5962
- 1
- 0
- 0
- 0
-
-
- 5963
- 1
- 0
- 0
- 0
-
-
- 5964
- 1
- 0
- 0
- 0
-
-
- 5965
- 1
- 0
- 0
- 0
-
-
- 5966
- 1
- 0
- 0
- 0
-
-
- 5967
- 1
- 0
- 0
- 0
-
-
- 5968
- 1
- 0
- 0
- 0
-
-
- 5969
- 1
- 0
- 0
- 0
-
-
- 5970
- 19
- 0
- 0
- 0
-
-
- 5971
- 19
- 0
- 0
- 0
-
-
- 5972
- 64
- 0
- 0
- 0
-
-
- 5973
- 64
- 0
- 0
- 0
-
-
- 5974
- 87
- 0
- 0
- 0
-
-
- 5975
- 87
- 0
- 0
- 0
-
-
- 5976
- 87
- 0
- 0
- 0
-
-
- 5977
- 87
- 0
- 0
- 0
-
-
- 5978
- 1
- 0
- 0
- 0
-
-
- 5979
- 1
- 0
- 0
- 0
-
-
- 5980
- 54
- 0
- 0
- 0
-
-
- 5981
- 54
- 0
- 0
- 0
-
-
- 5982
- 48
- 0
- 0
- 0
-
-
- 5983
- 48
- 0
- 0
- 0
-
-
- 5984
- 16
- 0
- 0
- 0
-
-
- 5985
- 16
- 0
- 0
- 0
-
-
- 5986
- 9
- 0
- 0
- 0
-
-
- 5987
- 9
- 0
- 0
- 0
-
-
- 5988
- 9
- 0
- 0
- 0
-
-
- 5989
- 9
- 0
- 0
- 0
-
-
- 5990
- 1
- 0
- 0
- 0
-
-
- 5991
- 1
- 0
- 0
- 0
-
-
- 5992
- 13
- 0
- 0
- 0
-
-
- 5993
- 13
- 0
- 0
- 0
-
-
- 5994
- 4
- 0
- 0
- 0
-
-
- 5995
- 4
- 0
- 0
- 0
-
-
- 5996
- 5
- 0
- 0
- 0
-
-
- 5997
- 5
- 0
- 0
- 0
-
-
- 5998
- 7
- 0
- 0
- 0
-
-
- 5999
- 7
- 0
- 0
- 0
-
-
- 6000
- 10
- 0
- 0
- 0
-
-
- 6001
- 10
- 0
- 0
- 0
-
-
- 6002
- 15
- 0
- 0
- 0
-
-
- 6003
- 15
- 0
- 0
- 0
-
-
- 6004
- 38
- 0
- 0
- 0
-
-
- 6005
- 38
- 0
- 0
- 0
-
-
- 6006
- 4
- 0
- 0
- 0
-
-
- 6007
- 4
- 0
- 0
- 0
-
-
- 6008
- 4
- 0
- 0
- 0
-
-
- 6009
- 4
- 0
- 0
- 0
-
-
- 6010
- 1
- 0
- 0
- 0
-
-
- 6011
- 1
- 0
- 0
- 0
-
-
- 6012
- 4
- 0
- 0
- 0
-
-
- 6013
- 4
- 0
- 0
- 0
-
-
- 6014
- 2
- 0
- 0
- 0
-
-
- 6015
- 2
- 0
- 0
- 0
-
-
- 6016
- 1
- 0
- 0
- 0
-
-
- 6017
- 1
- 0
- 0
- 0
-
-
- 6018
- 65
- 0
- 0
- 0
-
-
- 6019
- 65
- 0
- 0
- 0
-
-
- 6020
- 1
- 0
- 0
- 0
-
-
- 6021
- 1
- 0
- 0
- 0
-
-
- 6022
- 1
- 0
- 0
- 0
-
-
- 6023
- 1
- 0
- 0
- 0
-
-
- 6024
- 1
- 0
- 0
- 0
-
-
- 6025
- 1
- 0
- 0
- 0
-
-
- 6026
- 1
- 0
- 0
- 0
-
-
- 6027
- 1
- 0
- 0
- 0
-
-
- 6028
- 1
- 0
- 0
- 0
-
-
- 6029
- 1
- 0
- 0
- 0
-
-
- 6030
- 1
- 0
- 0
- 0
-
-
- 6031
- 1
- 0
- 0
- 0
-
-
- 6032
- 20
- 0
- 0
- 0
-
-
- 6033
- 20
- 0
- 0
- 0
-
-
- 6034
- 85
- 0
- 0
- 0
-
-
- 6035
- 85
- 0
- 0
- 0
-
-
- 6036
- 40
- 0
- 0
- 0
-
-
- 6037
- 40
- 0
- 0
- 0
-
-
- 6038
- 1
- 0
- 0
- 0
-
-
- 6039
- 1
- 0
- 0
- 0
-
-
- 6040
- 1
- 0
- 0
- 0
-
-
- 6041
- 1
- 0
- 0
- 0
-
-
- 6042
- 1
- 0
- 0
- 0
-
-
- 6043
- 1
- 0
- 0
- 0
-
-
- 6044
- 1
- 0
- 0
- 0
-
-
- 6045
- 1
- 0
- 0
- 0
-
-
- 6046
- 1
- 0
- 0
- 0
-
-
- 6047
- 1
- 0
- 0
- 0
-
-
- 6048
- 1
- 0
- 0
- 0
-
-
- 6049
- 1
- 0
- 0
- 0
-
-
- 6050
- 1
- 0
- 0
- 0
-
-
- 6051
- 1
- 0
- 0
- 0
-
-
- 6052
- 1
- 0
- 0
- 0
-
-
- 6053
- 1
- 0
- 0
- 0
-
-
- 6054
- 1
- 0
- 0
- 0
-
-
- 6055
- 1
- 0
- 0
- 0
-
-
- 6056
- 1
- 0
- 0
- 0
-
-
- 6057
- 1
- 0
- 0
- 0
-
-
- 6058
- 1
- 0
- 0
- 0
-
-
- 6059
- 1
- 0
- 0
- 0
-
-
- 6060
- 1
- 0
- 0
- 0
-
-
- 6061
- 3
- 0
- 0
- 0
-
-
- 6062
- 3
- 0
- 0
- 0
-
-
- 6063
- 1
- 0
- 0
- 0
-
-
- 6064
- 20
- 0
- 0
- 0
-
-
- 6065
- 150
- 0
- 0
- 0
-
-
- 6066
- 20
- 0
- 0
- 0
-
-
- 6067
- 100
- 0
- 0
- 0
-
-
- 6068
- 20
- 0
- 0
- 0
-
-
- 6069
- 30
- 0
- 0
- 0
-
-
- 6070
- 50
- 0
- 0
- 0
-
-
- 6071
- 1
- 0
- 0
- 0
-
-
- 6072
- 10
- 0
- 0
- 0
-
-
- 6073
- 2
- 0
- 0
- 0
-
-
- 6074
- 1
- 0
- 0
- 0
-
-
- 6075
- 2
- 0
- 0
- 0
-
-
- 6076
- 1
- 0
- 0
- 0
-
-
- 6077
- 2
- 0
- 0
- 0
-
-
- 6078
- 1
- 0
- 0
- 0
-
-
- 6079
- 2
- 0
- 0
- 0
-
-
- 6080
- 1
- 0
- 0
- 0
-
-
- 6081
- 10
- 0
- 0
- 0
-
-
- 6082
- 150
- 0
- 0
- 0
-
-
- 6083
- 1
- 0
- 0
- 0
-
-
- 6084
- 1
- 0
- 0
- 0
-
-
- 6085
- 20
- 0
- 0
- 0
-
-
- 6086
- 20
- 0
- 0
- 0
-
-
- 6087
- 20
- 0
- 0
- 0
-
-
- 6088
- 20
- 0
- 0
- 0
-
-
- 6089
- 1
- 0
- 0
- 0
-
-
- 6090
- 1
- 0
- 0
- 0
-
-
- 6091
- 1
- 0
- 0
- 0
-
-
- 6092
- 1
- 0
- 0
- 0
-
-
- 6093
- 1
- 0
- 0
- 0
-
-
- 6094
- 1
- 0
- 0
- 0
-
-
- 6095
- 1
- 0
- 0
- 0
-
-
- 6096
- 1
- 0
- 0
- 0
-
-
- 6097
- 10
- 0
- 0
- 0
-
-
- 6098
- 50
- 0
- 0
- 0
-
-
- 6099
- 50
- 0
- 0
- 0
-
-
- 6100
- 45
- 0
- 0
- 0
-
-
- 6101
- 35
- 0
- 0
- 0
-
-
- 6102
- 15
- 0
- 0
- 0
-
-
- 6103
- 1
- 0
- 0
- 0
-
-
- 6104
- 1
- 0
- 0
- 0
-
-
- 6105
- 1
- 0
- 0
- 0
-
-
- 6106
- 300
- 0
- 0
- 0
-
-
- 6107
- 300
- 0
- 0
- 0
-
-
- 6108
- 300
- 0
- 0
- 0
-
-
- 6109
- 300
- 0
- 0
- 0
-
-
- 6110
- 300
- 0
- 0
- 0
-
-
- 6111
- 250
- 0
- 0
- 0
-
-
- 6112
- 2
- 0
- 0
- 0
-
-
- 6113
- 4
- 0
- 0
- 0
-
-
- 6114
- 1
- 0
- 0
- 0
-
-
- 6115
- 1
- 0
- 0
- 0
-
-
- 6116
- 1
- 0
- 0
- 0
-
-
- 6117
- 1
- 0
- 0
- 0
-
-
- 6118
- 2
- 0
- 0
- 0
-
-
- 6119
- 1
- 0
- 0
- 0
-
-
- 6120
- 1
- 0
- 0
- 0
-
-
- 6121
- 1
- 0
- 0
- 0
-
-
- 6122
- 1
- 0
- 0
- 0
-
-
- 6123
- 1
- 0
- 0
- 0
-
-
- 6124
- 1
- 0
- 0
- 0
-
-
- 6125
- 1000
- 0
- 0
- 0
-
-
- 6126
- 1000
- 0
- 0
- 0
-
-
- 6127
- 1000
- 0
- 0
- 0
-
-
- 6128
- 35200
- 0
- 0
- 0
-
-
- 6129
- 65000
- 0
- 0
- 0
-
-
- 6130
- 64000
- 0
- 0
- 0
-
-
- 6131
- 60000
- 0
- 0
- 0
-
-
- 6132
- 60000
- 0
- 0
- 0
-
-
- 6133
- 7800
- 0
- 0
- 0
-
-
- 6134
- 7800
- 0
- 0
- 0
-
-
- 6135
- 3900
- 0
- 0
- 0
-
-
- 6136
- 3900
- 0
- 0
- 0
-
-
- 6137
- 10000
- 0
- 0
- 0
-
-
- 6138
- 10000
- 0
- 0
- 0
-
-
- 6139
- 45000
- 0
- 0
- 0
-
-
- 6140
- 45000
- 0
- 0
- 0
-
-
- 6141
- 40000
- 0
- 0
- 0
-
-
- 6142
- 40000
- 0
- 0
- 0
-
-
- 6143
- 650
- 0
- 0
- 0
-
-
- 6144
- 650
- 0
- 0
- 0
-
-
- 6145
- 650
- 0
- 0
- 0
-
-
- 6146
- 650
- 0
- 0
- 0
-
-
- 6147
- 650
- 0
- 0
- 0
-
-
- 6148
- 650
- 0
- 0
- 0
-
-
- 6149
- 650
- 0
- 0
- 0
-
-
- 6150
- 650
- 0
- 0
- 0
-
-
- 6151
- 650
- 0
- 0
- 0
-
-
- 6152
- 650
- 0
- 0
- 0
-
-
- 6153
- 650
- 0
- 0
- 0
-
-
- 6154
- 650
- 0
- 0
- 0
-
-
- 6155
- 60
- 0
- 0
- 0
-
-
- 6156
- 60
- 0
- 0
- 0
-
-
- 6157
- 60
- 0
- 0
- 0
-
-
- 6158
- 60
- 0
- 0
- 0
-
-
- 6159
- 60
- 0
- 0
- 0
-
-
- 6160
- 60
- 0
- 0
- 0
-
-
- 6161
- 60
- 0
- 0
- 0
-
-
- 6162
- 60
- 0
- 0
- 0
-
-
- 6163
- 60
- 0
- 0
- 0
-
-
- 6164
- 60
- 0
- 0
- 0
-
-
- 6165
- 60
- 0
- 0
- 0
-
-
- 6166
- 60
- 0
- 0
- 0
-
-
- 6167
- 60
- 0
- 0
- 0
-
-
- 6168
- 60
- 0
- 0
- 0
-
-
- 6169
- 60
- 0
- 0
- 0
-
-
- 6170
- 60
- 0
- 0
- 0
-
-
- 6171
- 60
- 0
- 0
- 0
-
-
- 6172
- 60
- 0
- 0
- 0
-
-
- 6173
- 60
- 0
- 0
- 0
-
-
- 6174
- 60
- 0
- 0
- 0
-
-
- 6175
- 35200
- 0
- 0
- 0
-
-
- 6176
- 65000
- 0
- 0
- 0
-
-
- 6177
- 64000
- 0
- 0
- 0
-
-
- 6178
- 5
- 0
- 0
- 0
-
-
- 6179
- 5
- 0
- 0
- 0
-
-
- 6180
- 1
- 0
- 0
- 0
-
-
- 6181
- 1
- 0
- 0
- 0
-
-
- 6182
- 1
- 0
- 0
- 0
-
-
- 6183
- 1
- 0
- 0
- 0
-
-
- 6184
- 1
- 0
- 0
- 0
-
-
- 6185
- 1
- 0
- 0
- 0
-
-
- 6186
- 1
- 0
- 0
- 0
-
-
- 6187
- 1
- 0
- 0
- 0
-
-
- 6188
- 1
- 0
- 0
- 0
-
-
- 6189
- 1
- 0
- 0
- 0
-
-
- 6190
- 1
- 0
- 0
- 0
-
-
- 6191
- 1
- 0
- 0
- 0
-
-
- 6192
- 1
- 0
- 0
- 0
-
-
- 6193
- 1
- 0
- 0
- 0
-
-
- 6194
- 1
- 0
- 0
- 0
-
-
- 6195
- 1
- 0
- 0
- 0
-
-
- 6196
- 1
- 0
- 0
- 0
-
-
- 6197
- 1
- 0
- 0
- 0
-
-
- 6198
- 1
- 0
- 0
- 0
-
-
- 6199
- 1
- 0
- 0
- 0
-
-
- 6200
- 1
- 0
- 0
- 0
-
-
- 6201
- 1
- 0
- 0
- 0
-
-
- 6202
- 1
- 0
- 0
- 0
-
-
- 6203
- 1
- 0
- 0
- 0
-
-
- 6204
- 1
- 0
- 0
- 0
-
-
- 6205
- 1
- 0
- 0
- 0
-
-
- 6206
- 1
- 0
- 0
- 0
-
-
- 6207
- 1
- 0
- 0
- 0
-
-
- 6208
- 1
- 0
- 0
- 0
-
-
- 6209
- 5
- 0
- 0
- 0
-
-
- 6210
- 1
- 0
- 0
- 0
-
-
- 6211
- 100
- 0
- 0
- 0
-
-
- 6212
- 100
- 0
- 0
- 0
-
-
- 6213
- 200
- 0
- 0
- 0
-
-
- 6214
- 200
- 0
- 0
- 0
-
-
- 6215
- 3000
- 0
- 0
- 0
-
-
- 6216
- 3000
- 0
- 0
- 0
-
-
- 6217
- 2750
- 0
- 0
- 0
-
-
- 6218
- 2750
- 0
- 0
- 0
-
-
- 6219
- 3000
- 0
- 0
- 0
-
-
- 6220
- 3000
- 0
- 0
- 0
-
-
- 6221
- 3000
- 0
- 0
- 0
-
-
- 6222
- 3000
- 0
- 0
- 0
-
-
- 6223
- 3000
- 0
- 0
- 0
-
-
- 6224
- 3000
- 0
- 0
- 0
-
-
- 6225
- 3000
- 0
- 0
- 0
-
-
- 6226
- 3000
- 0
- 0
- 0
-
-
- 6227
- 3000
- 0
- 0
- 0
-
-
- 6228
- 3000
- 0
- 0
- 0
-
-
- 6229
- 3000
- 0
- 0
- 0
-
-
- 6230
- 3000
- 0
- 0
- 0
-
-
- 6231
- 3000
- 0
- 0
- 0
-
-
- 6232
- 3000
- 0
- 0
- 0
-
-
- 6233
- 3000
- 0
- 0
- 0
-
-
- 6234
- 3000
- 0
- 0
- 0
-
-
- 6235
- 3000
- 0
- 0
- 0
-
-
- 6236
- 3000
- 0
- 0
- 0
-
-
- 6237
- 3000
- 0
- 0
- 0
-
-
- 6238
- 3000
- 0
- 0
- 0
-
-
- 6239
- 3000
- 0
- 0
- 0
-
-
- 6240
- 3000
- 0
- 0
- 0
-
-
- 6241
- 3000
- 0
- 0
- 0
-
-
- 6242
- 3000
- 0
- 0
- 0
-
-
- 6243
- 3000
- 0
- 0
- 0
-
-
- 6244
- 3000
- 0
- 0
- 0
-
-
- 6245
- 3000
- 0
- 0
- 0
-
-
- 6246
- 3000
- 0
- 0
- 0
-
-
- 6247
- 3000
- 0
- 0
- 0
-
-
- 6248
- 3000
- 0
- 0
- 0
-
-
- 6249
- 3000
- 0
- 0
- 0
-
-
- 6250
- 3000
- 0
- 0
- 0
-
-
- 6251
- 3000
- 0
- 0
- 0
-
-
- 6252
- 3000
- 0
- 0
- 0
-
-
- 6253
- 3000
- 0
- 0
- 0
-
-
- 6254
- 3000
- 0
- 0
- 0
-
-
- 6255
- 3000
- 0
- 0
- 0
-
-
- 6256
- 3000
- 0
- 0
- 0
-
-
- 6257
- 3000
- 0
- 0
- 0
-
-
- 6258
- 3000
- 0
- 0
- 0
-
-
- 6259
- 3000
- 0
- 0
- 0
-
-
- 6260
- 3000
- 0
- 0
- 0
-
-
- 6261
- 3000
- 0
- 0
- 0
-
-
- 6262
- 3000
- 0
- 0
- 0
-
-
- 6263
- 3000
- 0
- 0
- 0
-
-
- 6264
- 3000
- 0
- 0
- 0
-
-
- 6265
- 3000
- 0
- 0
- 0
-
-
- 6266
- 3000
- 0
- 0
- 0
-
-
- 6267
- 3000
- 0
- 0
- 0
-
-
- 6268
- 3000
- 0
- 0
- 0
-
-
- 6269
- 3000
- 0
- 0
- 0
-
-
- 6270
- 3000
- 0
- 0
- 0
-
-
- 6271
- 3000
- 0
- 0
- 0
-
-
- 6272
- 3000
- 0
- 0
- 0
-
-
- 6273
- 3000
- 0
- 0
- 0
-
-
- 6274
- 3000
- 0
- 0
- 0
-
-
- 6275
- 3000
- 0
- 0
- 0
-
-
- 6276
- 3000
- 0
- 0
- 0
-
-
- 6277
- 3000
- 0
- 0
- 0
-
-
- 6278
- 3000
- 0
- 0
- 0
-
-
- 6279
- 3000
- 0
- 0
- 0
-
-
- 6280
- 3000
- 0
- 0
- 0
-
-
- 6281
- 10
- 0
- 0
- 0
-
-
- 6282
- 10
- 0
- 0
- 0
-
-
- 6283
- 15
- 0
- 0
- 0
-
-
- 6284
- 15
- 0
- 0
- 0
-
-
- 6285
- 20
- 0
- 0
- 0
-
-
- 6286
- 20
- 0
- 0
- 0
-
-
- 6287
- 35
- 0
- 0
- 0
-
-
- 6288
- 35
- 0
- 0
- 0
-
-
- 6289
- 50
- 0
- 0
- 0
-
-
- 6290
- 50
- 0
- 0
- 0
-
-
- 6291
- 15
- 0
- 0
- 0
-
-
- 6292
- 15
- 0
- 0
- 0
-
-
- 6293
- 25
- 0
- 0
- 0
-
-
- 6294
- 25
- 0
- 0
- 0
-
-
- 6295
- 20
- 0
- 0
- 0
-
-
- 6296
- 20
- 0
- 0
- 0
-
-
- 6297
- 50
- 0
- 0
- 0
-
-
- 6298
- 50
- 0
- 0
- 0
-
-
- 6299
- 40
- 0
- 0
- 0
-
-
- 6300
- 40
- 0
- 0
- 0
-
-
- 6301
- 1
- 0
- 0
- 0
-
-
- 6302
- 1
- 0
- 0
- 0
-
-
- 6303
- 1
- 0
- 0
- 0
-
-
- 6304
- 1
- 0
- 0
- 0
-
-
- 6305
- 10
- 0
- 0
- 0
-
-
- 6306
- 1
- 0
- 0
- 0
-
-
- 6307
- 1
- 0
- 0
- 0
-
-
- 6308
- 1
- 0
- 0
- 0
-
-
- 6309
- 1
- 0
- 0
- 0
-
-
- 6310
- 1
- 0
- 0
- 0
-
-
- 6311
- 200
- 0
- 0
- 0
-
-
- 6312
- 200
- 0
- 0
- 0
-
-
- 6313
- 500
- 0
- 0
- 0
-
-
- 6314
- 500
- 0
- 0
- 0
-
-
- 6315
- 1000
- 0
- 0
- 0
-
-
- 6316
- 1000
- 0
- 0
- 0
-
-
- 6317
- 2000
- 0
- 0
- 0
-
-
- 6318
- 2000
- 0
- 0
- 0
-
-
- 6319
- 5
- 0
- 0
- 0
-
-
- 6320
- 5
- 0
- 0
- 0
-
-
- 6321
- 1
- 0
- 0
- 0
-
-
- 6322
- 1250
- 0
- 0
- 0
-
-
- 6323
- 1250
- 0
- 0
- 0
-
-
- 6324
- 1175
- 0
- 0
- 0
-
-
- 6325
- 1175
- 0
- 0
- 0
-
-
- 6326
- 300
- 0
- 0
- 0
-
-
- 6327
- 300
- 0
- 0
- 0
-
-
- 6328
- 250
- 0
- 0
- 0
-
-
- 6329
- 250
- 0
- 0
- 0
-
-
- 6330
- 434
- 0
- 0
- 0
-
-
- 6331
- 434
- 0
- 0
- 0
-
-
- 6332
- 50
- 0
- 0
- 0
-
-
- 6333
- 30
- 0
- 0
- 0
-
-
- 6334
- 30
- 0
- 0
- 0
-
-
- 6335
- 500
- 0
- 0
- 0
-
-
- 6336
- 500
- 0
- 0
- 0
-
-
- 6337
- 500
- 0
- 0
- 0
-
-
- 6338
- 500
- 0
- 0
- 0
-
-
- 6339
- 500
- 0
- 0
- 0
-
-
- 6340
- 500
- 0
- 0
- 0
-
-
- 6341
- 300
- 0
- 0
- 0
-
-
- 6342
- 300
- 0
- 0
- 0
-
-
- 6343
- 250
- 0
- 0
- 0
-
-
- 6344
- 250
- 0
- 0
- 0
-
-
- 6345
- 200
- 0
- 0
- 0
-
-
- 6346
- 200
- 0
- 0
- 0
-
-
- 6347
- 150
- 0
- 0
- 0
-
-
- 6348
- 150
- 0
- 0
- 0
-
-
- 6349
- 100
- 0
- 0
- 0
-
-
- 6350
- 100
- 0
- 0
- 0
-
-
- 6351
- 300
- 0
- 0
- 0
-
-
- 6352
- 300
- 0
- 0
- 0
-
-
- 6353
- 250
- 0
- 0
- 0
-
-
- 6354
- 250
- 0
- 0
- 0
-
-
- 6355
- 200
- 0
- 0
- 0
-
-
- 6356
- 200
- 0
- 0
- 0
-
-
- 6357
- 100
- 0
- 0
- 0
-
-
- 6358
- 100
- 0
- 0
- 0
-
-
- 6359
- 150
- 0
- 0
- 0
-
-
- 6360
- 150
- 0
- 0
- 0
-
-
- 6361
- 300
- 0
- 0
- 0
-
-
- 6362
- 300
- 0
- 0
- 0
-
-
- 6363
- 250
- 0
- 0
- 0
-
-
- 6364
- 250
- 0
- 0
- 0
-
-
- 6365
- 200
- 0
- 0
- 0
-
-
- 6366
- 200
- 0
- 0
- 0
-
-
- 6367
- 100
- 0
- 0
- 0
-
-
- 6368
- 100
- 0
- 0
- 0
-
-
- 6369
- 150
- 0
- 0
- 0
-
-
- 6370
- 150
- 0
- 0
- 0
-
-
- 6371
- 300
- 0
- 0
- 0
-
-
- 6372
- 300
- 0
- 0
- 0
-
-
- 6373
- 250
- 0
- 0
- 0
-
-
- 6374
- 250
- 0
- 0
- 0
-
-
- 6375
- 200
- 0
- 0
- 0
-
-
- 6376
- 200
- 0
- 0
- 0
-
-
- 6377
- 100
- 0
- 0
- 0
-
-
- 6378
- 100
- 0
- 0
- 0
-
-
- 6379
- 150
- 0
- 0
- 0
-
-
- 6380
- 150
- 0
- 0
- 0
-
-
- 6381
- 1
- 0
- 0
- 0
-
-
- 6382
- 20
- 0
- 0
- 0
-
-
- 6383
- 20
- 0
- 0
- 0
-
-
- 6384
- 15
- 0
- 0
- 0
-
-
- 6385
- 15
- 0
- 0
- 0
-
-
- 6386
- 25
- 0
- 0
- 0
-
-
- 6387
- 25
- 0
- 0
- 0
-
-
- 6388
- 35
- 0
- 0
- 0
-
-
- 6389
- 35
- 0
- 0
- 0
-
-
- 6390
- 25
- 0
- 0
- 0
-
-
- 6391
- 25
- 0
- 0
- 0
-
-
- 6392
- 35
- 0
- 0
- 0
-
-
- 6393
- 35
- 0
- 0
- 0
-
-
- 6394
- 20
- 0
- 0
- 0
-
-
- 6395
- 20
- 0
- 0
- 0
-
-
- 6396
- 40
- 0
- 0
- 0
-
-
- 6397
- 40
- 0
- 0
- 0
-
-
- 6398
- 20
- 0
- 0
- 0
-
-
- 6399
- 20
- 0
- 0
- 0
-
-
- 6400
- 35
- 0
- 0
- 0
-
-
- 6401
- 35
- 0
- 0
- 0
-
-
- 6402
- 20
- 0
- 0
- 0
-
-
- 6403
- 20
- 0
- 0
- 0
-
-
- 6404
- 40
- 0
- 0
- 0
-
-
- 6405
- 40
- 0
- 0
- 0
-
-
- 6406
- 20
- 0
- 0
- 0
-
-
- 6407
- 20
- 0
- 0
- 0
-
-
- 6408
- 400
- 0
- 0
- 0
-
-
- 6409
- 400
- 0
- 0
- 0
-
-
- 6410
- 400
- 0
- 0
- 0
-
-
- 6411
- 400
- 0
- 0
- 0
-
-
- 6412
- 800
- 0
- 0
- 0
-
-
- 6413
- 800
- 0
- 0
- 0
-
-
- 6414
- 800
- 0
- 0
- 0
-
-
- 6415
- 800
- 0
- 0
- 0
-
-
- 6416
- 1200
- 0
- 0
- 0
-
-
- 6417
- 1200
- 0
- 0
- 0
-
-
- 6418
- 1600
- 0
- 0
- 0
-
-
- 6419
- 1600
- 0
- 0
- 0
-
-
- 6420
- 1600
- 0
- 0
- 0
-
-
- 6421
- 1600
- 0
- 0
- 0
-
-
- 6422
- 1
- 0
- 0
- 0
-
-
- 6423
- 1
- 0
- 0
- 0
-
-
- 6424
- 1
- 0
- 0
- 0
-
-
- 6425
- 1
- 0
- 0
- 0
-
-
- 6426
- 1
- 0
- 0
- 0
-
-
- 6427
- 1
- 0
- 0
- 0
-
-
- 6428
- 1
- 0
- 0
- 0
-
-
- 6429
- 1
- 0
- 0
- 0
-
-
- 6430
- 1
- 0
- 0
- 0
-
-
- 6431
- 1
- 0
- 0
- 0
-
-
- 6432
- 1
- 0
- 0
- 0
-
-
- 6433
- 1
- 0
- 0
- 0
-
-
- 6434
- 1
- 0
- 0
- 0
-
-
- 6435
- 1
- 0
- 0
- 0
-
-
- 6436
- 1
- 0
- 0
- 0
-
-
- 6437
- 1
- 0
- 0
- 0
-
-
- 6438
- 1
- 0
- 0
- 0
-
-
- 6439
- 1
- 0
- 0
- 0
-
-
- 6440
- 1
- 0
- 0
- 0
-
-
- 6441
- 1
- 0
- 0
- 0
-
-
- 6442
- 1
- 0
- 0
- 0
-
-
- 6443
- 1
- 0
- 0
- 0
-
-
- 6444
- 1
- 0
- 0
- 0
-
-
- 6445
- 1
- 0
- 0
- 0
-
-
- 6446
- 1
- 0
- 0
- 0
-
-
- 6447
- 1
- 0
- 0
- 0
-
-
- 6448
- 3
- 0
- 0
- 0
-
-
- 6449
- 1
- 0
- 0
- 0
-
-
- 6450
- 1
- 0
- 0
- 0
-
-
- 6451
- 1
- 0
- 0
- 0
-
-
- 6452
- 1
- 0
- 0
- 0
-
-
- 6453
- 1
- 0
- 0
- 0
-
-
- 6454
- 1
- 0
- 0
- 0
-
-
- 6455
- 1
- 0
- 0
- 0
-
-
- 6456
- 1
- 0
- 0
- 0
-
-
- 6457
- 1
- 0
- 0
- 0
-
-
- 6458
- 1
- 0
- 0
- 0
-
-
- 6459
- 1
- 0
- 0
- 0
-
-
- 6460
- 1
- 0
- 0
- 0
-
-
- 6461
- 1
- 0
- 0
- 0
-
-
- 6462
- 1
- 0
- 0
- 0
-
-
- 6463
- 1
- 0
- 0
- 0
-
-
- 6464
- 1
- 0
- 0
- 0
-
-
- 6465
- 1
- 0
- 0
- 0
-
-
- 6466
- 1
- 0
- 0
- 0
-
-
- 6467
- 1
- 0
- 0
- 0
-
-
- 6468
- 1
- 0
- 0
- 0
-
-
- 6469
- 1
- 0
- 0
- 0
-
-
- 6470
- 120
- 0
- 0
- 0
-
-
- 6471
- 120
- 0
- 0
- 0
-
-
- 6472
- 90
- 0
- 0
- 0
-
-
- 6473
- 90
- 0
- 0
- 0
-
-
- 6474
- 60
- 0
- 0
- 0
-
-
- 6475
- 60
- 0
- 0
- 0
-
-
- 6476
- 30
- 0
- 0
- 0
-
-
- 6477
- 30
- 0
- 0
- 0
-
-
- 6478
- 1
- 0
- 0
- 0
-
-
- 6479
- 1
- 0
- 0
- 0
-
-
- 6480
- 1
- 0
- 0
- 0
-
-
- 6481
- 1
- 0
- 0
- 0
-
-
- 6482
- 1
- 0
- 0
- 0
-
-
- 6483
- 1
- 0
- 0
- 0
-
-
- 6484
- 1
- 0
- 0
- 0
-
-
- 6485
- 1
- 0
- 0
- 0
-
-
- 6486
- 1
- 0
- 0
- 0
-
-
- 6487
- 1
- 0
- 0
- 0
-
-
- 6488
- 1
- 0
- 0
- 0
-
-
- 6489
- 1
- 0
- 0
- 0
-
-
- 6490
- 1
- 0
- 0
- 0
-
-
- 6491
- 1
- 0
- 0
- 0
-
-
- 6492
- 1
- 0
- 0
- 0
-
-
- 6493
- 1
- 0
- 0
- 0
-
-
- 6494
- 1
- 0
- 0
- 0
-
-
- 6495
- 1
- 0
- 0
- 0
-
-
- 6496
- 1
- 0
- 0
- 0
-
-
- 6497
- 1
- 0
- 0
- 0
-
-
- 6498
- 1
- 0
- 0
- 0
-
-
- 6499
- 1
- 0
- 0
- 0
-
-
- 6500
- 1
- 0
- 0
- 0
-
-
- 6501
- 1
- 0
- 0
- 0
-
-
- 6502
- 1
- 0
- 0
- 0
-
-
- 6503
- 1
- 0
- 0
- 0
-
-
- 6504
- 1
- 0
- 0
- 0
-
-
- 6505
- 1
- 0
- 0
- 0
-
-
- 6506
- 1
- 0
- 0
- 0
-
-
- 6507
- 1
- 0
- 0
- 0
-
-
- 6508
- 1
- 0
- 0
- 0
-
-
- 6509
- 1
- 0
- 0
- 0
-
-
- 6510
- 1
- 0
- 0
- 0
-
-
- 6511
- 1
- 0
- 0
- 0
-
-
- 6512
- 1
- 0
- 0
- 0
-
-
- 6513
- 1
- 0
- 0
- 0
-
-
- 6514
- 1
- 0
- 0
- 0
-
-
- 6515
- 1
- 0
- 0
- 0
-
-
- 6516
- 1
- 0
- 0
- 0
-
-
- 6517
- 1
- 0
- 0
- 0
-
-
- 6518
- 1
- 0
- 0
- 0
-
-
- 6519
- 1
- 0
- 0
- 0
-
-
- 6520
- 1
- 0
- 0
- 0
-
-
- 6521
- 1
- 0
- 0
- 0
-
-
- 6522
- 250
- 0
- 0
- 0
-
-
- 6523
- 40000
- 0
- 0
- 0
-
-
- 6524
- 45000
- 0
- 0
- 0
-
-
- 6525
- 25000
- 0
- 0
- 0
-
-
- 6526
- 35000
- 0
- 0
- 0
-
-
- 6527
- 30000
- 0
- 0
- 0
-
-
- 6528
- 50000
- 0
- 0
- 0
-
-
- 6529
- 1
- 0
- 0
- 0
-
-
- 6530
- 1
- 0
- 0
- 0
-
-
- 6531
- 1
- 0
- 0
- 0
-
-
- 6532
- 1
- 0
- 0
- 0
-
-
- 6533
- 1
- 0
- 0
- 0
-
-
- 6534
- 1
- 0
- 0
- 0
-
-
- 6535
- 40000
- 0
- 0
- 0
-
-
- 6536
- 45000
- 0
- 0
- 0
-
-
- 6537
- 25000
- 0
- 0
- 0
-
-
- 6538
- 35000
- 0
- 0
- 0
-
-
- 6539
- 30000
- 0
- 0
- 0
-
-
- 6540
- 50000
- 0
- 0
- 0
-
-
- 6541
- 1
- 0
- 0
- 0
-
-
- 6542
- 1
- 0
- 0
- 0
-
-
- 6543
- 1
- 0
- 0
- 0
-
-
- 6544
- 1
- 0
- 0
- 0
-
-
- 6545
- 1
- 0
- 0
- 0
-
-
- 6546
- 1
- 0
- 0
- 0
-
-
- 6547
- 1
- 0
- 0
- 0
-
-
- 6548
- 1
- 0
- 0
- 0
-
-
- 6549
- 1
- 0
- 0
- 0
-
-
- 6550
- 1
- 0
- 0
- 0
-
-
- 6551
- 1
- 0
- 0
- 0
-
-
- 6552
- 1
- 0
- 0
- 0
-
-
- 6553
- 1
- 0
- 0
- 0
-
-
- 6554
- 1
- 0
- 0
- 0
-
-
- 6555
- 1
- 0
- 0
- 0
-
-
- 6556
- 1
- 0
- 0
- 0
-
-
- 6557
- 1
- 0
- 0
- 0
-
-
- 6558
- 1
- 0
- 0
- 0
-
-
- 6559
- 1
- 0
- 0
- 0
-
-
- 6560
- 1
- 0
- 0
- 0
-
-
- 6561
- 2
- 0
- 0
- 0
-
-
- 6562
- 17000
- 0
- 0
- 0
-
-
- 6563
- 45000
- 0
- 0
- 0
-
-
- 6564
- 1
- 0
- 0
- 0
-
-
- 6565
- 1
- 0
- 0
- 0
-
-
- 6566
- 1
- 0
- 0
- 0
-
-
- 6567
- 1
- 0
- 0
- 0
-
-
- 6568
- 60000
- 0
- 0
- 0
-
-
- 6569
- 60000
- 0
- 0
- 0
-
-
- 6570
- 60000
- 0
- 0
- 0
-
-
- 6571
- 300000
- 0
- 0
- 0
-
-
- 6572
- 300000
- 0
- 0
- 0
-
-
- 6573
- 300000
- 0
- 0
- 0
-
-
- 6574
- 300000
- 0
- 0
- 0
-
-
- 6575
- 201000
- 0
- 0
- 0
-
-
- 6576
- 201000
- 0
- 0
- 0
-
-
- 6577
- 201000
- 0
- 0
- 0
-
-
- 6578
- 201000
- 0
- 0
- 0
-
-
- 6579
- 201000
- 0
- 0
- 0
-
-
- 6580
- 201000
- 0
- 0
- 0
-
-
- 6581
- 201000
- 0
- 0
- 0
-
-
- 6582
- 201000
- 0
- 0
- 0
-
-
- 6583
- 202000
- 0
- 0
- 0
-
-
- 6584
- 202000
- 0
- 0
- 0
-
-
- 6585
- 202000
- 0
- 0
- 0
-
-
- 6586
- 202000
- 0
- 0
- 0
-
-
- 6587
- 360
- 0
- 0
- 0
-
-
- 6588
- 360
- 0
- 0
- 0
-
-
- 6589
- 1248
- 0
- 0
- 0
-
-
- 6590
- 1248
- 0
- 0
- 0
-
-
- 6591
- 240
- 0
- 0
- 0
-
-
- 6592
- 240
- 0
- 0
- 0
-
-
- 6593
- 240
- 0
- 0
- 0
-
-
- 6594
- 240
- 0
- 0
- 0
-
-
- 6595
- 240
- 0
- 0
- 0
-
-
- 6596
- 240
- 0
- 0
- 0
-
-
- 6597
- 240
- 0
- 0
- 0
-
-
- 6598
- 240
- 0
- 0
- 0
-
-
- 6599
- 1920
- 0
- 0
- 0
-
-
- 6600
- 1920
- 0
- 0
- 0
-
-
- 6601
- 432
- 0
- 0
- 0
-
-
- 6602
- 432
- 0
- 0
- 0
-
-
- 6603
- 200
- 0
- 0
- 0
-
-
- 6604
- 200
- 0
- 0
- 0
-
-
- 6605
- 624
- 0
- 0
- 0
-
-
- 6606
- 624
- 0
- 0
- 0
-
-
- 6607
- 960
- 0
- 0
- 0
-
-
- 6608
- 960
- 0
- 0
- 0
-
-
- 6609
- 1920
- 0
- 0
- 0
-
-
- 6610
- 1920
- 0
- 0
- 0
-
-
- 6611
- 768
- 0
- 0
- 0
-
-
- 6612
- 768
- 0
- 0
- 0
-
-
- 6613
- 980
- 0
- 0
- 0
-
-
- 6614
- 980
- 0
- 0
- 0
-
-
- 6615
- 1440
- 0
- 0
- 0
-
-
- 6616
- 1440
- 0
- 0
- 0
-
-
- 6617
- 3840
- 0
- 0
- 0
-
-
- 6618
- 3840
- 0
- 0
- 0
-
-
- 6619
- 576
- 0
- 0
- 0
-
-
- 6620
- 576
- 0
- 0
- 0
-
-
- 6621
- 576
- 0
- 0
- 0
-
-
- 6622
- 576
- 0
- 0
- 0
-
-
- 6623
- 1056
- 0
- 0
- 0
-
-
- 6624
- 1056
- 0
- 0
- 0
-
-
- 6625
- 1920
- 0
- 0
- 0
-
-
- 6626
- 1920
- 0
- 0
- 0
-
-
- 6627
- 1920
- 0
- 0
- 0
-
-
- 6628
- 1920
- 0
- 0
- 0
-
-
- 6629
- 6
- 0
- 0
- 0
-
-
- 6630
- 6
- 0
- 0
- 0
-
-
- 6631
- 1152
- 0
- 0
- 0
-
-
- 6632
- 1152
- 0
- 0
- 0
-
-
- 6633
- 1632
- 0
- 0
- 0
-
-
- 6634
- 1632
- 0
- 0
- 0
-
-
- 6635
- 1
- 0
- 0
- 0
-
-
- 6636
- 1
- 0
- 0
- 0
-
-
- 6637
- 1
- 0
- 0
- 0
-
-
- 6638
- 1
- 0
- 0
- 0
-
-
- 6639
- 1
- 0
- 0
- 0
-
-
- 6640
- 1
- 0
- 0
- 0
-
-
- 6641
- 1
- 0
- 0
- 0
-
-
- 6642
- 1
- 0
- 0
- 0
-
-
- 6643
- 1
- 0
- 0
- 0
-
-
- 6644
- 1
- 0
- 0
- 0
-
-
- 6645
- 1
- 0
- 0
- 0
-
-
- 6646
- 1
- 0
- 0
- 0
-
-
- 6647
- 1
- 0
- 0
- 0
-
-
- 6648
- 1
- 0
- 0
- 0
-
-
- 6649
- 1
- 0
- 0
- 0
-
-
- 6650
- 1
- 0
- 0
- 0
-
-
- 6651
- 1
- 0
- 0
- 0
-
-
- 6652
- 1
- 0
- 0
- 0
-
-
- 6653
- 1
- 0
- 0
- 0
-
-
- 6654
- 1
- 0
- 0
- 0
-
-
- 6655
- 1
- 0
- 0
- 0
-
-
- 6656
- 1
- 0
- 0
- 0
-
-
- 6657
- 1
- 0
- 0
- 0
-
-
- 6658
- 1
- 0
- 0
- 0
-
-
- 6659
- 1
- 0
- 0
- 0
-
-
- 6660
- 1
- 0
- 0
- 0
-
-
- 6661
- 1
- 0
- 0
- 0
-
-
- 6662
- 1
- 0
- 0
- 0
-
-
- 6663
- 1
- 0
- 0
- 0
-
-
- 6664
- 60
- 0
- 0
- 0
-
-
- 6665
- 1
- 0
- 0
- 0
-
-
- 6666
- 1
- 0
- 0
- 0
-
-
- 6667
- 1
- 0
- 0
- 0
-
-
- 6668
- 1
- 0
- 0
- 0
-
-
- 6669
- 1
- 0
- 0
- 0
-
-
- 6670
- 1
- 0
- 0
- 0
-
-
- 6671
- 1
- 0
- 0
- 0
-
-
- 6672
- 1
- 0
- 0
- 0
-
-
- 6673
- 1
- 0
- 0
- 0
-
-
- 6674
- 10
- 0
- 0
- 0
-
-
- 6675
- 1
- 0
- 0
- 0
-
-
- 6676
- 1
- 0
- 0
- 0
-
-
- 6677
- 5
- 0
- 0
- 0
-
-
- 6678
- 5
- 0
- 0
- 0
-
-
- 6679
- 5
- 0
- 0
- 0
-
-
- 6680
- 5
- 0
- 0
- 0
-
-
- 6681
- 2
- 0
- 0
- 0
-
-
- 6682
- 2
- 0
- 0
- 0
-
-
- 6683
- 2
- 0
- 0
- 0
-
-
- 6684
- 2
- 0
- 0
- 0
-
-
- 6685
- 200
- 0
- 0
- 0
-
-
- 6686
- 200
- 0
- 0
- 0
-
-
- 6687
- 175
- 0
- 0
- 0
-
-
- 6688
- 175
- 0
- 0
- 0
-
-
- 6689
- 150
- 0
- 0
- 0
-
-
- 6690
- 150
- 0
- 0
- 0
-
-
- 6691
- 125
- 0
- 0
- 0
-
-
- 6692
- 125
- 0
- 0
- 0
-
-
- 6693
- 1
- 0
- 0
- 0
-
-
- 6694
- 1
- 0
- 0
- 0
-
-
- 6695
- 1
- 0
- 0
- 0
-
-
- 6696
- 1
- 0
- 0
- 0
-
-
- 6697
- 4
- 0
- 0
- 0
-
-
- 6698
- 4
- 0
- 0
- 0
-
-
- 6699
- 1
- 0
- 0
- 0
-
-
- 6700
- 1
- 0
- 0
- 0
-
-
- 6701
- 4
- 0
- 0
- 0
-
-
- 6702
- 4
- 0
- 0
- 0
-
-
- 6703
- 8
- 0
- 0
- 0
-
-
- 6704
- 8
- 0
- 0
- 0
-
-
- 6705
- 350
- 0
- 0
- 0
-
-
- 6706
- 350
- 0
- 0
- 0
-
-
- 6707
- 1
- 0
- 0
- 0
-
-
- 6708
- 1
- 0
- 0
- 0
-
-
- 6709
- 1
- 0
- 0
- 0
-
-
- 6710
- 166
- 0
- 0
- 0
-
-
- 6711
- 1
- 0
- 0
- 0
-
-
- 6712
- 1
- 0
- 0
- 0
-
-
- 6713
- 5
- 0
- 0
- 0
-
-
- 6714
- 5
- 0
- 0
- 0
-
-
- 6715
- 1
- 0
- 0
- 0
-
-
- 6716
- 1
- 0
- 0
- 0
-
-
- 6717
- 20000
- 0
- 0
- 0
-
-
- 6718
- 1
- 0
- 0
- 0
-
-
- 6719
- 1
- 0
- 0
- 0
-
-
- 6720
- 200
- 0
- 0
- 0
-
-
- 6721
- 1
- 0
- 0
- 0
-
-
- 6722
- 1
- 0
- 0
- 0
-
-
- 6723
- 1
- 0
- 0
- 0
-
-
- 6724
- 8000
- 0
- 0
- 0
-
-
- 6725
- 8000
- 0
- 0
- 0
-
-
- 6726
- 17000
- 0
- 0
- 0
-
-
- 6727
- 45000
- 0
- 0
- 0
-
-
- 6728
- 1
- 0
- 0
- 0
-
-
- 6729
- 1
- 0
- 0
- 0
-
-
- 6730
- 1
- 0
- 0
- 0
-
-
- 6731
- 10000
- 0
- 0
- 0
-
-
- 6732
- 10000
- 0
- 0
- 0
-
-
- 6733
- 10000
- 0
- 0
- 0
-
-
- 6734
- 10000
- 0
- 0
- 0
-
-
- 6735
- 10000
- 0
- 0
- 0
-
-
- 6736
- 10000
- 0
- 0
- 0
-
-
- 6737
- 10000
- 0
- 0
- 0
-
-
- 6738
- 10000
- 0
- 0
- 0
-
-
- 6739
- 55000
- 0
- 0
- 0
-
-
- 6740
- 55000
- 0
- 0
- 0
-
-
- 6741
- 1800
- 0
- 0
- 0
-
-
- 6742
- 1800
- 0
- 0
- 0
-
-
- 6743
- 54999
- 0
- 0
- 0
-
-
- 6744
- 54999
- 0
- 0
- 0
-
-
- 6745
- 50
- 0
- 0
- 0
-
-
- 6746
- 500
- 0
- 0
- 0
-
-
- 6747
- 1
- 0
- 0
- 0
-
-
- 6748
- 1
- 0
- 0
- 0
-
-
- 6749
- 1
- 0
- 0
- 0
-
-
- 6750
- 40
- 0
- 0
- 0
-
-
- 6751
- 1
- 0
- 0
- 0
-
-
- 6752
- 30
- 0
- 0
- 0
-
-
- 6753
- 1
- 0
- 0
- 0
-
-
- 6754
- 1
- 0
- 0
- 0
-
-
- 6755
- 1
- 0
- 0
- 0
-
-
- 6756
- 1
- 0
- 0
- 0
-
-
- 6757
- 1
- 0
- 0
- 0
-
-
- 6758
- 1
- 0
- 0
- 0
-
-
- 6759
- 1
- 0
- 0
- 0
-
-
- 6760
- 625
- 0
- 0
- 0
-
-
- 6761
- 625
- 0
- 0
- 0
-
-
- 6762
- 625
- 0
- 0
- 0
-
-
- 6763
- 625
- 0
- 0
- 0
-
-
- 6764
- 625
- 0
- 0
- 0
-
-
- 6765
- 625
- 0
- 0
- 0
-
-
- 6766
- 1
- 0
- 0
- 0
-
-
- 6767
- 1
- 0
- 0
- 0
-
-
- 6768
- 1
- 0
- 0
- 0
-
-
- 6769
- 1
- 0
- 0
- 0
-
-
- 6770
- 1
- 0
- 0
- 0
-
-
- 6771
- 1
- 0
- 0
- 0
-
-
- 6772
- 1
- 0
- 0
- 0
-
-
- 6773
- 1
- 0
- 0
- 0
-
-
- 6774
- 1
- 0
- 0
- 0
-
-
- 6775
- 1
- 0
- 0
- 0
-
-
- 6776
- 1
- 0
- 0
- 0
-
-
- 6777
- 1
- 0
- 0
- 0
-
-
- 6778
- 1
- 0
- 0
- 0
-
-
- 6779
- 1
- 0
- 0
- 0
-
-
- 6780
- 1
- 0
- 0
- 0
-
-
- 6781
- 1
- 0
- 0
- 0
-
-
- 6782
- 1
- 0
- 0
- 0
-
-
- 6783
- 1
- 0
- 0
- 0
-
-
- 6784
- 1
- 0
- 0
- 0
-
-
- 6785
- 1
- 0
- 0
- 0
-
-
- 6786
- 1
- 0
- 0
- 0
-
-
- 6787
- 1
- 0
- 0
- 0
-
-
- 6788
- 1
- 0
- 0
- 0
-
-
- 6789
- 1
- 0
- 0
- 0
-
-
- 6790
- 1
- 0
- 0
- 0
-
-
- 6791
- 1
- 0
- 0
- 0
-
-
- 6792
- 1
- 0
- 0
- 0
-
-
- 6793
- 1
- 0
- 0
- 0
-
-
- 6794
- 30
- 0
- 0
- 0
-
-
- 6795
- 30
- 0
- 0
- 0
-
-
- 6796
- 1
- 0
- 0
- 0
-
-
- 6797
- 1
- 0
- 0
- 0
-
-
- 6798
- 1
- 0
- 0
- 0
-
-
- 6799
- 1
- 0
- 0
- 0
-
-
- 6800
- 1
- 0
- 0
- 0
-
-
- 6801
- 1
- 0
- 0
- 0
-
-
- 6802
- 1
- 0
- 0
- 0
-
-
- 6803
- 1
- 0
- 0
- 0
-
-
- 6804
- 1
- 0
- 0
- 0
-
-
- 6805
- 1
- 0
- 0
- 0
-
-
- 6806
- 1
- 0
- 0
- 0
-
-
- 6807
- 1
- 0
- 0
- 0
-
-
- 6808
- 1
- 0
- 0
- 0
-
-
- 6809
- 66000
- 0
- 0
- 0
-
-
- 6810
- 1
- 0
- 0
- 0
-
-
- 6811
- 1
- 0
- 0
- 0
-
-
- 6812
- 1
- 0
- 0
- 0
-
-
- 6813
- 66000
- 0
- 0
- 0
-
-
- 6814
- 10
- 0
- 0
- 0
-
-
- 6815
- 10
- 0
- 0
- 0
-
-
- 6816
- 1
- 0
- 0
- 0
-
-
- 6817
- 1
- 0
- 0
- 0
-
-
- 6818
- 1
- 0
- 0
- 0
-
-
- 6819
- 1
- 0
- 0
- 0
-
-
- 6820
- 1
- 0
- 0
- 0
-
-
- 6821
- 1
- 0
- 0
- 0
-
-
- 6822
- 1
- 0
- 0
- 0
-
-
- 6823
- 1
- 0
- 0
- 0
-
-
- 6824
- 1
- 0
- 0
- 0
-
-
- 6825
- 1
- 0
- 0
- 0
-
-
- 6826
- 1
- 0
- 0
- 0
-
-
- 6827
- 1
- 0
- 0
- 0
-
-
- 6828
- 1
- 0
- 0
- 0
-
-
- 6829
- 1
- 0
- 0
- 0
-
-
- 6830
- 1
- 0
- 0
- 0
-
-
- 6831
- 1
- 0
- 0
- 0
-
-
- 6832
- 1
- 0
- 0
- 0
-
-
- 6833
- 1
- 0
- 0
- 0
-
-
- 6834
- 1
- 0
- 0
- 0
-
-
- 6835
- 1
- 0
- 0
- 0
-
-
- 6836
- 1
- 0
- 0
- 0
-
-
- 6837
- 1
- 0
- 0
- 0
-
-
- 6838
- 1
- 0
- 0
- 0
-
-
- 6839
- 1
- 0
- 0
- 0
-
-
- 6840
- 1
- 0
- 0
- 0
-
-
- 6841
- 1
- 0
- 0
- 0
-
-
- 6842
- 1
- 0
- 0
- 0
-
-
- 6843
- 1
- 0
- 0
- 0
-
-
- 6844
- 1
- 0
- 0
- 0
-
-
- 6845
- 1
- 0
- 0
- 0
-
-
- 6846
- 1
- 0
- 0
- 0
-
-
- 6847
- 1
- 0
- 0
- 0
-
-
- 6848
- 1
- 0
- 0
- 0
-
-
- 6849
- 1
- 0
- 0
- 0
-
-
- 6850
- 1
- 0
- 0
- 0
-
-
- 6851
- 1
- 0
- 0
- 0
-
-
- 6852
- 1
- 0
- 0
- 0
-
-
- 6853
- 1
- 0
- 0
- 0
-
-
- 6854
- 1
- 0
- 0
- 0
-
-
- 6855
- 1
- 0
- 0
- 0
-
-
- 6856
- 1
- 0
- 0
- 0
-
-
- 6857
- 1
- 0
- 0
- 0
-
-
- 6858
- 1
- 0
- 0
- 0
-
-
- 6859
- 1
- 0
- 0
- 0
-
-
- 6860
- 1
- 0
- 0
- 0
-
-
- 6861
- 1
- 0
- 0
- 0
-
-
- 6862
- 1
- 0
- 0
- 0
-
-
- 6863
- 1
- 0
- 0
- 0
-
-
- 6864
- 60000
- 0
- 0
- 0
-
-
- 6865
- 1
- 0
- 0
- 0
-
-
- 6866
- 1
- 0
- 0
- 0
-
-
- 6867
- 1
- 0
- 0
- 0
-
-
- 6868
- 1
- 0
- 0
- 0
-
-
- 6869
- 1
- 0
- 0
- 0
-
-
- 6870
- 1
- 0
- 0
- 0
-
-
- 6871
- 1
- 0
- 0
- 0
-
-
- 6872
- 1
- 0
- 0
- 0
-
-
- 6873
- 1
- 0
- 0
- 0
-
-
- 6874
- 1
- 0
- 0
- 0
-
-
- 6875
- 1
- 0
- 0
- 0
-
-
- 6876
- 1
- 0
- 0
- 0
-
-
- 6877
- 1
- 0
- 0
- 0
-
-
- 6878
- 1
- 0
- 0
- 0
-
-
- 6879
- 1
- 0
- 0
- 0
-
-
- 6880
- 1
- 0
- 0
- 0
-
-
- 6881
- 1
- 0
- 0
- 0
-
-
- 6882
- 1
- 0
- 0
- 0
-
-
- 6883
- 1
- 0
- 0
- 0
-
-
- 6884
- 1
- 0
- 0
- 0
-
-
- 6885
- 1
- 0
- 0
- 0
-
-
- 6886
- 1
- 0
- 0
- 0
-
-
- 6887
- 1
- 0
- 0
- 0
-
-
- 6888
- 1
- 0
- 0
- 0
-
-
- 6889
- 500
- 0
- 0
- 0
-
-
- 6890
- 500
- 0
- 0
- 0
-
-
- 6891
- 1
- 0
- 0
- 0
-
-
- 6892
- 1
- 0
- 0
- 0
-
-
- 6893
- 1
- 0
- 0
- 0
-
-
- 6894
- 1
- 0
- 0
- 0
-
-
- 6895
- 1
- 0
- 0
- 0
-
-
- 6896
- 1
- 0
- 0
- 0
-
-
- 6897
- 1
- 0
- 0
- 0
-
-
- 6898
- 1
- 0
- 0
- 0
-
-
- 6899
- 1
- 0
- 0
- 0
-
-
- 6900
- 1
- 0
- 0
- 0
-
-
- 6901
- 1
- 0
- 0
- 0
-
-
- 6902
- 1
- 0
- 0
- 0
-
-
- 6903
- 1
- 0
- 0
- 0
-
-
- 6904
- 1
- 0
- 0
- 0
-
-
- 6905
- 1
- 0
- 0
- 0
-
-
- 6906
- 1
- 0
- 0
- 0
-
-
- 6907
- 1
- 0
- 0
- 0
-
-
- 6908
- 1200
- 0
- 0
- 0
-
-
- 6909
- 1200
- 0
- 0
- 0
-
-
- 6910
- 1500
- 0
- 0
- 0
-
-
- 6911
- 1500
- 0
- 0
- 0
-
-
- 6912
- 2000
- 0
- 0
- 0
-
-
- 6913
- 2000
- 0
- 0
- 0
-
-
- 6914
- 2500
- 0
- 0
- 0
-
-
- 6915
- 2500
- 0
- 0
- 0
-
-
- 6916
- 140000
- 0
- 0
- 0
-
-
- 6917
- 140000
- 0
- 0
- 0
-
-
- 6918
- 17000
- 0
- 0
- 0
-
-
- 6919
- 17000
- 0
- 0
- 0
-
-
- 6920
- 12000
- 0
- 0
- 0
-
-
- 6921
- 12000
- 0
- 0
- 0
-
-
- 6922
- 12000
- 0
- 0
- 0
-
-
- 6923
- 12000
- 0
- 0
- 0
-
-
- 6924
- 90000
- 0
- 0
- 0
-
-
- 6925
- 90000
- 0
- 0
- 0
-
-
- 6926
- 1
- 0
- 0
- 0
-
-
- 6927
- 1
- 0
- 0
- 0
-
-
- 6928
- 1
- 0
- 0
- 0
-
-
- 6929
- 1
- 0
- 0
- 0
-
-
- 6930
- 1
- 0
- 0
- 0
-
-
- 6931
- 1
- 0
- 0
- 0
-
-
- 6932
- 1
- 0
- 0
- 0
-
-
- 6933
- 1
- 0
- 0
- 0
-
-
- 6934
- 1
- 0
- 0
- 0
-
-
- 6935
- 1
- 0
- 0
- 0
-
-
- 6936
- 1
- 0
- 0
- 0
-
-
- 6937
- 1
- 0
- 0
- 0
-
-
- 6938
- 1
- 0
- 0
- 0
-
-
- 6939
- 1
- 0
- 0
- 0
-
-
- 6940
- 1
- 0
- 0
- 0
-
-
- 6941
- 1
- 0
- 0
- 0
-
-
- 6942
- 1
- 0
- 0
- 0
-
-
- 6943
- 1
- 0
- 0
- 0
-
-
- 6944
- 1
- 0
- 0
- 0
-
-
- 6945
- 1
- 0
- 0
- 0
-
-
- 6946
- 1
- 0
- 0
- 0
-
-
- 6947
- 1
- 0
- 0
- 0
-
-
- 6948
- 1
- 0
- 0
- 0
-
-
- 6949
- 1
- 0
- 0
- 0
-
-
- 6950
- 1
- 0
- 0
- 0
-
-
- 6951
- 1
- 0
- 0
- 0
-
-
- 6952
- 1
- 0
- 0
- 0
-
-
- 6953
- 1
- 0
- 0
- 0
-
-
- 6954
- 1
- 0
- 0
- 0
-
-
- 6955
- 1
- 0
- 0
- 0
-
-
- 6956
- 1
- 0
- 0
- 0
-
-
- 6957
- 1
- 0
- 0
- 0
-
-
- 6958
- 1
- 0
- 0
- 0
-
-
- 6959
- 1
- 0
- 0
- 0
-
-
- 6960
- 1
- 0
- 0
- 0
-
-
- 6961
- 25
- 0
- 0
- 0
-
-
- 6962
- 25
- 0
- 0
- 0
-
-
- 6963
- 25
- 0
- 0
- 0
-
-
- 6964
- 6
- 0
- 0
- 0
-
-
- 6965
- 25
- 0
- 0
- 0
-
-
- 6966
- 1
- 0
- 0
- 0
-
-
- 6967
- 6
- 0
- 0
- 0
-
-
- 6968
- 25
- 0
- 0
- 0
-
-
- 6969
- 6
- 0
- 0
- 0
-
-
- 6970
- 1
- 0
- 0
- 0
-
-
- 6971
- 1
- 0
- 0
- 0
-
-
- 6972
- 1
- 0
- 0
- 0
-
-
- 6973
- 1
- 0
- 0
- 0
-
-
- 6974
- 1
- 0
- 0
- 0
-
-
- 6975
- 1
- 0
- 0
- 0
-
-
- 6976
- 1
- 0
- 0
- 0
-
-
- 6977
- 1
- 0
- 0
- 0
-
-
- 6978
- 1
- 0
- 0
- 0
-
-
- 6979
- 1
- 0
- 0
- 0
-
-
- 6980
- 1
- 0
- 0
- 0
-
-
- 6981
- 1
- 0
- 0
- 0
-
-
- 6982
- 1
- 0
- 0
- 0
-
-
- 6983
- 1
- 0
- 0
- 0
-
-
- 6984
- 1
- 0
- 0
- 0
-
-
- 6985
- 1
- 0
- 0
- 0
-
-
- 6986
- 1
- 0
- 0
- 0
-
-
- 6987
- 1
- 0
- 0
- 0
-
-
- 6988
- 1
- 0
- 0
- 0
-
-
- 6989
- 1
- 0
- 0
- 0
-
-
- 6990
- 1
- 0
- 0
- 0
-
-
- 6991
- 1
- 0
- 0
- 0
-
-
- 6992
- 1
- 0
- 0
- 0
-
-
- 6993
- 1
- 0
- 0
- 0
-
-
- 6994
- 1
- 0
- 0
- 0
-
-
- 6995
- 1
- 0
- 0
- 0
-
-
- 6996
- 1
- 0
- 0
- 0
-
-
- 6997
- 1
- 0
- 0
- 0
-
-
- 6998
- 1
- 0
- 0
- 0
-
-
- 6999
- 1
- 0
- 0
- 0
-
-
- 7000
- 1
- 0
- 0
- 0
-
-
- 7001
- 1
- 0
- 0
- 0
-
-
- 7002
- 1
- 0
- 0
- 0
-
-
- 7003
- 1
- 0
- 0
- 0
-
-
- 7004
- 1
- 0
- 0
- 0
-
-
- 7005
- 1
- 0
- 0
- 0
-
-
- 7006
- 1
- 0
- 0
- 0
-
-
- 7007
- 1
- 0
- 0
- 0
-
-
- 7008
- 1
- 0
- 0
- 0
-
-
- 7009
- 1
- 0
- 0
- 0
-
-
- 7010
- 1
- 0
- 0
- 0
-
-
- 7011
- 1
- 0
- 0
- 0
-
-
- 7012
- 1
- 0
- 0
- 0
-
-
- 7013
- 1
- 0
- 0
- 0
-
-
- 7014
- 1
- 0
- 0
- 0
-
-
- 7015
- 1
- 0
- 0
- 0
-
-
- 7016
- 1
- 0
- 0
- 0
-
-
- 7017
- 1
- 0
- 0
- 0
-
-
- 7018
- 1
- 0
- 0
- 0
-
-
- 7019
- 1
- 0
- 0
- 0
-
-
- 7020
- 1
- 0
- 0
- 0
-
-
- 7021
- 1
- 0
- 0
- 0
-
-
- 7022
- 1
- 0
- 0
- 0
-
-
- 7023
- 1
- 0
- 0
- 0
-
-
- 7024
- 1
- 0
- 0
- 0
-
-
- 7025
- 1
- 0
- 0
- 0
-
-
- 7026
- 1
- 0
- 0
- 0
-
-
- 7027
- 1
- 0
- 0
- 0
-
-
- 7028
- 1
- 0
- 0
- 0
-
-
- 7029
- 1
- 0
- 0
- 0
-
-
- 7030
- 1
- 0
- 0
- 0
-
-
- 7031
- 1
- 0
- 0
- 0
-
-
- 7032
- 1
- 0
- 0
- 0
-
-
- 7033
- 1
- 0
- 0
- 0
-
-
- 7034
- 1
- 0
- 0
- 0
-
-
- 7035
- 1
- 0
- 0
- 0
-
-
- 7036
- 1
- 0
- 0
- 0
-
-
- 7037
- 1
- 0
- 0
- 0
-
-
- 7038
- 1
- 0
- 0
- 0
-
-
- 7039
- 1
- 0
- 0
- 0
-
-
- 7040
- 1
- 0
- 0
- 0
-
-
- 7041
- 1
- 0
- 0
- 0
-
-
- 7042
- 1
- 0
- 0
- 0
-
-
- 7043
- 1
- 0
- 0
- 0
-
-
- 7044
- 1
- 0
- 0
- 0
-
-
- 7045
- 1
- 0
- 0
- 0
-
-
- 7046
- 1
- 0
- 0
- 0
-
-
- 7047
- 1
- 0
- 0
- 0
-
-
- 7048
- 1
- 0
- 0
- 0
-
-
- 7049
- 1
- 0
- 0
- 0
-
-
- 7050
- 1
- 0
- 0
- 0
-
-
- 7051
- 130
- 0
- 0
- 0
-
-
- 7052
- 130
- 0
- 0
- 0
-
-
- 7053
- 130
- 0
- 0
- 0
-
-
- 7054
- 13
- 0
- 0
- 0
-
-
- 7055
- 13
- 0
- 0
- 0
-
-
- 7056
- 12
- 0
- 0
- 0
-
-
- 7057
- 12
- 0
- 0
- 0
-
-
- 7058
- 45
- 0
- 0
- 0
-
-
- 7059
- 45
- 0
- 0
- 0
-
-
- 7060
- 113
- 0
- 0
- 0
-
-
- 7061
- 113
- 0
- 0
- 0
-
-
- 7062
- 13
- 0
- 0
- 0
-
-
- 7063
- 13
- 0
- 0
- 0
-
-
- 7064
- 12
- 0
- 0
- 0
-
-
- 7065
- 12
- 0
- 0
- 0
-
-
- 7066
- 45
- 0
- 0
- 0
-
-
- 7067
- 45
- 0
- 0
- 0
-
-
- 7068
- 113
- 0
- 0
- 0
-
-
- 7069
- 113
- 0
- 0
- 0
-
-
- 7070
- 8
- 0
- 0
- 0
-
-
- 7071
- 8
- 0
- 0
- 0
-
-
- 7072
- 9
- 0
- 0
- 0
-
-
- 7073
- 9
- 0
- 0
- 0
-
-
- 7074
- 7
- 0
- 0
- 0
-
-
- 7075
- 7
- 0
- 0
- 0
-
-
- 7076
- 8
- 0
- 0
- 0
-
-
- 7077
- 8
- 0
- 0
- 0
-
-
- 7078
- 8
- 0
- 0
- 0
-
-
- 7079
- 8
- 0
- 0
- 0
-
-
- 7080
- 42
- 0
- 0
- 0
-
-
- 7081
- 42
- 0
- 0
- 0
-
-
- 7082
- 42
- 0
- 0
- 0
-
-
- 7083
- 42
- 0
- 0
- 0
-
-
- 7084
- 7
- 0
- 0
- 0
-
-
- 7085
- 7
- 0
- 0
- 0
-
-
- 7086
- 104
- 0
- 0
- 0
-
-
- 7087
- 104
- 0
- 0
- 0
-
-
- 7088
- 13
- 0
- 0
- 0
-
-
- 7089
- 13
- 0
- 0
- 0
-
-
- 7090
- 5
- 0
- 0
- 0
-
-
- 7091
- 5
- 0
- 0
- 0
-
-
- 7092
- 5
- 0
- 0
- 0
-
-
- 7093
- 5
- 0
- 0
- 0
-
-
- 7094
- 5
- 0
- 0
- 0
-
-
- 7095
- 5
- 0
- 0
- 0
-
-
- 7096
- 1
- 0
- 0
- 0
-
-
- 7097
- 1
- 0
- 0
- 0
-
-
- 7098
- 1
- 0
- 0
- 0
-
-
- 7099
- 1
- 0
- 0
- 0
-
-
- 7100
- 1
- 0
- 0
- 0
-
-
- 7101
- 1
- 0
- 0
- 0
-
-
- 7102
- 1
- 0
- 0
- 0
-
-
- 7103
- 1
- 0
- 0
- 0
-
-
- 7104
- 1
- 0
- 0
- 0
-
-
- 7105
- 1
- 0
- 0
- 0
-
-
- 7106
- 1
- 0
- 0
- 0
-
-
- 7107
- 1
- 0
- 0
- 0
-
-
- 7108
- 52
- 0
- 0
- 0
-
-
- 7109
- 52
- 0
- 0
- 0
-
-
- 7110
- 300
- 0
- 0
- 0
-
-
- 7111
- 300
- 0
- 0
- 0
-
-
- 7112
- 100
- 0
- 0
- 0
-
-
- 7113
- 100
- 0
- 0
- 0
-
-
- 7114
- 350
- 0
- 0
- 0
-
-
- 7115
- 350
- 0
- 0
- 0
-
-
- 7116
- 350
- 0
- 0
- 0
-
-
- 7117
- 350
- 0
- 0
- 0
-
-
- 7118
- 1
- 0
- 0
- 0
-
-
- 7119
- 1
- 0
- 0
- 0
-
-
- 7120
- 1
- 0
- 0
- 0
-
-
- 7121
- 1
- 0
- 0
- 0
-
-
- 7122
- 300
- 0
- 0
- 0
-
-
- 7123
- 300
- 0
- 0
- 0
-
-
- 7124
- 100
- 0
- 0
- 0
-
-
- 7125
- 100
- 0
- 0
- 0
-
-
- 7126
- 350
- 0
- 0
- 0
-
-
- 7127
- 350
- 0
- 0
- 0
-
-
- 7128
- 300
- 0
- 0
- 0
-
-
- 7129
- 300
- 0
- 0
- 0
-
-
- 7130
- 100
- 0
- 0
- 0
-
-
- 7131
- 100
- 0
- 0
- 0
-
-
- 7132
- 350
- 0
- 0
- 0
-
-
- 7133
- 350
- 0
- 0
- 0
-
-
- 7134
- 300
- 0
- 0
- 0
-
-
- 7135
- 300
- 0
- 0
- 0
-
-
- 7136
- 100
- 0
- 0
- 0
-
-
- 7137
- 100
- 0
- 0
- 0
-
-
- 7138
- 350
- 0
- 0
- 0
-
-
- 7139
- 350
- 0
- 0
- 0
-
-
- 7140
- 2560
- 0
- 0
- 0
-
-
- 7141
- 1040
- 0
- 0
- 0
-
-
- 7142
- 25600
- 0
- 0
- 0
-
-
- 7143
- 1
- 0
- 0
- 0
-
-
- 7144
- 1
- 0
- 0
- 0
-
-
- 7145
- 1
- 0
- 0
- 0
-
-
- 7146
- 1
- 0
- 0
- 0
-
-
- 7147
- 1
- 0
- 0
- 0
-
-
- 7148
- 1
- 0
- 0
- 0
-
-
- 7149
- 1
- 0
- 0
- 0
-
-
- 7150
- 1
- 0
- 0
- 0
-
-
- 7151
- 1
- 0
- 0
- 0
-
-
- 7152
- 1
- 0
- 0
- 0
-
-
- 7153
- 1
- 0
- 0
- 0
-
-
- 7154
- 1
- 0
- 0
- 0
-
-
- 7155
- 18
- 0
- 0
- 0
-
-
- 7156
- 1
- 0
- 0
- 0
-
-
- 7157
- 30
- 0
- 0
- 0
-
-
- 7158
- 220000
- 0
- 0
- 0
-
-
- 7159
- 200
- 0
- 0
- 0
-
-
- 7160
- 1
- 0
- 0
- 0
-
-
- 7161
- 200
- 0
- 0
- 0
-
-
- 7162
- 5
- 0
- 0
- 0
-
-
- 7163
- 5
- 0
- 0
- 0
-
-
- 7164
- 22
- 0
- 0
- 0
-
-
- 7165
- 22
- 0
- 0
- 0
-
-
- 7166
- 26
- 0
- 0
- 0
-
-
- 7167
- 26
- 0
- 0
- 0
-
-
- 7168
- 27
- 0
- 0
- 0
-
-
- 7169
- 27
- 0
- 0
- 0
-
-
- 7170
- 54
- 0
- 0
- 0
-
-
- 7171
- 54
- 0
- 0
- 0
-
-
- 7172
- 8
- 0
- 0
- 0
-
-
- 7173
- 8
- 0
- 0
- 0
-
-
- 7174
- 11
- 0
- 0
- 0
-
-
- 7175
- 11
- 0
- 0
- 0
-
-
- 7176
- 12
- 0
- 0
- 0
-
-
- 7177
- 12
- 0
- 0
- 0
-
-
- 7178
- 90
- 0
- 0
- 0
-
-
- 7179
- 90
- 0
- 0
- 0
-
-
- 7180
- 12
- 0
- 0
- 0
-
-
- 7181
- 12
- 0
- 0
- 0
-
-
- 7182
- 24
- 0
- 0
- 0
-
-
- 7183
- 24
- 0
- 0
- 0
-
-
- 7184
- 49
- 0
- 0
- 0
-
-
- 7185
- 49
- 0
- 0
- 0
-
-
- 7186
- 50
- 0
- 0
- 0
-
-
- 7187
- 50
- 0
- 0
- 0
-
-
- 7188
- 100
- 0
- 0
- 0
-
-
- 7189
- 100
- 0
- 0
- 0
-
-
- 7190
- 50
- 0
- 0
- 0
-
-
- 7191
- 50
- 0
- 0
- 0
-
-
- 7192
- 54
- 0
- 0
- 0
-
-
- 7193
- 54
- 0
- 0
- 0
-
-
- 7194
- 154
- 0
- 0
- 0
-
-
- 7195
- 154
- 0
- 0
- 0
-
-
- 7196
- 155
- 0
- 0
- 0
-
-
- 7197
- 155
- 0
- 0
- 0
-
-
- 7198
- 310
- 0
- 0
- 0
-
-
- 7199
- 310
- 0
- 0
- 0
-
-
- 7200
- 155
- 0
- 0
- 0
-
-
- 7201
- 155
- 0
- 0
- 0
-
-
- 7202
- 5
- 0
- 0
- 0
-
-
- 7203
- 5
- 0
- 0
- 0
-
-
- 7204
- 90
- 0
- 0
- 0
-
-
- 7205
- 90
- 0
- 0
- 0
-
-
- 7206
- 91
- 0
- 0
- 0
-
-
- 7207
- 91
- 0
- 0
- 0
-
-
- 7208
- 182
- 0
- 0
- 0
-
-
- 7209
- 182
- 0
- 0
- 0
-
-
- 7210
- 91
- 0
- 0
- 0
-
-
- 7211
- 91
- 0
- 0
- 0
-
-
- 7212
- 21
- 0
- 0
- 0
-
-
- 7213
- 21
- 0
- 0
- 0
-
-
- 7214
- 69
- 0
- 0
- 0
-
-
- 7215
- 69
- 0
- 0
- 0
-
-
- 7216
- 70
- 0
- 0
- 0
-
-
- 7217
- 70
- 0
- 0
- 0
-
-
- 7218
- 140
- 0
- 0
- 0
-
-
- 7219
- 140
- 0
- 0
- 0
-
-
- 7220
- 70
- 0
- 0
- 0
-
-
- 7221
- 70
- 0
- 0
- 0
-
-
- 7222
- 1
- 0
- 0
- 0
-
-
- 7223
- 20
- 0
- 0
- 0
-
-
- 7224
- 84
- 0
- 0
- 0
-
-
- 7225
- 64
- 0
- 0
- 0
-
-
- 7226
- 1
- 0
- 0
- 0
-
-
- 7227
- 1
- 0
- 0
- 0
-
-
- 7228
- 85
- 0
- 0
- 0
-
-
- 7229
- 85
- 0
- 0
- 0
-
-
- 7230
- 149
- 0
- 0
- 0
-
-
- 7231
- 1
- 0
- 0
- 0
-
-
- 7232
- 20
- 0
- 0
- 0
-
-
- 7233
- 84
- 0
- 0
- 0
-
-
- 7234
- 64
- 0
- 0
- 0
-
-
- 7235
- 149
- 0
- 0
- 0
-
-
- 7236
- 1
- 0
- 0
- 0
-
-
- 7237
- 50
- 0
- 0
- 0
-
-
- 7238
- 1
- 0
- 0
- 0
-
-
- 7239
- 1
- 0
- 0
- 0
-
-
- 7240
- 50
- 0
- 0
- 0
-
-
- 7241
- 1
- 0
- 0
- 0
-
-
- 7242
- 50
- 0
- 0
- 0
-
-
- 7243
- 1
- 0
- 0
- 0
-
-
- 7244
- 50
- 0
- 0
- 0
-
-
- 7245
- 1
- 0
- 0
- 0
-
-
- 7246
- 50
- 0
- 0
- 0
-
-
- 7247
- 1
- 0
- 0
- 0
-
-
- 7248
- 1
- 0
- 0
- 0
-
-
- 7249
- 1
- 0
- 0
- 0
-
-
- 7250
- 1
- 0
- 0
- 0
-
-
- 7251
- 1
- 0
- 0
- 0
-
-
- 7252
- 1
- 0
- 0
- 0
-
-
- 7253
- 1
- 0
- 0
- 0
-
-
- 7254
- 1
- 0
- 0
- 0
-
-
- 7255
- 1
- 0
- 0
- 0
-
-
- 7256
- 1
- 0
- 0
- 0
-
-
- 7257
- 50
- 0
- 0
- 0
-
-
- 7258
- 1
- 0
- 0
- 0
-
-
- 7259
- 50
- 0
- 0
- 0
-
-
- 7260
- 1
- 0
- 0
- 0
-
-
- 7261
- 50
- 0
- 0
- 0
-
-
- 7262
- 1
- 0
- 0
- 0
-
-
- 7263
- 50
- 0
- 0
- 0
-
-
- 7264
- 1
- 0
- 0
- 0
-
-
- 7265
- 50
- 0
- 0
- 0
-
-
- 7266
- 1
- 0
- 0
- 0
-
-
- 7267
- 50
- 0
- 0
- 0
-
-
- 7268
- 1
- 0
- 0
- 0
-
-
- 7269
- 1
- 0
- 0
- 0
-
-
- 7270
- 1
- 0
- 0
- 0
-
-
- 7271
- 1
- 0
- 0
- 0
-
-
- 7272
- 1
- 0
- 0
- 0
-
-
- 7273
- 1
- 0
- 0
- 0
-
-
- 7274
- 1
- 0
- 0
- 0
-
-
- 7275
- 1
- 0
- 0
- 0
-
-
- 7276
- 1
- 0
- 0
- 0
-
-
- 7277
- 1
- 0
- 0
- 0
-
-
- 7278
- 1
- 0
- 0
- 0
-
-
- 7279
- 1
- 0
- 0
- 0
-
-
- 7280
- 1
- 0
- 0
- 0
-
-
- 7281
- 1
- 0
- 0
- 0
-
-
- 7282
- 1
- 0
- 0
- 0
-
-
- 7283
- 1
- 0
- 0
- 0
-
-
- 7284
- 1
- 0
- 0
- 0
-
-
- 7285
- 1
- 0
- 0
- 0
-
-
- 7286
- 1
- 0
- 0
- 0
-
-
- 7287
- 50
- 0
- 0
- 0
-
-
- 7288
- 1
- 0
- 0
- 0
-
-
- 7289
- 50
- 0
- 0
- 0
-
-
- 7290
- 1
- 0
- 0
- 0
-
-
- 7291
- 50
- 0
- 0
- 0
-
-
- 7292
- 1
- 0
- 0
- 0
-
-
- 7293
- 50
- 0
- 0
- 0
-
-
- 7294
- 1
- 0
- 0
- 0
-
-
- 7295
- 50
- 0
- 0
- 0
-
-
- 7296
- 1
- 0
- 0
- 0
-
-
- 7297
- 1
- 0
- 0
- 0
-
-
- 7298
- 1
- 0
- 0
- 0
-
-
- 7299
- 1
- 0
- 0
- 0
-
-
- 7300
- 1
- 0
- 0
- 0
-
-
- 7301
- 1
- 0
- 0
- 0
-
-
- 7302
- 1
- 0
- 0
- 0
-
-
- 7303
- 1
- 0
- 0
- 0
-
-
- 7304
- 1
- 0
- 0
- 0
-
-
- 7305
- 1
- 0
- 0
- 0
-
-
- 7306
- 50
- 0
- 0
- 0
-
-
- 7307
- 1
- 0
- 0
- 0
-
-
- 7308
- 50
- 0
- 0
- 0
-
-
- 7309
- 1
- 0
- 0
- 0
-
-
- 7310
- 50
- 0
- 0
- 0
-
-
- 7311
- 1
- 0
- 0
- 0
-
-
- 7312
- 50
- 0
- 0
- 0
-
-
- 7313
- 1
- 0
- 0
- 0
-
-
- 7314
- 50
- 0
- 0
- 0
-
-
- 7315
- 1
- 0
- 0
- 0
-
-
- 7316
- 50
- 0
- 0
- 0
-
-
- 7317
- 1
- 0
- 0
- 0
-
-
- 7318
- 50
- 0
- 0
- 0
-
-
- 7319
- 225
- 0
- 0
- 0
-
-
- 7320
- 225
- 0
- 0
- 0
-
-
- 7321
- 225
- 0
- 0
- 0
-
-
- 7322
- 225
- 0
- 0
- 0
-
-
- 7323
- 225
- 0
- 0
- 0
-
-
- 7324
- 225
- 0
- 0
- 0
-
-
- 7325
- 225
- 0
- 0
- 0
-
-
- 7326
- 225
- 0
- 0
- 0
-
-
- 7327
- 225
- 0
- 0
- 0
-
-
- 7328
- 225
- 0
- 0
- 0
-
-
- 7329
- 15
- 0
- 0
- 0
-
-
- 7330
- 15
- 0
- 0
- 0
-
-
- 7331
- 15
- 0
- 0
- 0
-
-
- 7332
- 1632
- 0
- 0
- 0
-
-
- 7333
- 1632
- 0
- 0
- 0
-
-
- 7334
- 5440
- 0
- 0
- 0
-
-
- 7335
- 5440
- 0
- 0
- 0
-
-
- 7336
- 54400
- 0
- 0
- 0
-
-
- 7337
- 54400
- 0
- 0
- 0
-
-
- 7338
- 16325
- 0
- 0
- 0
-
-
- 7339
- 16325
- 0
- 0
- 0
-
-
- 7340
- 5440
- 0
- 0
- 0
-
-
- 7341
- 5440
- 0
- 0
- 0
-
-
- 7342
- 54400
- 0
- 0
- 0
-
-
- 7343
- 54400
- 0
- 0
- 0
-
-
- 7344
- 1632
- 0
- 0
- 0
-
-
- 7345
- 1632
- 0
- 0
- 0
-
-
- 7346
- 5440
- 0
- 0
- 0
-
-
- 7347
- 5440
- 0
- 0
- 0
-
-
- 7348
- 54400
- 0
- 0
- 0
-
-
- 7349
- 54400
- 0
- 0
- 0
-
-
- 7350
- 1632
- 0
- 0
- 0
-
-
- 7351
- 1632
- 0
- 0
- 0
-
-
- 7352
- 5440
- 0
- 0
- 0
-
-
- 7353
- 5440
- 0
- 0
- 0
-
-
- 7354
- 54400
- 0
- 0
- 0
-
-
- 7355
- 54400
- 0
- 0
- 0
-
-
- 7356
- 1632
- 0
- 0
- 0
-
-
- 7357
- 1632
- 0
- 0
- 0
-
-
- 7358
- 5440
- 0
- 0
- 0
-
-
- 7359
- 5440
- 0
- 0
- 0
-
-
- 7360
- 54400
- 0
- 0
- 0
-
-
- 7361
- 54400
- 0
- 0
- 0
-
-
- 7362
- 850
- 0
- 0
- 0
-
-
- 7363
- 850
- 0
- 0
- 0
-
-
- 7364
- 850
- 0
- 0
- 0
-
-
- 7365
- 850
- 0
- 0
- 0
-
-
- 7366
- 750
- 0
- 0
- 0
-
-
- 7367
- 750
- 0
- 0
- 0
-
-
- 7368
- 750
- 0
- 0
- 0
-
-
- 7369
- 750
- 0
- 0
- 0
-
-
- 7370
- 7800
- 0
- 0
- 0
-
-
- 7371
- 7800
- 0
- 0
- 0
-
-
- 7372
- 7800
- 0
- 0
- 0
-
-
- 7373
- 7800
- 0
- 0
- 0
-
-
- 7374
- 9360
- 0
- 0
- 0
-
-
- 7375
- 9360
- 0
- 0
- 0
-
-
- 7376
- 9360
- 0
- 0
- 0
-
-
- 7377
- 9360
- 0
- 0
- 0
-
-
- 7378
- 3900
- 0
- 0
- 0
-
-
- 7379
- 3900
- 0
- 0
- 0
-
-
- 7380
- 3900
- 0
- 0
- 0
-
-
- 7381
- 3900
- 0
- 0
- 0
-
-
- 7382
- 4320
- 0
- 0
- 0
-
-
- 7383
- 4320
- 0
- 0
- 0
-
-
- 7384
- 4320
- 0
- 0
- 0
-
-
- 7385
- 4320
- 0
- 0
- 0
-
-
- 7386
- 2
- 0
- 0
- 0
-
-
- 7387
- 2
- 0
- 0
- 0
-
-
- 7388
- 2
- 0
- 0
- 0
-
-
- 7389
- 2
- 0
- 0
- 0
-
-
- 7390
- 15
- 0
- 0
- 0
-
-
- 7391
- 15
- 0
- 0
- 0
-
-
- 7392
- 15
- 0
- 0
- 0
-
-
- 7393
- 15
- 0
- 0
- 0
-
-
- 7394
- 2
- 0
- 0
- 0
-
-
- 7395
- 2
- 0
- 0
- 0
-
-
- 7396
- 2
- 0
- 0
- 0
-
-
- 7397
- 2
- 0
- 0
- 0
-
-
- 7398
- 80000
- 0
- 0
- 0
-
-
- 7399
- 120000
- 0
- 0
- 0
-
-
- 7400
- 15000
- 0
- 0
- 0
-
-
- 7401
- 80000
- 0
- 0
- 0
-
-
- 7402
- 120000
- 0
- 0
- 0
-
-
- 7403
- 15000
- 0
- 0
- 0
-
-
- 7404
- 4
- 0
- 0
- 0
-
-
- 7405
- 4
- 0
- 0
- 0
-
-
- 7406
- 4
- 0
- 0
- 0
-
-
- 7407
- 220000
- 0
- 0
- 0
-
-
- 7408
- 1
- 0
- 0
- 0
-
-
- 7409
- 1
- 0
- 0
- 0
-
-
- 7410
- 1
- 0
- 0
- 0
-
-
- 7411
- 1
- 0
- 0
- 0
-
-
- 7412
- 1
- 0
- 0
- 0
-
-
- 7413
- 1
- 0
- 0
- 0
-
-
- 7414
- 1
- 0
- 0
- 0
-
-
- 7415
- 1
- 0
- 0
- 0
-
-
- 7416
- 600
- 0
- 0
- 0
-
-
- 7417
- 600
- 0
- 0
- 0
-
-
- 7418
- 400
- 0
- 0
- 0
-
-
- 7419
- 400
- 0
- 0
- 0
-
-
- 7420
- 1
- 0
- 0
- 0
-
-
- 7421
- 300
- 0
- 0
- 0
-
-
- 7422
- 1
- 0
- 0
- 0
-
-
- 7423
- 1
- 0
- 0
- 0
-
-
- 7424
- 1
- 0
- 0
- 0
-
-
- 7425
- 1
- 0
- 0
- 0
-
-
- 7426
- 1
- 0
- 0
- 0
-
-
- 7427
- 1
- 0
- 0
- 0
-
-
- 7428
- 1
- 0
- 0
- 0
-
-
- 7429
- 1
- 0
- 0
- 0
-
-
- 7430
- 1
- 0
- 0
- 0
-
-
- 7431
- 1
- 0
- 0
- 0
-
-
- 7432
- 10
- 0
- 0
- 0
-
-
- 7433
- 35
- 0
- 0
- 0
-
-
- 7434
- 35
- 0
- 0
- 0
-
-
- 7435
- 50
- 0
- 0
- 0
-
-
- 7436
- 50
- 0
- 0
- 0
-
-
- 7437
- 325
- 0
- 0
- 0
-
-
- 7438
- 325
- 0
- 0
- 0
-
-
- 7439
- 1920
- 0
- 0
- 0
-
-
- 7440
- 1920
- 0
- 0
- 0
-
-
- 7441
- 1660
- 0
- 0
- 0
-
-
- 7442
- 1660
- 0
- 0
- 0
-
-
- 7443
- 3200
- 0
- 0
- 0
-
-
- 7444
- 3200
- 0
- 0
- 0
-
-
- 7445
- 14400
- 0
- 0
- 0
-
-
- 7446
- 14400
- 0
- 0
- 0
-
-
- 7447
- 8000
- 0
- 0
- 0
-
-
- 7448
- 8000
- 0
- 0
- 0
-
-
- 7449
- 41500
- 0
- 0
- 0
-
-
- 7450
- 41500
- 0
- 0
- 0
-
-
- 7451
- 25600
- 0
- 0
- 0
-
-
- 7452
- 25600
- 0
- 0
- 0
-
-
- 7453
- 50
- 0
- 0
- 0
-
-
- 7454
- 100
- 0
- 0
- 0
-
-
- 7455
- 250
- 0
- 0
- 0
-
-
- 7456
- 500
- 0
- 0
- 0
-
-
- 7457
- 1000
- 0
- 0
- 0
-
-
- 7458
- 1500
- 0
- 0
- 0
-
-
- 7459
- 2500
- 0
- 0
- 0
-
-
- 7460
- 5000
- 0
- 0
- 0
-
-
- 7461
- 100000
- 0
- 0
- 0
-
-
- 7462
- 100000
- 0
- 0
- 0
-
-
- 7463
- 2
- 0
- 0
- 0
-
-
- 7464
- 1
- 0
- 0
- 0
-
-
- 7465
- 1
- 0
- 0
- 0
-
-
- 7466
- 1
- 0
- 0
- 0
-
-
- 7467
- 1
- 0
- 0
- 0
-
-
- 7468
- 10
- 0
- 0
- 0
-
-
- 7469
- 1
- 0
- 0
- 0
-
-
- 7470
- 1
- 0
- 0
- 0
-
-
- 7471
- 1
- 0
- 0
- 0
-
-
- 7472
- 1
- 0
- 0
- 0
-
-
- 7473
- 1
- 0
- 0
- 0
-
-
- 7474
- 1
- 0
- 0
- 0
-
-
- 7475
- 1
- 0
- 0
- 0
-
-
- 7476
- 1
- 0
- 0
- 0
-
-
- 7477
- 1
- 0
- 0
- 0
-
-
- 7478
- 1
- 0
- 0
- 0
-
-
- 7479
- 20
- 0
- 0
- 0
-
-
- 7480
- 1
- 0
- 0
- 0
-
-
- 7481
- 1
- 0
- 0
- 0
-
-
- 7482
- 1
- 0
- 0
- 0
-
-
- 7483
- 1
- 0
- 0
- 0
-
-
- 7484
- 1
- 0
- 0
- 0
-
-
- 7485
- 1
- 0
- 0
- 0
-
-
- 7486
- 1
- 0
- 0
- 0
-
-
- 7487
- 1
- 0
- 0
- 0
-
-
- 7488
- 1
- 0
- 0
- 0
-
-
- 7489
- 1
- 0
- 0
- 0
-
-
- 7490
- 1
- 0
- 0
- 0
-
-
- 7491
- 1
- 0
- 0
- 0
-
-
- 7492
- 1
- 0
- 0
- 0
-
-
- 7493
- 1
- 0
- 0
- 0
-
-
- 7494
- 1
- 0
- 0
- 0
-
-
- 7495
- 1
- 0
- 0
- 0
-
-
- 7496
- 1
- 0
- 0
- 0
-
-
- 7497
- 30
- 0
- 0
- 0
-
-
- 7498
- 1
- 0
- 0
- 0
-
-
- 7499
- 1
- 0
- 0
- 0
-
-
- 7500
- 1
- 0
- 0
- 0
-
-
- 7501
- 1
- 0
- 0
- 0
-
-
- 7502
- 1
- 0
- 0
- 0
-
-
- 7503
- 1
- 0
- 0
- 0
-
-
- 7504
- 1
- 0
- 0
- 0
-
-
- 7505
- 1
- 0
- 0
- 0
-
-
- 7506
- 1
- 0
- 0
- 0
-
-
- 7507
- 1
- 0
- 0
- 0
-
-
- 7508
- 2
- 0
- 0
- 0
-
-
- 7509
- 1
- 0
- 0
- 0
-
-
- 7510
- 1
- 0
- 0
- 0
-
-
- 7511
- 10
- 0
- 0
- 0
-
-
- 7512
- 6
- 0
- 0
- 0
-
-
- 7513
- 3
- 0
- 0
- 0
-
-
- 7514
- 2
- 0
- 0
- 0
-
-
- 7515
- 1
- 0
- 0
- 0
-
-
- 7516
- 1
- 0
- 0
- 0
-
-
- 7517
- 1
- 0
- 0
- 0
-
-
- 7518
- 1
- 0
- 0
- 0
-
-
- 7519
- 1
- 0
- 0
- 0
-
-
- 7520
- 1
- 0
- 0
- 0
-
-
- 7521
- 50
- 0
- 0
- 0
-
-
- 7522
- 50
- 0
- 0
- 0
-
-
- 7523
- 40
- 0
- 0
- 0
-
-
- 7524
- 30
- 0
- 0
- 0
-
-
- 7525
- 20
- 0
- 0
- 0
-
-
- 7526
- 10
- 0
- 0
- 0
-
-
- 7527
- 1
- 0
- 0
- 0
-
-
- 7528
- 1
- 0
- 0
- 0
-
-
- 7529
- 100
- 0
- 0
- 0
-
-
- 7530
- 100
- 0
- 0
- 0
-
-
- 7531
- 1
- 0
- 0
- 0
-
-
- 7532
- 1
- 0
- 0
- 0
-
-
- 7533
- 1
- 0
- 0
- 0
-
-
- 7534
- 1
- 0
- 0
- 0
-
-
- 7535
- 1
- 0
- 0
- 0
-
-
- 7536
- 1
- 0
- 0
- 0
-
-
- 7537
- 1
- 0
- 0
- 0
-
-
- 7538
- 1
- 0
- 0
- 0
-
-
- 7539
- 1
- 0
- 0
- 0
-
-
- 7540
- 1
- 0
- 0
- 0
-
-
- 7541
- 1
- 0
- 0
- 0
-
-
- 7542
- 50
- 0
- 0
- 0
-
-
- 7543
- 20
- 0
- 0
- 0
-
-
- 7544
- 4
- 0
- 0
- 0
-
-
- 7545
- 6
- 0
- 0
- 0
-
-
- 7546
- 10
- 0
- 0
- 0
-
-
- 7547
- 5
- 0
- 0
- 0
-
-
- 7548
- 1
- 0
- 0
- 0
-
-
- 7549
- 1
- 0
- 0
- 0
-
-
- 7550
- 1
- 0
- 0
- 0
-
-
- 7551
- 1
- 0
- 0
- 0
-
-
- 7552
- 1
- 0
- 0
- 0
-
-
- 7553
- 1
- 0
- 0
- 0
-
-
- 7554
- 1
- 0
- 0
- 0
-
-
- 7555
- 1
- 0
- 0
- 0
-
-
- 7556
- 1
- 0
- 0
- 0
-
-
- 7557
- 1
- 0
- 0
- 0
-
-
- 7558
- 1
- 0
- 0
- 0
-
-
- 7559
- 1
- 0
- 0
- 0
-
-
- 7560
- 1
- 0
- 0
- 0
-
-
- 7561
- 1
- 0
- 0
- 0
-
-
- 7562
- 1
- 0
- 0
- 0
-
-
- 7563
- 1
- 0
- 0
- 0
-
-
- 7564
- 1
- 0
- 0
- 0
-
-
- 7565
- 1
- 0
- 0
- 0
-
-
- 7566
- 100
- 0
- 0
- 0
-
-
- 7567
- 100
- 0
- 0
- 0
-
-
- 7568
- 150
- 0
- 0
- 0
-
-
- 7569
- 150
- 0
- 0
- 0
-
-
- 7570
- 1
- 0
- 0
- 0
-
-
- 7571
- 1
- 0
- 0
- 0
-
-
- 7572
- 5
- 0
- 0
- 0
-
-
- 7573
- 5
- 0
- 0
- 0
-
-
- 7574
- 5
- 0
- 0
- 0
-
-
- 7575
- 5
- 0
- 0
- 0
-
-
- 7576
- 1
- 0
- 0
- 0
-
-
- 7577
- 1
- 0
- 0
- 0
-
-
- 7578
- 1
- 0
- 0
- 0
-
-
- 7579
- 1
- 0
- 0
- 0
-
-
- 7580
- 1
- 0
- 0
- 0
-
-
- 7581
- 1
- 0
- 0
- 0
-
-
- 7582
- 1
- 0
- 0
- 0
-
-
- 7583
- 1
- 0
- 0
- 0
-
-
- 7584
- 1
- 0
- 0
- 0
-
-
- 7585
- 1
- 0
- 0
- 0
-
-
- 7586
- 1
- 0
- 0
- 0
-
-
- 7587
- 1
- 0
- 0
- 0
-
-
- 7588
- 1
- 0
- 0
- 0
-
-
- 7589
- 1
- 0
- 0
- 0
-
-
- 7590
- 1
- 0
- 0
- 0
-
-
- 7591
- 1
- 0
- 0
- 0
-
-
- 7592
- 1
- 0
- 0
- 0
-
-
- 7593
- 1
- 0
- 0
- 0
-
-
- 7594
- 1
- 0
- 0
- 0
-
-
- 7595
- 1
- 0
- 0
- 0
-
-
- 7596
- 1
- 0
- 0
- 0
-
-
- 7597
- 1
- 0
- 0
- 0
-
-
- 7598
- 1
- 0
- 0
- 0
-
-
- 7599
- 1
- 0
- 0
- 0
-
-
- 7600
- 1
- 0
- 0
- 0
-
-
- 7601
- 1
- 0
- 0
- 0
-
-
- 7602
- 1
- 0
- 0
- 0
-
-
- 7603
- 1
- 0
- 0
- 0
-
-
- 7604
- 1
- 0
- 0
- 0
-
-
- 7605
- 1
- 0
- 0
- 0
-
-
- 7606
- 1
- 0
- 0
- 0
-
-
- 7607
- 1
- 0
- 0
- 0
-
-
- 7608
- 1
- 0
- 0
- 0
-
-
- 7609
- 1
- 0
- 0
- 0
-
-
- 7610
- 1
- 0
- 0
- 0
-
-
- 7611
- 1
- 0
- 0
- 0
-
-
- 7612
- 1
- 0
- 0
- 0
-
-
- 7613
- 1
- 0
- 0
- 0
-
-
- 7614
- 1
- 0
- 0
- 0
-
-
- 7615
- 1
- 0
- 0
- 0
-
-
- 7616
- 1
- 0
- 0
- 0
-
-
- 7617
- 1
- 0
- 0
- 0
-
-
- 7618
- 1
- 0
- 0
- 0
-
-
- 7619
- 1
- 0
- 0
- 0
-
-
- 7620
- 1
- 0
- 0
- 0
-
-
- 7621
- 1
- 0
- 0
- 0
-
-
- 7622
- 1
- 0
- 0
- 0
-
-
- 7623
- 1
- 0
- 0
- 0
-
-
- 7624
- 1
- 0
- 0
- 0
-
-
- 7625
- 1
- 0
- 0
- 0
-
-
- 7626
- 1
- 0
- 0
- 0
-
-
- 7627
- 1
- 0
- 0
- 0
-
-
- 7628
- 1
- 0
- 0
- 0
-
-
- 7629
- 1
- 0
- 0
- 0
-
-
- 7630
- 1
- 0
- 0
- 0
-
-
- 7631
- 1
- 0
- 0
- 0
-
-
- 7632
- 1
- 0
- 0
- 0
-
-
- 7633
- 1
- 0
- 0
- 0
-
-
- 7634
- 1
- 0
- 0
- 0
-
-
- 7635
- 1
- 0
- 0
- 0
-
-
- 7636
- 1
- 0
- 0
- 0
-
-
- 7637
- 1
- 0
- 0
- 0
-
-
- 7638
- 1
- 0
- 0
- 0
-
-
- 7639
- 1000
- 0
- 0
- 0
-
-
- 7640
- 1000
- 0
- 0
- 0
-
-
- 7641
- 1000
- 0
- 0
- 0
-
-
- 7642
- 1000
- 0
- 0
- 0
-
-
- 7643
- 1000
- 0
- 0
- 0
-
-
- 7644
- 1000
- 0
- 0
- 0
-
-
- 7645
- 1000
- 0
- 0
- 0
-
-
- 7646
- 1000
- 0
- 0
- 0
-
-
- 7647
- 1000
- 0
- 0
- 0
-
-
- 7648
- 1000
- 0
- 0
- 0
-
-
- 7649
- 100
- 0
- 0
- 0
-
-
- 7650
- 200
- 0
- 0
- 0
-
-
- 7651
- 200
- 0
- 0
- 0
-
-
- 7652
- 110
- 0
- 0
- 0
-
-
- 7653
- 110
- 0
- 0
- 0
-
-
- 7654
- 110
- 0
- 0
- 0
-
-
- 7655
- 110
- 0
- 0
- 0
-
-
- 7656
- 110
- 0
- 0
- 0
-
-
- 7657
- 110
- 0
- 0
- 0
-
-
- 7658
- 110
- 0
- 0
- 0
-
-
- 7659
- 110
- 0
- 0
- 0
-
-
- 7660
- 200
- 0
- 0
- 0
-
-
- 7661
- 200
- 0
- 0
- 0
-
-
- 7662
- 200
- 0
- 0
- 0
-
-
- 7663
- 200
- 0
- 0
- 0
-
-
- 7664
- 200
- 0
- 0
- 0
-
-
- 7665
- 200
- 0
- 0
- 0
-
-
- 7666
- 200
- 0
- 0
- 0
-
-
- 7667
- 200
- 0
- 0
- 0
-
-
- 7668
- 3000
- 0
- 0
- 0
-
-
- 7669
- 3000
- 0
- 0
- 0
-
-
- 7670
- 1
- 0
- 0
- 0
-
-
- 7671
- 1
- 0
- 0
- 0
-
-
- 7672
- 1
- 0
- 0
- 0
-
-
- 7673
- 1
- 0
- 0
- 0
-
-
- 7674
- 1
- 0
- 0
- 0
-
-
- 7675
- 1
- 0
- 0
- 0
-
-
- 7676
- 1
- 0
- 0
- 0
-
-
- 7677
- 1
- 0
- 0
- 0
-
-
- 7678
- 1
- 0
- 0
- 0
-
-
- 7679
- 1
- 0
- 0
- 0
-
-
- 7680
- 1
- 0
- 0
- 0
-
-
- 7681
- 1
- 0
- 0
- 0
-
-
- 7682
- 1
- 0
- 0
- 0
-
-
- 7683
- 1
- 0
- 0
- 0
-
-
- 7684
- 1
- 0
- 0
- 0
-
-
- 7685
- 1
- 0
- 0
- 0
-
-
- 7686
- 1
- 0
- 0
- 0
-
-
- 7687
- 1
- 0
- 0
- 0
-
-
- 7688
- 1
- 0
- 0
- 0
-
-
- 7689
- 1
- 0
- 0
- 0
-
-
- 7690
- 1
- 0
- 0
- 0
-
-
- 7691
- 1
- 0
- 0
- 0
-
-
- 7692
- 1
- 0
- 0
- 0
-
-
- 7693
- 1
- 0
- 0
- 0
-
-
- 7694
- 1
- 0
- 0
- 0
-
-
- 7695
- 1
- 0
- 0
- 0
-
-
- 7696
- 1
- 0
- 0
- 0
-
-
- 7697
- 1
- 0
- 0
- 0
-
-
- 7698
- 1
- 0
- 0
- 0
-
-
- 7699
- 1
- 0
- 0
- 0
-
-
- 7700
- 1
- 0
- 0
- 0
-
-
- 7701
- 1
- 0
- 0
- 0
-
-
- 7702
- 1
- 0
- 0
- 0
-
-
- 7703
- 1
- 0
- 0
- 0
-
-
- 7704
- 1
- 0
- 0
- 0
-
-
- 7705
- 1
- 0
- 0
- 0
-
-
- 7706
- 1
- 0
- 0
- 0
-
-
- 7707
- 1
- 0
- 0
- 0
-
-
- 7708
- 1
- 0
- 0
- 0
-
-
- 7709
- 1
- 0
- 0
- 0
-
-
- 7710
- 1
- 0
- 0
- 0
-
-
- 7711
- 1
- 0
- 0
- 0
-
-
- 7712
- 1
- 0
- 0
- 0
-
-
- 7713
- 1
- 0
- 0
- 0
-
-
- 7714
- 1
- 0
- 0
- 0
-
-
- 7715
- 1
- 0
- 0
- 0
-
-
- 7716
- 1
- 0
- 0
- 0
-
-
- 7717
- 1
- 0
- 0
- 0
-
-
- 7718
- 1
- 0
- 0
- 0
-
-
- 7719
- 1
- 0
- 0
- 0
-
-
- 7720
- 1
- 0
- 0
- 0
-
-
- 7721
- 1
- 0
- 0
- 0
-
-
- 7722
- 1
- 0
- 0
- 0
-
-
- 7723
- 1
- 0
- 0
- 0
-
-
- 7724
- 1
- 0
- 0
- 0
-
-
- 7725
- 1
- 0
- 0
- 0
-
-
- 7726
- 1
- 0
- 0
- 0
-
-
- 7727
- 1
- 0
- 0
- 0
-
-
- 7728
- 2
- 0
- 0
- 0
-
-
- 7729
- 2
- 0
- 0
- 0
-
-
- 7730
- 10
- 0
- 0
- 0
-
-
- 7731
- 10
- 0
- 0
- 0
-
-
- 7732
- 2
- 0
- 0
- 0
-
-
- 7733
- 10
- 0
- 0
- 0
-
-
- 7734
- 10
- 0
- 0
- 0
-
-
- 7735
- 2
- 0
- 0
- 0
-
-
- 7736
- 10
- 0
- 0
- 0
-
-
- 7737
- 10
- 0
- 0
- 0
-
-
- 7738
- 1
- 0
- 0
- 0
-
-
- 7739
- 1
- 0
- 0
- 0
-
-
- 7740
- 2
- 0
- 0
- 0
-
-
- 7741
- 2
- 0
- 0
- 0
-
-
- 7742
- 2
- 0
- 0
- 0
-
-
- 7743
- 2
- 0
- 0
- 0
-
-
- 7744
- 2
- 0
- 0
- 0
-
-
- 7745
- 2
- 0
- 0
- 0
-
-
- 7746
- 2
- 0
- 0
- 0
-
-
- 7747
- 2
- 0
- 0
- 0
-
-
- 7748
- 2
- 0
- 0
- 0
-
-
- 7749
- 2
- 0
- 0
- 0
-
-
- 7750
- 5
- 0
- 0
- 0
-
-
- 7751
- 5
- 0
- 0
- 0
-
-
- 7752
- 2
- 0
- 0
- 0
-
-
- 7753
- 2
- 0
- 0
- 0
-
-
- 7754
- 2
- 0
- 0
- 0
-
-
- 7755
- 2
- 0
- 0
- 0
-
-
- 7756
- 1
- 0
- 0
- 0
-
-
- 7757
- 1
- 0
- 0
- 0
-
-
- 7758
- 1
- 0
- 0
- 0
-
-
- 7759
- 10
- 0
- 0
- 0
-
-
- 7760
- 10
- 0
- 0
- 0
-
-
- 7761
- 10
- 0
- 0
- 0
-
-
- 7762
- 10
- 0
- 0
- 0
-
-
- 7763
- 10
- 0
- 0
- 0
-
-
- 7764
- 10
- 0
- 0
- 0
-
-
- 7765
- 10
- 0
- 0
- 0
-
-
- 7766
- 10
- 0
- 0
- 0
-
-
- 7767
- 10
- 0
- 0
- 0
-
-
- 7768
- 10
- 0
- 0
- 0
-
-
- 7769
- 10
- 0
- 0
- 0
-
-
- 7770
- 10
- 0
- 0
- 0
-
-
- 7771
- 10
- 0
- 0
- 0
-
-
- 7772
- 10
- 0
- 0
- 0
-
-
- 7773
- 1
- 0
- 0
- 0
-
-
- 7774
- 1
- 0
- 0
- 0
-
-
- 7775
- 1
- 0
- 0
- 0
-
-
- 7776
- 1
- 0
- 0
- 0
-
-
- 7777
- 1
- 0
- 0
- 0
-
-
- 7778
- 1
- 0
- 0
- 0
-
-
- 7779
- 5000
- 0
- 0
- 0
-
-
- 7780
- 5000
- 0
- 0
- 0
-
-
- 7781
- 5000
- 0
- 0
- 0
-
-
- 7782
- 5000
- 0
- 0
- 0
-
-
- 7783
- 5000
- 0
- 0
- 0
-
-
- 7784
- 5000
- 0
- 0
- 0
-
-
- 7785
- 5000
- 0
- 0
- 0
-
-
- 7786
- 5000
- 0
- 0
- 0
-
-
- 7787
- 5000
- 0
- 0
- 0
-
-
- 7788
- 5000
- 0
- 0
- 0
-
-
- 7789
- 5000
- 0
- 0
- 0
-
-
- 7790
- 5000
- 0
- 0
- 0
-
-
- 7791
- 5000
- 0
- 0
- 0
-
-
- 7792
- 5000
- 0
- 0
- 0
-
-
- 7793
- 5000
- 0
- 0
- 0
-
-
- 7794
- 5000
- 0
- 0
- 0
-
-
- 7795
- 5000
- 0
- 0
- 0
-
-
- 7796
- 5000
- 0
- 0
- 0
-
-
- 7797
- 5000
- 0
- 0
- 0
-
-
- 7798
- 5000
- 0
- 0
- 0
-
-
- 7799
- 5000
- 0
- 0
- 0
-
-
- 7800
- 1
- 0
- 0
- 0
-
-
- 7801
- 35
- 0
- 0
- 0
-
-
- 7802
- 35
- 0
- 0
- 0
-
-
- 7803
- 1
- 0
- 0
- 0
-
-
- 7804
- 625
- 0
- 0
- 0
-
-
- 7805
- 625
- 0
- 0
- 0
-
-
- 7806
- 26
- 0
- 0
- 0
-
-
- 7807
- 182
- 0
- 0
- 0
-
-
- 7808
- 18
- 0
- 0
- 0
-
-
- 7809
- 26
- 0
- 0
- 0
-
-
- 7810
- 1
- 0
- 0
- 0
-
-
- 7811
- 1
- 0
- 0
- 0
-
-
- 7812
- 1
- 0
- 0
- 0
-
-
- 7813
- 1
- 0
- 0
- 0
-
-
- 7814
- 1
- 0
- 0
- 0
-
-
- 7815
- 1
- 0
- 0
- 0
-
-
- 7816
- 1
- 0
- 0
- 0
-
-
- 7817
- 1
- 0
- 0
- 0
-
-
- 7818
- 1
- 0
- 0
- 0
-
-
- 7819
- 1
- 0
- 0
- 0
-
-
- 7820
- 1
- 0
- 0
- 0
-
-
- 7821
- 1
- 0
- 0
- 0
-
-
- 7822
- 1
- 0
- 0
- 0
-
-
- 7823
- 1
- 0
- 0
- 0
-
-
- 7824
- 1
- 0
- 0
- 0
-
-
- 7825
- 1
- 0
- 0
- 0
-
-
- 7826
- 1
- 0
- 0
- 0
-
-
- 7827
- 1
- 0
- 0
- 0
-
-
- 7828
- 1
- 0
- 0
- 0
-
-
- 7829
- 1
- 0
- 0
- 0
-
-
- 7830
- 1
- 0
- 0
- 0
-
-
- 7831
- 1
- 0
- 0
- 0
-
-
- 7832
- 1
- 0
- 0
- 0
-
-
- 7833
- 1
- 0
- 0
- 0
-
-
- 7834
- 1
- 0
- 0
- 0
-
-
- 7835
- 1
- 0
- 0
- 0
-
-
- 7836
- 1
- 0
- 0
- 0
-
-
- 7837
- 1
- 0
- 0
- 0
-
-
- 7838
- 1
- 0
- 0
- 0
-
-
- 7839
- 1
- 0
- 0
- 0
-
-
- 7840
- 1
- 0
- 0
- 0
-
-
- 7841
- 1
- 0
- 0
- 0
-
-
- 7842
- 1
- 0
- 0
- 0
-
-
- 7843
- 1
- 0
- 0
- 0
-
-
- 7844
- 1
- 0
- 0
- 0
-
-
- 7845
- 1
- 0
- 0
- 0
-
-
- 7846
- 1
- 0
- 0
- 0
-
-
- 7847
- 1
- 0
- 0
- 0
-
-
- 7848
- 1
- 0
- 0
- 0
-
-
- 7849
- 1
- 0
- 0
- 0
-
-
- 7850
- 1
- 0
- 0
- 0
-
-
- 7851
- 1
- 0
- 0
- 0
-
-
- 7852
- 1
- 0
- 0
- 0
-
-
- 7853
- 1
- 0
- 0
- 0
-
-
- 7854
- 1
- 0
- 0
- 0
-
-
- 7855
- 1
- 0
- 0
- 0
-
-
- 7856
- 1
- 0
- 0
- 0
-
-
- 7857
- 1
- 0
- 0
- 0
-
-
- 7858
- 1
- 0
- 0
- 0
-
-
- 7859
- 1
- 0
- 0
- 0
-
-
- 7860
- 1
- 0
- 0
- 0
-
-
- 7861
- 1
- 0
- 0
- 0
-
-
- 7862
- 1
- 0
- 0
- 0
-
-
- 7863
- 1
- 0
- 0
- 0
-
-
- 7864
- 1
- 0
- 0
- 0
-
-
- 7865
- 1
- 0
- 0
- 0
-
-
- 7866
- 1
- 0
- 0
- 0
-
-
- 7867
- 1
- 0
- 0
- 0
-
-
- 7868
- 1
- 0
- 0
- 0
-
-
- 7869
- 1
- 0
- 0
- 0
-
-
- 7870
- 1
- 0
- 0
- 0
-
-
- 7871
- 1
- 0
- 0
- 0
-
-
- 7872
- 1
- 0
- 0
- 0
-
-
- 7873
- 1
- 0
- 0
- 0
-
-
- 7874
- 1
- 0
- 0
- 0
-
-
- 7875
- 1
- 0
- 0
- 0
-
-
- 7876
- 1
- 0
- 0
- 0
-
-
- 7877
- 1
- 0
- 0
- 0
-
-
- 7878
- 1
- 0
- 0
- 0
-
-
- 7879
- 1
- 0
- 0
- 0
-
-
- 7880
- 1
- 0
- 0
- 0
-
-
- 7881
- 1
- 0
- 0
- 0
-
-
- 7882
- 1
- 0
- 0
- 0
-
-
- 7883
- 1
- 0
- 0
- 0
-
-
- 7884
- 1
- 0
- 0
- 0
-
-
- 7885
- 1
- 0
- 0
- 0
-
-
- 7886
- 1
- 0
- 0
- 0
-
-
- 7887
- 1
- 0
- 0
- 0
-
-
- 7888
- 1
- 0
- 0
- 0
-
-
- 7889
- 1
- 0
- 0
- 0
-
-
- 7890
- 1
- 0
- 0
- 0
-
-
- 7891
- 1
- 0
- 0
- 0
-
-
- 7892
- 1
- 0
- 0
- 0
-
-
- 7893
- 1
- 0
- 0
- 0
-
-
- 7894
- 1
- 0
- 0
- 0
-
-
- 7895
- 1
- 0
- 0
- 0
-
-
- 7896
- 1
- 0
- 0
- 0
-
-
- 7897
- 1
- 0
- 0
- 0
-
-
- 7898
- 1
- 0
- 0
- 0
-
-
- 7899
- 1
- 0
- 0
- 0
-
-
- 7900
- 1
- 0
- 0
- 0
-
-
- 7901
- 1
- 0
- 0
- 0
-
-
- 7902
- 1
- 0
- 0
- 0
-
-
- 7903
- 1
- 0
- 0
- 0
-
-
- 7904
- 1
- 0
- 0
- 0
-
-
- 7905
- 1
- 0
- 0
- 0
-
-
- 7906
- 1
- 0
- 0
- 0
-
-
- 7907
- 1
- 0
- 0
- 0
-
-
- 7908
- 1
- 0
- 0
- 0
-
-
- 7909
- 1
- 0
- 0
- 0
-
-
- 7910
- 1
- 0
- 0
- 0
-
-
- 7911
- 1
- 0
- 0
- 0
-
-
- 7912
- 1
- 0
- 0
- 0
-
-
- 7913
- 1
- 0
- 0
- 0
-
-
- 7914
- 1
- 0
- 0
- 0
-
-
- 7915
- 1
- 0
- 0
- 0
-
-
- 7916
- 1
- 0
- 0
- 0
-
-
- 7917
- 1
- 0
- 0
- 0
-
-
- 7918
- 1
- 0
- 0
- 0
-
-
- 7919
- 500
- 0
- 0
- 0
-
-
- 7920
- 500
- 0
- 0
- 0
-
-
- 7921
- 1
- 0
- 0
- 0
-
-
- 7922
- 1
- 0
- 0
- 0
-
-
- 7923
- 1
- 0
- 0
- 0
-
-
- 7924
- 1
- 0
- 0
- 0
-
-
- 7925
- 1
- 0
- 0
- 0
-
-
- 7926
- 1
- 0
- 0
- 0
-
-
- 7927
- 1
- 0
- 0
- 0
-
-
- 7928
- 1
- 0
- 0
- 0
-
-
- 7929
- 1
- 0
- 0
- 0
-
-
- 7930
- 1
- 0
- 0
- 0
-
-
- 7931
- 1
- 0
- 0
- 0
-
-
- 7932
- 1
- 0
- 0
- 0
-
-
- 7933
- 1
- 0
- 0
- 0
-
-
- 7934
- 390
- 0
- 0
- 0
-
-
- 7935
- 390
- 0
- 0
- 0
-
-
- 7936
- 4
- 0
- 0
- 0
-
-
- 7937
- 4
- 0
- 0
- 0
-
-
- 7938
- 4
- 0
- 0
- 0
-
-
- 7939
- 1000
- 0
- 0
- 0
-
-
- 7940
- 1000
- 0
- 0
- 0
-
-
- 7941
- 30
- 0
- 0
- 0
-
-
- 7942
- 10
- 0
- 0
- 0
-
-
- 7943
- 10
- 0
- 0
- 0
-
-
- 7944
- 230
- 0
- 0
- 0
-
-
- 7945
- 230
- 0
- 0
- 0
-
-
- 7946
- 230
- 0
- 0
- 0
-
-
- 7947
- 230
- 0
- 0
- 0
-
-
- 7948
- 3
- 0
- 0
- 0
-
-
- 7949
- 3
- 0
- 0
- 0
-
-
- 7950
- 30
- 0
- 0
- 0
-
-
- 7951
- 1
- 0
- 0
- 0
-
-
- 7952
- 1
- 0
- 0
- 0
-
-
- 7953
- 1
- 0
- 0
- 0
-
-
- 7954
- 1
- 0
- 0
- 0
-
-
- 7955
- 1
- 0
- 0
- 0
-
-
- 7956
- 50
- 0
- 0
- 0
-
-
- 7957
- 1
- 0
- 0
- 0
-
-
- 7958
- 10
- 0
- 0
- 0
-
-
- 7959
- 10
- 0
- 0
- 0
-
-
- 7960
- 10
- 0
- 0
- 0
-
-
- 7961
- 10
- 0
- 0
- 0
-
-
- 7962
- 10
- 0
- 0
- 0
-
-
- 7963
- 10
- 0
- 0
- 0
-
-
- 7964
- 10
- 0
- 0
- 0
-
-
- 7965
- 10
- 0
- 0
- 0
-
-
- 7966
- 10
- 0
- 0
- 0
-
-
- 7967
- 5
- 0
- 0
- 0
-
-
- 7968
- 10
- 0
- 0
- 0
-
-
- 7969
- 5
- 0
- 0
- 0
-
-
- 7970
- 5
- 0
- 0
- 0
-
-
- 7971
- 5
- 0
- 0
- 0
-
-
- 7972
- 5
- 0
- 0
- 0
-
-
- 7973
- 5
- 0
- 0
- 0
-
-
- 7974
- 10
- 0
- 0
- 0
-
-
- 7975
- 1000
- 0
- 0
- 0
-
-
- 7976
- 2000
- 0
- 0
- 0
-
-
- 7977
- 4000
- 0
- 0
- 0
-
-
- 7978
- 6000
- 0
- 0
- 0
-
-
- 7979
- 12000
- 0
- 0
- 0
-
-
- 7980
- 50000
- 0
- 0
- 0
-
-
- 7981
- 50000
- 0
- 0
- 0
-
-
- 7982
- 1000
- 0
- 0
- 0
-
-
- 7983
- 2000
- 0
- 0
- 0
-
-
- 7984
- 4000
- 0
- 0
- 0
-
-
- 7985
- 6000
- 0
- 0
- 0
-
-
- 7986
- 12000
- 0
- 0
- 0
-
-
- 7987
- 50000
- 0
- 0
- 0
-
-
- 7988
- 50000
- 0
- 0
- 0
-
-
- 7989
- 1000
- 0
- 0
- 0
-
-
- 7990
- 1000
- 0
- 0
- 0
-
-
- 7991
- 2500
- 0
- 0
- 0
-
-
- 7992
- 2500
- 0
- 0
- 0
-
-
- 7993
- 5000
- 0
- 0
- 0
-
-
- 7994
- 5000
- 0
- 0
- 0
-
-
- 7995
- 1000
- 0
- 0
- 0
-
-
- 7996
- 1000
- 0
- 0
- 0
-
-
- 7997
- 1000
- 0
- 0
- 0
-
-
- 7998
- 1000
- 0
- 0
- 0
-
-
- 7999
- 2000
- 0
- 0
- 0
-
-
- 8000
- 2000
- 0
- 0
- 0
-
-
- 8001
- 2000
- 0
- 0
- 0
-
-
- 8002
- 2000
- 0
- 0
- 0
-
-
- 8003
- 2000
- 0
- 0
- 0
-
-
- 8004
- 1000
- 0
- 0
- 0
-
-
- 8005
- 1000
- 0
- 0
- 0
-
-
- 8006
- 1000
- 0
- 0
- 0
-
-
- 8007
- 1
- 0
- 0
- 0
-
-
- 8008
- 1
- 0
- 0
- 0
-
-
- 8009
- 1
- 0
- 0
- 0
-
-
- 8010
- 1
- 0
- 0
- 0
-
-
- 8011
- 1
- 0
- 0
- 0
-
-
- 8012
- 1
- 0
- 0
- 0
-
-
- 8013
- 1
- 0
- 0
- 0
-
-
- 8014
- 1
- 0
- 0
- 0
-
-
- 8015
- 1
- 0
- 0
- 0
-
-
- 8016
- 1
- 0
- 0
- 0
-
-
- 8017
- 1
- 0
- 0
- 0
-
-
- 8018
- 1
- 0
- 0
- 0
-
-
- 8019
- 1
- 0
- 0
- 0
-
-
- 8020
- 1
- 0
- 0
- 0
-
-
- 8021
- 1
- 0
- 0
- 0
-
-
- 8022
- 1
- 0
- 0
- 0
-
-
- 8023
- 1
- 0
- 0
- 0
-
-
- 8024
- 1
- 0
- 0
- 0
-
-
- 8025
- 1
- 0
- 0
- 0
-
-
- 8026
- 1
- 0
- 0
- 0
-
-
- 8027
- 1
- 0
- 0
- 0
-
-
- 8028
- 1
- 0
- 0
- 0
-
-
- 8029
- 1
- 0
- 0
- 0
-
-
- 8030
- 1
- 0
- 0
- 0
-
-
- 8031
- 1
- 0
- 0
- 0
-
-
- 8032
- 1
- 0
- 0
- 0
-
-
- 8033
- 1
- 0
- 0
- 0
-
-
- 8034
- 1
- 0
- 0
- 0
-
-
- 8035
- 1
- 0
- 0
- 0
-
-
- 8036
- 1
- 0
- 0
- 0
-
-
- 8037
- 1
- 0
- 0
- 0
-
-
- 8038
- 1
- 0
- 0
- 0
-
-
- 8039
- 1
- 0
- 0
- 0
-
-
- 8040
- 1
- 0
- 0
- 0
-
-
- 8041
- 1
- 0
- 0
- 0
-
-
- 8042
- 1
- 0
- 0
- 0
-
-
- 8043
- 1
- 0
- 0
- 0
-
-
- 8044
- 1
- 0
- 0
- 0
-
-
- 8045
- 1
- 0
- 0
- 0
-
-
- 8046
- 1
- 0
- 0
- 0
-
-
- 8047
- 1
- 0
- 0
- 0
-
-
- 8048
- 1
- 0
- 0
- 0
-
-
- 8049
- 1
- 0
- 0
- 0
-
-
- 8050
- 1
- 0
- 0
- 0
-
-
- 8051
- 1
- 0
- 0
- 0
-
-
- 8052
- 1
- 0
- 0
- 0
-
-
- 8053
- 1
- 0
- 0
- 0
-
-
- 8054
- 1
- 0
- 0
- 0
-
-
- 8055
- 1
- 0
- 0
- 0
-
-
- 8056
- 1
- 0
- 0
- 0
-
-
- 8057
- 1
- 0
- 0
- 0
-
-
- 8058
- 1
- 0
- 0
- 0
-
-
- 8059
- 1
- 0
- 0
- 0
-
-
- 8060
- 1
- 0
- 0
- 0
-
-
- 8061
- 1
- 0
- 0
- 0
-
-
- 8062
- 1
- 0
- 0
- 0
-
-
- 8063
- 1
- 0
- 0
- 0
-
-
- 8064
- 1
- 0
- 0
- 0
-
-
- 8065
- 1
- 0
- 0
- 0
-
-
- 8066
- 1
- 0
- 0
- 0
-
-
- 8067
- 1
- 0
- 0
- 0
-
-
- 8068
- 1
- 0
- 0
- 0
-
-
- 8069
- 1
- 0
- 0
- 0
-
-
- 8070
- 1
- 0
- 0
- 0
-
-
- 8071
- 1
- 0
- 0
- 0
-
-
- 8072
- 1
- 0
- 0
- 0
-
-
- 8073
- 1
- 0
- 0
- 0
-
-
- 8074
- 1
- 0
- 0
- 0
-
-
- 8075
- 1
- 0
- 0
- 0
-
-
- 8076
- 1
- 0
- 0
- 0
-
-
- 8077
- 1
- 0
- 0
- 0
-
-
- 8078
- 1
- 0
- 0
- 0
-
-
- 8079
- 1
- 0
- 0
- 0
-
-
- 8080
- 1
- 0
- 0
- 0
-
-
- 8081
- 1
- 0
- 0
- 0
-
-
- 8082
- 1
- 0
- 0
- 0
-
-
- 8083
- 1
- 0
- 0
- 0
-
-
- 8084
- 1
- 0
- 0
- 0
-
-
- 8085
- 1
- 0
- 0
- 0
-
-
- 8086
- 1
- 0
- 0
- 0
-
-
- 8087
- 1
- 0
- 0
- 0
-
-
- 8088
- 1
- 0
- 0
- 0
-
-
- 8089
- 1
- 0
- 0
- 0
-
-
- 8090
- 1
- 0
- 0
- 0
-
-
- 8091
- 1
- 0
- 0
- 0
-
-
- 8092
- 1
- 0
- 0
- 0
-
-
- 8093
- 1
- 0
- 0
- 0
-
-
- 8094
- 1
- 0
- 0
- 0
-
-
- 8095
- 1
- 0
- 0
- 0
-
-
- 8096
- 1
- 0
- 0
- 0
-
-
- 8097
- 1
- 0
- 0
- 0
-
-
- 8098
- 1
- 0
- 0
- 0
-
-
- 8099
- 1
- 0
- 0
- 0
-
-
- 8100
- 1
- 0
- 0
- 0
-
-
- 8101
- 1
- 0
- 0
- 0
-
-
- 8102
- 1
- 0
- 0
- 0
-
-
- 8103
- 1
- 0
- 0
- 0
-
-
- 8104
- 1
- 0
- 0
- 0
-
-
- 8105
- 1
- 0
- 0
- 0
-
-
- 8106
- 1
- 0
- 0
- 0
-
-
- 8107
- 1
- 0
- 0
- 0
-
-
- 8108
- 1
- 0
- 0
- 0
-
-
- 8109
- 1
- 0
- 0
- 0
-
-
- 8110
- 1
- 0
- 0
- 0
-
-
- 8111
- 1
- 0
- 0
- 0
-
-
- 8112
- 1
- 0
- 0
- 0
-
-
- 8113
- 1
- 0
- 0
- 0
-
-
- 8114
- 1
- 0
- 0
- 0
-
-
- 8115
- 1
- 0
- 0
- 0
-
-
- 8116
- 1
- 0
- 0
- 0
-
-
- 8117
- 1
- 0
- 0
- 0
-
-
- 8118
- 1
- 0
- 0
- 0
-
-
- 8119
- 1
- 0
- 0
- 0
-
-
- 8120
- 1
- 0
- 0
- 0
-
-
- 8121
- 1
- 0
- 0
- 0
-
-
- 8122
- 1
- 0
- 0
- 0
-
-
- 8123
- 1
- 0
- 0
- 0
-
-
- 8124
- 1
- 0
- 0
- 0
-
-
- 8125
- 1
- 0
- 0
- 0
-
-
- 8126
- 1
- 0
- 0
- 0
-
-
- 8127
- 1
- 0
- 0
- 0
-
-
- 8128
- 1
- 0
- 0
- 0
-
-
- 8129
- 1
- 0
- 0
- 0
-
-
- 8130
- 1
- 0
- 0
- 0
-
-
- 8131
- 1
- 0
- 0
- 0
-
-
- 8132
- 1
- 0
- 0
- 0
-
-
- 8133
- 1
- 0
- 0
- 0
-
-
- 8134
- 1
- 0
- 0
- 0
-
-
- 8135
- 1
- 0
- 0
- 0
-
-
- 8136
- 1
- 0
- 0
- 0
-
-
- 8137
- 1
- 0
- 0
- 0
-
-
- 8138
- 1
- 0
- 0
- 0
-
-
- 8139
- 1
- 0
- 0
- 0
-
-
- 8140
- 1
- 0
- 0
- 0
-
-
- 8141
- 1
- 0
- 0
- 0
-
-
- 8142
- 1
- 0
- 0
- 0
-
-
- 8143
- 1
- 0
- 0
- 0
-
-
- 8144
- 1
- 0
- 0
- 0
-
-
- 8145
- 1
- 0
- 0
- 0
-
-
- 8146
- 1
- 0
- 0
- 0
-
-
- 8147
- 1
- 0
- 0
- 0
-
-
- 8148
- 1
- 0
- 0
- 0
-
-
- 8149
- 1
- 0
- 0
- 0
-
-
- 8150
- 1
- 0
- 0
- 0
-
-
- 8151
- 1
- 0
- 0
- 0
-
-
- 8152
- 1
- 0
- 0
- 0
-
-
- 8153
- 1
- 0
- 0
- 0
-
-
- 8154
- 1
- 0
- 0
- 0
-
-
- 8155
- 1
- 0
- 0
- 0
-
-
- 8156
- 1
- 0
- 0
- 0
-
-
- 8157
- 1
- 0
- 0
- 0
-
-
- 8158
- 1
- 0
- 0
- 0
-
-
- 8159
- 1
- 0
- 0
- 0
-
-
- 8160
- 1
- 0
- 0
- 0
-
-
- 8161
- 1
- 0
- 0
- 0
-
-
- 8162
- 1
- 0
- 0
- 0
-
-
- 8163
- 1
- 0
- 0
- 0
-
-
- 8164
- 1
- 0
- 0
- 0
-
-
- 8165
- 1
- 0
- 0
- 0
-
-
- 8166
- 1
- 0
- 0
- 0
-
-
- 8167
- 1
- 0
- 0
- 0
-
-
- 8168
- 1
- 0
- 0
- 0
-
-
- 8169
- 1
- 0
- 0
- 0
-
-
- 8170
- 1
- 0
- 0
- 0
-
-
- 8171
- 1
- 0
- 0
- 0
-
-
- 8172
- 1
- 0
- 0
- 0
-
-
- 8173
- 1
- 0
- 0
- 0
-
-
- 8174
- 1
- 0
- 0
- 0
-
-
- 8175
- 1
- 0
- 0
- 0
-
-
- 8176
- 1
- 0
- 0
- 0
-
-
- 8177
- 1
- 0
- 0
- 0
-
-
- 8178
- 1
- 0
- 0
- 0
-
-
- 8179
- 1
- 0
- 0
- 0
-
-
- 8180
- 1
- 0
- 0
- 0
-
-
- 8181
- 1
- 0
- 0
- 0
-
-
- 8182
- 1
- 0
- 0
- 0
-
-
- 8183
- 1
- 0
- 0
- 0
-
-
- 8184
- 1
- 0
- 0
- 0
-
-
- 8185
- 1
- 0
- 0
- 0
-
-
- 8186
- 1
- 0
- 0
- 0
-
-
- 8187
- 1
- 0
- 0
- 0
-
-
- 8188
- 1
- 0
- 0
- 0
-
-
- 8189
- 1
- 0
- 0
- 0
-
-
- 8190
- 1
- 0
- 0
- 0
-
-
- 8191
- 1
- 0
- 0
- 0
-
-
- 8192
- 1
- 0
- 0
- 0
-
-
- 8193
- 1
- 0
- 0
- 0
-
-
- 8194
- 1
- 0
- 0
- 0
-
-
- 8195
- 1
- 0
- 0
- 0
-
-
- 8196
- 1
- 0
- 0
- 0
-
-
- 8197
- 1
- 0
- 0
- 0
-
-
- 8198
- 1
- 0
- 0
- 0
-
-
- 8199
- 1
- 0
- 0
- 0
-
-
- 8200
- 1
- 0
- 0
- 0
-
-
- 8201
- 1
- 0
- 0
- 0
-
-
- 8202
- 1
- 0
- 0
- 0
-
-
- 8203
- 1
- 0
- 0
- 0
-
-
- 8204
- 1
- 0
- 0
- 0
-
-
- 8205
- 1
- 0
- 0
- 0
-
-
- 8206
- 1
- 0
- 0
- 0
-
-
- 8207
- 1
- 0
- 0
- 0
-
-
- 8208
- 1
- 0
- 0
- 0
-
-
- 8209
- 1
- 0
- 0
- 0
-
-
- 8210
- 1
- 0
- 0
- 0
-
-
- 8211
- 1
- 0
- 0
- 0
-
-
- 8212
- 1
- 0
- 0
- 0
-
-
- 8213
- 1
- 0
- 0
- 0
-
-
- 8214
- 1
- 0
- 0
- 0
-
-
- 8215
- 1
- 0
- 0
- 0
-
-
- 8216
- 1
- 0
- 0
- 0
-
-
- 8217
- 1
- 0
- 0
- 0
-
-
- 8218
- 1
- 0
- 0
- 0
-
-
- 8219
- 1
- 0
- 0
- 0
-
-
- 8220
- 1
- 0
- 0
- 0
-
-
- 8221
- 1
- 0
- 0
- 0
-
-
- 8222
- 1
- 0
- 0
- 0
-
-
- 8223
- 1
- 0
- 0
- 0
-
-
- 8224
- 1
- 0
- 0
- 0
-
-
- 8225
- 1
- 0
- 0
- 0
-
-
- 8226
- 1
- 0
- 0
- 0
-
-
- 8227
- 1
- 0
- 0
- 0
-
-
- 8228
- 1
- 0
- 0
- 0
-
-
- 8229
- 1
- 0
- 0
- 0
-
-
- 8230
- 1
- 0
- 0
- 0
-
-
- 8231
- 1
- 0
- 0
- 0
-
-
- 8232
- 1
- 0
- 0
- 0
-
-
- 8233
- 1
- 0
- 0
- 0
-
-
- 8234
- 1
- 0
- 0
- 0
-
-
- 8235
- 1
- 0
- 0
- 0
-
-
- 8236
- 1
- 0
- 0
- 0
-
-
- 8237
- 1
- 0
- 0
- 0
-
-
- 8238
- 1
- 0
- 0
- 0
-
-
- 8239
- 1
- 0
- 0
- 0
-
-
- 8240
- 1
- 0
- 0
- 0
-
-
- 8241
- 1
- 0
- 0
- 0
-
-
- 8242
- 1
- 0
- 0
- 0
-
-
- 8243
- 1
- 0
- 0
- 0
-
-
- 8244
- 1
- 0
- 0
- 0
-
-
- 8245
- 1
- 0
- 0
- 0
-
-
- 8246
- 1
- 0
- 0
- 0
-
-
- 8247
- 1
- 0
- 0
- 0
-
-
- 8248
- 1
- 0
- 0
- 0
-
-
- 8249
- 1
- 0
- 0
- 0
-
-
- 8250
- 1
- 0
- 0
- 0
-
-
- 8251
- 1
- 0
- 0
- 0
-
-
- 8252
- 1
- 0
- 0
- 0
-
-
- 8253
- 1
- 0
- 0
- 0
-
-
- 8254
- 1
- 0
- 0
- 0
-
-
- 8255
- 1
- 0
- 0
- 0
-
-
- 8256
- 1
- 0
- 0
- 0
-
-
- 8257
- 1
- 0
- 0
- 0
-
-
- 8258
- 1
- 0
- 0
- 0
-
-
- 8259
- 1
- 0
- 0
- 0
-
-
- 8260
- 1
- 0
- 0
- 0
-
-
- 8261
- 1
- 0
- 0
- 0
-
-
- 8262
- 1
- 0
- 0
- 0
-
-
- 8263
- 1
- 0
- 0
- 0
-
-
- 8264
- 1
- 0
- 0
- 0
-
-
- 8265
- 1
- 0
- 0
- 0
-
-
- 8266
- 1
- 0
- 0
- 0
-
-
- 8267
- 1
- 0
- 0
- 0
-
-
- 8268
- 1
- 0
- 0
- 0
-
-
- 8269
- 1
- 0
- 0
- 0
-
-
- 8270
- 1
- 0
- 0
- 0
-
-
- 8271
- 1
- 0
- 0
- 0
-
-
- 8272
- 1
- 0
- 0
- 0
-
-
- 8273
- 1
- 0
- 0
- 0
-
-
- 8274
- 1
- 0
- 0
- 0
-
-
- 8275
- 1
- 0
- 0
- 0
-
-
- 8276
- 1
- 0
- 0
- 0
-
-
- 8277
- 1
- 0
- 0
- 0
-
-
- 8278
- 1
- 0
- 0
- 0
-
-
- 8279
- 1
- 0
- 0
- 0
-
-
- 8280
- 1
- 0
- 0
- 0
-
-
- 8281
- 1
- 0
- 0
- 0
-
-
- 8282
- 1
- 0
- 0
- 0
-
-
- 8283
- 1
- 0
- 0
- 0
-
-
- 8284
- 1
- 0
- 0
- 0
-
-
- 8285
- 1
- 0
- 0
- 0
-
-
- 8286
- 1
- 0
- 0
- 0
-
-
- 8287
- 1
- 0
- 0
- 0
-
-
- 8288
- 1
- 0
- 0
- 0
-
-
- 8289
- 1
- 0
- 0
- 0
-
-
- 8290
- 1
- 0
- 0
- 0
-
-
- 8291
- 1
- 0
- 0
- 0
-
-
- 8292
- 1
- 0
- 0
- 0
-
-
- 8293
- 1
- 0
- 0
- 0
-
-
- 8294
- 1
- 0
- 0
- 0
-
-
- 8295
- 1
- 0
- 0
- 0
-
-
- 8296
- 1
- 0
- 0
- 0
-
-
- 8297
- 1
- 0
- 0
- 0
-
-
- 8298
- 1
- 0
- 0
- 0
-
-
- 8299
- 1
- 0
- 0
- 0
-
-
- 8300
- 1
- 0
- 0
- 0
-
-
- 8301
- 1
- 0
- 0
- 0
-
-
- 8302
- 1
- 0
- 0
- 0
-
-
- 8303
- 1
- 0
- 0
- 0
-
-
- 8304
- 1
- 0
- 0
- 0
-
-
- 8305
- 1
- 0
- 0
- 0
-
-
- 8306
- 1
- 0
- 0
- 0
-
-
- 8307
- 1
- 0
- 0
- 0
-
-
- 8308
- 1
- 0
- 0
- 0
-
-
- 8309
- 1
- 0
- 0
- 0
-
-
- 8310
- 1
- 0
- 0
- 0
-
-
- 8311
- 1
- 0
- 0
- 0
-
-
- 8312
- 1
- 0
- 0
- 0
-
-
- 8313
- 1
- 0
- 0
- 0
-
-
- 8314
- 1
- 0
- 0
- 0
-
-
- 8315
- 1
- 0
- 0
- 0
-
-
- 8316
- 1
- 0
- 0
- 0
-
-
- 8317
- 1
- 0
- 0
- 0
-
-
- 8318
- 1
- 0
- 0
- 0
-
-
- 8319
- 1
- 0
- 0
- 0
-
-
- 8320
- 1
- 0
- 0
- 0
-
-
- 8321
- 1
- 0
- 0
- 0
-
-
- 8322
- 1
- 0
- 0
- 0
-
-
- 8323
- 1
- 0
- 0
- 0
-
-
- 8324
- 1
- 0
- 0
- 0
-
-
- 8325
- 1
- 0
- 0
- 0
-
-
- 8326
- 1
- 0
- 0
- 0
-
-
- 8327
- 1
- 0
- 0
- 0
-
-
- 8328
- 1
- 0
- 0
- 0
-
-
- 8329
- 1
- 0
- 0
- 0
-
-
- 8330
- 1
- 0
- 0
- 0
-
-
- 8331
- 1
- 0
- 0
- 0
-
-
- 8332
- 1
- 0
- 0
- 0
-
-
- 8333
- 1
- 0
- 0
- 0
-
-
- 8334
- 1
- 0
- 0
- 0
-
-
- 8335
- 1
- 0
- 0
- 0
-
-
- 8336
- 1
- 0
- 0
- 0
-
-
- 8337
- 1
- 0
- 0
- 0
-
-
- 8338
- 1
- 0
- 0
- 0
-
-
- 8339
- 1
- 0
- 0
- 0
-
-
- 8340
- 1
- 0
- 0
- 0
-
-
- 8341
- 1
- 0
- 0
- 0
-
-
- 8342
- 1
- 0
- 0
- 0
-
-
- 8343
- 1
- 0
- 0
- 0
-
-
- 8344
- 1
- 0
- 0
- 0
-
-
- 8345
- 1
- 0
- 0
- 0
-
-
- 8346
- 1
- 0
- 0
- 0
-
-
- 8347
- 1
- 0
- 0
- 0
-
-
- 8348
- 1
- 0
- 0
- 0
-
-
- 8349
- 1
- 0
- 0
- 0
-
-
- 8350
- 1
- 0
- 0
- 0
-
-
- 8351
- 1
- 0
- 0
- 0
-
-
- 8352
- 1
- 0
- 0
- 0
-
-
- 8353
- 1
- 0
- 0
- 0
-
-
- 8354
- 1
- 0
- 0
- 0
-
-
- 8355
- 1
- 0
- 0
- 0
-
-
- 8356
- 1
- 0
- 0
- 0
-
-
- 8357
- 1
- 0
- 0
- 0
-
-
- 8358
- 1
- 0
- 0
- 0
-
-
- 8359
- 1
- 0
- 0
- 0
-
-
- 8360
- 1
- 0
- 0
- 0
-
-
- 8361
- 1
- 0
- 0
- 0
-
-
- 8362
- 1
- 0
- 0
- 0
-
-
- 8363
- 1
- 0
- 0
- 0
-
-
- 8364
- 1
- 0
- 0
- 0
-
-
- 8365
- 1
- 0
- 0
- 0
-
-
- 8366
- 1
- 0
- 0
- 0
-
-
- 8367
- 1
- 0
- 0
- 0
-
-
- 8368
- 1
- 0
- 0
- 0
-
-
- 8369
- 1
- 0
- 0
- 0
-
-
- 8370
- 1
- 0
- 0
- 0
-
-
- 8371
- 1
- 0
- 0
- 0
-
-
- 8372
- 1
- 0
- 0
- 0
-
-
- 8373
- 1
- 0
- 0
- 0
-
-
- 8374
- 1
- 0
- 0
- 0
-
-
- 8375
- 1
- 0
- 0
- 0
-
-
- 8376
- 1
- 0
- 0
- 0
-
-
- 8377
- 1
- 0
- 0
- 0
-
-
- 8378
- 1
- 0
- 0
- 0
-
-
- 8379
- 1
- 0
- 0
- 0
-
-
- 8380
- 1
- 0
- 0
- 0
-
-
- 8381
- 1
- 0
- 0
- 0
-
-
- 8382
- 1
- 0
- 0
- 0
-
-
- 8383
- 1
- 0
- 0
- 0
-
-
- 8384
- 1
- 0
- 0
- 0
-
-
- 8385
- 1
- 0
- 0
- 0
-
-
- 8386
- 1
- 0
- 0
- 0
-
-
- 8387
- 1
- 0
- 0
- 0
-
-
- 8388
- 1
- 0
- 0
- 0
-
-
- 8389
- 1
- 0
- 0
- 0
-
-
- 8390
- 1
- 0
- 0
- 0
-
-
- 8391
- 1
- 0
- 0
- 0
-
-
- 8392
- 1
- 0
- 0
- 0
-
-
- 8393
- 1
- 0
- 0
- 0
-
-
- 8394
- 1
- 0
- 0
- 0
-
-
- 8395
- 1000
- 0
- 0
- 0
-
-
- 8396
- 5000
- 0
- 0
- 0
-
-
- 8397
- 5000
- 0
- 0
- 0
-
-
- 8398
- 10000
- 0
- 0
- 0
-
-
- 8399
- 25000
- 0
- 0
- 0
-
-
- 8400
- 25000
- 0
- 0
- 0
-
-
- 8401
- 15000
- 0
- 0
- 0
-
-
- 8402
- 15000
- 0
- 0
- 0
-
-
- 8403
- 25000
- 0
- 0
- 0
-
-
- 8404
- 25000
- 0
- 0
- 0
-
-
- 8405
- 50000
- 0
- 0
- 0
-
-
- 8406
- 10000
- 0
- 0
- 0
-
-
- 8407
- 50000
- 0
- 0
- 0
-
-
- 8408
- 100000
- 0
- 0
- 0
-
-
- 8409
- 150000
- 0
- 0
- 0
-
-
- 8410
- 150000
- 0
- 0
- 0
-
-
- 8411
- 7500
- 0
- 0
- 0
-
-
- 8412
- 7500
- 0
- 0
- 0
-
-
- 8413
- 7500
- 0
- 0
- 0
-
-
- 8414
- 250000
- 0
- 0
- 0
-
-
- 8415
- 1000
- 0
- 0
- 0
-
-
- 8416
- 75000
- 0
- 0
- 0
-
-
- 8417
- 1000
- 0
- 0
- 0
-
-
- 8418
- 1000
- 0
- 0
- 0
-
-
- 8419
- 2000
- 0
- 0
- 0
-
-
- 8420
- 2000
- 0
- 0
- 0
-
-
- 8421
- 5000
- 0
- 0
- 0
-
-
- 8422
- 5000
- 0
- 0
- 0
-
-
- 8423
- 10000
- 0
- 0
- 0
-
-
- 8424
- 10000
- 0
- 0
- 0
-
-
- 8425
- 15000
- 0
- 0
- 0
-
-
- 8426
- 15000
- 0
- 0
- 0
-
-
- 8427
- 20000
- 0
- 0
- 0
-
-
- 8428
- 20000
- 0
- 0
- 0
-
-
- 8429
- 50000
- 0
- 0
- 0
-
-
- 8430
- 50000
- 0
- 0
- 0
-
-
- 8431
- 1000
- 0
- 0
- 0
-
-
- 8432
- 1000
- 0
- 0
- 0
-
-
- 8433
- 5000
- 0
- 0
- 0
-
-
- 8434
- 5000
- 0
- 0
- 0
-
-
- 8435
- 10000
- 0
- 0
- 0
-
-
- 8436
- 10000
- 0
- 0
- 0
-
-
- 8437
- 5000
- 0
- 0
- 0
-
-
- 8438
- 5000
- 0
- 0
- 0
-
-
- 8439
- 10000
- 0
- 0
- 0
-
-
- 8440
- 10000
- 0
- 0
- 0
-
-
- 8441
- 15000
- 0
- 0
- 0
-
-
- 8442
- 15000
- 0
- 0
- 0
-
-
- 8443
- 20000
- 0
- 0
- 0
-
-
- 8444
- 20000
- 0
- 0
- 0
-
-
- 8445
- 25000
- 0
- 0
- 0
-
-
- 8446
- 25000
- 0
- 0
- 0
-
-
- 8447
- 50000
- 0
- 0
- 0
-
-
- 8448
- 50000
- 0
- 0
- 0
-
-
- 8449
- 100000
- 0
- 0
- 0
-
-
- 8450
- 100000
- 0
- 0
- 0
-
-
- 8451
- 5000
- 0
- 0
- 0
-
-
- 8452
- 5000
- 0
- 0
- 0
-
-
- 8453
- 10000
- 0
- 0
- 0
-
-
- 8454
- 10000
- 0
- 0
- 0
-
-
- 8455
- 15000
- 0
- 0
- 0
-
-
- 8456
- 15000
- 0
- 0
- 0
-
-
- 8457
- 5000
- 0
- 0
- 0
-
-
- 8458
- 5000
- 0
- 0
- 0
-
-
- 8459
- 10000
- 0
- 0
- 0
-
-
- 8460
- 10000
- 0
- 0
- 0
-
-
- 8461
- 15000
- 0
- 0
- 0
-
-
- 8462
- 15000
- 0
- 0
- 0
-
-
- 8463
- 1
- 0
- 0
- 0
-
-
- 8464
- 35200
- 0
- 0
- 0
-
-
- 8465
- 1
- 0
- 0
- 0
-
-
- 8466
- 35200
- 0
- 0
- 0
-
-
- 8467
- 1
- 0
- 0
- 0
-
-
- 8468
- 35200
- 0
- 0
- 0
-
-
- 8469
- 1
- 0
- 0
- 0
-
-
- 8470
- 35200
- 0
- 0
- 0
-
-
- 8471
- 1
- 0
- 0
- 0
-
-
- 8472
- 35200
- 0
- 0
- 0
-
-
- 8473
- 1
- 0
- 0
- 0
-
-
- 8474
- 35200
- 0
- 0
- 0
-
-
- 8475
- 1
- 0
- 0
- 0
-
-
- 8476
- 35200
- 0
- 0
- 0
-
-
- 8477
- 1
- 0
- 0
- 0
-
-
- 8478
- 35200
- 0
- 0
- 0
-
-
- 8479
- 1
- 0
- 0
- 0
-
-
- 8480
- 35200
- 0
- 0
- 0
-
-
- 8481
- 1
- 0
- 0
- 0
-
-
- 8482
- 35200
- 0
- 0
- 0
-
-
- 8483
- 1
- 0
- 0
- 0
-
-
- 8484
- 35200
- 0
- 0
- 0
-
-
- 8485
- 1
- 0
- 0
- 0
-
-
- 8486
- 35200
- 0
- 0
- 0
-
-
- 8487
- 1
- 0
- 0
- 0
-
-
- 8488
- 35200
- 0
- 0
- 0
-
-
- 8489
- 1
- 0
- 0
- 0
-
-
- 8490
- 35200
- 0
- 0
- 0
-
-
- 8491
- 1
- 0
- 0
- 0
-
-
- 8492
- 35200
- 0
- 0
- 0
-
-
- 8493
- 1
- 0
- 0
- 0
-
-
- 8494
- 35200
- 0
- 0
- 0
-
-
- 8495
- 1
- 0
- 0
- 0
-
-
- 8496
- 10
- 0
- 0
- 0
-
-
- 8497
- 10
- 0
- 0
- 0
-
-
- 8498
- 10
- 0
- 0
- 0
-
-
- 8499
- 10
- 0
- 0
- 0
-
-
- 8500
- 10
- 0
- 0
- 0
-
-
- 8501
- 10
- 0
- 0
- 0
-
-
- 8502
- 10
- 0
- 0
- 0
-
-
- 8503
- 10
- 0
- 0
- 0
-
-
- 8504
- 10
- 0
- 0
- 0
-
-
- 8505
- 10
- 0
- 0
- 0
-
-
- 8506
- 10
- 0
- 0
- 0
-
-
- 8507
- 10
- 0
- 0
- 0
-
-
- 8508
- 10
- 0
- 0
- 0
-
-
- 8509
- 10
- 0
- 0
- 0
-
-
- 8510
- 10
- 0
- 0
- 0
-
-
- 8511
- 10
- 0
- 0
- 0
-
-
- 8512
- 10
- 0
- 0
- 0
-
-
- 8513
- 10
- 0
- 0
- 0
-
-
- 8514
- 10
- 0
- 0
- 0
-
-
- 8515
- 10
- 0
- 0
- 0
-
-
- 8516
- 10
- 0
- 0
- 0
-
-
- 8517
- 10
- 0
- 0
- 0
-
-
- 8518
- 10
- 0
- 0
- 0
-
-
- 8519
- 10
- 0
- 0
- 0
-
-
- 8520
- 10
- 0
- 0
- 0
-
-
- 8521
- 10
- 0
- 0
- 0
-
-
- 8522
- 10
- 0
- 0
- 0
-
-
- 8523
- 10
- 0
- 0
- 0
-
-
- 8524
- 10
- 0
- 0
- 0
-
-
- 8525
- 10
- 0
- 0
- 0
-
-
- 8526
- 10
- 0
- 0
- 0
-
-
- 8527
- 10
- 0
- 0
- 0
-
-
- 8528
- 10
- 0
- 0
- 0
-
-
- 8529
- 10
- 0
- 0
- 0
-
-
- 8530
- 10
- 0
- 0
- 0
-
-
- 8531
- 10
- 0
- 0
- 0
-
-
- 8532
- 10
- 0
- 0
- 0
-
-
- 8533
- 10
- 0
- 0
- 0
-
-
- 8534
- 10
- 0
- 0
- 0
-
-
- 8535
- 10
- 0
- 0
- 0
-
-
- 8536
- 10
- 0
- 0
- 0
-
-
- 8537
- 10
- 0
- 0
- 0
-
-
- 8538
- 10
- 0
- 0
- 0
-
-
- 8539
- 10
- 0
- 0
- 0
-
-
- 8540
- 10
- 0
- 0
- 0
-
-
- 8541
- 10
- 0
- 0
- 0
-
-
- 8542
- 10
- 0
- 0
- 0
-
-
- 8543
- 10
- 0
- 0
- 0
-
-
- 8544
- 10
- 0
- 0
- 0
-
-
- 8545
- 10
- 0
- 0
- 0
-
-
- 8546
- 10
- 0
- 0
- 0
-
-
- 8547
- 10
- 0
- 0
- 0
-
-
- 8548
- 10
- 0
- 0
- 0
-
-
- 8549
- 10
- 0
- 0
- 0
-
-
- 8550
- 10
- 0
- 0
- 0
-
-
- 8551
- 10
- 0
- 0
- 0
-
-
- 8552
- 10
- 0
- 0
- 0
-
-
- 8553
- 10
- 0
- 0
- 0
-
-
- 8554
- 10
- 0
- 0
- 0
-
-
- 8555
- 10
- 0
- 0
- 0
-
-
- 8556
- 10
- 0
- 0
- 0
-
-
- 8557
- 10
- 0
- 0
- 0
-
-
- 8558
- 10
- 0
- 0
- 0
-
-
- 8559
- 10
- 0
- 0
- 0
-
-
- 8560
- 10
- 0
- 0
- 0
-
-
- 8561
- 10
- 0
- 0
- 0
-
-
- 8562
- 10
- 0
- 0
- 0
-
-
- 8563
- 10
- 0
- 0
- 0
-
-
- 8564
- 10
- 0
- 0
- 0
-
-
- 8565
- 10
- 0
- 0
- 0
-
-
- 8566
- 10
- 0
- 0
- 0
-
-
- 8567
- 10
- 0
- 0
- 0
-
-
- 8568
- 10
- 0
- 0
- 0
-
-
- 8569
- 10
- 0
- 0
- 0
-
-
- 8570
- 10
- 0
- 0
- 0
-
-
- 8571
- 10
- 0
- 0
- 0
-
-
- 8572
- 10
- 0
- 0
- 0
-
-
- 8573
- 10
- 0
- 0
- 0
-
-
- 8574
- 10
- 0
- 0
- 0
-
-
- 8575
- 10
- 0
- 0
- 0
-
-
- 8576
- 10
- 0
- 0
- 0
-
-
- 8577
- 10
- 0
- 0
- 0
-
-
- 8578
- 10
- 0
- 0
- 0
-
-
- 8579
- 10
- 0
- 0
- 0
-
-
- 8580
- 10
- 0
- 0
- 0
-
-
- 8581
- 10
- 0
- 0
- 0
-
-
- 8582
- 10
- 0
- 0
- 0
-
-
- 8583
- 10
- 0
- 0
- 0
-
-
- 8584
- 10
- 0
- 0
- 0
-
-
- 8585
- 10
- 0
- 0
- 0
-
-
- 8586
- 10
- 0
- 0
- 0
-
-
- 8587
- 10
- 0
- 0
- 0
-
-
- 8588
- 10
- 0
- 0
- 0
-
-
- 8589
- 10
- 0
- 0
- 0
-
-
- 8590
- 10
- 0
- 0
- 0
-
-
- 8591
- 10
- 0
- 0
- 0
-
-
- 8592
- 10
- 0
- 0
- 0
-
-
- 8593
- 10
- 0
- 0
- 0
-
-
- 8594
- 10
- 0
- 0
- 0
-
-
- 8595
- 10
- 0
- 0
- 0
-
-
- 8596
- 10
- 0
- 0
- 0
-
-
- 8597
- 10
- 0
- 0
- 0
-
-
- 8598
- 10
- 0
- 0
- 0
-
-
- 8599
- 10
- 0
- 0
- 0
-
-
- 8600
- 10
- 0
- 0
- 0
-
-
- 8601
- 10
- 0
- 0
- 0
-
-
- 8602
- 10
- 0
- 0
- 0
-
-
- 8603
- 10
- 0
- 0
- 0
-
-
- 8604
- 10
- 0
- 0
- 0
-
-
- 8605
- 10
- 0
- 0
- 0
-
-
- 8606
- 10
- 0
- 0
- 0
-
-
- 8607
- 10
- 0
- 0
- 0
-
-
- 8608
- 10
- 0
- 0
- 0
-
-
- 8609
- 10
- 0
- 0
- 0
-
-
- 8610
- 10
- 0
- 0
- 0
-
-
- 8611
- 10
- 0
- 0
- 0
-
-
- 8612
- 10
- 0
- 0
- 0
-
-
- 8613
- 10
- 0
- 0
- 0
-
-
- 8614
- 10
- 0
- 0
- 0
-
-
- 8615
- 10
- 0
- 0
- 0
-
-
- 8616
- 10
- 0
- 0
- 0
-
-
- 8617
- 10
- 0
- 0
- 0
-
-
- 8618
- 10
- 0
- 0
- 0
-
-
- 8619
- 10
- 0
- 0
- 0
-
-
- 8620
- 10
- 0
- 0
- 0
-
-
- 8621
- 10
- 0
- 0
- 0
-
-
- 8622
- 10
- 0
- 0
- 0
-
-
- 8623
- 10
- 0
- 0
- 0
-
-
- 8624
- 10
- 0
- 0
- 0
-
-
- 8625
- 10
- 0
- 0
- 0
-
-
- 8626
- 10
- 0
- 0
- 0
-
-
- 8627
- 10
- 0
- 0
- 0
-
-
- 8628
- 10
- 0
- 0
- 0
-
-
- 8629
- 10
- 0
- 0
- 0
-
-
- 8630
- 10
- 0
- 0
- 0
-
-
- 8631
- 10
- 0
- 0
- 0
-
-
- 8632
- 10
- 0
- 0
- 0
-
-
- 8633
- 10
- 0
- 0
- 0
-
-
- 8634
- 10
- 0
- 0
- 0
-
-
- 8635
- 10
- 0
- 0
- 0
-
-
- 8636
- 10
- 0
- 0
- 0
-
-
- 8637
- 10
- 0
- 0
- 0
-
-
- 8638
- 10
- 0
- 0
- 0
-
-
- 8639
- 10
- 0
- 0
- 0
-
-
- 8640
- 10
- 0
- 0
- 0
-
-
- 8641
- 10
- 0
- 0
- 0
-
-
- 8642
- 10
- 0
- 0
- 0
-
-
- 8643
- 10
- 0
- 0
- 0
-
-
- 8644
- 10
- 0
- 0
- 0
-
-
- 8645
- 10
- 0
- 0
- 0
-
-
- 8646
- 10
- 0
- 0
- 0
-
-
- 8647
- 10
- 0
- 0
- 0
-
-
- 8648
- 10
- 0
- 0
- 0
-
-
- 8649
- 10
- 0
- 0
- 0
-
-
- 8650
- 1
- 0
- 0
- 0
-
-
- 8651
- 1
- 0
- 0
- 0
-
-
- 8652
- 1
- 0
- 0
- 0
-
-
- 8653
- 1
- 0
- 0
- 0
-
-
- 8654
- 1
- 0
- 0
- 0
-
-
- 8655
- 1
- 0
- 0
- 0
-
-
- 8656
- 1
- 0
- 0
- 0
-
-
- 8657
- 1
- 0
- 0
- 0
-
-
- 8658
- 1
- 0
- 0
- 0
-
-
- 8659
- 1
- 0
- 0
- 0
-
-
- 8660
- 1
- 0
- 0
- 0
-
-
- 8661
- 1
- 0
- 0
- 0
-
-
- 8662
- 1
- 0
- 0
- 0
-
-
- 8663
- 1
- 0
- 0
- 0
-
-
- 8664
- 1
- 0
- 0
- 0
-
-
- 8665
- 1
- 0
- 0
- 0
-
-
- 8666
- 1
- 0
- 0
- 0
-
-
- 8667
- 1
- 0
- 0
- 0
-
-
- 8668
- 1
- 0
- 0
- 0
-
-
- 8669
- 1
- 0
- 0
- 0
-
-
- 8670
- 1
- 0
- 0
- 0
-
-
- 8671
- 1
- 0
- 0
- 0
-
-
- 8672
- 1
- 0
- 0
- 0
-
-
- 8673
- 1
- 0
- 0
- 0
-
-
- 8674
- 1
- 0
- 0
- 0
-
-
- 8675
- 1
- 0
- 0
- 0
-
-
- 8676
- 1
- 0
- 0
- 0
-
-
- 8677
- 1
- 0
- 0
- 0
-
-
- 8678
- 1
- 0
- 0
- 0
-
-
- 8679
- 1
- 0
- 0
- 0
-
-
- 8680
- 1
- 0
- 0
- 0
-
-
- 8681
- 1
- 0
- 0
- 0
-
-
- 8682
- 600
- 0
- 0
- 0
-
-
- 8683
- 1
- 0
- 0
- 0
-
-
- 8684
- 600
- 0
- 0
- 0
-
-
- 8685
- 1
- 0
- 0
- 0
-
-
- 8686
- 600
- 0
- 0
- 0
-
-
- 8687
- 1
- 0
- 0
- 0
-
-
- 8688
- 600
- 0
- 0
- 0
-
-
- 8689
- 1
- 0
- 0
- 0
-
-
- 8690
- 600
- 0
- 0
- 0
-
-
- 8691
- 1
- 0
- 0
- 0
-
-
- 8692
- 600
- 0
- 0
- 0
-
-
- 8693
- 1
- 0
- 0
- 0
-
-
- 8694
- 600
- 0
- 0
- 0
-
-
- 8695
- 1
- 0
- 0
- 0
-
-
- 8696
- 600
- 0
- 0
- 0
-
-
- 8697
- 1
- 0
- 0
- 0
-
-
- 8698
- 600
- 0
- 0
- 0
-
-
- 8699
- 1
- 0
- 0
- 0
-
-
- 8700
- 600
- 0
- 0
- 0
-
-
- 8701
- 1
- 0
- 0
- 0
-
-
- 8702
- 600
- 0
- 0
- 0
-
-
- 8703
- 1
- 0
- 0
- 0
-
-
- 8704
- 600
- 0
- 0
- 0
-
-
- 8705
- 1
- 0
- 0
- 0
-
-
- 8706
- 600
- 0
- 0
- 0
-
-
- 8707
- 1
- 0
- 0
- 0
-
-
- 8708
- 600
- 0
- 0
- 0
-
-
- 8709
- 1
- 0
- 0
- 0
-
-
- 8710
- 600
- 0
- 0
- 0
-
-
- 8711
- 1
- 0
- 0
- 0
-
-
- 8712
- 600
- 0
- 0
- 0
-
-
- 8713
- 1
- 0
- 0
- 0
-
-
- 8714
- 54400
- 0
- 0
- 0
-
-
- 8715
- 1
- 0
- 0
- 0
-
-
- 8716
- 54400
- 0
- 0
- 0
-
-
- 8717
- 1
- 0
- 0
- 0
-
-
- 8718
- 54400
- 0
- 0
- 0
-
-
- 8719
- 1
- 0
- 0
- 0
-
-
- 8720
- 54400
- 0
- 0
- 0
-
-
- 8721
- 1
- 0
- 0
- 0
-
-
- 8722
- 54400
- 0
- 0
- 0
-
-
- 8723
- 1
- 0
- 0
- 0
-
-
- 8724
- 54400
- 0
- 0
- 0
-
-
- 8725
- 1
- 0
- 0
- 0
-
-
- 8726
- 54400
- 0
- 0
- 0
-
-
- 8727
- 1
- 0
- 0
- 0
-
-
- 8728
- 54400
- 0
- 0
- 0
-
-
- 8729
- 1
- 0
- 0
- 0
-
-
- 8730
- 54400
- 0
- 0
- 0
-
-
- 8731
- 1
- 0
- 0
- 0
-
-
- 8732
- 54400
- 0
- 0
- 0
-
-
- 8733
- 1
- 0
- 0
- 0
-
-
- 8734
- 54400
- 0
- 0
- 0
-
-
- 8735
- 1
- 0
- 0
- 0
-
-
- 8736
- 54400
- 0
- 0
- 0
-
-
- 8737
- 1
- 0
- 0
- 0
-
-
- 8738
- 54400
- 0
- 0
- 0
-
-
- 8739
- 1
- 0
- 0
- 0
-
-
- 8740
- 54400
- 0
- 0
- 0
-
-
- 8741
- 1
- 0
- 0
- 0
-
-
- 8742
- 54400
- 0
- 0
- 0
-
-
- 8743
- 1
- 0
- 0
- 0
-
-
- 8744
- 54400
- 0
- 0
- 0
-
-
- 8745
- 1
- 0
- 0
- 0
-
-
- 8746
- 900
- 0
- 0
- 0
-
-
- 8747
- 1
- 0
- 0
- 0
-
-
- 8748
- 900
- 0
- 0
- 0
-
-
- 8749
- 1
- 0
- 0
- 0
-
-
- 8750
- 900
- 0
- 0
- 0
-
-
- 8751
- 1
- 0
- 0
- 0
-
-
- 8752
- 900
- 0
- 0
- 0
-
-
- 8753
- 1
- 0
- 0
- 0
-
-
- 8754
- 900
- 0
- 0
- 0
-
-
- 8755
- 1
- 0
- 0
- 0
-
-
- 8756
- 900
- 0
- 0
- 0
-
-
- 8757
- 1
- 0
- 0
- 0
-
-
- 8758
- 900
- 0
- 0
- 0
-
-
- 8759
- 1
- 0
- 0
- 0
-
-
- 8760
- 900
- 0
- 0
- 0
-
-
- 8761
- 1
- 0
- 0
- 0
-
-
- 8762
- 900
- 0
- 0
- 0
-
-
- 8763
- 1
- 0
- 0
- 0
-
-
- 8764
- 900
- 0
- 0
- 0
-
-
- 8765
- 1
- 0
- 0
- 0
-
-
- 8766
- 900
- 0
- 0
- 0
-
-
- 8767
- 1
- 0
- 0
- 0
-
-
- 8768
- 900
- 0
- 0
- 0
-
-
- 8769
- 1
- 0
- 0
- 0
-
-
- 8770
- 900
- 0
- 0
- 0
-
-
- 8771
- 1
- 0
- 0
- 0
-
-
- 8772
- 900
- 0
- 0
- 0
-
-
- 8773
- 1
- 0
- 0
- 0
-
-
- 8774
- 900
- 0
- 0
- 0
-
-
- 8775
- 1
- 0
- 0
- 0
-
-
- 8776
- 900
- 0
- 0
- 0
-
-
- 8777
- 1
- 0
- 0
- 0
-
-
- 8778
- 250
- 0
- 0
- 0
-
-
- 8779
- 250
- 0
- 0
- 0
-
-
- 8780
- 500
- 0
- 0
- 0
-
-
- 8781
- 500
- 0
- 0
- 0
-
-
- 8782
- 1500
- 0
- 0
- 0
-
-
- 8783
- 1500
- 0
- 0
- 0
-
-
- 8784
- 130000
- 0
- 0
- 0
-
-
- 8785
- 130000
- 0
- 0
- 0
-
-
- 8786
- 325000
- 0
- 0
- 0
-
-
- 8787
- 325000
- 0
- 0
- 0
-
-
- 8788
- 975000
- 0
- 0
- 0
-
-
- 8789
- 975000
- 0
- 0
- 0
-
-
- 8790
- 650
- 0
- 0
- 0
-
-
- 8791
- 650
- 0
- 0
- 0
-
-
- 8792
- 500
- 0
- 0
- 0
-
-
- 8793
- 500
- 0
- 0
- 0
-
-
- 8794
- 13
- 0
- 0
- 0
-
-
- 8795
- 13
- 0
- 0
- 0
-
-
- 8796
- 20
- 0
- 0
- 0
-
-
- 8797
- 1
- 0
- 0
- 0
-
-
- 8798
- 1
- 0
- 0
- 0
-
-
- 8799
- 1
- 0
- 0
- 0
-
-
- 8800
- 1
- 0
- 0
- 0
-
-
- 8801
- 1
- 0
- 0
- 0
-
-
- 8802
- 1
- 0
- 0
- 0
-
-
- 8803
- 1
- 0
- 0
- 0
-
-
- 8804
- 1
- 0
- 0
- 0
-
-
- 8805
- 1
- 0
- 0
- 0
-
-
- 8806
- 1
- 0
- 0
- 0
-
-
- 8807
- 1
- 0
- 0
- 0
-
-
- 8808
- 1
- 0
- 0
- 0
-
-
- 8809
- 1
- 0
- 0
- 0
-
-
- 8810
- 1
- 0
- 0
- 0
-
-
- 8811
- 1
- 0
- 0
- 0
-
-
- 8812
- 1
- 0
- 0
- 0
-
-
- 8813
- 1
- 0
- 0
- 0
-
-
- 8814
- 1
- 0
- 0
- 0
-
-
- 8815
- 1
- 0
- 0
- 0
-
-
- 8816
- 1
- 0
- 0
- 0
-
-
- 8817
- 1
- 0
- 0
- 0
-
-
- 8818
- 1
- 0
- 0
- 0
-
-
- 8819
- 1
- 0
- 0
- 0
-
-
- 8820
- 1
- 0
- 0
- 0
-
-
- 8821
- 1
- 0
- 0
- 0
-
-
- 8822
- 1
- 0
- 0
- 0
-
-
- 8823
- 1
- 0
- 0
- 0
-
-
- 8824
- 1
- 0
- 0
- 0
-
-
- 8825
- 1
- 0
- 0
- 0
-
-
- 8826
- 1
- 0
- 0
- 0
-
-
- 8827
- 1
- 0
- 0
- 0
-
-
- 8828
- 1
- 0
- 0
- 0
-
-
- 8829
- 1
- 0
- 0
- 0
-
-
- 8830
- 1
- 0
- 0
- 0
-
-
- 8831
- 1
- 0
- 0
- 0
-
-
- 8832
- 1
- 0
- 0
- 0
-
-
- 8833
- 1
- 0
- 0
- 0
-
-
- 8834
- 1
- 0
- 0
- 0
-
-
- 8835
- 1
- 0
- 0
- 0
-
-
- 8836
- 50
- 0
- 0
- 0
-
-
- 8837
- 1
- 0
- 0
- 0
-
-
- 8838
- 1
- 0
- 0
- 0
-
-
- 8839
- 48000
- 0
- 0
- 0
-
-
- 8840
- 45000
- 0
- 0
- 0
-
-
- 8841
- 12000
- 0
- 0
- 0
-
-
- 8842
- 6052
- 0
- 0
- 0
-
-
- 8843
- 1
- 0
- 0
- 0
-
-
- 8844
- 1
- 0
- 0
- 0
-
-
- 8845
- 1
- 0
- 0
- 0
-
-
- 8846
- 1
- 0
- 0
- 0
-
-
- 8847
- 1
- 0
- 0
- 0
-
-
- 8848
- 1
- 0
- 0
- 0
-
-
- 8849
- 1
- 0
- 0
- 0
-
-
- 8850
- 1
- 0
- 0
- 0
-
-
- 8851
- 1
- 0
- 0
- 0
-
-
- 8852
- 1
- 0
- 0
- 0
-
-
- 8853
- 1
- 0
- 0
- 0
-
-
- 8854
- 1
- 0
- 0
- 0
-
-
- 8855
- 1
- 0
- 0
- 0
-
-
- 8856
- 1
- 0
- 0
- 0
-
-
- 8857
- 1
- 0
- 0
- 0
-
-
- 8858
- 1
- 0
- 0
- 0
-
-
- 8859
- 1
- 0
- 0
- 0
-
-
- 8860
- 1
- 0
- 0
- 0
-
-
- 8861
- 1
- 0
- 0
- 0
-
-
- 8862
- 1
- 0
- 0
- 0
-
-
- 8863
- 1
- 0
- 0
- 0
-
-
- 8864
- 1
- 0
- 0
- 0
-
-
- 8865
- 2
- 0
- 0
- 0
-
-
- 8866
- 1
- 0
- 0
- 0
-
-
- 8867
- 1
- 0
- 0
- 0
-
-
- 8868
- 1
- 0
- 0
- 0
-
-
- 8869
- 1
- 0
- 0
- 0
-
-
- 8870
- 1
- 0
- 0
- 0
-
-
- 8871
- 1
- 0
- 0
- 0
-
-
- 8872
- 2000
- 0
- 0
- 0
-
-
- 8873
- 2000
- 0
- 0
- 0
-
-
- 8874
- 2000
- 0
- 0
- 0
-
-
- 8875
- 2000
- 0
- 0
- 0
-
-
- 8876
- 2000
- 0
- 0
- 0
-
-
- 8877
- 2000
- 0
- 0
- 0
-
-
- 8878
- 2000
- 0
- 0
- 0
-
-
- 8879
- 2000
- 0
- 0
- 0
-
-
- 8880
- 2000
- 0
- 0
- 0
-
-
- 8881
- 2000
- 0
- 0
- 0
-
-
- 8882
- 4
- 0
- 0
- 0
-
-
- 8883
- 1
- 0
- 0
- 0
-
-
- 8884
- 1
- 0
- 0
- 0
-
-
- 8885
- 1
- 0
- 0
- 0
-
-
- 8886
- 1
- 0
- 0
- 0
-
-
- 8887
- 1
- 0
- 0
- 0
-
-
- 8888
- 1
- 0
- 0
- 0
-
-
- 8889
- 1
- 0
- 0
- 0
-
-
- 8890
- 1
- 0
- 0
- 0
-
-
- 8891
- 1
- 0
- 0
- 0
-
-
- 8892
- 1
- 0
- 0
- 0
-
-
- 8893
- 1
- 0
- 0
- 0
-
-
- 8894
- 1
- 0
- 0
- 0
-
-
- 8895
- 1
- 0
- 0
- 0
-
-
- 8896
- 1
- 0
- 0
- 0
-
-
- 8897
- 1
- 0
- 0
- 0
-
-
- 8898
- 1
- 0
- 0
- 0
-
-
- 8899
- 1
- 0
- 0
- 0
-
-
- 8900
- 1
- 0
- 0
- 0
-
-
- 8901
- 3000
- 0
- 0
- 0
-
-
- 8902
- 3000
- 0
- 0
- 0
-
-
- 8903
- 3000
- 0
- 0
- 0
-
-
- 8904
- 3000
- 0
- 0
- 0
-
-
- 8905
- 3000
- 0
- 0
- 0
-
-
- 8906
- 3000
- 0
- 0
- 0
-
-
- 8907
- 3000
- 0
- 0
- 0
-
-
- 8908
- 3000
- 0
- 0
- 0
-
-
- 8909
- 3000
- 0
- 0
- 0
-
-
- 8910
- 3000
- 0
- 0
- 0
-
-
- 8911
- 3000
- 0
- 0
- 0
-
-
- 8912
- 3000
- 0
- 0
- 0
-
-
- 8913
- 3000
- 0
- 0
- 0
-
-
- 8914
- 3000
- 0
- 0
- 0
-
-
- 8915
- 3000
- 0
- 0
- 0
-
-
- 8916
- 3000
- 0
- 0
- 0
-
-
- 8917
- 3000
- 0
- 0
- 0
-
-
- 8918
- 3000
- 0
- 0
- 0
-
-
- 8919
- 3000
- 0
- 0
- 0
-
-
- 8920
- 3000
- 0
- 0
- 0
-
-
- 8921
- 3000
- 0
- 0
- 0
-
-
- 8922
- 3000
- 0
- 0
- 0
-
-
- 8923
- 900
- 0
- 0
- 0
-
-
- 8924
- 100
- 0
- 0
- 0
-
-
- 8925
- 100
- 0
- 0
- 0
-
-
- 8926
- 100
- 0
- 0
- 0
-
-
- 8927
- 100
- 0
- 0
- 0
-
-
- 8928
- 100
- 0
- 0
- 0
-
-
- 8929
- 100
- 0
- 0
- 0
-
-
- 8930
- 1
- 0
- 0
- 0
-
-
- 8931
- 1
- 0
- 0
- 0
-
-
- 8932
- 1
- 0
- 0
- 0
-
-
- 8933
- 1
- 0
- 0
- 0
-
-
- 8934
- 1
- 0
- 0
- 0
-
-
- 8935
- 1
- 0
- 0
- 0
-
-
- 8936
- 1
- 0
- 0
- 0
-
-
- 8937
- 1
- 0
- 0
- 0
-
-
- 8938
- 1
- 0
- 0
- 0
-
-
- 8939
- 1
- 0
- 0
- 0
-
-
- 8940
- 2
- 0
- 0
- 0
-
-
- 8941
- 2
- 0
- 0
- 0
-
-
- 8942
- 1
- 0
- 0
- 0
-
-
- 8943
- 1
- 0
- 0
- 0
-
-
- 8944
- 1
- 0
- 0
- 0
-
-
- 8945
- 1
- 0
- 0
- 0
-
-
- 8946
- 1
- 0
- 0
- 0
-
-
- 8947
- 1
- 0
- 0
- 0
-
-
- 8948
- 1
- 0
- 0
- 0
-
-
- 8949
- 1
- 0
- 0
- 0
-
-
- 8950
- 1
- 0
- 0
- 0
-
-
- 8951
- 1
- 0
- 0
- 0
-
-
- 8952
- 100
- 0
- 0
- 0
-
-
- 8953
- 100
- 0
- 0
- 0
-
-
- 8954
- 100
- 0
- 0
- 0
-
-
- 8955
- 100
- 0
- 0
- 0
-
-
- 8956
- 100
- 0
- 0
- 0
-
-
- 8957
- 100
- 0
- 0
- 0
-
-
- 8958
- 100
- 0
- 0
- 0
-
-
- 8959
- 50
- 0
- 0
- 0
-
-
- 8960
- 50
- 0
- 0
- 0
-
-
- 8961
- 50
- 0
- 0
- 0
-
-
- 8962
- 50
- 0
- 0
- 0
-
-
- 8963
- 50
- 0
- 0
- 0
-
-
- 8964
- 50
- 0
- 0
- 0
-
-
- 8965
- 50
- 0
- 0
- 0
-
-
- 8966
- 200
- 0
- 0
- 0
-
-
- 8967
- 200
- 0
- 0
- 0
-
-
- 8968
- 300
- 0
- 0
- 0
-
-
- 8969
- 400
- 0
- 0
- 0
-
-
- 8970
- 500
- 0
- 0
- 0
-
-
- 8971
- 600
- 0
- 0
- 0
-
-
- 8972
- 1
- 0
- 0
- 0
-
-
- 8973
- 1
- 0
- 0
- 0
-
-
- 8974
- 1
- 0
- 0
- 0
-
-
- 8975
- 1
- 0
- 0
- 0
-
-
- 8976
- 1
- 0
- 0
- 0
-
-
- 8977
- 1
- 0
- 0
- 0
-
-
- 8978
- 1
- 0
- 0
- 0
-
-
- 8979
- 1
- 0
- 0
- 0
-
-
- 8980
- 1
- 0
- 0
- 0
-
-
- 8981
- 1
- 0
- 0
- 0
-
-
- 8982
- 1
- 0
- 0
- 0
-
-
- 8983
- 1
- 0
- 0
- 0
-
-
- 8984
- 1
- 0
- 0
- 0
-
-
- 8985
- 1
- 0
- 0
- 0
-
-
- 8986
- 1
- 0
- 0
- 0
-
-
- 8987
- 1
- 0
- 0
- 0
-
-
- 8988
- 5
- 0
- 0
- 0
-
-
- 8989
- 1
- 0
- 0
- 0
-
-
- 8990
- 1
- 0
- 0
- 0
-
-
- 8991
- 100
- 0
- 0
- 0
-
-
- 8992
- 100
- 0
- 0
- 0
-
-
- 8993
- 100
- 0
- 0
- 0
-
-
- 8994
- 100
- 0
- 0
- 0
-
-
- 8995
- 100
- 0
- 0
- 0
-
-
- 8996
- 100
- 0
- 0
- 0
-
-
- 8997
- 100
- 0
- 0
- 0
-
-
- 8998
- 100
- 0
- 0
- 0
-
-
- 8999
- 100
- 0
- 0
- 0
-
-
- 9000
- 100
- 0
- 0
- 0
-
-
- 9001
- 100
- 0
- 0
- 0
-
-
- 9002
- 100
- 0
- 0
- 0
-
-
- 9003
- 2
- 0
- 0
- 0
-
-
- 9004
- 2
- 0
- 0
- 0
-
-
- 9005
- 1
- 0
- 0
- 0
-
-
- 9006
- 1
- 0
- 0
- 0
-
-
- 9007
- 1
- 0
- 0
- 0
-
-
- 9008
- 1
- 0
- 0
- 0
-
-
- 9009
- 1
- 0
- 0
- 0
-
-
- 9010
- 1
- 0
- 0
- 0
-
-
- 9011
- 1
- 0
- 0
- 0
-
-
- 9012
- 1
- 0
- 0
- 0
-
-
- 9013
- 1
- 0
- 0
- 0
-
-
- 9014
- 2
- 0
- 0
- 0
-
-
- 9015
- 2
- 0
- 0
- 0
-
-
- 9016
- 150
- 0
- 0
- 0
-
-
- 9017
- 75
- 0
- 0
- 0
-
-
- 9018
- 150
- 0
- 0
- 0
-
-
- 9019
- 75
- 0
- 0
- 0
-
-
- 9020
- 1
- 0
- 0
- 0
-
-
- 9021
- 280
- 0
- 0
- 0
-
-
- 9022
- 230
- 0
- 0
- 0
-
-
- 9023
- 180
- 0
- 0
- 0
-
-
- 9024
- 130
- 0
- 0
- 0
-
-
- 9025
- 1
- 0
- 0
- 0
-
-
- 9026
- 10
- 0
- 0
- 0
-
-
- 9027
- 10
- 0
- 0
- 0
-
-
- 9028
- 30
- 0
- 0
- 0
-
-
- 9029
- 30
- 0
- 0
- 0
-
-
- 9030
- 20
- 0
- 0
- 0
-
-
- 9031
- 20
- 0
- 0
- 0
-
-
- 9032
- 10
- 0
- 0
- 0
-
-
- 9033
- 10
- 0
- 0
- 0
-
-
- 9034
- 30
- 0
- 0
- 0
-
-
- 9035
- 30
- 0
- 0
- 0
-
-
- 9036
- 10
- 0
- 0
- 0
-
-
- 9037
- 10
- 0
- 0
- 0
-
-
- 9038
- 20
- 0
- 0
- 0
-
-
- 9039
- 20
- 0
- 0
- 0
-
-
- 9040
- 30
- 0
- 0
- 0
-
-
- 9041
- 30
- 0
- 0
- 0
-
-
- 9042
- 20
- 0
- 0
- 0
-
-
- 9043
- 20
- 0
- 0
- 0
-
-
- 9044
- 100
- 0
- 0
- 0
-
-
- 9045
- 100
- 0
- 0
- 0
-
-
- 9046
- 100
- 0
- 0
- 0
-
-
- 9047
- 100
- 0
- 0
- 0
-
-
- 9048
- 100
- 0
- 0
- 0
-
-
- 9049
- 100
- 0
- 0
- 0
-
-
- 9050
- 100
- 0
- 0
- 0
-
-
- 9051
- 100
- 0
- 0
- 0
-
-
- 9052
- 1
- 0
- 0
- 0
-
-
- 9053
- 1
- 0
- 0
- 0
-
-
- 9054
- 40
- 0
- 0
- 0
-
-
- 9055
- 40
- 0
- 0
- 0
-
-
- 9056
- 40
- 0
- 0
- 0
-
-
- 9057
- 40
- 0
- 0
- 0
-
-
- 9058
- 40
- 0
- 0
- 0
-
-
- 9059
- 40
- 0
- 0
- 0
-
-
- 9060
- 1
- 0
- 0
- 0
-
-
- 9061
- 1
- 0
- 0
- 0
-
-
- 9062
- 1
- 0
- 0
- 0
-
-
- 9063
- 1
- 0
- 0
- 0
-
-
- 9064
- 20
- 0
- 0
- 0
-
-
- 9065
- 20
- 0
- 0
- 0
-
-
- 9066
- 10
- 0
- 0
- 0
-
-
- 9067
- 4
- 0
- 0
- 0
-
-
- 9068
- 1000
- 0
- 0
- 0
-
-
- 9069
- 1000
- 0
- 0
- 0
-
-
- 9070
- 1000
- 0
- 0
- 0
-
-
- 9071
- 1000
- 0
- 0
- 0
-
-
- 9072
- 900
- 0
- 0
- 0
-
-
- 9073
- 900
- 0
- 0
- 0
-
-
- 9074
- 200
- 0
- 0
- 0
-
-
- 9075
- 220
- 0
- 0
- 0
-
-
- 9076
- 3
- 0
- 0
- 0
-
-
- 9077
- 8
- 0
- 0
- 0
-
-
- 9078
- 1
- 0
- 0
- 0
-
-
- 9079
- 20
- 0
- 0
- 0
-
-
- 9080
- 60
- 0
- 0
- 0
-
-
- 9081
- 60
- 0
- 0
- 0
-
-
- 9082
- 20
- 0
- 0
- 0
-
-
- 9083
- 1
- 0
- 0
- 0
-
-
- 9084
- 1
- 0
- 0
- 0
-
-
- 9085
- 1
- 0
- 0
- 0
-
-
- 9086
- 1
- 0
- 0
- 0
-
-
- 9087
- 1
- 0
- 0
- 0
-
-
- 9088
- 1
- 0
- 0
- 0
-
-
- 9089
- 1
- 0
- 0
- 0
-
-
- 9090
- 1
- 0
- 0
- 0
-
-
- 9091
- 15
- 0
- 0
- 0
-
-
- 9092
- 15
- 0
- 0
- 0
-
-
- 9093
- 15
- 0
- 0
- 0
-
-
- 9094
- 1
- 0
- 0
- 0
-
-
- 9095
- 1
- 0
- 0
- 0
-
-
- 9096
- 100
- 0
- 0
- 0
-
-
- 9097
- 100
- 0
- 0
- 0
-
-
- 9098
- 100
- 0
- 0
- 0
-
-
- 9099
- 100
- 0
- 0
- 0
-
-
- 9100
- 100
- 0
- 0
- 0
-
-
- 9101
- 2
- 0
- 0
- 0
-
-
- 9102
- 30
- 0
- 0
- 0
-
-
- 9103
- 30
- 0
- 0
- 0
-
-
- 9104
- 100
- 0
- 0
- 0
-
-
- 9105
- 1
- 0
- 0
- 0
-
-
- 9106
- 100
- 0
- 0
- 0
-
-
- 9107
- 1
- 0
- 0
- 0
-
-
- 9108
- 1
- 0
- 0
- 0
-
-
- 9109
- 1
- 0
- 0
- 0
-
-
- 9110
- 1
- 0
- 0
- 0
-
-
- 9111
- 1
- 0
- 0
- 0
-
-
- 9112
- 1
- 0
- 0
- 0
-
-
- 9113
- 1
- 0
- 0
- 0
-
-
- 9114
- 1
- 0
- 0
- 0
-
-
- 9115
- 1
- 0
- 0
- 0
-
-
- 9116
- 1
- 0
- 0
- 0
-
-
- 9117
- 1
- 0
- 0
- 0
-
-
- 9118
- 1
- 0
- 0
- 0
-
-
- 9119
- 1
- 0
- 0
- 0
-
-
- 9120
- 1
- 0
- 0
- 0
-
-
- 9121
- 1
- 0
- 0
- 0
-
-
- 9122
- 1
- 0
- 0
- 0
-
-
- 9123
- 1
- 0
- 0
- 0
-
-
- 9124
- 1
- 0
- 0
- 0
-
-
- 9125
- 1
- 0
- 0
- 0
-
-
- 9126
- 1
- 0
- 0
- 0
-
-
- 9127
- 1
- 0
- 0
- 0
-
-
- 9128
- 1
- 0
- 0
- 0
-
-
- 9129
- 1
- 0
- 0
- 0
-
-
- 9130
- 1
- 0
- 0
- 0
-
-
- 9131
- 1
- 0
- 0
- 0
-
-
- 9132
- 1
- 0
- 0
- 0
-
-
- 9133
- 1
- 0
- 0
- 0
-
-
- 9134
- 1
- 0
- 0
- 0
-
-
- 9135
- 1
- 0
- 0
- 0
-
-
- 9136
- 1
- 0
- 0
- 0
-
-
- 9137
- 1
- 0
- 0
- 0
-
-
- 9138
- 1
- 0
- 0
- 0
-
-
- 9139
- 2
- 0
- 0
- 0
-
-
- 9140
- 2
- 0
- 0
- 0
-
-
- 9141
- 8
- 0
- 0
- 0
-
-
- 9142
- 20
- 0
- 0
- 0
-
-
- 9143
- 58
- 0
- 0
- 0
-
-
- 9144
- 300
- 0
- 0
- 0
-
-
- 9145
- 5
- 0
- 0
- 0
-
-
- 9146
- 1
- 0
- 0
- 0
-
-
- 9147
- 1
- 0
- 0
- 0
-
-
- 9148
- 1
- 0
- 0
- 0
-
-
- 9149
- 1
- 0
- 0
- 0
-
-
- 9150
- 1
- 0
- 0
- 0
-
-
- 9151
- 1
- 0
- 0
- 0
-
-
- 9152
- 1
- 0
- 0
- 0
-
-
- 9153
- 1
- 0
- 0
- 0
-
-
- 9154
- 1
- 0
- 0
- 0
-
-
- 9155
- 1
- 0
- 0
- 0
-
-
- 9156
- 1
- 0
- 0
- 0
-
-
- 9157
- 1
- 0
- 0
- 0
-
-
- 9158
- 1
- 0
- 0
- 0
-
-
- 9159
- 1
- 0
- 0
- 0
-
-
- 9160
- 1
- 0
- 0
- 0
-
-
- 9161
- 1
- 0
- 0
- 0
-
-
- 9162
- 1
- 0
- 0
- 0
-
-
- 9163
- 1
- 0
- 0
- 0
-
-
- 9164
- 1
- 0
- 0
- 0
-
-
- 9165
- 1
- 0
- 0
- 0
-
-
- 9166
- 1
- 0
- 0
- 0
-
-
- 9167
- 1
- 0
- 0
- 0
-
-
- 9168
- 1
- 0
- 0
- 0
-
-
- 9169
- 1
- 0
- 0
- 0
-
-
- 9170
- 1
- 0
- 0
- 0
-
-
- 9171
- 1
- 0
- 0
- 0
-
-
- 9172
- 1
- 0
- 0
- 0
-
-
- 9173
- 1
- 0
- 0
- 0
-
-
- 9174
- 73
- 0
- 0
- 0
-
-
- 9175
- 73
- 0
- 0
- 0
-
-
- 9176
- 93
- 0
- 0
- 0
-
-
- 9177
- 157
- 0
- 0
- 0
-
-
- 9178
- 157
- 0
- 0
- 0
-
-
- 9179
- 360
- 0
- 0
- 0
-
-
- 9180
- 360
- 0
- 0
- 0
-
-
- 9181
- 783
- 0
- 0
- 0
-
-
- 9182
- 783
- 0
- 0
- 0
-
-
- 9183
- 1767
- 0
- 0
- 0
-
-
- 9184
- 1767
- 0
- 0
- 0
-
-
- 9185
- 16200
- 0
- 0
- 0
-
-
- 9186
- 16200
- 0
- 0
- 0
-
-
- 9187
- 10
- 0
- 0
- 0
-
-
- 9188
- 13
- 0
- 0
- 0
-
-
- 9189
- 17
- 0
- 0
- 0
-
-
- 9190
- 33
- 0
- 0
- 0
-
-
- 9191
- 67
- 0
- 0
- 0
-
-
- 9192
- 133
- 0
- 0
- 0
-
-
- 9193
- 667
- 0
- 0
- 0
-
-
- 9194
- 1000
- 0
- 0
- 0
-
-
- 9195
- 1
- 0
- 0
- 0
-
-
- 9196
- 1
- 0
- 0
- 0
-
-
- 9197
- 1
- 0
- 0
- 0
-
-
- 9198
- 1
- 0
- 0
- 0
-
-
- 9199
- 1
- 0
- 0
- 0
-
-
- 9200
- 1
- 0
- 0
- 0
-
-
- 9201
- 1
- 0
- 0
- 0
-
-
- 9202
- 1
- 0
- 0
- 0
-
-
- 9203
- 1
- 0
- 0
- 0
-
-
- 9204
- 1
- 0
- 0
- 0
-
-
- 9205
- 1
- 0
- 0
- 0
-
-
- 9206
- 1
- 0
- 0
- 0
-
-
- 9207
- 1
- 0
- 0
- 0
-
-
- 9208
- 1
- 0
- 0
- 0
-
-
- 9209
- 1
- 0
- 0
- 0
-
-
- 9210
- 1
- 0
- 0
- 0
-
-
- 9211
- 1
- 0
- 0
- 0
-
-
- 9212
- 1
- 0
- 0
- 0
-
-
- 9213
- 1
- 0
- 0
- 0
-
-
- 9214
- 1
- 0
- 0
- 0
-
-
- 9215
- 1
- 0
- 0
- 0
-
-
- 9216
- 1
- 0
- 0
- 0
-
-
- 9217
- 1
- 0
- 0
- 0
-
-
- 9218
- 1
- 0
- 0
- 0
-
-
- 9219
- 1
- 0
- 0
- 0
-
-
- 9220
- 1
- 0
- 0
- 0
-
-
- 9221
- 1
- 0
- 0
- 0
-
-
- 9222
- 1
- 0
- 0
- 0
-
-
- 9223
- 1
- 0
- 0
- 0
-
-
- 9224
- 1
- 0
- 0
- 0
-
-
- 9225
- 1
- 0
- 0
- 0
-
-
- 9226
- 1
- 0
- 0
- 0
-
-
- 9227
- 1
- 0
- 0
- 0
-
-
- 9228
- 1
- 0
- 0
- 0
-
-
- 9229
- 1
- 0
- 0
- 0
-
-
- 9230
- 1
- 0
- 0
- 0
-
-
- 9231
- 1
- 0
- 0
- 0
-
-
- 9232
- 1
- 0
- 0
- 0
-
-
- 9233
- 1
- 0
- 0
- 0
-
-
- 9234
- 1
- 0
- 0
- 0
-
-
- 9235
- 1
- 0
- 0
- 0
-
-
- 9236
- 7
- 0
- 0
- 0
-
-
- 9237
- 13
- 0
- 0
- 0
-
-
- 9238
- 15
- 0
- 0
- 0
-
-
- 9239
- 24
- 0
- 0
- 0
-
-
- 9240
- 40
- 0
- 0
- 0
-
-
- 9241
- 59
- 0
- 0
- 0
-
-
- 9242
- 138
- 0
- 0
- 0
-
-
- 9243
- 211
- 0
- 0
- 0
-
-
- 9244
- 1063
- 0
- 0
- 0
-
-
- 9245
- 15000
- 0
- 0
- 0
-
-
- 9246
- 1
- 0
- 0
- 0
-
-
- 9247
- 1
- 0
- 0
- 0
-
-
- 9248
- 1
- 0
- 0
- 0
-
-
- 9249
- 1
- 0
- 0
- 0
-
-
- 9250
- 1
- 0
- 0
- 0
-
-
- 9251
- 1
- 0
- 0
- 0
-
-
- 9252
- 1
- 0
- 0
- 0
-
-
- 9253
- 1
- 0
- 0
- 0
-
-
- 9254
- 1
- 0
- 0
- 0
-
-
- 9255
- 1
- 0
- 0
- 0
-
-
- 9256
- 1
- 0
- 0
- 0
-
-
- 9257
- 1
- 0
- 0
- 0
-
-
- 9258
- 1
- 0
- 0
- 0
-
-
- 9259
- 1
- 0
- 0
- 0
-
-
- 9260
- 1
- 0
- 0
- 0
-
-
- 9261
- 1
- 0
- 0
- 0
-
-
- 9262
- 1
- 0
- 0
- 0
-
-
- 9263
- 1
- 0
- 0
- 0
-
-
- 9264
- 1
- 0
- 0
- 0
-
-
- 9265
- 1
- 0
- 0
- 0
-
-
- 9266
- 1
- 0
- 0
- 0
-
-
- 9267
- 1
- 0
- 0
- 0
-
-
- 9268
- 1
- 0
- 0
- 0
-
-
- 9269
- 1
- 0
- 0
- 0
-
-
- 9270
- 1
- 0
- 0
- 0
-
-
- 9271
- 1
- 0
- 0
- 0
-
-
- 9272
- 1
- 0
- 0
- 0
-
-
- 9273
- 1
- 0
- 0
- 0
-
-
- 9274
- 1
- 0
- 0
- 0
-
-
- 9275
- 1
- 0
- 0
- 0
-
-
- 9276
- 1
- 0
- 0
- 0
-
-
- 9277
- 1
- 0
- 0
- 0
-
-
- 9278
- 1
- 0
- 0
- 0
-
-
- 9279
- 1
- 0
- 0
- 0
-
-
- 9280
- 1
- 0
- 0
- 0
-
-
- 9281
- 1
- 0
- 0
- 0
-
-
- 9282
- 1
- 0
- 0
- 0
-
-
- 9283
- 1
- 0
- 0
- 0
-
-
- 9284
- 1
- 0
- 0
- 0
-
-
- 9285
- 1
- 0
- 0
- 0
-
-
- 9286
- 2
- 0
- 0
- 0
-
-
- 9287
- 2
- 0
- 0
- 0
-
-
- 9288
- 8
- 0
- 0
- 0
-
-
- 9289
- 20
- 0
- 0
- 0
-
-
- 9290
- 58
- 0
- 0
- 0
-
-
- 9291
- 300
- 0
- 0
- 0
-
-
- 9292
- 5
- 0
- 0
- 0
-
-
- 9293
- 2
- 0
- 0
- 0
-
-
- 9294
- 2
- 0
- 0
- 0
-
-
- 9295
- 8
- 0
- 0
- 0
-
-
- 9296
- 20
- 0
- 0
- 0
-
-
- 9297
- 58
- 0
- 0
- 0
-
-
- 9298
- 300
- 0
- 0
- 0
-
-
- 9299
- 5
- 0
- 0
- 0
-
-
- 9300
- 2
- 0
- 0
- 0
-
-
- 9301
- 2
- 0
- 0
- 0
-
-
- 9302
- 8
- 0
- 0
- 0
-
-
- 9303
- 20
- 0
- 0
- 0
-
-
- 9304
- 58
- 0
- 0
- 0
-
-
- 9305
- 300
- 0
- 0
- 0
-
-
- 9306
- 5
- 0
- 0
- 0
-
-
- 9307
- 1
- 0
- 0
- 0
-
-
- 9308
- 1
- 0
- 0
- 0
-
-
- 9309
- 1
- 0
- 0
- 0
-
-
- 9310
- 1
- 0
- 0
- 0
-
-
- 9311
- 1
- 0
- 0
- 0
-
-
- 9312
- 1
- 0
- 0
- 0
-
-
- 9313
- 1
- 0
- 0
- 0
-
-
- 9314
- 1
- 0
- 0
- 0
-
-
- 9315
- 1
- 0
- 0
- 0
-
-
- 9316
- 1
- 0
- 0
- 0
-
-
- 9317
- 1
- 0
- 0
- 0
-
-
- 9318
- 1
- 0
- 0
- 0
-
-
- 9319
- 1
- 0
- 0
- 0
-
-
- 9320
- 1
- 0
- 0
- 0
-
-
- 9321
- 1
- 0
- 0
- 0
-
-
- 9322
- 1
- 0
- 0
- 0
-
-
- 9323
- 1
- 0
- 0
- 0
-
-
- 9324
- 1
- 0
- 0
- 0
-
-
- 9325
- 1
- 0
- 0
- 0
-
-
- 9326
- 1
- 0
- 0
- 0
-
-
- 9327
- 1
- 0
- 0
- 0
-
-
- 9328
- 1
- 0
- 0
- 0
-
-
- 9329
- 1
- 0
- 0
- 0
-
-
- 9330
- 1
- 0
- 0
- 0
-
-
- 9331
- 1
- 0
- 0
- 0
-
-
- 9332
- 1
- 0
- 0
- 0
-
-
- 9333
- 1
- 0
- 0
- 0
-
-
- 9334
- 1
- 0
- 0
- 0
-
-
- 9335
- 12
- 0
- 0
- 0
-
-
- 9336
- 22
- 0
- 0
- 0
-
-
- 9337
- 37
- 0
- 0
- 0
-
-
- 9338
- 53
- 0
- 0
- 0
-
-
- 9339
- 125
- 0
- 0
- 0
-
-
- 9340
- 192
- 0
- 0
- 0
-
-
- 9341
- 967
- 0
- 0
- 0
-
-
- 9342
- 13633
- 0
- 0
- 0
-
-
- 9343
- 1
- 0
- 0
- 0
-
-
- 9344
- 1
- 0
- 0
- 0
-
-
- 9345
- 1
- 0
- 0
- 0
-
-
- 9346
- 1
- 0
- 0
- 0
-
-
- 9347
- 1
- 0
- 0
- 0
-
-
- 9348
- 1
- 0
- 0
- 0
-
-
- 9349
- 1
- 0
- 0
- 0
-
-
- 9350
- 1
- 0
- 0
- 0
-
-
- 9351
- 1
- 0
- 0
- 0
-
-
- 9352
- 1
- 0
- 0
- 0
-
-
- 9353
- 1
- 0
- 0
- 0
-
-
- 9354
- 1
- 0
- 0
- 0
-
-
- 9355
- 1
- 0
- 0
- 0
-
-
- 9356
- 1
- 0
- 0
- 0
-
-
- 9357
- 1
- 0
- 0
- 0
-
-
- 9358
- 1
- 0
- 0
- 0
-
-
- 9359
- 1
- 0
- 0
- 0
-
-
- 9360
- 1
- 0
- 0
- 0
-
-
- 9361
- 1
- 0
- 0
- 0
-
-
- 9362
- 1
- 0
- 0
- 0
-
-
- 9363
- 1
- 0
- 0
- 0
-
-
- 9364
- 1
- 0
- 0
- 0
-
-
- 9365
- 1
- 0
- 0
- 0
-
-
- 9366
- 1
- 0
- 0
- 0
-
-
- 9367
- 1
- 0
- 0
- 0
-
-
- 9368
- 1
- 0
- 0
- 0
-
-
- 9369
- 1
- 0
- 0
- 0
-
-
- 9370
- 1
- 0
- 0
- 0
-
-
- 9371
- 1
- 0
- 0
- 0
-
-
- 9372
- 1
- 0
- 0
- 0
-
-
- 9373
- 1
- 0
- 0
- 0
-
-
- 9374
- 1
- 0
- 0
- 0
-
-
- 9375
- 1
- 0
- 0
- 0
-
-
- 9376
- 1
- 0
- 0
- 0
-
-
- 9377
- 1
- 0
- 0
- 0
-
-
- 9378
- 1
- 0
- 0
- 0
-
-
- 9379
- 1
- 0
- 0
- 0
-
-
- 9380
- 1
- 0
- 0
- 0
-
-
- 9381
- 1
- 0
- 0
- 0
-
-
- 9382
- 1
- 0
- 0
- 0
-
-
- 9383
- 1
- 0
- 0
- 0
-
-
- 9384
- 1
- 0
- 0
- 0
-
-
- 9385
- 1
- 0
- 0
- 0
-
-
- 9386
- 1
- 0
- 0
- 0
-
-
- 9387
- 1
- 0
- 0
- 0
-
-
- 9388
- 1
- 0
- 0
- 0
-
-
- 9389
- 1
- 0
- 0
- 0
-
-
- 9390
- 1
- 0
- 0
- 0
-
-
- 9391
- 1
- 0
- 0
- 0
-
-
- 9392
- 1
- 0
- 0
- 0
-
-
- 9393
- 1
- 0
- 0
- 0
-
-
- 9394
- 1
- 0
- 0
- 0
-
-
- 9395
- 1
- 0
- 0
- 0
-
-
- 9396
- 1
- 0
- 0
- 0
-
-
- 9397
- 1
- 0
- 0
- 0
-
-
- 9398
- 1
- 0
- 0
- 0
-
-
- 9399
- 1
- 0
- 0
- 0
-
-
- 9400
- 1
- 0
- 0
- 0
-
-
- 9401
- 1
- 0
- 0
- 0
-
-
- 9402
- 1
- 0
- 0
- 0
-
-
- 9403
- 1
- 0
- 0
- 0
-
-
- 9404
- 1
- 0
- 0
- 0
-
-
- 9405
- 1
- 0
- 0
- 0
-
-
- 9406
- 1
- 0
- 0
- 0
-
-
- 9407
- 1
- 0
- 0
- 0
-
-
- 9408
- 1
- 0
- 0
- 0
-
-
- 9409
- 1
- 0
- 0
- 0
-
-
- 9410
- 1
- 0
- 0
- 0
-
-
- 9411
- 1
- 0
- 0
- 0
-
-
- 9412
- 1
- 0
- 0
- 0
-
-
- 9413
- 1
- 0
- 0
- 0
-
-
- 9414
- 1
- 0
- 0
- 0
-
-
- 9415
- 1
- 0
- 0
- 0
-
-
- 9416
- 30
- 0
- 0
- 0
-
-
- 9417
- 30
- 0
- 0
- 0
-
-
- 9418
- 48
- 0
- 0
- 0
-
-
- 9419
- 1
- 0
- 0
- 0
-
-
- 9420
- 20
- 0
- 0
- 0
-
-
- 9421
- 20
- 0
- 0
- 0
-
-
- 9422
- 33
- 0
- 0
- 0
-
-
- 9423
- 70
- 0
- 0
- 0
-
-
- 9424
- 70
- 0
- 0
- 0
-
-
- 9425
- 250
- 0
- 0
- 0
-
-
- 9426
- 250
- 0
- 0
- 0
-
-
- 9427
- 650
- 0
- 0
- 0
-
-
- 9428
- 650
- 0
- 0
- 0
-
-
- 9429
- 1600
- 0
- 0
- 0
-
-
- 9430
- 1600
- 0
- 0
- 0
-
-
- 9431
- 16000
- 0
- 0
- 0
-
-
- 9432
- 16000
- 0
- 0
- 0
-
-
- 9433
- 5000
- 0
- 0
- 0
-
-
- 9434
- 25
- 0
- 0
- 0
-
-
- 9435
- 25
- 0
- 0
- 0
-
-
- 9436
- 2
- 0
- 0
- 0
-
-
- 9437
- 2
- 0
- 0
- 0
-
-
- 9438
- 1
- 0
- 0
- 0
-
-
- 9439
- 1
- 0
- 0
- 0
-
-
- 9440
- 20
- 0
- 0
- 0
-
-
- 9441
- 20
- 0
- 0
- 0
-
-
- 9442
- 27
- 0
- 0
- 0
-
-
- 9443
- 27
- 0
- 0
- 0
-
-
- 9444
- 53
- 0
- 0
- 0
-
-
- 9445
- 53
- 0
- 0
- 0
-
-
- 9446
- 77
- 0
- 0
- 0
-
-
- 9447
- 77
- 0
- 0
- 0
-
-
- 9448
- 100
- 0
- 0
- 0
-
-
- 9449
- 100
- 0
- 0
- 0
-
-
- 9450
- 133
- 0
- 0
- 0
-
-
- 9451
- 133
- 0
- 0
- 0
-
-
- 9452
- 167
- 0
- 0
- 0
-
-
- 9453
- 167
- 0
- 0
- 0
-
-
- 9454
- 40
- 0
- 0
- 0
-
-
- 9455
- 40
- 0
- 0
- 0
-
-
- 9456
- 60
- 0
- 0
- 0
-
-
- 9457
- 123
- 0
- 0
- 0
-
-
- 9458
- 123
- 0
- 0
- 0
-
-
- 9459
- 327
- 0
- 0
- 0
-
-
- 9460
- 327
- 0
- 0
- 0
-
-
- 9461
- 750
- 0
- 0
- 0
-
-
- 9462
- 750
- 0
- 0
- 0
-
-
- 9463
- 1733
- 0
- 0
- 0
-
-
- 9464
- 1733
- 0
- 0
- 0
-
-
- 9465
- 16167
- 0
- 0
- 0
-
-
- 9466
- 16167
- 0
- 0
- 0
-
-
- 9467
- 18
- 0
- 0
- 0
-
-
- 9468
- 1
- 0
- 0
- 0
-
-
- 9469
- 250
- 0
- 0
- 0
-
-
- 9470
- 1000
- 0
- 0
- 0
-
-
- 9471
- 1000
- 0
- 0
- 0
-
-
- 9472
- 1000
- 0
- 0
- 0
-
-
- 9473
- 1000
- 0
- 0
- 0
-
-
- 9474
- 250
- 0
- 0
- 0
-
-
- 9475
- 250
- 0
- 0
- 0
-
-
- 9476
- 250
- 0
- 0
- 0
-
-
- 9477
- 1
- 0
- 0
- 0
-
-
- 9478
- 2
- 0
- 0
- 0
-
-
- 9479
- 2
- 0
- 0
- 0
-
-
- 9480
- 2
- 0
- 0
- 0
-
-
- 9481
- 2
- 0
- 0
- 0
-
-
- 9482
- 2
- 0
- 0
- 0
-
-
- 9483
- 2
- 0
- 0
- 0
-
-
- 9484
- 2
- 0
- 0
- 0
-
-
- 9485
- 2
- 0
- 0
- 0
-
-
- 9486
- 2
- 0
- 0
- 0
-
-
- 9487
- 1
- 0
- 0
- 0
-
-
- 9488
- 1
- 0
- 0
- 0
-
-
- 9489
- 1
- 0
- 0
- 0
-
-
- 9490
- 1
- 0
- 0
- 0
-
-
- 9491
- 1
- 0
- 0
- 0
-
-
- 9492
- 1
- 0
- 0
- 0
-
-
- 9493
- 1
- 0
- 0
- 0
-
-
- 9494
- 1
- 0
- 0
- 0
-
-
- 9495
- 1
- 0
- 0
- 0
-
-
- 9496
- 1
- 0
- 0
- 0
-
-
- 9497
- 1
- 0
- 0
- 0
-
-
- 9498
- 1
- 0
- 0
- 0
-
-
- 9499
- 1
- 0
- 0
- 0
-
-
- 9500
- 1
- 0
- 0
- 0
-
-
- 9501
- 1
- 0
- 0
- 0
-
-
- 9502
- 1
- 0
- 0
- 0
-
-
- 9503
- 1
- 0
- 0
- 0
-
-
- 9504
- 1
- 0
- 0
- 0
-
-
- 9505
- 1
- 0
- 0
- 0
-
-
- 9506
- 1
- 0
- 0
- 0
-
-
- 9507
- 1
- 0
- 0
- 0
-
-
- 9508
- 1
- 0
- 0
- 0
-
-
- 9509
- 1
- 0
- 0
- 0
-
-
- 9510
- 1
- 0
- 0
- 0
-
-
- 9511
- 1
- 0
- 0
- 0
-
-
- 9512
- 1
- 0
- 0
- 0
-
-
- 9513
- 1
- 0
- 0
- 0
-
-
- 9514
- 1
- 0
- 0
- 0
-
-
- 9515
- 1
- 0
- 0
- 0
-
-
- 9516
- 1
- 0
- 0
- 0
-
-
- 9517
- 1
- 0
- 0
- 0
-
-
- 9518
- 1
- 0
- 0
- 0
-
-
- 9519
- 1
- 0
- 0
- 0
-
-
- 9520
- 1
- 0
- 0
- 0
-
-
- 9521
- 1
- 0
- 0
- 0
-
-
- 9522
- 1
- 0
- 0
- 0
-
-
- 9523
- 1
- 0
- 0
- 0
-
-
- 9524
- 1
- 0
- 0
- 0
-
-
- 9525
- 1
- 0
- 0
- 0
-
-
- 9526
- 1
- 0
- 0
- 0
-
-
- 9527
- 1
- 0
- 0
- 0
-
-
- 9528
- 1
- 0
- 0
- 0
-
-
- 9529
- 1
- 0
- 0
- 0
-
-
- 9530
- 1
- 0
- 0
- 0
-
-
- 9531
- 1
- 0
- 0
- 0
-
-
- 9532
- 1
- 0
- 0
- 0
-
-
- 9533
- 1
- 0
- 0
- 0
-
-
- 9534
- 1
- 0
- 0
- 0
-
-
- 9535
- 1
- 0
- 0
- 0
-
-
- 9536
- 1
- 0
- 0
- 0
-
-
- 9537
- 1
- 0
- 0
- 0
-
-
- 9538
- 1
- 0
- 0
- 0
-
-
- 9539
- 1
- 0
- 0
- 0
-
-
- 9540
- 1
- 0
- 0
- 0
-
-
- 9541
- 1
- 0
- 0
- 0
-
-
- 9542
- 1
- 0
- 0
- 0
-
-
- 9543
- 1
- 0
- 0
- 0
-
-
- 9544
- 1
- 0
- 0
- 0
-
-
- 9545
- 1
- 0
- 0
- 0
-
-
- 9546
- 1
- 0
- 0
- 0
-
-
- 9547
- 1
- 0
- 0
- 0
-
-
- 9548
- 1
- 0
- 0
- 0
-
-
- 9549
- 1
- 0
- 0
- 0
-
-
- 9550
- 1
- 0
- 0
- 0
-
-
- 9551
- 1
- 0
- 0
- 0
-
-
- 9552
- 1
- 0
- 0
- 0
-
-
- 9553
- 1
- 0
- 0
- 0
-
-
- 9554
- 1
- 0
- 0
- 0
-
-
- 9555
- 1
- 0
- 0
- 0
-
-
- 9556
- 1
- 0
- 0
- 0
-
-
- 9557
- 1
- 0
- 0
- 0
-
-
- 9558
- 2
- 0
- 0
- 0
-
-
- 9559
- 2
- 0
- 0
- 0
-
-
- 9560
- 2
- 0
- 0
- 0
-
-
- 9561
- 2
- 0
- 0
- 0
-
-
- 9562
- 2
- 0
- 0
- 0
-
-
- 9563
- 2
- 0
- 0
- 0
-
-
- 9564
- 2
- 0
- 0
- 0
-
-
- 9565
- 2
- 0
- 0
- 0
-
-
- 9566
- 2
- 0
- 0
- 0
-
-
- 9567
- 2
- 0
- 0
- 0
-
-
- 9568
- 2
- 0
- 0
- 0
-
-
- 9569
- 2
- 0
- 0
- 0
-
-
- 9570
- 2
- 0
- 0
- 0
-
-
- 9571
- 2
- 0
- 0
- 0
-
-
- 9572
- 2
- 0
- 0
- 0
-
-
- 9573
- 2
- 0
- 0
- 0
-
-
- 9574
- 2
- 0
- 0
- 0
-
-
- 9575
- 2
- 0
- 0
- 0
-
-
- 9576
- 2
- 0
- 0
- 0
-
-
- 9577
- 2
- 0
- 0
- 0
-
-
- 9578
- 2
- 0
- 0
- 0
-
-
- 9579
- 2
- 0
- 0
- 0
-
-
- 9580
- 2
- 0
- 0
- 0
-
-
- 9581
- 2
- 0
- 0
- 0
-
-
- 9582
- 2
- 0
- 0
- 0
-
-
- 9583
- 2
- 0
- 0
- 0
-
-
- 9584
- 2
- 0
- 0
- 0
-
-
- 9585
- 10
- 0
- 0
- 0
-
-
- 9586
- 10
- 0
- 0
- 0
-
-
- 9587
- 10
- 0
- 0
- 0
-
-
- 9588
- 2
- 0
- 0
- 0
-
-
- 9589
- 1
- 0
- 0
- 0
-
-
- 9590
- 1
- 0
- 0
- 0
-
-
- 9591
- 1
- 0
- 0
- 0
-
-
- 9592
- 1
- 0
- 0
- 0
-
-
- 9593
- 1
- 0
- 0
- 0
-
-
- 9594
- 1
- 0
- 0
- 0
-
-
- 9595
- 1
- 0
- 0
- 0
-
-
- 9596
- 10
- 0
- 0
- 0
-
-
- 9597
- 1
- 0
- 0
- 0
-
-
- 9598
- 1
- 0
- 0
- 0
-
-
- 9599
- 1
- 0
- 0
- 0
-
-
- 9600
- 1
- 0
- 0
- 0
-
-
- 9601
- 1
- 0
- 0
- 0
-
-
- 9602
- 1
- 0
- 0
- 0
-
-
- 9603
- 1
- 0
- 0
- 0
-
-
- 9604
- 1
- 0
- 0
- 0
-
-
- 9605
- 1
- 0
- 0
- 0
-
-
- 9606
- 1
- 0
- 0
- 0
-
-
- 9607
- 1
- 0
- 0
- 0
-
-
- 9608
- 1
- 0
- 0
- 0
-
-
- 9609
- 1
- 0
- 0
- 0
-
-
- 9610
- 1
- 0
- 0
- 0
-
-
- 9611
- 1
- 0
- 0
- 0
-
-
- 9612
- 1
- 0
- 0
- 0
-
-
- 9613
- 1
- 0
- 0
- 0
-
-
- 9614
- 1
- 0
- 0
- 0
-
-
- 9615
- 1
- 0
- 0
- 0
-
-
- 9616
- 1
- 0
- 0
- 0
-
-
- 9617
- 1
- 0
- 0
- 0
-
-
- 9618
- 1
- 0
- 0
- 0
-
-
- 9619
- 1
- 0
- 0
- 0
-
-
- 9620
- 1
- 0
- 0
- 0
-
-
- 9621
- 1
- 0
- 0
- 0
-
-
- 9622
- 1
- 0
- 0
- 0
-
-
- 9623
- 1
- 0
- 0
- 0
-
-
- 9624
- 1
- 0
- 0
- 0
-
-
- 9625
- 10
- 0
- 0
- 0
-
-
- 9626
- 10000
- 0
- 0
- 0
-
-
- 9627
- 2
- 0
- 0
- 0
-
-
- 9628
- 1
- 0
- 0
- 0
-
-
- 9629
- 1265
- 0
- 0
- 0
-
-
- 9630
- 1265
- 0
- 0
- 0
-
-
- 9631
- 2
- 0
- 0
- 0
-
-
- 9632
- 100
- 0
- 0
- 0
-
-
- 9633
- 1
- 0
- 0
- 0
-
-
- 9634
- 650
- 0
- 0
- 0
-
-
- 9635
- 650
- 0
- 0
- 0
-
-
- 9636
- 650
- 0
- 0
- 0
-
-
- 9637
- 650
- 0
- 0
- 0
-
-
- 9638
- 650
- 0
- 0
- 0
-
-
- 9639
- 650
- 0
- 0
- 0
-
-
- 9640
- 6
- 0
- 0
- 0
-
-
- 9641
- 6
- 0
- 0
- 0
-
-
- 9642
- 6
- 0
- 0
- 0
-
-
- 9643
- 6
- 0
- 0
- 0
-
-
- 9644
- 6
- 0
- 0
- 0
-
-
- 9645
- 6
- 0
- 0
- 0
-
-
- 9646
- 1
- 0
- 0
- 0
-
-
- 9647
- 1
- 0
- 0
- 0
-
-
- 9648
- 1
- 0
- 0
- 0
-
-
- 9649
- 1
- 0
- 0
- 0
-
-
- 9650
- 1
- 0
- 0
- 0
-
-
- 9651
- 1
- 0
- 0
- 0
-
-
- 9652
- 1
- 0
- 0
- 0
-
-
- 9653
- 1
- 0
- 0
- 0
-
-
- 9654
- 1
- 0
- 0
- 0
-
-
- 9655
- 1
- 0
- 0
- 0
-
-
- 9656
- 1
- 0
- 0
- 0
-
-
- 9657
- 1
- 0
- 0
- 0
-
-
- 9658
- 1
- 0
- 0
- 0
-
-
- 9659
- 1
- 0
- 0
- 0
-
-
- 9660
- 1
- 0
- 0
- 0
-
-
- 9661
- 1
- 0
- 0
- 0
-
-
- 9662
- 1
- 0
- 0
- 0
-
-
- 9663
- 1
- 0
- 0
- 0
-
-
- 9664
- 1
- 0
- 0
- 0
-
-
- 9665
- 1
- 0
- 0
- 0
-
-
- 9666
- 25000
- 0
- 0
- 0
-
-
- 9667
- 25000
- 0
- 0
- 0
-
-
- 9668
- 20000
- 0
- 0
- 0
-
-
- 9669
- 20000
- 0
- 0
- 0
-
-
- 9670
- 25000
- 0
- 0
- 0
-
-
- 9671
- 25000
- 0
- 0
- 0
-
-
- 9672
- 8000
- 0
- 0
- 0
-
-
- 9673
- 8000
- 0
- 0
- 0
-
-
- 9674
- 12000
- 0
- 0
- 0
-
-
- 9675
- 12000
- 0
- 0
- 0
-
-
- 9676
- 10000
- 0
- 0
- 0
-
-
- 9677
- 10000
- 0
- 0
- 0
-
-
- 9678
- 10000
- 0
- 0
- 0
-
-
- 9679
- 10000
- 0
- 0
- 0
-
-
- 9680
- 1
- 0
- 0
- 0
-
-
- 9681
- 1
- 0
- 0
- 0
-
-
- 9682
- 1
- 0
- 0
- 0
-
-
- 9683
- 1
- 0
- 0
- 0
-
-
- 9684
- 1
- 0
- 0
- 0
-
-
- 9685
- 1
- 0
- 0
- 0
-
-
- 9686
- 1
- 0
- 0
- 0
-
-
- 9687
- 1
- 0
- 0
- 0
-
-
- 9688
- 1
- 0
- 0
- 0
-
-
- 9689
- 1
- 0
- 0
- 0
-
-
- 9690
- 1
- 0
- 0
- 0
-
-
- 9691
- 1
- 0
- 0
- 0
-
-
- 9692
- 1
- 0
- 0
- 0
-
-
- 9693
- 1
- 0
- 0
- 0
-
-
- 9694
- 1
- 0
- 0
- 0
-
-
- 9695
- 1
- 0
- 0
- 0
-
-
- 9696
- 1
- 0
- 0
- 0
-
-
- 9697
- 1
- 0
- 0
- 0
-
-
- 9698
- 1
- 0
- 0
- 0
-
-
- 9699
- 1
- 0
- 0
- 0
-
-
- 9700
- 1
- 0
- 0
- 0
-
-
- 9701
- 1
- 0
- 0
- 0
-
-
- 9702
- 1
- 0
- 0
- 0
-
-
- 9703
- 1
- 0
- 0
- 0
-
-
- 9704
- 1
- 0
- 0
- 0
-
-
- 9705
- 1
- 0
- 0
- 0
-
-
- 9706
- 1
- 0
- 0
- 0
-
-
- 9707
- 1
- 0
- 0
- 0
-
-
- 9708
- 1
- 0
- 0
- 0
-
-
- 9709
- 1
- 0
- 0
- 0
-
-
- 9710
- 1
- 0
- 0
- 0
-
-
- 9711
- 1
- 0
- 0
- 0
-
-
- 9712
- 1
- 0
- 0
- 0
-
-
- 9713
- 1
- 0
- 0
- 0
-
-
- 9714
- 1
- 0
- 0
- 0
-
-
- 9715
- 10
- 0
- 0
- 0
-
-
- 9716
- 1
- 0
- 0
- 0
-
-
- 9717
- 1
- 0
- 0
- 0
-
-
- 9718
- 1
- 0
- 0
- 0
-
-
- 9719
- 1
- 0
- 0
- 0
-
-
- 9720
- 1
- 0
- 0
- 0
-
-
- 9721
- 1
- 0
- 0
- 0
-
-
- 9722
- 1
- 0
- 0
- 0
-
-
- 9723
- 1
- 0
- 0
- 0
-
-
- 9724
- 1
- 0
- 0
- 0
-
-
- 9725
- 1
- 0
- 0
- 0
-
-
- 9726
- 1
- 0
- 0
- 0
-
-
- 9727
- 1
- 0
- 0
- 0
-
-
- 9728
- 1
- 0
- 0
- 0
-
-
- 9729
- 20
- 0
- 0
- 0
-
-
- 9730
- 20
- 0
- 0
- 0
-
-
- 9731
- 3000
- 0
- 0
- 0
-
-
- 9732
- 3000
- 0
- 0
- 0
-
-
- 9733
- 3000
- 0
- 0
- 0
-
-
- 9734
- 3000
- 0
- 0
- 0
-
-
- 9735
- 12
- 0
- 0
- 0
-
-
- 9736
- 12
- 0
- 0
- 0
-
-
- 9737
- 12
- 0
- 0
- 0
-
-
- 9738
- 12
- 0
- 0
- 0
-
-
- 9739
- 215
- 0
- 0
- 0
-
-
- 9740
- 215
- 0
- 0
- 0
-
-
- 9741
- 160
- 0
- 0
- 0
-
-
- 9742
- 160
- 0
- 0
- 0
-
-
- 9743
- 105
- 0
- 0
- 0
-
-
- 9744
- 105
- 0
- 0
- 0
-
-
- 9745
- 52
- 0
- 0
- 0
-
-
- 9746
- 52
- 0
- 0
- 0
-
-
- 9747
- 99000
- 0
- 0
- 0
-
-
- 9748
- 99000
- 0
- 0
- 0
-
-
- 9749
- 1
- 0
- 0
- 0
-
-
- 9750
- 99000
- 0
- 0
- 0
-
-
- 9751
- 99000
- 0
- 0
- 0
-
-
- 9752
- 1
- 0
- 0
- 0
-
-
- 9753
- 99000
- 0
- 0
- 0
-
-
- 9754
- 99000
- 0
- 0
- 0
-
-
- 9755
- 1
- 0
- 0
- 0
-
-
- 9756
- 99000
- 0
- 0
- 0
-
-
- 9757
- 99000
- 0
- 0
- 0
-
-
- 9758
- 1
- 0
- 0
- 0
-
-
- 9759
- 99000
- 0
- 0
- 0
-
-
- 9760
- 99000
- 0
- 0
- 0
-
-
- 9761
- 1
- 0
- 0
- 0
-
-
- 9762
- 99000
- 0
- 0
- 0
-
-
- 9763
- 99000
- 0
- 0
- 0
-
-
- 9764
- 1
- 0
- 0
- 0
-
-
- 9765
- 99000
- 0
- 0
- 0
-
-
- 9766
- 99000
- 0
- 0
- 0
-
-
- 9767
- 1
- 0
- 0
- 0
-
-
- 9768
- 99000
- 0
- 0
- 0
-
-
- 9769
- 99000
- 0
- 0
- 0
-
-
- 9770
- 1
- 0
- 0
- 0
-
-
- 9771
- 99000
- 0
- 0
- 0
-
-
- 9772
- 99000
- 0
- 0
- 0
-
-
- 9773
- 1
- 0
- 0
- 0
-
-
- 9774
- 99000
- 0
- 0
- 0
-
-
- 9775
- 99000
- 0
- 0
- 0
-
-
- 9776
- 1
- 0
- 0
- 0
-
-
- 9777
- 99000
- 0
- 0
- 0
-
-
- 9778
- 99000
- 0
- 0
- 0
-
-
- 9779
- 1
- 0
- 0
- 0
-
-
- 9780
- 99000
- 0
- 0
- 0
-
-
- 9781
- 99000
- 0
- 0
- 0
-
-
- 9782
- 1
- 0
- 0
- 0
-
-
- 9783
- 99000
- 0
- 0
- 0
-
-
- 9784
- 99000
- 0
- 0
- 0
-
-
- 9785
- 1
- 0
- 0
- 0
-
-
- 9786
- 99000
- 0
- 0
- 0
-
-
- 9787
- 99000
- 0
- 0
- 0
-
-
- 9788
- 1
- 0
- 0
- 0
-
-
- 9789
- 99000
- 0
- 0
- 0
-
-
- 9790
- 99000
- 0
- 0
- 0
-
-
- 9791
- 1
- 0
- 0
- 0
-
-
- 9792
- 99000
- 0
- 0
- 0
-
-
- 9793
- 99000
- 0
- 0
- 0
-
-
- 9794
- 1
- 0
- 0
- 0
-
-
- 9795
- 99000
- 0
- 0
- 0
-
-
- 9796
- 99000
- 0
- 0
- 0
-
-
- 9797
- 1
- 0
- 0
- 0
-
-
- 9798
- 99000
- 0
- 0
- 0
-
-
- 9799
- 99000
- 0
- 0
- 0
-
-
- 9800
- 1
- 0
- 0
- 0
-
-
- 9801
- 99000
- 0
- 0
- 0
-
-
- 9802
- 99000
- 0
- 0
- 0
-
-
- 9803
- 1
- 0
- 0
- 0
-
-
- 9804
- 99000
- 0
- 0
- 0
-
-
- 9805
- 99000
- 0
- 0
- 0
-
-
- 9806
- 1
- 0
- 0
- 0
-
-
- 9807
- 99000
- 0
- 0
- 0
-
-
- 9808
- 99000
- 0
- 0
- 0
-
-
- 9809
- 1
- 0
- 0
- 0
-
-
- 9810
- 99000
- 0
- 0
- 0
-
-
- 9811
- 99000
- 0
- 0
- 0
-
-
- 9812
- 1
- 0
- 0
- 0
-
-
- 9813
- 99000
- 0
- 0
- 0
-
-
- 9814
- 1
- 0
- 0
- 0
-
-
- 9815
- 1
- 0
- 0
- 0
-
-
- 9816
- 1
- 0
- 0
- 0
-
-
- 9817
- 1
- 0
- 0
- 0
-
-
- 9818
- 1
- 0
- 0
- 0
-
-
- 9819
- 1
- 0
- 0
- 0
-
-
- 9820
- 1
- 0
- 0
- 0
-
-
- 9821
- 1
- 0
- 0
- 0
-
-
- 9822
- 1
- 0
- 0
- 0
-
-
- 9823
- 1
- 0
- 0
- 0
-
-
- 9824
- 1
- 0
- 0
- 0
-
-
- 9825
- 1
- 0
- 0
- 0
-
-
- 9826
- 1
- 0
- 0
- 0
-
-
- 9827
- 1
- 0
- 0
- 0
-
-
- 9828
- 1
- 0
- 0
- 0
-
-
- 9829
- 1
- 0
- 0
- 0
-
-
- 9830
- 1
- 0
- 0
- 0
-
-
- 9831
- 1
- 0
- 0
- 0
-
-
- 9832
- 1
- 0
- 0
- 0
-
-
- 9833
- 1
- 0
- 0
- 0
-
-
- 9834
- 1
- 0
- 0
- 0
-
-
- 9835
- 1
- 0
- 0
- 0
-
-
- 9836
- 1
- 0
- 0
- 0
-
-
- 9837
- 1
- 0
- 0
- 0
-
-
- 9838
- 1
- 0
- 0
- 0
-
-
- 9839
- 1
- 0
- 0
- 0
-
-
- 9840
- 1
- 0
- 0
- 0
-
-
- 9841
- 1
- 0
- 0
- 0
-
-
- 9842
- 50000
- 0
- 0
- 0
-
-
- 9843
- 10
- 0
- 0
- 0
-
-
- 9844
- 10
- 0
- 0
- 0
-
-
- 9845
- 10
- 0
- 0
- 0
-
-
- 9846
- 10
- 0
- 0
- 0
-
-
- 9847
- 10
- 0
- 0
- 0
-
-
- 9848
- 10
- 0
- 0
- 0
-
-
- 9849
- 10
- 0
- 0
- 0
-
-
- 9850
- 10
- 0
- 0
- 0
-
-
- 9851
- 10
- 0
- 0
- 0
-
-
- 9852
- 10
- 0
- 0
- 0
-
-
- 9853
- 10
- 0
- 0
- 0
-
-
- 9854
- 10
- 0
- 0
- 0
-
-
- 9855
- 10
- 0
- 0
- 0
-
-
- 9856
- 10
- 0
- 0
- 0
-
-
- 9857
- 10
- 0
- 0
- 0
-
-
- 9858
- 10
- 0
- 0
- 0
-
-
- 9859
- 10
- 0
- 0
- 0
-
-
- 9860
- 10
- 0
- 0
- 0
-
-
- 9861
- 10
- 0
- 0
- 0
-
-
- 9862
- 10
- 0
- 0
- 0
-
-
- 9863
- 10
- 0
- 0
- 0
-
-
- 9864
- 10
- 0
- 0
- 0
-
-
- 9865
- 10
- 0
- 0
- 0
-
-
- 9866
- 10
- 0
- 0
- 0
-
-
- 9867
- 10
- 0
- 0
- 0
-
-
- 9868
- 10
- 0
- 0
- 0
-
-
- 9869
- 10
- 0
- 0
- 0
-
-
- 9870
- 10
- 0
- 0
- 0
-
-
- 9871
- 10
- 0
- 0
- 0
-
-
- 9872
- 10
- 0
- 0
- 0
-
-
- 9873
- 10
- 0
- 0
- 0
-
-
- 9874
- 10
- 0
- 0
- 0
-
-
- 9875
- 10
- 0
- 0
- 0
-
-
- 9876
- 10
- 0
- 0
- 0
-
-
- 9877
- 10
- 0
- 0
- 0
-
-
- 9878
- 10
- 0
- 0
- 0
-
-
- 9879
- 10
- 0
- 0
- 0
-
-
- 9880
- 10
- 0
- 0
- 0
-
-
- 9881
- 10
- 0
- 0
- 0
-
-
- 9882
- 10
- 0
- 0
- 0
-
-
- 9883
- 10
- 0
- 0
- 0
-
-
- 9884
- 10
- 0
- 0
- 0
-
-
- 9885
- 10
- 0
- 0
- 0
-
-
- 9886
- 10
- 0
- 0
- 0
-
-
- 9887
- 10
- 0
- 0
- 0
-
-
- 9888
- 10
- 0
- 0
- 0
-
-
- 9889
- 10
- 0
- 0
- 0
-
-
- 9890
- 10
- 0
- 0
- 0
-
-
- 9891
- 10
- 0
- 0
- 0
-
-
- 9892
- 10
- 0
- 0
- 0
-
-
- 9893
- 1
- 0
- 0
- 0
-
-
- 9894
- 1
- 0
- 0
- 0
-
-
- 9895
- 1
- 0
- 0
- 0
-
-
- 9896
- 1
- 0
- 0
- 0
-
-
- 9897
- 1
- 0
- 0
- 0
-
-
- 9898
- 1
- 0
- 0
- 0
-
-
- 9899
- 1
- 0
- 0
- 0
-
-
- 9900
- 1
- 0
- 0
- 0
-
-
- 9901
- 5
- 0
- 0
- 0
-
-
- 9902
- 5
- 0
- 0
- 0
-
-
- 9903
- 20
- 0
- 0
- 0
-
-
- 9904
- 1
- 0
- 0
- 0
-
-
- 9905
- 1
- 0
- 0
- 0
-
-
- 9906
- 1
- 0
- 0
- 0
-
-
- 9907
- 1
- 0
- 0
- 0
-
-
- 9908
- 1
- 0
- 0
- 0
-
-
- 9909
- 1
- 0
- 0
- 0
-
-
- 9910
- 1
- 0
- 0
- 0
-
-
- 9911
- 1
- 0
- 0
- 0
-
-
- 9912
- 1
- 0
- 0
- 0
-
-
- 9913
- 1
- 0
- 0
- 0
-
-
- 9914
- 1
- 0
- 0
- 0
-
-
- 9915
- 1
- 0
- 0
- 0
-
-
- 9916
- 1
- 0
- 0
- 0
-
-
- 9917
- 1
- 0
- 0
- 0
-
-
- 9918
- 1
- 0
- 0
- 0
-
-
- 9919
- 1
- 0
- 0
- 0
-
-
- 9920
- 1
- 0
- 0
- 0
-
-
- 9921
- 1
- 0
- 0
- 0
-
-
- 9922
- 1
- 0
- 0
- 0
-
-
- 9923
- 1
- 0
- 0
- 0
-
-
- 9924
- 1
- 0
- 0
- 0
-
-
- 9925
- 1
- 0
- 0
- 0
-
-
- 9926
- 3
- 0
- 0
- 0
-
-
- 9927
- 3
- 0
- 0
- 0
-
-
- 9928
- 3
- 0
- 0
- 0
-
-
- 9929
- 3
- 0
- 0
- 0
-
-
- 9930
- 3
- 0
- 0
- 0
-
-
- 9931
- 3
- 0
- 0
- 0
-
-
- 9932
- 1
- 0
- 0
- 0
-
-
- 9933
- 1
- 0
- 0
- 0
-
-
- 9934
- 1
- 0
- 0
- 0
-
-
- 9935
- 1
- 0
- 0
- 0
-
-
- 9936
- 1
- 0
- 0
- 0
-
-
- 9937
- 1
- 0
- 0
- 0
-
-
- 9938
- 1
- 0
- 0
- 0
-
-
- 9939
- 1
- 0
- 0
- 0
-
-
- 9940
- 1
- 0
- 0
- 0
-
-
- 9941
- 1
- 0
- 0
- 0
-
-
- 9942
- 1
- 0
- 0
- 0
-
-
- 9943
- 1
- 0
- 0
- 0
-
-
- 9944
- 1
- 0
- 0
- 0
-
-
- 9945
- 1
- 0
- 0
- 0
-
-
- 9946
- 1
- 0
- 0
- 0
-
-
- 9947
- 1
- 0
- 0
- 0
-
-
- 9948
- 99000
- 0
- 0
- 0
-
-
- 9949
- 99000
- 0
- 0
- 0
-
-
- 9950
- 1
- 0
- 0
- 0
-
-
- 9951
- 1
- 0
- 0
- 0
-
-
- 9952
- 1
- 0
- 0
- 0
-
-
- 9953
- 1
- 0
- 0
- 0
-
-
- 9954
- 1
- 0
- 0
- 0
-
-
- 9955
- 1
- 0
- 0
- 0
-
-
- 9956
- 1
- 0
- 0
- 0
-
-
- 9957
- 1
- 0
- 0
- 0
-
-
- 9958
- 1
- 0
- 0
- 0
-
-
- 9959
- 1
- 0
- 0
- 0
-
-
- 9960
- 1
- 0
- 0
- 0
-
-
- 9961
- 1
- 0
- 0
- 0
-
-
- 9962
- 1
- 0
- 0
- 0
-
-
- 9963
- 1
- 0
- 0
- 0
-
-
- 9964
- 1
- 0
- 0
- 0
-
-
- 9965
- 1
- 0
- 0
- 0
-
-
- 9966
- 1
- 0
- 0
- 0
-
-
- 9967
- 1
- 0
- 0
- 0
-
-
- 9968
- 1
- 0
- 0
- 0
-
-
- 9969
- 1
- 0
- 0
- 0
-
-
- 9970
- 1
- 0
- 0
- 0
-
-
- 9971
- 1
- 0
- 0
- 0
-
-
- 9972
- 1
- 0
- 0
- 0
-
-
- 9973
- 1
- 0
- 0
- 0
-
-
- 9974
- 1
- 0
- 0
- 0
-
-
- 9975
- 1
- 0
- 0
- 0
-
-
- 9976
- 1
- 0
- 0
- 0
-
-
- 9977
- 1
- 0
- 0
- 0
-
-
- 9978
- 17
- 0
- 0
- 0
-
-
- 9979
- 17
- 0
- 0
- 0
-
-
- 9980
- 17
- 0
- 0
- 0
-
-
- 9981
- 17
- 0
- 0
- 0
-
-
- 9982
- 1
- 0
- 0
- 0
-
-
- 9983
- 1
- 0
- 0
- 0
-
-
- 9984
- 81
- 0
- 0
- 0
-
-
- 9985
- 81
- 0
- 0
- 0
-
-
- 9986
- 25
- 0
- 0
- 0
-
-
- 9987
- 25
- 0
- 0
- 0
-
-
- 9988
- 25
- 0
- 0
- 0
-
-
- 9989
- 25
- 0
- 0
- 0
-
-
- 9990
- 1
- 0
- 0
- 0
-
-
- 9991
- 1
- 0
- 0
- 0
-
-
- 9992
- 89
- 0
- 0
- 0
-
-
- 9993
- 89
- 0
- 0
- 0
-
-
- 9994
- 3
- 0
- 0
- 0
-
-
- 9995
- 3
- 0
- 0
- 0
-
-
- 9996
- 8
- 0
- 0
- 0
-
-
- 9997
- 8
- 0
- 0
- 0
-
-
- 9998
- 15
- 0
- 0
- 0
-
-
- 9999
- 15
- 0
- 0
- 0
-
-
- 10000
- 12
- 0
- 0
- 0
-
-
- 10001
- 12
- 0
- 0
- 0
-
-
- 10002
- 9
- 0
- 0
- 0
-
-
- 10003
- 9
- 0
- 0
- 0
-
-
- 10004
- 6
- 0
- 0
- 0
-
-
- 10005
- 6
- 0
- 0
- 0
-
-
- 10006
- 6
- 0
- 0
- 0
-
-
- 10007
- 6
- 0
- 0
- 0
-
-
- 10008
- 38
- 0
- 0
- 0
-
-
- 10009
- 38
- 0
- 0
- 0
-
-
- 10010
- 24
- 0
- 0
- 0
-
-
- 10011
- 24
- 0
- 0
- 0
-
-
- 10012
- 1
- 0
- 0
- 0
-
-
- 10013
- 1
- 0
- 0
- 0
-
-
- 10014
- 70
- 0
- 0
- 0
-
-
- 10015
- 70
- 0
- 0
- 0
-
-
- 10016
- 50
- 0
- 0
- 0
-
-
- 10017
- 50
- 0
- 0
- 0
-
-
- 10018
- 30
- 0
- 0
- 0
-
-
- 10019
- 30
- 0
- 0
- 0
-
-
- 10020
- 18
- 0
- 0
- 0
-
-
- 10021
- 18
- 0
- 0
- 0
-
-
- 10022
- 1
- 0
- 0
- 0
-
-
- 10023
- 1
- 0
- 0
- 0
-
-
- 10024
- 1
- 0
- 0
- 0
-
-
- 10025
- 720
- 0
- 0
- 0
-
-
- 10026
- 720
- 0
- 0
- 0
-
-
- 10027
- 600
- 0
- 0
- 0
-
-
- 10028
- 600
- 0
- 0
- 0
-
-
- 10029
- 1
- 0
- 0
- 0
-
-
- 10030
- 1
- 0
- 0
- 0
-
-
- 10031
- 18
- 0
- 0
- 0
-
-
- 10032
- 18
- 0
- 0
- 0
-
-
- 10033
- 140
- 0
- 0
- 0
-
-
- 10034
- 160
- 0
- 0
- 0
-
-
- 10035
- 200
- 0
- 0
- 0
-
-
- 10036
- 200
- 0
- 0
- 0
-
-
- 10037
- 200
- 0
- 0
- 0
-
-
- 10038
- 200
- 0
- 0
- 0
-
-
- 10039
- 1000
- 0
- 0
- 0
-
-
- 10040
- 1000
- 0
- 0
- 0
-
-
- 10041
- 100
- 0
- 0
- 0
-
-
- 10042
- 100
- 0
- 0
- 0
-
-
- 10043
- 100
- 0
- 0
- 0
-
-
- 10044
- 100
- 0
- 0
- 0
-
-
- 10045
- 500
- 0
- 0
- 0
-
-
- 10046
- 500
- 0
- 0
- 0
-
-
- 10047
- 150
- 0
- 0
- 0
-
-
- 10048
- 150
- 0
- 0
- 0
-
-
- 10049
- 150
- 0
- 0
- 0
-
-
- 10050
- 150
- 0
- 0
- 0
-
-
- 10051
- 750
- 0
- 0
- 0
-
-
- 10052
- 750
- 0
- 0
- 0
-
-
- 10053
- 20
- 0
- 0
- 0
-
-
- 10054
- 20
- 0
- 0
- 0
-
-
- 10055
- 20
- 0
- 0
- 0
-
-
- 10056
- 20
- 0
- 0
- 0
-
-
- 10057
- 20
- 0
- 0
- 0
-
-
- 10058
- 20
- 0
- 0
- 0
-
-
- 10059
- 20
- 0
- 0
- 0
-
-
- 10060
- 20
- 0
- 0
- 0
-
-
- 10061
- 20
- 0
- 0
- 0
-
-
- 10062
- 20
- 0
- 0
- 0
-
-
- 10063
- 20
- 0
- 0
- 0
-
-
- 10064
- 20
- 0
- 0
- 0
-
-
- 10065
- 20
- 0
- 0
- 0
-
-
- 10066
- 20
- 0
- 0
- 0
-
-
- 10067
- 20
- 0
- 0
- 0
-
-
- 10068
- 20
- 0
- 0
- 0
-
-
- 10069
- 400
- 0
- 0
- 0
-
-
- 10070
- 400
- 0
- 0
- 0
-
-
- 10071
- 800
- 0
- 0
- 0
-
-
- 10072
- 800
- 0
- 0
- 0
-
-
- 10073
- 400
- 0
- 0
- 0
-
-
- 10074
- 800
- 0
- 0
- 0
-
-
- 10075
- 600
- 0
- 0
- 0
-
-
- 10076
- 600
- 0
- 0
- 0
-
-
- 10077
- 160
- 0
- 0
- 0
-
-
- 10078
- 160
- 0
- 0
- 0
-
-
- 10079
- 2500
- 0
- 0
- 0
-
-
- 10080
- 2500
- 0
- 0
- 0
-
-
- 10081
- 3000
- 0
- 0
- 0
-
-
- 10082
- 3000
- 0
- 0
- 0
-
-
- 10083
- 3600
- 0
- 0
- 0
-
-
- 10084
- 3600
- 0
- 0
- 0
-
-
- 10085
- 4320
- 0
- 0
- 0
-
-
- 10086
- 4320
- 0
- 0
- 0
-
-
- 10087
- 20
- 0
- 0
- 0
-
-
- 10088
- 10
- 0
- 0
- 0
-
-
- 10089
- 16
- 0
- 0
- 0
-
-
- 10090
- 13
- 0
- 0
- 0
-
-
- 10091
- 15
- 0
- 0
- 0
-
-
- 10092
- 40
- 0
- 0
- 0
-
-
- 10093
- 72
- 0
- 0
- 0
-
-
- 10094
- 72
- 0
- 0
- 0
-
-
- 10095
- 96
- 0
- 0
- 0
-
-
- 10096
- 96
- 0
- 0
- 0
-
-
- 10097
- 108
- 0
- 0
- 0
-
-
- 10098
- 108
- 0
- 0
- 0
-
-
- 10099
- 144
- 0
- 0
- 0
-
-
- 10100
- 144
- 0
- 0
- 0
-
-
- 10101
- 144
- 0
- 0
- 0
-
-
- 10102
- 144
- 0
- 0
- 0
-
-
- 10103
- 192
- 0
- 0
- 0
-
-
- 10104
- 192
- 0
- 0
- 0
-
-
- 10105
- 90
- 0
- 0
- 0
-
-
- 10106
- 90
- 0
- 0
- 0
-
-
- 10107
- 150
- 0
- 0
- 0
-
-
- 10108
- 150
- 0
- 0
- 0
-
-
- 10109
- 160
- 0
- 0
- 0
-
-
- 10110
- 160
- 0
- 0
- 0
-
-
- 10111
- 160
- 0
- 0
- 0
-
-
- 10112
- 160
- 0
- 0
- 0
-
-
- 10113
- 43
- 0
- 0
- 0
-
-
- 10114
- 43
- 0
- 0
- 0
-
-
- 10115
- 210
- 0
- 0
- 0
-
-
- 10116
- 210
- 0
- 0
- 0
-
-
- 10117
- 12
- 0
- 0
- 0
-
-
- 10118
- 12
- 0
- 0
- 0
-
-
- 10119
- 16
- 0
- 0
- 0
-
-
- 10120
- 16
- 0
- 0
- 0
-
-
- 10121
- 14
- 0
- 0
- 0
-
-
- 10122
- 14
- 0
- 0
- 0
-
-
- 10123
- 20
- 0
- 0
- 0
-
-
- 10124
- 20
- 0
- 0
- 0
-
-
- 10125
- 150
- 0
- 0
- 0
-
-
- 10126
- 150
- 0
- 0
- 0
-
-
- 10127
- 270
- 0
- 0
- 0
-
-
- 10128
- 270
- 0
- 0
- 0
-
-
- 10129
- 36
- 0
- 0
- 0
-
-
- 10130
- 36
- 0
- 0
- 0
-
-
- 10131
- 1
- 0
- 0
- 0
-
-
- 10132
- 30
- 0
- 0
- 0
-
-
- 10133
- 30
- 0
- 0
- 0
-
-
- 10134
- 30
- 0
- 0
- 0
-
-
- 10135
- 30
- 0
- 0
- 0
-
-
- 10136
- 120
- 0
- 0
- 0
-
-
- 10137
- 120
- 0
- 0
- 0
-
-
- 10138
- 120
- 0
- 0
- 0
-
-
- 10139
- 120
- 0
- 0
- 0
-
-
- 10140
- 1
- 0
- 0
- 0
-
-
- 10141
- 1
- 0
- 0
- 0
-
-
- 10142
- 3
- 0
- 0
- 0
-
-
- 10143
- 1
- 0
- 0
- 0
-
-
- 10144
- 1
- 0
- 0
- 0
-
-
- 10145
- 1
- 0
- 0
- 0
-
-
- 10146
- 100
- 0
- 0
- 0
-
-
- 10147
- 150
- 0
- 0
- 0
-
-
- 10148
- 200
- 0
- 0
- 0
-
-
- 10149
- 50
- 0
- 0
- 0
-
-
- 10150
- 4
- 0
- 0
- 0
-
-
- 10151
- 4
- 0
- 0
- 0
-
-
- 10152
- 1
- 0
- 0
- 0
-
-
- 10153
- 1
- 0
- 0
- 0
-
-
- 10154
- 1
- 0
- 0
- 0
-
-
- 10155
- 1
- 0
- 0
- 0
-
-
- 10156
- 1300
- 0
- 0
- 0
-
-
- 10157
- 1300
- 0
- 0
- 0
-
-
- 10158
- 18
- 0
- 0
- 0
-
-
- 10159
- 31
- 0
- 0
- 0
-
-
- 10160
- 100
- 0
- 0
- 0
-
-
- 10161
- 150
- 0
- 0
- 0
-
-
- 10162
- 200
- 0
- 0
- 0
-
-
- 10163
- 50
- 0
- 0
- 0
-
-
- 10164
- 1
- 0
- 0
- 0
-
-
- 10165
- 1
- 0
- 0
- 0
-
-
- 10166
- 1
- 0
- 0
- 0
-
-
- 10167
- 1
- 0
- 0
- 0
-
-
- 10168
- 1
- 0
- 0
- 0
-
-
- 10169
- 1
- 0
- 0
- 0
-
-
- 10170
- 1
- 0
- 0
- 0
-
-
- 10171
- 1
- 0
- 0
- 0
-
-
- 10172
- 1
- 0
- 0
- 0
-
-
- 10173
- 1
- 0
- 0
- 0
-
-
- 10174
- 1
- 0
- 0
- 0
-
-
- 10175
- 1
- 0
- 0
- 0
-
-
- 10176
- 1
- 0
- 0
- 0
-
-
- 10177
- 1
- 0
- 0
- 0
-
-
- 10178
- 1
- 0
- 0
- 0
-
-
- 10179
- 1
- 0
- 0
- 0
-
-
- 10180
- 1
- 0
- 0
- 0
-
-
- 10181
- 50
- 0
- 0
- 0
-
-
- 10182
- 1
- 0
- 0
- 0
-
-
- 10183
- 50
- 0
- 0
- 0
-
-
- 10184
- 1
- 0
- 0
- 0
-
-
- 10185
- 50
- 0
- 0
- 0
-
-
- 10186
- 1
- 0
- 0
- 0
-
-
- 10187
- 50
- 0
- 0
- 0
-
-
- 10188
- 1
- 0
- 0
- 0
-
-
- 10189
- 50
- 0
- 0
- 0
-
-
- 10190
- 1
- 0
- 0
- 0
-
-
- 10191
- 50
- 0
- 0
- 0
-
-
- 10192
- 1
- 0
- 0
- 0
-
-
- 10193
- 50
- 0
- 0
- 0
-
-
- 10194
- 1
- 0
- 0
- 0
-
-
- 10195
- 50
- 0
- 0
- 0
-
-
- 10196
- 1
- 0
- 0
- 0
-
-
- 10197
- 50
- 0
- 0
- 0
-
-
- 10198
- 1
- 0
- 0
- 0
-
-
- 10199
- 50
- 0
- 0
- 0
-
-
- 10200
- 1
- 0
- 0
- 0
-
-
- 10201
- 50
- 0
- 0
- 0
-
-
- 10202
- 1
- 0
- 0
- 0
-
-
- 10203
- 50
- 0
- 0
- 0
-
-
- 10204
- 1
- 0
- 0
- 0
-
-
- 10205
- 50
- 0
- 0
- 0
-
-
- 10206
- 1
- 0
- 0
- 0
-
-
- 10207
- 50
- 0
- 0
- 0
-
-
- 10208
- 1
- 0
- 0
- 0
-
-
- 10209
- 50
- 0
- 0
- 0
-
-
- 10210
- 1
- 0
- 0
- 0
-
-
- 10211
- 50
- 0
- 0
- 0
-
-
- 10212
- 1
- 0
- 0
- 0
-
-
- 10213
- 50
- 0
- 0
- 0
-
-
- 10214
- 1
- 0
- 0
- 0
-
-
- 10215
- 50
- 0
- 0
- 0
-
-
- 10216
- 1
- 0
- 0
- 0
-
-
- 10217
- 50
- 0
- 0
- 0
-
-
- 10218
- 1
- 0
- 0
- 0
-
-
- 10219
- 50
- 0
- 0
- 0
-
-
- 10220
- 1
- 0
- 0
- 0
-
-
- 10221
- 50
- 0
- 0
- 0
-
-
- 10222
- 1
- 0
- 0
- 0
-
-
- 10223
- 50
- 0
- 0
- 0
-
-
- 10224
- 1
- 0
- 0
- 0
-
-
- 10225
- 50
- 0
- 0
- 0
-
-
- 10226
- 1
- 0
- 0
- 0
-
-
- 10227
- 50
- 0
- 0
- 0
-
-
- 10228
- 1
- 0
- 0
- 0
-
-
- 10229
- 50
- 0
- 0
- 0
-
-
- 10230
- 1
- 0
- 0
- 0
-
-
- 10231
- 50
- 0
- 0
- 0
-
-
- 10232
- 1
- 0
- 0
- 0
-
-
- 10233
- 50
- 0
- 0
- 0
-
-
- 10234
- 1
- 0
- 0
- 0
-
-
- 10235
- 50
- 0
- 0
- 0
-
-
- 10236
- 1
- 0
- 0
- 0
-
-
- 10237
- 50
- 0
- 0
- 0
-
-
- 10238
- 1
- 0
- 0
- 0
-
-
- 10239
- 50
- 0
- 0
- 0
-
-
- 10240
- 1
- 0
- 0
- 0
-
-
- 10241
- 50
- 0
- 0
- 0
-
-
- 10242
- 1
- 0
- 0
- 0
-
-
- 10243
- 50
- 0
- 0
- 0
-
-
- 10244
- 1
- 0
- 0
- 0
-
-
- 10245
- 50
- 0
- 0
- 0
-
-
- 10246
- 1
- 0
- 0
- 0
-
-
- 10247
- 50
- 0
- 0
- 0
-
-
- 10248
- 1
- 0
- 0
- 0
-
-
- 10249
- 50
- 0
- 0
- 0
-
-
- 10250
- 1
- 0
- 0
- 0
-
-
- 10251
- 50
- 0
- 0
- 0
-
-
- 10252
- 1
- 0
- 0
- 0
-
-
- 10253
- 50
- 0
- 0
- 0
-
-
- 10254
- 1
- 0
- 0
- 0
-
-
- 10255
- 50
- 0
- 0
- 0
-
-
- 10256
- 1
- 0
- 0
- 0
-
-
- 10257
- 50
- 0
- 0
- 0
-
-
- 10258
- 1
- 0
- 0
- 0
-
-
- 10259
- 50
- 0
- 0
- 0
-
-
- 10260
- 1
- 0
- 0
- 0
-
-
- 10261
- 50
- 0
- 0
- 0
-
-
- 10262
- 1
- 0
- 0
- 0
-
-
- 10263
- 50
- 0
- 0
- 0
-
-
- 10264
- 1
- 0
- 0
- 0
-
-
- 10265
- 50
- 0
- 0
- 0
-
-
- 10266
- 1
- 0
- 0
- 0
-
-
- 10267
- 50
- 0
- 0
- 0
-
-
- 10268
- 1
- 0
- 0
- 0
-
-
- 10269
- 50
- 0
- 0
- 0
-
-
- 10270
- 1
- 0
- 0
- 0
-
-
- 10271
- 50
- 0
- 0
- 0
-
-
- 10272
- 1
- 0
- 0
- 0
-
-
- 10273
- 50
- 0
- 0
- 0
-
-
- 10274
- 1
- 0
- 0
- 0
-
-
- 10275
- 50
- 0
- 0
- 0
-
-
- 10276
- 1
- 0
- 0
- 0
-
-
- 10277
- 50
- 0
- 0
- 0
-
-
- 10278
- 1
- 0
- 0
- 0
-
-
- 10279
- 50
- 0
- 0
- 0
-
-
- 10280
- 300
- 0
- 0
- 0
-
-
- 10281
- 300
- 0
- 0
- 0
-
-
- 10282
- 1800
- 0
- 0
- 0
-
-
- 10283
- 1800
- 0
- 0
- 0
-
-
- 10284
- 2500
- 0
- 0
- 0
-
-
- 10285
- 2500
- 0
- 0
- 0
-
-
- 10286
- 35200
- 0
- 0
- 0
-
-
- 10287
- 35200
- 0
- 0
- 0
-
-
- 10288
- 35200
- 0
- 0
- 0
-
-
- 10289
- 35200
- 0
- 0
- 0
-
-
- 10290
- 35200
- 0
- 0
- 0
-
-
- 10291
- 35200
- 0
- 0
- 0
-
-
- 10292
- 35200
- 0
- 0
- 0
-
-
- 10293
- 35200
- 0
- 0
- 0
-
-
- 10294
- 35200
- 0
- 0
- 0
-
-
- 10295
- 35200
- 0
- 0
- 0
-
-
- 10296
- 3520
- 0
- 0
- 0
-
-
- 10297
- 3520
- 0
- 0
- 0
-
-
- 10298
- 3520
- 0
- 0
- 0
-
-
- 10299
- 3520
- 0
- 0
- 0
-
-
- 10300
- 3520
- 0
- 0
- 0
-
-
- 10301
- 3520
- 0
- 0
- 0
-
-
- 10302
- 3520
- 0
- 0
- 0
-
-
- 10303
- 3520
- 0
- 0
- 0
-
-
- 10304
- 3520
- 0
- 0
- 0
-
-
- 10305
- 3520
- 0
- 0
- 0
-
-
- 10306
- 1056
- 0
- 0
- 0
-
-
- 10307
- 1056
- 0
- 0
- 0
-
-
- 10308
- 1056
- 0
- 0
- 0
-
-
- 10309
- 1056
- 0
- 0
- 0
-
-
- 10310
- 1056
- 0
- 0
- 0
-
-
- 10311
- 1056
- 0
- 0
- 0
-
-
- 10312
- 1056
- 0
- 0
- 0
-
-
- 10313
- 1056
- 0
- 0
- 0
-
-
- 10314
- 1056
- 0
- 0
- 0
-
-
- 10315
- 1056
- 0
- 0
- 0
-
-
- 10316
- 3
- 0
- 0
- 0
-
-
- 10317
- 3
- 0
- 0
- 0
-
-
- 10318
- 3
- 0
- 0
- 0
-
-
- 10319
- 3
- 0
- 0
- 0
-
-
- 10320
- 3
- 0
- 0
- 0
-
-
- 10321
- 3
- 0
- 0
- 0
-
-
- 10322
- 3
- 0
- 0
- 0
-
-
- 10323
- 3
- 0
- 0
- 0
-
-
- 10324
- 3
- 0
- 0
- 0
-
-
- 10325
- 3
- 0
- 0
- 0
-
-
- 10326
- 15
- 0
- 0
- 0
-
-
- 10327
- 15
- 0
- 0
- 0
-
-
- 10328
- 1
- 0
- 0
- 0
-
-
- 10329
- 1
- 0
- 0
- 0
-
-
- 10330
- 45000
- 0
- 0
- 0
-
-
- 10331
- 45000
- 0
- 0
- 0
-
-
- 10332
- 40000
- 0
- 0
- 0
-
-
- 10333
- 40000
- 0
- 0
- 0
-
-
- 10334
- 10000
- 0
- 0
- 0
-
-
- 10335
- 10000
- 0
- 0
- 0
-
-
- 10336
- 15000
- 0
- 0
- 0
-
-
- 10337
- 15000
- 0
- 0
- 0
-
-
- 10338
- 45000
- 0
- 0
- 0
-
-
- 10339
- 45000
- 0
- 0
- 0
-
-
- 10340
- 40000
- 0
- 0
- 0
-
-
- 10341
- 40000
- 0
- 0
- 0
-
-
- 10342
- 10000
- 0
- 0
- 0
-
-
- 10343
- 10000
- 0
- 0
- 0
-
-
- 10344
- 20000
- 0
- 0
- 0
-
-
- 10345
- 20000
- 0
- 0
- 0
-
-
- 10346
- 200000
- 0
- 0
- 0
-
-
- 10347
- 200000
- 0
- 0
- 0
-
-
- 10348
- 200000
- 0
- 0
- 0
-
-
- 10349
- 200000
- 0
- 0
- 0
-
-
- 10350
- 90000
- 0
- 0
- 0
-
-
- 10351
- 90000
- 0
- 0
- 0
-
-
- 10352
- 180000
- 0
- 0
- 0
-
-
- 10353
- 180000
- 0
- 0
- 0
-
-
- 10354
- 17625
- 0
- 0
- 0
-
-
- 10355
- 17625
- 0
- 0
- 0
-
-
- 10356
- 17625
- 0
- 0
- 0
-
-
- 10357
- 17625
- 0
- 0
- 0
-
-
- 10358
- 17625
- 0
- 0
- 0
-
-
- 10359
- 17625
- 0
- 0
- 0
-
-
- 10360
- 17625
- 0
- 0
- 0
-
-
- 10361
- 17625
- 0
- 0
- 0
-
-
- 10362
- 17625
- 0
- 0
- 0
-
-
- 10363
- 17625
- 0
- 0
- 0
-
-
- 10364
- 2025
- 0
- 0
- 0
-
-
- 10365
- 2025
- 0
- 0
- 0
-
-
- 10366
- 900
- 0
- 0
- 0
-
-
- 10367
- 900
- 0
- 0
- 0
-
-
- 10368
- 4000
- 0
- 0
- 0
-
-
- 10369
- 4000
- 0
- 0
- 0
-
-
- 10370
- 13000
- 0
- 0
- 0
-
-
- 10371
- 13000
- 0
- 0
- 0
-
-
- 10372
- 6000
- 0
- 0
- 0
-
-
- 10373
- 6000
- 0
- 0
- 0
-
-
- 10374
- 2000
- 0
- 0
- 0
-
-
- 10375
- 2000
- 0
- 0
- 0
-
-
- 10376
- 6000
- 0
- 0
- 0
-
-
- 10377
- 6000
- 0
- 0
- 0
-
-
- 10378
- 13000
- 0
- 0
- 0
-
-
- 10379
- 13000
- 0
- 0
- 0
-
-
- 10380
- 6000
- 0
- 0
- 0
-
-
- 10381
- 6000
- 0
- 0
- 0
-
-
- 10382
- 2000
- 0
- 0
- 0
-
-
- 10383
- 2000
- 0
- 0
- 0
-
-
- 10384
- 4000
- 0
- 0
- 0
-
-
- 10385
- 4000
- 0
- 0
- 0
-
-
- 10386
- 13000
- 0
- 0
- 0
-
-
- 10387
- 13000
- 0
- 0
- 0
-
-
- 10388
- 6000
- 0
- 0
- 0
-
-
- 10389
- 6000
- 0
- 0
- 0
-
-
- 10390
- 2000
- 0
- 0
- 0
-
-
- 10391
- 2000
- 0
- 0
- 0
-
-
- 10392
- 2000
- 0
- 0
- 0
-
-
- 10393
- 2000
- 0
- 0
- 0
-
-
- 10394
- 2000
- 0
- 0
- 0
-
-
- 10395
- 2000
- 0
- 0
- 0
-
-
- 10396
- 2000
- 0
- 0
- 0
-
-
- 10397
- 2000
- 0
- 0
- 0
-
-
- 10398
- 2000
- 0
- 0
- 0
-
-
- 10399
- 2000
- 0
- 0
- 0
-
-
- 10400
- 2000
- 0
- 0
- 0
-
-
- 10401
- 2000
- 0
- 0
- 0
-
-
- 10402
- 2000
- 0
- 0
- 0
-
-
- 10403
- 2000
- 0
- 0
- 0
-
-
- 10404
- 2000
- 0
- 0
- 0
-
-
- 10405
- 2000
- 0
- 0
- 0
-
-
- 10406
- 2000
- 0
- 0
- 0
-
-
- 10407
- 2000
- 0
- 0
- 0
-
-
- 10408
- 2000
- 0
- 0
- 0
-
-
- 10409
- 2000
- 0
- 0
- 0
-
-
- 10410
- 2000
- 0
- 0
- 0
-
-
- 10411
- 2000
- 0
- 0
- 0
-
-
- 10412
- 2000
- 0
- 0
- 0
-
-
- 10413
- 2000
- 0
- 0
- 0
-
-
- 10414
- 2000
- 0
- 0
- 0
-
-
- 10415
- 2000
- 0
- 0
- 0
-
-
- 10416
- 2000
- 0
- 0
- 0
-
-
- 10417
- 2000
- 0
- 0
- 0
-
-
- 10418
- 2000
- 0
- 0
- 0
-
-
- 10419
- 2000
- 0
- 0
- 0
-
-
- 10420
- 2000
- 0
- 0
- 0
-
-
- 10421
- 2000
- 0
- 0
- 0
-
-
- 10422
- 2000
- 0
- 0
- 0
-
-
- 10423
- 2000
- 0
- 0
- 0
-
-
- 10424
- 2000
- 0
- 0
- 0
-
-
- 10425
- 2000
- 0
- 0
- 0
-
-
- 10426
- 2000
- 0
- 0
- 0
-
-
- 10427
- 2000
- 0
- 0
- 0
-
-
- 10428
- 2000
- 0
- 0
- 0
-
-
- 10429
- 2000
- 0
- 0
- 0
-
-
- 10430
- 2000
- 0
- 0
- 0
-
-
- 10431
- 2000
- 0
- 0
- 0
-
-
- 10432
- 2000
- 0
- 0
- 0
-
-
- 10433
- 2000
- 0
- 0
- 0
-
-
- 10434
- 2000
- 0
- 0
- 0
-
-
- 10435
- 2000
- 0
- 0
- 0
-
-
- 10436
- 2000
- 0
- 0
- 0
-
-
- 10437
- 2000
- 0
- 0
- 0
-
-
- 10438
- 2000
- 0
- 0
- 0
-
-
- 10439
- 2000
- 0
- 0
- 0
-
-
- 10440
- 5000
- 0
- 0
- 0
-
-
- 10441
- 5000
- 0
- 0
- 0
-
-
- 10442
- 5000
- 0
- 0
- 0
-
-
- 10443
- 5000
- 0
- 0
- 0
-
-
- 10444
- 5000
- 0
- 0
- 0
-
-
- 10445
- 5000
- 0
- 0
- 0
-
-
- 10446
- 2000
- 0
- 0
- 0
-
-
- 10447
- 2000
- 0
- 0
- 0
-
-
- 10448
- 2000
- 0
- 0
- 0
-
-
- 10449
- 2000
- 0
- 0
- 0
-
-
- 10450
- 2000
- 0
- 0
- 0
-
-
- 10451
- 2000
- 0
- 0
- 0
-
-
- 10452
- 5000
- 0
- 0
- 0
-
-
- 10453
- 5000
- 0
- 0
- 0
-
-
- 10454
- 5000
- 0
- 0
- 0
-
-
- 10455
- 5000
- 0
- 0
- 0
-
-
- 10456
- 5000
- 0
- 0
- 0
-
-
- 10457
- 5000
- 0
- 0
- 0
-
-
- 10458
- 7000
- 0
- 0
- 0
-
-
- 10459
- 7000
- 0
- 0
- 0
-
-
- 10460
- 7000
- 0
- 0
- 0
-
-
- 10461
- 7000
- 0
- 0
- 0
-
-
- 10462
- 7000
- 0
- 0
- 0
-
-
- 10463
- 7000
- 0
- 0
- 0
-
-
- 10464
- 7000
- 0
- 0
- 0
-
-
- 10465
- 7000
- 0
- 0
- 0
-
-
- 10466
- 7000
- 0
- 0
- 0
-
-
- 10467
- 7000
- 0
- 0
- 0
-
-
- 10468
- 7000
- 0
- 0
- 0
-
-
- 10469
- 7000
- 0
- 0
- 0
-
-
- 10470
- 2500
- 0
- 0
- 0
-
-
- 10471
- 2500
- 0
- 0
- 0
-
-
- 10472
- 2500
- 0
- 0
- 0
-
-
- 10473
- 2500
- 0
- 0
- 0
-
-
- 10474
- 2500
- 0
- 0
- 0
-
-
- 10475
- 2500
- 0
- 0
- 0
-
-
- 10476
- 15
- 0
- 0
- 0
-
-
- 10477
- 1
- 0
- 0
- 0
-
-
- 10478
- 1
- 0
- 0
- 0
-
-
- 10479
- 1
- 0
- 0
- 0
-
-
- 10480
- 1
- 0
- 0
- 0
-
-
- 10481
- 1
- 0
- 0
- 0
-
-
- 10482
- 1
- 0
- 0
- 0
-
-
- 10483
- 1
- 0
- 0
- 0
-
-
- 10484
- 1
- 0
- 0
- 0
-
-
- 10485
- 1
- 0
- 0
- 0
-
-
- 10486
- 1
- 0
- 0
- 0
-
-
- 10487
- 100
- 0
- 0
- 0
-
-
- 10488
- 10
- 0
- 0
- 0
-
-
- 10489
- 15
- 0
- 0
- 0
-
-
- 10490
- 1
- 0
- 0
- 0
-
-
- 10491
- 20
- 0
- 0
- 0
-
-
- 10492
- 1
- 0
- 0
- 0
-
-
- 10493
- 2
- 0
- 0
- 0
-
-
- 10494
- 10
- 0
- 0
- 0
-
-
- 10495
- 10
- 0
- 0
- 0
-
-
- 10496
- 1
- 0
- 0
- 0
-
-
- 10497
- 1
- 0
- 0
- 0
-
-
- 10498
- 769
- 0
- 0
- 0
-
-
- 10499
- 1000
- 0
- 0
- 0
-
-
- 10500
- 20
- 0
- 0
- 0
-
-
- 10501
- 1
- 0
- 0
- 0
-
-
- 10502
- 1
- 0
- 0
- 0
-
-
- 10503
- 1
- 0
- 0
- 0
-
-
- 10504
- 1
- 0
- 0
- 0
-
-
- 10505
- 1
- 0
- 0
- 0
-
-
- 10506
- 1
- 0
- 0
- 0
-
-
- 10507
- 1
- 0
- 0
- 0
-
-
- 10508
- 1
- 0
- 0
- 0
-
-
- 10509
- 1
- 0
- 0
- 0
-
-
- 10510
- 1
- 0
- 0
- 0
-
-
- 10511
- 1
- 0
- 0
- 0
-
-
- 10512
- 1
- 0
- 0
- 0
-
-
- 10513
- 1
- 0
- 0
- 0
-
-
- 10514
- 1
- 0
- 0
- 0
-
-
- 10515
- 1
- 0
- 0
- 0
-
-
- 10516
- 1
- 0
- 0
- 0
-
-
- 10517
- 1
- 0
- 0
- 0
-
-
- 10518
- 1
- 0
- 0
- 0
-
-
- 10519
- 1
- 0
- 0
- 0
-
-
- 10520
- 1
- 0
- 0
- 0
-
-
- 10521
- 1
- 0
- 0
- 0
-
-
- 10522
- 1
- 0
- 0
- 0
-
-
- 10523
- 1
- 0
- 0
- 0
-
-
- 10524
- 1
- 0
- 0
- 0
-
-
- 10525
- 1
- 0
- 0
- 0
-
-
- 10526
- 1
- 0
- 0
- 0
-
-
- 10527
- 1
- 0
- 0
- 0
-
-
- 10528
- 1
- 0
- 0
- 0
-
-
- 10529
- 1
- 0
- 0
- 0
-
-
- 10530
- 1
- 0
- 0
- 0
-
-
- 10531
- 1
- 0
- 0
- 0
-
-
- 10532
- 1
- 0
- 0
- 0
-
-
- 10533
- 1
- 0
- 0
- 0
-
-
- 10534
- 1
- 0
- 0
- 0
-
-
- 10535
- 1
- 0
- 0
- 0
-
-
- 10536
- 1
- 0
- 0
- 0
-
-
- 10537
- 1
- 0
- 0
- 0
-
-
- 10538
- 1
- 0
- 0
- 0
-
-
- 10539
- 1
- 0
- 0
- 0
-
-
- 10540
- 1
- 0
- 0
- 0
-
-
- 10541
- 1
- 0
- 0
- 0
-
-
- 10542
- 1
- 0
- 0
- 0
-
-
- 10543
- 1
- 0
- 0
- 0
-
-
- 10544
- 1
- 0
- 0
- 0
-
-
- 10545
- 1
- 0
- 0
- 0
-
-
- 10546
- 1
- 0
- 0
- 0
-
-
- 10547
- 5000
- 0
- 0
- 0
-
-
- 10548
- 5000
- 0
- 0
- 0
-
-
- 10549
- 5000
- 0
- 0
- 0
-
-
- 10550
- 5000
- 0
- 0
- 0
-
-
- 10551
- 20000
- 0
- 0
- 0
-
-
- 10552
- 5000
- 0
- 0
- 0
-
-
- 10553
- 200
- 0
- 0
- 0
-
-
- 10554
- 200
- 0
- 0
- 0
-
-
- 10555
- 8000
- 0
- 0
- 0
-
-
- 10556
- 1
- 0
- 0
- 0
-
-
- 10557
- 1
- 0
- 0
- 0
-
-
- 10558
- 1
- 0
- 0
- 0
-
-
- 10559
- 1
- 0
- 0
- 0
-
-
- 10560
- 1
- 0
- 0
- 0
-
-
- 10561
- 1
- 0
- 0
- 0
-
-
- 10562
- 1
- 0
- 0
- 0
-
-
- 10563
- 1
- 0
- 0
- 0
-
-
- 10564
- 80000
- 0
- 0
- 0
-
-
- 10565
- 80000
- 0
- 0
- 0
-
-
- 10566
- 60000
- 0
- 0
- 0
-
-
- 10567
- 1
- 0
- 0
- 0
-
-
- 10568
- 1
- 0
- 0
- 0
-
-
- 10569
- 1
- 0
- 0
- 0
-
-
- 10570
- 1
- 0
- 0
- 0
-
-
- 10571
- 1
- 0
- 0
- 0
-
-
- 10572
- 1
- 0
- 0
- 0
-
-
- 10573
- 1
- 0
- 0
- 0
-
-
- 10574
- 1
- 0
- 0
- 0
-
-
- 10575
- 1
- 0
- 0
- 0
-
-
- 10576
- 1
- 0
- 0
- 0
-
-
- 10577
- 1
- 0
- 0
- 0
-
-
- 10578
- 1
- 0
- 0
- 0
-
-
- 10579
- 1
- 0
- 0
- 0
-
-
- 10580
- 1
- 0
- 0
- 0
-
-
- 10581
- 10000
- 0
- 0
- 0
-
-
- 10582
- 10000
- 0
- 0
- 0
-
-
- 10583
- 10000
- 0
- 0
- 0
-
-
- 10584
- 10000
- 0
- 0
- 0
-
-
- 10585
- 1
- 0
- 0
- 0
-
-
- 10586
- 1
- 0
- 0
- 0
-
-
- 10587
- 50
- 0
- 0
- 0
-
-
- 10588
- 300
- 0
- 0
- 0
-
-
- 10589
- 46000
- 0
- 0
- 0
-
-
- 10590
- 46000
- 0
- 0
- 0
-
-
- 10591
- 1
- 0
- 0
- 0
-
-
- 10592
- 1
- 0
- 0
- 0
-
-
- 10593
- 1
- 0
- 0
- 0
-
-
- 10594
- 1
- 0
- 0
- 0
-
-
- 10595
- 1
- 0
- 0
- 0
-
-
- 10596
- 1
- 0
- 0
- 0
-
-
- 10597
- 1
- 0
- 0
- 0
-
-
- 10598
- 1
- 0
- 0
- 0
-
-
- 10599
- 1
- 0
- 0
- 0
-
-
- 10600
- 1
- 0
- 0
- 0
-
-
- 10601
- 15000
- 0
- 0
- 0
-
-
- 10602
- 15000
- 0
- 0
- 0
-
-
- 10603
- 15000
- 0
- 0
- 0
-
-
- 10604
- 10000
- 0
- 0
- 0
-
-
- 10605
- 140000
- 0
- 0
- 0
-
-
- 10606
- 10000
- 0
- 0
- 0
-
-
- 10607
- 300
- 0
- 0
- 0
-
-
- 10608
- 1000
- 0
- 0
- 0
-
-
- 10609
- 100
- 0
- 0
- 0
-
-
- 10610
- 2000
- 0
- 0
- 0
-
-
- 10611
- 48000
- 0
- 0
- 0
-
-
- 10612
- 375
- 0
- 0
- 0
-
-
- 10613
- 35200
- 0
- 0
- 0
-
-
- 10614
- 60000
- 0
- 0
- 0
-
-
- 10615
- 500
- 0
- 0
- 0
-
-
- 10616
- 500
- 0
- 0
- 0
-
-
- 10617
- 500
- 0
- 0
- 0
-
-
- 10618
- 3840
- 0
- 0
- 0
-
-
- 10619
- 10000
- 0
- 0
- 0
-
-
- 10620
- 12000
- 0
- 0
- 0
-
-
- 10621
- 150
- 0
- 0
- 0
-
-
- 10622
- 200
- 0
- 0
- 0
-
-
- 10623
- 100
- 0
- 0
- 0
-
-
- 10624
- 150
- 0
- 0
- 0
-
-
- 10625
- 20
- 0
- 0
- 0
-
-
- 10626
- 20
- 0
- 0
- 0
-
-
- 10627
- 20
- 0
- 0
- 0
-
-
- 10628
- 20
- 0
- 0
- 0
-
-
- 10629
- 1
- 0
- 0
- 0
-
-
- 10630
- 1
- 0
- 0
- 0
-
-
- 10631
- 1
- 0
- 0
- 0
-
-
- 10632
- 1
- 0
- 0
- 0
-
-
- 10633
- 1
- 0
- 0
- 0
-
-
- 10634
- 40
- 0
- 0
- 0
-
-
- 10635
- 450
- 0
- 0
- 0
-
-
- 10636
- 60000
- 0
- 0
- 0
-
-
- 10637
- 60000
- 0
- 0
- 0
-
-
- 10638
- 50
- 0
- 0
- 0
-
-
- 10639
- 99000
- 0
- 0
- 0
-
-
- 10640
- 99000
- 0
- 0
- 0
-
-
- 10641
- 99000
- 0
- 0
- 0
-
-
- 10642
- 99000
- 0
- 0
- 0
-
-
- 10643
- 99000
- 0
- 0
- 0
-
-
- 10644
- 99000
- 0
- 0
- 0
-
-
- 10645
- 99000
- 0
- 0
- 0
-
-
- 10646
- 99000
- 0
- 0
- 0
-
-
- 10647
- 99000
- 0
- 0
- 0
-
-
- 10648
- 99000
- 0
- 0
- 0
-
-
- 10649
- 99000
- 0
- 0
- 0
-
-
- 10650
- 99000
- 0
- 0
- 0
-
-
- 10651
- 99000
- 0
- 0
- 0
-
-
- 10652
- 99000
- 0
- 0
- 0
-
-
- 10653
- 99000
- 0
- 0
- 0
-
-
- 10654
- 99000
- 0
- 0
- 0
-
-
- 10655
- 99000
- 0
- 0
- 0
-
-
- 10656
- 99000
- 0
- 0
- 0
-
-
- 10657
- 99000
- 0
- 0
- 0
-
-
- 10658
- 99000
- 0
- 0
- 0
-
-
- 10659
- 99000
- 0
- 0
- 0
-
-
- 10660
- 99000
- 0
- 0
- 0
-
-
- 10661
- 99000
- 0
- 0
- 0
-
-
- 10662
- 99000
- 0
- 0
- 0
-
-
- 10663
- 400
- 0
- 0
- 0
-
-
- 10664
- 800
- 0
- 0
- 0
-
-
- 10665
- 1632
- 0
- 0
- 0
-
-
- 10666
- 5440
- 0
- 0
- 0
-
-
- 10667
- 54400
- 0
- 0
- 0
-
-
- 10668
- 16325
- 0
- 0
- 0
-
-
- 10669
- 5440
- 0
- 0
- 0
-
-
- 10670
- 54400
- 0
- 0
- 0
-
-
- 10671
- 1632
- 0
- 0
- 0
-
-
- 10672
- 5440
- 0
- 0
- 0
-
-
- 10673
- 54400
- 0
- 0
- 0
-
-
- 10674
- 1632
- 0
- 0
- 0
-
-
- 10675
- 5440
- 0
- 0
- 0
-
-
- 10676
- 54400
- 0
- 0
- 0
-
-
- 10677
- 1632
- 0
- 0
- 0
-
-
- 10678
- 5440
- 0
- 0
- 0
-
-
- 10679
- 54400
- 0
- 0
- 0
-
-
- 10680
- 850
- 0
- 0
- 0
-
-
- 10681
- 850
- 0
- 0
- 0
-
-
- 10682
- 7800
- 0
- 0
- 0
-
-
- 10683
- 7800
- 0
- 0
- 0
-
-
- 10684
- 9360
- 0
- 0
- 0
-
-
- 10685
- 9360
- 0
- 0
- 0
-
-
- 10686
- 15
- 0
- 0
- 0
-
-
- 10687
- 15
- 0
- 0
- 0
-
-
- 10688
- 120000
- 0
- 0
- 0
-
-
- 10689
- 200
- 0
- 0
- 0
-
-
- 10690
- 3840
- 0
- 0
- 0
-
-
- 10691
- 3840
- 0
- 0
- 0
-
-
- 10692
- 40
- 0
- 0
- 0
-
-
- 10693
- 80
- 0
- 0
- 0
-
-
- 10694
- 80
- 0
- 0
- 0
-
-
- 10695
- 80
- 0
- 0
- 0
-
-
- 10696
- 200
- 0
- 0
- 0
-
-
- 10697
- 12800
- 0
- 0
- 0
-
-
- 10698
- 12800
- 0
- 0
- 0
-
-
- 10699
- 1056
- 0
- 0
- 0
-
-
- 10700
- 1056
- 0
- 0
- 0
-
-
- 10701
- 1056
- 0
- 0
- 0
-
-
- 10702
- 1056
- 0
- 0
- 0
-
-
- 10703
- 1056
- 0
- 0
- 0
-
-
- 10704
- 35200
- 0
- 0
- 0
-
-
- 10705
- 35200
- 0
- 0
- 0
-
-
- 10706
- 35200
- 0
- 0
- 0
-
-
- 10707
- 35200
- 0
- 0
- 0
-
-
- 10708
- 35200
- 0
- 0
- 0
-
-
- 10709
- 3520
- 0
- 0
- 0
-
-
- 10710
- 3520
- 0
- 0
- 0
-
-
- 10711
- 3520
- 0
- 0
- 0
-
-
- 10712
- 3520
- 0
- 0
- 0
-
-
- 10713
- 3520
- 0
- 0
- 0
-
-
- 10714
- 3
- 0
- 0
- 0
-
-
- 10715
- 3
- 0
- 0
- 0
-
-
- 10716
- 3
- 0
- 0
- 0
-
-
- 10717
- 3
- 0
- 0
- 0
-
-
- 10718
- 3
- 0
- 0
- 0
-
-
- 10719
- 17625
- 0
- 0
- 0
-
-
- 10720
- 100
- 0
- 0
- 0
-
-
- 10721
- 1
- 0
- 0
- 0
-
-
- 10722
- 1
- 0
- 0
- 0
-
-
- 10723
- 1
- 0
- 0
- 0
-
-
- 10724
- 1
- 0
- 0
- 0
-
-
- 10725
- 1
- 0
- 0
- 0
-
-
- 10726
- 1
- 0
- 0
- 0
-
-
- 10727
- 1
- 0
- 0
- 0
-
-
- 10728
- 1
- 0
- 0
- 0
-
-
- 10729
- 1
- 0
- 0
- 0
-
-
- 10730
- 1
- 0
- 0
- 0
-
-
- 10731
- 1
- 0
- 0
- 0
-
-
- 10732
- 1
- 0
- 0
- 0
-
-
- 10733
- 10
- 0
- 0
- 0
-
-
- 10734
- 1
- 0
- 0
- 0
-
-
- 10735
- 1
- 0
- 0
- 0
-
-
- 10736
- 2025
- 0
- 0
- 0
-
-
- 10737
- 1
- 0
- 0
- 0
-
-
- 10738
- 900
- 0
- 0
- 0
-
-
- 10739
- 1
- 0
- 0
- 0
-
-
- 10740
- 2000
- 0
- 0
- 0
-
-
- 10741
- 1
- 0
- 0
- 0
-
-
- 10742
- 2000
- 0
- 0
- 0
-
-
- 10743
- 1
- 0
- 0
- 0
-
-
- 10744
- 2000
- 0
- 0
- 0
-
-
- 10745
- 1
- 0
- 0
- 0
-
-
- 10746
- 2000
- 0
- 0
- 0
-
-
- 10747
- 1
- 0
- 0
- 0
-
-
- 10748
- 2000
- 0
- 0
- 0
-
-
- 10749
- 1
- 0
- 0
- 0
-
-
- 10750
- 2000
- 0
- 0
- 0
-
-
- 10751
- 1
- 0
- 0
- 0
-
-
- 10752
- 2000
- 0
- 0
- 0
-
-
- 10753
- 1
- 0
- 0
- 0
-
-
- 10754
- 2000
- 0
- 0
- 0
-
-
- 10755
- 1
- 0
- 0
- 0
-
-
- 10756
- 2000
- 0
- 0
- 0
-
-
- 10757
- 1
- 0
- 0
- 0
-
-
- 10758
- 225
- 0
- 0
- 0
-
-
- 10759
- 1
- 0
- 0
- 0
-
-
- 10760
- 225
- 0
- 0
- 0
-
-
- 10761
- 1
- 0
- 0
- 0
-
-
- 10762
- 225
- 0
- 0
- 0
-
-
- 10763
- 1
- 0
- 0
- 0
-
-
- 10764
- 225
- 0
- 0
- 0
-
-
- 10765
- 1
- 0
- 0
- 0
-
-
- 10766
- 225
- 0
- 0
- 0
-
-
- 10767
- 1
- 0
- 0
- 0
-
-
- 10768
- 40
- 0
- 0
- 0
-
-
- 10769
- 1
- 0
- 0
- 0
-
-
- 10770
- 40
- 0
- 0
- 0
-
-
- 10771
- 1
- 0
- 0
- 0
-
-
- 10772
- 40
- 0
- 0
- 0
-
-
- 10773
- 1
- 0
- 0
- 0
-
-
- 10774
- 180
- 0
- 0
- 0
-
-
- 10775
- 1
- 0
- 0
- 0
-
-
- 10776
- 65000
- 0
- 0
- 0
-
-
- 10777
- 1
- 0
- 0
- 0
-
-
- 10778
- 65000
- 0
- 0
- 0
-
-
- 10779
- 1
- 0
- 0
- 0
-
-
- 10780
- 65000
- 0
- 0
- 0
-
-
- 10781
- 1
- 0
- 0
- 0
-
-
- 10782
- 65000
- 0
- 0
- 0
-
-
- 10783
- 1
- 0
- 0
- 0
-
-
- 10784
- 7000
- 0
- 0
- 0
-
-
- 10785
- 1
- 0
- 0
- 0
-
-
- 10786
- 7000
- 0
- 0
- 0
-
-
- 10787
- 1
- 0
- 0
- 0
-
-
- 10788
- 7000
- 0
- 0
- 0
-
-
- 10789
- 1
- 0
- 0
- 0
-
-
- 10790
- 13000
- 0
- 0
- 0
-
-
- 10791
- 1
- 0
- 0
- 0
-
-
- 10792
- 13000
- 0
- 0
- 0
-
-
- 10793
- 1
- 0
- 0
- 0
-
-
- 10794
- 13000
- 0
- 0
- 0
-
-
- 10795
- 1
- 0
- 0
- 0
-
-
- 10796
- 450
- 0
- 0
- 0
-
-
- 10797
- 1
- 0
- 0
- 0
-
-
- 10798
- 65000
- 0
- 0
- 0
-
-
- 10799
- 1
- 0
- 0
- 0
-
-
- 10800
- 65000
- 0
- 0
- 0
-
-
- 10801
- 1
- 0
- 0
- 0
-
-
- 10802
- 200
- 0
- 0
- 0
-
-
- 10803
- 1
- 0
- 0
- 0
-
-
- 10804
- 200
- 0
- 0
- 0
-
-
- 10805
- 1
- 0
- 0
- 0
-
-
- 10806
- 200
- 0
- 0
- 0
-
-
- 10807
- 1
- 0
- 0
- 0
-
-
- 10808
- 200
- 0
- 0
- 0
-
-
- 10809
- 200
- 0
- 0
- 0
-
-
- 10810
- 35
- 0
- 0
- 0
-
-
- 10811
- 35
- 0
- 0
- 0
-
-
- 10812
- 90
- 0
- 0
- 0
-
-
- 10813
- 90
- 0
- 0
- 0
-
-
- 10814
- 120
- 0
- 0
- 0
-
-
- 10815
- 120
- 0
- 0
- 0
-
-
- 10816
- 2
- 0
- 0
- 0
-
-
- 10817
- 2
- 0
- 0
- 0
-
-
- 10818
- 50
- 0
- 0
- 0
-
-
- 10819
- 50
- 0
- 0
- 0
-
-
- 10820
- 100
- 0
- 0
- 0
-
-
- 10821
- 100
- 0
- 0
- 0
-
-
- 10822
- 500
- 0
- 0
- 0
-
-
- 10823
- 500
- 0
- 0
- 0
-
-
- 10824
- 500
- 0
- 0
- 0
-
-
- 10825
- 500
- 0
- 0
- 0
-
-
- 10826
- 500
- 0
- 0
- 0
-
-
- 10827
- 500
- 0
- 0
- 0
-
-
- 10828
- 50000
- 0
- 0
- 0
-
-
- 10829
- 1
- 0
- 0
- 0
-
-
- 10830
- 1
- 0
- 0
- 0
-
-
- 10831
- 1
- 0
- 0
- 0
-
-
- 10832
- 1
- 0
- 0
- 0
-
-
- 10833
- 1
- 0
- 0
- 0
-
-
- 10834
- 1
- 0
- 0
- 0
-
-
- 10835
- 1
- 0
- 0
- 0
-
-
- 10836
- 100
- 0
- 0
- 0
-
-
- 10837
- 100
- 0
- 0
- 0
-
-
- 10838
- 100
- 0
- 0
- 0
-
-
- 10839
- 100
- 0
- 0
- 0
-
-
- 10840
- 1000
- 0
- 0
- 0
-
-
- 10841
- 1
- 0
- 0
- 0
-
-
- 10842
- 1
- 0
- 0
- 0
-
-
- 10843
- 50000
- 0
- 0
- 0
-
-
- 10844
- 1
- 0
- 0
- 0
-
-
- 10845
- 1
- 0
- 0
- 0
-
-
- 10846
- 1
- 0
- 0
- 0
-
-
- 10847
- 1
- 0
- 0
- 0
-
-
- 10848
- 1
- 0
- 0
- 0
-
-
- 10849
- 1
- 0
- 0
- 0
-
-
- 10850
- 1
- 0
- 0
- 0
-
-
- 10851
- 1
- 0
- 0
- 0
-
-
- 10852
- 1
- 0
- 0
- 0
-
-
- 10853
- 1
- 0
- 0
- 0
-
-
- 10854
- 1
- 0
- 0
- 0
-
-
- 10855
- 1
- 0
- 0
- 0
-
-
- 10856
- 5
- 0
- 0
- 0
-
-
- 10857
- 1
- 0
- 0
- 0
-
-
- 10858
- 1
- 0
- 0
- 0
-
-
- 10859
- 1
- 0
- 0
- 0
-
-
- 10860
- 1
- 0
- 0
- 0
-
-
- 10861
- 1
- 0
- 0
- 0
-
-
- 10862
- 100
- 0
- 0
- 0
-
-
- 10863
- 100
- 0
- 0
- 0
-
-
- 10864
- 100
- 0
- 0
- 0
-
-
- 10865
- 100
- 0
- 0
- 0
-
-
- 10866
- 1
- 0
- 0
- 0
-
-
- 10867
- 1
- 0
- 0
- 0
-
-
- 10868
- 1
- 0
- 0
- 0
-
-
- 10869
- 1
- 0
- 0
- 0
-
-
- 10870
- 1
- 0
- 0
- 0
-
-
- 10871
- 1
- 0
- 0
- 0
-
-
- 10872
- 1
- 0
- 0
- 0
-
-
- 10873
- 1
- 0
- 0
- 0
-
-
- 10874
- 1
- 0
- 0
- 0
-
-
- 10875
- 1
- 0
- 0
- 0
-
-
- 10876
- 1
- 0
- 0
- 0
-
-
- 10877
- 100
- 0
- 0
- 0
-
-
- 10878
- 100
- 0
- 0
- 0
-
-
- 10879
- 100
- 0
- 0
- 0
-
-
- 10880
- 100
- 0
- 0
- 0
-
-
- 10881
- 100
- 0
- 0
- 0
-
-
- 10882
- 100
- 0
- 0
- 0
-
-
- 10883
- 100
- 0
- 0
- 0
-
-
- 10884
- 52
- 0
- 0
- 0
-
-
- 10885
- 1
- 0
- 0
- 0
-
-
- 10886
- 1
- 0
- 0
- 0
-
-
- 10887
- 230000
- 0
- 0
- 0
-
-
- 10888
- 1
- 0
- 0
- 0
-
-
- 10889
- 1
- 0
- 0
- 0
-
-
- 10890
- 1
- 0
- 0
- 0
-
-
- 10891
- 1
- 0
- 0
- 0
-
-
- 10892
- 1
- 0
- 0
- 0
-
-
- 10893
- 1
- 0
- 0
- 0
-
-
- 10894
- 1
- 0
- 0
- 0
-
-
- 10895
- 1
- 0
- 0
- 0
-
-
- 10896
- 1
- 0
- 0
- 0
-
-
- 10897
- 1
- 0
- 0
- 0
-
-
- 10898
- 1
- 0
- 0
- 0
-
-
- 10899
- 1
- 0
- 0
- 0
-
-
- 10900
- 1
- 0
- 0
- 0
-
-
- 10901
- 1
- 0
- 0
- 0
-
-
- 10902
- 1
- 0
- 0
- 0
-
-
- 10903
- 1
- 0
- 0
- 0
-
-
- 10904
- 1
- 0
- 0
- 0
-
-
- 10905
- 1
- 0
- 0
- 0
-
-
- 10906
- 1
- 0
- 0
- 0
-
-
- 10907
- 1
- 0
- 0
- 0
-
-
- 10908
- 1
- 0
- 0
- 0
-
-
- 10909
- 300
- 0
- 0
- 0
-
-
- 10910
- 300
- 0
- 0
- 0
-
-
- 10911
- 240
- 0
- 0
- 0
-
-
- 10912
- 240
- 0
- 0
- 0
-
-
- 10913
- 180
- 0
- 0
- 0
-
-
- 10914
- 180
- 0
- 0
- 0
-
-
- 10915
- 120
- 0
- 0
- 0
-
-
- 10916
- 120
- 0
- 0
- 0
-
-
- 10917
- 300
- 0
- 0
- 0
-
-
- 10918
- 300
- 0
- 0
- 0
-
-
- 10919
- 240
- 0
- 0
- 0
-
-
- 10920
- 240
- 0
- 0
- 0
-
-
- 10921
- 180
- 0
- 0
- 0
-
-
- 10922
- 180
- 0
- 0
- 0
-
-
- 10923
- 120
- 0
- 0
- 0
-
-
- 10924
- 120
- 0
- 0
- 0
-
-
- 10925
- 300
- 0
- 0
- 0
-
-
- 10926
- 300
- 0
- 0
- 0
-
-
- 10927
- 240
- 0
- 0
- 0
-
-
- 10928
- 240
- 0
- 0
- 0
-
-
- 10929
- 180
- 0
- 0
- 0
-
-
- 10930
- 180
- 0
- 0
- 0
-
-
- 10931
- 120
- 0
- 0
- 0
-
-
- 10932
- 120
- 0
- 0
- 0
-
-
- 10933
- 50
- 0
- 0
- 0
-
-
- 10934
- 1
- 0
- 0
- 0
-
-
- 10935
- 1
- 0
- 0
- 0
-
-
- 10936
- 1
- 0
- 0
- 0
-
-
- 10937
- 300
- 0
- 0
- 0
-
-
- 10938
- 300
- 0
- 0
- 0
-
-
- 10939
- 50
- 0
- 0
- 0
-
-
- 10940
- 50
- 0
- 0
- 0
-
-
- 10941
- 50
- 0
- 0
- 0
-
-
- 10942
- 1
- 0
- 0
- 0
-
-
- 10943
- 1
- 0
- 0
- 0
-
-
- 10944
- 1
- 0
- 0
- 0
-
-
- 10945
- 50
- 0
- 0
- 0
-
-
- 10946
- 1
- 0
- 0
- 0
-
-
- 10947
- 1
- 0
- 0
- 0
-
-
- 10948
- 1
- 0
- 0
- 0
-
-
- 10949
- 1
- 0
- 0
- 0
-
-
- 10950
- 1
- 0
- 0
- 0
-
-
- 10951
- 1
- 0
- 0
- 0
-
-
- 10952
- 150
- 0
- 0
- 0
-
-
- 10953
- 150
- 0
- 0
- 0
-
-
- 10954
- 1000
- 0
- 0
- 0
-
-
- 10955
- 1000
- 0
- 0
- 0
-
-
- 10956
- 900
- 0
- 0
- 0
-
-
- 10957
- 900
- 0
- 0
- 0
-
-
- 10958
- 200
- 0
- 0
- 0
-
-
- 10959
- 200
- 0
- 0
- 0
-
-
- 10960
- 10
- 0
- 0
- 0
-
-
- 10961
- 10
- 0
- 0
- 0
-
-
- 10962
- 10
- 0
- 0
- 0
-
-
- 10963
- 10
- 0
- 0
- 0
-
-
- 10964
- 10
- 0
- 0
- 0
-
-
- 10965
- 10
- 0
- 0
- 0
-
-
- 10966
- 50
- 0
- 0
- 0
-
-
- 10967
- 50
- 0
- 0
- 0
-
-
- 10968
- 50
- 0
- 0
- 0
-
-
- 10969
- 50
- 0
- 0
- 0
-
-
- 10970
- 50
- 0
- 0
- 0
-
-
- 10971
- 50
- 0
- 0
- 0
-
-
- 10972
- 20
- 0
- 0
- 0
-
-
- 10973
- 350
- 0
- 0
- 0
-
-
- 10974
- 350
- 0
- 0
- 0
-
-
- 10975
- 1
- 0
- 0
- 0
-
-
- 10976
- 5
- 0
- 0
- 0
-
-
- 10977
- 7
- 0
- 0
- 0
-
-
- 10978
- 2
- 0
- 0
- 0
-
-
- 10979
- 2
- 0
- 0
- 0
-
-
- 10980
- 250
- 0
- 0
- 0
-
-
- 10981
- 20
- 0
- 0
- 0
-
-
- 10982
- 20
- 0
- 0
- 0
-
-
- 10983
- 1
- 0
- 0
- 0
-
-
- 10984
- 1
- 0
- 0
- 0
-
-
- 10985
- 1
- 0
- 0
- 0
-
-
- 10986
- 1
- 0
- 0
- 0
-
-
- 10987
- 1
- 0
- 0
- 0
-
-
- 10988
- 1
- 0
- 0
- 0
-
-
- 10989
- 1
- 0
- 0
- 0
-
-
- 10990
- 1
- 0
- 0
- 0
-
-
- 10991
- 1
- 0
- 0
- 0
-
-
- 10992
- 1
- 0
- 0
- 0
-
-
- 10993
- 1
- 0
- 0
- 0
-
-
- 10994
- 1
- 0
- 0
- 0
-
-
- 10995
- 1000
- 0
- 0
- 0
-
-
- 10996
- 1000
- 0
- 0
- 0
-
-
- 10997
- 1
- 0
- 0
- 0
-
-
- 10998
- 1
- 0
- 0
- 0
-
-
- 10999
- 1
- 0
- 0
- 0
-
-
- 11000
- 1
- 0
- 0
- 0
-
-
- 11001
- 10
- 0
- 0
- 0
-
-
- 11002
- 10
- 0
- 0
- 0
-
-
- 11003
- 5
- 0
- 0
- 0
-
-
- 11004
- 1
- 0
- 0
- 0
-
-
- 11005
- 1
- 0
- 0
- 0
-
-
- 11006
- 10
- 0
- 0
- 0
-
-
- 11007
- 10
- 0
- 0
- 0
-
-
- 11008
- 1
- 0
- 0
- 0
-
-
- 11009
- 1
- 0
- 0
- 0
-
-
- 11010
- 1
- 0
- 0
- 0
-
-
- 11011
- 1
- 0
- 0
- 0
-
-
- 11012
- 1
- 0
- 0
- 0
-
-
- 11013
- 1
- 0
- 0
- 0
-
-
- 11014
- 1
- 0
- 0
- 0
-
-
- 11015
- 1
- 0
- 0
- 0
-
-
- 11016
- 1
- 0
- 0
- 0
-
-
- 11017
- 1
- 0
- 0
- 0
-
-
- 11018
- 1
- 0
- 0
- 0
-
-
- 11019
- 1
- 0
- 0
- 0
-
-
- 11020
- 1
- 0
- 0
- 0
-
-
- 11021
- 1
- 0
- 0
- 0
-
-
- 11022
- 1
- 0
- 0
- 0
-
-
- 11023
- 1
- 0
- 0
- 0
-
-
- 11024
- 1
- 0
- 0
- 0
-
-
- 11025
- 1
- 0
- 0
- 0
-
-
- 11026
- 1
- 0
- 0
- 0
-
-
- 11027
- 1
- 0
- 0
- 0
-
-
- 11028
- 1
- 0
- 0
- 0
-
-
- 11029
- 1
- 0
- 0
- 0
-
-
- 11030
- 1
- 0
- 0
- 0
-
-
- 11031
- 1
- 0
- 0
- 0
-
-
- 11032
- 1
- 0
- 0
- 0
-
-
- 11033
- 1
- 0
- 0
- 0
-
-
- 11034
- 1
- 0
- 0
- 0
-
-
- 11035
- 1
- 0
- 0
- 0
-
-
- 11036
- 1
- 0
- 0
- 0
-
-
- 11037
- 26000
- 0
- 0
- 0
-
-
- 11038
- 26000
- 0
- 0
- 0
-
-
- 11039
- 1
- 0
- 0
- 0
-
-
- 11040
- 1
- 0
- 0
- 0
-
-
- 11041
- 1
- 0
- 0
- 0
-
-
- 11042
- 1
- 0
- 0
- 0
-
-
- 11043
- 1
- 0
- 0
- 0
-
-
- 11044
- 1
- 0
- 0
- 0
-
-
- 11045
- 1
- 0
- 0
- 0
-
-
- 11046
- 1
- 0
- 0
- 0
-
-
- 11047
- 1
- 0
- 0
- 0
-
-
- 11048
- 1
- 0
- 0
- 0
-
-
- 11049
- 1
- 0
- 0
- 0
-
-
- 11050
- 1
- 0
- 0
- 0
-
-
- 11051
- 1
- 0
- 0
- 0
-
-
- 11052
- 1
- 0
- 0
- 0
-
-
- 11053
- 1
- 0
- 0
- 0
-
-
- 11054
- 1
- 0
- 0
- 0
-
-
- 11055
- 1
- 0
- 0
- 0
-
-
- 11056
- 1
- 0
- 0
- 0
-
-
- 11057
- 1
- 0
- 0
- 0
-
-
- 11058
- 1
- 0
- 0
- 0
-
-
- 11059
- 1
- 0
- 0
- 0
-
-
- 11060
- 20
- 0
- 0
- 0
-
-
- 11061
- 1000
- 0
- 0
- 0
-
-
- 11062
- 1
- 0
- 0
- 0
-
-
- 11063
- 1
- 0
- 0
- 0
-
-
- 11064
- 1000
- 0
- 0
- 0
-
-
- 11065
- 5
- 0
- 0
- 0
-
-
- 11066
- 5
- 0
- 0
- 0
-
-
- 11067
- 1
- 0
- 0
- 0
-
-
- 11068
- 1
- 0
- 0
- 0
-
-
- 11069
- 550
- 0
- 0
- 0
-
-
- 11070
- 550
- 0
- 0
- 0
-
-
- 11071
- 1
- 0
- 0
- 0
-
-
- 11072
- 1150
- 0
- 0
- 0
-
-
- 11073
- 1150
- 0
- 0
- 0
-
-
- 11074
- 1265
- 0
- 0
- 0
-
-
- 11075
- 1265
- 0
- 0
- 0
-
-
- 11076
- 1525
- 0
- 0
- 0
-
-
- 11077
- 1525
- 0
- 0
- 0
-
-
- 11078
- 1
- 0
- 0
- 0
-
-
- 11079
- 1675
- 0
- 0
- 0
-
-
- 11080
- 1675
- 0
- 0
- 0
-
-
- 11081
- 1675
- 0
- 0
- 0
-
-
- 11082
- 1675
- 0
- 0
- 0
-
-
- 11083
- 1675
- 0
- 0
- 0
-
-
- 11084
- 1675
- 0
- 0
- 0
-
-
- 11085
- 2325
- 0
- 0
- 0
-
-
- 11086
- 2325
- 0
- 0
- 0
-
-
- 11087
- 1
- 0
- 0
- 0
-
-
- 11088
- 2560
- 0
- 0
- 0
-
-
- 11089
- 2560
- 0
- 0
- 0
-
-
- 11090
- 4050
- 0
- 0
- 0
-
-
- 11091
- 4050
- 0
- 0
- 0
-
-
- 11092
- 3825
- 0
- 0
- 0
-
-
- 11093
- 3825
- 0
- 0
- 0
-
-
- 11094
- 1
- 0
- 0
- 0
-
-
- 11095
- 4200
- 0
- 0
- 0
-
-
- 11096
- 4200
- 0
- 0
- 0
-
-
- 11097
- 4200
- 0
- 0
- 0
-
-
- 11098
- 4200
- 0
- 0
- 0
-
-
- 11099
- 4200
- 0
- 0
- 0
-
-
- 11100
- 4200
- 0
- 0
- 0
-
-
- 11101
- 4200
- 0
- 0
- 0
-
-
- 11102
- 4200
- 0
- 0
- 0
-
-
- 11103
- 4200
- 0
- 0
- 0
-
-
- 11104
- 4200
- 0
- 0
- 0
-
-
- 11105
- 20200
- 0
- 0
- 0
-
-
- 11106
- 20200
- 0
- 0
- 0
-
-
- 11107
- 20200
- 0
- 0
- 0
-
-
- 11108
- 20200
- 0
- 0
- 0
-
-
- 11109
- 20200
- 0
- 0
- 0
-
-
- 11110
- 20200
- 0
- 0
- 0
-
-
- 11111
- 20200
- 0
- 0
- 0
-
-
- 11112
- 20200
- 0
- 0
- 0
-
-
- 11113
- 20200
- 0
- 0
- 0
-
-
- 11114
- 20200
- 0
- 0
- 0
-
-
- 11115
- 19125
- 0
- 0
- 0
-
-
- 11116
- 19125
- 0
- 0
- 0
-
-
- 11117
- 1
- 0
- 0
- 0
-
-
- 11118
- 21040
- 0
- 0
- 0
-
-
- 11119
- 21040
- 0
- 0
- 0
-
-
- 11120
- 21040
- 0
- 0
- 0
-
-
- 11121
- 21040
- 0
- 0
- 0
-
-
- 11122
- 21040
- 0
- 0
- 0
-
-
- 11123
- 21040
- 0
- 0
- 0
-
-
- 11124
- 21040
- 0
- 0
- 0
-
-
- 11125
- 21040
- 0
- 0
- 0
-
-
- 11126
- 21040
- 0
- 0
- 0
-
-
- 11127
- 21040
- 0
- 0
- 0
-
-
- 11128
- 202000
- 0
- 0
- 0
-
-
- 11129
- 202000
- 0
- 0
- 0
-
-
- 11130
- 201000
- 0
- 0
- 0
-
-
- 11131
- 201000
- 0
- 0
- 0
-
-
- 11132
- 1
- 0
- 0
- 0
-
-
- 11133
- 202000
- 0
- 0
- 0
-
-
- 11134
- 202000
- 0
- 0
- 0
-
-
- 11135
- 1
- 0
- 0
- 0
-
-
- 11136
- 1
- 0
- 0
- 0
-
-
- 11137
- 1
- 0
- 0
- 0
-
-
- 11138
- 1
- 0
- 0
- 0
-
-
- 11139
- 1
- 0
- 0
- 0
-
-
- 11140
- 1
- 0
- 0
- 0
-
-
- 11141
- 1
- 0
- 0
- 0
-
-
- 11142
- 1
- 0
- 0
- 0
-
-
- 11143
- 1
- 0
- 0
- 0
-
-
- 11144
- 1
- 0
- 0
- 0
-
-
- 11145
- 1
- 0
- 0
- 0
-
-
- 11146
- 1
- 0
- 0
- 0
-
-
- 11147
- 1
- 0
- 0
- 0
-
-
- 11148
- 1
- 0
- 0
- 0
-
-
- 11149
- 1
- 0
- 0
- 0
-
-
- 11150
- 1
- 0
- 0
- 0
-
-
- 11151
- 1
- 0
- 0
- 0
-
-
- 11152
- 1
- 0
- 0
- 0
-
-
- 11153
- 1
- 0
- 0
- 0
-
-
- 11154
- 1
- 0
- 0
- 0
-
-
- 11155
- 20
- 0
- 0
- 0
-
-
- 11156
- 1
- 0
- 0
- 0
-
-
- 11157
- 1
- 0
- 0
- 0
-
-
- 11158
- 1
- 0
- 0
- 0
-
-
- 11159
- 1
- 0
- 0
- 0
-
-
- 11160
- 1
- 0
- 0
- 0
-
-
- 11161
- 1
- 0
- 0
- 0
-
-
- 11162
- 1
- 0
- 0
- 0
-
-
- 11163
- 1
- 0
- 0
- 0
-
-
- 11164
- 1
- 0
- 0
- 0
-
-
- 11165
- 4
- 0
- 0
- 0
-
-
- 11166
- 4
- 0
- 0
- 0
-
-
- 11167
- 4
- 0
- 0
- 0
-
-
- 11168
- 4
- 0
- 0
- 0
-
-
- 11169
- 1
- 0
- 0
- 0
-
-
- 11170
- 1
- 0
- 0
- 0
-
-
- 11171
- 1
- 0
- 0
- 0
-
-
- 11172
- 1
- 0
- 0
- 0
-
-
- 11173
- 1
- 0
- 0
- 0
-
-
- 11174
- 1
- 0
- 0
- 0
-
-
- 11175
- 1
- 0
- 0
- 0
-
-
- 11176
- 1
- 0
- 0
- 0
-
-
- 11177
- 1
- 0
- 0
- 0
-
-
- 11178
- 1
- 0
- 0
- 0
-
-
- 11179
- 1
- 0
- 0
- 0
-
-
- 11180
- 1
- 0
- 0
- 0
-
-
- 11181
- 1
- 0
- 0
- 0
-
-
- 11182
- 1
- 0
- 0
- 0
-
-
- 11183
- 1
- 0
- 0
- 0
-
-
- 11184
- 1
- 0
- 0
- 0
-
-
- 11185
- 1
- 0
- 0
- 0
-
-
- 11186
- 1
- 0
- 0
- 0
-
-
- 11187
- 1
- 0
- 0
- 0
-
-
- 11188
- 1
- 0
- 0
- 0
-
-
- 11189
- 1
- 0
- 0
- 0
-
-
- 11190
- 2400
- 0
- 0
- 0
-
-
- 11191
- 2400
- 0
- 0
- 0
-
-
- 11192
- 2400
- 0
- 0
- 0
-
-
- 11193
- 2400
- 0
- 0
- 0
-
-
- 11194
- 2400
- 0
- 0
- 0
-
-
- 11195
- 1
- 0
- 0
- 0
-
-
- 11196
- 1
- 0
- 0
- 0
-
-
- 11197
- 1
- 0
- 0
- 0
-
-
- 11198
- 1
- 0
- 0
- 0
-
-
- 11199
- 1
- 0
- 0
- 0
-
-
- 11200
- 60000
- 0
- 0
- 0
-
-
- 11201
- 60000
- 0
- 0
- 0
-
-
- 11202
- 1
- 0
- 0
- 0
-
-
- 11203
- 1
- 0
- 0
- 0
-
-
- 11204
- 1
- 0
- 0
- 0
-
-
- 11205
- 2
- 0
- 0
- 0
-
-
- 11206
- 1
- 0
- 0
- 0
-
-
- 11207
- 1
- 0
- 0
- 0
-
-
- 11208
- 1
- 0
- 0
- 0
-
-
- 11209
- 1
- 0
- 0
- 0
-
-
- 11210
- 1
- 0
- 0
- 0
-
-
- 11211
- 1
- 0
- 0
- 0
-
-
- 11212
- 800
- 0
- 0
- 0
-
-
- 11213
- 1
- 0
- 0
- 0
-
-
- 11214
- 1
- 0
- 0
- 0
-
-
- 11215
- 1
- 0
- 0
- 0
-
-
- 11216
- 1
- 0
- 0
- 0
-
-
- 11217
- 3
- 0
- 0
- 0
-
-
- 11218
- 1
- 0
- 0
- 0
-
-
- 11219
- 1
- 0
- 0
- 0
-
-
- 11220
- 1
- 0
- 0
- 0
-
-
- 11221
- 1
- 0
- 0
- 0
-
-
- 11222
- 10
- 0
- 0
- 0
-
-
- 11223
- 1
- 0
- 0
- 0
-
-
- 11224
- 1
- 0
- 0
- 0
-
-
- 11225
- 1
- 0
- 0
- 0
-
-
- 11226
- 1
- 0
- 0
- 0
-
-
- 11227
- 800
- 0
- 0
- 0
-
-
- 11228
- 800
- 0
- 0
- 0
-
-
- 11229
- 800
- 0
- 0
- 0
-
-
- 11230
- 500
- 0
- 0
- 0
-
-
- 11231
- 500
- 0
- 0
- 0
-
-
- 11232
- 250
- 0
- 0
- 0
-
-
- 11233
- 500
- 0
- 0
- 0
-
-
- 11234
- 500
- 0
- 0
- 0
-
-
- 11235
- 120002
- 0
- 0
- 0
-
-
- 11236
- 120002
- 0
- 0
- 0
-
-
- 11237
- 500
- 0
- 0
- 0
-
-
- 11238
- 50
- 0
- 0
- 0
-
-
- 11239
- 50
- 0
- 0
- 0
-
-
- 11240
- 50
- 0
- 0
- 0
-
-
- 11241
- 50
- 0
- 0
- 0
-
-
- 11242
- 50
- 0
- 0
- 0
-
-
- 11243
- 50
- 0
- 0
- 0
-
-
- 11244
- 50
- 0
- 0
- 0
-
-
- 11245
- 50
- 0
- 0
- 0
-
-
- 11246
- 50
- 0
- 0
- 0
-
-
- 11247
- 50
- 0
- 0
- 0
-
-
- 11248
- 50
- 0
- 0
- 0
-
-
- 11249
- 50
- 0
- 0
- 0
-
-
- 11250
- 50
- 0
- 0
- 0
-
-
- 11251
- 50
- 0
- 0
- 0
-
-
- 11252
- 50
- 0
- 0
- 0
-
-
- 11253
- 50
- 0
- 0
- 0
-
-
- 11254
- 50
- 0
- 0
- 0
-
-
- 11255
- 50
- 0
- 0
- 0
-
-
- 11256
- 50
- 0
- 0
- 0
-
-
- 11257
- 50
- 0
- 0
- 0
-
-
- 11258
- 600
- 0
- 0
- 0
-
-
- 11259
- 1000
- 0
- 0
- 0
-
-
- 11260
- 1
- 0
- 0
- 0
-
-
- 11261
- 1
- 0
- 0
- 0
-
-
- 11262
- 50
- 0
- 0
- 0
-
-
- 11263
- 50
- 0
- 0
- 0
-
-
- 11264
- 10
- 0
- 0
- 0
-
-
- 11265
- 10
- 0
- 0
- 0
-
-
- 11266
- 5
- 0
- 0
- 0
-
-
- 11267
- 1
- 0
- 0
- 0
-
-
- 11268
- 1000
- 0
- 0
- 0
-
-
- 11269
- 1
- 0
- 0
- 0
-
-
- 11270
- 1
- 0
- 0
- 0
-
-
- 11271
- 50
- 0
- 0
- 0
-
-
- 11272
- 50
- 0
- 0
- 0
-
-
- 11273
- 3
- 0
- 0
- 0
-
-
- 11274
- 75
- 0
- 0
- 0
-
-
- 11275
- 48
- 0
- 0
- 0
-
-
- 11276
- 1
- 0
- 0
- 0
-
-
- 11277
- 200
- 0
- 0
- 0
-
-
- 11278
- 80
- 0
- 0
- 0
-
-
- 11279
- 1
- 0
- 0
- 0
-
-
- 11280
- 200
- 0
- 0
- 0
-
-
- 11281
- 200
- 0
- 0
- 0
-
-
- 11282
- 80
- 0
- 0
- 0
-
-
- 11283
- 2000000
- 0
- 0
- 0
-
-
- 11284
- 2000000
- 0
- 0
- 0
-
-
- 11285
- 2000000
- 0
- 0
- 0
-
-
- 11286
- 750000
- 0
- 0
- 0
-
-
- 11287
- 750000
- 0
- 0
- 0
-
-
- 11288
- 40
- 0
- 0
- 0
-
-
- 11289
- 40
- 0
- 0
- 0
-
-
- 11290
- 40
- 0
- 0
- 0
-
-
- 11291
- 40
- 0
- 0
- 0
-
-
- 11292
- 40
- 0
- 0
- 0
-
-
- 11293
- 40
- 0
- 0
- 0
-
-
- 11294
- 40
- 0
- 0
- 0
-
-
- 11295
- 40
- 0
- 0
- 0
-
-
- 11296
- 40
- 0
- 0
- 0
-
-
- 11297
- 40
- 0
- 0
- 0
-
-
- 11298
- 40
- 0
- 0
- 0
-
-
- 11299
- 40
- 0
- 0
- 0
-
-
- 11300
- 40
- 0
- 0
- 0
-
-
- 11301
- 40
- 0
- 0
- 0
-
-
- 11302
- 40
- 0
- 0
- 0
-
-
- 11303
- 40
- 0
- 0
- 0
-
-
- 11304
- 40
- 0
- 0
- 0
-
-
- 11305
- 40
- 0
- 0
- 0
-
-
- 11306
- 1
- 0
- 0
- 0
-
-
- 11307
- 1
- 0
- 0
- 0
-
-
- 11308
- 1
- 0
- 0
- 0
-
-
- 11309
- 1
- 0
- 0
- 0
-
-
- 11310
- 1
- 0
- 0
- 0
-
-
- 11311
- 1
- 0
- 0
- 0
-
-
- 11312
- 1
- 0
- 0
- 0
-
-
- 11313
- 1
- 0
- 0
- 0
-
-
- 11314
- 1
- 0
- 0
- 0
-
-
- 11315
- 1
- 0
- 0
- 0
-
-
- 11316
- 1
- 0
- 0
- 0
-
-
- 11317
- 1
- 0
- 0
- 0
-
-
- 11318
- 1
- 0
- 0
- 0
-
-
- 11319
- 1
- 0
- 0
- 0
-
-
- 11320
- 3
- 0
- 0
- 0
-
-
- 11321
- 3
- 0
- 0
- 0
-
-
- 11322
- 3
- 0
- 0
- 0
-
-
- 11323
- 1
- 0
- 0
- 0
-
-
- 11324
- 20
- 0
- 0
- 0
-
-
- 11325
- 20
- 0
- 0
- 0
-
-
- 11326
- 50
- 0
- 0
- 0
-
-
- 11327
- 50
- 0
- 0
- 0
-
-
- 11328
- 25
- 0
- 0
- 0
-
-
- 11329
- 25
- 0
- 0
- 0
-
-
- 11330
- 50
- 0
- 0
- 0
-
-
- 11331
- 50
- 0
- 0
- 0
-
-
- 11332
- 75
- 0
- 0
- 0
-
-
- 11333
- 75
- 0
- 0
- 0
-
-
- 11334
- 1
- 0
- 0
- 0
-
-
- 11335
- 150000
- 0
- 0
- 0
-
-
- 11336
- 150000
- 0
- 0
- 0
-
-
- 11337
- 1000
- 0
- 0
- 0
-
-
- 11338
- 3500
- 0
- 0
- 0
-
-
- 11339
- 1
- 0
- 0
- 0
-
-
- 11340
- 1
- 0
- 0
- 0
-
-
- 11341
- 1
- 0
- 0
- 0
-
-
- 11342
- 1
- 0
- 0
- 0
-
-
- 11343
- 1
- 0
- 0
- 0
-
-
- 11344
- 1
- 0
- 0
- 0
-
-
- 11345
- 1
- 0
- 0
- 0
-
-
- 11346
- 1
- 0
- 0
- 0
-
-
- 11347
- 1
- 0
- 0
- 0
-
-
- 11348
- 1
- 0
- 0
- 0
-
-
- 11349
- 1
- 0
- 0
- 0
-
-
- 11350
- 1
- 0
- 0
- 0
-
-
- 11351
- 1
- 0
- 0
- 0
-
-
- 11352
- 1
- 0
- 0
- 0
-
-
- 11353
- 1
- 0
- 0
- 0
-
-
- 11354
- 1
- 0
- 0
- 0
-
-
- 11355
- 1
- 0
- 0
- 0
-
-
- 11356
- 1
- 0
- 0
- 0
-
-
- 11357
- 1
- 0
- 0
- 0
-
-
- 11358
- 1
- 0
- 0
- 0
-
-
- 11359
- 1
- 0
- 0
- 0
-
-
- 11360
- 1
- 0
- 0
- 0
-
-
- 11361
- 1
- 0
- 0
- 0
-
-
- 11362
- 1
- 0
- 0
- 0
-
-
- 11363
- 1
- 0
- 0
- 0
-
-
- 11364
- 1
- 0
- 0
- 0
-
-
- 11365
- 1
- 0
- 0
- 0
-
-
- 11366
- 1
- 0
- 0
- 0
-
-
- 11367
- 26
- 0
- 0
- 0
-
-
- 11368
- 26
- 0
- 0
- 0
-
-
- 11369
- 91
- 0
- 0
- 0
-
-
- 11370
- 91
- 0
- 0
- 0
-
-
- 11371
- 325
- 0
- 0
- 0
-
-
- 11372
- 325
- 0
- 0
- 0
-
-
- 11373
- 845
- 0
- 0
- 0
-
-
- 11374
- 845
- 0
- 0
- 0
-
-
- 11375
- 2080
- 0
- 0
- 0
-
-
- 11376
- 2080
- 0
- 0
- 0
-
-
- 11377
- 20800
- 0
- 0
- 0
-
-
- 11378
- 20800
- 0
- 0
- 0
-
-
- 11379
- 26
- 0
- 0
- 0
-
-
- 11380
- 26
- 0
- 0
- 0
-
-
- 11381
- 26
- 0
- 0
- 0
-
-
- 11382
- 26
- 0
- 0
- 0
-
-
- 11383
- 26
- 0
- 0
- 0
-
-
- 11384
- 26
- 0
- 0
- 0
-
-
- 11385
- 26
- 0
- 0
- 0
-
-
- 11386
- 91
- 0
- 0
- 0
-
-
- 11387
- 91
- 0
- 0
- 0
-
-
- 11388
- 91
- 0
- 0
- 0
-
-
- 11389
- 91
- 0
- 0
- 0
-
-
- 11390
- 91
- 0
- 0
- 0
-
-
- 11391
- 91
- 0
- 0
- 0
-
-
- 11392
- 91
- 0
- 0
- 0
-
-
- 11393
- 325
- 0
- 0
- 0
-
-
- 11394
- 325
- 0
- 0
- 0
-
-
- 11395
- 325
- 0
- 0
- 0
-
-
- 11396
- 325
- 0
- 0
- 0
-
-
- 11397
- 325
- 0
- 0
- 0
-
-
- 11398
- 325
- 0
- 0
- 0
-
-
- 11399
- 325
- 0
- 0
- 0
-
-
- 11400
- 845
- 0
- 0
- 0
-
-
- 11401
- 845
- 0
- 0
- 0
-
-
- 11402
- 845
- 0
- 0
- 0
-
-
- 11403
- 845
- 0
- 0
- 0
-
-
- 11404
- 845
- 0
- 0
- 0
-
-
- 11405
- 845
- 0
- 0
- 0
-
-
- 11406
- 845
- 0
- 0
- 0
-
-
- 11407
- 2080
- 0
- 0
- 0
-
-
- 11408
- 2080
- 0
- 0
- 0
-
-
- 11409
- 2080
- 0
- 0
- 0
-
-
- 11410
- 2080
- 0
- 0
- 0
-
-
- 11411
- 2080
- 0
- 0
- 0
-
-
- 11412
- 2080
- 0
- 0
- 0
-
-
- 11413
- 2080
- 0
- 0
- 0
-
-
- 11414
- 20800
- 0
- 0
- 0
-
-
- 11415
- 20800
- 0
- 0
- 0
-
-
- 11416
- 20800
- 0
- 0
- 0
-
-
- 11417
- 20800
- 0
- 0
- 0
-
-
- 11418
- 20800
- 0
- 0
- 0
-
-
- 11419
- 20800
- 0
- 0
- 0
-
-
- 11420
- 20800
- 0
- 0
- 0
-
-
- 11421
- 1
- 0
- 0
- 0
-
-
- 11422
- 1
- 0
- 0
- 0
-
-
- 11423
- 1
- 0
- 0
- 0
-
-
- 11424
- 1
- 0
- 0
- 0
-
-
- 11425
- 1
- 0
- 0
- 0
-
-
- 11426
- 1
- 0
- 0
- 0
-
-
- 11427
- 3
- 0
- 0
- 0
-
-
- 11428
- 3
- 0
- 0
- 0
-
-
- 11429
- 9
- 0
- 0
- 0
-
-
- 11430
- 9
- 0
- 0
- 0
-
-
- 11431
- 6
- 0
- 0
- 0
-
-
- 11432
- 6
- 0
- 0
- 0
-
-
- 11433
- 216
- 0
- 0
- 0
-
-
- 11434
- 216
- 0
- 0
- 0
-
-
- 11435
- 144
- 0
- 0
- 0
-
-
- 11436
- 144
- 0
- 0
- 0
-
-
- 11437
- 150
- 0
- 0
- 0
-
-
- 11438
- 150
- 0
- 0
- 0
-
-
- 11439
- 75
- 0
- 0
- 0
-
-
- 11440
- 75
- 0
- 0
- 0
-
-
- 11441
- 11
- 0
- 0
- 0
-
-
- 11442
- 11
- 0
- 0
- 0
-
-
- 11443
- 13
- 0
- 0
- 0
-
-
- 11444
- 13
- 0
- 0
- 0
-
-
- 11445
- 105
- 0
- 0
- 0
-
-
- 11446
- 105
- 0
- 0
- 0
-
-
- 11447
- 52
- 0
- 0
- 0
-
-
- 11448
- 52
- 0
- 0
- 0
-
-
- 11449
- 66
- 0
- 0
- 0
-
-
- 11450
- 66
- 0
- 0
- 0
-
-
- 11451
- 44
- 0
- 0
- 0
-
-
- 11452
- 44
- 0
- 0
- 0
-
-
- 11453
- 72
- 0
- 0
- 0
-
-
- 11454
- 72
- 0
- 0
- 0
-
-
- 11455
- 36
- 0
- 0
- 0
-
-
- 11456
- 36
- 0
- 0
- 0
-
-
- 11457
- 90
- 0
- 0
- 0
-
-
- 11458
- 90
- 0
- 0
- 0
-
-
- 11459
- 60
- 0
- 0
- 0
-
-
- 11460
- 60
- 0
- 0
- 0
-
-
- 11461
- 100
- 0
- 0
- 0
-
-
- 11462
- 100
- 0
- 0
- 0
-
-
- 11463
- 50
- 0
- 0
- 0
-
-
- 11464
- 50
- 0
- 0
- 0
-
-
- 11465
- 114
- 0
- 0
- 0
-
-
- 11466
- 114
- 0
- 0
- 0
-
-
- 11467
- 76
- 0
- 0
- 0
-
-
- 11468
- 76
- 0
- 0
- 0
-
-
- 11469
- 135
- 0
- 0
- 0
-
-
- 11470
- 135
- 0
- 0
- 0
-
-
- 11471
- 90
- 0
- 0
- 0
-
-
- 11472
- 90
- 0
- 0
- 0
-
-
- 11473
- 216
- 0
- 0
- 0
-
-
- 11474
- 216
- 0
- 0
- 0
-
-
- 11475
- 144
- 0
- 0
- 0
-
-
- 11476
- 144
- 0
- 0
- 0
-
-
- 11477
- 150
- 0
- 0
- 0
-
-
- 11478
- 150
- 0
- 0
- 0
-
-
- 11479
- 100
- 0
- 0
- 0
-
-
- 11480
- 100
- 0
- 0
- 0
-
-
- 11481
- 160
- 0
- 0
- 0
-
-
- 11482
- 160
- 0
- 0
- 0
-
-
- 11483
- 90
- 0
- 0
- 0
-
-
- 11484
- 90
- 0
- 0
- 0
-
-
- 11485
- 165
- 0
- 0
- 0
-
-
- 11486
- 165
- 0
- 0
- 0
-
-
- 11487
- 110
- 0
- 0
- 0
-
-
- 11488
- 110
- 0
- 0
- 0
-
-
- 11489
- 180
- 0
- 0
- 0
-
-
- 11490
- 180
- 0
- 0
- 0
-
-
- 11491
- 130
- 0
- 0
- 0
-
-
- 11492
- 130
- 0
- 0
- 0
-
-
- 11493
- 180
- 0
- 0
- 0
-
-
- 11494
- 180
- 0
- 0
- 0
-
-
- 11495
- 120
- 0
- 0
- 0
-
-
- 11496
- 120
- 0
- 0
- 0
-
-
- 11497
- 198
- 0
- 0
- 0
-
-
- 11498
- 198
- 0
- 0
- 0
-
-
- 11499
- 132
- 0
- 0
- 0
-
-
- 11500
- 132
- 0
- 0
- 0
-
-
- 11501
- 216
- 0
- 0
- 0
-
-
- 11502
- 216
- 0
- 0
- 0
-
-
- 11503
- 144
- 0
- 0
- 0
-
-
- 11504
- 144
- 0
- 0
- 0
-
-
- 11505
- 198
- 0
- 0
- 0
-
-
- 11506
- 198
- 0
- 0
- 0
-
-
- 11507
- 132
- 0
- 0
- 0
-
-
- 11508
- 132
- 0
- 0
- 0
-
-
- 11509
- 216
- 0
- 0
- 0
-
-
- 11510
- 216
- 0
- 0
- 0
-
-
- 11511
- 144
- 0
- 0
- 0
-
-
- 11512
- 144
- 0
- 0
- 0
-
-
- 11513
- 200
- 0
- 0
- 0
-
-
- 11514
- 200
- 0
- 0
- 0
-
-
- 11515
- 150
- 0
- 0
- 0
-
-
- 11516
- 150
- 0
- 0
- 0
-
-
- 11517
- 9
- 0
- 0
- 0
-
-
- 11518
- 9
- 0
- 0
- 0
-
-
- 11519
- 6
- 0
- 0
- 0
-
-
- 11520
- 6
- 0
- 0
- 0
-
-
- 11521
- 150
- 0
- 0
- 0
-
-
- 11522
- 150
- 0
- 0
- 0
-
-
- 11523
- 125
- 0
- 0
- 0
-
-
- 11524
- 125
- 0
- 0
- 0
-
-
- 11525
- 25
- 0
- 0
- 0
-
-
- 11526
- 3
- 0
- 0
- 0
-
-
- 11527
- 3
- 0
- 0
- 0
-
-
- 11528
- 3
- 0
- 0
- 0
-
-
- 11529
- 3
- 0
- 0
- 0
-
-
- 11530
- 3
- 0
- 0
- 0
-
-
- 11531
- 3
- 0
- 0
- 0
-
-
- 11532
- 3
- 0
- 0
- 0
-
-
- 11533
- 3
- 0
- 0
- 0
-
-
- 11534
- 3
- 0
- 0
- 0
-
-
- 11535
- 3
- 0
- 0
- 0
-
-
- 11536
- 3
- 0
- 0
- 0
-
-
- 11537
- 3
- 0
- 0
- 0
-
-
- 11538
- 3
- 0
- 0
- 0
-
-
- 11539
- 3
- 0
- 0
- 0
-
-
- 11540
- 3
- 0
- 0
- 0
-
-
- 11541
- 3
- 0
- 0
- 0
-
-
- 11542
- 3
- 0
- 0
- 0
-
-
- 11543
- 3
- 0
- 0
- 0
-
-
- 11544
- 3
- 0
- 0
- 0
-
-
- 11545
- 3
- 0
- 0
- 0
-
-
- 11546
- 3
- 0
- 0
- 0
-
-
- 11547
- 3
- 0
- 0
- 0
-
-
- 11548
- 3
- 0
- 0
- 0
-
-
- 11549
- 3
- 0
- 0
- 0
-
-
- 11550
- 3
- 0
- 0
- 0
-
-
- 11551
- 3
- 0
- 0
- 0
-
-
- 11552
- 3
- 0
- 0
- 0
-
-
- 11553
- 3
- 0
- 0
- 0
-
-
- 11554
- 3
- 0
- 0
- 0
-
-
- 11555
- 3
- 0
- 0
- 0
-
-
- 11556
- 3
- 0
- 0
- 0
-
-
- 11557
- 3
- 0
- 0
- 0
-
-
- 11558
- 3
- 0
- 0
- 0
-
-
- 11559
- 3
- 0
- 0
- 0
-
-
- 11560
- 3
- 0
- 0
- 0
-
-
- 11561
- 3
- 0
- 0
- 0
-
-
- 11562
- 3
- 0
- 0
- 0
-
-
- 11563
- 3
- 0
- 0
- 0
-
-
- 11564
- 3
- 0
- 0
- 0
-
-
- 11565
- 3
- 0
- 0
- 0
-
-
- 11566
- 3
- 0
- 0
- 0
-
-
- 11567
- 3
- 0
- 0
- 0
-
-
- 11568
- 3
- 0
- 0
- 0
-
-
- 11569
- 3
- 0
- 0
- 0
-
-
- 11570
- 3
- 0
- 0
- 0
-
-
- 11571
- 3
- 0
- 0
- 0
-
-
- 11572
- 3
- 0
- 0
- 0
-
-
- 11573
- 3
- 0
- 0
- 0
-
-
- 11574
- 3
- 0
- 0
- 0
-
-
- 11575
- 3
- 0
- 0
- 0
-
-
- 11576
- 3
- 0
- 0
- 0
-
-
- 11577
- 3
- 0
- 0
- 0
-
-
- 11578
- 3
- 0
- 0
- 0
-
-
- 11579
- 3
- 0
- 0
- 0
-
-
- 11580
- 3
- 0
- 0
- 0
-
-
- 11581
- 3
- 0
- 0
- 0
-
-
- 11582
- 3
- 0
- 0
- 0
-
-
- 11583
- 3
- 0
- 0
- 0
-
-
- 11584
- 3
- 0
- 0
- 0
-
-
- 11585
- 3
- 0
- 0
- 0
-
-
- 11586
- 3
- 0
- 0
- 0
-
-
- 11587
- 3
- 0
- 0
- 0
-
-
- 11588
- 3
- 0
- 0
- 0
-
-
- 11589
- 3
- 0
- 0
- 0
-
-
- 11590
- 3
- 0
- 0
- 0
-
-
- 11591
- 3
- 0
- 0
- 0
-
-
- 11592
- 3
- 0
- 0
- 0
-
-
- 11593
- 3
- 0
- 0
- 0
-
-
- 11594
- 3
- 0
- 0
- 0
-
-
- 11595
- 3
- 0
- 0
- 0
-
-
- 11596
- 3
- 0
- 0
- 0
-
-
- 11597
- 3
- 0
- 0
- 0
-
-
- 11598
- 3
- 0
- 0
- 0
-
-
- 11599
- 3
- 0
- 0
- 0
-
-
- 11600
- 3
- 0
- 0
- 0
-
-
- 11601
- 3
- 0
- 0
- 0
-
-
- 11602
- 3
- 0
- 0
- 0
-
-
- 11603
- 3
- 0
- 0
- 0
-
-
- 11604
- 3
- 0
- 0
- 0
-
-
- 11605
- 3
- 0
- 0
- 0
-
-
- 11606
- 3
- 0
- 0
- 0
-
-
- 11607
- 3
- 0
- 0
- 0
-
-
- 11608
- 3
- 0
- 0
- 0
-
-
- 11609
- 3
- 0
- 0
- 0
-
-
- 11610
- 3
- 0
- 0
- 0
-
-
- 11611
- 3
- 0
- 0
- 0
-
-
- 11612
- 3
- 0
- 0
- 0
-
-
- 11613
- 3
- 0
- 0
- 0
-
-
- 11614
- 3
- 0
- 0
- 0
-
-
- 11615
- 3
- 0
- 0
- 0
-
-
- 11616
- 3
- 0
- 0
- 0
-
-
- 11617
- 3
- 0
- 0
- 0
-
-
- 11618
- 3
- 0
- 0
- 0
-
-
- 11619
- 3
- 0
- 0
- 0
-
-
- 11620
- 3
- 0
- 0
- 0
-
-
- 11621
- 3
- 0
- 0
- 0
-
-
- 11622
- 3
- 0
- 0
- 0
-
-
- 11623
- 3
- 0
- 0
- 0
-
-
- 11624
- 3
- 0
- 0
- 0
-
-
- 11625
- 3
- 0
- 0
- 0
-
-
- 11626
- 3
- 0
- 0
- 0
-
-
- 11627
- 3
- 0
- 0
- 0
-
-
- 11628
- 3
- 0
- 0
- 0
-
-
- 11629
- 3
- 0
- 0
- 0
-
-
- 11630
- 3
- 0
- 0
- 0
-
-
- 11631
- 3
- 0
- 0
- 0
-
-
- 11632
- 3
- 0
- 0
- 0
-
-
- 11633
- 3
- 0
- 0
- 0
-
-
- 11634
- 3
- 0
- 0
- 0
-
-
- 11635
- 3
- 0
- 0
- 0
-
-
- 11636
- 3
- 0
- 0
- 0
-
-
- 11637
- 3
- 0
- 0
- 0
-
-
- 11638
- 3
- 0
- 0
- 0
-
-
- 11639
- 3
- 0
- 0
- 0
-
-
- 11640
- 1
- 0
- 0
- 0
-
-
- 11641
- 3
- 0
- 0
- 0
-
-
- 11642
- 3
- 0
- 0
- 0
-
-
- 11643
- 3
- 0
- 0
- 0
-
-
- 11644
- 3
- 0
- 0
- 0
-
-
- 11645
- 3
- 0
- 0
- 0
-
-
- 11646
- 3
- 0
- 0
- 0
-
-
- 11647
- 3
- 0
- 0
- 0
-
-
- 11648
- 3
- 0
- 0
- 0
-
-
- 11649
- 3
- 0
- 0
- 0
-
-
- 11650
- 3
- 0
- 0
- 0
-
-
- 11651
- 3
- 0
- 0
- 0
-
-
- 11652
- 3
- 0
- 0
- 0
-
-
- 11653
- 3
- 0
- 0
- 0
-
-
- 11654
- 3
- 0
- 0
- 0
-
-
- 11655
- 3
- 0
- 0
- 0
-
-
- 11656
- 3
- 0
- 0
- 0
-
-
- 11657
- 3
- 0
- 0
- 0
-
-
- 11658
- 1
- 0
- 0
- 0
-
-
- 11659
- 1
- 0
- 0
- 0
-
-
- 11660
- 1
- 0
- 0
- 0
-
-
- 11661
- 1
- 0
- 0
- 0
-
-
- 11662
- 1
- 0
- 0
- 0
-
-
- 11663
- 9851
- 0
- 0
- 0
-
-
- 11664
- 9851
- 0
- 0
- 0
-
-
- 11665
- 9851
- 0
- 0
- 0
-
-
- 11666
- 100
- 0
- 0
- 0
-
-
- 11667
- 100
- 0
- 0
- 0
-
-
- 11668
- 100
- 0
- 0
- 0
-
-
- 11669
- 100
- 0
- 0
- 0
-
-
- 11670
- 100
- 0
- 0
- 0
-
-
- 11671
- 100
- 0
- 0
- 0
-
-
- 11672
- 100
- 0
- 0
- 0
-
-
- 11673
- 100
- 0
- 0
- 0
-
-
- 11674
- 9851
- 0
- 0
- 0
-
-
- 11675
- 9851
- 0
- 0
- 0
-
-
- 11676
- 9851
- 0
- 0
- 0
-
-
- 11677
- 6
- 0
- 0
- 0
-
-
- 11678
- 1
- 0
- 0
- 0
-
-
- 11679
- 1
- 0
- 0
- 0
-
-
- 11680
- 1
- 0
- 0
- 0
-
-
- 11681
- 1
- 0
- 0
- 0
-
-
- 11682
- 1
- 0
- 0
- 0
-
-
- 11683
- 1
- 0
- 0
- 0
-
-
- 11684
- 1
- 0
- 0
- 0
-
-
- 11685
- 1
- 0
- 0
- 0
-
-
- 11686
- 500000
- 0
- 0
- 0
-
-
- 11687
- 500000
- 0
- 0
- 0
-
-
- 11688
- 500000
- 0
- 0
- 0
-
-
- 11689
- 500000
- 0
- 0
- 0
-
-
- 11690
- 750000
- 0
- 0
- 0
-
-
- 11691
- 750000
- 0
- 0
- 0
-
-
- 11692
- 500000
- 0
- 0
- 0
-
-
- 11693
- 500000
- 0
- 0
- 0
-
-
- 11694
- 1250000
- 0
- 0
- 0
-
-
- 11695
- 1250000
- 0
- 0
- 0
-
-
- 11696
- 1250000
- 0
- 0
- 0
-
-
- 11697
- 1250000
- 0
- 0
- 0
-
-
- 11698
- 1250000
- 0
- 0
- 0
-
-
- 11699
- 1250000
- 0
- 0
- 0
-
-
- 11700
- 1250000
- 0
- 0
- 0
-
-
- 11701
- 1250000
- 0
- 0
- 0
-
-
- 11702
- 500000
- 0
- 0
- 0
-
-
- 11703
- 500000
- 0
- 0
- 0
-
-
- 11704
- 500000
- 0
- 0
- 0
-
-
- 11705
- 500000
- 0
- 0
- 0
-
-
- 11706
- 500000
- 0
- 0
- 0
-
-
- 11707
- 500000
- 0
- 0
- 0
-
-
- 11708
- 500000
- 0
- 0
- 0
-
-
- 11709
- 500000
- 0
- 0
- 0
-
-
- 11710
- 250000
- 0
- 0
- 0
-
-
- 11711
- 250000
- 0
- 0
- 0
-
-
- 11712
- 250000
- 0
- 0
- 0
-
-
- 11713
- 250000
- 0
- 0
- 0
-
-
- 11714
- 250000
- 0
- 0
- 0
-
-
- 11715
- 250000
- 0
- 0
- 0
-
-
- 11716
- 100000
- 0
- 0
- 0
-
-
- 11717
- 100000
- 0
- 0
- 0
-
-
- 11718
- 20000
- 0
- 0
- 0
-
-
- 11719
- 20000
- 0
- 0
- 0
-
-
- 11720
- 60000
- 0
- 0
- 0
-
-
- 11721
- 60000
- 0
- 0
- 0
-
-
- 11722
- 50000
- 0
- 0
- 0
-
-
- 11723
- 50000
- 0
- 0
- 0
-
-
- 11724
- 265000
- 0
- 0
- 0
-
-
- 11725
- 265000
- 0
- 0
- 0
-
-
- 11726
- 272500
- 0
- 0
- 0
-
-
- 11727
- 272500
- 0
- 0
- 0
-
-
- 11728
- 25000
- 0
- 0
- 0
-
-
- 11729
- 25000
- 0
- 0
- 0
-
-
- 11730
- 130000
- 0
- 0
- 0
-
-
- 11731
- 130000
- 0
- 0
- 0
-
-
- 11732
- 20000
- 0
- 0
- 0
-
-
- 11733
- 20000
- 0
- 0
- 0
-
-
- 11734
- 1
- 0
- 0
- 0
-
-
- 11735
- 1
- 0
- 0
- 0
-
-
- 11736
- 17000
- 0
- 0
- 0
-
-
- 11737
- 17000
- 0
- 0
- 0
-
-
- 11738
- 45000
- 0
- 0
- 0
-
-
- 11739
- 45000
- 0
- 0
- 0
-
-
- 11740
- 1
- 0
- 0
- 0
-
-
- 11741
- 1
- 0
- 0
- 0
-
-
- 11742
- 1
- 0
- 0
- 0
-
-
- 11743
- 1
- 0
- 0
- 0
-
-
- 11744
- 1
- 0
- 0
- 0
-
-
- 11745
- 1
- 0
- 0
- 0
-
-
- 11746
- 1
- 0
- 0
- 0
-
-
- 11747
- 1
- 0
- 0
- 0
-
-
- 11748
- 1
- 0
- 0
- 0
-
-
- 11749
- 10
- 0
- 0
- 0
-
-
- 11750
- 1
- 0
- 0
- 0
-
-
- 11751
- 1
- 0
- 0
- 0
-
-
- 11752
- 1
- 0
- 0
- 0
-
-
- 11753
- 1
- 0
- 0
- 0
-
-
- 11754
- 1
- 0
- 0
- 0
-
-
- 11755
- 1
- 0
- 0
- 0
-
-
- 11756
- 1
- 0
- 0
- 0
-
-
- 11757
- 1
- 0
- 0
- 0
-
-
- 11758
- 1
- 0
- 0
- 0
-
-
- 11759
- 1
- 0
- 0
- 0
-
-
- 11760
- 1
- 0
- 0
- 0
-
-
- 11761
- 1
- 0
- 0
- 0
-
-
- 11762
- 1
- 0
- 0
- 0
-
-
- 11763
- 1
- 0
- 0
- 0
-
-
- 11764
- 1
- 0
- 0
- 0
-
-
- 11765
- 1
- 0
- 0
- 0
-
-
- 11766
- 1
- 0
- 0
- 0
-
-
- 11767
- 1
- 0
- 0
- 0
-
-
- 11768
- 1
- 0
- 0
- 0
-
-
- 11769
- 1
- 0
- 0
- 0
-
-
- 11770
- 1
- 0
- 0
- 0
-
-
- 11771
- 1
- 0
- 0
- 0
-
-
- 11772
- 1
- 0
- 0
- 0
-
-
- 11773
- 1
- 0
- 0
- 0
-
-
- 11774
- 1
- 0
- 0
- 0
-
-
- 11775
- 1
- 0
- 0
- 0
-
-
- 11776
- 1
- 0
- 0
- 0
-
-
- 11777
- 1
- 0
- 0
- 0
-
-
- 11778
- 1
- 0
- 0
- 0
-
-
- 11779
- 1
- 0
- 0
- 0
-
-
- 11780
- 1
- 0
- 0
- 0
-
-
- 11781
- 5
- 0
- 0
- 0
-
-
- 11782
- 1
- 0
- 0
- 0
-
-
- 11783
- 1
- 0
- 0
- 0
-
-
- 11784
- 1
- 0
- 0
- 0
-
-
- 11785
- 1
- 0
- 0
- 0
-
-
- 11786
- 1
- 0
- 0
- 0
-
-
- 11787
- 1
- 0
- 0
- 0
-
-
- 11788
- 1
- 0
- 0
- 0
-
-
- 11789
- 1
- 0
- 0
- 0
-
-
- 11790
- 1
- 0
- 0
- 0
-
-
- 11791
- 40
- 0
- 0
- 0
-
-
- 11792
- 1
- 0
- 0
- 0
-
-
- 11793
- 1
- 0
- 0
- 0
-
-
- 11794
- 20
- 0
- 0
- 0
-
-
- 11795
- 1
- 0
- 0
- 0
-
-
- 11796
- 1
- 0
- 0
- 0
-
-
- 11797
- 1
- 0
- 0
- 0
-
-
- 11798
- 1
- 0
- 0
- 0
-
-
- 11799
- 1
- 0
- 0
- 0
-
-
- 11800
- 1
- 0
- 0
- 0
-
-
- 11801
- 1
- 0
- 0
- 0
-
-
- 11802
- 1
- 0
- 0
- 0
-
-
- 11803
- 1
- 0
- 0
- 0
-
-
- 11804
- 1
- 0
- 0
- 0
-
-
- 11805
- 1
- 0
- 0
- 0
-
-
- 11806
- 1
- 0
- 0
- 0
-
-
- 11807
- 10
- 0
- 0
- 0
-
-
- 11808
- 20
- 0
- 0
- 0
-
-
- 11809
- 14
- 0
- 0
- 0
-
-
- 11810
- 13
- 0
- 0
- 0
-
-
- 11811
- 13
- 0
- 0
- 0
-
-
- 11812
- 13
- 0
- 0
- 0
-
-
- 11813
- 1
- 0
- 0
- 0
-
-
- 11814
- 20
- 0
- 0
- 0
-
-
- 11815
- 20
- 0
- 0
- 0
-
-
- 11816
- 20
- 0
- 0
- 0
-
-
- 11817
- 20
- 0
- 0
- 0
-
-
- 11818
- 20
- 0
- 0
- 0
-
-
- 11819
- 20
- 0
- 0
- 0
-
-
- 11820
- 20
- 0
- 0
- 0
-
-
- 11821
- 20
- 0
- 0
- 0
-
-
- 11822
- 20
- 0
- 0
- 0
-
-
- 11823
- 20
- 0
- 0
- 0
-
-
- 11824
- 20
- 0
- 0
- 0
-
-
- 11825
- 20
- 0
- 0
- 0
-
-
- 11826
- 20
- 0
- 0
- 0
-
-
- 11827
- 20
- 0
- 0
- 0
-
-
- 11828
- 20
- 0
- 0
- 0
-
-
- 11829
- 20
- 0
- 0
- 0
-
-
- 11830
- 20
- 0
- 0
- 0
-
-
- 11831
- 20
- 0
- 0
- 0
-
-
- 11832
- 20
- 0
- 0
- 0
-
-
- 11833
- 20
- 0
- 0
- 0
-
-
- 11834
- 20
- 0
- 0
- 0
-
-
- 11835
- 20
- 0
- 0
- 0
-
-
- 11836
- 20
- 0
- 0
- 0
-
-
- 11837
- 20
- 0
- 0
- 0
-
-
- 11838
- 20
- 0
- 0
- 0
-
-
- 11839
- 20
- 0
- 0
- 0
-
-
- 11840
- 20
- 0
- 0
- 0
-
-
- 11841
- 20
- 0
- 0
- 0
-
-
- 11842
- 20
- 0
- 0
- 0
-
-
- 11843
- 20
- 0
- 0
- 0
-
-
- 11844
- 20
- 0
- 0
- 0
-
-
- 11845
- 20
- 0
- 0
- 0
-
-
- 11846
- 20
- 0
- 0
- 0
-
-
- 11847
- 20
- 0
- 0
- 0
-
-
- 11848
- 20
- 0
- 0
- 0
-
-
- 11849
- 20
- 0
- 0
- 0
-
-
- 11850
- 20
- 0
- 0
- 0
-
-
- 11851
- 20
- 0
- 0
- 0
-
-
- 11852
- 20
- 0
- 0
- 0
-
-
- 11853
- 20
- 0
- 0
- 0
-
-
- 11854
- 20
- 0
- 0
- 0
-
-
- 11855
- 20
- 0
- 0
- 0
-
-
- 11856
- 20
- 0
- 0
- 0
-
-
- 11857
- 20
- 0
- 0
- 0
-
-
- 11858
- 20
- 0
- 0
- 0
-
-
- 11859
- 20
- 0
- 0
- 0
-
-
- 11860
- 20
- 0
- 0
- 0
-
-
- 11861
- 20
- 0
- 0
- 0
-
-
- 11862
- 20
- 0
- 0
- 0
-
-
- 11863
- 20
- 0
- 0
- 0
-
-
- 11864
- 20
- 0
- 0
- 0
-
-
- 11865
- 20
- 0
- 0
- 0
-
-
- 11866
- 20
- 0
- 0
- 0
-
-
- 11867
- 20
- 0
- 0
- 0
-
-
- 11868
- 20
- 0
- 0
- 0
-
-
- 11869
- 20
- 0
- 0
- 0
-
-
- 11870
- 20
- 0
- 0
- 0
-
-
- 11871
- 20
- 0
- 0
- 0
-
-
- 11872
- 20
- 0
- 0
- 0
-
-
- 11873
- 20
- 0
- 0
- 0
-
-
- 11874
- 20
- 0
- 0
- 0
-
-
- 11875
- 20
- 0
- 0
- 0
-
-
- 11876
- 20
- 0
- 0
- 0
-
-
- 11877
- 20
- 0
- 0
- 0
-
-
- 11878
- 20
- 0
- 0
- 0
-
-
- 11879
- 20
- 0
- 0
- 0
-
-
- 11880
- 20
- 0
- 0
- 0
-
-
- 11881
- 20
- 0
- 0
- 0
-
-
- 11882
- 20
- 0
- 0
- 0
-
-
- 11883
- 20
- 0
- 0
- 0
-
-
- 11884
- 20
- 0
- 0
- 0
-
-
- 11885
- 20
- 0
- 0
- 0
-
-
- 11886
- 20
- 0
- 0
- 0
-
-
- 11887
- 20
- 0
- 0
- 0
-
-
- 11888
- 20
- 0
- 0
- 0
-
-
- 11889
- 20
- 0
- 0
- 0
-
-
- 11890
- 20
- 0
- 0
- 0
-
-
- 11891
- 20
- 0
- 0
- 0
-
-
- 11892
- 20
- 0
- 0
- 0
-
-
- 11893
- 20
- 0
- 0
- 0
-
-
- 11894
- 20
- 0
- 0
- 0
-
-
- 11895
- 20
- 0
- 0
- 0
-
-
- 11896
- 20
- 0
- 0
- 0
-
-
- 11897
- 20
- 0
- 0
- 0
-
-
- 11898
- 20
- 0
- 0
- 0
-
-
- 11899
- 20
- 0
- 0
- 0
-
-
- 11900
- 20
- 0
- 0
- 0
-
-
- 11901
- 20
- 0
- 0
- 0
-
-
- 11902
- 20
- 0
- 0
- 0
-
-
- 11903
- 20
- 0
- 0
- 0
-
-
- 11904
- 20
- 0
- 0
- 0
-
-
- 11905
- 20
- 0
- 0
- 0
-
-
- 11906
- 20
- 0
- 0
- 0
-
-
- 11907
- 20
- 0
- 0
- 0
-
-
- 11908
- 20
- 0
- 0
- 0
-
-
- 11909
- 20
- 0
- 0
- 0
-
-
- 11910
- 20
- 0
- 0
- 0
-
-
- 11911
- 20
- 0
- 0
- 0
-
-
- 11912
- 20
- 0
- 0
- 0
-
-
- 11913
- 20
- 0
- 0
- 0
-
-
- 11914
- 20
- 0
- 0
- 0
-
-
- 11915
- 20
- 0
- 0
- 0
-
-
- 11916
- 20
- 0
- 0
- 0
-
-
- 11917
- 20
- 0
- 0
- 0
-
-
- 11918
- 20
- 0
- 0
- 0
-
-
- 11919
- 20
- 0
- 0
- 0
-
-
- 11920
- 20
- 0
- 0
- 0
-
-
- 11921
- 20
- 0
- 0
- 0
-
-
- 11922
- 20
- 0
- 0
- 0
-
-
- 11923
- 20
- 0
- 0
- 0
-
-
- 11924
- 20
- 0
- 0
- 0
-
-
- 11925
- 20
- 0
- 0
- 0
-
-
- 11926
- 20
- 0
- 0
- 0
-
-
- 11927
- 20
- 0
- 0
- 0
-
-
- 11928
- 20
- 0
- 0
- 0
-
-
- 11929
- 20
- 0
- 0
- 0
-
-
- 11930
- 20
- 0
- 0
- 0
-
-
- 11931
- 20
- 0
- 0
- 0
-
-
- 11932
- 20
- 0
- 0
- 0
-
-
- 11933
- 20
- 0
- 0
- 0
-
-
- 11934
- 20
- 0
- 0
- 0
-
-
- 11935
- 20
- 0
- 0
- 0
-
-
- 11936
- 20
- 0
- 0
- 0
-
-
- 11937
- 20
- 0
- 0
- 0
-
-
- 11938
- 20
- 0
- 0
- 0
-
-
- 11939
- 20
- 0
- 0
- 0
-
-
- 11940
- 20
- 0
- 0
- 0
-
-
- 11941
- 20
- 0
- 0
- 0
-
-
- 11942
- 20
- 0
- 0
- 0
-
-
- 11943
- 20
- 0
- 0
- 0
-
-
- 11944
- 20
- 0
- 0
- 0
-
-
- 11945
- 20
- 0
- 0
- 0
-
-
- 11946
- 20
- 0
- 0
- 0
-
-
- 11947
- 20
- 0
- 0
- 0
-
-
- 11948
- 1
- 0
- 0
- 0
-
-
- 11949
- 1
- 0
- 0
- 0
-
-
- 11950
- 1
- 0
- 0
- 0
-
-
- 11951
- 1
- 0
- 0
- 0
-
-
- 11952
- 1
- 0
- 0
- 0
-
-
- 11953
- 1
- 0
- 0
- 0
-
-
- 11954
- 1
- 0
- 0
- 0
-
-
- 11955
- 1
- 0
- 0
- 0
-
-
- 11956
- 1
- 0
- 0
- 0
-
-
- 11957
- 1
- 0
- 0
- 0
-
-
- 11958
- 1
- 0
- 0
- 0
-
-
- 11959
- 1
- 0
- 0
- 0
-
-
- 11960
- 20
- 0
- 0
- 0
-
-
- 11961
- 20
- 0
- 0
- 0
-
-
- 11962
- 20
- 0
- 0
- 0
-
-
- 11963
- 20
- 0
- 0
- 0
-
-
- 11964
- 1
- 0
- 0
- 0
-
-
- 11965
- 1
- 0
- 0
- 0
-
-
- 11966
- 1
- 0
- 0
- 0
-
-
- 11967
- 20
- 0
- 0
- 0
-
-
- 11968
- 20
- 0
- 0
- 0
-
-
- 11969
- 100
- 0
- 0
- 0
-
-
- 11970
- 1
- 0
- 0
- 0
-
-
- 11971
- 1
- 0
- 0
- 0
-
-
- 11972
- 1
- 0
- 0
- 0
-
-
- 11973
- 1
- 0
- 0
- 0
-
-
- 11974
- 1
- 0
- 0
- 0
-
-
- 11975
- 1
- 0
- 0
- 0
-
-
- 11976
- 1
- 0
- 0
- 0
-
-
- 11977
- 1
- 0
- 0
- 0
-
-
- 11978
- 1
- 0
- 0
- 0
-
-
- 11979
- 1
- 0
- 0
- 0
-
-
- 11980
- 1
- 0
- 0
- 0
-
-
- 11981
- 1
- 0
- 0
- 0
-
-
- 11982
- 1
- 0
- 0
- 0
-
-
- 11983
- 1
- 0
- 0
- 0
-
-
- 11984
- 1
- 0
- 0
- 0
-
-
- 11985
- 1
- 0
- 0
- 0
-
-
- 11986
- 1
- 0
- 0
- 0
-
-
- 11987
- 1
- 0
- 0
- 0
-
-
- 11988
- 1
- 0
- 0
- 0
-
-
- 11989
- 1
- 0
- 0
- 0
-
-
- 11990
- 1
- 0
- 0
- 0
-
-
- 11991
- 1
- 0
- 0
- 0
-
-
- 11992
- 1
- 0
- 0
- 0
-
-
- 11993
- 1
- 0
- 0
- 0
-
-
- 11994
- 1
- 0
- 0
- 0
-
-
- 11995
- 1
- 0
- 0
- 0
-
-
- 11996
- 1
- 0
- 0
- 0
-
-
- 11997
- 1
- 0
- 0
- 0
-
-
- 11998
- 1
- 0
- 0
- 0
-
-
- 11999
- 1
- 0
- 0
- 0
-
-
- 12000
- 1
- 0
- 0
- 0
-
-
- 12001
- 1
- 0
- 0
- 0
-
-
- 12002
- 1
- 0
- 0
- 0
-
-
- 12003
- 1
- 0
- 0
- 0
-
-
- 12004
- 1
- 0
- 0
- 0
-
-
- 12005
- 1
- 0
- 0
- 0
-
-
- 12006
- 1
- 0
- 0
- 0
-
-
- 12007
- 724
- 0
- 0
- 0
-
-
- 12008
- 724
- 0
- 0
- 0
-
-
- 12009
- 599
- 0
- 0
- 0
-
-
- 12010
- 599
- 0
- 0
- 0
-
-
- 12011
- 4624
- 0
- 0
- 0
-
-
- 12012
- 4624
- 0
- 0
- 0
-
-
- 12013
- 3524
- 0
- 0
- 0
-
-
- 12014
- 3524
- 0
- 0
- 0
-
-
- 12015
- 3324
- 0
- 0
- 0
-
-
- 12016
- 3324
- 0
- 0
- 0
-
-
- 12017
- 449
- 0
- 0
- 0
-
-
- 12018
- 449
- 0
- 0
- 0
-
-
- 12019
- 649
- 0
- 0
- 0
-
-
- 12020
- 649
- 0
- 0
- 0
-
-
- 12021
- 2224
- 0
- 0
- 0
-
-
- 12022
- 2224
- 0
- 0
- 0
-
-
- 12023
- 4024
- 0
- 0
- 0
-
-
- 12024
- 4024
- 0
- 0
- 0
-
-
- 12025
- 3624
- 0
- 0
- 0
-
-
- 12026
- 3624
- 0
- 0
- 0
-
-
- 12027
- 4199
- 0
- 0
- 0
-
-
- 12028
- 4199
- 0
- 0
- 0
-
-
- 12029
- 3174
- 0
- 0
- 0
-
-
- 12030
- 3174
- 0
- 0
- 0
-
-
- 12031
- 449
- 0
- 0
- 0
-
-
- 12032
- 449
- 0
- 0
- 0
-
-
- 12033
- 3674
- 0
- 0
- 0
-
-
- 12034
- 3674
- 0
- 0
- 0
-
-
- 12035
- 3074
- 0
- 0
- 0
-
-
- 12036
- 3074
- 0
- 0
- 0
-
-
- 12037
- 3399
- 0
- 0
- 0
-
-
- 12038
- 3399
- 0
- 0
- 0
-
-
- 12039
- 3924
- 0
- 0
- 0
-
-
- 12040
- 3924
- 0
- 0
- 0
-
-
- 12041
- 2624
- 0
- 0
- 0
-
-
- 12042
- 2624
- 0
- 0
- 0
-
-
- 12043
- 624
- 0
- 0
- 0
-
-
- 12044
- 624
- 0
- 0
- 0
-
-
- 12045
- 3624
- 0
- 0
- 0
-
-
- 12046
- 3624
- 0
- 0
- 0
-
-
- 12047
- 599
- 0
- 0
- 0
-
-
- 12048
- 599
- 0
- 0
- 0
-
-
- 12049
- 1549
- 0
- 0
- 0
-
-
- 12050
- 1549
- 0
- 0
- 0
-
-
- 12051
- 3024
- 0
- 0
- 0
-
-
- 12052
- 3024
- 0
- 0
- 0
-
-
- 12053
- 2449
- 0
- 0
- 0
-
-
- 12054
- 2449
- 0
- 0
- 0
-
-
- 12055
- 1849
- 0
- 0
- 0
-
-
- 12056
- 1849
- 0
- 0
- 0
-
-
- 12057
- 774
- 0
- 0
- 0
-
-
- 12058
- 774
- 0
- 0
- 0
-
-
- 12059
- 624
- 0
- 0
- 0
-
-
- 12060
- 624
- 0
- 0
- 0
-
-
- 12061
- 3349
- 0
- 0
- 0
-
-
- 12062
- 3349
- 0
- 0
- 0
-
-
- 12063
- 1699
- 0
- 0
- 0
-
-
- 12064
- 1699
- 0
- 0
- 0
-
-
- 12065
- 2524
- 0
- 0
- 0
-
-
- 12066
- 2524
- 0
- 0
- 0
-
-
- 12067
- 2299
- 0
- 0
- 0
-
-
- 12068
- 2299
- 0
- 0
- 0
-
-
- 12069
- 4574
- 0
- 0
- 0
-
-
- 12070
- 4574
- 0
- 0
- 0
-
-
- 12071
- 2374
- 0
- 0
- 0
-
-
- 12072
- 2374
- 0
- 0
- 0
-
-
- 12073
- 2974
- 0
- 0
- 0
-
-
- 12074
- 2974
- 0
- 0
- 0
-
-
- 12075
- 3549
- 0
- 0
- 0
-
-
- 12076
- 3549
- 0
- 0
- 0
-
-
- 12077
- 3949
- 0
- 0
- 0
-
-
- 12078
- 3949
- 0
- 0
- 0
-
-
- 12079
- 4224
- 0
- 0
- 0
-
-
- 12080
- 4224
- 0
- 0
- 0
-
-
- 12081
- 4024
- 0
- 0
- 0
-
-
- 12082
- 4024
- 0
- 0
- 0
-
-
- 12083
- 449
- 0
- 0
- 0
-
-
- 12084
- 449
- 0
- 0
- 0
-
-
- 12085
- 3949
- 0
- 0
- 0
-
-
- 12086
- 3949
- 0
- 0
- 0
-
-
- 12087
- 699
- 0
- 0
- 0
-
-
- 12088
- 699
- 0
- 0
- 0
-
-
- 12089
- 5499
- 0
- 0
- 0
-
-
- 12090
- 5499
- 0
- 0
- 0
-
-
- 12091
- 1599
- 0
- 0
- 0
-
-
- 12092
- 1599
- 0
- 0
- 0
-
-
- 12093
- 5699
- 0
- 0
- 0
-
-
- 12094
- 5699
- 0
- 0
- 0
-
-
- 12095
- 2624
- 0
- 0
- 0
-
-
- 12096
- 2624
- 0
- 0
- 0
-
-
- 12097
- 2624
- 0
- 0
- 0
-
-
- 12098
- 2624
- 0
- 0
- 0
-
-
- 12099
- 2624
- 0
- 0
- 0
-
-
- 12100
- 2624
- 0
- 0
- 0
-
-
- 12101
- 2624
- 0
- 0
- 0
-
-
- 12102
- 2624
- 0
- 0
- 0
-
-
- 12103
- 2624
- 0
- 0
- 0
-
-
- 12104
- 2624
- 0
- 0
- 0
-
-
- 12105
- 2624
- 0
- 0
- 0
-
-
- 12106
- 2624
- 0
- 0
- 0
-
-
- 12107
- 2624
- 0
- 0
- 0
-
-
- 12108
- 2624
- 0
- 0
- 0
-
-
- 12109
- 100
- 0
- 0
- 0
-
-
- 12110
- 100
- 0
- 0
- 0
-
-
- 12111
- 1000
- 0
- 0
- 0
-
-
- 12112
- 1000
- 0
- 0
- 0
-
-
- 12113
- 1000
- 0
- 0
- 0
-
-
- 12114
- 1000
- 0
- 0
- 0
-
-
- 12115
- 1000
- 0
- 0
- 0
-
-
- 12116
- 1000
- 0
- 0
- 0
-
-
- 12117
- 1000
- 0
- 0
- 0
-
-
- 12118
- 1000
- 0
- 0
- 0
-
-
- 12119
- 1000
- 0
- 0
- 0
-
-
- 12120
- 1000
- 0
- 0
- 0
-
-
- 12121
- 1000
- 0
- 0
- 0
-
-
- 12122
- 1000
- 0
- 0
- 0
-
-
- 12123
- 699
- 0
- 0
- 0
-
-
- 12124
- 699
- 0
- 0
- 0
-
-
- 12125
- 10
- 0
- 0
- 0
-
-
- 12126
- 10
- 0
- 0
- 0
-
-
- 12127
- 10
- 0
- 0
- 0
-
-
- 12128
- 10
- 0
- 0
- 0
-
-
- 12129
- 1
- 0
- 0
- 0
-
-
- 12130
- 10
- 0
- 0
- 0
-
-
- 12131
- 10
- 0
- 0
- 0
-
-
- 12132
- 200
- 0
- 0
- 0
-
-
- 12133
- 200
- 0
- 0
- 0
-
-
- 12134
- 30
- 0
- 0
- 0
-
-
- 12135
- 30
- 0
- 0
- 0
-
-
- 12136
- 20
- 0
- 0
- 0
-
-
- 12137
- 20
- 0
- 0
- 0
-
-
- 12138
- 10
- 0
- 0
- 0
-
-
- 12139
- 10
- 0
- 0
- 0
-
-
- 12140
- 190
- 0
- 0
- 0
-
-
- 12141
- 190
- 0
- 0
- 0
-
-
- 12142
- 152
- 0
- 0
- 0
-
-
- 12143
- 152
- 0
- 0
- 0
-
-
- 12144
- 114
- 0
- 0
- 0
-
-
- 12145
- 114
- 0
- 0
- 0
-
-
- 12146
- 76
- 0
- 0
- 0
-
-
- 12147
- 76
- 0
- 0
- 0
-
-
- 12148
- 20
- 0
- 0
- 0
-
-
- 12149
- 1
- 0
- 0
- 0
-
-
- 12150
- 1
- 0
- 0
- 0
-
-
- 12151
- 1
- 0
- 0
- 0
-
-
- 12152
- 1
- 0
- 0
- 0
-
-
- 12153
- 50
- 0
- 0
- 0
-
-
- 12154
- 50
- 0
- 0
- 0
-
-
- 12155
- 1
- 0
- 0
- 0
-
-
- 12156
- 5
- 0
- 0
- 0
-
-
- 12157
- 5
- 0
- 0
- 0
-
-
- 12158
- 100
- 0
- 0
- 0
-
-
- 12159
- 100
- 0
- 0
- 0
-
-
- 12160
- 100
- 0
- 0
- 0
-
-
- 12161
- 1
- 0
- 0
- 0
-
-
- 12162
- 1
- 0
- 0
- 0
-
-
- 12163
- 100
- 0
- 0
- 0
-
-
- 12164
- 1
- 0
- 0
- 0
-
-
- 12165
- 1
- 0
- 0
- 0
-
-
- 12166
- 1
- 0
- 0
- 0
-
-
- 12167
- 1
- 0
- 0
- 0
-
-
- 12168
- 1
- 0
- 0
- 0
-
-
- 12169
- 99000
- 0
- 0
- 0
-
-
- 12170
- 99000
- 0
- 0
- 0
-
-
- 12171
- 1
- 0
- 0
- 0
-
-
- 12172
- 24
- 0
- 0
- 0
-
-
- 12173
- 24
- 0
- 0
- 0
-
-
- 12174
- 1
- 0
- 0
- 0
-
-
- 12175
- 1
- 0
- 0
- 0
-
-
- 12176
- 18
- 0
- 0
- 0
-
-
- 12177
- 1
- 0
- 0
- 0
-
-
- 12178
- 1
- 0
- 0
- 0
-
-
- 12179
- 1
- 0
- 0
- 0
-
-
- 12180
- 1
- 0
- 0
- 0
-
-
- 12181
- 23
- 0
- 0
- 0
-
-
- 12182
- 23
- 0
- 0
- 0
-
-
- 12183
- 25
- 0
- 0
- 0
-
-
- 12184
- 1
- 0
- 0
- 0
-
-
- 12185
- 1
- 0
- 0
- 0
-
-
- 12186
- 1
- 0
- 0
- 0
-
-
- 12187
- 1
- 0
- 0
- 0
-
-
- 12188
- 1
- 0
- 0
- 0
-
-
- 12189
- 1
- 0
- 0
- 0
-
-
- 12190
- 1
- 0
- 0
- 0
-
-
- 12191
- 1
- 0
- 0
- 0
-
-
- 12192
- 1
- 0
- 0
- 0
-
-
- 12193
- 1
- 0
- 0
- 0
-
-
- 12194
- 1
- 0
- 0
- 0
-
-
- 12195
- 1
- 0
- 0
- 0
-
-
- 12196
- 1
- 0
- 0
- 0
-
-
- 12197
- 1
- 0
- 0
- 0
-
-
- 12198
- 1
- 0
- 0
- 0
-
-
- 12199
- 1
- 0
- 0
- 0
-
-
- 12200
- 1
- 0
- 0
- 0
-
-
- 12201
- 1
- 0
- 0
- 0
-
-
- 12202
- 1
- 0
- 0
- 0
-
-
- 12203
- 1
- 0
- 0
- 0
-
-
- 12204
- 100
- 0
- 0
- 0
-
-
- 12205
- 100
- 0
- 0
- 0
-
-
- 12206
- 1
- 0
- 0
- 0
-
-
- 12207
- 200
- 0
- 0
- 0
-
-
- 12208
- 200
- 0
- 0
- 0
-
-
- 12209
- 1
- 0
- 0
- 0
-
-
- 12210
- 400
- 0
- 0
- 0
-
-
- 12211
- 400
- 0
- 0
- 0
-
-
- 12212
- 1
- 0
- 0
- 0
-
-
- 12213
- 400
- 0
- 0
- 0
-
-
- 12214
- 400
- 0
- 0
- 0
-
-
- 12215
- 1
- 0
- 0
- 0
-
-
- 12216
- 400
- 0
- 0
- 0
-
-
- 12217
- 400
- 0
- 0
- 0
-
-
- 12218
- 1
- 0
- 0
- 0
-
-
- 12219
- 400
- 0
- 0
- 0
-
-
- 12220
- 400
- 0
- 0
- 0
-
-
- 12221
- 1
- 0
- 0
- 0
-
-
- 12222
- 400
- 0
- 0
- 0
-
-
- 12223
- 400
- 0
- 0
- 0
-
-
- 12224
- 1
- 0
- 0
- 0
-
-
- 12225
- 1
- 0
- 0
- 0
-
-
- 12226
- 1
- 0
- 0
- 0
-
-
- 12227
- 1
- 0
- 0
- 0
-
-
- 12228
- 1
- 0
- 0
- 0
-
-
- 12229
- 1
- 0
- 0
- 0
-
-
- 12230
- 1
- 0
- 0
- 0
-
-
- 12231
- 1
- 0
- 0
- 0
-
-
- 12232
- 1
- 0
- 0
- 0
-
-
- 12233
- 1
- 0
- 0
- 0
-
-
- 12234
- 1
- 0
- 0
- 0
-
-
- 12235
- 1
- 0
- 0
- 0
-
-
- 12236
- 1
- 0
- 0
- 0
-
-
- 12237
- 1
- 0
- 0
- 0
-
-
- 12238
- 1
- 0
- 0
- 0
-
-
- 12239
- 1
- 0
- 0
- 0
-
-
- 12240
- 1
- 0
- 0
- 0
-
-
- 12241
- 1
- 0
- 0
- 0
-
-
- 12242
- 1
- 0
- 0
- 0
-
-
- 12243
- 1
- 0
- 0
- 0
-
-
- 12244
- 1
- 0
- 0
- 0
-
-
- 12245
- 1
- 0
- 0
- 0
-
-
- 12246
- 1
- 0
- 0
- 0
-
-
- 12247
- 1
- 0
- 0
- 0
-
-
- 12248
- 1
- 0
- 0
- 0
-
-
- 12249
- 1
- 0
- 0
- 0
-
-
- 12250
- 1
- 0
- 0
- 0
-
-
- 12251
- 1
- 0
- 0
- 0
-
-
- 12252
- 1
- 0
- 0
- 0
-
-
- 12253
- 1
- 0
- 0
- 0
-
-
- 12254
- 1
- 0
- 0
- 0
-
-
- 12255
- 1
- 0
- 0
- 0
-
-
- 12256
- 1
- 0
- 0
- 0
-
-
- 12257
- 1
- 0
- 0
- 0
-
-
- 12258
- 1
- 0
- 0
- 0
-
-
- 12259
- 1
- 0
- 0
- 0
-
-
- 12260
- 1
- 0
- 0
- 0
-
-
- 12261
- 1
- 0
- 0
- 0
-
-
- 12262
- 1
- 0
- 0
- 0
-
-
- 12263
- 1
- 0
- 0
- 0
-
-
- 12264
- 1
- 0
- 0
- 0
-
-
- 12265
- 1
- 0
- 0
- 0
-
-
- 12266
- 1
- 0
- 0
- 0
-
-
- 12267
- 1
- 0
- 0
- 0
-
-
- 12268
- 1
- 0
- 0
- 0
-
-
- 12269
- 1
- 0
- 0
- 0
-
-
- 12270
- 1
- 0
- 0
- 0
-
-
- 12271
- 1
- 0
- 0
- 0
-
-
- 12272
- 1
- 0
- 0
- 0
-
-
- 12273
- 1
- 0
- 0
- 0
-
-
- 12274
- 1
- 0
- 0
- 0
-
-
- 12275
- 1
- 0
- 0
- 0
-
-
- 12276
- 1
- 0
- 0
- 0
-
-
- 12277
- 1
- 0
- 0
- 0
-
-
- 12278
- 1
- 0
- 0
- 0
-
-
- 12279
- 1
- 0
- 0
- 0
-
-
- 12280
- 1
- 0
- 0
- 0
-
-
- 12281
- 1
- 0
- 0
- 0
-
-
- 12282
- 1
- 0
- 0
- 0
-
-
- 12283
- 1
- 0
- 0
- 0
-
-
- 12284
- 1
- 0
- 0
- 0
-
-
- 12285
- 1
- 0
- 0
- 0
-
-
- 12286
- 1
- 0
- 0
- 0
-
-
- 12287
- 1
- 0
- 0
- 0
-
-
- 12288
- 1
- 0
- 0
- 0
-
-
- 12289
- 1
- 0
- 0
- 0
-
-
- 12290
- 1
- 0
- 0
- 0
-
-
- 12291
- 1
- 0
- 0
- 0
-
-
- 12292
- 1
- 0
- 0
- 0
-
-
- 12293
- 1
- 0
- 0
- 0
-
-
- 12294
- 1
- 0
- 0
- 0
-
-
- 12295
- 1
- 0
- 0
- 0
-
-
- 12296
- 1
- 0
- 0
- 0
-
-
- 12297
- 1
- 0
- 0
- 0
-
-
- 12298
- 1
- 0
- 0
- 0
-
-
- 12299
- 1
- 0
- 0
- 0
-
-
- 12300
- 1
- 0
- 0
- 0
-
-
- 12301
- 1
- 0
- 0
- 0
-
-
- 12302
- 1
- 0
- 0
- 0
-
-
- 12303
- 1
- 0
- 0
- 0
-
-
- 12304
- 1
- 0
- 0
- 0
-
-
- 12305
- 1
- 0
- 0
- 0
-
-
- 12306
- 1
- 0
- 0
- 0
-
-
- 12307
- 1
- 0
- 0
- 0
-
-
- 12308
- 1
- 0
- 0
- 0
-
-
- 12309
- 1
- 0
- 0
- 0
-
-
- 12310
- 1
- 0
- 0
- 0
-
-
- 12311
- 1
- 0
- 0
- 0
-
-
- 12312
- 1
- 0
- 0
- 0
-
-
- 12313
- 1
- 0
- 0
- 0
-
-
- 12314
- 1
- 0
- 0
- 0
-
-
- 12315
- 1
- 0
- 0
- 0
-
-
- 12316
- 1
- 0
- 0
- 0
-
-
- 12317
- 1
- 0
- 0
- 0
-
-
- 12318
- 1
- 0
- 0
- 0
-
-
- 12319
- 1
- 0
- 0
- 0
-
-
- 12320
- 1
- 0
- 0
- 0
-
-
- 12321
- 1
- 0
- 0
- 0
-
-
- 12322
- 1
- 0
- 0
- 0
-
-
- 12323
- 1
- 0
- 0
- 0
-
-
- 12324
- 1
- 0
- 0
- 0
-
-
- 12325
- 1
- 0
- 0
- 0
-
-
- 12326
- 1
- 0
- 0
- 0
-
-
- 12327
- 1
- 0
- 0
- 0
-
-
- 12328
- 1
- 0
- 0
- 0
-
-
- 12329
- 1
- 0
- 0
- 0
-
-
- 12330
- 1
- 0
- 0
- 0
-
-
- 12331
- 1
- 0
- 0
- 0
-
-
- 12332
- 1
- 0
- 0
- 0
-
-
- 12333
- 1
- 0
- 0
- 0
-
-
- 12334
- 1
- 0
- 0
- 0
-
-
- 12335
- 1
- 0
- 0
- 0
-
-
- 12336
- 1
- 0
- 0
- 0
-
-
- 12337
- 1
- 0
- 0
- 0
-
-
- 12338
- 1
- 0
- 0
- 0
-
-
- 12339
- 1
- 0
- 0
- 0
-
-
- 12340
- 1
- 0
- 0
- 0
-
-
- 12341
- 1
- 0
- 0
- 0
-
-
- 12342
- 1
- 0
- 0
- 0
-
-
- 12343
- 1
- 0
- 0
- 0
-
-
- 12344
- 1
- 0
- 0
- 0
-
-
- 12345
- 1
- 0
- 0
- 0
-
-
- 12346
- 1
- 0
- 0
- 0
-
-
- 12347
- 1
- 0
- 0
- 0
-
-
- 12348
- 1
- 0
- 0
- 0
-
-
- 12349
- 1
- 0
- 0
- 0
-
-
- 12350
- 1
- 0
- 0
- 0
-
-
- 12351
- 1
- 0
- 0
- 0
-
-
- 12352
- 1
- 0
- 0
- 0
-
-
- 12353
- 1
- 0
- 0
- 0
-
-
- 12354
- 1
- 0
- 0
- 0
-
-
- 12355
- 1
- 0
- 0
- 0
-
-
- 12356
- 1
- 0
- 0
- 0
-
-
- 12357
- 1
- 0
- 0
- 0
-
-
- 12358
- 1
- 0
- 0
- 0
-
-
- 12359
- 1
- 0
- 0
- 0
-
-
- 12360
- 1
- 0
- 0
- 0
-
-
- 12361
- 1
- 0
- 0
- 0
-
-
- 12362
- 1
- 0
- 0
- 0
-
-
- 12363
- 1
- 0
- 0
- 0
-
-
- 12364
- 1
- 0
- 0
- 0
-
-
- 12365
- 1
- 0
- 0
- 0
-
-
- 12366
- 1
- 0
- 0
- 0
-
-
- 12367
- 1
- 0
- 0
- 0
-
-
- 12368
- 1
- 0
- 0
- 0
-
-
- 12369
- 1
- 0
- 0
- 0
-
-
- 12370
- 1
- 0
- 0
- 0
-
-
- 12371
- 1
- 0
- 0
- 0
-
-
- 12372
- 1
- 0
- 0
- 0
-
-
- 12373
- 1
- 0
- 0
- 0
-
-
- 12374
- 1
- 0
- 0
- 0
-
-
- 12375
- 1
- 0
- 0
- 0
-
-
- 12376
- 1
- 0
- 0
- 0
-
-
- 12377
- 1
- 0
- 0
- 0
-
-
- 12378
- 1
- 0
- 0
- 0
-
-
- 12379
- 1
- 0
- 0
- 0
-
-
- 12380
- 1
- 0
- 0
- 0
-
-
- 12381
- 1
- 0
- 0
- 0
-
-
- 12382
- 1
- 0
- 0
- 0
-
-
- 12383
- 1
- 0
- 0
- 0
-
-
- 12384
- 1
- 0
- 0
- 0
-
-
- 12385
- 1
- 0
- 0
- 0
-
-
- 12386
- 1
- 0
- 0
- 0
-
-
- 12387
- 1
- 0
- 0
- 0
-
-
- 12388
- 1
- 0
- 0
- 0
-
-
- 12389
- 1
- 0
- 0
- 0
-
-
- 12390
- 1
- 0
- 0
- 0
-
-
- 12391
- 1
- 0
- 0
- 0
-
-
- 12392
- 1
- 0
- 0
- 0
-
-
- 12393
- 1
- 0
- 0
- 0
-
-
- 12394
- 1
- 0
- 0
- 0
-
-
- 12395
- 1
- 0
- 0
- 0
-
-
- 12396
- 1
- 0
- 0
- 0
-
-
- 12397
- 1
- 0
- 0
- 0
-
-
- 12398
- 1
- 0
- 0
- 0
-
-
- 12399
- 1
- 0
- 0
- 0
-
-
- 12400
- 1
- 0
- 0
- 0
-
-
- 12401
- 1
- 0
- 0
- 0
-
-
- 12402
- 1
- 0
- 0
- 0
-
-
- 12403
- 1
- 0
- 0
- 0
-
-
- 12404
- 1
- 0
- 0
- 0
-
-
- 12405
- 1
- 0
- 0
- 0
-
-
- 12406
- 1
- 0
- 0
- 0
-
-
- 12407
- 1
- 0
- 0
- 0
-
-
- 12408
- 1
- 0
- 0
- 0
-
-
- 12409
- 1
- 0
- 0
- 0
-
-
- 12410
- 1
- 0
- 0
- 0
-
-
- 12411
- 1
- 0
- 0
- 0
-
-
- 12412
- 1
- 0
- 0
- 0
-
-
- 12413
- 1
- 0
- 0
- 0
-
-
- 12414
- 1
- 0
- 0
- 0
-
-
- 12415
- 1
- 0
- 0
- 0
-
-
- 12416
- 1
- 0
- 0
- 0
-
-
- 12417
- 1
- 0
- 0
- 0
-
-
- 12418
- 1
- 0
- 0
- 0
-
-
- 12419
- 1
- 0
- 0
- 0
-
-
- 12420
- 1
- 0
- 0
- 0
-
-
- 12421
- 1
- 0
- 0
- 0
-
-
- 12422
- 237
- 0
- 0
- 0
-
-
- 12423
- 367
- 0
- 0
- 0
-
-
- 12424
- 314
- 0
- 0
- 0
-
-
- 12425
- 59
- 0
- 0
- 0
-
-
- 12426
- 262
- 0
- 0
- 0
-
-
- 12427
- 339
- 0
- 0
- 0
-
-
- 12428
- 62
- 0
- 0
- 0
-
-
- 12429
- 222
- 0
- 0
- 0
-
-
- 12430
- 229
- 0
- 0
- 0
-
-
- 12431
- 69
- 0
- 0
- 0
-
-
- 12432
- 184
- 0
- 0
- 0
-
-
- 12433
- 252
- 0
- 0
- 0
-
-
- 12434
- 392
- 0
- 0
- 0
-
-
- 12435
- 569
- 0
- 0
- 0
-
-
- 12436
- 332
- 0
- 0
- 0
-
-
- 12437
- 549
- 0
- 0
- 0
-
-
- 12438
- 317
- 0
- 0
- 0
-
-
- 12439
- 44
- 0
- 0
- 0
-
-
- 12440
- 159
- 0
- 0
- 0
-
-
- 12441
- 72
- 0
- 0
- 0
-
-
- 12442
- 362
- 0
- 0
- 0
-
-
- 12443
- 227
- 0
- 0
- 0
-
-
- 12444
- 334
- 0
- 0
- 0
-
-
- 12445
- 62
- 0
- 0
- 0
-
-
- 12446
- 169
- 0
- 0
- 0
-
-
- 12447
- 244
- 0
- 0
- 0
-
-
- 12448
- 302
- 0
- 0
- 0
-
-
- 12449
- 457
- 0
- 0
- 0
-
-
- 12450
- 462
- 0
- 0
- 0
-
-
- 12451
- 77
- 0
- 0
- 0
-
-
- 12452
- 69
- 0
- 0
- 0
-
-
- 12453
- 419
- 0
- 0
- 0
-
-
- 12454
- 307
- 0
- 0
- 0
-
-
- 12455
- 402
- 0
- 0
- 0
-
-
- 12456
- 44
- 0
- 0
- 0
-
-
- 12457
- 352
- 0
- 0
- 0
-
-
- 12458
- 262
- 0
- 0
- 0
-
-
- 12459
- 64
- 0
- 0
- 0
-
-
- 12460
- 154
- 0
- 0
- 0
-
-
- 12461
- 297
- 0
- 0
- 0
-
-
- 12462
- 354
- 0
- 0
- 0
-
-
- 12463
- 394
- 0
- 0
- 0
-
-
- 12464
- 422
- 0
- 0
- 0
-
-
- 12465
- 402
- 0
- 0
- 0
-
-
- 12466
- 44
- 0
- 0
- 0
-
-
- 12467
- 362
- 0
- 0
- 0
-
-
- 12468
- 394
- 0
- 0
- 0
-
-
- 12469
- 1
- 0
- 0
- 0
-
-
- 12470
- 1
- 0
- 0
- 0
-
-
- 12471
- 1
- 0
- 0
- 0
-
-
- 12472
- 1
- 0
- 0
- 0
-
-
- 12473
- 1
- 0
- 0
- 0
-
-
- 12474
- 1
- 0
- 0
- 0
-
-
- 12475
- 1
- 0
- 0
- 0
-
-
- 12476
- 1
- 0
- 0
- 0
-
-
- 12477
- 1
- 0
- 0
- 0
-
-
- 12478
- 1
- 0
- 0
- 0
-
-
- 12479
- 1
- 0
- 0
- 0
-
-
- 12480
- 1
- 0
- 0
- 0
-
-
- 12481
- 1
- 0
- 0
- 0
-
-
- 12482
- 1
- 0
- 0
- 0
-
-
- 12483
- 1
- 0
- 0
- 0
-
-
- 12484
- 1
- 0
- 0
- 0
-
-
- 12485
- 1
- 0
- 0
- 0
-
-
- 12486
- 1
- 0
- 0
- 0
-
-
- 12487
- 1
- 0
- 0
- 0
-
-
- 12488
- 1
- 0
- 0
- 0
-
-
- 12489
- 1
- 0
- 0
- 0
-
-
- 12490
- 1
- 0
- 0
- 0
-
-
- 12491
- 1
- 0
- 0
- 0
-
-
- 12492
- 1
- 0
- 0
- 0
-
-
- 12493
- 1
- 0
- 0
- 0
-
-
- 12494
- 1
- 0
- 0
- 0
-
-
- 12495
- 1
- 0
- 0
- 0
-
-
- 12496
- 1
- 0
- 0
- 0
-
-
- 12497
- 1
- 0
- 0
- 0
-
-
- 12498
- 1
- 0
- 0
- 0
-
-
- 12499
- 1
- 0
- 0
- 0
-
-
- 12500
- 1
- 0
- 0
- 0
-
-
- 12501
- 1
- 0
- 0
- 0
-
-
- 12502
- 1
- 0
- 0
- 0
-
-
- 12503
- 1
- 0
- 0
- 0
-
-
- 12504
- 1
- 0
- 0
- 0
-
-
- 12505
- 1
- 0
- 0
- 0
-
-
- 12506
- 1
- 0
- 0
- 0
-
-
- 12507
- 1
- 0
- 0
- 0
-
-
- 12508
- 1
- 0
- 0
- 0
-
-
- 12509
- 1
- 0
- 0
- 0
-
-
- 12510
- 1
- 0
- 0
- 0
-
-
- 12511
- 1
- 0
- 0
- 0
-
-
- 12512
- 1
- 0
- 0
- 0
-
-
- 12513
- 1
- 0
- 0
- 0
-
-
- 12514
- 1
- 0
- 0
- 0
-
-
- 12515
- 1
- 0
- 0
- 0
-
-
- 12516
- 1
- 0
- 0
- 0
-
-
- 12517
- 1
- 0
- 0
- 0
-
-
- 12518
- 1
- 0
- 0
- 0
-
-
- 12519
- 1
- 0
- 0
- 0
-
-
- 12520
- 1
- 0
- 0
- 0
-
-
- 12521
- 1
- 0
- 0
- 0
-
-
- 12522
- 1
- 0
- 0
- 0
-
-
- 12523
- 1
- 0
- 0
- 0
-
-
- 12524
- 99000
- 0
- 0
- 0
-
-
- 12525
- 1
- 0
- 0
- 0
-
-
- 12526
- 1
- 0
- 0
- 0
-
-
- 12527
- 1
- 0
- 0
- 0
-
-
- 12528
- 1
- 0
- 0
- 0
-
-
- 12529
- 1
- 0
- 0
- 0
-
-
- 12530
- 1
- 0
- 0
- 0
-
-
- 12531
- 3149
- 0
- 0
- 0
-
-
- 12532
- 3149
- 0
- 0
- 0
-
-
- 12533
- 59
- 0
- 0
- 0
-
-
- 12535
- 500
- 0
- 0
- 0
-
-
- 12536
- 500
- 0
- 0
- 0
-
-
- 12537
- 1
- 0
- 0
- 0
-
-
- 12538
- 1
- 0
- 0
- 0
-
-
- 12539
- 200
- 0
- 0
- 0
-
-
- 12540
- 1
- 0
- 0
- 0
-
-
- 12541
- 1
- 0
- 0
- 0
-
-
- 12542
- 1
- 0
- 0
- 0
-
-
- 12543
- 1
- 0
- 0
- 0
-
-
- 12544
- 1
- 0
- 0
- 0
-
-
- 12545
- 1
- 0
- 0
- 0
-
-
- 12546
- 1
- 0
- 0
- 0
-
-
- 12547
- 1
- 0
- 0
- 0
-
-
- 12548
- 1
- 0
- 0
- 0
-
-
- 12549
- 1
- 0
- 0
- 0
-
-
- 12550
- 1
- 0
- 0
- 0
-
-
- 12551
- 1
- 0
- 0
- 0
-
-
- 12552
- 1
- 0
- 0
- 0
-
-
- 12553
- 1
- 0
- 0
- 0
-
-
- 12554
- 1
- 0
- 0
- 0
-
-
- 12555
- 1
- 0
- 0
- 0
-
-
- 12556
- 1
- 0
- 0
- 0
-
-
- 12557
- 1
- 0
- 0
- 0
-
-
- 12558
- 10
- 0
- 0
- 0
-
-
- 12559
- 60
- 0
- 0
- 0
-
-
- 12560
- 60
- 0
- 0
- 0
-
-
- 12561
- 60
- 0
- 0
- 0
-
-
- 12562
- 60
- 0
- 0
- 0
-
-
- 12563
- 60
- 0
- 0
- 0
-
-
- 12564
- 60
- 0
- 0
- 0
-
-
- 12565
- 60
- 0
- 0
- 0
-
-
- 12566
- 60
- 0
- 0
- 0
-
-
- 12567
- 60
- 0
- 0
- 0
-
-
- 12568
- 100
- 0
- 0
- 0
-
-
- 12569
- 100
- 0
- 0
- 0
-
-
- 12570
- 180
- 0
- 0
- 0
-
-
- 12571
- 180
- 0
- 0
- 0
-
-
- 12572
- 4
- 0
- 0
- 0
-
-
- 12573
- 4
- 0
- 0
- 0
-
-
- 12574
- 4
- 0
- 0
- 0
-
-
- 12575
- 4
- 0
- 0
- 0
-
-
- 12576
- 4
- 0
- 0
- 0
-
-
- 12577
- 4
- 0
- 0
- 0
-
-
- 12578
- 4
- 0
- 0
- 0
-
-
- 12579
- 4
- 0
- 0
- 0
-
-
- 12580
- 4
- 0
- 0
- 0
-
-
- 12581
- 126
- 0
- 0
- 0
-
-
- 12582
- 126
- 0
- 0
- 0
-
-
- 12583
- 252
- 0
- 0
- 0
-
-
- 12584
- 252
- 0
- 0
- 0
-
-
- 12585
- 1
- 0
- 0
- 0
-
-
- 12586
- 1
- 0
- 0
- 0
-
-
- 12587
- 1
- 0
- 0
- 0
-
-
- 12588
- 2
- 0
- 0
- 0
-
-
- 12589
- 2
- 0
- 0
- 0
-
-
- 12590
- 2
- 0
- 0
- 0
-
-
- 12591
- 2
- 0
- 0
- 0
-
-
- 12592
- 60
- 0
- 0
- 0
-
-
- 12593
- 1
- 0
- 0
- 0
-
-
- 12594
- 1
- 0
- 0
- 0
-
-
- 12595
- 1
- 0
- 0
- 0
-
-
- 12596
- 1
- 0
- 0
- 0
-
-
- 12597
- 1
- 0
- 0
- 0
-
-
- 12598
- 1
- 0
- 0
- 0
-
-
- 12599
- 1
- 0
- 0
- 0
-
-
- 12600
- 1
- 0
- 0
- 0
-
-
- 12601
- 1
- 0
- 0
- 0
-
-
- 12602
- 1
- 0
- 0
- 0
-
-
- 12603
- 1
- 0
- 0
- 0
-
-
- 12604
- 1
- 0
- 0
- 0
-
-
- 12605
- 1
- 0
- 0
- 0
-
-
- 12606
- 1
- 0
- 0
- 0
-
-
- 12607
- 1
- 0
- 0
- 0
-
-
- 12608
- 200
- 0
- 0
- 0
-
-
- 12609
- 200
- 0
- 0
- 0
-
-
- 12610
- 200
- 0
- 0
- 0
-
-
- 12611
- 200
- 0
- 0
- 0
-
-
- 12612
- 200
- 0
- 0
- 0
-
-
- 12613
- 200
- 0
- 0
- 0
-
-
- 12614
- 200
- 0
- 0
- 0
-
-
- 12615
- 200
- 0
- 0
- 0
-
-
- 12616
- 200
- 0
- 0
- 0
-
-
- 12617
- 200
- 0
- 0
- 0
-
-
- 12618
- 200
- 0
- 0
- 0
-
-
- 12619
- 200
- 0
- 0
- 0
-
-
- 12620
- 200
- 0
- 0
- 0
-
-
- 12621
- 200
- 0
- 0
- 0
-
-
- 12622
- 200
- 0
- 0
- 0
-
-
- 12623
- 200
- 0
- 0
- 0
-
-
- 12624
- 20
- 0
- 0
- 0
-
-
- 12625
- 1
- 0
- 0
- 0
-
-
- 12626
- 2
- 0
- 0
- 0
-
-
- 12627
- 1
- 0
- 0
- 0
-
-
- 12628
- 1
- 0
- 0
- 0
-
-
- 12629
- 1
- 0
- 0
- 0
-
-
- 12630
- 1
- 0
- 0
- 0
-
-
- 12631
- 1
- 0
- 0
- 0
-
-
- 12632
- 1
- 0
- 0
- 0
-
-
- 12633
- 60
- 0
- 0
- 0
-
-
- 12634
- 1
- 0
- 0
- 0
-
-
- 12635
- 1
- 0
- 0
- 0
-
-
- 12636
- 1
- 0
- 0
- 0
-
-
- 12637
- 1
- 0
- 0
- 0
-
-
- 12638
- 1
- 0
- 0
- 0
-
-
- 12639
- 1
- 0
- 0
- 0
-
-
- 12640
- 1
- 0
- 0
- 0
-
-
- 12641
- 1
- 0
- 0
- 0
-
-
- 12642
- 1
- 0
- 0
- 0
-
-
- 12643
- 1
- 0
- 0
- 0
-
-
- 12644
- 1
- 0
- 0
- 0
-
-
- 12645
- 32
- 0
- 0
- 0
-
-
- 12646
- 1
- 0
- 0
- 0
-
-
- 12647
- 1
- 0
- 0
- 0
-
-
- 12648
- 1
- 0
- 0
- 0
-
-
- 12649
- 1
- 0
- 0
- 0
-
-
- 12650
- 1
- 0
- 0
- 0
-
-
- 12651
- 1
- 0
- 0
- 0
-
-
- 12652
- 1
- 0
- 0
- 0
-
-
- 12653
- 1
- 0
- 0
- 0
-
-
- 12654
- 1
- 0
- 0
- 0
-
-
- 12655
- 1
- 0
- 0
- 0
-
-
- 12656
- 1
- 0
- 0
- 0
-
-
- 12657
- 1
- 0
- 0
- 0
-
-
- 12658
- 3520
- 0
- 0
- 0
-
-
- 12659
- 3520
- 0
- 0
- 0
-
-
- 12660
- 300
- 0
- 0
- 0
-
-
- 12661
- 300
- 0
- 0
- 0
-
-
- 12662
- 10000
- 0
- 0
- 0
-
-
- 12663
- 10000
- 0
- 0
- 0
-
-
- 12664
- 35200
- 0
- 0
- 0
-
-
- 12665
- 35200
- 0
- 0
- 0
-
-
- 12666
- 100000
- 0
- 0
- 0
-
-
- 12667
- 100000
- 0
- 0
- 0
-
-
- 12668
- 100
- 0
- 0
- 0
-
-
- 12669
- 100
- 0
- 0
- 0
-
-
- 12670
- 20000
- 0
- 0
- 0
-
-
- 12671
- 20000
- 0
- 0
- 0
-
-
- 12672
- 78000
- 0
- 0
- 0
-
-
- 12673
- 78000
- 0
- 0
- 0
-
-
- 12674
- 78000
- 0
- 0
- 0
-
-
- 12675
- 78000
- 0
- 0
- 0
-
-
- 12676
- 78000
- 0
- 0
- 0
-
-
- 12677
- 78000
- 0
- 0
- 0
-
-
- 12678
- 78000
- 0
- 0
- 0
-
-
- 12679
- 78000
- 0
- 0
- 0
-
-
- 12680
- 50000
- 0
- 0
- 0
-
-
- 12681
- 50000
- 0
- 0
- 0
-
-
- 12682
- 1
- 0
- 0
- 0
-
-
- 12683
- 1
- 0
- 0
- 0
-
-
- 12684
- 1
- 0
- 0
- 0
-
-
- 12685
- 1
- 0
- 0
- 0
-
-
- 12686
- 1
- 0
- 0
- 0
-
-
- 12687
- 1
- 0
- 0
- 0
-
-
- 12688
- 1
- 0
- 0
- 0
-
-
- 12689
- 1
- 0
- 0
- 0
-
-
- 12690
- 1
- 0
- 0
- 0
-
-
- 12691
- 1
- 0
- 0
- 0
-
-
- 12692
- 1
- 0
- 0
- 0
-
-
- 12693
- 1
- 0
- 0
- 0
-
-
- 12694
- 1
- 0
- 0
- 0
-
-
- 12695
- 1
- 0
- 0
- 0
-
-
- 12696
- 1
- 0
- 0
- 0
-
-
- 12697
- 1
- 0
- 0
- 0
-
-
- 12698
- 1
- 0
- 0
- 0
-
-
- 12699
- 1
- 0
- 0
- 0
-
-
- 12700
- 1
- 0
- 0
- 0
-
-
- 12701
- 1
- 0
- 0
- 0
-
-
- 12702
- 1
- 0
- 0
- 0
-
-
- 12703
- 1
- 0
- 0
- 0
-
-
- 12704
- 1
- 0
- 0
- 0
-
-
- 12705
- 1
- 0
- 0
- 0
-
-
- 12706
- 1
- 0
- 0
- 0
-
-
- 12707
- 1
- 0
- 0
- 0
-
-
- 12708
- 1
- 0
- 0
- 0
-
-
- 12709
- 1
- 0
- 0
- 0
-
-
- 12710
- 1
- 0
- 0
- 0
-
-
- 12711
- 1
- 0
- 0
- 0
-
-
- 12712
- 1
- 0
- 0
- 0
-
-
- 12713
- 1
- 0
- 0
- 0
-
-
- 12714
- 1
- 0
- 0
- 0
-
-
- 12715
- 1
- 0
- 0
- 0
-
-
- 12716
- 1
- 0
- 0
- 0
-
-
- 12717
- 1
- 0
- 0
- 0
-
-
- 12718
- 1
- 0
- 0
- 0
-
-
- 12719
- 1
- 0
- 0
- 0
-
-
- 12720
- 1
- 0
- 0
- 0
-
-
- 12721
- 1
- 0
- 0
- 0
-
-
- 12722
- 1
- 0
- 0
- 0
-
-
- 12723
- 1
- 0
- 0
- 0
-
-
- 12724
- 1
- 0
- 0
- 0
-
-
- 12725
- 1
- 0
- 0
- 0
-
-
- 12726
- 1
- 0
- 0
- 0
-
-
- 12727
- 1
- 0
- 0
- 0
-
-
- 12728
- 1
- 0
- 0
- 0
-
-
- 12729
- 1
- 0
- 0
- 0
-
-
- 12730
- 1
- 0
- 0
- 0
-
-
- 12731
- 1
- 0
- 0
- 0
-
-
- 12732
- 1
- 0
- 0
- 0
-
-
- 12733
- 1
- 0
- 0
- 0
-
-
- 12734
- 1
- 0
- 0
- 0
-
-
- 12735
- 1
- 0
- 0
- 0
-
-
- 12736
- 1
- 0
- 0
- 0
-
-
- 12737
- 1
- 0
- 0
- 0
-
-
- 12738
- 1
- 0
- 0
- 0
-
-
- 12739
- 1
- 0
- 0
- 0
-
-
- 12740
- 1
- 0
- 0
- 0
-
-
- 12741
- 1
- 0
- 0
- 0
-
-
- 12742
- 1
- 0
- 0
- 0
-
-
- 12743
- 1
- 0
- 0
- 0
-
-
- 12744
- 1
- 0
- 0
- 0
-
-
- 12745
- 1
- 0
- 0
- 0
-
-
- 12746
- 1
- 0
- 0
- 0
-
-
- 12747
- 1
- 0
- 0
- 0
-
-
- 12748
- 1
- 0
- 0
- 0
-
-
- 12749
- 1
- 0
- 0
- 0
-
-
- 12750
- 1
- 0
- 0
- 0
-
-
- 12751
- 1
- 0
- 0
- 0
-
-
- 12752
- 1
- 0
- 0
- 0
-
-
- 12753
- 1
- 0
- 0
- 0
-
-
- 12754
- 1
- 0
- 0
- 0
-
-
- 12755
- 1
- 0
- 0
- 0
-
-
- 12756
- 1
- 0
- 0
- 0
-
-
- 12757
- 1
- 0
- 0
- 0
-
-
- 12758
- 1
- 0
- 0
- 0
-
-
- 12759
- 1
- 0
- 0
- 0
-
-
- 12760
- 1
- 0
- 0
- 0
-
-
- 12761
- 1
- 0
- 0
- 0
-
-
- 12762
- 1
- 0
- 0
- 0
-
-
- 12763
- 1
- 0
- 0
- 0
-
-
- 12764
- 1
- 0
- 0
- 0
-
-
- 12765
- 1
- 0
- 0
- 0
-
-
- 12766
- 1
- 0
- 0
- 0
-
-
- 12767
- 1
- 0
- 0
- 0
-
-
- 12768
- 1
- 0
- 0
- 0
-
-
- 12769
- 1
- 0
- 0
- 0
-
-
- 12770
- 1
- 0
- 0
- 0
-
-
- 12771
- 1
- 0
- 0
- 0
-
-
- 12772
- 1
- 0
- 0
- 0
-
-
- 12773
- 1
- 0
- 0
- 0
-
-
- 12774
- 1
- 0
- 0
- 0
-
-
- 12775
- 1
- 0
- 0
- 0
-
-
- 12776
- 4174
- 0
- 0
- 0
-
-
- 12777
- 4174
- 0
- 0
- 0
-
-
- 12778
- 449
- 0
- 0
- 0
-
-
- 12779
- 449
- 0
- 0
- 0
-
-
- 12780
- 2274
- 0
- 0
- 0
-
-
- 12781
- 2274
- 0
- 0
- 0
-
-
- 12782
- 3949
- 0
- 0
- 0
-
-
- 12783
- 3949
- 0
- 0
- 0
-
-
- 12784
- 4299
- 0
- 0
- 0
-
-
- 12785
- 4299
- 0
- 0
- 0
-
-
- 12786
- 5974
- 0
- 0
- 0
-
-
- 12787
- 5974
- 0
- 0
- 0
-
-
- 12788
- 5899
- 0
- 0
- 0
-
-
- 12789
- 5899
- 0
- 0
- 0
-
-
- 12790
- 4874
- 0
- 0
- 0
-
-
- 12791
- 4874
- 0
- 0
- 0
-
-
- 12792
- 5299
- 0
- 0
- 0
-
-
- 12793
- 5299
- 0
- 0
- 0
-
-
- 12794
- 4774
- 0
- 0
- 0
-
-
- 12795
- 4774
- 0
- 0
- 0
-
-
- 12796
- 3249
- 0
- 0
- 0
-
-
- 12797
- 3249
- 0
- 0
- 0
-
-
- 12798
- 2274
- 0
- 0
- 0
-
-
- 12799
- 2274
- 0
- 0
- 0
-
-
- 12800
- 2524
- 0
- 0
- 0
-
-
- 12801
- 2524
- 0
- 0
- 0
-
-
- 12802
- 5374
- 0
- 0
- 0
-
-
- 12803
- 5374
- 0
- 0
- 0
-
-
- 12804
- 5474
- 0
- 0
- 0
-
-
- 12805
- 5474
- 0
- 0
- 0
-
-
- 12806
- 5374
- 0
- 0
- 0
-
-
- 12807
- 5374
- 0
- 0
- 0
-
-
- 12808
- 2024
- 0
- 0
- 0
-
-
- 12809
- 2024
- 0
- 0
- 0
-
-
- 12810
- 4274
- 0
- 0
- 0
-
-
- 12811
- 4274
- 0
- 0
- 0
-
-
- 12812
- 4249
- 0
- 0
- 0
-
-
- 12813
- 4249
- 0
- 0
- 0
-
-
- 12814
- 2274
- 0
- 0
- 0
-
-
- 12815
- 2274
- 0
- 0
- 0
-
-
- 12816
- 3199
- 0
- 0
- 0
-
-
- 12817
- 3199
- 0
- 0
- 0
-
-
- 12818
- 2274
- 0
- 0
- 0
-
-
- 12819
- 2274
- 0
- 0
- 0
-
-
- 12820
- 2399
- 0
- 0
- 0
-
-
- 12821
- 2399
- 0
- 0
- 0
-
-
- 12822
- 5374
- 0
- 0
- 0
-
-
- 12823
- 5374
- 0
- 0
- 0
-
-
- 12824
- 537
- 0
- 0
- 0
-
-
- 12825
- 487
- 0
- 0
- 0
-
-
- 12826
- 529
- 0
- 0
- 0
-
-
- 12827
- 324
- 0
- 0
- 0
-
-
- 12828
- 537
- 0
- 0
- 0
-
-
- 12829
- 319
- 0
- 0
- 0
-
-
- 12830
- 239
- 0
- 0
- 0
-
-
- 12831
- 477
- 0
- 0
- 0
-
-
- 12832
- 417
- 0
- 0
- 0
-
-
- 12833
- 597
- 0
- 0
- 0
-
-
- 12834
- 252
- 0
- 0
- 0
-
-
- 12835
- 427
- 0
- 0
- 0
-
-
- 12836
- 424
- 0
- 0
- 0
-
-
- 12837
- 529
- 0
- 0
- 0
-
-
- 12838
- 44
- 0
- 0
- 0
-
-
- 12839
- 202
- 0
- 0
- 0
-
-
- 12840
- 429
- 0
- 0
- 0
-
-
- 12841
- 394
- 0
- 0
- 0
-
-
- 12842
- 1
- 0
- 0
- 0
-
-
- 12843
- 1
- 0
- 0
- 0
-
-
- 12844
- 100
- 0
- 0
- 0
-
-
- 12845
- 1
- 0
- 0
- 0
-
-
- 12846
- 1
- 0
- 0
- 0
-
-
- 12847
- 1
- 0
- 0
- 0
-
-
- 12848
- 1
- 0
- 0
- 0
-
-
- 12849
- 1
- 0
- 0
- 0
-
-
- 12850
- 2
- 0
- 0
- 0
-
-
- 12851
- 2
- 0
- 0
- 0
-
-
- 12852
- 1
- 0
- 0
- 0
-
-
- 12853
- 1
- 0
- 0
- 0
-
-
- 12854
- 1
- 0
- 0
- 0
-
-
- 12855
- 1
- 0
- 0
- 0
-
-
- 12856
- 1
- 0
- 0
- 0
-
-
- 12857
- 1
- 0
- 0
- 0
-
-
- 12858
- 1
- 0
- 0
- 0
-
-
- 12859
- 1
- 0
- 0
- 0
-
-
- 12860
- 1
- 0
- 0
- 0
-
-
- 12861
- 1
- 0
- 0
- 0
-
-
- 12862
- 1
- 0
- 0
- 0
-
-
- 12863
- 1
- 0
- 0
- 0
-
-
- 12864
- 1
- 0
- 0
- 0
-
-
- 12865
- 1
- 0
- 0
- 0
-
-
- 12866
- 25000
- 0
- 0
- 0
-
-
- 12867
- 25000
- 0
- 0
- 0
-
-
- 12868
- 25000
- 0
- 0
- 0
-
-
- 12869
- 25000
- 0
- 0
- 0
-
-
- 12870
- 25000
- 0
- 0
- 0
-
-
- 12871
- 25000
- 0
- 0
- 0
-
-
- 12872
- 25000
- 0
- 0
- 0
-
-
- 12873
- 50000
- 0
- 0
- 0
-
-
- 12874
- 50000
- 0
- 0
- 0
-
-
- 12875
- 50000
- 0
- 0
- 0
-
-
- 12876
- 50000
- 0
- 0
- 0
-
-
- 12877
- 50000
- 0
- 0
- 0
-
-
- 12878
- 50000
- 0
- 0
- 0
-
-
- 12879
- 50000
- 0
- 0
- 0
-
-
- 12880
- 40000
- 0
- 0
- 0
-
-
- 12881
- 40000
- 0
- 0
- 0
-
-
- 12882
- 40000
- 0
- 0
- 0
-
-
- 12883
- 40000
- 0
- 0
- 0
-
-
- 12884
- 40000
- 0
- 0
- 0
-
-
- 12885
- 40000
- 0
- 0
- 0
-
-
- 12886
- 40000
- 0
- 0
- 0
-
-
- 12887
- 2000
- 0
- 0
- 0
-
-
- 12888
- 2000
- 0
- 0
- 0
-
-
- 12889
- 2000
- 0
- 0
- 0
-
-
- 12890
- 2000
- 0
- 0
- 0
-
-
- 12891
- 2000
- 0
- 0
- 0
-
-
- 12892
- 2000
- 0
- 0
- 0
-
-
- 12893
- 2000
- 0
- 0
- 0
-
-
- 12894
- 6000
- 0
- 0
- 0
-
-
- 12895
- 6000
- 0
- 0
- 0
-
-
- 12896
- 6000
- 0
- 0
- 0
-
-
- 12897
- 6000
- 0
- 0
- 0
-
-
- 12898
- 6000
- 0
- 0
- 0
-
-
- 12899
- 6000
- 0
- 0
- 0
-
-
- 12900
- 6000
- 0
- 0
- 0
-
-
- 12901
- 5000
- 0
- 0
- 0
-
-
- 12902
- 5000
- 0
- 0
- 0
-
-
- 12903
- 5000
- 0
- 0
- 0
-
-
- 12904
- 5000
- 0
- 0
- 0
-
-
- 12905
- 5000
- 0
- 0
- 0
-
-
- 12906
- 5000
- 0
- 0
- 0
-
-
- 12907
- 5000
- 0
- 0
- 0
-
-
- 12908
- 4050
- 0
- 0
- 0
-
-
- 12909
- 4050
- 0
- 0
- 0
-
-
- 12910
- 4050
- 0
- 0
- 0
-
-
- 12911
- 4050
- 0
- 0
- 0
-
-
- 12912
- 4050
- 0
- 0
- 0
-
-
- 12913
- 4050
- 0
- 0
- 0
-
-
- 12914
- 4050
- 0
- 0
- 0
-
-
- 12915
- 6140
- 0
- 0
- 0
-
-
- 12916
- 6140
- 0
- 0
- 0
-
-
- 12917
- 6140
- 0
- 0
- 0
-
-
- 12918
- 6140
- 0
- 0
- 0
-
-
- 12919
- 6140
- 0
- 0
- 0
-
-
- 12920
- 6140
- 0
- 0
- 0
-
-
- 12921
- 6140
- 0
- 0
- 0
-
-
- 12922
- 40000
- 0
- 0
- 0
-
-
- 12923
- 40000
- 0
- 0
- 0
-
-
- 12924
- 40000
- 0
- 0
- 0
-
-
- 12925
- 40000
- 0
- 0
- 0
-
-
- 12926
- 40000
- 0
- 0
- 0
-
-
- 12927
- 40000
- 0
- 0
- 0
-
-
- 12928
- 40000
- 0
- 0
- 0
-
-
- 12929
- 64400
- 0
- 0
- 0
-
-
- 12930
- 64400
- 0
- 0
- 0
-
-
- 12931
- 64400
- 0
- 0
- 0
-
-
- 12932
- 64400
- 0
- 0
- 0
-
-
- 12933
- 64400
- 0
- 0
- 0
-
-
- 12934
- 64400
- 0
- 0
- 0
-
-
- 12935
- 64400
- 0
- 0
- 0
-
-
- 12936
- 2000
- 0
- 0
- 0
-
-
- 12937
- 2000
- 0
- 0
- 0
-
-
- 12938
- 2000
- 0
- 0
- 0
-
-
- 12939
- 2000
- 0
- 0
- 0
-
-
- 12940
- 2000
- 0
- 0
- 0
-
-
- 12941
- 2000
- 0
- 0
- 0
-
-
- 12942
- 2000
- 0
- 0
- 0
-
-
- 12943
- 3500
- 0
- 0
- 0
-
-
- 12944
- 3500
- 0
- 0
- 0
-
-
- 12945
- 3500
- 0
- 0
- 0
-
-
- 12946
- 3500
- 0
- 0
- 0
-
-
- 12947
- 3500
- 0
- 0
- 0
-
-
- 12948
- 3500
- 0
- 0
- 0
-
-
- 12949
- 3500
- 0
- 0
- 0
-
-
- 12950
- 3500
- 0
- 0
- 0
-
-
- 12951
- 3500
- 0
- 0
- 0
-
-
- 12952
- 3500
- 0
- 0
- 0
-
-
- 12953
- 3500
- 0
- 0
- 0
-
-
- 12954
- 3500
- 0
- 0
- 0
-
-
- 12955
- 3500
- 0
- 0
- 0
-
-
- 12956
- 3500
- 0
- 0
- 0
-
-
- 12957
- 5500
- 0
- 0
- 0
-
-
- 12958
- 5500
- 0
- 0
- 0
-
-
- 12959
- 5500
- 0
- 0
- 0
-
-
- 12960
- 5500
- 0
- 0
- 0
-
-
- 12961
- 5500
- 0
- 0
- 0
-
-
- 12962
- 5500
- 0
- 0
- 0
-
-
- 12963
- 5500
- 0
- 0
- 0
-
-
- 12964
- 1000
- 0
- 0
- 0
-
-
- 12965
- 1000
- 0
- 0
- 0
-
-
- 12966
- 1000
- 0
- 0
- 0
-
-
- 12967
- 1000
- 0
- 0
- 0
-
-
- 12968
- 1000
- 0
- 0
- 0
-
-
- 12969
- 1000
- 0
- 0
- 0
-
-
- 12970
- 1000
- 0
- 0
- 0
-
-
- 12971
- 3000
- 0
- 0
- 0
-
-
- 12972
- 3000
- 0
- 0
- 0
-
-
- 12973
- 3000
- 0
- 0
- 0
-
-
- 12974
- 3000
- 0
- 0
- 0
-
-
- 12975
- 3000
- 0
- 0
- 0
-
-
- 12976
- 3000
- 0
- 0
- 0
-
-
- 12977
- 3000
- 0
- 0
- 0
-
-
- 12978
- 2500
- 0
- 0
- 0
-
-
- 12979
- 2500
- 0
- 0
- 0
-
-
- 12980
- 2500
- 0
- 0
- 0
-
-
- 12981
- 2500
- 0
- 0
- 0
-
-
- 12982
- 2500
- 0
- 0
- 0
-
-
- 12983
- 2500
- 0
- 0
- 0
-
-
- 12984
- 2500
- 0
- 0
- 0
-
-
- 12985
- 100
- 0
- 0
- 0
-
-
- 12986
- 100
- 0
- 0
- 0
-
-
- 12987
- 100
- 0
- 0
- 0
-
-
- 12988
- 300
- 0
- 0
- 0
-
-
- 12989
- 300
- 0
- 0
- 0
-
-
- 12990
- 300
- 0
- 0
- 0
-
-
- 12991
- 1000
- 0
- 0
- 0
-
-
- 12992
- 1000
- 0
- 0
- 0
-
-
- 12993
- 1000
- 0
- 0
- 0
-
-
- 12994
- 2000
- 0
- 0
- 0
-
-
- 12995
- 2000
- 0
- 0
- 0
-
-
- 12996
- 2000
- 0
- 0
- 0
-
-
- 12997
- 3000
- 0
- 0
- 0
-
-
- 12998
- 3000
- 0
- 0
- 0
-
-
- 12999
- 3000
- 0
- 0
- 0
-
-
- 13000
- 5000
- 0
- 0
- 0
-
-
- 13001
- 5000
- 0
- 0
- 0
-
-
- 13002
- 5000
- 0
- 0
- 0
-
-
- 13003
- 7500
- 0
- 0
- 0
-
-
- 13004
- 7500
- 0
- 0
- 0
-
-
- 13005
- 7500
- 0
- 0
- 0
-
-
- 13006
- 50000
- 0
- 0
- 0
-
-
- 13007
- 50000
- 0
- 0
- 0
-
-
- 13008
- 50000
- 0
- 0
- 0
-
-
- 13009
- 1
- 0
- 0
- 0
-
-
- 13010
- 1
- 0
- 0
- 0
-
-
- 13011
- 100
- 0
- 0
- 0
-
-
- 13012
- 1
- 0
- 0
- 0
-
-
- 13013
- 100
- 0
- 0
- 0
-
-
- 13014
- 1
- 0
- 0
- 0
-
-
- 13015
- 100
- 0
- 0
- 0
-
-
- 13016
- 1
- 0
- 0
- 0
-
-
- 13017
- 100
- 0
- 0
- 0
-
-
- 13018
- 1
- 0
- 0
- 0
-
-
- 13019
- 100
- 0
- 0
- 0
-
-
- 13020
- 1
- 0
- 0
- 0
-
-
- 13021
- 100
- 0
- 0
- 0
-
-
- 13022
- 1
- 0
- 0
- 0
-
-
- 13023
- 100
- 0
- 0
- 0
-
-
- 13024
- 1
- 0
- 0
- 0
-
-
- 13025
- 100
- 0
- 0
- 0
-
-
- 13026
- 1
- 0
- 0
- 0
-
-
- 13027
- 100
- 0
- 0
- 0
-
-
- 13028
- 1
- 0
- 0
- 0
-
-
- 13029
- 100
- 0
- 0
- 0
-
-
- 13030
- 1
- 0
- 0
- 0
-
-
- 13031
- 100
- 0
- 0
- 0
-
-
- 13032
- 1
- 0
- 0
- 0
-
-
- 13033
- 100
- 0
- 0
- 0
-
-
- 13034
- 1
- 0
- 0
- 0
-
-
- 13035
- 100
- 0
- 0
- 0
-
-
- 13036
- 1
- 0
- 0
- 0
-
-
- 13037
- 50
- 0
- 0
- 0
-
-
- 13038
- 1
- 0
- 0
- 0
-
-
- 13039
- 50
- 0
- 0
- 0
-
-
- 13040
- 1
- 0
- 0
- 0
-
-
- 13041
- 1
- 0
- 0
- 0
-
-
- 13042
- 1
- 0
- 0
- 0
-
-
- 13043
- 50
- 0
- 0
- 0
-
-
- 13044
- 1
- 0
- 0
- 0
-
-
- 13045
- 50
- 0
- 0
- 0
-
-
- 13046
- 1
- 0
- 0
- 0
-
-
- 13047
- 50
- 0
- 0
- 0
-
-
- 13048
- 1
- 0
- 0
- 0
-
-
- 13049
- 1
- 0
- 0
- 0
-
-
- 13050
- 1
- 0
- 0
- 0
-
-
- 13051
- 1
- 0
- 0
- 0
-
-
- 13052
- 50
- 0
- 0
- 0
-
-
- 13053
- 1
- 0
- 0
- 0
-
-
- 13054
- 50
- 0
- 0
- 0
-
-
- 13055
- 1
- 0
- 0
- 0
-
-
- 13056
- 1
- 0
- 0
- 0
-
-
- 13057
- 50
- 0
- 0
- 0
-
-
- 13058
- 1
- 0
- 0
- 0
-
-
- 13059
- 50
- 0
- 0
- 0
-
-
- 13060
- 1
- 0
- 0
- 0
-
-
- 13061
- 1
- 0
- 0
- 0
-
-
- 13062
- 50
- 0
- 0
- 0
-
-
- 13063
- 1
- 0
- 0
- 0
-
-
- 13064
- 50
- 0
- 0
- 0
-
-
- 13065
- 1
- 0
- 0
- 0
-
-
- 13066
- 50
- 0
- 0
- 0
-
-
- 13067
- 1
- 0
- 0
- 0
-
-
- 13068
- 1
- 0
- 0
- 0
-
-
- 13069
- 1
- 0
- 0
- 0
-
-
- 13070
- 1
- 0
- 0
- 0
-
-
- 13071
- 1
- 0
- 0
- 0
-
-
- 13072
- 1
- 0
- 0
- 0
-
-
- 13073
- 1
- 0
- 0
- 0
-
-
- 13074
- 1
- 0
- 0
- 0
-
-
- 13075
- 1
- 0
- 0
- 0
-
-
- 13076
- 1
- 0
- 0
- 0
-
-
- 13077
- 50
- 0
- 0
- 0
-
-
- 13078
- 1
- 0
- 0
- 0
-
-
- 13079
- 1
- 0
- 0
- 0
-
-
- 13080
- 1
- 0
- 0
- 0
-
-
- 13081
- 800
- 0
- 0
- 0
-
-
- 13082
- 800
- 0
- 0
- 0
-
-
- 13083
- 14
- 0
- 0
- 0
-
-
- 13084
- 14
- 0
- 0
- 0
-
-
- 13085
- 14
- 0
- 0
- 0
-
-
- 13086
- 14
- 0
- 0
- 0
-
-
- 13087
- 1
- 0
- 0
- 0
-
-
- 13088
- 1
- 0
- 0
- 0
-
-
- 13089
- 1
- 0
- 0
- 0
-
-
- 13090
- 1
- 0
- 0
- 0
-
-
- 13091
- 1
- 0
- 0
- 0
-
-
- 13092
- 1
- 0
- 0
- 0
-
-
- 13093
- 1
- 0
- 0
- 0
-
-
- 13094
- 1
- 0
- 0
- 0
-
-
- 13095
- 432
- 0
- 0
- 0
-
-
- 13096
- 432
- 0
- 0
- 0
-
-
- 13097
- 1440
- 0
- 0
- 0
-
-
- 13098
- 1440
- 0
- 0
- 0
-
-
- 13099
- 14400
- 0
- 0
- 0
-
-
- 13100
- 14400
- 0
- 0
- 0
-
-
- 13101
- 200
- 0
- 0
- 0
-
-
- 13102
- 200
- 0
- 0
- 0
-
-
- 13103
- 250
- 0
- 0
- 0
-
-
- 13104
- 250
- 0
- 0
- 0
-
-
- 13105
- 1000
- 0
- 0
- 0
-
-
- 13106
- 1000
- 0
- 0
- 0
-
-
- 13107
- 800
- 0
- 0
- 0
-
-
- 13108
- 800
- 0
- 0
- 0
-
-
- 13109
- 800
- 0
- 0
- 0
-
-
- 13110
- 800
- 0
- 0
- 0
-
-
- 13111
- 800
- 0
- 0
- 0
-
-
- 13112
- 800
- 0
- 0
- 0
-
-
- 13113
- 800
- 0
- 0
- 0
-
-
- 13114
- 800
- 0
- 0
- 0
-
-
- 13115
- 800
- 0
- 0
- 0
-
-
- 13116
- 800
- 0
- 0
- 0
-
-
- 13117
- 1000
- 0
- 0
- 0
-
-
- 13118
- 1000
- 0
- 0
- 0
-
-
- 13119
- 1000
- 0
- 0
- 0
-
-
- 13120
- 1000
- 0
- 0
- 0
-
-
- 13121
- 1000
- 0
- 0
- 0
-
-
- 13122
- 1000
- 0
- 0
- 0
-
-
- 13123
- 1000
- 0
- 0
- 0
-
-
- 13124
- 1000
- 0
- 0
- 0
-
-
- 13125
- 1000
- 0
- 0
- 0
-
-
- 13126
- 1000
- 0
- 0
- 0
-
-
- 13127
- 1000
- 0
- 0
- 0
-
-
- 13128
- 1000
- 0
- 0
- 0
-
-
- 13129
- 1000
- 0
- 0
- 0
-
-
- 13130
- 1000
- 0
- 0
- 0
-
-
- 13131
- 1000
- 0
- 0
- 0
-
-
- 13132
- 1000
- 0
- 0
- 0
-
-
- 13133
- 1000
- 0
- 0
- 0
-
-
- 13134
- 1000
- 0
- 0
- 0
-
-
- 13135
- 1000
- 0
- 0
- 0
-
-
- 13136
- 1000
- 0
- 0
- 0
-
-
- 13137
- 1000
- 0
- 0
- 0
-
-
- 13138
- 1000
- 0
- 0
- 0
-
-
- 13139
- 1000
- 0
- 0
- 0
-
-
- 13140
- 1000
- 0
- 0
- 0
-
-
- 13141
- 1000
- 0
- 0
- 0
-
-
- 13142
- 1000
- 0
- 0
- 0
-
-
- 13143
- 1000
- 0
- 0
- 0
-
-
- 13144
- 1000
- 0
- 0
- 0
-
-
- 13145
- 1000
- 0
- 0
- 0
-
-
- 13146
- 1000
- 0
- 0
- 0
-
-
- 13147
- 1
- 0
- 0
- 0
-
-
- 13148
- 3
- 0
- 0
- 0
-
-
- 13149
- 3
- 0
- 0
- 0
-
-
- 13150
- 1
- 0
- 0
- 0
-
-
- 13151
- 3
- 0
- 0
- 0
-
-
- 13152
- 3
- 0
- 0
- 0
-
-
- 13153
- 3
- 0
- 0
- 0
-
-
- 13154
- 3
- 0
- 0
- 0
-
-
- 13155
- 3
- 0
- 0
- 0
-
-
- 13156
- 3
- 0
- 0
- 0
-
-
- 13157
- 3
- 0
- 0
- 0
-
-
- 13158
- 3
- 0
- 0
- 0
-
-
- 13159
- 3
- 0
- 0
- 0
-
-
- 13160
- 1
- 0
- 0
- 0
-
-
- 13161
- 1
- 0
- 0
- 0
-
-
- 13162
- 1
- 0
- 0
- 0
-
-
- 13163
- 432
- 0
- 0
- 0
-
-
- 13164
- 1440
- 0
- 0
- 0
-
-
- 13165
- 14400
- 0
- 0
- 0
-
-
- 13166
- 200
- 0
- 0
- 0
-
-
- 13167
- 250
- 0
- 0
- 0
-
-
- 13168
- 1000
- 0
- 0
- 0
-
-
- 13169
- 800
- 0
- 0
- 0
-
-
- 13170
- 800
- 0
- 0
- 0
-
-
- 13171
- 800
- 0
- 0
- 0
-
-
- 13172
- 800
- 0
- 0
- 0
-
-
- 13173
- 800
- 0
- 0
- 0
-
-
- 13174
- 1
- 0
- 0
- 0
-
-
- 13175
- 1
- 0
- 0
- 0
-
-
- 13176
- 1
- 0
- 0
- 0
-
-
- 13177
- 1
- 0
- 0
- 0
-
-
- 13178
- 1
- 0
- 0
- 0
-
-
- 13179
- 1
- 0
- 0
- 0
-
-
- 13180
- 1
- 0
- 0
- 0
-
-
- 13181
- 1
- 0
- 0
- 0
-
-
- 13182
- 1
- 0
- 0
- 0
-
-
- 13183
- 1
- 0
- 0
- 0
-
-
- 13184
- 1
- 0
- 0
- 0
-
-
- 13185
- 1
- 0
- 0
- 0
-
-
- 13186
- 1
- 0
- 0
- 0
-
-
- 13187
- 1
- 0
- 0
- 0
-
-
- 13188
- 1
- 0
- 0
- 0
-
-
- 13189
- 1
- 0
- 0
- 0
-
-
- 13190
- 1
- 0
- 0
- 0
-
-
- 13191
- 1
- 0
- 0
- 0
-
-
- 13192
- 1
- 0
- 0
- 0
-
-
- 13193
- 1
- 0
- 0
- 0
-
-
- 13194
- 1
- 0
- 0
- 0
-
-
- 13195
- 1
- 0
- 0
- 0
-
-
- 13196
- 1
- 0
- 0
- 0
-
-
- 13197
- 1
- 0
- 0
- 0
-
-
- 13198
- 1
- 0
- 0
- 0
-
-
- 13199
- 1
- 0
- 0
- 0
-
-
- 13200
- 1
- 0
- 0
- 0
-
-
- 13201
- 1
- 0
- 0
- 0
-
-
- 13202
- 1
- 0
- 0
- 0
-
-
- 13203
- 1
- 0
- 0
- 0
-
-
- 13204
- 1
- 0
- 0
- 0
-
-
- 13205
- 1
- 0
- 0
- 0
-
-
- 13206
- 1
- 0
- 0
- 0
-
-
- 13207
- 1
- 0
- 0
- 0
-
-
- 13208
- 1
- 0
- 0
- 0
-
-
- 13209
- 1
- 0
- 0
- 0
-
-
- 13210
- 1
- 0
- 0
- 0
-
-
- 13211
- 1
- 0
- 0
- 0
-
-
- 13212
- 1
- 0
- 0
- 0
-
-
- 13213
- 1
- 0
- 0
- 0
-
-
- 13214
- 1
- 0
- 0
- 0
-
-
- 13215
- 1
- 0
- 0
- 0
-
-
- 13216
- 1
- 0
- 0
- 0
-
-
- 13217
- 1
- 0
- 0
- 0
-
-
- 13218
- 1
- 0
- 0
- 0
-
-
- 13219
- 1
- 0
- 0
- 0
-
-
- 13220
- 1
- 0
- 0
- 0
-
-
- 13221
- 1
- 0
- 0
- 0
-
-
- 13222
- 1
- 0
- 0
- 0
-
-
- 13223
- 1
- 0
- 0
- 0
-
-
- 13224
- 1
- 0
- 0
- 0
-
-
- 13225
- 1
- 0
- 0
- 0
-
-
- 13226
- 1
- 0
- 0
- 0
-
-
- 13227
- 1
- 0
- 0
- 0
-
-
- 13228
- 1
- 0
- 0
- 0
-
-
- 13229
- 1
- 0
- 0
- 0
-
-
- 13230
- 1
- 0
- 0
- 0
-
-
- 13231
- 1
- 0
- 0
- 0
-
-
- 13232
- 1
- 0
- 0
- 0
-
-
- 13233
- 1
- 0
- 0
- 0
-
-
- 13234
- 1
- 0
- 0
- 0
-
-
- 13235
- 1
- 0
- 0
- 0
-
-
- 13236
- 3
- 0
- 0
- 0
-
-
- 13237
- 1
- 0
- 0
- 0
-
-
- 13238
- 1
- 0
- 0
- 0
-
-
- 13239
- 1
- 0
- 0
- 0
-
-
- 13240
- 1
- 0
- 0
- 0
-
-
- 13241
- 1
- 0
- 0
- 0
-
-
- 13242
- 1
- 0
- 0
- 0
-
-
- 13243
- 1
- 0
- 0
- 0
-
-
- 13244
- 1
- 0
- 0
- 0
-
-
- 13245
- 1
- 0
- 0
- 0
-
-
- 13246
- 1
- 0
- 0
- 0
-
-
- 13247
- 1
- 0
- 0
- 0
-
-
- 13248
- 1
- 0
- 0
- 0
-
-
- 13249
- 1
- 0
- 0
- 0
-
-
- 13250
- 1
- 0
- 0
- 0
-
-
- 13251
- 1
- 0
- 0
- 0
-
-
- 13252
- 1
- 0
- 0
- 0
-
-
- 13253
- 1
- 0
- 0
- 0
-
-
- 13254
- 1
- 0
- 0
- 0
-
-
- 13255
- 1
- 0
- 0
- 0
-
-
- 13256
- 1
- 0
- 0
- 0
-
-
- 13257
- 1
- 0
- 0
- 0
-
-
- 13258
- 1
- 0
- 0
- 0
-
-
- 13259
- 1
- 0
- 0
- 0
-
-
- 13260
- 1
- 0
- 0
- 0
-
-
- 13261
- 1
- 0
- 0
- 0
-
-
- 13262
- 1
- 0
- 0
- 0
-
-
- 13263
- 650
- 0
- 0
- 0
-
-
- 13264
- 1
- 0
- 0
- 0
-
-
- 13265
- 1
- 0
- 0
- 0
-
-
- 13266
- 1
- 0
- 0
- 0
-
-
- 13267
- 1
- 0
- 0
- 0
-
-
- 13268
- 3
- 0
- 0
- 0
-
-
- 13269
- 3
- 0
- 0
- 0
-
-
- 13270
- 3
- 0
- 0
- 0
-
-
- 13271
- 3
- 0
- 0
- 0
-
-
- 13272
- 3
- 0
- 0
- 0
-
-
- 13273
- 3
- 0
- 0
- 0
-
-
- 13274
- 3
- 0
- 0
- 0
-
-
- 13275
- 3
- 0
- 0
- 0
-
-
- 13276
- 1
- 0
- 0
- 0
-
-
- 13277
- 400
- 0
- 0
- 0
-
-
- 13278
- 50
- 0
- 0
- 0
-
-
- 13279
- 50
- 0
- 0
- 0
-
-
- 13280
- 50
- 0
- 0
- 0
-
-
- 13281
- 150
- 0
- 0
- 0
-
-
- 13282
- 150
- 0
- 0
- 0
-
-
- 13283
- 150
- 0
- 0
- 0
-
-
- 13284
- 150
- 0
- 0
- 0
-
-
- 13285
- 150
- 0
- 0
- 0
-
-
- 13286
- 150
- 0
- 0
- 0
-
-
- 13287
- 150
- 0
- 0
- 0
-
-
- 13288
- 150
- 0
- 0
- 0
-
-
- 13289
- 3
- 0
- 0
- 0
-
-
- 13290
- 68000
- 0
- 0
- 0
-
-
- 13291
- 68000
- 0
- 0
- 0
-
-
- 13292
- 1
- 0
- 0
- 0
-
-
- 13293
- 1
- 0
- 0
- 0
-
-
- 13294
- 1
- 0
- 0
- 0
-
-
- 13295
- 1
- 0
- 0
- 0
-
-
- 13296
- 1
- 0
- 0
- 0
-
-
- 13297
- 1
- 0
- 0
- 0
-
-
- 13298
- 1
- 0
- 0
- 0
-
-
- 13299
- 1
- 0
- 0
- 0
-
-
- 13300
- 1
- 0
- 0
- 0
-
-
- 13301
- 1
- 0
- 0
- 0
-
-
- 13302
- 1
- 0
- 0
- 0
-
-
- 13303
- 1
- 0
- 0
- 0
-
-
- 13304
- 1
- 0
- 0
- 0
-
-
- 13305
- 1
- 0
- 0
- 0
-
-
- 13306
- 1
- 0
- 0
- 0
-
-
- 13307
- 1
- 0
- 0
- 0
-
-
- 13308
- 1
- 0
- 0
- 0
-
-
- 13309
- 1
- 0
- 0
- 0
-
-
- 13310
- 1
- 0
- 0
- 0
-
-
- 13311
- 1
- 0
- 0
- 0
-
-
- 13312
- 1
- 0
- 0
- 0
-
-
- 13313
- 1
- 0
- 0
- 0
-
-
- 13314
- 1
- 0
- 0
- 0
-
-
- 13315
- 1
- 0
- 0
- 0
-
-
- 13316
- 1
- 0
- 0
- 0
-
-
- 13317
- 1
- 0
- 0
- 0
-
-
- 13318
- 1
- 0
- 0
- 0
-
-
- 13319
- 1
- 0
- 0
- 0
-
-
- 13320
- 1
- 0
- 0
- 0
-
-
- 13321
- 1
- 0
- 0
- 0
-
-
- 13322
- 1
- 0
- 0
- 0
-
-
- 13323
- 1
- 0
- 0
- 0
-
-
- 13324
- 1
- 0
- 0
- 0
-
-
- 13325
- 1
- 0
- 0
- 0
-
-
- 13326
- 1
- 0
- 0
- 0
-
-
- 13327
- 1
- 0
- 0
- 0
-
-
- 13328
- 1
- 0
- 0
- 0
-
-
- 13329
- 1
- 0
- 0
- 0
-
-
- 13330
- 1
- 0
- 0
- 0
-
-
- 13331
- 1
- 0
- 0
- 0
-
-
- 13332
- 1
- 0
- 0
- 0
-
-
- 13333
- 1
- 0
- 0
- 0
-
-
- 13334
- 1
- 0
- 0
- 0
-
-
- 13335
- 1
- 0
- 0
- 0
-
-
- 13336
- 1
- 0
- 0
- 0
-
-
- 13337
- 50
- 0
- 0
- 0
-
-
- 13338
- 50
- 0
- 0
- 0
-
-
- 13339
- 100
- 0
- 0
- 0
-
-
- 13340
- 100
- 0
- 0
- 0
-
-
- 13341
- 100
- 0
- 0
- 0
-
-
- 13342
- 100
- 0
- 0
- 0
-
-
- 13343
- 100
- 0
- 0
- 0
-
-
- 13344
- 100
- 0
- 0
- 0
-
-
- 13345
- 100
- 0
- 0
- 0
-
-
- 13346
- 100
- 0
- 0
- 0
-
-
- 13347
- 100
- 0
- 0
- 0
-
-
- 13348
- 100
- 0
- 0
- 0
-
-
- 13349
- 100
- 0
- 0
- 0
-
-
- 13350
- 100
- 0
- 0
- 0
-
-
- 13351
- 100
- 0
- 0
- 0
-
-
- 13352
- 100
- 0
- 0
- 0
-
-
- 13353
- 100
- 0
- 0
- 0
-
-
- 13354
- 100
- 0
- 0
- 0
-
-
- 13355
- 100
- 0
- 0
- 0
-
-
- 13356
- 100
- 0
- 0
- 0
-
-
- 13357
- 100
- 0
- 0
- 0
-
-
- 13358
- 300
- 0
- 0
- 0
-
-
- 13359
- 300
- 0
- 0
- 0
-
-
- 13360
- 300
- 0
- 0
- 0
-
-
- 13361
- 300
- 0
- 0
- 0
-
-
- 13362
- 300
- 0
- 0
- 0
-
-
- 13363
- 300
- 0
- 0
- 0
-
-
- 13364
- 350
- 0
- 0
- 0
-
-
- 13365
- 350
- 0
- 0
- 0
-
-
- 13366
- 350
- 0
- 0
- 0
-
-
- 13367
- 350
- 0
- 0
- 0
-
-
- 13368
- 350
- 0
- 0
- 0
-
-
- 13369
- 350
- 0
- 0
- 0
-
-
- 13370
- 100
- 0
- 0
- 0
-
-
- 13371
- 100
- 0
- 0
- 0
-
-
- 13372
- 100
- 0
- 0
- 0
-
-
- 13373
- 100
- 0
- 0
- 0
-
-
- 13374
- 100
- 0
- 0
- 0
-
-
- 13375
- 100
- 0
- 0
- 0
-
-
- 13376
- 100
- 0
- 0
- 0
-
-
- 13377
- 100
- 0
- 0
- 0
-
-
- 13378
- 100
- 0
- 0
- 0
-
-
- 13379
- 1
- 0
- 0
- 0
-
-
- 13380
- 1
- 0
- 0
- 0
-
-
- 13381
- 1
- 0
- 0
- 0
-
-
- 13382
- 1
- 0
- 0
- 0
-
-
- 13383
- 1
- 0
- 0
- 0
-
-
- 13384
- 1
- 0
- 0
- 0
-
-
- 13385
- 1
- 0
- 0
- 0
-
-
- 13386
- 1
- 0
- 0
- 0
-
-
- 13387
- 1
- 0
- 0
- 0
-
-
- 13388
- 1
- 0
- 0
- 0
-
-
- 13389
- 1
- 0
- 0
- 0
-
-
- 13390
- 1
- 0
- 0
- 0
-
-
- 13391
- 1
- 0
- 0
- 0
-
-
- 13392
- 1
- 0
- 0
- 0
-
-
- 13393
- 1
- 0
- 0
- 0
-
-
- 13394
- 1
- 0
- 0
- 0
-
-
- 13395
- 1
- 0
- 0
- 0
-
-
- 13396
- 1
- 0
- 0
- 0
-
-
- 13397
- 1
- 0
- 0
- 0
-
-
- 13398
- 1
- 0
- 0
- 0
-
-
- 13399
- 1
- 0
- 0
- 0
-
-
- 13400
- 1
- 0
- 0
- 0
-
-
- 13401
- 1
- 0
- 0
- 0
-
-
- 13402
- 1
- 0
- 0
- 0
-
-
- 13403
- 300
- 0
- 0
- 0
-
-
- 13404
- 1
- 0
- 0
- 0
-
-
- 13405
- 1
- 0
- 0
- 0
-
-
- 13406
- 1
- 0
- 0
- 0
-
-
- 13407
- 1
- 0
- 0
- 0
-
-
- 13408
- 1
- 0
- 0
- 0
-
-
- 13409
- 1
- 0
- 0
- 0
-
-
- 13410
- 1
- 0
- 0
- 0
-
-
- 13411
- 1
- 0
- 0
- 0
-
-
- 13412
- 1
- 0
- 0
- 0
-
-
- 13413
- 1
- 0
- 0
- 0
-
-
- 13414
- 1
- 0
- 0
- 0
-
-
- 13415
- 1
- 0
- 0
- 0
-
-
- 13416
- 1
- 0
- 0
- 0
-
-
- 13417
- 1
- 0
- 0
- 0
-
-
- 13418
- 1
- 0
- 0
- 0
-
-
- 13419
- 1
- 0
- 0
- 0
-
-
- 13420
- 1
- 0
- 0
- 0
-
-
- 13421
- 1
- 0
- 0
- 0
-
-
- 13422
- 1
- 0
- 0
- 0
-
-
- 13423
- 1
- 0
- 0
- 0
-
-
- 13424
- 1
- 0
- 0
- 0
-
-
- 13425
- 1
- 0
- 0
- 0
-
-
- 13426
- 1
- 0
- 0
- 0
-
-
- 13427
- 1
- 0
- 0
- 0
-
-
- 13428
- 1
- 0
- 0
- 0
-
-
- 13429
- 1
- 0
- 0
- 0
-
-
- 13430
- 1
- 0
- 0
- 0
-
-
- 13431
- 20
- 0
- 0
- 0
-
-
- 13432
- 20
- 0
- 0
- 0
-
-
- 13433
- 5
- 0
- 0
- 0
-
-
- 13434
- 5
- 0
- 0
- 0
-
-
- 13435
- 5
- 0
- 0
- 0
-
-
- 13436
- 5
- 0
- 0
- 0
-
-
- 13437
- 1
- 0
- 0
- 0
-
-
- 13438
- 1
- 0
- 0
- 0
-
-
- 13439
- 1
- 0
- 0
- 0
-
-
- 13440
- 1
- 0
- 0
- 0
-
-
- 13441
- 1
- 0
- 0
- 0
-
-
- 13442
- 1
- 0
- 0
- 0
-
-
- 13443
- 1
- 0
- 0
- 0
-
-
- 13444
- 1
- 0
- 0
- 0
-
-
- 13445
- 1
- 0
- 0
- 0
-
-
- 13446
- 1
- 0
- 0
- 0
-
-
- 13447
- 1
- 0
- 0
- 0
-
-
- 13448
- 1
- 0
- 0
- 0
-
-
- 13449
- 1
- 0
- 0
- 0
-
-
- 13450
- 1
- 0
- 0
- 0
-
-
- 13451
- 1
- 0
- 0
- 0
-
-
- 13452
- 1
- 0
- 0
- 0
-
-
- 13453
- 1
- 0
- 0
- 0
-
-
- 13454
- 1
- 0
- 0
- 0
-
-
- 13455
- 1
- 0
- 0
- 0
-
-
- 13456
- 1
- 0
- 0
- 0
-
-
- 13457
- 1
- 0
- 0
- 0
-
-
- 13458
- 1
- 0
- 0
- 0
-
-
- 13459
- 1
- 0
- 0
- 0
-
-
- 13460
- 1
- 0
- 0
- 0
-
-
- 13461
- 1
- 0
- 0
- 0
-
-
- 13462
- 1
- 0
- 0
- 0
-
-
- 13463
- 1
- 0
- 0
- 0
-
-
- 13464
- 1
- 0
- 0
- 0
-
-
- 13465
- 1
- 0
- 0
- 0
-
-
- 13466
- 1
- 0
- 0
- 0
-
-
- 13467
- 1
- 0
- 0
- 0
-
-
- 13468
- 1
- 0
- 0
- 0
-
-
- 13469
- 1
- 0
- 0
- 0
-
-
- 13470
- 1
- 0
- 0
- 0
-
-
- 13471
- 1
- 0
- 0
- 0
-
-
- 13472
- 1
- 0
- 0
- 0
-
-
- 13473
- 1
- 0
- 0
- 0
-
-
- 13474
- 1
- 0
- 0
- 0
-
-
- 13475
- 1
- 0
- 0
- 0
-
-
- 13476
- 1
- 0
- 0
- 0
-
-
- 13477
- 1
- 0
- 0
- 0
-
-
- 13478
- 1
- 0
- 0
- 0
-
-
- 13479
- 1
- 0
- 0
- 0
-
-
- 13480
- 1
- 0
- 0
- 0
-
-
- 13481
- 1
- 0
- 0
- 0
-
-
- 13482
- 1
- 0
- 0
- 0
-
-
- 13483
- 1
- 0
- 0
- 0
-
-
- 13484
- 1
- 0
- 0
- 0
-
-
- 13485
- 1
- 0
- 0
- 0
-
-
- 13486
- 1
- 0
- 0
- 0
-
-
- 13487
- 1
- 0
- 0
- 0
-
-
- 13488
- 1
- 0
- 0
- 0
-
-
- 13489
- 1
- 0
- 0
- 0
-
-
- 13490
- 1
- 0
- 0
- 0
-
-
- 13491
- 1
- 0
- 0
- 0
-
-
- 13492
- 1
- 0
- 0
- 0
-
-
- 13493
- 1
- 0
- 0
- 0
-
-
- 13494
- 1
- 0
- 0
- 0
-
-
- 13495
- 1
- 0
- 0
- 0
-
-
- 13496
- 1
- 0
- 0
- 0
-
-
- 13497
- 1
- 0
- 0
- 0
-
-
- 13498
- 1
- 0
- 0
- 0
-
-
- 13499
- 1
- 0
- 0
- 0
-
-
- 13500
- 1
- 0
- 0
- 0
-
-
- 13501
- 1
- 0
- 0
- 0
-
-
- 13502
- 1
- 0
- 0
- 0
-
-
- 13503
- 1
- 0
- 0
- 0
-
-
- 13504
- 1
- 0
- 0
- 0
-
-
- 13505
- 1
- 0
- 0
- 0
-
-
- 13506
- 1
- 0
- 0
- 0
-
-
- 13507
- 1
- 0
- 0
- 0
-
-
- 13508
- 1
- 0
- 0
- 0
-
-
- 13509
- 1
- 0
- 0
- 0
-
-
- 13510
- 1
- 0
- 0
- 0
-
-
- 13511
- 1
- 0
- 0
- 0
-
-
- 13512
- 1
- 0
- 0
- 0
-
-
- 13513
- 1
- 0
- 0
- 0
-
-
- 13514
- 1
- 0
- 0
- 0
-
-
- 13515
- 1
- 0
- 0
- 0
-
-
- 13516
- 1
- 0
- 0
- 0
-
-
- 13517
- 1
- 0
- 0
- 0
-
-
- 13518
- 1
- 0
- 0
- 0
-
-
- 13519
- 1
- 0
- 0
- 0
-
-
- 13520
- 1
- 0
- 0
- 0
-
-
- 13521
- 1
- 0
- 0
- 0
-
-
- 13522
- 1
- 0
- 0
- 0
-
-
- 13523
- 1
- 0
- 0
- 0
-
-
- 13524
- 1
- 0
- 0
- 0
-
-
- 13525
- 1
- 0
- 0
- 0
-
-
- 13526
- 1
- 0
- 0
- 0
-
-
- 13527
- 1
- 0
- 0
- 0
-
-
- 13528
- 1
- 0
- 0
- 0
-
-
- 13529
- 1
- 0
- 0
- 0
-
-
- 13530
- 1
- 0
- 0
- 0
-
-
- 13531
- 1
- 0
- 0
- 0
-
-
- 13532
- 1
- 0
- 0
- 0
-
-
- 13533
- 1
- 0
- 0
- 0
-
-
- 13534
- 1
- 0
- 0
- 0
-
-
- 13535
- 1
- 0
- 0
- 0
-
-
- 13536
- 1
- 0
- 0
- 0
-
-
- 13537
- 1
- 0
- 0
- 0
-
-
- 13538
- 1
- 0
- 0
- 0
-
-
- 13539
- 1
- 0
- 0
- 0
-
-
- 13540
- 1
- 0
- 0
- 0
-
-
- 13541
- 1
- 0
- 0
- 0
-
-
- 13542
- 1
- 0
- 0
- 0
-
-
- 13543
- 1
- 0
- 0
- 0
-
-
- 13544
- 1
- 0
- 0
- 0
-
-
- 13545
- 1
- 0
- 0
- 0
-
-
- 13546
- 1
- 0
- 0
- 0
-
-
- 13547
- 1
- 0
- 0
- 0
-
-
- 13548
- 1
- 0
- 0
- 0
-
-
- 13549
- 1
- 0
- 0
- 0
-
-
- 13550
- 1
- 0
- 0
- 0
-
-
- 13551
- 1
- 0
- 0
- 0
-
-
- 13552
- 1
- 0
- 0
- 0
-
-
- 13553
- 1
- 0
- 0
- 0
-
-
- 13554
- 1
- 0
- 0
- 0
-
-
- 13555
- 1
- 0
- 0
- 0
-
-
- 13556
- 1
- 0
- 0
- 0
-
-
- 13557
- 1
- 0
- 0
- 0
-
-
- 13558
- 1
- 0
- 0
- 0
-
-
- 13559
- 1
- 0
- 0
- 0
-
-
- 13560
- 350
- 0
- 0
- 0
-
-
- 13561
- 350
- 0
- 0
- 0
-
-
- 13562
- 350
- 0
- 0
- 0
-
-
- 13563
- 38
- 0
- 0
- 0
-
-
- 13564
- 38
- 0
- 0
- 0
-
-
- 13565
- 1
- 0
- 0
- 0
-
-
- 13566
- 1
- 0
- 0
- 0
-
-
- 13567
- 1
- 0
- 0
- 0
-
-
- 13568
- 1
- 0
- 0
- 0
-
-
- 13569
- 1
- 0
- 0
- 0
-
-
- 13570
- 1
- 0
- 0
- 0
-
-
- 13571
- 1
- 0
- 0
- 0
-
-
- 13572
- 1
- 0
- 0
- 0
-
-
- 13573
- 1
- 0
- 0
- 0
-
-
- 13574
- 1
- 0
- 0
- 0
-
-
- 13575
- 1
- 0
- 0
- 0
-
-
- 13576
- 1
- 0
- 0
- 0
-
-
- 13577
- 1
- 0
- 0
- 0
-
-
- 13578
- 1
- 0
- 0
- 0
-
-
- 13579
- 1
- 0
- 0
- 0
-
-
- 13580
- 1
- 0
- 0
- 0
-
-
- 13581
- 1
- 0
- 0
- 0
-
-
- 13582
- 1
- 0
- 0
- 0
-
-
- 13583
- 1
- 0
- 0
- 0
-
-
- 13584
- 1
- 0
- 0
- 0
-
-
- 13585
- 1
- 0
- 0
- 0
-
-
- 13586
- 1
- 0
- 0
- 0
-
-
- 13587
- 4
- 0
- 0
- 0
-
-
- 13588
- 1
- 0
- 0
- 0
-
-
- 13589
- 2
- 0
- 0
- 0
-
-
- 13590
- 1
- 0
- 0
- 0
-
-
- 13591
- 1
- 0
- 0
- 0
-
-
- 13592
- 1
- 0
- 0
- 0
-
-
- 13593
- 1
- 0
- 0
- 0
-
-
- 13594
- 1
- 0
- 0
- 0
-
-
- 13595
- 1
- 0
- 0
- 0
-
-
- 13596
- 1
- 0
- 0
- 0
-
-
- 13597
- 1
- 0
- 0
- 0
-
-
- 13598
- 100
- 0
- 0
- 0
-
-
- 13599
- 100
- 0
- 0
- 0
-
-
- 13600
- 100
- 0
- 0
- 0
-
-
- 13601
- 100
- 0
- 0
- 0
-
-
- 13602
- 100
- 0
- 0
- 0
-
-
- 13603
- 100
- 0
- 0
- 0
-
-
- 13604
- 100
- 0
- 0
- 0
-
-
- 13605
- 100
- 0
- 0
- 0
-
-
- 13606
- 100
- 0
- 0
- 0
-
-
- 13607
- 100
- 0
- 0
- 0
-
-
- 13608
- 100
- 0
- 0
- 0
-
-
- 13609
- 100
- 0
- 0
- 0
-
-
- 13610
- 100
- 0
- 0
- 0
-
-
- 13611
- 100
- 0
- 0
- 0
-
-
- 13612
- 20
- 0
- 0
- 0
-
-
- 13613
- 20
- 0
- 0
- 0
-
-
- 13614
- 75
- 0
- 0
- 0
-
-
- 13615
- 75
- 0
- 0
- 0
-
-
- 13616
- 75
- 0
- 0
- 0
-
-
- 13617
- 75
- 0
- 0
- 0
-
-
- 13618
- 75
- 0
- 0
- 0
-
-
- 13619
- 75
- 0
- 0
- 0
-
-
- 13620
- 75
- 0
- 0
- 0
-
-
- 13621
- 75
- 0
- 0
- 0
-
-
- 13622
- 75
- 0
- 0
- 0
-
-
- 13623
- 75
- 0
- 0
- 0
-
-
- 13624
- 75
- 0
- 0
- 0
-
-
- 13625
- 75
- 0
- 0
- 0
-
-
- 13626
- 75
- 0
- 0
- 0
-
-
- 13627
- 75
- 0
- 0
- 0
-
-
- 13628
- 75
- 0
- 0
- 0
-
-
- 13629
- 15
- 0
- 0
- 0
-
-
- 13630
- 1500
- 0
- 0
- 0
-
-
- 13631
- 1500
- 0
- 0
- 0
-
-
- 13632
- 1500
- 0
- 0
- 0
-
-
- 13633
- 1500
- 0
- 0
- 0
-
-
- 13634
- 1500
- 0
- 0
- 0
-
-
- 13635
- 1500
- 0
- 0
- 0
-
-
- 13636
- 1500
- 0
- 0
- 0
-
-
- 13637
- 1500
- 0
- 0
- 0
-
-
- 13638
- 1500
- 0
- 0
- 0
-
-
- 13639
- 1500
- 0
- 0
- 0
-
-
- 13640
- 1500
- 0
- 0
- 0
-
-
- 13641
- 1500
- 0
- 0
- 0
-
-
- 13642
- 1500
- 0
- 0
- 0
-
-
- 13643
- 20
- 0
- 0
- 0
-
-
- 13644
- 20
- 0
- 0
- 0
-
-
- 13645
- 20
- 0
- 0
- 0
-
-
- 13646
- 20
- 0
- 0
- 0
-
-
- 13647
- 20
- 0
- 0
- 0
-
-
- 13648
- 20
- 0
- 0
- 0
-
-
- 13649
- 4
- 0
- 0
- 0
-
-
- 13650
- 1
- 0
- 0
- 0
-
-
- 13651
- 1
- 0
- 0
- 0
-
-
- 13652
- 1
- 0
- 0
- 0
-
-
- 13653
- 1
- 0
- 0
- 0
-
-
- 13654
- 1
- 0
- 0
- 0
-
-
- 13655
- 100
- 0
- 0
- 0
-
-
- 13656
- 75
- 0
- 0
- 0
-
-
- 13657
- 75
- 0
- 0
- 0
-
-
- 13658
- 75
- 0
- 0
- 0
-
-
- 13659
- 100
- 0
- 0
- 0
-
-
- 13660
- 200
- 0
- 0
- 0
-
-
- 13661
- 300
- 0
- 0
- 0
-
-
- 13662
- 1
- 0
- 0
- 0
-
-
- 13663
- 10
- 0
- 0
- 0
-
-
- 13664
- 10
- 0
- 0
- 0
-
-
- 13665
- 10
- 0
- 0
- 0
-
-
- 13666
- 10
- 0
- 0
- 0
-
-
- 13667
- 10
- 0
- 0
- 0
-
-
- 13668
- 10
- 0
- 0
- 0
-
-
- 13669
- 10
- 0
- 0
- 0
-
-
- 13670
- 10
- 0
- 0
- 0
-
-
- 13671
- 10
- 0
- 0
- 0
-
-
- 13672
- 10
- 0
- 0
- 0
-
-
- 13673
- 10
- 0
- 0
- 0
-
-
- 13674
- 10
- 0
- 0
- 0
-
-
- 13675
- 10
- 0
- 0
- 0
-
-
- 13676
- 10
- 0
- 0
- 0
-
-
- 13677
- 10
- 0
- 0
- 0
-
-
- 13678
- 10
- 0
- 0
- 0
-
-
- 13679
- 10
- 0
- 0
- 0
-
-
- 13680
- 10
- 0
- 0
- 0
-
-
- 13681
- 10
- 0
- 0
- 0
-
-
- 13682
- 10
- 0
- 0
- 0
-
-
- 13683
- 10
- 0
- 0
- 0
-
-
- 13684
- 10
- 0
- 0
- 0
-
-
- 13685
- 10
- 0
- 0
- 0
-
-
- 13686
- 10
- 0
- 0
- 0
-
-
- 13687
- 10
- 0
- 0
- 0
-
-
- 13688
- 10
- 0
- 0
- 0
-
-
- 13689
- 10
- 0
- 0
- 0
-
-
- 13690
- 10
- 0
- 0
- 0
-
-
- 13691
- 10
- 0
- 0
- 0
-
-
- 13692
- 10
- 0
- 0
- 0
-
-
- 13693
- 10
- 0
- 0
- 0
-
-
- 13694
- 10
- 0
- 0
- 0
-
-
- 13695
- 10
- 0
- 0
- 0
-
-
- 13696
- 10
- 0
- 0
- 0
-
-
- 13697
- 10
- 0
- 0
- 0
-
-
- 13698
- 10
- 0
- 0
- 0
-
-
- 13699
- 10
- 0
- 0
- 0
-
-
- 13700
- 10
- 0
- 0
- 0
-
-
- 13701
- 10
- 0
- 0
- 0
-
-
- 13702
- 10
- 0
- 0
- 0
-
-
- 13703
- 10
- 0
- 0
- 0
-
-
- 13704
- 10
- 0
- 0
- 0
-
-
- 13705
- 10
- 0
- 0
- 0
-
-
- 13706
- 10
- 0
- 0
- 0
-
-
- 13707
- 1
- 0
- 0
- 0
-
-
- 13708
- 1
- 0
- 0
- 0
-
-
- 13709
- 1
- 0
- 0
- 0
-
-
- 13710
- 1
- 0
- 0
- 0
-
-
- 13711
- 1
- 0
- 0
- 0
-
-
- 13712
- 1
- 0
- 0
- 0
-
-
- 13713
- 1
- 0
- 0
- 0
-
-
- 13714
- 1
- 0
- 0
- 0
-
-
- 13715
- 1
- 0
- 0
- 0
-
-
- 13716
- 1
- 0
- 0
- 0
-
-
- 13717
- 1
- 0
- 0
- 0
-
-
- 13718
- 1
- 0
- 0
- 0
-
-
- 13719
- 50
- 0
- 0
- 0
-
-
- 13720
- 14
- 0
- 0
- 0
-
-
- 13721
- 4
- 0
- 0
- 0
-
-
- 13722
- 7
- 0
- 0
- 0
-
-
- 13723
- 100
- 0
- 0
- 0
-
-
- 13724
- 100
- 0
- 0
- 0
-
-
- 13725
- 100
- 0
- 0
- 0
-
-
- 13726
- 100
- 0
- 0
- 0
-
-
- 13727
- 50
- 0
- 0
- 0
-
-
- 13728
- 1
- 0
- 0
- 0
-
-
- 13729
- 1
- 0
- 0
- 0
-
-
- 13730
- 1
- 0
- 0
- 0
-
-
- 13731
- 1
- 0
- 0
- 0
-
-
- 13732
- 1
- 0
- 0
- 0
-
-
- 13733
- 1
- 0
- 0
- 0
-
-
- 13734
- 70000
- 0
- 0
- 0
-
-
- 13735
- 70000
- 0
- 0
- 0
-
-
- 13736
- 1400000
- 0
- 0
- 0
-
-
- 13737
- 1400000
- 0
- 0
- 0
-
-
- 13738
- 2000000
- 0
- 0
- 0
-
-
- 13739
- 2000000
- 0
- 0
- 0
-
-
- 13740
- 2000000
- 0
- 0
- 0
-
-
- 13741
- 2000000
- 0
- 0
- 0
-
-
- 13742
- 2000000
- 0
- 0
- 0
-
-
- 13743
- 2000000
- 0
- 0
- 0
-
-
- 13744
- 2000000
- 0
- 0
- 0
-
-
- 13745
- 2000000
- 0
- 0
- 0
-
-
- 13746
- 750000
- 0
- 0
- 0
-
-
- 13747
- 750000
- 0
- 0
- 0
-
-
- 13748
- 750000
- 0
- 0
- 0
-
-
- 13749
- 750000
- 0
- 0
- 0
-
-
- 13750
- 750000
- 0
- 0
- 0
-
-
- 13751
- 750000
- 0
- 0
- 0
-
-
- 13752
- 750000
- 0
- 0
- 0
-
-
- 13753
- 750000
- 0
- 0
- 0
-
-
- 13754
- 750000
- 0
- 0
- 0
-
-
- 13755
- 750000
- 0
- 0
- 0
-
-
- 13756
- 40
- 0
- 0
- 0
-
-
- 13757
- 1
- 0
- 0
- 0
-
-
- 13758
- 1
- 0
- 0
- 0
-
-
- 13759
- 1
- 0
- 0
- 0
-
-
- 13760
- 1
- 0
- 0
- 0
-
-
- 13761
- 1
- 0
- 0
- 0
-
-
- 13762
- 1
- 0
- 0
- 0
-
-
- 13763
- 1
- 0
- 0
- 0
-
-
- 13764
- 1
- 0
- 0
- 0
-
-
- 13765
- 1
- 0
- 0
- 0
-
-
- 13766
- 1
- 0
- 0
- 0
-
-
- 13767
- 1
- 0
- 0
- 0
-
-
- 13768
- 1
- 0
- 0
- 0
-
-
- 13769
- 1
- 0
- 0
- 0
-
-
- 13770
- 1
- 0
- 0
- 0
-
-
- 13771
- 1
- 0
- 0
- 0
-
-
- 13772
- 1
- 0
- 0
- 0
-
-
- 13773
- 1
- 0
- 0
- 0
-
-
- 13774
- 1
- 0
- 0
- 0
-
-
- 13775
- 1
- 0
- 0
- 0
-
-
- 13776
- 1
- 0
- 0
- 0
-
-
- 13777
- 1
- 0
- 0
- 0
-
-
- 13778
- 1
- 0
- 0
- 0
-
-
- 13779
- 1
- 0
- 0
- 0
-
-
- 13780
- 1
- 0
- 0
- 0
-
-
- 13781
- 1
- 0
- 0
- 0
-
-
- 13782
- 1
- 0
- 0
- 0
-
-
- 13783
- 1
- 0
- 0
- 0
-
-
- 13784
- 1
- 0
- 0
- 0
-
-
- 13785
- 1
- 0
- 0
- 0
-
-
- 13786
- 1
- 0
- 0
- 0
-
-
- 13787
- 1
- 0
- 0
- 0
-
-
- 13788
- 1
- 0
- 0
- 0
-
-
- 13789
- 1
- 0
- 0
- 0
-
-
- 13790
- 1
- 0
- 0
- 0
-
-
- 13791
- 1
- 0
- 0
- 0
-
-
- 13792
- 1
- 0
- 0
- 0
-
-
- 13793
- 1
- 0
- 0
- 0
-
-
- 13794
- 1
- 0
- 0
- 0
-
-
- 13795
- 1
- 0
- 0
- 0
-
-
- 13796
- 1
- 0
- 0
- 0
-
-
- 13797
- 1
- 0
- 0
- 0
-
-
- 13798
- 1
- 0
- 0
- 0
-
-
- 13799
- 1
- 0
- 0
- 0
-
-
- 13800
- 1
- 0
- 0
- 0
-
-
- 13801
- 1
- 0
- 0
- 0
-
-
- 13802
- 1
- 0
- 0
- 0
-
-
- 13803
- 1
- 0
- 0
- 0
-
-
- 13804
- 1
- 0
- 0
- 0
-
-
- 13805
- 1
- 0
- 0
- 0
-
-
- 13806
- 1
- 0
- 0
- 0
-
-
- 13807
- 1
- 0
- 0
- 0
-
-
- 13808
- 1
- 0
- 0
- 0
-
-
- 13809
- 1
- 0
- 0
- 0
-
-
- 13810
- 1
- 0
- 0
- 0
-
-
- 13811
- 1
- 0
- 0
- 0
-
-
- 13812
- 1
- 0
- 0
- 0
-
-
- 13813
- 1
- 0
- 0
- 0
-
-
- 13814
- 1
- 0
- 0
- 0
-
-
- 13815
- 1
- 0
- 0
- 0
-
-
- 13816
- 1
- 0
- 0
- 0
-
-
- 13817
- 1
- 0
- 0
- 0
-
-
- 13818
- 1
- 0
- 0
- 0
-
-
- 13819
- 1
- 0
- 0
- 0
-
-
- 13820
- 1
- 0
- 0
- 0
-
-
- 13821
- 1
- 0
- 0
- 0
-
-
- 13822
- 1
- 0
- 0
- 0
-
-
- 13823
- 1
- 0
- 0
- 0
-
-
- 13824
- 1
- 0
- 0
- 0
-
-
- 13825
- 1
- 0
- 0
- 0
-
-
- 13826
- 1
- 0
- 0
- 0
-
-
- 13827
- 1
- 0
- 0
- 0
-
-
- 13828
- 1
- 0
- 0
- 0
-
-
- 13829
- 1
- 0
- 0
- 0
-
-
- 13830
- 1
- 0
- 0
- 0
-
-
- 13831
- 1
- 0
- 0
- 0
-
-
- 13832
- 1
- 0
- 0
- 0
-
-
- 13833
- 1
- 0
- 0
- 0
-
-
- 13834
- 1
- 0
- 0
- 0
-
-
- 13835
- 1
- 0
- 0
- 0
-
-
- 13836
- 1
- 0
- 0
- 0
-
-
- 13837
- 1
- 0
- 0
- 0
-
-
- 13838
- 1
- 0
- 0
- 0
-
-
- 13839
- 1
- 0
- 0
- 0
-
-
- 13840
- 1
- 0
- 0
- 0
-
-
- 13841
- 1
- 0
- 0
- 0
-
-
- 13842
- 1
- 0
- 0
- 0
-
-
- 13843
- 1
- 0
- 0
- 0
-
-
- 13844
- 1
- 0
- 0
- 0
-
-
- 13845
- 50000
- 0
- 0
- 0
-
-
- 13846
- 50000
- 0
- 0
- 0
-
-
- 13847
- 50000
- 0
- 0
- 0
-
-
- 13848
- 50000
- 0
- 0
- 0
-
-
- 13849
- 50000
- 0
- 0
- 0
-
-
- 13850
- 50000
- 0
- 0
- 0
-
-
- 13851
- 50000
- 0
- 0
- 0
-
-
- 13852
- 50000
- 0
- 0
- 0
-
-
- 13853
- 50000
- 0
- 0
- 0
-
-
- 13854
- 50000
- 0
- 0
- 0
-
-
- 13855
- 50000
- 0
- 0
- 0
-
-
- 13856
- 50000
- 0
- 0
- 0
-
-
- 13857
- 50000
- 0
- 0
- 0
-
-
- 13858
- 500000
- 0
- 0
- 0
-
-
- 13859
- 500000
- 0
- 0
- 0
-
-
- 13860
- 300000
- 0
- 0
- 0
-
-
- 13861
- 500000
- 0
- 0
- 0
-
-
- 13862
- 500000
- 0
- 0
- 0
-
-
- 13863
- 300000
- 0
- 0
- 0
-
-
- 13864
- 250000
- 0
- 0
- 0
-
-
- 13865
- 250000
- 0
- 0
- 0
-
-
- 13866
- 150000
- 0
- 0
- 0
-
-
- 13867
- 300000
- 0
- 0
- 0
-
-
- 13868
- 300000
- 0
- 0
- 0
-
-
- 13869
- 180000
- 0
- 0
- 0
-
-
- 13870
- 500000
- 0
- 0
- 0
-
-
- 13871
- 500000
- 0
- 0
- 0
-
-
- 13872
- 300000
- 0
- 0
- 0
-
-
- 13873
- 500000
- 0
- 0
- 0
-
-
- 13874
- 500000
- 0
- 0
- 0
-
-
- 13875
- 300000
- 0
- 0
- 0
-
-
- 13876
- 250000
- 0
- 0
- 0
-
-
- 13877
- 250000
- 0
- 0
- 0
-
-
- 13878
- 150000
- 0
- 0
- 0
-
-
- 13879
- 4000
- 0
- 0
- 0
-
-
- 13880
- 10000
- 0
- 0
- 0
-
-
- 13881
- 10000
- 0
- 0
- 0
-
-
- 13882
- 10000
- 0
- 0
- 0
-
-
- 13883
- 4000
- 0
- 0
- 0
-
-
- 13884
- 500000
- 0
- 0
- 0
-
-
- 13885
- 500000
- 0
- 0
- 0
-
-
- 13886
- 300000
- 0
- 0
- 0
-
-
- 13887
- 500000
- 0
- 0
- 0
-
-
- 13888
- 500000
- 0
- 0
- 0
-
-
- 13889
- 300000
- 0
- 0
- 0
-
-
- 13890
- 500000
- 0
- 0
- 0
-
-
- 13891
- 500000
- 0
- 0
- 0
-
-
- 13892
- 300000
- 0
- 0
- 0
-
-
- 13893
- 500000
- 0
- 0
- 0
-
-
- 13894
- 500000
- 0
- 0
- 0
-
-
- 13895
- 300000
- 0
- 0
- 0
-
-
- 13896
- 250000
- 0
- 0
- 0
-
-
- 13897
- 250000
- 0
- 0
- 0
-
-
- 13898
- 150000
- 0
- 0
- 0
-
-
- 13899
- 300000
- 0
- 0
- 0
-
-
- 13900
- 300000
- 0
- 0
- 0
-
-
- 13901
- 180000
- 0
- 0
- 0
-
-
- 13902
- 300000
- 0
- 0
- 0
-
-
- 13903
- 300000
- 0
- 0
- 0
-
-
- 13904
- 180000
- 0
- 0
- 0
-
-
- 13905
- 300000
- 0
- 0
- 0
-
-
- 13906
- 300000
- 0
- 0
- 0
-
-
- 13907
- 180000
- 0
- 0
- 0
-
-
- 13908
- 125000
- 0
- 0
- 0
-
-
- 13909
- 125000
- 0
- 0
- 0
-
-
- 13910
- 75000
- 0
- 0
- 0
-
-
- 13911
- 125000
- 0
- 0
- 0
-
-
- 13912
- 125000
- 0
- 0
- 0
-
-
- 13913
- 75000
- 0
- 0
- 0
-
-
- 13914
- 125000
- 0
- 0
- 0
-
-
- 13915
- 125000
- 0
- 0
- 0
-
-
- 13916
- 75000
- 0
- 0
- 0
-
-
- 13917
- 125000
- 0
- 0
- 0
-
-
- 13918
- 125000
- 0
- 0
- 0
-
-
- 13919
- 75000
- 0
- 0
- 0
-
-
- 13920
- 50000
- 0
- 0
- 0
-
-
- 13921
- 50000
- 0
- 0
- 0
-
-
- 13922
- 30000
- 0
- 0
- 0
-
-
- 13923
- 125000
- 0
- 0
- 0
-
-
- 13924
- 125000
- 0
- 0
- 0
-
-
- 13925
- 75000
- 0
- 0
- 0
-
-
- 13926
- 125000
- 0
- 0
- 0
-
-
- 13927
- 125000
- 0
- 0
- 0
-
-
- 13928
- 75000
- 0
- 0
- 0
-
-
- 13929
- 125000
- 0
- 0
- 0
-
-
- 13930
- 125000
- 0
- 0
- 0
-
-
- 13931
- 75000
- 0
- 0
- 0
-
-
- 13932
- 125000
- 0
- 0
- 0
-
-
- 13933
- 125000
- 0
- 0
- 0
-
-
- 13934
- 75000
- 0
- 0
- 0
-
-
- 13935
- 125000
- 0
- 0
- 0
-
-
- 13936
- 125000
- 0
- 0
- 0
-
-
- 13937
- 75000
- 0
- 0
- 0
-
-
- 13938
- 50000
- 0
- 0
- 0
-
-
- 13939
- 50000
- 0
- 0
- 0
-
-
- 13940
- 30000
- 0
- 0
- 0
-
-
- 13941
- 125000
- 0
- 0
- 0
-
-
- 13942
- 125000
- 0
- 0
- 0
-
-
- 13943
- 70000
- 0
- 0
- 0
-
-
- 13944
- 125000
- 0
- 0
- 0
-
-
- 13945
- 125000
- 0
- 0
- 0
-
-
- 13946
- 75000
- 0
- 0
- 0
-
-
- 13947
- 125000
- 0
- 0
- 0
-
-
- 13948
- 125000
- 0
- 0
- 0
-
-
- 13949
- 75000
- 0
- 0
- 0
-
-
- 13950
- 50000
- 0
- 0
- 0
-
-
- 13951
- 50000
- 0
- 0
- 0
-
-
- 13952
- 30000
- 0
- 0
- 0
-
-
- 13953
- 1000
- 0
- 0
- 0
-
-
- 13954
- 10000
- 0
- 0
- 0
-
-
- 13955
- 10000
- 0
- 0
- 0
-
-
- 13956
- 10000
- 0
- 0
- 0
-
-
- 13957
- 1000
- 0
- 0
- 0
-
-
- 13958
- 120000
- 0
- 0
- 0
-
-
- 13959
- 120000
- 0
- 0
- 0
-
-
- 13960
- 72000
- 0
- 0
- 0
-
-
- 13961
- 60000
- 0
- 0
- 0
-
-
- 13962
- 60000
- 0
- 0
- 0
-
-
- 13963
- 36000
- 0
- 0
- 0
-
-
- 13964
- 120000
- 0
- 0
- 0
-
-
- 13965
- 120000
- 0
- 0
- 0
-
-
- 13966
- 72000
- 0
- 0
- 0
-
-
- 13967
- 120000
- 0
- 0
- 0
-
-
- 13968
- 120000
- 0
- 0
- 0
-
-
- 13969
- 72000
- 0
- 0
- 0
-
-
- 13970
- 120000
- 0
- 0
- 0
-
-
- 13971
- 120000
- 0
- 0
- 0
-
-
- 13972
- 72000
- 0
- 0
- 0
-
-
- 13973
- 120000
- 0
- 0
- 0
-
-
- 13974
- 120000
- 0
- 0
- 0
-
-
- 13975
- 72000
- 0
- 0
- 0
-
-
- 13976
- 30000
- 0
- 0
- 0
-
-
- 13977
- 30000
- 0
- 0
- 0
-
-
- 13978
- 18000
- 0
- 0
- 0
-
-
- 13979
- 100000
- 0
- 0
- 0
-
-
- 13980
- 100000
- 0
- 0
- 0
-
-
- 13981
- 60000
- 0
- 0
- 0
-
-
- 13982
- 100000
- 0
- 0
- 0
-
-
- 13983
- 100000
- 0
- 0
- 0
-
-
- 13984
- 60000
- 0
- 0
- 0
-
-
- 13985
- 50000
- 0
- 0
- 0
-
-
- 13986
- 50000
- 0
- 0
- 0
-
-
- 13987
- 30000
- 0
- 0
- 0
-
-
- 13988
- 40000
- 0
- 0
- 0
-
-
- 13989
- 40000
- 0
- 0
- 0
-
-
- 13990
- 24000
- 0
- 0
- 0
-
-
- 13991
- 3
- 0
- 0
- 0
-
-
- 13992
- 3
- 0
- 0
- 0
-
-
- 13993
- 3
- 0
- 0
- 0
-
-
- 13994
- 3
- 0
- 0
- 0
-
-
- 13995
- 3
- 0
- 0
- 0
-
-
- 13996
- 3
- 0
- 0
- 0
-
-
- 13997
- 3
- 0
- 0
- 0
-
-
- 13998
- 3
- 0
- 0
- 0
-
-
- 13999
- 3
- 0
- 0
- 0
-
-
- 14000
- 3
- 0
- 0
- 0
-
-
- 14001
- 3
- 0
- 0
- 0
-
-
- 14002
- 3
- 0
- 0
- 0
-
-
- 14003
- 3
- 0
- 0
- 0
-
-
- 14004
- 3
- 0
- 0
- 0
-
-
- 14005
- 3
- 0
- 0
- 0
-
-
- 14006
- 3
- 0
- 0
- 0
-
-
- 14007
- 3
- 0
- 0
- 0
-
-
- 14008
- 3
- 0
- 0
- 0
-
-
- 14009
- 3
- 0
- 0
- 0
-
-
- 14010
- 3
- 0
- 0
- 0
-
-
- 14011
- 3
- 0
- 0
- 0
-
-
- 14012
- 3
- 0
- 0
- 0
-
-
- 14013
- 3
- 0
- 0
- 0
-
-
- 14014
- 3
- 0
- 0
- 0
-
-
- 14015
- 3
- 0
- 0
- 0
-
-
- 14016
- 3
- 0
- 0
- 0
-
-
- 14017
- 3
- 0
- 0
- 0
-
-
- 14018
- 3
- 0
- 0
- 0
-
-
- 14019
- 3
- 0
- 0
- 0
-
-
- 14020
- 3
- 0
- 0
- 0
-
-
- 14021
- 3
- 0
- 0
- 0
-
-
- 14022
- 3
- 0
- 0
- 0
-
-
- 14023
- 3
- 0
- 0
- 0
-
-
- 14024
- 3
- 0
- 0
- 0
-
-
- 14025
- 3
- 0
- 0
- 0
-
-
- 14026
- 3
- 0
- 0
- 0
-
-
- 14027
- 3
- 0
- 0
- 0
-
-
- 14028
- 3
- 0
- 0
- 0
-
-
- 14029
- 3
- 0
- 0
- 0
-
-
- 14030
- 3
- 0
- 0
- 0
-
-
- 14031
- 3
- 0
- 0
- 0
-
-
- 14032
- 3
- 0
- 0
- 0
-
-
- 14033
- 3
- 0
- 0
- 0
-
-
- 14034
- 3
- 0
- 0
- 0
-
-
- 14035
- 3
- 0
- 0
- 0
-
-
- 14036
- 3
- 0
- 0
- 0
-
-
- 14037
- 3
- 0
- 0
- 0
-
-
- 14038
- 3
- 0
- 0
- 0
-
-
- 14039
- 3
- 0
- 0
- 0
-
-
- 14040
- 3
- 0
- 0
- 0
-
-
- 14041
- 3
- 0
- 0
- 0
-
-
- 14042
- 3
- 0
- 0
- 0
-
-
- 14043
- 3
- 0
- 0
- 0
-
-
- 14044
- 3
- 0
- 0
- 0
-
-
- 14045
- 3
- 0
- 0
- 0
-
-
- 14046
- 3
- 0
- 0
- 0
-
-
- 14047
- 3
- 0
- 0
- 0
-
-
- 14048
- 3
- 0
- 0
- 0
-
-
- 14049
- 3
- 0
- 0
- 0
-
-
- 14050
- 3
- 0
- 0
- 0
-
-
- 14051
- 3
- 0
- 0
- 0
-
-
- 14052
- 3
- 0
- 0
- 0
-
-
- 14053
- 3
- 0
- 0
- 0
-
-
- 14054
- 3
- 0
- 0
- 0
-
-
- 14055
- 3
- 0
- 0
- 0
-
-
- 14056
- 5
- 0
- 0
- 0
-
-
- 14057
- 25
- 0
- 0
- 0
-
-
- 14058
- 2
- 0
- 0
- 0
-
-
- 14059
- 4
- 0
- 0
- 0
-
-
- 14060
- 4
- 0
- 0
- 0
-
-
- 14061
- 2
- 0
- 0
- 0
-
-
- 14062
- 2
- 0
- 0
- 0
-
-
- 14063
- 1
- 0
- 0
- 0
-
-
- 14064
- 5
- 0
- 0
- 0
-
-
- 14065
- 1
- 0
- 0
- 0
-
-
- 14066
- 1
- 0
- 0
- 0
-
-
- 14067
- 1
- 0
- 0
- 0
-
-
- 14068
- 15
- 0
- 0
- 0
-
-
- 14069
- 2
- 0
- 0
- 0
-
-
- 14070
- 1
- 0
- 0
- 0
-
-
- 14071
- 1
- 0
- 0
- 0
-
-
- 14072
- 1
- 0
- 0
- 0
-
-
- 14073
- 1
- 0
- 0
- 0
-
-
- 14074
- 1
- 0
- 0
- 0
-
-
- 14075
- 1
- 0
- 0
- 0
-
-
- 14076
- 15
- 0
- 0
- 0
-
-
- 14077
- 15
- 0
- 0
- 0
-
-
- 14078
- 15
- 0
- 0
- 0
-
-
- 14079
- 15
- 0
- 0
- 0
-
-
- 14080
- 15
- 0
- 0
- 0
-
-
- 14081
- 15
- 0
- 0
- 0
-
-
- 14082
- 1
- 0
- 0
- 0
-
-
- 14083
- 1
- 0
- 0
- 0
-
-
- 14084
- 1
- 0
- 0
- 0
-
-
- 14085
- 1
- 0
- 0
- 0
-
-
- 14086
- 15
- 0
- 0
- 0
-
-
- 14087
- 15
- 0
- 0
- 0
-
-
- 14088
- 15
- 0
- 0
- 0
-
-
- 14089
- 1
- 0
- 0
- 0
-
-
- 14090
- 1
- 0
- 0
- 0
-
-
- 14091
- 1
- 0
- 0
- 0
-
-
- 14092
- 1
- 0
- 0
- 0
-
-
- 14093
- 1
- 0
- 0
- 0
-
-
- 14094
- 43333
- 0
- 0
- 0
-
-
- 14095
- 42667
- 0
- 0
- 0
-
-
- 14096
- 23467
- 0
- 0
- 0
-
-
- 14097
- 17066
- 0
- 0
- 0
-
-
- 14098
- 21333
- 0
- 0
- 0
-
-
- 14099
- 21333
- 0
- 0
- 0
-
-
- 14100
- 21333
- 0
- 0
- 0
-
-
- 14101
- 21333
- 0
- 0
- 0
-
-
- 14102
- 21333
- 0
- 0
- 0
-
-
- 14103
- 21333
- 0
- 0
- 0
-
-
- 14104
- 21333
- 0
- 0
- 0
-
-
- 14105
- 21333
- 0
- 0
- 0
-
-
- 14106
- 21333
- 0
- 0
- 0
-
-
- 14107
- 21333
- 0
- 0
- 0
-
-
- 14108
- 21333
- 0
- 0
- 0
-
-
- 14109
- 21333
- 0
- 0
- 0
-
-
- 14110
- 1
- 0
- 0
- 0
-
-
- 14111
- 21333
- 0
- 0
- 0
-
-
- 14112
- 21333
- 0
- 0
- 0
-
-
- 14113
- 21333
- 0
- 0
- 0
-
-
- 14114
- 43333
- 0
- 0
- 0
-
-
- 14115
- 42667
- 0
- 0
- 0
-
-
- 14116
- 23467
- 0
- 0
- 0
-
-
- 14117
- 17066
- 0
- 0
- 0
-
-
- 14118
- 43333
- 0
- 0
- 0
-
-
- 14119
- 42667
- 0
- 0
- 0
-
-
- 14120
- 23467
- 0
- 0
- 0
-
-
- 14121
- 17066
- 0
- 0
- 0
-
-
- 14122
- 30
- 0
- 0
- 0
-
-
- 14123
- 30
- 0
- 0
- 0
-
-
- 14124
- 60
- 0
- 0
- 0
-
-
- 14125
- 60
- 0
- 0
- 0
-
-
- 14126
- 90
- 0
- 0
- 0
-
-
- 14127
- 90
- 0
- 0
- 0
-
-
- 14128
- 120
- 0
- 0
- 0
-
-
- 14129
- 120
- 0
- 0
- 0
-
-
- 14130
- 150
- 0
- 0
- 0
-
-
- 14131
- 150
- 0
- 0
- 0
-
-
- 14132
- 30
- 0
- 0
- 0
-
-
- 14133
- 30
- 0
- 0
- 0
-
-
- 14134
- 60
- 0
- 0
- 0
-
-
- 14135
- 60
- 0
- 0
- 0
-
-
- 14136
- 90
- 0
- 0
- 0
-
-
- 14137
- 90
- 0
- 0
- 0
-
-
- 14138
- 120
- 0
- 0
- 0
-
-
- 14139
- 120
- 0
- 0
- 0
-
-
- 14140
- 150
- 0
- 0
- 0
-
-
- 14141
- 150
- 0
- 0
- 0
-
-
- 14142
- 30
- 0
- 0
- 0
-
-
- 14143
- 30
- 0
- 0
- 0
-
-
- 14144
- 60
- 0
- 0
- 0
-
-
- 14145
- 60
- 0
- 0
- 0
-
-
- 14146
- 90
- 0
- 0
- 0
-
-
- 14147
- 90
- 0
- 0
- 0
-
-
- 14148
- 120
- 0
- 0
- 0
-
-
- 14149
- 120
- 0
- 0
- 0
-
-
- 14150
- 150
- 0
- 0
- 0
-
-
- 14151
- 150
- 0
- 0
- 0
-
-
- 14152
- 30
- 0
- 0
- 0
-
-
- 14153
- 30
- 0
- 0
- 0
-
-
- 14154
- 60
- 0
- 0
- 0
-
-
- 14155
- 60
- 0
- 0
- 0
-
-
- 14156
- 90
- 0
- 0
- 0
-
-
- 14157
- 90
- 0
- 0
- 0
-
-
- 14158
- 120
- 0
- 0
- 0
-
-
- 14159
- 120
- 0
- 0
- 0
-
-
- 14160
- 150
- 0
- 0
- 0
-
-
- 14161
- 150
- 0
- 0
- 0
-
-
- 14162
- 30
- 0
- 0
- 0
-
-
- 14163
- 30
- 0
- 0
- 0
-
-
- 14164
- 60
- 0
- 0
- 0
-
-
- 14165
- 60
- 0
- 0
- 0
-
-
- 14166
- 90
- 0
- 0
- 0
-
-
- 14167
- 90
- 0
- 0
- 0
-
-
- 14168
- 120
- 0
- 0
- 0
-
-
- 14169
- 120
- 0
- 0
- 0
-
-
- 14170
- 150
- 0
- 0
- 0
-
-
- 14171
- 150
- 0
- 0
- 0
-
-
- 14172
- 30
- 0
- 0
- 0
-
-
- 14173
- 30
- 0
- 0
- 0
-
-
- 14174
- 60
- 0
- 0
- 0
-
-
- 14175
- 60
- 0
- 0
- 0
-
-
- 14176
- 90
- 0
- 0
- 0
-
-
- 14177
- 90
- 0
- 0
- 0
-
-
- 14178
- 120
- 0
- 0
- 0
-
-
- 14179
- 120
- 0
- 0
- 0
-
-
- 14180
- 150
- 0
- 0
- 0
-
-
- 14181
- 150
- 0
- 0
- 0
-
-
- 14182
- 15
- 0
- 0
- 0
-
-
- 14183
- 15
- 0
- 0
- 0
-
-
- 14184
- 30
- 0
- 0
- 0
-
-
- 14185
- 30
- 0
- 0
- 0
-
-
- 14186
- 45
- 0
- 0
- 0
-
-
- 14187
- 45
- 0
- 0
- 0
-
-
- 14188
- 60
- 0
- 0
- 0
-
-
- 14189
- 60
- 0
- 0
- 0
-
-
- 14190
- 75
- 0
- 0
- 0
-
-
- 14191
- 75
- 0
- 0
- 0
-
-
- 14192
- 30
- 0
- 0
- 0
-
-
- 14193
- 30
- 0
- 0
- 0
-
-
- 14194
- 60
- 0
- 0
- 0
-
-
- 14195
- 60
- 0
- 0
- 0
-
-
- 14196
- 90
- 0
- 0
- 0
-
-
- 14197
- 90
- 0
- 0
- 0
-
-
- 14198
- 120
- 0
- 0
- 0
-
-
- 14199
- 120
- 0
- 0
- 0
-
-
- 14200
- 150
- 0
- 0
- 0
-
-
- 14201
- 150
- 0
- 0
- 0
-
-
- 14202
- 2
- 0
- 0
- 0
-
-
- 14203
- 4
- 0
- 0
- 0
-
-
- 14204
- 6
- 0
- 0
- 0
-
-
- 14205
- 8
- 0
- 0
- 0
-
-
- 14206
- 10
- 0
- 0
- 0
-
-
- 14207
- 150
- 0
- 0
- 0
-
-
- 14208
- 150
- 0
- 0
- 0
-
-
- 14209
- 120
- 0
- 0
- 0
-
-
- 14210
- 120
- 0
- 0
- 0
-
-
- 14211
- 90
- 0
- 0
- 0
-
-
- 14212
- 90
- 0
- 0
- 0
-
-
- 14213
- 60
- 0
- 0
- 0
-
-
- 14214
- 60
- 0
- 0
- 0
-
-
- 14215
- 30
- 0
- 0
- 0
-
-
- 14216
- 30
- 0
- 0
- 0
-
-
- 14217
- 150
- 0
- 0
- 0
-
-
- 14218
- 150
- 0
- 0
- 0
-
-
- 14219
- 120
- 0
- 0
- 0
-
-
- 14220
- 120
- 0
- 0
- 0
-
-
- 14221
- 90
- 0
- 0
- 0
-
-
- 14222
- 90
- 0
- 0
- 0
-
-
- 14223
- 60
- 0
- 0
- 0
-
-
- 14224
- 60
- 0
- 0
- 0
-
-
- 14225
- 30
- 0
- 0
- 0
-
-
- 14226
- 30
- 0
- 0
- 0
-
-
- 14227
- 150
- 0
- 0
- 0
-
-
- 14228
- 150
- 0
- 0
- 0
-
-
- 14229
- 120
- 0
- 0
- 0
-
-
- 14230
- 120
- 0
- 0
- 0
-
-
- 14231
- 90
- 0
- 0
- 0
-
-
- 14232
- 90
- 0
- 0
- 0
-
-
- 14233
- 60
- 0
- 0
- 0
-
-
- 14234
- 60
- 0
- 0
- 0
-
-
- 14235
- 30
- 0
- 0
- 0
-
-
- 14236
- 30
- 0
- 0
- 0
-
-
- 14237
- 150
- 0
- 0
- 0
-
-
- 14238
- 150
- 0
- 0
- 0
-
-
- 14239
- 120
- 0
- 0
- 0
-
-
- 14240
- 120
- 0
- 0
- 0
-
-
- 14241
- 90
- 0
- 0
- 0
-
-
- 14242
- 90
- 0
- 0
- 0
-
-
- 14243
- 60
- 0
- 0
- 0
-
-
- 14244
- 60
- 0
- 0
- 0
-
-
- 14245
- 30
- 0
- 0
- 0
-
-
- 14246
- 30
- 0
- 0
- 0
-
-
- 14247
- 150
- 0
- 0
- 0
-
-
- 14248
- 150
- 0
- 0
- 0
-
-
- 14249
- 120
- 0
- 0
- 0
-
-
- 14250
- 120
- 0
- 0
- 0
-
-
- 14251
- 90
- 0
- 0
- 0
-
-
- 14252
- 90
- 0
- 0
- 0
-
-
- 14253
- 60
- 0
- 0
- 0
-
-
- 14254
- 60
- 0
- 0
- 0
-
-
- 14255
- 30
- 0
- 0
- 0
-
-
- 14256
- 30
- 0
- 0
- 0
-
-
- 14257
- 150
- 0
- 0
- 0
-
-
- 14258
- 150
- 0
- 0
- 0
-
-
- 14259
- 120
- 0
- 0
- 0
-
-
- 14260
- 120
- 0
- 0
- 0
-
-
- 14261
- 90
- 0
- 0
- 0
-
-
- 14262
- 90
- 0
- 0
- 0
-
-
- 14263
- 60
- 0
- 0
- 0
-
-
- 14264
- 60
- 0
- 0
- 0
-
-
- 14265
- 30
- 0
- 0
- 0
-
-
- 14266
- 30
- 0
- 0
- 0
-
-
- 14267
- 150
- 0
- 0
- 0
-
-
- 14268
- 150
- 0
- 0
- 0
-
-
- 14269
- 120
- 0
- 0
- 0
-
-
- 14270
- 120
- 0
- 0
- 0
-
-
- 14271
- 90
- 0
- 0
- 0
-
-
- 14272
- 90
- 0
- 0
- 0
-
-
- 14273
- 60
- 0
- 0
- 0
-
-
- 14274
- 60
- 0
- 0
- 0
-
-
- 14275
- 30
- 0
- 0
- 0
-
-
- 14276
- 30
- 0
- 0
- 0
-
-
- 14277
- 150
- 0
- 0
- 0
-
-
- 14278
- 150
- 0
- 0
- 0
-
-
- 14279
- 120
- 0
- 0
- 0
-
-
- 14280
- 120
- 0
- 0
- 0
-
-
- 14281
- 90
- 0
- 0
- 0
-
-
- 14282
- 90
- 0
- 0
- 0
-
-
- 14283
- 60
- 0
- 0
- 0
-
-
- 14284
- 60
- 0
- 0
- 0
-
-
- 14285
- 30
- 0
- 0
- 0
-
-
- 14286
- 30
- 0
- 0
- 0
-
-
- 14287
- 30
- 0
- 0
- 0
-
-
- 14288
- 30
- 0
- 0
- 0
-
-
- 14289
- 60
- 0
- 0
- 0
-
-
- 14290
- 60
- 0
- 0
- 0
-
-
- 14291
- 90
- 0
- 0
- 0
-
-
- 14292
- 90
- 0
- 0
- 0
-
-
- 14293
- 120
- 0
- 0
- 0
-
-
- 14294
- 120
- 0
- 0
- 0
-
-
- 14295
- 150
- 0
- 0
- 0
-
-
- 14296
- 150
- 0
- 0
- 0
-
-
- 14297
- 30
- 0
- 0
- 0
-
-
- 14298
- 30
- 0
- 0
- 0
-
-
- 14299
- 60
- 0
- 0
- 0
-
-
- 14300
- 60
- 0
- 0
- 0
-
-
- 14301
- 90
- 0
- 0
- 0
-
-
- 14302
- 90
- 0
- 0
- 0
-
-
- 14303
- 120
- 0
- 0
- 0
-
-
- 14304
- 120
- 0
- 0
- 0
-
-
- 14305
- 150
- 0
- 0
- 0
-
-
- 14306
- 150
- 0
- 0
- 0
-
-
- 14307
- 30
- 0
- 0
- 0
-
-
- 14308
- 30
- 0
- 0
- 0
-
-
- 14309
- 60
- 0
- 0
- 0
-
-
- 14310
- 60
- 0
- 0
- 0
-
-
- 14311
- 90
- 0
- 0
- 0
-
-
- 14312
- 90
- 0
- 0
- 0
-
-
- 14313
- 120
- 0
- 0
- 0
-
-
- 14314
- 120
- 0
- 0
- 0
-
-
- 14315
- 150
- 0
- 0
- 0
-
-
- 14316
- 150
- 0
- 0
- 0
-
-
- 14317
- 30
- 0
- 0
- 0
-
-
- 14318
- 30
- 0
- 0
- 0
-
-
- 14319
- 60
- 0
- 0
- 0
-
-
- 14320
- 60
- 0
- 0
- 0
-
-
- 14321
- 90
- 0
- 0
- 0
-
-
- 14322
- 90
- 0
- 0
- 0
-
-
- 14323
- 120
- 0
- 0
- 0
-
-
- 14324
- 120
- 0
- 0
- 0
-
-
- 14325
- 150
- 0
- 0
- 0
-
-
- 14326
- 150
- 0
- 0
- 0
-
-
- 14327
- 30
- 0
- 0
- 0
-
-
- 14328
- 30
- 0
- 0
- 0
-
-
- 14329
- 60
- 0
- 0
- 0
-
-
- 14330
- 60
- 0
- 0
- 0
-
-
- 14331
- 90
- 0
- 0
- 0
-
-
- 14332
- 90
- 0
- 0
- 0
-
-
- 14333
- 120
- 0
- 0
- 0
-
-
- 14334
- 120
- 0
- 0
- 0
-
-
- 14335
- 150
- 0
- 0
- 0
-
-
- 14336
- 150
- 0
- 0
- 0
-
-
- 14337
- 30
- 0
- 0
- 0
-
-
- 14338
- 30
- 0
- 0
- 0
-
-
- 14339
- 60
- 0
- 0
- 0
-
-
- 14340
- 60
- 0
- 0
- 0
-
-
- 14341
- 90
- 0
- 0
- 0
-
-
- 14342
- 90
- 0
- 0
- 0
-
-
- 14343
- 120
- 0
- 0
- 0
-
-
- 14344
- 120
- 0
- 0
- 0
-
-
- 14345
- 150
- 0
- 0
- 0
-
-
- 14346
- 150
- 0
- 0
- 0
-
-
- 14347
- 30
- 0
- 0
- 0
-
-
- 14348
- 30
- 0
- 0
- 0
-
-
- 14349
- 60
- 0
- 0
- 0
-
-
- 14350
- 60
- 0
- 0
- 0
-
-
- 14351
- 90
- 0
- 0
- 0
-
-
- 14352
- 90
- 0
- 0
- 0
-
-
- 14353
- 120
- 0
- 0
- 0
-
-
- 14354
- 120
- 0
- 0
- 0
-
-
- 14355
- 150
- 0
- 0
- 0
-
-
- 14356
- 150
- 0
- 0
- 0
-
-
- 14357
- 30
- 0
- 0
- 0
-
-
- 14358
- 30
- 0
- 0
- 0
-
-
- 14359
- 60
- 0
- 0
- 0
-
-
- 14360
- 60
- 0
- 0
- 0
-
-
- 14361
- 90
- 0
- 0
- 0
-
-
- 14362
- 90
- 0
- 0
- 0
-
-
- 14363
- 120
- 0
- 0
- 0
-
-
- 14364
- 120
- 0
- 0
- 0
-
-
- 14365
- 150
- 0
- 0
- 0
-
-
- 14366
- 150
- 0
- 0
- 0
-
-
- 14367
- 30
- 0
- 0
- 0
-
-
- 14368
- 30
- 0
- 0
- 0
-
-
- 14369
- 60
- 0
- 0
- 0
-
-
- 14370
- 60
- 0
- 0
- 0
-
-
- 14371
- 90
- 0
- 0
- 0
-
-
- 14372
- 90
- 0
- 0
- 0
-
-
- 14373
- 120
- 0
- 0
- 0
-
-
- 14374
- 120
- 0
- 0
- 0
-
-
- 14375
- 150
- 0
- 0
- 0
-
-
- 14376
- 150
- 0
- 0
- 0
-
-
- 14377
- 30
- 0
- 0
- 0
-
-
- 14378
- 30
- 0
- 0
- 0
-
-
- 14379
- 60
- 0
- 0
- 0
-
-
- 14380
- 60
- 0
- 0
- 0
-
-
- 14381
- 90
- 0
- 0
- 0
-
-
- 14382
- 90
- 0
- 0
- 0
-
-
- 14383
- 120
- 0
- 0
- 0
-
-
- 14384
- 120
- 0
- 0
- 0
-
-
- 14385
- 150
- 0
- 0
- 0
-
-
- 14386
- 150
- 0
- 0
- 0
-
-
- 14387
- 1
- 0
- 0
- 0
-
-
- 14389
- 1
- 0
- 0
- 0
-
-
- 14391
- 30
- 0
- 0
- 0
-
-
- 14392
- 30
- 0
- 0
- 0
-
-
- 14393
- 60
- 0
- 0
- 0
-
-
- 14394
- 60
- 0
- 0
- 0
-
-
- 14395
- 90
- 0
- 0
- 0
-
-
- 14396
- 90
- 0
- 0
- 0
-
-
- 14397
- 120
- 0
- 0
- 0
-
-
- 14398
- 120
- 0
- 0
- 0
-
-
- 14399
- 150
- 0
- 0
- 0
-
-
- 14400
- 150
- 0
- 0
- 0
-
-
- 14401
- 30
- 0
- 0
- 0
-
-
- 14402
- 30
- 0
- 0
- 0
-
-
- 14403
- 60
- 0
- 0
- 0
-
-
- 14404
- 60
- 0
- 0
- 0
-
-
- 14405
- 90
- 0
- 0
- 0
-
-
- 14406
- 90
- 0
- 0
- 0
-
-
- 14407
- 120
- 0
- 0
- 0
-
-
- 14408
- 120
- 0
- 0
- 0
-
-
- 14409
- 150
- 0
- 0
- 0
-
-
- 14410
- 150
- 0
- 0
- 0
-
-
- 14411
- 30
- 0
- 0
- 0
-
-
- 14412
- 30
- 0
- 0
- 0
-
-
- 14413
- 60
- 0
- 0
- 0
-
-
- 14414
- 60
- 0
- 0
- 0
-
-
- 14415
- 90
- 0
- 0
- 0
-
-
- 14416
- 90
- 0
- 0
- 0
-
-
- 14417
- 120
- 0
- 0
- 0
-
-
- 14418
- 120
- 0
- 0
- 0
-
-
- 14419
- 150
- 0
- 0
- 0
-
-
- 14420
- 150
- 0
- 0
- 0
-
-
- 14421
- 30
- 0
- 0
- 0
-
-
- 14422
- 30
- 0
- 0
- 0
-
-
- 14423
- 30
- 0
- 0
- 0
-
-
- 14424
- 60
- 0
- 0
- 0
-
-
- 14425
- 60
- 0
- 0
- 0
-
-
- 14426
- 90
- 0
- 0
- 0
-
-
- 14427
- 90
- 0
- 0
- 0
-
-
- 14428
- 120
- 0
- 0
- 0
-
-
- 14429
- 120
- 0
- 0
- 0
-
-
- 14430
- 150
- 0
- 0
- 0
-
-
- 14431
- 150
- 0
- 0
- 0
-
-
- 14432
- 1
- 0
- 0
- 0
-
-
- 14433
- 1
- 0
- 0
- 0
-
-
- 14434
- 1
- 0
- 0
- 0
-
-
- 14435
- 1
- 0
- 0
- 0
-
-
- 14436
- 1
- 0
- 0
- 0
-
-
- 14437
- 1
- 0
- 0
- 0
-
-
- 14438
- 1
- 0
- 0
- 0
-
-
- 14439
- 1
- 0
- 0
- 0
-
-
- 14440
- 1
- 0
- 0
- 0
-
-
- 14441
- 1
- 0
- 0
- 0
-
-
- 14442
- 1
- 0
- 0
- 0
-
-
- 14443
- 1
- 0
- 0
- 0
-
-
- 14444
- 1
- 0
- 0
- 0
-
-
- 14445
- 1
- 0
- 0
- 0
-
-
- 14446
- 1
- 0
- 0
- 0
-
-
- 14447
- 1
- 0
- 0
- 0
-
-
- 14448
- 1
- 0
- 0
- 0
-
-
- 14449
- 1
- 0
- 0
- 0
-
-
- 14450
- 1
- 0
- 0
- 0
-
-
- 14451
- 1
- 0
- 0
- 0
-
-
- 14452
- 1
- 0
- 0
- 0
-
-
- 14453
- 1
- 0
- 0
- 0
-
-
- 14454
- 1
- 0
- 0
- 0
-
-
- 14455
- 1
- 0
- 0
- 0
-
-
- 14456
- 1
- 0
- 0
- 0
-
-
- 14457
- 1
- 0
- 0
- 0
-
-
- 14458
- 5
- 0
- 0
- 0
-
-
- 14459
- 1
- 0
- 0
- 0
-
-
- 14460
- 10
- 0
- 0
- 0
-
-
- 14461
- 1
- 0
- 0
- 0
-
-
- 14462
- 1
- 0
- 0
- 0
-
-
- 14463
- 1
- 0
- 0
- 0
-
-
- 14464
- 1
- 0
- 0
- 0
-
-
- 14465
- 1
- 0
- 0
- 0
-
-
- 14466
- 1
- 0
- 0
- 0
-
-
- 14467
- 1
- 0
- 0
- 0
-
-
- 14468
- 1
- 0
- 0
- 0
-
-
- 14469
- 1
- 0
- 0
- 0
-
-
- 14470
- 1
- 0
- 0
- 0
-
-
- 14471
- 1
- 0
- 0
- 0
-
-
- 14472
- 30000
- 0
- 0
- 0
-
-
- 14473
- 30000
- 0
- 0
- 0
-
-
- 14474
- 30000
- 0
- 0
- 0
-
-
- 14475
- 30000
- 0
- 0
- 0
-
-
- 14476
- 30000
- 0
- 0
- 0
-
-
- 14477
- 30000
- 0
- 0
- 0
-
-
- 14478
- 1
- 0
- 0
- 0
-
-
- 14479
- 1760000
- 0
- 0
- 0
-
-
- 14480
- 1760000
- 0
- 0
- 0
-
-
- 14481
- 1
- 0
- 0
- 0
-
-
- 14484
- 135000
- 0
- 0
- 0
-
-
- 14485
- 135000
- 0
- 0
- 0
-
-
- 14486
- 1
- 0
- 0
- 0
-
-
- 14487
- 1
- 0
- 0
- 0
-
-
- 14488
- 1
- 0
- 0
- 0
-
-
- 14489
- 1
- 0
- 0
- 0
-
-
- 14490
- 65000
- 0
- 0
- 0
-
-
- 14491
- 65000
- 0
- 0
- 0
-
-
- 14492
- 64000
- 0
- 0
- 0
-
-
- 14493
- 64000
- 0
- 0
- 0
-
-
- 14494
- 35200
- 0
- 0
- 0
-
-
- 14495
- 35200
- 0
- 0
- 0
-
-
- 14496
- 1
- 0
- 0
- 0
-
-
- 14497
- 120000
- 0
- 0
- 0
-
-
- 14498
- 120000
- 0
- 0
- 0
-
-
- 14499
- 15000
- 0
- 0
- 0
-
-
- 14500
- 15000
- 0
- 0
- 0
-
-
- 14501
- 80000
- 0
- 0
- 0
-
-
- 14502
- 80000
- 0
- 0
- 0
-
-
- 14503
- 1
- 0
- 0
- 0
-
-
- 14504
- 1
- 0
- 0
- 0
-
-
- 14505
- 1
- 0
- 0
- 0
-
-
- 14506
- 1
- 0
- 0
- 0
-
-
- 14507
- 1
- 0
- 0
- 0
-
-
- 14508
- 1
- 0
- 0
- 0
-
-
- 14509
- 1
- 0
- 0
- 0
-
-
- 14510
- 1
- 0
- 0
- 0
-
-
- 14511
- 1
- 0
- 0
- 0
-
-
- 14512
- 1
- 0
- 0
- 0
-
-
- 14513
- 1
- 0
- 0
- 0
-
-
- 14514
- 1
- 0
- 0
- 0
-
-
- 14515
- 1
- 0
- 0
- 0
-
-
- 14516
- 1
- 0
- 0
- 0
-
-
- 14517
- 1
- 0
- 0
- 0
-
-
- 14518
- 1
- 0
- 0
- 0
-
-
- 14519
- 1
- 0
- 0
- 0
-
-
- 14520
- 1
- 0
- 0
- 0
-
-
- 14521
- 1
- 0
- 0
- 0
-
-
- 14522
- 1
- 0
- 0
- 0
-
-
- 14523
- 1
- 0
- 0
- 0
-
-
- 14524
- 1
- 0
- 0
- 0
-
-
- 14525
- 20
- 0
- 0
- 0
-
-
- 14526
- 20
- 0
- 0
- 0
-
-
- 14527
- 20
- 0
- 0
- 0
-
-
- 14528
- 20
- 0
- 0
- 0
-
-
- 14529
- 20
- 0
- 0
- 0
-
-
- 14530
- 20
- 0
- 0
- 0
-
-
- 14531
- 20
- 0
- 0
- 0
-
-
- 14532
- 20
- 0
- 0
- 0
-
-
- 14533
- 1
- 0
- 0
- 0
-
-
- 14534
- 1
- 0
- 0
- 0
-
-
- 14535
- 1
- 0
- 0
- 0
-
-
- 14536
- 1
- 0
- 0
- 0
-
-
- 14537
- 1
- 0
- 0
- 0
-
-
- 14538
- 1
- 0
- 0
- 0
-
-
- 14539
- 9
- 0
- 0
- 0
-
-
- 14540
- 4
- 0
- 0
- 0
-
-
- 14541
- 1
- 0
- 0
- 0
-
-
- 14542
- 9
- 0
- 0
- 0
-
-
- 14543
- 4
- 0
- 0
- 0
-
-
- 14544
- 1
- 0
- 0
- 0
-
-
- 14545
- 1
- 0
- 0
- 0
-
-
- 14546
- 1
- 0
- 0
- 0
-
-
- 14547
- 1
- 0
- 0
- 0
-
-
- 14548
- 1
- 0
- 0
- 0
-
-
- 14549
- 1
- 0
- 0
- 0
-
-
- 14550
- 1
- 0
- 0
- 0
-
-
- 14551
- 1
- 0
- 0
- 0
-
-
- 14552
- 1
- 0
- 0
- 0
-
-
- 14553
- 1
- 0
- 0
- 0
-
-
- 14554
- 1
- 0
- 0
- 0
-
-
- 14555
- 1
- 0
- 0
- 0
-
-
- 14556
- 1
- 0
- 0
- 0
-
-
- 14557
- 1
- 0
- 0
- 0
-
-
- 14558
- 1
- 0
- 0
- 0
-
-
- 14559
- 1
- 0
- 0
- 0
-
-
- 14560
- 1
- 0
- 0
- 0
-
-
- 14561
- 1
- 0
- 0
- 0
-
-
- 14562
- 1
- 0
- 0
- 0
-
-
- 14563
- 1
- 0
- 0
- 0
-
-
- 14564
- 1
- 0
- 0
- 0
-
-
- 14565
- 1
- 0
- 0
- 0
-
-
- 14566
- 1
- 0
- 0
- 0
-
-
- 14567
- 1
- 0
- 0
- 0
-
-
- 14568
- 1
- 0
- 0
- 0
-
-
- 14569
- 1
- 0
- 0
- 0
-
-
- 14570
- 1
- 0
- 0
- 0
-
-
- 14571
- 1
- 0
- 0
- 0
-
-
- 14572
- 1
- 0
- 0
- 0
-
-
- 14573
- 1
- 0
- 0
- 0
-
-
- 14574
- 1
- 0
- 0
- 0
-
-
- 14575
- 1
- 0
- 0
- 0
-
-
- 14576
- 1
- 0
- 0
- 0
-
-
- 14577
- 100
- 0
- 0
- 0
-
-
- 14578
- 200
- 0
- 0
- 0
-
-
- 14579
- 300
- 0
- 0
- 0
-
-
- 14580
- 1000
- 0
- 0
- 0
-
-
- 14581
- 5000
- 0
- 0
- 0
-
-
- 14582
- 10000
- 0
- 0
- 0
-
-
- 14583
- 1
- 0
- 0
- 0
-
-
- 14584
- 500000
- 0
- 0
- 0
-
-
- 14585
- 1
- 0
- 0
- 0
-
-
- 14586
- 1
- 0
- 0
- 0
-
-
- 14587
- 1
- 0
- 0
- 0
-
-
- 14588
- 1
- 0
- 0
- 0
-
-
- 14589
- 1250
- 0
- 0
- 0
-
-
- 14590
- 1000
- 0
- 0
- 0
-
-
- 14591
- 1000
- 0
- 0
- 0
-
-
- 14592
- 1
- 0
- 0
- 0
-
-
- 14593
- 1
- 0
- 0
- 0
-
-
- 14594
- 1
- 0
- 0
- 0
-
-
- 14595
- 1
- 0
- 0
- 0
-
-
- 14596
- 1
- 0
- 0
- 0
-
-
- 14597
- 1
- 0
- 0
- 0
-
-
- 14598
- 1
- 0
- 0
- 0
-
-
- 14599
- 1
- 0
- 0
- 0
-
-
- 14600
- 1
- 0
- 0
- 0
-
-
- 14601
- 1
- 0
- 0
- 0
-
-
- 14602
- 1
- 0
- 0
- 0
-
-
- 14603
- 1
- 0
- 0
- 0
-
-
- 14604
- 1
- 0
- 0
- 0
-
-
- 14605
- 1
- 0
- 0
- 0
-
-
- 14606
- 1
- 0
- 0
- 0
-
-
- 14607
- 1
- 0
- 0
- 0
-
-
- 14608
- 1
- 0
- 0
- 0
-
-
- 14609
- 1
- 0
- 0
- 0
-
-
- 14610
- 1
- 0
- 0
- 0
-
-
- 14611
- 1
- 0
- 0
- 0
-
-
- 14612
- 1
- 0
- 0
- 0
-
-
- 14613
- 1
- 0
- 0
- 0
-
-
- 14614
- 1
- 0
- 0
- 0
-
-
- 14615
- 1
- 0
- 0
- 0
-
-
- 14616
- 100
- 0
- 0
- 0
-
-
- 14617
- 100
- 0
- 0
- 0
-
-
- 14618
- 1
- 0
- 0
- 0
-
-
- 14619
- 1
- 0
- 0
- 0
-
-
- 14620
- 1
- 0
- 0
- 0
-
-
- 14621
- 1
- 0
- 0
- 0
-
-
- 14622
- 498
- 0
- 0
- 0
-
-
- 14623
- 4986
- 0
- 0
- 0
-
-
- 14624
- 4986
- 0
- 0
- 0
-
-
- 14625
- 1
- 0
- 0
- 0
-
-
- 14626
- 1
- 0
- 0
- 0
-
-
- 14627
- 1
- 0
- 0
- 0
-
-
- 14628
- 1
- 0
- 0
- 0
-
-
- 14629
- 1
- 0
- 0
- 0
-
-
- 14630
- 1
- 0
- 0
- 0
-
-
- 14631
- 1
- 0
- 0
- 0
-
-
- 14632
- 200
- 0
- 0
- 0
-
-
- 14633
- 1
- 0
- 0
- 0
-
-
- 14634
- 1
- 0
- 0
- 0
-
-
- 14635
- 1
- 0
- 0
- 0
-
-
- 14636
- 650
- 0
- 0
- 0
-
-
- 14637
- 650
- 0
- 0
- 0
-
-
- 14638
- 17625
- 0
- 0
- 0
-
-
- 14639
- 17625
- 0
- 0
- 0
-
-
- 14640
- 17625
- 0
- 0
- 0
-
-
- 14641
- 17625
- 0
- 0
- 0
-
-
- 14642
- 17625
- 0
- 0
- 0
-
-
- 14643
- 17625
- 0
- 0
- 0
-
-
- 14644
- 17625
- 0
- 0
- 0
-
-
- 14645
- 17625
- 0
- 0
- 0
-
-
- 14646
- 17625
- 0
- 0
- 0
-
-
- 14647
- 17625
- 0
- 0
- 0
-
-
diff --git a/Server/db_exports/global.sql b/Server/db_exports/global.sql
index 3a706c489..255acee9d 100644
--- a/Server/db_exports/global.sql
+++ b/Server/db_exports/global.sql
@@ -1,3 +1,7 @@
+CREATE DATABASE global;
+
+USE global;
+
-- phpMyAdmin SQL Dump
-- version 5.0.2
-- https://www.phpmyadmin.net/
@@ -17,70 +21,6 @@ SET time_zone = "+00:00";
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
---
--- Database: `global`
---
-
--- --------------------------------------------------------
-
---
--- Table structure for table `dev_log`
---
-
-CREATE TABLE `dev_log` (
- `id` int(11) UNSIGNED NOT NULL,
- `username` varchar(15) DEFAULT NULL,
- `content` longtext NOT NULL,
- `date` timestamp NULL DEFAULT '0000-00-00 00:00:00'
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `highscores`
---
-
-CREATE TABLE `highscores` (
- `id` int(11) UNSIGNED NOT NULL,
- `username` varchar(20) DEFAULT NULL,
- `overall_xp` int(11) NOT NULL DEFAULT 0,
- `total_level` int(11) NOT NULL DEFAULT 0,
- `ironManMode` varchar(15) NOT NULL DEFAULT 'NONE',
- `xp_0` int(11) NOT NULL DEFAULT 0,
- `xp_1` int(11) NOT NULL DEFAULT 0,
- `xp_2` int(11) NOT NULL DEFAULT 0,
- `xp_3` int(11) NOT NULL DEFAULT 0,
- `xp_4` int(11) NOT NULL DEFAULT 0,
- `xp_5` int(11) NOT NULL DEFAULT 0,
- `xp_6` int(11) NOT NULL DEFAULT 0,
- `xp_7` int(11) NOT NULL DEFAULT 0,
- `xp_8` int(11) NOT NULL DEFAULT 0,
- `xp_9` int(11) NOT NULL DEFAULT 0,
- `xp_10` int(11) NOT NULL DEFAULT 0,
- `xp_11` int(11) NOT NULL DEFAULT 0,
- `xp_12` int(11) NOT NULL DEFAULT 0,
- `xp_13` int(11) NOT NULL DEFAULT 0,
- `xp_14` int(11) NOT NULL DEFAULT 0,
- `xp_15` int(11) NOT NULL DEFAULT 0,
- `xp_16` int(11) NOT NULL DEFAULT 0,
- `xp_17` int(11) NOT NULL DEFAULT 0,
- `xp_18` int(11) NOT NULL DEFAULT 0,
- `xp_19` int(11) NOT NULL DEFAULT 0,
- `xp_20` int(11) NOT NULL DEFAULT 0,
- `xp_21` int(11) NOT NULL DEFAULT 0,
- `xp_22` int(11) NOT NULL DEFAULT 0,
- `xp_23` int(11) NOT NULL DEFAULT 0
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---
--- Dumping data for table `highscores`
---
-
-INSERT INTO `highscores` (`id`, `username`, `overall_xp`, `total_level`, `ironManMode`, `xp_0`, `xp_1`, `xp_2`, `xp_3`, `xp_4`, `xp_5`, `xp_6`, `xp_7`, `xp_8`, `xp_9`, `xp_10`, `xp_11`, `xp_12`, `xp_13`, `xp_14`, `xp_15`, `xp_16`, `xp_17`, `xp_18`, `xp_19`, `xp_20`, `xp_21`, `xp_22`, `xp_23`) VALUES
-(9, 'woah', 1154, 33, 'NONE', 0, 0, 0, 1154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
-(10, 'test', 1154, 33, 'NONE', 0, 0, 0, 1154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
-(11, 'woahscam', 1154, 33, 'NONE', 0, 0, 0, 1154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
-
-- --------------------------------------------------------
--
@@ -135,194 +75,6 @@ CREATE TABLE `members` (
`posts` int(11) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
---
--- Dumping data for table `members`
---
-
-INSERT INTO `members` (`UID`, `email`, `username`, `password`, `salt`, `rights`, `email_activated`, `lastActive`, `donatorType`, `donationTotal`, `credits`, `icon`, `perks`, `ip`, `mac`, `serial`, `computerName`, `monthlyVotes`, `netWorth`, `forumUID`, `ironManMode`, `bank`, `inventory`, `equipment`, `ge`, `muteTime`, `banTime`, `profileImage`, `contacts`, `blocked`, `clanName`, `currentClan`, `clanReqs`, `disconnectTime`, `lastWorld`, `chatSettings`, `timePlayed`, `lastLogin`, `lastGameIp`, `countryCode`, `birthday`, `online`, `signature`, `joined_date`, `posts`) VALUES
-(0, '', '2009Scape', '$2a$12$P0OU2A5S.lEYdkTq5kq3/u1UlfVkMYIS7WWbxsjjeyfxqTDbygpEe', '$2a$12$P0OU2A5S.lEYdkTq5kq3/u', 2, 0, '2019-11-06 00:29:03', 0, 0.00, 0, 0, '', '127.0.0.1', NULL, NULL, 'SERVER', 0, 0, -1, 'STANDARD', NULL, NULL, NULL, NULL, -1, -1, '', '', '', '2009Scape', '2009Scape', '0,0,8,9', 1572999889084, 1, '0,0,0', NULL, 1572999890885, '127.0.0.1', 0, NULL, 0, NULL, NULL, 0);
-
--- --------------------------------------------------------
-
---
--- Table structure for table `messages`
---
-
-CREATE TABLE `messages` (
- `id` int(11) UNSIGNED NOT NULL,
- `sender` varchar(15) NOT NULL DEFAULT '',
- `recipient` varchar(15) NOT NULL DEFAULT '',
- `subject` varchar(40) NOT NULL DEFAULT '',
- `content` longtext NOT NULL,
- `date` timestamp NOT NULL DEFAULT current_timestamp(),
- `is_read` tinyint(1) NOT NULL,
- `s_delete` tinyint(11) NOT NULL,
- `r_delete` tinyint(1) NOT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `perks`
---
-
-CREATE TABLE `perks` (
- `product_id` int(10) UNSIGNED NOT NULL,
- `name` varchar(100) NOT NULL DEFAULT 'No Name',
- `description` varchar(500) DEFAULT NULL,
- `price` int(10) NOT NULL DEFAULT 0
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---
--- Dumping data for table `perks`
---
-
-INSERT INTO `perks` (`product_id`, `name`, `description`, `price`) VALUES
-(2, 'Stamina Boost', 'Increase your stamina and run regeneration by a total of 40%.', 60),
-(4, 'Green Thumb', 'With a 35% lifetime increase in your crops growing up healthy, they will be saved and you will also receive a better crop yield!', 100),
-(5, 'Bird Man', 'Increase your rate of receiving a bird nest drop by 35%!', 50),
-(6, 'Stoner', 'Increase your rate of receiving a gem stone drop by 35%!', 50),
-(11, 'Unbreakable Forge', 'Ring of forging never breaks.', 30),
-(12, 'Out of Grave Danger', 'Your gravestone will last up to twice as long with this perk.', 50),
-(13, 'Sleight of Hand', 'With sleight of hand you will increase your success rates in all aspects of thieving. This includes pickpocketing and cracking wall safes for gems.', 50),
-(14, 'Master Chef', 'As a soon to be Master Chef, you will receive a 20% increase in successfully cooking your food!', 50),
-(16, 'Divine Intervention', 'The gods above intervene with your burying of bones. You have a 10% chance while burying a bone to keep it instead.', 70),
-(17, 'Familiar Whisperer', 'Get to know your familiar better by increasing their lifespan by 50%.', 70),
-(18, 'Barrows Befriender', 'Befriend the barrows brothers & never experience the wretched degrading of their armour again', 300),
-(19, 'Abyss Befriender', 'Use the power of the abyss to make your Runecrafting pouches undegradable.', 150),
-(21, 'Charge Befriender', 'The God\'s of the Hero\'s guild have blessed you with the power to use your jewerly free of charge.', 250),
-(22, 'Golden Needle', 'Gain an extra 10% experience whilst spinning something on a spinning wheel, including flax. Creating an item made out of dragonhide rewards an extra 5% experience. Your crafting needle also never breaks and thread is consumed less often.\n', 50),
-(24, 'Slayer Betrayer', 'Obtain the ability through the Slayer Masters to change your slayer task at will. Type ::cleartask to use.', 100),
-(26, 'Thirst Quencher', 'The gods have blessed you with the knowledge of the deserts to gain the skills required to tap into an unlimited water supply.', 30),
-(27, 'Double Trouble', 'Experience a chance of receiving double the resources through skills such as, mining, woodcutting, fishing, and many more.', 250),
-(29, 'Godwars Befriender', 'Now blessed by the gods you have the ability to enter the chambers with a killcount of 30. You will also be granted half the time it takes to recharge at an altar.', 100),
-(30, 'Prayer Betrayer', 'Experience half the prayer drain rate when this perk is enabled.', 150),
-(31, 'Spell Swap', 'The ability to swap spell books without any charge of runes. Cannot be used in combat or in the wilderness.', 80),
-(32, 'Dwarf Befriender', 'Befriended by the dwarfs you now have the ability to use double the cannon balls and experience no decay on your cannon.', 150),
-(33, 'Powerpoint', 'This perk grants you double the points in all minigames.', 300),
-(35, 'Charm Collector', 'Through the power of summoning you will automatically pick up any charms dropped in battle.', 100),
-(36, 'Detective', 'You now have a solid 10% chance of a clue scroll drop from any monster that drops clues as well as a 50% better chance of super rare rewards such as 3rd age. You\'ll also experience a 50% increased chance to obtain more loot.', 250),
-(40, 'Overcharge', 'The power from the overcharge lords is given to you. Your Dragonfire Shield will recharge fully every 10 minutes. The time between casts is also reduced by 50%.', 170),
-(41, 'Unbreakable Crystal', 'This perk allows for your crystal bow to never degrade.', 350),
-(42, 'Crusader', 'With this perk you will have a 25% chance to double loot the barrows chest.', 100),
-(43, 'Pet Befriender', 'This perk gives you the ability to double your chances on getting boss/skilling pets!', 100),
-(60, 'Bone Crusher', 'Automatically crushes your bones as they\'re dropped for prayer experience. Toggle this perk using ::bonecrusher', 100),
-(70, 'Runestone Knowledge', 'You are given extended knowledge of the runecrafting skill and can now craft double death, law, cosmic, blood and nature runes.', 200),
-(71, 'Coin machine', 'Automatically bank all coins dropped from NPC\'s and gives you 25% extra gold. Toggle this perk using ::coinmachine', 150),
-(72, 'Fight Cave Fanatic', 'Eliminates the first 25 waves from the tzhaar fight caves.', 50),
-(73, 'Decanter', 'Zahur will decant your noted potions if you have this perk.', 50);
-
--- --------------------------------------------------------
-
---
--- Table structure for table `player_logs`
---
-
-CREATE TABLE `player_logs` (
- `username` varchar(22) NOT NULL DEFAULT '',
- `public_chat` longtext DEFAULT NULL,
- `private_chat` longtext DEFAULT NULL,
- `clan_chat` longtext DEFAULT NULL,
- `address_log` longtext DEFAULT NULL,
- `command_log` longtext DEFAULT NULL,
- `trade_log` longtext DEFAULT NULL,
- `ge_log` longtext DEFAULT NULL,
- `duplication_log` longtext DEFAULT NULL,
- `duel_log` longtext DEFAULT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
---
--- Dumping data for table `player_logs`
---
-
-INSERT INTO `player_logs` (`username`, `public_chat`, `private_chat`, `clan_chat`, `address_log`, `command_log`, `trade_log`, `ge_log`, `duplication_log`, `duel_log`) VALUES
-('test', '', '', '', '10/09/2020 14:44:20: 127.0.0.1\n10/09/2020 14:44:20: I116264190\n10/09/2020 14:44:20: 30-9C-23-87-89-8E\n10/09/2020 14:47:49: 127.0.0.1\n10/09/2020 14:47:49: I116264190\n10/09/2020 14:47:49: 30-9C-23-87-89-8E\n10/09/2020 16:26:44: 127.0.0.1\n10/09/2020 16:26:44: I116264190\n10/09/2020 16:26:44: 30-9C-23-87-89-8E\n', '', '', '', '', ''),
-('woah', '10/09/2020 14:35:41: a\\\n10/09/2020 14:47:59: a\n10/09/2020 16:26:56: ok\n', '', '', '10/09/2020 14:34:50: 127.0.0.1\n10/09/2020 14:34:50: I116264190\n10/09/2020 14:34:50: 30-9C-23-87-89-8E\n10/09/2020 14:37:33: 127.0.0.1\n10/09/2020 14:37:33: I116264190\n10/09/2020 14:37:33: 30-9C-23-87-89-8E\n10/09/2020 14:39:09: 127.0.0.1\n10/09/2020 14:39:09: I116264190\n10/09/2020 14:39:09: 30-9C-23-87-89-8E\n10/09/2020 14:41:11: 127.0.0.1\n10/09/2020 14:41:11: I116264190\n10/09/2020 14:41:11: 30-9C-23-87-89-8E\n10/09/2020 14:47:23: 127.0.0.1\n10/09/2020 14:47:23: I116264190\n10/09/2020 14:47:23: 30-9C-23-87-89-8E\n10/09/2020 16:26:23: 127.0.0.1\n10/09/2020 16:26:23: I116264190\n10/09/2020 16:26:23: 30-9C-23-87-89-8E\n10/09/2020 16:35:53: 127.0.0.1\n10/09/2020 16:35:53: I116264190\n10/09/2020 16:35:53: 30-9C-23-87-89-8E\n10/09/2020 17:43:03: 127.0.0.1\n10/09/2020 17:43:03: I116264190\n10/09/2020 17:43:03: 30-9C-23-87-89-8E\n10/09/2020 18:16:22: 127.0.0.1\n10/09/2020 18:16:22: I116264190\n10/09/2020 18:16:22: 30-9C-23-87-89-8E\n10/09/2020 18:24:25: 127.0.0.1\n10/09/2020 18:24:25: I116264190\n10/09/2020 18:24:25: 30-9C-23-87-89-8E\n10/09/2020 18:25:02: 127.0.0.1\n10/09/2020 18:25:02: I116264190\n10/09/2020 18:25:02: 30-9C-23-87-89-8E\n10/09/2020 18:27:39: 127.0.0.1\n10/09/2020 18:27:39: I116264190\n10/09/2020 18:27:39: 30-9C-23-87-89-8E\n10/09/2020 18:28:28: 127.0.0.1\n10/09/2020 18:28:28: I116264190\n10/09/2020 18:28:28: 30-9C-23-87-89-8E\n10/09/2020 18:31:56: 127.0.0.1\n10/09/2020 18:31:56: I116264190\n10/09/2020 18:31:56: 30-9C-23-87-89-8E\n10/09/2020 18:34:27: 127.0.0.1\n10/09/2020 18:34:27: I116264190\n10/09/2020 18:34:27: 30-9C-23-87-89-8E\n10/09/2020 18:36:06: 127.0.0.1\n10/09/2020 18:36:06: I116264190\n10/09/2020 18:36:06: 30-9C-23-87-89-8E\n10/09/2020 18:37:02: 127.0.0.1\n10/09/2020 18:37:02: I116264190\n10/09/2020 18:37:02: 30-9C-23-87-89-8E\n10/09/2020 18:40:32: 127.0.0.1\n10/09/2020 18:40:32: I116264190\n10/09/2020 18:40:32: 30-9C-23-87-89-8E\n10/09/2020 18:41:16: 127.0.0.1\n10/09/2020 18:41:16: I116264190\n10/09/2020 18:41:16: 30-9C-23-87-89-8E\n10/09/2020 18:43:15: 127.0.0.1\n10/09/2020 18:43:15: I116264190\n10/09/2020 18:43:15: 30-9C-23-87-89-8E\n10/09/2020 18:43:58: 127.0.0.1\n10/09/2020 18:43:58: I116264190\n10/09/2020 18:43:58: 30-9C-23-87-89-8E\n10/09/2020 18:47:42: 127.0.0.1\n10/09/2020 18:47:42: I116264190\n10/09/2020 18:47:42: 30-9C-23-87-89-8E\n10/09/2020 18:49:57: 127.0.0.1\n10/09/2020 18:49:57: I116264190\n10/09/2020 18:49:57: 30-9C-23-87-89-8E\n10/09/2020 18:52:37: 127.0.0.1\n10/09/2020 18:52:37: I116264190\n10/09/2020 18:52:37: 30-9C-23-87-89-8E\n10/09/2020 23:12:58: 127.0.0.1\n10/09/2020 23:12:58: I116264190\n10/09/2020 23:12:58: 30-9C-23-87-89-8E\n10/09/2020 23:34:19: 127.0.0.1\n10/09/2020 23:34:19: I116264190\n10/09/2020 23:34:19: 30-9C-23-87-89-8E\n11/09/2020 00:07:46: 127.0.0.1\n11/09/2020 00:07:46: I116264190\n11/09/2020 00:07:46: 30-9C-23-87-89-8E\n11/09/2020 00:19:46: 127.0.0.1\n11/09/2020 00:19:46: I116264190\n11/09/2020 00:19:46: 30-9C-23-87-89-8E\n11/09/2020 01:25:54: 127.0.0.1\n11/09/2020 01:25:54: I116264190\n11/09/2020 01:25:54: 30-9C-23-87-89-8E\n11/09/2020 01:27:54: 127.0.0.1\n11/09/2020 01:27:54: I116264190\n11/09/2020 01:27:54: 30-9C-23-87-89-8E\n11/09/2020 02:59:49: 127.0.0.1\n11/09/2020 02:59:49: I116264190\n11/09/2020 02:59:49: 30-9C-23-87-89-8E\n11/09/2020 03:02:43: 127.0.0.1\n11/09/2020 03:02:43: I116264190\n11/09/2020 03:02:43: 30-9C-23-87-89-8E\n11/09/2020 03:04:45: 127.0.0.1\n11/09/2020 03:04:45: I116264190\n11/09/2020 03:04:45: 30-9C-23-87-89-8E\n12/09/2020 14:53:16: 127.0.0.1\n12/09/2020 14:53:16: I116264190\n12/09/2020 14:53:16: 30-9C-23-87-89-8E\n13/09/2020 14:36:17: 127.0.0.1\n13/09/2020 14:36:17: I116264190\n13/09/2020 14:36:17: 30-9C-23-87-89-8E\n13/09/2020 14:40:43: 127.0.0.1\n13/09/2020 14:40:43: I116264190\n13/09/2020 14:40:43: 30-9C-23-87-89-8E\n13/09/2020 15:09:39: 127.0.0.1\n13/09/2020 15:09:39: I116264190\n13/09/2020 15:09:39: 30-9C-23-87-89-8E\n13/09/2020 15:12:22: 127.0.0.1\n13/09/2020 15:12:22: I116264190\n13/09/2020 15:12:22: 30-9C-23-87-89-8E\n13/09/2020 15:19:02: 127.0.0.1\n13/09/2020 15:19:02: I116264190\n13/09/2020 15:19:02: 30-9C-23-87-89-8E\n13/09/2020 15:22:49: 127.0.0.1\n13/09/2020 15:22:49: I116264190\n13/09/2020 15:22:49: 30-9C-23-87-89-8E\n13/09/2020 15:24:30: 127.0.0.1\n13/09/2020 15:24:30: I116264190\n13/09/2020 15:24:30: 30-9C-23-87-89-8E\n13/09/2020 15:26:58: 127.0.0.1\n13/09/2020 15:26:58: I116264190\n13/09/2020 15:26:58: 30-9C-23-87-89-8E\n13/09/2020 15:30:47: 127.0.0.1\n13/09/2020 15:30:47: I116264190\n13/09/2020 15:30:47: 30-9C-23-87-89-8E\n13/09/2020 15:32:57: 127.0.0.1\n13/09/2020 15:32:57: I116264190\n13/09/2020 15:32:57: 30-9C-23-87-89-8E\n13/09/2020 15:56:59: 127.0.0.1\n13/09/2020 15:56:59: I116264190\n13/09/2020 15:56:59: 30-9C-23-87-89-8E\n13/09/2020 15:58:11: 127.0.0.1\n13/09/2020 15:58:11: I116264190\n13/09/2020 15:58:11: 30-9C-23-87-89-8E\n13/09/2020 15:58:49: 127.0.0.1\n13/09/2020 15:58:49: I116264190\n13/09/2020 15:58:49: 30-9C-23-87-89-8E\n13/09/2020 15:59:48: 127.0.0.1\n13/09/2020 15:59:48: I116264190\n13/09/2020 15:59:48: 30-9C-23-87-89-8E\n13/09/2020 16:00:36: 127.0.0.1\n13/09/2020 16:00:36: I116264190\n13/09/2020 16:00:36: 30-9C-23-87-89-8E\n13/09/2020 16:01:43: 127.0.0.1\n13/09/2020 16:01:43: I116264190\n13/09/2020 16:01:43: 30-9C-23-87-89-8E\n13/09/2020 16:03:42: 127.0.0.1\n13/09/2020 16:03:42: I116264190\n13/09/2020 16:03:42: 30-9C-23-87-89-8E\n13/09/2020 16:04:10: 127.0.0.1\n13/09/2020 16:04:10: I116264190\n13/09/2020 16:04:10: 30-9C-23-87-89-8E\n13/09/2020 16:05:40: 127.0.0.1\n13/09/2020 16:05:40: I116264190\n13/09/2020 16:05:40: 30-9C-23-87-89-8E\n13/09/2020 16:08:10: 127.0.0.1\n13/09/2020 16:08:10: I116264190\n13/09/2020 16:08:10: 30-9C-23-87-89-8E\n13/09/2020 16:09:45: 127.0.0.1\n13/09/2020 16:09:45: I116264190\n13/09/2020 16:09:45: 30-9C-23-87-89-8E\n13/09/2020 16:13:04: 127.0.0.1\n13/09/2020 16:13:04: I116264190\n13/09/2020 16:13:04: 30-9C-23-87-89-8E\n13/09/2020 16:13:59: 127.0.0.1\n13/09/2020 16:13:59: I116264190\n13/09/2020 16:13:59: 30-9C-23-87-89-8E\n13/09/2020 16:15:20: 127.0.0.1\n13/09/2020 16:15:20: I116264190\n13/09/2020 16:15:20: 30-9C-23-87-89-8E\n13/09/2020 16:16:08: 127.0.0.1\n13/09/2020 16:16:08: I116264190\n13/09/2020 16:16:08: 30-9C-23-87-89-8E\n13/09/2020 16:25:07: 127.0.0.1\n13/09/2020 16:25:07: I116264190\n13/09/2020 16:25:07: 30-9C-23-87-89-8E\n13/09/2020 16:28:18: 127.0.0.1\n13/09/2020 16:28:18: I116264190\n13/09/2020 16:28:18: 30-9C-23-87-89-8E\n13/09/2020 16:28:50: 127.0.0.1\n13/09/2020 16:28:50: I116264190\n13/09/2020 16:28:50: 30-9C-23-87-89-8E\n13/09/2020 16:29:28: 127.0.0.1\n13/09/2020 16:29:28: I116264190\n13/09/2020 16:29:28: 30-9C-23-87-89-8E\n13/09/2020 16:30:13: 127.0.0.1\n13/09/2020 16:30:13: I116264190\n13/09/2020 16:30:13: 30-9C-23-87-89-8E\n13/09/2020 16:31:05: 127.0.0.1\n13/09/2020 16:31:05: I116264190\n13/09/2020 16:31:05: 30-9C-23-87-89-8E\n13/09/2020 16:31:32: 127.0.0.1\n13/09/2020 16:31:32: I116264190\n13/09/2020 16:31:32: 30-9C-23-87-89-8E\n13/09/2020 16:32:06: 127.0.0.1\n13/09/2020 16:32:06: I116264190\n13/09/2020 16:32:06: 30-9C-23-87-89-8E\n13/09/2020 16:32:43: 127.0.0.1\n13/09/2020 16:32:43: I116264190\n13/09/2020 16:32:43: 30-9C-23-87-89-8E\n13/09/2020 16:33:31: 127.0.0.1\n13/09/2020 16:33:31: I116264190\n13/09/2020 16:33:31: 30-9C-23-87-89-8E\n13/09/2020 16:37:08: 127.0.0.1\n13/09/2020 16:37:08: I116264190\n13/09/2020 16:37:08: 30-9C-23-87-89-8E\n13/09/2020 16:38:23: 127.0.0.1\n13/09/2020 16:38:23: I116264190\n13/09/2020 16:38:23: 30-9C-23-87-89-8E\n13/09/2020 16:44:09: 127.0.0.1\n13/09/2020 16:44:09: I116264190\n13/09/2020 16:44:09: 30-9C-23-87-89-8E\n13/09/2020 17:01:49: 127.0.0.1\n13/09/2020 17:01:49: I116264190\n13/09/2020 17:01:49: 30-9C-23-87-89-8E\n13/09/2020 17:05:31: 127.0.0.1\n13/09/2020 17:05:31: I116264190\n13/09/2020 17:05:31: 30-9C-23-87-89-8E\n13/09/2020 17:10:08: 127.0.0.1\n13/09/2020 17:10:08: I116264190\n13/09/2020 17:10:08: 30-9C-23-87-89-8E\n13/09/2020 17:30:56: 127.0.0.1\n13/09/2020 17:30:56: I116264190\n13/09/2020 17:30:56: 30-9C-23-87-89-8E\n13/09/2020 17:35:02: 127.0.0.1\n13/09/2020 17:35:02: I116264190\n13/09/2020 17:35:02: 30-9C-23-87-89-8E\n13/09/2020 17:42:08: 127.0.0.1\n13/09/2020 17:42:08: I116264190\n13/09/2020 17:42:08: 30-9C-23-87-89-8E\n13/09/2020 17:42:27: 127.0.0.1\n13/09/2020 17:42:27: I116264190\n13/09/2020 17:42:27: 30-9C-23-87-89-8E\n13/09/2020 17:45:59: 127.0.0.1\n13/09/2020 17:45:59: I116264190\n13/09/2020 17:45:59: 30-9C-23-87-89-8E\n13/09/2020 17:46:47: 127.0.0.1\n13/09/2020 17:46:47: I116264190\n13/09/2020 17:46:47: 30-9C-23-87-89-8E\n13/09/2020 17:47:45: 127.0.0.1\n13/09/2020 17:47:45: I116264190\n13/09/2020 17:47:45: 30-9C-23-87-89-8E\n13/09/2020 17:49:22: 127.0.0.1\n13/09/2020 17:49:22: I116264190\n13/09/2020 17:49:22: 30-9C-23-87-89-8E\n13/09/2020 17:50:34: 127.0.0.1\n13/09/2020 17:50:34: I116264190\n13/09/2020 17:50:34: 30-9C-23-87-89-8E\n13/09/2020 17:52:50: 127.0.0.1\n13/09/2020 17:52:50: I116264190\n13/09/2020 17:52:50: 30-9C-23-87-89-8E\n13/09/2020 17:53:55: 127.0.0.1\n13/09/2020 17:53:55: I116264190\n13/09/2020 17:53:55: 30-9C-23-87-89-8E\n13/09/2020 18:06:04: 127.0.0.1\n13/09/2020 18:06:04: I116264190\n13/09/2020 18:06:04: 30-9C-23-87-89-8E\n13/09/2020 18:20:49: 127.0.0.1\n13/09/2020 18:20:49: I116264190\n13/09/2020 18:20:49: 30-9C-23-87-89-8E\n13/09/2020 18:22:42: 127.0.0.1\n13/09/2020 18:22:42: I116264190\n13/09/2020 18:22:42: 30-9C-23-87-89-8E\n13/09/2020 18:23:26: 127.0.0.1\n13/09/2020 18:23:26: I116264190\n13/09/2020 18:23:26: 30-9C-23-87-89-8E\n13/09/2020 18:29:24: 127.0.0.1\n13/09/2020 18:29:24: I116264190\n13/09/2020 18:29:24: 30-9C-23-87-89-8E\n13/09/2020 18:31:57: 127.0.0.1\n13/09/2020 18:31:57: I116264190\n13/09/2020 18:31:57: 30-9C-23-87-89-8E\n13/09/2020 18:32:52: 127.0.0.1\n13/09/2020 18:32:52: I116264190\n13/09/2020 18:32:52: 30-9C-23-87-89-8E\n13/09/2020 18:34:00: 127.0.0.1\n13/09/2020 18:34:00: I116264190\n13/09/2020 18:34:00: 30-9C-23-87-89-8E\n13/09/2020 18:34:58: 127.0.0.1\n13/09/2020 18:34:58: I116264190\n13/09/2020 18:34:58: 30-9C-23-87-89-8E\n13/09/2020 18:36:05: 127.0.0.1\n13/09/2020 18:36:05: I116264190\n13/09/2020 18:36:05: 30-9C-23-87-89-8E\n13/09/2020 19:17:14: 127.0.0.1\n13/09/2020 19:17:14: I116264190\n13/09/2020 19:17:14: 30-9C-23-87-89-8E\n13/09/2020 19:20:53: 127.0.0.1\n13/09/2020 19:20:53: I116264190\n13/09/2020 19:20:53: 30-9C-23-87-89-8E\n13/09/2020 19:22:35: 127.0.0.1\n13/09/2020 19:22:35: I116264190\n13/09/2020 19:22:35: 30-9C-23-87-89-8E\n13/09/2020 19:29:15: 127.0.0.1\n13/09/2020 19:29:15: I116264190\n13/09/2020 19:29:15: 30-9C-23-87-89-8E\n14/09/2020 14:20:25: 127.0.0.1\n14/09/2020 14:20:25: I116264190\n14/09/2020 14:20:25: 30-9C-23-87-89-8E\n14/09/2020 18:02:16: 127.0.0.1\n14/09/2020 18:02:16: I116264190\n14/09/2020 18:02:16: 30-9C-23-87-89-8E\n14/09/2020 18:03:29: 127.0.0.1\n14/09/2020 18:03:29: I116264190\n14/09/2020 18:03:29: 30-9C-23-87-89-8E\n14/09/2020 19:42:55: 127.0.0.1\n14/09/2020 19:42:55: I116264190\n14/09/2020 19:42:55: 30-9C-23-87-89-8E\n14/09/2020 19:57:58: 127.0.0.1\n14/09/2020 19:57:58: I116264190\n14/09/2020 19:57:58: 30-9C-23-87-89-8E\n14/09/2020 20:06:45: 127.0.0.1\n14/09/2020 20:06:45: I116264190\n14/09/2020 20:06:45: 30-9C-23-87-89-8E\n14/09/2020 20:30:56: 127.0.0.1\n14/09/2020 20:30:56: I116264190\n14/09/2020 20:30:56: 30-9C-23-87-89-8E\n14/09/2020 22:35:50: 127.0.0.1\n14/09/2020 22:35:50: I116264190\n14/09/2020 22:35:50: 30-9C-23-87-89-8E\n14/09/2020 23:07:10: 127.0.0.1\n14/09/2020 23:07:10: I116264190\n14/09/2020 23:07:10: 30-9C-23-87-89-8E\n14/09/2020 23:08:26: 127.0.0.1\n14/09/2020 23:08:26: I116264190\n14/09/2020 23:08:26: 30-9C-23-87-89-8E\n14/09/2020 23:50:43: 127.0.0.1\n14/09/2020 23:50:43: I116264190\n14/09/2020 23:50:43: 30-9C-23-87-89-8E\n15/09/2020 00:46:43: 127.0.0.1\n15/09/2020 00:46:43: I116264190\n15/09/2020 00:46:43: 30-9C-23-87-89-8E\n15/09/2020 11:52:20: 127.0.0.1\n15/09/2020 11:52:20: I116264190\n15/09/2020 11:52:20: 30-9C-23-87-89-8E\n15/09/2020 11:52:50: 127.0.0.1\n15/09/2020 11:52:50: I116264190\n15/09/2020 11:52:50: 30-9C-23-87-89-8E\n15/09/2020 11:55:21: 127.0.0.1\n15/09/2020 11:55:21: I116264190\n15/09/2020 11:55:21: 30-9C-23-87-89-8E\n15/09/2020 11:57:58: 127.0.0.1\n15/09/2020 11:57:58: I116264190\n15/09/2020 11:57:58: 30-9C-23-87-89-8E\n15/09/2020 12:03:43: 127.0.0.1\n15/09/2020 12:03:43: I116264190\n15/09/2020 12:03:43: 30-9C-23-87-89-8E\n15/09/2020 12:39:29: 127.0.0.1\n15/09/2020 12:39:29: I116264190\n15/09/2020 12:39:29: 30-9C-23-87-89-8E\n15/09/2020 12:56:16: 127.0.0.1\n15/09/2020 12:56:16: I116264190\n15/09/2020 12:56:16: 30-9C-23-87-89-8E\n15/09/2020 12:57:18: 127.0.0.1\n15/09/2020 12:57:18: I116264190\n15/09/2020 12:57:18: 30-9C-23-87-89-8E\n15/09/2020 13:31:06: 127.0.0.1\n15/09/2020 13:31:06: I116264190\n15/09/2020 13:31:06: 30-9C-23-87-89-8E\n15/09/2020 13:47:47: 127.0.0.1\n15/09/2020 13:47:47: I116264190\n15/09/2020 13:47:47: 30-9C-23-87-89-8E\n17/09/2020 11:29:59: 127.0.0.1\n17/09/2020 11:29:59: I116264190\n17/09/2020 11:29:59: 30-9C-23-87-89-8E\n17/09/2020 11:36:42: 127.0.0.1\n17/09/2020 11:36:42: I116264190\n17/09/2020 11:36:42: 30-9C-23-87-89-8E\n17/09/2020 11:39:14: 127.0.0.1\n17/09/2020 11:39:14: I116264190\n17/09/2020 11:39:14: 30-9C-23-87-89-8E\n17/09/2020 13:13:51: 127.0.0.1\n17/09/2020 13:13:51: I116264190\n17/09/2020 13:13:51: 30-9C-23-87-89-8E\n17/09/2020 13:55:19: 127.0.0.1\n17/09/2020 13:55:19: I116264190\n17/09/2020 13:55:19: 30-9C-23-87-89-8E\n17/09/2020 14:02:32: 127.0.0.1\n17/09/2020 14:02:32: I116264190\n17/09/2020 14:02:32: 30-9C-23-87-89-8E\n17/09/2020 14:46:02: 127.0.0.1\n17/09/2020 14:46:02: I116264190\n17/09/2020 14:46:02: 30-9C-23-87-89-8E\n17/09/2020 14:47:08: 127.0.0.1\n17/09/2020 14:47:08: I116264190\n17/09/2020 14:47:08: 30-9C-23-87-89-8E\n17/09/2020 14:50:18: 127.0.0.1\n17/09/2020 14:50:18: I116264190\n17/09/2020 14:50:18: 30-9C-23-87-89-8E\n17/09/2020 14:51:26: 127.0.0.1\n17/09/2020 14:51:26: I116264190\n17/09/2020 14:51:26: 30-9C-23-87-89-8E\n17/09/2020 14:51:59: 127.0.0.1\n17/09/2020 14:51:59: I116264190\n17/09/2020 14:51:59: 30-9C-23-87-89-8E\n17/09/2020 14:52:35: 127.0.0.1\n17/09/2020 14:52:35: I116264190\n17/09/2020 14:52:35: 30-9C-23-87-89-8E\n17/09/2020 14:53:13: 127.0.0.1\n17/09/2020 14:53:13: I116264190\n17/09/2020 14:53:13: 30-9C-23-87-89-8E\n17/09/2020 14:53:53: 127.0.0.1\n17/09/2020 14:53:53: I116264190\n17/09/2020 14:53:53: 30-9C-23-87-89-8E\n17/09/2020 14:55:00: 127.0.0.1\n17/09/2020 14:55:00: I116264190\n17/09/2020 14:55:00: 30-9C-23-87-89-8E\n17/09/2020 14:56:22: 127.0.0.1\n17/09/2020 14:56:22: I116264190\n17/09/2020 14:56:22: 30-9C-23-87-89-8E\n17/09/2020 14:56:50: 127.0.0.1\n17/09/2020 14:56:50: I116264190\n17/09/2020 14:56:50: 30-9C-23-87-89-8E\n17/09/2020 14:57:24: 127.0.0.1\n17/09/2020 14:57:24: I116264190\n17/09/2020 14:57:24: 30-9C-23-87-89-8E\n17/09/2020 14:58:46: 127.0.0.1\n17/09/2020 14:58:46: I116264190\n17/09/2020 14:58:46: 30-9C-23-87-89-8E\n17/09/2020 14:59:22: 127.0.0.1\n17/09/2020 14:59:22: I116264190\n17/09/2020 14:59:22: 30-9C-23-87-89-8E\n17/09/2020 15:17:34: 127.0.0.1\n17/09/2020 15:17:34: I116264190\n17/09/2020 15:17:34: 30-9C-23-87-89-8E\n17/09/2020 15:19:06: 127.0.0.1\n17/09/2020 15:19:06: I116264190\n17/09/2020 15:19:06: 30-9C-23-87-89-8E\n17/09/2020 15:22:03: 127.0.0.1\n17/09/2020 15:22:03: I116264190\n17/09/2020 15:22:03: 30-9C-23-87-89-8E\n17/09/2020 15:31:31: 127.0.0.1\n17/09/2020 15:31:31: I116264190\n17/09/2020 15:31:31: 30-9C-23-87-89-8E\n17/09/2020 15:32:17: 127.0.0.1\n17/09/2020 15:32:17: I116264190\n17/09/2020 15:32:17: 30-9C-23-87-89-8E\n17/09/2020 15:45:41: 127.0.0.1\n17/09/2020 15:45:41: I116264190\n17/09/2020 15:45:41: 30-9C-23-87-89-8E\n17/09/2020 15:48:10: 127.0.0.1\n17/09/2020 15:48:10: I116264190\n17/09/2020 15:48:10: 30-9C-23-87-89-8E\n17/09/2020 16:22:03: 127.0.0.1\n17/09/2020 16:22:03: I116264190\n17/09/2020 16:22:03: 30-9C-23-87-89-8E\n17/09/2020 16:32:12: 127.0.0.1\n17/09/2020 16:32:12: I116264190\n17/09/2020 16:32:12: 30-9C-23-87-89-8E\n17/09/2020 16:33:35: 127.0.0.1\n17/09/2020 16:33:35: I116264190\n17/09/2020 16:33:35: 30-9C-23-87-89-8E\n17/09/2020 16:45:15: 127.0.0.1\n17/09/2020 16:45:15: I116264190\n17/09/2020 16:45:15: 30-9C-23-87-89-8E\n17/09/2020 16:46:07: 127.0.0.1\n17/09/2020 16:46:07: I116264190\n17/09/2020 16:46:07: 30-9C-23-87-89-8E\n17/09/2020 16:54:58: 127.0.0.1\n17/09/2020 16:54:58: I116264190\n17/09/2020 16:54:58: 30-9C-23-87-89-8E\n17/09/2020 16:55:28: 127.0.0.1\n17/09/2020 16:55:28: I116264190\n17/09/2020 16:55:28: 30-9C-23-87-89-8E\n17/09/2020 16:55:57: 127.0.0.1\n17/09/2020 16:55:57: I116264190\n17/09/2020 16:55:57: 30-9C-23-87-89-8E\n17/09/2020 16:56:53: 127.0.0.1\n17/09/2020 16:56:53: I116264190\n17/09/2020 16:56:53: 30-9C-23-87-89-8E\n17/09/2020 16:58:16: 127.0.0.1\n17/09/2020 16:58:16: I116264190\n17/09/2020 16:58:16: 30-9C-23-87-89-8E\n17/09/2020 16:58:49: 127.0.0.1\n17/09/2020 16:58:49: I116264190\n17/09/2020 16:58:49: 30-9C-23-87-89-8E\n17/09/2020 16:59:37: 127.0.0.1\n17/09/2020 16:59:37: I116264190\n17/09/2020 16:59:37: 30-9C-23-87-89-8E\n17/09/2020 17:01:57: 127.0.0.1\n17/09/2020 17:01:57: I116264190\n17/09/2020 17:01:57: 30-9C-23-87-89-8E\n17/09/2020 17:02:46: 127.0.0.1\n17/09/2020 17:02:46: I116264190\n17/09/2020 17:02:46: 30-9C-23-87-89-8E\n17/09/2020 18:26:49: 127.0.0.1\n17/09/2020 18:26:49: I116264190\n17/09/2020 18:26:49: 30-9C-23-87-89-8E\n17/09/2020 18:53:22: 127.0.0.1\n17/09/2020 18:53:22: I116264190\n17/09/2020 18:53:22: 30-9C-23-87-89-8E\n17/09/2020 19:24:35: 127.0.0.1\n17/09/2020 19:24:35: I116264190\n17/09/2020 19:24:35: 30-9C-23-87-89-8E\n17/09/2020 19:33:51: 127.0.0.1\n17/09/2020 19:33:51: I116264190\n17/09/2020 19:33:51: 30-9C-23-87-89-8E\n17/09/2020 20:37:55: 127.0.0.1\n17/09/2020 20:37:55: I116264190\n17/09/2020 20:37:55: 30-9C-23-87-89-8E\n17/09/2020 21:03:04: 127.0.0.1\n17/09/2020 21:03:04: I116264190\n17/09/2020 21:03:04: 30-9C-23-87-89-8E\n17/09/2020 21:03:38: 127.0.0.1\n17/09/2020 21:03:38: I116264190\n17/09/2020 21:03:38: 30-9C-23-87-89-8E\n22/09/2020 12:34:31: 127.0.0.1\n22/09/2020 12:34:31: I116264190\n22/09/2020 12:34:31: 30-9C-23-87-89-8E\n22/09/2020 12:35:29: 127.0.0.1\n22/09/2020 12:35:29: I116264190\n22/09/2020 12:35:29: 30-9C-23-87-89-8E\n22/09/2020 12:37:35: 127.0.0.1\n22/09/2020 12:37:35: I116264190\n22/09/2020 12:37:35: 30-9C-23-87-89-8E\n23/09/2020 14:25:26: 127.0.0.1\n23/09/2020 14:25:26: I116264190\n23/09/2020 14:25:26: 30-9C-23-87-89-8E\n23/09/2020 14:31:33: 127.0.0.1\n23/09/2020 14:31:33: I116264190\n23/09/2020 14:31:33: 30-9C-23-87-89-8E\n23/09/2020 14:40:21: 127.0.0.1\n23/09/2020 14:40:21: I116264190\n23/09/2020 14:40:21: 30-9C-23-87-89-8E\n', '10/09/2020 14:47:28: tele 0,50,50,31,30\n10/09/2020 14:47:55: teleto test1\n10/09/2020 14:48:02: teleto test\n10/09/2020 14:48:05: tele 0,39,78,29,10\n10/09/2020 14:48:07: coords\n10/09/2020 14:48:47: coords\n10/09/2020 14:50:14: fpson\n10/09/2020 14:50:18: fpsoff\n10/09/2020 14:50:20: fpson\n10/09/2020 14:50:24: fpsoff\n10/09/2020 14:51:36: tele 0,49,61,57,27\n10/09/2020 14:51:41: tele 0,49,61,45,24\n10/09/2020 14:51:43: tele 0,49,61,44,40\n10/09/2020 14:51:45: tele 0,49,61,36,54\n10/09/2020 14:51:47: tele 0,49,61,20,57\n10/09/2020 14:51:50: tele 0,49,61,5,46\n10/09/2020 14:51:51: tele 0,48,61,55,39\n10/09/2020 14:51:53: tele 0,48,61,41,38\n10/09/2020 14:51:56: tele 0,48,61,44,51\n10/09/2020 14:51:57: tele 0,48,61,57,55\n10/09/2020 14:51:58: tele 0,49,61,8,51\n10/09/2020 14:51:59: tele 0,49,61,24,44\n10/09/2020 14:52:00: tele 0,49,61,39,38\n10/09/2020 14:52:01: tele 0,49,61,53,33\n10/09/2020 14:52:01: tele 0,50,61,2,26\n10/09/2020 14:52:02: tele 0,50,61,16,21\n10/09/2020 14:52:03: tele 0,50,61,30,17\n10/09/2020 14:52:10: tele 0,50,50,22,18\n10/09/2020 16:26:29: tele 0,50,50,32,27\n10/09/2020 16:26:50: teleto test\n10/09/2020 16:26:53: tele 0,39,78,29,10\n10/09/2020 16:27:02: mapfiles\n10/09/2020 16:30:00: tele 0,49,61,53,37\n10/09/2020 16:30:10: mapfiles\n10/09/2020 16:30:40: tele 0,49,61,40,37\n10/09/2020 16:30:41: tele 0,49,61,26,41\n10/09/2020 16:30:50: region\n10/09/2020 16:30:55: tele 0,49,61,10,43\n10/09/2020 16:30:57: tele 0,48,61,60,42\n10/09/2020 16:30:59: region\n10/09/2020 16:31:07: mapdata\n10/09/2020 16:31:19: mapfiles\n10/09/2020 16:35:59: tele 0,48,61,54,40\n10/09/2020 16:36:07: tele 0,48,61,50,45\n10/09/2020 16:36:08: tele 0,48,61,49,50\n10/09/2020 16:36:10: tele 0,48,61,42,51\n10/09/2020 16:36:11: tele 0,48,61,35,53\n10/09/2020 16:36:13: tele 0,48,61,38,50\n10/09/2020 16:36:14: tele 0,48,61,38,46\n10/09/2020 16:36:16: tele 0,48,61,53,44\n10/09/2020 16:36:16: tele 0,49,61,4,42\n10/09/2020 16:36:17: tele 0,49,61,15,44\n10/09/2020 16:36:18: tele 0,49,61,22,43\n10/09/2020 16:36:19: tele 0,49,61,19,31\n10/09/2020 16:36:20: tele 0,49,61,15,19\n10/09/2020 16:36:21: tele 0,49,61,18,7\n10/09/2020 16:36:23: tele 0,49,60,21,59\n10/09/2020 16:36:26: tele 0,49,60,25,46\n10/09/2020 16:36:29: tele 0,49,60,25,34\n10/09/2020 16:36:29: tele 0,49,60,25,22\n10/09/2020 16:36:31: tele 0,49,60,23,8\n10/09/2020 16:36:31: tele 0,49,59,23,59\n10/09/2020 16:36:34: tele 0,49,59,17,45\n10/09/2020 16:36:34: tele 0,49,59,13,31\n10/09/2020 16:36:35: tele 0,49,59,11,17\n10/09/2020 16:36:38: tele 0,49,59,11,3\n10/09/2020 16:36:39: tele 0,49,58,11,53\n10/09/2020 16:36:40: tele 0,49,58,10,45\n10/09/2020 16:36:43: tele 0,49,58,12,31\n10/09/2020 16:36:49: tele 0,50,59,2,42\n10/09/2020 16:36:56: tele 0,49,54,19,53\n10/09/2020 16:36:58: tele 0,49,54,21,43\n10/09/2020 16:37:00: tele 0,49,54,24,37\n10/09/2020 16:37:02: tele 0,49,54,23,33\n10/09/2020 17:43:17: tele 0,50,50,22,19\n10/09/2020 18:38:20: tele 0,51,50,8,27\n10/09/2020 18:39:23: tele 0,51,49,14,38\n10/09/2020 18:39:24: tele 0,51,49,13,53\n10/09/2020 18:39:25: tele 0,51,50,13,4\n10/09/2020 18:39:26: tele 0,51,50,13,19\n10/09/2020 18:39:27: tele 0,51,50,13,34\n10/09/2020 18:39:29: tele 0,51,50,22,47\n10/09/2020 18:40:36: tele 0,51,51,35,2\n10/09/2020 18:40:38: tele 0,51,50,47,59\n10/09/2020 18:40:42: tele 0,51,50,61,49\n10/09/2020 18:40:43: tele 0,52,50,11,49\n10/09/2020 18:40:43: tele 0,52,50,20,56\n10/09/2020 18:40:49: tele 0,52,50,37,55\n10/09/2020 18:40:50: tele 0,52,50,51,50\n10/09/2020 18:40:51: tele 0,52,50,55,39\n10/09/2020 18:42:01: tele 0,50,50,57,27\n10/09/2020 18:44:21: tele 0,50,51,37,42\n10/09/2020 18:49:07: fog\n10/09/2020 18:49:09: fogoff\n10/09/2020 18:49:11: nofog\n10/09/2020 18:49:12: fog\n10/09/2020 23:34:44: debug\n10/09/2020 23:35:03: home\n11/09/2020 00:08:03: debug\n11/09/2020 01:28:13: tele 0,50,50,35,16\n11/09/2020 01:28:16: tele 0,48,49,39,21\n11/09/2020 01:28:19: tele 1,48,49,39,21\n11/09/2020 01:28:20: tele 2,48,49,39,21\n11/09/2020 01:28:21: tele 2,48,49,38,23\n11/09/2020 01:28:54: tele 0,50,50,36,19\n11/09/2020 01:29:24: tele 0,50,50,23,16\n11/09/2020 01:29:26: tele 0,50,50,10,13\n11/09/2020 01:29:28: tele 1,50,50,10,13\n11/09/2020 01:29:30: tele 1,50,50,10,20\n11/09/2020 03:00:08: tele 0,50,50,19,18\n11/09/2020 03:00:09: tele 0,50,50,33,22\n12/09/2020 14:53:26: tele 0,46,51,16,8\n12/09/2020 14:53:37: tele 0,42,52,19,56\n12/09/2020 14:53:41: tele 0,42,52,15,55\n12/09/2020 14:53:54: debug\n12/09/2020 14:56:11: coords\n12/09/2020 14:56:40: tele 0,46,51,14,9\n12/09/2020 14:57:15: coords\n12/09/2020 14:57:35: tele 0,46,50,12,9\n12/09/2020 14:57:44: coords\n12/09/2020 14:57:55: tele 0,47,50,20,35\n12/09/2020 14:57:58: coords\n12/09/2020 14:58:07: tele 0,48,50,8,49\n12/09/2020 14:58:12: coords\n12/09/2020 14:59:33: empty\n12/09/2020 14:59:36: item 10498\n12/09/2020 14:59:48: item 10498\n12/09/2020 15:00:00: item 10499\n12/09/2020 15:01:32: item 13111\n12/09/2020 15:02:14: item 13170\n12/09/2020 15:03:32: item 1011\n12/09/2020 15:05:12: item 9944\n12/09/2020 15:05:14: item 9945\n12/09/2020 15:05:50: item 10863\n12/09/2020 15:06:44: tele 0,47,51,1,14\n12/09/2020 15:06:49: 1hko\n12/09/2020 15:07:16: tele 0,47,51,17,5\n12/09/2020 15:07:17: tele 0,47,50,31,59\n12/09/2020 15:07:17: tele 0,47,50,45,49\n12/09/2020 15:07:18: tele 0,47,50,60,46\n12/09/2020 15:07:19: tele 0,48,50,9,48\n12/09/2020 15:08:48: item 12645\n12/09/2020 15:09:42: item 7535\n12/09/2020 15:10:55: item 10607\n12/09/2020 15:11:02: item 6106\n12/09/2020 15:11:54: item 9470\n12/09/2020 15:15:20: empty\n12/09/2020 15:15:23: item 9096\n12/09/2020 15:15:26: item 9097\n12/09/2020 15:15:29: item 9098\n12/09/2020 15:15:31: item 9099\n12/09/2020 15:15:38: item 9100\n12/09/2020 15:15:42: item 9101\n12/09/2020 15:17:11: item 9068\n12/09/2020 15:17:29: item 9070\n12/09/2020 15:18:20: item 6067\n12/09/2020 15:18:27: item 6066\n12/09/2020 15:19:34: item 8952\n12/09/2020 15:19:43: item 13181\n12/09/2020 15:20:30: empty\n12/09/2020 15:21:31: item 2997\n12/09/2020 15:21:49: item 426\n12/09/2020 15:21:53: item 428\n12/09/2020 15:23:39: item 546\n12/09/2020 15:23:51: item 548\n12/09/2020 15:25:08: item 6335\n12/09/2020 15:25:11: item 6336\n12/09/2020 15:25:15: item 6337\n12/09/2020 15:26:30: empty\n12/09/2020 15:26:34: item 14076\n12/09/2020 15:26:37: item 14077\n12/09/2020 15:26:39: item 14081\n12/09/2020 15:28:06: item 14078\n12/09/2020 15:28:10: item 14079\n12/09/2020 15:28:13: item 14080\n12/09/2020 15:30:04: item 579\n12/09/2020 15:30:19: item 1017\n12/09/2020 15:30:47: item 7394\n12/09/2020 15:31:19: item 2898\n12/09/2020 15:33:22: item 6722\n12/09/2020 15:33:27: item 7592\n12/09/2020 15:34:27: npc 8207\n12/09/2020 15:34:35: npc 922\n12/09/2020 15:34:47: tele 0,48,50,18,54\n12/09/2020 15:34:49: tele 0,48,50,14,59\n12/09/2020 15:34:59: tele 0,48,50,5,48\n12/09/2020 15:36:04: npc 13172\n12/09/2020 15:36:11: npc 13173\n12/09/2020 15:36:28: npc 2634\n12/09/2020 15:36:33: tele 0,48,50,20,48\n12/09/2020 15:37:01: npc 755\n12/09/2020 15:37:06: tele 0,48,51,29,1\n12/09/2020 15:37:07: tele 0,48,51,27,4\n12/09/2020 15:37:19: tele 0,48,50,27,59\n12/09/2020 15:37:36: npc 2692\n12/09/2020 15:37:41: tele 0,48,50,14,60\n12/09/2020 15:37:42: tele 0,47,50,62,61\n12/09/2020 15:37:43: tele 0,47,50,46,62\n12/09/2020 15:37:44: tele 0,47,50,42,58\n12/09/2020 15:37:56: tele 0,47,50,29,55\n12/09/2020 15:37:57: tele 0,47,50,18,47\n12/09/2020 15:37:58: tele 0,47,50,6,58\n12/09/2020 15:38:13: tele 0,47,50,16,51\n12/09/2020 15:38:21: tele 0,47,50,28,54\n12/09/2020 15:38:22: tele 0,47,50,38,57\n12/09/2020 15:38:26: tele 0,47,50,38,47\n12/09/2020 15:38:42: npc 11700\n12/09/2020 15:38:48: npc 11703\n12/09/2020 15:39:02: tele 0,47,50,21,40\n12/09/2020 15:39:02: tele 0,47,50,5,33\n12/09/2020 15:39:04: tele 0,47,50,6,24\n12/09/2020 15:39:18: npc 556\n12/09/2020 15:39:23: tele 0,47,50,10,36\n12/09/2020 15:39:25: tele 0,47,50,4,47\n12/09/2020 15:39:34: tele 0,47,50,17,44\n12/09/2020 15:39:35: tele 0,47,50,28,46\n12/09/2020 15:39:36: tele 0,47,50,41,48\n12/09/2020 15:39:38: tele 0,47,50,39,57\n12/09/2020 15:40:03: pnpc 744\n12/09/2020 15:40:09: npc 744\n12/09/2020 15:40:14: tele 0,47,50,38,46\n12/09/2020 15:40:14: tele 0,47,50,40,36\n12/09/2020 15:40:15: tele 0,47,50,37,24\n12/09/2020 15:40:16: tele 0,47,50,31,13\n12/09/2020 15:40:18: tele 0,47,50,36,3\n12/09/2020 15:40:32: tele 0,46,50,14,3\n12/09/2020 15:40:55: tele 0,46,50,4,4\n12/09/2020 15:41:02: tele 0,46,50,5,15\n12/09/2020 15:41:21: tele 0,46,50,22,6\n12/09/2020 15:41:46: npc 557\n12/09/2020 15:41:54: tele 0,46,50,36,2\n12/09/2020 15:41:55: tele 0,46,49,50,62\n12/09/2020 15:41:56: tele 0,46,49,63,58\n12/09/2020 15:41:57: tele 0,47,50,6,5\n12/09/2020 15:42:23: pnpc 11705\n12/09/2020 15:42:26: pnpc -1\n12/09/2020 15:42:35: tele 0,47,50,16,17\n12/09/2020 15:42:36: tele 0,47,50,26,28\n12/09/2020 15:42:37: tele 0,47,50,35,39\n12/09/2020 15:42:38: tele 0,47,50,43,46\n12/09/2020 15:42:58: npc 2691\n12/09/2020 15:43:02: tele 0,47,50,44,56\n12/09/2020 15:43:47: pnpc 8078\n12/09/2020 15:47:02: obj 32034\n12/09/2020 15:47:10: tele 0,47,50,45,53\n12/09/2020 15:47:16: obj 32041\n12/09/2020 15:47:23: obj 32042\n12/09/2020 15:47:28: obj 32044\n12/09/2020 15:47:50: tele 0,42,52,17,54\n12/09/2020 15:48:02: obj 39240\n12/09/2020 15:48:12: tele 0,42,52,19,56\n12/09/2020 15:48:16: coords\n12/09/2020 15:48:20: tele 0,42,52,19,57\n12/09/2020 15:48:23: obj\n12/09/2020 15:48:25: coords\n12/09/2020 15:48:30: tele 0,42,52,20,58\n12/09/2020 15:48:34: coords\n12/09/2020 15:48:37: tele 0,42,52,15,56\n12/09/2020 15:48:49: coords\n13/09/2020 14:37:06: tele 0,47,50,63,57\n13/09/2020 14:37:07: tele 0,48,51,0,5\n13/09/2020 14:37:21: npc 922\n13/09/2020 14:37:54: npc 970\n13/09/2020 14:38:22: npc 3299\n13/09/2020 14:39:18: npc 2634\n13/09/2020 14:39:57: npc 755\n13/09/2020 14:55:45: npc 743\n13/09/2020 14:56:09: npc 2692\n13/09/2020 14:56:33: npc 583\n13/09/2020 14:58:18: npc 559\n13/09/2020 14:58:41: npc 558\n13/09/2020 14:59:02: npc 556\n13/09/2020 14:59:23: npc 2690\n13/09/2020 14:59:48: npc 744\n13/09/2020 15:00:14: npc 2691\n13/09/2020 15:00:42: npc 744\n13/09/2020 15:00:55: debug\n13/09/2020 15:01:03: npc 375\n13/09/2020 15:01:37: npc 557\n13/09/2020 15:02:06: npc 1860\n13/09/2020 15:02:36: npc 307\n13/09/2020 15:03:12: npc 585\n13/09/2020 15:03:38: npc 531\n13/09/2020 15:04:02: npc 530\n13/09/2020 15:10:31: debug\n13/09/2020 15:12:29: debug\n13/09/2020 15:12:39: npc 307\n13/09/2020 15:14:09: tele 0,48,51,1,17\n13/09/2020 15:19:10: tele 0,43,48,63,8\n13/09/2020 15:19:16: debug\n13/09/2020 15:19:48: remote 899\n13/09/2020 15:19:53: remote 900\n13/09/2020 15:19:56: remote 904\n13/09/2020 15:19:58: remote 902\n13/09/2020 15:20:05: remote901\n13/09/2020 15:20:07: remote 901\n13/09/2020 15:20:09: remote 900\n13/09/2020 15:21:32: remote 666\n13/09/2020 15:21:35: remote 688\n13/09/2020 15:21:38: remote 717\n13/09/2020 15:21:43: remote 718\n13/09/2020 15:21:47: remote 799\n13/09/2020 15:21:59: remote 682\n13/09/2020 15:22:04: remote 771\n13/09/2020 15:22:10: remote 814\n13/09/2020 15:22:18: remote 890\n13/09/2020 15:22:20: remote 883\n13/09/2020 15:23:49: tele 0,50,50,22,17\n13/09/2020 15:23:57: debug\n13/09/2020 15:27:24: pnpc 47\n13/09/2020 15:31:07: tele 0,42,52,15,51\n13/09/2020 15:31:12: debug\n13/09/2020 15:33:50: tele 0,42,52,14,56\n13/09/2020 15:35:33: empty\n13/09/2020 17:02:00: debug\n13/09/2020 17:03:53: item 995\n13/09/2020 17:35:27: debug\n13/09/2020 18:23:37: tele 0,50,53,12,35\n13/09/2020 18:23:38: tele 0,50,53,10,33\n13/09/2020 18:23:40: tele 0,50,53,9,30\n13/09/2020 18:23:43: tele 0,50,53,11,28\n13/09/2020 18:29:48: tele 0,42,52,19,55\n13/09/2020 18:29:52: tele 0,42,52,15,54\n13/09/2020 18:29:54: tele 0,42,52,15,55\n13/09/2020 18:29:55: tele 0,42,52,16,55\n13/09/2020 18:30:02: region\n13/09/2020 18:30:05: coords\n13/09/2020 18:33:00: tele 0,42,52,22,45\n13/09/2020 18:33:01: tele 0,42,52,23,36\n13/09/2020 18:33:08: obj 39233\n13/09/2020 18:34:10: obj 39233\n13/09/2020 18:35:10: tele 0,42,52,18,46\n13/09/2020 18:35:16: tele 0,42,52,18,50\n13/09/2020 18:35:23: obj 39237\n13/09/2020 19:17:21: tele 0,46,50,9,15\n13/09/2020 19:17:46: tele 0,46,50,10,14\n13/09/2020 19:17:48: tele 0,46,50,9,14\n14/09/2020 18:03:49: anim 288\n14/09/2020 18:05:12: anim 13662\n14/09/2020 18:05:20: anim 13710\n14/09/2020 18:05:28: anim 13744\n14/09/2020 18:05:36: anim 13798\n14/09/2020 18:05:40: anim -1\n14/09/2020 18:05:59: anim 12931\n14/09/2020 18:06:01: anim 01\n14/09/2020 18:06:05: anim 12919\n14/09/2020 18:06:17: anim 12594\n14/09/2020 18:06:31: anim 12152\n14/09/2020 18:06:40: anim 12059\n14/09/2020 18:07:29: tele 0,46,50,31,21\n14/09/2020 18:07:30: tele 0,46,50,44,21\n14/09/2020 18:07:31: tele 0,46,50,58,22\n14/09/2020 18:07:45: anim 11809\n14/09/2020 20:07:21: tele 0,47,50,48,53\n14/09/2020 20:07:22: tele 0,47,50,62,57\n14/09/2020 20:07:23: tele 0,48,50,11,53\n14/09/2020 20:07:26: tele 0,48,50,16,48\n14/09/2020 20:08:05: remote 1258\n14/09/2020 20:08:18: remote 1603\n14/09/2020 20:08:55: max\n14/09/2020 20:08:57: master\n14/09/2020 20:09:22: item 4734\n14/09/2020 20:09:38: remote 1603\n14/09/2020 20:09:57: remote 2182\n14/09/2020 20:10:01: remote 1666\n14/09/2020 20:10:18: remote 1547\n14/09/2020 20:10:28: remote 1548\n14/09/2020 20:10:45: remote 1262\n14/09/2020 20:10:54: remote 1185\n14/09/2020 20:11:05: remote 1729\n14/09/2020 20:11:10: remote 1695\n14/09/2020 20:11:16: remote 1695\n14/09/2020 20:12:05: emote 733\n14/09/2020 20:13:55: item 11969\n14/09/2020 20:14:14: itemn whip\n14/09/2020 20:14:18: itemn abyssal whip\n14/09/2020 20:15:09: anim 13036\n14/09/2020 20:15:13: anim 12305\n14/09/2020 20:15:17: anim 13055\n14/09/2020 20:26:35: emote 13190\n14/09/2020 20:26:45: emote 13192\n14/09/2020 20:33:38: tele 0,48,51,16,0\n14/09/2020 20:33:39: tele 0,48,51,20,16\n14/09/2020 20:33:39: tele 0,48,51,24,32\n14/09/2020 20:33:40: tele 0,48,51,28,47\n14/09/2020 20:33:40: tele 0,48,51,32,62\n14/09/2020 20:33:41: tele 0,48,52,36,13\n14/09/2020 20:33:42: tele 0,48,52,43,27\n14/09/2020 20:33:42: tele 0,48,52,51,40\n14/09/2020 20:33:43: tele 0,48,52,59,53\n14/09/2020 20:33:43: tele 0,49,53,3,2\n14/09/2020 20:33:44: tele 0,49,53,10,15\n14/09/2020 20:33:45: tele 0,49,53,17,26\n14/09/2020 20:33:46: tele 0,49,53,24,37\n14/09/2020 20:33:47: tele 0,49,53,31,48\n14/09/2020 20:33:48: tele 0,49,53,36,62\n14/09/2020 20:33:49: tele 0,49,54,26,1\n14/09/2020 20:33:49: tele 0,49,54,15,2\n14/09/2020 20:33:51: tele 0,49,53,3,58\n14/09/2020 20:33:52: tele 0,48,53,62,55\n14/09/2020 20:33:54: tele 0,48,53,63,57\n14/09/2020 20:33:55: tele 1,48,53,63,57\n14/09/2020 20:33:58: tele 2,48,53,63,57\n14/09/2020 20:34:52: remote 1564\n14/09/2020 20:36:04: remote 1569\n14/09/2020 20:36:15: remote 1576\n14/09/2020 20:37:57: tele 2,48,53,55,47\n14/09/2020 20:37:58: tele 2,48,53,45,38\n14/09/2020 20:37:58: tele 2,48,53,36,28\n14/09/2020 20:38:00: tele 2,48,53,25,18\n14/09/2020 20:38:00: tele 2,48,53,18,6\n14/09/2020 20:38:01: tele 2,48,52,13,57\n14/09/2020 20:38:01: tele 2,48,52,14,43\n14/09/2020 20:38:02: tele 2,48,52,16,29\n14/09/2020 20:38:03: tele 2,48,52,18,15\n14/09/2020 20:38:08: tele 2,48,52,15,2\n14/09/2020 20:38:08: tele 2,48,51,10,53\n14/09/2020 20:38:09: tele 2,48,51,5,40\n14/09/2020 20:38:09: tele 2,48,51,3,26\n14/09/2020 20:38:10: tele 2,47,51,63,13\n14/09/2020 20:38:11: tele 2,47,51,57,1\n14/09/2020 20:38:11: tele 2,47,50,50,53\n14/09/2020 20:38:12: tele 2,47,50,41,42\n14/09/2020 20:38:12: tele 2,47,50,32,31\n14/09/2020 20:38:13: tele 2,47,50,20,22\n14/09/2020 20:38:14: tele 2,47,50,7,13\n14/09/2020 20:38:14: tele 2,46,50,56,8\n14/09/2020 20:38:15: tele 2,46,50,43,2\n14/09/2020 20:38:15: tele 2,46,49,28,61\n14/09/2020 20:38:16: tele 2,46,49,12,60\n14/09/2020 20:38:17: tele 2,46,50,0,0\n14/09/2020 20:38:19: tele 2,45,50,60,15\n14/09/2020 20:38:20: tele 2,45,50,59,24\n14/09/2020 20:38:21: tele 2,46,50,1,33\n14/09/2020 20:38:21: tele 2,46,50,14,38\n14/09/2020 20:38:22: tele 2,46,50,27,37\n14/09/2020 20:38:24: tele 2,46,50,26,29\n14/09/2020 20:38:24: tele 1,46,50,26,29\n14/09/2020 20:38:25: tele 0,46,50,26,29\n14/09/2020 20:38:26: tele 0,46,50,14,17\n14/09/2020 20:38:28: tele 0,46,50,13,15\n14/09/2020 20:39:23: tele 0,46,50,12,15\n14/09/2020 20:39:26: tele 0,46,50,3,26\n14/09/2020 20:39:27: tele 0,45,50,57,31\n14/09/2020 20:39:28: tele 0,45,50,54,22\n14/09/2020 20:39:50: remote 1673\n14/09/2020 20:40:09: remote 1695\n14/09/2020 20:40:42: remote 1710\n14/09/2020 20:41:41: remote 1788\n14/09/2020 20:42:08: remote 1841\n14/09/2020 20:42:17: remote 1765\n14/09/2020 22:36:19: tele 0,49,154,13,50\n14/09/2020 23:50:50: tele 0,48,53,63,55\n14/09/2020 23:50:53: tele 1,48,53,63,55\n14/09/2020 23:50:56: tele 2,48,53,63,55\n14/09/2020 23:51:01: debug\n15/09/2020 00:46:51: anim 25\n15/09/2020 00:47:06: tele 2,49,53,4,55\n15/09/2020 00:47:08: tele 2,49,53,2,55\n15/09/2020 00:47:09: tele 2,49,53,3,55\n15/09/2020 00:47:09: tele 2,49,53,2,55\n15/09/2020 00:47:10: tele 2,49,53,3,55\n15/09/2020 00:47:11: tele 2,49,53,2,55\n15/09/2020 00:47:13: tele 2,49,53,1,54\n15/09/2020 00:49:45: tele 1,49,53,1,54\n15/09/2020 00:49:46: tele 0,49,53,1,54\n15/09/2020 00:50:11: tele 0,49,53,10,36\n15/09/2020 00:50:12: tele 0,49,53,20,22\n15/09/2020 00:50:13: tele 0,49,53,33,34\n15/09/2020 00:50:14: tele 0,49,53,49,40\n15/09/2020 00:50:17: tele 0,49,53,49,44\n15/09/2020 00:52:10: anim 12175\n15/09/2020 00:52:15: anim 12174\n15/09/2020 11:58:07: item 14000\n15/09/2020 11:58:16: item 15005\n15/09/2020 11:58:32: item 17333\n15/09/2020 11:58:38: item 16777\n15/09/2020 11:58:42: item 14000\n15/09/2020 11:58:45: item 14002\n15/09/2020 11:58:48: item 15002\n15/09/2020 11:58:57: item 15009\n15/09/2020 11:59:05: item 16002\n15/09/2020 11:59:08: item 15888\n15/09/2020 11:59:11: item 15444\n15/09/2020 11:59:15: item 15111\n15/09/2020 11:59:31: tele 0,49,53,50,36\n15/09/2020 11:59:44: tele 0,50,53,6,37\n15/09/2020 11:59:45: tele 0,50,53,8,37\n15/09/2020 12:02:31: pnpc 8926\n15/09/2020 12:02:38: pnpc -1\n15/09/2020 12:03:17: pnpc 9040\n15/09/2020 12:03:49: pnpc 9172\n15/09/2020 12:06:31: pnpc 9235\n15/09/2020 12:07:13: pnpc 9278\n15/09/2020 12:07:38: pnpc 9176\n15/09/2020 12:08:39: pnpc 8719\n15/09/2020 12:09:05: pnpc 8696\n15/09/2020 12:09:09: pnpc 8695\n15/09/2020 12:09:17: pnpc 8697\n15/09/2020 12:09:22: pnpc 8697\n15/09/2020 12:09:43: pnpc 8689\n15/09/2020 12:39:59: tele 0,46,50,13,16\n15/09/2020 12:41:10: empty\n15/09/2020 12:41:16: empty\n15/09/2020 12:41:20: itemn rune 2h\n15/09/2020 12:41:25: itemn rune scimitar\n15/09/2020 12:41:42: tele 0,46,50,26,20\n15/09/2020 12:41:43: tele 0,46,50,39,26\n15/09/2020 12:42:29: tele 0,47,49,7,48\n15/09/2020 12:43:45: tele 0,46,49,61,47\n15/09/2020 12:43:47: tele 0,47,49,1,60\n15/09/2020 12:43:48: tele 0,47,50,5,9\n15/09/2020 12:43:49: tele 0,47,50,9,22\n15/09/2020 12:43:49: tele 0,47,50,13,35\n15/09/2020 12:43:50: tele 0,47,50,17,48\n15/09/2020 12:43:51: tele 0,47,50,21,61\n15/09/2020 12:43:52: tele 0,47,51,27,9\n15/09/2020 12:43:53: tele 0,47,51,34,11\n15/09/2020 12:43:54: tele 0,47,51,47,10\n15/09/2020 12:43:55: tele 0,47,51,63,4\n15/09/2020 12:44:01: tele 0,48,50,0,60\n15/09/2020 12:44:03: tele 0,48,50,4,51\n15/09/2020 12:44:11: tele 0,48,50,7,49\n15/09/2020 12:44:25: itemn rune full helmet\n15/09/2020 12:44:30: itemn rune full helm\n15/09/2020 12:44:40: itemn rune platebodyu\n15/09/2020 12:44:44: itemn rune platebody\n15/09/2020 12:44:49: quests\n15/09/2020 12:44:53: allquest\n15/09/2020 12:45:07: itemn rune platelegs\n15/09/2020 12:48:16: tween\n15/09/2020 12:48:25: tween\n15/09/2020 12:48:47: tele 0,46,52,2,51\n15/09/2020 12:48:56: item 995 99999\n15/09/2020 12:50:37: tele 0,46,53,27,1\n15/09/2020 12:50:37: tele 0,46,53,34,13\n15/09/2020 12:50:38: tele 0,46,53,41,25\n15/09/2020 12:50:39: tele 0,46,53,48,37\n15/09/2020 12:50:54: tele 0,39,44,60,28\n15/09/2020 12:51:08: tele 0,39,44,60,25\n15/09/2020 12:51:10: tele 0,39,44,60,25\n15/09/2020 12:51:17: tele 0,39,44,58,30\n15/09/2020 12:51:26: anim 9933\n15/09/2020 12:51:30: anim 13000\n15/09/2020 12:51:32: anim 13005\n15/09/2020 12:51:37: anim 12222\n15/09/2020 12:51:41: anim 16000\n15/09/2020 12:51:44: anim -1\n15/09/2020 12:51:50: anim 14888\n15/09/2020 12:51:54: anim 13888\n15/09/2020 12:51:56: anim 12333\n15/09/2020 12:52:01: anim 12888\n15/09/2020 12:52:06: anim 13111\n15/09/2020 12:52:09: anim 13444\n15/09/2020 12:52:12: anim -1\n15/09/2020 12:52:15: render 1422\n15/09/2020 12:52:19: render 1555\n15/09/2020 12:52:24: render 1344\n15/09/2020 12:52:26: render 1345\n15/09/2020 12:52:30: render 1346\n15/09/2020 12:52:34: render 1347\n15/09/2020 12:52:37: render 1349\n15/09/2020 12:52:42: render 1401\n15/09/2020 12:52:44: render 1405\n15/09/2020 12:52:47: render 1506\n15/09/2020 12:52:51: render 1507\n15/09/2020 12:52:55: render 1407\n15/09/2020 12:52:58: render 1406\n15/09/2020 12:53:34: remote 1666\n15/09/2020 12:53:38: remote 1573\n15/09/2020 12:53:41: remote -1\n15/09/2020 12:53:47: emote -1\n15/09/2020 12:53:48: emote 1\n15/09/2020 12:53:50: anim 1\n15/09/2020 12:53:55: remote 1547\n15/09/2020 12:53:57: remote 2\n15/09/2020 12:54:01: remote 1427\n15/09/2020 12:54:20: remote 1672\n15/09/2020 12:54:26: remote 1396\n15/09/2020 12:54:37: remote 1569\n15/09/2020 12:54:42: remote 1564\n15/09/2020 12:54:47: remote 1545\n15/09/2020 12:54:55: remote 1429\n15/09/2020 12:55:19: remote 1382\n15/09/2020 12:55:27: remote 1383\n15/09/2020 12:55:38: remote 1482\n15/09/2020 12:55:43: remote 1549\n15/09/2020 12:55:46: emote 1549\n15/09/2020 12:55:48: remote 2\n15/09/2020 12:55:51: remote 4\n15/09/2020 12:55:54: remote 12\n15/09/2020 12:55:56: remote 15\n15/09/2020 12:55:59: remote 18\n15/09/2020 12:56:01: remote 333\n15/09/2020 12:56:04: remote -1\n15/09/2020 12:56:08: remote 899\n15/09/2020 12:56:34: remote 871\n15/09/2020 12:56:48: remote 1652\n15/09/2020 12:57:00: remote 2003\n15/09/2020 12:57:11: remote 2005\n15/09/2020 12:57:28: remote 2019\n15/09/2020 12:57:35: pnpc 2\n15/09/2020 12:57:46: remote 2043\n15/09/2020 12:57:50: remote -1\n15/09/2020 12:57:53: pnpc -1\n15/09/2020 12:58:10: remote 1094\n15/09/2020 12:58:16: remote 1095\n15/09/2020 12:58:30: remote 1114\n15/09/2020 12:58:37: remote 1121\n15/09/2020 12:58:47: remote 1124\n15/09/2020 12:59:10: remote 1171\n15/09/2020 13:00:00: remote 1485\n15/09/2020 13:00:04: remote 1222\n15/09/2020 13:00:14: remote 1386\n15/09/2020 13:00:38: pnpc -1\n15/09/2020 13:01:03: itemn saradomin godsword\n15/09/2020 13:01:27: tele 0,50,50,22,19\n15/09/2020 13:02:12: remote 78\n15/09/2020 13:02:22: remote 124\n15/09/2020 13:02:31: remote 220\n15/09/2020 13:02:40: remote 326\n15/09/2020 13:02:50: remote 2052\n15/09/2020 13:02:57: remote 366\n15/09/2020 13:03:13: remote 124\n15/09/2020 13:03:19: remote 152\n15/09/2020 13:03:34: remote 79\n15/09/2020 13:04:01: remote 40\n15/09/2020 13:04:23: tele 0,48,54,21,15\n15/09/2020 13:04:31: remote 39\n15/09/2020 13:04:35: remote 31\n15/09/2020 13:04:42: remote 28\n15/09/2020 13:04:45: remote 26\n15/09/2020 13:04:47: remote 28\n15/09/2020 13:04:59: tele 0,48,154,33,53\n15/09/2020 13:05:00: tele 0,48,154,47,59\n15/09/2020 13:05:00: tele 0,48,154,62,56\n15/09/2020 13:05:01: tele 0,49,154,10,51\n15/09/2020 13:05:22: tele 0,50,50,22,17\n15/09/2020 13:05:29: itemn zamorakian spear\n15/09/2020 13:06:04: itemn dragon platebody\n15/09/2020 13:06:14: itemn attack cape\n15/09/2020 13:06:25: itemn fury\n15/09/2020 13:06:29: itemn amulet of fury\n15/09/2020 13:06:36: itemn dragon full helm\n15/09/2020 13:06:44: itemn dragon platelegs\n15/09/2020 13:06:53: itemn dragon gauntlets\n15/09/2020 13:07:00: itemn dragon boots\n15/09/2020 13:07:29: empty\n15/09/2020 13:07:33: itemn red partyhat\n15/09/2020 13:07:59: itemn dragon chainbody\n15/09/2020 13:31:24: tele 0,50,50,21,14\n15/09/2020 13:31:37: tele 0,46,61,60,29\n15/09/2020 13:35:40: tele 0,48,53,12,25\n15/09/2020 13:35:46: itemn rune pickaxe\n15/09/2020 13:36:13: tele 0,48,53,14,28\n15/09/2020 13:47:55: itemn dragon scimitar\n15/09/2020 13:48:02: tele 0,56,54,19,32\n17/09/2020 14:46:11: tele 0,41,51,24,27\n17/09/2020 14:46:18: tele 0,44,49,38,27\n17/09/2020 14:46:26: tele 0,50,50,23,18\n17/09/2020 14:46:39: tele 0,50,50,24,37\n17/09/2020 14:47:17: tele 0,50,48,60,34\n17/09/2020 14:47:22: tele 0,50,50,23,17\n17/09/2020 14:52:10: tele 0,46,51,37,13\n17/09/2020 14:52:16: tele 0,50,50,22,17\n17/09/2020 14:52:43: tele 0,46,50,12,15\n17/09/2020 14:53:20: tele 0,44,50,20,35\n17/09/2020 14:53:35: tele 0,43,45,24,13\n17/09/2020 14:54:00: tele 0,50,50,23,19\n17/09/2020 14:54:05: tele 0,50,50,36,25\n17/09/2020 14:55:14: tele 0,50,50,24,20\n17/09/2020 14:55:16: tele 0,50,50,13,31\n17/09/2020 14:55:17: tele 0,49,50,62,38\n17/09/2020 14:55:19: tele 0,49,50,53,38\n17/09/2020 14:55:21: tele 0,49,50,47,32\n17/09/2020 14:55:24: tele 0,49,50,62,31\n17/09/2020 14:55:25: tele 0,50,50,13,26\n17/09/2020 14:55:26: tele 0,50,50,27,26\n17/09/2020 14:55:28: tele 0,50,50,31,24\n17/09/2020 14:55:33: tele 0,50,50,46,27\n17/09/2020 14:55:33: tele 0,50,50,60,35\n17/09/2020 14:55:35: tele 0,50,50,63,32\n17/09/2020 14:55:36: tele 0,51,50,1,34\n17/09/2020 14:55:38: tele 0,51,50,0,42\n17/09/2020 14:55:44: tele 0,50,50,52,34\n17/09/2020 14:55:45: tele 0,50,50,40,26\n17/09/2020 14:55:46: tele 0,50,50,32,20\n17/09/2020 14:55:47: tele 0,50,50,21,18\n17/09/2020 14:56:56: tele 0,51,48,33,26\n17/09/2020 14:59:28: tele 0,50,50,22,18\n17/09/2020 15:17:37: tele 0,50,50,9,10\n17/09/2020 15:17:44: tele 2,50,50,8,20\n17/09/2020 15:19:24: debug\n17/09/2020 18:26:56: tele 0,51,50,16,16\n17/09/2020 19:34:00: itemn brawling gloves\n17/09/2020 19:34:07: itemn brawling gloves (melee)\n17/09/2020 19:34:19: empty\n17/09/2020 19:34:27: itemn bandos chest plate\n17/09/2020 19:34:31: itemn bandos chestplate\n17/09/2020 19:34:38: itemn bandos tassets\n17/09/2020 19:34:45: itemn bandos boots\n17/09/2020 19:34:54: itemn dragonfire shield\n17/09/2020 19:35:04: itemn abyssal whip\n17/09/2020 19:35:38: itemn third-age full helm\n17/09/2020 19:35:50: itemn verac\'s helm\n17/09/2020 19:36:02: itemn fire cape\n17/09/2020 19:36:14: tele 0,51,61,22,22\n17/09/2020 19:36:35: tele 0,51,61,18,19\n17/09/2020 19:37:05: debug\n17/09/2020 19:37:37: god\n17/09/2020 19:37:39: hp\n17/09/2020 19:37:41: 1hko\n17/09/2020 19:37:53: tele 0,51,61,10,22\n17/09/2020 20:12:12: remtoe 211\n17/09/2020 20:12:16: remote 211\n17/09/2020 20:38:04: tele 0,41,63,15,7\n17/09/2020 20:38:08: tele 1,41,63,15,7\n17/09/2020 20:38:08: tele 2,41,63,15,7\n17/09/2020 20:38:09: tele 1,41,63,15,7\n17/09/2020 20:39:30: tele 1,41,63,16,12\n17/09/2020 20:40:54: pnpc 7895\n17/09/2020 20:40:58: pnpc 7896\n17/09/2020 20:41:02: pnpc 7897\n17/09/2020 20:41:07: pnpc 8093\n17/09/2020 20:41:12: pnpc 8095\n17/09/2020 20:41:17: pnpc 8094\n17/09/2020 20:41:22: pnpc 8097\n17/09/2020 20:41:26: pnpc 8098\n17/09/2020 20:41:30: pnpc 8099\n17/09/2020 20:41:34: pnpc -1\n17/09/2020 20:41:38: pnpc 8100\n17/09/2020 20:41:42: pnpc 8882\n17/09/2020 20:41:46: pnpc 8690\n17/09/2020 20:41:52: pnpc 8663\n17/09/2020 20:42:18: pnpc -1\n17/09/2020 20:42:55: tele 0,41,63,12,22\n17/09/2020 20:42:57: tele 0,41,63,11,23\n17/09/2020 20:43:39: tele 0,41,63,6,25\n17/09/2020 20:43:39: tele 1,41,63,6,25\n17/09/2020 20:43:44: tele 1,41,63,7,25\n17/09/2020 20:43:50: tele 1,41,63,7,27\n17/09/2020 20:43:52: tele 1,41,63,9,27\n17/09/2020 20:43:54: tele 1,41,63,11,27\n17/09/2020 20:43:56: tele 1,41,63,11,29\n17/09/2020 20:43:57: tele 1,41,63,11,31\n17/09/2020 20:43:58: tele 1,41,63,12,33\n17/09/2020 21:03:44: tele 0,50,50,30,31\n17/09/2020 21:03:46: tele 0,50,50,23,20\n', '', '', '', ''),
-('woahscam', '', '', '', '22/09/2020 12:43:45: 127.0.0.1\n22/09/2020 12:43:45: I116264190\n22/09/2020 12:43:45: 30-9C-23-87-89-8E\n', '', '', '', '', '');
-
--- --------------------------------------------------------
-
---
--- Table structure for table `punishments`
---
-
-CREATE TABLE `punishments` (
- `address` varchar(100) NOT NULL DEFAULT '',
- `type` int(11) NOT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `security`
---
-
-CREATE TABLE `security` (
- `id` int(11) UNSIGNED NOT NULL,
- `ip` longtext NOT NULL,
- `type` int(11) NOT NULL,
- `timestamp` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `sys_logs`
---
-
-CREATE TABLE `sys_logs` (
- `id` int(11) UNSIGNED NOT NULL,
- `message` longtext NOT NULL,
- `log_type` int(2) DEFAULT NULL,
- `timestamp` timestamp NOT NULL DEFAULT current_timestamp(),
- `IP_ADDRESS` varchar(30) DEFAULT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `validations`
---
-
-CREATE TABLE `validations` (
- `id` int(11) UNSIGNED NOT NULL,
- `username` varchar(20) DEFAULT NULL,
- `code` varchar(30) DEFAULT NULL,
- `type` int(2) NOT NULL DEFAULT 0,
- `timestamp` timestamp NOT NULL DEFAULT current_timestamp(),
- `value` longtext NOT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `votes`
---
-
-CREATE TABLE `votes` (
- `id` int(11) NOT NULL,
- `username` varchar(50) NOT NULL DEFAULT '',
- `site` varchar(50) NOT NULL,
- `timestamp` timestamp NOT NULL DEFAULT current_timestamp()
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
---
--- Table structure for table `voting_sites`
---
-
-CREATE TABLE `voting_sites` (
- `name` varchar(20) NOT NULL DEFAULT 'Null',
- `wait` int(5) NOT NULL DEFAULT 12,
- `credits` int(2) NOT NULL DEFAULT 1,
- `link` varchar(500) NOT NULL DEFAULT 'http://ariosrsps.com',
- `get_command` varchar(20) NOT NULL DEFAULT '',
- `host_name` varchar(500) NOT NULL DEFAULT ''
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-
--- --------------------------------------------------------
-
--
-- Table structure for table `worlds`
--
@@ -348,72 +100,12 @@ INSERT INTO `worlds` (`world`, `ip`, `players`, `country`, `member`, `revision`,
-- Indexes for dumped tables
--
---
--- Indexes for table `dev_log`
---
-ALTER TABLE `dev_log`
- ADD PRIMARY KEY (`id`);
-
---
--- Indexes for table `highscores`
---
-ALTER TABLE `highscores`
- ADD PRIMARY KEY (`id`);
-
--
-- Indexes for table `members`
--
ALTER TABLE `members`
ADD PRIMARY KEY (`UID`);
---
--- Indexes for table `messages`
---
-ALTER TABLE `messages`
- ADD PRIMARY KEY (`id`);
-
---
--- Indexes for table `perks`
---
-ALTER TABLE `perks`
- ADD PRIMARY KEY (`product_id`);
-
---
--- Indexes for table `player_logs`
---
-ALTER TABLE `player_logs`
- ADD PRIMARY KEY (`username`);
-
---
--- Indexes for table `security`
---
-ALTER TABLE `security`
- ADD PRIMARY KEY (`id`);
-
---
--- Indexes for table `sys_logs`
---
-ALTER TABLE `sys_logs`
- ADD PRIMARY KEY (`id`);
-
---
--- Indexes for table `validations`
---
-ALTER TABLE `validations`
- ADD PRIMARY KEY (`id`);
-
---
--- Indexes for table `votes`
---
-ALTER TABLE `votes`
- ADD KEY `id` (`id`);
-
---
--- Indexes for table `voting_sites`
---
-ALTER TABLE `voting_sites`
- ADD PRIMARY KEY (`name`);
-
--
-- Indexes for table `worlds`
--
@@ -424,61 +116,12 @@ ALTER TABLE `worlds`
-- AUTO_INCREMENT for dumped tables
--
---
--- AUTO_INCREMENT for table `dev_log`
---
-ALTER TABLE `dev_log`
- MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=34;
-
---
--- AUTO_INCREMENT for table `highscores`
---
-ALTER TABLE `highscores`
- MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=12;
-
--
-- AUTO_INCREMENT for table `members`
--
ALTER TABLE `members`
MODIFY `UID` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
---
--- AUTO_INCREMENT for table `messages`
---
-ALTER TABLE `messages`
- MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT;
-
---
--- AUTO_INCREMENT for table `perks`
---
-ALTER TABLE `perks`
- MODIFY `product_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=74;
-
---
--- AUTO_INCREMENT for table `security`
---
-ALTER TABLE `security`
- MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT;
-
---
--- AUTO_INCREMENT for table `sys_logs`
---
-ALTER TABLE `sys_logs`
- MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT;
-
---
--- AUTO_INCREMENT for table `validations`
---
-ALTER TABLE `validations`
- MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT;
-
---
--- AUTO_INCREMENT for table `votes`
---
-ALTER TABLE `votes`
- MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
-COMMIT;
-
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
diff --git a/Server/db_exports/grafana-dashboard.json b/Server/db_exports/grafana-dashboard.json
new file mode 100644
index 000000000..5d4b68c72
--- /dev/null
+++ b/Server/db_exports/grafana-dashboard.json
@@ -0,0 +1,539 @@
+{
+ "__inputs": [
+ {
+ "name": "DS_SQLITE",
+ "label": "SQLite",
+ "description": "",
+ "type": "datasource",
+ "pluginId": "frser-sqlite-datasource",
+ "pluginName": "SQLite"
+ }
+ ],
+ "__elements": {},
+ "__requires": [
+ {
+ "type": "datasource",
+ "id": "frser-sqlite-datasource",
+ "name": "SQLite",
+ "version": "3.3.0"
+ },
+ {
+ "type": "grafana",
+ "id": "grafana",
+ "name": "Grafana",
+ "version": "10.0.1"
+ },
+ {
+ "type": "panel",
+ "id": "timeseries",
+ "name": "Time series",
+ "version": ""
+ }
+ ],
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": {
+ "type": "grafana",
+ "uid": "-- Grafana --"
+ },
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "fiscalYearStartMonth": 0,
+ "graphTooltip": 0,
+ "id": null,
+ "links": [],
+ "liveNow": false,
+ "panels": [
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "description": "",
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "misc_pulses"
+ },
+ "properties": [
+ {
+ "id": "color",
+ "value": {
+ "fixedColor": "purple",
+ "mode": "fixed"
+ }
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "other"
+ },
+ "properties": [
+ {
+ "id": "color",
+ "value": {
+ "fixedColor": "dark-red",
+ "mode": "fixed"
+ }
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "packet_incoming"
+ },
+ "properties": [
+ {
+ "id": "color",
+ "value": {
+ "fixedColor": "super-light-red",
+ "mode": "fixed"
+ }
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 9,
+ "w": 24,
+ "x": 0,
+ "y": 0
+ },
+ "id": 1,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "single",
+ "sort": "none"
+ }
+ },
+ "pluginVersion": "10.0.1",
+ "targets": [
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "queryText": "SELECT * FROM tick_lengths",
+ "queryType": "table",
+ "rawQueryText": "SELECT * FROM tick_lengths",
+ "refId": "A",
+ "timeColumns": [
+ "ts"
+ ]
+ }
+ ],
+ "title": "Tick Time",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 13,
+ "w": 13,
+ "x": 0,
+ "y": 9
+ },
+ "id": 2,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "single",
+ "sort": "none"
+ }
+ },
+ "pluginVersion": "10.0.1",
+ "targets": [
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "queryText": "select * from top_pulses;",
+ "queryType": "table",
+ "rawQueryText": "select * from top_pulses;",
+ "refId": "A",
+ "timeColumns": [
+ "time",
+ "ts"
+ ]
+ }
+ ],
+ "title": "Tick Time By Pulse (Total)",
+ "transformations": [
+ {
+ "id": "extractFields",
+ "options": {
+ "format": "json",
+ "jsonPaths": [
+ {
+ "path": "pulses"
+ }
+ ],
+ "keepTime": false,
+ "replace": false,
+ "source": "pulse_info"
+ }
+ },
+ {
+ "id": "extractFields",
+ "options": {
+ "source": "pulses"
+ }
+ }
+ ],
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 9,
+ "w": 11,
+ "x": 13,
+ "y": 9
+ },
+ "id": 4,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "single",
+ "sort": "none"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "queryText": "SELECT * FROM high_volume_pulses;",
+ "queryType": "table",
+ "rawQueryText": "SELECT * FROM high_volume_pulses;",
+ "refId": "A",
+ "timeColumns": [
+ "time",
+ "ts"
+ ]
+ }
+ ],
+ "title": "High Volume Pulses",
+ "transformations": [
+ {
+ "id": "extractFields",
+ "options": {
+ "format": "json",
+ "source": "pulse_info"
+ }
+ },
+ {
+ "id": "extractFields",
+ "options": {
+ "source": "pulses"
+ }
+ }
+ ],
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "stepBefore",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 4,
+ "w": 11,
+ "x": 13,
+ "y": 18
+ },
+ "id": 3,
+ "options": {
+ "legend": {
+ "calcs": [],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "single",
+ "sort": "none"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "frser-sqlite-datasource",
+ "uid": "${DS_SQLITE}"
+ },
+ "queryText": "SELECT * FROM bot_counts;",
+ "queryType": "table",
+ "rawQueryText": "SELECT * FROM bot_counts;",
+ "refId": "A",
+ "timeColumns": [
+ "time",
+ "ts"
+ ]
+ }
+ ],
+ "title": "Bot Population",
+ "type": "timeseries"
+ }
+ ],
+ "refresh": "1h",
+ "schemaVersion": 38,
+ "style": "dark",
+ "tags": [],
+ "templating": {
+ "list": []
+ },
+ "time": {
+ "from": "now-5m",
+ "to": "now"
+ },
+ "timepicker": {},
+ "timezone": "",
+ "title": "Main",
+ "uid": "ffccf845-00a2-46f2-b0c0-a8b88032c701",
+ "version": 10,
+ "weekStart": ""
+}
\ No newline at end of file
diff --git a/Server/db_exports/testuser.sql b/Server/db_exports/testuser.sql
new file mode 100644
index 000000000..d9d752183
--- /dev/null
+++ b/Server/db_exports/testuser.sql
@@ -0,0 +1,2 @@
+CREATE USER IF NOT EXISTS 2009scapetest@localhost IDENTIFIED BY '2009scapetest';
+GRANT ALL PRIVILEGES ON global.* TO 2009scapetest@localhost;
\ No newline at end of file
diff --git a/Server/detekt.yml b/Server/detekt.yml
new file mode 100644
index 000000000..706aec911
--- /dev/null
+++ b/Server/detekt.yml
@@ -0,0 +1,713 @@
+build:
+ maxIssues: 0
+ excludeCorrectable: false
+ weights:
+ # complexity: 2
+ # LongParameterList: 1
+ # style: 1
+ # comments: 1
+
+config:
+ validation: true
+ warningsAsErrors: false
+ # when writing own rules with new properties, exclude the property path e.g.: 'my_rule_set,.*>.*>[my_property]'
+ excludes: ''
+
+processors:
+ active: true
+ exclude:
+ - 'DetektProgressListener'
+ # - 'KtFileCountProcessor'
+ # - 'PackageCountProcessor'
+ # - 'ClassCountProcessor'
+ # - 'FunctionCountProcessor'
+ # - 'PropertyCountProcessor'
+ # - 'ProjectComplexityProcessor'
+ # - 'ProjectCognitiveComplexityProcessor'
+ # - 'ProjectLLOCProcessor'
+ # - 'ProjectCLOCProcessor'
+ # - 'ProjectLOCProcessor'
+ # - 'ProjectSLOCProcessor'
+ # - 'LicenseHeaderLoaderExtension'
+
+console-reports:
+ active: true
+ exclude:
+ - 'ProjectStatisticsReport'
+ - 'ComplexityReport'
+ - 'NotificationReport'
+ - 'FindingsReport'
+ - 'FileBasedFindingsReport'
+ # - 'LiteFindingsReport'
+
+output-reports:
+ active: true
+ exclude:
+ # - 'TxtOutputReport'
+ # - 'XmlOutputReport'
+ # - 'HtmlOutputReport'
+ # - 'MdOutputReport'
+
+comments:
+ active: true
+ AbsentOrWrongFileLicense:
+ active: false
+ licenseTemplateFile: 'license.template'
+ licenseTemplateIsRegex: false
+ CommentOverPrivateFunction:
+ active: false
+ CommentOverPrivateProperty:
+ active: false
+ DeprecatedBlockTag:
+ active: false
+ EndOfSentenceFormat:
+ active: false
+ endOfSentenceFormat: '([.?!][ \t\n\r\f<])|([.?!:]$)'
+ KDocReferencesNonPublicProperty:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ OutdatedDocumentation:
+ active: false
+ matchTypeParameters: true
+ matchDeclarationsOrder: true
+ allowParamOnConstructorProperties: false
+ UndocumentedPublicClass:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ searchInNestedClass: true
+ searchInInnerClass: true
+ searchInInnerObject: true
+ searchInInnerInterface: true
+ UndocumentedPublicFunction:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ UndocumentedPublicProperty:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+
+complexity:
+ active: true
+ ComplexCondition:
+ active: false
+ threshold: 4
+ ComplexInterface:
+ active: false
+ threshold: 10
+ includeStaticDeclarations: false
+ includePrivateDeclarations: false
+ ComplexMethod:
+ active: false
+ threshold: 15
+ ignoreSingleWhenExpression: false
+ ignoreSimpleWhenEntries: false
+ ignoreNestingFunctions: false
+ nestingFunctions:
+ - 'also'
+ - 'apply'
+ - 'forEach'
+ - 'isNotNull'
+ - 'ifNull'
+ - 'let'
+ - 'run'
+ - 'use'
+ - 'with'
+ LabeledExpression:
+ active: false
+ ignoredLabels: []
+ LargeClass:
+ active: false
+ threshold: 600
+ LongMethod:
+ active: false
+ threshold: 60
+ LongParameterList:
+ active: false
+ functionThreshold: 6
+ constructorThreshold: 7
+ ignoreDefaultParameters: false
+ ignoreDataClasses: true
+ ignoreAnnotatedParameter: []
+ MethodOverloading:
+ active: false
+ threshold: 6
+ NamedArguments:
+ active: false
+ threshold: 3
+ ignoreArgumentsMatchingNames: false
+ NestedBlockDepth:
+ active: false
+ threshold: 4
+ NestedScopeFunctions:
+ active: false
+ threshold: 1
+ functions:
+ - 'kotlin.apply'
+ - 'kotlin.run'
+ - 'kotlin.with'
+ - 'kotlin.let'
+ - 'kotlin.also'
+ ReplaceSafeCallChainWithRun:
+ active: false
+ StringLiteralDuplication:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ threshold: 3
+ ignoreAnnotation: true
+ excludeStringsWithLessThan5Characters: true
+ ignoreStringsRegex: '$^'
+ TooManyFunctions:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ thresholdInFiles: 11
+ thresholdInClasses: 11
+ thresholdInInterfaces: 11
+ thresholdInObjects: 11
+ thresholdInEnums: 11
+ ignoreDeprecated: false
+ ignorePrivate: false
+ ignoreOverridden: false
+
+coroutines:
+ active: true
+ GlobalCoroutineUsage:
+ active: false
+ InjectDispatcher:
+ active: true
+ dispatcherNames:
+ - 'IO'
+ - 'Default'
+ - 'Unconfined'
+ RedundantSuspendModifier:
+ active: true
+ SleepInsteadOfDelay:
+ active: true
+ SuspendFunWithCoroutineScopeReceiver:
+ active: false
+ SuspendFunWithFlowReturnType:
+ active: true
+
+empty-blocks:
+ active: false
+ EmptyCatchBlock:
+ active: true
+ allowedExceptionNameRegex: '_|(ignore|expected).*'
+ EmptyClassBlock:
+ active: true
+ EmptyDefaultConstructor:
+ active: true
+ EmptyDoWhileBlock:
+ active: true
+ EmptyElseBlock:
+ active: true
+ EmptyFinallyBlock:
+ active: true
+ EmptyForBlock:
+ active: true
+ EmptyFunctionBlock:
+ active: true
+ ignoreOverridden: false
+ EmptyIfBlock:
+ active: true
+ EmptyInitBlock:
+ active: true
+ EmptyKtFile:
+ active: true
+ EmptySecondaryConstructor:
+ active: true
+ EmptyTryBlock:
+ active: true
+ EmptyWhenBlock:
+ active: true
+ EmptyWhileBlock:
+ active: true
+
+exceptions:
+ active: true
+ ExceptionRaisedInUnexpectedLocation:
+ active: true
+ methodNames:
+ - 'equals'
+ - 'finalize'
+ - 'hashCode'
+ - 'toString'
+ InstanceOfCheckForException:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ NotImplementedDeclaration:
+ active: false
+ ObjectExtendsThrowable:
+ active: false
+ PrintStackTrace:
+ active: false
+ RethrowCaughtException:
+ active: true
+ ReturnFromFinally:
+ active: true
+ ignoreLabeled: false
+ SwallowedException:
+ active: false
+ ignoredExceptionTypes:
+ - 'InterruptedException'
+ - 'MalformedURLException'
+ - 'NumberFormatException'
+ - 'ParseException'
+ allowedExceptionNameRegex: '_|(ignore|expected).*'
+ ThrowingExceptionFromFinally:
+ active: true
+ ThrowingExceptionInMain:
+ active: false
+ ThrowingExceptionsWithoutMessageOrCause:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ exceptions:
+ - 'ArrayIndexOutOfBoundsException'
+ - 'Exception'
+ - 'IllegalArgumentException'
+ - 'IllegalMonitorStateException'
+ - 'IllegalStateException'
+ - 'IndexOutOfBoundsException'
+ - 'NullPointerException'
+ - 'RuntimeException'
+ - 'Throwable'
+ ThrowingNewInstanceOfSameException:
+ active: true
+ TooGenericExceptionCaught:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ exceptionNames:
+ - 'ArrayIndexOutOfBoundsException'
+ - 'Error'
+ - 'Exception'
+ - 'IllegalMonitorStateException'
+ - 'IndexOutOfBoundsException'
+ - 'NullPointerException'
+ - 'RuntimeException'
+ - 'Throwable'
+ allowedExceptionNameRegex: '_|(ignore|expected).*'
+ TooGenericExceptionThrown:
+ active: false
+ exceptionNames:
+ - 'Error'
+ - 'Exception'
+ - 'RuntimeException'
+ - 'Throwable'
+
+naming:
+ active: true
+ BooleanPropertyNaming:
+ active: false
+ allowedPattern: '^(is|has|are)'
+ ignoreOverridden: true
+ ClassNaming:
+ active: false
+ classPattern: '[A-Z][a-zA-Z0-9]*'
+ ConstructorParameterNaming:
+ active: false
+ parameterPattern: '[a-z][A-Za-z0-9]*'
+ privateParameterPattern: '[a-z][A-Za-z0-9]*'
+ excludeClassPattern: '$^'
+ ignoreOverridden: true
+ EnumNaming:
+ active: true
+ enumEntryPattern: '[A-Z][_a-zA-Z0-9]*'
+ ForbiddenClassName:
+ active: false
+ forbiddenName: []
+ FunctionMaxLength:
+ active: false
+ maximumFunctionNameLength: 30
+ FunctionMinLength:
+ active: false
+ minimumFunctionNameLength: 3
+ FunctionNaming:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ functionPattern: '[a-z][a-zA-Z0-9]*'
+ excludeClassPattern: '$^'
+ ignoreOverridden: true
+ FunctionParameterNaming:
+ active: false
+ parameterPattern: '[a-z][A-Za-z0-9]*'
+ excludeClassPattern: '$^'
+ ignoreOverridden: true
+ InvalidPackageDeclaration:
+ active: false
+ rootPackage: ''
+ requireRootInDeclaration: false
+ LambdaParameterNaming:
+ active: false
+ parameterPattern: '[a-z][A-Za-z0-9]*|_'
+ MatchingDeclarationName:
+ active: false
+ mustBeFirst: true
+ MemberNameEqualsClassName:
+ active: false
+ ignoreOverridden: true
+ NoNameShadowing:
+ active: true
+ NonBooleanPropertyPrefixedWithIs:
+ active: false
+ ObjectPropertyNaming:
+ active: true
+ constantPattern: '[A-Za-z][_A-Za-z0-9]*'
+ propertyPattern: '[A-Za-z][_A-Za-z0-9]*'
+ privatePropertyPattern: '(_)?[A-Za-z][_A-Za-z0-9]*'
+ PackageNaming:
+ active: false
+ packagePattern: '[a-z]+(\.[a-z][A-Za-z0-9]*)*'
+ TopLevelPropertyNaming:
+ active: false
+ constantPattern: '[A-Z][_A-Z0-9]*'
+ propertyPattern: '[A-Za-z][_A-Za-z0-9]*'
+ privatePropertyPattern: '_?[A-Za-z][_A-Za-z0-9]*'
+ VariableMaxLength:
+ active: false
+ maximumVariableNameLength: 64
+ VariableMinLength:
+ active: false
+ minimumVariableNameLength: 1
+ VariableNaming:
+ active: false
+ variablePattern: '[a-z][A-Za-z0-9]*'
+ privateVariablePattern: '(_)?[a-z][A-Za-z0-9]*'
+ excludeClassPattern: '$^'
+ ignoreOverridden: true
+
+performance:
+ active: true
+ ArrayPrimitive:
+ active: false
+ CouldBeSequence:
+ active: false
+ threshold: 3
+ ForEachOnRange:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ SpreadOperator:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ UnnecessaryTemporaryInstantiation:
+ active: true
+
+potential-bugs:
+ active: true
+ AvoidReferentialEquality:
+ active: true
+ forbiddenTypePatterns:
+ - 'kotlin.String'
+ CastToNullableType:
+ active: false
+ Deprecation:
+ active: false
+ DontDowncastCollectionTypes:
+ active: false
+ DoubleMutabilityForCollection:
+ active: true
+ mutableTypes:
+ - 'kotlin.collections.MutableList'
+ - 'kotlin.collections.MutableMap'
+ - 'kotlin.collections.MutableSet'
+ - 'java.util.ArrayList'
+ - 'java.util.LinkedHashSet'
+ - 'java.util.HashSet'
+ - 'java.util.LinkedHashMap'
+ - 'java.util.HashMap'
+ DuplicateCaseInWhenExpression:
+ active: true
+ ElseCaseInsteadOfExhaustiveWhen:
+ active: false
+ EqualsAlwaysReturnsTrueOrFalse:
+ active: true
+ EqualsWithHashCodeExist:
+ active: true
+ ExitOutsideMain:
+ active: false
+ ExplicitGarbageCollectionCall:
+ active: false
+ HasPlatformType:
+ active: true
+ IgnoredReturnValue:
+ active: true
+ restrictToAnnotatedMethods: true
+ returnValueAnnotations:
+ - '*.CheckResult'
+ - '*.CheckReturnValue'
+ - 'com.google.errorprone.annotations.CheckReturnValue'
+ ignoreReturnValueAnnotations:
+ - '*.CanIgnoreReturnValue'
+ ignoreFunctionCall: []
+ ImplicitDefaultLocale:
+ active: false
+ ImplicitUnitReturnType:
+ active: false
+ allowExplicitReturnType: true
+ InvalidRange:
+ active: true
+ IteratorHasNextCallsNextMethod:
+ active: true
+ IteratorNotThrowingNoSuchElementException:
+ active: true
+ LateinitUsage:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ ignoreOnClassesPattern: ''
+ MapGetWithNotNullAssertionOperator:
+ active: true
+ MissingPackageDeclaration:
+ active: false
+ excludes: ['**/*.kts']
+ MissingWhenCase:
+ active: true
+ allowElseExpression: true
+ NullCheckOnMutableProperty:
+ active: false
+ NullableToStringCall:
+ active: false
+ RedundantElseInWhen:
+ active: true
+ UnconditionalJumpStatementInLoop:
+ active: false
+ UnnecessaryNotNullOperator:
+ active: true
+ UnnecessarySafeCall:
+ active: true
+ UnreachableCatchBlock:
+ active: true
+ UnreachableCode:
+ active: true
+ UnsafeCallOnNullableType:
+ active: true
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ UnsafeCast:
+ active: true
+ UnusedUnaryOperator:
+ active: true
+ UselessPostfixExpression:
+ active: false
+ WrongEqualsTypeParameter:
+ active: true
+
+style:
+ active: true
+ CanBeNonNullable:
+ active: false
+ CascadingCallWrapping:
+ active: false
+ includeElvis: true
+ ClassOrdering:
+ active: false
+ CollapsibleIfStatements:
+ active: false
+ DataClassContainsFunctions:
+ active: false
+ conversionFunctionPrefix: 'to'
+ DataClassShouldBeImmutable:
+ active: false
+ DestructuringDeclarationWithTooManyEntries:
+ active: true
+ maxDestructuringEntries: 3
+ EqualsNullCall:
+ active: true
+ EqualsOnSignatureLine:
+ active: false
+ ExplicitCollectionElementAccessMethod:
+ active: false
+ ExplicitItLambdaParameter:
+ active: false
+ ExpressionBodySyntax:
+ active: false
+ includeLineWrapping: false
+ ForbiddenComment:
+ active: false
+ values:
+ - 'FIXME:'
+ - 'STOPSHIP:'
+ - 'TODO:'
+ allowedPatterns: ''
+ customMessage: ''
+ ForbiddenImport:
+ active: false
+ imports: []
+ forbiddenPatterns: ''
+ ForbiddenMethodCall:
+ active: false
+ methods:
+ - 'kotlin.io.print'
+ - 'kotlin.io.println'
+ ForbiddenPublicDataClass:
+ active: true
+ excludes: ['**']
+ ignorePackages:
+ - '*.internal'
+ - '*.internal.*'
+ ForbiddenSuppress:
+ active: false
+ rules: []
+ ForbiddenVoid:
+ active: true
+ ignoreOverridden: false
+ ignoreUsageInGenerics: false
+ FunctionOnlyReturningConstant:
+ active: false
+ ignoreOverridableFunction: true
+ ignoreActualFunction: true
+ excludedFunctions: ''
+ LibraryCodeMustSpecifyReturnType:
+ active: true
+ excludes: ['**']
+ LibraryEntitiesShouldNotBePublic:
+ active: true
+ excludes: ['**']
+ LoopWithTooManyJumpStatements:
+ active: false
+ maxJumpCount: 1
+ MagicNumber:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**', '**/*.kts']
+ ignoreNumbers:
+ - '-1'
+ - '0'
+ - '1'
+ - '2'
+ ignoreHashCodeFunction: true
+ ignorePropertyDeclaration: false
+ ignoreLocalVariableDeclaration: false
+ ignoreConstantDeclaration: true
+ ignoreCompanionObjectPropertyDeclaration: true
+ ignoreAnnotation: false
+ ignoreNamedArgument: true
+ ignoreEnums: false
+ ignoreRanges: false
+ ignoreExtensionFunctions: true
+ MandatoryBracesIfStatements:
+ active: false
+ MandatoryBracesLoops:
+ active: false
+ MaxChainedCallsOnSameLine:
+ active: false
+ maxChainedCalls: 5
+ MaxLineLength:
+ active: false
+ maxLineLength: 120
+ excludePackageStatements: true
+ excludeImportStatements: true
+ excludeCommentStatements: false
+ MayBeConst:
+ active: false
+ ModifierOrder:
+ active: false
+ MultilineLambdaItParameter:
+ active: false
+ NestedClassesVisibility:
+ active: true
+ NewLineAtEndOfFile:
+ active: false
+ NoTabs:
+ active: false
+ NullableBooleanCheck:
+ active: false
+ ObjectLiteralToLambda:
+ active: true
+ OptionalAbstractKeyword:
+ active: false
+ OptionalUnit:
+ active: false
+ OptionalWhenBraces:
+ active: false
+ PreferToOverPairSyntax:
+ active: false
+ ProtectedMemberInFinalClass:
+ active: true
+ RedundantExplicitType:
+ active: false
+ RedundantHigherOrderMapUsage:
+ active: true
+ RedundantVisibilityModifierRule:
+ active: false
+ ReturnCount:
+ active: false
+ max: 2
+ excludedFunctions: 'equals'
+ excludeLabeled: false
+ excludeReturnFromLambda: true
+ excludeGuardClauses: false
+ SafeCast:
+ active: true
+ SerialVersionUIDInSerializableClass:
+ active: true
+ SpacingBetweenPackageAndImports:
+ active: false
+ ThrowsCount:
+ active: false
+ max: 2
+ excludeGuardClauses: false
+ TrailingWhitespace:
+ active: false
+ UnderscoresInNumericLiterals:
+ active: false
+ acceptableLength: 4
+ allowNonStandardGrouping: false
+ UnnecessaryAbstractClass:
+ active: true
+ UnnecessaryAnnotationUseSiteTarget:
+ active: false
+ UnnecessaryApply:
+ active: true
+ UnnecessaryBackticks:
+ active: false
+ UnnecessaryFilter:
+ active: true
+ UnnecessaryInheritance:
+ active: true
+ UnnecessaryInnerClass:
+ active: false
+ UnnecessaryLet:
+ active: false
+ UnnecessaryParentheses:
+ active: false
+ UntilInsteadOfRangeTo:
+ active: false
+ UnusedImports:
+ active: false
+ UnusedPrivateClass:
+ active: false
+ UnusedPrivateMember:
+ active: false
+ allowedNames: '(_|ignored|expected|serialVersionUID)'
+ UseAnyOrNoneInsteadOfFind:
+ active: true
+ UseArrayLiteralsInAnnotations:
+ active: true
+ UseCheckNotNull:
+ active: true
+ UseCheckOrError:
+ active: false
+ UseDataClass:
+ active: false
+ allowVars: false
+ UseEmptyCounterpart:
+ active: false
+ UseIfEmptyOrIfBlank:
+ active: false
+ UseIfInsteadOfWhen:
+ active: false
+ UseIsNullOrEmpty:
+ active: true
+ UseOrEmpty:
+ active: true
+ UseRequire:
+ active: false
+ UseRequireNotNull:
+ active: false
+ UselessCallOnNotNull:
+ active: true
+ UtilityClassWithPublicConstructor:
+ active: false
+ VarCouldBeVal:
+ active: true
+ ignoreLateinitVar: false
+ WildcardImport:
+ active: false
+ excludes: ['**/test/**', '**/androidTest/**', '**/commonTest/**', '**/jvmTest/**', '**/jsTest/**', '**/iosTest/**']
+ excludeImports:
+ - 'java.util.*'
diff --git a/Server/pom.xml b/Server/pom.xml
index 7bcfbba9b..f3cc5f0ac 100644
--- a/Server/pom.xml
+++ b/Server/pom.xml
@@ -5,10 +5,10 @@
server
1.0.0
- rs09.Server
+ core.Server
true
- 1.6.21
- 1.6
+ 1.8.20
+ 11
5.7.0
11
11
@@ -16,7 +16,7 @@
org.jetbrains.kotlin
- kotlin-stdlib-jdk8
+ kotlin-stdlib
${kotlin.version}
compile
@@ -57,15 +57,9 @@
test
- org.rs09
- consts
- 1.4
- compile
-
-
- org.rs09
- primextends
- 1.0
+ org.rs09.consts
+ ConstLib
+ [1.4.0,)
compile
@@ -90,15 +84,24 @@
2.0.0-beta6
compile
+
+ com.google.errorprone
+ error_prone_annotations
+ 2.9.0
+ compile
+
+ src/main
+ src/test
org.apache.maven.plugins
maven-install-plugin
+ 3.0.1
install-consts
@@ -138,7 +141,7 @@
org.apache.maven.plugins
maven-assembly-plugin
- 3.1.1
+ 3.4.2
@@ -172,8 +175,7 @@
- ${project.basedir}/src/main/kotlin
- ${project.basedir}/src/main/java
+ ${project.basedir}/src/main
@@ -191,9 +193,26 @@
org.apache.maven.plugins
maven-compiler-plugin
- 3.5.1
+ 3.10.1
+ 2048m
false
+
+ -XDcompilePolicy=simple
+
+
+
+
+ com.google.errorprone
+ error_prone_core
+ 2.9.0
+
+
+
@@ -224,12 +243,67 @@
maven-surefire-plugin
+
+ false
+ false
+
2.22.0
maven-failsafe-plugin
2.22.0
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 1.2.1
+
+ core.Server
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+ 1.8
+
+
+
+ detekt
+ verify
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ run
+
+
+
+
+ io.gitlab.arturbosch.detekt
+ detekt-cli
+ 1.21.0
+
+
+
@@ -238,5 +312,20 @@
Maven Central
https://repo.maven.apache.org/maven2/
+
+ gitlab-maven
+ https://gitlab.com/api/v4/projects/32237206/packages/maven
+
+
+
+ gitlab-maven
+ https://gitlab.com/api/v4/projects/32237206/packages/maven
+
+
+
+ gitlab-maven
+ https://gitlab.com/api/v4/projects/32237206/packages/maven
+
+
diff --git a/Server/src/main/java/core/game/content/global/BossKillCounter.java b/Server/src/main/content/data/BossKillCounter.java
similarity index 94%
rename from Server/src/main/java/core/game/content/global/BossKillCounter.java
rename to Server/src/main/content/data/BossKillCounter.java
index 319b0dcdb..e6d865600 100644
--- a/Server/src/main/java/core/game/content/global/BossKillCounter.java
+++ b/Server/src/main/content/data/BossKillCounter.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data;
import core.game.node.entity.player.Player;
@@ -30,11 +30,6 @@ public enum BossKillCounter {
8355, 8356, 8357, 8358, 8359, 8360,
8361, 8362, 8363, 8364, 8365, 8366,
}, "Tormented demon", -1),
- CALLISTO(new int[] { 8610 }, "Callisto", 14658),
- SCORPIA(new int[] { 8611 }, "Scorpia", 14661),
- VENENATIS(new int[] { 8612 }, "Venenatis", 14657),
- VETION(new int[] { 8613 }, "Vet'ion", 14659),
- KRAKEN(new int[] { 8614 }, "Cave Kraken", 14651),
;
diff --git a/Server/src/main/content/data/ChargedItem.kt b/Server/src/main/content/data/ChargedItem.kt
new file mode 100644
index 000000000..06f3d4093
--- /dev/null
+++ b/Server/src/main/content/data/ChargedItem.kt
@@ -0,0 +1,80 @@
+package content.data
+
+import core.api.toIntArray
+import core.cache.def.impl.ItemDefinition
+import org.rs09.consts.Items
+
+/**
+ * Represents a distinct charged item, i.e. items with (#).
+ * Not to be confused with items with internal charge, like degradation.
+ * @author RiL
+ */
+enum class ChargedItem(val ids: IntArray) {
+ AMULET_OF_GLORY((Items.AMULET_OF_GLORY4_1712 downTo Items.AMULET_OF_GLORY_1704 step 2).toIntArray()),
+ RING_OF_DUELLING((Items.RING_OF_DUELLING8_2552..Items.RING_OF_DUELLING1_2566 step 2).toIntArray()),
+ GAMES_NECKLACE((Items.GAMES_NECKLACE8_3853..Items.GAMES_NECKLACE1_3867 step 2).toIntArray()),
+ BROODOO_SHIELDA((Items.BROODOO_SHIELD_10_6215..Items.BROODOO_SHIELD_6235 step 2).toIntArray()),
+ BROODOO_SHIELDB((Items.BROODOO_SHIELD_10_6237..Items.BROODOO_SHIELD_6257 step 2).toIntArray()),
+ BROODOO_SHIELDC((Items.BROODOO_SHIELD_10_6259..Items.BROODOO_SHIELD_6279 step 2).toIntArray()),
+ ROD_OF_IVANDIS((Items.ROD_OF_IVANDIS10_7639..Items.ROD_OF_IVANDIS1_7648).toIntArray()),
+ BLACK_MASK((Items.BLACK_MASK_10_8901..Items.BLACK_MASK_8921 step 2).toIntArray()),
+ AMULET_OF_GLORYT((Items.AMULET_OF_GLORYT4_10354..Items.AMULET_OF_GLORYT_10362 step 2).toIntArray()),
+ CASTLEWAR_BRACE((Items.CASTLEWAR_BRACE3_11079..Items.CASTLEWAR_BRACE1_11083 step 2).toIntArray()),
+ FORINTHRY_BRACE((Items.FORINTHRY_BRACE5_11095..Items.FORINTHRY_BRACE1_11103 step 2).toIntArray()),
+ SKILLS_NECKLACE((Items.SKILLS_NECKLACE4_11105..Items.SKILLS_NECKLACE_11113 step 2).toIntArray()),
+ COMBAT_BRACELET((Items.COMBAT_BRACELET4_11118..Items.COMBAT_BRACELET_11126 step 2).toIntArray()),
+ DIGSITE_PENDANT((Items.DIGSITE_PENDANT_5_11194 downTo Items.DIGSITE_PENDANT_1_11190).toIntArray()),
+ VOID_SEAL((Items.VOID_SEAL8_11666..Items.VOID_SEAL1_11673).toIntArray()),
+ AMULET_OF_FARMING((Items.AMULET_OF_FARMING8_12622 downTo Items.AMULET_OF_FARMING1_12608 step 2).toIntArray()),
+ IVANDIS_FLAIL((Items.IVANDIS_FLAIL_30_13117..Items.IVANDIS_FLAIL_1_13146).toIntArray()),
+ RING_OF_SLAYING((Items.RING_OF_SLAYING8_13281..Items.RING_OF_SLAYING1_13288).toIntArray()),
+ RING_OF_WEALTH((Items.RING_OF_WEALTH4_14646 downTo Items.RING_OF_WEALTH_14638 step 2).toIntArray());
+
+ /**
+ * Get the item id for a specific [charge].
+ * If [charge] is outside the valid range, return the item id with the closest charge.
+ */
+ fun forCharge(charge: Int): Int {
+ return ids[maxCharge() - if (charge < 1) 1 + maxCharge() - ids.size else if (charge > maxCharge()) maxCharge() else charge]
+ }
+
+ /**
+ * Get the max charge of this ChargedItem.
+ */
+ fun maxCharge(): Int = maxCharges[ordinal]
+
+ companion object {
+ private val CHARGE_REGEX = Regex("""\(\D?(\d+)\)""")
+ private val idMap = HashMap()
+ private val maxCharges = IntArray(values().size)
+
+ init {
+ values().forEach { chargedItem ->
+ maxCharges[chargedItem.ordinal] = getMaxCharge(chargedItem)
+ chargedItem.ids.forEach { idMap[it] = chargedItem }
+ }
+ }
+
+ private fun getMaxCharge(chargedItem: ChargedItem): Int {
+ return CHARGE_REGEX.find(ItemDefinition.forId(chargedItem.ids.first()).name)!!.groups[1]!!.value.toInt()
+ }
+
+ /**
+ * Check if the item id is a charged item.
+ */
+ fun contains(id: Int): Boolean = idMap.containsKey(id)
+
+ /**
+ * Get the ChargedItem enum for an item id, or null if it's not a charged item.
+ */
+ fun forId(id: Int): ChargedItem? = idMap[id]
+
+ /**
+ * Get the charge value of an item id, or null if it's not a charged item.
+ */
+ fun getCharge(id: Int): Int? {
+ val chargedItem = forId(id) ?: return null
+ return chargedItem.maxCharge() - chargedItem.ids.indexOf(id)
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/content/global/Dyes.java b/Server/src/main/content/data/Dyes.java
similarity index 96%
rename from Server/src/main/java/core/game/content/global/Dyes.java
rename to Server/src/main/content/data/Dyes.java
index 63e47122c..79c508fa8 100644
--- a/Server/src/main/java/core/game/content/global/Dyes.java
+++ b/Server/src/main/content/data/Dyes.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data;
import core.game.node.item.Item;
diff --git a/Server/src/main/content/data/EnchantedJewellery.kt b/Server/src/main/content/data/EnchantedJewellery.kt
new file mode 100644
index 000000000..c34a0ffb6
--- /dev/null
+++ b/Server/src/main/content/data/EnchantedJewellery.kt
@@ -0,0 +1,364 @@
+package content.data
+
+import content.global.skill.magic.TeleportMethod
+import content.global.skill.slayer.SlayerManager.Companion.getInstance
+import content.global.skill.slayer.SlayerUtils
+import core.ServerConstants
+import core.api.*
+import core.game.event.TeleportEvent
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Items
+import core.game.world.GameWorld.Pulser
+import org.rs09.consts.Sounds
+import java.util.*
+
+/**
+ * Represents an enchanted jewellery.
+ * @author Vexia, downthecrop, Player Name
+ */
+enum class EnchantedJewellery(
+
+ val options: Array,
+ val locations: Array, crumble: Boolean, vararg val ids: Int) {
+ RING_OF_SLAYING(
+ arrayOf(
+ "Sumona in Pollnivneach.",
+ "Morytania Slayer Tower.",
+ "Rellekka Slayer Caves.",
+ "Nowhere. Give me a slayer update."
+ ),
+ arrayOf(
+ Location.create(3361, 2994, 0),
+ Location.create(3428, 3535, 0),
+ Location.create(2792, 3615, 0),
+ ),
+ true,
+ Items.RING_OF_SLAYING8_13281,
+ Items.RING_OF_SLAYING7_13282,
+ Items.RING_OF_SLAYING6_13283,
+ Items.RING_OF_SLAYING5_13284,
+ Items.RING_OF_SLAYING4_13285,
+ Items.RING_OF_SLAYING3_13286,
+ Items.RING_OF_SLAYING2_13287,
+ Items.RING_OF_SLAYING1_13288
+ ),
+
+ RING_OF_DUELING(
+ arrayOf(
+ "Al Kharid Duel Arena.",
+ "Castle Wars Arena.",
+ "Fist of Guthix", "Nowhere."
+ ),
+ arrayOf(
+ Location.create(3314, 3235, 0),
+ Location.create(2442, 3089, 0),
+ Location.create(1693, 5600, 0)
+ ),
+ true,
+ Items.RING_OF_DUELLING8_2552,
+ Items.RING_OF_DUELLING7_2554,
+ Items.RING_OF_DUELLING6_2556,
+ Items.RING_OF_DUELLING5_2558,
+ Items.RING_OF_DUELLING4_2560,
+ Items.RING_OF_DUELLING3_2562,
+ Items.RING_OF_DUELLING2_2564,
+ Items.RING_OF_DUELLING1_2566
+ ),
+ AMULET_OF_GLORY(
+ arrayOf(
+ "Edgeville.",
+ "Karamja.",
+ "Draynor Village.",
+ "Al-Kharid.",
+ "Nowhere."
+ ),
+ arrayOf(
+ Location.create(3087, 3495, 0),
+ Location.create(2919, 3175, 0),
+ Location.create(3104, 3249, 0),
+ Location.create(3304, 3124, 0)
+ ),
+ Items.AMULET_OF_GLORY4_1712,
+ Items.AMULET_OF_GLORY3_1710,
+ Items.AMULET_OF_GLORY2_1708,
+ Items.AMULET_OF_GLORY1_1706,
+ Items.AMULET_OF_GLORY_1704
+ ),
+ AMULET_OF_GLORY_T(
+ AMULET_OF_GLORY.options,
+ AMULET_OF_GLORY.locations,
+ Items.AMULET_OF_GLORYT4_10354,
+ Items.AMULET_OF_GLORYT3_10356,
+ Items.AMULET_OF_GLORYT2_10358,
+ Items.AMULET_OF_GLORYT1_10360,
+ Items.AMULET_OF_GLORYT_10362
+ ),
+ GAMES_NECKLACE(
+ arrayOf(
+ "Burthorpe Games Room.",
+ "Barbarian Outpost.",
+ "Clan Wars.",
+ "Wilderness Volcano.",
+ "Corporeal Beast."
+ ),
+ arrayOf(
+ Location.create(2899, 3563, 0),
+ Location.create(2520, 3571, 0),
+ Location.create(3266, 3686, 0),
+ Location.create(3179, 3685, 0),
+ Location.create(2885, 4372, 2)
+ ),
+ true,
+ Items.GAMES_NECKLACE8_3853,
+ Items.GAMES_NECKLACE7_3855,
+ Items.GAMES_NECKLACE6_3857,
+ Items.GAMES_NECKLACE5_3859,
+ Items.GAMES_NECKLACE4_3861,
+ Items.GAMES_NECKLACE3_3863,
+ Items.GAMES_NECKLACE2_3865,
+ Items.GAMES_NECKLACE1_3867
+ ),
+ DIGSITE_PENDANT(arrayOf(),
+ arrayOf(
+ Location.create(3342, 3445, 0)
+ ),
+ true,
+ Items.DIGSITE_PENDANT_5_11194,
+ Items.DIGSITE_PENDANT_4_11193,
+ Items.DIGSITE_PENDANT_3_11192,
+ Items.DIGSITE_PENDANT_2_11191,
+ Items.DIGSITE_PENDANT_1_11190
+ ),
+ COMBAT_BRACELET(
+ arrayOf(
+ "Champions' Guild.",
+ "Monastery.",
+ "Ranging Guild.",
+ "Warriors' Guild.",
+ "Nowhere."
+ ),
+ arrayOf(
+ Location.create(3191, 3365, 0),
+ Location.create(3052, 3472, 0),
+ Location.create(2657, 3439, 0),
+ Location.create(2878, 3546, 0)
+ ),
+ Items.COMBAT_BRACELET4_11118,
+ Items.COMBAT_BRACELET3_11120,
+ Items.COMBAT_BRACELET2_11122,
+ Items.COMBAT_BRACELET1_11124,
+ Items.COMBAT_BRACELET_11126
+ ),
+ SKILLS_NECKLACE(
+ arrayOf(
+ "Fishing Guild.",
+ "Mining Guild.",
+ "Crafting Guild.",
+ "Cooking Guild.",
+ "Nowhere."
+ ),
+ arrayOf(
+ Location.create(2611, 3392, 0),
+ Location.create(3016, 3338, 0),
+ Location.create(2933, 3290, 0),
+ Location.create(3143, 3442, 0)
+ ),
+ Items.SKILLS_NECKLACE4_11105,
+ Items.SKILLS_NECKLACE3_11107,
+ Items.SKILLS_NECKLACE2_11109,
+ Items.SKILLS_NECKLACE1_11111,
+ Items.SKILLS_NECKLACE_11113
+ ),
+ RING_OF_WEALTH(
+ arrayOf(
+ "Grand Exchange.",
+ "Nowhere."
+ ),
+ arrayOf(
+ Location.create(3163, 3464, 0)
+ ),
+ Items.RING_OF_WEALTH4_14646,
+ Items.RING_OF_WEALTH3_14644,
+ Items.RING_OF_WEALTH2_14642,
+ Items.RING_OF_WEALTH1_14640,
+ Items.RING_OF_WEALTH_14638
+ ),
+ RING_OF_LIFE(arrayOf(),
+ arrayOf(
+ Location.create(ServerConstants.HOME_LOCATION)
+ ),
+ true,
+ Items.RING_OF_LIFE_2570
+ );
+
+ val isCrumble: Boolean = crumble
+
+ /**
+ * Constructs a new `EnchantedJewelleryPlugin` `Object`.
+ * @param options the dialogue options.
+ * @param locations the teleport locations.
+ * @param ids the ordered item ids.
+ */
+ constructor(options: Array, locations: Array, vararg ids: Int) : this(options, locations, false, *ids)
+
+ /**
+ * Method used when the player "Use"s the jewellery piece.
+ * @param player the player.
+ * @param item the used jewellery item.
+ * @param buttonID the button id.
+ * @param isEquipped If the player is operating.
+ */
+ fun use(player: Player, item: Item, buttonID: Int, isEquipped: Boolean) {
+ if (buttonID > locations.size - 1) {
+ if (isSlayerRing(item)) {
+ slayerProgressDialogue(player)
+ }
+ return
+ }
+ attemptTeleport(player, item, buttonID, isEquipped)
+ }
+
+ /**
+ * Method used to actually teleport the player to the desired location.
+ * @param player the player.
+ * @param item the used jewellery item.
+ * @param buttonID the button id.
+ * @param isEquipped If the player is operating.
+ */
+ fun attemptTeleport(player: Player, item: Item, buttonID: Int, isEquipped: Boolean): Boolean {
+ val itemIndex = getItemIndex(item)
+ val nextJewellery = Item(getNext(itemIndex))
+ if (!canTeleport(player, nextJewellery)) {
+ return false
+ }
+ Pulser.submit(object : Pulse(0) {
+ private var count = 0
+ private var location = getLocation(buttonID)
+ override fun pulse(): Boolean {
+ when (count) {
+ 0 -> {
+ lock(player,4)
+ visualize(player, ANIMATION, GRAPHICS)
+ playGlobalAudio(player.location, Sounds.TELEPORT_ALL_200)
+ player.impactHandler.disabledTicks = 4
+ closeInterface(player)
+ }
+ 3 -> {
+ teleport(player,location)
+ resetAnimator(player)
+ if (isLastItemIndex(itemIndex)) {
+ if (isCrumble) crumbleJewellery(player, item, isEquipped)
+ } else {
+ replaceJewellery(player, item, nextJewellery, isEquipped)
+ }
+ unlock(player)
+ player.dispatch(TeleportEvent(TeleportManager.TeleportType.NORMAL, TeleportMethod.JEWELRY, item, location))
+ return true
+ }
+ }
+ count += 1
+ return false
+ }
+ })
+ return true
+ }
+
+ private fun replaceJewellery(player: Player, item: Item, nextJewellery: Item, isEquipped: Boolean) {
+ if (isEquipped) {
+ replaceSlot(player, item.slot, nextJewellery, item, Container.EQUIPMENT)
+ } else {
+ replaceSlot(player, item.slot, nextJewellery)
+ }
+ }
+
+ private fun crumbleJewellery(player: Player, item: Item, isEquipped: Boolean) {
+ if (isEquipped) {
+ removeItem(player, item, Container.EQUIPMENT)
+ } else {
+ removeItem(player, item)
+ }
+ if (isSlayerRing(item)) {
+ queueScript(player, 1, QueueStrength.SOFT) {
+ addItemOrDrop(player, Items.ENCHANTED_GEM_4155)
+ sendMessage(player, "Your Ring of Slaying reverts back into a regular enchanted gem.")
+ return@queueScript stopExecuting(player)
+ }
+ }
+ }
+
+ private fun isSlayerRing(item: Item): Boolean {
+ return (item.id in RING_OF_SLAYING.ids)
+ }
+
+ private fun slayerProgressDialogue(player: Player) {
+ val slayerManager = getInstance(player)
+ if (!slayerManager.hasTask()) {
+ sendNPCDialogue(player, slayerManager.master!!.npc, "You need something new to hunt. Come and " +
+ "see me when you can and I'll give you a new task.", core.game.dialogue.FacialExpression.HALF_GUILTY)
+ return
+ }
+ sendNPCDialogue(player, slayerManager.master!!.npc, "You're currently " +
+ "assigned to kill ${SlayerUtils.pluralise(getSlayerTaskName(player))} " +
+ "only ${getSlayerTaskKillsRemaining(player)} more to go.", core.game.dialogue.FacialExpression.FRIENDLY)
+ // Slayer tracker UI
+ setVarp(player, 2502, slayerManager.flags.taskFlags shr 4)
+ }
+
+ private fun canTeleport(player: Player, item: Item): Boolean {
+ return player.zoneMonitor.teleport(1, item)
+ }
+
+ private fun getNext(index: Int): Int {
+ val i = index + 1
+ if (i > ids.size - 1) {
+ return ids[ids.size - 1]
+ }
+ return ids[i]
+ }
+
+ private fun getLocation(index: Int): Location {
+ if (index > locations.size - 1) {
+ return locations[locations.size - 1]
+ }
+ return locations[index]
+ }
+
+ fun getJewelleryName(item: Item): String {
+ return item.name.replace(""" ?\(t?[0-9]?\)""".toRegex(), "")
+ }
+
+ fun getJewelleryType(item: Item): String {
+ return when {
+ this == GAMES_NECKLACE -> "games necklace"
+ this == DIGSITE_PENDANT -> "necklace"
+ this == COMBAT_BRACELET -> "bracelet"
+ this == SKILLS_NECKLACE -> "necklace"
+ else -> item.name.split(" ")[0].lowercase(Locale.getDefault())
+ }
+ }
+
+ fun isLastItemIndex(index: Int): Boolean = index == ids.size - 1
+
+ fun getItemIndex(item: Item): Int {
+ return ids.indexOf(item.id)
+ }
+
+ companion object {
+ private val ANIMATION = Animation(714)
+ private val GRAPHICS = Graphics(308, 100, 50)
+ val idMap = HashMap()
+
+ init {
+ values().forEach { entry ->
+ entry.ids.forEach { idMap[it] = entry }
+ }
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/content/global/GodBook.java b/Server/src/main/content/data/GodBook.java
similarity index 97%
rename from Server/src/main/java/core/game/content/global/GodBook.java
rename to Server/src/main/content/data/GodBook.java
index 7198cf39c..92029b479 100644
--- a/Server/src/main/java/core/game/content/global/GodBook.java
+++ b/Server/src/main/content/data/GodBook.java
@@ -1,8 +1,10 @@
-package core.game.content.global;
+package content.data;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
+import static core.api.ContentAPIKt.hasRequirement;
+
/**
* A god book.
* @author Vexia
@@ -98,6 +100,8 @@ public enum GodBook {
* @param page the page.
*/
public void insertPage(Player player, Item book, Item page) {
+ if (!hasRequirement(player, Quests.HORROR_FROM_THE_DEEP))
+ return;
if (hasPage(player, book, page)) {
player.sendMessage("The book already has that page.");
return;
diff --git a/Server/src/main/java/core/game/content/global/GodType.java b/Server/src/main/content/data/GodType.java
similarity index 97%
rename from Server/src/main/java/core/game/content/global/GodType.java
rename to Server/src/main/content/data/GodType.java
index e202c34e4..2b8ce7e9a 100644
--- a/Server/src/main/java/core/game/content/global/GodType.java
+++ b/Server/src/main/content/data/GodType.java
@@ -1,13 +1,13 @@
-package core.game.content.global;
+package content.data;
-import core.game.content.dialogue.DialogueAction;
+import core.game.dialogue.DialogueAction;
import core.game.node.entity.player.Player;
import core.game.node.item.GroundItem;
import core.game.node.item.GroundItemManager;
import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.tools.StringUtils;
diff --git a/Server/src/main/java/core/game/content/global/Lamps.java b/Server/src/main/content/data/Lamps.java
similarity index 97%
rename from Server/src/main/java/core/game/content/global/Lamps.java
rename to Server/src/main/content/data/Lamps.java
index 4abba5531..9dc150bf1 100644
--- a/Server/src/main/java/core/game/content/global/Lamps.java
+++ b/Server/src/main/content/data/Lamps.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data;
import core.game.node.item.Item;
@@ -22,6 +22,8 @@ public enum Lamps {
L_ACHIEVEMENT_2(new Item(11186), 1000, 30),
L_ACHIEVEMENT_3(new Item(11187), 1500, 35),
+ MYSTERIOUS_LAMP(new Item(13227), 10000, 30),
+
FALLY_ACHIEVEMENT_1(new Item(14580), 1000, 30),
FALLY_ACHIEVEMENT_2(new Item(14581), 5000, 40),
FALLY_ACHIEVEMENT_3(new Item(14582), 10000, 50),
diff --git a/Server/src/main/java/core/game/content/global/LightSource.java b/Server/src/main/content/data/LightSource.java
similarity index 99%
rename from Server/src/main/java/core/game/content/global/LightSource.java
rename to Server/src/main/content/data/LightSource.java
index 1a8c4f7d3..118cb492f 100644
--- a/Server/src/main/java/core/game/content/global/LightSource.java
+++ b/Server/src/main/content/data/LightSource.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/content/data/Meat.kt b/Server/src/main/content/data/Meat.kt
new file mode 100644
index 000000000..714b2403a
--- /dev/null
+++ b/Server/src/main/content/data/Meat.kt
@@ -0,0 +1,51 @@
+package content.data
+
+enum class MeatState {
+ INEDIBLE_RAW,
+ INEDIBLE_BURNT,
+ INEDIBLE_SPECIAL, // could be a quest item
+ EDIBLE_COOKED,
+}
+
+enum class Meat(val id: Int, val state: MeatState) {
+ ENCHANTED_BEEF(522, MeatState.INEDIBLE_SPECIAL),
+ ENCHANTED_RAT_MEAT(523, MeatState.INEDIBLE_SPECIAL),
+ ENCHANTED_BEAR_MEAT(524, MeatState.INEDIBLE_SPECIAL),
+ ENCHANTED_CHICKEN(525, MeatState.INEDIBLE_SPECIAL),
+ RAW_UGTHANKI_MEAT(1859, MeatState.INEDIBLE_RAW),
+ UGTHANKI_MEAT(1861, MeatState.EDIBLE_COOKED),
+ RAW_BEEF(2132, MeatState.INEDIBLE_RAW),
+ RAW_RAT_MEAT(2134, MeatState.INEDIBLE_RAW),
+ RAW_BEAR_MEAT(2136, MeatState.INEDIBLE_RAW),
+ RAW_CHICKEN(2138, MeatState.INEDIBLE_RAW),
+ COOKED_CHICKEN(2140, MeatState.EDIBLE_COOKED),
+ BURNT_CHICKEN(2140, MeatState.INEDIBLE_BURNT),
+ COOKED_MEAT(2142, MeatState.EDIBLE_COOKED),
+ BURNT_MEAT(2146, MeatState.INEDIBLE_BURNT),
+ THIN_SNAIL_MEAT(3369, MeatState.EDIBLE_COOKED),
+ LEAN_SNAIL_MEAT(3371, MeatState.EDIBLE_COOKED),
+ FAT_SNAIL_MEAT(3373, MeatState.EDIBLE_COOKED),
+ RAW_BEEF_UNDEAD(4287, MeatState.INEDIBLE_RAW),
+ RAW_CHICKEN_UNDEAD(4289, MeatState.INEDIBLE_RAW),
+ COOKED_CHICKEN_UNDEAD(4291, MeatState.EDIBLE_COOKED),
+ COOKED_MEAT_UNDEAD(4293, MeatState.EDIBLE_COOKED),
+ RAW_CRAB_MEAT(7518, MeatState.INEDIBLE_RAW),
+ BURNT_CRAB_MEAT(7520, MeatState.INEDIBLE_BURNT),
+ COOKED_CRAB_MEAT_5(7521, MeatState.EDIBLE_COOKED),
+ COOKED_CRAB_MEAT_4(7523, MeatState.EDIBLE_COOKED),
+ COOKED_CRAB_MEAT_3(7524, MeatState.EDIBLE_COOKED),
+ COOKED_CRAB_MEAT_2(7525, MeatState.EDIBLE_COOKED),
+ COOKED_CRAB_MEAT_1(7526, MeatState.EDIBLE_COOKED),
+ GROUND_CRAB_MEAT(7527, MeatState.INEDIBLE_RAW),
+ LOCUST_MEAT(9052, MeatState.EDIBLE_COOKED),
+ RAW_BIRD_MEAT(9978, MeatState.INEDIBLE_RAW),
+ ROAST_BIRD_MEAT(9980, MeatState.EDIBLE_COOKED),
+ BURNT_BIRD_MEAT(9982, MeatState.INEDIBLE_BURNT),
+ SKEWERED_BIRD_MEAT(9982, MeatState.INEDIBLE_RAW),
+ RAW_BEAST_MEAT(9986, MeatState.INEDIBLE_RAW),
+ ROAST_BEAST_MEAT(9988, MeatState.EDIBLE_COOKED),
+ BURNT_BEAST_MEAT(9990, MeatState.INEDIBLE_BURNT),
+ RAW_YAK_MEAT(10816, MeatState.INEDIBLE_RAW),
+ RAW_PAWYA_MEAT(12535, MeatState.INEDIBLE_RAW),
+ ENCHANTED_PAWYA_MEAT(12546, MeatState.INEDIBLE_SPECIAL);
+}
\ No newline at end of file
diff --git a/Server/src/main/content/data/Quests.kt b/Server/src/main/content/data/Quests.kt
new file mode 100644
index 000000000..190cf2093
--- /dev/null
+++ b/Server/src/main/content/data/Quests.kt
@@ -0,0 +1,158 @@
+package content.data
+
+enum class Quests(val questName: String) {
+ MYTHS_OF_THE_WHITE_LANDS("Myths of the White Lands"),
+ BLACK_KNIGHTS_FORTRESS("Black Knights' Fortress"),
+ COOKS_ASSISTANT("Cook's Assistant"),
+ DEMON_SLAYER("Demon Slayer"),
+ DORICS_QUEST("Doric's Quest"),
+ DRAGON_SLAYER("Dragon Slayer"),
+ ERNEST_THE_CHICKEN("Ernest the Chicken"),
+ GOBLIN_DIPLOMACY("Goblin Diplomacy"),
+ IMP_CATCHER("Imp Catcher"),
+ THE_KNIGHTS_SWORD("The Knight's Sword"),
+ PIRATES_TREASURE("Pirate's Treasure"),
+ PRINCE_ALI_RESCUE("Prince Ali Rescue"),
+ THE_RESTLESS_GHOST("The Restless Ghost"),
+ ROMEO_JULIET("Romeo & Juliet"),
+ RUNE_MYSTERIES("Rune Mysteries"),
+ SHEEP_SHEARER("Sheep Shearer"),
+ SHIELD_OF_ARRAV("Shield of Arrav"),
+ VAMPIRE_SLAYER("Vampire Slayer"),
+ WITCHS_POTION("Witch's Potion"),
+ ANIMAL_MAGNETISM("Animal Magnetism"),
+ BETWEEN_A_ROCK("Between a Rock..."),
+ BIG_CHOMPY_BIRD_HUNTING("Big Chompy Bird Hunting"),
+ BIOHAZARD("Biohazard"),
+ CABIN_FEVER("Cabin Fever"),
+ CLOCK_TOWER("Clock Tower"),
+ CONTACT("Contact!"),
+ ZOGRE_FLESH_EATERS("Zogre Flesh Eaters"),
+ CREATURE_OF_FENKENSTRAIN("Creature of Fenkenstrain"),
+ DARKNESS_OF_HALLOWVALE("Darkness of Hallowvale"),
+ DEATH_TO_THE_DORGESHUUN("Death to the Dorgeshuun"),
+ DEATH_PLATEAU("Death Plateau"),
+ DESERT_TREASURE("Desert Treasure"),
+ DEVIOUS_MINDS("Devious Minds"),
+ THE_DIG_SITE("The Dig Site"),
+ DRUIDIC_RITUAL("Druidic Ritual"),
+ DWARF_CANNON("Dwarf Cannon"),
+ EADGARS_RUSE("Eadgar's Ruse"),
+ EAGLES_PEAK("Eagles' Peak"),
+ ELEMENTAL_WORKSHOP_I("Elemental Workshop I"),
+ ELEMENTAL_WORKSHOP_II("Elemental Workshop II"),
+ ENAKHRAS_LAMENT("Enakhra's Lament"),
+ ENLIGHTENED_JOURNEY("Enlightened Journey"),
+ THE_EYES_OF_GLOUPHRIE("The Eyes of Glouphrie"),
+ FAIRYTALE_I_GROWING_PAINS("Fairytale I - Growing Pains"),
+ FAIRYTALE_II_CURE_A_QUEEN("Fairytale II - Cure a Queen"),
+ FAMILY_CREST("Family Crest"),
+ THE_FEUD("The Feud"),
+ FIGHT_ARENA("Fight Arena"),
+ FISHING_CONTEST("Fishing Contest"),
+ FORGETTABLE_TALE("Forgettable Tale..."),
+ THE_FREMENNIK_TRIALS("The Fremennik Trials"),
+ WATERFALL_QUEST("Waterfall Quest"),
+ GARDEN_OF_TRANQUILITY("Garden of Tranquility"),
+ GERTRUDES_CAT("Gertrude's Cat"),
+ GHOSTS_AHOY("Ghosts Ahoy"),
+ THE_GIANT_DWARF("The Giant Dwarf"),
+ THE_GOLEM("The Golem"),
+ THE_GRAND_TREE("The Grand Tree"),
+ THE_HAND_IN_THE_SAND("The Hand in the Sand"),
+ HAUNTED_MINE("Haunted Mine"),
+ HAZEEL_CULT("Hazeel Cult"),
+ HEROES_QUEST("Heroes' Quest"),
+ HOLY_GRAIL("Holy Grail"),
+ HORROR_FROM_THE_DEEP("Horror from the Deep"),
+ ICTHLARINS_LITTLE_HELPER("Icthlarin's Little Helper"),
+ IN_AID_OF_THE_MYREQUE("In Aid of the Myreque"),
+ IN_SEARCH_OF_THE_MYREQUE("In Search of the Myreque"),
+ JUNGLE_POTION("Jungle Potion"),
+ LEGENDS_QUEST("Legend's Quest"),
+ LOST_CITY("Lost City"),
+ THE_LOST_TRIBE("The Lost Tribe"),
+ LUNAR_DIPLOMACY("Lunar Diplomacy"),
+ MAKING_HISTORY("Making History"),
+ MERLINS_CRYSTAL("Merlin's Crystal"),
+ MONKEY_MADNESS("Monkey Madness"),
+ MONKS_FRIEND("Monk's Friend"),
+ MOUNTAIN_DAUGHTER("Mountain Daughter"),
+ MOURNINGS_END_PART_I("Mourning's End Part I"),
+ MOURNINGS_END_PART_II("Mourning's End Part II"),
+ MURDER_MYSTERY("Murder Mystery"),
+ MY_ARMS_BIG_ADVENTURE("My Arm's Big Adventure"),
+ NATURE_SPIRIT("Nature Spirit"),
+ OBSERVATORY_QUEST("Observatory Quest"),
+ ONE_SMALL_FAVOUR("One Small Favour"),
+ PLAGUE_CITY("Plague City"),
+ PRIEST_IN_PERIL("Priest in Peril"),
+ RAG_AND_BONE_MAN("Rag and Bone Man"),
+ RATCATCHERS("Ratcatchers"),
+ RECIPE_FOR_DISASTER("Recipe for Disaster"),
+ RECRUITMENT_DRIVE("Recruitment Drive"),
+ REGICIDE("Regicide"),
+ ROVING_ELVES("Roving Elves"),
+ ROYAL_TROUBLE("Royal Trouble"),
+ RUM_DEAL("Rum Deal"),
+ SCORPION_CATCHER("Scorpion Catcher"),
+ SEA_SLUG("Sea Slug"),
+ THE_SLUG_MENACE("The Slug Menace"),
+ SHADES_OF_MORTTON("Shades of Mort'ton"),
+ SHADOW_OF_THE_STORM("Shadow of the Storm"),
+ SHEEP_HERDER("Sheep Herder"),
+ SHILO_VILLAGE("Shilo Village"),
+ A_SOULS_BANE("A Soul's Bane"),
+ SPIRITS_OF_THE_ELID("Spirits of the Elid"),
+ SWAN_SONG("Swan Song"),
+ TAI_BWO_WANNAI_TRIO("Tai Bwo Wannai Trio"),
+ A_TAIL_OF_TWO_CATS("A Tail of Two Cats"),
+ TEARS_OF_GUTHIX("Tears of Guthix"),
+ TEMPLE_OF_IKOV("Temple of Ikov"),
+ THRONE_OF_MISCELLANIA("Throne of Miscellania"),
+ THE_TOURIST_TRAP("The Tourist Trap"),
+ WITCHS_HOUSE("Witch's House"),
+ TREE_GNOME_VILLAGE("Tree Gnome Village"),
+ TRIBAL_TOTEM("Tribal Totem"),
+ TROLL_ROMANCE("Troll Romance"),
+ TROLL_STRONGHOLD("Troll Stronghold"),
+ UNDERGROUND_PASS("Underground Pass"),
+ WANTED("Wanted!"),
+ WATCHTOWER("Watchtower"),
+ COLD_WAR("Cold War"),
+ THE_FREMENNIK_ISLES("The Fremennik Isles"),
+ TOWER_OF_LIFE("Tower of Life"),
+ THE_GREAT_BRAIN_ROBBERY("The Great Brain Robbery"),
+ WHAT_LIES_BELOW("What Lies Below"),
+ OLAFS_QUEST("Olaf's Quest"),
+ ANOTHER_SLICE_OF_HAM("Another Slice of H.A.M"),
+ DREAM_MENTOR("Dream Mentor"),
+ GRIM_TALES("Grim Tales"),
+ KINGS_RANSOM("King's Ransom"),
+ THE_PATH_OF_GLOUPHRIE("The Path of Glouphrie"),
+ BACK_TO_MY_ROOTS("Back to my Roots"),
+ LAND_OF_THE_GOBLINS("Land of the Goblins"),
+ DEALING_WITH_SCABARAS("Dealing with Scabaras"),
+ WOLF_WHISTLE("Wolf Whistle"),
+ AS_A_FIRST_RESORT("As a First Resort..."),
+ CATAPULT_CONSTRUCTION("Catapult Construction"),
+ KENNITHS_CONCERNS("Kennith's Concerns"),
+ LEGACY_OF_SEERGAZE("Legacy of Seergaze"),
+ PERILS_OF_ICE_MOUNTAIN("Perils of Ice Mountain"),
+ TOKTZ_KET_DILL("TokTz-Ket-Dill"),
+ SMOKING_KILLS("Smoking Kills"),
+ ROCKING_OUT("Rocking Out"),
+ SPIRIT_OF_SUMMER("Spirit of Summer"),
+ MEETING_HISTORY("Meeting History"),
+ ALL_FIRED_UP("All Fired Up"),
+ SUMMERS_END("Summer's End"),
+ DEFENDER_OF_VARROCK("Defender of Varrock"),
+ SWEPT_AWAY("Swept Away"),
+ WHILE_GUTHIX_SLEEPS("While Guthix Sleeps"),
+ IN_PYRE_NEED("In Pyre Need"),
+ TEST_QUEST("Test Quest");
+
+ override fun toString(): String {
+ return questName
+ }
+}
diff --git a/Server/src/main/java/core/game/content/global/RepairItem.java b/Server/src/main/content/data/RepairItem.java
similarity index 98%
rename from Server/src/main/java/core/game/content/global/RepairItem.java
rename to Server/src/main/content/data/RepairItem.java
index 00ebd7a36..3ab25a4d5 100644
--- a/Server/src/main/java/core/game/content/global/RepairItem.java
+++ b/Server/src/main/content/data/RepairItem.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/content/consumable/Consumables.java b/Server/src/main/content/data/consumables/Consumables.java
similarity index 84%
rename from Server/src/main/java/core/game/content/consumable/Consumables.java
rename to Server/src/main/content/data/consumables/Consumables.java
index 09742c546..82c6650a1 100644
--- a/Server/src/main/java/core/game/content/consumable/Consumables.java
+++ b/Server/src/main/content/data/consumables/Consumables.java
@@ -1,395 +1,421 @@
-package core.game.content.consumable;
-
-import org.rs09.consts.Items;
-import core.game.node.entity.player.link.diary.DiaryType;
-import core.game.node.entity.state.EntityState;
-import core.game.world.update.flag.context.Animation;
-import core.game.content.consumable.effects.*;
-import core.game.node.entity.skill.Skills;
-
-import java.util.HashMap;
-
-/**
- * Represents a repository of active consumables in the framework.
- */
-public enum Consumables {
-
- /** Meats */
- COOKED_MEAT(new Food(new int[] {2142}, new HealingEffect(3))),
- SHRIMPS(new Food(new int[] {315}, new HealingEffect(3))),
- COOKED_CHICKEN(new Food(new int[] {2140}, new HealingEffect(3))),
- COOKED_RABBIT(new Food(new int[] {3228}, new HealingEffect(5))),
- ANCHOVIES(new Food(new int[] {319}, new HealingEffect(1))),
- SARDINE(new Food(new int[] {325}, new HealingEffect(4))),
- POISON_KARAMBWAN(new Food(new int[] {3146}, new PoisonKarambwanEffect())),
- UGTHANKI_MEAT(new Food(new int[] {1861}, new HealingEffect(3))),
- HERRING(new Food(new int[] {347}, new HealingEffect(5))),
- MACKEREL(new Food(new int[] {355}, new HealingEffect(6))),
- ROAST_BIRD_MEAT(new Food(new int[] {9980}, new HealingEffect(6))),
- THIN_SNAIL(new Food(new int[] {3369}, new HealingEffect(5))),
- TROUT(new Food(new int[] {333}, new HealingEffect(7))),
- SPIDER_ON_STICK(new Food(new int[] {6297, 6305}, new HealingEffect(7))),
- SPIDER_ON_SHAFT(new Food(new int[] {6299}, new HealingEffect(7))),
- ROAST_RABBIT(new Food(new int[] {7223}, new HealingEffect(7))),
- LEAN_SNAIL(new Food(new int[] {3371}, new HealingEffect(8))),
- COD(new Food(new int[] {339}, new HealingEffect(7))),
- PIKE(new Food(new int[] {351}, new HealingEffect(8))),
- ROAST_BEAST_MEAT(new Food(new int[] {9988}, new HealingEffect(8))),
- COOKED_CRAB_MEAT(new Food(new int[] {7521, 7523, 7524, 7525, 7526}, new HealingEffect(2))),
- FAT_SNAIL(new Food(new int[] {3373}, new HealingEffect(9))),
- SALMON(new Food(new int[] {329}, new HealingEffect(9))),
- SLIMY_EEL(new Food(new int[] {3381}, new HealingEffect(6))),
- TUNA(new Food(new int[] {361}, new HealingEffect(10))),
- COOKED_KARAMBWAN(new Food(new int[] {3144}, new HealingEffect(18))),
- COOKED_CHOMPY(new Food(new int[] {2878}, new HealingEffect(10))),
- RAINBOW_FISH(new Food(new int[] {10136}, new HealingEffect(11))),
- CAVE_EEL(new Food(new int[] {5003}, new HealingEffect(7))),
- LOBSTER(new Food(new int[] {379}, new HealingEffect(12))),
- COOKED_JUBBLY(new Food(new int[] {7568}, new HealingEffect(15))),
- BASS(new Food(new int[] {365}, new HealingEffect(13))),
- SWORDFISH(new Food(new int[] {373}, new HealingEffect(14))),
- LAVA_EEL(new Food(new int[] {2149}, new HealingEffect(14))),
- MONKFISH(new Food(new int[] {7946}, new HealingEffect(16))),
- SHARK(new Food(new int[] {385}, new HealingEffect(20))),
- SEA_TURTLE(new Food(new int[] {397}, new HealingEffect(21))),
- MANTA_RAY(new Food(new int[] {391}, new HealingEffect(22))),
- KARAMBWANJI(new Food(new int[] {3151}, new HealingEffect(3))),
- STUFFED_SNAKE(new Food(new int[] {7579}, new HealingEffect(20), "You eat the stuffed snake-it's quite a meal! It tastes like chicken.")),
- CRAYFISH(new Food(new int[] {13433}, new HealingEffect(2))),
- GIANT_FROG_LEGS(new Food(new int [] {4517}, new HealingEffect(6))),
-
- /** Breads */
- BREAD(new Food(new int[] {2309}, new HealingEffect(5))),
- BAGUETTE(new Food(new int[] {6961}, new HealingEffect(6))),
-
- /** Sandwiches */
- TRIANGLE_SANDWICH(new Food(new int[] {6962}, new HealingEffect(6))),
- SQUARE_SANDWICH(new Food(new int[] {6965}, new HealingEffect(6))),
- SEAWEED_SANDWICH(new FakeConsumable(3168, new String[] {"You really, really do not want to eat that."})),
- FROGBURGER(new Food(new int[] {10962}, new HealingEffect(2))),
-
- /** Kebabs */
- UGTHANKI_KEBAB(new Food(new int[] {1883}, new UgthankiKebabEffect())),
- UGTHANKI_KEBAB_SMELLING(new Food(new int[] {1885}, new SmellingUgthankiKebabEffect())),
- KEBAB(new Food(new int[] {1971}, new KebabEffect())),
- SUPER_KEBAB(new Food(new int[] {4608}, new SuperKebabEffect())),
-
- /** Pies */
- REDBERRY_PIE(new HalfableFood(new int[] {2325, 2333, 2313}, new HealingEffect(5))),
- MEAT_PIE(new HalfableFood(new int[] {2327, 2331, 2313}, new HealingEffect(6))),
- APPLE_PIE(new HalfableFood(new int[] {2323, 2335, 2313}, new HealingEffect(7))),
- GARDEN_PIE(new HalfableFood(new int[] {7178, 7180, 2313}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.FARMING, 3, 0)))),
- FISH_PIE(new HalfableFood(new int[] {7188, 7190, 2313}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.FISHING, 3, 0)))),
- ADMIRAL_PIE(new HalfableFood(new int[] {7198, 7200, 2313}, new MultiEffect(new HealingEffect(8), new SkillEffect(Skills.FISHING, 5, 0)))),
- WILD_PIE(new HalfableFood(new int[] {7208, 7210, 2313}, new MultiEffect(new SkillEffect(Skills.SLAYER, 5, 0), new SkillEffect(Skills.RANGE, 4, 0), new HealingEffect(11)))),
- SUMMER_PIE(new HalfableFood(new int[] {7218, 7220, 2313}, new MultiEffect(new HealingEffect(11), new SkillEffect(Skills.AGILITY, 5, 0), new EnergyEffect(10)))),
-
- /** Stews */
- STEW(new Food(new int[] {2003, 1923}, new HealingEffect(11))),
- SPICY_STEW(new Food(new int[] {7479, 1923}, new HealingEffect(11))),
- CURRY(new Food(new int[] {2011, 1923}, new HealingEffect(19))),
- BANANA_STEW(new Food(new int[] {4016, 1923}, new HealingEffect(11))),
-
- /** Pizzas */
- PLAIN_PIZZA(new HalfableFood(new int[] {2289, 2291}, new HealingEffect(7))),
- MEAT_PIZZA(new HalfableFood(new int[] {2293, 2295}, new HealingEffect(8))),
- ANCHOVY_PIZZA(new HalfableFood(new int[] {2297, 2299}, new HealingEffect(9))),
- PINEAPPLE_PIZZA(new HalfableFood(new int[] {2301, 2303}, new HealingEffect(11))),
-
- /** Cakes */
- CAKE(new Cake(new int[] {1891, 1893, 1895}, new HealingEffect(4), "You eat part of the cake.", "You eat some more cake.", "You eat the slice of cake.")),
- CHOCOLATE_CAKE(new Cake(new int[] {1897, 1899, 1901}, new HealingEffect(5), "You eat part of the chocolate cake.", "You eat some more of the chocolate cake.", "You eat the slice of cake.")),
- ROCK_CAKE(new Food(new int[] {2379}, new RockCakeEffect(), "The rock cake resists all attempts to eat it.")),
- DWARVEN_ROCK_CAKE(new Food(new int[] {7510, 7510}, new DwarvenRockCakeEffect(), "Ow! You nearly broke a tooth!", "The rock cake resists all attempts to eat it.")),
- HOT_DWARVEN_ROCK_CAKE(new Food(new int[] {7509, 7509}, new DwarvenRockCakeEffect(), "Ow! You nearly broke a tooth!", "The rock cake resists all attempts to eat it.")),
- COOKED_FISHCAKE(new Food(new int[] {7530}, new HealingEffect(11))),
- MINT_CAKE(new Food(new int[] {9475}, new EnergyEffect(50))),
-
- /** Vegetables */
- POTATO(new Food(new int[] {1942}, new HealingEffect(1))),
- BAKED_POTATO(new Food(new int[] {6701}, new HealingEffect(2))),
- SPICY_SAUCE(new Food(new int[] {7072, 1923}, new HealingEffect(2))),
- CHILLI_CON_CARNE(new Food(new int[] {7062, 1923}, new HealingEffect(5))),
- SCRAMBLED_EGG(new Food(new int[] {7078, 1923}, new HealingEffect(5))),
- EGG_AND_TOMATO(new Food(new int[] {7064, 1923}, new HealingEffect(8))),
- SWEET_CORN(new Food(new int[] {5988}, new MultiEffect(new HealingEffect(1), new PercentageHealthEffect(10)))),
- SWEETCORN_BOWL(new Food(new int[] {7088, 1923}, new MultiEffect(new HealingEffect(1), new PercentageHealthEffect(10)))),
- POTATO_WITH_BUTTER(new Food(new int[] {6703}, new HealingEffect(7))),
- CHILLI_POTATO(new Food(new int[] {7054}, new HealingEffect(14))),
- FRIED_ONIONS(new Food(new int[] {7084, 1923}, new HealingEffect(5))),
- FRIED_MUSHROOMS(new Food(new int[] {7082, 1923}, new HealingEffect(5))),
- POTATO_WITH_CHEESE(new Food(new int[] {6705}, new HealingEffect(16))),
- EGG_POTATO(new Food(new int[] {7056}, new HealingEffect(11))),
- MUSHROOMS_AND_ONIONS(new Food(new int[] {7066, 1923}, new HealingEffect(11))),
- MUSHROOM_POTATO(new Food(new int[] {7058}, new HealingEffect(20))),
- TUNA_AND_CORN(new Food(new int[] {7068, 1923}, new HealingEffect(13))),
- TUNA_POTATO(new Food(new int[] {7060}, new HealingEffect(22))),
- ONION(new Food(new int[] {1957}, new HealingEffect(2), "It's always sad to see a grown man/woman cry.")),
- CABBAGE(new Food(new int[] {1965}, new HealingEffect(2), "You eat the cabbage. Yuck!")),
- DRAYNOR_CABBAGE(new Food(new int[] {1967}, new DraynorCabbageEffect(), "You eat the cabbage.", "It seems to taste nicer than normal.")),
- EVIL_TURNIP(new Food(new int[] {12134, 12136, 12138}, new HealingEffect(6))),
- SPINACH_ROLL(new Food(new int[] {1969}, new HealingEffect(2))),
-
- /** Dairies */
- POT_OF_CREAM(new Food(new int[] {2130}, new HealingEffect(1))),
- CHEESE(new Food(new int[] {1985}, new HealingEffect(2))),
- CHOCOLATEY_MILK(new Drink(new int[] {1977, 1925}, new HealingEffect(4))),
-
- /** Fruits */
- BANANA(new Food(new int[] {1963}, new HealingEffect(2))),
- SLICED_BANANA(new Food(new int[] {3162}, new HealingEffect(2))),
- RED_BANANA(new Food(new int[] {7572}, new HealingEffect(5), "You eat the red banana. It's tastier than your average banana.")),
- SLICED_RED_BANANA(new Food(new int[] {7574}, new HealingEffect(5), "You eat the sliced red banana. Yum.")),
- ORANGE(new Food(new int[] {2108}, new HealingEffect(2))),
- ORANGE_CHUNKS(new Food(new int[] {2110}, new HealingEffect(2))),
- ORANGE_SLICES(new Food(new int[] {2112}, new HealingEffect(2))),
- PAPAYA_FRUIT(new Food(new int[] {5972}, new HealingEffect(2))),
- TENTI_PINEAPPLE(new FakeConsumable(1851, new String[] {"Try using a knife to slice it into pieces."})),
- PINEAPPLE(new FakeConsumable(2114, new String[] {"Try using a knife to slice it into pieces."})),
- PINEAPPLE_CHUNKS(new Food(new int[] {2116}, new HealingEffect(2))),
- PINEAPPLE_RING(new Food(new int[] {2118}, new HealingEffect(2))),
- DWELLBERRIES(new Food(new int[] {2126}, new HealingEffect(2))),
- JANGERBERRIES(new Food(new int[] {247}, new MultiEffect(new SkillEffect(Skills.ATTACK, 2, 0), new SkillEffect(Skills.STRENGTH, 1, 0), new PrayerEffect(1, 0), new SkillEffect(Skills.DEFENCE, -1, 0)))),
- STRAWBERRY(new Food(new int[] {5504}, new MultiEffect(new HealingEffect(1), new PercentageHealthEffect(6)))),
- TOMATO(new Food(new int[] {1982}, new HealingEffect(2))),
- WATERMELON(new FakeConsumable(5982, new String[] {"Try using a knife to slice it into pieces."})),
- WATERMELON_SLICE(new Food(new int[] {5984}, new PercentageHealthEffect(5))),
- LEMON(new Food(new int[] {2102}, new HealingEffect(2))),
- LEMON_CHUNKS(new Food(new int[] {2104}, new HealingEffect(2))),
- LEMON_SLICES(new Food(new int[] {2106}, new HealingEffect(2))),
- LIME(new Food(new int[] {2120}, new HealingEffect(2))),
- LIME_CHUNKS(new Food(new int[] {2122}, new HealingEffect(2))),
- LIME_SLICES(new Food(new int[] {2124}, new HealingEffect(2))),
- PEACH(new Food(new int[] {6883}, new HealingEffect(8))),
- WHITE_TREE_FRUIT(new Food(new int[] {6469}, new MultiEffect(new RandomEnergyEffect(5, 10), new HealingEffect(3)))),
- STRANGE_FRUIT(new Food(new int[] {464}, new MultiEffect(new RemoveStateEffect(EntityState.POISONED.ordinal()), new EnergyEffect(30)))),
-
- /** Gnome Cooking */
- TOAD_CRUNCHIES(new Food(new int[] {2217}, new HealingEffect(12))),
- PREMADE_TD_CRUNCH(new Food(new int[] {2243}, new HealingEffect(12))),
- SPICY_CRUNCHIES(new Food(new int[] {2213}, new HealingEffect(7))),
- PREMADE_SY_CRUNCH(new Food(new int[] {2241}, new HealingEffect(7))),
- WORM_CRUNCHIES(new Food(new int[] {2205}, new HealingEffect(8))),
- PREMADE_WM_CRUNC(new Food(new int[] {2237}, new HealingEffect(8))),
- CHOCCHIP_CRUNCHIES(new Food(new int[] {2209}, new HealingEffect(7))),
- PREMADE_CH_CRUNCH(new Food(new int[] {2239}, new HealingEffect(7))),
- FRUIT_BATTA(new Food(new int[] {2277}, new HealingEffect(11))),
- PREMADE_FRT_BATTA(new Food(new int[] {2225}, new HealingEffect(11))),
- TOAD_BATTA(new Food(new int[] {2255}, new HealingEffect(11))),
- PREMADE_TD_BATTA(new Food(new int[] {2221}, new HealingEffect(11))),
- WORM_BATTA(new Food(new int[] {2253}, new HealingEffect(11))),
- PREMADE_WM_BATTA(new Food(new int[] {2219}, new HealingEffect(11))),
- VEGETABLE_BATTA(new Food(new int[] {2281}, new HealingEffect(11))),
- PREMADE_VEG_BATTA(new Food(new int[] {2227}, new HealingEffect(11))),
- CHEESE_AND_TOMATOES_BATTA(new Food(new int[] {2259}, new HealingEffect(11))),
- PREMADE_CT_BATTA(new Food(new int[] {2223}, new HealingEffect(11))),
- WORM_HOLE(new Food(new int[] {2191}, new HealingEffect(12))),
- PREMADE_WORM_HOLE(new Food(new int[] {2233}, new HealingEffect(12))),
- VEG_BALL(new Food(new int[] {2195}, new HealingEffect(12))),
- PREMADE_VEG_BALL(new Food(new int[] {2235}, new HealingEffect(12))),
- TANGLED_TOADS_LEGS(new Food(new int[] {2187}, new HealingEffect(15))),
- PREMADE_TTL(new Food(new int[] {2231}, new HealingEffect(15))),
- CHOCOLATE_BOMB(new Food(new int[] {2195}, new HealingEffect(15))),
- PREMADE_CHOC_BOMB(new Food(new int[] {2229}, new HealingEffect(15))),
- TOAD_LEGS(new Food(new int[] {2152}, new HealingEffect(3))),
- KING_WORM(new Food(new int[] {2162}, new HealingEffect(2))),
-
- /** Ales */
- ASGOLDIAN_ALE(new FakeConsumable(7508, new String[] {"I don't think I'd like gold in beer thanks. Leave it for the dwarves."})),
- ASGARNIAN_ALE(new Drink(new int[] {1905, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
- ASGARNIAN_ALE_KEG(new Drink(new int[] {5785, 5783, 5781, 5779, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
- ASGARNIAN_ALE_M(new Drink(new int[] {5739, 1919}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
- ASGARNIAN_ALE_M_KEG(new Drink(new int[] {5865, 5863, 5861, 5859, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
- AXEMANS_FOLLY(new Drink(new int[] {5751, 1919}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 1, 0), new HealingEffect(1), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
- AXEMANS_FOLLY_KEG(new Drink(new int[] {5825, 5823, 5821, 5819, 5769}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 1, 0), new HealingEffect(1), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.ATTACK, -3, 0)), new Animation(2289))),
- AXEMANS_FOLLY_M(new Drink(new int[] {5753, 1919}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 2, 0), new HealingEffect(2), new SkillEffect(Skills.STRENGTH, -4, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- AXEMANS_FOLLY_M_KEG(new Drink(new int[] {5905, 5903, 5901, 5899, 5769}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 2, 0), new HealingEffect(2), new SkillEffect(Skills.STRENGTH, -4, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
- BANDITS_BREW(new Drink(new int[] {4627, 1919}, new MultiEffect(new SkillEffect(Skills.THIEVING, 1, 0), new SkillEffect(Skills.ATTACK, 1, 0), new SkillEffect(Skills.STRENGTH, -1, 0), new SkillEffect(Skills.DEFENCE, -6, 0), new HealingEffect(1)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
- BEER(new Drink(new int[] {1917, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 0, 0.04), new SkillEffect(Skills.ATTACK, 0, -0.07)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
- BEER_TANKARD(new Drink(new int[] {3803, 3805}, new MultiEffect(new SkillEffect(Skills.ATTACK, -9, 0), new SkillEffect(Skills.STRENGTH, 4, 0)), "You quaff the beer. You feel slightly reinvigorated...", "...but very dizzy too.")),
- KEG_OF_BEER(new Drink(new int[] {3801}, new KegOfBeerEffect(), new Animation(1330), "You chug the keg. You feel reinvigorated...", "...but extremely drunk too.")),
- CHEFS_DELIGHT(new Drink(new int[] {5755, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
- CHEFS_DELIGHT_KEG(new Drink(new int[] {5833, 5831, 5829, 5827, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
- CHEFS_DELIGHT_M(new Drink(new int[] {5757, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)))),
- CHEFS_DELIGHT_M_KEG(new Drink(new int[] {5913, 5911, 5909, 5907, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)), new Animation(2289))),
- CIDER(new Drink(new int[] {5763, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))))),
- CIDER_KEG(new Drink(new int[] {5849, 5847, 5845, 5843, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))), new Animation(2289))),
- MATURE_CIDER(new Drink(new int[] {5765, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))))),
- CIDER_M_KEG(new Drink(new int[] {5929, 5927, 5925, 5923, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))), new Animation(2289))),
- DRAGON_BITTER(new Drink(new int[] {1911, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- DRAGON_BITTER_KEG(new Drink(new int[] {5809, 5807, 5805, 5803, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
- DRAGON_BITTER_M(new Drink(new int[] {5745, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
- DRAGON_BITTER_M_KEG(new Drink(new int[] {5889, 5887, 5885, 5883, 5769}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
- DWARVEN_STOUT(new Drink(new int[] {1913, 1919}, new MultiEffect(new SkillEffect(Skills.MINING, 1, 0), new SkillEffect(Skills.SMITHING, 1 ,0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0), new SkillEffect(Skills.DEFENCE, -2, 0), new HealingEffect(1)), "You drink the Dwarven Stout. It tastes foul.", "It tastes pretty strong too.")),
- DWARVEN_STOUT_KEG(new Drink(new int[] {5777, 5775, 5773, 5771, 5769}, new MultiEffect(new SkillEffect(Skills.MINING, 1, 0), new SkillEffect(Skills.SMITHING, 1 ,0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0), new SkillEffect(Skills.DEFENCE, -2, 0), new HealingEffect(1)), new Animation(2289), "You drink the Dwarven Stout. It tastes foul.", "It tastes pretty strong too.")),
- DWARVEN_STOUT_M(new Drink(new int[] {5747, 1919}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)))),
- DWARVEN_STOUT_M_KEG(new Drink(new int[] {5857, 5855, 5853, 5851, 5769}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)), new Animation(2289))),
- GREENMANS_ALE(new Drink(new int[] {1909, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)))),
- GREENMANS_ALE_KEG(new Drink(new int[] {5793, 5791, 5789, 5787, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)), new Animation(2289))),
- GREENMANS_ALE_M(new Drink(new int[] {5743, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
- GREENMANS_ALE_M_KEG(new Drink(new int[] {5873, 5871, 5869, 5867, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
- GROG(new Drink(new int[] {1915, 1919}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
- MOONLIGHT_MEAD(new Drink(new int[] {2955, 1919}, new HealingEffect(4), "It tastes like something just died in your mouth.")),
- MOONLIGHT_MEAD_KEG(new Drink(new int[] {5817, 5815, 5813, 5811, 5769}, new HealingEffect(4), new Animation(2289), "It tastes like something just died in your mouth.")),
- MOONLIGHT_MEAD_M(new Drink(new int[] {5749, 1919}, new HealingEffect(6))),
- MOONLIGHT_MEAD_M_KEG(new Drink(new int[] {5897, 5895, 5893, 5891, 5769}, new HealingEffect(6), new Animation(2289))),
- SLAYERS_RESPITE(new Drink(new int[] {5759, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
- SLAYERS_RESPITE_KEG(new Drink(new int[] {5841, 5839, 5837, 5835, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
- SLAYERS_RESPITE_M(new Drink(new int[] {5761, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 4, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
- SLAYERS_RESPITE_M_KEG(new Drink(new int[] {5841, 5839, 5837, 5835, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 4, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
- WIZARDS_MIND_BOMB(new Drink(new int[] {1907, 1919}, new WizardsMindBombEffect(), "You drink the Wizard's Mind Bomb.", "You feel very strange.")),
- MATURE_WMB(new Drink(new int[] {5741, 1919}, new MatureWmbEffect())),
-
- /** Cocktails */
- FRUIT_BLAST(new Drink(new int[] {2084, 2026}, new HealingEffect(9))),
- PREMADE_FR_BLAST(new Food(new int[] {2034, 2026}, new HealingEffect(9))),
- PINEAPPLE_PUNCH(new Drink(new int[] {2048, 2026}, new HealingEffect(9), "You drink the cocktail. It tastes great.")),
- PREMADE_P_PUNCH(new Drink(new int[] {2036, 2026}, new HealingEffect(9), "You drink the cocktail. It tastes great.")),
- WIZARD_BLIZZARD(new Drink(new int[] {2054, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- PREMADE_WIZ_BLZD(new Drink(new int[] {2040, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- SHORT_GREEN_GUY(new Drink(new int[] {2080, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 4, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
- PREMADE_SGG(new Drink(new int[] {2038, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 4, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
- DRUNK_DRAGON(new Drink(new int[] {2092, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- PREMADE_DR_DRAGON(new Drink(new int[] {2032, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- CHOC_SATURDAY(new Drink(new int[] {2074, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- PREMADE_CHOC_SDY(new Drink(new int[] {2030, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- BLURBERRY_SPECIAL(new Drink(new int[] {2064, 2026}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- PREMADE_BLURB_SP(new Drink(new int[] {2028, 2026}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
-
- /** Bottled Drinks */
- KARAMJAN_RUM(new Drink(new int[] {431}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 5, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- BRAINDEATH_RUM(new Drink(new int[] {7157}, new MultiEffect(new SkillEffect(Skills.DEFENCE, 0, -0.1), new SkillEffect(Skills.ATTACK, 0, -0.05), new SkillEffect(Skills.PRAYER, 0, -0.05), new SkillEffect(Skills.RANGE, 0, -0.05), new SkillEffect(Skills.MAGIC, 0, -0.05), new SkillEffect(Skills.HERBLORE, 0, -0.05), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.MINING, 1, 0)), "With a sense of impending doom you drink the 'rum'. You try very hard not to die.")),
- RUM_TROUBLE_BREWING_RED(new Drink(new int[] {8940, 8940}, new TroubleBrewingRumEffect("Oh gods! It tastes like burning!"), new Animation(9605))),
- RUM_TROUBLE_BREWING_BLUE(new Drink(new int[] {8941, 8941}, new TroubleBrewingRumEffect("My Liver! My Liver is melting!"), new Animation(9604))),
- VODKA(new Drink(new int[] {2015}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
- GIN(new Drink(new int[] {2019}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 1, 0), new SkillEffect(Skills.ATTACK, 4, 0), new RandomHealthEffect(3, 4)))),
- BRANDY(new Drink(new int[] {2021}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.ATTACK, 4, 0)))),
- WHISKY(new Drink(new int[] {2017}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
- BOTTLE_OF_WINE(new Drink(new int[] {2015, 7921}, new MultiEffect(new HealingEffect(14), new SkillEffect(Skills.ATTACK, -3, 0)))),
-
- /** Wine */
- JUG_OF_WINE(new Drink(new int[] {1993, 1935}, new MultiEffect(new HealingEffect(11), new SkillEffect(Skills.ATTACK, -2, 0)))),
- HALF_FULL_WINE_JUG(new Drink(new int[] {1989, 1935}, new HealingEffect(7))),
-
- /** Tea */
- CUP_OF_TEA(new Drink(new int[] {712, 1980}, new MultiEffect(new HealingEffect(3), new SkillEffect(Skills.ATTACK, 3, 0)), "Aaah, nothing like a nice cuppa tea!")),
- CUP_OF_TEA_NETTLE(new Drink(new int[] {4242, 1980}, new EnergyEffect(10))),
- CUP_OF_TEA_MILKY_NETTLE(new Drink(new int[] {4243, 1980}, new EnergyEffect(10))),
- NETTLE_TEA(new Drink(new int[] {4239, 1980}, new NettleTeaEffect())),
- NETTLE_TEA_MILKY(new Drink(new int[] {4240, 1980}, new NettleTeaEffect())),
- CUP_OF_TEA_CLAY(new Drink(new int[] {7730, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0), "You feel refreshed and ready for more building.")),
- CUP_OF_TEA_CLAY_MILKY(new Drink(new int[] {7731, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0))),
- CUP_OF_TEA_WHITE(new Drink(new int[] {7733, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0), "You feel refreshed and ready for more building.")),
- CUP_OF_TEA_WHITE_MILKY(new Drink(new int[] {7734, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0))),
- CUP_OF_TEA_GOLD(new Drink(new int[] {7736, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0), "You feel refreshed and ready for more building.")),
- CUP_OF_TEA_GOLD_MILKY(new Drink(new int[] {7737, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0))),
-
- /** Miscellaneous */
- CHOCOLATE_BAR(new Food(new int[] {1973}, new HealingEffect(3))),
- PURPLE_SWEETS(new Food(new int[] {4561}, new HealingEffect(0))),
- PURPLE_SWEETS_STACKABLE(new Food(new int[] {10476}, new MultiEffect(new EnergyEffect(10), new RandomHealthEffect(1, 3)), "The sugary goodness heals some energy.", "The sugary goodness is yummy.")),
- FIELD_RATION(new Food(new int[] {7934}, new HealingEffect(10))),
- ROLL(new Food(new int[] {6963}, new HealingEffect(6))),
- TCHIKI_MONKEY_NUTS(new Food(new int[] {7573}, new HealingEffect(5), "You eat the Tchiki monkey nuts. They taste nutty.")),
- TCHIKI_MONKEY_PASTE(new Food(new int[] {7575}, new HealingEffect(5), "You eat the Tchiki monkey nut paste. It sticks to the roof of your mouth.")),
- OOMLIE_WRAP(new Food(new int[] {Items.COOKED_OOMLIE_WRAP_2343}, new MultiEffect(new HealingEffect(14), new AchievementEffect(DiaryType.KARAMJA, 2, 2)))),
- ROE(new Food(new int[]{11324}, new HealingEffect(3))),
- EQUA_LEAVES(new Food(new int[]{2128}, new HealingEffect(1))),
- CHOC_ICE(new Food(new int[]{6794}, new HealingEffect(6))),
- EDIBLE_SEAWEED(new Food(new int[] {403}, new HealingEffect(4))),
-
- /** Special Events */
- PUMPKIN(new Food(new int[] {1959}, new HealingEffect(14))),
- EASTER_EGG(new Food(new int[] {1961}, new HealingEffect(14))),
-
- /** Potions */
- STRENGTH(new Potion(new int[] {113, 115, 117, 119}, new SkillEffect(Skills.STRENGTH, 3, 0.1))),
- ATTACK(new Potion(new int[] {2428, 121, 123, 125}, new SkillEffect(Skills.ATTACK, 3, 0.1))),
- DEFENCE(new Potion(new int[] {2432, 133, 135, 137}, new SkillEffect(Skills.DEFENCE, 3, 0.1))),
- RANGING(new Potion(new int[] {2444, 169, 171, 173}, new SkillEffect(Skills.RANGE, 3, 0.1))),
- MAGIC(new Potion(new int[] {3040, 3042, 3044, 3046}, new SkillEffect(Skills.MAGIC, 3, 0.1))),
- SUPER_STRENGTH(new Potion(new int[] {2440, 157, 159, 161}, new SkillEffect(Skills.STRENGTH, 3, 0.2))),
- SUPER_ATTACK(new Potion(new int[] {2436, 145, 147, 149}, new SkillEffect(Skills.ATTACK, 3, 0.2))),
- SUPER_DEFENCE(new Potion(new int[] {2442, 163, 165, 167}, new SkillEffect(Skills.DEFENCE, 3, 0.2))),
- ANTIPOISON(new Potion(new int[] {2446, 175, 177, 179}, new MultiEffect(new SetAttributeEffect("poison:immunity", 143), new RemoveStateEffect(EntityState.POISONED.ordinal())))),
- ANTIPOISON_(new Potion(new int[] {5943, 5945, 5947, 5949}, new MultiEffect(new SetAttributeEffect("poison:immunity", 863), new RemoveStateEffect(EntityState.POISONED.ordinal())))),
- ANTIPOISON__(new Potion(new int[] {5952, 5954, 5956, 5958}, new MultiEffect(new SetAttributeEffect("poison:immunity", 2000), new RemoveStateEffect(EntityState.POISONED.ordinal())))),
- SUPER_ANTIP(new Potion(new int[] {2448, 181, 183, 185}, new MultiEffect(new SetAttributeEffect("poison:immunity", 1000), new RemoveStateEffect(EntityState.POISONED.ordinal())))),
- RELICYM(new Potion(new int[] {4842, 4844, 4846, 4848}, new MultiEffect(new SetAttributeEffect("disease:immunity", 300), new RemoveStateEffect("disease")))),
- AGILITY(new Potion(new int[] {3032, 3034, 3036, 3038}, new SkillEffect(Skills.AGILITY, 3, 0))),
- HUNTER(new Potion(new int[] {9998, 10000, 10002, 10004}, new SkillEffect(Skills.HUNTER, 3, 0))),
- RESTORE(new Potion(new int[] {2430, 127, 129, 131}, new RestoreEffect(10, 0.3))),
- SARA_BREW(new Potion(new int[] {6685, 6687, 6689, 6691}, new MultiEffect(new PercentHeal(2, .15), new SkillEffect(Skills.ATTACK, 0, -0.10), new SkillEffect(Skills.STRENGTH, 0, -0.10), new SkillEffect(Skills.MAGIC, 0, -0.10), new SkillEffect(Skills.RANGE, 0, -0.10), new SkillEffect(Skills.DEFENCE, 2, 0.2)))),
- SUMMONING(new Potion(new int[] {12140, 12142, 12144, 12146}, new SummoningEffect(7, 0.25))),
- COMBAT(new Potion(new int[] {9739, 9741, 9743, 9745}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, .1), new SkillEffect(Skills.ATTACK, 3, .1)))),
- ENERGY(new Potion(new int[] {3008, 3010, 3012, 3014}, new MultiEffect(new EnergyEffect(10), new HealingEffect(3)))),
- FISHING(new Potion(new int[] {2438, 151, 153, 155}, new SkillEffect(Skills.FISHING, 3, 0))),
- PRAYER(new Potion(new int[] {2434, 139, 141, 143}, new PrayerEffect(7, 0.25))),
- SUPER_RESTO(new Potion(new int[] {3024, 3026, 3028, 3030}, new MultiEffect(new RestoreEffect(8, 0.25), new PrayerEffect(8, 0.25), new SummoningEffect(8, 0.25)))),
- ZAMMY_BREW(new Potion(new int[] {2450, 189, 191, 193}, new MultiEffect(new DamageEffect(10, true), new SkillEffect(Skills.ATTACK, 0, 0.15), new SkillEffect(Skills.STRENGTH, 0, 0.25), new SkillEffect(Skills.DEFENCE, 0, -0.1), new RandomPrayerEffect(0, 10)))),
- ANTIFIRE(new Potion(new int[] {2452, 2454, 2456, 2458}, new SetAttributeEffect("fire:immune", 600, true))),
- GUTH_REST(new Potion(new int[] {4417, 4419, 4421, 4423}, new MultiEffect(new RemoveStateEffect(EntityState.POISONED.ordinal()), new EnergyEffect(5), new HealingEffect(5)))),
- MAGIC_ESS(new Potion(new int[] {11491, 11489}, new SkillEffect(Skills.MAGIC,3,0))),
- SANFEW(new Potion(new int[] {10925, 10927, 10929, 10931}, new MultiEffect(new RestoreEffect(8,0.25), new PrayerEffect(8,0.25), new RemoveStateEffect(EntityState.POISONED.ordinal()), new RemoveStateEffect("disease")))),
- SUPER_ENERGY(new Potion(new int[] {3016, 3018, 3020, 3022}, new EnergyEffect(20))),
- BLAMISH_OIL(new FakeConsumable(1582, new String[] {"You know... I'd really rather not."})),
-
- /** Barbarian Mixes */
- PRAYERMIX(new BarbarianMix(new int[] {11465, 11467}, new MultiEffect(new PrayerEffect(7, 0.25), new HealingEffect(6)))),
- ZAMMY_MIX(new BarbarianMix(new int[] {11521, 11523}, new MultiEffect(new DamageEffect(10, true), new SkillEffect(Skills.ATTACK, 0, 0.15), new SkillEffect(Skills.STRENGTH, 0, 0.25), new SkillEffect(Skills.DEFENCE, 0, -0.1), new RandomPrayerEffect(0, 10)))),
- ATT_MIX(new BarbarianMix(new int[] {11429, 11431}, new MultiEffect(new SkillEffect(Skills.ATTACK, 3, 0.1), new HealingEffect(3)))),
- ANTIP_MIX(new BarbarianMix(new int[] {11433, 11435}, new MultiEffect(new RemoveStateEffect(EntityState.POISONED.ordinal()), new SetAttributeEffect("poison:immunity", 143), new HealingEffect(3)))),
- RELIC_MIX(new BarbarianMix(new int[] {11437, 11439}, new MultiEffect(new RemoveStateEffect("disease"), new SetAttributeEffect("disease:immunity", 300), new HealingEffect(3)))),
- STR_MIX(new BarbarianMix(new int[] {11441, 11443}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0.1), new HealingEffect(3)))),
- RESTO_MIX(new BarbarianMix(new int[] {11449, 11451}, new MultiEffect(new RestoreEffect(10, 0.3), new HealingEffect(3)))),
- ENERGY_MIX(new BarbarianMix(new int[] {11453, 11455}, new MultiEffect(new EnergyEffect(10), new HealingEffect(6)))),
- DEF_MIX(new BarbarianMix(new int[] {11457, 11459}, new MultiEffect(new SkillEffect(Skills.DEFENCE, 3, 0.1), new HealingEffect(6)))),
- AGIL_MIX(new BarbarianMix(new int[] {11461, 11463}, new MultiEffect(new SkillEffect(Skills.AGILITY, 3, 0), new HealingEffect(6)))),
- COMBAT_MIX(new BarbarianMix(new int[] {11445, 11447}, new MultiEffect(new SkillEffect(Skills.ATTACK, 3, 0.1), new SkillEffect(Skills.STRENGTH, 3, 0.1), new HealingEffect(6)))),
- SUPER_ATT_MIX(new BarbarianMix(new int[] {11469, 11471}, new MultiEffect(new SkillEffect(Skills.ATTACK, 5, 0.15), new HealingEffect(6)))),
- FISH_MIX(new BarbarianMix(new int[] {11477, 11479}, new MultiEffect(new SkillEffect(Skills.FISHING, 3, 0), new HealingEffect(6)))),
- SUPER_ENERGY_MIX(new BarbarianMix(new int[] {11481, 11483}, new MultiEffect(new EnergyEffect(20), new HealingEffect(6)))),
- HUNTING_MIX(new BarbarianMix(new int[] {11517, 11519}, new MultiEffect(new SkillEffect(Skills.HUNTER, 3, 0), new HealingEffect(6)))),
- SUPER_STR_MIX(new BarbarianMix(new int[] {11485, 11487}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 5, 0.15), new HealingEffect(6)))),
-
- /** Stealing creation potions */
- SC_PRAYER(new Potion(new int[] {14207, 14209, 14211, 14213, 14215}, new PrayerEffect(7, 0.25))),
- SC_ENERGY(new Potion(new int[] {14217, 14219, 14221, 14223, 14225}, new EnergyEffect(20))),
- SC_ATTACK(new Potion(new int[] {14227, 14229, 14231, 14233, 14235}, new SkillEffect(Skills.ATTACK, 3, 0.2))),
- SC_STRENGTH(new Potion(new int[] {14237, 14239, 14241, 14243, 14245}, new SkillEffect(Skills.STRENGTH, 3, 0.2))),
- SC_RANGE(new Potion(new int[] {14247, 14249, 14251, 14253, 14255}, new SkillEffect(Skills.RANGE, 3, 0.1))),
- SC_DEFENCE(new Potion(new int[] {14257, 14259, 14261, 14263, 14265}, new SkillEffect(Skills.DEFENCE, 3, 0.1))),
- SC_MAGIC(new Potion(new int[] {14267, 14269, 14271, 14273, 14275}, new SkillEffect(Skills.MAGIC, 3, 0.1))),
- SC_SUMMONING(new Potion(new int[] {14277, 14279, 14281, 14283, 14285}, new SummoningEffect(7, 0.25)));
-
- public static HashMap consumables = new HashMap<>();
-
- private final Consumable consumable;
-
- Consumables(Consumable consumable) {
- this.consumable = consumable;
- }
-
- public Consumable getConsumable() {
- return consumable;
- }
-
- public static Consumable getConsumableById(final int itemId) {
- return consumables.get(itemId);
- }
-
- public static void add(final Consumable consumable) {
- for (int id : consumable.getIds()) {
- consumables.putIfAbsent(id, consumable);
- }
- }
-
- /*
- Static modifier used to populate search engine lists.
- */
- static {
- for (Consumables consumable : Consumables.values()) {
- add(consumable.consumable);
- }
- }
-}
+package content.data.consumables;
+
+import content.data.consumables.effects.*;
+import core.game.consumable.*;
+import core.game.node.entity.player.link.diary.DiaryType;
+import core.game.node.entity.skill.Skills;
+import core.game.world.update.flag.context.Animation;
+import org.rs09.consts.Items;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+
+import static core.tools.TickUtilsKt.minutesToTicks;
+import static core.tools.TickUtilsKt.secondsToTicks;
+
+/**
+ * Represents a repository of active consumables in the framework.
+ */
+public enum Consumables {
+
+ /** Meats */
+ COOKED_MEAT(new Food(new int[] {2142}, new HealingEffect(3))),
+ SHRIMPS(new Food(new int[] {315}, new HealingEffect(3))),
+ COOKED_CHICKEN(new Food(new int[] {2140}, new HealingEffect(3))),
+ COOKED_RABBIT(new Food(new int[] {3228}, new HealingEffect(5))),
+ ANCHOVIES(new Food(new int[] {319}, new HealingEffect(1))),
+ SARDINE(new Food(new int[] {325}, new HealingEffect(4))),
+ POISON_KARAMBWAN(new Food(new int[] {3146}, new PoisonKarambwanEffect())),
+ UGTHANKI_MEAT(new Food(new int[] {1861}, new HealingEffect(3))),
+ HERRING(new Food(new int[] {347}, new HealingEffect(5))),
+ MACKEREL(new Food(new int[] {355}, new HealingEffect(6))),
+ ROAST_BIRD_MEAT(new Food(new int[] {9980}, new HealingEffect(6))),
+ THIN_SNAIL(new Food(new int[] {3369}, new RandomHealthEffect(5, 7))),
+ TROUT(new Food(new int[] {333}, new HealingEffect(7))),
+ SPIDER_ON_STICK(new Food(new int[] {6297, 6305}, new RandomHealthEffect(7, 11))),
+ SPIDER_ON_SHAFT(new Food(new int[] {6299}, new HealingEffect(7))),
+ ROAST_RABBIT(new Food(new int[] {7223}, new HealingEffect(7))),
+ LEAN_SNAIL(new Food(new int[] {3371}, new RandomHealthEffect(6, 8))),
+ COD(new Food(new int[] {339}, new HealingEffect(7))),
+ PIKE(new Food(new int[] {351}, new HealingEffect(8))),
+ ROAST_BEAST_MEAT(new Food(new int[] {9988}, new HealingEffect(8))),
+ COOKED_CRAB_MEAT(new Food(new int[] {7521, 7523, 7524, 7525, 7526}, new HealingEffect(2))),
+ FAT_SNAIL(new Food(new int[] {3373}, new RandomHealthEffect(7, 9))),
+ SALMON(new Food(new int[] {329}, new HealingEffect(9))),
+ SLIMY_EEL(new Food(new int[] {3381}, new RandomHealthEffect(6, 10))),
+ TUNA(new Food(new int[] {361}, new HealingEffect(10))),
+ COOKED_KARAMBWAN(new Food(new int[] {3144}, new HealingEffect(18)), true),
+ COOKED_CHOMPY(new Food(new int[] {2878}, new HealingEffect(10))),
+ RAINBOW_FISH(new Food(new int[] {10136}, new HealingEffect(11))),
+ CAVE_EEL(new Food(new int[] {5003}, new RandomHealthEffect(8, 12))),
+ LOBSTER(new Food(new int[] {379}, new HealingEffect(12))),
+ COOKED_JUBBLY(new Food(new int[] {7568}, new HealingEffect(15))),
+ BASS(new Food(new int[] {365}, new HealingEffect(13))),
+ SWORDFISH(new Food(new int[] {373}, new HealingEffect(14))),
+ LAVA_EEL(new Food(new int[] {2149}, new HealingEffect(11))),
+ MONKFISH(new Food(new int[] {7946}, new HealingEffect(16))),
+ SHARK(new Food(new int[] {385}, new HealingEffect(20))),
+ SEA_TURTLE(new Food(new int[] {397}, new HealingEffect(21))),
+ MANTA_RAY(new Food(new int[] {391}, new HealingEffect(22))),
+ KARAMBWANJI(new Food(new int[] {3151}, new HealingEffect(3))),
+ STUFFED_SNAKE(new Food(new int[] {7579}, new HealingEffect(20), "You eat the stuffed snake-it's quite a meal! It tastes like chicken.")),
+ CRAYFISH(new Food(new int[] {13433}, new HealingEffect(1))),
+ GIANT_FROG_LEGS(new Food(new int [] {4517}, new HealingEffect(6))),
+
+ /** Breads */
+ BREAD(new Food(new int[] {2309}, new HealingEffect(5))),
+ BAGUETTE(new Food(new int[] {6961}, new HealingEffect(6))),
+
+ /** Sandwiches */
+ TRIANGLE_SANDWICH(new Food(new int[] {6962}, new HealingEffect(6))),
+ SQUARE_SANDWICH(new Food(new int[] {6965}, new HealingEffect(6))),
+ SEAWEED_SANDWICH(new FakeConsumable(3168, new String[] {"You really, really do not want to eat that."})),
+ FROGBURGER(new Food(new int[] {10962}, new HealingEffect(2))),
+
+ /** Kebabs */
+ UGTHANKI_KEBAB(new Food(new int[] {1883}, new UgthankiKebabEffect())),
+ UGTHANKI_KEBAB_SMELLING(new Food(new int[] {1885}, new SmellingUgthankiKebabEffect())),
+ KEBAB(new Food(new int[] {1971}, new KebabEffect())),
+ SUPER_KEBAB(new Food(new int[] {4608}, new SuperKebabEffect())),
+
+ /** Pies */
+ REDBERRY_PIE(new HalfableFood(new int[] {2325, 2333, 2313}, new HealingEffect(5))),
+ MEAT_PIE(new HalfableFood(new int[] {2327, 2331, 2313}, new HealingEffect(6))),
+ APPLE_PIE(new HalfableFood(new int[] {2323, 2335, 2313}, new HealingEffect(7))),
+ GARDEN_PIE(new HalfableFood(new int[] {7178, 7180, 2313}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.FARMING, 3, 0)))),
+ FISH_PIE(new HalfableFood(new int[] {7188, 7190, 2313}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.FISHING, 3, 0)))),
+ ADMIRAL_PIE(new HalfableFood(new int[] {7198, 7200, 2313}, new MultiEffect(new HealingEffect(8), new SkillEffect(Skills.FISHING, 5, 0)))),
+ WILD_PIE(new HalfableFood(new int[] {7208, 7210, 2313}, new MultiEffect(new SkillEffect(Skills.SLAYER, 5, 0), new SkillEffect(Skills.RANGE, 4, 0), new HealingEffect(11)))),
+ SUMMER_PIE(new HalfableFood(new int[] {7218, 7220, 2313}, new MultiEffect(new HealingEffect(11), new SkillEffect(Skills.AGILITY, 5, 0), new EnergyEffect(10)))),
+
+ /** Stews */
+ STEW(new Food(new int[] {2003, 1923}, new HealingEffect(11))),
+ SPICY_STEW(new Food(new int[] {7479, 1923}, new HealingEffect(11))),
+ CURRY(new Food(new int[] {2011, 1923}, new HealingEffect(19))),
+ BANANA_STEW(new Food(new int[] {4016, 1923}, new HealingEffect(11))),
+
+ /** Pizzas */
+ PLAIN_PIZZA(new HalfableFood(new int[] {2289, 2291}, new HealingEffect(7))),
+ MEAT_PIZZA(new HalfableFood(new int[] {2293, 2295}, new HealingEffect(8))),
+ ANCHOVY_PIZZA(new HalfableFood(new int[] {2297, 2299}, new HealingEffect(9))),
+ PINEAPPLE_PIZZA(new HalfableFood(new int[] {2301, 2303}, new HealingEffect(11))),
+
+ /** Cakes */
+ CAKE(new Cake(new int[] {1891, 1893, 1895}, new HealingEffect(4), "You eat part of the cake.", "You eat some more cake.", "You eat the slice of cake.")),
+ CHOCOLATE_CAKE(new Cake(new int[] {1897, 1899, 1901}, new HealingEffect(5), "You eat part of the chocolate cake.", "You eat some more of the chocolate cake.", "You eat the slice of cake.")),
+ ROCK_CAKE(new Food(new int[] {2379}, new RockCakeEffect(), "The rock cake resists all attempts to eat it.")),
+ DWARVEN_ROCK_CAKE(new Food(new int[] {7510, 7510}, new DwarvenRockCakeEffect(), "Ow! You nearly broke a tooth!", "The rock cake resists all attempts to eat it.")),
+ HOT_DWARVEN_ROCK_CAKE(new Food(new int[] {7509, 7509}, new DwarvenRockCakeEffect(), "Ow! You nearly broke a tooth!", "The rock cake resists all attempts to eat it.")),
+ COOKED_FISHCAKE(new Food(new int[] {7530}, new HealingEffect(11))),
+ MINT_CAKE(new Food(new int[] {9475}, new EnergyEffect(50))),
+
+ /** Vegetables */
+ POTATO(new Food(new int[] {1942}, new HealingEffect(1), "You eat the potato. Yuck!")),
+ BAKED_POTATO(new Food(new int[] {6701}, new HealingEffect(4))),
+ SPICY_SAUCE(new Food(new int[] {7072, 1923}, new HealingEffect(2))),
+ CHILLI_CON_CARNE(new Food(new int[] {7062, 1923}, new HealingEffect(5))),
+ SCRAMBLED_EGG(new Food(new int[] {7078, 1923}, new HealingEffect(5))),
+ EGG_AND_TOMATO(new Food(new int[] {7064, 1923}, new HealingEffect(8))),
+ SWEET_CORN(new Food(new int[] {5988}, new MultiEffect(new HealingEffect(1), new PercentageHealthEffect(10)))),
+ SWEETCORN_BOWL(new Food(new int[] {7088, 1923}, new MultiEffect(new HealingEffect(1), new PercentageHealthEffect(10)))),
+ POTATO_WITH_BUTTER(new Food(new int[] {6703}, new HealingEffect(7))),
+ CHILLI_POTATO(new Food(new int[] {7054}, new HealingEffect(14))),
+ FRIED_ONIONS(new Food(new int[] {7084, 1923}, new HealingEffect(5))),
+ FRIED_MUSHROOMS(new Food(new int[] {7082, 1923}, new HealingEffect(5))),
+ POTATO_WITH_CHEESE(new Food(new int[] {6705}, new HealingEffect(16))),
+ EGG_POTATO(new Food(new int[] {7056}, new HealingEffect(11))),
+ MUSHROOMS_AND_ONIONS(new Food(new int[] {7066, 1923}, new HealingEffect(11))),
+ MUSHROOM_POTATO(new Food(new int[] {7058}, new HealingEffect(20))),
+ TUNA_AND_CORN(new Food(new int[] {7068, 1923}, new HealingEffect(13))),
+ TUNA_POTATO(new Food(new int[] {7060}, new HealingEffect(22))),
+ ONION(new Food(new int[] {1957}, new HealingEffect(1), "It's always sad to see a grown man/woman cry.")),
+ CABBAGE(new Food(new int[] {1965}, new HealingEffect(1), "You eat the cabbage. Yuck!")),
+ DRAYNOR_CABBAGE(new Food(new int[] {1967}, new DraynorCabbageEffect(), "You eat the cabbage.", "It seems to taste nicer than normal.")),
+ EVIL_TURNIP(new Food(new int[] {12134, 12136, 12138}, new HealingEffect(6))),
+ SPINACH_ROLL(new Food(new int[] {1969}, new HealingEffect(2))),
+
+ /** Dairies */
+ POT_OF_CREAM(new Food(new int[] {2130}, new HealingEffect(1))),
+ CHEESE(new Food(new int[] {1985}, new HealingEffect(2))),
+ CHOCOLATEY_MILK(new Drink(new int[] {1977, 1925}, new HealingEffect(4))),
+
+ /** Fruits */
+ BANANA(new Food(new int[] {1963}, new HealingEffect(2))),
+ SLICED_BANANA(new Food(new int[] {3162}, new HealingEffect(2))),
+ RED_BANANA(new Food(new int[] {7572}, new HealingEffect(5), "You eat the red banana. It's tastier than your average banana.")),
+ SLICED_RED_BANANA(new Food(new int[] {7574}, new HealingEffect(5), "You eat the sliced red banana. Yum.")),
+ ORANGE(new Food(new int[] {2108}, new HealingEffect(2))),
+ ORANGE_CHUNKS(new Food(new int[] {2110}, new HealingEffect(2))),
+ ORANGE_SLICES(new Food(new int[] {2112}, new HealingEffect(2))),
+ PAPAYA_FRUIT(new Food(new int[] {5972}, new MultiEffect(new EnergyEffect(5), new HealingEffect(8)))),
+ TENTI_PINEAPPLE(new FakeConsumable(1851, new String[] {"Try using a knife to slice it into pieces."})),
+ PINEAPPLE(new FakeConsumable(2114, new String[] {"Try using a knife to slice it into pieces."})),
+ PINEAPPLE_CHUNKS(new Food(new int[] {2116}, new HealingEffect(2))),
+ PINEAPPLE_RING(new Food(new int[] {2118}, new HealingEffect(2))),
+ DWELLBERRIES(new Food(new int[] {2126}, new HealingEffect(2))),
+ JANGERBERRIES(new Food(new int[] {247}, new MultiEffect(new SkillEffect(Skills.ATTACK, 2, 0), new SkillEffect(Skills.STRENGTH, 1, 0), new PrayerEffect(1, 0), new SkillEffect(Skills.DEFENCE, -1, 0)), "You eat the jangerberries.", "They taste very bitter.")),
+ STRAWBERRY(new Food(new int[] {5504}, new MultiEffect(new HealingEffect(1), new PercentageHealthEffect(6)))),
+ TOMATO(new Food(new int[] {1982}, new HealingEffect(2))),
+ WATERMELON(new FakeConsumable(5982, new String[] {"You can't eat it whole; maybe you should cut it up."})),
+ WATERMELON_SLICE(new Food(new int[] {5984}, new PercentageHealthEffect(5))),
+ LEMON(new Food(new int[] {2102}, new HealingEffect(2))),
+ LEMON_CHUNKS(new Food(new int[] {2104}, new HealingEffect(2))),
+ LEMON_SLICES(new Food(new int[] {2106}, new HealingEffect(2))),
+ LIME(new Food(new int[] {2120}, new HealingEffect(2))),
+ LIME_CHUNKS(new Food(new int[] {2122}, new HealingEffect(2))),
+ LIME_SLICES(new Food(new int[] {2124}, new HealingEffect(2))),
+ PEACH(new Food(new int[] {6883}, new HealingEffect(8))),
+ WHITE_TREE_FRUIT(new Food(new int[] {6469}, new MultiEffect(new RandomEnergyEffect(5, 10), new HealingEffect(3)))),
+ STRANGE_FRUIT(new Food(new int[] {464}, new MultiEffect(new RemoveTimerEffect("poison"), new EnergyEffect(30)))),
+
+ /** Gnome Cooking */
+ TOAD_CRUNCHIES(new Food(new int[] {2217}, new HealingEffect(8))),
+ PREMADE_TD_CRUNCH(new Food(new int[] {2243}, new HealingEffect(8))),
+ SPICY_CRUNCHIES(new Food(new int[] {2213}, new HealingEffect(7))),
+ PREMADE_SY_CRUNCH(new Food(new int[] {2241}, new HealingEffect(7))),
+ WORM_CRUNCHIES(new Food(new int[] {2205}, new HealingEffect(8))),
+ PREMADE_WM_CRUNC(new Food(new int[] {2237}, new HealingEffect(8))),
+ CHOCCHIP_CRUNCHIES(new Food(new int[] {2209}, new HealingEffect(7))),
+ PREMADE_CH_CRUNCH(new Food(new int[] {2239}, new HealingEffect(7))),
+ FRUIT_BATTA(new Food(new int[] {2277}, new HealingEffect(11))),
+ PREMADE_FRT_BATTA(new Food(new int[] {2225}, new HealingEffect(11))),
+ TOAD_BATTA(new Food(new int[] {2255}, new HealingEffect(11))),
+ PREMADE_TD_BATTA(new Food(new int[] {2221}, new HealingEffect(11))),
+ WORM_BATTA(new Food(new int[] {2253}, new HealingEffect(11))),
+ PREMADE_WM_BATTA(new Food(new int[] {2219}, new HealingEffect(11))),
+ VEGETABLE_BATTA(new Food(new int[] {2281}, new HealingEffect(11))),
+ PREMADE_VEG_BATTA(new Food(new int[] {2227}, new HealingEffect(11))),
+ CHEESE_AND_TOMATOES_BATTA(new Food(new int[] {2259}, new HealingEffect(11))),
+ PREMADE_CT_BATTA(new Food(new int[] {2223}, new HealingEffect(11))),
+ WORM_HOLE(new Food(new int[] {2191}, new HealingEffect(12))),
+ PREMADE_WORM_HOLE(new Food(new int[] {2233}, new HealingEffect(12))),
+ VEG_BALL(new Food(new int[] {2195}, new HealingEffect(12))),
+ PREMADE_VEG_BALL(new Food(new int[] {2235}, new HealingEffect(12))),
+ TANGLED_TOADS_LEGS(new Food(new int[] {2187}, new HealingEffect(15))),
+ PREMADE_TTL(new Food(new int[] {2231}, new HealingEffect(15))),
+ CHOCOLATE_BOMB(new Food(new int[] {2195}, new HealingEffect(15))),
+ PREMADE_CHOC_BOMB(new Food(new int[] {2229}, new HealingEffect(15))),
+ TOAD_LEGS(new Food(new int[] {2152}, new HealingEffect(3))),
+ KING_WORM(new Food(new int[] {2162}, new HealingEffect(2))),
+
+ /** Ales */
+ ASGOLDIAN_ALE(new FakeConsumable(7508, new String[] {"I don't think I'd like gold in beer thanks. Leave it for the dwarves."})),
+ ASGARNIAN_ALE(new Drink(new int[] {1905, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
+ ASGARNIAN_ALE_KEG(new Drink(new int[] {5785, 5783, 5781, 5779, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289), "You drink the ale. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
+ ASGARNIAN_ALE_M(new Drink(new int[] {5739, 1919}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
+ ASGARNIAN_ALE_M_KEG(new Drink(new int[] {5865, 5863, 5861, 5859, 5769}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
+ AXEMANS_FOLLY(new Drink(new int[] {5751, 1919}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 1, 0), new HealingEffect(1), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
+ AXEMANS_FOLLY_KEG(new Drink(new int[] {5825, 5823, 5821, 5819, 5769}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 1, 0), new HealingEffect(1), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.ATTACK, -3, 0)), new Animation(2289))),
+ AXEMANS_FOLLY_M(new Drink(new int[] {5753, 1919}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 2, 0), new HealingEffect(2), new SkillEffect(Skills.STRENGTH, -4, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ AXEMANS_FOLLY_M_KEG(new Drink(new int[] {5905, 5903, 5901, 5899, 5769}, new MultiEffect(new SkillEffect(Skills.WOODCUTTING, 2, 0), new HealingEffect(2), new SkillEffect(Skills.STRENGTH, -4, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
+ BANDITS_BREW(new Drink(new int[] {4627, 1919}, new MultiEffect(new SkillEffect(Skills.THIEVING, 1, 0), new SkillEffect(Skills.ATTACK, 1, 0), new SkillEffect(Skills.STRENGTH, -1, 0), new SkillEffect(Skills.DEFENCE, -6, 0), new HealingEffect(1)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
+ BEER(new Drink(new int[] {1917, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 0, 0.04), new SkillEffect(Skills.ATTACK, 0, -0.07)), "You drink the beer. You feel slightly reinvigorated...", "...and slightly dizzy too.")),
+ BEER_TANKARD(new Drink(new int[] {3803, 3805}, new MultiEffect(new SkillEffect(Skills.ATTACK, -9, 0), new SkillEffect(Skills.STRENGTH, 4, 0)), "You quaff the beer. You feel slightly reinvigorated...", "...but very dizzy too.")),
+ KEG_OF_BEER(new Drink(new int[] {3801}, new KegOfBeerEffect(), new Animation(1330), "You chug the keg. You feel reinvigorated...", "...but extremely drunk too.")),
+ CHEFS_DELIGHT(new Drink(new int[] {5755, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
+ CHEFS_DELIGHT_KEG(new Drink(new int[] {5833, 5831, 5829, 5827, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 1, 0.05), new HealingEffect(1), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
+ CHEFS_DELIGHT_M(new Drink(new int[] {5757, 1919}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)))),
+ CHEFS_DELIGHT_M_KEG(new Drink(new int[] {5913, 5911, 5909, 5907, 5769}, new MultiEffect(new SkillEffect(Skills.COOKING, 2, 0.05), new HealingEffect(2), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0)), new Animation(2289))),
+ CIDER(new Drink(new int[] {5763, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))))),
+ CIDER_KEG(new Drink(new int[] {5849, 5847, 5845, 5843, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 1, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0))), new Animation(2289))),
+ MATURE_CIDER(new Drink(new int[] {5765, 1919}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))))),
+ CIDER_M_KEG(new Drink(new int[] {5929, 5927, 5925, 5923, 5769}, new MultiEffect(new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.FARMING, 2, 0), new SkillEffect(Skills.ATTACK, -5, 0), new SkillEffect(Skills.STRENGTH, -5, 0))), new Animation(2289))),
+ DRAGON_BITTER(new Drink(new int[] {1911, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ DRAGON_BITTER_KEG(new Drink(new int[] {5809, 5807, 5805, 5803, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.STRENGTH, 2, 0), new SkillEffect(Skills.ATTACK, -4, 0)), new Animation(2289))),
+ DRAGON_BITTER_M(new Drink(new int[] {5745, 1919}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
+ DRAGON_BITTER_M_KEG(new Drink(new int[] {5889, 5887, 5885, 5883, 5769}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)), new Animation(2289))),
+ DWARVEN_STOUT(new Drink(new int[] {1913, 1919}, new MultiEffect(new SkillEffect(Skills.MINING, 1, 0), new SkillEffect(Skills.SMITHING, 1 ,0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0), new SkillEffect(Skills.DEFENCE, -2, 0), new HealingEffect(1)), "You drink the Dwarven Stout. It tastes foul.", "It tastes pretty strong too.")),
+ DWARVEN_STOUT_KEG(new Drink(new int[] {5777, 5775, 5773, 5771, 5769}, new MultiEffect(new SkillEffect(Skills.MINING, 1, 0), new SkillEffect(Skills.SMITHING, 1 ,0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0), new SkillEffect(Skills.DEFENCE, -2, 0), new HealingEffect(1)), new Animation(2289), "You drink the Dwarven Stout. It tastes foul.", "It tastes pretty strong too.")),
+ DWARVEN_STOUT_M(new Drink(new int[] {5747, 1919}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)))),
+ DWARVEN_STOUT_M_KEG(new Drink(new int[] {5857, 5855, 5853, 5851, 5769}, new MultiEffect(new SkillEffect(Skills.MINING, 2, 0), new SkillEffect(Skills.SMITHING, 2 ,0), new SkillEffect(Skills.ATTACK, -7, 0), new SkillEffect(Skills.STRENGTH, -7, 0), new SkillEffect(Skills.DEFENCE, -7, 0), new HealingEffect(1)), new Animation(2289))),
+ GREENMANS_ALE(new Drink(new int[] {1909, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)))),
+ GREENMANS_ALE_KEG(new Drink(new int[] {5793, 5791, 5789, 5787, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 1, 0), new SkillEffect(Skills.ATTACK, -3, 0), new SkillEffect(Skills.STRENGTH, -3, 0), new SkillEffect(Skills.DEFENCE, -3, 0)), new Animation(2289))),
+ GREENMANS_ALE_M(new Drink(new int[] {5743, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
+ GREENMANS_ALE_M_KEG(new Drink(new int[] {5873, 5871, 5869, 5867, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.HERBLORE, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
+ GROG(new Drink(new int[] {1915, 1919}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -6, 0)))),
+ MOONLIGHT_MEAD(new Drink(new int[] {2955, 1919}, new HealingEffect(4), "It tastes like something just died in your mouth.")),
+ MOONLIGHT_MEAD_KEG(new Drink(new int[] {5817, 5815, 5813, 5811, 5769}, new HealingEffect(4), new Animation(2289), "It tastes like something just died in your mouth.")),
+ MOONLIGHT_MEAD_M(new Drink(new int[] {5749, 1919}, new HealingEffect(6))),
+ MOONLIGHT_MEAD_M_KEG(new Drink(new int[] {5897, 5895, 5893, 5891, 5769}, new HealingEffect(6), new Animation(2289))),
+ SLAYERS_RESPITE(new Drink(new int[] {5759, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
+ SLAYERS_RESPITE_KEG(new Drink(new int[] {5841, 5839, 5837, 5835, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 2, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
+ SLAYERS_RESPITE_M(new Drink(new int[] {5761, 1919}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 4, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)))),
+ SLAYERS_RESPITE_M_KEG(new Drink(new int[] {5841, 5839, 5837, 5835, 5769}, new MultiEffect(new HealingEffect(1), new SkillEffect(Skills.SLAYER, 4, 0), new SkillEffect(Skills.ATTACK, -2, 0), new SkillEffect(Skills.STRENGTH, -2, 0)), new Animation(2289))),
+ WIZARDS_MIND_BOMB(new Drink(new int[] {1907, 1919}, new WizardsMindBombEffect(), "You drink the Wizard's Mind Bomb.", "You feel very strange.")),
+ MATURE_WMB(new Drink(new int[] {5741, 1919}, new MatureWmbEffect())),
+
+ /** Cocktails */
+ FRUIT_BLAST(new Drink(new int[] {2084, 2026}, new HealingEffect(9))),
+ PREMADE_FR_BLAST(new Drink(new int[] {2034, 2026}, new HealingEffect(9))),
+ CRAFTED_FR_BLAST(new Drink(new int[] {9514, 2026}, new HealingEffect(9))),
+ PINEAPPLE_PUNCH(new Drink(new int[] {2048, 2026}, new HealingEffect(9), "You drink the cocktail. It tastes great.")),
+ PREMADE_P_PUNCH(new Drink(new int[] {2036, 2026}, new HealingEffect(9), "You drink the cocktail. It tastes great.")),
+ CRAFTED_P_PUNCH(new Drink(new int[] {9512, 2026}, new HealingEffect(9))),
+ WIZARD_BLIZZARD(new Drink(new int[] {2054, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ PREMADE_WIZ_BLZD(new Drink(new int[] {2040, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ CRAFTED_WIZ_BLZD(new Drink(new int[]{9508, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 6, 0),new SkillEffect(Skills.ATTACK, -4, 0 )))),
+ SHORT_GREEN_GUY(new Drink(new int[] {2080, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 4, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
+ PREMADE_SGG(new Drink(new int[] {2038, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 4, 0), new SkillEffect(Skills.ATTACK, -3, 0)))),
+ CRAFTED_SGG(new Drink(new int[]{9510, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 4, 0), new SkillEffect(Skills.ATTACK, -3,0)))),
+ DRUNK_DRAGON(new Drink(new int[] {2092, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ PREMADE_DR_DRAGON(new Drink(new int[] {2032, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ CRAFTED_DR_DRAGON(new Drink(new int[] {9516, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4,0)))),
+ CHOC_SATURDAY(new Drink(new int[] {2074, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ PREMADE_CHOC_SDY(new Drink(new int[] {2030, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ CRAFTED_CHOC_SDY(new Drink(new int[] {9518, 2026}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 7,0), new SkillEffect(Skills.ATTACK, -4,0)))),
+ BLURBERRY_SPECIAL(new Drink(new int[] {2064, 2026}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ PREMADE_BLURB_SP(new Drink(new int[] {2028, 2026}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.STRENGTH, 6, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ CRAFTED_BLURB_SP(new Drink(new int[] {9520, 2026}, new MultiEffect(new HealingEffect(6), new SkillEffect(Skills.STRENGTH,6,0), new SkillEffect(Skills.ATTACK, -4,0)))),
+
+ /** Bottled Drinks */
+ KARAMJAN_RUM(new Drink(new int[] {431}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 5, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ BRAINDEATH_RUM(new Drink(new int[] {7157}, new MultiEffect(new SkillEffect(Skills.DEFENCE, 0, -0.1), new SkillEffect(Skills.ATTACK, 0, -0.05), new SkillEffect(Skills.PRAYER, 0, -0.05), new SkillEffect(Skills.RANGE, 0, -0.05), new SkillEffect(Skills.MAGIC, 0, -0.05), new SkillEffect(Skills.HERBLORE, 0, -0.05), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.MINING, 1, 0)), "With a sense of impending doom you drink the 'rum'. You try very hard not to die.")),
+ RUM_TROUBLE_BREWING_RED(new Drink(new int[] {8940, 8940}, new TroubleBrewingRumEffect("Oh gods! It tastes like burning!"), new Animation(9605))),
+ RUM_TROUBLE_BREWING_BLUE(new Drink(new int[] {8941, 8941}, new TroubleBrewingRumEffect("My Liver! My Liver is melting!"), new Animation(9604))),
+ VODKA(new Drink(new int[] {2015}, new MultiEffect(new HealingEffect(2), new SkillEffect(Skills.ATTACK, -4, 0), new SkillEffect(Skills.STRENGTH, 4, 0)))),
+ GIN(new Drink(new int[] {2019}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 1, 0), new SkillEffect(Skills.ATTACK, 4, 0), new RandomHealthEffect(3, 4)))),
+ BRANDY(new Drink(new int[] {2021}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.ATTACK, 4, 0)))),
+ WHISKY(new Drink(new int[] {2017}, new MultiEffect(new HealingEffect(5), new SkillEffect(Skills.STRENGTH, 3, 0), new SkillEffect(Skills.ATTACK, -4, 0)))),
+ BOTTLE_OF_WINE(new Drink(new int[] {7919, 7921}, new MultiEffect(new HealingEffect(14), new SkillEffect(Skills.ATTACK, -3, 0)))),
+
+ /** Wine */
+ JUG_OF_WINE(new Drink(new int[] {1993, 1935}, new MultiEffect(new HealingEffect(11), new SkillEffect(Skills.ATTACK, -2, 0)))),
+ HALF_FULL_WINE_JUG(new Drink(new int[] {1989, 1935}, new HealingEffect(7))),
+ JUG_OF_BAD_WINE(new Drink(new int[] {1991,1935}, new SkillEffect(Skills.ATTACK, -3, 0))),
+
+ /** Tea */
+ CUP_OF_TEA(new Drink(new int[] {712, 1980}, new MultiEffect(new HealingEffect(3), new SkillEffect(Skills.ATTACK, 3, 0)), "Aaah, nothing like a nice cuppa tea!")),
+ CUP_OF_TEA_NETTLE(new Drink(new int[] {4242, 1980}, new EnergyEffect(10))),
+ CUP_OF_TEA_MILKY_NETTLE(new Drink(new int[] {4243, 1980}, new EnergyEffect(10))),
+ NETTLE_TEA(new Drink(new int[] {4239, 1923}, new NettleTeaEffect())),
+ NETTLE_TEA_MILKY(new Drink(new int[] {4240, 1980}, new NettleTeaEffect())),
+ CUP_OF_TEA_CLAY(new Drink(new int[] {7730, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0), "You feel refreshed and ready for more building.")),
+ CUP_OF_TEA_CLAY_MILKY(new Drink(new int[] {7731, 7728}, new SkillEffect(Skills.CONSTRUCTION, 1, 0))),
+ CUP_OF_TEA_WHITE(new Drink(new int[] {7733, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0), "You feel refreshed and ready for more building.")),
+ CUP_OF_TEA_WHITE_MILKY(new Drink(new int[] {7734, 7732}, new SkillEffect(Skills.CONSTRUCTION, 2, 0))),
+ CUP_OF_TEA_GOLD(new Drink(new int[] {7736, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0), "You feel refreshed and ready for more building.")),
+ CUP_OF_TEA_GOLD_MILKY(new Drink(new int[] {7737, 7735}, new SkillEffect(Skills.CONSTRUCTION, 3, 0))),
+
+ /** Miscellaneous */
+ CHOCOLATE_BAR(new Food(new int[] {1973}, new HealingEffect(3))),
+ PURPLE_SWEETS(new Food(new int[] {4561}, new HealingEffect(0))),
+ PURPLE_SWEETS_STACKABLE(new Food(new int[] {10476}, new MultiEffect(new EnergyEffect(10), new RandomHealthEffect(1, 3)), "The sugary goodness heals some energy.", "The sugary goodness is yummy.")),
+ FIELD_RATION(new Food(new int[] {7934}, new HealingEffect(10))),
+ ROLL(new Food(new int[] {6963}, new HealingEffect(6))),
+ TCHIKI_MONKEY_NUTS(new Food(new int[] {7573}, new HealingEffect(5), "You eat the Tchiki monkey nuts. They taste nutty.")),
+ TCHIKI_MONKEY_PASTE(new Food(new int[] {7575}, new HealingEffect(5), "You eat the Tchiki monkey nut paste. It sticks to the roof of your mouth.")),
+ OOMLIE_WRAP(new Food(new int[] {Items.COOKED_OOMLIE_WRAP_2343}, new MultiEffect(new HealingEffect(14), new AchievementEffect(DiaryType.KARAMJA, 2, 2)))),
+ ROE(new Food(new int[]{11324}, new HealingEffect(3))),
+ EQUA_LEAVES(new Food(new int[]{2128}, new HealingEffect(1))),
+ CHOC_ICE(new Food(new int[]{6794}, new HealingEffect(7))),
+ EDIBLE_SEAWEED(new Food(new int[] {403}, new HealingEffect(4))),
+ FROG_SPAWN(new Food(new int[] {5004}, new RandomHealthEffect(3, 7), "You eat the frogspawn. Yuck.")),
+
+ /** Special Events */
+ PUMPKIN(new Food(new int[] {1959}, new HealingEffect(14))),
+ EASTER_EGG(new Food(new int[] {1961}, new HealingEffect(14))),
+
+ /** Potions */
+ STRENGTH(new Potion(new int[] {113, 115, 117, 119}, new SkillEffect(Skills.STRENGTH, 3, 0.1))),
+ ATTACK(new Potion(new int[] {2428, 121, 123, 125}, new SkillEffect(Skills.ATTACK, 3, 0.1))),
+ DEFENCE(new Potion(new int[] {2432, 133, 135, 137}, new SkillEffect(Skills.DEFENCE, 3, 0.1))),
+ RANGING(new Potion(new int[] {2444, 169, 171, 173}, new SkillEffect(Skills.RANGE, 4, 0.1))),
+ MAGIC(new Potion(new int[] {3040, 3042, 3044, 3046}, new SkillEffect(Skills.MAGIC, 4, 0))),
+ SUPER_STRENGTH(new Potion(new int[] {2440, 157, 159, 161}, new SkillEffect(Skills.STRENGTH, 5, 0.15))),
+ SUPER_ATTACK(new Potion(new int[] {2436, 145, 147, 149}, new SkillEffect(Skills.ATTACK, 5, 0.15))),
+ SUPER_DEFENCE(new Potion(new int[] {2442, 163, 165, 167}, new SkillEffect(Skills.DEFENCE, 5, 0.15))),
+ ANTIPOISON(new Potion(new int[] {2446, 175, 177, 179}, new AddTimerEffect("poison:immunity", secondsToTicks(90)))),
+ ANTIPOISON_(new Potion(new int[] {5943, 5945, 5947, 5949}, new AddTimerEffect("poison:immunity", minutesToTicks(9)))),
+ ANTIPOISON__(new Potion(new int[] {5952, 5954, 5956, 5958}, new AddTimerEffect("poison:immunity", minutesToTicks(12)))),
+ SUPER_ANTIP(new Potion(new int[] {2448, 181, 183, 185}, new AddTimerEffect("poison:immunity", minutesToTicks(6)))),
+ RELICYM(new Potion(new int[] {4842, 4844, 4846, 4848}, new CureDiseaseEffect())),
+ AGILITY(new Potion(new int[] {3032, 3034, 3036, 3038}, new SkillEffect(Skills.AGILITY, 3, 0))),
+ HUNTER(new Potion(new int[] {9998, 10000, 10002, 10004}, new SkillEffect(Skills.HUNTER, 3, 0))),
+ RESTORE(new Potion(new int[] {2430, 127, 129, 131}, new RestoreEffect(10, 0.3))),
+ SARA_BREW(new Potion(new int[] {6685, 6687, 6689, 6691}, new MultiEffect(new PercentHeal(0, .15), new SkillEffect(Skills.ATTACK, 0, -0.10), new SkillEffect(Skills.STRENGTH, 0, -0.10), new SkillEffect(Skills.MAGIC, 0, -0.10), new SkillEffect(Skills.RANGE, 0, -0.10), new SkillEffect(Skills.DEFENCE, 0, 0.25)))),
+ SUMMONING(new Potion(new int[] {12140, 12142, 12144, 12146}, new MultiEffect(new RestoreSummoningSpecial(), new SummoningEffect(7, 0.25)))),
+ COMBAT(new Potion(new int[] {9739, 9741, 9743, 9745}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, .1), new SkillEffect(Skills.ATTACK, 3, .1)))),
+ ENERGY(new Potion(new int[] {3008, 3010, 3012, 3014}, new EnergyEffect(10))),
+ FISHING(new Potion(new int[] {2438, 151, 153, 155}, new SkillEffect(Skills.FISHING, 3, 0))),
+ PRAYER(new Potion(new int[] {2434, 139, 141, 143}, new PrayerEffect(7, 0.25))),
+ SUPER_RESTO(new Potion(new int[] {3024, 3026, 3028, 3030}, new RestoreEffect(8, 0.25, true))),
+ ZAMMY_BREW(new Potion(new int[] {2450, 189, 191, 193}, new MultiEffect(new DamageEffect(10, true), new SkillEffect(Skills.ATTACK, 0, 0.25), new SkillEffect(Skills.STRENGTH, 0, 0.15), new SkillEffect(Skills.DEFENCE, 0, -0.1)))),
+ ANTIFIRE(new Potion(new int[] {2452, 2454, 2456, 2458}, new AddTimerEffect("dragonfire:immunity", 600, true))),
+ GUTH_REST(new Potion(new int[] {4417, 4419, 4421, 4423}, new MultiEffect(new RemoveTimerEffect("poison"), new EnergyEffect(5), new HealingEffect(5)))),
+ MAGIC_ESS(new Potion(new int[] {11491, 11489}, new SkillEffect(Skills.MAGIC,3,0))),
+ SANFEW(new Potion(new int[] {10925, 10927, 10929, 10931}, new MultiEffect(new RestoreEffect(8,0.25, true), new AddTimerEffect("poison:immunity", secondsToTicks(90)), new RemoveTimerEffect("disease")))),
+ SUPER_ENERGY(new Potion(new int[] {3016, 3018, 3020, 3022}, new EnergyEffect(20))),
+ BLAMISH_OIL(new FakeConsumable(1582, new String[] {"You know... I'd really rather not."})),
+
+ /** Barbarian Mixes */
+ PRAYERMIX(new BarbarianMix(new int[] {11465, 11467}, new MultiEffect(new PrayerEffect(7, 0.25), new HealingEffect(6)))),
+ ZAMMY_MIX(new BarbarianMix(new int[] {11521, 11523}, new MultiEffect(new DamageEffect(10, true), new SkillEffect(Skills.ATTACK, 0, 0.15), new SkillEffect(Skills.STRENGTH, 0, 0.25), new SkillEffect(Skills.DEFENCE, 0, -0.1)))),
+ ATT_MIX(new BarbarianMix(new int[] {11429, 11431}, new MultiEffect(new SkillEffect(Skills.ATTACK, 3, 0.1), new HealingEffect(3)))),
+ ANTIP_MIX(new BarbarianMix(new int[] {11433, 11435}, new MultiEffect(new AddTimerEffect("poison:immunity", secondsToTicks(90)), new HealingEffect(3)))),
+ RELIC_MIX(new BarbarianMix(new int[] {11437, 11439}, new MultiEffect(new CureDiseaseEffect(), new HealingEffect(3)))),
+ STR_MIX(new BarbarianMix(new int[] {11443, 11441}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 3, 0.1), new HealingEffect(3)))),
+ RESTO_MIX(new BarbarianMix(new int[] {11449, 11451}, new MultiEffect(new RestoreEffect(10, 0.3), new HealingEffect(3)))),
+ SUPER_RESTO_MIX(new BarbarianMix(new int [] {11493, 11495}, new MultiEffect(new RestoreEffect(8,0.25), new PrayerEffect(8, 0.25), new SummoningEffect(8, 0.25), new HealingEffect(6)))),
+ ENERGY_MIX(new BarbarianMix(new int[] {11453, 11455}, new MultiEffect(new EnergyEffect(10), new HealingEffect(3)))),
+ DEF_MIX(new BarbarianMix(new int[] {11457, 11459}, new MultiEffect(new SkillEffect(Skills.DEFENCE, 3, 0.1), new HealingEffect(6)))),
+ AGIL_MIX(new BarbarianMix(new int[] {11461, 11463}, new MultiEffect(new SkillEffect(Skills.AGILITY, 3, 0), new HealingEffect(6)))),
+ COMBAT_MIX(new BarbarianMix(new int[] {11445, 11447}, new MultiEffect(new SkillEffect(Skills.ATTACK, 3, 0.1), new SkillEffect(Skills.STRENGTH, 3, 0.1), new HealingEffect(6)))),
+ SUPER_ATT_MIX(new BarbarianMix(new int[] {11469, 11471}, new MultiEffect(new SkillEffect(Skills.ATTACK, 5, 0.15), new HealingEffect(6)))),
+ FISH_MIX(new BarbarianMix(new int[] {11477, 11479}, new MultiEffect(new SkillEffect(Skills.FISHING, 3, 0), new HealingEffect(6)))),
+ SUPER_ENERGY_MIX(new BarbarianMix(new int[] {11481, 11483}, new MultiEffect(new EnergyEffect(20), new HealingEffect(6)))),
+ HUNTING_MIX(new BarbarianMix(new int[] {11517, 11519}, new MultiEffect(new SkillEffect(Skills.HUNTER, 3, 0), new HealingEffect(6)))),
+ SUPER_STR_MIX(new BarbarianMix(new int[] {11485, 11487}, new MultiEffect(new SkillEffect(Skills.STRENGTH, 5, 0.15), new HealingEffect(6)))),
+ ANTIDOTE_PLUS_MIX(new BarbarianMix(new int[] {11501, 11503}, new MultiEffect(new AddTimerEffect("poison:immunity", minutesToTicks(9)), new RandomHealthEffect(3, 7)))),
+ ANTIP_SUPERMIX(new BarbarianMix(new int[] {11473, 11475}, new MultiEffect(new AddTimerEffect("poison:immunity", minutesToTicks(6)), new RandomHealthEffect(3, 7)))),
+ ANTIFIRE_MIX(new BarbarianMix(new int[] {11505, 11507}, new MultiEffect(new AddTimerEffect("dragonfire:immunity", 600, true), new RandomHealthEffect(3, 7)))),
+
+ /** Stealing creation potions */
+ SC_PRAYER(new Potion(new int[] {14207, 14209, 14211, 14213, 14215}, new PrayerEffect(7, 0.25))),
+ SC_ENERGY(new Potion(new int[] {14217, 14219, 14221, 14223, 14225}, new EnergyEffect(20))),
+ SC_ATTACK(new Potion(new int[] {14227, 14229, 14231, 14233, 14235}, new SkillEffect(Skills.ATTACK, 3, 0.2))),
+ SC_STRENGTH(new Potion(new int[] {14237, 14239, 14241, 14243, 14245}, new SkillEffect(Skills.STRENGTH, 3, 0.2))),
+ SC_RANGE(new Potion(new int[] {14247, 14249, 14251, 14253, 14255}, new SkillEffect(Skills.RANGE, 3, 0.1))),
+ SC_DEFENCE(new Potion(new int[] {14257, 14259, 14261, 14263, 14265}, new SkillEffect(Skills.DEFENCE, 3, 0.1))),
+ SC_MAGIC(new Potion(new int[] {14267, 14269, 14271, 14273, 14275}, new SkillEffect(Skills.MAGIC, 3, 0.1))),
+ SC_SUMMONING(new Potion(new int[] {14277, 14279, 14281, 14283, 14285}, new SummoningEffect(7, 0.25)));
+
+ public static HashMap consumables = new HashMap<>();
+
+ public static ArrayList potions = new ArrayList<>();
+
+ private final Consumable consumable;
+ public boolean isIgnoreMainClock = false;
+
+ Consumables(Consumable consumable) {
+ this.consumable = consumable;
+ }
+ Consumables(Consumable consumable, boolean isIgnoreMainClock) {this.consumable = consumable; this.isIgnoreMainClock = isIgnoreMainClock;}
+
+ public Consumable getConsumable() {
+ return consumable;
+ }
+
+ public static Consumables getConsumableById(final int itemId) {
+ return consumables.get(itemId);
+ }
+
+ public static void add(final Consumables consumable) {
+ for (int id : consumable.consumable.getIds()) {
+ consumables.putIfAbsent(id, consumable);
+ }
+ }
+
+ /*
+ Static modifier used to populate search engine lists.
+ */
+ static {
+ for (Consumables consumable : Consumables.values()) {
+ add(consumable);
+ if (consumable.consumable instanceof Potion) {
+ for (int pot : consumable.consumable.getIds()) {
+ potions.add(pot);
+ }
+ }
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/content/consumable/effects/AchievementEffect.java b/Server/src/main/content/data/consumables/effects/AchievementEffect.java
similarity index 84%
rename from Server/src/main/java/core/game/content/consumable/effects/AchievementEffect.java
rename to Server/src/main/content/data/consumables/effects/AchievementEffect.java
index fcff49f2d..402e0b540 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/AchievementEffect.java
+++ b/Server/src/main/content/data/consumables/effects/AchievementEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.diary.DiaryType;
-import core.game.content.consumable.ConsumableEffect;
+import core.game.consumable.ConsumableEffect;
public class AchievementEffect extends ConsumableEffect {
private final DiaryType diary;
diff --git a/Server/src/main/content/data/consumables/effects/AddTimerEffect.kt b/Server/src/main/content/data/consumables/effects/AddTimerEffect.kt
new file mode 100644
index 000000000..d21985101
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/AddTimerEffect.kt
@@ -0,0 +1,15 @@
+package content.data.consumables.effects
+
+import core.api.registerTimer
+import core.api.removeTimer
+import core.api.spawnTimer
+import core.game.consumable.ConsumableEffect
+import core.game.node.entity.player.Player
+
+class AddTimerEffect (val identifier: String, vararg val args: Any) : ConsumableEffect() {
+ override fun activate (p: Player) {
+ removeTimer (p, identifier)
+ val timer = spawnTimer (identifier, *args) ?: return
+ registerTimer (p, timer)
+ }
+}
diff --git a/Server/src/main/content/data/consumables/effects/CureDiseaseEffect.kt b/Server/src/main/content/data/consumables/effects/CureDiseaseEffect.kt
new file mode 100644
index 000000000..4c63c6e99
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/CureDiseaseEffect.kt
@@ -0,0 +1,21 @@
+package content.data.consumables.effects
+
+import core.api.*
+import core.game.consumable.ConsumableEffect
+import core.game.node.entity.player.Player
+import core.game.system.timer.impl.Disease
+
+class CureDiseaseEffect () : ConsumableEffect() {
+ override fun activate (p: Player) {
+ val existingTimer = getTimer(p)
+ if (existingTimer != null) {
+ existingTimer.hitsLeft -= 9
+ if (existingTimer.hitsLeft <= 0) {
+ sendMessage(p, "The disease has been cured.")
+ removeTimer(p)
+ }else{
+ sendMessage(p,"You feel slightly better.")
+ }
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/content/consumable/effects/DamageEffect.java b/Server/src/main/content/data/consumables/effects/DamageEffect.java
similarity index 88%
rename from Server/src/main/java/core/game/content/consumable/effects/DamageEffect.java
rename to Server/src/main/content/data/consumables/effects/DamageEffect.java
index e615dbe15..c4573306b 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/DamageEffect.java
+++ b/Server/src/main/content/data/consumables/effects/DamageEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.combat.ImpactHandler;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class DamageEffect extends ConsumableEffect {
final double amt;
diff --git a/Server/src/main/java/core/game/content/consumable/effects/DraynorCabbageEffect.java b/Server/src/main/content/data/consumables/effects/DraynorCabbageEffect.java
similarity index 82%
rename from Server/src/main/java/core/game/content/consumable/effects/DraynorCabbageEffect.java
rename to Server/src/main/content/data/consumables/effects/DraynorCabbageEffect.java
index 96a260e9c..a58794c12 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/DraynorCabbageEffect.java
+++ b/Server/src/main/content/data/consumables/effects/DraynorCabbageEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
public class DraynorCabbageEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/DwarvenRockCakeEffect.java b/Server/src/main/content/data/consumables/effects/DwarvenRockCakeEffect.java
similarity index 82%
rename from Server/src/main/java/core/game/content/consumable/effects/DwarvenRockCakeEffect.java
rename to Server/src/main/content/data/consumables/effects/DwarvenRockCakeEffect.java
index bd7bd887a..90febe9b7 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/DwarvenRockCakeEffect.java
+++ b/Server/src/main/content/data/consumables/effects/DwarvenRockCakeEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class DwarvenRockCakeEffect extends ConsumableEffect {
diff --git a/Server/src/main/content/data/consumables/effects/EnergyEffect.java b/Server/src/main/content/data/consumables/effects/EnergyEffect.java
new file mode 100644
index 000000000..75e23b422
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/EnergyEffect.java
@@ -0,0 +1,15 @@
+package content.data.consumables.effects;
+
+import core.game.consumable.ConsumableEffect;
+import core.game.node.entity.player.Player;
+
+public class EnergyEffect extends ConsumableEffect {
+ double amt;
+ public EnergyEffect(int amt){
+ this.amt = amt;
+ }
+ @Override
+ public void activate(Player p) {
+ p.getSettings().updateRunEnergy(-amt);
+ }
+}
diff --git a/Server/src/main/java/core/game/content/consumable/effects/HealingEffect.java b/Server/src/main/content/data/consumables/effects/HealingEffect.java
similarity index 78%
rename from Server/src/main/java/core/game/content/consumable/effects/HealingEffect.java
rename to Server/src/main/content/data/consumables/effects/HealingEffect.java
index f6e81469e..96512e6a8 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/HealingEffect.java
+++ b/Server/src/main/content/data/consumables/effects/HealingEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
+import core.game.consumable.ConsumableEffect;
public class HealingEffect extends ConsumableEffect {
int amt;
diff --git a/Server/src/main/java/core/game/content/consumable/effects/KebabEffect.java b/Server/src/main/content/data/consumables/effects/KebabEffect.java
similarity index 97%
rename from Server/src/main/java/core/game/content/consumable/effects/KebabEffect.java
rename to Server/src/main/content/data/consumables/effects/KebabEffect.java
index d3851d2e0..6b4f5c390 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/KebabEffect.java
+++ b/Server/src/main/content/data/consumables/effects/KebabEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
/**
diff --git a/Server/src/main/content/data/consumables/effects/KegOfBeerEffect.kt b/Server/src/main/content/data/consumables/effects/KegOfBeerEffect.kt
new file mode 100644
index 000000000..89232abee
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/KegOfBeerEffect.kt
@@ -0,0 +1,15 @@
+package content.data.consumables.effects
+
+import core.game.consumable.ConsumableEffect
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+
+
+class KegOfBeerEffect : ConsumableEffect() {
+
+ override fun activate(p: Player?) {
+ val effect = MultiEffect(HealingEffect(15), SkillEffect(Skills.STRENGTH, 10.0, 0.0), SkillEffect(Skills.ATTACK, -40.0, 0.0))
+ effect.activate(p)
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/content/consumable/effects/MatureWmbEffect.java b/Server/src/main/content/data/consumables/effects/MatureWmbEffect.java
similarity index 87%
rename from Server/src/main/java/core/game/content/consumable/effects/MatureWmbEffect.java
rename to Server/src/main/content/data/consumables/effects/MatureWmbEffect.java
index 66e7c6936..d2c5a98ed 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/MatureWmbEffect.java
+++ b/Server/src/main/content/data/consumables/effects/MatureWmbEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
public class MatureWmbEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/MultiEffect.java b/Server/src/main/content/data/consumables/effects/MultiEffect.java
similarity index 85%
rename from Server/src/main/java/core/game/content/consumable/effects/MultiEffect.java
rename to Server/src/main/content/data/consumables/effects/MultiEffect.java
index 3b9b8e5ff..228c7fac6 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/MultiEffect.java
+++ b/Server/src/main/content/data/consumables/effects/MultiEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class MultiEffect extends ConsumableEffect {
private ConsumableEffect[] effects;
diff --git a/Server/src/main/java/core/game/content/consumable/effects/NettleTeaEffect.java b/Server/src/main/content/data/consumables/effects/NettleTeaEffect.java
similarity index 84%
rename from Server/src/main/java/core/game/content/consumable/effects/NettleTeaEffect.java
rename to Server/src/main/content/data/consumables/effects/NettleTeaEffect.java
index 068422de6..8f20e8c33 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/NettleTeaEffect.java
+++ b/Server/src/main/content/data/consumables/effects/NettleTeaEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class NettleTeaEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/PercentHeal.java b/Server/src/main/content/data/consumables/effects/PercentHeal.java
similarity index 86%
rename from Server/src/main/java/core/game/content/consumable/effects/PercentHeal.java
rename to Server/src/main/content/data/consumables/effects/PercentHeal.java
index 22711403a..d1d36145f 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/PercentHeal.java
+++ b/Server/src/main/content/data/consumables/effects/PercentHeal.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class PercentHeal extends ConsumableEffect {
int base = 0;
diff --git a/Server/src/main/java/core/game/content/consumable/effects/PercentageHealthEffect.java b/Server/src/main/content/data/consumables/effects/PercentageHealthEffect.java
similarity index 85%
rename from Server/src/main/java/core/game/content/consumable/effects/PercentageHealthEffect.java
rename to Server/src/main/content/data/consumables/effects/PercentageHealthEffect.java
index 41383eec4..cd39cb57e 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/PercentageHealthEffect.java
+++ b/Server/src/main/content/data/consumables/effects/PercentageHealthEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
+import core.game.consumable.ConsumableEffect;
public class PercentageHealthEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/PoisonEffect.java b/Server/src/main/content/data/consumables/effects/PoisonEffect.java
similarity index 83%
rename from Server/src/main/java/core/game/content/consumable/effects/PoisonEffect.java
rename to Server/src/main/content/data/consumables/effects/PoisonEffect.java
index 26e50dbd2..82adbeb81 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/PoisonEffect.java
+++ b/Server/src/main/content/data/consumables/effects/PoisonEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.combat.ImpactHandler;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class PoisonEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/PoisonKarambwanEffect.java b/Server/src/main/content/data/consumables/effects/PoisonKarambwanEffect.java
similarity index 80%
rename from Server/src/main/java/core/game/content/consumable/effects/PoisonKarambwanEffect.java
rename to Server/src/main/content/data/consumables/effects/PoisonKarambwanEffect.java
index f2ed9cb46..ceea78062 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/PoisonKarambwanEffect.java
+++ b/Server/src/main/content/data/consumables/effects/PoisonKarambwanEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class PoisonKarambwanEffect extends ConsumableEffect {
diff --git a/Server/src/main/content/data/consumables/effects/PrayerEffect.kt b/Server/src/main/content/data/consumables/effects/PrayerEffect.kt
new file mode 100644
index 000000000..9f636bc27
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/PrayerEffect.kt
@@ -0,0 +1,20 @@
+package content.data.consumables.effects
+
+import core.api.*
+import core.game.consumable.ConsumableEffect
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import org.rs09.consts.Items
+import kotlin.math.floor
+
+class PrayerEffect(var base: Double, var bonus: Double) : ConsumableEffect() {
+ override fun activate(player: Player?) {
+ if(player == null) return
+ val level = getStatLevel(player, Skills.PRAYER)
+ var b = bonus
+ if(inInventory(player, Items.HOLY_WRENCH_6714))
+ b += 0.02 // Leaving this in for futureproofing. Current update is for properly rounding down.
+ val amount = floor(base + (level * b))
+ modPrayerPoints(player, amount)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/content/consumable/effects/RandomEnergyEffect.java b/Server/src/main/content/data/consumables/effects/RandomEnergyEffect.java
similarity index 81%
rename from Server/src/main/java/core/game/content/consumable/effects/RandomEnergyEffect.java
rename to Server/src/main/content/data/consumables/effects/RandomEnergyEffect.java
index ee8fe238f..cab047a1c 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/RandomEnergyEffect.java
+++ b/Server/src/main/content/data/consumables/effects/RandomEnergyEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
public class RandomEnergyEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/RandomHealthEffect.java b/Server/src/main/content/data/consumables/effects/RandomHealthEffect.java
similarity index 88%
rename from Server/src/main/java/core/game/content/consumable/effects/RandomHealthEffect.java
rename to Server/src/main/content/data/consumables/effects/RandomHealthEffect.java
index 59e00df59..76e4c6514 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/RandomHealthEffect.java
+++ b/Server/src/main/content/data/consumables/effects/RandomHealthEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
public class RandomHealthEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/RandomPrayerEffect.java b/Server/src/main/content/data/consumables/effects/RandomPrayerEffect.java
similarity index 81%
rename from Server/src/main/java/core/game/content/consumable/effects/RandomPrayerEffect.java
rename to Server/src/main/content/data/consumables/effects/RandomPrayerEffect.java
index ab29251a3..0d669a4df 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/RandomPrayerEffect.java
+++ b/Server/src/main/content/data/consumables/effects/RandomPrayerEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
+import core.game.consumable.ConsumableEffect;
public class RandomPrayerEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/RandomSkillEffect.java b/Server/src/main/content/data/consumables/effects/RandomSkillEffect.java
similarity index 83%
rename from Server/src/main/java/core/game/content/consumable/effects/RandomSkillEffect.java
rename to Server/src/main/content/data/consumables/effects/RandomSkillEffect.java
index d2a5fea6b..3c7c11c23 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/RandomSkillEffect.java
+++ b/Server/src/main/content/data/consumables/effects/RandomSkillEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
public class RandomSkillEffect extends ConsumableEffect {
diff --git a/Server/src/main/content/data/consumables/effects/RemoveTimerEffect.kt b/Server/src/main/content/data/consumables/effects/RemoveTimerEffect.kt
new file mode 100644
index 000000000..6d45c35e9
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/RemoveTimerEffect.kt
@@ -0,0 +1,11 @@
+package content.data.consumables.effects
+
+import core.api.*
+import core.game.consumable.ConsumableEffect
+import core.game.node.entity.player.Player
+
+class RemoveTimerEffect (val identifier: String) : ConsumableEffect() {
+ override fun activate (p: Player) {
+ removeTimer (p, identifier)
+ }
+}
diff --git a/Server/src/main/content/data/consumables/effects/RestoreEffect.java b/Server/src/main/content/data/consumables/effects/RestoreEffect.java
new file mode 100644
index 000000000..ba9b3ea8d
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/RestoreEffect.java
@@ -0,0 +1,42 @@
+package content.data.consumables.effects;
+
+import core.game.node.entity.player.Player;
+import core.game.consumable.ConsumableEffect;
+import core.game.node.entity.skill.Skills;
+
+public class RestoreEffect extends ConsumableEffect {
+ double base,bonus;
+ boolean all_skills; // Except for hitpoints
+ public RestoreEffect(double base, double bonus){
+ this.base = base;
+ this.bonus = bonus;
+ this.all_skills = false;
+ }
+
+ public RestoreEffect(double base, double bonus, boolean all_skills){
+ this.base = base;
+ this.bonus = bonus;
+ this.all_skills = all_skills;
+ }
+ final int[] SKILLS = new int[] { Skills.DEFENCE, Skills.ATTACK, Skills.STRENGTH, Skills.MAGIC, Skills.RANGE };
+ final int[] ALL_SKILLS = new int[]{
+ Skills.ATTACK,Skills.DEFENCE, Skills.STRENGTH,Skills.RANGE,Skills.PRAYER,Skills.MAGIC, Skills.COOKING,
+ Skills.WOODCUTTING,Skills.FLETCHING,Skills.FISHING,Skills.FIREMAKING,Skills.CRAFTING,Skills.SMITHING,
+ Skills.MINING,Skills.HERBLORE,Skills.AGILITY,Skills.THIEVING,Skills.SLAYER,Skills.FARMING,
+ Skills.RUNECRAFTING,Skills.HUNTER,Skills.CONSTRUCTION,Skills.SUMMONING };
+ @Override
+ public void activate(Player p) {
+ Skills sk = p.getSkills();
+ int[] skills = this.all_skills ? ALL_SKILLS : SKILLS;
+ for(int skill : skills){
+ int statL = sk.getStaticLevel(skill);
+ int boost = (int) (base + (statL * bonus));
+ int curL = sk.getLevel(skill);
+ if(curL < statL){
+ p.getSkills().updateLevel(skill, boost, statL);
+ }
+ if (skill == Skills.PRAYER)
+ p.getSkills().incrementPrayerPoints(boost);
+ }
+ }
+}
diff --git a/Server/src/main/content/data/consumables/effects/RestoreSummoningSpecial.kt b/Server/src/main/content/data/consumables/effects/RestoreSummoningSpecial.kt
new file mode 100644
index 000000000..51b727dab
--- /dev/null
+++ b/Server/src/main/content/data/consumables/effects/RestoreSummoningSpecial.kt
@@ -0,0 +1,11 @@
+package content.data.consumables.effects
+
+import core.game.consumable.ConsumableEffect
+import core.game.node.entity.player.Player
+
+class RestoreSummoningSpecial : ConsumableEffect(){
+ override fun activate(p: Player) {
+ val f = p.familiarManager.familiar
+ f?.updateSpecialPoints(-15)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/content/consumable/effects/RockCakeEffect.java b/Server/src/main/content/data/consumables/effects/RockCakeEffect.java
similarity index 82%
rename from Server/src/main/java/core/game/content/consumable/effects/RockCakeEffect.java
rename to Server/src/main/content/data/consumables/effects/RockCakeEffect.java
index 54d6c0afa..eb2ed364b 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/RockCakeEffect.java
+++ b/Server/src/main/content/data/consumables/effects/RockCakeEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class RockCakeEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/SetAttributeEffect.java b/Server/src/main/content/data/consumables/effects/SetAttributeEffect.java
similarity index 86%
rename from Server/src/main/java/core/game/content/consumable/effects/SetAttributeEffect.java
rename to Server/src/main/content/data/consumables/effects/SetAttributeEffect.java
index 6a2b6776c..b00296143 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/SetAttributeEffect.java
+++ b/Server/src/main/content/data/consumables/effects/SetAttributeEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import rs09.game.world.GameWorld;
-import core.game.content.consumable.ConsumableEffect;
+import core.game.world.GameWorld;
public class SetAttributeEffect extends ConsumableEffect {
String attrString;
diff --git a/Server/src/main/java/core/game/content/consumable/effects/SkillEffect.java b/Server/src/main/content/data/consumables/effects/SkillEffect.java
similarity index 87%
rename from Server/src/main/java/core/game/content/consumable/effects/SkillEffect.java
rename to Server/src/main/content/data/consumables/effects/SkillEffect.java
index d6498e222..56c6b59f3 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/SkillEffect.java
+++ b/Server/src/main/content/data/consumables/effects/SkillEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
public class SkillEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/SmellingUgthankiKebabEffect.java b/Server/src/main/content/data/consumables/effects/SmellingUgthankiKebabEffect.java
similarity index 89%
rename from Server/src/main/java/core/game/content/consumable/effects/SmellingUgthankiKebabEffect.java
rename to Server/src/main/content/data/consumables/effects/SmellingUgthankiKebabEffect.java
index c80c191e1..ab0f07319 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/SmellingUgthankiKebabEffect.java
+++ b/Server/src/main/content/data/consumables/effects/SmellingUgthankiKebabEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
/**
* According to the OSRS wiki, the smelling ugthanki kebab will usually heal nothing when eaten, but sometimes heals for 9.
diff --git a/Server/src/main/java/core/game/content/consumable/effects/SummoningEffect.java b/Server/src/main/content/data/consumables/effects/SummoningEffect.java
similarity index 84%
rename from Server/src/main/java/core/game/content/consumable/effects/SummoningEffect.java
rename to Server/src/main/content/data/consumables/effects/SummoningEffect.java
index d1ea42804..be7d0b07f 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/SummoningEffect.java
+++ b/Server/src/main/content/data/consumables/effects/SummoningEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
public class SummoningEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/SuperKebabEffect.java b/Server/src/main/content/data/consumables/effects/SuperKebabEffect.java
similarity index 89%
rename from Server/src/main/java/core/game/content/consumable/effects/SuperKebabEffect.java
rename to Server/src/main/content/data/consumables/effects/SuperKebabEffect.java
index 127fd63e8..79f800594 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/SuperKebabEffect.java
+++ b/Server/src/main/content/data/consumables/effects/SuperKebabEffect.java
@@ -1,8 +1,8 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
-import core.game.content.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
diff --git a/Server/src/main/java/core/game/content/consumable/effects/TroubleBrewingRumEffect.java b/Server/src/main/content/data/consumables/effects/TroubleBrewingRumEffect.java
similarity index 91%
rename from Server/src/main/java/core/game/content/consumable/effects/TroubleBrewingRumEffect.java
rename to Server/src/main/content/data/consumables/effects/TroubleBrewingRumEffect.java
index c9fa70b82..56cd91a24 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/TroubleBrewingRumEffect.java
+++ b/Server/src/main/content/data/consumables/effects/TroubleBrewingRumEffect.java
@@ -1,9 +1,9 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
import core.game.system.task.Pulse;
import core.game.world.map.Location;
-import core.game.content.consumable.ConsumableEffect;
public class TroubleBrewingRumEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/UgthankiKebabEffect.java b/Server/src/main/content/data/consumables/effects/UgthankiKebabEffect.java
similarity index 84%
rename from Server/src/main/java/core/game/content/consumable/effects/UgthankiKebabEffect.java
rename to Server/src/main/content/data/consumables/effects/UgthankiKebabEffect.java
index d141d365f..dd8e35d84 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/UgthankiKebabEffect.java
+++ b/Server/src/main/content/data/consumables/effects/UgthankiKebabEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
public class UgthankiKebabEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/consumable/effects/WizardsMindBombEffect.java b/Server/src/main/content/data/consumables/effects/WizardsMindBombEffect.java
similarity index 87%
rename from Server/src/main/java/core/game/content/consumable/effects/WizardsMindBombEffect.java
rename to Server/src/main/content/data/consumables/effects/WizardsMindBombEffect.java
index c40e61480..52a0e4229 100644
--- a/Server/src/main/java/core/game/content/consumable/effects/WizardsMindBombEffect.java
+++ b/Server/src/main/content/data/consumables/effects/WizardsMindBombEffect.java
@@ -1,7 +1,7 @@
-package core.game.content.consumable.effects;
+package content.data.consumables.effects;
+import core.game.consumable.ConsumableEffect;
import core.game.node.entity.player.Player;
-import core.game.content.consumable.ConsumableEffect;
import core.game.node.entity.skill.Skills;
public class WizardsMindBombEffect extends ConsumableEffect {
diff --git a/Server/src/main/java/core/game/content/global/SkillcapePerks.java b/Server/src/main/content/data/skill/SkillcapePerks.java
similarity index 96%
rename from Server/src/main/java/core/game/content/global/SkillcapePerks.java
rename to Server/src/main/content/data/skill/SkillcapePerks.java
index 25bb0b3f9..d9109a18f 100644
--- a/Server/src/main/java/core/game/content/global/SkillcapePerks.java
+++ b/Server/src/main/content/data/skill/SkillcapePerks.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data.skill;
/**
* Handles the skillcape perks.
diff --git a/Server/src/main/java/core/game/content/global/SkillingPets.java b/Server/src/main/content/data/skill/SkillingPets.java
similarity index 96%
rename from Server/src/main/java/core/game/content/global/SkillingPets.java
rename to Server/src/main/content/data/skill/SkillingPets.java
index 8c34f7d0c..4ea03edd9 100644
--- a/Server/src/main/java/core/game/content/global/SkillingPets.java
+++ b/Server/src/main/content/data/skill/SkillingPets.java
@@ -1,9 +1,9 @@
-package core.game.content.global;
+package content.data.skill;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
-import rs09.game.world.repository.Repository;
+import core.game.world.repository.Repository;
/**
* Represents the skilling pets obtained randomly.
diff --git a/Server/src/main/java/core/game/node/entity/skill/gather/SkillingTool.java b/Server/src/main/content/data/skill/SkillingTool.java
similarity index 99%
rename from Server/src/main/java/core/game/node/entity/skill/gather/SkillingTool.java
rename to Server/src/main/content/data/skill/SkillingTool.java
index a77366987..cb0b7565f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/gather/SkillingTool.java
+++ b/Server/src/main/content/data/skill/SkillingTool.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.gather;
+package content.data.skill;
import core.game.node.entity.player.Player;
import core.game.node.entity.skill.Skills;
diff --git a/Server/src/main/content/data/tables/AllotmentSeedDropTable.java b/Server/src/main/content/data/tables/AllotmentSeedDropTable.java
new file mode 100644
index 000000000..01b6f3f17
--- /dev/null
+++ b/Server/src/main/content/data/tables/AllotmentSeedDropTable.java
@@ -0,0 +1,94 @@
+package content.data.tables;
+
+import core.api.StartupListener;
+import core.game.node.item.Item;
+import core.game.node.item.WeightedChanceItem;
+import core.tools.Log;
+import core.tools.RandomFunction;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import core.ServerConstants;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Handles the allotment seed drop table.
+ * @author Von Hresvelg
+ */
+public final class AllotmentSeedDropTable implements StartupListener {
+
+ /**
+ * The item id of the item representing the allotment seed drop table slot in a drop
+ * table.
+ */
+ public static final int SLOT_ITEM_ID = 14430;
+
+ /**
+ * The allotment seed drop table.
+ */
+ private static final List TABLE = new ArrayList<>(20);
+
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ static DocumentBuilder builder;
+
+ static {
+ try {
+ builder = factory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public AllotmentSeedDropTable() throws ParserConfigurationException {}
+
+ @Override
+ public void startup() {
+ if(ServerConstants.ASDT_DATA_PATH != null && !new File(ServerConstants.ASDT_DATA_PATH).exists()){
+ log(this.getClass(), Log.ERR, "Can't locate ASDT file at " + ServerConstants.ASDT_DATA_PATH);
+ return;
+ }
+ parse(ServerConstants.ASDT_DATA_PATH);
+ log(this.getClass(), Log.FINE, "Initialized Allotment Seed Drop Table from " + ServerConstants.ASDT_DATA_PATH);
+ }
+
+ /**
+ * Parses the xml file for the allotment seed drop table.
+ * @param file the .xml file containing the allotment seed drop table.
+ */
+ public static void parse(String file){
+ try {
+ Document doc = builder.parse(file);
+
+ NodeList itemNodes = doc.getElementsByTagName("item");
+ for(int i = 0; i < itemNodes.getLength(); i++){
+ Node itemNode = itemNodes.item(i);
+ if(itemNode.getNodeType() == Node.ELEMENT_NODE){
+ Element item = (Element) itemNode;
+ int itemId = Integer.parseInt(item.getAttribute("id"));
+ int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
+ int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
+ int weight = Integer.parseInt(item.getAttribute("weight"));
+
+ TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
+ }
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static Item retrieve() {return RandomFunction.rollWeightedChanceTable(TABLE);}
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/content/global/BirdNest.java b/Server/src/main/content/data/tables/BirdNest.java
similarity index 97%
rename from Server/src/main/java/core/game/content/global/BirdNest.java
rename to Server/src/main/content/data/tables/BirdNest.java
index 6470c0309..0552daa2e 100644
--- a/Server/src/main/java/core/game/content/global/BirdNest.java
+++ b/Server/src/main/content/data/tables/BirdNest.java
@@ -1,4 +1,4 @@
-package core.game.content.global;
+package content.data.tables;
import org.rs09.consts.Items;
import core.game.node.entity.npc.drop.NPCDropTables;
@@ -8,6 +8,9 @@ import core.game.node.item.GroundItemManager;
import core.game.node.item.Item;
import core.tools.RandomFunction;
import core.tools.StringUtils;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Represents a birds nest.
@@ -93,7 +96,7 @@ public enum BirdNest {
*/
public static void drop(final Player player) {
final BirdNest nest = getRandomNest(false);
- player.getAudioManager().send(1997);
+ playAudio(player, Sounds.CUCKOO_1_1997);
GroundItemManager.create(nest.getNest(), player);
player.getPacketDispatch().sendMessage(" A bird's nest falls out of the tree.");
}
diff --git a/Server/src/main/java/core/game/node/entity/npc/drop/CELEMinorTable.java b/Server/src/main/content/data/tables/CELEMinorTable.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/npc/drop/CELEMinorTable.java
rename to Server/src/main/content/data/tables/CELEMinorTable.java
index b913fdf70..13313bc59 100644
--- a/Server/src/main/java/core/game/node/entity/npc/drop/CELEMinorTable.java
+++ b/Server/src/main/content/data/tables/CELEMinorTable.java
@@ -1,96 +1,96 @@
-package core.game.node.entity.npc.drop;
-
-import api.StartupListener;
-import rs09.ServerConstants;
-import core.game.node.item.Item;
-import core.game.node.item.WeightedChanceItem;
-import rs09.game.system.SystemLogger;
-import core.tools.RandomFunction;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import static rs09.game.system.SystemLogger.logInfo;
-
-/**
- * Handles the Chaos Elemental's minor drop table. It is supposed to roll this table alongside its standard major drops on the main table.
- * @author Crash
- */
-public final class CELEMinorTable implements StartupListener {
-
- /**
- * The item id of the item representing the C. Ele minor drop table slot in a drop
- * table.
- */
- public static final int SLOT_ITEM_ID = 799; // Crash: Item ID 799 is currently a null, blank paper note object. Unsure if used for cutscene/cutscene items, but hijacking this as C.Ele's item container as it'll never be dropped or obtained in normal gameplay.
-
- /**
- * The rare drop table.
- */
- private static final List TABLE = new ArrayList<>(20);
-
-
- /**
- * Initialize needed objects for xml reading/writing
- */
- static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- static DocumentBuilder builder;
-
- static {
- try {
- builder = factory.newDocumentBuilder();
- } catch (ParserConfigurationException e) {
- e.printStackTrace();
- }
- }
-
- public CELEMinorTable() throws ParserConfigurationException {}
-
- @Override
- public void startup() {
- if(ServerConstants.CELEDT_DATA_PATH != null && !new File(ServerConstants.CELEDT_DATA_PATH).exists()){
- SystemLogger.logErr("Can't locate CELEDT file at " + ServerConstants.CELEDT_DATA_PATH);
- return;
- }
- parse(ServerConstants.CELEDT_DATA_PATH);
- logInfo("Loaded up Chaos Elemental drop table from " + ServerConstants.CELEDT_DATA_PATH);
- }
-
- /**
- * Parses the xml file for the CELEDT.
- * @param file the .xml file containing the CELEDT.
- */
- public static void parse(String file){
- try {
- Document doc = builder.parse(file);
-
- NodeList itemNodes = doc.getElementsByTagName("item");
- for(int i = 0; i < itemNodes.getLength(); i++){
- Node itemNode = itemNodes.item(i);
- if(itemNode.getNodeType() == Node.ELEMENT_NODE){
- Element item = (Element) itemNode;
- int itemId = Integer.parseInt(item.getAttribute("id"));
- int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
- int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
- int weight = Integer.parseInt(item.getAttribute("weight"));
-
- TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
- }
- }
- } catch (Exception e){
- e.printStackTrace();
- }
- }
-
- public static Item retrieve(){
- return RandomFunction.rollWeightedChanceTable(TABLE);
- }
+package content.data.tables;
+
+import core.api.StartupListener;
+import core.ServerConstants;
+import core.game.node.item.Item;
+import core.game.node.item.WeightedChanceItem;
+import core.tools.Log;
+import core.tools.RandomFunction;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Handles the Chaos Elemental's minor drop table. It is supposed to roll this table alongside its standard major drops on the main table.
+ * @author Crash
+ */
+public final class CELEMinorTable implements StartupListener {
+
+ /**
+ * The item id of the item representing the C. Ele minor drop table slot in a drop
+ * table.
+ */
+ public static final int SLOT_ITEM_ID = 799; // Crash: Item ID 799 is currently a null, blank paper note object. Unsure if used for cutscene/cutscene items, but hijacking this as C.Ele's item container as it'll never be dropped or obtained in normal gameplay.
+
+ /**
+ * The rare drop table.
+ */
+ private static final List TABLE = new ArrayList<>(20);
+
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ static DocumentBuilder builder;
+
+ static {
+ try {
+ builder = factory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public CELEMinorTable() throws ParserConfigurationException {}
+
+ @Override
+ public void startup() {
+ if(ServerConstants.CELEDT_DATA_PATH != null && !new File(ServerConstants.CELEDT_DATA_PATH).exists()){
+ log(this.getClass(), Log.ERR, "Can't locate CELEDT file at " + ServerConstants.CELEDT_DATA_PATH);
+ return;
+ }
+ parse(ServerConstants.CELEDT_DATA_PATH);
+ log(this.getClass(), Log.FINE, "Loaded up Chaos Elemental drop table from " + ServerConstants.CELEDT_DATA_PATH);
+ }
+
+ /**
+ * Parses the xml file for the CELEDT.
+ * @param file the .xml file containing the CELEDT.
+ */
+ public static void parse(String file){
+ try {
+ Document doc = builder.parse(file);
+
+ NodeList itemNodes = doc.getElementsByTagName("item");
+ for(int i = 0; i < itemNodes.getLength(); i++){
+ Node itemNode = itemNodes.item(i);
+ if(itemNode.getNodeType() == Node.ELEMENT_NODE){
+ Element item = (Element) itemNode;
+ int itemId = Integer.parseInt(item.getAttribute("id"));
+ int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
+ int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
+ int weight = Integer.parseInt(item.getAttribute("weight"));
+
+ TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
+ }
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static Item retrieve(){
+ return RandomFunction.rollWeightedChanceTable(TABLE);
+ }
}
\ No newline at end of file
diff --git a/Server/src/main/content/data/tables/GemDropTable.java b/Server/src/main/content/data/tables/GemDropTable.java
new file mode 100644
index 000000000..e9b486d28
--- /dev/null
+++ b/Server/src/main/content/data/tables/GemDropTable.java
@@ -0,0 +1,96 @@
+package content.data.tables;
+
+import core.api.StartupListener;
+import core.game.node.item.Item;
+import core.game.node.item.WeightedChanceItem;
+import core.tools.Log;
+import core.tools.RandomFunction;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import core.ServerConstants;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Handles the gem drop table.
+ * @author Von Hresvelg
+ */
+public final class GemDropTable implements StartupListener {
+
+ /**
+ * The item id of the item representing the gem drop table slot in a drop
+ * table.
+ */
+ public static final int SLOT_ITEM_ID = 14426;
+
+ /**
+ * The gem drop table.
+ */
+ private static final List TABLE = new ArrayList<>(20);
+
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ static DocumentBuilder builder;
+
+ static {
+ try {
+ builder = factory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public GemDropTable() throws ParserConfigurationException {}
+
+ @Override
+ public void startup() {
+ if(ServerConstants.GDT_DATA_PATH != null && !new File(ServerConstants.GDT_DATA_PATH).exists()){
+ log(this.getClass(), Log.ERR, "Can't locate GDT file at " + ServerConstants.GDT_DATA_PATH);
+ return;
+ }
+ parse(ServerConstants.GDT_DATA_PATH);
+ log(this.getClass(), Log.FINE, "Initialized Gem Drop Table from " + ServerConstants.GDT_DATA_PATH);
+ }
+
+ /**
+ * Parses the xml file for the gem drop table.
+ * @param file the .xml file containing the gem drop table.
+ */
+ public static void parse(String file){
+ try {
+ Document doc = builder.parse(file);
+
+ NodeList itemNodes = doc.getElementsByTagName("item");
+ for(int i = 0; i < itemNodes.getLength(); i++){
+ Node itemNode = itemNodes.item(i);
+ if(itemNode.getNodeType() == Node.ELEMENT_NODE){
+ Element item = (Element) itemNode;
+ int itemId = Integer.parseInt(item.getAttribute("id"));
+ int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
+ int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
+ int weight = Integer.parseInt(item.getAttribute("weight"));
+
+ TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
+ }
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static Item retrieve(){
+ return RandomFunction.rollWeightedChanceTable(TABLE);
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/data/tables/HerbDropTable.java b/Server/src/main/content/data/tables/HerbDropTable.java
new file mode 100644
index 000000000..efd03da2b
--- /dev/null
+++ b/Server/src/main/content/data/tables/HerbDropTable.java
@@ -0,0 +1,96 @@
+package content.data.tables;
+
+import core.api.StartupListener;
+import core.game.node.item.Item;
+import core.game.node.item.WeightedChanceItem;
+import core.tools.Log;
+import core.tools.RandomFunction;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import core.ServerConstants;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Handles the herb drop table.
+ * @author Von Hresvelg
+ */
+public final class HerbDropTable implements StartupListener {
+
+ /**
+ * The item id of the item representing the herb drop table slot in a drop
+ * table.
+ */
+ public static final int SLOT_ITEM_ID = 14424;
+
+ /**
+ * The herb drop table.
+ */
+ private static final List TABLE = new ArrayList<>(20);
+
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ static DocumentBuilder builder;
+
+ static {
+ try {
+ builder = factory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public HerbDropTable() throws ParserConfigurationException {}
+
+ @Override
+ public void startup() {
+ if(ServerConstants.HDT_DATA_PATH != null && !new File(ServerConstants.HDT_DATA_PATH).exists()){
+ log(this.getClass(), Log.ERR, "Can't locate HDT file at " + ServerConstants.HDT_DATA_PATH);
+ return;
+ }
+ parse(ServerConstants.HDT_DATA_PATH);
+ log(this.getClass(), Log.FINE, "Initialized Herb Drop Table from " + ServerConstants.HDT_DATA_PATH);
+ }
+
+ /**
+ * Parses the xml file for the herb drop table.
+ * @param file the .xml file containing the herb drop table.
+ */
+ public static void parse(String file){
+ try {
+ Document doc = builder.parse(file);
+
+ NodeList itemNodes = doc.getElementsByTagName("item");
+ for(int i = 0; i < itemNodes.getLength(); i++){
+ Node itemNode = itemNodes.item(i);
+ if(itemNode.getNodeType() == Node.ELEMENT_NODE){
+ Element item = (Element) itemNode;
+ int itemId = Integer.parseInt(item.getAttribute("id"));
+ int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
+ int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
+ int weight = Integer.parseInt(item.getAttribute("weight"));
+
+ TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
+ }
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static Item retrieve(){
+ return RandomFunction.rollWeightedChanceTable(TABLE);
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/data/tables/RareDropTable.kt b/Server/src/main/content/data/tables/RareDropTable.kt
new file mode 100644
index 000000000..253fc529a
--- /dev/null
+++ b/Server/src/main/content/data/tables/RareDropTable.kt
@@ -0,0 +1,114 @@
+package content.data.tables
+
+import core.ServerConstants
+import core.api.StartupListener
+import core.api.log
+import core.api.shouldRemoveNothings
+import core.api.utils.WeightBasedTable
+import core.api.utils.WeightedItem
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.tools.Log
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import org.w3c.dom.Element
+import org.w3c.dom.Node
+import java.io.File
+import javax.xml.parsers.DocumentBuilder
+import javax.xml.parsers.DocumentBuilderFactory
+import javax.xml.parsers.ParserConfigurationException
+
+/**
+ * Handles the rare drop table.
+ * @author Ceikry
+ */
+class RareDropTable : StartupListener {
+ override fun startup() {
+ if (ServerConstants.RDT_DATA_PATH != null && !File(ServerConstants.RDT_DATA_PATH).exists()) {
+ log(this::class.java, Log.ERR, "Can't locate RDT file at " + ServerConstants.RDT_DATA_PATH)
+ return
+ }
+ parse(ServerConstants.RDT_DATA_PATH)
+ log(this::class.java, Log.FINE, "Initialized Rare Drop Table from " + ServerConstants.RDT_DATA_PATH)
+ }
+
+ companion object {
+ private val TABLE: WeightBasedTable = object : WeightBasedTable() {
+ override fun roll(receiver: Entity?): ArrayList- {
+ val items = ArrayList(guaranteedItems)
+ var effectiveWeight = totalWeight
+ val p = if (receiver is Player) receiver else null
+ if (p != null && shouldRemoveNothings(p))
+ effectiveWeight -= nothingWeight
+
+ if (this.size == 1) {
+ items.add(get(0))
+ } else if (!this.isEmpty()) {
+ var rngWeight = RandomFunction.randomDouble(effectiveWeight)
+ for (item in this.shuffled()) {
+ if (item.id == Items.DWARF_REMAINS_0) continue
+ rngWeight -= item.weight
+ if (rngWeight <= 0) {
+ items.add(item)
+ break
+ }
+ }
+ }
+ return convertWeightedItems(items, receiver)
+ }
+
+ private val nothingWeight: Double
+ get() {
+ var sum = 0.0
+ for (i in this) {
+ if (i.id == Items.DWARF_REMAINS_0)
+ sum += i.weight
+ }
+ return sum
+ }
+ }
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ var factory = DocumentBuilderFactory.newInstance()
+ var builder: DocumentBuilder? = null
+
+ init {
+ try {
+ builder = factory.newDocumentBuilder()
+ } catch (e: ParserConfigurationException) {
+ e.printStackTrace()
+ }
+ }
+
+ /**
+ * Parses the xml file for the RDT.
+ * @param file the .xml file containing the RDT.
+ */
+ fun parse(file: String?) {
+ try {
+ val doc = builder!!.parse(file)
+ val itemNodes = doc.getElementsByTagName("item")
+ for (i in 0 until itemNodes.length) {
+ val itemNode = itemNodes.item(i)
+ if (itemNode.nodeType == Node.ELEMENT_NODE) {
+ val item = itemNode as Element
+ val itemId = item.getAttribute("id").toInt()
+ val minAmt = item.getAttribute("minAmt").toInt()
+ val maxAmt = item.getAttribute("maxAmt").toInt()
+ val weight = item.getAttribute("weight").toInt()
+ TABLE.add(WeightedItem(itemId, minAmt, maxAmt, weight.toDouble(), false))
+ }
+ }
+ } catch (e: Exception) {
+ e.printStackTrace()
+ }
+ }
+
+ fun retrieve(receiver: Entity?): Item? {
+ return TABLE.roll(receiver).getOrNull(0)
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/data/tables/RareSeedDropTable.java b/Server/src/main/content/data/tables/RareSeedDropTable.java
new file mode 100644
index 000000000..0b892270d
--- /dev/null
+++ b/Server/src/main/content/data/tables/RareSeedDropTable.java
@@ -0,0 +1,96 @@
+package content.data.tables;
+
+import core.api.StartupListener;
+import core.game.node.item.Item;
+import core.game.node.item.WeightedChanceItem;
+import core.tools.Log;
+import core.tools.RandomFunction;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import core.ServerConstants;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Handles the rare seed drop table.
+ * @author Von Hresvelg
+ */
+public final class RareSeedDropTable implements StartupListener {
+
+ /**
+ * The item id of the item representing the rare seed drop table slot in a drop
+ * table.
+ */
+ public static final int SLOT_ITEM_ID = 14428;
+
+ /**
+ * The rare seed drop table.
+ */
+ private static final List
TABLE = new ArrayList<>(20);
+
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ static DocumentBuilder builder;
+
+ static {
+ try {
+ builder = factory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public RareSeedDropTable() throws ParserConfigurationException {}
+
+ @Override
+ public void startup() {
+ if(ServerConstants.RSDT_DATA_PATH != null && !new File(ServerConstants.RSDT_DATA_PATH).exists()){
+ log(this.getClass(), Log.ERR, "Can't locate RSDT file at " + ServerConstants.RSDT_DATA_PATH);
+ return;
+ }
+ parse(ServerConstants.RSDT_DATA_PATH);
+ log(this.getClass(), Log.FINE, "Initialized Rare Seed Drop Table from " + ServerConstants.RSDT_DATA_PATH);
+ }
+
+ /**
+ * Parses the xml file for the rare seed drop table.
+ * @param file the .xml file containing the rare seed drop table.
+ */
+ public static void parse(String file){
+ try {
+ Document doc = builder.parse(file);
+
+ NodeList itemNodes = doc.getElementsByTagName("item");
+ for(int i = 0; i < itemNodes.getLength(); i++){
+ Node itemNode = itemNodes.item(i);
+ if(itemNode.getNodeType() == Node.ELEMENT_NODE){
+ Element item = (Element) itemNode;
+ int itemId = Integer.parseInt(item.getAttribute("id"));
+ int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
+ int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
+ int weight = Integer.parseInt(item.getAttribute("weight"));
+
+ TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
+ }
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static Item retrieve(){
+ return RandomFunction.rollWeightedChanceTable(TABLE);
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/data/tables/UncommonSeedDropTable.java b/Server/src/main/content/data/tables/UncommonSeedDropTable.java
new file mode 100644
index 000000000..1c76ca555
--- /dev/null
+++ b/Server/src/main/content/data/tables/UncommonSeedDropTable.java
@@ -0,0 +1,96 @@
+package content.data.tables;
+
+import core.api.StartupListener;
+import core.game.node.item.Item;
+import core.game.node.item.WeightedChanceItem;
+import core.tools.Log;
+import core.tools.RandomFunction;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import core.ServerConstants;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Handles the uncommon seed drop table.
+ * @author Von Hresvelg
+ */
+public final class UncommonSeedDropTable implements StartupListener {
+
+ /**
+ * The item id of the item representing the uncommon seed drop table slot in a drop
+ * table.
+ */
+ public static final int SLOT_ITEM_ID = 14422;
+
+ /**
+ * The uncommon seed drop table.
+ */
+ private static final List TABLE = new ArrayList<>(20);
+
+
+ /**
+ * Initialize needed objects for xml reading/writing
+ */
+ static DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
+ static DocumentBuilder builder;
+
+ static {
+ try {
+ builder = factory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public UncommonSeedDropTable() throws ParserConfigurationException {}
+
+ @Override
+ public void startup() {
+ if(ServerConstants.USDT_DATA_PATH != null && !new File(ServerConstants.USDT_DATA_PATH).exists()){
+ log(this.getClass(), Log.ERR, "Can't locate USDT file at " + ServerConstants.USDT_DATA_PATH);
+ return;
+ }
+ parse(ServerConstants.USDT_DATA_PATH);
+ log(this.getClass(), Log.FINE, "Initialized Uncommon Seed Drop Table from " + ServerConstants.USDT_DATA_PATH);
+ }
+
+ /**
+ * Parses the xml file for the uncommon seed drop table.
+ * @param file the .xml file containing the uncommon seed drop table.
+ */
+ public static void parse(String file){
+ try {
+ Document doc = builder.parse(file);
+
+ NodeList itemNodes = doc.getElementsByTagName("item");
+ for(int i = 0; i < itemNodes.getLength(); i++){
+ Node itemNode = itemNodes.item(i);
+ if(itemNode.getNodeType() == Node.ELEMENT_NODE){
+ Element item = (Element) itemNode;
+ int itemId = Integer.parseInt(item.getAttribute("id"));
+ int minAmt = Integer.parseInt(item.getAttribute("minAmt"));
+ int maxAmt = Integer.parseInt(item.getAttribute("maxAmt"));
+ int weight = Integer.parseInt(item.getAttribute("weight"));
+
+ TABLE.add(new WeightedChanceItem(itemId,minAmt,maxAmt,weight));
+ }
+ }
+ } catch (Exception e){
+ e.printStackTrace();
+ }
+ }
+
+ public static Item retrieve(){
+ return RandomFunction.rollWeightedChanceTable(TABLE);
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/ChampionChallengeListener.kt b/Server/src/main/content/global/activity/cchallange/ChampionChallengeListener.kt
new file mode 100644
index 000000000..e1e2cd6c8
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/ChampionChallengeListener.kt
@@ -0,0 +1,229 @@
+package content.global.activity.cchallange
+
+import content.global.activity.cchallange.npc.EarthWarriorChampionNPC.Companion.spawnEarthWarriorChampion
+import content.global.activity.cchallange.npc.GhoulChampionNPC.Companion.spawnGhoulChampion
+import content.global.activity.cchallange.npc.GiantChampionNPC.Companion.spawnGiantChampion
+import content.global.activity.cchallange.npc.GoblinChampionNPC.Companion.spawnGoblinChampion
+import content.global.activity.cchallange.npc.HobgoblinChampionNPC.Companion.spawnHobgoblinChampion
+import content.global.activity.cchallange.npc.ImpChampionNPC.Companion.spawnImpChampion
+import content.global.activity.cchallange.npc.JogreChampionNPC.Companion.spawnJogreChampion
+import content.global.activity.cchallange.npc.LesserDemonChampionNPC.Companion.spawnLesserDemonChampion
+import content.global.activity.cchallange.npc.SkeletonChampionNPC.Companion.spawnSkeletonChampion
+import content.global.activity.cchallange.npc.ZombieChampionNPC.Companion.spawnZombieChampion
+import core.api.*
+import core.game.global.action.DoorActionHandler
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import org.rs09.consts.Scenery
+
+/**
+ * Represents the Champion challenge.
+ */
+
+class ChampionChallengeListener : InteractionListener, MapArea {
+
+ val EARTH_WARRIOR_SCROLL = Items.CHAMPION_SCROLL_6798
+ val GHOUL_SCROLL = Items.CHAMPION_SCROLL_6799
+ val GIANT_SCROLL = Items.CHAMPION_SCROLL_6800
+ val GOBLIN_SCROLL = Items.CHAMPION_SCROLL_6801
+ val HOBGOBLIN_SCROLL = Items.CHAMPION_SCROLL_6802
+ val IMP_SCROLL = Items.CHAMPION_SCROLL_6803
+ val JOGRE_SCROLL = Items.CHAMPION_SCROLL_6804
+ val LESSER_DEMON_SCROLL = Items.CHAMPION_SCROLL_6805
+ val SKELETON_SCROLL = Items.CHAMPION_SCROLL_6806
+ val ZOMBIE_SCROLL = Items.CHAMPION_SCROLL_6807
+
+ val MESSAGE_SCROLL = 222
+
+ private val IMP_SCROLL_TEXT = arrayOf(
+ "How about picking on someone your own size? I'll",
+ "see you at the Champion's Guild.",
+ "",
+ "Champion of Imps"
+ )
+
+ private val GOBLIN_SCROLL_TEXT = arrayOf(
+ "Fight me if you think you can human, I'll wait",
+ "for you in the Champion's Guild.",
+ "",
+ "Champion of Goblins"
+ )
+
+ private val SKELETON_SCROLL_TEXT = arrayOf(
+ "I'll be waiting at the Champions' Guild to",
+ "collect your bones.",
+ "",
+ "Champion of Skeletons"
+ )
+
+ private val ZOMBIE_SCROLL_TEXT = arrayOf(
+ "You come to Champions' Guild, you fight me,",
+ "I squish you, I get brains!",
+ "",
+ "Champion of Zombies"
+ )
+
+ private val GIANT_SCROLL_TEXT = arrayOf(
+ "Get yourself to the Champions' Guild, if you",
+ "dare to face me puny human.",
+ "",
+ "Champion of Giants"
+ )
+
+ private val HOBGOBLIN_SCROLL_TEXT = arrayOf(
+ "You won't defeat me, though you're welcome to",
+ "try at the Champions' Guild.",
+ "",
+ "Champion of Hobgoblins"
+ )
+
+ private val GHOUL_SCROLL_TEXT = arrayOf(
+ "Come and duel me at the Champions' Guild, I'll",
+ "make sure nothing goes to waste.",
+ "",
+ "Champion of Ghouls"
+ )
+
+ private val EARTH_WARRIOR_TEXT = arrayOf(
+ "I challenge you to a duel, come to the arena beneath",
+ "the Champion's Guild and fight me if you dare.",
+ "",
+ "Champion of Earth Warriors"
+ )
+
+ private val JOGRE_SCROLL_TEXT = arrayOf(
+ "You think you can defeat me? Come to the",
+ "Champion's Guild and prove it!",
+ "",
+ "Champion of Jogres"
+ )
+
+ private val LESSER_DEMON_SCROLL_TEXT = arrayOf(
+ "Come to the Champion's Guild so I can banish",
+ "you mortal!",
+ "",
+ "Champion of Lesser Demons"
+ )
+
+ private val PORTCULLIS = Scenery.PORTCULLIS_10553
+ private val CHAMPION_STATUE_CLOSED = Scenery.CHAMPION_STATUE_10556
+ private val CHAMPION_STATUE_OPEN = Scenery.CHAMPION_STATUE_10557
+ private val TRAPDOOR_CLOSED = Scenery.TRAPDOOR_10558
+ private val TRAPDOOR_OPEN = Scenery.TRAPDOOR_10559
+ private val LARXUS = NPCs.LARXUS_3050
+
+ private val ARENA_ZONE = 12696
+
+ override fun defineListeners() {
+ // Champion's Guild Basement Ladder to Main Floor
+ addClimbDest(Location(3190, 9758, 0), Location(3190, 3356, 0))
+ // Champion Statue Ladder to Arena
+ addClimbDest(Location(3184, 9758, 0), Location(3182, 9758, 0))
+ // Arena Ladder to Champion's Guild Basement
+ addClimbDest(Location(3183, 9758, 0), Location(3185, 9758, 0))
+
+ on(LARXUS, IntType.NPC, "talk-to") { player, _ ->
+ openDialogue(player, LarxusDialogue(false))
+ return@on true
+ }
+
+ on(ChampionScrollsDropHandler.SCROLLS, IntType.ITEM, "read") { player, node ->
+ updateAndReadScroll(player, node.asItem())
+ return@on true
+ }
+
+ onUseWith(IntType.NPC, ChampionScrollsDropHandler.SCROLLS, NPCs.LARXUS_3050) { player, _, _ ->
+ openDialogue(player, LarxusDialogue(true))
+ return@onUseWith true
+ }
+
+ on(TRAPDOOR_CLOSED, IntType.SCENERY, "open") { _, node ->
+ replaceScenery(node.asScenery(), TRAPDOOR_OPEN, 100, node.location)
+ return@on true
+ }
+
+ on(TRAPDOOR_OPEN, IntType.SCENERY, "close") { _, node ->
+ replaceScenery(node.asScenery(), TRAPDOOR_CLOSED, -1, node.location)
+ return@on true
+ }
+
+ on(CHAMPION_STATUE_CLOSED, IntType.SCENERY, "open") { _, node ->
+ replaceScenery(node.asScenery(), CHAMPION_STATUE_OPEN, 100, node.location)
+ return@on true
+ }
+
+ on(PORTCULLIS, IntType.SCENERY, "open") { player, node ->
+ if (player.getAttribute("championsarena:start", false) == false) {
+ sendNPCDialogue(player, NPCs.LARXUS_3050, "You need to arrange a challenge with me before you enter the arena.")
+ } else {
+ lock(player, 3)
+ submitWorldPulse(object : Pulse() {
+ var counter = 0
+ override fun pulse(): Boolean {
+ when (counter++) {
+ 1 -> {
+ player.familiarManager.dismiss()
+ }
+ 2 -> DoorActionHandler.handleDoor(player, node.asScenery())
+ 3 -> when{
+ removeItem(player, IMP_SCROLL) -> spawnImpChampion(player)
+ removeItem(player, GOBLIN_SCROLL) -> spawnGoblinChampion(player)
+ removeItem(player, SKELETON_SCROLL) -> spawnSkeletonChampion(player)
+ removeItem(player, ZOMBIE_SCROLL) -> spawnZombieChampion(player)
+ removeItem(player, GIANT_SCROLL) -> spawnGiantChampion(player)
+ removeItem(player, HOBGOBLIN_SCROLL) -> spawnHobgoblinChampion(player)
+ removeItem(player, GHOUL_SCROLL) -> spawnGhoulChampion(player)
+ removeItem(player, EARTH_WARRIOR_SCROLL) -> {
+ spawnEarthWarriorChampion(player)
+ player.prayer.reset()
+ }
+ removeItem(player, JOGRE_SCROLL) -> spawnJogreChampion(player)
+ removeItem(player, LESSER_DEMON_SCROLL) -> spawnLesserDemonChampion(player)
+ }
+ }
+ return false
+ }
+ })
+ }
+ return@on true
+ }
+ }
+
+ private fun updateAndReadScroll(player: Player, item: Item) {
+ val id = item.id
+ openInterface(player, MESSAGE_SCROLL).also {
+ when (id) {
+ IMP_SCROLL -> setInterfaceText(player, IMP_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ GOBLIN_SCROLL -> setInterfaceText(player, GOBLIN_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ SKELETON_SCROLL -> setInterfaceText(player, SKELETON_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ ZOMBIE_SCROLL -> setInterfaceText(player, ZOMBIE_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ GIANT_SCROLL -> setInterfaceText(player, GIANT_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ HOBGOBLIN_SCROLL -> setInterfaceText(player, HOBGOBLIN_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ GHOUL_SCROLL -> setInterfaceText(player, GHOUL_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ EARTH_WARRIOR_SCROLL -> setInterfaceText(player, EARTH_WARRIOR_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ JOGRE_SCROLL -> setInterfaceText(player, JOGRE_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ LESSER_DEMON_SCROLL -> setInterfaceText(player, LESSER_DEMON_SCROLL_TEXT.joinToString(" "), MESSAGE_SCROLL, 4)
+ }
+ }
+ }
+
+ override fun defineAreaBorders(): Array {
+ return arrayOf(getRegionBorders(ARENA_ZONE))
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(
+ ZoneRestriction.CANNON,
+ ZoneRestriction.FIRES,
+ ZoneRestriction.RANDOM_EVENTS
+ )
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/ChampionScrollsDropHandler.kt b/Server/src/main/content/global/activity/cchallange/ChampionScrollsDropHandler.kt
new file mode 100644
index 000000000..02b3b2b0e
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/ChampionScrollsDropHandler.kt
@@ -0,0 +1,279 @@
+package content.global.activity.cchallange
+
+import core.api.sendMessage
+import core.api.sendNews
+import core.game.event.NPCKillEvent
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.node.item.GroundItemManager
+import core.game.node.item.Item
+import core.tools.*
+import core.game.world.GameWorld
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Handles the drop for champion challenge.
+ * @authors Phil, Skelsoft, Ceikry
+ */
+
+class ChampionScrollsDropHandler : ChampionScrollsEventHookBase() {
+ companion object {
+
+ private val IMPS = intArrayOf(
+ NPCs.IMP_708, NPCs.IMP_709, NPCs.IMP_1531, NPCs.IMP_6211
+ )
+
+ private val GOBLINS = intArrayOf(
+ NPCs.GOBLIN_100, NPCs.GOBLIN_101, NPCs.GOBLIN_102, NPCs.GOBLIN_444, NPCs.GOBLIN_445,
+
+ NPCs.GOBLIN_1769, NPCs.GOBLIN_1770, NPCs.GOBLIN_1771, NPCs.GOBLIN_1772, NPCs.GOBLIN_1773,
+ NPCs.GOBLIN_1774, NPCs.GOBLIN_1775, NPCs.GOBLIN_1776, NPCs.GOBLIN_2274, NPCs.GOBLIN_2275,
+ NPCs.GOBLIN_2276, NPCs.GOBLIN_2277, NPCs.GOBLIN_2278, NPCs.GOBLIN_2279, NPCs.GOBLIN_2280,
+ NPCs.GOBLIN_2281, NPCs.GOBLIN_2678, NPCs.GOBLIN_2679, NPCs.GOBLIN_2680, NPCs.GOBLIN_2681,
+ NPCs.GOBLIN_3264, NPCs.GOBLIN_3265, NPCs.GOBLIN_3266, NPCs.GOBLIN_3267, NPCs.GOBLIN_3726,
+ NPCs.GOBLIN_4261, NPCs.GOBLIN_4262, NPCs.GOBLIN_4263, NPCs.GOBLIN_4264, NPCs.GOBLIN_4265,
+ NPCs.GOBLIN_4266, NPCs.GOBLIN_4267, NPCs.GOBLIN_4268, NPCs.GOBLIN_4269, NPCs.GOBLIN_4270,
+ NPCs.GOBLIN_4271, NPCs.GOBLIN_4272, NPCs.GOBLIN_4273, NPCs.GOBLIN_4274, NPCs.GOBLIN_4275,
+ NPCs.GOBLIN_4276, NPCs.GOBLIN_4407, NPCs.GOBLIN_4408, NPCs.GOBLIN_4409, NPCs.GOBLIN_4410,
+ NPCs.GOBLIN_4411, NPCs.GOBLIN_4412, NPCs.GOBLIN_4479, NPCs.GOBLIN_4480, NPCs.GOBLIN_4481,
+ NPCs.GOBLIN_4482, NPCs.GOBLIN_4483, NPCs.GOBLIN_4484, NPCs.GOBLIN_4485, NPCs.GOBLIN_4486,
+ NPCs.GOBLIN_4487, NPCs.GOBLIN_4488, NPCs.GOBLIN_4489, NPCs.GOBLIN_4490, NPCs.GOBLIN_4491,
+ NPCs.GOBLIN_4492, NPCs.GOBLIN_4499, NPCs.GOBLIN_4633, NPCs.GOBLIN_4634, NPCs.GOBLIN_4635,
+ NPCs.GOBLIN_4636, NPCs.GOBLIN_4637, NPCs.GOBLIN_5855, NPCs.GOBLIN_5856, NPCs.GOBLIN_6125,
+ NPCs.GOBLIN_6126, NPCs.GOBLIN_6132, NPCs.GOBLIN_6133, NPCs.GOBLIN_6279, NPCs.GOBLIN_6280,
+ NPCs.GOBLIN_6281, NPCs.GOBLIN_6282, NPCs.GOBLIN_6283, NPCs.GOBLIN_6284, NPCs.GOBLIN_6402,
+ NPCs.GOBLIN_6403, NPCs.GOBLIN_6404, NPCs.GOBLIN_6405, NPCs.GOBLIN_6406, NPCs.GOBLIN_6407,
+ NPCs.GOBLIN_6408, NPCs.GOBLIN_6409, NPCs.GOBLIN_6410, NPCs.GOBLIN_6411, NPCs.GOBLIN_6412,
+ NPCs.GOBLIN_6413, NPCs.GOBLIN_6414, NPCs.GOBLIN_6415, NPCs.GOBLIN_6416, NPCs.GOBLIN_6417,
+ NPCs.GOBLIN_6418, NPCs.GOBLIN_6419, NPCs.GOBLIN_6420, NPCs.GOBLIN_6421, NPCs.GOBLIN_6422,
+ NPCs.GOBLIN_6423, NPCs.GOBLIN_6424, NPCs.GOBLIN_6425, NPCs.GOBLIN_6426, NPCs.GOBLIN_6427,
+ NPCs.GOBLIN_6428, NPCs.GOBLIN_6429, NPCs.GOBLIN_6430, NPCs.GOBLIN_6431, NPCs.GOBLIN_6432,
+ NPCs.GOBLIN_6433, NPCs.GOBLIN_6434, NPCs.GOBLIN_6435, NPCs.GOBLIN_6436, NPCs.GOBLIN_6437,
+ NPCs.GOBLIN_6438, NPCs.GOBLIN_6439, NPCs.GOBLIN_6440, NPCs.GOBLIN_6441, NPCs.GOBLIN_6442,
+ NPCs.GOBLIN_6443, NPCs.GOBLIN_6444, NPCs.GOBLIN_6445, NPCs.GOBLIN_6446, NPCs.GOBLIN_6447,
+ NPCs.GOBLIN_6448, NPCs.GOBLIN_6449, NPCs.GOBLIN_6450, NPCs.GOBLIN_6451, NPCs.GOBLIN_6452,
+ NPCs.GOBLIN_6453, NPCs.GOBLIN_6454, NPCs.GOBLIN_6455, NPCs.GOBLIN_6456, NPCs.GOBLIN_6457,
+ NPCs.GOBLIN_6458, NPCs.GOBLIN_6459, NPCs.GOBLIN_6460, NPCs.GOBLIN_6461, NPCs.GOBLIN_6462,
+ NPCs.GOBLIN_6463, NPCs.GOBLIN_6464, NPCs.GOBLIN_6465, NPCs.GOBLIN_6466, NPCs.GOBLIN_6467,
+ NPCs.GOBLIN_6490, NPCs.GOBLIN_6491, NPCs.GOBLIN_6492, NPCs.GOBLIN_6493, NPCs.GOBLIN_6494,
+ NPCs.GOBLIN_6495, NPCs.GOBLIN_7964, NPCs.GOBLIN_7965,
+
+ NPCs.CAVE_GOBLIN_1822, NPCs.CAVE_GOBLIN_1823, NPCs.CAVE_GOBLIN_1824, NPCs.CAVE_GOBLIN_1825,
+ NPCs.CAVE_GOBLIN_5752, NPCs.CAVE_GOBLIN_5753, NPCs.CAVE_GOBLIN_5754, NPCs.CAVE_GOBLIN_5755,
+ NPCs.CAVE_GOBLIN_5756, NPCs.CAVE_GOBLIN_5757, NPCs.CAVE_GOBLIN_5758, NPCs.CAVE_GOBLIN_5759,
+ NPCs.CAVE_GOBLIN_5760, NPCs.CAVE_GOBLIN_5761, NPCs.CAVE_GOBLIN_5762, NPCs.CAVE_GOBLIN_5763,
+ NPCs.CAVE_GOBLIN_5764, NPCs.CAVE_GOBLIN_5765, NPCs.CAVE_GOBLIN_5766, NPCs.CAVE_GOBLIN_5767,
+ NPCs.CAVE_GOBLIN_5768, NPCs.CAVE_GOBLIN_5769, NPCs.CAVE_GOBLIN_5783, NPCs.CAVE_GOBLIN_5785,
+ NPCs.CAVE_GOBLIN_5873, NPCs.CAVE_GOBLIN_5874, NPCs.CAVE_GOBLIN_5875, NPCs.CAVE_GOBLIN_5876,
+ NPCs.CAVE_GOBLIN_5877, NPCs.CAVE_GOBLIN_5878, NPCs.CAVE_GOBLIN_8451,
+
+ NPCs.CAVE_GOBLIN_GUARD_2073, NPCs.CAVE_GOBLIN_GUARD_2074,
+
+ NPCs.GOBLIN_GUARD_489, NPCs.GOBLIN_GUARD_6496, NPCs.GOBLIN_GUARD_6497,
+ NPCs.SERGEANT_GRIMSPIKE_6265,
+ NPCs.SERGEANT_STEELWILL_6263,
+ NPCs.SERGEANT_STRONGSTACK_6261
+ )
+
+ private val SKELETONS = intArrayOf(
+ NPCs.SKELETON_90, NPCs.SKELETON_91, NPCs.SKELETON_92, NPCs.SKELETON_93,
+
+ NPCs.SKELETON_459,
+
+ NPCs.SKELETON_1471, NPCs.SKELETON_2036, NPCs.SKELETON_2037, NPCs.SKELETON_2715,
+ NPCs.SKELETON_3151, NPCs.SKELETON_3152, NPCs.SKELETON_3291, NPCs.SKELETON_3581,
+ NPCs.SKELETON_4384, NPCs.SKELETON_4385, NPCs.SKELETON_4386, NPCs.SKELETON_5332,
+ NPCs.SKELETON_5333, NPCs.SKELETON_5334, NPCs.SKELETON_5335, NPCs.SKELETON_5336,
+ NPCs.SKELETON_5337, NPCs.SKELETON_5338, NPCs.SKELETON_5339, NPCs.SKELETON_5340,
+ NPCs.SKELETON_5341, NPCs.SKELETON_5365, NPCs.SKELETON_5366, NPCs.SKELETON_5367,
+ NPCs.SKELETON_5368, NPCs.SKELETON_5381, NPCs.SKELETON_5385, NPCs.SKELETON_5386,
+ NPCs.SKELETON_5387, NPCs.SKELETON_5388, NPCs.SKELETON_5389, NPCs.SKELETON_5390,
+ NPCs.SKELETON_5391, NPCs.SKELETON_5392, NPCs.SKELETON_5411, NPCs.SKELETON_5412,
+ NPCs.SKELETON_5422, NPCs.SKELETON_5423, NPCs.SKELETON_6091, NPCs.SKELETON_6092,
+ NPCs.SKELETON_6093, NPCs.SKELETON_6764, NPCs.SKELETON_6765, NPCs.SKELETON_6766,
+ NPCs.SKELETON_6767, NPCs.SKELETON_6768, NPCs.SKELETON_7774, NPCs.SKELETON_7775,
+ NPCs.SKELETON_7776, NPCs.SKELETON_7777, NPCs.SKELETON_7778, NPCs.SKELETON_7779,
+ NPCs.SKELETON_7788, NPCs.SKELETON_7815, NPCs.GIANT_SKELETON_1973,
+
+ NPCs.GIANT_SKELETON_5359, NPCs.GIANT_SKELETON_5384, NPCs.SKELETON_HELLHOUND_1575,
+
+ NPCs.SKELETON_MAGE_94, NPCs.SKELETON_MAGE_2717, NPCs.SKELETON_MAGE_3844,
+
+ NPCs.SKELETON_MAGE_3850, NPCs.SKELETON_MAGE_3851,
+
+ NPCs.SKELETON_HERO_6103, NPCs.SKELETON_BRUTE_6104, NPCs.SKELETON_WARLORD_6105,
+
+ NPCs.SKELETON_HEAVY_6106, NPCs.SKELETON_THUG_6107,
+ NPCs.NAZASTAROOL_508,
+
+ NPCs.UNDEAD_ONE_5353, NPCs.UNDEAD_ONE_5354, NPCs.UNDEAD_ONE_5355,
+ NPCs.UNDEAD_ONE_5356, NPCs.UNDEAD_ONE_5357, NPCs.UNDEAD_ONE_5358,
+ )
+
+ private val ZOMBIES = intArrayOf(
+ NPCs.ZOMBIE_73, NPCs.ZOMBIE_74, NPCs.ZOMBIE_75, NPCs.ZOMBIE_76, NPCs.ZOMBIE_419,
+ NPCs.ZOMBIE_420, NPCs.ZOMBIE_421, NPCs.ZOMBIE_422, NPCs.ZOMBIE_423, NPCs.ZOMBIE_424,
+
+ NPCs.ZOMBIE_1826, NPCs.ZOMBIE_2714, NPCs.ZOMBIE_2863, NPCs.ZOMBIE_2866, NPCs.ZOMBIE_2869,
+ NPCs.ZOMBIE_2878, NPCs.ZOMBIE_3622, NPCs.ZOMBIE_3623, NPCs.ZOMBIE_4392, NPCs.ZOMBIE_4393,
+ NPCs.ZOMBIE_4394, NPCs.ZOMBIE_5293, NPCs.ZOMBIE_5294, NPCs.ZOMBIE_5295, NPCs.ZOMBIE_5296,
+ NPCs.ZOMBIE_5297, NPCs.ZOMBIE_5298, NPCs.ZOMBIE_5299, NPCs.ZOMBIE_5300, NPCs.ZOMBIE_5301,
+ NPCs.ZOMBIE_5302, NPCs.ZOMBIE_5303, NPCs.ZOMBIE_5304, NPCs.ZOMBIE_5305, NPCs.ZOMBIE_5306,
+ NPCs.ZOMBIE_5307, NPCs.ZOMBIE_5308, NPCs.ZOMBIE_5309, NPCs.ZOMBIE_5310, NPCs.ZOMBIE_5311,
+ NPCs.ZOMBIE_5312, NPCs.ZOMBIE_5313, NPCs.ZOMBIE_5314, NPCs.ZOMBIE_5315, NPCs.ZOMBIE_5316,
+ NPCs.ZOMBIE_5317, NPCs.ZOMBIE_5318, NPCs.ZOMBIE_5319, NPCs.ZOMBIE_5320, NPCs.ZOMBIE_5321,
+ NPCs.ZOMBIE_5322, NPCs.ZOMBIE_5323, NPCs.ZOMBIE_5324, NPCs.ZOMBIE_5325, NPCs.ZOMBIE_5326,
+ NPCs.ZOMBIE_5327, NPCs.ZOMBIE_5328, NPCs.ZOMBIE_5329, NPCs.ZOMBIE_5330, NPCs.ZOMBIE_5331,
+ NPCs.ZOMBIE_5375, NPCs.ZOMBIE_5376, NPCs.ZOMBIE_5377, NPCs.ZOMBIE_5378, NPCs.ZOMBIE_5379,
+ NPCs.ZOMBIE_5380, NPCs.ZOMBIE_5393, NPCs.ZOMBIE_5394, NPCs.ZOMBIE_5395, NPCs.ZOMBIE_5396,
+ NPCs.ZOMBIE_5397, NPCs.ZOMBIE_5398, NPCs.ZOMBIE_5399, NPCs.ZOMBIE_5400, NPCs.ZOMBIE_5401,
+ NPCs.ZOMBIE_5402, NPCs.ZOMBIE_5403, NPCs.ZOMBIE_5404, NPCs.ZOMBIE_5405, NPCs.ZOMBIE_5406,
+ NPCs.ZOMBIE_5407, NPCs.ZOMBIE_5408, NPCs.ZOMBIE_5409, NPCs.ZOMBIE_5410, NPCs.ZOMBIE_6099,
+ NPCs.ZOMBIE_6100, NPCs.ZOMBIE_6131, NPCs.ZOMBIE_7789, NPCs.ZOMBIE_7790, NPCs.ZOMBIE_7791,
+ NPCs.ZOMBIE_7792, NPCs.ZOMBIE_7817, NPCs.ZOMBIE_7818, NPCs.ZOMBIE_7819, NPCs.ZOMBIE_7820,
+ NPCs.ZOMBIE_8142, NPCs.ZOMBIE_8143, NPCs.ZOMBIE_8144, NPCs.ZOMBIE_8145,
+
+ NPCs.ZOMBIE_PIRATE_2837, NPCs.ZOMBIE_PIRATE_2838, NPCs.ZOMBIE_PIRATE_2839,
+ NPCs.ZOMBIE_PIRATE_2840, NPCs.ZOMBIE_PIRATE_2841, NPCs.ZOMBIE_PIRATE_2842,
+ NPCs.ZOMBIE_PIRATE_5629, NPCs.ZOMBIE_PIRATE_5630, NPCs.ZOMBIE_PIRATE_5631,
+ NPCs.ZOMBIE_PIRATE_5632, NPCs.ZOMBIE_PIRATE_5633, NPCs.ZOMBIE_PIRATE_5634,
+ NPCs.ZOMBIE_PIRATE_5635, NPCs.ZOMBIE_PIRATE_5636, NPCs.ZOMBIE_PIRATE_5637,
+ NPCs.ZOMBIE_PIRATE_5638, NPCs.ZOMBIE_PIRATE_5639, NPCs.ZOMBIE_PIRATE_5640,
+ NPCs.ZOMBIE_PIRATE_5641, NPCs.ZOMBIE_PIRATE_5642, NPCs.ZOMBIE_PIRATE_5643,
+ NPCs.ZOMBIE_PIRATE_5644, NPCs.ZOMBIE_PIRATE_5645, NPCs.ZOMBIE_PIRATE_5646,
+ NPCs.ZOMBIE_PIRATE_5647, NPCs.ZOMBIE_PIRATE_5648, NPCs.ZOMBIE_PIRATE_5649,
+ NPCs.ZOMBIE_PIRATE_5650, NPCs.ZOMBIE_PIRATE_5651, NPCs.ZOMBIE_PIRATE_5652,
+ NPCs.ZOMBIE_PIRATE_5653, NPCs.ZOMBIE_PIRATE_5654, NPCs.ZOMBIE_PIRATE_5655,
+ NPCs.ZOMBIE_PIRATE_5656, NPCs.ZOMBIE_PIRATE_5657, NPCs.ZOMBIE_PIRATE_5658,
+ NPCs.ZOMBIE_PIRATE_5659, NPCs.ZOMBIE_PIRATE_5660, NPCs.ZOMBIE_PIRATE_5661,
+ NPCs.ZOMBIE_PIRATE_5662, NPCs.ZOMBIE_PIRATE_5663, NPCs.ZOMBIE_PIRATE_5664,
+ NPCs.ZOMBIE_PIRATE_5665,
+
+ NPCs.ZOMBIE_SWAB_2843, NPCs.ZOMBIE_SWAB_2845,
+ NPCs.ZOMBIE_SWAB_2846, NPCs.ZOMBIE_SWAB_2847,
+ NPCs.ZOMBIE_SWAB_2848,
+ NPCs.NAZASTAROOL_507,
+
+ NPCs.SLASH_BASH_2060, NPCs.SOREBONES_5627, NPCs.SOREBONES_5628,
+
+ NPCs.UNDEAD_LUMBERJACK_1524,
+
+ NPCs.UNDEAD_ONE_502, NPCs.UNDEAD_ONE_503, NPCs.UNDEAD_ONE_504, NPCs.UNDEAD_ONE_505,
+
+ NPCs.ZOGRE_2044, NPCs.ZOGRE_2045, NPCs.ZOGRE_2046, NPCs.ZOGRE_2047, NPCs.ZOGRE_2048,
+ NPCs.ZOGRE_2049, NPCs.ZOGRE_2051, NPCs.ZOGRE_2052, NPCs.ZOGRE_2053, NPCs.ZOGRE_2054,
+ NPCs.ZOGRE_2055,
+ NPCs.UNDEAD_LUMBERJACK_1524, NPCs.UNDEAD_LUMBERJACK_1525, NPCs.UNDEAD_LUMBERJACK_5678,
+ NPCs.UNDEAD_LUMBERJACK_5679, NPCs.UNDEAD_LUMBERJACK_5680, NPCs.UNDEAD_LUMBERJACK_5681,
+ NPCs.UNDEAD_LUMBERJACK_5682, NPCs.UNDEAD_LUMBERJACK_5683, NPCs.UNDEAD_LUMBERJACK_5684,
+ NPCs.UNDEAD_LUMBERJACK_5685, NPCs.UNDEAD_LUMBERJACK_5686, NPCs.UNDEAD_LUMBERJACK_5687,
+ NPCs.UNDEAD_LUMBERJACK_5688, NPCs.UNDEAD_LUMBERJACK_5689, NPCs.UNDEAD_LUMBERJACK_5690,
+ NPCs.UNDEAD_LUMBERJACK_5691, NPCs.UNDEAD_LUMBERJACK_5692, NPCs.UNDEAD_LUMBERJACK_5693,
+ NPCs.UNDEAD_LUMBERJACK_5694, NPCs.UNDEAD_LUMBERJACK_5695, NPCs.UNDEAD_LUMBERJACK_5696,
+ NPCs.UNDEAD_LUMBERJACK_5697, NPCs.UNDEAD_LUMBERJACK_5698, NPCs.UNDEAD_LUMBERJACK_5699,
+ NPCs.UNDEAD_LUMBERJACK_5700, NPCs.UNDEAD_LUMBERJACK_5701, NPCs.UNDEAD_LUMBERJACK_5702,
+ NPCs.UNDEAD_LUMBERJACK_5703, NPCs.UNDEAD_LUMBERJACK_5704, NPCs.UNDEAD_LUMBERJACK_5705,
+ NPCs.UNDEAD_LUMBERJACK_5706, NPCs.UNDEAD_LUMBERJACK_5707, NPCs.UNDEAD_LUMBERJACK_5708,
+ NPCs.UNDEAD_LUMBERJACK_5709, NPCs.UNDEAD_LUMBERJACK_5710, NPCs.UNDEAD_LUMBERJACK_5711,
+ NPCs.UNDEAD_LUMBERJACK_5712, NPCs.UNDEAD_LUMBERJACK_5713, NPCs.UNDEAD_LUMBERJACK_5714,
+ NPCs.UNDEAD_LUMBERJACK_5715, NPCs.UNDEAD_LUMBERJACK_5716, NPCs.UNDEAD_LUMBERJACK_5717,
+ NPCs.UNDEAD_LUMBERJACK_5718, NPCs.UNDEAD_LUMBERJACK_5719, NPCs.UNDEAD_LUMBERJACK_5720,
+ NPCs.UNDEAD_LUMBERJACK_5721, NPCs.UNDEAD_LUMBERJACK_5722, NPCs.UNDEAD_LUMBERJACK_5723,
+ NPCs.UNDEAD_LUMBERJACK_5724, NPCs.UNDEAD_LUMBERJACK_5725, NPCs.UNDEAD_LUMBERJACK_5726,
+ NPCs.UNDEAD_LUMBERJACK_5727, NPCs.UNDEAD_LUMBERJACK_5728, NPCs.UNDEAD_LUMBERJACK_5729,
+ NPCs.UNDEAD_LUMBERJACK_5730, NPCs.UNDEAD_LUMBERJACK_5731, NPCs.UNDEAD_LUMBERJACK_5732,
+ NPCs.UNDEAD_LUMBERJACK_5733, NPCs.UNDEAD_LUMBERJACK_5734, NPCs.UNDEAD_LUMBERJACK_5735,
+ NPCs.UNDEAD_LUMBERJACK_5736, NPCs.UNDEAD_LUMBERJACK_5737, NPCs.UNDEAD_LUMBERJACK_5738,
+ NPCs.UNDEAD_LUMBERJACK_5739, NPCs.UNDEAD_LUMBERJACK_5740, NPCs.UNDEAD_LUMBERJACK_5741,
+ NPCs.UNDEAD_LUMBERJACK_5742, NPCs.UNDEAD_LUMBERJACK_5743, NPCs.UNDEAD_LUMBERJACK_5744,
+ NPCs.UNDEAD_LUMBERJACK_5745, NPCs.UNDEAD_LUMBERJACK_5746, NPCs.UNDEAD_LUMBERJACK_5747,
+ )
+
+ private val GIANTS = intArrayOf(
+ NPCs.HILL_GIANT_117, NPCs.HILL_GIANT_4689, NPCs.HILL_GIANT_4690, NPCs.HILL_GIANT_4691,
+ NPCs.HILL_GIANT_4692, NPCs.HILL_GIANT_4693,
+
+ NPCs.FIRE_GIANT_110, NPCs.FIRE_GIANT_1582, NPCs.FIRE_GIANT_1583, NPCs.FIRE_GIANT_1584,
+ NPCs.FIRE_GIANT_1585, NPCs.FIRE_GIANT_1586, NPCs.FIRE_GIANT_7003, NPCs.FIRE_GIANT_7004,
+
+ NPCs.MOSS_GIANT_112, NPCs.MOSS_GIANT_1587, NPCs.MOSS_GIANT_1588, NPCs.MOSS_GIANT_1681,
+ NPCs.MOSS_GIANT_4534, NPCs.MOSS_GIANT_4688, NPCs.MOSS_GIANT_4706,
+
+ NPCs.ICE_GIANT_111, NPCs.ICE_GIANT_3072, NPCs.ICE_GIANT_4685, NPCs.ICE_GIANT_4686,
+ NPCs.ICE_GIANT_4687,
+ NPCs.BLACK_KNIGHT_TITAN_221,
+
+ NPCs.CYCLOPS_116, NPCs.CYCLOPS_4291, NPCs.CYCLOPS_4292, NPCs.CYCLOPS_6078,
+ NPCs.CYCLOPS_6079, NPCs.CYCLOPS_6080, NPCs.CYCLOPS_6081, NPCs.CYCLOPS_6082,
+ NPCs.CYCLOPS_6083, NPCs.CYCLOPS_6269, NPCs.CYCLOPS_6270,
+ )
+
+ private val HOBGOBLINS = intArrayOf(
+ NPCs.HOBGOBLIN_122, NPCs.HOBGOBLIN_123, NPCs.HOBGOBLIN_2685, NPCs.HOBGOBLIN_2686,
+ NPCs.HOBGOBLIN_2687, NPCs.HOBGOBLIN_2688, NPCs.HOBGOBLIN_3583, NPCs.HOBGOBLIN_4898,
+ NPCs.HOBGOBLIN_6275,
+ )
+
+ private val GHOUL = NPCs.GHOUL_1218
+ private val EARTH_WARRIOR = NPCs.EARTH_WARRIOR_124
+
+ private val JOGRES = intArrayOf(NPCs.JOGRE_113, NPCs.JOGRE_6268)
+
+ private val LESSER_DEMONS = intArrayOf(
+ NPCs.LESSER_DEMON_82, NPCs.LESSER_DEMON_4694, NPCs.LESSER_DEMON_4695,
+ NPCs.LESSER_DEMON_4696, NPCs.LESSER_DEMON_4697, NPCs.LESSER_DEMON_6101,
+ )
+
+ private val ZAKLN = NPCs.ZAKLN_GRITCH_6206
+
+ val SCROLLS = intArrayOf(
+ Items.CHAMPION_SCROLL_6803, Items.CHAMPION_SCROLL_6801, Items.CHAMPION_SCROLL_6806,
+ Items.CHAMPION_SCROLL_6807, Items.CHAMPION_SCROLL_6800, Items.CHAMPION_SCROLL_6802,
+ Items.CHAMPION_SCROLL_6799, Items.CHAMPION_SCROLL_6798, Items.CHAMPION_SCROLL_6804,
+ Items.CHAMPION_SCROLL_6805
+ )
+
+ val idMap = HashMap()
+
+ init {
+ for (id in IMPS)
+ idMap[id] = 0
+ for (id in GOBLINS)
+ idMap[id] = 1
+ for (id in SKELETONS)
+ idMap[id] = 2
+ for (id in ZOMBIES)
+ idMap[id] = 3
+ for (id in GIANTS)
+ idMap[id] = 4
+ for (id in HOBGOBLINS)
+ idMap[id] = 5
+ for (id in JOGRES)
+ idMap[id] = 8
+ for (id in LESSER_DEMONS)
+ idMap[id] = 9
+
+ idMap[GHOUL] = 6
+ idMap[EARTH_WARRIOR] = 7
+ }
+ }
+
+ override fun onNpcKilled(player: Player, event: NPCKillEvent) {
+ if (player.isArtificial) return
+ if (player.questRepository.points >= 32) {
+ val scrollType = idMap[event.npc.id] ?: return
+ rollForScroll (player, scrollType, event.npc)
+ }
+ }
+
+ private fun rollForScroll(player: Player, scroll: Int, npc: NPC) {
+ val scrollID = SCROLLS[scroll]
+ val roll = RandomFunction.roll(if (GameWorld.settings!!.isDevMode) 5 else 5000)
+ if (roll) {
+ GroundItemManager.create(Item(scrollID), npc.location, player)
+ sendMessage(player, colorize("%RA Champion's scroll falls to the ground as you slay your opponent."))
+ }
+ }
+
+}
diff --git a/Server/src/main/content/global/activity/cchallange/ChampionScrollsEventHookBase.kt b/Server/src/main/content/global/activity/cchallange/ChampionScrollsEventHookBase.kt
new file mode 100644
index 000000000..12f8260c9
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/ChampionScrollsEventHookBase.kt
@@ -0,0 +1,39 @@
+package content.global.activity.cchallange
+
+import core.api.LoginListener
+import core.game.event.Event
+import core.game.event.EventHook
+import core.game.event.NPCKillEvent
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+
+/**
+ * Manages the champion scrolls drop.
+ * @authors Phil, Skelsoft.
+ */
+
+abstract class ChampionScrollsEventHookBase : LoginListener {
+
+ protected companion object {
+ private fun forEligibleEntityDo(entity: Entity, event: T, handler: (Player, T) -> Unit) {
+ if (entity !is Player) return
+ if (entity.isArtificial) return
+ handler(entity, event)
+ }
+ }
+
+ class EventHandler(
+ private val owner: ChampionScrollsEventHookBase,
+ private val handler: (Player, T) -> Unit) : EventHook {
+ override fun process(entity: Entity, event: T) {
+ forEligibleEntityDo(entity, event, handler)
+ }
+ }
+
+ final override fun login(player: Player) {
+ player.hook(core.api.Event.NPCKilled, EventHandler(this, ::onNpcKilled))
+ }
+
+ protected open fun onNpcKilled(player: Player, event: NPCKillEvent) {}
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/LarxusDialogue.kt b/Server/src/main/content/global/activity/cchallange/LarxusDialogue.kt
new file mode 100644
index 000000000..6ec919bd7
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/LarxusDialogue.kt
@@ -0,0 +1,72 @@
+package content.global.activity.cchallange
+
+import core.api.*
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.node.entity.npc.NPC
+import core.plugin.Initializable
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the dialogue plugin used for the larxus npc.
+ * @author 'Vexia
+ * @version 1.1
+ */
+
+@Initializable
+class LarxusDialogue(val ChallengeStart: Boolean = false) : DialogueFile() {
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ val scrolls = intArrayOf(Items.CHAMPION_SCROLL_6798, Items.CHAMPION_SCROLL_6799, Items.CHAMPION_SCROLL_6800, Items.CHAMPION_SCROLL_6801, Items.CHAMPION_SCROLL_6802, Items.CHAMPION_SCROLL_6803, Items.CHAMPION_SCROLL_6804, Items.CHAMPION_SCROLL_6805, Items.CHAMPION_SCROLL_6806, Items.CHAMPION_SCROLL_6807,)
+ npc = NPC(NPCs.LARXUS_3050)
+ if (ChallengeStart) {
+ when (stage) {
+ 0 -> {
+ face(findNPC(NPCs.LARXUS_3050)!!, player!!, 1)
+ for (i in scrolls)when{
+ inInventory(player!!,Items.CHAMPION_SCROLL_6798) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're not allowed to use prayer's. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6799) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're allowed to use only weapons. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6800) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're allowed to use only melee combat skill. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6801) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're allowed to use only magic skill. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6802) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're not allowed to use melee combat skills. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6803) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're not allowed to use weapons with special attack. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6804) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're not allowed to use ranged skill. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6805) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're allowed to use only equipment. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6806) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're allowed to use only ranged skill. Do you still want to proceed?").also { stage = 1 }
+ inInventory(player!!,Items.CHAMPION_SCROLL_6807) -> npcl("So you want to accept the challenge huh? Well there are some specific rules for these Champion fights. For this fight you're not allowed to use magic skill. Do you still want to proceed?").also { stage = 1 }
+ else -> {
+ sendMessage(player!!, "Nothing interesting happens.").also { stage = END_DIALOGUE } }
+ }
+ }
+ 1 -> options("Yes, let me at him!", "No, thanks I'll pass.").also { stage = 2 }
+ 2 -> when (buttonID) {
+ 1 -> playerl("Yes, let me at him!").also { stage = 3 }
+ 2 -> playerl("No, thanks I'll pass.").also { stage = END_DIALOGUE }
+ }
+ 3 -> npcl("Your challenger is ready, please go down through the trapdoor when you're ready.").also { stage = 4 }
+ 4 -> {
+ end()
+ setAttribute(player!!, "championsarena:start", true)
+ }
+ }
+ } else {
+ when (stage) {
+ START_DIALOGUE -> {
+ face(findNPC(NPCs.LARXUS_3050)!!, player!!, 1)
+ npcl(FacialExpression.NEUTRAL, "Is there something I can help you with?").also { stage = 1 }
+ }
+ 1 -> options("I was given a challenge, what now?", "What is this place?", "Nothing thanks.").also { stage = 2 }
+ 2 -> when (buttonID) {
+ 1 -> playerl("I was given a challenge, what now?").also { stage = 3 }
+ 2 -> playerl("What is this place?").also { stage = 4 }
+ 3 -> playerl("Nothing thanks.").also { stage = END_DIALOGUE }
+ }
+ 3 -> npcl("Well pass it here and we'll get you started.").also { stage = END_DIALOGUE }
+ 4 -> npcl("This is the champions' arena, the champions of various, races use it to duel those they deem worthy of the, honour.").also { stage = END_DIALOGUE }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/EarthWarriorChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/EarthWarriorChampionNPC.kt
new file mode 100644
index 000000000..ea868cc2e
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/EarthWarriorChampionNPC.kt
@@ -0,0 +1,114 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Earth warrior champion NPC for Champions challenge.
+ */
+
+@Initializable
+class EarthWarriorChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return EarthWarriorChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.EARTH_WARRIOR_CHAMPION_3057)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnEarthWarriorChampion(player: Player) {
+ val champion = EarthWarriorChampionNPC(NPCs.EARTH_WARRIOR_CHAMPION_3057)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ val prayerItems = intArrayOf(
+ Items.PRAYER_POTION1_143, Items.PRAYER_POTION1_144,
+ Items.PRAYER_POTION2_141, Items.PRAYER_POTION2_142,
+ Items.PRAYER_POTION3_139, Items.PRAYER_POTION3_140,
+ Items.PRAYER_POTION4_2434, Items.PRAYER_POTION4_2435,
+
+ Items.SUPER_RESTORE1_3030, Items.SUPER_RESTORE1_3031,
+ Items.SUPER_RESTORE2_3028, Items.SUPER_RESTORE2_3029,
+ Items.SUPER_RESTORE3_3026, Items.SUPER_RESTORE3_3027,
+ Items.SUPER_RESTORE4_3024, Items.SUPER_RESTORE4_3025,
+
+ Items.PRAYER_CAPE_9759, Items.PRAYER_CAPET_9760,
+ Items.PRAYER_HOOD_9761, Items.PRAYER_CAPE_10643,
+
+ Items.PRAYER_POTION4_14209, Items.PRAYER_POTION4_14210,
+ Items.PRAYER_POTION3_14211, Items.PRAYER_POTION3_14212,
+ Items.PRAYER_POTION2_14213, Items.PRAYER_POTION2_14214,
+ Items.PRAYER_POTION1_14215, Items.PRAYER_POTION1_14216,
+
+ Items.FALADOR_SHIELD_1_14577, Items.FALADOR_SHIELD_2_14578,
+ Items.FALADOR_SHIELD_3_14579,
+
+ Items.PRAYER_MIX1_11467, Items.PRAYER_MIX1_11468,
+ Items.PRAYER_MIX2_11465, Items.PRAYER_MIX2_11466,
+
+ Items.SUP_RESTORE_MIX1_11495, Items.SUP_RESTORE_MIX1_11496,
+ Items.SUP_RESTORE_MIX2_11493, Items.SUP_RESTORE_MIX2_11494,
+ )
+ if (player.inventory.containsAtLeastOneItem(prayerItems) || player.equipment.containsAtLeastOneItem(
+ prayerItems
+ )
+ ) {
+ sendNPCDialogue(player, NPCs.LARXUS_3050, "For this fight you're not allowed to use prayers!")
+ teleport(player, Location.create(3182, 9758, 0)) // Behind Doors.
+ } else {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ }
+ return true
+ }
+ })
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Earth Warrior Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6798, 260, 63, 3)
+ setInterfaceText(killer, "432 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "432 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1452, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 432.0)
+ rewardXP(killer, Skills.SLAYER, 432.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/GhoulChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/GhoulChampionNPC.kt
new file mode 100644
index 000000000..a6421a842
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/GhoulChampionNPC.kt
@@ -0,0 +1,105 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.container.impl.EquipmentContainer
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.system.config.ItemConfigParser
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Ghoul champion NPC for Champions challenge.
+ */
+
+@Initializable
+class GhoulChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return GhoulChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.GHOUL_CHAMPION_3059)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnGhoulChampion(player: Player) {
+ val champion = GhoulChampionNPC(NPCs.GHOUL_CHAMPION_3059)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ val i: Item = player.equipment[EquipmentContainer.SLOT_WEAPON].id.asItem()
+ if (i.definition.getConfiguration(ItemConfigParser.TWO_HANDED, false) == true && state.style == CombatStyle.MELEE) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+ if (state.style == CombatStyle.MAGIC) {
+ sendMessage(player, "You can use only weapons in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Ghoul Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6799, 260, 63, 3)
+ setInterfaceText(killer, "400 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "400 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1453, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 400.0)
+ rewardXP(killer, Skills.SLAYER, 400.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/GiantChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/GiantChampionNPC.kt
new file mode 100644
index 000000000..3309be77b
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/GiantChampionNPC.kt
@@ -0,0 +1,103 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Giant champion NPC for Champions challenge.
+ */
+
+@Initializable
+class GiantChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return GiantChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.GIANT_CHAMPION_3058)
+
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnGiantChampion(player: Player) {
+ val champion = GiantChampionNPC(NPCs.GIANT_CHAMPION_3058)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (state.style == CombatStyle.MELEE) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+ if (state.style == CombatStyle.RANGE || state.style == CombatStyle.MAGIC) {
+ sendMessage(player, "You can use only melee in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Giant Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6800, 260, 63, 3)
+ setInterfaceText(killer, "280 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "280 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1454, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 280.0)
+ rewardXP(killer, Skills.SLAYER, 280.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/GoblinChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/GoblinChampionNPC.kt
new file mode 100644
index 000000000..861287813
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/GoblinChampionNPC.kt
@@ -0,0 +1,101 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Goblin champion NPC for Champions challenge.
+ */
+
+@Initializable
+class GoblinChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return GoblinChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.GOBLIN_CHAMPION_3060)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnGoblinChampion(player: Player) {
+ val champion = GoblinChampionNPC(NPCs.GOBLIN_CHAMPION_3060)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (state.style == CombatStyle.MAGIC) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+ if (state.style == CombatStyle.MELEE || state.style == CombatStyle.RANGE) {
+ sendMessage(player, "You can use only spells in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Goblin Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6801, 260, 63, 3)
+ setInterfaceText(killer, "128 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "128 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1455, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 128.0)
+ rewardXP(killer, Skills.SLAYER, 128.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/HobgoblinChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/HobgoblinChampionNPC.kt
new file mode 100644
index 000000000..01d0ffa89
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/HobgoblinChampionNPC.kt
@@ -0,0 +1,103 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Hobgoblin champion NPC for Champions challenge.
+ */
+
+@Initializable
+class HobgoblinChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return HobgoblinChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.HOBGOBLIN_CHAMPION_3061)
+ }
+
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnHobgoblinChampion(player: Player) {
+ val champion = HobgoblinChampionNPC(NPCs.HOBGOBLIN_CHAMPION_3061)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (state.style == CombatStyle.MAGIC || state.style == CombatStyle.RANGE) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+
+ if (state.style == CombatStyle.MELEE) {
+ sendMessage(player, "You cannot use melee in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Hobgoblin Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6802, 260, 63, 3)
+ setInterfaceText(killer, "232 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "232 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1456, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 232.0)
+ rewardXP(killer, Skills.SLAYER, 232.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/ImpChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/ImpChampionNPC.kt
new file mode 100644
index 000000000..4a81fc066
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/ImpChampionNPC.kt
@@ -0,0 +1,104 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.combat.equipment.WeaponInterface
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Imp champion NPC for Champions challenge.
+ */
+
+@Initializable
+class ImpChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return ImpChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.IMP_CHAMPION_3062)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnImpChampion(player: Player) {
+ val champion = ImpChampionNPC(NPCs.IMP_CHAMPION_3062)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ val w = player.getExtension(WeaponInterface::class.java)
+ if (state.style == CombatStyle.MELEE || state.style == CombatStyle.MAGIC || state.style == CombatStyle.RANGE) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+ if (w.weaponInterface.interfaceId == 10) {
+ sendMessage(player, "You cannot use special attack in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Imp Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6803, 260, 63, 3)
+ setInterfaceText(killer, "160 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "160 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1457, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 160.0)
+ rewardXP(killer, Skills.SLAYER, 160.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/JogreChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/JogreChampionNPC.kt
new file mode 100644
index 000000000..ad6889e7b
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/JogreChampionNPC.kt
@@ -0,0 +1,102 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.combat.equipment.Weapon
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Jogre champion NPC for Champions challenge.
+ */
+
+@Initializable
+class JogreChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return JogreChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.JOGRE_CHAMPION_3063)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnJogreChampion(player: Player) {
+ val champion = JogreChampionNPC(NPCs.JOGRE_CHAMPION_3063)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (state.style == CombatStyle.MAGIC || state.style == CombatStyle.MELEE) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+ if (state.weapon.type == Weapon.WeaponType.DEGRADING || state.style == CombatStyle.RANGE) {
+ sendMessage(player, "You cannot use ranged weapons.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Jogre Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6804, 260, 63, 3)
+ setInterfaceText(killer, "480 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "480 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1458, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 480.0)
+ rewardXP(killer, Skills.SLAYER, 480.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/LesserDemonChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/LesserDemonChampionNPC.kt
new file mode 100644
index 000000000..e62f73bf2
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/LesserDemonChampionNPC.kt
@@ -0,0 +1,102 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.container.impl.EquipmentContainer
+import core.game.global.action.EquipHandler
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Lesser demon champion NPC for Champions challenge.
+ */
+
+@Initializable
+class LesserDemonChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return LesserDemonChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.LESSER_DEMON_CHAMPION_3064)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnLesserDemonChampion(player: Player) {
+ val champion = LesserDemonChampionNPC(NPCs.LESSER_DEMON_CHAMPION_3064)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (!player.equipment[3].hasItemPlugin()) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ } else {
+ EquipHandler.unequip(player, EquipmentContainer.SLOT_WEAPON, id)
+ sendMessage(player, "You cannot use weapons in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Lesser Demon Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6805, 260, 63, 3)
+ setInterfaceText(killer, "592 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "592 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1459, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 592.0)
+ rewardXP(killer, Skills.SLAYER, 592.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/SkeletonChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/SkeletonChampionNPC.kt
new file mode 100644
index 000000000..40a33a420
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/SkeletonChampionNPC.kt
@@ -0,0 +1,103 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.combat.equipment.Weapon
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Skeleton champion NPC for Champions challenge.
+ */
+
+@Initializable
+class SkeletonChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return SkeletonChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.SKELETON_CHAMPION_3065)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnSkeletonChampion(player: Player) {
+ val champion = SkeletonChampionNPC(NPCs.SKELETON_CHAMPION_3065)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ animate(champion, 259, true)
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (state.style == CombatStyle.RANGE && state.weapon.type == Weapon.WeaponType.DEGRADING && state.weapon.type == Weapon.WeaponType.DOUBLE_SHOT) {
+ state.neutralizeHits()
+ state.estimatedHit = state.maximumHit
+ }
+ if (state.style == CombatStyle.MAGIC || state.style == CombatStyle.MELEE) {
+ sendMessage(player, "You can use only ranged weapons in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Skeleton Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6806, 260, 63, 3)
+ setInterfaceText(killer, "232 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "232 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1460, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 232.0)
+ rewardXP(killer, Skills.SLAYER, 232.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/cchallange/npc/ZombieChampionNPC.kt b/Server/src/main/content/global/activity/cchallange/npc/ZombieChampionNPC.kt
new file mode 100644
index 000000000..0be9eeb3d
--- /dev/null
+++ b/Server/src/main/content/global/activity/cchallange/npc/ZombieChampionNPC.kt
@@ -0,0 +1,102 @@
+package content.global.activity.cchallange.npc
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+/**
+ * Represents the Zombie champion NPC for Champions challenge.
+ */
+
+@Initializable
+class ZombieChampionNPC(id: Int = 0, location: Location? = null) : AbstractNPC(id, location) {
+ var clearTime = 0
+ override fun construct(id: Int, location: Location, vararg objects: Any): AbstractNPC {
+ return ZombieChampionNPC(id, location)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.ZOMBIES_CHAMPION_3066)
+ }
+
+ override fun handleTickActions() {
+ super.handleTickActions()
+ if (clearTime++ > 288) poofClear(this)
+ }
+
+ companion object {
+ fun spawnZombieChampion(player: Player) {
+ val champion = ZombieChampionNPC(NPCs.ZOMBIES_CHAMPION_3066)
+ champion.location = location(3170, 9758, 0)
+ champion.isWalks = true
+ champion.isAggressive = true
+ champion.isActive = false
+
+ if (champion.asNpc() != null && champion.isActive) {
+ champion.properties.teleportLocation = champion.properties.spawnLocation
+ }
+
+ champion.isActive = true
+ GameWorld.Pulser.submit(object : Pulse(0, champion) {
+ override fun pulse(): Boolean {
+ champion.init()
+ registerHintIcon(player, champion)
+ champion.attack(player)
+ return true
+ }
+ })
+ }
+ }
+
+ override fun checkImpact(state: BattleState) {
+ super.checkImpact(state)
+ val player = state.attacker
+ if (player is Player) {
+ if (state.style == CombatStyle.MELEE || state.style == CombatStyle.RANGE) {
+ state.estimatedHit = state.maximumHit
+ state.neutralizeHits()
+ }
+ if (state.style == CombatStyle.MAGIC) {
+ sendMessage(player, "You cannot use spells in this challenge.")
+ if (state.estimatedHit > -1) {
+ state.estimatedHit = 0
+ return
+ }
+ if (state.secondaryHit > -1) {
+ state.secondaryHit = 0
+ return
+ }
+ }
+ }
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ if (killer is Player) {
+ lock(killer, 2)
+ runTask(killer, 1) {
+ openInterface(killer, 63)
+ setInterfaceText(killer, "Well done, you defeated the Zombie Champion!", 63, 2)
+ killer.packetDispatch.sendItemZoomOnInterface(Items.CHAMPION_SCROLL_6807, 260, 63, 3)
+ setInterfaceText(killer, "240 Slayer Xp", 63, 6)
+ setInterfaceText(killer, "240 Hitpoint Xp", 63, 7)
+ }
+ setVarbit(killer, 1461, 1, true)
+ rewardXP(killer, Skills.HITPOINTS, 240.0)
+ rewardXP(killer, Skills.SLAYER, 240.0)
+ removeAttribute("championsarena:start")
+ clearHintIcon(killer)
+ }
+ clear()
+ super.finalizeDeath(killer)
+ }
+}
diff --git a/Server/src/main/content/global/activity/jobs/CheckJobDialogueFile.kt b/Server/src/main/content/global/activity/jobs/CheckJobDialogueFile.kt
new file mode 100644
index 000000000..fc3a2e58a
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/CheckJobDialogueFile.kt
@@ -0,0 +1,174 @@
+package content.global.activity.jobs
+
+import content.global.activity.jobs.impl.BoneBuryingJobs
+import content.global.activity.jobs.impl.CombatJobs
+import content.global.activity.jobs.impl.ProductionJobs
+import core.api.addItem
+import core.api.amountInInventory
+import core.api.hasAnItem
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.IfTopic
+import core.game.dialogue.Topic
+import core.game.node.entity.npc.NPC
+import core.game.node.item.Item
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+import core.tools.StringUtils
+import org.rs09.consts.Items
+
+/**
+ * The dialogue file to handle a player asking about work with the employer that assigned them
+ * their current job.
+ */
+class CheckJobDialogueFile : DialogueFile() {
+ companion object {
+ const val TURN_IN_ITEMS_1 = 1
+ const val TURN_IN_ITEMS_2 = 2
+ const val TURN_IN_ITEMS_3 = 3
+ const val TURN_IN_ITEMS_4 = 4
+ const val TURN_IN_ITEMS_5 = 5
+ const val REMIND_JOB = 101
+ const val GET_TASK_LIST = 201
+ const val GET_NEW_JOB_1 = 301
+ const val GET_NEW_JOB_2 = 302
+ const val GET_NEW_JOB_3 = 303
+ const val GET_NEW_JOB_4 = 304
+ const val GET_NEW_JOB_5 = 305
+ const val GET_NEW_JOB_NONE = 306
+ const val GET_NEW_JOB_REACHED_LIMIT = 307
+ }
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ val playerJobManager: JobManager = JobManager.getInstance(player!!)
+ val job = playerJobManager.job ?: return
+ val originalAmount = playerJobManager.jobOriginalAmount
+
+ when (stage) {
+ START_DIALOGUE -> showTopics(
+ IfTopic(
+ FacialExpression.HAPPY,
+ "I have the items you wanted.",
+ TURN_IN_ITEMS_1,
+ (job.type == JobType.PRODUCTION && amountInInventory(player!!, (job as ProductionJobs).itemId) > 0)
+ ), Topic(
+ FacialExpression.HALF_ASKING, "Can you remind me what job you gave me?", REMIND_JOB
+ ), Topic(
+ FacialExpression.HALF_ASKING, "Can I have a task list to remind me of my job?", GET_TASK_LIST
+ ), Topic(
+ FacialExpression.HALF_GUILTY, "I'd like a new job please.", GET_NEW_JOB_1
+ )
+ )
+
+ TURN_IN_ITEMS_1 -> {
+ job as ProductionJobs
+ val itemName = Item(job.itemId).name.lowercase()
+ val itemNamePluralized = if (playerJobManager.jobAmount > 1) StringUtils.plusS(itemName) else itemName
+ npcl("Splendid! Now, I needed $originalAmount $itemNamePluralized.")
+ stage = TURN_IN_ITEMS_2
+ }
+
+ TURN_IN_ITEMS_2 -> {
+ if (playerJobManager.jobAmount == originalAmount) {
+ npcl("So far, you haven't brought me any, so I'm waiting for ${playerJobManager.jobAmount}.")
+ } else {
+ npcl("So far, you have brought me ${originalAmount - playerJobManager.jobAmount}, so I'm waiting for ${playerJobManager.jobAmount}.")
+ }
+ stage = TURN_IN_ITEMS_3
+ }
+
+ TURN_IN_ITEMS_3 -> {
+ if (amountInInventory(player!!, (job as ProductionJobs).itemId) >= playerJobManager.jobAmount) {
+ npcl("I can see that you have plenty, would you like to hand some over to complete your job?")
+ } else {
+ npcl("I can see that you have some, would you like to hand them over?")
+ }
+ stage = TURN_IN_ITEMS_4
+ }
+
+ TURN_IN_ITEMS_4 -> showTopics(
+ Topic("Yes, I'll give you what I have.", TURN_IN_ITEMS_5, skipPlayer = true),
+ Topic("No, I'll keep hold of it for now.", END_DIALOGUE, skipPlayer = true)
+ )
+
+ TURN_IN_ITEMS_5 -> {
+ playerJobManager.turnInItems()
+
+ if (playerJobManager.jobAmount == 0) {
+ playerJobManager.rewardPlayer()
+ npcl("There you go, thanks for your help. You're quite a skilled worker!")
+ } else {
+ npcl("Thanks for your help. Come back when you've got more!")
+ }
+ stage = END_DIALOGUE
+ }
+
+ REMIND_JOB -> {
+ when (job.type) {
+ JobType.PRODUCTION -> {
+ job as ProductionJobs
+ val itemName = Item(job.itemId).name.lowercase()
+ val itemNamePluralized =
+ if (playerJobManager.jobAmount > 1) StringUtils.plusS(itemName) else itemName
+ npcl("You still need to gather ${playerJobManager.jobAmount} more $itemNamePluralized.")
+ }
+
+ JobType.BONE_BURYING -> {
+ job as BoneBuryingJobs
+ val boneName = Item(job.boneIds.first()).name.lowercase()
+ val boneNamePluralized =
+ if (playerJobManager.jobAmount > 1) StringUtils.plusS(boneName) else boneName
+ npcl("You still need to bury ${playerJobManager.jobAmount} more $boneNamePluralized in the ${job.buryArea.title}.")
+ }
+
+ JobType.COMBAT -> {
+ job as CombatJobs
+ val monsterName = NPC(job.monsterIds.first()).name.lowercase()
+ val monsterNamePluralized =
+ if (playerJobManager.jobAmount > 1) StringUtils.plusS(monsterName) else monsterName
+ npcl("You still need to kill ${playerJobManager.jobAmount} more $monsterNamePluralized.")
+ }
+ }
+ stage = END_DIALOGUE
+ }
+
+ GET_TASK_LIST -> {
+ if (hasAnItem(player!!, Items.TASK_LIST_13464).exists()) {
+ npcl("You already have one of those!")
+ } else {
+ when (addItem(player!!, Items.TASK_LIST_13464)) {
+ true -> npcl("Here you go then.")
+ false -> dialogue("You don't have enough space in your inventory.")
+ }
+ }
+
+ stage = END_DIALOGUE
+ }
+
+ GET_NEW_JOB_1 -> npcl("Let me see if I've got any work for you.").also {
+ if (playerJobManager.hasReachedJobLimit()) {
+ stage = GET_NEW_JOB_REACHED_LIMIT
+ } else {
+ playerJobManager.generate(npc!!)
+ stage = if (playerJobManager.hasJob()) GET_NEW_JOB_2 else GET_NEW_JOB_NONE
+ }
+ }
+
+ GET_NEW_JOB_2 -> npcl(playerJobManager.getAssignmentMessage()).also { stage = GET_NEW_JOB_3 }
+ // Historically, the player would also have the option to ask for an easier task
+ GET_NEW_JOB_3 -> playerl("Okay, off I go!").also { stage = GET_NEW_JOB_4 }
+ GET_NEW_JOB_4 -> npcl("There, I've updated your task list to show your new job. Best of luck!").also {
+ stage = GET_NEW_JOB_5
+ }
+
+ GET_NEW_JOB_5 -> playerl("Thanks.").also { stage = END_DIALOGUE }
+ GET_NEW_JOB_NONE -> npcl("I'm sorry, I don't currently have any jobs that you're qualified for.").also {
+ stage = END_DIALOGUE
+ }
+
+ GET_NEW_JOB_REACHED_LIMIT -> npcl("You've hit your limit for the day. Come back tomorrow!").also {
+ stage = END_DIALOGUE
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/Job.kt b/Server/src/main/content/global/activity/jobs/Job.kt
new file mode 100644
index 000000000..f4558328c
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/Job.kt
@@ -0,0 +1,23 @@
+package content.global.activity.jobs
+
+import content.global.activity.jobs.impl.Employers
+import core.tools.RandomFunction
+
+/**
+ * The interface for a job that a player can be assigned.
+ *
+ * TODO: Once player data is stored in a database with support for migrations, implement a per-player field to store
+ * the player's current employer, so that multiple employers can assign the same job, but the player will only be
+ * able to turn the job into the employer that assigned it to them.
+ */
+interface Job {
+ val type: JobType
+ val lower: Int
+ val upper: Int
+
+ val employer: Employers
+
+ fun getAmount(): Int {
+ return RandomFunction.random(lower, upper + 1)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/JobManager.kt b/Server/src/main/content/global/activity/jobs/JobManager.kt
new file mode 100644
index 000000000..001aeae6f
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/JobManager.kt
@@ -0,0 +1,215 @@
+package content.global.activity.jobs
+
+import content.global.activity.jobs.impl.BoneBuryingJobs
+import content.global.activity.jobs.impl.CombatJobs
+import content.global.activity.jobs.impl.ProductionJobs
+import core.ServerStore
+import core.ServerStore.Companion.getInt
+import core.api.*
+import core.game.event.BoneBuryEvent
+import core.game.event.EventHook
+import core.game.event.JobAssignmentEvent
+import core.game.event.NPCKillEvent
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.tools.StringUtils
+import org.json.simple.JSONObject
+import org.rs09.consts.Items
+import java.lang.Integer.min
+
+/**
+ * Manages the player's job data & progression.
+ *
+ * @source https://runescape.wiki/w/Jobs?oldid=831782
+ */
+class JobManager(val player: Player? = null) : LoginListener, PersistPlayer {
+ var job: Job? = null
+ var jobAmount: Int = 0
+ var jobOriginalAmount: Int = 0
+
+ private fun hasLevelRequirement(job: ProductionJobs): Boolean {
+ if (player == null) return false
+ if (player.isArtificial) return false
+
+ return getStatLevel(player, job.skill) >= job.lvlReq
+ }
+
+ fun hasJob(): Boolean = this.job != null
+
+ // Historically the job limit would be 6 jobs per hour of play-time, using 3 per day for balance purposes
+ fun hasReachedJobLimit(): Boolean = player?.let { getStoreFile().getInt(it.username.lowercase()) >= 3 } ?: false
+
+ fun generate(npc: NPC) {
+ if (player == null) return
+ if (player.isArtificial) return
+
+ val instance = getInstance(player)
+
+ // Create a list of jobs that the player can do and are given by the NPC being interacted with
+ val potentialJobs: List = (
+ ProductionJobs.values().filter { hasLevelRequirement(it) }
+ + BoneBuryingJobs.values()
+ + CombatJobs.values()
+ )
+ .filter { job -> job.employer.npcId == npc.id }
+
+ val job = potentialJobs.randomOrNull() ?: return
+
+ instance.job = job
+ this.jobAmount = job.getAmount()
+ this.jobOriginalAmount = instance.jobAmount
+
+ player.dispatch(JobAssignmentEvent(job.type, npc))
+ getStoreFile()[player.username.lowercase()] = getStoreFile().getInt(player.username.lowercase()) + 1
+ }
+
+ fun getAssignmentMessage(): String? {
+ if (player == null) return null
+ if (player.isArtificial) return null
+
+ val instance = getInstance(player)
+ val job = instance.job ?: return null
+
+ return when (job.type) {
+ JobType.PRODUCTION -> {
+ job as ProductionJobs
+ val itemName = Item(job.itemId).name.lowercase()
+ val itemNamePluralized = if (this.jobAmount > 1) StringUtils.plusS(itemName) else itemName
+ "Okay, your job is to bring me ${this.jobAmount} $itemNamePluralized."
+ }
+
+ JobType.BONE_BURYING -> {
+ job as BoneBuryingJobs
+ val boneName = Item(job.boneIds.first()).name.lowercase()
+ val boneNamePluralized = if (this.jobAmount > 1) StringUtils.plusS(boneName) else boneName
+ "Okay, your job is to bury ${this.jobAmount} $boneNamePluralized in the ${job.buryArea.title}."
+ }
+
+ JobType.COMBAT -> {
+ job as CombatJobs
+ val monsterName = NPC(job.monsterIds.first()).name.lowercase()
+ val monsterNamePluralized = if (this.jobAmount > 1) StringUtils.plusS(monsterName) else monsterName
+ "Okay, your job is to kill ${this.jobAmount} $monsterNamePluralized."
+ }
+ }
+ }
+
+ /**
+ * TODO: Allow players to turn-in noted items (authentic to 2009)
+ */
+ fun turnInItems() {
+ if (player == null) return
+ if (player.isArtificial) return
+
+ val instance = getInstance(player)
+ val job = instance.job ?: return
+ if (job.type != JobType.PRODUCTION) return
+
+ val itemId = (job as ProductionJobs).itemId
+ val amountHeld = amountInInventory(player, itemId)
+ val amountToTurnIn = min(amountHeld, instance.jobAmount)
+ removeItem(player, Item(itemId, amountToTurnIn))
+ instance.jobAmount -= amountToTurnIn
+ }
+
+ fun rewardPlayer() {
+ if (player == null) return
+ if (player.isArtificial) return
+
+ val instance = getInstance(player)
+
+ addItemOrDrop(player, Items.COINS_995, 250 * instance.jobOriginalAmount)
+
+ instance.job = null
+ instance.jobAmount = -1
+ instance.jobOriginalAmount = -1
+ }
+
+ override fun login(player: Player) {
+ if (player.isArtificial) return
+
+ val jobManager = JobManager(player)
+ setAttribute(player, "job-manager", jobManager)
+
+ player.hook(Event.BoneBuried, object : EventHook {
+ override fun process(entity: Entity, event: BoneBuryEvent) {
+ if (entity !is Player) return
+ if (entity.isArtificial) return
+
+ val instance = getInstance(entity)
+
+ if (!instance.hasJob()) return
+ if (instance.job?.type != JobType.BONE_BURYING) return
+ if (instance.jobAmount == 0) return
+
+ val job = (instance.job as BoneBuryingJobs)
+ if (inBorders(entity, job.buryArea.zoneBorder) && event.boneId in job.boneIds) {
+ instance.jobAmount--
+ }
+ }
+ })
+ player.hook(Event.NPCKilled, object : EventHook {
+ override fun process(entity: Entity, event: NPCKillEvent) {
+ if (entity !is Player) return
+ if (entity.isArtificial) return
+
+ val instance = getInstance(entity)
+
+ if (!instance.hasJob()) return
+ if (instance.job?.type != JobType.COMBAT) return
+ if (instance.jobAmount == 0) return
+
+ val job = (instance.job as CombatJobs)
+ if (event.npc.id in job.monsterIds) {
+ instance.jobAmount--
+ }
+ }
+ })
+ }
+
+ // TODO: Implement proper saving of job data to JSONObject once player save migration is possible
+ override fun savePlayer(player: Player, save: JSONObject) {
+ val instance = getInstance(player)
+ val jobId: Int = instance.job?.let {
+ when (it.type) {
+ JobType.PRODUCTION -> ProductionJobs.values().indexOf(it)
+ JobType.COMBAT -> CombatJobs.values().indexOf(it)
+ JobType.BONE_BURYING -> BoneBuryingJobs.values().indexOf(it)
+ }
+ } ?: -1
+
+ setAttribute(player, "/save:jobs:id", jobId)
+ setAttribute(player, "/save:jobs:type", instance.job?.type?.ordinal ?: -1)
+ setAttribute(player, "/save:jobs:amount", instance.jobAmount)
+ setAttribute(player, "/save:jobs:original_amount", instance.jobOriginalAmount)
+ }
+
+ // TODO: Implement proper loading of job data from JSONObject once player save migration is possible
+ override fun parsePlayer(player: Player, data: JSONObject) {
+ val instance = getInstance(player)
+ val jobId = getAttribute(player, "jobs:id", -1)
+ val jobType = getAttribute(player, "jobs:type", -1)
+
+ instance.job = when (JobType.values().getOrNull(jobType)) {
+ JobType.PRODUCTION -> ProductionJobs.values().getOrNull(jobId)
+ JobType.COMBAT -> CombatJobs.values().getOrNull(jobId)
+ JobType.BONE_BURYING -> BoneBuryingJobs.values().getOrNull(jobId)
+ else -> null
+ }
+ instance.jobAmount = getAttribute(player, "jobs:amount", -1)
+ instance.jobOriginalAmount = getAttribute(player, "jobs:original_amount", -1)
+ }
+
+ companion object {
+ @JvmStatic
+ fun getInstance(player: Player): JobManager {
+ return player.getAttribute("job-manager", JobManager(player))
+ }
+
+ fun getStoreFile(): JSONObject {
+ return ServerStore.getArchive("daily-jobs-tracking")
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/JobType.kt b/Server/src/main/content/global/activity/jobs/JobType.kt
new file mode 100644
index 000000000..c34a67811
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/JobType.kt
@@ -0,0 +1,13 @@
+package content.global.activity.jobs
+
+/**
+ * An enum of the different types of jobs that a player can be assigned.
+ *
+ * Note: Due to how player save files keep track of the player's current job, it is essential that
+ * new entries are only appended to the end of this enum, and the ordering of existing entries is not changed.
+ */
+enum class JobType {
+ PRODUCTION,
+ COMBAT,
+ BONE_BURYING
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/StartJobDialogueFile.kt b/Server/src/main/content/global/activity/jobs/StartJobDialogueFile.kt
new file mode 100644
index 000000000..b431663e7
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/StartJobDialogueFile.kt
@@ -0,0 +1,139 @@
+package content.global.activity.jobs
+
+import content.global.activity.jobs.impl.BoneBuryingJobs
+import content.global.activity.jobs.impl.CombatJobs
+import content.global.activity.jobs.impl.ProductionJobs
+import core.api.addItem
+import core.api.hasAnItem
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.Topic
+import core.game.node.entity.npc.NPC
+import core.game.node.item.Item
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+import core.tools.StringUtils
+import org.rs09.consts.Items
+
+/**
+ * The dialogue file to handle a player asking about work with any employer which they aren't currently working for.
+ */
+class StartJobDialogueFile : DialogueFile() {
+ companion object {
+ const val GET_TASK_LIST_1 = 1
+ const val GET_TASK_LIST_2 = 2
+ const val GET_TASK_LIST_YES = 3
+ const val GET_JOB_1 = 101
+ const val GET_JOB_2 = 102
+ const val GET_JOB_3 = 103
+ const val GET_JOB_4 = 104
+ const val GET_JOB_5 = 105
+ const val GET_JOB_NONE = 201
+ const val GET_JOB_EMPLOYED_1 = 301
+ const val GET_JOB_EMPLOYED_2 = 302
+ const val GET_JOB_LIMIT_REACHED = 401
+ }
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ val playerJobManager: JobManager = JobManager.getInstance(player!!)
+
+ when (stage) {
+ START_DIALOGUE -> playerl(FacialExpression.ASKING, "Do you have any jobs for me?").also {
+ stage = if (hasAnItem(player!!, Items.TASK_LIST_13464).exists()) {
+ if (playerJobManager.hasJob()) {
+ GET_JOB_EMPLOYED_1
+ } else {
+ GET_JOB_1
+ }
+ } else {
+ GET_TASK_LIST_1
+ }
+ }
+
+ GET_TASK_LIST_1 -> npcl("Well, first of all, I can see that you don't have a task list to remind you about your current job. Would you like a task list now?").also {
+ stage = GET_TASK_LIST_2
+ }
+
+ GET_TASK_LIST_2 -> showTopics(
+ Topic("Yes, please.", GET_TASK_LIST_YES),
+ Topic("No, thanks.", if (playerJobManager.hasJob()) GET_JOB_EMPLOYED_1 else GET_JOB_1)
+ )
+
+ GET_TASK_LIST_YES -> {
+ when (addItem(player!!, Items.TASK_LIST_13464)) {
+ true -> npcl("Here you go then.").also {
+ stage = if (playerJobManager.hasJob()) GET_JOB_EMPLOYED_1 else GET_JOB_1
+ }
+
+ false -> dialogue("You don't have enough space in your inventory.").also { stage = END_DIALOGUE }
+ }
+ }
+
+ GET_JOB_1 -> npcl("Let me see if I've got any work for you.").also {
+ if (playerJobManager.hasReachedJobLimit()) {
+ stage = GET_JOB_LIMIT_REACHED
+ } else {
+ playerJobManager.generate(npc!!)
+ stage = if (playerJobManager.hasJob()) GET_JOB_2 else GET_JOB_NONE
+ }
+ }
+
+ GET_JOB_2 -> npcl(playerJobManager.getAssignmentMessage()).also { stage = GET_JOB_3 }
+ // Historically, the player would also have the option to ask for an easier task
+ GET_JOB_3 -> playerl("Okay, off I go!").also { stage = GET_JOB_4 }
+ GET_JOB_4 -> npcl("There, I've updated your task list to show your new job. Best of luck!").also {
+ stage = GET_JOB_5
+ }
+
+ GET_JOB_5 -> playerl("Thanks.").also { stage = END_DIALOGUE }
+ GET_JOB_EMPLOYED_1 -> {
+ val job = playerJobManager.job ?: return
+ val employerName = NPC(job.employer.npcId).name
+ val amount = playerJobManager.jobAmount
+ val originalAmount = playerJobManager.jobOriginalAmount
+
+ if (amount == 0) {
+ npcl("Hang about. Aren't you working for $employerName? It looks like you've complete their job, return to them for your reward.")
+ stage = END_DIALOGUE
+ } else {
+ when (job.type) {
+ JobType.PRODUCTION -> {
+ job as ProductionJobs
+ val itemName = Item(job.itemId).name.lowercase()
+ val itemNamePluralized = if (originalAmount > 1) StringUtils.plusS(itemName) else itemName
+ npcl("Hang about. Aren't you working for $employerName? You were asked for $originalAmount $itemNamePluralized and still have $amount more to go.")
+ }
+
+ JobType.BONE_BURYING -> {
+ job as BoneBuryingJobs
+ val boneName = Item(job.boneIds.first()).name.lowercase()
+ val boneNamePluralized = if (originalAmount > 1) StringUtils.plusS(boneName) else boneName
+ npcl("Hang about. Aren't you working for $employerName? You were asked to bury $originalAmount $boneNamePluralized in the ${job.buryArea.title} and still have $amount more to go.")
+ }
+
+ JobType.COMBAT -> {
+ job as CombatJobs
+ val monsterName = NPC(job.monsterIds.first()).name.lowercase()
+ val monsterNamePluralized = if (originalAmount > 1) StringUtils.plusS(monsterName) else monsterName
+ npcl("Hang about. Aren't you working for $employerName? You were asked to kill $originalAmount $monsterNamePluralized and still have $amount more to go.")
+ }
+ }
+ stage = GET_JOB_EMPLOYED_2
+ }
+ }
+
+ GET_JOB_EMPLOYED_2 -> showTopics(
+ Topic("Oh yes. I better go and finish their job first.", END_DIALOGUE),
+ Topic("I'd like a new job instead, please.", GET_JOB_1)
+ )
+
+ GET_JOB_NONE -> npcl("I'm sorry, I don't currently have any jobs that you're qualified for.").also {
+ stage = END_DIALOGUE
+ }
+
+ GET_JOB_LIMIT_REACHED -> npcl("You've hit your limit for the day. Come back tomorrow!").also {
+ stage = END_DIALOGUE
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/TaskListReadListener.kt b/Server/src/main/content/global/activity/jobs/TaskListReadListener.kt
new file mode 100644
index 000000000..2e3c06d7b
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/TaskListReadListener.kt
@@ -0,0 +1,70 @@
+package content.global.activity.jobs
+
+import content.global.activity.jobs.impl.BoneBuryingJobs
+import content.global.activity.jobs.impl.CombatJobs
+import content.global.activity.jobs.impl.ProductionJobs
+import core.api.sendDialogue
+import core.api.sendItemDialogue
+import core.api.sendNPCDialogue
+import core.game.interaction.InteractionListener
+import core.game.node.entity.npc.NPC
+import core.game.node.item.Item
+import core.tools.StringUtils
+import org.rs09.consts.Items
+
+/**
+ * Handles the read option of the Task List item.
+ */
+class TaskListReadListener : InteractionListener {
+ override fun defineListeners() {
+ on(Items.TASK_LIST_13464, ITEM, "read") { player, _ ->
+ val playerJobManager: JobManager = JobManager.getInstance(player)
+ val job = playerJobManager.job
+ val amount = playerJobManager.jobAmount
+
+ if (job == null) {
+ sendDialogue(player, "I have not been assigned a job!")
+ return@on false
+ }
+
+ if(amount == 0) {
+ sendDialogue(
+ player, "I have completed my job. I should return to ${NPC(job.employer.npcId).name} for my reward."
+ )
+ return@on true
+ }
+
+ when (job.type) {
+ JobType.PRODUCTION -> {
+ job as ProductionJobs
+ val itemName = Item(job.itemId).name.lowercase()
+ val itemNamePluralized = if (amount > 1) StringUtils.plusS(itemName) else itemName
+ sendItemDialogue(
+ player, job.itemId, "My job is to gather $amount more $itemNamePluralized."
+ )
+ }
+
+ JobType.BONE_BURYING -> {
+ job as BoneBuryingJobs
+ val boneName = Item(job.boneIds.first()).name.lowercase()
+ val boneNamePluralized = if (amount > 1) StringUtils.plusS(boneName) else boneName
+ sendItemDialogue(
+ player,
+ job.boneIds.first(),
+ "My job is to bury $amount more $boneNamePluralized in the ${job.buryArea.title}."
+ )
+ }
+
+ JobType.COMBAT -> {
+ job as CombatJobs
+ val monsterName = NPC(job.monsterIds.first()).name.lowercase()
+ val monsterNamePluralized = if (amount > 1) StringUtils.plusS(monsterName) else monsterName
+ sendNPCDialogue(
+ player, job.monsterIds.first(), "My job is to kill $amount more $monsterNamePluralized."
+ )
+ }
+ }
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/WorkForInteractionListener.kt b/Server/src/main/content/global/activity/jobs/WorkForInteractionListener.kt
new file mode 100644
index 000000000..8d09d7dfd
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/WorkForInteractionListener.kt
@@ -0,0 +1,45 @@
+package content.global.activity.jobs
+
+import content.global.activity.jobs.impl.Employers
+import core.api.openDialogue
+import core.api.sendNPCDialogue
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.npc.NPC
+
+/**
+ * Handles the work-for actions for the NPCs
+ * @author Ceikry
+ * @author vddCore
+ */
+class WorkForInteractionListener : InteractionListener {
+ override fun defineListeners() {
+ on(
+ Employers.values().map { employer -> employer.npcId }.toIntArray(),
+ IntType.NPC,
+ "work-for"
+ ) { player, node ->
+ val playerJobManager = JobManager.getInstance(player)
+ val job = playerJobManager.job
+
+ // Check if the player is talking to the NPC that gave them their job
+ if (job != null && job.employer.npcId == node.id) {
+ if (playerJobManager.jobAmount == 0) {
+ playerJobManager.rewardPlayer()
+ sendNPCDialogue(
+ player,
+ job.employer.npcId,
+ "There you go, thanks for your help. You're quite a skilled worker!"
+ )
+ } else {
+ openDialogue(player, CheckJobDialogueFile(), node as NPC)
+ }
+
+ return@on true
+ }
+
+ openDialogue(player, StartJobDialogueFile(), node as NPC)
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/impl/BoneBuryingJobs.kt b/Server/src/main/content/global/activity/jobs/impl/BoneBuryingJobs.kt
new file mode 100644
index 000000000..fad0448e0
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/impl/BoneBuryingJobs.kt
@@ -0,0 +1,30 @@
+package content.global.activity.jobs.impl
+
+import content.global.activity.jobs.Job
+import content.global.activity.jobs.JobType
+import core.game.world.map.zone.ZoneBorders
+import org.rs09.consts.Items
+
+/**
+ * An enum of the possible bone-burying jobs that can be assigned to a player.
+ *
+ * Note: Due to how player save files keep track of the player's current job, it is essential that
+ * new entries are only appended to the end of this enum, and the ordering of existing entries is not changed.
+ */
+enum class BoneBuryingJobs(val buryArea: BuryArea, val boneIds: List, override val employer: Employers) : Job {
+ BURY_DRAYNOR(BuryArea.DRAYNOR_WHEAT_FIELD, Bones.BONES, Employers.PRAYER_TUTOR),
+ BURY_LUMBRIDGE_GRAVEYARD(BuryArea.LUMBRIDGE_GRAVEYARD, Bones.BONES, Employers.PRAYER_TUTOR);
+
+ override val type = JobType.BONE_BURYING
+ override val lower = 22
+ override val upper = 26
+
+ enum class BuryArea(val zoneBorder: ZoneBorders, val title: String) {
+ DRAYNOR_WHEAT_FIELD(ZoneBorders(3107, 3265, 3132, 3293), "wheat field east of Draynor Village"),
+ LUMBRIDGE_GRAVEYARD(ZoneBorders(3238, 3191, 3252, 3204), "Lumbridge Graveyard");
+ }
+
+ object Bones {
+ val BONES = listOf(Items.BONES_526, Items.BONES_2530)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/impl/CombatJobs.kt b/Server/src/main/content/global/activity/jobs/impl/CombatJobs.kt
new file mode 100644
index 000000000..cfe444f51
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/impl/CombatJobs.kt
@@ -0,0 +1,209 @@
+package content.global.activity.jobs.impl
+
+import content.global.activity.jobs.Job
+import content.global.activity.jobs.JobType
+import org.rs09.consts.NPCs
+
+/**
+ * An enum of the possible combat jobs that can be assigned to a player.
+ *
+ * Note: Due to how player save files keep track of the player's current job, it is essential that
+ * new entries are only appended to the end of this enum, and the ordering of existing entries is not changed.
+ */
+enum class CombatJobs(val monsterIds: List, override val employer: Employers) : Job {
+ CHICKENS(Monsters.CHICKENS, Employers.RANGED_TUTOR),
+ COWS(Monsters.COWS, Employers.MAGIC_TUTOR),
+ GIANT_SPIDERS(Monsters.GIANT_SPIDERS, Employers.MAGIC_TUTOR),
+ SCORPIONS(Monsters.SCORPIONS, Employers.MELEE_TUTOR),
+ GOBLINS(Monsters.GOBLINS, Employers.MELEE_TUTOR);
+
+ override val type = JobType.COMBAT
+ override val lower = 22
+ override val upper = 28
+
+ object Monsters {
+ val GIANT_SPIDERS = listOf(NPCs.GIANT_SPIDER_59, NPCs.GIANT_SPIDER_60)
+ val SCORPIONS = listOf(NPCs.SCORPION_107, NPCs.SCORPION_1477, NPCs.SCORPION_4402, NPCs.SCORPION_4403)
+ val GOBLINS = listOf(
+ NPCs.GOBLIN_100,
+ NPCs.GOBLIN_101,
+ NPCs.GOBLIN_102,
+ NPCs.GOBLIN_1769,
+ NPCs.GOBLIN_1770,
+ NPCs.GOBLIN_1771,
+ NPCs.GOBLIN_1772,
+ NPCs.GOBLIN_1773,
+ NPCs.GOBLIN_1774,
+ NPCs.GOBLIN_1775,
+ NPCs.GOBLIN_1776,
+ NPCs.GOBLIN_2274,
+ NPCs.GOBLIN_2275,
+ NPCs.GOBLIN_2276,
+ NPCs.GOBLIN_2277,
+ NPCs.GOBLIN_2278,
+ NPCs.GOBLIN_2279,
+ NPCs.GOBLIN_2280,
+ NPCs.GOBLIN_2281,
+ NPCs.GOBLIN_2678,
+ NPCs.GOBLIN_2679,
+ NPCs.GOBLIN_2680,
+ NPCs.GOBLIN_2681,
+ NPCs.GOBLIN_3264,
+ NPCs.GOBLIN_3265,
+ NPCs.GOBLIN_3266,
+ NPCs.GOBLIN_3267,
+ NPCs.GOBLIN_3726,
+ NPCs.GOBLIN_4261,
+ NPCs.GOBLIN_4262,
+ NPCs.GOBLIN_4263,
+ NPCs.GOBLIN_4264,
+ NPCs.GOBLIN_4265,
+ NPCs.GOBLIN_4266,
+ NPCs.GOBLIN_4267,
+ NPCs.GOBLIN_4268,
+ NPCs.GOBLIN_4269,
+ NPCs.GOBLIN_4270,
+ NPCs.GOBLIN_4271,
+ NPCs.GOBLIN_4272,
+ NPCs.GOBLIN_4273,
+ NPCs.GOBLIN_4274,
+ NPCs.GOBLIN_4275,
+ NPCs.GOBLIN_4276,
+ NPCs.GOBLIN_4407,
+ NPCs.GOBLIN_4408,
+ NPCs.GOBLIN_4409,
+ NPCs.GOBLIN_4410,
+ NPCs.GOBLIN_4411,
+ NPCs.GOBLIN_4412,
+ NPCs.GOBLIN_444,
+ NPCs.GOBLIN_445,
+ NPCs.GOBLIN_4479,
+ NPCs.GOBLIN_4480,
+ NPCs.GOBLIN_4481,
+ NPCs.GOBLIN_4482,
+ NPCs.GOBLIN_4483,
+ NPCs.GOBLIN_4484,
+ NPCs.GOBLIN_4485,
+ NPCs.GOBLIN_4486,
+ NPCs.GOBLIN_4487,
+ NPCs.GOBLIN_4488,
+ NPCs.GOBLIN_4489,
+ NPCs.GOBLIN_4490,
+ NPCs.GOBLIN_4491,
+ NPCs.GOBLIN_4492,
+ NPCs.GOBLIN_4499,
+ NPCs.GOBLIN_4633,
+ NPCs.GOBLIN_4634,
+ NPCs.GOBLIN_4635,
+ NPCs.GOBLIN_4636,
+ NPCs.GOBLIN_4637,
+ NPCs.GOBLIN_5855,
+ NPCs.GOBLIN_5856,
+ NPCs.GOBLIN_6125,
+ NPCs.GOBLIN_6126,
+ NPCs.GOBLIN_6132,
+ NPCs.GOBLIN_6133,
+ NPCs.GOBLIN_6279,
+ NPCs.GOBLIN_6280,
+ NPCs.GOBLIN_6281,
+ NPCs.GOBLIN_6282,
+ NPCs.GOBLIN_6283,
+ NPCs.GOBLIN_6284,
+ NPCs.GOBLIN_6402,
+ NPCs.GOBLIN_6403,
+ NPCs.GOBLIN_6404,
+ NPCs.GOBLIN_6405,
+ NPCs.GOBLIN_6406,
+ NPCs.GOBLIN_6407,
+ NPCs.GOBLIN_6408,
+ NPCs.GOBLIN_6409,
+ NPCs.GOBLIN_6410,
+ NPCs.GOBLIN_6411,
+ NPCs.GOBLIN_6412,
+ NPCs.GOBLIN_6413,
+ NPCs.GOBLIN_6414,
+ NPCs.GOBLIN_6415,
+ NPCs.GOBLIN_6416,
+ NPCs.GOBLIN_6417,
+ NPCs.GOBLIN_6418,
+ NPCs.GOBLIN_6419,
+ NPCs.GOBLIN_6420,
+ NPCs.GOBLIN_6421,
+ NPCs.GOBLIN_6422,
+ NPCs.GOBLIN_6423,
+ NPCs.GOBLIN_6424,
+ NPCs.GOBLIN_6425,
+ NPCs.GOBLIN_6426,
+ NPCs.GOBLIN_6427,
+ NPCs.GOBLIN_6428,
+ NPCs.GOBLIN_6429,
+ NPCs.GOBLIN_6430,
+ NPCs.GOBLIN_6431,
+ NPCs.GOBLIN_6432,
+ NPCs.GOBLIN_6433,
+ NPCs.GOBLIN_6434,
+ NPCs.GOBLIN_6435,
+ NPCs.GOBLIN_6436,
+ NPCs.GOBLIN_6437,
+ NPCs.GOBLIN_6438,
+ NPCs.GOBLIN_6439,
+ NPCs.GOBLIN_6440,
+ NPCs.GOBLIN_6441,
+ NPCs.GOBLIN_6442,
+ NPCs.GOBLIN_6443,
+ NPCs.GOBLIN_6444,
+ NPCs.GOBLIN_6445,
+ NPCs.GOBLIN_6446,
+ NPCs.GOBLIN_6447,
+ NPCs.GOBLIN_6448,
+ NPCs.GOBLIN_6449,
+ NPCs.GOBLIN_6450,
+ NPCs.GOBLIN_6451,
+ NPCs.GOBLIN_6452,
+ NPCs.GOBLIN_6453,
+ NPCs.GOBLIN_6454,
+ NPCs.GOBLIN_6455,
+ NPCs.GOBLIN_6456,
+ NPCs.GOBLIN_6457,
+ NPCs.GOBLIN_6458,
+ NPCs.GOBLIN_6459,
+ NPCs.GOBLIN_6460,
+ NPCs.GOBLIN_6461,
+ NPCs.GOBLIN_6462,
+ NPCs.GOBLIN_6463,
+ NPCs.GOBLIN_6464,
+ NPCs.GOBLIN_6465,
+ NPCs.GOBLIN_6466,
+ NPCs.GOBLIN_6467,
+ NPCs.GOBLIN_6490,
+ NPCs.GOBLIN_6491,
+ NPCs.GOBLIN_6492,
+ NPCs.GOBLIN_6493,
+ NPCs.GOBLIN_6494,
+ NPCs.GOBLIN_6495,
+ NPCs.GOBLIN_7964,
+ NPCs.GOBLIN_7965
+ )
+ val COWS = listOf(
+ NPCs.COW_81,
+ NPCs.COW_397,
+ NPCs.COW_955,
+ NPCs.COW_1767,
+ NPCs.COW_3309,
+ NPCs.COW_CALF_1766,
+ NPCs.COW_CALF_1768,
+ NPCs.COW_CALF_2310
+ )
+ val CHICKENS = listOf(
+ NPCs.CHICKEN_1017,
+ NPCs.CHICKEN_1401,
+ NPCs.CHICKEN_1402,
+ NPCs.CHICKEN_2313,
+ NPCs.CHICKEN_2314,
+ NPCs.CHICKEN_2315,
+ NPCs.CHICKEN_288,
+ NPCs.CHICKEN_41,
+ NPCs.CHICKEN_951,
+ )
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/impl/Employers.kt b/Server/src/main/content/global/activity/jobs/impl/Employers.kt
new file mode 100644
index 000000000..2d1fc165c
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/impl/Employers.kt
@@ -0,0 +1,24 @@
+package content.global.activity.jobs.impl
+
+import org.rs09.consts.NPCs
+
+/**
+ * An enum of NPCs that can assign the player a job.
+ *
+ * TODO: Add the rest of the era-correct employers
+ */
+enum class Employers(val npcId: Int) {
+ WOODCUTTING_TUTOR(NPCs.WOODCUTTING_TUTOR_4906),
+ MAGIC_TUTOR(NPCs.MAGIC_TUTOR_4707),
+ MELEE_TUTOR(NPCs.MELEE_TUTOR_705),
+ RANGED_TUTOR(NPCs.RANGED_TUTOR_1861),
+ COOKING_TUTOR(NPCs.COOKING_TUTOR_4899),
+ CRAFTING_TUTOR(NPCs.CRAFTING_TUTOR_4900),
+ FISHING_TUTOR(NPCs.FISHING_TUTOR_4901),
+ MINING_TUTOR(NPCs.MINING_TUTOR_4902),
+ SMELTING_TUTOR(NPCs.SMELTING_TUTOR_4904),
+ PRAYER_TUTOR(NPCs.PRAYER_TUTOR_4903),
+ HANS(NPCs.HANS_0),
+ GILLIE_GROATS(NPCs.GILLIE_GROATS_3807),
+ AGGIE(NPCs.AGGIE_922);
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/jobs/impl/ProductionJobs.kt b/Server/src/main/content/global/activity/jobs/impl/ProductionJobs.kt
new file mode 100644
index 000000000..04bdd5467
--- /dev/null
+++ b/Server/src/main/content/global/activity/jobs/impl/ProductionJobs.kt
@@ -0,0 +1,80 @@
+package content.global.activity.jobs.impl
+
+import content.global.activity.jobs.Job
+import content.global.activity.jobs.JobType
+import core.game.node.entity.skill.Skills
+
+/**
+ * An enum of the possible production jobs that can be assigned to a player.
+ *
+ * Note: Due to how player save files keep track of the player's current job, it is essential that
+ * new entries are only appended to the end of this enum, and the ordering of existing entries is not changed.
+ */
+enum class ProductionJobs(
+ override val lower: Int,
+ override val upper: Int,
+ val lvlReq: Int,
+ val itemId: Int,
+ val skill: Int,
+ override val employer: Employers
+) : Job {
+ LOG(20, 28, 1, 1511, Skills.WOODCUTTING, Employers.WOODCUTTING_TUTOR),
+ COWHIDES(20, 28, 1, 1739, 0, Employers.HANS),
+ OAK(22, 28, 15, 1521, Skills.WOODCUTTING, Employers.WOODCUTTING_TUTOR),
+ WATER_RUNE(20, 28, 5, 555, Skills.RUNECRAFTING, Employers.HANS),
+ EARTH_RUNE(20, 28, 9, 557, Skills.RUNECRAFTING, Employers.AGGIE),
+ FIRE_RUNE(20, 28, 14, 554, Skills.RUNECRAFTING, Employers.AGGIE),
+ AIR_RUNE(20, 28, 1, 556, Skills.RUNECRAFTING, Employers.HANS),
+ RUNE_ESS(20, 28, 1, 1436, Skills.MINING, Employers.MINING_TUTOR),
+ BALL_OF_WOOL(20, 28, 1, 1759, Skills.CRAFTING, Employers.GILLIE_GROATS),
+ LEATHER_GLOVE(20, 28, 1, 1059, Skills.CRAFTING, Employers.GILLIE_GROATS),
+ WILLOW(22, 28, 30, 1519, Skills.WOODCUTTING, Employers.WOODCUTTING_TUTOR),
+ LEATHER_BOOT(24, 24, 1, 1061, Skills.CRAFTING, Employers.HANS),
+ BRONZE_DAGGER(24, 24, 1, 1205, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_HELMS(22, 22, 1, 1139, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_FULL_HELM(10, 10, 7, 1155, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_CHAINBODY(10, 10, 11, 1103, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_2H(10, 10, 14, 1307, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_SCIM(10, 10, 5, 1321, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_PLATEBODY(9, 10, 18, 1117, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_PLATELEGS(9, 10, 16, 1075, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_PLATESKIRTS(9, 10, 16, 1087, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ BRONZE_WARHAMMER(9, 9, 9, 1337, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ IRON_DAGGER(13, 13, 15, 1203, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ IRON_CHAINBODY(10, 10, 26, 1101, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ IRON_2H(9, 9, 29, 1309, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ STEEL_BATTLEAXE(9, 9, 40, 1365, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ STEEL_SCIMITAR(9, 9, 35, 1325, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ STEEL_PLATEBODY(9, 10, 48, 1119, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ STEEL_WARHAMMER(9, 10, 39, 1339, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ LEATHER_CHAPS(22, 28, 18, 1095, Skills.CRAFTING, Employers.CRAFTING_TUTOR),
+ LEATHER_BODY(22, 28, 14, 1129, Skills.CRAFTING, Employers.CRAFTING_TUTOR),
+ LEATHER_COWL(22, 28, 9, 1167, Skills.CRAFTING, Employers.CRAFTING_TUTOR),
+ LEATHER_COIF(22, 28, 38, 1169, Skills.CRAFTING, Employers.CRAFTING_TUTOR),
+ RAW_SHRIMP(22, 28, 1, 317, Skills.FISHING, Employers.FISHING_TUTOR),
+ COOKED_SHRIMP(22, 28, 1, 315, Skills.COOKING, Employers.COOKING_TUTOR),
+ RAW_CRAYFISH(22, 28, 1, 13435, Skills.FISHING, Employers.FISHING_TUTOR),
+ COOKED_CRAYFISH(22, 28, 1, 13433, Skills.COOKING, Employers.COOKING_TUTOR),
+ RAW_TROUT(22, 28, 20, 335, Skills.FISHING, Employers.FISHING_TUTOR),
+ COOKED_TROUT(22, 28, 15, 333, Skills.COOKING, Employers.COOKING_TUTOR),
+ RAW_SALMON(22, 28, 30, 331, Skills.FISHING, Employers.FISHING_TUTOR),
+ COOKED_SALMON(22, 28, 25, 329, Skills.COOKING, Employers.COOKING_TUTOR),
+ CAKE(12, 16, 40, 1891, Skills.COOKING, Employers.GILLIE_GROATS),
+ MEAT_PIE(12, 16, 20, 2327, Skills.COOKING, Employers.COOKING_TUTOR),
+ PLAIN_PIZZA(12, 16, 35, 2289, Skills.COOKING, Employers.COOKING_TUTOR),
+ MEAT_PIZZA(12, 16, 45, 2293, Skills.COOKING, Employers.COOKING_TUTOR),
+ ANCHOVY_PIZZA(12, 16, 55, 2297, Skills.COOKING, Employers.COOKING_TUTOR),
+ REDBERRY_PIE(12, 16, 10, 2325, Skills.COOKING, Employers.GILLIE_GROATS),
+ COPPER_ORE(22, 28, 1, 436, Skills.MINING, Employers.MINING_TUTOR),
+ TIN_ORE(23, 26, 1, 438, Skills.MINING, Employers.MINING_TUTOR),
+ IRON_ORE(24, 24, 15, 440, Skills.MINING, Employers.MINING_TUTOR),
+ SILVER_ORE(22, 28, 20, 442, Skills.MINING, Employers.PRAYER_TUTOR),
+ COAL(22, 26, 30, 453, Skills.MINING, Employers.MINING_TUTOR),
+ GOLD_ORE(22, 24, 40, 444, Skills.MINING, Employers.MINING_TUTOR),
+ BRONZE_BAR(10, 12, 1, 2349, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ IRON_BAR(22, 28, 15, 2351, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ STEEL_BAR(22, 28, 30, 2353, Skills.SMITHING, Employers.SMELTING_TUTOR),
+ ASHES(26, 26, 1, 592, 0, Employers.AGGIE);
+
+ override val type = JobType.PRODUCTION
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/LarryHandler.kt b/Server/src/main/content/global/activity/penguinhns/LarryHandler.kt
similarity index 86%
rename from Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/LarryHandler.kt
rename to Server/src/main/content/global/activity/penguinhns/LarryHandler.kt
index e9d72ae14..4a4b3ba90 100644
--- a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/LarryHandler.kt
+++ b/Server/src/main/content/global/activity/penguinhns/LarryHandler.kt
@@ -1,21 +1,18 @@
-package rs09.game.content.global.worldevents.penguinhns
+package content.global.activity.penguinhns
-import api.*
+import core.api.*
import core.game.component.Component
-import core.game.content.dialogue.DialoguePlugin
-import core.game.content.dialogue.FacialExpression
import core.game.node.entity.player.Player
import core.game.node.item.Item
import core.game.system.task.Pulse
-import rs09.game.world.GameWorld
-import rs09.tools.END_DIALOGUE
+import core.tools.END_DIALOGUE
-class LarryHandler(player: Player? = null) : DialoguePlugin(player){
+class LarryHandler(player: Player? = null) : core.game.dialogue.DialoguePlugin(player){
override fun open(vararg args: Any?): Boolean {
options("Can I have a spy notebook?","Can I have a hint?","I'd like to turn in my points.").also { stage = 0; return true }
}
- override fun newInstance(player: Player?): DialoguePlugin {
+ override fun newInstance(player: Player?): core.game.dialogue.DialoguePlugin {
return LarryHandler(player)
}
@@ -43,7 +40,7 @@ class LarryHandler(player: Player? = null) : DialoguePlugin(player){
11 -> {
val hint = Penguin.values()[PenguinManager.penguins.random()].hint
- npcl(FacialExpression.FRIENDLY, "One is $hint")
+ npcl(core.game.dialogue.FacialExpression.FRIENDLY, "One is $hint")
stage = END_DIALOGUE
}
@@ -77,7 +74,7 @@ class LarryHandler(player: Player? = null) : DialoguePlugin(player){
}
val level = getStatLevel(player, skill)
- System.out.println("Level: $level")
+
val expGained = points?.toDouble()?.times((level * 25))
System.out.print("exp: $expGained")
player.skills.addExperience(skill,expGained!!)
diff --git a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/NotebookHandler.kt b/Server/src/main/content/global/activity/penguinhns/NotebookHandler.kt
similarity index 91%
rename from Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/NotebookHandler.kt
rename to Server/src/main/content/global/activity/penguinhns/NotebookHandler.kt
index 40424ea68..15462eefe 100644
--- a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/NotebookHandler.kt
+++ b/Server/src/main/content/global/activity/penguinhns/NotebookHandler.kt
@@ -1,4 +1,4 @@
-package rs09.game.content.global.worldevents.penguinhns
+package content.global.activity.penguinhns
import core.cache.def.impl.ItemDefinition
import core.game.interaction.OptionHandler
diff --git a/Server/src/main/content/global/activity/penguinhns/PenguinHNSEvent.kt b/Server/src/main/content/global/activity/penguinhns/PenguinHNSEvent.kt
new file mode 100644
index 000000000..39bc2419b
--- /dev/null
+++ b/Server/src/main/content/global/activity/penguinhns/PenguinHNSEvent.kt
@@ -0,0 +1,26 @@
+package content.global.activity.penguinhns
+
+import core.ServerStore
+import core.api.StartupListener
+import core.api.log
+import core.plugin.ClassScanner
+import core.tools.Log
+import org.json.simple.JSONObject
+
+class PenguinHNSEvent : StartupListener {
+ val manager = PenguinManager()
+
+ override fun startup() {
+ manager.rebuildVars()
+ ClassScanner.definePlugins(LarryHandler(), NotebookHandler())
+ log(this::class.java, Log.FINE, "Penguin HNS initialized.")
+ }
+
+ companion object {
+ @JvmStatic
+ fun getStoreFile() : JSONObject {
+ return ServerStore.getArchive("weekly-penguinhns")
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/PenguinManager.kt b/Server/src/main/content/global/activity/penguinhns/PenguinManager.kt
similarity index 85%
rename from Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/PenguinManager.kt
rename to Server/src/main/content/global/activity/penguinhns/PenguinManager.kt
index 713f11901..c284214a7 100644
--- a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/PenguinManager.kt
+++ b/Server/src/main/content/global/activity/penguinhns/PenguinManager.kt
@@ -1,12 +1,14 @@
-package rs09.game.content.global.worldevents.penguinhns
+package content.global.activity.penguinhns
import core.game.node.entity.npc.NPC
import core.game.node.entity.player.Player
-import rs09.game.system.SystemLogger
+import core.tools.SystemLogger
import core.game.world.map.Location
import org.json.simple.JSONArray
import org.json.simple.JSONObject
-import rs09.ServerStore.Companion.toJSONArray
+import core.ServerStore.Companion.toJSONArray
+import core.api.log
+import core.tools.Log
import java.util.*
class PenguinManager{
@@ -31,7 +33,7 @@ class PenguinManager{
private fun updateStoreFile(){
val jsonTags = JSONArray()
tagMapping.filter { it.value.isNotEmpty() }.forEach { (ordinal,taggers) ->
- SystemLogger.logInfo("$ordinal - ${taggers.first()}")
+ log(this::class.java, Log.FINE, "$ordinal - ${taggers.first()}")
val tag = JSONObject()
tag["ordinal"] = ordinal
tag["taggers"] = taggers
@@ -43,12 +45,14 @@ class PenguinManager{
}
fun rebuildVars() {
- if(PenguinHNSEvent.getStoreFile().isEmpty()) {
+ if(!PenguinHNSEvent.getStoreFile().containsKey("spawned-penguins")) {
penguins = spawner.spawnPenguins(10)
PenguinHNSEvent.getStoreFile()["spawned-penguins"] = penguins.toJSONArray()
+ tagMapping.clear()
for (p in penguins) {
tagMapping.put(p, JSONArray())
}
+ updateStoreFile()
} else {
val spawnedOrdinals = (PenguinHNSEvent.getStoreFile()["spawned-penguins"] as JSONArray).map { it.toString().toInt() }
spawner.spawnPenguins(spawnedOrdinals)
@@ -62,8 +66,4 @@ class PenguinManager{
penguins = spawnedOrdinals.toMutableList()
}
}
-
- fun log(message: String){
- SystemLogger.logInfo("[Penguins] $message")
- }
}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/PenguinSpawner.kt b/Server/src/main/content/global/activity/penguinhns/PenguinSpawner.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/PenguinSpawner.kt
rename to Server/src/main/content/global/activity/penguinhns/PenguinSpawner.kt
index ebcfec2a1..d19b9a82a 100644
--- a/Server/src/main/kotlin/rs09/game/content/global/worldevents/penguinhns/PenguinSpawner.kt
+++ b/Server/src/main/content/global/activity/penguinhns/PenguinSpawner.kt
@@ -1,9 +1,9 @@
-package rs09.game.content.global.worldevents.penguinhns
+package content.global.activity.penguinhns
import core.game.node.entity.npc.NPC
import core.game.world.map.Location
import org.rs09.consts.NPCs
-import rs09.game.content.global.worldevents.WorldEvents
+import core.game.worldevents.WorldEvents
class PenguinSpawner {
@@ -16,7 +16,7 @@ class PenguinSpawner {
availableOrdinals.remove(peng.ordinal)
spawnedOrdinals.add(peng.ordinal)
NPC(peng.id,peng.location)
- .also {PenguinManager.npcs.add(it);it.isNeverWalks = true; it.isWalks = false}.init()
+ .also { PenguinManager.npcs.add(it);it.isNeverWalks = true; it.isWalks = false}.init()
counter++
}
return spawnedOrdinals
diff --git a/Server/src/main/content/global/activity/penguinhns/PenguinSpyingHandler.kt b/Server/src/main/content/global/activity/penguinhns/PenguinSpyingHandler.kt
new file mode 100644
index 000000000..386220027
--- /dev/null
+++ b/Server/src/main/content/global/activity/penguinhns/PenguinSpyingHandler.kt
@@ -0,0 +1,53 @@
+package content.global.activity.penguinhns
+
+import core.api.*
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.update.flag.context.Animation
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class PenguinSpyingHandler : InteractionListener {
+
+ override fun defineListeners() {
+ on(PENGUINS, IntType.NPC, "spy-on"){ player, node ->
+ val npc = node.asNpc()
+ if(PenguinManager.hasTagged(player, npc.location)){
+ player.sendMessage("You've already tagged this penguin.")
+ } else {
+ GameWorld.submit(SpyPulse(player, npc))
+ playJingle(player, 345)
+ }
+ return@on true
+ }
+ }
+
+ val PENGUINS = intArrayOf(8104,8105,8107,8108,8109,8110)
+
+ class SpyPulse(val player: Player, val npc: NPC) : Pulse() {
+ var stage = 0
+ val curPoints = player.getAttribute("phns:points",0)
+
+ val ANIMATION = Animation(10355)
+
+ override fun pulse(): Boolean {
+ when(stage++){
+ 0 -> player.lock().also { player.animator.animate(ANIMATION) }
+ 1 -> player.sendMessage("You manage to spy on the penguin.").also {
+ player.setAttribute("/save:phns:points",curPoints + 1)
+ PenguinManager.registerTag(player, npc.location)
+ player.unlock()
+ }
+ 2 -> return true
+ }
+ return false
+ }
+
+ override fun stop() {
+ super.stop()
+ player.unlock()
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/activity/shootingstar/ShootingStar.kt b/Server/src/main/content/global/activity/shootingstar/ShootingStar.kt
new file mode 100644
index 000000000..9432ea009
--- /dev/null
+++ b/Server/src/main/content/global/activity/shootingstar/ShootingStar.kt
@@ -0,0 +1,234 @@
+package content.global.activity.shootingstar
+
+import core.game.node.scenery.Scenery
+import core.game.node.scenery.SceneryBuilder
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.world.map.Location
+import core.ServerStore.Companion.getBoolean
+import core.ServerStore.Companion.getInt
+import core.ServerStore.Companion.getString
+
+import content.global.bots.ShootingStarBot
+import core.game.world.repository.Repository
+import core.tools.RandomFunction
+
+/**
+ * Represents a shooting star object (Only ever initialized once) (ideally)
+ * @author Ceikry
+ */
+class ShootingStar(var level: ShootingStarType = ShootingStarType.values().random()) {
+ val crash_locations = mapOf(
+ "East of Dark Wizards' Tower" to Location.create(2925, 3339, 0), // East of Dark Wizards' Tower
+ "Crafting Guild" to Location.create(2940, 3280, 0), // Crafting Guild Mine
+ "Falador East Bank" to Location.create(3030, 3349, 0), // Falador East Bank
+ "Rimmington mining site" to Location.create(2974, 3240, 0), // Rimmington Mine 2974, 3240, 0)
+ "Karamja northwestern mining site" to Location.create(2737, 3223, 0), // Karamja northwestern mining site/Brimhaven gold rocks
+ "Brimhaven mining site" to Location.create(2743, 3143, 0), // Brimhaven mining site
+ "South Crandor mining site" to Location.create(2822, 3239, 0), // South Crandor mining site (requires Dragon Slayer)
+ "Karamja mining site" to Location.create(2854, 3032, 0), // Karamja mining site
+ "Shilo Village mining site" to Location.create(2826, 2997, 0), // Shilo Village mining site/Gem rocks (requires Shilo Village prereqs)
+ "Relleka mining site" to Location.create(2682, 3700, 0), // Rellekka mining site
+ "Jatizso mine" to Location.create(2393, 3815, 0), //Jatiszo mining site (requires Fremennik Isles prereqs)
+ "Lunar Isle mine" to Location.create(2140, 3939, 0), // Lunar Isle mine (requires Lunar Diplomacy prereqs)
+ "Miscellania coal mine" to Location.create(2529, 3887, 0), // Miscellania coal mine (requires The Fremennik Trials)
+ //"Neitiznot runite mine" to Location.create(2376, 3835, 0), // Near the Neitiznot runite mine (requires Fremennik Isles prereqs) currently inaccessible as bridge does not work
+ "Ardougne mining site" to Location.create(2600, 3232, 0), // Ardougne mining site (Monastery)
+ "Ardougne eastern mine" to Location.create(2706, 3334, 0), // Ardougne mining site (Legends Guild)
+ "Kandarin Coal trucks" to Location.create(2589, 3485, 0), // Kandarin Coal trucks
+ "Yanille Bank" to Location.create(2603, 3087, 0), // Yanille Bank (Wizards' Guild)
+ "Port Khazard mine" to Location.create(2626, 3140, 0), // Mining spot north-east of Yanille / Port Khazard mine
+ "Al Kharid bank" to Location.create(3276, 3176, 0), // Al Kharid bank
+ "Al Kharid mining site" to Location.create(3296, 3297, 0), // Al Kharid mine (Scorpion mine)
+ "Duel Arena bank chest" to Location.create(3342, 3267, 0), // Duel Arena bank chest
+ "Kharidian Desert clay mine" to Location.create(3426, 3159, 0), // Desert clay mine / Ruins of Uzer mine
+ "Nardah mining site" to Location.create(3320, 2872, 0), // Kharidian Desert gold mine / Vulture mine
+ "Nardah bank" to Location.create(3434, 2888, 0), // Nardah bank
+ "Granite and sandstone quarry" to Location.create(3170, 2913, 0), // Granite and sandstone quarry / Quarry on map
+ "South-east Varrock mine" to Location.create(3292, 3353, 0), // South-east Varrock mine
+ "South-west Varrock mine" to Location.create(3176, 3362, 0), // South-west Varrock mine / Champion's Guild mine
+ "Varrock east bank" to Location.create(3259, 3407, 0), // Varrock east bank / Rune shop
+ "Lumbridge Swamp south-east mine" to Location.create(3227, 3150, 0), // Lumbridge Swamp south-east mine
+ //"Burgh de Rott bank" to Location.create(3500, 3219, 0), // Burgh de Rott bank (requires quest to enter)
+ "Canifis Bank" to Location.create(3504, 3487, 0), // Canifis bank
+ "Mos Le'Harmless bank" to Location.create(3687, 2969, 0), // Mos Le'Harmless bank (requires quest to enter but is currently accessible for Slayer)
+ "Gnome stronghold Bank" to Location.create(2460, 3432, 0), // Gnome stronghold bank
+ "Lletya bank" to Location.create(2329, 3163, 0), // Lletya bank (requires MEP1 prereqs)
+ "Piscatoris mining site" to Location.create(2336, 3636, 0), // Piscatoris mining site
+ "North Edgeville mining site" to Location.create(3101, 3569, 0), // Wilderness Steel mine / Zamorak mage mine
+ "Southern wilderness mine" to Location.create(3025, 3591, 0), // Wilderness skeleton mine
+ "Wilderness Volcano bank" to Location.create(3188, 3695, 0), // Wilderness Volcano bank
+ "Wilderness hobgoblin mine" to Location.create(3020, 3809, 0), // Wilderness hobgoblin mine
+ "Pirates' Hideout mine" to Location.create(3059, 3940, 0), // Pirates' Hideout mine
+ "Lava Maze mining site" to Location.create(3062, 3885, 0), // Wilderness rune mine
+ "Mage Arena bank" to Location.create(3093, 3962, 0) // Mage Arena bank
+ )
+ val starSprite = NPC(8091)
+ var location = "Canifis Bank"
+ var maxDust = level.totalStardust
+ var dustLeft = level.totalStardust
+ var starObject = Scenery(level.objectId, crash_locations.get(location))
+ var isDiscovered = false
+ var ticks = 0
+ var isSpawned = false
+ var spriteSpawned = false
+ var firstStar = true
+ var selfBots = ArrayList()
+ var activePlayers = HashSet()
+
+ /**
+ * Degrades a ShootingStar (or removes the starObject and spawns a Star Sprite if it's the last star)
+ */
+ fun degrade() {
+ if(level.ordinal == 0) {
+ spawnSprite()
+ return
+ }
+ level = getNextType()
+ maxDust = level.totalStardust
+ dustLeft = level.totalStardust
+ ShootingStarPlugin.getStoreFile()["level"] = level.ordinal
+ ShootingStarPlugin.getStoreFile()["dustLeft"] = dustLeft
+
+ val newStar = Scenery(level.objectId, starObject.location)
+ SceneryBuilder.replace(starObject, newStar)
+ starObject = newStar
+ }
+
+ private fun getNextType(): ShootingStarType {
+ return ShootingStarType.values()[level.ordinal - 1]
+ }
+
+ /**
+ * Fires the shooting star (spawns a new one). Only used when spawning new shooting stars, not for downgrading existing ones.
+ */
+ fun fire() {
+ SceneryBuilder.remove(starObject)
+ clearSprite()
+ SceneryBuilder.add(starObject)
+ if(!isSpawned) {
+ (0..2).forEach {
+ selfBots.add(ShootingStarBot.new())
+ }
+ }
+ if (level.ordinal + 1 > 5) {
+ selfBots.filter { it.isIdle() }.forEach { it.activate(true) }
+ }
+ isSpawned = true
+ Repository.sendNews("A shooting star level ${level.ordinal + 1} just crashed near ${location}!")
+ ShootingStarPlugin.getStoreFile()["level"] = level.ordinal
+ ShootingStarPlugin.getStoreFile()["location"] = location
+ ShootingStarPlugin.getStoreFile()["isDiscovered"] = isDiscovered
+ ShootingStarPlugin.getStoreFile()["dustLeft"] = dustLeft
+ }
+
+ /**
+ * Rebuilds some of the variables with new information.
+ */
+ fun rebuildVars(){
+ // Defaults
+ var levelOrd = RandomFunction.random(9)
+ level = ShootingStarType.values()[levelOrd]
+ location = crash_locations.entries.random().key
+ isDiscovered = false
+ dustLeft = level.totalStardust
+ ticks = 0
+ spriteSpawned = false
+
+ if (firstStar && ShootingStarPlugin.getStoreFile().isNotEmpty()) {
+ // Replace default with stored values, if any
+ levelOrd = ShootingStarPlugin.getStoreFile().getInt("level", levelOrd)
+ level = ShootingStarType.values()[levelOrd]
+ location = ShootingStarPlugin.getStoreFile().getString("location", location)
+ isDiscovered = ShootingStarPlugin.getStoreFile().getBoolean("isDiscovered", false)
+ dustLeft = ShootingStarPlugin.getStoreFile().getInt("dustLeft", dustLeft)
+ ticks = ShootingStarPlugin.getStoreFile().getInt("ticks", ticks)
+ spriteSpawned = ShootingStarPlugin.getStoreFile().getBoolean("spriteSpawned", false)
+ }
+
+ maxDust = level.totalStardust
+ starObject = Scenery(level.objectId, crash_locations.get(location))
+ }
+
+ fun spawnSprite() {
+ selfBots.filter { it.isMining() }.forEach { it.sleep() }
+ SceneryBuilder.remove(starObject)
+ isSpawned = false
+ starSprite.location = starObject.location
+ starSprite.init()
+ spriteSpawned = true
+ ShootingStarPlugin.getStoreFile()["spriteSpawned"] = spriteSpawned
+ }
+
+ fun clearSprite() {
+ starSprite.clear()
+ spriteSpawned = false
+ ShootingStarPlugin.getStoreFile()["spriteSpawned"] = spriteSpawned
+ }
+
+ /**
+ * Decrement the amount of dust left in the current star and degrade it if the amount left is 0 or less.
+ */
+ fun decDust() {
+ if(--dustLeft <= 0) degrade()
+ ShootingStarPlugin.getStoreFile()["dustLeft"] = dustLeft
+ }
+
+ /**
+ * Proxy method for starting to mine a shooting star
+ */
+ fun mine(player: Player) {
+ player.pulseManager.run(ShootingStarMiningPulse(player, starObject, this))
+ }
+
+ /**
+ * Prospecting shooting stars.
+ */
+ fun prospect(player: Player) {
+ player.dialogueInterpreter.sendDialogue("This is a size " + (level.ordinal + 1) + " star. A Mining level of at least " + miningLevel + " is", "required to mine this layer. There is $dustLeft stardust remaining", "until the next layer.")
+ }
+
+ /**
+ * Notifies the star when a player begins mining it
+ */
+ fun notifyNewPlayer(player: Player) {
+ if(activePlayers.size < 3){
+ val leavingBot = selfBots.firstOrNull { it.isMining() }
+ leavingBot?.sleep()
+ }
+ activePlayers.add(player)
+ }
+
+ /**
+ * Notifies the star when a player stops mining it
+ */
+ fun notifyPlayerLeave(player: Player) {
+ activePlayers.remove(player)
+ if (activePlayers.size < 3){
+ val newBot = selfBots.firstOrNull() { it.isIdle() }
+ newBot?.activate(true)
+ }
+ }
+
+ /**
+ * Gets the mining level required based on the star's current level ordinal.
+ */
+ val miningLevel: Int
+ get() = (level.ordinal + 1) * 10
+}
+
+/**
+ * Various levels of shooting stars
+ * @author Ceikry
+ */
+enum class ShootingStarType(val objectId: Int, val exp: Int, val totalStardust: Int,val rate: Double) {
+ LEVEL_1(38668, 14, 1200, 0.05),
+ LEVEL_2(38667, 25, 700, 0.1),
+ LEVEL_3(38666, 29, 439, 0.3),
+ LEVEL_4(38665, 32, 250, 0.4),
+ LEVEL_5(38664, 47, 175, 0.5),
+ LEVEL_6(38663, 71, 80, 0.70),
+ LEVEL_7(38662, 114, 40, 0.80),
+ LEVEL_8(38661, 145, 25, 0.85),
+ LEVEL_9(38660, 210, 15, 0.95);
+}
diff --git a/Server/src/main/kotlin/rs09/game/content/global/worldevents/shootingstar/ShootingStarMiningPulse.kt b/Server/src/main/content/global/activity/shootingstar/ShootingStarMiningPulse.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/content/global/worldevents/shootingstar/ShootingStarMiningPulse.kt
rename to Server/src/main/content/global/activity/shootingstar/ShootingStarMiningPulse.kt
index 1d49f14a4..5f5ee3649 100644
--- a/Server/src/main/kotlin/rs09/game/content/global/worldevents/shootingstar/ShootingStarMiningPulse.kt
+++ b/Server/src/main/content/global/activity/shootingstar/ShootingStarMiningPulse.kt
@@ -1,17 +1,17 @@
-package rs09.game.content.global.worldevents.shootingstar
+package content.global.activity.shootingstar
-import api.*
+import core.api.*
import core.game.node.scenery.Scenery
import core.game.node.entity.player.Player
import core.game.node.entity.skill.SkillPulse
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.gather.SkillingTool
+import content.data.skill.SkillingTool
import core.game.node.item.Item
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.world.GameWorld
-import rs09.game.world.repository.Repository
-import rs09.tools.stringtools.colorize
+import core.game.world.GameWorld
+import core.game.world.repository.Repository
+import core.tools.colorize
/**
* The pulse used to handle mining shooting stars.
@@ -48,9 +48,10 @@ class ShootingStarMiningPulse(player: Player?, node: Scenery?, val star: Shootin
val bonusXp = 75 * player.skills.getStaticLevel(Skills.MINING)
player.incrementAttribute("/save:shooting-star:bonus-xp", bonusXp)
Repository.sendNews(player.username + " is the discoverer of the crashed star near " + star.location + "!")
- player.sendMessage("You have ${player.skills.experienceMutiplier * player.getAttribute("shooting-star:bonus-xp", 0).toDouble()} bonus xp towards mining stardust.")
+ player.sendMessage("You have ${player.skills.experienceMultiplier * player.getAttribute("shooting-star:bonus-xp", 0).toDouble()} bonus xp towards mining stardust.")
ShootingStarPlugin.submitScoreBoard(player)
star.isDiscovered = true
+ ShootingStarPlugin.getStoreFile()["isDiscovered"] = star.isDiscovered
return player.skills.getLevel(Skills.MINING) >= star.miningLevel
}
@@ -83,14 +84,13 @@ class ShootingStarMiningPulse(player: Player?, node: Scenery?, val star: Shootin
if (GameWorld.settings?.isDevMode == true) {
star.dustLeft = 1
}
- star.decDust()
val bonusXp = player.getAttribute("shooting-star:bonus-xp", 0).toDouble()
var xp = star.level.exp.toDouble()
if(bonusXp > 0) {
val delta = Math.min(bonusXp, xp)
player.incrementAttribute("/save:shooting-star:bonus-xp", (-delta).toInt())
- xp += delta;
+ xp += delta
if(player.getAttribute("shooting-star:bonus-xp", 0) <= 0) {
player.sendMessage("You have obtained all of your bonus xp from the star.")
}
@@ -103,6 +103,8 @@ class ShootingStarMiningPulse(player: Player?, node: Scenery?, val star: Shootin
if(!inInventory(player, Items.ANCIENT_BLUEPRINT_14651) && !inBank(player, Items.ANCIENT_BLUEPRINT_14651)){
rollBlueprint(player)
}
+
+ star.decDust()
return false
}
diff --git a/Server/src/main/content/global/activity/shootingstar/ShootingStarPlugin.kt b/Server/src/main/content/global/activity/shootingstar/ShootingStarPlugin.kt
new file mode 100644
index 000000000..1e993e1bb
--- /dev/null
+++ b/Server/src/main/content/global/activity/shootingstar/ShootingStarPlugin.kt
@@ -0,0 +1,190 @@
+package content.global.activity.shootingstar
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.node.entity.skill.Skills
+import org.json.simple.JSONObject
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.ServerStore
+import core.ServerStore.Companion.getBoolean
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.system.command.Privilege
+import core.game.world.GameWorld
+import core.tools.Log
+import core.tools.secondsToTicks
+import content.data.Quests
+
+class ShootingStarPlugin : LoginListener, InteractionListener, TickListener, Commands, StartupListener {
+ override fun login(player: Player) {
+ if(star.isSpawned && !star.spriteSpawned)
+ sendMessage(player, " News: A shooting star (Level ${star.level.ordinal + 1}) has just crashed near the ${star.location}!")
+ }
+
+ override fun tick() {
+ ++star.ticks
+
+ // Check if the current star sprite should expire
+ val maxDelay = tickDelay + (tickDelay / 3)
+ if(star.ticks > maxDelay && star.spriteSpawned){
+ star.clearSprite()
+ }
+
+ if (star.firstStar && !star.isSpawned && !star.spriteSpawned) {
+ // Apparently, the server has only just booted
+ star.rebuildVars()
+ if (star.spriteSpawned) {
+ star.spawnSprite()
+ } else {
+ star.fire()
+ }
+ star.firstStar = false
+ }
+
+ // Check if it's time to fire a new one
+ if (star.ticks >= tickDelay && !star.spriteSpawned) {
+ star.rebuildVars()
+ star.fire()
+ }
+
+ getStoreFile()["ticks"] = star.ticks
+ }
+
+ override fun defineListeners() {
+ on(Scenery.SHOOTING_STAR_NOTICEBOARD_38669, IntType.SCENERY, "read") { player, _ ->
+ var index = 0
+ scoreboardEntries.forEach { entry ->
+ val timeElapsed = secondsToTicks(GameWorld.ticks - entry.time) / 60
+ setInterfaceText(player, "$timeElapsed minutes ago", scoreboardIface, index + 6)
+ setInterfaceText(player, entry.player, scoreboardIface, index + 11)
+ ++index
+ }
+ openInterface(player, scoreboardIface)
+ return@on true
+ }
+
+ on(SHOOTING_STARS, IntType.SCENERY, "mine"){ player, _ ->
+ star.mine(player)
+ return@on true
+ }
+
+ on(SHOOTING_STARS, IntType.SCENERY, "prospect"){ player, _ ->
+ star.prospect(player)
+ return@on true
+ }
+
+ on(RING, IntType.ITEM, "rub", "operate"){ player, node ->
+ if(getRingStoreFile().getBoolean(player.username.toLowerCase())){
+ sendDialogue(player, "The ring is still recharging.")
+ return@on true
+ }
+
+ class RingDialogue(val star: ShootingStar) : DialogueFile() {
+ val shouldWarn = when (star.location) {
+ "North Edgeville mining site",
+ "Southern wilderness mine",
+ "Wilderness hobgoblin mine",
+ "Pirates' Hideout mine",
+ "Lava Maze mining site",
+ "Mage Arena bank" -> true
+ else -> false
+ }
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ fun teleportToStar(player: Player) {
+ val condition: (p: Player) -> Boolean = when (star.location.toLowerCase()) {
+ "canifis bank" -> {p -> requireQuest(p, Quests.PRIEST_IN_PERIL, "to access this.")}
+ //"burgh de rott bank" -> {p -> hasRequirement(p, Quests.IN_AID_OF_THE_MYREQUE)} //disabled: crash
+ "crafting guild" -> {p -> hasLevelStat(p, Skills.CRAFTING, 40)}
+ "lletya bank" -> {p -> hasRequirement(p, Quests.MOURNINGS_END_PART_I)}
+ "jatizso mine" -> {p -> hasRequirement(p, Quests.THE_FREMENNIK_ISLES)}
+ "south crandor mining site" -> {p -> hasRequirement(p, Quests.DRAGON_SLAYER)}
+ "shilo village mining site" -> {p -> hasRequirement(p, Quests.SHILO_VILLAGE)}
+ "mos le'harmless bank" -> {p -> hasRequirement(p, Quests.CABIN_FEVER)} //needs to be updated to check for completion when the quest releases; https://runescape.wiki/w/Mos_Le%27Harmless?oldid=913025
+ "lunar isle mine" -> {p -> hasRequirement(p, Quests.LUNAR_DIPLOMACY)}
+ "miscellania coal mine" -> {p -> requireQuest(p, Quests.THE_FREMENNIK_TRIALS, "to access this.")}
+ //"neitiznot runite mine" -> {p -> hasRequirement(p, Quests.THE_FREMENNIK_ISLES)} //disabled: currently not reachable
+ else -> {_ -> true}
+ }
+ if (!condition.invoke(player)) {
+ sendDialogue(player,"Magical forces prevent your teleportation.")
+ } else if (teleport(player, star.crash_locations[star.location]!!.transform(0, -1, 0), TeleportManager.TeleportType.MINIGAME)) {
+ getRingStoreFile()[player.username.toLowerCase()] = true
+ }
+ }
+ when (stage) {
+ 0 -> dialogue(if (star.spriteSpawned) "The star sprite has already been freed." else "The star sprite is still trapped.").also { if (shouldWarn) stage++ else stage += 2 }
+ 1 -> dialogue("WARNING: The star is located in the wilderness.").also { stage++ }
+ 2 -> player.dialogueInterpreter.sendOptions("Teleport to the star?", "Yes", "No").also { stage++ }
+ 3 -> when (buttonID) {
+ 1 -> end().also { teleportToStar(player) }
+ 2 -> end()
+ }
+ }
+ }
+ }
+
+ openDialogue(player, RingDialogue(star))
+ return@on true
+ }
+ }
+
+ override fun defineCommands() {
+ define("tostar", Privilege.ADMIN) { player, _ ->
+ teleport(player, star.starObject.location.transform(1,1,0))
+ }
+
+ define("submit", Privilege.ADMIN) { _, _ ->
+ star.rebuildVars()
+ star.fire()
+ }
+
+ define("resetsprite", Privilege.ADMIN) { player, _ ->
+ player.savedData.globalData.starSpriteDelay = 0L
+ }
+ }
+
+ override fun startup() {
+ log(this::class.java, Log.FINE, "Shooting Stars initialized.")
+ }
+
+ private data class ScoreboardEntry(val player: String, val time: Int)
+
+ companion object {
+ private val star = ShootingStar()
+ private val tickDelay = if(GameWorld.settings?.isDevMode == true) 200 else 25000
+ private val scoreboardEntries = ArrayList()
+ private val scoreboardIface = 787
+ val SHOOTING_STARS = ShootingStarType.values().map(ShootingStarType::objectId).toIntArray()
+ val STAR_DUST = Items.STARDUST_13727
+ val RING = Items.RING_OF_THE_STAR_SPRITE_14652
+
+
+ @JvmStatic fun submitScoreBoard(player: Player)
+ {
+ if(scoreboardEntries.size == 5)
+ scoreboardEntries.removeAt(0)
+ scoreboardEntries.add(ScoreboardEntry(player.username, GameWorld.ticks))
+ }
+
+ @JvmStatic fun getStar(): ShootingStar
+ {
+ return star
+ }
+
+ @JvmStatic fun getStoreFile() : JSONObject {
+ return ServerStore.getArchive("shooting-star")
+ }
+
+ @JvmStatic fun getRingStoreFile() : JSONObject {
+ return ServerStore.getArchive("daily-star-ring")
+ }
+
+ fun getStarDust(player: Player): Int {
+ return player.inventory.getAmount(STAR_DUST) + player.bank.getAmount(STAR_DUST)
+ }
+ }
+}
diff --git a/Server/src/main/content/global/activity/shootingstar/StarBonus.kt b/Server/src/main/content/global/activity/shootingstar/StarBonus.kt
new file mode 100644
index 000000000..d0c764e7d
--- /dev/null
+++ b/Server/src/main/content/global/activity/shootingstar/StarBonus.kt
@@ -0,0 +1,28 @@
+package content.global.activity.shootingstar
+
+import core.api.*
+import core.game.system.timer.*
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+import org.json.simple.*
+
+class StarBonus : PersistTimer (1, "shootingstar:bonus") {
+ var ticksLeft = 1500
+
+ override fun save (root: JSONObject, entity: Entity) {
+ root["ticksLeft"] = ticksLeft.toString()
+ }
+
+ override fun parse (root: JSONObject, entity: Entity) {
+ ticksLeft = root["ticksLeft"].toString().toInt()
+ }
+
+ override fun run (entity: Entity) : Boolean {
+ if (entity is Player && ticksLeft == 500) {
+ entity.sendMessage(" You have 5 minutes of your mining bonus left")
+ } else if (entity is Player && ticksLeft == 0) {
+ entity.sendMessage(" Your mining bonus has run out!")
+ }
+ return ticksLeft-- > 0
+ }
+}
diff --git a/Server/src/main/java/core/game/content/global/worldevents/shootingstar/StarChartPlugin.java b/Server/src/main/content/global/activity/shootingstar/StarChartPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/content/global/worldevents/shootingstar/StarChartPlugin.java
rename to Server/src/main/content/global/activity/shootingstar/StarChartPlugin.java
index a6bd21964..9ab977822 100644
--- a/Server/src/main/java/core/game/content/global/worldevents/shootingstar/StarChartPlugin.java
+++ b/Server/src/main/content/global/activity/shootingstar/StarChartPlugin.java
@@ -1,4 +1,4 @@
-package core.game.content.global.worldevents.shootingstar;
+package content.global.activity.shootingstar;
import core.cache.def.impl.SceneryDefinition;
import core.game.component.Component;
@@ -8,7 +8,7 @@ import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
import core.plugin.PluginManifest;
@PluginManifest(name="ShootingStars")
diff --git a/Server/src/main/content/global/activity/shootingstar/StarSpriteDialogue.kt b/Server/src/main/content/global/activity/shootingstar/StarSpriteDialogue.kt
new file mode 100644
index 000000000..7eebc668e
--- /dev/null
+++ b/Server/src/main/content/global/activity/shootingstar/StarSpriteDialogue.kt
@@ -0,0 +1,283 @@
+package content.global.activity.shootingstar
+
+import core.api.Container
+import core.api.*
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.plugin.Initializable
+import core.tools.RandomFunction
+import org.json.simple.JSONObject
+import org.rs09.consts.Items
+import core.ServerStore
+import core.ServerStore.Companion.getBoolean
+import core.tools.END_DIALOGUE
+import core.tools.secondsToTicks
+import core.tools.colorize
+import java.util.concurrent.TimeUnit
+
+/**
+ * Dialogue for the star sprite.
+ */
+@Initializable
+class StarSpriteDialogue(player: Player? = null) : core.game.dialogue.DialoguePlugin(player) {
+
+ /**
+ * The cosmic rune item id.
+ */
+ val COSMIC_RUNE = 564
+
+ /**
+ * The astral rune item id.
+ */
+ val ASTRAL_RUNE = 9075
+
+ /**
+ * The gold ore item id.
+ */
+ val GOLD_ORE = 445
+
+ /**
+ * The coins id.
+ */
+ val COINS = 995
+
+ /**
+ * The amplifier amount.
+ */
+ val AMPLIFIER = 1.0
+
+
+ /**
+ * Constructs the star sprite dialogue.
+ */
+ fun StarSpriteDialogue() {
+ /*
+ * empty.
+ */
+ }
+
+ override fun newInstance(player: Player?): core.game.dialogue.DialoguePlugin? {
+ return StarSpriteDialogue(player)
+ }
+
+ override fun open(vararg args: Any): Boolean {
+ npc = args[0] as NPC
+ if (inInventory(player, Items.ANCIENT_BLUEPRINT_14651) && !getAttribute(player, "star-ring:bp-shown", false)) {
+ npcl(core.game.dialogue.FacialExpression.NEUTRAL, "I see you got ahold of a blueprint of those silly old rings we used to make.")
+ stage = 1000
+ } else if (inInventory(player, Items.ANCIENT_BLUEPRINT_14651) && getAttribute(player, "star-ring:bp-shown", false)) {
+ playerl(core.game.dialogue.FacialExpression.HALF_ASKING, "So about those rings...")
+ stage = 2000
+ } else if (getStoreFile().getBoolean(player.username.toLowerCase()) || !player.getInventory().contains(ShootingStarPlugin.STAR_DUST, 1)) {
+ npc("Hello, strange creature.")
+ stage = 0
+ } else {
+ npc("Thank you for helping me out of here.")
+ stage = 50
+ }
+ return true
+ }
+
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ when (stage) {
+ 0 -> {
+ npc("I'm a star sprite! I was in my star in the sky, when it", "lost control and crashed into the ground. With half my", "star sticking into the ground, I became stuck.", "Fortunately, I was mined out by the kind creatures of")
+ stage++
+ }
+ 1 -> {
+ npc("your race.")
+ stage++
+ }
+ 2 -> {
+ options("What's a star sprite?", "What are you going to do without your star?", "I thought stars were huge balls of burning gas.", "Well, I'm glad you're okay.")
+ stage++
+ }
+ 3 -> when (buttonId) {
+ 1 -> {
+ player("What's a star sprite?")
+ stage = 10
+ }
+ 2 -> {
+ player("What are you going to do without your star?")
+ stage = 20
+ }
+ 3 -> {
+ player("I thought stars were huge balls of burning gas.")
+ stage = 30
+ }
+ 4 -> {
+ player("Well, I'm glad you're okay.")
+ stage = 40
+ }
+ }
+ 10 -> {
+ npc("We're what makes the stars in the sky shine. I made", "this star shine when it was in the sky.")
+ stage++
+ }
+ 11 -> {
+ options("What are you going to do without your star?", "I thought stars were huge balls of burning gas.", "Well, I'm glad you're okay.")
+ stage++
+ }
+ 12 -> when (buttonId) {
+ 1 -> {
+ player("What are you going to do without your star?")
+ stage = 20
+ }
+ 2 -> {
+ player("I thought stars were huge balls of burning gas.")
+ stage = 30
+ }
+ 3 -> {
+ player("Well, I'm glad you're okay.")
+ stage = 40
+ }
+ }
+ 20 -> {
+ npc("Don't worry about me. I'm sure I'll find some good", "rocks around here and get back up into the sky in no", "time.")
+ stage++
+ }
+ 21 -> {
+ options("What's a star sprite?", "I thought stars were huge balls of burning gas.", "Well, I'm glad you're okay.")
+ stage++
+ }
+ 22 -> when (buttonId) {
+ 1 -> {
+ player("What's a star sprite?")
+ stage = 10
+ }
+ 2 -> {
+ player("I thought stars were huge balls of burning gas.")
+ stage = 30
+ }
+ 3 -> {
+ player("Well, I'm glad you're okay.")
+ stage = 40
+ }
+ }
+ 30 -> {
+ npc("Most of them are, but a lot of shooting stars on this", "plane of the multiverse are rocks with star sprites in", "them.")
+ stage++
+ }
+ 31 -> {
+ options("What's a star sprite?", "What are you going to do without your star?", "Well, I'm glad you're okay.")
+ stage++
+ }
+ 32 -> when (buttonId) {
+ 1 -> {
+ player("What's a star sprite?")
+ stage = 10
+ }
+ 2 -> {
+ player("What are you going to do without your star?")
+ stage = 20
+ }
+ 3 -> {
+ player("Well, I'm glad you're okay.")
+ stage = 40
+ }
+ }
+ 40 -> {
+ npc("Thank you.")
+ stage++
+ }
+ 41 -> end()
+ 50 -> {
+ val wearingRing = inEquipment(player, Items.RING_OF_THE_STAR_SPRITE_14652)
+ val dust = if (player.getInventory().getAmount(ShootingStarPlugin.STAR_DUST) > 200) 200 else player.getInventory().getAmount(ShootingStarPlugin.STAR_DUST)
+ if (player.getInventory().remove(Item(ShootingStarPlugin.STAR_DUST, dust))) {
+ val cosmicRunes = (Math.ceil(0.76 * dust) * AMPLIFIER).toInt()
+ val astralRunes = (Math.ceil(0.26 * dust) * AMPLIFIER).toInt()
+ val goldOre = (Math.ceil(0.1 * dust) * AMPLIFIER).toInt()
+ val coins = (Math.ceil(250.0 * dust) * AMPLIFIER).toInt() // limits the amount of gp per turn-in to 90k, same as 2009 rs, and minimum from all stardust from a level 1 star works out to 50k, same as rs in 2009
+ player.getInventory().add(Item(COSMIC_RUNE, cosmicRunes), player)
+ player.getInventory().add(Item(ASTRAL_RUNE, astralRunes), player)
+ player.getInventory().add(Item(GOLD_ORE, goldOre), player)
+ player.getInventory().add(Item(COINS, coins), player)
+ npc("I have rewarded you by making it so you can mine", "extra ore for the next 15 minutes. Also, have $cosmicRunes", "cosmic runes, $astralRunes astral runes, $goldOre gold ore and $coins", "coins.")
+
+ getStoreFile()[player.username.toLowerCase()] = true //flag daily as completed
+
+ val timer = getOrStartTimer (player)
+ timer.ticksLeft = 1500
+
+ if(wearingRing){
+ val item = intArrayOf(Items.COSMIC_RUNE_564, Items.ASTRAL_RUNE_9075, Items.GOLD_ORE_445, Items.COINS_995).random()
+ val amount = when(item){
+ Items.COSMIC_RUNE_564 -> cosmicRunes
+ Items.ASTRAL_RUNE_9075 -> astralRunes
+ Items.GOLD_ORE_445 -> goldOre
+ Items.COINS_995 -> coins
+ else -> 0
+ }
+ rollForRingBonus(player, item, amount)
+ }
+ }
+
+ if(!inInventory(player, Items.ANCIENT_BLUEPRINT_14651) && !inBank(player, Items.ANCIENT_BLUEPRINT_14651) && RandomFunction.roll(500)){
+ addItemOrDrop(player, Items.ANCIENT_BLUEPRINT_14651, 1)
+ sendMessage(player, colorize("%RThe Star Sprite dropped what looks like some ancient piece of paper and you pick it up."))
+ sendNews("${player.username} found an Ancient Blueprint while mining a shooting star!")
+ }
+ stage = 52
+ }
+ 52 -> end()
+
+ //Inauthentic ring-based dialogue
+ 1000 -> playerl(core.game.dialogue.FacialExpression.ASKING, "Oh, you mean this?").also { stage++ }
+ 1001 -> player.dialogueInterpreter.sendItemMessage(Items.ANCIENT_BLUEPRINT_14651, "You show the blueprint to the Star Sprite.").also { stage++ }
+ 1002 -> npcl(core.game.dialogue.FacialExpression.ASKING, "Yeah, that's the one, alright!").also { stage++ }
+ 1003 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "I'll tell you what.. if you can get ahold of the resources needed to make one, I'm sure me or one of my kin would craft it for you.").also { stage++ }
+ 1004 -> playerl(core.game.dialogue.FacialExpression.ASKING, "You'd just do that for me? For free?").also { stage++ }
+ 1005 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "I don't see why not. We used to make these for fun and hand them out to adventurers all the time.").also { stage++ }
+ 1006 -> playerl(core.game.dialogue.FacialExpression.ASKING, "Well, thanks! So.. what do we need to make one?").also { stage++ }
+ 1007 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "Looking at the blueprint here...").also { stage++ }
+ 1008 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "Yes, it seems we need a ring mould, a silver bar, a cut dragonstone and 200 stardust. Oh, and make sure to bring this blueprint with you.").also { stage++ }
+ 1009 -> playerl(core.game.dialogue.FacialExpression.FRIENDLY, "Thanks, I'll get right on it!").also { stage++ }
+ 1010 -> playerl(core.game.dialogue.FacialExpression.ASKING, "So just to make sure I've got it right, I need a ring mould, a silver bar, a cut dragonstone and 200 stardust, as well as this blueprint?").also { stage++ }
+ 1011 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "Yeah, you've got it, human. Any of my kin should be able to do this for you.").also { stage++; setAttribute(player, "/save:star-ring:bp-shown", true) }
+ 1012 -> playerl(core.game.dialogue.FacialExpression.FRIENDLY, "Thanks!").also { stage = END_DIALOGUE }
+
+ 2000 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "Yes, did you bring the components to make it, human?").also { stage++ }
+ 2001 -> if(inInventory(player, Items.DRAGONSTONE_1615,1) && inInventory(player, Items.RING_MOULD_1592, 1) && inInventory(player, Items.STARDUST_13727, 200) && inInventory(player, Items.SILVER_BAR_2355, 1)){
+ playerl(core.game.dialogue.FacialExpression.FRIENDLY, "Yes, I have them right here, friend.").also { stage++ }
+ } else {
+ playerl(core.game.dialogue.FacialExpression.HALF_GUILTY, "I'm afraid not, what did I need again?").also { stage = 2100 }
+ }
+ 2002 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "Excellent, give me just a moment here...").also { stage++ }
+ 2003 -> sendDialogue("You watch as the Star Sprite casts some strange spell.").also { stage++ }
+ 2004 -> if(removeItem(player, Items.SILVER_BAR_2355, Container.INVENTORY) && removeItem(player, Items.DRAGONSTONE_1615, Container.INVENTORY) && removeItem(player, Item(Items.STARDUST_13727, 200), Container.INVENTORY)){
+ addItem(player, Items.RING_OF_THE_STAR_SPRITE_14652)
+ player.dialogueInterpreter.sendItemMessage(Items.RING_OF_THE_STAR_SPRITE_14652, "The Star Sprite hands you a strange ring.").also { stage++ }
+ } else end()
+ 2005 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "There you go, I hope you enjoy it!").also { stage++ }
+ 2006 -> playerl(core.game.dialogue.FacialExpression.FRIENDLY, "Thank you!").also { stage = END_DIALOGUE }
+
+ 2100 -> npcl(core.game.dialogue.FacialExpression.NEUTRAL, "A ring mould, a cut dragonstone, a silver bar and 200 stardust.").also { stage = END_DIALOGUE }
+ }
+ return true
+ }
+
+ override fun getIds(): IntArray? {
+ return intArrayOf(8091)
+ }
+
+ fun rollForRingBonus(player: Player, bonusId: Int, bonusBaseAmt: Int){
+ if(RandomFunction.roll(3)){
+ var bonus = getOrStartTimer (player)
+ bonus.ticksLeft += 500
+ sendMessage(player, colorize("%RYour ring shines dimly as if imbued with energy."))
+ } else if(RandomFunction.roll(5)){
+ addItem(player, bonusId, bonusBaseAmt)
+ sendMessage(player, colorize("%RYour ring shines brightly as if surging with energy and then fades out."))
+ } else if(RandomFunction.roll(25)){
+ getStoreFile()[player.username.toLowerCase()] = false //flag daily as uncompleted
+ sendMessage(player, colorize("%RYour ring vibrates briefly as if surging with power, and then stops."))
+ }
+ }
+
+ fun getStoreFile(): JSONObject{
+ return ServerStore.getArchive("daily-shooting-star")
+ }
+
+}
diff --git a/Server/src/main/content/global/activity/ttrail/ClueLevel.java b/Server/src/main/content/global/activity/ttrail/ClueLevel.java
new file mode 100644
index 000000000..91a9ef0d4
--- /dev/null
+++ b/Server/src/main/content/global/activity/ttrail/ClueLevel.java
@@ -0,0 +1,197 @@
+package content.global.activity.ttrail;
+
+import core.game.component.Component;
+import core.game.container.access.InterfaceContainer;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import org.rs09.consts.Items;
+import core.game.world.GameWorld;
+import core.tools.RandomFunction;
+
+import java.text.NumberFormat;
+import java.util.ArrayList;
+import java.util.List;
+
+import core.api.IfaceSettingsBuilder;
+
+import core.game.system.config.ClueRewardParser;
+
+import static core.api.ContentAPIKt.addItemOrDrop;
+
+/**
+ * A clue scroll level.
+ */
+public enum ClueLevel {
+ EASY(Items.CASKET_2714, 1, 5),
+ MEDIUM(Items.CASKET_2717, 1, 6),
+ HARD(Items.CASKET_2720, 1, 8),
+ UNKNOWN(0, 0, 0)
+ ;
+
+ public int casketId, minSteps, maxSteps;
+
+ private ClueLevel(int casketId, int minSteps, int maxSteps) {
+ this.casketId = casketId;
+ this.minSteps = minSteps;
+ this.maxSteps = maxSteps;
+ }
+
+ private static ClueLevel getLevelForCasket(Item casket) {
+ switch (casket.getId()) {
+ case Items.CASKET_2714:
+ return ClueLevel.EASY;
+ case Items.CASKET_2717:
+ return ClueLevel.MEDIUM;
+ case Items.CASKET_2720:
+ return ClueLevel.HARD;
+ }
+
+ return ClueLevel.UNKNOWN;
+ }
+
+ public static void open(Player player, Item casket) {
+ if (casket == null || !player.getInventory().containsItem(casket)) {
+ return;
+ }
+
+ TreasureTrailManager playerTrails = TreasureTrailManager.getInstance(player);
+
+ boolean trailCompleted = playerTrails.isCompleted();
+ boolean isDevMode = GameWorld.getSettings().isDevMode();
+
+ ClueLevel clueLevel = getLevelForCasket(casket);
+
+ if (trailCompleted || isDevMode) {
+ List- rewards = rollLoot(player, clueLevel);
+
+ player.getInterfaceManager().open(new Component(364));
+
+ if (player.getInventory().remove(casket)) {
+ long rewardValue = 0L;
+
+ for (Item reward : rewards) {
+ addItemOrDrop(player, reward.getId(), reward.getAmount());
+ rewardValue += reward.getValue();
+ }
+
+ playerTrails.incrementClues(clueLevel);
+ playerTrails.clearTrail();
+
+ player.sendMessage("Well done, you've completed the Treasure Trail!");
+ player.sendMessage(
+ getChatColor(clueLevel)
+ + "You have completed "
+ + playerTrails.getCompletedClues(clueLevel)
+ + " "
+ + clueLevel.getName().toLowerCase()
+ + " clues."
+ );
+
+ player.sendMessage(
+ "
Your clue is worth approximately "
+ + NumberFormat.getInstance().format(rewardValue)
+ + " coins!"
+ );
+
+ int clueIfaceSettings = new IfaceSettingsBuilder().enableAllOptions().build();
+ player.getPacketDispatch().sendIfaceSettings(clueIfaceSettings, 4, 364, 0, 6);
+ InterfaceContainer.generateItems(
+ player,
+ rewards.toArray(new Item[] {}),
+ new String[] {""},
+ 364, 4, 3, 3
+ );
+ }
+ return;
+ }
+
+ Item newClue = ClueScrollPlugin.getClue(clueLevel);
+
+ if (casket != null && player.getInventory().remove(casket, casket.getSlot(), true)) {
+ player.getInventory().replace(newClue, casket.getSlot());
+ } else {
+ player.getInventory().add(newClue);
+ }
+
+ playerTrails.setClueId(newClue.getId());
+ player.getDialogueInterpreter().sendItemMessage(newClue, "You've found another clue!");
+ }
+
+ public static List- rollLoot(Player player, ClueLevel level) {
+ ArrayList
- loot = new ArrayList();
+ int itemCount = RandomFunction.random(1,6);
+
+ if (level == ClueLevel.HARD) {
+ itemCount = Math.max(itemCount, RandomFunction.random(4,6));
+ }
+
+ for (; itemCount > 0; itemCount--) {
+ switch (level) {
+ case EASY:
+ loot.addAll(ClueRewardParser.getEasyTable().roll(player));
+ break;
+ case MEDIUM:
+ loot.addAll(ClueRewardParser.getMedTable().roll(player));
+ break;
+ case HARD:
+ loot.addAll(ClueRewardParser.getHardTable().roll(player));
+ break;
+ }
+ }
+
+ if (level == ClueLevel.HARD && RandomFunction.random(100) == 50) {
+ loot.addAll(ClueRewardParser.getRareTable().roll(player));
+ }
+
+ return loot;
+ }
+
+ /**
+ * Gets the Chat color to send on completed clues.
+ * @param level The clue level.
+ * @return the chat color.
+ */
+ public static String getChatColor(ClueLevel level) {
+ if (level == ClueLevel.HARD) {
+ return "
";
+ }
+ if (level == ClueLevel.MEDIUM) {
+ return " ";
+ }
+ return " ";
+ }
+ /**
+ * Gets the maximum length.
+ *
+ * @return the length.
+ */
+ public int getMaximumLength() {
+ return maxSteps;
+ }
+
+ /**
+ * Gets the minimum length.
+ *
+ * @return the length.
+ */
+ public int getMinimumLength() {
+ return minSteps;
+ }
+
+ /**
+ * Gets the bcasket.
+ *
+ * @return the casket
+ */
+ public Item getCasket() {
+ return new Item(casketId);
+ }
+
+ /**
+ * Gets the name of the clue level.
+ * @return the name.
+ */
+ public String getName() {
+ return toString();
+ }
+}
diff --git a/Server/src/main/java/core/game/content/ttrail/ClueScrollPlugin.java b/Server/src/main/content/global/activity/ttrail/ClueScrollPlugin.java
similarity index 89%
rename from Server/src/main/java/core/game/content/ttrail/ClueScrollPlugin.java
rename to Server/src/main/content/global/activity/ttrail/ClueScrollPlugin.java
index b256be061..c049c6dab 100644
--- a/Server/src/main/java/core/game/content/ttrail/ClueScrollPlugin.java
+++ b/Server/src/main/content/global/activity/ttrail/ClueScrollPlugin.java
@@ -1,9 +1,10 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.component.Component;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
-import rs09.game.system.SystemLogger;
+import core.tools.Log;
+import core.tools.SystemLogger;
import core.game.world.map.zone.MapZone;
import core.game.world.map.zone.ZoneBorders;
import core.game.world.map.zone.ZoneBuilder;
@@ -15,6 +16,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import static core.api.ContentAPIKt.log;
+
/**
* Represents a clue scroll plugin.
* @author Vexia
@@ -78,7 +81,7 @@ public abstract class ClueScrollPlugin extends MapZone implements Plugin
/**
* Rewards the player with a casket.
* @param player the player.
- * @param casket if we give a ckaset.
+ * @param casket if we give a casket.
*/
public void reward(Player player, boolean casket) {
Item clue = player.getInventory().getItem(new Item(getClueId()));
@@ -138,7 +141,7 @@ public abstract class ClueScrollPlugin extends MapZone implements Plugin
if(clue.getClueId() == 2681)
return;
if (CLUE_SCROLLS.containsKey(clue.getClueId())) {
- SystemLogger.logErr("Error! Plugin already registered with clue id - " + clue.getClueId() + ", trying to register " + clue.getClass().getCanonicalName() + " the real plugin using the id is " + CLUE_SCROLLS.get(clue.getClueId()).getClass().getCanonicalName() + "!");
+ log(this.getClass(), Log.ERR, "Error! Plugin already registered with clue id - " + clue.getClueId() + ", trying to register " + clue.getClass().getCanonicalName() + " the real plugin using the id is " + CLUE_SCROLLS.get(clue.getClueId()).getClass().getCanonicalName() + "!");
return;
}
List organized = (List) ORGANIZED.get(clue.getLevel());
@@ -169,7 +172,7 @@ public abstract class ClueScrollPlugin extends MapZone implements Plugin
public static Item getClue(ClueLevel clueLevel) {
List clues = ORGANIZED.get(clueLevel);
if (clues == null) {
- SystemLogger.logErr("Error! There are no clues for level " + clueLevel + "!");
+ log(ClueScrollPlugin.class, Log.ERR, "Error! There are no clues for level " + clueLevel + "!");
return null;
}
ClueScrollPlugin clue = clues.get(RandomFunction.random(clues.size()));
@@ -189,7 +192,7 @@ public abstract class ClueScrollPlugin extends MapZone implements Plugin
int hasAmt = 0;
for (int i = 0; i < equipment.length; i++) {
for (int k = 0; k < equipment[i].length; k++) {
- if (player.getEquipment().contains(equipment[i][k], 1)) {
+ if (player.getEquipment().contains(equipment[i][k], 1) || player.costumeRoomBank.contains(equipment[i][k], 1)) {
hasAmt++;
break;
}
diff --git a/Server/src/main/java/core/game/content/ttrail/CoordinateCluePlugin.java b/Server/src/main/content/global/activity/ttrail/CoordinateCluePlugin.java
similarity index 99%
rename from Server/src/main/java/core/game/content/ttrail/CoordinateCluePlugin.java
rename to Server/src/main/content/global/activity/ttrail/CoordinateCluePlugin.java
index 6f7b48c5e..b09067d27 100644
--- a/Server/src/main/java/core/game/content/ttrail/CoordinateCluePlugin.java
+++ b/Server/src/main/content/global/activity/ttrail/CoordinateCluePlugin.java
@@ -1,4 +1,4 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.world.map.Location;
import core.plugin.Plugin;
diff --git a/Server/src/main/java/core/game/content/ttrail/CoordinateClueScroll.java b/Server/src/main/content/global/activity/ttrail/CoordinateClueScroll.java
similarity index 90%
rename from Server/src/main/java/core/game/content/ttrail/CoordinateClueScroll.java
rename to Server/src/main/content/global/activity/ttrail/CoordinateClueScroll.java
index 2fd0096ba..b3c43a196 100644
--- a/Server/src/main/java/core/game/content/ttrail/CoordinateClueScroll.java
+++ b/Server/src/main/content/global/activity/ttrail/CoordinateClueScroll.java
@@ -1,4 +1,4 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
@@ -61,17 +61,17 @@ public abstract class CoordinateClueScroll extends MapClueScroll {
@Override
public void dig(Player player) {
- /*int killed = player.getAttribute("killed-wizard", -1);
- if (getLevel() == ClueLevel.HARD && killed == -1) {
+ int killedWizardClueId = player.getAttribute("killed-wizard", -1);
+ if (getLevel() == ClueLevel.HARD && (killedWizardClueId == -1 || killedWizardClueId != getClueId())) {
NPC wizard = player.getAttribute("t-wizard", null);
if (wizard != null && wizard.isActive()) {
return;
}
spawnWizard(player);
return;
- }*/
+ }
super.dig(player);
- //player.removeAttribute("killed-wizard");
+ player.removeAttribute("killed-wizard");
}
/**
@@ -98,5 +98,4 @@ public abstract class CoordinateClueScroll extends MapClueScroll {
public String getClue() {
return clue;
}
-
}
diff --git a/Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java b/Server/src/main/content/global/activity/ttrail/EmoteCluePlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java
rename to Server/src/main/content/global/activity/ttrail/EmoteCluePlugin.java
index fbedcc260..afcb7601d 100644
--- a/Server/src/main/java/core/game/content/ttrail/EmoteCluePlugin.java
+++ b/Server/src/main/content/global/activity/ttrail/EmoteCluePlugin.java
@@ -1,9 +1,9 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.node.entity.player.link.emote.Emotes;
import core.game.world.map.zone.ZoneBorders;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
/**
* Initializes the emote clue plugins.
@@ -57,7 +57,7 @@ public final class EmoteCluePlugin extends EmoteClueScroll {
public Plugin newInstance(Object arg) throws Throwable {
Emotes emote = Emotes.BECKON;
register(new EmoteCluePlugin("digsite-beckon", 2677, ClueLevel.MEDIUM, emote, Emotes.BOW, new int[][] { { 6328 }, { 1267 }, { 658 } }, "Beckon in the Digsite, near the eastern winch. Bow or curtsy before you talk to me. Equip a green gnome hat, snakeskin boots and an iron pickaxe.", new ZoneBorders(3368, 3425, 3371, 3429)));
- register(new EmoteCluePlugin("tai-bwo-beckon", 2678, ClueLevel.MEDIUM, emote, Emotes.CLAP, new int[][] { { 1099 }, { 2552, 2554, 2556, 2558, 2560, 2562, 2564, 2568 }, { 1143 } }, "Beckon in Tai Bwo Wannai. Clap before you talk to me. Equip green dragonhide chaps, a ring of dueling and a mithril medium helmet.", new ZoneBorders(2771, 3053, 2814, 3074)));
+ register(new EmoteCluePlugin("tai-bwo-beckon", 2678, ClueLevel.MEDIUM, emote, Emotes.CLAP, new int[][] { { 1099 }, { 2552, 2554, 2556, 2558, 2560, 2562, 2564, 2566, 2568 }, { 1143 } }, "Beckon in Tai Bwo Wannai. Clap before you talk to me. Equip green dragonhide chaps, a ring of dueling and a mithril medium helmet.", new ZoneBorders(2771, 3053, 2814, 3074)));
emote = Emotes.BLOW_KISS;
//register(new EmoteCluePlugin("shilo-kiss", 2681, ClueLevel.HARD, emote, new int[][] { { 4089 }, { 5016 }, { 1127 } }, "Blow a kiss between the tables in Shilo Village bank. Beware of double agents! Equip a blue mystic hat, bone spear and rune plate body.", new ZoneBorders(2849, 2950, 2855, 2957)));
emote = Emotes.BOW;
@@ -99,7 +99,7 @@ public final class EmoteCluePlugin extends EmoteClueScroll {
//Fixed JFJ and Laugh Clues
//When Vexia emote is removed below.
//emote = Emotes.JUMP_FOR_JOY;
- register(new EmoteCluePlugin("beehive-jump", 2703, ClueLevel.EASY, Emotes.JUMP_FOR_JOY, new int[][] { { 1833 }, { 648 }, { 1353 } }, "Jump for joy at the beehives. Equip a desert shirt, green gnome robe bottoms and a steel axe.", new ZoneBorders(2762, 3439, 2764, 3441)));
+ register(new EmoteCluePlugin("beehive-jump", 2703, ClueLevel.EASY, Emotes.JUMP_FOR_JOY, new int[][] { { 1833 }, { 648 }, { 1353 } }, "Jump for joy at the beehives. Equip a desert shirt, green gnome robe bottoms and a steel axe.", new ZoneBorders(2752, 3437,2766, 3450)));
// And emote, is replaced with what it is shortcutting Emotes.JUMP_FOR_JOY
// the clues work perfect. It seems to only be a problem with multiple emote clues.
// If you look around EmoteCluePlugin you will see there are multiple emote, shortcuts
diff --git a/Server/src/main/java/core/game/content/ttrail/EmoteClueScroll.java b/Server/src/main/content/global/activity/ttrail/EmoteClueScroll.java
similarity index 98%
rename from Server/src/main/java/core/game/content/ttrail/EmoteClueScroll.java
rename to Server/src/main/content/global/activity/ttrail/EmoteClueScroll.java
index b559fae2f..e4e9100d8 100644
--- a/Server/src/main/java/core/game/content/ttrail/EmoteClueScroll.java
+++ b/Server/src/main/content/global/activity/ttrail/EmoteClueScroll.java
@@ -1,4 +1,4 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/content/ttrail/MapCluePlugin.java b/Server/src/main/content/global/activity/ttrail/MapCluePlugin.java
similarity index 99%
rename from Server/src/main/java/core/game/content/ttrail/MapCluePlugin.java
rename to Server/src/main/content/global/activity/ttrail/MapCluePlugin.java
index c82e0343a..b1713ff8c 100644
--- a/Server/src/main/java/core/game/content/ttrail/MapCluePlugin.java
+++ b/Server/src/main/content/global/activity/ttrail/MapCluePlugin.java
@@ -1,4 +1,4 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.world.map.Location;
import core.game.world.map.zone.ZoneBorders;
diff --git a/Server/src/main/java/core/game/content/ttrail/MapClueScroll.java b/Server/src/main/content/global/activity/ttrail/MapClueScroll.java
similarity index 93%
rename from Server/src/main/java/core/game/content/ttrail/MapClueScroll.java
rename to Server/src/main/content/global/activity/ttrail/MapClueScroll.java
index a0b5b5e88..2b772e8ba 100644
--- a/Server/src/main/java/core/game/content/ttrail/MapClueScroll.java
+++ b/Server/src/main/content/global/activity/ttrail/MapClueScroll.java
@@ -1,7 +1,7 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
-import core.game.content.global.action.DigAction;
-import core.game.content.global.action.DigSpadeHandler;
+import core.game.global.action.DigAction;
+import core.game.global.action.DigSpadeHandler;
import core.game.interaction.Option;
import core.game.node.Node;
import core.game.node.entity.Entity;
@@ -61,8 +61,7 @@ public abstract class MapClueScroll extends ClueScrollPlugin {
p.sendMessage("Nothing interesting happens.");
return false;
}
- reward(p, false);
- level.open(p, null);
+ reward(p);
return true;
}
}
diff --git a/Server/src/main/java/core/game/content/ttrail/SaradominWizardNPC.java b/Server/src/main/content/global/activity/ttrail/SaradominWizardNPC.java
similarity index 94%
rename from Server/src/main/java/core/game/content/ttrail/SaradominWizardNPC.java
rename to Server/src/main/content/global/activity/ttrail/SaradominWizardNPC.java
index 13c7aaab0..b2b357690 100644
--- a/Server/src/main/java/core/game/content/ttrail/SaradominWizardNPC.java
+++ b/Server/src/main/content/global/activity/ttrail/SaradominWizardNPC.java
@@ -1,7 +1,7 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.node.entity.Entity;
-import core.game.node.entity.combat.CombatSpell;
+import core.game.node.entity.combat.spell.CombatSpell;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.combat.equipment.SwitchAttack;
import core.game.node.entity.npc.AbstractNPC;
@@ -10,8 +10,8 @@ import core.game.node.entity.player.link.SpellBookManager.SpellBook;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
import core.plugin.Plugin;
-import rs09.game.node.entity.combat.CombatSwingHandler;
-import rs09.game.node.entity.combat.handlers.MultiSwingHandler;
+import core.game.node.entity.combat.CombatSwingHandler;
+import core.game.node.entity.combat.MultiSwingHandler;
/**
* Handles saradomin npc.
diff --git a/Server/src/main/java/core/game/content/ttrail/TreasureTrailManager.java b/Server/src/main/content/global/activity/ttrail/TreasureTrailManager.java
similarity index 98%
rename from Server/src/main/java/core/game/content/ttrail/TreasureTrailManager.java
rename to Server/src/main/content/global/activity/ttrail/TreasureTrailManager.java
index 4a7083b7a..e9a68dd1b 100644
--- a/Server/src/main/java/core/game/content/ttrail/TreasureTrailManager.java
+++ b/Server/src/main/content/global/activity/ttrail/TreasureTrailManager.java
@@ -1,7 +1,7 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
-import api.LoginListener;
-import api.PersistPlayer;
+import core.api.LoginListener;
+import core.api.PersistPlayer;
import core.game.node.entity.player.Player;
import core.tools.RandomFunction;
@@ -9,8 +9,6 @@ import org.jetbrains.annotations.NotNull;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
-import java.nio.ByteBuffer;
-
/**
* Handles the treasure trail of a player.
* @author Vexia
diff --git a/Server/src/main/java/core/game/content/ttrail/TreasureTrailPlugin.java b/Server/src/main/content/global/activity/ttrail/TreasureTrailPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/content/ttrail/TreasureTrailPlugin.java
rename to Server/src/main/content/global/activity/ttrail/TreasureTrailPlugin.java
index 7ebe56b16..607eb169a 100644
--- a/Server/src/main/java/core/game/content/ttrail/TreasureTrailPlugin.java
+++ b/Server/src/main/content/global/activity/ttrail/TreasureTrailPlugin.java
@@ -1,4 +1,4 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.cache.def.impl.ItemDefinition;
import core.cache.def.impl.SceneryDefinition;
@@ -9,7 +9,7 @@ import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.item.GroundItem;
import core.game.node.item.Item;
import core.game.node.item.ItemPlugin;
@@ -17,7 +17,7 @@ import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
/**
* Handles the clue scroll options.
@@ -68,7 +68,7 @@ public final class TreasureTrailPlugin extends OptionHandler {
if (!player.getInventory().containsItem(node.asItem())) {
return true;
}
- ClueLevel.forCasket((Item) node).open(player, (Item) node);
+ ClueLevel.open(player, (Item) node);
break;
case "look through":
player.getInterfaceManager().open(new Component(365));
diff --git a/Server/src/main/java/core/game/content/ttrail/UriNPC.java b/Server/src/main/content/global/activity/ttrail/UriNPC.java
similarity index 98%
rename from Server/src/main/java/core/game/content/ttrail/UriNPC.java
rename to Server/src/main/content/global/activity/ttrail/UriNPC.java
index 5e264071f..64f1b7ae4 100644
--- a/Server/src/main/java/core/game/content/ttrail/UriNPC.java
+++ b/Server/src/main/content/global/activity/ttrail/UriNPC.java
@@ -1,6 +1,6 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialoguePlugin;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.npc.AbstractNPC;
@@ -9,7 +9,7 @@ import core.game.node.entity.player.Player;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
import core.tools.RandomFunction;
/**
diff --git a/Server/src/main/java/core/game/content/ttrail/ZamorakWizardNPC.java b/Server/src/main/content/global/activity/ttrail/ZamorakWizardNPC.java
similarity index 97%
rename from Server/src/main/java/core/game/content/ttrail/ZamorakWizardNPC.java
rename to Server/src/main/content/global/activity/ttrail/ZamorakWizardNPC.java
index c4e6acd9e..3b1dae94c 100644
--- a/Server/src/main/java/core/game/content/ttrail/ZamorakWizardNPC.java
+++ b/Server/src/main/content/global/activity/ttrail/ZamorakWizardNPC.java
@@ -1,7 +1,7 @@
-package core.game.content.ttrail;
+package content.global.activity.ttrail;
import core.game.node.entity.Entity;
-import core.game.node.entity.combat.CombatSpell;
+import core.game.node.entity.combat.spell.CombatSpell;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.npc.AbstractNPC;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/content/global/ame/KidnapHelper.kt b/Server/src/main/content/global/ame/KidnapHelper.kt
new file mode 100644
index 000000000..5cef011ba
--- /dev/null
+++ b/Server/src/main/content/global/ame/KidnapHelper.kt
@@ -0,0 +1,28 @@
+package content.global.ame
+
+import core.ServerConstants
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager.TeleportType
+import core.game.world.map.Location
+
+fun kidnapPlayer(player: Player, loc: Location, type: TeleportType) {
+ setAttribute(player, "kidnapped-by-random", true)
+ if (getAttribute(player, "/save:original-loc", null) == null) {
+ setAttribute(player, "/save:original-loc", player.location)
+ }
+ teleport(player, loc, type)
+}
+
+fun returnPlayer(player: Player) {
+ // Prevent returning more than once and sending the player back to HOME_LOCATION
+ if (getAttribute(player, "kidnapped-by-random", null) == null) {
+ return
+ }
+
+ player.locks.unlockTeleport()
+ val destination = getAttribute(player, "/save:original-loc", ServerConstants.HOME_LOCATION ?: Location.create(3222, 3218, 0))
+ teleport(player, destination)
+ unlock(player)
+ removeAttributes(player, "/save:original-loc", "kidnapped-by-random")
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/RandomEventNPC.kt b/Server/src/main/content/global/ame/RandomEventNPC.kt
new file mode 100644
index 000000000..716420e25
--- /dev/null
+++ b/Server/src/main/content/global/ame/RandomEventNPC.kt
@@ -0,0 +1,147 @@
+package content.global.ame
+
+import content.global.ame.events.MysteriousOldManNPC
+import core.api.playGlobalAudio
+import core.api.poofClear
+import core.api.sendMessage
+import core.api.utils.WeightBasedTable
+import core.game.interaction.MovementPulse
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.impl.PulseType
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.agg.AggressiveBehavior
+import core.game.node.entity.npc.agg.AggressiveHandler
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.world.map.Location
+import core.game.world.map.RegionManager
+import core.game.world.map.path.Pathfinder
+import core.game.world.update.flag.context.Graphics
+import core.integrations.discord.Discord
+import core.tools.secondsToTicks
+import core.tools.ticksToCycles
+import org.rs09.consts.Sounds
+import kotlin.math.ceil
+import kotlin.math.min
+import kotlin.random.Random
+import kotlin.reflect.full.createInstance
+
+abstract class RandomEventNPC(id: Int) : NPC(id) {
+ lateinit var player: Player
+ abstract var loot: WeightBasedTable?
+ var spawnLocation: Location? = null
+ val SMOKE_GRAPHICS = Graphics(86)
+ var initialized = false
+ var finalized = false
+ var timerPaused = false
+ var ticksLeft = secondsToTicks(180)
+
+ open fun create(player: Player, loot: WeightBasedTable? = null, type: String = ""): RandomEventNPC {
+ val event = this::class.createInstance()
+ if (event is MysteriousOldManNPC) event.type = type
+ event.loot = loot
+ event.player = player
+ event.spawnLocation = RegionManager.getSpawnLocation(player, this)
+ return event
+ }
+
+ open fun terminate() {
+ pulseManager.clear(PulseType.STANDARD)
+ if (initialized && !finalized) {
+ poofClear(this)
+ playGlobalAudio(this.location, Sounds.SMOKEPUFF_1930, ticksToCycles(1))
+ }
+ finalized = true
+ }
+
+ open fun follow() {
+ pulseManager.run((object : MovementPulse(this, player, Pathfinder.DUMB) {
+ override fun pulse(): Boolean {
+ face(player)
+ return false
+ }
+ }), PulseType.STANDARD)
+ }
+
+ override fun tick() {
+ super.tick()
+ if(player.getAttribute("re-npc", null) != this){
+ terminate()
+ return
+ }
+ if (!player.getAttribute("random:pause", false)) {
+ ticksLeft--
+ }
+ if (!pulseManager.hasPulseRunning() && !finalized) {
+ follow()
+ }
+ if (!player.isActive || !player.location.withinDistance(location, 10)) {
+ terminate()
+ }
+ if (ticksLeft <= 0 && initialized) {
+ onTimeUp()
+ initialized = false
+ }
+ }
+
+ override fun init() {
+ initialized = true
+ finalized = false
+ timerPaused = false
+ spawnLocation ?: terminate()
+ location = spawnLocation
+ player.setAttribute("re-npc", this)
+ super.init()
+ super.aggressiveHandler = AggressiveHandler(this, object : AggressiveBehavior() {
+ override fun canSelectTarget(entity: Entity, target: Entity): Boolean {
+ return target == player
+ }
+ })
+ }
+
+ open fun onTimeUp() {
+ noteAndTeleport()
+ terminate()
+ }
+
+ fun noteAndTeleport() {
+ player.pulseManager.clear()
+ for (item in player.inventory.toArray()) {
+ if (item == null) continue
+ if (item.definition.isUnnoted) {
+ player.inventory.remove(item)
+ player.inventory.add(Item(item.noteChange, item.amount))
+ }
+ }
+ if (Random.nextBoolean()) {
+ player.properties.teleportLocation = Location.create(3197, 3223, 0)
+ } else {
+ player.properties.teleportLocation = Location.create(3212, 9620, 0)
+ }
+ player.graphics(SMOKE_GRAPHICS)
+ Discord.postPlayerAlert(player.username, "Ignored Random")
+ }
+
+ override fun clear() {
+ super.clear()
+ if(player.getAttribute("re-npc", null) == this) player.removeAttribute("re-npc")
+ }
+
+ abstract fun talkTo(npc: NPC)
+
+ override fun isAttackable(entity: Entity, style: CombatStyle, message: Boolean): Boolean {
+ if (entity != player) {
+ if (entity is Player) {
+ sendMessage(entity, "It isn't interested in fighting you.") //TODO authentic message
+ }
+ return false
+ }
+ return super.isAttackable(entity, style, message)
+ }
+
+ fun idForCombatLevel(ids: List, player: Player): Int {
+ val index = min(ids.size, ceil(player.properties.currentCombatLevel / 20.0).toInt()) - 1
+ return ids[index]
+ }
+}
diff --git a/Server/src/main/content/global/ame/RandomEvents.kt b/Server/src/main/content/global/ame/RandomEvents.kt
new file mode 100644
index 000000000..49bac5151
--- /dev/null
+++ b/Server/src/main/content/global/ame/RandomEvents.kt
@@ -0,0 +1,95 @@
+package content.global.ame
+
+import org.rs09.consts.Items
+import content.global.ame.events.MysteriousOldManNPC
+import content.global.ame.events.certer.CerterNPC
+import content.global.ame.events.drilldemon.SergeantDamienNPC
+import content.global.ame.events.drunkendwarf.DrunkenDwarfNPC
+import content.global.ame.events.evilbob.EvilBobNPC
+import content.global.ame.events.evilchicken.EvilChickenNPC
+import content.global.ame.events.freakyforester.FreakyForesterNPC
+import content.global.ame.events.maze.MazeNPC
+import content.global.ame.events.genie.GenieNPC
+import content.global.ame.events.pillory.PilloryNPC
+import content.global.ame.events.rickturpentine.RickTurpentineNPC
+import content.global.ame.events.rivertroll.RiverTrollRENPC
+import content.global.ame.events.rockgolem.RockGolemRENPC
+import content.global.ame.events.quizmaster.QuizMasterNPC
+import content.global.ame.events.sandwichlady.SandwichLadyRENPC
+import content.global.ame.events.shade.ShadeRENPC
+import content.global.ame.events.strangeplant.StrangePlantNPC
+import content.global.ame.events.swarm.SwarmNPC
+import content.global.ame.events.treespirit.TreeSpiritRENPC
+import content.global.ame.events.zombie.ZombieRENPC
+
+import core.api.utils.WeightBasedTable
+import core.api.utils.WeightedItem
+import core.game.node.entity.skill.Skills
+
+enum class RandomEvents(val npc: RandomEventNPC, val loot: WeightBasedTable? = null, val skillIds: IntArray = intArrayOf(), val type: String = "") {
+ SANDWICH_LADY(npc = SandwichLadyRENPC()),
+ GENIE(npc = GenieNPC()),
+ CERTER(npc = CerterNPC(), loot = WeightBasedTable.create(
+ WeightedItem(Items.UNCUT_SAPPHIRE_1623,1,1,3.4),
+ WeightedItem(Items.KEBAB_1971,1,1,1.7),
+ WeightedItem(Items.UNCUT_EMERALD_1621,1,1,1.7),
+ WeightedItem(Items.SPINACH_ROLL_1969,1,1,1.5),
+ WeightedItem(Items.COINS_995,80,80,1.1),
+ WeightedItem(Items.COINS_995,160,160,1.1),
+ WeightedItem(Items.COINS_995,320,320,1.1),
+ WeightedItem(Items.COINS_995,480,480,1.1),
+ WeightedItem(Items.COINS_995,640,640,1.1),
+ WeightedItem(Items.UNCUT_RUBY_1619,1,1,0.86),
+ WeightedItem(Items.COINS_995,240,240,0.65),
+ WeightedItem(Items.COSMIC_TALISMAN_1454,1,1,0.43),
+ WeightedItem(Items.UNCUT_DIAMOND_1617,1,1,0.22),
+ WeightedItem(Items.TOOTH_HALF_OF_A_KEY_985,1,1,0.1),
+ WeightedItem(Items.LOOP_HALF_OF_A_KEY_987,1,1,0.1)
+ )),
+ MAZE(npc = MazeNPC()),
+ DRILL_DEMON(npc = SergeantDamienNPC()),
+ EVIL_CHICKEN(npc = EvilChickenNPC()),
+ STRANGE_PLANT(npc = StrangePlantNPC()),
+ SWARM(npc = SwarmNPC()),
+ EVIL_BOB(npc = EvilBobNPC(), skillIds = intArrayOf(Skills.FISHING, Skills.MAGIC)),
+ DRUNKEN_DWARF(npc = DrunkenDwarfNPC()),
+ RICK_TURPENTINE(npc = RickTurpentineNPC(), loot = CERTER.loot),
+ SURPRISE_EXAM(npc = MysteriousOldManNPC(), type = "sexam"),
+ FREAKY_FORESTER(npc = FreakyForesterNPC(), skillIds = intArrayOf(Skills.WOODCUTTING)),
+ PILLORY(npc = PilloryNPC(), skillIds = intArrayOf(Skills.THIEVING)),
+ TREE_SPIRIT(npc = TreeSpiritRENPC(), skillIds = intArrayOf(Skills.WOODCUTTING)),
+ QUIZ_MASTER(npc = QuizMasterNPC()),
+ RIVER_TROLL(RiverTrollRENPC(), skillIds = intArrayOf(Skills.FISHING)),
+ ROCK_GOLEM(RockGolemRENPC(), skillIds = intArrayOf(Skills.MINING)),
+ SHADE(ShadeRENPC(), skillIds = intArrayOf(Skills.PRAYER)),
+ ZOMBIE(ZombieRENPC(), skillIds = intArrayOf(Skills.PRAYER));
+
+ companion object {
+ @JvmField
+ val randomIDs = values().map { it.npc.id }.toList()
+ val skillMap = HashMap>()
+ val nonSkillList = ArrayList()
+
+ init { populateMappings() }
+
+ fun getSkillBasedRandomEvent (skill: Int) : RandomEvents? {
+ return skillMap[skill]?.random()
+ }
+
+ fun getNonSkillRandom() : RandomEvents {
+ return nonSkillList.random()
+ }
+
+ private fun populateMappings() {
+ for (event in values()) {
+ for (id in event.skillIds) {
+ val list = skillMap[id] ?: ArrayList().also { skillMap[id] = it }
+ list.add (event)
+ }
+ if (event.skillIds.isEmpty())
+ nonSkillList.add (event)
+ }
+ }
+ }
+
+}
diff --git a/Server/src/main/content/global/ame/events/HostileRandomEventBehavior.kt b/Server/src/main/content/global/ame/events/HostileRandomEventBehavior.kt
new file mode 100644
index 000000000..37083b045
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/HostileRandomEventBehavior.kt
@@ -0,0 +1,19 @@
+package content.global.ame.events
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import org.rs09.consts.NPCs
+
+class HostileRandomEventBehavior : NPCBehavior(
+ NPCs.EVIL_CHICKEN_2463, NPCs.EVIL_CHICKEN_2464, NPCs.EVIL_CHICKEN_2465, NPCs.EVIL_CHICKEN_2466, NPCs.EVIL_CHICKEN_2467, NPCs.EVIL_CHICKEN_2468,
+ NPCs.RIVER_TROLL_391, NPCs.RIVER_TROLL_392, NPCs.RIVER_TROLL_393, NPCs.RIVER_TROLL_394, NPCs.RIVER_TROLL_395, NPCs.RIVER_TROLL_396,
+ NPCs.ROCK_GOLEM_413, NPCs.ROCK_GOLEM_414, NPCs.ROCK_GOLEM_415, NPCs.ROCK_GOLEM_416, NPCs.ROCK_GOLEM_417, NPCs.ROCK_GOLEM_418,
+ NPCs.SHADE_425, NPCs.SHADE_426, NPCs.SHADE_427, NPCs.SHADE_428, NPCs.SHADE_429, NPCs.SHADE_430, NPCs.SHADE_431,
+ NPCs.TREE_SPIRIT_438, NPCs.TREE_SPIRIT_439, NPCs.TREE_SPIRIT_440, NPCs.TREE_SPIRIT_441, NPCs.TREE_SPIRIT_442, NPCs.TREE_SPIRIT_443,
+ NPCs.ZOMBIE_419, NPCs.ZOMBIE_420, NPCs.ZOMBIE_421, NPCs.ZOMBIE_422, NPCs.ZOMBIE_423, NPCs.ZOMBIE_424
+) {
+ override fun getXpMultiplier(self: NPC, attacker: Entity): Double {
+ return super.getXpMultiplier(self, attacker) / 16.0
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterDialogue.kt b/Server/src/main/content/global/ame/events/certer/CerterDialogue.kt
similarity index 77%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterDialogue.kt
rename to Server/src/main/content/global/ame/events/certer/CerterDialogue.kt
index 98010fc66..27f72a317 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterDialogue.kt
+++ b/Server/src/main/content/global/ame/events/certer/CerterDialogue.kt
@@ -1,11 +1,12 @@
-package rs09.game.content.ame.events.certer
+package content.global.ame.events.certer
-import api.addItemOrDrop
+import core.api.addItemOrDrop
import core.game.component.Component
+import core.game.node.entity.impl.PulseType
import core.game.node.entity.player.link.emote.Emotes
-import rs09.game.content.ame.RandomEventManager
-import rs09.game.content.dialogue.DialogueFile
-import rs09.tools.END_DIALOGUE
+import core.game.dialogue.DialogueFile
+import core.game.system.timer.impl.AntiMacro
+import core.tools.END_DIALOGUE
class CerterDialogue(val initial: Boolean) : DialogueFile() {
val CERTER_INTERFACE = 184
@@ -30,13 +31,13 @@ class CerterDialogue(val initial: Boolean) : DialogueFile() {
npc("Sorry, I don't think so.").also {
player!!.setAttribute("certer:reward", true)
stage = END_DIALOGUE
- RandomEventManager.getInstance(player!!)?.event?.terminate()
+ AntiMacro.terminateEventNpc(player!!)
}
} else {
npc("Thank you, I hope you like your present. I must be", "leaving now though.").also {
player!!.setAttribute("certer:reward", true)
stage = END_DIALOGUE
- RandomEventManager.getInstance(player!!)!!.event!!.loot!!.roll().forEach { addItemOrDrop(player!!, it.id, it.amount) }
+ AntiMacro.rollEventLoot(player!!).forEach { addItemOrDrop(player!!, it.id, it.amount) }
}
}
}
@@ -47,11 +48,11 @@ class CerterDialogue(val initial: Boolean) : DialogueFile() {
super.end()
if (player!!.getAttribute("certer:reward", false)) {
// Remove movement pulse to stop following player
- npc!!.pulseManager.clear("amemovement")
+ npc!!.pulseManager.clear(PulseType.STANDARD)
// Wave goodbye
npc!!.animate(Emotes.WAVE.animation)
// Terminate the event
- RandomEventManager.getInstance(player!!)?.event?.terminate()
+ AntiMacro.terminateEventNpc(player!!)
} else {
player!!.setAttribute("random:pause", false)
}
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterEventInterface.kt b/Server/src/main/content/global/ame/events/certer/CerterEventInterface.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterEventInterface.kt
rename to Server/src/main/content/global/ame/events/certer/CerterEventInterface.kt
index 9cfcef0ad..96d8f313e 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterEventInterface.kt
+++ b/Server/src/main/content/global/ame/events/certer/CerterEventInterface.kt
@@ -1,10 +1,10 @@
-package rs09.game.content.ame.events.certer
+package content.global.ame.events.certer
import core.game.node.entity.player.Player
import core.game.node.item.Item
import org.rs09.consts.Items
-import rs09.game.content.ame.RandomEventManager
-import rs09.game.interaction.InterfaceListener
+import core.game.interaction.InterfaceListener
+import core.game.system.timer.impl.AntiMacro
class CerterEventInterface : InterfaceListener {
val CERTER_INTERFACE = 184
@@ -37,7 +37,7 @@ class CerterEventInterface : InterfaceListener {
val correctAnswer = player.getAttribute("certer:correctIndex", 0)
player.setAttribute("certer:correct", correctAnswer == answer)
player.interfaceManager.close()
- player.dialogueInterpreter.open(CerterDialogue(false), RandomEventManager.getInstance(player)!!.event?.asNpc())
+ player.dialogueInterpreter.open(CerterDialogue(false), AntiMacro.getEventNpc(player))
return@on true
}
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterNPC.kt b/Server/src/main/content/global/ame/events/certer/CerterNPC.kt
similarity index 88%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterNPC.kt
rename to Server/src/main/content/global/ame/events/certer/CerterNPC.kt
index 7f4fe4fdc..daf3bc822 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/certer/CerterNPC.kt
+++ b/Server/src/main/content/global/ame/events/certer/CerterNPC.kt
@@ -1,11 +1,12 @@
-package rs09.game.content.ame.events.certer
+package content.global.ame.events.certer
import core.game.node.entity.npc.NPC
import core.game.node.entity.player.link.emote.Emotes
import core.tools.RandomFunction
import org.rs09.consts.NPCs
-import rs09.game.content.ame.RandomEventNPC
-import rs09.game.content.global.WeightBasedTable
+import content.global.ame.RandomEventNPC
+import core.api.animate
+import core.api.utils.WeightBasedTable
class CerterNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.GILES_2538) {
lateinit var pName: String
@@ -44,6 +45,6 @@ class CerterNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NP
player.setAttribute("random:pause", false)
player.setAttribute("certer:reward", false)
sendChat(phrases[0])
- api.animate(this, Emotes.BOW.animation, true)
+ animate(this, Emotes.BOW.animation, true)
}
}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/drilldemon/DrillDemonListeners.kt b/Server/src/main/content/global/ame/events/drilldemon/DrillDemonListeners.kt
new file mode 100644
index 000000000..2287de37d
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drilldemon/DrillDemonListeners.kt
@@ -0,0 +1,93 @@
+package content.global.ame.events.drilldemon
+
+import core.api.*
+import core.game.node.entity.npc.NPC
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.interaction.QueueStrength
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import core.tools.secondsToTicks
+
+import org.rs09.consts.Sounds
+
+class DrillDemonListeners : InteractionListener, MapArea {
+ val MATS = intArrayOf(10076,10077,10078,10079)
+ override fun defineListeners() {
+
+ on(DrillDemonUtils.DD_NPC, IntType.NPC, "talk-to") { player, _ ->
+ if (inBorders(player, DrillDemonUtils.DD_AREA)) {
+ openDialogue(player, SeargentDamienDialogue(isCorrect = true), DrillDemonUtils.DD_NPC)
+ } else {
+ sendMessage(player, "They aren't interested in talking to you.")
+ }
+ return@on true
+ }
+
+ on(MATS, IntType.SCENERY, "use") { player, node ->
+ val correctTask = getAttribute(player, DrillDemonUtils.DD_KEY_TASK, -1)
+ if (correctTask == -1) {
+ sendMessage(player,"You can't do that right now.")
+ return@on true
+ }
+
+ val task = DrillDemonUtils.getMatTask(node.id, player)
+ val npc = NPC(NPCs.SERGEANT_DAMIEN_2790)
+ val anim = DrillDemonUtils.animationForTask(task)
+
+ lock(player, secondsToTicks(30))
+ player.walkingQueue.reset()
+ player.walkingQueue.addPath(node.location.x,4820)
+ queueScript(player, 0, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ player.faceLocation(player.location.transform(0, -1, 0))
+ return@queueScript delayScript(player, 2)
+ }
+ 1 -> {
+ animate(player, DrillDemonUtils.animationForTask(task))
+ when (task) {
+ DrillDemonUtils.DD_SIGN_JOG -> playAudio(player, Sounds.RUNONSPOT_2484, 0, 5)
+ DrillDemonUtils.DD_SIGN_SITUP -> playAudio(player, Sounds.SITUPS_2486, 40, 5)
+ DrillDemonUtils.DD_SIGN_PUSHUP -> playAudio(player, Sounds.PRESSUPS_2481, 25, 5)
+ DrillDemonUtils.DD_SIGN_JUMP -> playAudio(player, Sounds.STAR_JUMP_2492, 0, 5)
+ }
+ return@queueScript delayScript(player, anim.duration + 2)
+ }
+ 2 -> {
+ DrillDemonUtils.changeSignsAndAssignTask(player)
+ if (task == correctTask) {
+ player.incrementAttribute(DrillDemonUtils.DD_CORRECT_COUNTER)
+ openDialogue(player, SeargentDamienDialogue(true), npc)
+ } else {
+ openDialogue(player, SeargentDamienDialogue(false), npc)
+ }
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ return@on true
+ }
+ }
+
+ override fun defineAreaBorders(): Array {
+ return arrayOf(DrillDemonUtils.DD_AREA)
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.OFF_MAP)
+ }
+
+ override fun areaEnter(entity: Entity) {
+ if (entity is Player) {
+ entity.asPlayer().interfaceManager.closeDefaultTabs()
+ entity.locks.lockTeleport(1000000)
+ setComponentVisibility(entity.asPlayer(), 548, 69, true)
+ setComponentVisibility(entity.asPlayer(), 746, 12, true)
+ }
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/drilldemon/DrillDemonUtils.kt b/Server/src/main/content/global/ame/events/drilldemon/DrillDemonUtils.kt
new file mode 100644
index 000000000..a6638fecb
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drilldemon/DrillDemonUtils.kt
@@ -0,0 +1,99 @@
+package content.global.ame.events.drilldemon
+
+import content.global.ame.kidnapPlayer
+import content.global.ame.returnPlayer
+import core.api.*
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+object DrillDemonUtils {
+ val DD_KEY_TASK = "/save:drilldemon:task"
+ val DD_SIGN_VARP = 531
+ val DD_SIGN_JOG = 0
+ val DD_SIGN_SITUP = 1
+ val DD_SIGN_PUSHUP = 2
+ val DD_SIGN_JUMP = 3
+ val DD_CORRECT_OFFSET = "/save:drilldemon:offset"
+ val DD_CORRECT_COUNTER = "/save:drilldemon:numcorrect"
+ val DD_AREA = ZoneBorders(3158, 4817, 3168, 4823)
+ val DD_NPC = NPCs.SERGEANT_DAMIEN_2790
+
+ fun teleport(player: Player) {
+ kidnapPlayer(player, Location.create(3163, 4819, 0), TeleportManager.TeleportType.INSTANT)
+ player.interfaceManager.closeDefaultTabs()
+ setComponentVisibility(player, 548, 69, true)
+ setComponentVisibility(player, 746, 12, true)
+ }
+
+ fun changeSignsAndAssignTask(player: Player) {
+ setVarp(player, DD_SIGN_VARP, 0)
+ val tempList = arrayListOf(DD_SIGN_JOG, DD_SIGN_JUMP, DD_SIGN_PUSHUP, DD_SIGN_SITUP).shuffled().toMutableList()
+ val tempOffsetList = arrayListOf(1335, 1336, 1337, 1338).shuffled().toMutableList()
+ val task = tempList.random()
+ val taskOffset = tempOffsetList.random()
+
+ setAttribute(player, DD_KEY_TASK, task)
+ setAttribute(player, DD_CORRECT_OFFSET, taskOffset)
+
+ tempList.remove(task)
+ tempOffsetList.remove(taskOffset)
+ setVarbit(player, taskOffset, task)
+ for (i in 0 until tempList.size) {
+ setVarbit(player, tempOffsetList[i], tempList[i], true)
+ }
+ }
+
+ fun getVarbitForId(id: Int): Int {
+ return when (id) {
+ 10076 -> 1335
+ 10077 -> 1336
+ 10078 -> 1337
+ 10079 -> 1338
+ else -> 0
+ }
+ }
+
+ fun getMatTask(id: Int, player: Player): Int {
+ return getVarbit(player, getVarbitForId(id))
+ }
+
+ fun cleanup(player: Player) {
+ returnPlayer(player)
+ removeAttributes(player, DD_KEY_TASK, DD_CORRECT_OFFSET, DD_CORRECT_COUNTER)
+ player.interfaceManager.openDefaultTabs()
+ setComponentVisibility(player, 548, 69, false)
+ setComponentVisibility(player, 746, 12, false)
+ }
+
+ fun animationForTask(task: Int): Animation {
+ return when (task) {
+ DD_SIGN_SITUP -> Animation(2763)
+ DD_SIGN_PUSHUP -> Animation(2762)
+ DD_SIGN_JUMP -> Animation(2761)
+ DD_SIGN_JOG -> Animation(2764)
+ else -> Animation(-1)
+ }
+ }
+
+ fun reward(player: Player) {
+ queueScript(player, 2, QueueStrength.SOFT) {
+ val hasHat = hasAnItem(player, Items.CAMO_HELMET_6656).container != null
+ val hasShirt = hasAnItem(player, Items.CAMO_TOP_6654).container != null
+ val hasPants = hasAnItem(player, Items.CAMO_BOTTOMS_6655).container != null
+ when {
+ !hasHat -> addItemOrDrop(player, Items.CAMO_HELMET_6656)
+ !hasShirt -> addItemOrDrop(player, Items.CAMO_TOP_6654)
+ !hasPants -> addItemOrDrop(player, Items.CAMO_BOTTOMS_6655)
+ else -> addItemOrDrop(player, Items.COINS_995, 500)
+ }
+ return@queueScript stopExecuting(player)
+ }
+
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/drilldemon/SeargentDamienDialogue.kt b/Server/src/main/content/global/ame/events/drilldemon/SeargentDamienDialogue.kt
new file mode 100644
index 000000000..d9bff58af
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drilldemon/SeargentDamienDialogue.kt
@@ -0,0 +1,55 @@
+package content.global.ame.events.drilldemon
+
+import core.api.getAttribute
+import core.api.sendItemDialogue
+import core.api.unlock
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.node.entity.npc.NPC
+import core.tools.END_DIALOGUE
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+class SeargentDamienDialogue(var isCorrect: Boolean = false, var eventStart: Boolean = false) : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ npc = NPC(NPCs.SERGEANT_DAMIEN_2790)
+ val correctCounter = player!!.getAttribute(DrillDemonUtils.DD_CORRECT_COUNTER,0)
+ when(stage) {
+ 0 -> {
+ if (correctCounter >= 4) {
+ npcl(FacialExpression.OLD_NORMAL, "Well I'll be, you actually did it private. Now take this and get yourself out of my sight.")
+ stage = 100
+ } else if (eventStart) {
+ npcl(FacialExpression.OLD_NORMAL, "Move yourself private! Follow my orders and you may, just may, leave here in a fit state for my corps!")
+ DrillDemonUtils.changeSignsAndAssignTask(player!!)
+ stage = 0
+ eventStart = false
+ } else {
+ npcl(FacialExpression.OLD_NORMAL, when (getAttribute(player!!, DrillDemonUtils.DD_KEY_TASK, -1)) {
+ DrillDemonUtils.DD_SIGN_JOG -> if (!isCorrect) "Wrong exercise, worm! Get yourself over there and jog on that mat private!" else "Get yourself over there and jog on that mat private!"
+ DrillDemonUtils.DD_SIGN_JUMP -> if (!isCorrect) "Wrong exercise, worm! I want to see you on that mat doing star jumps private!" else "I want to see you on that mat doing star jumps private!"
+ DrillDemonUtils.DD_SIGN_PUSHUP -> if (!isCorrect) "Wrong exercise, worm! Drop and give me push ups on that mat private!" else "Drop and give me push ups on that mat private!"
+ DrillDemonUtils.DD_SIGN_SITUP -> if (!isCorrect) "Wrong exercise, worm! Get on that mat and give me sit ups private!" else "Get on that mat and give me sit ups private!"
+ else -> "REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
+ })
+ stage = 1
+ unlock(player!!)
+ }
+ }
+ 1 -> {
+ when (getAttribute(player!!, DrillDemonUtils.DD_KEY_TASK, -1)) {
+ DrillDemonUtils.DD_SIGN_JOG -> sendItemDialogue(player!!, Items.RUN_10947, "Go to this mat and jog on the spot!")
+ DrillDemonUtils.DD_SIGN_JUMP -> sendItemDialogue(player!!, Items.STARJUMP_10949, "Go to this mat and do some starjumps!")
+ DrillDemonUtils.DD_SIGN_PUSHUP -> sendItemDialogue(player!!, Items.PUSHUP_10946, "Go to this mat and do some pushups!")
+ DrillDemonUtils.DD_SIGN_SITUP -> sendItemDialogue(player!!, Items.SITUP_10948, "Go to this mat and do some sit ups!")
+ }
+ stage = END_DIALOGUE
+ }
+ 100 -> {
+ end()
+ DrillDemonUtils.cleanup(player!!)
+ DrillDemonUtils.reward(player!!)
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/drilldemon/SergeantDamienBehavior.kt b/Server/src/main/content/global/ame/events/drilldemon/SergeantDamienBehavior.kt
new file mode 100644
index 000000000..c52c17e2d
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drilldemon/SergeantDamienBehavior.kt
@@ -0,0 +1,22 @@
+package content.global.ame.events.drilldemon
+
+import core.api.inBorders
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.game.world.map.Location
+import org.rs09.consts.NPCs
+
+class SeargentDamienBehavior: NPCBehavior(NPCs.SERGEANT_DAMIEN_2790) {
+
+ override fun onCreation(self: NPC) {
+
+ // Sergeant Damien is supposed to walk around the perimeter of the exercise mats
+ if (inBorders(self, DrillDemonUtils.DD_AREA)) {
+ val movementPath = arrayOf(Location.create(3167, 4822, 0), Location.create(3167, 4818, 0), Location.create(3159, 4818, 0), Location.create(3159, 4822, 0))
+ self.configureMovementPath(*movementPath)
+ self.isWalks = true
+ }
+ }
+
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/drilldemon/SergeantDamienNPC.kt b/Server/src/main/content/global/ame/events/drilldemon/SergeantDamienNPC.kt
new file mode 100644
index 000000000..af4e8fe3c
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drilldemon/SergeantDamienNPC.kt
@@ -0,0 +1,38 @@
+package content.global.ame.events.drilldemon
+
+import core.game.node.entity.npc.NPC
+import org.rs09.consts.NPCs
+import content.global.ame.RandomEventNPC
+import core.api.*
+import core.api.utils.WeightBasedTable
+
+import core.game.interaction.QueueStrength
+import core.game.system.timer.impl.AntiMacro
+import core.tools.secondsToTicks
+
+class SergeantDamienNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.SERGEANT_DAMIEN_2790) {
+
+ override fun init() {
+ super.init()
+ sendChat(player.username+ "! Drop and give me 20!")
+ queueScript(player, 4, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, secondsToTicks(30))
+ DrillDemonUtils.teleport(player)
+ AntiMacro.terminateEventNpc(player)
+ return@queueScript delayScript(player, 2)
+ }
+ 1 -> {
+ openDialogue(player, SeargentDamienDialogue(isCorrect = true, eventStart = true), NPCs.SERGEANT_DAMIEN_2790)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+
+ override fun talkTo(npc: NPC) {
+ openDialogue(player, SeargentDamienDialogue(), npc)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfBehavior.kt b/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfBehavior.kt
new file mode 100644
index 000000000..a92c554f4
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfBehavior.kt
@@ -0,0 +1,14 @@
+package content.global.ame.events.drunkendwarf
+
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.tools.RandomFunction
+import org.rs09.consts.NPCs
+
+class DrunkenDwarfBehavior : NPCBehavior(NPCs.DRUNKEN_DWARF_956) {
+ override fun beforeAttackFinalized(self: NPC, victim: Entity, state: BattleState) {
+ state.estimatedHit = RandomFunction.getRandom(3)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfDialogue.kt b/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfDialogue.kt
new file mode 100644
index 000000000..010f5c366
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfDialogue.kt
@@ -0,0 +1,21 @@
+package content.global.ame.events.drunkendwarf
+
+import core.api.addItemOrDrop
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.system.timer.impl.AntiMacro
+import org.rs09.consts.Items
+
+class DrunkenDwarfDialogue : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ 0 -> npcl(FacialExpression.OLD_DRUNK_RIGHT, "I 'new it were you matey! 'Ere, have some ob the good stuff!").also { stage++ }
+ 1 -> {
+ addItemOrDrop(player!!, Items.BEER_1917)
+ addItemOrDrop(player!!, Items.KEBAB_1971)
+ AntiMacro.terminateEventNpc(player!!)
+ end()
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfNPC.kt b/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfNPC.kt
new file mode 100644
index 000000000..1485dd8c4
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/drunkendwarf/DrunkenDwarfNPC.kt
@@ -0,0 +1,50 @@
+package content.global.ame.events.drunkendwarf
+
+import content.global.ame.RandomEventNPC
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.node.entity.npc.NPC
+import core.tools.RandomFunction
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+class DrunkenDwarfNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.DRUNKEN_DWARF_956) {
+ private val phrases = arrayOf("Oi, are you der @name!","Dunt ignore your matey!","Aww comeon, talk to ikle me @name!")
+ private var attackPhrase = false
+ private var attackDelay = 0
+ private var lastPhraseTime = 0
+
+ private fun sendPhrases() {
+ if (getWorldTicks() > lastPhraseTime + 5) {
+ playGlobalAudio(this.location, Sounds.DWARF_WHISTLE_2297)
+ sendChat(this, phrases.random().replace("@name",player.username.capitalize()))
+ this.face(player)
+ lastPhraseTime = getWorldTicks()
+ }
+ }
+
+ override fun init() {
+ super.init()
+ playGlobalAudio(this.location, Sounds.DWARF_WHISTLE_2297)
+ sendChat(this, "'Ello der ${player.username.capitalize()}! *hic*")
+ }
+
+ override fun tick() {
+ if (RandomFunction.roll(20) && !attackPhrase)
+ sendPhrases()
+ if (ticksLeft <= 10) {
+ ticksLeft = 10
+ if (!attackPhrase)
+ sendChat("I hates you, ${player.username.capitalize()}!").also { attackPhrase = true }
+ if (attackDelay <= getWorldTicks())
+ this.attack(player)
+ }
+ super.tick()
+ }
+
+ override fun talkTo(npc: NPC) {
+ attackDelay = getWorldTicks() + 10
+ this.pulseManager.clear()
+ openDialogue(player, DrunkenDwarfDialogue(), this.asNpc())
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/evilbob/EvilBobDialogue.kt b/Server/src/main/content/global/ame/events/evilbob/EvilBobDialogue.kt
new file mode 100644
index 000000000..f8d132a7f
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilbob/EvilBobDialogue.kt
@@ -0,0 +1,113 @@
+package content.global.ame.events.evilbob
+
+import content.global.ame.events.evilbob.EvilBobUtils.giveEventFishingSpot
+import core.api.*
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.skill.Skills
+import core.tools.END_DIALOGUE
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+class EvilBobDialogue(val rewardDialogue: Boolean = false, val rewardXpSkill: Int = Skills.FISHING) : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ npc = NPC(NPCs.EVIL_BOB_2479)
+ if (getAttribute(player!!, EvilBobUtils.assignedFishingZone, "none") == "none") giveEventFishingSpot(player!!)
+ when (stage) {
+ 0 -> {
+ if (rewardDialogue) {
+ sendPlayerDialogue(player!!, "That was the strangest dream I've ever had! Assuming it was a dream...", FacialExpression.HALF_ASKING)
+ stage = if (rewardXpSkill == Skills.FISHING) 900 else 901
+ } else if (getAttribute(player!!, EvilBobUtils.eventComplete, false)) {
+ sendDialogue(player!!, "Evil Bob appears to be sleeping, best not to wake him up.").also { stage = END_DIALOGUE }
+ } else if (removeItem(player!!, Items.RAW_FISHLIKE_THING_6200)) {
+ playerl(FacialExpression.NEUTRAL, "Here, I've brought you some fish.").also { stage = 500 }
+ } else if (removeItem(player!!, Items.RAW_FISHLIKE_THING_6204)) {
+ setAttribute(player!!, EvilBobUtils.attentive, true)
+ setAttribute(player!!, EvilBobUtils.attentiveNewSpot, true)
+ playerl(FacialExpression.NEUTRAL, "Here, I've brought you some fish.").also { stage = 600 }
+ } else if (inInventory(player!!, Items.FISHLIKE_THING_6202) || inInventory(player!!, Items.FISHLIKE_THING_6206)) {
+ npcl(FacialExpression.CHILD_NORMAL, "What, are you giving me cooked fish? What am I going to do with that? Uncook it first!").also { stage = 700 }
+ } else if (!getAttribute(player!!, EvilBobUtils.startingDialogueSeen, false)) {
+ playerl(FacialExpression.ASKING, "Huh?").also { stage = 800 }
+ setAttribute(player!!, EvilBobUtils.startingDialogueSeen, true)
+ } else playerl(FacialExpression.ANNOYED, "Let me out of here!").also { stage++ }
+ }
+ 1 -> npcl(FacialExpression.CHILD_NORMAL, "I will never let you go, ${player!!.username}!").also { stage++ }
+ 2 -> options("Why not?", "What's it all about?", "How is it possible that you're talking?", "What did you do to Bob?").also { stage++ }
+ 3 -> when (buttonID) {
+ 1 -> playerl(FacialExpression.ASKING, "Why not?").also { stage = 100 }
+ 2 -> playerl(FacialExpression.ASKING, "What's it all about?").also { stage = 200 }
+ 3 -> playerl(FacialExpression.ASKING, "How is it possible that you're talking?").also { stage = 300 }
+ 4 -> playerl(FacialExpression.ASKING, "What did you do to Bob?").also { stage = 400 }
+ }
+
+ 100 -> npcl(FacialExpression.CHILD_NORMAL, "Uhm...").also { stage++ }
+ 101 -> npcl(FacialExpression.CHILD_NORMAL, "Because I say so! And because I can never have enough servants!").also { stage++ }
+ 102 -> npcl(FacialExpression.CHILD_NORMAL, "Now catch me some fish, I'm hungry.").also { stage++ }
+ 103 -> playerl(FacialExpression.ASKING, "What fish, where?").also { stage++ }
+ 104 -> npcl(FacialExpression.CHILD_NORMAL, "Talk to my other servants, and hurry it up!").also { stage = END_DIALOGUE }
+
+ 200 -> npcl(FacialExpression.CHILD_NORMAL, "Sit down and I'll tell you. It's a question of servant shortage.").also { stage++ }
+ 201 -> playerl(FacialExpression.NEUTRAL, "Go on.").also { stage++ }
+ 202 -> npcl(FacialExpression.CHILD_NORMAL, "You are a skilled worker. A human like you is worth a great deal as a slave.").also { stage++ }
+ 203 -> playerl(FacialExpression.ANGRY, "A slave?? I will have nothing to do with you. Is that clear? Absolutely nothing.").also { stage++ }
+ 204 -> npcl(FacialExpression.CHILD_NORMAL, "Now be reasonable little human. It's just a matter of time before you will do everything I ask you to. Play along and this can be a very nice place.").also { stage++ }
+ 205 -> playerl(FacialExpression.ANGRY, "I will not make any deals with you. I'm a human. I will not be pushed, numbered, meowed at, teleported or enslaved. My life is my own.").also { stage++ }
+ 206 -> npcl(FacialExpression.CHILD_NORMAL, "Is it?").also { stage++ }
+ 207 -> playerl(FacialExpression.ANNOYED, "Yes. You won't hold me.").also { stage++ }
+ 208 -> npcl(FacialExpression.CHILD_NORMAL, "Won't I?").also { stage++ }
+ 209 -> npcl(FacialExpression.CHILD_NORMAL, "Let me assure you there's no way out.").also { stage++ }
+ 210 -> npcl(FacialExpression.CHILD_NORMAL, "Just ask my servants!").also { stage = END_DIALOGUE }
+
+ 300 -> npcl(FacialExpression.CHILD_NORMAL, "How is it possible that you're not meowing?").also { stage++ }
+ 301 -> playerl(FacialExpression.HALF_ASKING, "Meowing?? Why would I be meowing?").also { stage++ }
+ 302 -> npcl(FacialExpression.CHILD_NORMAL, "Most humans do, that's why I'm wearing this amulet of Man speak... but I do try to train my staff in civilised speech.").also { stage++ }
+ 303 -> npcl(FacialExpression.CHILD_NORMAL, "Ah, but I suppose things are slightly different in your world... what a dreadful place that must be.").also { stage++ }
+ 304 -> playerl(FacialExpression.NEUTRAL, "I think I'm getting a headache...").also { stage = END_DIALOGUE }
+
+ 400 -> npcl(FacialExpression.CHILD_NORMAL, "Bob? I am Bob!").also { stage++ }
+ 401 -> npcl(FacialExpression.CHILD_NORMAL, "Oh, you mean the Bob in your world? Nothing. I am an incarnation of Bob here on Scape2009.").also { stage++ }
+ 402 -> playerl(FacialExpression.NEUTRAL, "What, you mean this is... like some kind of mirror land?").also { stage++ }
+ 403 -> npcl(FacialExpression.CHILD_NORMAL, " Something like that... somewhere in Scape2009 there must be a human servant called ${player!!.username}.").also { stage++ }
+ 404 -> npcl(FacialExpression.CHILD_NORMAL, "But you work just as well for me! Now get to work, human! Fish for me!").also { stage = END_DIALOGUE }
+
+ 500 ->{
+ if (getAttribute(player!!, EvilBobUtils.attentive , false)) stage = 505 else stage++
+ npcl(FacialExpression.CHILD_NORMAL, "Mmm, mmm...that's delicious.")
+ }
+ 501 -> npcl(FacialExpression.CHILD_NORMAL, "Now, let me take...a little...catnap.").also { stage++ }
+ 502 -> {
+ end()
+ setAttribute(player!!, EvilBobUtils.eventComplete, true)
+ findNPC(NPCs.EVIL_BOB_2479)!!.sendChat("ZZZzzz")
+ }
+ 505 -> {
+ setAttribute(player!!, EvilBobUtils.attentive , false)
+ setAttribute(player!!, EvilBobUtils.attentiveNewSpot , true)
+ giveEventFishingSpot(player!!)
+ npcl(FacialExpression.CHILD_NORMAL, "Now get me another, you no-good human.").also { stage++ }
+ }
+ 506 -> sendDialogue(player!!, "Evil Bob seems slightly less attentive of you.").also { stage = END_DIALOGUE }
+
+ 600 -> npcl(FacialExpression.CHILD_NORMAL, "What was this? That was absolutely disgusting!").also { stage++ }
+ 601 -> npcl(FacialExpression.CHILD_NORMAL, "Don't you know what kind of fish I like? Talk to my other servants for some advice.").also { stage++ }
+ 602 -> sendDialogue(player!!, "Evil Bob seems more attentive of you.").also { stage = END_DIALOGUE }
+
+ 700 -> playerl(FacialExpression.HALF_ASKING, "Errr... Uncook it?").also { stage++ }
+ 701 -> npcl(FacialExpression.CHILD_NORMAL,"You heard me! There's the cold fire, by the trees, now get uncooking!").also { stage = END_DIALOGUE }
+
+ 800 -> playerl(FacialExpression.ANGRY, "Where am I?").also { stage++ }
+ 801 -> npcl(FacialExpression.CHILD_NORMAL, "On my island.").also { stage++ }
+ 802 -> playerl(FacialExpression.ANGRY, "Who brought me here?").also { stage++ }
+ 803 -> npcl(FacialExpression.CHILD_NORMAL, "That would be telling.").also { stage++ }
+ 804 -> playerl(FacialExpression.ANGRY, "Take me to your leader!").also { stage++ }
+ 805 -> npcl(FacialExpression.CHILD_NORMAL,"I am your leader, you are but a slave.").also { stage++ }
+ 806 -> playerl(FacialExpression.ANGRY, "I am not a slave, I am a free man!").also { stage++ }
+ 807 -> npcl(FacialExpression.CHILD_NORMAL, "Ah-ha-ha-ha-ha-ha!").also { stage = END_DIALOGUE }
+ 900 -> sendDialogue(player!!, "You feel somehow that you've become better at fishing.").also { stage = END_DIALOGUE }
+ 901 -> sendDialogue(player!!, "You feel somehow that you've become better at magic.").also { stage = END_DIALOGUE }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/evilbob/EvilBobListeners.kt b/Server/src/main/content/global/ame/events/evilbob/EvilBobListeners.kt
new file mode 100644
index 000000000..f2a3e9134
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilbob/EvilBobListeners.kt
@@ -0,0 +1,148 @@
+package content.global.ame.events.evilbob
+
+import content.global.ame.returnPlayer
+import core.ServerConstants
+import core.api.*
+import core.game.dialogue.FacialExpression
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.Entity
+import core.game.node.entity.player.link.emote.Emotes
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+class EvilBobListeners : InteractionListener, MapArea {
+
+ override fun defineListeners() {
+ on(EvilBobUtils.evilBob, IntType.NPC, "talk-to") { player, node ->
+ openDialogue(player, EvilBobDialogue(), node.asNpc())
+ return@on true
+ }
+
+ on(EvilBobUtils.servant, IntType.NPC, "talk-to") { player, node ->
+ openDialogue(player, ServantDialogue(), node.asNpc())
+ return@on true
+ }
+
+ on(EvilBobUtils.fishingSpot, IntType.SCENERY, "net") { player, _ ->
+ if (getAttribute(player!!, EvilBobUtils.attentiveNewSpot, false) || getAttribute(player!!, EvilBobUtils.eventComplete, false)) {
+ sendDialogue(player, "You don't know if this is a good place to go fishing. Perhaps you should ask someone, like one of the human servants.")
+ } else if (!inInventory(player, Items.SMALL_FISHING_NET_303)) {
+ sendNPCDialogue(player, NPCs.SERVANT_2481, "You'll need a fishing net. There are plenty scattered around the beach.", FacialExpression.SAD)
+ } else if (freeSlots(player) == 0) {
+ sendDialogue(player, "You don't have enough space in your inventory.")
+ } else if (inInventory(player, Items.FISHLIKE_THING_6202) || inInventory(player, Items.FISHLIKE_THING_6206) ||
+ inInventory(player, Items.RAW_FISHLIKE_THING_6200) || inInventory(player, Items.RAW_FISHLIKE_THING_6204)) {
+ sendNPCDialogue(player, NPCs.SERVANT_2481, "You've already got a fish. Come over here to uncook it, then serve it to Evil Bob.", FacialExpression.SAD)
+ } else {
+ lock(player, 6)
+ animate(player, EvilBobUtils.fishAnim)
+ sendMessage(player, "You cast out your net...")
+ runTask(player, 6) {
+ when (getAttribute(player, EvilBobUtils.assignedFishingZone, EvilBobUtils.northFishingZone.toString())) {
+ EvilBobUtils.northFishingZone.toString() -> {
+ if (inBorders(player, EvilBobUtils.northFishingZone)) {
+ addItem(player, Items.FISHLIKE_THING_6202)
+ } else addItem(player, Items.FISHLIKE_THING_6206)
+ }
+ EvilBobUtils.southFishingZone.toString() -> {
+ if (inBorders(player, EvilBobUtils.southFishingZone)) {
+ addItem(player, Items.FISHLIKE_THING_6202)
+ } else addItem(player, Items.FISHLIKE_THING_6206)
+ }
+ EvilBobUtils.eastFishingZone.toString() -> {
+ if (inBorders(player, EvilBobUtils.eastFishingZone)) {
+ addItem(player, Items.FISHLIKE_THING_6202)
+ } else addItem(player, Items.FISHLIKE_THING_6206)
+ }
+ EvilBobUtils.westFishingZone.toString() -> {
+ if (inBorders(player, EvilBobUtils.westFishingZone)) {
+ addItem(player, Items.FISHLIKE_THING_6202)
+ } else addItem(player, Items.FISHLIKE_THING_6206)
+ }
+ }
+ sendItemDialogue(player, Items.FISHLIKE_THING_6202, "You catch a... what is this?? Is this a fish?? And it's cooked already??")
+ resetAnimator(player)
+ }
+ }
+ return@on true
+ }
+
+ onUseWith(IntType.SCENERY, EvilBobUtils.fishlikeThings, EvilBobUtils.uncookingPot) { player, _, _ ->
+ lock(player, 2)
+ animate(player, EvilBobUtils.cookAnim)
+ playAudio(player, Sounds.UNCOOKING_2322)
+ if (removeItem(player, Items.FISHLIKE_THING_6202)) addItem(player, Items.RAW_FISHLIKE_THING_6200)
+ if (removeItem(player, Items.FISHLIKE_THING_6206)) addItem(player, Items.RAW_FISHLIKE_THING_6204)
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.NPC, EvilBobUtils.fishlikeThings, EvilBobUtils.evilBob) { player, _, _ ->
+ openDialogue(player, EvilBobDialogue(), NPCs.EVIL_BOB_2479)
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.NPC, EvilBobUtils.rawFishlikeThings, EvilBobUtils.evilBob) { player, _, _ ->
+ openDialogue(player, EvilBobDialogue(), NPCs.EVIL_BOB_2479)
+ return@onUseWith true
+ }
+
+ on(EvilBobUtils.fishlikeThings, IntType.ITEM, "Eat") { player, _ ->
+ sendMessage(player, "It looks vile and smells even worse. You're not eating that!")
+ return@on true
+ }
+
+ on(EvilBobUtils.exitPortal, IntType.SCENERY, "enter") { player, portal ->
+ if (getAttribute(player, EvilBobUtils.eventComplete, false)) {
+ lock(player, 12)
+ queueScript(player, 0, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ forceMove(player, player.location, portal.location, 0, 50, null, 819)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ player.faceLocation(Location.create(3421, 4777, 0))
+ emote(player, Emotes.RASPBERRY)
+ sendChat(player, "Be seeing you!")
+ return@queueScript delayScript(player,2)
+ }
+ 2 -> {
+ animate(player, EvilBobUtils.teleAnim)
+ player.graphics(EvilBobUtils.telegfx)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 2)
+ }
+ 3 -> {
+ sendMessage(player, "Welcome back to ${ServerConstants.SERVER_NAME}.")
+ returnPlayer(player)
+ EvilBobUtils.reward(player)
+ EvilBobUtils.cleanup(player)
+ resetAnimator(player)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ } else sendNPCDialogue(player, NPCs.EVIL_BOB_2479, "You're going nowhere, human!", FacialExpression.CHILD_NEUTRAL)
+ return@on true
+ }
+ }
+ override fun defineAreaBorders(): Array {
+ return arrayOf(ZoneBorders(3400, 4762, 3443, 4793))
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.OFF_MAP)
+ }
+
+ override fun areaEnter(entity: Entity) {
+ entity.locks.lockTeleport(1000000)
+ }
+
+}
diff --git a/Server/src/main/content/global/ame/events/evilbob/EvilBobNPC.kt b/Server/src/main/content/global/ame/events/evilbob/EvilBobNPC.kt
new file mode 100644
index 000000000..fc0fe2826
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilbob/EvilBobNPC.kt
@@ -0,0 +1,44 @@
+package content.global.ame.events.evilbob
+
+import content.global.ame.RandomEventNPC
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.interaction.QueueStrength
+import core.game.node.entity.npc.NPC
+import core.game.system.timer.impl.AntiMacro
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+class EvilBobNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.EVIL_BOB_2478) {
+
+ override fun init() {
+ super.init()
+ sendChat("meow")
+ queueScript(player, 4, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendChat(player, "No... what? Nooooooooooooo!")
+ animate(player, EvilBobUtils.teleAnim)
+ player.graphics(EvilBobUtils.telegfx)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ EvilBobUtils.giveEventFishingSpot(player)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ sendMessage(player, "Welcome to Scape2009.")
+ EvilBobUtils.teleport(player)
+ resetAnimator(player)
+ openDialogue(player, EvilBobDialogue(), NPCs.EVIL_BOB_2479)
+ AntiMacro.terminateEventNpc(player)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+
+ override fun talkTo(npc: NPC) {
+ openDialogue(player, EvilBobDialogue(), this.asNpc())
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/evilbob/EvilBobUtils.kt b/Server/src/main/content/global/ame/events/evilbob/EvilBobUtils.kt
new file mode 100644
index 000000000..d70eab940
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilbob/EvilBobUtils.kt
@@ -0,0 +1,90 @@
+package content.global.ame.events.evilbob
+
+import content.global.ame.kidnapPlayer
+import content.global.ame.returnPlayer
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import org.rs09.consts.Scenery
+
+object EvilBobUtils {
+ const val eventComplete = "/save:evilbob:eventcomplete"
+ const val assignedFishingZone = "/save:evilbob:fishingzone"
+ const val attentive = "/save:evilbob:attentive"
+ const val servantHelpDialogueSeen = "/save:evilbob:servantdialogeseen"
+ const val attentiveNewSpot = "/save:evilbob:attentivenewspot"
+ const val startingDialogueSeen = "/save:evilbob:startingdialogueseen"
+
+ const val evilBob = NPCs.EVIL_BOB_2479
+ const val servant = NPCs.SERVANT_2481
+ const val exitPortal = Scenery.PORTAL_8987
+
+ const val uncookingPot = Scenery.UNCOOKING_POT_8985
+ const val fishingSpot = 8986
+
+ val fishlikeThings = intArrayOf(Items.FISHLIKE_THING_6202, Items.FISHLIKE_THING_6206)
+ val rawFishlikeThings = intArrayOf(Items.RAW_FISHLIKE_THING_6200, Items.RAW_FISHLIKE_THING_6204)
+
+ val cookAnim = Animation(897)
+ val fishAnim = Animation(620)
+ val teleAnim = Animation(714)
+ val telegfx = Graphics(308, 100, 50)
+
+ val northFishingZone = ZoneBorders(3421, 4789, 3427, 4792)
+ val eastFishingZone = ZoneBorders(3437, 4774, 3440, 4780)
+ val southFishingZone = ZoneBorders(3419, 4763, 3426, 4765)
+ val westFishingZone = ZoneBorders(3405, 4773, 3408, 4779)
+
+ fun giveEventFishingSpot(player: Player) {
+ when (RandomFunction.getRandom(3)) {
+ 0 -> setAttribute(player, assignedFishingZone, northFishingZone.toString())
+ 1 -> setAttribute(player, assignedFishingZone, southFishingZone.toString())
+ 2 -> setAttribute(player, assignedFishingZone, eastFishingZone.toString())
+ 3 -> setAttribute(player, assignedFishingZone, westFishingZone.toString())
+ else -> setAttribute(player, assignedFishingZone, northFishingZone.toString())
+ }
+ }
+
+ fun teleport(player: Player) {
+ kidnapPlayer(player, Location.create(3419, 4776, 0), TeleportManager.TeleportType.INSTANT)
+ }
+
+ fun cleanup(player: Player) {
+ removeAttributes(player, assignedFishingZone, eventComplete, attentive, servantHelpDialogueSeen, attentiveNewSpot, startingDialogueSeen)
+ removeAll(player, Items.FISHLIKE_THING_6202)
+ removeAll(player, Items.FISHLIKE_THING_6202, Container.BANK)
+ removeAll(player, Items.FISHLIKE_THING_6206)
+ removeAll(player, Items.FISHLIKE_THING_6206, Container.BANK)
+ removeAll(player, Items.RAW_FISHLIKE_THING_6200)
+ removeAll(player, Items.RAW_FISHLIKE_THING_6200, Container.BANK)
+ removeAll(player, Items.RAW_FISHLIKE_THING_6204)
+ removeAll(player, Items.RAW_FISHLIKE_THING_6204, Container.BANK)
+ }
+
+ fun reward(player: Player) {
+ val experience = 650.0
+ if (getStatLevel(player, Skills.MAGIC) > 50 ) {
+ when (RandomFunction.getRandom(1)) {
+ 0 -> {
+ player.skills.addExperience(Skills.FISHING, experience)
+ openDialogue(player, EvilBobDialogue(rewardDialogue = true, rewardXpSkill = Skills.FISHING), NPCs.EVIL_BOB_2479)
+ }
+ 1 -> {
+ player.skills.addExperience(Skills.MAGIC, experience)
+ openDialogue(player, EvilBobDialogue(rewardDialogue = true, rewardXpSkill = Skills.MAGIC), NPCs.EVIL_BOB_2479)
+ }
+ }
+ } else {
+ player.skills.addExperience(Skills.FISHING, experience)
+ openDialogue(player, EvilBobDialogue(rewardDialogue = true, rewardXpSkill = Skills.FISHING), NPCs.EVIL_BOB_2479)
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt b/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt
new file mode 100644
index 000000000..db54e0db9
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilbob/ServantCutscene.kt
@@ -0,0 +1,150 @@
+package content.global.ame.events.evilbob
+
+import core.api.*
+import core.game.activity.Cutscene
+import core.game.node.entity.player.Player
+
+class ServantCutsceneN(player: Player) : Cutscene(player) {
+
+ override fun setup() {
+ setExit(player.location.transform(0, 0, 0))
+ loadRegion(13642)
+ }
+
+ override fun runStage(stage: Int) {
+ when (stage) {
+ 0 -> {
+ fadeToBlack()
+ timedUpdate(4)
+ }
+ 1 -> {
+ teleport(player, 29, 41)
+ moveCamera(30, 43) // +7 from statue
+ openInterface(player, 186)
+ timedUpdate(2)
+ }
+ 2 -> {
+ timedUpdate(2)
+ rotateCamera(30, 51, 300, 100) // the statue loc
+ fadeFromBlack()
+ }
+ 3 -> {
+ timedUpdate(9)
+ moveCamera(30, 46, 300, 2) // +4 from statue
+ }
+ 4 -> {
+ end{ player.locks.lockTeleport(1000000) }
+ closeInterface(player)
+ }
+ }
+ }
+}
+
+class ServantCutsceneS(player: Player) : Cutscene(player) {
+
+ override fun setup() {
+ setExit(player.location.transform(0, 0, 0))
+ loadRegion(13642)
+ }
+
+ override fun runStage(stage: Int) {
+ when (stage) {
+ 0 -> {
+ fadeToBlack()
+ timedUpdate(4)
+ }
+ 1 -> {
+ teleport(player, 29, 41)
+ moveCamera(29, 38) // +7 from statue
+ openInterface(player, 186)
+ timedUpdate(2)
+ }
+ 2 -> {
+ timedUpdate(2)
+ rotateCamera(29, 30, 300, 100) // the statue loc
+ fadeFromBlack()
+ }
+ 3 -> {
+ timedUpdate(9)
+ moveCamera(29, 35, 300, 2) // +4 from statue
+ }
+ 4 -> {
+ end{ player.locks.lockTeleport(1000000) }
+ closeInterface(player)
+ }
+ }
+ }
+}
+
+class ServantCutsceneE(player: Player) : Cutscene(player) {
+
+ override fun setup() {
+ setExit(player.location.transform(0, 0, 0))
+ loadRegion(13642)
+ }
+
+ override fun runStage(stage: Int) {
+ when (stage) {
+ 0 -> {
+ fadeToBlack()
+ timedUpdate(4)
+ }
+ 1 -> {
+ teleport(player, 29, 41)
+ moveCamera(35, 41) // +7 from statue
+ openInterface(player, 186)
+ timedUpdate(2)
+ }
+ 2 -> {
+ timedUpdate(2)
+ rotateCamera(43, 41, 300, 100) // the statue loc
+ fadeFromBlack()
+ }
+ 3 -> {
+ timedUpdate(9)
+ moveCamera(38, 41, 300, 2) // +4 from statue
+ }
+ 4 -> {
+ end{ player.locks.lockTeleport(1000000) }
+ closeInterface(player)
+ }
+ }
+ }
+}
+
+class ServantCutsceneW(player: Player) : Cutscene(player) {
+
+ override fun setup() {
+ setExit(player.location.transform(0, 0, 0))
+ loadRegion(13642)
+ }
+
+ override fun runStage(stage: Int) {
+ when (stage) {
+ 0 -> {
+ fadeToBlack()
+ timedUpdate(4)
+ }
+ 1 -> {
+ teleport(player, 29, 41)
+ moveCamera(25, 40) // +7 from statue
+ openInterface(player, 186)
+ timedUpdate(2)
+ }
+ 2 -> {
+ timedUpdate(2)
+ rotateCamera(18, 40, 300, 100) // the statue loc
+ fadeFromBlack()
+ }
+ 3 -> {
+ timedUpdate(9)
+ moveCamera(22, 40, 300, 2) // +4 from statue
+ }
+ 4 -> {
+ end{ player.locks.lockTeleport(1000000) }
+ closeInterface(player)
+ }
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/evilbob/ServantDialogue.kt b/Server/src/main/content/global/ame/events/evilbob/ServantDialogue.kt
new file mode 100644
index 000000000..c177f8dab
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilbob/ServantDialogue.kt
@@ -0,0 +1,58 @@
+package content.global.ame.events.evilbob
+
+import core.ServerConstants
+import core.api.getAttribute
+import core.api.setAttribute
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.node.entity.npc.NPC
+import core.tools.END_DIALOGUE
+import org.rs09.consts.NPCs
+
+class ServantDialogue : DialogueFile() {
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ npc = NPC(NPCs.SERVANT_2481)
+ when (stage) {
+ 0 -> {
+ if (getAttribute(player!!, EvilBobUtils.eventComplete, false)) {
+ playerl(FacialExpression.NEUTRAL, "Evil Bob has fallen asleep, come quickly!").also { stage = 2 }
+ } else if (!getAttribute(player!!, EvilBobUtils.servantHelpDialogueSeen, false)) {
+ playerl(FacialExpression.ANGRY, "I need help, I've been kidnapped by an evil cat!").also { stage = 200 }
+ } else if (getAttribute(player!!, EvilBobUtils.attentiveNewSpot, false)) {
+ npcl(FacialExpression.SAD, "Look... over t-t-there! That fishing spot c-c-contains the f-f-f-fish he likes.").also { stage = 1 }
+ } else npcl(FacialExpression.SAD, "F-f-f-fish... give him the f-f-f-fish he likes and he might f- f-f-fall asleep.").also { stage = END_DIALOGUE }
+
+ }
+ 1 -> {
+ end()
+ setAttribute(player!!, EvilBobUtils.attentiveNewSpot, false)
+ when (getAttribute(player!!, EvilBobUtils.assignedFishingZone, EvilBobUtils.northFishingZone.toString())) {
+ EvilBobUtils.northFishingZone.toString() -> ServantCutsceneN(player!!).start()
+ EvilBobUtils.southFishingZone.toString() -> ServantCutsceneS(player!!).start()
+ EvilBobUtils.eastFishingZone.toString() -> ServantCutsceneE(player!!).start()
+ EvilBobUtils.westFishingZone.toString() -> ServantCutsceneW(player!!).start()
+ }
+ }
+ 2 -> npcl(FacialExpression.SAD, "Come? Come where?").also { stage++ }
+ 3 -> playerl(FacialExpression.FRIENDLY, "Away from this place! To ${ServerConstants.SERVER_NAME} proper!").also { stage++ }
+ 4 -> npcl(FacialExpression.SAD, "You go, ${player!!.username}, I don't belong there... I belong here, in Scape2009. This is the only place I can ever go...").also { stage++ }
+ 5 -> options("But I love you!", "Oh alright then.").also { stage++ }
+ 6 -> when(buttonID) {
+ 1 -> playerl(FacialExpression.SAD, "But I love you!").also { stage = 100 }
+ 2 -> playerl(FacialExpression.NEUTRAL, "Oh, alright then, I'll be off! See you around!").also { stage = END_DIALOGUE}
+ }
+
+ 100 -> npcl(FacialExpression.NEUTRAL, "Our love can never be, sweet ${player!!.username}.").also { stage++ }
+ 101 -> npcl(FacialExpression.NEUTRAL, "Go now! Go, and don't look back!").also { stage = END_DIALOGUE }
+
+ 200 -> npcl(FacialExpression.SAD, "Meow! Errr... I c-c-c-can't help you... He'll kill us all!").also { stage++ }
+ 201 -> playerl(FacialExpression.ANGRY, "Now you listen to me! He's just a little cat! There must be something I can do!").also { stage++ }
+ 202 -> npcl(FacialExpression.SAD, "F-f-f-fish... give him the f-f-f-fish he likes and he might f- f-f-fall asleep.").also { stage++ }
+ 203 -> {
+ npcl(FacialExpression.SAD, "Look... over t-t-there! That fishing spot c-c-contains the f-f-f-fish he likes.").also { stage = 1 }
+ setAttribute(player!!, EvilBobUtils.servantHelpDialogueSeen, true)
+ }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/evilchicken/EvilChickenNPC.kt b/Server/src/main/content/global/ame/events/evilchicken/EvilChickenNPC.kt
new file mode 100644
index 000000000..5b065f567
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/evilchicken/EvilChickenNPC.kt
@@ -0,0 +1,43 @@
+package content.global.ame.events.evilchicken
+
+import core.api.getWorldTicks
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import core.game.node.item.GroundItemManager
+import core.game.node.item.Item
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+val ids = (2463..2468).toList()
+
+class EvilChickenNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(2463) {
+ val phrases = arrayOf("Bwuk","Bwuk bwuk bwuk","Flee from me, @name!","Begone, @name!","Bwaaaauuuk bwuk bwuk","MUAHAHAHAHAAA!")
+ override fun talkTo(npc: NPC) {}
+
+ override fun init() {
+ super.init()
+ val id = idForCombatLevel(ids, player)
+ this.transform(id)
+ this.attack(player)
+ sendChat(phrases.random().replace("@name",player.username.capitalize()))
+ this.isRespawn = false
+ }
+
+ override fun finalizeDeath(killer: Entity?) {
+ super.finalizeDeath(killer)
+ GroundItemManager.create(Item(Items.FEATHER_314, RandomFunction.random(50,300)), this.dropLocation, player)
+ }
+
+ override fun tick() {
+ if(!player.location.withinDistance(this.location,8)){
+ this.terminate()
+ }
+ if(getWorldTicks() % 10 == 0){
+ sendChat(phrases.random().replace("@name",player.username.capitalize()))
+ }
+ super.tick()
+ if(!player.viewport.currentPlane.npcs.contains(this)) this.clear()
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/freakyforester/FreakListeners.kt b/Server/src/main/content/global/ame/events/freakyforester/FreakListeners.kt
new file mode 100644
index 000000000..8754a8d08
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/freakyforester/FreakListeners.kt
@@ -0,0 +1,66 @@
+package content.global.ame.events.freakyforester
+
+import core.api.*
+import org.rs09.consts.NPCs
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.Entity
+import core.game.system.task.Pulse
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import org.rs09.consts.Items
+
+class FreakListeners : InteractionListener, MapArea {
+
+ private val exitPortal = Scenery.PORTAL_8972
+ private val freakNpc = NPCs.FREAKY_FORESTER_2458
+ private val pheasants = intArrayOf(NPCs.PHEASANT_2459,NPCs.PHEASANT_2460,NPCs.PHEASANT_2461,NPCs.PHEASANT_2462)
+ override fun defineListeners() {
+ on(freakNpc,IntType.NPC,"talk-to") { player, node ->
+ if (inBorders(player, FreakUtils.freakArea)) {
+ if (getAttribute(player, FreakUtils.freakTask, -1) == -1) FreakUtils.giveFreakTask(player)
+ openDialogue(player, FreakyForesterDialogue(), node.asNpc())
+ } else {
+ sendMessage(player, "They aren't interested in talking to you.")
+ }
+ return@on true
+ }
+
+ on(pheasants,IntType.NPC,"attack") { player, node ->
+ if (getAttribute(player,FreakUtils.freakComplete, false)) {
+ sendMessage(player,"You don't need to attack any more pheasants. You're allowed to leave.")
+ } else if (inInventory(player, Items.RAW_PHEASANT_6178) || inInventory(player, Items.RAW_PHEASANT_6179) || getAttribute(player, FreakUtils.pheasantKilled, false)){
+ sendMessage(player,"You don't need to attack any more pheasants.")
+ } else {
+ player.attack(node.asNpc())
+ }
+ return@on true
+ }
+
+ on(exitPortal,IntType.SCENERY,"enter") { player, _ ->
+ if (getAttribute(player,FreakUtils.freakComplete,false)) {
+ FreakUtils.cleanup(player)
+ submitWorldPulse(object : Pulse(2) {
+ override fun pulse(): Boolean {
+ FreakUtils.reward(player)
+ return true
+ }
+ })
+ return@on true
+ } else sendMessage(player,"A supernatural force prevents you from leaving.")
+ return@on true
+ }
+ }
+ override fun defineAreaBorders(): Array {
+ return arrayOf(FreakUtils.freakArea)
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.OFF_MAP)
+ }
+
+ override fun areaEnter(entity: Entity) {
+ entity.locks.lockTeleport(1000000)
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/freakyforester/FreakUtils.kt b/Server/src/main/content/global/ame/events/freakyforester/FreakUtils.kt
new file mode 100644
index 000000000..e247bfeb1
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/freakyforester/FreakUtils.kt
@@ -0,0 +1,59 @@
+package content.global.ame.events.freakyforester
+
+import content.global.ame.kidnapPlayer
+import content.global.ame.returnPlayer
+import core.api.*
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.tools.RandomFunction
+
+object FreakUtils{
+ const val freakNpc = NPCs.FREAKY_FORESTER_2458
+ const val freakTask = "/save:freakyf:task"
+ const val freakComplete = "/save:freakyf:complete"
+ const val pheasantKilled = "freakyf:killed"
+ val freakArea = ZoneBorders(2587, 4758, 2616, 4788)
+ fun giveFreakTask(player: Player) {
+ when(RandomFunction.getRandom(4)) {
+ 0 -> setAttribute(player, freakTask, NPCs.PHEASANT_2459)
+ 1 -> setAttribute(player, freakTask, NPCs.PHEASANT_2460)
+ 2 -> setAttribute(player, freakTask, NPCs.PHEASANT_2461)
+ 3 -> setAttribute(player, freakTask, NPCs.PHEASANT_2462)
+ else -> setAttribute(player, freakTask, NPCs.PHEASANT_2459)
+ }
+ player.dialogueInterpreter.open(FreakyForesterDialogue(), freakNpc)
+ }
+
+ fun teleport(player: Player) {
+ kidnapPlayer(player, Location.create(2599, 4777 ,0), TeleportManager.TeleportType.INSTANT)
+ }
+
+ fun cleanup(player: Player) {
+ returnPlayer(player)
+ removeAttributes(player, freakTask, freakComplete, pheasantKilled)
+ removeAll(player, Items.RAW_PHEASANT_6178)
+ removeAll(player, Items.RAW_PHEASANT_6178, Container.BANK)
+ removeAll(player, Items.RAW_PHEASANT_6179)
+ removeAll(player, Items.RAW_PHEASANT_6179, Container.BANK)
+ }
+
+ fun reward(player: Player){
+ val hasHat = hasAnItem(player, Items.LEDERHOSEN_HAT_6182).container != null
+ val hasTop = hasAnItem(player, Items.LEDERHOSEN_TOP_6180).container != null
+ val hasShort = hasAnItem(player, Items.LEDERHOSEN_SHORTS_6181).container != null
+ sendNPCDialogue(player, freakNpc, "You get a lederhosen item as a reward for your help, many thanks!")
+ when{
+ (!hasHat) -> addItemOrDrop(player, Items.LEDERHOSEN_HAT_6182, 1)
+ (!hasTop) -> addItemOrDrop(player, Items.LEDERHOSEN_TOP_6180, 1)
+ (!hasShort) -> addItemOrDrop(player, Items.LEDERHOSEN_SHORTS_6181, 1)
+ else ->{
+ sendNPCDialogue(player, freakNpc, "You get some money for your help, many thanks!")
+ addItemOrDrop(player, Items.COINS_995, 500)
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/freakyforester/FreakyForesterDialogue.kt b/Server/src/main/content/global/ame/events/freakyforester/FreakyForesterDialogue.kt
new file mode 100644
index 000000000..c9ff3cc0a
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/freakyforester/FreakyForesterDialogue.kt
@@ -0,0 +1,27 @@
+package content.global.ame.events.freakyforester
+
+import core.api.*
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.tools.END_DIALOGUE
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+class FreakyForesterDialogue : DialogueFile(){
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ if (removeItem(player!!, Items.RAW_PHEASANT_6179) && !getAttribute(player!!, FreakUtils.freakComplete, false)) {
+ npcl(FacialExpression.NEUTRAL, "That's not the right one.").also { stage = END_DIALOGUE }
+ setAttribute(player!!, FreakUtils.pheasantKilled, false)
+ } else if (removeItem(player!!, Items.RAW_PHEASANT_6178) || getAttribute(player!!, FreakUtils.freakComplete, false)) {
+ npcl(FacialExpression.NEUTRAL, "Thanks, ${player!!.username}, you may leave the area now.").also { stage = END_DIALOGUE }
+ sendChat(findNPC(FreakUtils.freakNpc)!!, "Thanks, ${player!!.username}, you may leave the area now.")
+ setAttribute(player!!, FreakUtils.freakComplete, true)
+ } else when (getAttribute(player!!, FreakUtils.freakTask, -1)) {
+ NPCs.PHEASANT_2459 -> sendNPCDialogue(player!!, FreakUtils.freakNpc, "Hey there ${player!!.username}. Can you kill the one tailed pheasant please. Bring me the raw pheasant when you're done.").also { stage = END_DIALOGUE }
+ NPCs.PHEASANT_2460 -> sendNPCDialogue(player!!, FreakUtils.freakNpc, "Hey there ${player!!.username}. Can you kill the two tailed pheasant please. Bring me the raw pheasant when you're done.").also { stage = END_DIALOGUE }
+ NPCs.PHEASANT_2461 -> sendNPCDialogue(player!!, FreakUtils.freakNpc, "Hey there ${player!!.username}. Can you kill the three tailed pheasant please. Bring me the raw pheasant when you're done.").also { stage = END_DIALOGUE }
+ NPCs.PHEASANT_2462 -> sendNPCDialogue(player!!, FreakUtils.freakNpc, "Hey there ${player!!.username}. Can you kill the four tailed pheasant please. Bring me the raw pheasant when you're done.").also { stage = END_DIALOGUE }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/freakyforester/FreakyForesterNPC.kt b/Server/src/main/content/global/ame/events/freakyforester/FreakyForesterNPC.kt
new file mode 100644
index 000000000..4b0366263
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/freakyforester/FreakyForesterNPC.kt
@@ -0,0 +1,43 @@
+package content.global.ame.events.freakyforester
+
+import content.global.ame.RandomEventNPC
+import core.api.*
+import org.rs09.consts.NPCs
+import core.api.utils.WeightBasedTable
+import core.game.interaction.QueueStrength
+import core.game.node.entity.npc.NPC
+import core.game.system.timer.impl.AntiMacro
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Sounds
+
+class FreakyForesterNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.FREAKY_FORESTER_2458) {
+
+ override fun init() {
+ super.init()
+ sendChat("Ah, ${player.username}, just the person I need!")
+ queueScript(player, 4, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(308, 100, 50), player.location)
+ animate(player,714)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ FreakUtils.teleport(player)
+ FreakUtils.giveFreakTask(player)
+ AntiMacro.terminateEventNpc(player)
+ openDialogue(player, FreakyForesterDialogue(), FreakUtils.freakNpc)
+ resetAnimator(player)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+
+ override fun talkTo(npc: NPC) {
+ player.dialogueInterpreter.open(FreakyForesterDialogue(),npc)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/freakyforester/PheasantBehavior.kt b/Server/src/main/content/global/ame/events/freakyforester/PheasantBehavior.kt
new file mode 100644
index 000000000..ad49212d2
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/freakyforester/PheasantBehavior.kt
@@ -0,0 +1,37 @@
+package content.global.ame.events.freakyforester
+
+import core.api.getAttribute
+import core.api.sendMessage
+import core.api.sendNPCDialogue
+import core.api.setAttribute
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+class PheasantBehavior : NPCBehavior(NPCs.PHEASANT_2459, NPCs.PHEASANT_2460, NPCs.PHEASANT_2461, NPCs.PHEASANT_2462) {
+ override fun onDropTableRolled(self: NPC, killer: Entity, drops: ArrayList- ) {
+ val assignedPheasant = getAttribute(killer, FreakUtils.freakTask, -1)
+ if (assignedPheasant == -1) return
+ drops.removeLast()
+ if (assignedPheasant == self.id) {
+ drops.add(Item (Items.RAW_PHEASANT_6178))
+ } else {
+ drops.add(Item (Items.RAW_PHEASANT_6179))
+ }
+ setAttribute(killer, FreakUtils.pheasantKilled, true)
+ }
+
+ override fun beforeDamageReceived(self: NPC, attacker: Entity, state: BattleState) {
+ state.estimatedHit = 5
+ state.secondaryHit = 0
+ }
+
+ override fun getXpMultiplier(self: NPC, attacker: Entity): Double {
+ return 0.0
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/genie/GenieDialogue.kt b/Server/src/main/content/global/ame/events/genie/GenieDialogue.kt
new file mode 100644
index 000000000..7bcaa3c4d
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/genie/GenieDialogue.kt
@@ -0,0 +1,20 @@
+package content.global.ame.events.genie
+
+import core.api.*
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.DialogueFile
+import core.game.system.timer.impl.AntiMacro
+import org.rs09.consts.Items
+
+class GenieDialogue() : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ 0 -> npcl(FacialExpression.NEUTRAL, "Ah, so you are there, ${player!!.username.capitalize()}. I'm so glad you summoned me. Please take this lamp and make your wish."). also { stage++ }
+ 1 -> {
+ end()
+ addItemOrDrop(player!!, Items.LAMP_2528)
+ AntiMacro.terminateEventNpc(player!!)
+ }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/genie/GenieNPC.kt b/Server/src/main/content/global/ame/events/genie/GenieNPC.kt
new file mode 100644
index 000000000..6f3cf39a1
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/genie/GenieNPC.kt
@@ -0,0 +1,30 @@
+package content.global.ame.events.genie
+
+import core.game.node.entity.npc.NPC
+import core.tools.RandomFunction
+import org.rs09.consts.NPCs
+import content.global.ame.RandomEventNPC
+import core.api.playAudio
+import core.api.utils.WeightBasedTable
+import org.rs09.consts.Sounds
+
+class GenieNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.GENIE_409) {
+ val phrases = arrayOf("Greetings, @name!","Ehem... Master @name?","Are you there, Master @name?","No one ignores me!")
+
+ override fun tick() {
+ if(RandomFunction.random(1,15) == 5){
+ sendChat(phrases.random().replace("@name",player.username.capitalize()))
+ }
+ super.tick()
+ }
+
+ override fun init() {
+ super.init()
+ playAudio(player, Sounds.GENIE_APPEAR_2301)
+ sendChat(phrases.random().replace("@name",player.username.capitalize()))
+ }
+
+ override fun talkTo(npc: NPC) {
+ player.dialogueInterpreter.open(GenieDialogue(),npc)
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/maze/MazeInterface.kt b/Server/src/main/content/global/ame/events/maze/MazeInterface.kt
new file mode 100644
index 000000000..108d456ca
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/maze/MazeInterface.kt
@@ -0,0 +1,277 @@
+package content.global.ame.events.maze
+
+import content.global.ame.returnPlayer
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.api.utils.WeightedItem
+import core.game.event.EventHook
+import core.game.event.TickEvent
+import core.game.global.action.DoorActionHandler
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+import core.game.system.task.Pulse
+import core.game.world.GameWorld.Pulser
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.*
+
+class MazeInterface : InteractionListener, EventHook
, MapArea {
+ companion object {
+ const val MAZE_TIMER_INTERFACE = Components.MAZETIMER_209
+ const val MAZE_TIMER_VARP = 531 // Interface 209 child 2 config: [531, 0]
+ const val MAZE_ATTRIBUTE_TICKS_LEFT = "maze:percent-ticks-left"
+ const val MAZE_ATTRIBUTE_CHESTS_OPEN = "/save:maze:chests-opened"
+
+ val STARTING_POINTS = arrayOf(
+ Location(2928, 4553, 0),
+ Location(2917, 4553, 0),
+ Location(2908, 4555, 0),
+ Location(2891, 4589, 0),
+ Location(2891, 4595, 0),
+ Location(2891, 4595, 0),
+ Location(2926, 4597, 0),
+ Location(2931, 4597, 0),
+ // There's 2 more, but there isn't a door for them...
+ )
+
+ val REWARD_ITEM = intArrayOf(
+ Items.COINS_995,
+ Items.FEATHER_314,
+ Items.IRON_ARROW_884,
+ Items.CHAOS_RUNE_562,
+ Items.STEEL_ARROW_886,
+ Items.DEATH_RUNE_560,
+ Items.COAL_454,
+ Items.NATURE_RUNE_561,
+ Items.MITHRIL_ORE_448
+ )
+
+ val ITEM_DIVISOR = arrayOf(
+ 1.0,
+ 2.0,
+ 3.0,
+ 9.0,
+ 12.0,
+ 18.0,
+ 45.0,
+ 162.0,
+ 180.0,
+ )
+
+ val CHEST_REWARDS = WeightBasedTable.create(
+ WeightedItem(Items.AIR_RUNE_556,15,15,1.0),
+ WeightedItem(Items.WATER_RUNE_555,10,10,1.0),
+ WeightedItem(Items.EARTH_RUNE_557,10,10,1.0),
+ WeightedItem(Items.FIRE_RUNE_554,10,10,1.0),
+ WeightedItem(Items.BRONZE_ARROW_882,20,20,1.0),
+ WeightedItem(Items.BRONZE_BOLTS_877,10,10,1.0),
+ WeightedItem(Items.IRON_ARROW_884,15,15,1.0),
+ WeightedItem(Items.ATTACK_POTION2_123,1,1,1.0),
+ WeightedItem(Items.STRENGTH_POTION2_117,1,1,1.0),
+ WeightedItem(Items.DEFENCE_POTION2_135,1,1,1.0),
+ )
+
+ fun initMaze(player: Player) {
+ setAttribute(player, MAZE_ATTRIBUTE_TICKS_LEFT, 300)
+ setVarp(player, MAZE_TIMER_VARP, (getAttribute(player, MAZE_ATTRIBUTE_TICKS_LEFT, 0) / 3),false)
+ openOverlay(player, MAZE_TIMER_INTERFACE)
+ sendMessage(player, "You need to reach the maze center, then you'll be returned to where you were.")
+ sendNPCDialogue(player, NPCs.MYSTERIOUS_OLD_MAN_410, "You need to reach the maze center, then you'll be returned to where you were.")
+ }
+
+ fun calculateLoot(player: Player) {
+ val randomNumber = (0..8).random()
+ val totalLevel = player.getSkills().totalLevel.toDouble()
+ val rewardPotential = getAttribute(player, MAZE_ATTRIBUTE_TICKS_LEFT, 0).toDouble() / 300.0
+ val itemDivisor = ITEM_DIVISOR[randomNumber]
+ val itemQuantity = (totalLevel * rewardPotential * 3.33) / itemDivisor
+ // sendMessage(player, "Maze reward calculation: $totalLevel * $rewardPotential * 3.33 / $itemDivisor = $itemQuantity")
+ if (itemQuantity.toInt() > 0) {
+ addItemOrDrop(player, REWARD_ITEM[randomNumber], itemQuantity.toInt())
+ }
+ }
+
+ /**
+ * Chest Location to rotation mapping.
+ * This is needed as it is impossible to obtain the underlying chest scenery for the rotation.
+ * 0: Facing North, 1: Facing East, 2: Facing South, 3: Facing West
+ */
+ val chestLocationRotationMap = mapOf(
+ Location(2930, 4595, 0).toString() to 2,
+ Location(2924, 4572, 0).toString() to 2,
+ Location(2925, 4573, 0).toString() to 0,
+ Location(2900, 4578, 0).toString() to 2,
+ Location(2901, 4560, 0).toString() to 1,
+ Location(2890, 4599, 0).toString() to 2,
+ Location(2896, 4591, 0).toString() to 2,
+ Location(2895, 4592, 0).toString() to 1,
+ Location(2901, 4560, 0).toString() to 3,
+ Location(2918, 4590, 0).toString() to 1,
+ Location(2917, 4590, 0).toString() to 3,
+ )
+
+ /**
+ * Chest Interaction workaround
+ *
+ * The issue here is that the walls(3626) of the Maze are overlapping some(not all) chest sceneries.
+ *
+ * The types for the wallScenery:
+ * Type 0 - flat panel |
+ * Type 2 - right angle panel with rotation 0:r 1:7 2:> 3:L
+ * Type 3 - corner post . for angle edges of walls
+ */
+ fun overrideScenery(wallScenery: core.game.node.scenery.Scenery, chestSceneryId: Int): core.game.node.scenery.Scenery {
+ if (wallScenery.id == chestSceneryId) {
+ replaceScenery(wallScenery, Scenery.CHEST_3636, 30)
+ wallScenery.isActive = true
+ return wallScenery // Return the chest scenery as the wallScenery isn't there.
+ }
+
+ addScenery(Scenery.CHEST_3636, wallScenery.location, chestLocationRotationMap[wallScenery.location.toString()] ?: 0, 10)
+ addScenery(wallScenery)
+ // replaceScenery(newChestScenery, Scenery.CHEST_3636, 3) // didn't work for an underlying scenery
+ // I did a world pulse since everyone will get to see the chest open.
+ Pulser.submit(object : Pulse(30) {
+ override fun pulse(): Boolean {
+ addScenery(Scenery.CHEST_3635, wallScenery.location, chestLocationRotationMap[wallScenery.location.toString()] ?: 0, 10)
+ addScenery(wallScenery)
+ return true
+ }
+ })
+ // Return the chest scenery to replace PacketProcessor so that MISMATCH will not happen.
+ return core.game.node.scenery.Scenery(
+ chestSceneryId,
+ wallScenery.location,
+ chestLocationRotationMap[wallScenery.location.toString()] ?: 0
+ )
+ }
+ }
+
+ override fun defineListeners() {
+
+ // This somehow doesn't trigger as the scenery.id != objId (3626 != 3635)
+ on(Scenery.CHEST_3635, IntType.SCENERY, "open") { player, node ->
+ if (getAttribute(player, MAZE_ATTRIBUTE_TICKS_LEFT, 0) > 0 && getAttribute(player, MAZE_ATTRIBUTE_CHESTS_OPEN, 0) < 10) {
+ animate(player, 536)
+ // val actualScenery = RegionManager.getObject(node.location.z, node.location.x, node.location.y, 3626)
+ val tableRoll = CHEST_REWARDS.roll()
+ addItemOrBank(player, tableRoll[0].id)
+ when (tableRoll[0].id){
+ Items.AIR_RUNE_556 -> sendItemDialogue(player, Items.AIR_RUNE_556, "You've found some air runes!")
+ Items.WATER_RUNE_555 -> sendItemDialogue(player, Items.WATER_RUNE_555, "You've found some water runes!")
+ Items.EARTH_RUNE_557 -> sendItemDialogue(player, Items.EARTH_RUNE_557, "You've found some earth runes!")
+ Items.FIRE_RUNE_554 -> sendItemDialogue(player, Items.FIRE_RUNE_554, "You've found some fire runes!")
+ Items.BRONZE_ARROW_882 -> sendItemDialogue(player, Items.BRONZE_ARROW_882, "You've found some bronze arrows!")
+ Items.BRONZE_BOLTS_877 -> sendItemDialogue(player, Items.BRONZE_BOLTS_877, "You've found some bronze bolts!")
+ Items.IRON_ARROW_884 -> sendItemDialogue(player, Items.IRON_ARROW_884, "You've found some iron arrows!")
+ Items.ATTACK_POTION2_123 -> sendItemDialogue(player, Items.ATTACK_POTION2_123, "You've found an attack potion!")
+ Items.STRENGTH_POTION2_117 -> sendItemDialogue(player, Items.STRENGTH_POTION2_117, "You've found a strength potion!")
+ Items.DEFENCE_POTION2_135 -> sendItemDialogue(player, Items.DEFENCE_POTION2_135, "You've found a defence potion!")
+ }
+ setAttribute(player, MAZE_ATTRIBUTE_CHESTS_OPEN, getAttribute(player, MAZE_ATTRIBUTE_CHESTS_OPEN, 0))
+ } else {
+ sendMessage(player,"You find nothing of interest.")
+ }
+ return@on true
+ }
+
+ on(Scenery.CHEST_3636, SCENERY, "search") { player, node ->
+ sendMessage(player,"You find nothing of interest.")
+ return@on true
+ }
+
+ on(Scenery.WALL_3626, IntType.SCENERY, "open") { player, node ->
+ sendMessage(player, "That bit doesn't open.") // 0xBrLo9woIY
+ return@on true
+ }
+
+ on(Scenery.WALL_3628, IntType.SCENERY, "open") { player, node ->
+ // Door opening workaround
+ // Ignore 3629(WALL_3629) and 3630(WALL_3630) in handleAutowalkDoor ignoreSecondDoor
+ DoorActionHandler.handleAutowalkDoor(player, node as core.game.node.scenery.Scenery)
+ return@on true
+ }
+
+ on(Scenery.STRANGE_SHRINE_3634, IntType.SCENERY, "touch") { player, node ->
+ player.unhook(this)
+ closeOverlay(player)
+ queueScript(player, 0, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(86, 0, 3), player.location)
+ animate(player,862)
+ return@queueScript delayScript(player, 6)
+ }
+ 1 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(1576, 0, 0), player.location)
+ animate(player,8939)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 3)
+ }
+ 2 -> {
+ returnPlayer(player)
+ sendGraphics(Graphics(1577, 0, 0), player.location)
+ animate(player,8941)
+ closeOverlay(player)
+ return@queueScript delayScript(player, 1)
+ }
+ 3 -> {
+ calculateLoot(player)
+ removeAttribute(player, MAZE_ATTRIBUTE_TICKS_LEFT)
+ removeAttribute(player, MAZE_ATTRIBUTE_CHESTS_OPEN)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+
+ return@on true
+ }
+ }
+
+ override fun process(entity: Entity, event: TickEvent) {
+ if (entity is Player) {
+ if (getAttribute(entity, MAZE_ATTRIBUTE_TICKS_LEFT, 0) > 0) {
+ setAttribute(entity, MAZE_ATTRIBUTE_TICKS_LEFT, getAttribute(entity, MAZE_ATTRIBUTE_TICKS_LEFT, 0) - 1)
+ }
+ setVarp(entity, MAZE_TIMER_VARP, (getAttribute(entity, MAZE_ATTRIBUTE_TICKS_LEFT, 0) / 3), false)
+ }
+ }
+
+ override fun defineAreaBorders(): Array {
+ return arrayOf(getRegionBorders(11591))
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.TELEPORT, ZoneRestriction.OFF_MAP)
+ }
+
+ override fun areaEnter(entity: Entity) {
+ if (entity is Player) {
+ sendMessage(entity, "Head for the center of the maze.")
+ entity.interfaceManager.removeTabs(0, 1, 2, 3, 4, 5, 6, 12)
+ openOverlay(entity, MAZE_TIMER_INTERFACE)
+ }
+ }
+
+ override fun areaLeave(entity: Entity, logout: Boolean) {
+ if (entity is Player) {
+ entity.interfaceManager.restoreTabs()
+ closeOverlay(entity)
+ entity.unhook(this)
+ }
+ }
+ override fun entityStep(entity: Entity, location: Location, lastLocation: Location) {
+ if (entity is Player) {
+ entity.hook(Event.Tick, this)
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/maze/MazeNPC.kt b/Server/src/main/content/global/ame/events/maze/MazeNPC.kt
new file mode 100644
index 000000000..e4befe00e
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/maze/MazeNPC.kt
@@ -0,0 +1,57 @@
+package content.global.ame.events.maze
+
+import content.global.ame.RandomEventNPC
+import content.global.ame.kidnapPlayer
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.interaction.QueueStrength
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.link.TeleportManager
+import core.game.system.timer.impl.AntiMacro
+import core.game.world.map.Location
+import core.game.world.map.build.DynamicRegion
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+class MazeNPC(var type: String = "", override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.MYSTERIOUS_OLD_MAN_410) {
+
+ override fun init() {
+ super.init()
+ sendChat("Aha, you'll do ${player.username}!")
+ face(player)
+ queueScript(player, 4, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(1576, 0, 0), player.location)
+ animate(player,8939)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ MazeInterface.initMaze(player)
+ // Note: This event is NOT instanced:
+ // Sources:
+ // https://youtu.be/2gpzn9oNdy0 (2007)
+ // https://youtu.be/Tni1HURgnxg (2008)
+ // https://youtu.be/igdwDZOv9LU (2008)
+ // https://youtu.be/0oBCkLArUmc (2011 - even with personal Mysterious Old Man) - "Sorry, this is not the old man you are looking for."
+ // https://youtu.be/FMuKZm-Ikgs (2011)
+ // val region = DynamicRegion.create(11591)
+ kidnapPlayer(player, MazeInterface.STARTING_POINTS.random(), TeleportManager.TeleportType.INSTANT) // 10 random spots
+ AntiMacro.terminateEventNpc(player)
+ sendGraphics(Graphics(1577, 0, 0), player.location)
+ animate(player,8941)
+ removeAttribute(player, MazeInterface.MAZE_ATTRIBUTE_CHESTS_OPEN)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+
+ override fun talkTo(npc: NPC) {
+ // Do nothing.
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/pillory/PilloryInterface.kt b/Server/src/main/content/global/ame/events/pillory/PilloryInterface.kt
new file mode 100644
index 000000000..f48fc76f4
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/pillory/PilloryInterface.kt
@@ -0,0 +1,219 @@
+package content.global.ame.events.pillory
+
+import content.global.ame.RandomEvents
+import content.global.ame.returnPlayer
+import core.api.*
+import core.game.dialogue.FacialExpression
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.interaction.InterfaceListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.Entity
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.NPCs
+import org.rs09.consts.Scenery
+import org.rs09.consts.Sounds
+
+/**
+ * Pillory Unlocking Interface PILLORY_189
+ *
+ * https://www.youtube.com/watch?v=caWn7pE2mkE
+ * https://www.youtube.com/watch?v=TMVR5cZZwZ0
+ * https://www.youtube.com/watch?v=Ym9LCDP-Q74
+ * https://www.youtube.com/watch?v=_vn0QZTtI6U (Failure)
+ * https://www.youtube.com/watch?v=zmXDikQIua4
+ *
+ * Child IDs
+ * 4 - Rotating Lock Model
+ * 5 6 7 - Swinging Keys Models
+ * 8 9 10 - Buttons for the Swinging Keys Models
+ * 11 12 13 14 15 16 - Padlocks at the Top
+ * 17 18 19 20 21 22 - Padlocks stars? Model 15272, Anim 4135
+ *
+ * Model IDs
+ * Using the amazeballs ::listifmodels
+ * 9749, 9750, 9751, 9752 - Swinging Keys Models
+ * 9753, 9754, 9755, 9756 - Rotating Lock Models
+ * 9757 9758 locked unlock
+ */
+class PilloryInterface : InterfaceListener, InteractionListener, MapArea {
+ companion object {
+ const val PILLORY_LOCK_INTERFACE = 189
+ const val PILLORY_ATTRIBUTE_EVENT_KEYS = "pillory:event-keys"
+ const val PILLORY_ATTRIBUTE_EVENT_LOCK = "pillory:event-lock"
+ const val PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT = "/save:pillory:target-correct"
+ const val PILLORY_ATTRIBUTE_CORRECT_COUNTER = "/save:pillory:num-correct"
+
+ val LOCATIONS = arrayOf(
+ // Varrock Cages
+ Location(3226, 3407, 0),
+ Location(3228, 3407, 0),
+ Location(3230, 3407, 0),
+ // Seers Village Cages
+ Location(2681, 3489, 0),
+ Location(2683, 3489, 0),
+ Location(2685, 3489, 0),
+ // Yannile Cages
+ Location(2604, 3105, 0),
+ Location(2606, 3105, 0),
+ Location(2608, 3105, 0),
+ )
+
+ fun initPillory(player: Player) {
+ setAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, 3)
+ setAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 0)
+ player.dialogueInterpreter.sendPlainMessage(true, "", "Solve the pillory puzzle to be returned to where you came from.")
+ }
+
+ fun randomPillory(player: Player) {
+ // Shuffle all 4 kinds of keys in, pick 3 for the keys, pick 1 from the 3 as the lock.
+ val keys = (0..3).toIntArray().let{ keys -> keys.shuffle(); return@let keys }
+ val lock = intArrayOf(keys[1], keys[2], keys[3]).random() // Last 3 as there are 4 keys. key[0] is fallback.
+
+ setAttribute(player, PILLORY_ATTRIBUTE_EVENT_KEYS, keys)
+ setAttribute(player, PILLORY_ATTRIBUTE_EVENT_LOCK, lock)
+
+ player.packetDispatch.sendModelOnInterface(9753 + lock, PILLORY_LOCK_INTERFACE, 4, 0)
+ player.packetDispatch.sendModelOnInterface(9749 + keys[1], PILLORY_LOCK_INTERFACE, 5, 0)
+ player.packetDispatch.sendModelOnInterface(9749 + keys[2], PILLORY_LOCK_INTERFACE, 6, 0)
+ player.packetDispatch.sendModelOnInterface(9749 + keys[3], PILLORY_LOCK_INTERFACE, 7, 0)
+
+ val numberToGetCorrect = getAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, 3)
+ val correctCount = getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 0)
+ for (i in 1.. 6) {
+ // Set if lock is red or green.
+ if (i <= correctCount) {
+ player.packetDispatch.sendModelOnInterface(9758, PILLORY_LOCK_INTERFACE, 10 + i, 0)
+ } else {
+ player.packetDispatch.sendModelOnInterface(9757, PILLORY_LOCK_INTERFACE, 10 + i, 0)
+ }
+ // Set if hide or show lock.
+ player.packetDispatch.sendInterfaceConfig(PILLORY_LOCK_INTERFACE, 10 + i, i > numberToGetCorrect)
+ }
+ }
+
+ fun selectedKey(player: Player, buttonID: Int) {
+ val keys = getAttribute(player, PILLORY_ATTRIBUTE_EVENT_KEYS, intArrayOf(0, 0, 0))
+ val lock = getAttribute(player, PILLORY_ATTRIBUTE_EVENT_LOCK, -1)
+ if (keys[buttonID] == lock) {
+ // CORRECT ANSWER
+ setAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 0) + 1)
+ if (getAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, 3) <= getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, -1)) {
+ player.dialogueInterpreter.sendPlainMessage(true, "", "You've escaped!")
+ sendMessage(player, "You've escaped!")
+ removeAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT)
+ removeAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER)
+ closeInterface(player)
+ queueScript(player, 0, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(1576, 0, 0), player.location)
+ animate(player,8939)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ val loot = RandomEvents.CERTER.loot!!.roll(player)[0]
+ addItemOrDrop(player, loot.id, loot.amount)
+ returnPlayer(player)
+ sendGraphics(Graphics(1577, 0, 0), player.location)
+ animate(player,8941)
+ closeInterface(player)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ return
+ }
+ randomPillory(player)
+ player.dialogueInterpreter.sendPlainMessage(
+ true,
+ "",
+ "Correct!",
+ "" + getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 0) + " down, " +
+ (getAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, 3) - getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 0)) + " to go!")
+ // Animation for the star, but it doesn't work.
+ player.packetDispatch.sendInterfaceConfig(PILLORY_LOCK_INTERFACE, 16 + getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 1), false)
+ sendAnimationOnInterface(player, 4135, PILLORY_LOCK_INTERFACE, 16 + getAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 1))
+ } else {
+ // WRONG ANSWER
+ player.dialogueInterpreter.close()
+ player.dialogueInterpreter.sendDialogues(NPCs.TRAMP_2794 , FacialExpression.OLD_ANGRY1, "Bah, that's not right.","Use the key that matches the hole", "in the spinning lock.")
+ if (getAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, 0) < 6) {
+ setAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, getAttribute(player, PILLORY_ATTRIBUTE_NEEDED_TO_GET_CORRECT, 0) + 1)
+ }
+ setAttribute(player, PILLORY_ATTRIBUTE_CORRECT_COUNTER, 0)
+ closeInterface(player)
+ }
+ }
+ }
+
+ override fun defineInterfaceListeners() {
+ on(PILLORY_LOCK_INTERFACE){ player, component, opcode, buttonID, slot, itemID ->
+ when (buttonID) {
+ 8 -> selectedKey(player, 1)
+ 9 -> selectedKey(player, 2)
+ 10 -> selectedKey(player, 3)
+ }
+ return@on true
+ }
+
+ onOpen(PILLORY_LOCK_INTERFACE){ player, component ->
+ return@onOpen true
+ }
+ }
+
+ override fun defineListeners() {
+ on(Scenery.CAGE_6836, IntType.SCENERY, "unlock") { player, node ->
+ if (player.location in LOCATIONS) { // When you aren't inside.
+ randomPillory(player)
+ openInterface(player, PILLORY_LOCK_INTERFACE)
+ player.dialogueInterpreter.sendPlainMessage(true, "", "Pick the swinging key that matches the", "hole in the spinning lock.")
+ } else {
+ sendMessage(player, "You can't unlock the pillory, you'll let all the prisoners out!")
+ }
+ return@on true
+ }
+ }
+
+ override fun defineAreaBorders(): Array {
+ return arrayOf(
+ // Varrock Cages
+ ZoneBorders(3226, 3407, 3226, 3407),
+ ZoneBorders(3228, 3407, 3228, 3407),
+ ZoneBorders(3230, 3407, 3230, 3407),
+ // Seers Village Cages
+ ZoneBorders(2681, 3489, 2681, 3489),
+ ZoneBorders(2683, 3489, 2683, 3489),
+ ZoneBorders(2685, 3489, 2685, 3489),
+ // Yannile Cages
+ ZoneBorders(2604, 3105, 2604, 3105),
+ ZoneBorders(2606, 3105, 2606, 3105),
+ ZoneBorders(2608, 3105, 2608, 3105),
+ )
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.TELEPORT, ZoneRestriction.OFF_MAP)
+ }
+
+ override fun areaEnter(entity: Entity) {
+ if (entity is Player) {
+ entity.interfaceManager.removeTabs(0, 1, 2, 3, 4, 5, 6, 12)
+ }
+ }
+
+ override fun areaLeave(entity: Entity, logout: Boolean) {
+ if (entity is Player) {
+ entity.interfaceManager.restoreTabs()
+ }
+ }
+
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/pillory/PilloryNPC.kt b/Server/src/main/content/global/ame/events/pillory/PilloryNPC.kt
new file mode 100644
index 000000000..f833d9ce2
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/pillory/PilloryNPC.kt
@@ -0,0 +1,50 @@
+package content.global.ame.events.pillory
+
+import content.global.ame.RandomEventNPC
+import content.global.ame.kidnapPlayer
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.interaction.QueueStrength
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.link.TeleportManager
+import core.game.system.timer.impl.AntiMacro
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+// "::revent [-p] player name [-e event name]"
+class PilloryNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.PILLORY_GUARD_2791) {
+
+ override fun init() {
+ super.init()
+ sendChat("${player.username}, you're under arrest!")
+ face(player)
+ player.dialogueInterpreter.sendPlainMessage(true, "", "Solve the pillory puzzle to be returned to where you came from.")
+ queueScript(player, 4, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(1576, 0, 0), player.location)
+ animate(player,8939)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ PilloryInterface.initPillory(player)
+ val dest = PilloryInterface.LOCATIONS.random() //9 random spots!
+ kidnapPlayer(player, dest, TeleportManager.TeleportType.INSTANT)
+ AntiMacro.terminateEventNpc(player)
+ sendGraphics(Graphics(1577, 0, 0), player.location)
+ animate(player,8941)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+
+ override fun talkTo(npc: NPC) {
+ //player.dialogueInterpreter.open(FreakyForesterDialogue(),npc)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/quizmaster/QuizMasterBorders.kt b/Server/src/main/content/global/ame/events/quizmaster/QuizMasterBorders.kt
new file mode 100644
index 000000000..860d4d7dc
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/quizmaster/QuizMasterBorders.kt
@@ -0,0 +1,37 @@
+package content.global.ame.events.quizmaster
+
+import core.api.*
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+import org.rs09.consts.NPCs
+
+class QuizMasterBorders : MapArea {
+ override fun defineAreaBorders(): Array {
+ return arrayOf(getRegionBorders(7754))
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.TELEPORT, ZoneRestriction.OFF_MAP)
+ }
+
+ override fun areaEnter(entity: Entity) {
+ if (entity is Player) {
+ entity.interfaceManager.removeTabs(0, 1, 2, 3, 4, 5, 6, 12)
+ face(entity, Location(1952, 4768, 1))
+ animate(entity,2378)
+ openDialogue(entity, QuizMasterDialogueFile(), NPC(NPCs.QUIZ_MASTER_2477))
+ }
+ }
+
+ override fun areaLeave(entity: Entity, logout: Boolean) {
+ if (entity is Player) {
+ entity.interfaceManager.restoreTabs()
+ //closeOverlay(entity)
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/quizmaster/QuizMasterDialogueFile.kt b/Server/src/main/content/global/ame/events/quizmaster/QuizMasterDialogueFile.kt
new file mode 100644
index 000000000..4790a8550
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/quizmaster/QuizMasterDialogueFile.kt
@@ -0,0 +1,129 @@
+package content.global.ame.events.quizmaster
+
+import content.global.ame.returnPlayer
+import core.ServerConstants
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.api.utils.WeightedItem
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.tools.END_DIALOGUE
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+
+class QuizMasterDialogueFile : DialogueFile() {
+ companion object {
+ const val QUIZMASTER_INTERFACE = Components.MACRO_QUIZSHOW_191
+ const val QUIZMASTER_ATTRIBUTE_QUESTIONS_CORRECT = "/save:quizmaster:questions-correct"
+ const val QUIZMASTER_ATTRIBUTE_RANDOM_ANSWER = "quizmaster:random-answer"
+
+ /*
+ // Golden Models:
+ 8828 ADAMANT_BATTLEAXE_1371
+ 8829 SALMON_329
+ 8830 TROUT_333
+ 8831 NECKLACE
+ 8832 WOODEN_SHIELD_1171
+ 8833 BRONZE_MED_HELM_1139
+ 8834 RING
+ 8835 SECATEURS_5329
+ 8836 BRONZE_SWORD_1277
+ 8837 GARDENING_TROWEL_5325
+ */
+ val sets = arrayOf(
+ intArrayOf(8828, 8829, 8829),
+ intArrayOf(8831, 8837, 8835),
+ intArrayOf(8830, 8832, 8833),
+ intArrayOf(8835, 8834, 8831),
+ intArrayOf(8837, 8836, 8828),
+ )
+
+ fun randomQuestion(player: Player): Int {
+ val randomSet = intArrayOf(*sets.random())
+ val answer = intArrayOf(*randomSet)[0]
+ randomSet.shuffle()
+ val correctButton = randomSet.indexOf(answer) + 2 // buttons are 3,4,5
+
+ player.packetDispatch.sendModelOnInterface(randomSet[0], QUIZMASTER_INTERFACE, 6, 512)
+ player.packetDispatch.sendModelOnInterface(randomSet[1], QUIZMASTER_INTERFACE, 7, 512)
+ player.packetDispatch.sendModelOnInterface(randomSet[2], QUIZMASTER_INTERFACE, 8, 512)
+ player.packetDispatch.sendAngleOnInterface(QUIZMASTER_INTERFACE, 6, 512,0,0)
+ player.packetDispatch.sendAngleOnInterface(QUIZMASTER_INTERFACE, 7, 512,0,0)
+ player.packetDispatch.sendAngleOnInterface(QUIZMASTER_INTERFACE, 8, 512,0,0)
+
+ return correctButton
+ }
+
+ // Random Item should be "Mystery Box", but the current MYSTERY_BOX_6199 is already inauthentically used by Giftmas.
+ val tableRoll = WeightBasedTable.create(
+ WeightedItem(Items.LAMP_2528, 1, 1, 1.0, false),
+ WeightedItem(Items.CABBAGE_1965, 1, 1, 1.0, false),
+ WeightedItem(Items.DIAMOND_1601, 1, 1, 1.0, false),
+ WeightedItem(Items.BUCKET_1925, 1, 1, 1.0, false),
+ WeightedItem(Items.FLIER_956, 1, 1, 1.0, false),
+ WeightedItem(Items.OLD_BOOT_685, 1, 1, 1.0, false),
+ WeightedItem(Items.BODY_RUNE_559, 1, 1, 1.0, false),
+ WeightedItem(Items.ONION_1957, 1, 1, 1.0, false),
+ WeightedItem(Items.MITHRIL_SCIMITAR_1329, 1, 1, 1.0, false),
+ WeightedItem(Items.CASKET_405, 1, 1, 1.0, false),
+ WeightedItem(Items.STEEL_PLATEBODY_1119, 1, 1, 1.0, false),
+ WeightedItem(Items.NATURE_RUNE_561, 20, 20, 1.0, false),
+ )
+ }
+
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ 0 -> npc(FacialExpression.FRIENDLY,"WELCOME to the GREATEST QUIZ SHOW in the", "whole of ${ServerConstants.SERVER_NAME}:", " O D D O N E O U T").also { stage++ }
+ 1 -> player(FacialExpression.THINKING, "I'm sure I didn't ask to take part in a quiz show...").also { stage++ }
+ 2 -> npc(FacialExpression.FRIENDLY,"Please welcome our newest contestant:", " ${player?.username}!", "Just pick the O D D O N E O U T.", "Four questions right, and then you win!").also { stage++ }
+ 3 -> {
+ setAttribute(player!!, QUIZMASTER_ATTRIBUTE_RANDOM_ANSWER, randomQuestion(player!!))
+ player!!.interfaceManager.openChatbox(QUIZMASTER_INTERFACE)
+ stage++
+ }
+ 4-> {
+ if (buttonID == getAttribute(player!!, QUIZMASTER_ATTRIBUTE_RANDOM_ANSWER, 0)) {
+ // Correct Answer
+ setAttribute(player!!, QUIZMASTER_ATTRIBUTE_QUESTIONS_CORRECT, getAttribute(player!!, QUIZMASTER_ATTRIBUTE_QUESTIONS_CORRECT, 0) + 1)
+ if (getAttribute(player!!, QUIZMASTER_ATTRIBUTE_QUESTIONS_CORRECT, 0) >= 4) {
+ npc(FacialExpression.FRIENDLY," CONGRATULATIONS!", "You are a WINNER!", "Please choose your PRIZE!")
+ stage = 5
+ } else {
+ npc(FacialExpression.FRIENDLY,"Wow, you're a smart one!", "You're absolutely RIGHT!", "Okay, next question!")
+ stage = 3
+ }
+ } else {
+ // Wrong Answer
+ npc(FacialExpression.FRIENDLY,"WRONG!", "That's just WRONG!", "Okay, next question!")
+ stage = 3
+ }
+ }
+ // Random Item should be "Mystery Box", but the current MYSTERY_BOX_6199 is already inauthentically used by Giftmas.
+ 5 -> options("1000 Coins", "Random Item").also { stage++ }
+ 6 -> {
+ resetAnimator(player!!)
+ returnPlayer(player!!)
+ when (buttonID) {
+ 1 -> {
+ queueScript(player!!, 0, QueueStrength.SOFT) { stage: Int ->
+ addItemOrDrop(player!!, Items.COINS_995, 1000)
+ return@queueScript stopExecuting(player!!)
+ }
+ }
+ 2 -> {
+ queueScript(player!!, 0, QueueStrength.SOFT) { stage: Int ->
+ addItemOrDrop(player!!, tableRoll.roll()[0].id)
+ return@queueScript stopExecuting(player!!)
+ }
+ }
+ }
+ removeAttributes(player!!, QUIZMASTER_ATTRIBUTE_QUESTIONS_CORRECT, QUIZMASTER_ATTRIBUTE_RANDOM_ANSWER)
+ stage = END_DIALOGUE
+ end()
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/quizmaster/QuizMasterNPC.kt b/Server/src/main/content/global/ame/events/quizmaster/QuizMasterNPC.kt
new file mode 100644
index 000000000..26407a1dc
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/quizmaster/QuizMasterNPC.kt
@@ -0,0 +1,65 @@
+package content.global.ame.events.quizmaster
+
+import content.global.ame.RandomEventNPC
+import content.global.ame.kidnapPlayer
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.interaction.QueueStrength
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.link.TeleportManager
+import core.game.system.timer.impl.AntiMacro
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+/**
+ * Quiz Master NPC:
+ *
+ * https://www.youtube.com/watch?v=EFAWSiPTfcM
+ * https://www.youtube.com/watch?v=caWn7pE2mkE
+ * https://www.youtube.com/watch?v=Bc1gAov2o4w
+ * https://www.youtube.com/watch?v=oHU8-MUarxE
+ * https://www.youtube.com/watch?v=wvjYiF4v9tI
+ * https://www.youtube.com/watch?v=dC6rlSnXEfw
+ */
+class QuizMasterNPC(var type: String = "", override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.QUIZ_MASTER_2477) {
+ override fun init() {
+ super.init()
+ sendChat("Hey ${player.username}! It's your lucky day!")
+ queueScript(player, 4, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ lock(player, 6)
+ sendGraphics(Graphics(1576, 0, 0), player.location)
+ animate(player,8939)
+ playAudio(player, Sounds.TELEPORT_ALL_200)
+ return@queueScript delayScript(player, 3)
+ }
+ 1 -> {
+ kidnapPlayer(player, Location(1952, 4764, 1), TeleportManager.TeleportType.INSTANT)
+ setAttribute(player, QuizMasterDialogueFile.QUIZMASTER_ATTRIBUTE_QUESTIONS_CORRECT, 0)
+ AntiMacro.terminateEventNpc(player)
+ sendGraphics(Graphics(1577, 0, 0), player.location)
+ animate(player,8941)
+ sendMessage(player, "Answer four questions correctly in a row to be teleported back where you came from.")
+ sendMessage(player, "You will need to relog in if you lose the quiz dialog.") // Inauthentic, but there to notify the player in case.
+ return@queueScript delayScript(player, 6)
+ }
+ 2 -> {
+ face(player, Location(1952, 4768, 1))
+ animate(player,2378)
+ // This is not needed as when you enter the QuizMasterBorders, it should fire off the dialogue
+ // openDialogue(player, QuizMasterDialogueFile(), this.asNpc())
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+
+ }
+ }
+
+ override fun talkTo(npc: NPC) {
+ openDialogue(player, QuizMasterDialogueFile(), this.asNpc())
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineBehavior.kt b/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineBehavior.kt
new file mode 100644
index 000000000..dbf6a8616
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineBehavior.kt
@@ -0,0 +1,14 @@
+package content.global.ame.events.rickturpentine
+
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.tools.RandomFunction
+import org.rs09.consts.NPCs
+
+class RickTurpentineBehavior : NPCBehavior(NPCs.RICK_TURPENTINE_2476) {
+ override fun beforeAttackFinalized(self: NPC, victim: Entity, state: BattleState) {
+ state.estimatedHit = RandomFunction.getRandom(3)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineDialogue.kt b/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineDialogue.kt
new file mode 100644
index 000000000..0b24b3ef7
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineDialogue.kt
@@ -0,0 +1,19 @@
+package content.global.ame.events.rickturpentine
+
+import core.api.addItemOrDrop
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.system.timer.impl.AntiMacro
+
+class RickTurpentineDialogue : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ 0 -> npcl(FacialExpression.NEUTRAL, "Today is your lucky day, " + (if (player!!.isMale) "sirrah!" else "madam!") + " I am donating to the victims of crime to atone for my past actions!").also { stage++ }
+ 1 -> {
+ AntiMacro.rollEventLoot(player!!).forEach { addItemOrDrop(player!!, it.id, it.amount) }
+ AntiMacro.terminateEventNpc(player!!)
+ end()
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineNPC.kt b/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineNPC.kt
new file mode 100644
index 000000000..ba731de03
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/rickturpentine/RickTurpentineNPC.kt
@@ -0,0 +1,31 @@
+package content.global.ame.events.rickturpentine
+
+import content.global.ame.RandomEventNPC
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.node.entity.npc.NPC
+import org.rs09.consts.NPCs
+
+class RickTurpentineNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.RICK_TURPENTINE_2476) {
+ private var attackDelay = 0
+
+ override fun init() {
+ super.init()
+ sendChat("Good day to you, " + (if(player.isMale) "milord " else "milady ") + player.username.capitalize() + ".")
+ }
+
+ override fun tick() {
+ if (ticksLeft <= 10) {
+ ticksLeft = 10
+ if (attackDelay <= getWorldTicks())
+ this.attack(player)
+ }
+ super.tick()
+ }
+
+ override fun talkTo(npc: NPC) {
+ attackDelay = getWorldTicks() + 10
+ this.pulseManager.clear()
+ openDialogue(player, RickTurpentineDialogue(), this.asNpc())
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/rivertroll/RiverTrollRENPC.kt b/Server/src/main/content/global/ame/events/rivertroll/RiverTrollRENPC.kt
new file mode 100644
index 000000000..dff28d7e9
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/rivertroll/RiverTrollRENPC.kt
@@ -0,0 +1,30 @@
+package content.global.ame.events.rivertroll
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+val ids = (391..396).toList()
+
+class RiverTrollRENPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(391){
+ override fun talkTo(npc: NPC) {}
+ override fun init() {
+ super.init()
+ val id = idForCombatLevel(ids, player)
+ this.transform(id)
+ this.attack(player)
+ sendChat("Fishies be mine, leave dem fishies!")
+ this.isRespawn = false
+ }
+ override fun finalizeDeath(killer: Entity?) {
+ super.finalizeDeath(killer)
+ }
+ override fun tick() {
+ if(!player.location.withinDistance(this.location,8)){
+ this.terminate()
+ }
+ super.tick()
+ if(!player.viewport.currentPlane.npcs.contains(this)) this.clear()
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/rockgolem/RockGolemRENPC.kt b/Server/src/main/content/global/ame/events/rockgolem/RockGolemRENPC.kt
new file mode 100644
index 000000000..eb3399657
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/rockgolem/RockGolemRENPC.kt
@@ -0,0 +1,30 @@
+package content.global.ame.events.rockgolem
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+val ids = (413..418).toList()
+
+class RockGolemRENPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(413){
+ override fun talkTo(npc: NPC) {}
+ override fun init() {
+ super.init()
+ val id = idForCombatLevel(ids, player)
+ this.transform(id)
+ this.attack(player)
+ sendChat("Raarrrgghh! Flee human!")
+ this.isRespawn = false
+ }
+ override fun finalizeDeath(killer: Entity?) {
+ super.finalizeDeath(killer)
+ }
+ override fun tick() {
+ if(!player.location.withinDistance(this.location,8)){
+ this.terminate()
+ }
+ super.tick()
+ if(!player.viewport.currentPlane.npcs.contains(this)) this.clear()
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/sandwichlady/SandwichLadyDialogue.kt b/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyDialogue.kt
similarity index 80%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/sandwichlady/SandwichLadyDialogue.kt
rename to Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyDialogue.kt
index 96e1a76e1..8374daf41 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/sandwichlady/SandwichLadyDialogue.kt
+++ b/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyDialogue.kt
@@ -1,13 +1,13 @@
-package rs09.game.content.ame.events.sandwichlady
+package content.global.ame.events.sandwichlady
import core.cache.def.impl.ItemDefinition
import core.game.component.Component
import core.game.node.entity.combat.ImpactHandler
import core.game.node.item.GroundItemManager
import core.game.node.item.Item
-import rs09.game.content.ame.RandomEventManager
-import rs09.game.content.dialogue.DialogueFile
-import rs09.tools.END_DIALOGUE
+import core.game.dialogue.DialogueFile
+import core.game.system.timer.impl.AntiMacro
+import core.tools.END_DIALOGUE
class SandwichLadyDialogue(val isChoice: Boolean) : DialogueFile() {
val SANDWICH_INTERFACE = 297
@@ -27,13 +27,13 @@ class SandwichLadyDialogue(val isChoice: Boolean) : DialogueFile() {
0 -> if(choice != assigned){
npc!!.sendChat("That's not what I said you could have!")
player!!.impactHandler.manualHit(npc,3,ImpactHandler.HitsplatType.NORMAL)
- RandomEventManager.getInstance(player!!)!!.event?.terminate()
+ AntiMacro.terminateEventNpc(player!!)
} else {
npc("Here you are, dear. I hope you enjoy it!")
if(!player!!.inventory.add(Item(assigned))){
GroundItemManager.create(Item(assigned),player)
}
- RandomEventManager.getInstance(player!!)!!.event?.terminate()
+ AntiMacro.terminateEventNpc(player!!)
stage = END_DIALOGUE
}
}
diff --git a/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyInterface.kt b/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyInterface.kt
new file mode 100644
index 000000000..c0d4773bd
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyInterface.kt
@@ -0,0 +1,44 @@
+package content.global.ame.events.sandwichlady
+
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import core.game.interaction.InterfaceListener
+import core.game.system.timer.impl.AntiMacro
+
+class SandwichLadyInterface : InterfaceListener {
+
+ val SANDWICH_INTERFACE = 297
+ val baguette = Items.BAGUETTE_6961
+ val triangle_sandwich = Items.TRIANGLE_SANDWICH_6962
+ val sandwich = Items.SQUARE_SANDWICH_6965
+ val roll = Items.ROLL_6963
+ val pie = Items.MEAT_PIE_2327
+ val kebab = Items.KEBAB_1971
+ val chocobar = Items.CHOCOLATE_BAR_1973
+
+ override fun defineInterfaceListeners() {
+ on(SANDWICH_INTERFACE){player, _, _, buttonID, _, _ ->
+ val event = AntiMacro.getEventNpc(player)
+ if (event == null) {
+ player.interfaceManager.close()
+ return@on true
+ }
+ val item =
+ when(buttonID) {
+ 7 -> {Item(baguette)}
+ 8 -> {Item(triangle_sandwich)}
+ 9 -> {Item(sandwich)}
+ 10 -> {Item(roll)}
+ 11 -> {Item(pie)}
+ 12 -> {Item(kebab)}
+ 13 -> {Item(chocobar)}
+ else -> {Item(baguette)}
+ }
+
+ player.setAttribute("sandwich-lady:choice",item.id)
+ player.interfaceManager.close()
+ player.dialogueInterpreter.open(SandwichLadyDialogue(true), event)
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyRENPC.kt b/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyRENPC.kt
new file mode 100644
index 000000000..1c5a14956
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/sandwichlady/SandwichLadyRENPC.kt
@@ -0,0 +1,36 @@
+package content.global.ame.events.sandwichlady
+
+import core.game.node.entity.npc.NPC
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+class SandwichLadyRENPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.SANDWICH_LADY_3117) {
+ val phrases = arrayOf("Hello, @name, can you hear me?","Sandwiches, @name!","Are you ignoring me, @name??","Yoohoo! Sandwiches, @name!","Hello, @name?", "Come get your sandwiches, @name!", "How could you ignore me like this, @name?!", "Do you even want your sandwiches, @name?")
+ var assigned_item = 0
+ val items = arrayOf(Items.BAGUETTE_6961,Items.TRIANGLE_SANDWICH_6962,Items.SQUARE_SANDWICH_6965,Items.ROLL_6963,Items.MEAT_PIE_2327,Items.KEBAB_1971,Items.CHOCOLATE_BAR_1973)
+
+ override fun tick() {
+ if(RandomFunction.random(1,15) == 5){
+ sendChat(phrases.random().replace("@name",player.username.capitalize()))
+ }
+ super.tick()
+ }
+
+ override fun init() {
+ super.init()
+ assignItem()
+ sendChat(phrases.random().replace("@name",player.username.capitalize()))
+ }
+
+ fun assignItem(){
+ assigned_item = items.random()
+ player.setAttribute("sandwich-lady:item",assigned_item)
+ }
+
+ override fun talkTo(npc: NPC) {
+ player.dialogueInterpreter.open(SandwichLadyDialogue(false),npc)
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/shade/ShadeRENPC.kt b/Server/src/main/content/global/ame/events/shade/ShadeRENPC.kt
new file mode 100644
index 000000000..60a0f57ae
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/shade/ShadeRENPC.kt
@@ -0,0 +1,29 @@
+package content.global.ame.events.shade
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+class ShadeRENPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(425){
+ val ids = (425..430).toList()
+ override fun talkTo(npc: NPC) {}
+ override fun init() {
+ super.init()
+ val id = idForCombatLevel(ids, player)
+ this.transform(id)
+ this.attack(player)
+ sendChat("Leave this place!")
+ this.isRespawn = false
+ }
+ override fun finalizeDeath(killer: Entity?) {
+ super.finalizeDeath(killer)
+ }
+ override fun tick() {
+ if(!player.location.withinDistance(this.location,8)){
+ this.terminate()
+ }
+ super.tick()
+ if(!player.viewport.currentPlane.npcs.contains(this)) this.clear()
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/strangeplant/StrangePlantBehavior.kt b/Server/src/main/content/global/ame/events/strangeplant/StrangePlantBehavior.kt
new file mode 100644
index 000000000..0491e01bc
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/strangeplant/StrangePlantBehavior.kt
@@ -0,0 +1,39 @@
+package content.global.ame.events.strangeplant
+
+import core.api.applyPoison
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.game.node.entity.player.Player
+import core.game.system.timer.impl.AntiMacro
+import core.tools.RandomFunction
+import org.rs09.consts.NPCs
+
+class StrangePlantBehavior() : NPCBehavior(NPCs.STRANGE_PLANT_408) {
+ override fun canBeAttackedBy(self: NPC, attacker: Entity, style: CombatStyle, shouldSendMessage: Boolean): Boolean {
+ return !(attacker !is Player || AntiMacro.getEventNpc(attacker.asPlayer()) != self)
+ }
+
+ override fun beforeAttackFinalized(self: NPC, victim: Entity, state: BattleState) {
+ state.estimatedHit = RandomFunction.getRandom(3)
+ if (RandomFunction.roll(10))
+ applyPoison(victim, self, 10)
+ }
+
+ override fun beforeDamageReceived(self: NPC, attacker: Entity, state: BattleState) {
+ if (state.estimatedHit > 3)
+ state.estimatedHit = RandomFunction.getRandom(3)
+ if (state.secondaryHit > 3)
+ state.secondaryHit = RandomFunction.getRandom(3)
+ }
+
+ override fun onDeathStarted(self: NPC, killer: Entity) {
+ AntiMacro.terminateEventNpc(killer.asPlayer())
+ }
+
+ override fun getXpMultiplier(self: NPC, attacker: Entity): Double {
+ return super.getXpMultiplier(self, attacker) / 16.0
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/strangeplant/StrangePlantListener.kt b/Server/src/main/content/global/ame/events/strangeplant/StrangePlantListener.kt
new file mode 100644
index 000000000..be182fd47
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/strangeplant/StrangePlantListener.kt
@@ -0,0 +1,33 @@
+package content.global.ame.events.strangeplant
+
+import core.api.addItemOrDrop
+import core.api.getAttribute
+import core.api.sendMessage
+import core.api.setAttribute
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.system.timer.impl.AntiMacro
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+
+class StrangePlantListener : InteractionListener {
+ override fun defineListeners() {
+ on(NPCs.STRANGE_PLANT_407, IntType.NPC, "pick") { player, node ->
+ if (AntiMacro.getEventNpc(player) != node) {
+ sendMessage(player, "This isn't your strange plant.")
+ return@on true
+ }
+
+ if (!getAttribute(node.asNpc(), "fruit-grown", false)) {
+ sendMessage(player, "The fruit isn't ready to be picked.")
+ return@on true
+ }
+
+ if (!getAttribute(node.asNpc(), "fruit-picked", false)) {
+ setAttribute(node.asNpc(), "fruit-picked", true)
+ addItemOrDrop(player, Items.STRANGE_FRUIT_464)
+ }
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/strangeplant/StrangePlantNPC.kt b/Server/src/main/content/global/ame/events/strangeplant/StrangePlantNPC.kt
new file mode 100644
index 000000000..a1eca2fd8
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/strangeplant/StrangePlantNPC.kt
@@ -0,0 +1,85 @@
+package content.global.ame.events.strangeplant
+
+import content.global.ame.RandomEventNPC
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.game.interaction.QueueStrength
+import core.game.node.entity.npc.NPC
+import core.game.world.update.flag.context.Animation
+import core.tools.minutesToTicks
+import core.tools.secondsToTicks
+import org.rs09.consts.NPCs
+
+class StrangePlantNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.STRANGE_PLANT_407) {
+ private val strangePlantGrowAnim = Animation(348)
+ private val strangePlantTransformAnim = Animation(351)
+ private val strangePlantPickedAnim = Animation(350)
+ private var fruitPicked = false
+ private var transformed = false
+ private var attacking = false
+
+ override fun init() {
+ spawnLocation = getPathableCardinal(player, player.location)
+ super.init()
+ ticksLeft = minutesToTicks(1)
+ animate(this, strangePlantGrowAnim)
+ queueScript(this, strangePlantGrowAnim.duration + 2, QueueStrength.SOFT) {
+ setAttribute(this, "fruit-grown", true)
+ return@queueScript stopExecuting(this)
+ }
+ }
+
+ override fun tick() {
+ super.tick()
+ if (getAttribute(this, "fruit-picked", false) && !fruitPicked) {
+ fruitPicked = true
+ ticksLeft = secondsToTicks(60)
+ queueScript(this, 1, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ this.animate(strangePlantPickedAnim)
+ return@queueScript delayScript(this, strangePlantPickedAnim.duration - 1)
+ }
+ 1 -> {
+ this.isInvisible = true
+ terminate()
+ return@queueScript stopExecuting(this)
+ }
+ else -> return@queueScript stopExecuting(this)
+ }
+ }
+ }
+ if (ticksLeft <= secondsToTicks(10)) {
+ ticksLeft = secondsToTicks(10)
+ if (!attacking) {
+ attacking = true
+ queueScript(this, 1, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ animate(this, strangePlantTransformAnim)
+ return@queueScript delayScript(this, strangePlantTransformAnim.duration)
+ }
+ 1 -> {
+ this.transform(NPCs.STRANGE_PLANT_408)
+ this.behavior = StrangePlantBehavior()
+ this.attack(player)
+ transformed = true
+ return@queueScript stopExecuting(this)
+ }
+ else -> return@queueScript stopExecuting(this)
+ }
+ }
+ }
+ if (transformed && !this.inCombat())
+ this.attack(player)
+ }
+ }
+
+ override fun follow() {
+ if (transformed)
+ super.follow()
+ }
+
+ override fun talkTo(npc: NPC) {
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/MordautDialogue.kt b/Server/src/main/content/global/ame/events/surpriseexam/MordautDialogue.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/MordautDialogue.kt
rename to Server/src/main/content/global/ame/events/surpriseexam/MordautDialogue.kt
index 278f2b4f4..d3bd04af0 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/MordautDialogue.kt
+++ b/Server/src/main/content/global/ame/events/surpriseexam/MordautDialogue.kt
@@ -1,9 +1,9 @@
-package rs09.game.content.ame.events.supriseexam
+package content.global.ame.events.surpriseexam
import core.game.component.Component
-import core.game.content.dialogue.FacialExpression
-import rs09.game.content.dialogue.DialogueFile
-import rs09.tools.END_DIALOGUE
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.DialogueFile
+import core.tools.END_DIALOGUE
class MordautDialogue(val examComplete: Boolean, val questionCorrect: Boolean = false, val fromInterface: Boolean = false) : DialogueFile() {
override fun handle(componentID: Int, buttonID: Int) {
diff --git a/Server/src/main/content/global/ame/events/surpriseexam/MysteriousOldManDialogue.kt b/Server/src/main/content/global/ame/events/surpriseexam/MysteriousOldManDialogue.kt
new file mode 100644
index 000000000..1415317a6
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/surpriseexam/MysteriousOldManDialogue.kt
@@ -0,0 +1,41 @@
+package content.global.ame.events
+
+import core.game.node.entity.player.Player
+import content.global.ame.events.surpriseexam.SurpriseExamUtils
+import core.game.dialogue.DialogueFile
+import core.game.system.timer.impl.AntiMacro
+
+class MysteriousOldManDialogue(val type: String) : DialogueFile() {
+
+ val CHOICE_STAGE = 50000
+
+ override fun handle(componentID: Int, buttonID: Int) {
+
+ if(type == "sexam" && stage < CHOICE_STAGE){
+ npc("Would you like to come do a surprise exam?")
+ stage = CHOICE_STAGE
+ }
+
+ else if(stage >= CHOICE_STAGE){
+ when(stage) {
+ CHOICE_STAGE -> options("Yeah, sure!", "No, thanks.").also { stage++ }
+ CHOICE_STAGE.substage(1) -> when(buttonID){
+ 1 -> {
+ end()
+ teleport(player!!,type)
+ AntiMacro.terminateEventNpc(player!!)
+ }
+ 2 -> {
+ end()
+ AntiMacro.terminateEventNpc(player!!)
+ }
+ }
+ }
+ }
+ }
+ fun teleport(player: Player,type: String){
+ when(type){
+ "sexam" -> SurpriseExamUtils.teleport(player)
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/MysteriousOldManNPC.kt b/Server/src/main/content/global/ame/events/surpriseexam/MysteriousOldManNPC.kt
similarity index 85%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/MysteriousOldManNPC.kt
rename to Server/src/main/content/global/ame/events/surpriseexam/MysteriousOldManNPC.kt
index ce177eca3..3ed7289b1 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/MysteriousOldManNPC.kt
+++ b/Server/src/main/content/global/ame/events/surpriseexam/MysteriousOldManNPC.kt
@@ -1,10 +1,10 @@
-package rs09.game.content.ame.events
+package content.global.ame.events
+import content.global.ame.RandomEventNPC
import core.game.node.entity.npc.NPC
import core.tools.RandomFunction
import org.rs09.consts.NPCs
-import rs09.game.content.ame.RandomEventNPC
-import rs09.game.content.global.WeightBasedTable
+import core.api.utils.WeightBasedTable
class MysteriousOldManNPC(var type: String = "", override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.MYSTERIOUS_OLD_MAN_410) {
override fun init() {
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/SEDoorDialogue.kt b/Server/src/main/content/global/ame/events/surpriseexam/SEDoorDialogue.kt
similarity index 75%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/SEDoorDialogue.kt
rename to Server/src/main/content/global/ame/events/surpriseexam/SEDoorDialogue.kt
index 4f63efa48..221f4b4fe 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/SEDoorDialogue.kt
+++ b/Server/src/main/content/global/ame/events/surpriseexam/SEDoorDialogue.kt
@@ -1,7 +1,7 @@
-package rs09.game.content.ame.events.supriseexam
+package content.global.ame.events.surpriseexam
-import rs09.game.content.dialogue.DialogueFile
-import rs09.tools.END_DIALOGUE
+import core.game.dialogue.DialogueFile
+import core.tools.END_DIALOGUE
class SEDoorDialogue(val preExam: Boolean) : DialogueFile() {
override fun handle(componentID: Int, buttonID: Int) {
diff --git a/Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/SEPatternInterface.kt b/Server/src/main/content/global/ame/events/surpriseexam/SEPatternInterface.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/SEPatternInterface.kt
rename to Server/src/main/content/global/ame/events/surpriseexam/SEPatternInterface.kt
index 3175b9e1b..3ba12a8c0 100644
--- a/Server/src/main/kotlin/rs09/game/content/ame/events/supriseexam/SEPatternInterface.kt
+++ b/Server/src/main/content/global/ame/events/surpriseexam/SEPatternInterface.kt
@@ -1,9 +1,9 @@
-package rs09.game.content.ame.events.supriseexam
+package content.global.ame.events.surpriseexam
import core.game.node.entity.npc.NPC
import org.rs09.consts.Components
import org.rs09.consts.NPCs
-import rs09.game.interaction.InterfaceListener
+import core.game.interaction.InterfaceListener
class SEPatternInterface : InterfaceListener {
diff --git a/Server/src/main/content/global/ame/events/surpriseexam/SupriseExamListeners.kt b/Server/src/main/content/global/ame/events/surpriseexam/SupriseExamListeners.kt
new file mode 100644
index 000000000..6d8ad6b4f
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/surpriseexam/SupriseExamListeners.kt
@@ -0,0 +1,71 @@
+package content.global.ame.events.surpriseexam
+
+import core.game.component.Component
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.world.map.Location
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import content.global.handlers.iface.ExperienceInterface
+import core.api.MapArea
+import core.api.removeItem
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.ZoneRestriction
+
+class SupriseExamListeners : InteractionListener, MapArea {
+ override fun defineListeners() {
+
+ on(NPCs.MR_MORDAUT_6117, IntType.NPC, "talk-to") { player, node ->
+ player.faceLocation(Location.create(1886, 5024, 0))
+ val examComplete = player.getAttribute(SurpriseExamUtils.SE_KEY_CORRECT, 0) == 3
+ player.dialogueInterpreter.open(MordautDialogue(examComplete), node.asNpc())
+ return@on true
+ }
+
+ on(SurpriseExamUtils.SE_DOORS, IntType.SCENERY, "open") { player, node ->
+ val correctDoor = player.getAttribute(SurpriseExamUtils.SE_DOOR_KEY,-1)
+
+ if(correctDoor == -1){
+ player.dialogueInterpreter.open(SEDoorDialogue(true))
+ return@on true
+ }
+
+ if(node.id == correctDoor){
+ SurpriseExamUtils.cleanup(player)
+ return@on true
+ }
+
+ player.dialogueInterpreter.open(SEDoorDialogue(false))
+ return@on true
+ }
+
+ on(Items.BOOK_OF_KNOWLEDGE_11640, IntType.ITEM, "read") { player, _ ->
+ player.setAttribute("caller") { skill: Int, p: Player ->
+ if (removeItem(p, Items.BOOK_OF_KNOWLEDGE_11640)) {
+ val level = p.skills.getStaticLevel(skill)
+ val experience = level * 15.0
+ p.skills.addExperience(skill, experience)
+ }
+ }
+ player.interfaceManager.open(Component(ExperienceInterface.COMPONENT_ID))
+ return@on true
+ }
+
+ }
+
+ override fun defineDestinationOverrides() {
+ setDest(IntType.NPC, NPCs.MR_MORDAUT_6117) { _, _ ->
+ return@setDest Location.create(1886, 5025, 0)
+ }
+ }
+
+ override fun defineAreaBorders(): Array {
+ return arrayOf(ZoneBorders.forRegion(7502))
+ }
+
+ override fun getRestrictions(): Array {
+ return arrayOf(ZoneRestriction.RANDOM_EVENTS, ZoneRestriction.CANNON, ZoneRestriction.FOLLOWERS, ZoneRestriction.OFF_MAP)
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/surpriseexam/SurpriseExamUtils.kt b/Server/src/main/content/global/ame/events/surpriseexam/SurpriseExamUtils.kt
new file mode 100644
index 000000000..01a722343
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/surpriseexam/SurpriseExamUtils.kt
@@ -0,0 +1,70 @@
+package content.global.ame.events.surpriseexam
+
+import content.global.ame.kidnapPlayer
+import content.global.ame.returnPlayer
+import core.api.*
+import core.game.node.entity.impl.PulseType
+import core.game.node.entity.player.Player
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import core.game.node.entity.player.link.TeleportManager
+
+object SurpriseExamUtils {
+ val SE_KEY_INDEX = "supexam:index"
+ val SE_DOOR_KEY = "supexam:door"
+ val INTER_PATTERN_CHILDS = intArrayOf(6,7,8)
+ val INTER_OPTION_CHILDS = intArrayOf(10,11,12,13)
+ val SE_DOORS = intArrayOf(2188,2189,2192,2193)
+ val INTERFACE = Components.PATTERN_NEXT_103
+ val SE_KEY_CORRECT = "supexam:correct"
+ val sets = arrayOf(
+ intArrayOf(Items.GARDENING_TROWEL_5325,Items.SECATEURS_5329,Items.SEED_DIBBER_5343,Items.RAKE_5341),
+ intArrayOf(Items.SALMON_329,Items.SHARK_385,Items.TROUT_333,Items.SHRIMPS_315),
+ intArrayOf(Items.BRONZE_SWORD_1277,Items.WOODEN_SHIELD_1171,Items.BRONZE_MED_HELM_1139,Items.ADAMANT_BATTLEAXE_1371),
+ intArrayOf(Items.FLY_FISHING_ROD_309,Items.BARBARIAN_ROD_11323,Items.SMALL_FISHING_NET_303,Items.HARPOON_311)
+ )
+
+ fun teleport(player: Player) {
+ kidnapPlayer(player, Location.create(1886, 5025, 0), TeleportManager.TeleportType.INSTANT)
+ }
+
+ fun cleanup(player: Player){
+ returnPlayer(player)
+ removeAttributes(player, SE_KEY_INDEX, SE_KEY_CORRECT)
+ player.pulseManager.run(object : Pulse(2){
+ override fun pulse(): Boolean {
+ addItemOrDrop(player, Items.BOOK_OF_KNOWLEDGE_11640)
+ return true
+ }
+ }, PulseType.CUSTOM_1)
+ }
+
+ fun generateInterface(player: Player){
+ val set = sets.random()
+ val setIndex = sets.indexOf(set)
+
+ val tempList = set.toList().shuffled().toMutableList()
+ val correctOpt = tempList.random()
+ val optIndex = tempList.indexOf(correctOpt)
+
+ tempList.remove(correctOpt)
+ for(i in INTER_PATTERN_CHILDS.indices) player.packetDispatch.sendItemOnInterface(tempList[i],1, INTERFACE, INTER_PATTERN_CHILDS[i])
+ for(i in INTER_OPTION_CHILDS.indices){
+ if(i == optIndex) player.packetDispatch.sendItemOnInterface(correctOpt,1, INTERFACE, INTER_OPTION_CHILDS[i])
+ else player.packetDispatch.sendItemOnInterface(getFalseSet(setIndex)[i],1, INTERFACE, INTER_OPTION_CHILDS[i])
+ }
+ player.setAttribute(SE_KEY_INDEX,optIndex)
+ }
+
+ fun getFalseSet(trueSetIndex: Int): IntArray{
+ val tempSets = sets.toMutableList()
+ tempSets.removeAt(trueSetIndex)
+ return tempSets.random()
+ }
+
+ fun pickRandomDoor(player: Player){
+ player.setAttribute(SE_DOOR_KEY, SE_DOORS.random())
+ }
+}
diff --git a/Server/src/main/content/global/ame/events/swarm/SwarmNPC.kt b/Server/src/main/content/global/ame/events/swarm/SwarmNPC.kt
new file mode 100644
index 000000000..30b29815f
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/swarm/SwarmNPC.kt
@@ -0,0 +1,28 @@
+package content.global.ame.events.swarm
+
+import content.global.ame.RandomEventNPC
+import core.api.playGlobalAudio
+import core.api.utils.WeightBasedTable
+import core.game.node.entity.npc.NPC
+import core.tools.minutesToTicks
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+
+class SwarmNPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(NPCs.SWARM_411) {
+ override fun init() {
+ super.init()
+ this.setAttribute("no-spawn-return", true)
+ this.attack(player)
+ playGlobalAudio(this.location, Sounds.SWARM_APPEAR_818)
+ this.ticksLeft = minutesToTicks(60)
+ }
+
+ override fun tick() {
+ super.tick()
+ if (!this.inCombat())
+ this.attack(player)
+ }
+
+ override fun talkTo(npc: NPC) {
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/swarm/SwarmNPCBehavior.kt b/Server/src/main/content/global/ame/events/swarm/SwarmNPCBehavior.kt
new file mode 100644
index 000000000..3cf390747
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/swarm/SwarmNPCBehavior.kt
@@ -0,0 +1,14 @@
+package content.global.ame.events.swarm
+
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.tools.RandomFunction
+import org.rs09.consts.NPCs
+
+class SwarmNPCBehavior : NPCBehavior(NPCs.SWARM_411) {
+ override fun beforeAttackFinalized(self: NPC, victim: Entity, state: BattleState) {
+ state.estimatedHit = RandomFunction.getRandom(1)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/treespirit/TreeSpiritRENPC.kt b/Server/src/main/content/global/ame/events/treespirit/TreeSpiritRENPC.kt
new file mode 100644
index 000000000..3b0033972
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/treespirit/TreeSpiritRENPC.kt
@@ -0,0 +1,30 @@
+package content.global.ame.events.treespirit
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+val ids = (438..443).toList()
+
+class TreeSpiritRENPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(438){
+ override fun talkTo(npc: NPC) {}
+ override fun init() {
+ super.init()
+ val id = idForCombatLevel(ids, player)
+ this.transform(id)
+ this.attack(player)
+ sendChat("Leave these woods and never return!")
+ this.isRespawn = false
+ }
+ override fun finalizeDeath(killer: Entity?) {
+ super.finalizeDeath(killer)
+ }
+ override fun tick() {
+ if(!player.location.withinDistance(this.location,8)){
+ this.terminate()
+ }
+ super.tick()
+ if(!player.viewport.currentPlane.npcs.contains(this)) this.clear()
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/ame/events/zombie/ZombieRENPC.kt b/Server/src/main/content/global/ame/events/zombie/ZombieRENPC.kt
new file mode 100644
index 000000000..6b43d54b4
--- /dev/null
+++ b/Server/src/main/content/global/ame/events/zombie/ZombieRENPC.kt
@@ -0,0 +1,29 @@
+package content.global.ame.events.zombie
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import content.global.ame.RandomEventNPC
+import core.api.utils.WeightBasedTable
+
+class ZombieRENPC(override var loot: WeightBasedTable? = null) : RandomEventNPC(419){
+ val ids = (419..424).toList()
+ override fun talkTo(npc: NPC) {}
+ override fun init() {
+ super.init()
+ val id = idForCombatLevel(ids, player)
+ this.transform(id)
+ this.attack(player)
+ sendChat("Brainsssss!")
+ this.isRespawn = false
+ }
+ override fun finalizeDeath(killer: Entity?) {
+ super.finalizeDeath(killer)
+ }
+ override fun tick() {
+ if(!player.location.withinDistance(this.location,8)){
+ this.terminate()
+ }
+ super.tick()
+ if(!player.viewport.currentPlane.npcs.contains(this)) this.clear()
+ }
+}
diff --git a/Server/src/main/content/global/bots/Adventurer.kt b/Server/src/main/content/global/bots/Adventurer.kt
new file mode 100644
index 000000000..916503945
--- /dev/null
+++ b/Server/src/main/content/global/bots/Adventurer.kt
@@ -0,0 +1,724 @@
+package content.global.bots
+
+import core.game.interaction.DestinationFlag
+import core.game.interaction.MovementPulse
+import core.game.node.scenery.Scenery
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.game.world.map.RegionManager
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.update.flag.*
+import org.json.simple.JSONArray
+import org.json.simple.JSONObject
+import core.ServerConstants
+import core.api.log
+import core.game.bots.AIRepository
+import core.game.bots.CombatBotAssembler
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.tools.Log
+import java.io.File
+import java.io.FileReader
+import java.time.LocalDateTime
+import java.time.format.DateTimeFormatter
+import kotlin.random.Random
+
+
+/**
+ * A bot script for Adventurers who explore the world!
+ * @param counter used in the bots random idling function.
+ * @param random is used to generate random number.
+ * @param city determines the home city of the bot.
+ * @param freshspawn determines if the bot has just been spawned.
+ * @param random_city is the list of cities that can be randomly chosen as the home city.
+ * @param tree_list is the list of trees that a bot can start cutting randomly.
+ * @author Sir Kermit
+ * @author Ceikry
+ */
+
+// Adventure Bots v1.1.0 : Expansion Edition (Previously v4.0.0)
+// Super Grand Exchange Update
+class Adventurer(val style: CombatStyle): Script() {
+
+ var city: Location = lumbridge
+ var poiloc: Location = karamja
+ var geSocialLoc: Location = getRandomGESocialLocation()
+ var geClerkLoc: Location = getRandomGELocation()
+ var geClerksloc: Location = neGEClerk
+
+ var freshspawn: Boolean = true
+ var sold: Boolean = false
+ var poi: Boolean = false
+
+ val chance: Int = if (cityLocationsGE.contains(city)) 3500 else 3000
+ var ticks: Int = 0
+ var counter: Int = 0
+ val waitTotal: Int = 8
+ var returnToAdventure: Int = 0
+ var geWait: Int = 0
+ var geLongWait: Int = 0
+
+ val type = when(style){
+ CombatStyle.MELEE -> CombatBotAssembler.Type.MELEE
+ CombatStyle.MAGIC -> CombatBotAssembler.Type.MAGE
+ CombatStyle.RANGE -> CombatBotAssembler.Type.RANGE
+ }
+
+ init {
+ skills[Skills.AGILITY] = 99
+ inventory.add(Item(1359))//Rune Axe
+ skills[Skills.WOODCUTTING] = 95
+ inventory.add(Item(590))//Tinderbox
+ skills[Skills.FISHING] = 90
+ inventory.add(Item(1271))//Addy Pickaxe
+ skills[Skills.MINING] = 90
+ skills[Skills.SLAYER] = 90
+ }
+
+ override fun toString(): String {
+ return "${bot.username} is an Adventurer bot " +
+ "at ${bot.location}! " +
+ "State: $state - " +
+ "City: $city - " +
+ "Ticks: $ticks - " +
+ "Freshspawn: $freshspawn - " +
+ "Sold: $sold - " +
+ "Counter: $counter"
+ }
+
+ var state = State.START
+
+ private fun getRandomCity(): Location{
+ return cities.random()
+ }
+
+ private fun getRandomPoi(): Location{
+ return pois.random()
+ }
+
+ private fun getRandomGESocialLocation(): Location{
+ return socialLocationsGE.random()
+ }
+
+ private fun getRandomGELocation(): Location {
+ return cityLocationsGE.random()
+ }
+
+ private fun randomNumberFromOne(maxInt: Int): Int {
+ return Random.nextInt(0, maxInt)
+ }
+
+ private fun otherPlayersNearby(): Boolean {
+ val localPlayers = RegionManager.getLocalPlayers(bot)
+ val otherPlayers = localPlayers.filter { it.name != bot.name }
+ return otherPlayers.isNotEmpty()
+ }
+
+ private fun checkNearBank() {
+ if(bankMap[city] == null){
+ scriptAPI.teleport(getRandomCity().also { city = it })
+ } else {
+ if(bankMap[city]?.insideBorder(bot) == true){
+ state = State.FIND_BANK
+ } else {
+ bankMap[city]?.let { scriptAPI.walkTo(it.randomLoc) }
+ }
+ }
+ }
+
+ private fun checkCounter(maxCounter: Int) {
+ if (counter++ >= maxCounter) {
+ state = State.TELEPORTING
+ }
+ }
+
+ private fun teleportToRandomCity() {
+ city = getRandomCity()
+ when (city) {
+ neGEClerk -> { scriptAPI.teleport(scriptAPI.randomizeLocationInRanges(city,-3,2,0,1,0)) }
+ swGEClerk -> { scriptAPI.teleport(scriptAPI.randomizeLocationInRanges(city,-2,3,-1,0,0)) }
+ nwGEBanker -> { scriptAPI.teleport(scriptAPI.randomizeLocationInRanges(city,-2,0,-3,2,0)) }
+ seGEBanker -> { scriptAPI.teleport(scriptAPI.randomizeLocationInRanges(city,0,2,-2,3,0)) }
+ else -> { scriptAPI.teleport(scriptAPI.randomizeLocationInRanges(city,-1,1,-1,1,0)) }
+ }
+ }
+
+ val resources = listOf(
+ "Rocks","Tree","Oak","Willow",
+ "Maple tree","Yew","Magic tree",
+ "Teak","Mahogany")
+
+ //TODO: Optimise and adjust how bots handle picking up ground items further.
+ fun immerse() {
+ if (counter++ >= Random.nextInt(150,300)) { state = State.TELEPORTING }
+ val items = AIRepository.groundItems[bot]
+ if (Random.nextBoolean()) {
+ if (items.isNullOrEmpty()) {
+ scriptAPI.attackNpcsInRadius(bot, 8)
+ state = State.LOOT_DELAY
+ }
+ if (bot.inventory.isFull) {
+ checkNearBank()
+ }
+
+ } else {
+ if (bot.inventory.isFull){
+ checkNearBank()
+ } else {
+ val resource = scriptAPI.getNearestNodeFromList(resources,true)
+ if(resource != null){
+ if(resource.name.contains("ocks")) InteractionListeners.run(resource.id,
+ IntType.SCENERY,"mine",bot,resource)
+ else InteractionListeners.run(resource.id, IntType.SCENERY,"chop down",bot,resource)
+ }
+ }
+ }
+ return
+ }
+
+ fun refresh() {
+// log(this::class.java, Log.WARN, "${bot.username} refreshed from $state at $city with $ticks and $counter counter.")
+ scriptAPI.teleport(lumbridge)
+ state = State.START
+ }
+
+ //Adventure Bots Actual Code STARTS HERE!!!
+ // 100 ticks = 60 seconds
+ override fun tick() {
+ ticks++
+ // Hard refresh
+ if (ticks >= 1000) {
+ ticks = 0
+ refresh()
+ return
+ }
+
+ // zoneborder checker
+ if(ticks % 30 == 0){
+ for((zone, resolution) in common_stuck_locations){
+ if(zone.insideBorder(bot)){
+ resolution(this)
+ return
+ }
+ }
+ }
+
+ when(state){
+
+ State.LOOT_DELAY -> {
+ bot.pulseManager.run(object : Pulse() {
+ var counter1 = 0
+ override fun pulse(): Boolean {
+ when (counter1++) {
+ 7 -> return true.also { state = State.LOOT }
+ }
+ return false
+ }
+ })
+ }
+
+ State.LOOT -> {
+ val items = AIRepository.groundItems[bot]
+ if (items?.isNotEmpty() == true && !bot.inventory.isFull) {
+ items.toTypedArray().forEach {
+ scriptAPI.takeNearestGroundItem(it.id)
+ }
+ return
+ } else {
+ state = State.ADVENTURE
+ }
+ }
+
+ State.START -> {
+ if (freshspawn) {
+ freshspawn = false
+ scriptAPI.randomWalkTo(lumbridge, randomNumberFromOne(25))
+ } else {
+ state = State.TELEPORTING
+ }
+ }
+
+ State.TELEPORTING -> {
+ if (freshspawn){ freshspawn = false }
+ teleportToRandomCity()
+ poi = false
+ sold = false
+ ticks = 0
+ counter = 0
+ state = State.ADVENTURE
+ return
+ }
+
+ State.ADVENTURE -> {
+ checkCounter(800)
+ if (randomNumberFromOne(chance) <= 10) {
+ if (otherPlayersNearby()) {
+ ticks = 0
+ dialogue()
+ }
+ }
+
+ if (!poi && randomNumberFromOne(1000) <= 75) {
+ val roamDistance = if (!cityLocationsGE.contains(city)) 225 else randomNumberFromOne(5)
+ if (cityLocationsGE.contains(city) && randomNumberFromOne(100) < 90) {
+ if (!bot.bank.isEmpty) {
+ state = State.FIND_GE
+ }
+ return
+ }
+ scriptAPI.randomWalkTo(city, roamDistance)
+ return
+ }
+
+ if (poi && randomNumberFromOne(1000) <= 100){
+ immerse()
+ return
+ }
+
+ if (poi && randomNumberFromOne(1000) <= 25){
+ dialogue()
+ }
+
+ if (poi && randomNumberFromOne(1000) <= 50){
+ val roamDistancePoi = when(poiloc){
+ gemrocks, chaosnpc, chaosnpc2 -> 1
+ magics, coalTrucks -> 7
+ miningguild, teakfarm, crawlinghands -> 5
+ varLumberYard -> 20
+ keldagrimout, teak1 -> 30
+ eaglespeek, isafdar -> 40
+ treegnome -> 50
+ else -> 60
+ }
+ scriptAPI.randomWalkTo(poiloc,roamDistancePoi)
+ return
+ }
+
+ if (randomNumberFromOne(1000) <= 75) {
+ if (!cityLocationsGE.contains(city)) {
+ ticks = 0
+ immerse()
+ return
+ } else if (randomNumberFromOne(chance) <= 55 && otherPlayersNearby()) {
+ ticks = 0
+ dialogue()
+ }
+ }
+
+ if (cityLocationsGE.contains(city) && randomNumberFromOne(1000) <= 50) {
+ state = State.IDLE_GE
+ }
+
+ if (!poi && randomNumberFromOne(1000) <= 5) {
+ poiloc = getRandomPoi()
+ city = teak1
+ poi = true
+ scriptAPI.teleport(poiloc)
+ return
+ }
+
+ if (cityLocationsGE.contains(city) && randomNumberFromOne(1000) <= 100) {
+ state = State.TELEPORTING
+ return
+ }
+
+ if (cityLocationsGE.contains(city)) {
+ return
+ }
+
+ if (poi && randomNumberFromOne(1000) <= 20){
+ state = State.TELEPORTING
+ return
+ }
+
+ if (counter++ >= 750 && randomNumberFromOne(100) <= 50) {
+// log(this::class.java, Log.FINE, "${bot.username} has moved on to a different city at $ticks ticks and $counter counter.")
+ city = getRandomCity()
+ if (randomNumberFromOne(100) % 2 == 0) {
+ state = State.TELEPORTING
+ } else {
+ if (citygroupA.contains(city)) {
+ city = citygroupA.random()
+ } else {
+ city = citygroupB.random()
+ }
+ counter = 0
+ ticks = 0
+ state = State.FIND_CITY
+ }
+ counter = 0
+ return
+ }
+ return
+ }
+
+ State.IDLE_GE -> {
+ returnToAdventure = Random.nextInt(350, 750)
+ if (counter++ >= returnToAdventure){
+ if (randomNumberFromOne(100) <= 25){
+ ticks = 0
+ counter = 0
+ poiloc = getRandomPoi()
+ city = teak1
+ poi = true
+ scriptAPI.teleport(poiloc)
+ state = State.ADVENTURE
+ return
+ } else {
+ counter = 0
+ ticks = 0
+ state = State.TELEPORTING
+ return
+ }
+ }
+ if (cityLocationsGE.contains(city)){
+ if (randomNumberFromOne(1000) <= 5) {
+ ticks = 0
+ geSocialLoc = scriptAPI.randomizeLocationInRanges(getRandomGESocialLocation(),-1,1,-1,1,0)
+ } else if (randomNumberFromOne(1000) <= 10) {
+ ticks = 0
+ scriptAPI.randomWalkTo(geSocialLoc, randomNumberFromOne(5))
+ return
+ }
+ if (randomNumberFromOne(1000) <= 5 && otherPlayersNearby()){
+ ticks = 0
+ dialogue()
+ } else if (randomNumberFromOne(1000) <= 250){
+ return
+ }
+ }
+ return
+ }
+
+ State.FIND_GE -> {
+ sold = false
+ val ge: Scenery? = scriptAPI.getNearestNode("Desk", true) as Scenery?
+ if (ge == null || bot.bank.isEmpty) state = State.ADVENTURE
+ class GEPulse : MovementPulse(bot, ge, DestinationFlag.OBJECT) {
+ override fun pulse(): Boolean {
+ bot.faceLocation(ge?.location)
+ return true.also { state = State.GE }
+ }
+ }
+ if (ge == null || bot.bank.isEmpty) state = State.ADVENTURE
+ if (ge != null && !bot.bank.isEmpty) {
+ if (randomNumberFromOne(1000) <= 25 && otherPlayersNearby()){
+ dialogue()
+ scriptAPI.randomWalkTo(geSocialLoc, randomNumberFromOne(5))
+ } else if (randomNumberFromOne(500) <= 50) {
+ GameWorld.Pulser.submit(GEPulse())
+ }
+ }
+ checkCounter(500)
+ return
+ }
+
+ State.GE -> {
+ geClerksloc = clerkLocationsGe.random()
+ geWait = Random.nextInt(35, 100)
+ geLongWait = Random.nextInt(350, 750)
+ if (!sold) {
+ if (randomNumberFromOne(500) <= 25){ scriptAPI.randomWalkTo(geClerksloc, randomNumberFromOne(4))}
+ if (counter++ >= geWait) {
+ scriptAPI.randomWalkTo(geClerksloc, randomNumberFromOne(1))
+ sold = true
+ counter = 0
+ ticks = 0
+ scriptAPI.sellAllOnGeAdv()
+ state = State.TELEPORTING
+ return
+ }
+ } else if (counter++ >= geLongWait) {
+ state = State.TELEPORTING
+ return
+ }
+ checkCounter(1000)
+ return
+ }
+
+ State.FIND_BANK -> {
+ val bank: Scenery? = scriptAPI.getNearestNode("Bank booth", true) as Scenery?
+ if (bank == null) { state = State.TELEPORTING }
+ if (bank != null && randomNumberFromOne(100) <= 5) {
+ scriptAPI.depositAtBank()
+ } else if (bank != null && randomNumberFromOne(100) <= 5){
+ scriptAPI.randomWalkTo(bank.location,3)
+ }
+ checkCounter(500)
+ return
+ }
+
+
+ State.FIND_CITY -> {
+ if (counter++ >= 500 || cityLocationsGE.contains(city)){
+ scriptAPI.teleport(getRandomCity().also { city = it })
+ state = State.ADVENTURE
+ }
+ if (bot.location.equals(city)) {
+ state = State.ADVENTURE
+ } else {
+ scriptAPI.randomWalkTo(city, randomNumberFromOne(10))
+ }
+ checkCounter(600)
+ return
+ }
+
+ }
+
+ }
+
+ fun dialogue() {
+ val until = 1225 - dateCode
+ val lineStd = dialogue.getLines("standard").rand()
+ var lineAlt = ""
+
+ when {
+ //Celebrates Halloween!
+ dateCode == 1031 -> lineAlt = dialogue.getLines("halloween").rand()
+
+ //Celebrates lead up to Christmas!
+ until in 2..23 -> lineAlt = dialogue.getLines("approaching_christmas").rand()
+
+ //Celebrates Christmas Day!
+ dateCode == 1225 -> lineAlt = dialogue.getLines("christmas_day").rand()
+
+ //Celebrates Christmas Eve
+ dateCode == 1224 -> lineAlt = dialogue.getLines("christmas_eve").rand()
+
+ //New years eve
+ dateCode == 1231 -> lineAlt = dialogue.getLines("new_years_eve").rand()
+
+ //New years
+ dateCode == 101 -> lineAlt = dialogue.getLines("new_years").rand()
+
+ //Valentines
+ dateCode == 214 -> lineAlt = dialogue.getLines("valentines").rand()
+
+ //Easter
+ dateCode == 404 -> lineAlt = dialogue.getLines("easter").rand()
+ }
+
+ var localPlayers = RegionManager.getLocalPlayers(bot)
+ if (localPlayers.isNotEmpty()) {
+ val localPlayer = localPlayers
+ .filter { it.name != bot.name }
+ .randomOrNull()
+ if (localPlayer != null) {
+ val chat = if (lineAlt.isNotEmpty() && Random.nextBoolean()) { lineAlt } else { lineStd }
+ .replace("@name", localPlayer.username)
+ .replace("@timer", until.toString())
+ scriptAPI.sendChat(chat)
+ } else {
+ val chat = if (lineAlt.isNotEmpty() && Random.nextBoolean()) { lineAlt } else { lineStd }
+ scriptAPI.sendChat(chat)
+ }
+ }
+ }
+
+ enum class State{
+ START,
+ ADVENTURE,
+ FIND_BANK,
+ FIND_CITY,
+ IDLE_GE,
+ GE,
+ TELEPORTING,
+ LOOT,
+ LOOT_DELAY,
+ FIND_GE
+ }
+
+
+ override fun newInstance(): Script {
+ val script = Adventurer(style)
+ script.state = State.START
+ val tier = CombatBotAssembler.Tier.MED
+ if (type == CombatBotAssembler.Type.RANGE)
+ script.bot = CombatBotAssembler().RangeAdventurer(tier, bot.startLocation)
+ else
+ script.bot = CombatBotAssembler().MeleeAdventurer(tier, bot.startLocation)
+ return script
+ }
+
+ companion object {
+ // Start Cities
+ val yanille: Location = Location.create(2615, 3104, 0)
+ val ardougne: Location = Location.create(2662, 3304, 0)
+ val seers: Location = Location.create(2726, 3485, 0)
+ val edgeville: Location = Location.create(3088, 3486, 0)
+ val catherby: Location = Location.create(2809, 3435, 0)
+ val falador: Location = Location.create(2965, 3380, 0)
+ val varrock: Location = Location.create(3213, 3428, 0)
+ val draynor: Location = Location.create(3080, 3250, 0)
+ val rimmington: Location = Location.create(2977, 3239, 0)
+ val lumbridge: Location = Location.create(3222, 3219, 0)
+ val karamja: Location = Location.create(2849, 3033, 0)
+ val alkharid: Location = Location.create(3297, 3219, 0)
+
+ // Start POI
+ val feldiphills: Location = Location.create(2535, 2919, 0)
+ val isafdar: Location = Location.create(2241, 3217, 0)
+ val eaglespeek: Location = Location.create(2333, 3579, 0)
+ val canafis: Location = Location.create(3492, 3485, 0)
+ val treegnome: Location = Location.create(2437, 3441, 0)
+ val teak1: Location = Location.create(2334, 3048, 0)
+ val teakfarm: Location = Location.create(2825, 3085, 0)
+ val keldagrimout: Location = Location.create(2724,3692, 0)
+ val miningguild: Location = Location.create(3046,9740, 0)
+ val magics: Location = Location.create(2285,3146, 0)
+ val coalTrucks: Location = Location.create(2581,3481, 0)
+ val crawlinghands: Location = Location.create(3422,3548, 0)
+ val gemrocks: Location = Location.create(2825,2997, 0)
+ val chaosnpc: Location = Location.create(2612,9484, 0)
+ val chaosnpc2: Location = Location.create(2586, 9501, 0)
+ val varLumberYard: Location = Location.create(3289, 3482, 0)
+ val taverly: Location = Location.create(2909, 3436, 0)
+
+ val swGEClerk: Location = Location.create(3164, 3487, 0)
+ val neGEClerk: Location = Location.create(3165, 3492, 0)
+ val nwGEBanker: Location = Location.create(3162, 3490, 0)
+ val seGEBanker: Location = Location.create(3167, 3489, 0)
+
+ val badedge = ZoneBorders(3094, 3494, 3096, 3497)
+ val badedge2: Location = Location.create(3094, 3492, 0)
+ val badedge3: Location = Location.create(3094, 3490, 0)
+ val badedge4: Location = Location.create(3094, 3494, 0)
+
+ var citygroupA = listOf(falador, varrock, draynor, rimmington, lumbridge, edgeville)
+ var citygroupB = listOf(yanille, ardougne, seers, catherby)
+
+ val cities = listOf(
+ swGEClerk, neGEClerk, nwGEBanker, seGEBanker,
+ yanille, ardougne, seers, catherby,
+ falador, varrock, draynor, rimmington,
+ lumbridge, edgeville
+ )
+
+ val pois = listOf(
+ karamja, karamja, alkharid,
+ alkharid, feldiphills, feldiphills,
+ isafdar, eaglespeek, eaglespeek,
+ canafis, treegnome, treegnome,
+ teak1, teakfarm, keldagrimout,
+ miningguild, coalTrucks, crawlinghands,
+ magics, gemrocks, chaosnpc, chaosnpc,
+ chaosnpc2, taverly,
+ varLumberYard)
+
+ val cityLocationsGE = listOf(swGEClerk, neGEClerk, nwGEBanker, seGEBanker)
+
+ val socialLocationsGE = listOf(
+ Location.create(3158, 3483, 0),
+ Location.create(3165, 3480, 0),
+ Location.create(3172, 3483, 0),
+ Location.create(3174, 3489, 0),
+ Location.create(3171, 3497, 0),
+ Location.create(3164, 3499, 0),
+ Location.create(3157, 3497, 0),
+ Location.create(3155, 3489, 0),
+ Location.create(3167, 3492, 0),
+ Location.create(3162, 3492, 0),
+ Location.create(3162, 3487, 0),
+ Location.create(3167, 3487, 0)
+ )
+
+ val clerkLocationsGe = listOf(
+ Location.create(3165, 3492, 0),
+ Location.create(3164, 3492, 0),
+ Location.create(3164, 3487, 0),
+ Location.create(3165, 3487, 0)
+ )
+
+ var bankMap = mapOf(
+ falador to ZoneBorders(2950, 3374, 2943, 3368),
+ varrock to ZoneBorders(3182, 3435, 3189, 3446),
+ draynor to ZoneBorders(3092, 3240, 3095, 3246),
+ edgeville to ZoneBorders(3093, 3498, 3092, 3489),
+ yanille to ZoneBorders(2610, 3089, 2613, 3095),
+ ardougne to ZoneBorders(2649, 3281, 2655, 3286),
+ seers to ZoneBorders(2729, 3493, 2722, 3490),
+ catherby to ZoneBorders(2807, 3438, 2811, 3441)
+ )
+
+ private val whiteWolfMountainTop = Location(2850, 3496, 0)
+ private val catherbyToTopOfWhiteWolf = arrayOf(Location(2856, 3442, 0), Location(2848, 3455, 0), Location(2848, 3471, 0), Location(2848, 3487, 0))
+ private val tavleryToTopOfWhiteWolf = arrayOf(Location(2872, 3425, 0), Location(2863, 3440, 0), Location(2863, 3459, 0), Location(2854, 3475, 0), Location(2859, 3488, 0))
+
+ val common_stuck_locations = mapOf(
+ // South of Tavlery dungeon
+ ZoneBorders(2878, 3386, 2884, 3395) to { it: Adventurer ->
+ it.scriptAPI.walkArray(tavleryToTopOfWhiteWolf + whiteWolfMountainTop + catherbyToTopOfWhiteWolf.reversedArray())
+ },
+ // West of Tavlery dungeon
+ ZoneBorders(2874, 3390, 2880, 3401) to { it: Adventurer ->
+ it.scriptAPI.walkArray(tavleryToTopOfWhiteWolf + whiteWolfMountainTop + catherbyToTopOfWhiteWolf.reversedArray())
+ },
+ // South of White Wolf Mountain in Tavlery
+ ZoneBorders(2865,3408,2874,3423) to { it: Adventurer ->
+ it.scriptAPI.walkArray(tavleryToTopOfWhiteWolf + whiteWolfMountainTop + catherbyToTopOfWhiteWolf.reversedArray())
+ },
+ // On beginning of White Wolf Mountain in Tavlery
+ ZoneBorders(2855, 3454, 2852, 3450) to { it: Adventurer ->
+ it.scriptAPI.walkArray(tavleryToTopOfWhiteWolf + whiteWolfMountainTop + catherbyToTopOfWhiteWolf.reversedArray())
+ },
+ // South of White Wolf Mountain in Catherby
+ ZoneBorders(2861,3425,2867, 3432) to { it: Adventurer ->
+ it.scriptAPI.walkArray(catherbyToTopOfWhiteWolf + whiteWolfMountainTop + tavleryToTopOfWhiteWolf.reversedArray())
+ },
+ // On beginning of White Wolf Mountain in Catherby
+ ZoneBorders(2863, 3441, 2859, 3438) to { it: Adventurer ->
+ it.scriptAPI.walkArray(catherbyToTopOfWhiteWolf + whiteWolfMountainTop + tavleryToTopOfWhiteWolf.reversedArray())
+ },
+ // At the Crumbling Wall in Falador
+ ZoneBorders(2937,3356,2936,3353) to { it: Adventurer ->
+ // Interact with the Crumbling Wall
+ val wall = it.scriptAPI.getNearestNode("Crumbling wall", true)
+ if (wall == null) {
+ it.refresh()
+ it.ticks = 0
+ return@to
+ }
+ it.scriptAPI.interact(it.bot, wall, "Climb-over")
+ },
+ // Northwest corner of Draynor Bank
+ ZoneBorders(3092, 3246, 3091, 3247) to { it: Adventurer ->
+ // Walk into Draynor Bank
+ it.scriptAPI.walkTo(Location(3093, 3243, 0))
+ },
+ // West of GE, stuck in the corner south of the outlaw place
+ ZoneBorders(3140, 3468, 3140, 3468) to { it: Adventurer ->
+ // Walk to Barbarian village
+ it.scriptAPI.walkArray(arrayOf(Location.create(3135, 3516, 0), Location.create(3103, 3489, 0), Location.create(3082, 3423, 0)))
+ },
+ )
+
+ val dialogue: JSONObject
+ val dateCode: Int
+
+ init {
+ val reader = FileReader(ServerConstants.BOT_DATA_PATH + File.separator + "bot_dialogue.json")
+ val parser = org.json.simple.parser.JSONParser()
+ val data = parser.parse(reader) as JSONObject
+
+ dialogue = data
+
+ val formatter = DateTimeFormatter.ofPattern("MMdd")
+ val current = LocalDateTime.now()
+ val formatted: String = current.format(formatter)
+ dateCode = formatted.toInt()
+ }
+
+ private fun JSONObject.getLines(category: String): JSONArray {
+ return this[category] as JSONArray
+ }
+
+ private fun JSONArray.rand(): String {
+ return this.random() as String
+ }
+ }
+}
diff --git a/Server/src/main/content/global/bots/CannonballSmelter.kt b/Server/src/main/content/global/bots/CannonballSmelter.kt
new file mode 100644
index 000000000..8ac77f7e1
--- /dev/null
+++ b/Server/src/main/content/global/bots/CannonballSmelter.kt
@@ -0,0 +1,277 @@
+package content.global.bots
+
+import content.global.skill.gather.mining.MiningNode
+import content.global.skill.smithing.smelting.Bar
+import content.global.skill.smithing.smelting.SmeltingPulse
+import core.api.*
+import core.game.bots.*
+import core.game.ge.GrandExchange
+import core.game.interaction.DestinationFlag
+import core.game.interaction.MovementPulse
+import core.game.node.Node
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import org.rs09.consts.Items
+import content.data.Quests
+
+@PlayerCompatible
+@ScriptName("Falador Cannonball Smelter")
+@ScriptDescription("Start in Falador East Bank with a pick equipped","or in your inventory.")
+@ScriptIdentifier("fally_cballs")
+class CannonballSmelter : Script() {
+ var state = State.INIT
+ val bottomLadder = ZoneBorders(3016,9736,3024,9742)
+ val topLadder = ZoneBorders(3016,3336,3022,3342)
+ val coalMine = ZoneBorders(3027,9733,3054,9743)
+ //val coalMine = ZoneBorders(3056, 9729, 3018, 9758)
+ val ironMine = ZoneBorders(3052,9768,3035,9777)
+ val northMineEntrance = ZoneBorders(3062, 3375, 3058, 3381)
+ val bank = ZoneBorders(3009,3355,3018,3358)
+ var overlay: ScriptAPI.BottingOverlay? = null
+ var coalAmount = 0
+
+ override fun tick() {
+ when(state){
+
+ State.INIT -> {
+ overlay = scriptAPI.getOverlay()
+ overlay!!.init()
+ overlay!!.setTitle("Mining")
+ overlay!!.setTaskLabel("Coal Mined:")
+ overlay!!.setAmount(0)
+
+ if (coalMine.insideBorder(bot)){
+ state = State.MINING
+ } else {
+ state = State.TO_BANK
+ }
+ }
+
+ State.MINING -> {
+ bot.interfaceManager.close()
+ if(bot.inventory.freeSlots() == 0){
+ state = State.TO_BANK
+ } else if(amountInInventory(bot, Items.COAL_453) >= 18) {
+ state = State.TO_IRONMINE
+ } else if(!coalMine.insideBorder(bot)){
+ scriptAPI.walkTo(coalMine.randomLoc)
+ } else {
+ val rock = scriptAPI.getNearestObjectByPredicate({node -> node?.name?.equals("rocks", true)!! && MiningNode.forId(node?.id!!).reward == Items.COAL_453 })
+ if(rock != null) {
+ scriptAPI.interact(bot, rock, "mine")
+ } else {
+ scriptAPI.walkTo(coalMine.randomLoc)
+ }
+ }
+ overlay!!.setAmount(amountInInventory(bot, Items.COAL_453))
+ }
+ State.MINING_IRON -> {
+ bot.interfaceManager.close()
+ if(bot.inventory.freeSlots() == 0 || amountInInventory(bot, Items.IRON_ORE_440) >= 9) {
+ state = State.TO_BANK
+ } else if(!ironMine.insideBorder(bot)){
+ var loc = ironMine.randomLoc
+ scriptAPI.walkTo(loc)
+ } else {
+ val rock = scriptAPI.getNearestObjectByPredicate({node -> node?.name?.equals("rocks", true)!! && MiningNode.forId(node?.id!!).reward == Items.IRON_ORE_440 })
+ //rock?.let { InteractionListeners.run(rock.id, IntType.SCENERY,"mine",bot,rock) }
+ if(rock != null) {
+ scriptAPI.interact(bot, rock, "mine")
+ } else {
+ scriptAPI.walkTo(ironMine.randomLoc)
+ }
+ }
+ overlay!!.setAmount(amountInInventory(bot, Items.IRON_ORE_440))
+ }
+
+ State.TO_BANK -> {
+ if(bank.insideBorder(bot)){
+ val bank = scriptAPI.getNearestNode("bank booth",true)
+ if(bank != null) {
+ state = State.BANKING
+ bot.pulseManager.run(object : BankingPulse(this, bank){
+ override fun pulse(): Boolean {
+ return super.pulse()
+ }
+ })
+ }
+ } else {
+ if(bot.location.y > 3400) {
+ if(bot.location.y < 9757) {
+ val ladder = scriptAPI.getNearestNode(30941, true)
+ //ladder ?: scriptAPI.walkTo(bottomLadder.randomLoc).also { return }
+ //ladder?.interaction?.handle(bot, ladder.interaction[0]).also { ladderSwitch = true }
+ scriptAPI.interact(bot, ladder, "climb-up")
+ } else {
+ val stairs = scriptAPI.getNearestNode(30943, true)
+ scriptAPI.interact(bot, stairs, "climb-up")
+
+ }
+ } else {
+ if(northMineEntrance.insideBorder(bot)) {
+ val door = scriptAPI.getNearestNode(11714, true)
+ if(door != null) {
+ scriptAPI.interact(bot, door, "open")
+ } else {
+ scriptAPI.walkTo(bank.randomLoc)
+ }
+ } else {
+ scriptAPI.walkTo(bank.randomLoc)
+ }
+ }
+ }
+ }
+
+ State.BANKING -> {
+ scriptAPI.bankAll({
+ if(amountInBank(bot, Items.CANNONBALL_2) >= 500) {
+ val total = GrandExchange.getBotstockForId(Items.CANNONBALL_2)
+ bot.interfaceManager.close()
+ if(total < 5000) {
+ state = State.TO_GE
+ }
+ }
+ if(state != State.TO_GE) {
+ if(amountInBank(bot, Items.IRON_ORE_440) >= 9 && amountInBank(bot, Items.COAL_453) >= 18) {
+ scriptAPI.withdraw(Items.IRON_ORE_440, 9)
+ scriptAPI.withdraw(Items.COAL_453, 18)
+ scriptAPI.withdraw(Items.AMMO_MOULD_4, 1)
+ state = State.TO_FURNACE
+ bot.interfaceManager.close()
+ } else {
+ state = State.TO_MINE
+ }
+ }
+ })
+ }
+
+ State.TO_FURNACE -> {
+ if(bot.location.x > 2978) {
+ scriptAPI.walkTo(Location.create(2974, 3369, 0))
+ } else if(amountInInventory(bot, Items.STEEL_BAR_2353) < 9) {
+ val furnace = scriptAPI.getNearestNode(11666, true)
+ scriptAPI.interact(bot, furnace, "smelt")
+ // TODO: should bots use real interfaces?
+ bot.pulseManager.run(SmeltingPulse(bot, null, Bar.STEEL, 9))
+ } else {
+ state = State.SMELTING_CBALLS
+ }
+ }
+
+ State.SMELTING_CBALLS -> {
+ if(amountInInventory(bot, Items.STEEL_BAR_2353) > 0) {
+ val furnace = scriptAPI.getNearestNode(11666, true)
+ scriptAPI.useWith(bot, Items.STEEL_BAR_2353, furnace)
+ if(bot.dialogueInterpreter.dialogue != null) {
+ bot.dialogueInterpreter.handle(309, 32)
+ }
+ } else {
+ state = State.TO_BANK
+ }
+ }
+
+ State.TO_MINE -> {
+ if(bot.location.y < 3400) {
+ bot.interfaceManager.close()
+ if(!topLadder.insideBorder(bot.location)){
+ scriptAPI.walkTo(topLadder.randomLoc)
+ } else {
+ val ladder = scriptAPI.getNearestNode("Ladder",true)
+ if(ladder != null){
+ ladder.interaction.handle(bot,ladder.interaction[0])
+ } else {
+ scriptAPI.walkTo(topLadder.randomLoc)
+ }
+ }
+ } else {
+ if(!coalMine.insideBorder(bot)){
+ scriptAPI.walkTo(coalMine.randomLoc)
+ } else {
+ state = State.MINING
+ }
+ }
+ }
+
+ State.TO_IRONMINE -> {
+ if(ironMine.insideBorder(bot.location)) {
+ state = State.MINING_IRON
+ } else if(bot.location.y < 9757) {
+ if (bot.location.regionId == ((47 shl 8) or 152)) {
+ val door = scriptAPI.getNearestNode(2112,true)
+ if(door != null) {
+ scriptAPI.interact(bot, door, "open")
+ } else {
+ scriptAPI.walkTo(Location.create(3046, 9756, 0))
+ }
+ } else {
+ scriptAPI.walkTo(Location.create(3046, 9756, 0))
+ }
+ } else {
+ scriptAPI.walkTo(ironMine.randomLoc)
+ }
+ }
+
+ State.TO_GE -> {
+ scriptAPI.teleportToGE()
+ state = State.SELLING
+ }
+
+ State.SELLING -> {
+ scriptAPI.sellOnGE(Items.CANNONBALL_2)
+ state = State.GO_BACK
+ }
+
+ State.GO_BACK -> {
+ scriptAPI.teleport(bank.randomLoc)
+ state = State.TO_MINE
+ }
+ }
+ }
+
+ open class BankingPulse(val script: Script, val bank: Node) : MovementPulse(script.bot,bank, DestinationFlag.OBJECT){
+ override fun pulse(): Boolean {
+ script.bot.faceLocation(bank.location)
+ return true
+ }
+ }
+
+ override fun newInstance(): Script {
+ val script = CannonballSmelter()
+ script.bot = SkillingBotAssembler().produce(SkillingBotAssembler.Wealth.POOR,bot.startLocation)
+ return script
+ }
+
+ enum class State {
+ MINING,
+ TO_MINE,
+ TO_BANK,
+ TO_FURNACE,
+ SMELTING_CBALLS,
+ BANKING,
+ TO_GE,
+ SELLING,
+ GO_BACK,
+ TO_IRONMINE,
+ MINING_IRON,
+ INIT
+ }
+
+ init {
+ equipment.add(Item(Items.RUNE_PICKAXE_1275))
+ inventory.add(Item(Items.AMMO_MOULD_4))
+ if(false) {
+ // spawn initial iron/coal to debug smelting
+ inventory.add(Item(Items.COAL_453, 18))
+ inventory.add(Item(Items.IRON_ORE_440, 9))
+ }
+ skills.put(Skills.ATTACK,40)
+ skills.put(Skills.STRENGTH,60)
+ skills.put(Skills.MINING,75)
+ skills.put(Skills.HITPOINTS,99)
+ skills.put(Skills.DEFENCE,99)
+ skills.put(Skills.SMITHING,35)
+ quests.add(Quests.DWARF_CANNON)
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/ChickenKiller.kt b/Server/src/main/content/global/bots/ChickenKiller.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/ChickenKiller.kt
rename to Server/src/main/content/global/bots/ChickenKiller.kt
index d462bf565..ee817573f 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/ChickenKiller.kt
+++ b/Server/src/main/content/global/bots/ChickenKiller.kt
@@ -1,10 +1,10 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
+import core.game.bots.*
import core.game.node.item.Item
import core.game.world.map.Location
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.ai.general.ScriptAPI
@PlayerCompatible
@ScriptName("Chicken Killer")
@@ -23,6 +23,7 @@ class ChickenKiller : Script(){
override fun tick() {
when(state){
+ State.CONFIG -> {}
State.INIT -> {
overlay = scriptAPI.getOverlay()
overlay!!.init()
@@ -103,8 +104,6 @@ class ChickenKiller : Script(){
IDLE,
INIT,
KILLING,
- LOOTING,
- RETURN,
CONFIG,
LOOTFEATHER,
LOOTBONES,
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/CoalMiner.kt b/Server/src/main/content/global/bots/CoalMiner.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/CoalMiner.kt
rename to Server/src/main/content/global/bots/CoalMiner.kt
index 55924b6ce..9bbf13b08 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/CoalMiner.kt
+++ b/Server/src/main/content/global/bots/CoalMiner.kt
@@ -1,4 +1,4 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.interaction.DestinationFlag
@@ -8,11 +8,10 @@ import core.game.node.entity.skill.Skills
import core.game.node.item.Item
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.ai.general.ScriptAPI
-import rs09.game.ai.skillingbot.SkillingBotAssembler
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
-import api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.api.*
+import core.game.bots.*
@PlayerCompatible
@ScriptName("Falador Coal Miner")
@@ -56,7 +55,7 @@ class CoalMiner : Script() {
scriptAPI.walkTo(mine.randomLoc)
} else {
val rock = scriptAPI.getNearestNode("rocks",true)
- rock?.let { InteractionListeners.run(rock.id, InteractionListener.SCENERY,"mine",bot,rock) }
+ rock?.let { InteractionListeners.run(rock.id, IntType.SCENERY,"mine",bot,rock) }
}
overlay!!.setAmount(amountInInventory(bot, Items.COAL_453) + coalAmount)
}
diff --git a/Server/src/main/content/global/bots/CosmicCrafter.kt b/Server/src/main/content/global/bots/CosmicCrafter.kt
new file mode 100644
index 000000000..911dc2b5d
--- /dev/null
+++ b/Server/src/main/content/global/bots/CosmicCrafter.kt
@@ -0,0 +1,181 @@
+package content.global.bots
+
+import content.global.skill.runecrafting.MysteriousRuin
+import core.cache.def.impl.SceneryDefinition
+import core.game.bots.*
+import core.game.node.item.Item
+import core.game.node.scenery.Scenery
+import core.game.world.map.Location
+import core.game.world.map.RegionManager
+import core.game.world.map.zone.ZoneBorders
+import core.net.packet.PacketProcessor
+import org.rs09.consts.Items
+
+
+@PlayerCompatible
+@ScriptName("Cosmic Rune Crafter")
+@ScriptDescription("Crafts cosmic runes. Start in Zanaris w/ cosmic tiara.")
+@ScriptIdentifier("cosmic_crafter")
+class CosmicCrafter : Script() {
+ var state = State.INIT
+ var runeCounter = 0
+ var overlay: ScriptAPI.BottingOverlay? = null
+ var startLocation = Location(0,0,0)
+ var timer = 0
+ var bank_deposit = true
+ var bank = Location(2384, 4457)
+ var squeezeZone = ZoneBorders(2413, 4400, 2416, 4406)
+ var endZone = ZoneBorders(2405, 4392, 2410, 4397)
+ var agility_part = 0
+
+
+ var ruinsZone = ZoneBorders(2400, 4370, 2410, 4385)
+ var cosmicZone = ZoneBorders(2160, 4830, 2170, 4840)
+
+ var ruinPoint = Location(2407, 4379, 0)
+ var agility2ExitPoint = Location(2408, 4394, 0)
+ var agility2EntryPoint = Location(2408, 4396, 0)
+ var agility1ExitPoint = Location(2415, 4401, 0)
+ var agility1EntryPoint = Location(2415, 4403, 0)
+
+ override fun tick() {
+ if (timer-- > 0) {
+ return
+ }
+ if (bot.settings.runEnergy > 10.0) {
+ bot.settings.isRunToggled = true
+ }
+
+ when(state){
+ State.INIT -> {
+ if (!bot.equipment.containsAtLeastOneItem(Items.COSMIC_TIARA_5539)) {
+ bot.sendMessage("Please equip a cosmic tiara first.")
+ state = State.INVALID
+ } else {
+ overlay = scriptAPI.getOverlay()
+ overlay!!.init()
+ overlay!!.setTitle("Cosmic Runes")
+ overlay!!.setTaskLabel("Runes Crafted:")
+ overlay!!.setAmount(0)
+ startLocation = bot.location
+ state = State.BANKING
+ }
+ }
+
+ State.BANKING -> {
+ if(bot.location != bank) {
+ scriptAPI.walkTo(bank)
+ return
+ }
+ val runes = bot.inventory.getAmount(Item(Items.COSMIC_RUNE_564))
+ if (runes > 0) {
+ runeCounter += runes
+ overlay!!.setAmount(runeCounter)
+ bot.sendMessage("You have crafted a total of: $runeCounter runes.")
+ scriptAPI.bankItem(Items.COSMIC_RUNE_564)
+ } else {
+ scriptAPI.withdraw(Items.PURE_ESSENCE_7936, 28)
+ state = State.FIRST_AGILITY
+ }
+ }
+
+ State.FIRST_AGILITY -> {
+ val squeezeWall = scriptAPI.getNearestNode(12127, true)
+ if (agility_part == 0) {
+ if (!squeezeZone.insideBorder(bot))
+ scriptAPI.walkTo(agility1EntryPoint)
+ else {
+ scriptAPI.interact(bot, squeezeWall, "squeeze-past")
+ agility_part = 1
+ timer = 6
+ }
+ } else if (agility_part == 1) {
+ if (!endZone.insideBorder(bot))
+ scriptAPI.walkTo(agility2EntryPoint)
+ else {
+ scriptAPI.interact(bot, squeezeWall, "squeeze-past")
+ state = State.RUNNING_TO_ALTER
+ timer = 6
+ }
+ }
+ }
+
+ State.RUNNING_TO_ALTER -> {
+ if (cosmicZone.insideBorder(bot))
+ state = State.CRAFTING
+
+ val ruins = scriptAPI.getNearestNode(2458,true)
+ if (!ruinsZone.insideBorder(bot)) {
+ scriptAPI.walkTo(ruinPoint)
+ } else if (ruins != null && ruins.location.withinDistance(bot.location, 20)) {
+ if (!bot.equipment.containsAtLeastOneItem(Items.COSMIC_TIARA_5539)) {
+ bot.sendMessage("Please equip a cosmic tiara first.")
+ state = State.INVALID
+ } else {
+ val ruinsChild = (ruins as Scenery).getChild(bot)
+ scriptAPI.interact(bot, ruinsChild, "enter")
+ timer = 4
+ }
+ }
+ }
+
+ State.CRAFTING -> {
+ val alter = scriptAPI.getNearestNode(2484,true)
+ scriptAPI.interact(bot, alter, "craft-rune")
+ if(bot.inventory.containsAtLeastOneItem(Item(Items.COSMIC_RUNE_564)))
+ state = State.LEAVING_ALTER
+ }
+
+ State.LEAVING_ALTER -> {
+ var portalOut = scriptAPI.getNearestNode(2471, true)
+ scriptAPI.interact(bot, portalOut, "use")
+ if (ruinsZone.insideBorder(bot)) {
+ state = State.RETURN_AGILITY
+ timer = 2
+ }
+ }
+
+ State.RETURN_AGILITY -> {
+ val squeezeWall = scriptAPI.getNearestNode(12127, true)
+ if (agility_part == 1) {
+ if (!endZone.insideBorder(bot))
+ scriptAPI.walkTo(agility2ExitPoint)
+ else {
+ scriptAPI.interact(bot, squeezeWall, "squeeze-past")
+ agility_part = 0
+ timer = 6
+ }
+ } else if (agility_part == 0) {
+ if (!squeezeZone.insideBorder(bot))
+ scriptAPI.walkTo(agility1ExitPoint)
+ else {
+ scriptAPI.interact(bot, squeezeWall, "squeeze-past")
+ state = State.BANKING
+ timer = 6
+ }
+ }
+ }
+
+ State.INVALID -> {
+ timer = 25
+ state = State.INIT
+ }
+ }
+ }
+
+ override fun newInstance(): Script {
+ return this
+ }
+
+ enum class State {
+ INIT,
+ BANKING,
+ FIRST_AGILITY,
+ RETURN_AGILITY,
+ RUNNING_TO_ALTER,
+ CRAFTING,
+ LEAVING_ALTER,
+ INVALID
+ }
+
+}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/CowKiller.kt b/Server/src/main/content/global/bots/CowKiller.kt
similarity index 97%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/CowKiller.kt
rename to Server/src/main/content/global/bots/CowKiller.kt
index dfce3b703..ac15edb28 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/CowKiller.kt
+++ b/Server/src/main/content/global/bots/CowKiller.kt
@@ -1,4 +1,4 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
@@ -6,7 +6,8 @@ import core.game.system.task.Pulse
import core.game.world.map.Location
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.ai.pvmbots.CombatBotAssembler
+import core.game.bots.CombatBotAssembler
+import core.game.bots.Script
class CowKiller : Script() {
var state = State.KILLING
@@ -147,7 +148,7 @@ class CowKiller : Script() {
override fun newInstance(): Script {
val script = CowKiller()
- script.bot = CombatBotAssembler().produce(CombatBotAssembler.Type.values().random(),CombatBotAssembler.Tier.LOW,spawnZone.randomLoc)
+ script.bot = CombatBotAssembler().produce(CombatBotAssembler.Type.values().random(), CombatBotAssembler.Tier.LOW,spawnZone.randomLoc)
script.state = State.KILLING
return script
}
diff --git a/Server/src/main/content/global/bots/DoublingMoney.kt b/Server/src/main/content/global/bots/DoublingMoney.kt
new file mode 100644
index 000000000..785fd8690
--- /dev/null
+++ b/Server/src/main/content/global/bots/DoublingMoney.kt
@@ -0,0 +1,377 @@
+package content.global.bots
+
+import core.game.container.Container
+import core.game.interaction.Option._P_TRADE
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.request.trade.TradeModule
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.world.map.Location
+import core.game.world.map.RegionManager
+import core.game.world.update.flag.context.ChatMessage
+import core.game.world.update.flag.*
+import core.integrations.discord.Discord
+import org.json.simple.JSONArray
+import org.json.simple.JSONObject
+import org.json.simple.parser.JSONParser
+import org.rs09.consts.Items
+import core.ServerConstants
+import core.game.bots.AIRepository
+import content.global.bots.Adventurer.Companion.lumbridge
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.game.world.ImmerseWorld
+import java.io.File
+import java.io.FileReader
+import java.util.Random
+import kotlin.math.min
+
+/**
+ * A bot that doubles money
+ * 30% chance to double money, 70% chance to scam
+ * @author dginovker
+ */
+class DoublingMoney : Script() {
+ /**
+ * If we're in ScamMode, we will never trade away any more coins
+ */
+ private var scamMode = false
+
+ /**
+ * Whether the bot has run its setup (gotten appearance made/etc.)
+ */
+ private var setup = false
+
+ /**
+ * Player who most recently traded with this bot
+ */
+ var victim: Player? = null
+
+ /**
+ * Player who the bot took money from
+ */
+ private var playerOwed: Player? = null
+
+ /**
+ * Whether we sent a trade request to the player we owe yet
+ */
+ private var sentTradeRequest = false
+
+ /**
+ * Amount the bot owes the player (2x the amount the player gave the bot)
+ */
+ private var debtOwed: Int = 0
+
+ /**
+ * How many ticks the bot has run for
+ */
+ var ticks = 0
+
+ /**
+ * Duration for how long the bot will take a nap
+ */
+ private var sleepTime = 0
+
+ /**
+ * Debug information about what state the bot is in
+ */
+ private var stateString = "init"
+
+ /**
+ * How long the bot will stay around for
+ */
+ private val maxTicks = (400..750).random()
+
+ enum class Effort {
+ LOW,
+ HIGH,
+ VERY_HIGH
+ }
+
+ /**
+ * Characteristics about how hard the bot will work
+ * Most likely to be LOW, small chance to be HIGH, very small chance to be VERY_HIGH
+ */
+ private val effort = when (Random().nextInt(100)) {
+ in 0..90 -> Effort.LOW
+ in 90..98 -> Effort.HIGH
+ else -> Effort.VERY_HIGH
+ }
+
+ // Priority calculation -> Execute method mapping. Priority calculation with the highest return value is executed
+ var states = mapOf(
+ fun(): Int {
+ if (setup) return -1
+ return 250
+ } to {
+ stateString = "Putting on my outfit.."
+ var appearance = if (Math.random() < 0.5) "noob" else "intermediate"
+ if (effort == Effort.VERY_HIGH && Math.random() < 0.5) appearance = "veteran"
+ val appearancesArray = botAppearances[appearance] as JSONArray
+ scriptAPI.loadAppearanceAndEquipment(appearancesArray.random() as JSONObject)
+ setup = true
+ },
+ fun(): Int {
+ val botTradeModule = TradeModule.getExtension(bot)
+ if (botTradeModule != null) return -1
+ return 0
+ } to {
+ stateString = "Doing nothing"
+ },
+ fun(): Int {
+ return 1
+ } to {
+ stateString = "Saying Doubling money"
+ when (effort) {
+ Effort.LOW -> {
+ scriptAPI.sendChat("Doubling money")
+ sleepTime = 7
+ }
+ Effort.HIGH -> {
+ val message = arrayOf("Doubling Money", "Doubling Money", "Doubling Money!", "Doubling moneyy").random()
+ val messageEffect = arrayOf(0, 256).random()
+ val ctx = ChatMessage(bot, message, messageEffect, message.length)
+ bot.updateMasks.register(EntityFlag.Chat, ctx)
+ sleepTime = 8
+ }
+ Effort.VERY_HIGH -> {
+ val message = arrayOf("Doubling money!", "Doubling money").random()
+ val messageEffect = arrayOf(771, 2818, 2562, 768, 512, 2304, 2560, 769, 1792).random()
+ val ctx = ChatMessage(bot, message, messageEffect, message.length)
+ bot.updateMasks.register(EntityFlag.Chat, ctx)
+ sleepTime = 9
+ }
+ }
+ },
+ fun(): Int {
+ if (victim == null) return -1
+ return 10
+ } to {
+ stateString = "Accepting trade request"
+ // Send trade request back to victim
+ InteractionListeners.run(-1, IntType.PLAYER, "trade with", bot, victim!!)
+ victim = null
+ sleepTime = 3
+ },
+ fun(): Int {
+ if (debtOwed >= 0) return -1
+ val botTradeModule = TradeModule.getExtension(bot) ?: return -1
+ val playerTradeModule = TradeModule.getExtension(botTradeModule.target) ?: return -1
+ if (!playerTradeModule.container!!.containsAtLeastOneItem(Items.COINS_995)) return 15
+ return -1
+ } to {
+ val botTradeModule = TradeModule.getExtension(bot)
+ stateString = "Waiting for ${botTradeModule!!.target} to post money"
+ sleepTime = 5
+ },
+ fun(): Int {
+ // If we have debt and are in the trade screen with the player who we owe, but have not put up coins, put up coins
+ if (debtOwed == 0) return -1
+ val botTradeModule = TradeModule.getExtension(bot) ?: return -1
+ if (botTradeModule.target != playerOwed) return -1
+ if (!botTradeModule.container!!.containsAtLeastOneItem(Items.COINS_995)) return 150
+ return -1
+ } to {
+ stateString = "Paying off ${playerOwed!!.username} $debtOwed coins"
+ val botTradeModule = TradeModule.getExtension(bot)
+ val coinSlot = bot.inventory.getSlot(Item(Items.COINS_995))
+ botTradeModule!!.container!!.offer(coinSlot, debtOwed)
+ debtOwed = 0
+ playerOwed = null
+ },
+ fun(): Int {
+ val botTradeModule = TradeModule.getExtension(bot) ?: return -1
+ val playerTradeModule = TradeModule.getExtension(botTradeModule.target) ?: return -1
+ if (botTradeModule.container!!.containsAtLeastOneItem(Items.COINS_995)) return 200
+ if (playerTradeModule.container!!.containsAtLeastOneItem(Items.COINS_995)) return 200
+ return -1
+ } to {
+ stateString = "Accepting any trade screen that has coins put up"
+ val botTradeModule = TradeModule.getExtension(bot)
+ val playerTradeModule = TradeModule.getExtension(botTradeModule!!.target)
+ if (botTradeModule.isAccepted) return@to
+
+ sleepTime = (1..if (botTradeModule.getInterface() == TradeModule.MAIN_INTERFACE) 2 else 5).random()
+
+ val coinsFromBot = botTradeModule.container!!.getAmount(Items.COINS_995)
+ if (botTradeModule.getInterface() == TradeModule.ACCEPT_INTERFACE && coinsFromBot > 0 && effort == Effort.VERY_HIGH) {
+ val message = "Payed ${(if (coinsFromBot < 1000) "${coinsFromBot}gp" else "${coinsFromBot / 1000}k")}"
+ val ctx = ChatMessage(bot, message, 512, message.length)
+ bot.updateMasks.register(EntityFlag.Chat, ctx)
+
+ sleepTime = 7
+ }
+ if (botTradeModule.getInterface() == TradeModule.ACCEPT_INTERFACE && Math.random() < 0.2 && effort == Effort.HIGH && coinsFromBot > 0) {
+ scriptAPI.sendChat("Enjoy")
+ sleepTime += 4
+ }
+
+ if (botTradeModule.getInterface() == TradeModule.MAIN_INTERFACE && scamMode) {
+ sleepTime = maxOf(3, sleepTime)
+ }
+
+ if (botTradeModule.getInterface() == TradeModule.ACCEPT_INTERFACE) {
+ val player = botTradeModule.target
+ var playerNetPoL = player!!.getAttribute("double-money-net-pol", "0").toInt()
+ playerNetPoL += coinsFromBot
+ playerNetPoL -= playerTradeModule!!.container!!.getAmount(Items.COINS_995)
+ player.setAttribute("double-money-net-pol", playerNetPoL.toString())
+ // if playerNetPoL > 100k, send a Discord notification
+ if (playerNetPoL > 100_000) {
+ Discord.postPlayerAlert(player.username, "Made too much off Doubling Money bots: ${playerNetPoL / 1000}k")
+ }
+ }
+ // If we're in scamMode, we cannot actually setAccepted to true if we're giving away coins! (Gotta fake em out ;)
+ if (scamMode && botTradeModule.getInterface() == TradeModule.ACCEPT_INTERFACE && coinsFromBot > 0) {
+ botTradeModule.decline()
+ } else {
+ botTradeModule.setAccepted(true, update = true)
+ }
+ sentTradeRequest = false
+ },
+ fun(): Int {
+ if (sentTradeRequest) return 50
+ return -1
+ } to {
+ // Wait for the other player to accept
+ },
+ fun(): Int {
+ if (TradeModule.getExtension(bot) == null && debtOwed > 0 && playerOwed != null) return 25
+ return -1
+ } to {
+ // Scam over 200k payout or 70% chance
+ if (Math.random() < 0.7 || debtOwed > 200_000) {
+ stateString = "Scamming"
+ scamMode = true
+ if (effort != Effort.VERY_HIGH || Math.random() < 0.5) {
+ // At high scam effort, there's a chance we fake giving them coins back to keep milking
+ // with scamMode = true, we will never accept giving coins away at the second trade screen again
+ terminate()
+ }
+ }
+ stateString = "Sending trade request to ${playerOwed!!.name} to give them $debtOwed coins"
+ playerOwed!!.interaction.handle(bot, _P_TRADE)
+ InteractionListeners.run(-1, IntType.PLAYER, "trade with", bot, playerOwed!!)
+ sentTradeRequest = true
+ },
+ fun(): Int {
+ // If we're not near a doubling loc, or another doubling bot is on our loc, walk to random one
+ var minDist = 1000.0
+ for (loc in doublingLocs) {
+ minDist = min(minDist, loc.getDistance(bot.location))
+ }
+ if (minDist > 1) return 2
+ RegionManager.forId(bot.location.regionId).planes[bot.location.z].players.forEach {
+ if (AIRepository.PulseRepository[it?.username?.lowercase()]?.botScript is DoublingMoney
+ && it != bot
+ && it.location.getDistance(bot.location) <= 1) {
+ return 2
+ }
+ }
+ return -1
+ } to {
+ stateString = "Walking to doubling location"
+ val loc = doublingLocs.random()
+ scriptAPI.walkTo(loc)
+ sleepTime = 5
+ },
+ fun(): Int {
+ // If we're past the max ticks, log out
+ if (ticks > maxTicks) return 30
+ return -1
+ } to {
+ stateString = "Logging out"
+ terminate()
+ },
+ fun(): Int {
+ // If we're past 1,000 ticks, force terminate
+ if (ticks > 1000) return 1_000_000
+ return -1
+ } to {
+ stateString = "Force terminating"
+ terminate()
+ }
+ )
+
+ override fun toString(): String {
+ return "stateString: $stateString, sleepTime: $sleepTime, ticks: $ticks, maxTicks: $maxTicks, debtOwed: $debtOwed, playerOwed: $playerOwed, victim: $victim, effort: $effort, scamMode: $scamMode"
+ }
+
+ override fun tick() {
+ if(!bot.isActive){
+ running = false
+ return
+ }
+ ticks ++
+ if (sleepTime > 0) {
+ sleepTime --
+ return
+ }
+
+ // Execute the priority calculations, then execute the method of the one which returned highest
+ states.maxByOrNull { it.key() }?.value?.invoke()
+ }
+
+ fun tradeReceived(p: Player) {
+ victim = p
+ }
+
+ fun itemsReceived(p: Player, container: Container?) {
+ if (container == null) return
+ val coins: Item = container.get(Item(Items.COINS_995)) ?: return
+ playerOwed = p
+ debtOwed = coins.amount * 2
+ if (effort == Effort.VERY_HIGH) {
+ val message = "Received ${(if (coins.amount < 1000) "${coins.amount}gp" else "${coins.amount / 1000}k")}"
+ val ctx = ChatMessage(bot, message, 256, message.length)
+ bot.updateMasks.register(EntityFlag.Chat, ctx)
+ }
+ }
+
+ fun terminate() {
+ scriptAPI.teleport(lumbridge)
+ debtOwed = 0
+ bot.isActive = false
+ sleepTime = 500
+ AIRepository.PulseRepository.remove(bot.username.lowercase())
+
+ ImmerseWorld.spawnDoubleMoneyBot(true)
+ }
+
+ override fun newInstance(): Script? {
+ // this straight doesn't get called....
+ return null
+ }
+
+ init {
+ skills[Skills.AGILITY] = 99
+ inventory.add(Item(Items.COINS_995, 1_000_000))
+ }
+
+ companion object {
+ val startingLocs = arrayOf(Location.create(3184, 3488, 0),
+ Location.create(3167, 3461, 0),
+ Location.create(3170, 3444, 0),
+ Location.create(3165, 3487, 0),
+ Location.create(3167, 3489, 0),
+ Location.create(3162, 3491, 0))
+
+ val doublingLocs = arrayOf(Location.create(3159, 3492, 0),
+ Location.create(3164, 3484, 0),
+ Location.create(3169, 3486, 0),
+ Location.create(3172, 3489, 0),
+ Location.create(3168, 3483, 0),
+ Location.create(3166, 3493, 0),
+ Location.create(3157, 3498, 0),
+ Location.create(3157, 3485, 0)
+ )
+
+ // load from data/botdata/ge_bot_appearances_and_equipment.json
+ private val jsonFilePath = "${ServerConstants.BOT_DATA_PATH}/ge_bot_appearances_and_equipment.json"
+ private val jsonFile = File(jsonFilePath)
+ private val parser = JSONParser()
+ val botAppearances = parser.parse(FileReader(jsonFile)) as JSONObject
+ }
+
+}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/DraynorFisher.kt b/Server/src/main/content/global/bots/DraynorFisher.kt
similarity index 82%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/DraynorFisher.kt
rename to Server/src/main/content/global/bots/DraynorFisher.kt
index a59f2d672..79a9bee8c 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/DraynorFisher.kt
+++ b/Server/src/main/content/global/bots/DraynorFisher.kt
@@ -1,4 +1,4 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
@@ -6,7 +6,10 @@ import core.game.node.item.Item
import core.game.world.map.Location
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.ai.skillingbot.SkillingBotAssembler
+import core.game.bots.SkillingBotAssembler
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
class DraynorFisher : Script() {
val fishingZone = ZoneBorders(3085, 3223,3089, 3233)
@@ -21,7 +24,11 @@ class DraynorFisher : Script() {
scriptAPI.walkTo(fishingZone.randomLoc)
else {
val spot = scriptAPI.getNearestNode(316,false)
- spot?.interaction?.handle(bot,spot.interaction[0]) ?: scriptAPI.walkTo(fishingZone.randomLoc)
+ if (spot != null) {
+ InteractionListeners.run(spot.id, IntType.NPC,"net",bot,spot)
+ } else {
+ scriptAPI.walkTo(fishingZone.randomLoc)
+ }
if(bot.inventory.getMaximumAdd(Item(4151)) < 5)
state = State.BANKING
}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/DraynorWillows.kt b/Server/src/main/content/global/bots/DraynorWillows.kt
similarity index 90%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/DraynorWillows.kt
rename to Server/src/main/content/global/bots/DraynorWillows.kt
index f91f224a1..67d23669b 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/DraynorWillows.kt
+++ b/Server/src/main/content/global/bots/DraynorWillows.kt
@@ -1,5 +1,5 @@
-package rs09.game.ai.general.scriptrepository
-
+package content.global.bots
+import core.game.bots.*
import core.game.component.Component
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
@@ -7,9 +7,9 @@ import core.game.node.entity.skill.Skills
import core.game.node.item.Item
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
-import rs09.tools.stringtools.colorize
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.tools.colorize
@PlayerCompatible
@ScriptName("Draynor Willows")
@@ -17,9 +17,7 @@ import rs09.tools.stringtools.colorize
@ScriptIdentifier("draynor_trees")
class DraynorWillows : Script(){
val willowZone = ZoneBorders(3084, 3225,3091, 3239)
-
-
- val bankZone = ZoneBorders(3092, 3240,3094, 3246)
+ val bankZone = ZoneBorders(3092, 3245,3092, 3242)
var state = State.INIT
var logCount = 0
@@ -43,7 +41,7 @@ class DraynorWillows : Script(){
val willowtree = scriptAPI.getNearestNode("willow", true)
bot.interfaceManager.close()
willowtree?.let { InteractionListeners.run(willowtree.id,
- InteractionListener.SCENERY,"Chop down",bot,willowtree) }
+ IntType.SCENERY,"Chop down",bot,willowtree) }
if (bot.inventory.isFull)
state = State.BANKING
}
diff --git a/Server/src/main/content/global/bots/FarmerThiever.kt b/Server/src/main/content/global/bots/FarmerThiever.kt
new file mode 100644
index 000000000..bf3deb1ff
--- /dev/null
+++ b/Server/src/main/content/global/bots/FarmerThiever.kt
@@ -0,0 +1,72 @@
+package content.global.bots
+import core.game.world.map.zone.ZoneBorders
+import core.game.bots.SkillingBotAssembler
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+
+class FarmerThiever : Script() {
+ val pickpocketZone = ZoneBorders(3074,3245,3086,3255)
+ val bankZone = ZoneBorders(3092, 3245,3092, 3242)
+ val food = Items.JUG_OF_WINE_1993
+ val foodAmount = 10
+ var state = State.PICKPOCKETING
+
+
+ override fun tick() {
+ when(state) {
+
+ State.PICKPOCKETING -> {
+ if (!pickpocketZone.insideBorder(bot))
+ scriptAPI.walkTo(pickpocketZone.randomLoc)
+ if (bot.inventory.isFull)
+ state = State.BANKING
+ else {
+ val farmer = scriptAPI.getNearestNode(NPCs.MASTER_FARMER_2234, false)
+ bot.interfaceManager.close()
+ scriptAPI.eat(food)
+ if (farmer != null) {
+ InteractionListeners.run(farmer.id, IntType.NPC, "Pickpocket", bot, farmer)
+ }
+ }
+ }
+ State.BANKING -> {
+ val bank = scriptAPI.getNearestNode("Bank Booth",true)
+ bank ?: return
+ if (!bankZone.insideBorder(bot))
+ scriptAPI.walkTo(bankZone.randomLoc)
+ else {
+ bot.faceLocation(bank.location)
+ bot.inventory.clear()
+ bot.inventory.add(Item(food, foodAmount))
+ state = State.PICKPOCKETING
+ }
+ }
+ }
+ }
+
+
+
+
+ override fun newInstance(): Script {
+ val script = FarmerThiever()
+ script.bot = SkillingBotAssembler().produce(SkillingBotAssembler.Wealth.POOR,bot.startLocation)
+ return script
+ }
+ enum class State {
+ BANKING,
+ PICKPOCKETING
+ }
+
+ init {
+ inventory.add(Item(food,foodAmount))
+ skills[Skills.THIEVING] = 80
+ skills[Skills.HITPOINTS] = 10
+ }
+
+
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/FletchingBankstander.kt b/Server/src/main/content/global/bots/FletchingBankstander.kt
similarity index 79%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/FletchingBankstander.kt
rename to Server/src/main/content/global/bots/FletchingBankstander.kt
index 7c30fa253..201dd6f00 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/FletchingBankstander.kt
+++ b/Server/src/main/content/global/bots/FletchingBankstander.kt
@@ -1,11 +1,12 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.fletching.Fletching
-import core.game.node.entity.skill.fletching.FletchingPulse
+import content.global.skill.fletching.Fletching
+import content.global.skill.fletching.FletchingPulse
import core.game.node.item.Item
import org.rs09.consts.Items
-import rs09.game.ai.skillingbot.SkillingBotAssembler
+import core.game.bots.SkillingBotAssembler
+import core.game.bots.Script
class FletchingBankstander : Script(){
var state = State.FLETCHING
@@ -16,7 +17,7 @@ class FletchingBankstander : Script(){
State.FLETCHING -> {
bot.inventory.add(Item(Items.KNIFE_946))
bot.inventory.add(Item(Items.LOGS_1511,27))
- bot.pulseManager.run(FletchingPulse(bot, Item(Items.LOGS_1511),27,Fletching.FletchingItems.ARROW_SHAFT))
+ bot.pulseManager.run(FletchingPulse(bot, Item(Items.LOGS_1511),27, Fletching.FletchingItems.ARROW_SHAFT))
State.BANKING
}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GenericSlayerBot.kt b/Server/src/main/content/global/bots/GenericSlayerBot.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GenericSlayerBot.kt
rename to Server/src/main/content/global/bots/GenericSlayerBot.kt
index b6a11872c..5b4a7e31e 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GenericSlayerBot.kt
+++ b/Server/src/main/content/global/bots/GenericSlayerBot.kt
@@ -1,4 +1,4 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
@@ -9,7 +9,8 @@ import core.game.world.map.Location
import core.game.world.map.zone.ZoneBorders
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.ai.AIRepository
+import core.game.bots.AIRepository
+import core.game.bots.Script
/**
* A bot that does various random slayer tasks throughout the game and sells the loot on the GE.
@@ -63,7 +64,7 @@ class GenericSlayerBot : Script() {
}
}
}
-
+ else -> {}
}
}
@@ -143,7 +144,7 @@ class GenericSlayerBot : Script() {
bot.inventory.clear()
for(item in inventory)
bot.inventory.add(item)
- scriptAPI.withdraw(org.rs09.consts.Items.LOBSTER_379,10)
+ scriptAPI.withdraw(Items.LOBSTER_379,10)
bot.fullRestore()
if(assignment.amount <= 0){
@@ -219,7 +220,6 @@ class GenericSlayerBot : Script() {
GETTING_TASK,
GOING_TO_HUB,
KILLING_ENEMY,
- LOOTING,
GOING_TO_BANK,
BANKING,
GOING_TO_GE,
@@ -239,7 +239,7 @@ class GenericSlayerBot : Script() {
* List of tasks that this bot can receive
*/
enum class Task(val npc_name: String, val minAmt: Int, val maxAmt: Int, val hub: TaskHub, val borders: ZoneBorders) {
- CAVE_CRAWLER("Cave crawler",20,100,TaskHub.FREMENNIK_CAVE, ZoneBorders(2778, 9988,2798, 10002))
+ CAVE_CRAWLER("Cave crawler",20,100, TaskHub.FREMENNIK_CAVE, ZoneBorders(2778, 9988,2798, 10002))
}
/**
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GlassBlowingBankstander.kt b/Server/src/main/content/global/bots/GlassBlowingBankstander.kt
similarity index 77%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GlassBlowingBankstander.kt
rename to Server/src/main/content/global/bots/GlassBlowingBankstander.kt
index b55d00d0e..2e9e636c2 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GlassBlowingBankstander.kt
+++ b/Server/src/main/content/global/bots/GlassBlowingBankstander.kt
@@ -1,11 +1,12 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
-import core.game.interaction.inter.GlassInterface
+import content.global.skill.crafting.glass.GlassCraftingPulse
+import content.global.skill.crafting.glass.GlassProduct
+import core.game.bots.Script
+import core.game.bots.SkillingBotAssembler
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.crafting.GlassProduct
import core.game.node.item.Item
import org.rs09.consts.Items
-import rs09.game.ai.skillingbot.SkillingBotAssembler
class GlassBlowingBankstander : Script(){
var state = State.BLOWING
@@ -16,7 +17,7 @@ class GlassBlowingBankstander : Script(){
State.BLOWING -> {
bot.inventory.add(Item(Items.GLASSBLOWING_PIPE_1785))
bot.inventory.add(Item(Items.MOLTEN_GLASS_1775,27))
- GlassInterface.make(bot,GlassProduct.ORB,27)
+ bot.pulseManager.run(GlassCraftingPulse(bot, GlassProduct.ORB, 27))
State.BANKING
}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GnomeAgility.kt b/Server/src/main/content/global/bots/GnomeAgility.kt
similarity index 95%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GnomeAgility.kt
rename to Server/src/main/content/global/bots/GnomeAgility.kt
index 991430dd8..7341ff4dd 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GnomeAgility.kt
+++ b/Server/src/main/content/global/bots/GnomeAgility.kt
@@ -1,11 +1,7 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
-import api.*
+import core.game.bots.*
import core.game.world.map.zone.ZoneBorders
-import rs09.game.ai.general.ScriptAPI
-import rs09.game.ai.skillingbot.SkillingBotAssembler
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
@PlayerCompatible
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GnomeBowstring.kt b/Server/src/main/content/global/bots/GnomeBowstring.kt
similarity index 95%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GnomeBowstring.kt
rename to Server/src/main/content/global/bots/GnomeBowstring.kt
index a44190a3f..a835aa37f 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/GnomeBowstring.kt
+++ b/Server/src/main/content/global/bots/GnomeBowstring.kt
@@ -1,16 +1,16 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
-import api.*
+import core.api.*
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
-import core.game.node.entity.skill.crafting.spinning.SpinningItem
-import core.game.node.entity.skill.crafting.spinning.SpinningPulse
+import content.global.skill.crafting.spinning.SpinningItem
+import content.global.skill.crafting.spinning.SpinningPulse
+import core.game.bots.*
import core.game.node.item.Item
import core.game.world.map.Location
import core.game.world.map.path.Pathfinder
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.ai.general.ScriptAPI
@PlayerCompatible
@ScriptName("Gnome Stronghold Bowstring")
@@ -90,7 +90,7 @@ class GnomeBowstring : Script() {
}
State.SPINNING -> {
- bot.pulseManager.run(SpinningPulse(bot, Item(Items.FLAX_1779),bot.inventory.getAmount(Items.FLAX_1779),SpinningItem.FLAX))
+ bot.pulseManager.run(SpinningPulse(bot, Item(Items.FLAX_1779),bot.inventory.getAmount(Items.FLAX_1779), SpinningItem.FLAX))
sLadderSwitch = true
state = State.FIND_BANK
}
@@ -155,6 +155,8 @@ class GnomeBowstring : Script() {
state = State.PICKING
}
}
+
+ else -> {}
}
}
override fun newInstance(): Script {
diff --git a/Server/src/main/content/global/bots/GreenDragonKiller.kt b/Server/src/main/content/global/bots/GreenDragonKiller.kt
new file mode 100644
index 000000000..740fb7cd0
--- /dev/null
+++ b/Server/src/main/content/global/bots/GreenDragonKiller.kt
@@ -0,0 +1,286 @@
+package content.global.bots
+
+import content.global.skill.prayer.BoneBuryListener
+import core.api.submitIndividualPulse
+import core.game.interaction.DestinationFlag
+import core.game.interaction.MovementPulse
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.combat.InteractionType
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import core.game.world.map.RegionManager
+import core.game.world.map.zone.ZoneBorders
+import core.game.world.map.zone.impl.WildernessZone
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import core.game.bots.AIRepository
+import core.game.bots.CombatBotAssembler
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.game.node.Node
+import core.game.node.entity.combat.CombatSwingHandler
+import core.game.node.entity.combat.MeleeSwingHandler
+import kotlin.random.Random
+
+/**
+ * A bot script for killing green dragons in the wilderness.. Capable of banking, selling on ge, eating, trash talking, buries bones when fleeing and more.
+ * @param style The combat style the bot is going to use.
+ * @param area (optional) What area the bot tries to kill dragons in.
+ * @author Ceikry
+ */
+class GreenDragonKiller(val style: CombatStyle, area: ZoneBorders? = null) : Script() {
+ companion object {
+ val westDragons = ZoneBorders(2971,3606,2991,3628)
+ val wildernessLine = ZoneBorders(3078,3523,3096,3523)
+ val edgevilleLine = ZoneBorders(3078,3520,3096,3520)
+ val bankZone = ZoneBorders(3092,3489,3094,3493)
+ val trashTalkLines = arrayOf("Bro, seriously?", "Ffs.", "Jesus christ.", "????", "Friendly!", "Get a life dude", "Do you mind??? lol", "Lol.", "Kek.", "One sec burying all the bones.", "Yikes.", "Yeet", "Ah shit, here we go again.", "Cmonnnn", "Plz", "Do you have nothing better to do?", "Cmon bro pls", "I just need to get my prayer up bro jesus", "Reeeeeee", "I cant believe you've done this", "Really m8", "Zomg", "Aaaaaaaaaaaaaaaaaaaaa", "Rofl.", "Oh god oh fuck oh shit", "....", ":|", "A q p", "Hcim btw", "I hope the revenants kill your mum", "Wrap your ass titties", "Why do this", "Bruh", "Straight sussin no cap fr fr", "This ain't bussin dawg", "Really bro?")
+ }
+ var state = State.TO_BANK
+ var handler: CombatSwingHandler? = null
+ var lootDelay = 0
+ var offerMade = false
+ var trashTalkDelay = 0
+
+ var food = if (Random.nextBoolean()){
+ Items.LOBSTER_379
+ } else if(Random.nextBoolean()){
+ Items.SWORDFISH_373
+ } else {
+ Items.SHARK_385
+ }
+
+ var myBorders: ZoneBorders? = null
+ val type = CombatBotAssembler.Type.MELEE
+
+ override fun tick() {
+ if(!bot.isActive){
+ running = false
+ return
+ }
+
+ checkFoodStockAndEat()
+
+ when(state){
+
+ State.KILLING -> {
+ bot.properties.combatPulse.temporaryHandler = handler
+ scriptAPI.attackNpcInRadius(bot,"Green dragon",20)
+ state = State.LOOT_DELAYER
+ }
+
+ State.LOOT_DELAYER -> {
+ if(lootDelay < 3)
+ lootDelay++
+ else
+ state = State.LOOTING
+ }
+
+
+ State.RUNNING -> {
+ val players = RegionManager.getLocalPlayers(bot.location)
+ if(players.isEmpty()){
+ state = State.TO_DRAGONS
+ } else {
+ if(bot.skullManager.level < 21){
+ if (scriptAPI.teleportToGE())
+ state = State.REFRESHING
+ return
+ }
+ sendTrashTalk()
+ attemptToBuryBone()
+ scriptAPI.walkTo(WildernessZone.getInstance().borders.random().randomLoc)
+ }
+ }
+
+ State.LOOTING -> {
+ lootDelay = 0
+ val items = AIRepository.groundItems.get(bot)
+ if(items.isNullOrEmpty()) {state = State.KILLING; return}
+ if(bot.inventory.isFull) {
+ if(bot.inventory.containsItem(Item(food))){
+ scriptAPI.forceEat(food)
+ } else {
+ state = State.TO_BANK
+ }
+ return
+ }
+ items.toTypedArray().forEach {it: Item -> scriptAPI.takeNearestGroundItem(it.id)}
+ }
+
+ State.TO_BANK -> {
+ if(!wildernessLine.insideBorder(bot) && bot.location.y > 3521)
+ scriptAPI.walkTo(wildernessLine.randomLoc)
+ if(wildernessLine.insideBorder(bot)){
+ val ditch = scriptAPI.getNearestNode("Wilderness Ditch",true)
+ ditch ?: return
+ ditch.interaction.handle(bot,ditch.interaction[0])
+ }
+ if(!bankZone.insideBorder(bot))
+ scriptAPI.walkTo(bankZone.randomLoc)
+ if(bankZone.insideBorder(bot)){
+ val bank = scriptAPI.getNearestNode("Bank Booth",true)
+ bank ?: return
+ bot.pulseManager.run(object: MovementPulse(bot,bank, DestinationFlag.OBJECT){
+ override fun pulse(): Boolean {
+ bot.faceLocation(bank.location)
+ state = State.BANKING
+ return true
+ }
+ })
+ }
+ }
+
+ State.BANKING -> {
+ bot.pulseManager.run(object: Pulse(25){
+ override fun pulse(): Boolean {
+ for(item in bot.inventory.toArray()){
+ item ?: continue
+ if(item.name.toLowerCase().contains("lobster") || item.name.toLowerCase().contains("swordfish") || item.name.toLowerCase().contains("shark")) continue
+ if(item.id == 995) continue
+ bot.bank.add(item)
+ }
+ bot.inventory.clear()
+ state = if(bot.bank.getAmount(food) < 10)
+ State.TO_GE
+ else
+ State.TO_DRAGONS
+ for(item in inventory)
+ bot.inventory.add(item)
+ scriptAPI.withdraw(food,10)
+ bot.fullRestore()
+ return true
+ }
+ })
+ }
+
+ State.BUYING_FOOD -> {
+ state = State.TO_DRAGONS
+ bot.bank.add(Item(food,50))
+ bot.bank.refresh()
+ scriptAPI.withdraw(food, 10)
+ }
+
+ State.TO_DRAGONS -> {
+ offerMade = false
+ if(bot.location.x >= 3143){
+ if(bot.location != Location.create(3144, 3514, 0))
+ scriptAPI.walkTo(Location.create(3144, 3514, 0))
+ else {
+ val shortcut = scriptAPI.getNearestNode("Underwall Tunnel",true)
+ shortcut ?: return
+ InteractionListeners.run(shortcut.id, IntType.SCENERY, "climb-into", bot, shortcut)
+ }
+ } else {
+ if (!edgevilleLine.insideBorder(bot) && bot.location.y < 3520) {
+ scriptAPI.walkTo(edgevilleLine.randomLoc)
+ return
+ }
+ if (edgevilleLine.insideBorder(bot)) {
+ val ditch = scriptAPI.getNearestNode("Wilderness Ditch", true)
+ ditch ?: return
+ ditch.interaction.handle(bot, ditch.interaction[0]).also { return }
+ }
+ if (bot.location.y > 3520 && !myBorders!!.insideBorder(bot))
+ scriptAPI.walkTo(myBorders!!.randomLoc).also { return }
+ if (myBorders!!.insideBorder(bot))
+ state = State.KILLING
+ }
+ }
+
+ State.TO_GE -> {
+ if(bot.location.x < 3143) {
+ if(bot.location == Location.create(3136, 3517, 0)){
+ val shortcut = scriptAPI.getNearestNode("Underwall Tunnel",true)
+ shortcut ?: return
+ InteractionListeners.run(shortcut.id, IntType.SCENERY, "climb-into", bot, shortcut)
+ } else {
+ scriptAPI.walkTo(Location.create(3136, 3517, 0))
+ }
+ return
+ }
+ if(bot.location != Location.create(3165, 3487, 0)) {
+ scriptAPI.walkTo(Location.create(3165, 3487, 0))
+ } else {
+ state = State.SELL_GE
+ }
+ }
+
+ State.SELL_GE -> {
+ scriptAPI.sellAllOnGe()
+ state = State.BUYING_FOOD
+ }
+
+ State.REFRESHING -> {
+ running = false
+ return
+ }
+
+ }
+ }
+
+ private fun attemptToBuryBone() {
+ if (bot.inventory.containsAtLeastOneItem(Items.DRAGON_BONES_536)) {
+ InteractionListeners.run(Items.DRAGON_BONES_536, IntType.ITEM, "bury", bot, bot.inventory.get(Item(Items.DRAGON_BONES_536)))
+ }
+ }
+
+ private fun checkFoodStockAndEat() {
+ if (bot.inventory.getAmount(food) < 3 && state == State.KILLING)
+ state = State.TO_BANK
+ scriptAPI.eat(food)
+ }
+
+ private fun sendTrashTalk() {
+ if (trashTalkDelay-- == 0)
+ scriptAPI.sendChat(trashTalkLines.random())
+ else
+ trashTalkDelay = RandomFunction.random(10, 30)
+ }
+
+ override fun newInstance(): Script {
+ val script = GreenDragonKiller(style)
+ val tier = CombatBotAssembler.Tier.MED
+ script.bot = CombatBotAssembler().assembleMeleeDragonBot(tier, bot.startLocation)
+ return script
+ }
+
+ enum class State {
+ KILLING,
+ RUNNING,
+ LOOTING,
+ LOOT_DELAYER,
+ BANKING,
+ TO_BANK,
+ TO_DRAGONS,
+ TO_GE,
+ SELL_GE,
+ REFRESHING,
+ BUYING_FOOD
+
+ }
+
+ init {
+ handler = MeleeSwinger(this)
+ equipment.add(Item(Items.ANTI_DRAGON_SHIELD_1540))
+ myBorders = westDragons
+ skills[Skills.AGILITY] = 99
+ bankZone.addException(ZoneBorders(3094, 3492,3094, 3492))
+ bankZone.addException(ZoneBorders(3094, 3490,3094, 3490))
+ }
+
+ internal class MeleeSwinger(val script: GreenDragonKiller) : MeleeSwingHandler() {
+ override fun canSwing(entity: Entity, victim: Entity): InteractionType? {
+ if(victim is Player || victim.name.contains("revenant", ignoreCase = true)) {
+ script.state = State.RUNNING
+ script.bot.pulseManager.clear()
+ }
+ return super.canSwing(entity, victim)
+ }
+ }
+}
diff --git a/Server/src/main/content/global/bots/Idler.kt b/Server/src/main/content/global/bots/Idler.kt
new file mode 100644
index 000000000..684f4240e
--- /dev/null
+++ b/Server/src/main/content/global/bots/Idler.kt
@@ -0,0 +1,12 @@
+package content.global.bots
+
+import core.game.bots.Script
+
+class Idler : Script(){
+ override fun tick() {
+ }
+
+ override fun newInstance(): Script {
+ return this
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/bots/LawCrafter.kt b/Server/src/main/content/global/bots/LawCrafter.kt
new file mode 100644
index 000000000..16ff4a574
--- /dev/null
+++ b/Server/src/main/content/global/bots/LawCrafter.kt
@@ -0,0 +1,210 @@
+package content.global.bots
+
+import content.global.travel.ship.Ships
+import core.cache.def.impl.ItemDefinition
+import core.game.bots.*
+import core.game.node.item.Item
+import core.game.node.scenery.Scenery
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import org.rs09.consts.Items
+
+
+@PlayerCompatible
+@ScriptName("Law Rune Crafter")
+@ScriptDescription("Crafts law runes. Start near Draynor bank w/ law tiara.")
+@ScriptIdentifier("law_crafter")
+class LawCrafter : Script() {
+ var state = State.INIT
+ var runeCounter = 0
+ var overlay: ScriptAPI.BottingOverlay? = null
+ var startLocation = Location(0,0,0)
+ var timer = 0
+ var bank = ZoneBorders(3092, 3242, 3092, 3245)
+ var boatNPC = Location(3047, 3234, 0)
+ var ruinsZone = ZoneBorders(2850, 3375, 2860, 3382)
+ var ruinPoint = Location(2857, 3380, 0)
+ var onBoat = ZoneBorders(2824, 3328, 2840, 3333)
+ var offBoat = ZoneBorders(2827, 3335, 2836, 3336)
+ var lawLocation = Location(2464, 4830, 0)
+ var lawZone = ZoneBorders(2439, 4808, 2488, 4855)
+ var returnNPC = Location(2835, 3335, 0)
+ var halfBank = Location(3069, 3275, 0)
+
+ override fun tick() {
+ if (timer-- > 0) {
+ return
+ }
+ if (bot.settings.runEnergy > 10.0) {
+ bot.settings.isRunToggled = true
+ }
+
+ when(state){
+ State.INIT -> {
+ if (!bot.equipment.containsAtLeastOneItem(Items.LAW_TIARA_5545) || !ItemDefinition.canEnterEntrana(bot)) {
+ bot.sendMessage("Please equip a law tiara first.")
+ bot.sendMessage("AND REMOVE ALL WEAPONS AND ARMOR.")
+ state = State.INVALID
+ } else {
+ overlay = scriptAPI.getOverlay()
+ overlay!!.init()
+ overlay!!.setTitle("Law Runes")
+ overlay!!.setTaskLabel("Runes Crafted:")
+ overlay!!.setAmount(0)
+ startLocation = bot.location
+ state = State.BANKING
+ }
+ }
+
+ State.BANKING -> {
+ endDialogue = true
+ bot.interfaceManager.closeChatbox()
+ bot.interfaceManager.openChatbox(137)
+ bot.interfaceManager.closeChatbox()
+ bot.dialogueInterpreter.close()
+ if(!bank.insideBorder(bot)) {
+ scriptAPI.walkTo(bank.randomLoc)
+ return
+ }
+ val runes = bot.inventory.getAmount(Item(Items.LAW_RUNE_563))
+ if (runes > 0) {
+ runeCounter += runes
+ overlay!!.setAmount(runeCounter)
+ bot.sendMessage("You have crafted a total of: $runeCounter runes.")
+ scriptAPI.bankItem(Items.LAW_RUNE_563)
+ } else {
+ scriptAPI.withdraw(Items.PURE_ESSENCE_7936, 28)
+ state = State.HALF_BANK
+ }
+ }
+
+ State.TO_BOAT_GUY -> {
+ var boatGuy = scriptAPI.getNearestNode(2729, false)
+ if (boatGuy != null){
+ if (boatGuy.location.withinDistance(bot.location,2)) {
+ if (ItemDefinition.canEnterEntrana(bot)) {
+ endDialogue = false
+ Ships.PORT_SARIM_TO_ENTRANA.sail(bot)
+ state = State.CROSS_GANGPLANK
+ } else {
+ state = State.INVALID
+ }
+ } else {
+ scriptAPI.walkTo(boatGuy.location)
+ }
+
+ } else {
+ scriptAPI.walkTo(boatNPC)
+ }
+ }
+
+ State.CROSS_GANGPLANK -> {
+ if (onBoat.insideBorder(bot)) {
+ var gangplank = scriptAPI.getNearestNode(2415, true)
+ if (gangplank != null) {
+ scriptAPI.interact(bot, gangplank, "cross")
+ }
+ } else if (offBoat.insideBorder(bot)) {
+ state = State.RUNNING_TO_ALTER
+ endDialogue = true
+ }
+ }
+
+ State.RUNNING_TO_ALTER -> {
+ if (lawZone.insideBorder(bot))
+ state = State.CRAFTING
+
+ val ruins = scriptAPI.getNearestNode(2459,true)
+ if (!ruinsZone.insideBorder(bot)) {
+ scriptAPI.walkTo(ruinPoint)
+ } else if (ruins != null && ruins.location.withinDistance(bot.location, 20)) {
+ val ruinsChild = (ruins as Scenery).getChild(bot)
+ scriptAPI.interact(bot, ruinsChild, "enter")
+ timer = 4
+ }
+ }
+
+ State.CRAFTING -> {
+ if (!lawZone.insideBorder(bot)) {
+ return
+ }
+
+ if (bot.location != lawLocation) {
+ scriptAPI.walkTo(lawLocation)
+ }
+
+ val alter = scriptAPI.getNearestNode(2485,true)
+ scriptAPI.interact(bot, alter, "craft-rune")
+ if(bot.inventory.containsAtLeastOneItem(Item(Items.LAW_RUNE_563)))
+ state = State.LEAVING_ALTER
+ }
+
+ State.LEAVING_ALTER -> {
+ var portalOut = scriptAPI.getNearestNode(2472, true)
+ scriptAPI.interact(bot, portalOut, "use")
+ if (ruinsZone.insideBorder(bot)) {
+ state = State.RETURN_TO_BOAT_GUY
+ timer = 2
+ }
+ }
+
+ State.RETURN_TO_BOAT_GUY -> {
+ var boatGuy = scriptAPI.getNearestNode(2730, false)
+ if (boatGuy != null){
+ if (boatGuy.location.withinDistance(bot.location,2)) {
+ endDialogue = false
+ Ships.ENTRANA_TO_PORT_SARIM.sail(bot)
+ state = State.HALF_BANK
+ } else {
+ scriptAPI.walkTo(boatGuy.location)
+ }
+
+ } else {
+ scriptAPI.walkTo(returnNPC)
+ }
+ }
+
+ // Splits up the journey into two parts.
+ // This is because the dialogue can't be ended until you are safely on the
+ // mainland side. But new chunks won't load while dialogue is still displayed.
+ State.HALF_BANK -> {
+ if (bot.inventory.containsAtLeastOneItem(Items.PURE_ESSENCE_7936)) {
+ if ( (bot.location.x - 2) > halfBank.x) {
+ scriptAPI.walkTo(halfBank)
+ } else {
+ state = State.TO_BOAT_GUY
+ }
+ } else {
+ if ( (bot.location.x + 2) < halfBank.x) {
+ scriptAPI.walkTo(halfBank)
+ } else {
+ state = State.BANKING
+ }
+ }
+ }
+
+ State.INVALID -> {
+ timer = 25
+ state = State.INIT
+ }
+ }
+ }
+
+ override fun newInstance(): Script {
+ return this
+ }
+
+ enum class State {
+ INIT,
+ BANKING,
+ TO_BOAT_GUY,
+ CROSS_GANGPLANK,
+ RUNNING_TO_ALTER,
+ CRAFTING,
+ LEAVING_ALTER,
+ RETURN_TO_BOAT_GUY,
+ HALF_BANK,
+ INVALID
+ }
+
+}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/LobsterCatcher.kt b/Server/src/main/content/global/bots/LobsterCatcher.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/LobsterCatcher.kt
rename to Server/src/main/content/global/bots/LobsterCatcher.kt
index d8364100c..9661d41f1 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/LobsterCatcher.kt
+++ b/Server/src/main/content/global/bots/LobsterCatcher.kt
@@ -1,5 +1,6 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
+import core.game.bots.*
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
import core.game.node.entity.skill.Skills
@@ -11,11 +12,9 @@ import core.game.world.update.flag.context.Animation
import core.game.world.update.flag.context.Graphics
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.ai.AIPlayer
-import rs09.game.ai.general.ScriptAPI
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
-import rs09.game.world.GameWorld
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.game.world.GameWorld
import kotlin.random.Random
@PlayerCompatible
@@ -74,7 +73,7 @@ class LobsterCatcher : Script() {
if(spot == null){
state = State.IDLE
} else {
- InteractionListeners.run(spot.id,InteractionListener.NPC,"cage",bot,spot)
+ InteractionListeners.run(spot.id, IntType.NPC,"cage",bot,spot)
}
if(bot.inventory.isFull){
state = State.FIND_BANK
@@ -98,9 +97,9 @@ class LobsterCatcher : Script() {
state = State.FISHING
} else {
if (bot.location.x < 2837) {
- Pathfinder.find(bot, Location.create(2837, 3435, 0)).walk(bot)
+ scriptAPI.walkTo(Location.create(2837, 3435, 0))
} else {
- Pathfinder.find(bot, Location.create(2854, 3427, 0)).walk(bot)
+ scriptAPI.walkTo(Location.create(2854, 3427, 0))
}
}
}
@@ -195,4 +194,4 @@ class LobsterCatcher : Script() {
}
return newInstance()
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/bots/ManThiever.kt b/Server/src/main/content/global/bots/ManThiever.kt
new file mode 100644
index 000000000..25a2638c2
--- /dev/null
+++ b/Server/src/main/content/global/bots/ManThiever.kt
@@ -0,0 +1,27 @@
+package content.global.bots
+
+import core.game.node.item.Item
+import core.game.bots.SkillingBotAssembler
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import java.util.*
+
+class ManThiever : Script() {
+ override fun tick() {
+ val man = scriptAPI.getNearestNode("Man")
+ bot.interfaceManager.close()
+ man?.let { InteractionListeners.run(man.id,
+ IntType.NPC,"Pickpocket",bot,man) }
+ }
+
+ override fun newInstance(): Script? {
+ val script = ManThiever()
+ script.bot = SkillingBotAssembler().produce(SkillingBotAssembler.Wealth.POOR, bot.startLocation)
+ return script
+ }
+
+ init {
+ equipment.addAll(Arrays.asList(Item(1103), Item(1139), Item(1265)))
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/bots/NatureCrafter.kt b/Server/src/main/content/global/bots/NatureCrafter.kt
new file mode 100644
index 000000000..02f8248e1
--- /dev/null
+++ b/Server/src/main/content/global/bots/NatureCrafter.kt
@@ -0,0 +1,173 @@
+package content.global.bots
+
+import content.global.skill.runecrafting.MysteriousRuin
+import core.api.teleport
+import core.game.bots.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+import core.game.node.entity.player.link.TeleportManager
+import core.game.node.item.Item
+import core.game.node.scenery.Scenery
+import core.game.world.map.Location
+import core.game.world.map.zone.ZoneBorders
+import org.rs09.consts.Items
+
+
+@PlayerCompatible
+@ScriptName("Nature Rune Crafter")
+@ScriptDescription("Crafts nat runes. Start in Zanaris w/ dramen staff + Nat tiara.")
+@ScriptIdentifier("nature_crafter")
+class NatureCrafter : Script() {
+ var state = State.INIT
+ var runeCounter = 0
+ var overlay: ScriptAPI.BottingOverlay? = null
+ var startLocation = Location(0,0,0)
+ var timer = 0
+ var teleWaitTime = 16 // 18 ticks needed to rotate the clocks, 2 to teleport
+ var bank = Location(2384, 4457)
+ var ruinsZone = ZoneBorders(2866, 3017, 2873, 3022)
+ var faeRingDestination = Location(2412, 4435, 0) // You don't walk to the fae rings
+ // you can only walk next to them. so path to the nearest point that isn't in the ring.
+ var faeRingCenter = Location(2412, 4434, 0)
+ var karamjaRingDestination = Location(2801, 3002, 0)
+ var karamjaRingCenter = Location(2801, 3003, 0)
+ var natureZone = ZoneBorders(2387, 4828, 2416, 4856)
+ override fun tick() {
+ if (timer-- > 0) {
+ return
+ }
+ if (bot.settings.runEnergy > 10.0) {
+ bot.settings.isRunToggled = true
+ }
+
+ when(state){
+ State.INIT -> {
+ if (checkValid()) {
+ overlay = scriptAPI.getOverlay()
+ overlay!!.init()
+ overlay!!.setTitle("Nature Runes")
+ overlay!!.setTaskLabel("Runes Crafted:")
+ overlay!!.setAmount(0)
+ startLocation = bot.location
+ state = State.BANKING
+ }
+ }
+
+ State.BANKING -> {
+ if(bot.location != bank) {
+ scriptAPI.walkTo(bank)
+ return
+ }
+ val runes = bot.inventory.getAmount(Item(Items.NATURE_RUNE_561))
+ if (runes > 0) {
+ runeCounter += runes
+ overlay!!.setAmount(runeCounter)
+ bot.sendMessage("You have crafted a total of: $runeCounter runes.")
+ scriptAPI.bankItem(Items.NATURE_RUNE_561)
+ } else {
+ scriptAPI.withdraw(Items.PURE_ESSENCE_7936, 28)
+ state = State.RUNNING_TO_TELE
+ }
+ }
+
+ State.RUNNING_TO_TELE -> {
+ if (bot.location != faeRingDestination) {
+ scriptAPI.walkTo(faeRingDestination)
+ } else {
+ if (checkValid()) {
+ timer = teleWaitTime
+ state = State.TELE_WAIT
+ bot.sendMessage("Entering Fairy Ring Codes. Please wait...")
+ }
+ }
+ }
+
+ State.TELE_WAIT -> {
+ teleport(bot, karamjaRingCenter, TeleportManager.TeleportType.FAIRY_RING)
+ state = State.RUNNING_TO_ALTER
+ // tele takes 4 ticks so wait that long.
+ timer = 4
+ }
+
+ State.RETURN_WAIT -> {
+ teleport(bot, faeRingCenter, TeleportManager.TeleportType.FAIRY_RING)
+ state = State.BANKING
+ }
+
+ State.RUNNING_TO_ALTER -> {
+ val ruins = scriptAPI.getNearestNode(2460,true)
+ if (natureZone.insideBorder(bot))
+ state = State.CRAFTING
+
+ if (!ruinsZone.insideBorder(bot)) {
+ scriptAPI.walkTo(ruinsZone.randomLoc)
+ } else if (ruins != null && ruins.location.withinDistance(bot.location, 20) && checkValid()) {
+ val ruinsChild = (ruins as Scenery).getChild(bot)
+ scriptAPI.interact(bot, ruinsChild, "enter")
+ timer = 4
+ }
+ }
+
+ State.CRAFTING -> {
+ val alter = scriptAPI.getNearestNode(2486,true)
+ scriptAPI.interact(bot, alter, "craft-rune")
+ if(bot.inventory.containsAtLeastOneItem(Item(Items.NATURE_RUNE_561)))
+ state = State.LEAVING_ALTER
+ }
+
+ State.LEAVING_ALTER -> {
+ var portalOut = scriptAPI.getNearestNode(2473, true)
+ scriptAPI.interact(bot, portalOut, "use")
+ if (ruinsZone.insideBorder(bot))
+ state = State.RETURNING_TO_TELE
+ }
+
+ State.RETURNING_TO_TELE -> {
+ if (bot.location != karamjaRingDestination) {
+ scriptAPI.walkTo(karamjaRingDestination)
+ } else {
+ if (checkValid()) {
+ var portalOut = scriptAPI.getNearestNode(14130, true)
+ portalOut?.interaction?.handle(bot, portalOut.interaction[0])
+ timer = 4
+ state = State.RETURN_WAIT
+ }
+ }
+ }
+
+ State.INVALID -> {
+ timer = 25
+ state = State.INIT
+ }
+ }
+ }
+
+
+ // Terminates if you have invalid inventory to avoid cheating
+ private fun checkValid(): Boolean {
+ if (!bot.equipment.containsAtLeastOneItem(Items.DRAMEN_STAFF_772) or !bot.equipment.containsAtLeastOneItem(Items.NATURE_TIARA_5541)) {
+ bot.sendMessage("Please equip a dramen staff and nature tiara first.")
+ state = State.INVALID
+ return false
+ }
+ return true
+ }
+
+ override fun newInstance(): Script {
+ return this
+ }
+
+ enum class State {
+ INIT,
+ BANKING,
+ RUNNING_TO_TELE,
+ TELE_WAIT,
+ RUNNING_TO_ALTER,
+ CRAFTING,
+ LEAVING_ALTER,
+ RETURNING_TO_TELE,
+ RETURN_WAIT,
+ INVALID
+ }
+
+}
diff --git a/Server/src/main/content/global/bots/NonBankingMiner.kt b/Server/src/main/content/global/bots/NonBankingMiner.kt
new file mode 100644
index 000000000..909d0a41e
--- /dev/null
+++ b/Server/src/main/content/global/bots/NonBankingMiner.kt
@@ -0,0 +1,41 @@
+package content.global.bots
+
+import core.api.produceGroundItem
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import core.game.bots.SkillingBotAssembler
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
+
+class NonBankingMiner : Script() {
+ override fun tick() {
+ val rock = scriptAPI.getNearestNode(11957,true)
+ if(rock != null && !bot.inventory.isFull){
+ InteractionListeners.run(rock.id, IntType.SCENERY,"mine",bot,rock)
+ }
+ //checks if the bot has tin ore in his inventory and drops it if he does
+ if(bot.inventory.containsAtLeastOneItem(Items.TIN_ORE_438)){
+ produceGroundItem(bot,438,1,bot.location)
+ bot.inventory.remove(Item(Items.TIN_ORE_438,1))
+ }
+ //The following is to prevent lucky bots from breaking by having a full inventory of gems
+ if(bot.inventory.isFull && (!bot.inventory.containsAtLeastOneItem(Items.TIN_ORE_438))){
+ bot.inventory.clear()
+ bot.inventory.add(Item(Items.MITHRIL_PICKAXE_1273))
+ }
+ }
+
+ override fun newInstance(): Script {
+ val script = NonBankingMiner()
+ script.bot = SkillingBotAssembler().produce(SkillingBotAssembler.Wealth.POOR,bot.startLocation)
+ return script
+ }
+
+ init {
+ skills[Skills.ATTACK] = 99
+ inventory.add(Item(Items.MITHRIL_PICKAXE_1273))
+ skills[Skills.MINING] = 50
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SeersFlax.kt b/Server/src/main/content/global/bots/SeersFlax.kt
similarity index 93%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SeersFlax.kt
rename to Server/src/main/content/global/bots/SeersFlax.kt
index b0365f4a4..d39942005 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SeersFlax.kt
+++ b/Server/src/main/content/global/bots/SeersFlax.kt
@@ -1,15 +1,16 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.crafting.spinning.SpinningItem
-import core.game.node.entity.skill.crafting.spinning.SpinningPulse
+import content.global.skill.crafting.spinning.SpinningItem
+import content.global.skill.crafting.spinning.SpinningPulse
import core.game.node.item.Item
import core.game.world.map.Location
import core.game.world.map.path.Pathfinder
import org.rs09.consts.Items
-import rs09.game.ai.skillingbot.SkillingBotAssembler
+import core.game.bots.SkillingBotAssembler
+import core.game.bots.Script
class SeersFlax : Script(){
var state = State.PICKING
@@ -57,15 +58,15 @@ class SeersFlax : Script(){
}
State.SPINNING -> {
- bot.pulseManager.run(SpinningPulse(bot, Item(Items.FLAX_1779),bot.inventory.getAmount(Items.FLAX_1779),SpinningItem.FLAX))
+ bot.pulseManager.run(SpinningPulse(bot, Item(Items.FLAX_1779),bot.inventory.getAmount(Items.FLAX_1779), SpinningItem.FLAX))
state = State.FIND_BANK
}
State.FIND_BANK -> {
when(bot.location){
Location.create(2711, 3471, 1) -> {
- val ladder = scriptAPI.getNearestNode(25939,true)
- ladder?.interaction?.handle(bot,ladder?.interaction[0])
+ val ladder = scriptAPI.getNearestNode(25939,true) ?: return
+ ladder.interaction?.handle(bot,ladder.interaction[0])
}
Location.create(2714, 3470, 0) -> Pathfinder.find(bot,Location.create(2715, 3472, 0)).walk(bot)
Location.create(2715, 3472, 0) -> {
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SeersMagicTrees.kt b/Server/src/main/content/global/bots/SeersMagicTrees.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SeersMagicTrees.kt
rename to Server/src/main/content/global/bots/SeersMagicTrees.kt
index bf0f084cd..c3e338404 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SeersMagicTrees.kt
+++ b/Server/src/main/content/global/bots/SeersMagicTrees.kt
@@ -1,5 +1,6 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
+import core.game.bots.*
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
import core.game.node.entity.skill.Skills
@@ -8,10 +9,8 @@ import core.game.world.map.Location
import core.game.world.map.zone.ZoneBorders
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.ai.general.ScriptAPI
-import rs09.game.ai.skillingbot.SkillingBotAssembler
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
@PlayerCompatible
@ScriptName("Seers Magics")
@@ -40,7 +39,7 @@ class SeersMagicTrees : Script(){
State.CHOPPING -> {
val tree = scriptAPI.getNearestNode(1306,true)
bot.interfaceManager.close()
- tree?.let { InteractionListeners.run(tree.id, InteractionListener.SCENERY,"Chop down",bot,tree) }
+ tree?.let { InteractionListeners.run(tree.id, IntType.SCENERY,"Chop down",bot,tree) }
if(bot.inventory.isFull){
state = State.FIND_BANK
}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SharkCatcher.kt b/Server/src/main/content/global/bots/SharkCatcher.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SharkCatcher.kt
rename to Server/src/main/content/global/bots/SharkCatcher.kt
index 34366b032..f7fa50e2e 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/SharkCatcher.kt
+++ b/Server/src/main/content/global/bots/SharkCatcher.kt
@@ -1,5 +1,6 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
+import core.game.bots.*
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
import core.game.node.entity.skill.Skills
@@ -7,10 +8,8 @@ import core.game.node.item.Item
import core.game.world.map.Location
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.ai.AIPlayer
-import rs09.game.ai.general.ScriptAPI
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
import kotlin.random.Random
/*
@@ -117,7 +116,7 @@ class SharkCatcher : Script() {
if (Random.nextBoolean()) {
tick = 0
val spot = scriptAPI.getNearestNode(334, false)
- spot?.let { InteractionListeners.run(spot.id, InteractionListener.NPC,"harpoon",bot,spot) }
+ spot?.let { InteractionListeners.run(spot.id, IntType.NPC,"harpoon",bot,spot) }
if(bot.inventory.isFull){
state = State.FIND_BANK
} else {
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/ShootingStarBot.kt b/Server/src/main/content/global/bots/ShootingStarBot.kt
similarity index 85%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/ShootingStarBot.kt
rename to Server/src/main/content/global/bots/ShootingStarBot.kt
index 187006e01..5e990b82f 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/ShootingStarBot.kt
+++ b/Server/src/main/content/global/bots/ShootingStarBot.kt
@@ -1,14 +1,15 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.node.entity.skill.Skills
import core.game.node.item.Item
import core.game.world.map.Location
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.ai.general.GeneralBotCreator
-import rs09.game.content.global.worldevents.shootingstar.ShootingStarPlugin
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
+import core.game.bots.GeneralBotCreator
+import content.global.activity.shootingstar.ShootingStarPlugin
+import core.game.bots.Script
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
class ShootingStarBot : Script() {
private var state = State.FULL_IDLE
@@ -33,7 +34,7 @@ class ShootingStarBot : Script() {
}
State.MINING -> {
- InteractionListeners.run(star.starObject.id, InteractionListener.SCENERY, "mine", bot, star.starObject)
+ InteractionListeners.run(star.starObject.id, IntType.SCENERY, "mine", bot, star.starObject)
}
State.TELEPORT_BACK -> {
@@ -87,7 +88,7 @@ class ShootingStarBot : Script() {
val spawnLoc = Location.create(2230, 3339, 0)
fun new() : ShootingStarBot {
val script = ShootingStarBot()
- GeneralBotCreator(spawnLoc, script)
+ GeneralBotCreator(script, spawnLoc)
return script
}
}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/VarrockEssenceMiner.kt b/Server/src/main/content/global/bots/VarrockEssenceMiner.kt
similarity index 89%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/VarrockEssenceMiner.kt
rename to Server/src/main/content/global/bots/VarrockEssenceMiner.kt
index e263a17df..39ce02c55 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/VarrockEssenceMiner.kt
+++ b/Server/src/main/content/global/bots/VarrockEssenceMiner.kt
@@ -1,13 +1,13 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
+import core.game.bots.*
import core.game.interaction.DestinationFlag
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListeners
import core.game.interaction.MovementPulse
import core.game.world.map.Location
import core.game.world.map.zone.ZoneBorders
import org.rs09.consts.Items
-import rs09.game.ai.skillingbot.SkillingBotAssembler
-import rs09.game.interaction.InteractionListener
-import rs09.game.interaction.InteractionListeners
@PlayerCompatible
@ScriptDescription("Start in varrock bank with rune mysteries complete and a pickaxe equipped/in inventory")
@@ -18,6 +18,7 @@ class VarrockEssenceMiner : Script(){
var state = State.TO_ESSENCE
val auburyZone = ZoneBorders(3252, 3398, 3254, 3402)
val bankZone = ZoneBorders(3251, 3420,3254, 3422)
+ // Used for automatic failure prevention eg from levelup
override fun tick() {
when(state){
@@ -49,10 +50,13 @@ class VarrockEssenceMiner : Script(){
}
State.MINING -> {
- val essence = scriptAPI.getNearestNode(2491,true)
- essence?.let { InteractionListeners.run(essence.id, InteractionListener.SCENERY,"mine",bot,essence) }
- if(bot.inventory.isFull)
+ if(bot.inventory.isFull) {
state = State.TO_BANK
+ }
+ else {
+ val essence = scriptAPI.getNearestNode(2491,true)
+ essence?.let { InteractionListeners.run(essence.id, IntType.SCENERY,"mine",bot,essence) }
+ }
}
State.TO_BANK -> {
@@ -114,4 +118,4 @@ class VarrockEssenceMiner : Script(){
script.bot = SkillingBotAssembler().produce(SkillingBotAssembler.Wealth.POOR,bot.startLocation)
return script
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/VarrockSmither.kt b/Server/src/main/content/global/bots/VarrockSmither.kt
similarity index 91%
rename from Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/VarrockSmither.kt
rename to Server/src/main/content/global/bots/VarrockSmither.kt
index 75f977627..0d252503c 100644
--- a/Server/src/main/kotlin/rs09/game/ai/general/scriptrepository/VarrockSmither.kt
+++ b/Server/src/main/content/global/bots/VarrockSmither.kt
@@ -1,15 +1,16 @@
-package rs09.game.ai.general.scriptrepository
+package content.global.bots
import core.game.interaction.DestinationFlag
import core.game.interaction.MovementPulse
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.smithing.Bars
-import core.game.node.entity.skill.smithing.SmithingPulse
+import content.global.skill.smithing.Bars
+import content.global.skill.smithing.SmithingPulse
import core.game.node.item.Item
import core.game.world.map.Location
import core.tools.RandomFunction
import org.rs09.consts.Items
-import rs09.game.ai.skillingbot.SkillingBotAssembler
+import core.game.bots.SkillingBotAssembler
+import core.game.bots.Script
class VarrockSmither : Script() {
var state = State.SMITHING
diff --git a/Server/src/main/content/global/dialogue/BankDepositDialogue.kt b/Server/src/main/content/global/dialogue/BankDepositDialogue.kt
new file mode 100644
index 000000000..add635877
--- /dev/null
+++ b/Server/src/main/content/global/dialogue/BankDepositDialogue.kt
@@ -0,0 +1,55 @@
+package content.global.dialogue
+
+import core.api.dumpBeastOfBurden
+import core.api.dumpContainer
+import core.api.sendMessage
+import core.game.dialogue.DialogueFile
+import core.tools.START_DIALOGUE
+
+/**
+ * Represents the dialogue shown when the user presses
+ * "Deposit Beast of Burden" button on the Bank Interface.
+ *
+ * @author vddCore
+ */
+class BankDepositDialogue : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ START_DIALOGUE -> options(
+ "Deposit Inventory",
+ "Deposit Worn Equipment",
+ "Deposit Beast of Burden",
+ "Cancel"
+ ).also { stage++ }
+
+ 1 -> when (buttonID) {
+ 1 -> player?.let {
+ end()
+
+ if (it.inventory.isEmpty) {
+ sendMessage(it, "You have nothing in your inventory that you can deposit.")
+ } else {
+ dumpContainer(it, it.inventory)
+ }
+ }
+
+ 2 -> player?.let {
+ end()
+
+ if (it.equipment.isEmpty) {
+ sendMessage(it, "You have no equipment that you can deposit.")
+ } else {
+ dumpContainer(it, it.equipment)
+ }
+ }
+
+ 3 -> player?.let {
+ end()
+ dumpBeastOfBurden(it)
+ }
+
+ 4 -> end()
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/dialogue/BankHelpDialogue.kt b/Server/src/main/content/global/dialogue/BankHelpDialogue.kt
new file mode 100644
index 000000000..ca8c6453a
--- /dev/null
+++ b/Server/src/main/content/global/dialogue/BankHelpDialogue.kt
@@ -0,0 +1,57 @@
+package content.global.dialogue
+
+import core.api.openInterface
+import core.api.sendDialogue
+import core.api.sendItemDialogue
+import core.game.node.item.Item
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import core.game.dialogue.DialogueFile
+import core.tools.START_DIALOGUE
+
+/**
+ * Represents the dialogue shown when the user presses
+ * the "?" button on the Bank Interface.
+ *
+ * @author vddCore
+ */
+class BankHelpDialogue : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ START_DIALOGUE -> options(
+ "Check Bank Value",
+ "Banking Assistance",
+ "Close"
+ ).also { stage++ }
+
+ 1 -> when (buttonID) {
+ 1 -> player?.let {
+ end()
+
+ val wealth = it.bank.wealth
+
+ if (wealth > 0) {
+ val word = if (wealth != 1) "coins" else "coin"
+
+ sendItemDialogue(
+ it,
+ Item(Items.COINS_995, wealth),
+ " Your bank is worth ${wealth} ${word}."
+ )
+ } else {
+ sendDialogue(it, "You have no valuables in your bank.")
+ }
+ }
+
+ 2 -> player?.let {
+ end()
+
+ it.bank.close()
+ openInterface(it, Components.BANK_V2_HELP_767)
+ }
+
+ 3 -> end()
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/dialogue/BankerDialogue.kt b/Server/src/main/content/global/dialogue/BankerDialogue.kt
new file mode 100644
index 000000000..7b857da7d
--- /dev/null
+++ b/Server/src/main/content/global/dialogue/BankerDialogue.kt
@@ -0,0 +1,217 @@
+package content.global.dialogue
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.IronmanMode
+import core.plugin.Initializable
+import core.game.dialogue.IfTopic
+import core.game.dialogue.Topic
+import content.global.handlers.npc.BankerNPC
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+
+@Initializable
+class BankerDialogue(player: Player? = null) : core.game.dialogue.DialoguePlugin(player) {
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ when (stage) {
+ START_DIALOGUE -> when {
+ hasIronmanRestriction(player, IronmanMode.ULTIMATE) -> {
+ npcl(
+ core.game.dialogue.FacialExpression.ANNOYED,
+ "My apologies, dear ${if (player.isMale) "sir" else "madam"}, " +
+ "our services are not available for Ultimate ${if (player.isMale) "Ironmen" else "Ironwomen"}"
+ ).also { stage = END_DIALOGUE }
+ }
+
+ else -> {
+ npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Good day, how may I help you?"
+ ).also {
+ if (hasAwaitingGrandExchangeCollections(player)) {
+ stage++
+ } else {
+ stage += 2
+ }
+ }
+ }
+ }
+
+ 1 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Before we go any further, I should inform you that you " +
+ "have items ready for collection from the Grand Exchange."
+ ).also { stage++ }
+
+ 2 -> showTopics(
+ Topic(core.game.dialogue.FacialExpression.FRIENDLY, "I'd like to access my bank account, please.", 10),
+ Topic(core.game.dialogue.FacialExpression.FRIENDLY, "I'd like to switch my default bank account.", 7),
+ Topic(core.game.dialogue.FacialExpression.FRIENDLY, "I'd like to check my PIN settings.", 11),
+ Topic(core.game.dialogue.FacialExpression.FRIENDLY, "I'd like to collect items.", 12),
+ Topic(core.game.dialogue.FacialExpression.ASKING, "What is this place?", 3),
+ )
+
+ 3 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "This is a branch of the Bank of Gielinor. We have branches in many towns."
+ ).also { stage++ }
+
+ 4 -> playerl(
+ core.game.dialogue.FacialExpression.ASKING,
+ "And what do you do?"
+ ).also { stage++ }
+
+ 5 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "We will look after your items and money for you. " +
+ "Leave your valuables with us if you want to keep them safe."
+ ).also { stage = END_DIALOGUE }
+
+ 7 -> showTopics(
+ IfTopic(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "I'd like to turn on the Clan bank, please.",
+ 8,
+ !(player.getAttribute("clanbank:enabled",false))
+ ),
+ IfTopic(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "I'd like to turn off the Clan bank, please.",
+ 9,
+ player.getAttribute("clanbank:enabled",false)
+ ),
+ IfTopic(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "I'd like to switch to my ${getBankAccountName(player, true)} bank account.",
+ 13,
+ hasActivatedSecondaryBankAccount(player)
+ ),
+ IfTopic(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "I'd like to open a secondary bank account.",
+ 20,
+ !hasActivatedSecondaryBankAccount(player)
+ ),
+ )
+
+ 8 -> {
+ player.setAttribute("/save:clanbank:enabled", true)
+
+ npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "The Clan bank has been enabled. " +
+ "If the Clan owner is online, you will access their primary bank account instead of your own."
+ ).also { stage = 2 }
+ }
+
+ 9 -> {
+ player.removeAttribute("clanbank:enabled")
+
+ npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "The Clan bank has been disabled. " +
+ "You will now always open your personal bank account."
+ ).also { stage = 2 }
+ }
+
+ 10 -> {
+ openBankAccount(player)
+ end()
+ }
+
+ 11 -> {
+ openBankPinSettings(player)
+ end()
+ }
+
+ 12 -> {
+ openGrandExchangeCollectionBox(player)
+ end()
+ }
+
+ 13 -> {
+ toggleBankAccount(player)
+
+ npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Your active bank account has been switched. " +
+ "You can now access your ${getBankAccountName(player)} account."
+ ).also { stage = 2 }
+ }
+
+ 20 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Certainly. We offer secondary accounts to all our customers."
+ ).also { stage++ }
+
+ 21 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "The secondary account comes with a standard fee of 5,000,000 coins. The fee is non-refundable " +
+ "and account activation is permanent."
+ ).also { stage++ }
+
+ 22 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "If your inventory does not contain enough money to cover the costs, we will complement " +
+ "the amount with the money inside your primary bank account."
+ ).also { stage++ }
+
+ 23 -> npcl(
+ core.game.dialogue.FacialExpression.ASKING,
+ "Knowing all this, would you like to proceed with opening your secondary bank account?"
+ ).also { stage++ }
+
+ 24 -> showTopics(
+ Topic(core.game.dialogue.FacialExpression.HAPPY, "Yes, I am still interested.", 25),
+ Topic(core.game.dialogue.FacialExpression.ANNOYED, "Actually, I've changed my mind.", 26)
+ )
+
+ 25 -> {
+ when (activateSecondaryBankAccount(player)) {
+ SecondaryBankAccountActivationResult.ALREADY_ACTIVE -> {
+ npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Your bank account was already activated, there is no need to pay twice."
+ ).also { stage = END_DIALOGUE }
+ }
+
+ SecondaryBankAccountActivationResult.INTERNAL_FAILURE -> {
+ npcl(
+ core.game.dialogue.FacialExpression.ANNOYED,
+ "I must apologize, the transaction was not successful. Please check your " +
+ "primary bank account and your inventory - if there's money missing, please " +
+ "screenshot your chat box and contact the game developers."
+ ).also { stage = END_DIALOGUE }
+ }
+
+ SecondaryBankAccountActivationResult.NOT_ENOUGH_MONEY -> {
+ npcl(
+ core.game.dialogue.FacialExpression.ANNOYED,
+ "It appears that you do not have the money necessary to cover the costs " +
+ "associated with opening a secondary bank account. I will be waiting here " +
+ "until you do."
+ ).also { stage = END_DIALOGUE }
+ }
+
+ SecondaryBankAccountActivationResult.SUCCESS -> {
+ npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Your secondary bank account has been opened and can be accessed through any " +
+ "of the Bank of Gielinor's employees. Thank you for choosing our services."
+ ).also { stage = END_DIALOGUE }
+ }
+ }
+ }
+
+ 26 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Very well. Should you decide a secondary bank account is needed, do not hesitate to " +
+ "contact any of the Bank of Gielinor's stationary employees. We will be happy to help."
+ ).also { stage = END_DIALOGUE }
+ }
+
+ return true
+ }
+
+ override fun getIds(): IntArray = BankerNPC.NPC_IDS
+}
diff --git a/Server/src/main/content/global/dialogue/GardenerDialoguePlugin.kt b/Server/src/main/content/global/dialogue/GardenerDialoguePlugin.kt
new file mode 100644
index 000000000..6c192972c
--- /dev/null
+++ b/Server/src/main/content/global/dialogue/GardenerDialoguePlugin.kt
@@ -0,0 +1,233 @@
+package content.global.dialogue
+
+import content.global.skill.farming.FarmerPayOptionDialogue
+import content.global.skill.farming.Farmers
+import content.global.skill.farming.FarmingPatch
+import content.global.skill.farming.PatchType
+import core.api.*
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.IfTopic
+import core.game.dialogue.Topic
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.plugin.Initializable
+import org.rs09.consts.Items
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+
+@Initializable
+class GardenerDialoguePlugin(player: Player? = null) : core.game.dialogue.DialoguePlugin(player) {
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ val patches = Farmers.forId(npc.id)!!.patches
+ when (stage) {
+ // TODO: Can fruit trees be chopped down by the gardener too?
+ START_DIALOGUE -> {
+ val patch = patches[0].getPatchFor(player)
+ showTopics(
+ IfTopic(
+ FacialExpression.ASKING,
+ "Would you chop my tree down for me?",
+ 1000,
+ patch.patch.type == PatchType.TREE_PATCH && patch.plantable != null && patch.isGrown()
+ ),
+ IfTopic(
+ FacialExpression.ASKING,
+ "Would you look after my crops for me?",
+ 10,
+ !(patch.patch.type == PatchType.TREE_PATCH && patch.plantable != null && patch.isGrown())
+ ),
+ Topic(FacialExpression.ASKING, "Can you give me any farming advice?", 2000),
+ Topic(FacialExpression.ASKING, "Can you sell me something?", 30),
+ Topic(FacialExpression.NEUTRAL, "That's all, thanks.", END_DIALOGUE)
+ )
+ }
+
+ 10 -> {
+ if (patches.size > 1) {
+ npc("I might. Which one were you thinking of?").also { stage = 20 }
+ } else {
+ openPayGardenerDialogue(player, patches[0])
+ }
+ }
+
+ 20 -> when (npc.id) {
+ Farmers.ELSTAN.id, Farmers.LYRA.id -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "The north-western allotment.", 21),
+ Topic(FacialExpression.NEUTRAL, "The south-eastern allotment.", 22)
+ )
+ Farmers.DANTAERA.id, Farmers.KRAGEN.id -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "The northern allotment.", 21),
+ Topic(FacialExpression.NEUTRAL, "The southern allotment.", 22)
+ )
+ }
+ 21 -> openPayGardenerDialogue(player, patches[0])
+ 22 -> openPayGardenerDialogue(player, patches[1])
+
+ 30 -> npc(FacialExpression.NEUTRAL, "That depends on whether I have it to sell. What is it", "that you're looking for?").also { stage++ }
+ 31 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Some plant cure.", 100),
+ Topic(FacialExpression.NEUTRAL, "A bucket of compost.", 200),
+ Topic(FacialExpression.NEUTRAL, "A rake.", 300),
+ Topic("(See more items)", 32, true)
+ )
+ 32 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "A watering can.", 400),
+ Topic(FacialExpression.NEUTRAL, "A gardening trowel.", 500),
+ Topic(FacialExpression.NEUTRAL, "A seed dibber.", 600),
+ Topic("(See previous items)", 31, true),
+ Topic(FacialExpression.NEUTRAL, "Forget it.", 40, true)
+ )
+
+ 40 -> player("Forget it, you don't have anything I need.").also { stage = END_DIALOGUE }
+
+ 100 -> npc("Plant cure, eh? I might have some put aside for myself.", "Tell you what. I'll sell you some plant cure for 25 gp if", "you like.").also { stage++ }
+ 101 -> options("Yes, that sounds like a fair price.", "No thanks, I can get that much cheaper elsewhere.").also { stage++ }
+ 102 -> when (buttonId) {
+ 1 -> {
+ player(FacialExpression.HAPPY, "Yes, that sounds like a fair price.").also { stage = END_DIALOGUE }
+ if (removeItem(player, Item(Items.COINS_995, 25))) {
+ addItemOrDrop(player, Items.PLANT_CURE_6036)
+ } else {
+ sendMessage(player, "You need 25 gp to pay for that.")
+ }
+ }
+ 2 -> player("No thanks, I can get that much cheaper elsewhere.").also { stage = END_DIALOGUE }
+ }
+
+ 200 -> npc("A bucket of compost, eh? I might have one spare...", "tell you what, I'll sell it to you for 35 gp if you like.").also { stage++ }
+ 201 -> options("Yes, that sounds like a fair price.", "No thanks, I can get that much cheaper elsewhere.").also { stage++ }
+ 202 -> when (buttonId) {
+ 1 -> {
+ player("Yes, that sounds like a fair price.").also { stage = END_DIALOGUE }
+ if (removeItem(player, Item(Items.COINS_995, 35))) {
+ addItemOrDrop(player, Items.COMPOST_6032)
+ } else {
+ sendMessage(player, "You need 35 gp to pay for that.")
+ }
+ }
+ 2 -> player("No thanks, I can get that much cheaper elsewhere.").also { stage = END_DIALOGUE }
+ }
+
+ 300 -> npc("A rake, eh? I might have one spare...", "tell you what, I'll sell it to you for 15 gp if you like.").also { stage++ }
+ 301 -> options("Yes, that sounds like a fair price.", "No thanks, I can get that much cheaper elsewhere.").also { stage++ }
+ 302 -> when (buttonId) {
+ 1 -> {
+ player("Yes, that sounds like a fair price.").also { stage = END_DIALOGUE }
+ if (removeItem(player, Item(Items.COINS_995, 15))) {
+ addItemOrDrop(player, Items.RAKE_5341)
+ } else {
+ sendMessage(player, "You need 15 gp to pay for that.")
+ }
+ }
+ 2 -> player("No thanks, I can get that much cheaper elsewhere.").also { stage = END_DIALOGUE }
+ }
+
+ 400 -> npc("A watering can, eh? I might have one spare...", "tell you what, I'll sell it to you for 25 gp if you like.").also { stage++ }
+ 401 -> options("Yes, that sounds like a fair price.", "No thanks, I can get that much cheaper elsewhere.").also { stage++ }
+ 402 -> when(buttonId){
+ 1 -> {
+ player("Yes, that sounds like a fair price.").also { stage = END_DIALOGUE }
+ if (removeItem(player, Item(Items.COINS_995, 25))) {
+ addItemOrDrop(player, Items.WATERING_CAN8_5340)
+ } else {
+ sendMessage(player, "You need 25 gp to pay for that.")
+ }
+ }
+ 2 -> player("No thanks, I can get that much cheaper elsewhere.").also { stage = END_DIALOGUE }
+ }
+
+ 500 -> npc("A gardening trowel, eh? I might have one spare...", "tell you what, I'll sell it to you for 15 gp if you like.").also { stage++ }
+ 501 -> options("Yes, that sounds like a fair price.", "No thanks, I can get that much cheaper elsewhere.").also { stage++ }
+ 502 -> when (buttonId) {
+ 1 -> {
+ player("Yes, that sounds like a fair price.").also { stage = END_DIALOGUE }
+ if (removeItem(player, Item(Items.COINS_995, 15))) {
+ addItemOrDrop(player, Items.GARDENING_TROWEL_5325)
+ } else {
+ sendMessage(player, "You need 15 gp to pay for that.")
+ }
+ }
+ 2 -> player("No thanks, I can get that much cheaper elsewhere.").also { stage = END_DIALOGUE }
+ }
+
+ 600 -> npc("A seed dibber, eh? I might have one spare...", "tell you what, I'll sell it to you for 15 gp if you like.").also { stage++ }
+ 601 -> options("Yes, that sounds like a fair price.", "No thanks, I can get that much cheaper elsewhere.").also { stage++ }
+ 602 -> when (buttonId) {
+ 1 -> {
+ player("Yes, that sounds like a fair price.").also { stage = END_DIALOGUE }
+ if (removeItem(player, Item(Items.COINS_995, 15))) {
+ addItemOrDrop(player, Items.SEED_DIBBER_5343)
+ } else {
+ sendMessage(player, "You need 15 gp to pay for that.")
+ }
+ }
+ 2 -> player("No thanks, I can get that much cheaper elsewhere.").also { stage = END_DIALOGUE }
+ }
+
+ // Note: This dialogue changes slightly in April 2009, and significantly in December 2009
+ 1000 -> npc(FacialExpression.THINKING, "Why? You look like you could chop it down yourself!").also { stage++ }
+ 1001 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes, you're right - I'll do it myself.", END_DIALOGUE),
+ Topic(FacialExpression.NEUTRAL, "I can't be bothered - I'd rather pay you to do it.", 1020)
+ )
+
+ 1020 -> npc(FacialExpression.NEUTRAL, "Well, it's a lot of hard work - if you pay me 200 GP", "I'll chop it down for you.").also { stage++ }
+ 1021 -> {
+ if (inInventory(player, Items.COINS_995, 200)) {
+ showTopics(
+ Topic(FacialExpression.NEUTRAL, "Here's 200GP - chop my tree down please.", 1022),
+ Topic(FacialExpression.NEUTRAL, "I don't want to pay that much, sorry.", END_DIALOGUE)
+ )
+ } else {
+ player("I don't have that much money on me.").also { stage = END_DIALOGUE } // not authentic
+ }
+ }
+ 1022 -> {
+ end()
+ if (removeItem(player, Item(Items.COINS_995, 200))) {
+ patches[0].getPatchFor(player).clear()
+ }
+ }
+
+ 2000 -> {
+ val advice = arrayOf(
+ "There are four main Farming areas - Elstan looks after an area south of Falador, Dantaera has one to the north of Catherby, Kragen has one near Ardougne, and Lyra looks after a place in north Morytania.",
+ "If you want to grow fruit trees you could try a few places: Catherby and Brimhaven have a couple of fruit tree patches, and I hear that the gnomes are big on that sort of thing.",
+ "Bittercap mushrooms can only be grown in a special patch in Morytania, near the Mort Myre swamp. There the ground is especially dank and suited to growing poisonous fungi.",
+ "There is a special patch for growing Belladonna - I believe it's somewhere near Draynor Manor, where the ground is a tad 'unblessed'.",
+
+ "Don't just throw away your weeds after you've raked a patch - put them in a compost bin and make some compost.",
+ "Applying compost to a patch will not only reduce the chance that your crops will get diseased, but you will also grow more crops to harvest.",
+ "Supercompost is far better than normal compost, but more expensive to make. You need to rot the right type of item; show me an item, and I'll tell you if it's super-compostable or not.",
+
+ "Tree seeds must be grown in a plantpot of soil into a sapling, and then transferred to a tree patch to continue growing to adulthood.",
+ "You don't have to buy all your plantpots you know, you can make them yourself on a pottery wheel. If you're a good enough ${if (player!!.isMale) "craftsman" else "craftswoman"}, that is.",
+ "You can fill plantpots with soil from Farming patches, if you have a gardening trowel.",
+
+ "Vegetables, hops and flowers are far more likely to grow healthily if you water them periodically.",
+ "The only way to cure a bush or tree of disease is to prune away the diseased leaves with a pair of secateurs. For all other crops I would just apply some plant-cure.",
+ "If you need to be rid of your fruit trees for any reason, all you have to do is chop them down and then dig up the stump.",
+
+ "You can put up to ten potatoes, cabbages or onions in vegetable sacks, although you can't have a mix in the same sack.",
+ "You can put up to five tomatoes, strawberries, apples, bananas or oranges into a fruit basket, although you can't have a mix in the same basket.",
+ "If you want to make your own sacks and baskets you'll need to use the loom that's near the Farming shop in Falador. If you're a good enough ${if (player!!.isMale) "craftsman" else "craftswoman"}, that is.",
+ "You can buy all the farming tools from farming shops, which can be found close to the allotments.",
+
+ "Hops are good for brewing ales. I believe there's a brewery up in Keldagrim somewhere, and I've heard rumours that a place called Phasmatys used to be good for that type of thing. 'Fore they all died, of course.",
+ )
+ npcl(FacialExpression.NEUTRAL, advice.random()).also { stage = START_DIALOGUE }
+ }
+ }
+ return true
+ }
+
+ fun openPayGardenerDialogue(player: Player, fPatch: FarmingPatch) {
+ end()
+ openDialogue(player, FarmerPayOptionDialogue(fPatch.getPatchFor(player)), npc)
+ }
+
+ override fun getIds(): IntArray {
+ return Farmers.values().map(Farmers::id).toIntArray()
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/content/dialogue/ManDialoguePlugin.java b/Server/src/main/content/global/dialogue/ManDialoguePlugin.java
similarity index 93%
rename from Server/src/main/java/core/game/content/dialogue/ManDialoguePlugin.java
rename to Server/src/main/content/global/dialogue/ManDialoguePlugin.java
index f6e7d5514..aeff88be1 100644
--- a/Server/src/main/java/core/game/content/dialogue/ManDialoguePlugin.java
+++ b/Server/src/main/content/global/dialogue/ManDialoguePlugin.java
@@ -1,115 +1,117 @@
-package core.game.content.dialogue;
-
-import core.plugin.Initializable;
-import org.rs09.consts.Items;
-import core.game.node.entity.npc.NPC;
-import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.diary.DiaryType;
-import core.game.node.item.Item;
-import core.tools.RandomFunction;
-
-/**
- * Handles the man dialogues.
- *
- * @author 'Vexia
- */
-@Initializable
-public class ManDialoguePlugin extends DialoguePlugin {
- private static final Item CIDER = new Item(Items.CIDER_5763);
-
- /**
- * The NPC ids that use this dialogue plugin.
- */
- private static final int[] NPC_IDS = {1, 2, 3, 4, 5, 6, 16, 24, 25, 170, 351, 352, 353, 354, 359, 360, 361, 362, 363, 726, 727, 728, 729, 730, 1086, 2675, 2776, 3224, 3225, 3227, 5923, 5924,};
-
- public ManDialoguePlugin() {
- }
-
- public ManDialoguePlugin(Player player) {
- super(player);
- }
-
- @Override
- public DialoguePlugin newInstance(Player player) {
- return new ManDialoguePlugin(player);
- }
-
- @Override
- public boolean open(Object... args) {
- npc = (NPC) args[0];
- if (npc == null)
- return false;
- if (args.length > 1
- && args[1] instanceof Item
- && ((Item) args[1]).equals(CIDER)
- && player.getInventory().remove(CIDER)) {
-
- // Seers achievement diary
- if (!player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).isComplete(0, 6)) {
- if (player.getAttribute("diary:seers:pub-cider", 0) >= 4) {
- player.setAttribute("/save:diary:seers:pub-cider", 5);
- player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).updateTask(player, 0, 6, true);
- } else {
- player.setAttribute("/save:diary:seers:pub-cider", player.getAttribute("diary:seers:pub-cider", 0) + 1);
- }
- }
-
- npc("Ah, a glass of cider, that's very generous of you. I", "don't mind if I do. Thanks!");
- stage = 999;
- return true;
- }
- interpreter.sendDialogues(player, FacialExpression.HALF_GUILTY, "Hello, how's it going?");
- stage = RandomFunction.random(0, 5);
- if (stage == 1) {
- stage = 0;
- }
- return true;
- }
-
- @Override
- public boolean handle(int interfaceId, int buttonId) {
- switch (stage) {
- case 0:
- interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "I'm very well thank you.");
- stage = 999;
- break;
- case 999:
- end();
- break;
- case 2:
- interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "Who are you?");
- stage = 20;
- break;
- case 3:
- interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "I'm fine, how are you?");
- stage = 30;
- break;
- case 4:
- interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "No, I don't want to buy anything!");
- stage = 999;
- break;
- case 5:
- interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "I think we need a new king. The one we've got isn't", "very good.");
- stage = 999;
- break;
- case 20:
- interpreter.sendDialogues(player, FacialExpression.HALF_GUILTY, "I'm a bold adventurer.");
- stage = 21;
- break;
- case 21:
- interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "Ah, a very noble profession.");
- stage = 999;
- break;
- case 30:
- interpreter.sendDialogues(player, FacialExpression.HALF_GUILTY, "Very well thank you.");
- stage = 999;
- break;
- }
- return true;
- }
-
- @Override
- public int[] getIds() {
- return NPC_IDS;
- }
-}
+package content.global.dialogue;
+
+import core.game.dialogue.DialoguePlugin;
+import core.game.dialogue.FacialExpression;
+import core.plugin.Initializable;
+import org.rs09.consts.Items;
+import core.game.node.entity.npc.NPC;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.diary.DiaryType;
+import core.game.node.item.Item;
+import core.tools.RandomFunction;
+
+/**
+ * Handles the man dialogues.
+ *
+ * @author 'Vexia
+ */
+@Initializable
+public class ManDialoguePlugin extends DialoguePlugin {
+ private static final Item CIDER = new Item(Items.CIDER_5763);
+
+ /**
+ * The NPC ids that use this dialogue plugin.
+ */
+ private static final int[] NPC_IDS = {1, 2, 3, 4, 5, 6, 16, 24, 25, 170, 1086, 2675, 2776, 3224, 3225, 3227, 5923, 5924,};
+
+ public ManDialoguePlugin() {
+ }
+
+ public ManDialoguePlugin(Player player) {
+ super(player);
+ }
+
+ @Override
+ public DialoguePlugin newInstance(Player player) {
+ return new ManDialoguePlugin(player);
+ }
+
+ @Override
+ public boolean open(Object... args) {
+ npc = (NPC) args[0];
+ if (npc == null)
+ return false;
+ if (args.length > 1
+ && args[1] instanceof Item
+ && ((Item) args[1]).equals(CIDER)
+ && player.getInventory().remove(CIDER)) {
+
+ // Seers achievement diary
+ if (!player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).isComplete(0, 6)) {
+ if (player.getAttribute("diary:seers:pub-cider", 0) >= 4) {
+ player.setAttribute("/save:diary:seers:pub-cider", 5);
+ player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).updateTask(player, 0, 6, true);
+ } else {
+ player.setAttribute("/save:diary:seers:pub-cider", player.getAttribute("diary:seers:pub-cider", 0) + 1);
+ }
+ }
+
+ npc("Ah, a glass of cider, that's very generous of you. I", "don't mind if I do. Thanks!");
+ stage = 999;
+ return true;
+ }
+ interpreter.sendDialogues(player, FacialExpression.HALF_GUILTY, "Hello, how's it going?");
+ stage = RandomFunction.random(0, 5);
+ if (stage == 1) {
+ stage = 0;
+ }
+ return true;
+ }
+
+ @Override
+ public boolean handle(int interfaceId, int buttonId) {
+ switch (stage) {
+ case 0:
+ interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "I'm very well thank you.");
+ stage = 999;
+ break;
+ case 999:
+ end();
+ break;
+ case 2:
+ interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "Who are you?");
+ stage = 20;
+ break;
+ case 3:
+ interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "I'm fine, how are you?");
+ stage = 30;
+ break;
+ case 4:
+ interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "No, I don't want to buy anything!");
+ stage = 999;
+ break;
+ case 5:
+ interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "I think we need a new king. The one we've got isn't", "very good.");
+ stage = 999;
+ break;
+ case 20:
+ interpreter.sendDialogues(player, FacialExpression.HALF_GUILTY, "I'm a bold adventurer.");
+ stage = 21;
+ break;
+ case 21:
+ interpreter.sendDialogues(npc, FacialExpression.HALF_GUILTY, "Ah, a very noble profession.");
+ stage = 999;
+ break;
+ case 30:
+ interpreter.sendDialogues(player, FacialExpression.HALF_GUILTY, "Very well thank you.");
+ stage = 999;
+ break;
+ }
+ return true;
+ }
+
+ @Override
+ public int[] getIds() {
+ return NPC_IDS;
+ }
+}
diff --git a/Server/src/main/java/core/game/content/dialogue/TownCrierDialogue.java b/Server/src/main/content/global/dialogue/TownCrierDialogue.java
similarity index 97%
rename from Server/src/main/java/core/game/content/dialogue/TownCrierDialogue.java
rename to Server/src/main/content/global/dialogue/TownCrierDialogue.java
index 821533502..e740fbfa2 100644
--- a/Server/src/main/java/core/game/content/dialogue/TownCrierDialogue.java
+++ b/Server/src/main/content/global/dialogue/TownCrierDialogue.java
@@ -1,10 +1,12 @@
-package core.game.content.dialogue;
+package content.global.dialogue;
+import content.global.handlers.item.book.GeneralRuleBook;
+import core.game.dialogue.DialoguePlugin;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.diary.DiaryType;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.tools.RandomFunction;
@@ -121,7 +123,7 @@ public final class TownCrierDialogue extends DialoguePlugin {
GameWorld.getPulser().submit(new Pulse(4) {
@Override
public boolean pulse() {
- //player.getDialogueInterpreter().open(496107759); // TODO rulebook broken
+ GeneralRuleBook.Companion.openBook(player);
return true;
}
});
diff --git a/Server/src/main/java/core/game/interaction/inter/AgilityTicketInterface.java b/Server/src/main/content/global/handlers/iface/AgilityTicketInterface.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/inter/AgilityTicketInterface.java
rename to Server/src/main/content/global/handlers/iface/AgilityTicketInterface.java
index aefb9e933..368849e95 100644
--- a/Server/src/main/java/core/game/interaction/inter/AgilityTicketInterface.java
+++ b/Server/src/main/content/global/handlers/iface/AgilityTicketInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/java/core/game/interaction/inter/AutocastSelectPlugin.java b/Server/src/main/content/global/handlers/iface/AutocastSelectPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/inter/AutocastSelectPlugin.java
rename to Server/src/main/content/global/handlers/iface/AutocastSelectPlugin.java
index b3711bf82..a010c7bb5 100644
--- a/Server/src/main/java/core/game/interaction/inter/AutocastSelectPlugin.java
+++ b/Server/src/main/content/global/handlers/iface/AutocastSelectPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/java/core/game/interaction/inter/BoltEnchantingInterface.java b/Server/src/main/content/global/handlers/iface/BoltEnchantingInterface.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/inter/BoltEnchantingInterface.java
rename to Server/src/main/content/global/handlers/iface/BoltEnchantingInterface.java
index 37056b445..5d4a567ff 100644
--- a/Server/src/main/java/core/game/interaction/inter/BoltEnchantingInterface.java
+++ b/Server/src/main/content/global/handlers/iface/BoltEnchantingInterface.java
@@ -1,18 +1,22 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
+import core.api.ContentAPIKt;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.magic.MagicStaff;
-import core.game.node.entity.skill.magic.Runes;
+import core.game.node.entity.combat.spell.MagicStaff;
+import core.game.node.entity.combat.spell.Runes;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.system.task.Pulse;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Represents the component plugin used to handle the bolt enchanting interface.
@@ -87,6 +91,7 @@ public final class BoltEnchantingInterface extends ComponentPlugin {
}
player.getSkills().addExperience(Skills.MAGIC, bolts.getExp(), true);
player.getPacketDispatch().sendMessage("The magic of the runes coaxes out the true nature of the gem tips.");
+ playAudio(player, Sounds.ENCHANTED_TIPPING_2921);
return true;
}
});
diff --git a/Server/src/main/content/global/handlers/iface/BookInterface.kt b/Server/src/main/content/global/handlers/iface/BookInterface.kt
new file mode 100644
index 000000000..070b83ebd
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/BookInterface.kt
@@ -0,0 +1,233 @@
+package content.global.handlers.iface
+
+import core.api.closeInterface
+import core.api.getAttribute
+import core.api.openInterface
+import core.api.setAttribute
+import core.game.interaction.InterfaceListener
+import core.game.node.entity.player.Player
+
+/**
+ * Interface listener for Books
+ * Use this to listen and interact with buttons on book interfaces.
+ *
+ * This will handle component(26), component(27) and component(49) globally.
+ * DO NOT extend this class or override on(26), on(27), on(49) for defineInterfaceListeners.
+ *
+ * Instead, simply call BookInterface.openBook(...) in the listener and set the following attributes:
+ * bookInterfaceCallback - callback function for the page to display(player: Player, pageNum: Int, buttonID: Int) : Boolean
+ * You must create that display() function so that can be passed in the callback and display contents of each page.
+ *
+ * You may at any time after pageSetup,
+ * - call any functions below
+ * - call player.packetDispatch.sendInterfaceConfig
+ * - call player.packetDispatch.sendString
+ *
+ * @see content.region.desert.quest.thegolem.VarmensNotes for a quest-like example.
+ * @see content.global.handlers.item.book.GeneralRuleBook for an interactive page-jumping book.
+ *
+ * @author ovenbreado
+ */
+class BookInterface : InterfaceListener {
+
+ companion object {
+ const val CALLBACK_ATTRIBUTE = "bookInterfaceCallback"
+ const val CURRENT_PAGE_ATTRIBUTE = "bookInterfaceCurrentPage"
+
+ /* These should be in org.rs09.consts.Components but currently are not. */
+ const val FANCY_BOOK_26 = 26 // This is a 15-Lines per page book.
+ const val FANCY_BOOK_2_27 = 27 // This is a 15-Lines per page book with index and row clickable listeners.
+ const val FANCY_BOOK_3_49 = 49 // This is an 11-Lines per page book.
+
+ /* Book Lines. [Title, Left button text, Right button text, ...lines 1 to X] */
+ val FANCY_BOOK_26_LINE_IDS = arrayOf(101, 65, 66, 97, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96)
+ val FANCY_BOOK_2_27_LINE_IDS = arrayOf(163, 5, 6, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67)
+ val FANCY_BOOK_3_49_LINE_IDS = arrayOf(6, 77, 78, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76)
+
+ /* Button IDs. [Left button, Right button, (opt)index button, ...(opt)click lines 1 to X] */
+ val FANCY_BOOK_26_BUTTON_IDS = arrayOf(61, 63)
+ val FANCY_BOOK_2_27_BUTTON_IDS = arrayOf(1, 3, 159, 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 154, 156, 158)
+ val FANCY_BOOK_3_49_BUTTON_IDS = arrayOf(51, 53)
+
+ /* Image IDs. [...lines 1 to X] */
+ val FANCY_BOOK_2_27_IMAGE_ENABLE_DRAW_IDS = arrayOf(9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97)
+ val FANCY_BOOK_2_27_IMAGE_DRAW_IDS = arrayOf(10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98)
+
+ /** Opens the book interface. Call this only once in the defineListeners() at the start of opening a book. */
+ fun openBook(player: Player, bookComponent: Int, displayCallback: (player: Player, pageNum: Int, buttonId: Int) -> Boolean) {
+ closeInterface(player) // Important: Closes the previous interface.
+ setAttribute(player, CURRENT_PAGE_ATTRIBUTE, 0) // Resets the book to the first page.
+ setAttribute(player, CALLBACK_ATTRIBUTE, displayCallback) // Sets the display callback
+ if (bookComponent == FANCY_BOOK_26) {
+ openInterface(player, FANCY_BOOK_26) // Important: Opens the current interface.
+ } else if (bookComponent == FANCY_BOOK_2_27) {
+ openInterface(player, FANCY_BOOK_2_27) // Important: Opens the current interface.
+ } else if (bookComponent == FANCY_BOOK_3_49) {
+ openInterface(player, FANCY_BOOK_3_49) // Important: Opens the current interface.
+ }
+ displayCallback.invoke(player, 0, 0)
+ }
+
+ /** Sets up title, pagination and content. Call this in the display callback every time the page changes. */
+ fun pageSetup(player: Player, bookComponent: Int, title: String, contents: Array, hasPagination: Boolean = true) {
+ val currentPage = getAttribute(player, CURRENT_PAGE_ATTRIBUTE, 0)
+ if (bookComponent == FANCY_BOOK_26) {
+ clearBookLines(player, FANCY_BOOK_26, FANCY_BOOK_26_LINE_IDS)
+ clearButtons(player, FANCY_BOOK_26, FANCY_BOOK_26_BUTTON_IDS)
+ setTitle(player, FANCY_BOOK_26, FANCY_BOOK_26_LINE_IDS, title)
+ if (hasPagination) {
+ setPagination(player, FANCY_BOOK_26, FANCY_BOOK_26_LINE_IDS, FANCY_BOOK_26_BUTTON_IDS, currentPage, contents.size, contents[currentPage].pages.size == 1)
+ }
+ setPageContent(player, FANCY_BOOK_26, FANCY_BOOK_26_LINE_IDS, FANCY_BOOK_26_BUTTON_IDS, currentPage, contents)
+ } else if (bookComponent == FANCY_BOOK_2_27) {
+ clearBookLines(player, FANCY_BOOK_2_27, FANCY_BOOK_2_27_LINE_IDS)
+ clearButtons(player, FANCY_BOOK_2_27, FANCY_BOOK_2_27_BUTTON_IDS)
+ setTitle(player, FANCY_BOOK_2_27, FANCY_BOOK_2_27_LINE_IDS, title)
+ if (hasPagination) {
+ setPagination(player, FANCY_BOOK_2_27, FANCY_BOOK_2_27_LINE_IDS, FANCY_BOOK_2_27_BUTTON_IDS, currentPage, contents.size, contents[currentPage].pages.size == 1)
+ }
+ setPageContent(player, FANCY_BOOK_2_27, FANCY_BOOK_2_27_LINE_IDS, FANCY_BOOK_2_27_BUTTON_IDS, currentPage, contents)
+ } else if (bookComponent == FANCY_BOOK_3_49) {
+ clearBookLines(player, FANCY_BOOK_3_49, FANCY_BOOK_3_49_LINE_IDS)
+ clearButtons(player, FANCY_BOOK_3_49, FANCY_BOOK_3_49_BUTTON_IDS)
+ setTitle(player, FANCY_BOOK_3_49, FANCY_BOOK_3_49_LINE_IDS, title)
+ if (hasPagination) {
+ setPagination(player, FANCY_BOOK_3_49, FANCY_BOOK_3_49_LINE_IDS, FANCY_BOOK_3_49_BUTTON_IDS, currentPage, contents.size, contents[currentPage].pages.size == 1)
+ }
+ setPageContent(player, FANCY_BOOK_3_49, FANCY_BOOK_3_49_LINE_IDS, FANCY_BOOK_3_49_BUTTON_IDS, currentPage, contents)
+ }
+ }
+
+ /** Clear all lines rather than leaving "Line X" on all visible rows. */
+ fun clearBookLines(player: Player, componentId: Int, bookLineIds: Array) {
+ openInterface(player, componentId) // Important: Opens the current interface.
+ for (i in bookLineIds) {
+ player.packetDispatch.sendString("", componentId, i)
+ }
+ }
+
+ /** Clear all buttons rather than leaving invisible button rows. */
+ fun clearButtons(player: Player, componentId: Int, bookButtonIds: Array) {
+ for (i in bookButtonIds) {
+ player.packetDispatch.sendInterfaceConfig(componentId, i, true)
+ }
+ }
+
+ /** Set title of book. */
+ fun setTitle(player: Player, componentId: Int, bookLineIds: Array, title: String) {
+ player.packetDispatch.sendString(title, componentId, bookLineIds[0])
+ }
+
+ /** Set pagination numbers of current page in book. CurrentPage is 0 index. */
+ fun setPagination(player: Player, componentId: Int, bookLineIds: Array, bookButtonIds: Array, currentPage: Int, totalPages: Int, hasRightPage: Boolean) {
+ player.packetDispatch.sendInterfaceConfig(componentId, bookButtonIds[0], currentPage <= 0)
+ player.packetDispatch.sendInterfaceConfig(componentId, bookButtonIds[1], currentPage >= totalPages - 1)
+ player.packetDispatch.sendString("" + (currentPage * 2 + 1), componentId, bookLineIds[1])
+ player.packetDispatch.sendString("" + (currentPage * 2 + 2), componentId, bookLineIds[2])
+ if (hasRightPage) {
+ // If there's no right side page, remove the page number. Usually for odd paged books.
+ if (componentId == FANCY_BOOK_26) {
+ player.packetDispatch.sendString("", componentId, FANCY_BOOK_26_LINE_IDS[2])
+ } else if (componentId == FANCY_BOOK_2_27) {
+ player.packetDispatch.sendString("", componentId, FANCY_BOOK_2_27_LINE_IDS[2])
+ } else if (componentId == FANCY_BOOK_3_49) {
+ player.packetDispatch.sendString("", componentId, FANCY_BOOK_3_49_LINE_IDS[2])
+ }
+ }
+ }
+
+ /** Set text contents of book. CurrentPage is 0 index. */
+ fun setPageContent(player: Player, componentId: Int, bookLineIds: Array, bookButtonIds: Array, currentPage: Int, contents: Array) {
+ for (page in contents[currentPage].pages) {
+ for (line in page.lines) {
+ // This is to prevent error child lines being set and crashing the client.
+ if (bookLineIds.contains(line.child)) {
+ player.packetDispatch.sendString(line.message, componentId, line.child)
+ }
+ if (bookButtonIds.contains(line.child)) {
+ player.packetDispatch.sendInterfaceConfig(componentId, line.child, false)
+ player.packetDispatch.sendString(line.message, componentId, line.child)
+ }
+ }
+
+ }
+ }
+
+ /** Sets models(pictures) on lineId of pageSet (0 index). Call this in the display function after pageSetup. */
+ fun setModelOnPage(player: Player, pageSet: Int, modelId: Int, componentId: Int, enableLineId: Int, drawLineId: Int, zoom: Int, pitch: Int, yaw: Int) {
+ if (pageSet == getAttribute(player, CURRENT_PAGE_ATTRIBUTE, 0)) {
+ player.packetDispatch.sendInterfaceConfig(componentId, enableLineId, false)
+ player.packetDispatch.sendModelOnInterface(modelId, componentId, drawLineId, 0)
+ player.packetDispatch.sendAngleOnInterface(componentId, drawLineId, zoom, pitch, yaw)
+ } else {
+ player.packetDispatch.sendInterfaceConfig(componentId, enableLineId, true)
+ }
+ }
+
+ /** Function to check if player read to the last page. For quest triggers. */
+ fun isLastPage(pageNum: Int, totalPages: Int): Boolean {
+ return pageNum == totalPages - 1
+ }
+
+ /** PRIVATE: Increments the current page and invokes the callback function. */
+ private fun changePageAndCallback(player: Player, increment: Int, buttonId: Int) {
+ val callback: ((player: Player, pageNum: Int, buttonId: Int) -> Boolean)? =
+ getAttribute(player, CALLBACK_ATTRIBUTE, null)
+ val currentPage = getAttribute(player, CURRENT_PAGE_ATTRIBUTE, 0)
+ setAttribute(player, CURRENT_PAGE_ATTRIBUTE, currentPage + increment)
+
+ callback?.invoke(player, currentPage + increment, buttonId)
+ }
+ }
+
+ override fun defineInterfaceListeners() {
+ on(FANCY_BOOK_26) { player, _, _, buttonID, _, _ ->
+ when (buttonID) {
+ FANCY_BOOK_26_BUTTON_IDS[0] -> { changePageAndCallback(player, -1, buttonID) }
+ FANCY_BOOK_26_BUTTON_IDS[1] -> { changePageAndCallback(player, 1, buttonID) }
+ else -> (changePageAndCallback(player, 0, buttonID))
+ }
+ return@on true
+ }
+ on(FANCY_BOOK_2_27) { player, _, _, buttonID, _, _ ->
+ when (buttonID) {
+ FANCY_BOOK_2_27_BUTTON_IDS[0] -> { changePageAndCallback(player, -1, buttonID) }
+ FANCY_BOOK_2_27_BUTTON_IDS[1] -> { changePageAndCallback(player, 1, buttonID) }
+ else -> (changePageAndCallback(player, 0, buttonID))
+ }
+ return@on true
+ }
+ on(FANCY_BOOK_3_49) { player, _, _, buttonID, _, _ ->
+ when (buttonID) {
+ FANCY_BOOK_3_49_BUTTON_IDS[0] -> { changePageAndCallback(player, -1, buttonID) }
+ FANCY_BOOK_3_49_BUTTON_IDS[1] -> { changePageAndCallback(player, 1, buttonID) }
+ else -> (changePageAndCallback(player, 0, buttonID))
+ }
+ return@on true
+ }
+ }
+}
+
+/** Constructs a new PageSet object. */
+class PageSet(vararg pages: Page) {
+ val pages: Array
+
+ init {
+ this.pages = pages as Array
+ }
+}
+
+/** Constructs a new Page object. */
+class Page(vararg lines: BookLine) {
+ val lines: Array
+
+ init {
+ this.lines = lines as Array
+ }
+}
+
+/** Constructs a new BookLine object. */
+class BookLine(
+ val message: String,
+ val child: Int
+)
diff --git a/Server/src/main/java/core/game/interaction/inter/CharacterDesignInterface.java b/Server/src/main/content/global/handlers/iface/CharacterDesignInterface.java
similarity index 88%
rename from Server/src/main/java/core/game/interaction/inter/CharacterDesignInterface.java
rename to Server/src/main/content/global/handlers/iface/CharacterDesignInterface.java
index 91649baec..62c8657bb 100644
--- a/Server/src/main/java/core/game/interaction/inter/CharacterDesignInterface.java
+++ b/Server/src/main/content/global/handlers/iface/CharacterDesignInterface.java
@@ -1,9 +1,9 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
-import core.game.content.quest.tutorials.tutorialisland.CharacterDesign;
+import content.region.misc.tutisland.handlers.iface.CharacterDesign;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/ChocatriceIncubationInterface.kt b/Server/src/main/content/global/handlers/iface/ChocatriceIncubationInterface.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/ChocatriceIncubationInterface.kt
rename to Server/src/main/content/global/handlers/iface/ChocatriceIncubationInterface.kt
index 91c763a48..d086cd95c 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/ChocatriceIncubationInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/ChocatriceIncubationInterface.kt
@@ -1,4 +1,4 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
import core.game.component.Component
import core.game.component.ComponentDefinition
diff --git a/Server/src/main/java/core/game/interaction/inter/ClanInterfacePlugin.java b/Server/src/main/content/global/handlers/iface/ClanInterfacePlugin.java
similarity index 88%
rename from Server/src/main/java/core/game/interaction/inter/ClanInterfacePlugin.java
rename to Server/src/main/content/global/handlers/iface/ClanInterfacePlugin.java
index c00fdef2e..5003507c2 100644
--- a/Server/src/main/java/core/game/interaction/inter/ClanInterfacePlugin.java
+++ b/Server/src/main/content/global/handlers/iface/ClanInterfacePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -14,8 +14,8 @@ import core.plugin.Plugin;
import core.tools.StringUtils;
import kotlin.Unit;
-import static api.ContentAPIKt.sendInputDialogue;
-import static api.ContentAPIKt.setInterfaceText;
+import static core.api.ContentAPIKt.sendInputDialogue;
+import static core.api.ContentAPIKt.setInterfaceText;
/**
* Represents the plugin used to handle the clan interfaces.
@@ -36,17 +36,21 @@ public final class ClanInterfacePlugin extends ComponentPlugin {
switch (component.getId()) {
case 589:
switch (button) {
- case 9:
- if (player.getInterfaceManager().getComponent(590) != null) {
- player.getPacketDispatch().sendMessage("Please close the interface you have open before using 'Clan Setup'");
+ case 9:
+ if (player.getInterfaceManager().getComponent(590) != null) {
+ player.getPacketDispatch().sendMessage("Please close the interface you have open before using 'Clan Setup'");
+ return true;
+ }
+ ClanRepository.openSettings(player);
return true;
- }
- ClanRepository.openSettings(player);
- return true;
- case 14:
- player.getDetails().getCommunication().toggleLootshare(player);
- return true;
+ case 14:
+ if (player.getIronmanManager().checkRestriction()) {
+ return false;
+ }
+ player.getDetails().getCommunication().toggleLootshare(player);
+ return true;
}
+
break;
case 590:
final ClanRepository clan = ClanRepository.get(player.getName(), true);
diff --git a/Server/src/main/java/core/game/interaction/inter/CombatTabInterface.java b/Server/src/main/content/global/handlers/iface/CombatTabInterface.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/inter/CombatTabInterface.java
rename to Server/src/main/content/global/handlers/iface/CombatTabInterface.java
index 11e01665c..bd3938d5c 100644
--- a/Server/src/main/java/core/game/interaction/inter/CombatTabInterface.java
+++ b/Server/src/main/content/global/handlers/iface/CombatTabInterface.java
@@ -1,15 +1,15 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.CombatSwingHandler;
+import core.game.node.entity.combat.CombatSwingHandler;
import core.game.node.entity.combat.equipment.WeaponInterface;
import core.game.node.entity.combat.equipment.WeaponInterface.WeaponInterfaces;
import core.game.node.entity.player.Player;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.plugin.Initializable;
import core.plugin.Plugin;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/CreditShopInterface.kt b/Server/src/main/content/global/handlers/iface/CreditShopInterface.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/CreditShopInterface.kt
rename to Server/src/main/content/global/handlers/iface/CreditShopInterface.kt
index 9ecf360ec..e45f3ef74 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/CreditShopInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/CreditShopInterface.kt
@@ -1,80 +1,80 @@
-package rs09.game.interaction.inter
-
-import api.*
-import core.game.node.entity.player.Player
-import core.game.node.item.Item
-import org.rs09.consts.Components
-import org.rs09.consts.Items
-import rs09.game.interaction.InterfaceListener
-
-class CreditShopInterface : InterfaceListener {
-
- val CREDIT_SHOP = Components.CREDIT_SHOP
- val TEXT_CHILD = 39
-
- override fun defineInterfaceListeners() {
- on(CREDIT_SHOP){player, component, opcode, buttonID, slot, itemID ->
- val item = getItem(buttonID)
-
- if(opcode == 155){
- sendDialogue(player, "This item costs ${item.price} credits.")
- return@on true
- }
-
- if(buttonID == 14 || buttonID == 21){
- val specific = when(opcode){
- 196 -> if(buttonID == 14) Items.RED_PARTYHAT_1038 else Items.RED_HWEEN_MASK_1057
- 124 -> if(buttonID == 14) Items.GREEN_PARTYHAT_1044 else Items.GREEN_HWEEN_MASK_1053
- 199 -> if(buttonID == 14) Items.BLUE_PARTYHAT_1042 else Items.BLUE_HWEEN_MASK_1055
- 234 -> Items.YELLOW_PARTYHAT_1040
- 168 -> Items.PURPLE_PARTYHAT_1046
- 166 -> Items.WHITE_PARTYHAT_1048
- else -> Items.DWARF_WEED_SEED_5303
- }
- attemptPurchase(player,specific,item.price)
- } else {
- attemptPurchase(player,item.id,item.price)
- }
- return@on true
- }
-
- onOpen(CREDIT_SHOP){player, component ->
- sendCredits(player)
- return@onOpen true
- }
- }
-
- private fun getItem(buttonID: Int): ShopItem{
- return when(buttonID){
- 14 -> ShopItem(Items.BLUE_PARTYHAT_1042,75)
- 18 -> ShopItem(Items.SCYTHE_1419,100)
- 20 -> ShopItem(Items.JANGLES_THE_MONKEY_14648,200)
- 17 -> ShopItem(Items.CHRISTMAS_CRACKER_962,65)
- 21 -> ShopItem(Items.BLUE_HWEEN_MASK_1055,65)
- 16 -> ShopItem(Items.SANTA_HAT_1050,65)
- 19 -> ShopItem(Items.BUNNY_EARS_1037,150)
- 15 -> ShopItem(Items.EASTER_RING_7927,100)
- else -> ShopItem(0,0)
- }
- }
-
- fun sendCredits(player: Player){
- setInterfaceText(player, "You have ${player.details.credits} credits to spend.", CREDIT_SHOP, TEXT_CHILD)
- }
-
- fun attemptPurchase(player: Player, item: Int, price: Int){
- if(player.details.credits < price){
- sendDialogue(player, "You don't have enough credits for that.")
- return
- }
-
- if(player.inventory.add(Item(item))){
- player.details.credits -= price
- } else {
- sendDialogue(player, "You don't have enough inventory space for that.")
- }
- sendCredits(player)
- }
-
- internal class ShopItem(val id: Int, val price: Int)
+package content.global.handlers.iface
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import core.game.interaction.InterfaceListener
+
+class CreditShopInterface : InterfaceListener {
+
+ val CREDIT_SHOP = Components.CREDIT_SHOP
+ val TEXT_CHILD = 39
+
+ override fun defineInterfaceListeners() {
+ on(CREDIT_SHOP){player, component, opcode, buttonID, slot, itemID ->
+ val item = getItem(buttonID)
+
+ if(opcode == 155){
+ sendDialogue(player, "This item costs ${item.price} credits.")
+ return@on true
+ }
+
+ if(buttonID == 14 || buttonID == 21){
+ val specific = when(opcode){
+ 196 -> if(buttonID == 14) Items.RED_PARTYHAT_1038 else Items.RED_HWEEN_MASK_1057
+ 124 -> if(buttonID == 14) Items.GREEN_PARTYHAT_1044 else Items.GREEN_HWEEN_MASK_1053
+ 199 -> if(buttonID == 14) Items.BLUE_PARTYHAT_1042 else Items.BLUE_HWEEN_MASK_1055
+ 234 -> Items.YELLOW_PARTYHAT_1040
+ 168 -> Items.PURPLE_PARTYHAT_1046
+ 166 -> Items.WHITE_PARTYHAT_1048
+ else -> Items.DWARF_WEED_SEED_5303
+ }
+ attemptPurchase(player,specific,item.price)
+ } else {
+ attemptPurchase(player,item.id,item.price)
+ }
+ return@on true
+ }
+
+ onOpen(CREDIT_SHOP){player, component ->
+ sendCredits(player)
+ return@onOpen true
+ }
+ }
+
+ private fun getItem(buttonID: Int): ShopItem {
+ return when(buttonID){
+ 14 -> ShopItem(Items.BLUE_PARTYHAT_1042,75)
+ 18 -> ShopItem(Items.SCYTHE_1419,100)
+ 20 -> ShopItem(Items.JANGLES_THE_MONKEY_14648,200)
+ 17 -> ShopItem(Items.CHRISTMAS_CRACKER_962,65)
+ 21 -> ShopItem(Items.BLUE_HWEEN_MASK_1055,65)
+ 16 -> ShopItem(Items.SANTA_HAT_1050,65)
+ 19 -> ShopItem(Items.BUNNY_EARS_1037,150)
+ 15 -> ShopItem(Items.EASTER_RING_7927,100)
+ else -> ShopItem(0,0)
+ }
+ }
+
+ fun sendCredits(player: Player){
+ setInterfaceText(player, "You have ${player.details.credits} credits to spend.", CREDIT_SHOP, TEXT_CHILD)
+ }
+
+ fun attemptPurchase(player: Player, item: Int, price: Int){
+ if(player.details.credits < price){
+ sendDialogue(player, "You don't have enough credits for that.")
+ return
+ }
+
+ if(player.inventory.add(Item(item))){
+ player.details.credits -= price
+ } else {
+ sendDialogue(player, "You don't have enough inventory space for that.")
+ }
+ sendCredits(player)
+ }
+
+ internal class ShopItem(val id: Int, val price: Int)
}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/inter/CrystalKeyChestPlugin.java b/Server/src/main/content/global/handlers/iface/CrystalKeyChestPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/inter/CrystalKeyChestPlugin.java
rename to Server/src/main/content/global/handlers/iface/CrystalKeyChestPlugin.java
index 69656ef8b..852eb4997 100644
--- a/Server/src/main/java/core/game/interaction/inter/CrystalKeyChestPlugin.java
+++ b/Server/src/main/content/global/handlers/iface/CrystalKeyChestPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/java/core/game/interaction/inter/DeathInterfacePlugin.java b/Server/src/main/content/global/handlers/iface/DeathInterfacePlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/inter/DeathInterfacePlugin.java
rename to Server/src/main/content/global/handlers/iface/DeathInterfacePlugin.java
index 44139de63..5b57c3078 100644
--- a/Server/src/main/java/core/game/interaction/inter/DeathInterfacePlugin.java
+++ b/Server/src/main/content/global/handlers/iface/DeathInterfacePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/java/core/game/interaction/inter/EmoteTabInterface.java b/Server/src/main/content/global/handlers/iface/EmoteTabInterface.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/inter/EmoteTabInterface.java
rename to Server/src/main/content/global/handlers/iface/EmoteTabInterface.java
index 63a541aab..7506f5fcb 100644
--- a/Server/src/main/java/core/game/interaction/inter/EmoteTabInterface.java
+++ b/Server/src/main/content/global/handlers/iface/EmoteTabInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/content/global/handlers/iface/EquipmentInterface.java b/Server/src/main/content/global/handlers/iface/EquipmentInterface.java
new file mode 100644
index 000000000..f8cfa2660
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/EquipmentInterface.java
@@ -0,0 +1,231 @@
+package content.global.handlers.iface;
+
+import content.global.skill.summoning.familiar.BurdenBeast;
+import core.api.ContentAPIKt;
+import core.cache.def.impl.ItemDefinition;
+import core.game.component.Component;
+import core.game.component.ComponentDefinition;
+import core.game.component.ComponentPlugin;
+import core.game.container.Container;
+import core.game.container.ContainerEvent;
+import core.game.container.ContainerListener;
+import core.game.container.access.InterfaceContainer;
+import core.game.container.impl.EquipmentContainer;
+import core.game.interaction.OptionHandler;
+import core.game.node.entity.combat.DeathTask;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.prayer.PrayerType;
+import core.game.node.item.Item;
+import core.game.system.task.Pulse;
+import core.net.packet.PacketRepository;
+import core.net.packet.context.ContainerContext;
+import core.net.packet.out.ContainerPacket;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.game.global.action.EquipHandler;
+import core.game.interaction.IntType;
+import core.game.interaction.InteractionListeners;
+import core.game.world.GameWorld;
+import core.tools.Log;
+
+/**
+ * Represents the equipment interface.
+ * @author Emperor
+ *
+ */
+@Initializable
+public final class EquipmentInterface extends ComponentPlugin {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ ComponentDefinition.put(102, this);
+ ComponentDefinition.put(387, this);
+ ComponentDefinition.put(667, this);
+ ComponentDefinition.put(670, this);
+ return this;
+ }
+
+ @Override
+ public boolean handle(final Player p, Component component, int opcode, int button, final int slot, final int itemId) {
+ if (component.getId() == 667) {
+ if (button != 14) {
+ return false;
+ }
+ switch (opcode) {
+ case 155:
+ p.getPulseManager().clear();
+ GameWorld.getPulser().submit(new Pulse(1, p) {
+ @Override
+ public boolean pulse() {
+ EquipHandler.unequip(p, slot, itemId);
+ return true;
+ }
+ });
+ return true;
+ case 9:
+ p.sendMessage(p.getEquipment().get(slot).getDefinition().getExamine());
+ return true;
+ case 196:
+ GameWorld.getPulser().submit(new Pulse(1, p) {
+ @Override
+ public boolean pulse() {
+ operate(p, slot, itemId);
+ return true;
+ }
+ });
+ return true;
+ }
+ return false;
+ }
+ else if (component.getId() == 670) {
+ switch (opcode) {
+ case 155:
+ p.getPulseManager().clear();
+ final Item item = p.getInventory().get(slot);
+ GameWorld.getPulser().submit(new Pulse(1, p) {
+ @Override
+ public boolean pulse() {
+ if (item == null) return true;
+ InteractionListeners.run(item.getId(), IntType.ITEM,"equip",p, item);
+ return true;
+ }
+ });
+ return true;
+ case 9:
+ p.sendMessage(p.getInventory().get(slot).getDefinition().getExamine());
+ return true;
+ }
+ }
+ switch (opcode) {
+ case 206:
+ if (button != 28) {
+ return false;
+ }
+ GameWorld.getPulser().submit(new Pulse(1, p) {
+ @Override
+ public boolean pulse() {
+ operate(p, slot, itemId);
+ return true;
+ }
+ });
+ return true;
+ default:
+ switch (button) {
+ case 52:
+ if (p.getInterfaceManager().isOpened() && p.getInterfaceManager().getOpened().getId() == 102) {
+ return true;
+ }
+
+ // (Highlight white items are auto destroyed on death Enum#616 (Items kept on death interface) TODO: Parse server sided
+ // SCRIPT 118 - Items kept on death interface CS
+ // ARG 0: Safe location check Takes: 0 Safe Area/2 in POH/3 in Castle Wars/4 in Trouble Brewing/5 in Barbass
+ int zoneType = p.getZoneMonitor().getType();
+ // ARG 1: Amount of items kept on death Takes: 0/1/3/4
+ Container[] itemArray = DeathTask.getContainers(p);
+ Container kept = itemArray[0];
+ int amtKeptOnDeath = kept.itemCount();
+ if (amtKeptOnDeath > 4 && zoneType == 0) {
+ ContentAPIKt.log(this.getClass(), Log.ERR, "Items kept on death interface should not contain more than 4 items when not in a safe zone!");
+ }
+ // ARG 2: Item kept on death slot 0
+ int slot0 = kept.getId(0);
+ // ARG 3: Item kept on death slot 1
+ int slot1 = kept.getId(1);
+ // ARG 4: Item kept on death slot 2
+ int slot2 = kept.getId(2);
+ // ARG 5: Item kept on death slot 3
+ int slot3 = kept.getId(3);
+ // ARG 6: Player skulled Takes: 0 not skulled/1 skulled
+ int skulled = p.getSkullManager().isSkulled() ? 1 : 0;
+ // ARG 7: Player has summoning creature out Takes: 0 not out/1 Creature summoned
+ int hasBoB;
+ if (p.getFamiliarManager().hasFamiliar()) {
+ if (p.getFamiliarManager().getFamiliar().isBurdenBeast()) {
+ hasBoB = ((BurdenBeast) p.getFamiliarManager().getFamiliar()).getContainer().isEmpty() ? 0 : 1;
+ } else {
+ hasBoB = 0;
+ }
+ } else {
+ hasBoB = 0;
+ }
+ // ARG 8: String for effect:
+ // if (arg1 == 0) arg8 + " This reduces the items you keep from three to zero!"
+ // if (arg1 == 1) arg8 + " This reduces the items you keep from three to zero!" + " " + " " + "However, you also have the " + " " + "Protect Items" + " " + " prayer active, which saves you one extra item!");
+ Object[] params = new Object[] { hasBoB, skulled, slot3, slot2, slot1, slot0, amtKeptOnDeath, zoneType, "You are skulled." };
+ p.getPacketDispatch().sendRunScript(118, "siiooooii", params);
+
+ p.getInterfaceManager().openComponent(102);
+ break;
+ case 28:
+ if (opcode == 81) {
+ p.getPulseManager().clear();
+ GameWorld.getPulser().submit(new Pulse(1, p) {
+ @Override
+ public boolean pulse() {
+ EquipHandler.unequip(p, slot, itemId);
+ return true;
+ }
+ });
+ return true;
+ }
+ break;
+ case 55:
+ if (p.getInterfaceManager().isOpened() && p.getInterfaceManager().getOpened().getId() == 667) {
+ return true;
+ }
+ final ContainerListener listener = new ContainerListener() {
+ @Override
+ public void update(Container c, ContainerEvent e) {
+ PacketRepository.send(ContainerPacket.class, new ContainerContext(p, -1, -1, 98, e.getItems(), false, e.getSlots()));
+ }
+
+ @Override
+ public void refresh(Container c) {
+ PacketRepository.send(ContainerPacket.class, new ContainerContext(p, -1, -1, 98, c, false));
+ }
+ };
+ p.getInterfaceManager().openComponent(667).setCloseEvent((player, c) -> {
+ player.removeAttribute("equip_stats_open");
+ player.getInterfaceManager().closeSingleTab();
+ player.getInventory().getListeners().remove(listener);
+ return true;
+ });
+ p.setAttribute("equip_stats_open", true);
+ EquipmentContainer.update(p);
+ p.getInterfaceManager().openSingleTab(new Component(670));
+ InterfaceContainer.generateItems(p, p.getInventory().toArray(), new String[] { "Equip" }, 670, 0, 7, 4, 93);
+ p.getInventory().getListeners().add(listener);
+ p.getInventory().refresh();
+ ItemDefinition.statsUpdate(p);
+ p.getPacketDispatch().sendIfaceSettings(1278, 14, 667, 0, 13);
+ break;
+ }
+ }
+ return true;
+ }
+
+ /**
+ * Operates an item.
+ * @param player The player.
+ * @param slot The container slot.
+ * @param itemId The item id.
+ */
+ public void operate(Player player, int slot, int itemId) {
+ if (slot < 0 || slot > 13) {
+ return;
+ }
+ Item item = player.getEquipment().get(slot);
+ if (item == null) {
+ return;
+ }
+ if(InteractionListeners.run(item.getId(),IntType.ITEM,"operate",player,item)){
+ return;
+ }
+ OptionHandler handler = item.getOperateHandler();
+ if (handler != null && handler.handle(player, item, "operate")) {
+ return;
+ }
+ player.getPacketDispatch().sendMessage("You can't operate that.");
+ }
+
+}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/ExperienceInterface.kt b/Server/src/main/content/global/handlers/iface/ExperienceInterface.kt
similarity index 86%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/ExperienceInterface.kt
rename to Server/src/main/content/global/handlers/iface/ExperienceInterface.kt
index b8e4e1215..c7003ea83 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/ExperienceInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/ExperienceInterface.kt
@@ -1,15 +1,16 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
-import api.*
+import core.api.*
import core.game.component.Component
import core.game.component.ComponentDefinition
import core.game.component.ComponentPlugin
import core.game.node.entity.player.Player
-import core.game.node.entity.player.link.audio.Audio
import core.game.node.entity.skill.Skills
import core.plugin.Initializable
import core.plugin.Plugin
-import rs09.game.system.SystemLogger
+import core.tools.Log
+import org.rs09.consts.Sounds
+import content.data.Quests
/**
* Represents the experience interface.
@@ -70,7 +71,7 @@ class ExperienceInterface() : ComponentPlugin() {
46 -> Skills.WOODCUTTING
40 -> Skills.FLETCHING
51 -> Skills.CONSTRUCTION
- else -> Skills.SLAYER.also { SystemLogger.logWarn("EXP_INTERFACE: Invalid SKILL CHOICE BUTTON: $button") }
+ else -> Skills.SLAYER.also { log(this::class.java, Log.WARN, "EXP_INTERFACE: Invalid SKILL CHOICE BUTTON: $button") }
}
player.setAttribute("exp_interface:skill",skill)
}
@@ -78,22 +79,22 @@ class ExperienceInterface() : ComponentPlugin() {
}
private fun checkHerblore(player: Player): Boolean{
- return (player.questRepository.isComplete("Druidic Ritual"))
+ return (player.questRepository.isComplete(Quests.DRUIDIC_RITUAL))
}
private fun checkSummoning(player: Player): Boolean{
- return player.questRepository.isComplete("Wolf Whistle")
+ return player.questRepository.isComplete(Quests.WOLF_WHISTLE)
}
private fun checkRunecrafting(player: Player): Boolean{
- return player.questRepository.isComplete("Rune Mysteries")
+ return player.questRepository.isComplete(Quests.RUNE_MYSTERIES)
}
companion object {
/**
* Represents the sound to send.
*/
- private val SOUND = Audio(1270, 12, 1)
+ private val SOUND = Sounds.TBCU_FINDGEM_1270
@JvmField
public val COMPONENT_ID = 134
}
diff --git a/Server/src/main/content/global/handlers/iface/FairyRingInterface.kt b/Server/src/main/content/global/handlers/iface/FairyRingInterface.kt
new file mode 100644
index 000000000..69ad63e21
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/FairyRingInterface.kt
@@ -0,0 +1,232 @@
+package content.global.handlers.iface
+
+import core.api.*
+import core.game.event.FairyRingDialEvent
+import core.game.interaction.InterfaceListener
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.map.Location
+import core.game.world.map.RegionManager
+import core.tools.RandomFunction
+import content.data.Quests
+
+/**
+ * Handles the fairy ring interface
+ * @author Ceikry
+ */
+class FairyRingInterface : InterfaceListener {
+ companion object {
+ const val RINGS_IFACE = 734
+ const val LOG_IFACE_ID = 735
+ const val VARP_F_RING = 816
+ const val VB_LOG_SORT_ORDER = 4618
+ const val VB_RING_1 = 2341
+ const val VB_RING_2 = 2342
+ const val VB_RING_3 = 2343
+ val RING_1 = arrayOf('a','d','c','b')
+ val RING_2 = arrayOf('i','l','k','j')
+ val RING_3 = arrayOf('p','s','r','q')
+ }
+
+ override fun defineInterfaceListeners() {
+
+ onOpen(RINGS_IFACE){ player, _ ->
+ openSingleTab(player, LOG_IFACE_ID)
+ saveVarp(player, VARP_F_RING)
+ return@onOpen true
+ }
+
+ onOpen(LOG_IFACE_ID){ player, _ ->
+ drawLog(player)
+ return@onOpen true
+ }
+
+ onClose(RINGS_IFACE){ player, _ ->
+ closeTabInterface(player)
+ return@onClose true
+ }
+
+ on(RINGS_IFACE){ player, _, _, buttonID, _, _ ->
+ when(buttonID){
+ 23 -> increment(player,1)
+ 25 -> increment(player,2)
+ 27 -> increment(player,3)
+ 24 -> decrement(player,1)
+ 26 -> decrement(player,2)
+ 28 -> decrement(player,3)
+ 21 -> confirm(player)
+ }
+ return@on true
+ }
+
+ on(LOG_IFACE_ID,12){ player, _, _, _, _, _ ->
+ toggleSortOrder(player)
+ return@on true
+ }
+
+ }
+
+ /**
+ * Draws the travel log interface
+ * Currently, the visited logs is a bool array in globalData. Someone should migrate this to prefs or something at some point.
+ * On transmit of Varp 816, which all used varbits are part of here, the CS2 is invoked to populate the codes in the log and sort them correctly.
+ * @param player The player to draw the interface for
+ */
+ private fun drawLog (player: Player)
+ {
+ for (i in FairyRing.values().indices) {
+ /* Snowscape: show all fairy ring destinations, whether they have been there or not.
+ if (!player.savedData.globalData.hasTravelLog(i)) {
+ continue
+ }
+ */
+ val ring = FairyRing.values()[i]
+ if (ring.childId == -1) {
+ continue
+ }
+ setInterfaceText(player, " ${ring.tip}", LOG_IFACE_ID, ring.childId)
+ }
+ }
+
+ private fun toggleSortOrder(player: Player) {
+ val curSort = getVarbit(player, VB_LOG_SORT_ORDER) == 0
+ setVarbit(player, VB_LOG_SORT_ORDER, if (curSort) 1 else 0)
+ drawLog(player)
+ }
+
+ fun increment(player: Player,ring: Int) {
+ val vbit = when(ring) {
+ 1 -> VB_RING_1
+ 2 -> VB_RING_2
+ 3 -> VB_RING_3
+ else -> return
+ }
+ val curIndex = getVarbit(player, vbit)
+ val nextIndex: Int = if(curIndex == 3) 0
+ else curIndex + 1
+ setVarbit(player, vbit, nextIndex)
+ }
+
+ fun decrement(player: Player,ring: Int){
+ val vbit = when(ring) {
+ 1 -> VB_RING_1
+ 2 -> VB_RING_2
+ 3 -> VB_RING_3
+ else -> return
+ }
+ val curIndex = getVarbit(player, vbit)
+ val nextIndex: Int = if(curIndex == 0) 3
+ else curIndex - 1
+ setVarbit(player, vbit, nextIndex)
+ }
+
+ private fun confirm(player: Player){
+ val ring1index = getVarbit(player, VB_RING_1)
+ val ring2index = getVarbit(player, VB_RING_2)
+ val ring3index = getVarbit(player, VB_RING_3)
+ val code = "${RING_1[ring1index]}${RING_2[ring2index]}${RING_3[ring3index]}"
+ val ring: FairyRing? = try {
+ FairyRing.valueOf(code.uppercase())
+ } catch (e: Exception) { null }
+
+ var tile = ring?.tile
+ if(ring?.checkAccess(player) != true){
+ sendDialogue(player, "The ring seems to reject you.")
+ tile = null
+ }
+ if (ring == null || tile == null) {
+ val center = Location(2412, 4434, 0)
+ tile = if (RandomFunction.random(2) == 1) {
+ center.transform(RandomFunction.random(2, 6), RandomFunction.random(2, 6), 0)
+ } else {
+ center.transform(RandomFunction.random(-2, -6), RandomFunction.random(-2, -6), 0)
+ }
+ if (!RegionManager.isTeleportPermitted(tile) || RegionManager.getObject(tile) != null) {
+ tile = Location.create(2412, 4431, 0)
+ }
+ GameWorld.Pulser.submit(object : Pulse(4, player) {
+ override fun pulse(): Boolean {
+ sendPlayerDialogue(player, "Wow, fairy magic sure is useful, I hardly moved at all!", core.game.dialogue.FacialExpression.AMAZED)
+ return true
+ }
+ })
+ } else {
+ if (!player.savedData.globalData.hasTravelLog(ring.ordinal)) {
+ player.savedData.globalData.setTravelLog(ring.ordinal)
+ }
+ }
+ closeInterface(player)
+
+ ring.let {
+ if (it == null) {
+ return@let
+ }
+
+ player.dispatch(FairyRingDialEvent(it))
+ teleport(player, tile!!, TeleportManager.TeleportType.FAIRY_RING)
+ }
+ }
+}
+
+enum class FairyRing(val tile: Location?, val tip: String = "", val childId: Int = -1) {
+ AIQ(Location.create(2996, 3114, 0), "Asgarnia: Mudskipper Point", 15),
+ AIR(Location.create(2700, 3247, 0), "Islands: South of Witchaven", 16),
+ AJQ(Location.create(2735, 5221, 0), "Dungeons: Dark cave south of Dorgesh-Kaann", 19),
+ ALR(Location.create(3059, 4875, 0), "Other realms: Abyssal Area", 28),
+ AJR(Location.create(2780, 3613, 0), "Kandarin: Slayer cave south-east of Rellekka", 20),
+ AJS(Location.create(2500, 3896, 0), "Islands: Penguins near Miscellania", 21),
+ AKQ(Location.create(2319, 3619, 0), "Kandarin: Piscatoris Hunter area", 23),
+ AKS(Location.create(2571, 2956, 0), "Feldip Hills: Jungle Hunter area", 25),
+ ALQ(Location.create(3597, 3495, 0), "Morytania: Haunted Woods east of Canifis", 27) {
+ override fun checkAccess(player: Player) : Boolean {
+ return requireQuest(player, Quests.PRIEST_IN_PERIL, "to use this ring.")
+ }
+ },
+ ALS(Location.create(2644, 3495, 0), "Kandarin: McGrubor's Wood", 29),
+ BIP(Location.create(3410, 3324, 0), "Islands: River Salve", 30),
+ BIQ(Location.create(3251, 3095, 0), "Kharidian Desert: Near Kalphite hive", 31),
+ BIS(Location.create(2635, 3266, 0), "Kandarin: Ardougne Zoo unicorns", 33),
+ BJR(null, "Other Realms: Realm of the Fisher King", 36),
+ BKP(Location.create(2385, 3035, 0), "Feldip Hills: South of Castle Wars", 38),
+ BKQ(Location.create(3041, 4532, 0), "Other realms: Enchanted Valley", 39),
+ BKR(Location.create(3469, 3431, 0), "Morytania: Mort Myre, south of Canifis", 40) {
+ override fun checkAccess(player: Player) : Boolean {
+ return requireQuest(player, Quests.PRIEST_IN_PERIL, "to use this ring.")
+ }
+ },
+ BLP(Location.create(2437, 5126, 0), "Dungeons: TzHaar area", 42),
+ BLQ(null, "Yu'biusk", 43),//Location.create(2229, 4244, 1)
+ BLR(Location.create(2740, 3351, 0), "Kandarin: Legends' Guild", 44),
+ CIP(Location.create(2513, 3884, 0), "Islands: Miscellania", 46) {
+ override fun checkAccess(player: Player): Boolean {
+ return requireQuest(player, Quests.THE_FREMENNIK_TRIALS, "to use this ring.")
+ }
+ },
+ CIQ(Location.create(2528, 3127, 0), "Kandarin: North-west of Yanille", 47),
+ CJR(Location.create(2705, 3576, 0), "Kandarin: Sinclair Mansion", 52),
+ CKP(Location.create(2075, 4848, 0), "Other realms: Cosmic Entity's plane", 54),
+ CKR(Location.create(2801, 3003, 0), "Karamja: South of Tai Bwo Wannai Village", 56),
+ CKS(Location.create(3447, 3470, 0), "Morytania: Canifis", 57) {
+ override fun checkAccess(player: Player) : Boolean {
+ return requireQuest(player, Quests.PRIEST_IN_PERIL, "to use this ring.")
+ }
+ },
+ CLP(Location.create(3082, 3206, 0), "Islands: South of Draynor Village", 58),
+ CLS(Location.create(2682, 3081, 0), "Islands: Jungle spiders near Yanille", 61),
+ DIR(Location.create(3038, 5348, 0), "Other realms: Goraks' Plane", 64),
+ DIS(Location.create(3108, 3149, 0), "Misthalin: Wizards' Tower", 65),
+ DJP(Location.create(2658, 3230, 0), "Kandarin: Tower of Life", 66),
+ DJR(Location.create(2676, 3587, 0), "Kandarin: Sinclair Mansion (west)", 68),
+ DKP(Location.create(2900, 3111, 0), "Karamja: South of Musa Point", 70),
+ DKR(Location.create(3129, 3496, 0), "Misthalin: Edgeville", 72),
+ DKS(Location.create(2744, 3719, 0), "Kandarin: Snowy Hunter area", 73),
+ DLQ(Location.create(3423, 3016, 0), "Kharidian Desert: North of Nardah", 75),
+ DLR(Location.create(2213, 3099, 0), "Islands: Poison Waste south of Isafdar", 76),
+ AIS(null), AIP(null), AKP(null), FAIRY_HOME(Location.create(2412, 4434, 0));
+
+ open fun checkAccess(player: Player) : Boolean {
+ return true
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/FurClothingInterface.kt b/Server/src/main/content/global/handlers/iface/FurClothingInterface.kt
similarity index 85%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/FurClothingInterface.kt
rename to Server/src/main/content/global/handlers/iface/FurClothingInterface.kt
index 4c89fe4ae..c395840e6 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/FurClothingInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/FurClothingInterface.kt
@@ -1,6 +1,6 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
-import api.*
+import core.api.*
import core.game.component.Component
import core.game.component.ComponentDefinition
import core.game.component.ComponentPlugin
@@ -9,9 +9,9 @@ import core.game.node.entity.player.Player
import core.game.node.item.Item
import core.plugin.Initializable
import core.plugin.Plugin
+import core.tools.colorize
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.launch
-import rs09.tools.stringtools.colorize
private const val FUR_CLOTHING_COMPONENT_ID = 477
@@ -60,16 +60,16 @@ private val OPTIONS = arrayOf("Buy 10","Buy 5","Buy 1","Value")
//Like holy what the fuck j*gex
private val ITEMS = arrayOf(
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
- null,POLAR_CAMO_TOP, null,null, POLAR_CAMO_LEGS,null,null,null,null,
- null,WOOD_CAMO_TOP, null,null, WOOD_CAMO_LEGS,null,null,null,
- null,JUNGLE_CAMO_TOP,null,null, JUNGLE_CAMO_LEGS,null,null,null,
- null,DESERT_CAMO_TOP,null,null, DESERT_CAMO_LEGS,null,null,null,null,
+ null, POLAR_CAMO_TOP, null,null, POLAR_CAMO_LEGS,null,null,null,null,
+ null, WOOD_CAMO_TOP, null,null, WOOD_CAMO_LEGS,null,null,null,
+ null, JUNGLE_CAMO_TOP,null,null, JUNGLE_CAMO_LEGS,null,null,null,
+ null, DESERT_CAMO_TOP,null,null, DESERT_CAMO_LEGS,null,null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
- LARUPIA_HAT,null,null,LARUPIA_TOP,null,null,LARUPIA_LEGS,null,null,null,null,
- GRAAHK_HEADDRESS,null,null,GRAAHK_TOP,null,null,GRAAHK_LEGS,null,null,null,null,null,
- KYATT_HAT,null,null,KYATT_TOP,null,null,KYATT_LEGS, null,null,null,
+ LARUPIA_HAT,null,null, LARUPIA_TOP,null,null, LARUPIA_LEGS,null,null,null,null,
+ GRAAHK_HEADDRESS,null,null, GRAAHK_TOP,null,null, GRAAHK_LEGS,null,null,null,null,null,
+ KYATT_HAT,null,null, KYATT_TOP,null,null, KYATT_LEGS, null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
@@ -162,8 +162,8 @@ class FurClothingInterface : ComponentPlugin(){
return
}
- removeItem(player, requiredFur, api.Container.INVENTORY)
- removeItem(player, coins, api.Container.INVENTORY)
+ removeItem(player, requiredFur, Container.INVENTORY)
+ removeItem(player, coins, Container.INVENTORY)
addItem(player, clothing.product.id, amount)
}
@@ -184,16 +184,16 @@ class FurClothingInterface : ComponentPlugin(){
DESERT_DEVIL_TOP(Item(10123,2),20, DESERT_CAMO_TOP,21,"Desert devil"),
DESERT_DEVIL_BOT(Item(10123,2),20, DESERT_CAMO_LEGS, 21, "Desert devil"),
LARUPIA_HEAD(Item(10095),500, LARUPIA_HAT,15,"Larupia"),
- LARUPIA_CHEST(Item(10095),500, LARUPIA_TOP,15,"Larupia"),
- LARUPIA_BOT(Item(10095),500, LARUPIA_LEGS,15,"Larupia"),
+ LARUPIA_CHEST(Item(10095),100, LARUPIA_TOP,15,"Larupia"),
+ LARUPIA_BOT(Item(10095),100, LARUPIA_LEGS,15,"Larupia"),
GRAAHK_HEAD(Item(10099),750, GRAAHK_HEADDRESS,16,"Graahk"),
- GRAAHK_CHEST(Item(10099),750, GRAAHK_TOP,16,"Graahk"),
- GRAAHK_BOT(Item(10099),750, GRAAHK_LEGS,16,"Graahk"),
- KYATT_HEAD(Item(10039),1000, KYATT_HAT,17,"Kyatt"),
- KYATT_CHEST(Item(10039),1000, KYATT_TOP,17,"Kyatt"),
- KYATT_BOT(Item(10039),1000, KYATT_LEGS,17,"Kyatt"),
- GLOVES_SILENCE(Item(10115),600, GLOVES_OF_SILENCE,22,"Dark kebbit"),
- SPOT_CAPE(Item(10125),400, SPOTTED_CAPE,23,"Spotted kebbit"),
- DASH_CAPE(Item(10127),800, SPOTTIER_CAPE,24,"Dashing kebbit")
+ GRAAHK_CHEST(Item(10099),150, GRAAHK_TOP,16,"Graahk"),
+ GRAAHK_BOT(Item(10099),150, GRAAHK_LEGS,16,"Graahk"),
+ KYATT_HEAD(Item(10103),1000, KYATT_HAT,17,"Kyatt"),
+ KYATT_CHEST(Item(10103),200, KYATT_TOP,17,"Kyatt"),
+ KYATT_BOT(Item(10103),200, KYATT_LEGS,17,"Kyatt"),
+ GLOVES_SILENCE(Item(10115,2),600, GLOVES_OF_SILENCE,22,"Dark kebbit"),
+ SPOT_CAPE(Item(10125,2),400, SPOTTED_CAPE,23,"Spotted kebbit"),
+ DASH_CAPE(Item(10127,2),800, SPOTTIER_CAPE,24,"Dashing kebbit")
}
}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/inter/GameInterface.java b/Server/src/main/content/global/handlers/iface/GameInterface.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/inter/GameInterface.java
rename to Server/src/main/content/global/handlers/iface/GameInterface.java
index 36d580aa0..0c8754f29 100644
--- a/Server/src/main/java/core/game/interaction/inter/GameInterface.java
+++ b/Server/src/main/content/global/handlers/iface/GameInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -8,7 +8,7 @@ import core.game.node.entity.combat.equipment.WeaponInterface;
import core.game.node.entity.combat.equipment.WeaponInterface.WeaponInterfaces;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.info.Rights;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.plugin.Plugin;
/**
diff --git a/Server/src/main/content/global/handlers/iface/GenericItemSelect.kt b/Server/src/main/content/global/handlers/iface/GenericItemSelect.kt
new file mode 100644
index 000000000..beb2a297e
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/GenericItemSelect.kt
@@ -0,0 +1,67 @@
+package content.global.handlers.iface
+
+import core.api.*
+import core.tools.*
+import core.game.interaction.*
+import core.game.system.task.Pulse
+import core.game.node.entity.player.Player
+
+class GenericItemSelect : InterfaceListener {
+ val GENERIC_ITEM_SELECT_IFACE = 12
+
+ override fun defineInterfaceListeners() {
+ onOpen(GENERIC_ITEM_SELECT_IFACE) {player, _ ->
+ player.pulseManager.run(object : Pulse() {
+ override fun pulse() : Boolean {
+ return false
+ }
+ override fun stop() {
+ super.stop()
+ player.interfaceManager.closeSingleTab()
+ }
+ })
+ return@onOpen true
+ }
+
+ on(GENERIC_ITEM_SELECT_IFACE){player, _, opcode, buttonID, slot, _ ->
+ processResponse(player, opcode, slot)
+ return@on true
+ }
+
+ onClose(GENERIC_ITEM_SELECT_IFACE) {player, _ ->
+ removeAttribute(player, "itemselect-callback")
+ removeAttribute(player, "itemselect-keepalive")
+ return@onClose true
+ }
+ }
+
+ private fun processResponse (player: Player, opcode: Int, slot: Int) {
+ val callback = getAttribute<((Int, Int) -> Unit)?>(player, "itemselect-callback", null)
+ if (callback == null) {
+ log (this::class.java, Log.WARN, "${player.name} is trying to use an item select prompt with no callback!")
+ return
+ }
+
+ val optionIndex = when (opcode) {
+ 155 -> 0
+ 196 -> 1
+ 124 -> 2
+ 199 -> 3
+ 234 -> 4
+ 9 -> 10
+ else -> -1
+ }
+ if (optionIndex == -1) {
+ log (this::class.java, Log.WARN, "${player.name} is clicking a right-click index that we don't know the opcode for yet, lol. Here's the opcode: $opcode")
+ return
+ }
+
+ callback.invoke(slot, optionIndex)
+
+ if (!getAttribute(player, "itemselect-keepalive", false)) {
+ removeAttribute (player, "itemselect-callback")
+ removeAttribute (player, "itemselect-keepalive")
+ player.interfaceManager.closeSingleTab()
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/inter/GliderInterface.java b/Server/src/main/content/global/handlers/iface/GliderInterface.java
similarity index 82%
rename from Server/src/main/java/core/game/interaction/inter/GliderInterface.java
rename to Server/src/main/content/global/handlers/iface/GliderInterface.java
index c67df24f8..08459cefe 100644
--- a/Server/src/main/java/core/game/interaction/inter/GliderInterface.java
+++ b/Server/src/main/content/global/handlers/iface/GliderInterface.java
@@ -1,11 +1,11 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
-import core.game.content.global.travel.glider.GliderPulse;
-import core.game.content.global.travel.glider.Gliders;
+import content.global.travel.glider.GliderPulse;
+import content.global.travel.glider.Gliders;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/HairDresserInterface.kt b/Server/src/main/content/global/handlers/iface/HairDresserInterface.kt
similarity index 95%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/HairDresserInterface.kt
rename to Server/src/main/content/global/handlers/iface/HairDresserInterface.kt
index ed7abf8a9..b1750ae63 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/HairDresserInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/HairDresserInterface.kt
@@ -1,10 +1,10 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
-import api.*
+import core.api.*
import core.game.component.Component
import core.game.component.ComponentDefinition
import core.game.component.ComponentPlugin
-import core.game.content.dialogue.FacialExpression
+import core.game.dialogue.FacialExpression
import core.game.node.entity.player.Player
import core.game.node.item.Item
import core.plugin.Initializable
@@ -90,7 +90,7 @@ private const val M_COMB_OVER = 253
//Array of male hairstyles in the same order as the interface
-val MALE_HAIR_STYLES = intArrayOf(M_BALD,M_DREAD,M_LONG, M_MEDIUM, M_MONK, M_SHORT, M_CLOSE_CROP, M_WILD_SPIKE, M_SPIKE, M_MOHAWK, M_WIND_BRAID, M_QUIFF, M_SAMURAI, M_PRINCE, M_CURTAINS, M_LONG_CURTAINS, M_SIDE_PART_SPIKE, M_TOP_KNOT, M_PONYTAIL_SPIKEY, M_LONG_SWEPT_FRINGE, M_EVANSTYLE, M_DRAGON, M_WARRIOR_CURTAINS, M_COMB_OVER)
+val MALE_HAIR_STYLES = intArrayOf(M_BALD, M_DREAD, M_LONG, M_MEDIUM, M_MONK, M_SHORT, M_CLOSE_CROP, M_WILD_SPIKE, M_SPIKE, M_MOHAWK, M_WIND_BRAID, M_QUIFF, M_SAMURAI, M_PRINCE, M_CURTAINS, M_LONG_CURTAINS, M_SIDE_PART_SPIKE, M_TOP_KNOT, M_PONYTAIL_SPIKEY, M_LONG_SWEPT_FRINGE, M_EVANSTYLE, M_DRAGON, M_WARRIOR_CURTAINS, M_COMB_OVER)
//Male Facial Hairs
@@ -174,7 +174,7 @@ class HairDresserInterface : ComponentPlugin(){
when(button){
199 -> player.setAttribute("beard-setting",false)
200 -> player.setAttribute("beard-setting",true)
- 68,196 -> pay(player)
+ 68,196,274 -> pay(player)
else -> when(component?.id){
592 -> { //Female
if(femaleColorButtonRange.contains(button)){
diff --git a/Server/src/main/java/core/game/interaction/inter/JewelleryInterface.java b/Server/src/main/content/global/handlers/iface/JewelleryInterface.java
similarity index 92%
rename from Server/src/main/java/core/game/interaction/inter/JewelleryInterface.java
rename to Server/src/main/content/global/handlers/iface/JewelleryInterface.java
index 1e65fb72f..ea45a538a 100644
--- a/Server/src/main/java/core/game/interaction/inter/JewelleryInterface.java
+++ b/Server/src/main/content/global/handlers/iface/JewelleryInterface.java
@@ -1,21 +1,21 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
+
+import content.global.skill.slayer.SlayerManager;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.crafting.jewellery.JewelleryCrafting;
-import core.game.node.entity.skill.crafting.jewellery.JewelleryCrafting.JewelleryItem;
+import content.global.skill.crafting.jewellery.JewelleryCrafting;
+import content.global.skill.crafting.jewellery.JewelleryCrafting.JewelleryItem;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
import core.game.node.item.Item;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.StringUtils;
import kotlin.Unit;
-import rs09.game.node.entity.skill.slayer.SlayerManager;
/**
* Represents the interface plugin used for jewellery crafting.
@@ -165,6 +165,7 @@ public final class JewelleryInterface extends ComponentPlugin {
amount = 5;
break;
case 124:
+ /* No need to calculate the maximum amount here, because the make() function will perform that step
if (data.name().contains("GOLD")) {
amount = player.getInventory().getAmount(new Item(GOLD_BAR));
} else {
@@ -178,6 +179,8 @@ public final class JewelleryInterface extends ComponentPlugin {
amount = first;
}
}
+ */
+ amount = 99;
break;
case 199:
final JewelleryItem d = data;
diff --git a/Server/src/main/java/core/game/interaction/inter/LeatherCraftInterface.java b/Server/src/main/content/global/handlers/iface/LeatherCraftInterface.java
similarity index 84%
rename from Server/src/main/java/core/game/interaction/inter/LeatherCraftInterface.java
rename to Server/src/main/content/global/handlers/iface/LeatherCraftInterface.java
index d265a0ac9..e4b700a1a 100644
--- a/Server/src/main/java/core/game/interaction/inter/LeatherCraftInterface.java
+++ b/Server/src/main/content/global/handlers/iface/LeatherCraftInterface.java
@@ -1,13 +1,12 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting;
-import core.game.node.entity.skill.crafting.armour.SoftCraftPulse;
+import content.global.skill.crafting.armour.LeatherCrafting;
+import content.global.skill.crafting.armour.SoftCraftPulse;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
import core.game.node.item.Item;
import core.plugin.Initializable;
import core.plugin.Plugin;
diff --git a/Server/src/main/java/core/game/interaction/inter/LeatherCraftPlugin.java b/Server/src/main/content/global/handlers/iface/LeatherCraftPlugin.java
similarity index 87%
rename from Server/src/main/java/core/game/interaction/inter/LeatherCraftPlugin.java
rename to Server/src/main/content/global/handlers/iface/LeatherCraftPlugin.java
index ae1cd2e7c..e0b297824 100644
--- a/Server/src/main/java/core/game/interaction/inter/LeatherCraftPlugin.java
+++ b/Server/src/main/content/global/handlers/iface/LeatherCraftPlugin.java
@@ -1,8 +1,8 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.plugin.Initializable;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting.SoftLeather;
+import content.global.skill.crafting.armour.LeatherCrafting;
+import content.global.skill.crafting.armour.LeatherCrafting.SoftLeather;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.plugin.Plugin;
diff --git a/Server/src/main/java/core/game/interaction/inter/LoginInterfacePlugin.java b/Server/src/main/content/global/handlers/iface/LoginInterfacePlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/inter/LoginInterfacePlugin.java
rename to Server/src/main/content/global/handlers/iface/LoginInterfacePlugin.java
index 9149bb56c..f91a3000e 100644
--- a/Server/src/main/java/core/game/interaction/inter/LoginInterfacePlugin.java
+++ b/Server/src/main/content/global/handlers/iface/LoginInterfacePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/content/global/handlers/iface/LogoutInterface.java b/Server/src/main/content/global/handlers/iface/LogoutInterface.java
new file mode 100644
index 000000000..d3a7c9c1a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/LogoutInterface.java
@@ -0,0 +1,42 @@
+package content.global.handlers.iface;
+
+import core.game.component.Component;
+import core.game.component.ComponentDefinition;
+import core.game.component.ComponentPlugin;
+import core.game.node.entity.player.Player;
+import core.game.world.GameWorld;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.game.world.repository.Repository;
+
+/**
+ * Represents the interface used to logout of the game.
+ * @author 'Vexia
+ * @version 1.0
+ */
+@Initializable
+public final class LogoutInterface extends ComponentPlugin {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ ComponentDefinition.put(182, this);
+ return this;
+ }
+
+ @Override
+ public boolean handle(Player player, Component component, int opcode, int button, int slot, int itemId) {
+ if (!player.getZoneMonitor().canLogout()) {
+ return true;
+ }
+ if (player.inCombat()) {
+ player.getPacketDispatch().sendMessage("You can't log out until 10 seconds after the end of combat.");
+ return true;
+ }
+ if (player.isTeleporting()) {
+ player.sendMessage("Please finish your teleport before logging out.");
+ return true;
+ }
+ Repository.getDisconnectionQueue().add(player);
+ return true;
+ }
+}
diff --git a/Server/src/main/content/global/handlers/iface/MagicBookInterface.java b/Server/src/main/content/global/handlers/iface/MagicBookInterface.java
new file mode 100644
index 000000000..6832efb43
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/MagicBookInterface.java
@@ -0,0 +1,88 @@
+package content.global.handlers.iface;
+
+import content.global.skill.magic.SpellListener;
+import content.global.skill.magic.SpellListeners;
+import content.global.skill.magic.SpellUtils;
+import core.game.event.SpellCastEvent;
+import core.game.component.Component;
+import core.game.component.ComponentDefinition;
+import core.game.component.ComponentPlugin;
+import core.plugin.Initializable;
+import core.game.node.entity.combat.spell.MagicSpell;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.SpellBookManager.SpellBook;
+import core.game.world.GameWorld;
+import core.plugin.Plugin;
+
+import content.data.Quests;
+import static core.api.ContentAPIKt.hasRequirement;
+
+/**
+ * Represents the magic book interface handling of non-combat spells.
+ * @author 'Vexia
+ * @version 1.0
+ */
+@Initializable
+public final class MagicBookInterface extends ComponentPlugin {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ ComponentDefinition.put(192, this);
+ ComponentDefinition.put(193, this);
+ ComponentDefinition.put(430, this);
+ return this;
+ }
+
+ @Override
+ public boolean handle(final Player player, Component component, int opcode, int button, int slot, int itemId) {
+ if (GameWorld.getTicks() < player.getAttribute("magic:delay", -1)) {
+ return true;
+ }
+
+ SpellBook spellBook = component.getId() == 192
+ ? SpellBook.MODERN
+ : component.getId() == 193
+ ? SpellBook.ANCIENT
+ : SpellBook.LUNAR;
+
+ // Snowscape: Allow switching between unlocked spellbooks with the magic interface sort buttons
+ if (spellBook == SpellBook.MODERN) {
+ if (button == 65 && swapSpellBook(player, SpellBook.ANCIENT)) {
+ return true;
+ } else if (button == 66 && swapSpellBook(player, SpellBook.LUNAR)) {
+ return true;
+ }
+ } else if (spellBook == SpellBook.ANCIENT) {
+ if (button == 29 && swapSpellBook(player, SpellBook.MODERN)) {
+ return true;
+ } else if (button == 31 && swapSpellBook(player, SpellBook.LUNAR)) {
+ return true;
+ }
+ } else if (spellBook == SpellBook.LUNAR) {
+ if (button == 40 && swapSpellBook(player, SpellBook.MODERN)) {
+ return true;
+ } else if (button == 41 && swapSpellBook(player, SpellBook.ANCIENT)) {
+ return true;
+ }
+ }
+
+
+ SpellListeners.run(button, SpellListener.NONE, SpellUtils.getBookFromInterface(component.getId()),player,null);
+ boolean result = MagicSpell.castSpell(player, spellBook, button, player);
+
+ return result;
+ }
+
+ // Snowscape custom function
+ private boolean swapSpellBook(final Player player, SpellBook spellBook) {
+ if (spellBook == SpellBook.ANCIENT && !hasRequirement(player, Quests.DESERT_TREASURE)) {
+ return false;
+ } else if (spellBook == SpellBook.LUNAR && !hasRequirement(player, Quests.LUNAR_DIPLOMACY)) {
+ return false;
+ }
+ player.getSpellBookManager().setSpellBook(spellBook);
+ player.getSpellBookManager().update(player);
+ return true;
+ }
+}
+
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/MainGameInterface.kt b/Server/src/main/content/global/handlers/iface/MainGameInterface.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/MainGameInterface.kt
rename to Server/src/main/content/global/handlers/iface/MainGameInterface.kt
index 5b8a6cbaf..243337f4e 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/MainGameInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/MainGameInterface.kt
@@ -1,6 +1,6 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
-import api.*
+import core.api.*
import core.game.component.CloseEvent
import core.game.component.Component
import core.game.node.entity.combat.equipment.WeaponInterface
@@ -8,8 +8,8 @@ import core.game.node.entity.combat.equipment.WeaponInterface.WeaponInterfaces
import core.game.node.entity.player.Player
import core.game.node.entity.player.info.Rights
import org.rs09.consts.Components
-import rs09.game.interaction.InterfaceListener
-import rs09.game.world.GameWorld.settings
+import core.game.interaction.InterfaceListener
+import core.game.world.GameWorld.settings
class MainGameInterface : InterfaceListener {
val TOPLEVEL = Components.TOPLEVEL_548
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/MakeOverInterface.kt b/Server/src/main/content/global/handlers/iface/MakeOverInterface.kt
similarity index 98%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/MakeOverInterface.kt
rename to Server/src/main/content/global/handlers/iface/MakeOverInterface.kt
index 92eeb1dd6..58aaea101 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/MakeOverInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/MakeOverInterface.kt
@@ -1,9 +1,9 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
import core.game.component.Component
import core.game.component.ComponentDefinition
import core.game.component.ComponentPlugin
-import core.game.content.dialogue.FacialExpression
+import core.game.dialogue.FacialExpression
import core.game.node.entity.player.Player
import core.game.node.entity.player.link.appearance.Gender
import core.game.node.item.Item
diff --git a/Server/src/main/java/core/game/interaction/inter/MusicTabInterface.java b/Server/src/main/content/global/handlers/iface/MusicTabInterface.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/inter/MusicTabInterface.java
rename to Server/src/main/content/global/handlers/iface/MusicTabInterface.java
index 112092586..579607fe5 100644
--- a/Server/src/main/java/core/game/interaction/inter/MusicTabInterface.java
+++ b/Server/src/main/content/global/handlers/iface/MusicTabInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/java/core/game/interaction/inter/MysticStaffEnchantingPlugin.java b/Server/src/main/content/global/handlers/iface/MysticStaffEnchantingPlugin.java
similarity index 91%
rename from Server/src/main/java/core/game/interaction/inter/MysticStaffEnchantingPlugin.java
rename to Server/src/main/content/global/handlers/iface/MysticStaffEnchantingPlugin.java
index 011a360b2..c8d752141 100644
--- a/Server/src/main/java/core/game/interaction/inter/MysticStaffEnchantingPlugin.java
+++ b/Server/src/main/content/global/handlers/iface/MysticStaffEnchantingPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -20,7 +20,6 @@ import java.util.HashMap;
public final class MysticStaffEnchantingPlugin extends ComponentPlugin {
private final Component COMPONENT = new Component(332);
- private final int cost = 40000;
protected enum EnchantedStaff {
AIR(Items.MYSTIC_AIR_STAFF_1405, Items.AIR_BATTLESTAFF_1397, 21),
@@ -28,7 +27,8 @@ public final class MysticStaffEnchantingPlugin extends ComponentPlugin {
EARTH(Items.MYSTIC_EARTH_STAFF_1407, Items.EARTH_BATTLESTAFF_1399, 23),
FIRE(Items.MYSTIC_FIRE_STAFF_1401, Items.FIRE_BATTLESTAFF_1393, 24),
LAVA(Items.MYSTIC_LAVA_STAFF_3054, Items.LAVA_BATTLESTAFF_3053, 25),
- MUD(Items.MYSTIC_MUD_STAFF_6563, Items.MUD_BATTLESTAFF_6562, 26);
+ MUD(Items.MYSTIC_MUD_STAFF_6563, Items.MUD_BATTLESTAFF_6562, 26),
+ STEAM(Items.MYSTIC_STEAM_STAFF_11738, Items.STEAM_BATTLESTAFF_11736, 27);
public final int enchanted;
public final int basic;
@@ -68,7 +68,6 @@ public final class MysticStaffEnchantingPlugin extends ComponentPlugin {
@Override
public boolean handle(Player player, Component component, int opcode, int buttonId, int slot, int itemId) {
- player.getPacketDispatch().sendMessage("op: " + opcode + " button: " + buttonId + " slot: "+ slot + " item: " + itemId);
if (EnchantedStaff.childToBasic.containsKey(buttonId)) {
Item basicStaff = new Item(EnchantedStaff.childToBasic.get(buttonId));
@@ -78,9 +77,10 @@ public final class MysticStaffEnchantingPlugin extends ComponentPlugin {
player.getPacketDispatch().sendMessage("You don't have a" + (StringUtils.isPlusN(basicStaff.getName()) ? "n " : " ") + basicStaff.getName() + " to enchant.");
return true;
}
+ int cost = player.getEquipment().contains(Items.SEERS_HEADBAND_14631, 1)? 27000 : 40000;
if (!player.getInventory().contains(995, cost)) {
player.getInterfaceManager().close();
- player.getDialogueInterpreter().sendDialogues(389, null, "I need 40,000 coins for materials. Come", "back when you have the money!");
+ player.getDialogueInterpreter().sendDialogues(389, null, "I need " + String.format("%,d", cost) + " coins for materials. Come", "back when you have the money!");
return true;
}
if (player.getInventory().remove(basicStaff, new Item(995, cost))) {
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/NPCContactInterface.kt b/Server/src/main/content/global/handlers/iface/NPCContactInterface.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/NPCContactInterface.kt
rename to Server/src/main/content/global/handlers/iface/NPCContactInterface.kt
index 7f49bbe5f..ebe4a6d54 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/NPCContactInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/NPCContactInterface.kt
@@ -1,11 +1,11 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
import core.game.node.entity.npc.NPC
import core.game.world.map.Location
import core.tools.RandomFunction
import org.rs09.consts.NPCs
-import rs09.game.content.dialogue.DialogueFile
-import rs09.game.interaction.InterfaceListener
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InterfaceListener
class NPCContactInterface : InterfaceListener {
val contactNPCs = arrayOf(NPCs.HONEST_JIMMY_4362, NPCs.BERT_3108, NPCs.ADVISOR_GHRIM_1375, NPCs.TURAEL_8273, NPCs.LANTHUS_1526, NPCs.SUMONA_7780, NPCs.MAZCHNA_8274, NPCs.DURADEL_8275, NPCs.VANNAKA_1597, NPCs.DARK_MAGE_2262, NPCs.CHAELDAR_1598, NPCs.CYRISUS_432, NPCs.LARRY_5424)
diff --git a/Server/src/main/content/global/handlers/iface/PrayerTabInterface.java b/Server/src/main/content/global/handlers/iface/PrayerTabInterface.java
new file mode 100644
index 000000000..2c31b11ce
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/PrayerTabInterface.java
@@ -0,0 +1,39 @@
+package content.global.handlers.iface;
+
+import core.game.component.Component;
+import core.game.component.ComponentDefinition;
+import core.game.component.ComponentPlugin;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.prayer.PrayerType;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+
+import static core.api.ContentAPIKt.hasRequirement;
+import content.data.Quests;
+
+/**
+ * Represents the prayer interface.
+ * @author 'Vexia
+ */
+@Initializable
+public final class PrayerTabInterface extends ComponentPlugin {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ ComponentDefinition.put(271, this);
+ return this;
+ }
+
+ @Override
+ public boolean handle(Player player, Component component, int opcode, int button, int slot, int itemId) {
+ final PrayerType type = PrayerType.get(button);
+ if (type == PrayerType.CHIVALRY || type == PrayerType.PIETY)
+ if (!hasRequirement(player, Quests.KINGS_RANSOM))
+ return true;
+ if (type == null) {
+ return true;
+ }
+ player.getPrayer().toggle(type);
+ return true;
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/PuppyInterfacePlugin.kt b/Server/src/main/content/global/handlers/iface/PuppyInterfacePlugin.kt
similarity index 97%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/PuppyInterfacePlugin.kt
rename to Server/src/main/content/global/handlers/iface/PuppyInterfacePlugin.kt
index 80c98cd94..3df8d0c56 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/PuppyInterfacePlugin.kt
+++ b/Server/src/main/content/global/handlers/iface/PuppyInterfacePlugin.kt
@@ -1,4 +1,4 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
import core.game.component.Component
import core.game.component.ComponentDefinition
diff --git a/Server/src/main/java/core/game/interaction/inter/QuestTabInterface.java b/Server/src/main/content/global/handlers/iface/QuestTabInterface.java
similarity index 94%
rename from Server/src/main/java/core/game/interaction/inter/QuestTabInterface.java
rename to Server/src/main/content/global/handlers/iface/QuestTabInterface.java
index 0703b87b6..90d580af2 100644
--- a/Server/src/main/java/core/game/interaction/inter/QuestTabInterface.java
+++ b/Server/src/main/content/global/handlers/iface/QuestTabInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -41,13 +41,13 @@ public class QuestTabInterface extends ComponentPlugin {
break;
default:
// if (GameWorld.isEconomyWorld()) {
- //System.out.println("Quest button: " + button);
+
Quest quest = p.getQuestRepository().forButtonId(button);
if (quest != null) {
p.getInterfaceManager().open(new Component(275));
quest.drawJournal(p, quest.getStage(p));
return true;
- }
+ } else QuestTabUtils.showRequirementsInterface(p, button);
// }
return false;
}
@@ -68,4 +68,4 @@ public class QuestTabInterface extends ComponentPlugin {
return true;
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/handlers/iface/QuestTabUtils.kt b/Server/src/main/content/global/handlers/iface/QuestTabUtils.kt
new file mode 100644
index 000000000..3af184404
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/QuestTabUtils.kt
@@ -0,0 +1,245 @@
+package content.global.handlers.iface
+
+import core.game.requirement.*
+import core.api.*
+import core.tools.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+
+import kotlin.math.*
+import java.util.*
+
+import org.rs09.consts.*
+import content.data.Quests
+
+object QuestTabUtils {
+ @JvmStatic
+ fun showRequirementsInterface(player: Player, button: Int) {
+ val questName = getNameForButton(button)
+ val questReq = QuestRequirements.values().filter { it.quest.questName == questName }.firstOrNull() ?: return
+ var (isMet, unmetReqs) = QuestReq(questReq).evaluate(player)
+
+ var messageList = ArrayList()
+
+ val statMap = HashMap()
+ val questList = HashSet()
+ var maxQpReq = 0
+ var qpPenalty = 0
+ closeInterface(player)
+ for (req in unmetReqs) {
+ if (req is QuestReq)
+ questList.add(req.questReq.quest.questName)
+ else if (req is SkillReq) {
+ if (statMap[req.skillId] == null || (statMap[req.skillId] != null && statMap[req.skillId]!! < req.level))
+ statMap[req.skillId] = req.level
+ }
+ else if (req is QPReq && req.amount > maxQpReq)
+ maxQpReq = req.amount
+ else if (req is QPCumulative)
+ qpPenalty += req.amount
+ }
+
+ messageList.add(colorize("%B[Quests Needed]"))
+ messageList.addAll(questList.map { "Completion of $it" })
+
+ messageList.add(" ")
+ messageList.add(colorize("%B[Skills Needed]"))
+
+ for ((skillId, level) in statMap) {
+ val name = Skills.SKILL_NAME[skillId]
+ messageList.add("$level $name")
+ }
+
+ messageList.add(" ")
+ messageList.add(colorize("%B[Other Reqs]"))
+
+ val totalQpRequirement = QPReq(min(max(maxQpReq, qpPenalty), player.questRepository.getAvailablePoints()))
+ val (meetsQp, _) = totalQpRequirement.evaluate(player)
+ isMet = isMet && meetsQp
+
+ if (isMet)
+ messageList.add(colorize("%GCongratulations! You've earned this one."))
+
+ if (!meetsQp) messageList.add("A total of ${totalQpRequirement.amount} Quest Points.")
+
+ messageList.add("")
+ messageList.add(colorize("%BDISCLAIMER: If you're seeing this screen, this quest is not"))
+ messageList.add(colorize("%Bimplemented yet. These are the requirements that you need in order"))
+ messageList.add(colorize("%Bto access implemented content that would normally require this quest"))
+ messageList.add("")
+ messageList.add("If you want to see more quests enter the game, consider")
+ messageList.add("contributing dialogue transcripts!")
+
+
+ setInterfaceText(player, questName, Components.QUESTJOURNAL_SCROLL_275, 2)
+ var lineId = 11
+ for(i in 0..299) {
+ val entry = messageList.elementAtOrNull(i)
+ if (entry != null)
+ setInterfaceText(player, entry, Components.QUESTJOURNAL_SCROLL_275, lineId++)
+ else
+ setInterfaceText(player, "", Components.QUESTJOURNAL_SCROLL_275, lineId++)
+ }
+ openInterface(player, Components.QUESTJOURNAL_SCROLL_275)
+ }
+
+ private fun getNameForButton(button: Int) : String {
+ val quest = when (button) {
+ 10 -> Quests.MYTHS_OF_THE_WHITE_LANDS.questName
+ 11 -> Quests.MYTHS_OF_THE_WHITE_LANDS.questName
+ 12 -> "Free Quests"
+ 13 -> Quests.BLACK_KNIGHTS_FORTRESS.questName
+ 14 -> Quests.COOKS_ASSISTANT.questName
+ 15 -> Quests.DEMON_SLAYER.questName
+ 16 -> Quests.DORICS_QUEST.questName
+ 17 -> Quests.DRAGON_SLAYER.questName
+ 18 -> Quests.ERNEST_THE_CHICKEN.questName
+ 19 -> Quests.GOBLIN_DIPLOMACY.questName
+ 20 -> Quests.IMP_CATCHER.questName
+ 21 -> Quests.THE_KNIGHTS_SWORD.questName
+ 22 -> Quests.PIRATES_TREASURE.questName
+ 23 -> Quests.PRINCE_ALI_RESCUE.questName
+ 24 -> Quests.THE_RESTLESS_GHOST.questName
+ 25 -> Quests.ROMEO_JULIET.questName
+ 26 -> Quests.RUNE_MYSTERIES.questName
+ 27 -> Quests.SHEEP_SHEARER.questName
+ 28 -> Quests.SHIELD_OF_ARRAV.questName
+ 29 -> Quests.VAMPIRE_SLAYER.questName
+ 30 -> Quests.WITCHS_POTION.questName
+ 31 -> "Members' Quests"
+ 32 -> Quests.ANIMAL_MAGNETISM.questName
+ 33 -> Quests.BETWEEN_A_ROCK.questName
+ 34 -> Quests.BIG_CHOMPY_BIRD_HUNTING.questName
+ 35 -> Quests.BIOHAZARD.questName
+ 36 -> Quests.CABIN_FEVER.questName
+ 37 -> Quests.CLOCK_TOWER.questName
+ 38 -> Quests.CONTACT.questName
+ 39 -> Quests.ZOGRE_FLESH_EATERS.questName
+ 40 -> Quests.CREATURE_OF_FENKENSTRAIN.questName
+ 41 -> Quests.DARKNESS_OF_HALLOWVALE.questName
+ 42 -> Quests.DEATH_TO_THE_DORGESHUUN.questName
+ 43 -> Quests.DEATH_PLATEAU.questName
+ 44 -> Quests.DESERT_TREASURE.questName
+ 45 -> Quests.DEVIOUS_MINDS.questName
+ 46 -> Quests.THE_DIG_SITE.questName
+ 47 -> Quests.DRUIDIC_RITUAL.questName
+ 48 -> Quests.DWARF_CANNON.questName
+ 49 -> Quests.EADGARS_RUSE.questName
+ 50 -> Quests.EAGLES_PEAK.questName
+ 51 -> Quests.ELEMENTAL_WORKSHOP_I.questName
+ 52 -> Quests.ELEMENTAL_WORKSHOP_II.questName
+ 53 -> Quests.ENAKHRAS_LAMENT.questName
+ 54 -> Quests.ENLIGHTENED_JOURNEY.questName
+ 55 -> Quests.THE_EYES_OF_GLOUPHRIE.questName
+ 56 -> Quests.FAIRYTALE_I_GROWING_PAINS.questName
+ 57 -> Quests.FAIRYTALE_II_CURE_A_QUEEN.questName
+ 58 -> Quests.FAMILY_CREST.questName
+ 59 -> Quests.THE_FEUD.questName
+ 60 -> Quests.FIGHT_ARENA.questName
+ 61 -> Quests.FISHING_CONTEST.questName
+ 62 -> Quests.FORGETTABLE_TALE.questName
+ 63 -> Quests.THE_FREMENNIK_TRIALS.questName
+ 64 -> Quests.WATERFALL_QUEST.questName
+ 65 -> Quests.GARDEN_OF_TRANQUILITY.questName
+ 66 -> Quests.GERTRUDES_CAT.questName
+ 67 -> Quests.GHOSTS_AHOY.questName
+ 68 -> Quests.THE_GIANT_DWARF.questName
+ 69 -> Quests.THE_GOLEM.questName
+ 70 -> Quests.THE_GRAND_TREE.questName
+ 71 -> Quests.THE_HAND_IN_THE_SAND.questName
+ 72 -> Quests.HAUNTED_MINE.questName
+ 73 -> Quests.HAZEEL_CULT.questName
+ 74 -> Quests.HEROES_QUEST.questName
+ 75 -> Quests.HOLY_GRAIL.questName
+ 76 -> Quests.HORROR_FROM_THE_DEEP.questName
+ 77 -> Quests.ICTHLARINS_LITTLE_HELPER.questName
+ 78 -> Quests.IN_AID_OF_THE_MYREQUE.questName
+ 79 -> Quests.IN_SEARCH_OF_THE_MYREQUE.questName
+ 80 -> Quests.JUNGLE_POTION.questName
+ 81 -> Quests.LEGENDS_QUEST.questName
+ 82 -> Quests.LOST_CITY.questName
+ 83 -> Quests.THE_LOST_TRIBE.questName
+ 84 -> Quests.LUNAR_DIPLOMACY.questName
+ 85 -> Quests.MAKING_HISTORY.questName
+ 86 -> Quests.MERLINS_CRYSTAL.questName
+ 87 -> Quests.MONKEY_MADNESS.questName
+ 88 -> Quests.MONKS_FRIEND.questName
+ 89 -> Quests.MOUNTAIN_DAUGHTER.questName
+ 90 -> Quests.MOURNINGS_END_PART_I.questName
+ 91 -> Quests.MOURNINGS_END_PART_II.questName
+ 92 -> Quests.MURDER_MYSTERY.questName
+ 93 -> Quests.MY_ARMS_BIG_ADVENTURE.questName
+ 94 -> Quests.NATURE_SPIRIT.questName
+ 95 -> Quests.OBSERVATORY_QUEST.questName
+ 96 -> Quests.ONE_SMALL_FAVOUR.questName
+ 97 -> Quests.PLAGUE_CITY.questName
+ 98 -> Quests.PRIEST_IN_PERIL.questName
+ 99 -> Quests.RAG_AND_BONE_MAN.questName
+ 100 -> Quests.RATCATCHERS.questName
+ 101 -> Quests.RECIPE_FOR_DISASTER.questName
+ 102 -> Quests.RECRUITMENT_DRIVE.questName
+ 103 -> Quests.REGICIDE.questName
+ 104 -> Quests.ROVING_ELVES.questName
+ 105 -> Quests.ROYAL_TROUBLE.questName
+ 106 -> Quests.RUM_DEAL.questName
+ 107 -> Quests.SCORPION_CATCHER.questName
+ 108 -> Quests.SEA_SLUG.questName
+ 109 -> Quests.THE_SLUG_MENACE.questName
+ 110 -> Quests.SHADES_OF_MORTTON.questName
+ 111 -> Quests.SHADOW_OF_THE_STORM.questName
+ 112 -> Quests.SHEEP_HERDER.questName
+ 113 -> Quests.SHILO_VILLAGE.questName
+ 114 -> Quests.A_SOULS_BANE.questName
+ 115 -> Quests.SPIRITS_OF_THE_ELID.questName
+ 116 -> Quests.SWAN_SONG.questName
+ 117 -> Quests.TAI_BWO_WANNAI_TRIO.questName
+ 118 -> Quests.A_TAIL_OF_TWO_CATS.questName
+ 119 -> Quests.TEARS_OF_GUTHIX.questName
+ 120 -> Quests.TEMPLE_OF_IKOV.questName
+ 121 -> Quests.THRONE_OF_MISCELLANIA.questName
+ 122 -> Quests.THE_TOURIST_TRAP.questName
+ 123 -> Quests.WITCHS_HOUSE.questName
+ 124 -> Quests.TREE_GNOME_VILLAGE.questName
+ 125 -> Quests.TRIBAL_TOTEM.questName
+ 126 -> Quests.TROLL_ROMANCE.questName
+ 127 -> Quests.TROLL_STRONGHOLD.questName
+ 128 -> Quests.UNDERGROUND_PASS.questName
+ 129 -> Quests.WANTED.questName
+ 130 -> Quests.WATCHTOWER.questName
+ 131 -> Quests.COLD_WAR.questName
+ 132 -> Quests.THE_FREMENNIK_ISLES.questName
+ 133 -> Quests.TOWER_OF_LIFE.questName
+ 134 -> Quests.THE_GREAT_BRAIN_ROBBERY.questName
+ 135 -> Quests.WHAT_LIES_BELOW.questName
+ 136 -> Quests.OLAFS_QUEST.questName
+ 137 -> Quests.ANOTHER_SLICE_OF_HAM.questName
+ 138 -> Quests.DREAM_MENTOR.questName
+ 139 -> Quests.GRIM_TALES.questName
+ 140 -> Quests.KINGS_RANSOM.questName
+ 141 -> Quests.THE_PATH_OF_GLOUPHRIE.questName
+ 142 -> Quests.BACK_TO_MY_ROOTS.questName
+ 143 -> Quests.LAND_OF_THE_GOBLINS.questName
+ 144 -> Quests.DEALING_WITH_SCABARAS.questName
+ 145 -> Quests.WOLF_WHISTLE.questName
+ 146 -> Quests.AS_A_FIRST_RESORT.questName
+ 147 -> Quests.CATAPULT_CONSTRUCTION.questName
+ 148 -> Quests.KENNITHS_CONCERNS.questName
+ 149 -> Quests.LEGACY_OF_SEERGAZE.questName
+ 150 -> Quests.PERILS_OF_ICE_MOUNTAIN.questName
+ 151 -> Quests.TOKTZ_KET_DILL.questName
+ 152 -> Quests.SMOKING_KILLS.questName
+ 153 -> Quests.ROCKING_OUT.questName
+ 154 -> Quests.SPIRIT_OF_SUMMER.questName
+ 155 -> Quests.MEETING_HISTORY.questName
+ 156 -> Quests.ALL_FIRED_UP.questName
+ 157 -> Quests.SUMMERS_END.questName
+ 158 -> Quests.DEFENDER_OF_VARROCK.questName
+ 159 -> Quests.SWEPT_AWAY.questName
+ 160 -> Quests.WHILE_GUTHIX_SLEEPS.questName
+ 161 -> Quests.IN_PYRE_NEED.questName
+ 162 -> Quests.MYTHS_OF_THE_WHITE_LANDS.questName
+ else -> ""
+ }
+ return quest as String
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/inter/RequestAssistInterface.java b/Server/src/main/content/global/handlers/iface/RequestAssistInterface.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/inter/RequestAssistInterface.java
rename to Server/src/main/content/global/handlers/iface/RequestAssistInterface.java
index 53059f691..952a0bf16 100644
--- a/Server/src/main/java/core/game/interaction/inter/RequestAssistInterface.java
+++ b/Server/src/main/content/global/handlers/iface/RequestAssistInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/RulesAndInfo.kt b/Server/src/main/content/global/handlers/iface/RulesAndInfo.kt
similarity index 79%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/RulesAndInfo.kt
rename to Server/src/main/content/global/handlers/iface/RulesAndInfo.kt
index 6b7e81ad6..420c70d71 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/RulesAndInfo.kt
+++ b/Server/src/main/content/global/handlers/iface/RulesAndInfo.kt
@@ -1,10 +1,9 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
-import api.*
+import core.api.*
import core.game.node.entity.player.Player
import core.tools.RandomFunction
-import rs09.game.interaction.InterfaceListener
-import rs09.game.system.SystemLogger
+import core.game.interaction.InterfaceListener
object RulesAndInfo {
val RULES = arrayOf(
@@ -17,13 +16,14 @@ object RulesAndInfo {
" 3. Do not discuss or advertise other servers.",
" -Discussion of the live jagex games is fine.",
" -Discussion of open source projects is fine.",
- " 4. No use of any kind of automation tool.",
+ " 4. No unfair advantages.",
" -This includes autoclickers, autohotkey, etc.",
- " -Exception: 1-to-1 inputs, such as mousekeys."
+ " -Exception: 1-to-1 inputs, such as mousekeys.",
+ " -Includes training methods that bypass AFK limits."
)
val SEPARATOR = " "
val INFO = arrayOf(
- " To join our Discord, type ::discord"
+ " Join the forums! forum.2009scape.org "
)
@JvmStatic
@@ -31,19 +31,28 @@ object RulesAndInfo {
{
if(getAttribute(player, "rules:confirmed", false) || !getAttribute(player, "tutorial:complete", false))
return
- var ln = 1
val pin = getAttribute(player, "rules:pin", RandomFunction.random(1000,9999))
setAttribute(player, "/save:rules:pin", pin)
- for(line in INFO) setInterfaceText(player, INFO[ln - 1], 384, ln++)
- setInterfaceText(player, SEPARATOR, 384, ln++)
- val newIndex = ln
- for(line in RULES) setInterfaceText(player, RULES[ln - newIndex], 384, ln++)
+
+ var ln = setBaseRulesAndInfo(player)
+
setInterfaceText(player, " If you agree to the above, type ::confirmrules $pin", 384, ln++)
setInterfaceText(player, "", 384, ln)
player.packetDispatch.sendInterfaceConfig(384, 17, true)
openInterface(player, 384)
player.lock()
}
+
+ @JvmStatic
+ fun setBaseRulesAndInfo(player: Player): Int {
+ var ln = 1
+ for(line in INFO) setInterfaceText(player, INFO[ln - 1], 384, ln++)
+ setInterfaceText(player, SEPARATOR, 384, ln++)
+ val newIndex = ln
+ for(line in RULES) setInterfaceText(player, RULES[ln - newIndex], 384, ln++)
+ setInterfaceText(player, "", 384, ln)
+ return ln
+ }
}
class RulesListener : InterfaceListener
diff --git a/Server/src/main/java/core/game/interaction/inter/SawmillPlankInterface.java b/Server/src/main/content/global/handlers/iface/SawmillPlankInterface.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/inter/SawmillPlankInterface.java
rename to Server/src/main/content/global/handlers/iface/SawmillPlankInterface.java
index e5e3b3784..00957533d 100644
--- a/Server/src/main/java/core/game/interaction/inter/SawmillPlankInterface.java
+++ b/Server/src/main/content/global/handlers/iface/SawmillPlankInterface.java
@@ -1,6 +1,6 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
diff --git a/Server/src/main/content/global/handlers/iface/ScrollInterface.kt b/Server/src/main/content/global/handlers/iface/ScrollInterface.kt
new file mode 100644
index 000000000..5e9bfc26d
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/ScrollInterface.kt
@@ -0,0 +1,47 @@
+package content.global.handlers.iface
+
+import core.api.closeInterface
+import core.api.openInterface
+import core.game.node.entity.player.Player
+import org.rs09.consts.Components
+
+/**
+ * Interface listener for Scrolls
+ * Use this to set up a simple scroll display.
+ *
+ * Currently, scrolls do not happen to have any button interactions, so no listeners are here yet.
+ * This is generally a helper class until certain scrolls require interactions.
+ *
+ * @author ovenbreado
+ */
+class ScrollInterface {
+
+ companion object {
+ /** This is a 15-Lines scroll */
+ private val MESSAGESCROLL_220_LINE_IDS = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
+
+ fun scrollSetup(player: Player, scrollComponent: Int, contents: Array) {
+ closeInterface(player) // Important: Close previous interfaces.
+ if (scrollComponent == Components.MESSAGESCROLL_220) {
+ openInterface(player, Components.MESSAGESCROLL_220)
+ setPageContent(player, Components.MESSAGESCROLL_220, MESSAGESCROLL_220_LINE_IDS, contents)
+ }
+ }
+
+ /** Set text contents of scroll */
+ fun setPageContent(player: Player, componentId: Int, scrollLineIds: Array, contents: Array) {
+ for (line in contents) {
+ // This is to prevent error child lines being set and crashing the client.
+ if (scrollLineIds.contains(line.child)) {
+ player.packetDispatch.sendString(line.message, componentId, line.child)
+ }
+ }
+ }
+ }
+}
+
+/** Constructs a new ScrollLine object. */
+class ScrollLine(
+ val message: String,
+ val child: Int
+)
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/inter/SettingTabInterface.java b/Server/src/main/content/global/handlers/iface/SettingTabInterface.java
similarity index 93%
rename from Server/src/main/java/core/game/interaction/inter/SettingTabInterface.java
rename to Server/src/main/content/global/handlers/iface/SettingTabInterface.java
index 93f7a975e..c8bac8cb7 100644
--- a/Server/src/main/java/core/game/interaction/inter/SettingTabInterface.java
+++ b/Server/src/main/content/global/handlers/iface/SettingTabInterface.java
@@ -1,4 +1,6 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
+
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -78,7 +80,7 @@ public class SettingTabInterface extends ComponentPlugin {
break;
case 8:// house
p.getInterfaceManager().close();
- p.getConfigManager().set(261, p.getConfigManager().get(261) & 0x1);
+ setVarp(p, 261, getVarp(p, 261) & 0x1);
p.getInterfaceManager().openSingleTab(new Component(398));
break;
}
diff --git a/Server/src/main/java/core/game/interaction/inter/ShoppingPlugin.java b/Server/src/main/content/global/handlers/iface/ShoppingPlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/inter/ShoppingPlugin.java
rename to Server/src/main/content/global/handlers/iface/ShoppingPlugin.java
index 64787fc23..175f20f33 100644
--- a/Server/src/main/java/core/game/interaction/inter/ShoppingPlugin.java
+++ b/Server/src/main/content/global/handlers/iface/ShoppingPlugin.java
@@ -1,7 +1,7 @@
/*
package core.game.interaction.inter;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
@@ -51,7 +51,7 @@ public final class ShoppingPlugin extends ComponentPlugin {
return true;
}
if (viewer == null) {
- System.out.println("shop is null");
+
return true;
}
final Container container = button == 0 ? player.getInventory() : viewer.getShop().getContainer(viewer.getTabIndex());
diff --git a/Server/src/main/java/core/game/interaction/inter/SkillInterface.java b/Server/src/main/content/global/handlers/iface/SkillInterface.java
similarity index 76%
rename from Server/src/main/java/core/game/interaction/inter/SkillInterface.java
rename to Server/src/main/content/global/handlers/iface/SkillInterface.java
index adecfbc25..a0ac47d21 100644
--- a/Server/src/main/java/core/game/interaction/inter/SkillInterface.java
+++ b/Server/src/main/content/global/handlers/iface/SkillInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -7,6 +7,8 @@ import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import static core.api.ContentAPIKt.*;
+
/**
* Represents the plugin used for the skilling interface.
* @author 'Vexia
@@ -23,9 +25,8 @@ public final class SkillInterface extends ComponentPlugin {
@Override
public boolean handle(Player player, Component component, int opcode, int button, int slot, int itemId) {
- player.varpManager.get(965)
- .setVarbit(0,player.getAttribute("skillMenu",-1))
- .setVarbit(10, button - 10).send(player);
+ setVarbit(player, 3288, player.getAttribute("skillMenu", -1));
+ setVarbit(player, 3289, button - 10);
return true;
}
}
diff --git a/Server/src/main/java/core/game/interaction/inter/SkillTabInterface.java b/Server/src/main/content/global/handlers/iface/SkillTabInterface.java
similarity index 93%
rename from Server/src/main/java/core/game/interaction/inter/SkillTabInterface.java
rename to Server/src/main/content/global/handlers/iface/SkillTabInterface.java
index cf4275a7b..9dba5877b 100644
--- a/Server/src/main/java/core/game/interaction/inter/SkillTabInterface.java
+++ b/Server/src/main/content/global/handlers/iface/SkillTabInterface.java
@@ -1,17 +1,17 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.game.node.entity.skill.LevelUp;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import static core.api.ContentAPIKt.*;
+
/**
* Represents the plugin used to handle the skilling tab.
* @author Vexia
@@ -37,12 +37,12 @@ public final class SkillTabInterface extends ComponentPlugin {
if (p.getAttribute("levelup:" + config.getSkillId(), false)) {
p.removeAttribute("levelup:" + config.getSkillId());
LevelUp.sendFlashingIcons(p, -1);
- p.getConfigManager().set(1230, ADVANCE_CONFIGS[config.getSkillId()]);
+ setVarp(p, 1230, ADVANCE_CONFIGS[config.getSkillId()]);
p.getInterfaceManager().open(new Component(741));
} else {
p.getPulseManager().clear();
p.getInterfaceManager().open(new Component(499));
- p.getConfigManager().set(965, config.getConfig());
+ setVarp(p, 965, config.getConfig());
p.getAttributes().put("skillMenu", config.getConfig());
}
} else {
diff --git a/Server/src/main/content/global/handlers/iface/SmeltingInterface.java b/Server/src/main/content/global/handlers/iface/SmeltingInterface.java
new file mode 100644
index 000000000..b7fadd28c
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/SmeltingInterface.java
@@ -0,0 +1,115 @@
+package content.global.handlers.iface;
+
+import static core.api.ContentAPIKt.*;
+import core.game.component.Component;
+import core.game.component.ComponentDefinition;
+import core.game.component.ComponentPlugin;
+import core.plugin.Initializable;
+import content.global.skill.smithing.smelting.Bar;
+import content.global.skill.smithing.smelting.SmeltingPulse;
+import core.game.node.entity.player.Player;
+import core.plugin.Plugin;
+import kotlin.Unit;
+
+/**
+ * @author 'Vexia
+ */
+@Initializable
+public class SmeltingInterface extends ComponentPlugin {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ ComponentDefinition.put(311, this);
+ return this;
+ }
+
+ @Override
+ public boolean handle(Player player, Component component, int opcode, int button, int slot, int itemId) {
+ final BarButton barType = BarButton.forId(button);
+ if (barType == null) {
+ return true;
+ }
+ if (barType.getAmount() == -1) {
+ player.getInterfaceManager().closeChatbox();
+ sendInputDialogue(player, true, "Enter the amount:", (value) -> {
+ if (value instanceof String) {
+ submitIndividualPulse(player, new SmeltingPulse(player, null, barType.getBar(), Integer.parseInt((String) value)));
+ } else {
+ submitIndividualPulse(player, new SmeltingPulse(player, null, barType.getBar(), (int) value));
+ }
+ return Unit.INSTANCE;
+ });
+ } else {
+ player.getPulseManager().run(new SmeltingPulse(player, null, barType.getBar(), barType.getAmount()));
+ }
+ return true;
+ }
+
+ /**
+ * @author 'Vexia
+ */
+ public enum BarButton {
+ BRONZE_1(16, Bar.BRONZE, 1), BRONZE_5(15, Bar.BRONZE, 5), BRONZE_10(14, Bar.BRONZE, 30), BRONZE_X(13, Bar.BRONZE, -1), BLURITE_1(20, Bar.BLURITE, 1), BLURITE_5(19, Bar.BLURITE, 5), BLURITE_10(18, Bar.BLURITE, 30), BLURITE_X(17, Bar.BLURITE, -1), IRON_1(24, Bar.IRON, 1), IRON_5(23, Bar.IRON, 5), IRON_10(22, Bar.IRON, 30), IRON_X(21, Bar.IRON, -1), SILVER_1(28, Bar.SILVER, 1), SILVER_5(27, Bar.SILVER, 5), SILVER_10(26, Bar.SILVER, 30), SILVER_X(25, Bar.SILVER, -1), STEEL_1(32, Bar.STEEL, 1), STEEL_5(31, Bar.STEEL, 5), STEEL_10(30, Bar.STEEL, 30), STEEL_X(29, Bar.STEEL, -1), GOLD_1(36, Bar.GOLD, 1), GOLD_5(35, Bar.GOLD, 5), GOLD_10(34, Bar.GOLD, 30), GOLD_X(33, Bar.GOLD, -1), MITHRIL_1(40, Bar.MITHRIL, 1), MITHRIL_5(39, Bar.MITHRIL, 5), MITHRIL_10(38, Bar.MITHRIL, 30), MITHRIL_X(37, Bar.MITHRIL, -1), ADAMANT_1(44, Bar.ADAMANT, 1), ADAMANT_5(43, Bar.ADAMANT, 5), ADAMANT_10(42, Bar.ADAMANT, 30), ADAMANT_X(41, Bar.ADAMANT, -1), RUNE_1(48, Bar.RUNITE, 1), RUNE_5(47, Bar.RUNITE, 5), RUNE_10(46, Bar.RUNITE, 30), RUNE_X(45, Bar.RUNITE, -1);
+
+ /**
+ * Constructs a new {@code BarButton} {@code Object}.
+ * @param button the button.
+ * @param bar the bar.
+ * @param amount the amt.
+ */
+ BarButton(int button, Bar bar, int amount) {
+ this.button = button;
+ this.bar = bar;
+ this.amount = amount;
+ }
+
+ /**
+ * The button.
+ */
+ private int button;
+
+ /**
+ * The bar.
+ */
+ private Bar bar;
+
+ /**
+ * The ammount.
+ */
+ private int amount;
+
+ /**
+ * @param id
+ * @return
+ */
+ public static BarButton forId(int id) {
+ for (BarButton button : BarButton.values()) {
+ if (button.getButton() == id) {
+ return button;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * @return the button.
+ */
+ public int getButton() {
+ return button;
+ }
+
+ /**
+ * @return the bar.
+ */
+ public Bar getBar() {
+ return bar;
+ }
+
+ /**
+ * @return the amount.
+ */
+ public int getAmount() {
+ return amount;
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/inter/SmithingInterface.java b/Server/src/main/content/global/handlers/iface/SmithingInterface.java
similarity index 81%
rename from Server/src/main/java/core/game/interaction/inter/SmithingInterface.java
rename to Server/src/main/content/global/handlers/iface/SmithingInterface.java
index d1064874e..3256736be 100644
--- a/Server/src/main/java/core/game/interaction/inter/SmithingInterface.java
+++ b/Server/src/main/content/global/handlers/iface/SmithingInterface.java
@@ -1,16 +1,15 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.plugin.Initializable;
-import core.game.node.entity.skill.smithing.BarType;
-import core.game.node.entity.skill.smithing.Bars;
-import core.game.node.entity.skill.smithing.SmithingPulse;
-import core.game.node.entity.skill.smithing.SmithingType;
+import content.global.skill.smithing.BarType;
+import content.global.skill.smithing.Bars;
+import content.global.skill.smithing.SmithingPulse;
+import content.global.skill.smithing.SmithingType;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
import core.game.node.item.Item;
import core.plugin.Plugin;
import kotlin.Unit;
diff --git a/Server/src/main/java/core/game/interaction/inter/SpinningInterface.java b/Server/src/main/content/global/handlers/iface/SpinningInterface.java
similarity index 75%
rename from Server/src/main/java/core/game/interaction/inter/SpinningInterface.java
rename to Server/src/main/content/global/handlers/iface/SpinningInterface.java
index 4c29853b7..8ee642e73 100644
--- a/Server/src/main/java/core/game/interaction/inter/SpinningInterface.java
+++ b/Server/src/main/content/global/handlers/iface/SpinningInterface.java
@@ -1,14 +1,13 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
-import core.game.node.entity.skill.crafting.spinning.SpinningItem;
-import core.game.node.entity.skill.crafting.spinning.SpinningPulse;
+import content.global.skill.crafting.spinning.SpinningItem;
+import content.global.skill.crafting.spinning.SpinningPulse;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
import core.game.node.item.Item;
import core.plugin.Initializable;
import core.plugin.Plugin;
@@ -46,7 +45,11 @@ public class SpinningInterface extends ComponentPlugin {
break;
case 199:
sendInputDialogue(p, true, "Enter the amount:", (value) -> {
- submitIndividualPulse(p, new SpinningPulse(p, new Item(spin.getNeed(), 1), (int) value, spin));
+ if (value instanceof String) {
+ submitIndividualPulse(p, new SpinningPulse(p, new Item(spin.getNeed(), 1), Integer.parseInt((String) value), spin));
+ } else {
+ submitIndividualPulse(p, new SpinningPulse(p, new Item(spin.getNeed(), 1), (int) value, spin));
+ }
return Unit.INSTANCE;
});
break;
diff --git a/Server/src/main/java/core/game/interaction/inter/TanningInterface.java b/Server/src/main/content/global/handlers/iface/TanningInterface.java
similarity index 90%
rename from Server/src/main/java/core/game/interaction/inter/TanningInterface.java
rename to Server/src/main/content/global/handlers/iface/TanningInterface.java
index 5c1952984..aa15e4b11 100644
--- a/Server/src/main/java/core/game/interaction/inter/TanningInterface.java
+++ b/Server/src/main/content/global/handlers/iface/TanningInterface.java
@@ -1,12 +1,11 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
-import core.game.node.entity.skill.crafting.TanningProduct;
+import content.global.skill.crafting.TanningProduct;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
import core.game.node.item.Item;
import core.plugin.Initializable;
import core.plugin.Plugin;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/TeleotherInterface.kt b/Server/src/main/content/global/handlers/iface/TeleotherInterface.kt
similarity index 89%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/TeleotherInterface.kt
rename to Server/src/main/content/global/handlers/iface/TeleotherInterface.kt
index 53d2589e4..051bc041b 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/TeleotherInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/TeleotherInterface.kt
@@ -1,10 +1,10 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
import core.game.node.entity.player.link.TeleportManager.TeleportType
import core.game.world.update.flag.context.Animation
import core.game.world.update.flag.context.Graphics
import org.rs09.consts.Components
-import rs09.game.interaction.InterfaceListener
+import core.game.interaction.InterfaceListener
class TeleotherInterface : InterfaceListener {
val IFACE = Components.TELEPORT_OTHER_326
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/ThessaliaInterface.kt b/Server/src/main/content/global/handlers/iface/ThessaliaInterface.kt
similarity index 93%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/ThessaliaInterface.kt
rename to Server/src/main/content/global/handlers/iface/ThessaliaInterface.kt
index 7baa2cbe3..4c98f7e0b 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/ThessaliaInterface.kt
+++ b/Server/src/main/content/global/handlers/iface/ThessaliaInterface.kt
@@ -1,5 +1,6 @@
-package rs09.game.interaction.inter
+package content.global.handlers.iface
+import core.api.playJingle
import core.game.component.Component
import core.game.component.ComponentDefinition
import core.game.component.ComponentPlugin
@@ -154,6 +155,7 @@ class ThessaliaInterface : ComponentPlugin(){
component.setCloseEvent{pl,_ ->
pl?.toggleWardrobe(false)
pl.attributes.remove("thes-type")
+ playJingle(pl, 266)
if(!pl.getAttribute("thes-paid",false)){
pl.appearance.torso.changeLook(pl.getAttribute("orig-torso",0))
pl.appearance.torso.changeColor(pl.getAttribute("orig-torso-color",0))
@@ -170,29 +172,29 @@ class ThessaliaInterface : ComponentPlugin(){
override fun handle(player: Player?, component: Component?, opcode: Int, button: Int, slot: Int, itemId: Int): Boolean {
player ?: return false
when(button){
- 181,180 -> pay(player)
+ 181,180,297 -> pay(player)
else -> when(component?.id){
THESSALIA_MALE_COMPONENT -> {
when(button){
- 182 -> player.setAttribute("thes-type",colorType.TORSO)
- 183 -> player.setAttribute("thes-type",colorType.ARMS)
- 184 -> player.setAttribute("thes-type",colorType.LEGS)
+ 182 -> player.setAttribute("thes-type", colorType.TORSO)
+ 183 -> player.setAttribute("thes-type", colorType.ARMS)
+ 184 -> player.setAttribute("thes-type", colorType.LEGS)
}
if(maleArmsButtonRange.contains(button)) updateArms(player,button,true)
if(maleTorsoButtonRange.contains(button)) updateTop(player,button,true)
if(maleLegsButtonRange.contains(button)) updateLegs(player,button,true)
- if(maleColorButtonRange.contains(button)) updateColor(player,button,true,player.getAttribute("thes-type",colorType.TORSO))
+ if(maleColorButtonRange.contains(button)) updateColor(player,button,true,player.getAttribute("thes-type", colorType.TORSO))
}
THESSALIA_FEMALE_COMPONENT -> {
when(button){
- 183 -> player.setAttribute("thes-type",colorType.TORSO)
- 184 -> player.setAttribute("thes-type",colorType.ARMS)
- 185 -> player.setAttribute("thes-type",colorType.LEGS)
+ 183 -> player.setAttribute("thes-type", colorType.TORSO)
+ 184 -> player.setAttribute("thes-type", colorType.ARMS)
+ 185 -> player.setAttribute("thes-type", colorType.LEGS)
}
if(femaleArmsButtonRange.contains(button)) updateArms(player,button,false)
if(femaleTorsoButtonRange.contains(button)) updateTop(player,button,false)
if(femaleLegsButtonRange.contains(button)) updateLegs(player,button,false)
- if(femaleColorButtonRange.contains(button)) updateColor(player,button,false,player.getAttribute("thes-type",colorType.TORSO))
+ if(femaleColorButtonRange.contains(button)) updateColor(player,button,false,player.getAttribute("thes-type", colorType.TORSO))
}
}
}
diff --git a/Server/src/main/java/core/game/interaction/inter/TradeInterfacePlugin.java b/Server/src/main/content/global/handlers/iface/TradeInterfacePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/inter/TradeInterfacePlugin.java
rename to Server/src/main/content/global/handlers/iface/TradeInterfacePlugin.java
index 4537fb0fa..1d3568715 100644
--- a/Server/src/main/java/core/game/interaction/inter/TradeInterfacePlugin.java
+++ b/Server/src/main/content/global/handlers/iface/TradeInterfacePlugin.java
@@ -1,6 +1,6 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
diff --git a/Server/src/main/java/core/game/interaction/inter/WorldMapInterface.java b/Server/src/main/content/global/handlers/iface/WorldMapInterface.java
similarity index 86%
rename from Server/src/main/java/core/game/interaction/inter/WorldMapInterface.java
rename to Server/src/main/content/global/handlers/iface/WorldMapInterface.java
index eed52ad10..113c28bfa 100644
--- a/Server/src/main/java/core/game/interaction/inter/WorldMapInterface.java
+++ b/Server/src/main/content/global/handlers/iface/WorldMapInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -31,7 +31,7 @@ public final class WorldMapInterface extends ComponentPlugin {
player.updateSceneGraph(true);
return true;
default:
- //SystemLogger.logErr("World map: buttonid: " + button + ", opcode: " + opcode + ", slot: " + slot);
+ //log(this.getClass(), Log.ERR, "World map: buttonid: " + button + ", opcode: " + opcode + ", slot: " + slot);
return true;
}
}
diff --git a/Server/src/main/content/global/handlers/iface/bank/BankChargeInterface.kt b/Server/src/main/content/global/handlers/iface/bank/BankChargeInterface.kt
new file mode 100644
index 000000000..cdf582f43
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/bank/BankChargeInterface.kt
@@ -0,0 +1,98 @@
+package content.global.handlers.iface.bank
+
+import core.api.*
+import core.game.component.Component
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InterfaceListener
+
+/**
+ * Handles bank charge interface for Eniola at ZMI altar.
+ * @author vddCore
+ */
+class BankChargeInterface : InterfaceListener {
+ companion object {
+ private const val BUTTON_AIR_RUNE = 28
+ private const val BUTTON_MIND_RUNE = 29
+ private const val BUTTON_WATER_RUNE = 30
+ private const val BUTTON_EARTH_RUNE = 31
+ private const val BUTTON_FIRE_RUNE = 32
+ private const val BUTTON_BODY_RUNE = 33
+ private const val BUTTON_COSMIC_RUNE = 34
+ private const val BUTTON_CHAOS_RUNE = 35
+ private const val BUTTON_ASTRAL_RUNE = 36
+ private const val BUTTON_LAW_RUNE = 37
+ private const val BUTTON_DEATH_RUNE = 38
+ private const val BUTTON_BLOOD_RUNE = 39
+ private const val BUTTON_NATURE_RUNE = 40
+ private const val BUTTON_SOUL_RUNE = 41
+
+ private val RUNE_BUTTONS = intArrayOf(
+ BUTTON_AIR_RUNE, BUTTON_MIND_RUNE, BUTTON_WATER_RUNE, BUTTON_EARTH_RUNE,
+ BUTTON_FIRE_RUNE, BUTTON_BODY_RUNE, BUTTON_COSMIC_RUNE, BUTTON_CHAOS_RUNE,
+ BUTTON_ASTRAL_RUNE, BUTTON_LAW_RUNE, BUTTON_DEATH_RUNE, BUTTON_BLOOD_RUNE,
+ BUTTON_NATURE_RUNE, BUTTON_SOUL_RUNE
+ )
+
+ private val BUTTON_TO_RUNE = hashMapOf(
+ BUTTON_AIR_RUNE to Items.AIR_RUNE_556,
+ BUTTON_MIND_RUNE to Items.MIND_RUNE_558,
+ BUTTON_WATER_RUNE to Items.WATER_RUNE_555,
+ BUTTON_EARTH_RUNE to Items.EARTH_RUNE_557,
+ BUTTON_FIRE_RUNE to Items.FIRE_RUNE_554,
+ BUTTON_BODY_RUNE to Items.BODY_RUNE_559,
+ BUTTON_COSMIC_RUNE to Items.COSMIC_RUNE_564,
+ BUTTON_CHAOS_RUNE to Items.CHAOS_RUNE_562,
+ BUTTON_ASTRAL_RUNE to Items.ASTRAL_RUNE_9075,
+ BUTTON_LAW_RUNE to Items.LAW_RUNE_563,
+ BUTTON_DEATH_RUNE to Items.DEATH_RUNE_560,
+ BUTTON_BLOOD_RUNE to Items.BLOOD_RUNE_565,
+ BUTTON_NATURE_RUNE to Items.NATURE_RUNE_561,
+ BUTTON_SOUL_RUNE to Items.SOUL_RUNE_566
+ )
+ }
+
+ private fun handleButtonClick(
+ player: Player,
+ component: Component,
+ opcode: Int,
+ buttonID: Int,
+ slot: Int,
+ itemID: Int
+ ): Boolean {
+ if (buttonID !in RUNE_BUTTONS) return true
+
+ val runeItemId = BUTTON_TO_RUNE[buttonID]
+
+ runeItemId?.let {
+ if (amountInInventory(player, it) < 20) {
+ sendNPCDialogue(
+ player,
+ NPCs.ENIOLA_6362,
+ "I'm afraid you don't have the necessary runes with you at this time, so " +
+ "I can't allow you to access your account. Please bring 20 runes of one type " +
+ "and you'll be able to open your bank.",
+ core.game.dialogue.FacialExpression.NEUTRAL
+ )
+
+ return true
+ }
+
+ if (removeItem(player, Item(it, 20))) {
+ when (getAttribute(player, "zmi:bankaction", "")) {
+ "open" -> openBankAccount(player)
+ "collect" -> openGrandExchangeCollectionBox(player)
+ }
+ }
+ }
+
+ return true
+ }
+
+ override fun defineInterfaceListeners() {
+ on(Components.BANK_CHARGE_ZMI_619, ::handleButtonClick)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/iface/bank/BankDepositBoxInterface.kt b/Server/src/main/content/global/handlers/iface/bank/BankDepositBoxInterface.kt
new file mode 100644
index 000000000..e190a8dde
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/bank/BankDepositBoxInterface.kt
@@ -0,0 +1,76 @@
+package content.global.handlers.iface.bank
+
+import core.api.animate
+import core.api.dumpBeastOfBurden
+import core.api.runWorldTask
+import core.api.sendMessage
+import core.game.component.Component
+import core.game.node.entity.player.Player
+import org.rs09.consts.Animations
+import org.rs09.consts.Components
+import core.game.interaction.InterfaceListener
+
+/**
+ * Allows the user to interact with the
+ * Bank Deposit Box interface
+ *
+ * @author vddCore
+ */
+class BankDepositBoxInterface : InterfaceListener {
+ companion object {
+ private const val BUTTON_DEPOSIT_BOB = 13
+
+ private const val MENU_ELEMENT = 11
+ private const val OP_AMOUNT_ONE = 155
+ private const val OP_AMOUNT_FIVE = 196
+ private const val OP_AMOUNT_TEN = 124
+ private const val OP_AMOUNT_ALL = 199
+ private const val OP_AMOUNT_X = 234
+ private const val OP_EXAMINE = 168
+ }
+
+ private fun handleDepositBoxMenu(player: Player, component: Component, opcode: Int, buttonID: Int, slot: Int, itemID: Int): Boolean {
+ val item = player.inventory.get(slot)
+ ?: return true
+
+ if (opcode == OP_EXAMINE) {
+ sendMessage(player, item.definition.examine)
+ return true
+ }
+
+ runWorldTask {
+ when (opcode) {
+ OP_AMOUNT_ONE -> player.bank.addItem(slot, 1)
+ OP_AMOUNT_FIVE -> player.bank.addItem(slot, 5)
+ OP_AMOUNT_TEN -> player.bank.addItem(slot, 10)
+ OP_AMOUNT_X -> BankUtils.transferX(
+ player,
+ slot,
+ false,
+ // Needs to have a callback here because the depositing moment is independent from the world task.
+ player.bank::refreshDepositBoxInterface
+ )
+ OP_AMOUNT_ALL -> player.bank.addItem(
+ slot,
+ player.inventory.getAmount(item)
+ )
+ else -> player.debug("Unknown deposit box menu opcode $opcode")
+ }
+
+ player.bank.refreshDepositBoxInterface()
+ animate(player, Animations.HUMAN_BANK_DEPOSIT_BOX_834)
+ }
+
+ return true
+ }
+
+ override fun defineInterfaceListeners() {
+ on(Components.BANK_DEPOSIT_BOX_11, ::handleDepositBoxMenu)
+ on(
+ Components.BANK_DEPOSIT_BOX_11,
+ BUTTON_DEPOSIT_BOB
+ ) { player, _, _, _, _, _ ->
+ dumpBeastOfBurden(player); true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/iface/bank/BankInterface.kt b/Server/src/main/content/global/handlers/iface/bank/BankInterface.kt
new file mode 100644
index 000000000..d6d0bd1cc
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/bank/BankInterface.kt
@@ -0,0 +1,198 @@
+package content.global.handlers.iface.bank
+
+import content.global.dialogue.BankDepositDialogue
+import content.global.dialogue.BankHelpDialogue
+import core.ServerConstants
+import core.api.*
+import core.game.component.Component
+import core.game.container.Container
+import core.game.interaction.InterfaceListener
+import core.game.node.entity.player.Player
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+
+/**
+ * Allows the user to interact with the Bank Interface.
+ *
+ * @author vddCore
+ */
+class BankInterface : InterfaceListener {
+ companion object {
+ private const val MAIN_BUTTON_CLOSE = 10
+ private const val MAIN_BUTTON_INSERT_MODE = 14
+ private const val MAIN_BUTTON_NOTE_MODE = 16
+ private const val MAIN_BUTTON_BOB_DEPOSIT = 18
+ private const val MAIN_BUTTON_SEARCH_BANK = 20
+ private const val MAIN_BUTTON_HELP = 23
+
+ private const val MENU_ELEMENT = 73
+ private const val OP_AMOUNT_ONE = 155
+ private const val OP_AMOUNT_FIVE = 196
+ private const val OP_AMOUNT_TEN = 124
+ private const val OP_AMOUNT_LAST_X = 199
+ private const val OP_AMOUNT_X = 234
+ private const val OP_AMOUNT_ALL = 168
+ private const val OP_AMOUNT_ALL_BUT_ONE = 166
+ private const val OP_EXAMINE = 9
+
+ private const val BANK_TAB_1 = 41
+ private const val BANK_TAB_2 = 39
+ private const val BANK_TAB_3 = 37
+ private const val BANK_TAB_4 = 35
+ private const val BANK_TAB_5 = 33
+ private const val BANK_TAB_6 = 31
+ private const val BANK_TAB_7 = 29
+ private const val BANK_TAB_8 = 27
+ private const val BANK_TAB_9 = 25
+
+ private val BANK_TABS = intArrayOf(
+ BANK_TAB_1, BANK_TAB_2, BANK_TAB_3,
+ BANK_TAB_4, BANK_TAB_5, BANK_TAB_6,
+ BANK_TAB_7, BANK_TAB_8, BANK_TAB_9
+ )
+
+ private const val OP_SET_TAB = 155
+ private const val OP_COLLAPSE_TAB = 196
+
+ private const val THRESHOLD_TO_DISPLAY_EXACT_QUANTITY_ON_EXAMINE = 100000
+ }
+
+ private fun onBankInterfaceOpen(player: Player, component: Component): Boolean {
+ val settings = IfaceSettingsBuilder()
+ .enableAllOptions()
+ .enableSlotSwitch()
+ .setInterfaceEventsDepth(2)
+ .build()
+
+ player.packetDispatch.sendIfaceSettings(
+ settings,
+ 73,
+ Components.BANK_V2_MAIN_762,
+ 0,
+ ServerConstants.BANK_SIZE
+ )
+
+ resetSearch(player)
+ return false
+ }
+
+ private fun handleTabInteraction(player: Player, component: Component, opcode: Int, buttonID: Int, slot: Int, itemID: Int): Boolean {
+ resetSearch(player)
+ val clickedTabIndex = -((buttonID - 41) / 2)
+
+ when (opcode) {
+ OP_SET_TAB -> {
+ if (player.bank.tabIndex != clickedTabIndex) {
+ player.bank.tabIndex = clickedTabIndex
+ }
+ }
+
+ OP_COLLAPSE_TAB -> {
+ player.bank.collapseTab(clickedTabIndex)
+ }
+ }
+
+ return true
+ }
+
+ private fun handleBankMenu(player: Player, component: Component, opcode: Int, buttonID: Int, slot: Int, itemID: Int): Boolean {
+ val item = player.bank.get(slot)
+ ?: return true
+ resetSearch(player)
+
+ when (opcode) {
+ OP_AMOUNT_ONE -> player.bank.takeItem(slot, 1)
+ OP_AMOUNT_FIVE -> player.bank.takeItem(slot, 5)
+ OP_AMOUNT_TEN -> player.bank.takeItem(slot, 10)
+ OP_AMOUNT_LAST_X -> player.bank.takeItem(slot, player.bank.lastAmountX)
+ OP_AMOUNT_X -> BankUtils.transferX(player, slot, true)
+ OP_AMOUNT_ALL -> player.bank.takeItem(slot, player.bank.getAmount(item))
+ OP_AMOUNT_ALL_BUT_ONE -> player.bank.takeItem(slot, player.bank.getAmount(item) - 1)
+ OP_EXAMINE -> {
+ var examineText = item.definition.examine
+ val id = item.definition.id
+ val bank = player.bank
+ if (isCoinOverrideNeeded(id, bank)) {
+ examineText = "" + bank.getAmount(id) + " x " + item.definition.name + "."
+ }
+ sendMessage(player, examineText)
+ }
+ else -> player.debug("Unknown bank menu opcode $opcode")
+ }
+
+ return true
+ }
+
+ private fun handleInventoryMenu(player: Player, component: Component, opcode: Int, buttonID: Int, slot: Int, itemID: Int): Boolean {
+ val item = player.inventory.get(slot)
+ ?: return true
+ resetSearch(player)
+
+ when (opcode) {
+ OP_AMOUNT_ONE -> player.bank.addItem(slot, 1)
+ OP_AMOUNT_FIVE -> player.bank.addItem(slot, 5)
+ OP_AMOUNT_TEN -> player.bank.addItem(slot, 10)
+ OP_AMOUNT_LAST_X -> player.bank.addItem(slot, player.bank.lastAmountX)
+ OP_AMOUNT_X -> BankUtils.transferX(player, slot, false)
+ OP_AMOUNT_ALL -> player.bank.addItem(slot, player.inventory.getAmount(item))
+ OP_EXAMINE -> {
+ var examineText = item.definition.examine
+ val id = item.definition.id
+ val inventory = player.inventory
+ if (isCoinOverrideNeeded(id, inventory)) {
+ examineText = "" + inventory.getAmount(id) + " x " + item.definition.name + "."
+ }
+ sendMessage(player, examineText)
+ }
+ else -> player.debug("Unknown inventory menu opcode $opcode")
+ }
+
+ return true
+ }
+
+ override fun defineInterfaceListeners() {
+ onOpen(Components.BANK_V2_MAIN_762, ::onBankInterfaceOpen)
+
+ on(Components.BANK_V2_MAIN_762) { player, component, opcode, buttonID, slot, itemID ->
+ when (buttonID) {
+ MAIN_BUTTON_HELP -> openDialogue(player, BankHelpDialogue())
+ MAIN_BUTTON_BOB_DEPOSIT -> openDialogue(player, BankDepositDialogue())
+ MAIN_BUTTON_INSERT_MODE -> player.bank.isInsertItems = !player.bank.isInsertItems
+ MAIN_BUTTON_NOTE_MODE -> player.bank.isNoteItems = !player.bank.isNoteItems
+ MAIN_BUTTON_SEARCH_BANK -> setAttribute(player, "search", true)
+ MENU_ELEMENT -> handleBankMenu(player, component, opcode, buttonID, slot, itemID)
+ in BANK_TABS -> handleTabInteraction(player, component, opcode, buttonID, slot, itemID)
+ }
+
+ return@on true
+ }
+
+ on(Components.BANK_V2_HELP_767) { player, component, opcode, buttonID, slot, itemID ->
+ when (buttonID) {
+ MAIN_BUTTON_CLOSE -> openBankAccount(player)
+ }
+
+ return@on true
+ }
+
+ on(Components.BANK_V2_SIDE_763, ::handleInventoryMenu)
+ }
+
+ private fun isCoinOverrideNeeded(id: Int, container: Container): Boolean {
+ val amount = container.getAmount(id)
+
+ // Only COINS_995 are obtainable and bankable by player
+ if (id == Items.COINS_995 && amount >= THRESHOLD_TO_DISPLAY_EXACT_QUANTITY_ON_EXAMINE) {
+ return true
+ }
+
+ return false
+ }
+
+ private fun resetSearch (player: Player)
+ {
+ val lastTab = getAttribute(player, "bank:lasttab", 0)
+ player.bank.tabIndex = lastTab
+ setVarc(player, 190, 1) //re-enable "Search" right-click option on search button.
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/inter/BankPinInterface.java b/Server/src/main/content/global/handlers/iface/bank/BankPinInterface.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/inter/BankPinInterface.java
rename to Server/src/main/content/global/handlers/iface/bank/BankPinInterface.java
index 8b44885c0..7c70b88a3 100644
--- a/Server/src/main/java/core/game/interaction/inter/BankPinInterface.java
+++ b/Server/src/main/content/global/handlers/iface/bank/BankPinInterface.java
@@ -1,4 +1,4 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface.bank;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
diff --git a/Server/src/main/content/global/handlers/iface/bank/BankUtils.kt b/Server/src/main/content/global/handlers/iface/bank/BankUtils.kt
new file mode 100644
index 000000000..2a056fee2
--- /dev/null
+++ b/Server/src/main/content/global/handlers/iface/bank/BankUtils.kt
@@ -0,0 +1,22 @@
+package content.global.handlers.iface.bank
+
+import core.api.InputType
+import core.api.sendInputDialogue
+import core.game.node.entity.player.Player
+
+object BankUtils {
+ fun transferX(player: Player, slot: Int, withdraw: Boolean, after: (() -> Unit)? = null) {
+ sendInputDialogue(player, InputType.AMOUNT, "Enter the amount:") { value ->
+ val number = Integer.parseInt(value.toString())
+
+ if (withdraw) {
+ player.bank.takeItem(slot, number)
+ } else {
+ player.bank.addItem(slot, number)
+ }
+
+ player.bank.updateLastAmountX(number)
+ after?.let { it() }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/ge/ExchangeItemSets.kt b/Server/src/main/content/global/handlers/iface/ge/ExchangeItemSets.kt
similarity index 93%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/ge/ExchangeItemSets.kt
rename to Server/src/main/content/global/handlers/iface/ge/ExchangeItemSets.kt
index 51c1150ef..8547bf3c4 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/ge/ExchangeItemSets.kt
+++ b/Server/src/main/content/global/handlers/iface/ge/ExchangeItemSets.kt
@@ -1,8 +1,8 @@
-package rs09.game.interaction.inter.ge
+package content.global.handlers.iface.ge
-import api.getAttribute
-import api.openInterface
-import api.setAttribute
+import core.api.getAttribute
+import core.api.openInterface
+import core.api.setAttribute
import core.game.component.Component
import core.game.container.Container
import core.game.container.ContainerEvent
@@ -11,7 +11,7 @@ import core.game.container.access.InterfaceContainer
import core.game.ge.GEItemSet
import core.game.node.entity.player.Player
import org.rs09.consts.Components
-import rs09.game.interaction.InterfaceListener
+import core.game.interaction.InterfaceListener
class ExchangeItemSets : InterfaceListener {
override fun defineInterfaceListeners() {
diff --git a/Server/src/main/java/core/game/interaction/inter/GrandExchangeInterface.java b/Server/src/main/content/global/handlers/iface/ge/GrandExchangeInterface.java
similarity index 86%
rename from Server/src/main/java/core/game/interaction/inter/GrandExchangeInterface.java
rename to Server/src/main/content/global/handlers/iface/ge/GrandExchangeInterface.java
index 2c526e361..9b615b305 100644
--- a/Server/src/main/java/core/game/interaction/inter/GrandExchangeInterface.java
+++ b/Server/src/main/content/global/handlers/iface/ge/GrandExchangeInterface.java
@@ -1,6 +1,5 @@
-package core.game.interaction.inter;
+package content.global.handlers.iface.ge;
-import static api.ContentAPIKt.*;
import core.cache.def.impl.CS2Mapping;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
@@ -8,9 +7,7 @@ import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.game.ge.GEGuidePrice;
import core.game.ge.GEItemSet;
-import core.game.ge.OfferState;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.node.item.Item;
import core.game.system.task.Pulse;
import core.net.packet.PacketRepository;
@@ -18,13 +15,12 @@ import core.net.packet.context.ContainerContext;
import core.net.packet.out.ContainerPacket;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import kotlin.Unit;
-import rs09.game.ge.GrandExchange;
-import rs09.game.ge.GrandExchangeOffer;
-import rs09.game.ge.GrandExchangeRecords;
-import rs09.game.interaction.inter.ge.StockMarket;
-import rs09.game.interaction.npc.BogrogPouchSwapper;
-import rs09.game.world.GameWorld;
+import core.game.ge.GrandExchangeOffer;
+import core.game.ge.GrandExchangeRecords;
+import core.game.world.GameWorld;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Handles the Grand Exchange interface options.
@@ -116,7 +112,7 @@ public class GrandExchangeInterface extends ComponentPlugin {
GrandExchangeOffer offer;
GrandExchangeRecords records = GrandExchangeRecords.getInstance(player);
if (index > -1 && (offer = records.getOffer(records.getOfferRecords()[index])) != null) {
- StockMarket.withdraw(player, offer, slot >> 1);
+ StockMarket.withdraw(player, offer, slot >> 1, opcode);
}
return true;
}
@@ -137,12 +133,20 @@ public class GrandExchangeInterface extends ComponentPlugin {
if (slot < 0 || slot >= (inventory ? 28 : GEItemSet.values().length)) {
return;
}
- GEItemSet set = GEItemSet.values()[slot];
- Item item = inventory ? player.getInventory().get(slot) : new Item(set.getItemId());
- if (item == null) {
- return;
- }
- if (opcode != 127 && inventory && ((set = GEItemSet.forId(item.getId())) == null) && !BogrogPouchSwapper.handle(player,opcode,slot,itemId)) {
+
+ Item item;
+ GEItemSet set;
+ if (inventory) {
+ item = player.getInventory().get(slot);
+ if (item == null) return;
+ set = GEItemSet.forId(item.getId());
+ if (set == null) return;
+ } else {
+ set = GEItemSet.values()[slot];
+ item = new Item(set.getItemId());
+ }
+
+ if (opcode != 127 && inventory && set == null) {
player.getPacketDispatch().sendMessage("This isn't a set item.");
return;
}
@@ -176,11 +180,14 @@ public class GrandExchangeInterface extends ComponentPlugin {
player.getInventory().refresh();
player.getPacketDispatch().sendMessage("You successfully traded your item components for a set!");
}
- player.getAudioManager().send(new Audio(4044, 1, 1));
+ playAudio(player, Sounds.GE_TRADE_OK_4044);
PacketRepository.send(ContainerPacket.class, new ContainerContext(player, -1, -2, player.getAttribute("container-key", 93), player.getInventory(), false));
break;
case 155:
- player.getPacketDispatch().sendMessage((String) CS2Mapping.forId(1089).getMap().get(set.getItemId()));
+ CS2Mapping mapping = CS2Mapping.forId(1089);
+ if (mapping != null && set != null) {
+ player.getPacketDispatch().sendMessage((String) mapping.getMap().get(set.getItemId()));
+ }
break;
}
}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/inter/ge/StockMarket.kt b/Server/src/main/content/global/handlers/iface/ge/StockMarket.kt
similarity index 76%
rename from Server/src/main/kotlin/rs09/game/interaction/inter/ge/StockMarket.kt
rename to Server/src/main/content/global/handlers/iface/ge/StockMarket.kt
index 4f73f15dd..eba0a2435 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/inter/ge/StockMarket.kt
+++ b/Server/src/main/content/global/handlers/iface/ge/StockMarket.kt
@@ -1,11 +1,9 @@
-package rs09.game.interaction.inter.ge
+package content.global.handlers.iface.ge
-import api.*
+import core.api.*
import core.game.component.Component
-import core.game.container.access.BitregisterAssembler
import core.game.ge.OfferState
import core.game.node.entity.player.Player
-import core.game.node.entity.player.link.audio.Audio
import core.game.node.item.Item
import core.net.packet.PacketRepository
import core.net.packet.context.ConfigContext
@@ -13,12 +11,15 @@ import core.net.packet.context.ContainerContext
import core.net.packet.out.Config
import core.net.packet.out.ContainerPacket
import org.rs09.consts.Components
-import rs09.game.ge.GrandExchange
-import rs09.game.ge.GrandExchangeOffer
-import rs09.game.ge.GrandExchangeRecords
-import rs09.game.ge.PriceIndex
-import rs09.game.interaction.InterfaceListener
-import rs09.game.system.SystemLogger
+import core.game.ge.GrandExchange
+import core.game.ge.GrandExchangeOffer
+import core.game.ge.GrandExchangeRecords
+import core.game.ge.PriceIndex
+import core.game.interaction.InterfaceListener
+import core.tools.Log
+import core.tools.SystemLogger
+import org.rs09.consts.Sounds
+import kotlin.math.min
/**
* Handles the grand exchange interface (Stock Market)
@@ -30,7 +31,7 @@ class StockMarket : InterfaceListener {
player.packetDispatch.sendInterfaceConfig(105, 193, true)
player.packetDispatch.sendIfaceSettings(6, 211, 105, -1, -1)
player.packetDispatch.sendIfaceSettings(6, 209, 105, -1, -1)
- player.varpManager.get(1112).setVarbit(0, -1).send(player)
+ setVarp(player, 1112, -1)
return@onOpen true
}
@@ -97,7 +98,7 @@ class StockMarket : InterfaceListener {
209,211 -> if (openedOffer == null){
SystemLogger.logGE("[WARN] Player tried to withdraw item with null openedOffer!")
return@on false
- } else withdraw(player, openedOffer, (button - 209) shr 1)
+ } else withdraw(player, openedOffer, (button - 209) shr 1, op)
190 -> confirmOffer(player, tempOffer, openedIndex).also { return@on true }
194 -> player.interfaceManager.openChatbox(Components.OBJDIALOG_389)
203 -> abortOffer(player, openedOffer)
@@ -125,7 +126,8 @@ class StockMarket : InterfaceListener {
149, "IviiiIsssss", "", "", "", "Examine", "Offer",
-1, 0, 7, 4, 93, 7012370
)
- BitregisterAssembler.send(player, 107, 18, 0, 27, BitregisterAssembler(0, 1))
+ val settings = IfaceSettingsBuilder().enableOptions(0, 1).build()
+ player.packetDispatch.sendIfaceSettings(settings, 18, 107, 0, 27)
}
157 -> updateOfferAmount(player, tempOffer, tempOffer.amount - 1)
159 -> updateOfferAmount(player, tempOffer, tempOffer.amount + 1)
@@ -158,15 +160,11 @@ class StockMarket : InterfaceListener {
183 -> updateOfferValue(player, tempOffer, (GrandExchange.getRecommendedPrice(tempOffer.itemID) * 1.05).toInt())
171 -> updateOfferValue(player, tempOffer, tempOffer.offeredValue - 1)
173 -> updateOfferValue(player, tempOffer, tempOffer.offeredValue + 1)
- 185 -> sendInputDialogue(player, false, "Enter the amount:"){value ->
+ 185 -> sendInputDialogue(player, InputType.AMOUNT, "Enter the amount:"){value ->
if (player.interfaceManager.chatbox.id == 389) {
player.interfaceManager.openChatbox(Components.OBJDIALOG_389)
}
var s = value.toString()
- s = s.replace("k", "000")
- s = s.replace("K", "000")
- s = s.replace("m", "000000")
- s = s.replace("M", "000000")
updateOfferValue(player, tempOffer, s.toInt())
setAttribute(player, "ge-temp", tempOffer)
}
@@ -186,20 +184,20 @@ class StockMarket : InterfaceListener {
fun updateOfferValue(player: Player, offer: GrandExchangeOffer, newAmt: Int)
{
offer.offeredValue = newAmt
- player.varpManager.get(1111).setVarbit(0, newAmt).send(player)
+ setVarp(player, 1111, newAmt)
}
fun updateOfferAmount(player: Player, offer: GrandExchangeOffer, newAmt: Int)
{
offer.amount = newAmt
- player.varpManager.get(1110).setVarbit(0, newAmt).send(player)
+ setVarp(player, 1110, newAmt)
}
fun abortOffer(player: Player, offer: GrandExchangeOffer?)
{
if(offer == null)
{
- SystemLogger.logWarn("Opened offer was null and was attempted to be aborted!")
+ log(this::class.java, Log.WARN, "Opened offer was null and was attempted to be aborted!")
return
}
sendMessage(player, "Abort request acknowledged. Please be aware that your offer may")
@@ -207,7 +205,7 @@ class StockMarket : InterfaceListener {
if(!offer.isActive)
{
- SystemLogger.logWarn("Offer ${offer.uid}[${offer.index}]: ${if(offer.sell) "s" else "b"} ${offer.itemID}x ${offer.amount} was NO LONGER active when abort attempted")
+ log(this::class.java, Log.WARN, "Offer ${offer.uid}[${offer.index}]: ${if(offer.sell) "s" else "b"} ${offer.itemID}x ${offer.amount} was NO LONGER active when abort attempted")
return
}
offer.offerState = OfferState.ABORTED
@@ -219,19 +217,28 @@ class StockMarket : InterfaceListener {
offer.visualize(player)
}
- fun confirmOffer(player: Player, offer: GrandExchangeOffer, index: Int)
+ enum class OfferConfirmResult {
+ Success,
+ ZeroCoins,
+ TooManyCoins,
+ NotEnoughItemsOrCoins,
+ ItemRemovalFailure,
+ OfferPlacementError
+ }
+
+ fun confirmOffer(player: Player, offer: GrandExchangeOffer, index: Int) : OfferConfirmResult
{
if(offer.offeredValue < 1)
{
- playAudio(player, Audio(4039, 1, 1))
+ playAudio(player, Sounds.GE_TRADE_ERROR_4039)
sendMessage(player, "You can't make an offer for 0 coins.")
- return
+ return OfferConfirmResult.ZeroCoins
}
if(offer.amount > Int.MAX_VALUE / offer.offeredValue)
{
- playAudio(player, Audio(4039, 1, 1))
+ playAudio(player, Sounds.GE_TRADE_ERROR_4039)
sendMessage(player, "You can't ${if(offer.sell) "sell" else "buy"} this much!")
- return
+ return OfferConfirmResult.TooManyCoins
}
offer.index = index
if(offer.sell)
@@ -239,31 +246,28 @@ class StockMarket : InterfaceListener {
val maxAmt = getInventoryAmount(player, offer.itemID)
if(offer.amount > maxAmt)
{
- playAudio(player, Audio(4039, 1, 1))
+ playAudio(player, Sounds.GE_TRADE_ERROR_4039)
sendMessage(player, "You do not have enough of this item in your inventory to cover the")
sendMessage(player, "offer.")
- return
- }
- var item: Item
- val amountLeft: Int = offer.amount - amountInInventory(player, offer.itemID)
- val remove = removeItem(player, Item(offer.itemID, offer.amount).also { item = it })
- var note: Int
- if (amountLeft > 0) {
- if (item.noteChange.also { note = it } > 0) {
- removeItem(player, Item(note, amountLeft))
- } else if (remove) {
- addItem(player, offer.itemID, offer.amount - amountLeft)
- return
- }
+ return OfferConfirmResult.NotEnoughItemsOrCoins
}
+ val amountUnnoted = min(amountInInventory(player, offer.itemID), offer.amount)
+ val amountLeft = offer.amount - amountUnnoted
+ val removedUnnoted = if (amountUnnoted > 0) removeItem(player, Item(offer.itemID, amountUnnoted)) else true
+ val removeNoted = if (amountLeft > 0) removeItem(player, Item(itemDefinition(offer.itemID).noteId, amountLeft)) else true
+ if (!removedUnnoted || !removeNoted) return OfferConfirmResult.ItemRemovalFailure
if(GrandExchange.dispatch(player, offer))
{
- GrandExchangeRecords.getInstance(player).offerRecords[offer.index] = GrandExchangeRecords.OfferRecord(offer.uid,offer.index)
player.removeAttribute("ge-temp")
}
else
{
- addItem(player, item.id, item.amount)
+ if (amountUnnoted > 0)
+ addItem(player, offer.itemID, offer.amount - amountLeft)
+ if (amountLeft > 0)
+ addItem(player, itemDefinition(offer.itemID).noteId, amountLeft)
+ sendMessage(player, "Unable to place GE offer. Please try again.")
+ return OfferConfirmResult.OfferPlacementError
}
}
else
@@ -271,19 +275,19 @@ class StockMarket : InterfaceListener {
val total = offer.amount * offer.offeredValue
if(!inInventory(player, 995, total))
{
- playAudio(player, Audio(4039, 1, 1))
+ playAudio(player, Sounds.GE_TRADE_ERROR_4039)
sendMessage(player, "You do not have enough coins to cover the offer.")
- return
+ return OfferConfirmResult.NotEnoughItemsOrCoins
}
if(GrandExchange.dispatch(player, offer) && removeItem(player, Item(995, total)))
{
- GrandExchangeRecords.getInstance(player).offerRecords[offer.index] = GrandExchangeRecords.OfferRecord(offer.uid, offer.index)
player.removeAttribute("ge-temp")
}
}
- playAudio(player, Audio(4043, 1, 1))
+ playAudio(player, Sounds.GE_PLACE_ITEM_4043)
offer.visualize(player)
toMainInterface(player)
+ return OfferConfirmResult.Success
}
fun getInventoryAmount(player: Player, itemId: Int): Int {
@@ -321,14 +325,14 @@ class StockMarket : InterfaceListener {
lowPrice = (recommendedPrice * 0.95).toInt()
highPrice = (recommendedPrice * 1.05).toInt()
}
- player.varpManager.get(1109).setVarbit(0, offer?.itemID ?: -1).send(player)
- player.varpManager.get(1110).setVarbit(0, offer?.amount ?: 0).send(player)
- player.varpManager.get(1111).setVarbit(0, offer?.offeredValue ?: 0).send(player)
- player.varpManager.get(1112).setVarbit(0, index).send(player)
- player.varpManager.get(1113).setVarbit(0, if (isSale) 1 else 0).send(player)
- player.varpManager.get(1114).setVarbit(0, recommendedPrice).send(player)
- player.varpManager.get(1115).setVarbit(0, lowPrice).send(player)
- player.varpManager.get(1116).setVarbit(0, highPrice).send(player)
+ setVarp(player, 1109, offer?.itemID ?: -1)
+ setVarp(player, 1110, offer?.amount ?: 0)
+ setVarp(player, 1111, offer?.offeredValue ?: 0)
+ setVarp(player, 1112, index)
+ setVarp(player, 1113, if (isSale) 1 else 0)
+ setVarp(player, 1114, recommendedPrice)
+ setVarp(player, 1115, lowPrice)
+ setVarp(player, 1116, highPrice)
if (offer != null) {
PacketRepository.send(
ContainerPacket::class.java,
@@ -338,29 +342,41 @@ class StockMarket : InterfaceListener {
}
@JvmStatic
- fun withdraw(player: Player, offer: GrandExchangeOffer, index: Int)
+ fun withdraw(player: Player, offer: GrandExchangeOffer, index: Int, op: Int)
{
val item = offer.withdraw[index]
if(item == null)
{
- SystemLogger.logWarn("Offer withdraw[$index] is null!")
+ log(this::class.java, Log.WARN, "Offer withdraw[$index] is null!")
return
}
- if(hasSpaceFor(player, item))
- {
- addItem(player, item.id, item.amount)
- }
- else
- {
- val note = item.noteChange
- if(note == -1 || !hasSpaceFor(player, Item(note, item.amount)))
- {
- playAudio(player, Audio(4039, 1, 1))
- sendMessage(player, "You do not have enough room in your inventory.")
- return
+ when (op) {
+ // withdraw notes
+ 155 -> {
+ val note = item.noteChange
+ if (note == -1) {
+ sendMessage(player, "This item cannot be noted")
+ return
+ }
+ if (hasSpaceFor(player, Item(note, item.amount))) {
+ addItem(player, note, item.amount)
+ } else {
+ playAudio(player, Sounds.GE_TRADE_ERROR_4039)
+ sendMessage(player, "You do not have enough room in your inventory.")
+ return
+ }
+ }
+ // withdraw items
+ 196 -> {
+ if (hasSpaceFor(player, item)) {
+ addItem(player, item.id, item.amount)
+ } else {
+ playAudio(player, Sounds.GE_TRADE_ERROR_4039)
+ sendMessage(player, "You do not have enough room in your inventory.")
+ return
+ }
}
- else addItem(player, note, item.amount)
}
offer.withdraw[index] = null
@@ -393,4 +409,4 @@ class StockMarket : InterfaceListener {
}
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/java/core/game/interaction/item/BirdNestPlugin.java b/Server/src/main/content/global/handlers/item/BirdNestPlugin.java
similarity index 89%
rename from Server/src/main/java/core/game/interaction/item/BirdNestPlugin.java
rename to Server/src/main/content/global/handlers/item/BirdNestPlugin.java
index 19b2a3cf9..5499ba690 100644
--- a/Server/src/main/java/core/game/interaction/item/BirdNestPlugin.java
+++ b/Server/src/main/content/global/handlers/item/BirdNestPlugin.java
@@ -1,6 +1,6 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
-import core.game.content.global.BirdNest;
+import content.data.tables.BirdNest;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
@@ -12,7 +12,6 @@ import core.plugin.Plugin;
* Handles the searching of a bird nest item.
* @author Vexia
*/
-@Initializable
public final class BirdNestPlugin extends OptionHandler {
@Override
diff --git a/Server/src/main/content/global/handlers/item/BirdNestScript.kt b/Server/src/main/content/global/handlers/item/BirdNestScript.kt
new file mode 100644
index 000000000..fb34fb63a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/BirdNestScript.kt
@@ -0,0 +1,22 @@
+package content.global.handlers.item
+
+import content.data.tables.BirdNest
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+
+class BirdNestScript : InteractionListener {
+ val nestIds = BirdNest.values().map { it.nest.id }.toIntArray()
+
+ override fun defineListeners() {
+ on(nestIds, IntType.ITEM, "search", handler = ::handleNest)
+ }
+
+ private fun handleNest(player: Player, node: Node) : Boolean {
+ val nest = BirdNest.forNest(node as? Item ?: return false)
+ nest.search(player, node as? Item ?: return false)
+ return true
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/BraceletOfClayPlugin.kt b/Server/src/main/content/global/handlers/item/BraceletOfClayPlugin.kt
new file mode 100644
index 000000000..26fd23008
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/BraceletOfClayPlugin.kt
@@ -0,0 +1,24 @@
+package content.global.handlers.item
+
+import core.api.*
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+/**
+ * Handles the bracelet of clay operate option.
+ * @author Ceikry
+ */
+class BraceletOfClayPlugin : InteractionListener {
+
+ override fun defineListeners() {
+
+ on(Items.BRACELET_OF_CLAY_11074, IntType.ITEM, "operate"){ player, node ->
+ var charge = getCharge(node)
+ if (charge > 28) setCharge(node, 28).also { charge = 28 }
+ sendMessage(player, "You have $charge uses left.")
+ return@on true
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/CadavaPotionListener.kt b/Server/src/main/content/global/handlers/item/CadavaPotionListener.kt
new file mode 100644
index 000000000..35c3fa472
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/CadavaPotionListener.kt
@@ -0,0 +1,26 @@
+package rs09.game.interaction.`object`
+
+import core.api.sendItemDialogue
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+/**
+ * @author bushtail
+ */
+
+class CadavaPotionListener : InteractionListener {
+
+ var POTION = Items.CADAVA_POTION_756
+
+ override fun defineListeners() {
+ on(POTION, IntType.ITEM, "drink") { player, node ->
+ sendItemDialogue(player, POTION, "You dare not drink.")
+ return@on true
+ }
+ on(POTION, IntType.ITEM, "look-at") { player, node ->
+ sendItemDialogue(player, POTION, "This looks very colourful.")
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/CasketListener.kt b/Server/src/main/content/global/handlers/item/CasketListener.kt
new file mode 100644
index 000000000..78d7d99be
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/CasketListener.kt
@@ -0,0 +1,43 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.api.utils.WeightBasedTable
+import core.api.utils.WeightedItem
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.item.Item
+import core.tools.StringUtils
+import org.rs09.consts.Items
+import java.util.*
+import kotlin.collections.ArrayList
+
+class CasketListener : InteractionListener {
+ companion object {
+ val loot = WeightBasedTable.create(
+ WeightedItem(Items.COINS_995, 20, 640, 55.0, false),
+ WeightedItem(Items.UNCUT_SAPPHIRE_1623, 1, 1, 32.0, false),
+ WeightedItem(Items.UNCUT_EMERALD_1621, 1, 1, 16.0, false),
+ WeightedItem(Items.UNCUT_RUBY_1619, 1, 1, 9.0, false),
+ WeightedItem(Items.UNCUT_DIAMOND_1617, 1, 1, 2.0, false),
+ WeightedItem(Items.COSMIC_TALISMAN_1454, 1, 1, 8.0, false),
+ WeightedItem(Items.LOOP_HALF_OF_A_KEY_987, 1, 1, 1.0, false),
+ WeightedItem(Items.TOOTH_HALF_OF_A_KEY_985, 1, 1, 1.0, false)
+ )
+ }
+
+ override fun defineListeners() {
+ on(Items.CASKET_405, IntType.ITEM, "open"){ player, node ->
+ val casket = node.asItem()
+
+ if(removeItem(player, casket, Container.INVENTORY)) {
+ val finalLoot : ArrayList- = loot.roll()
+ finalLoot.forEach { player.inventory.add(it) }
+ player.dialogueInterpreter.sendItemMessage(finalLoot[0],
+ "You open the casket. Inside you find " +
+ (if (finalLoot[0].amount > 1) "some" else if (StringUtils.isPlusN(finalLoot[0].name)) "an" else "a") +
+ " " + finalLoot[0].name.lowercase(Locale.getDefault()) + ".")
+ }
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/ConsumableListener.kt b/Server/src/main/content/global/handlers/item/ConsumableListener.kt
new file mode 100644
index 000000000..e1da66439
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/ConsumableListener.kt
@@ -0,0 +1,51 @@
+package content.global.handlers.item
+
+import content.data.consumables.Consumables
+import core.api.delayAttack
+import core.api.getUsedOption
+import core.api.getWorldTicks
+import core.api.stopExecuting
+import core.game.interaction.Clocks
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.world.GameWorld
+
+class ConsumableListener : InteractionListener {
+ override fun defineListeners() {
+ on(IntType.ITEM, "eat", "drink", handler = ::handleConsumable)
+ }
+
+ private fun handleConsumable(player: Player, node: Node) : Boolean {
+ val consumable = Consumables.getConsumableById(node.id) ?: return true
+
+ val food = getUsedOption(player) == "eat"
+ val isIgnoreMainClock = consumable.isIgnoreMainClock
+
+ if (food) {
+ if (isIgnoreMainClock && player.clocks[Clocks.NEXT_CONSUME] < GameWorld.ticks) {
+ consumable.consumable.consume(node as? Item ?: return true, player)
+ player.clocks[Clocks.NEXT_CONSUME] = getWorldTicks() + 2
+ player.clocks[Clocks.NEXT_EAT] = getWorldTicks() + 2
+ delayAttack(player, 3)
+ } else if (player.clocks[Clocks.NEXT_CONSUME] < getWorldTicks() && player.clocks[Clocks.NEXT_EAT] < getWorldTicks()) {
+ consumable.consumable.consume(node as? Item ?: return true, player)
+ player.clocks[Clocks.NEXT_EAT] = getWorldTicks() + 2
+ delayAttack(player, 3)
+ }
+ } else {
+ if (isIgnoreMainClock && player.clocks[Clocks.NEXT_CONSUME] < getWorldTicks()) {
+ consumable.consumable.consume(node as? Item ?: return true, player)
+ player.clocks[Clocks.NEXT_CONSUME] = getWorldTicks() + 1
+ player.clocks[Clocks.NEXT_DRINK] = getWorldTicks() + 1
+ } else if (player.clocks[Clocks.NEXT_CONSUME] < getWorldTicks() && player.clocks[Clocks.NEXT_DRINK] < getWorldTicks()) {
+ consumable.consumable.consume(node as? Item ?: return true, player)
+ player.clocks[Clocks.NEXT_DRINK] = getWorldTicks() + 1
+ }
+ }
+
+ return true
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/ConsumableOptionPlugin.java b/Server/src/main/content/global/handlers/item/ConsumableOptionPlugin.java
similarity index 86%
rename from Server/src/main/java/core/game/interaction/item/ConsumableOptionPlugin.java
rename to Server/src/main/content/global/handlers/item/ConsumableOptionPlugin.java
index 577874124..3b74cd867 100644
--- a/Server/src/main/java/core/game/interaction/item/ConsumableOptionPlugin.java
+++ b/Server/src/main/content/global/handlers/item/ConsumableOptionPlugin.java
@@ -1,7 +1,9 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
-import core.game.content.consumable.*;
+import core.game.consumable.Consumable;
+import content.data.consumables.Consumables;
+import core.game.consumable.Potion;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
@@ -15,7 +17,6 @@ import core.plugin.Plugin;
* @author Emperor
* @version 1.0
*/
-@Initializable
public final class ConsumableOptionPlugin extends OptionHandler {
@Override
@@ -33,7 +34,7 @@ public final class ConsumableOptionPlugin extends OptionHandler {
@Override
public boolean handle(final Player player, final Node node, final String option) {
- if (player.getLocks().isLocked(option)) {
+/* if (player.getLocks().isLocked(option)) {
return true;
}
boolean food = option.equals("eat");
@@ -59,7 +60,7 @@ public final class ConsumableOptionPlugin extends OptionHandler {
if (food) {
player.getProperties().getCombatPulse().delayNextAttack(3);
}
- lastEaten = node.asItem().getId();
+ lastEaten = node.asItem().getId();*/
return true;
}
}
diff --git a/Server/src/main/content/global/handlers/item/DragonfireShieldListener.kt b/Server/src/main/content/global/handlers/item/DragonfireShieldListener.kt
new file mode 100644
index 000000000..c195a6f98
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/DragonfireShieldListener.kt
@@ -0,0 +1,147 @@
+package content.global.handlers.item
+
+import content.global.handlers.item.equipment.special.DragonfireSwingHandler
+import core.ServerConstants
+import core.api.*
+import core.game.container.impl.EquipmentContainer
+import core.game.global.action.DropListener
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatPulse.Companion.swing
+import core.game.node.entity.combat.InteractionType
+import core.game.node.entity.combat.equipment.SwitchAttack
+import core.game.node.entity.impl.Projectile
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.node.item.ItemPlugin
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.plugin.Initializable
+import core.plugin.Plugin
+import core.tools.minutesToTicks
+import core.tools.secondsToTicks
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+/**
+ * Handles the dragonfire shield options.
+ */
+
+class DragonfireShieldListener: InteractionListener {
+
+ val dragonfireShields = intArrayOf(Items.DRAGONFIRE_SHIELD_11283, Items.DRAGONFIRE_SHIELD_11284)
+ val dfsEmptyAnim = 6700
+ val dfsEmptyGfx = 1160
+ val dfsRecharge = if (ServerConstants.BETTER_DFS) secondsToTicks(30) else minutesToTicks(2)
+
+ override fun defineListeners() {
+
+ on(dragonfireShields, IntType.ITEM, "operate") { player, node ->
+ val usingAttack = !getAttribute(player, "dfs_spec", false)
+ if (!usingAttack) {
+ if (!player.settings.isSpecialToggled) {
+ setVarp(player, 301, 0)
+ }
+ player.removeAttribute("dfs_spec")
+ player.properties.combatPulse.temporaryHandler = null
+ return@on true
+ }
+ val notCharged = node.asItem().id == Items.DRAGONFIRE_SHIELD_11284 || node.asItem().charge < 20
+ if (notCharged) {
+ sendMessage(player, "Your shield has no charges left.")
+ return@on true
+ }
+ if (player.locks.isLocked("dfs_recharge")) {
+ sendMessage(player, "Your dragonfire shield is recharging.")
+ return@on true
+ }
+ setVarp(player, 301, 1)
+ player.setAttribute("dfs_spec", true)
+ val attack = SwitchAttack(null, Animation.create(6696), Graphics.create(1165), Graphics(1167, 96), Projectile.create(player, null, 1166, 36, 36, 80, 70, 0, 11))
+ val handler: DragonfireSwingHandler = object : DragonfireSwingHandler(false, 25, attack, true) {
+ override fun swing(entity: Entity?, victim: Entity?, state: BattleState?): Int {
+ if (entity is Player) {
+ if (!player.settings.isSpecialToggled) {
+ setVarp(player, 301, 0)
+ }
+ removeAttribute(player, "dfs_spec")
+ val shield = player.equipment[EquipmentContainer.SLOT_SHIELD]
+ if (shield == null || shield.id != Items.DRAGONFIRE_SHIELD_11283) {
+ return -1
+ }
+ playGlobalAudio(entity.getLocation(), Sounds.DRAGONSLAYER_SHIELDFIRE_3761)
+ delayEntity(player, 3)
+ shield.charge -= 20
+ if (shield.charge < 20 && node.asItem().slot == EquipmentContainer.SLOT_SHIELD) {
+ replaceSlot(player, node.asItem().slot, Item(Items.DRAGONFIRE_SHIELD_11284), Item(Items.DRAGONFIRE_SHIELD_11283), Container.EQUIPMENT)
+ }
+ EquipmentContainer.updateBonuses(player)
+ player.locks.lock("dfs_recharge", dfsRecharge)
+ }
+ return super.swing(entity, victim, state)
+ }
+
+ override fun visualizeImpact(entity: Entity?, victim: Entity?, state: BattleState?) {
+ playGlobalAudio(victim!!.location, Sounds.FIRESTRIKE_HIT_161, 20)
+ super.visualizeImpact(entity, victim, state)
+ }
+ }
+ attack.handler = handler
+ val victim = player.properties.combatPulse.getVictim()
+ if (player.properties.combatPulse.isAttacking && handler.canSwing(player, victim!!) == InteractionType.STILL_INTERACT) {
+ swing(player, victim, handler)
+ return@on true
+ }
+ player.properties.combatPulse.temporaryHandler = handler
+ return@on true
+ }
+
+ on(dragonfireShields, IntType.ITEM, "empty") { player, node ->
+ replaceSlot(player, node.asItem().slot, Item(Items.DRAGONFIRE_SHIELD_11284), Item(Items.DRAGONFIRE_SHIELD_11283))
+ visualize(player, dfsEmptyAnim, dfsEmptyGfx)
+ sendMessage(player, "You release the charges.")
+ playGlobalAudio(player.location, Sounds.DRAGONSLAYER_SHIELD_EMPTY_3760)
+ return@on true
+ }
+
+ on(dragonfireShields, IntType.ITEM, "inspect") { player, node ->
+ if (node.asItem().id == Items.DRAGONFIRE_SHIELD_11284) {
+ sendMessage(player, "The shield has no charges.")
+ return@on true
+ }
+ sendMessage(player, "The shield has " + node.asItem().charge / 20 + " charges.")
+ return@on true
+ }
+
+ on(dragonfireShields, IntType.ITEM, "drop") { player, node ->
+ var shield = node.asItem()
+ val slot = shield.slot
+ if (shield.id == Items.DRAGONFIRE_SHIELD_11283) {
+ replaceSlot(player, shield.slot, Item(Items.DRAGONFIRE_SHIELD_11284), Item(Items.DRAGONFIRE_SHIELD_11283))
+ shield = player.inventory.get(slot)
+ }
+ DropListener.drop(player, shield)
+ return@on true
+ }
+ }
+}
+
+/**
+ * Drops the uncharged dragonfire shield item id on death.
+ */
+
+@Initializable
+class DFSItemPlugin : ItemPlugin() {
+
+ @Throws(Throwable::class)
+ override fun newInstance(arg: Any?): Plugin
{
+ register(Items.DRAGONFIRE_SHIELD_11283)
+ return this
+ }
+
+ override fun getDeathItem(item: Item?): Item {
+ return Item(Items.DRAGONFIRE_SHIELD_11284)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/DrinkBlamishOilListener.kt b/Server/src/main/content/global/handlers/item/DrinkBlamishOilListener.kt
new file mode 100644
index 000000000..0e6c423b1
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/DrinkBlamishOilListener.kt
@@ -0,0 +1,16 @@
+package content.global.handlers.item
+
+import core.api.*
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class DrinkBlamishOilListener : InteractionListener {
+
+ override fun defineListeners() {
+ on(Items.BLAMISH_OIL_1582, IntType.ITEM, "drink"){ player, _ ->
+ sendPlayerDialogue(player, "You know... I'd really rather not.")
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/EctophialListener.kt b/Server/src/main/content/global/handlers/item/EctophialListener.kt
new file mode 100644
index 000000000..111db96c5
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/EctophialListener.kt
@@ -0,0 +1,75 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager.TeleportType
+import core.game.node.item.Item
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import org.rs09.consts.Sounds
+import content.data.Quests
+
+@Suppress("unused")
+class EctophialListener : InteractionListener {
+ private val fillAnimation = Animation(832)
+ private val emptyAnimation = Animation(9609)
+ private val emptyGraphics = Graphics(1688)
+
+ private fun refillEctophial(player: Player) {
+ delayEntity(player, fillAnimation.duration)
+ animate(player, fillAnimation)
+ playAudio(player, Sounds.FILL_ECTOPLASM_1132)
+ if (removeItem(player, Items.ECTOPHIAL_4252)) {
+ addItem(player, Items.ECTOPHIAL_4251)
+ sendMessage(player, "You refill the ectophial from the Ectofuntus.")
+ }
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.ECTOPHIAL_4252, Scenery.ECTOFUNTUS_5282) { player, _, _ ->
+ refillEctophial(player)
+ return@onUseWith true
+ }
+
+ on(Items.ECTOPHIAL_4251, IntType.ITEM, "empty") { player, node ->
+ if (!hasRequirement(player, Quests.GHOSTS_AHOY))
+ return@on true
+
+ if (player.isTeleBlocked) {
+ sendMessage(player, "A magical force has stopped you from teleporting.")
+ return@on true
+ }
+ delayEntity(player, 10)
+ closeAllInterfaces(player)
+ queueScript(player, 0, QueueStrength.SOFT) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ sendMessage(player, "You empty the ectoplasm onto the ground around your feet...")
+ playAudio(player, 4580)
+ visualize(player, emptyAnimation, emptyGraphics)
+ replaceSlot(player, node.asItem().slot, Item(Items.ECTOPHIAL_4252), Item(Items.ECTOPHIAL_4251))
+ return@queueScript delayScript(player, emptyAnimation.duration)
+ }
+ 1 -> {
+ teleport(player, Location.create(3658, 3517, 0), TeleportType.ECTOPHIAL)
+ sendMessage(player, "...and the world changes around you.")
+ return@queueScript delayScript(player, 9)
+ }
+ 2 -> {
+ face(player, Location(3659, 3519, 0))
+ refillEctophial(player)
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/EmptyOptionListener.kt b/Server/src/main/content/global/handlers/item/EmptyOptionListener.kt
new file mode 100644
index 000000000..12771ec0b
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/EmptyOptionListener.kt
@@ -0,0 +1,91 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.cache.def.impl.ItemDefinition
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+import java.util.*
+
+/**
+ * Handles items with "empty" options
+ */
+class EmptyOptionListener : InteractionListener {
+
+ override fun defineListeners() {
+
+ on(EmptyItem.emptyItemList.toIntArray(), IntType.ITEM, "empty", "empty bowl", "empty dish") { player, node ->
+ if (node.name.contains("brew") || node.name.contains("potion") || node.name.lowercase(Locale.getDefault()).contains("poison") || node.name.lowercase(Locale.getDefault()).contains("serum") || node.name.contains("cure") || node.name.contains("mix") || node.name.contains("balm")) {
+ replaceSlot(player, node.asItem().slot, Item(EmptyItem.getEmpty(Items.POTION_195)!!), node.asItem())
+ playAudio(player, EmptyItem.getEmptyAudio(Items.POTION_195)!!)
+ return@on true
+ }
+ if (EmptyItem.emptyItemMap[node.id] != null) {
+ replaceSlot(player, node.asItem().slot, Item(EmptyItem.getEmpty(node.id)!!), node.asItem())
+ if (EmptyItem.getEmptyAudio(node.id) != -1) playAudio(player, EmptyItem.getEmptyAudio(node.id)!!)
+ EmptyItem.getEmptyMessage(node.id)?.let { sendMessage(player, it) }
+ }
+ return@on true
+ }
+ }
+
+ enum class EmptyItem(var fullId: Int, var emptyId: Int, var emptyMessage: String, var audioId: Int = -1) {
+ POT_OF_FLOUR(Items.POT_OF_FLOUR_1933, Items.EMPTY_POT_1931, "You empty the contents of the pot onto the floor."),
+ POT_OF_CORNFLOUR(Items.POT_OF_CORNFLOUR_7468, Items.EMPTY_POT_1931, "You empty the contents of the pot onto the floor."),
+ BONE_MEAL(Items.BONEMEAL_4255, Items.EMPTY_POT_1931, "You empty the pot of crushed bones."),
+ BUCKET_OF_SAND(Items.BUCKET_OF_SAND_1783, Items.BUCKET_1925, "You empty the contents of the bucket onto the floor.", Sounds.SAND_BUCKET_2584),
+ BUCKET_OF_MILK(Items.BUCKET_OF_MILK_1927, Items.BUCKET_1925, "You empty the contents of the bucket onto the floor.", Sounds.LIQUID_2401),
+ BUCKET_OF_WATER(Items.BUCKET_OF_WATER_1929, Items.BUCKET_1925, "You empty the contents of the bucket on the floor.", Sounds.LIQUID_2401),
+ BUCKET_OF_COMPOST(Items.COMPOST_6032, Items.BUCKET_1925, "You empty the bucket of compost."),
+ BUCKET_OF_SUPERCOMPOST(Items.SUPERCOMPOST_6034, Items.BUCKET_1925, "You empty the bucket of supercompost."),
+ BUCKET_OF_SLIME(Items.BUCKET_OF_SLIME_4286, Items.BUCKET_1925, "You empty the contents of the bucket on the floor.", Sounds.LIQUID_2401),
+ VIAL_OF_WATER(Items.VIAL_OF_WATER_227, Items.VIAL_229, "You empty the vial.", Sounds.LIQUID_2401),
+ BOWL_OF_WATER(Items.BOWL_OF_WATER_1921, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
+ JUG_OF_WATER(Items.JUG_OF_WATER_1937, Items.JUG_1935, "You empty the contents of the jug onto the floor.", Sounds.LIQUID_2401),
+ BURNT_PIE(Items.BURNT_PIE_2329, Items.PIE_DISH_2313, "You empty the pie dish."),
+ POTION(Items.POTION_195, Items.VIAL_229, "You empty the vial.", Sounds.LIQUID_2401),
+ BURNT_STEW(Items.BURNT_STEW_2005, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
+ NETTLE_TEA(Items.NETTLE_TEA_4239, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
+ NETTLE_WATER(Items.NETTLE_WATER_4237, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
+ NETTLE_TEA_MILKY(Items.NETTLE_TEA_4240, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
+ BURNT_CURRY(Items.BURNT_CURRY_2013, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.", Sounds.LIQUID_2401),
+ BURNT_GNOMEBOWL(Items.BURNT_GNOMEBOWL_2175, Items.GNOMEBOWL_MOULD_2166, "You empty the contents of the gnomebowl onto the floor."),
+ BURNT_EGG(Items.BURNT_EGG_7090, Items.BOWL_1923, "You empty the contents of the bowl onto the floor."),
+ BURNT_ONION(Items.BURNT_ONION_7092, Items.BOWL_1923, "You empty the contents of the bowl onto the floor."),
+ BURNT_MUSHROOM(Items.BURNT_MUSHROOM_7094, Items.BOWL_1923, "You empty the contents of the bowl onto the floor.");
+
+ companion object {
+ var emptyItemMap = HashMap()
+ var emptyMessageMap = HashMap()
+ var emptyAudioMap = HashMap()
+ var emptyItemList = ArrayList()
+
+ init {
+ for (item in values()) {
+ emptyItemMap.putIfAbsent(item.fullId, item.emptyId)
+ emptyMessageMap.putIfAbsent(item.fullId, item.emptyMessage)
+ emptyAudioMap.putIfAbsent(item.fullId, item.audioId)
+ emptyItemList.add(item.fullId)
+ }
+ for (item in ItemDefinition.getDefinitions().values)
+ if (item.name.contains("potion") || item.name.contains("brew") || item.name.contains("poison") || item.name.lowercase(Locale.getDefault()).contains("serum") || item.name.contains("cure") || item.name.contains("mix") || item.name.contains("balm")) {
+ emptyItemList.add(item.id)
+ }
+ }
+
+ fun getEmpty(id: Int): Int? {
+ return emptyItemMap[id]
+ }
+
+ fun getEmptyMessage(id: Int): String? {
+ return emptyMessageMap[id]
+ }
+
+ fun getEmptyAudio(id: Int): Int? {
+ return emptyAudioMap[id]
+ }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/EnchantJewelleryTabListener.kt b/Server/src/main/content/global/handlers/item/EnchantJewelleryTabListener.kt
new file mode 100644
index 000000000..b37ed1b1e
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/EnchantJewelleryTabListener.kt
@@ -0,0 +1,92 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+class EnchantJewelleryTabListener : InteractionListener {
+
+ private val LVL_1_ENCHANT = mapOf(
+ Items.BLUE_DRAGONHIDE_1751 to Items.PLAIN_SATCHEL_10877,
+ Items.SAPPHIRE_RING_1637 to Items.RING_OF_RECOIL_2550,
+ Items.SAPPHIRE_NECKLACE_1656 to Items.GAMES_NECKLACE8_3853,
+ Items.SAPPHIRE_AMULET_1694 to Items.AMULET_OF_MAGIC_1727,
+ Items.SAPPHIRE_BRACELET_11072 to Items.BRACELET_OF_CLAY_11074
+ )
+ private val LVL_2_ENCHANT = mapOf(
+ Items.GREEN_DRAGONHIDE_1753 to Items.GREEN_SATCHEL_10878,
+ Items.EMERALD_RING_1639 to Items.RING_OF_DUELLING8_2552,
+ Items.EMERALD_NECKLACE_1658 to Items.BINDING_NECKLACE_5521,
+ Items.EMERALD_AMULET_1696 to Items.AMULET_OF_DEFENCE_1729,
+ Items.EMERALD_BRACELET_11076 to Items.CASTLEWAR_BRACE3_11079
+ )
+
+ private val LVL_3_ENCHANT = mapOf(
+ Items.RED_DRAGONHIDE_1749 to Items.RED_SATCHEL_10879,
+ Items.RUBY_RING_1641 to Items.RING_OF_FORGING_2568,
+ Items.RUBY_NECKLACE_1660 to Items.DIGSITE_PENDANT_5_11194,
+ Items.RUBY_AMULET_1698 to Items.AMULET_OF_STRENGTH_1725,
+ Items.RUBY_BRACELET_11085 to Items.INOCULATION_BRACE_11088
+ )
+
+ private val LVL_4_ENCHANT = mapOf(
+ Items.DAGANNOTH_HIDE_6155 to Items.GOLD_SATCHEL_10881,
+ Items.DIAMOND_RING_1643 to Items.RING_OF_LIFE_2570,
+ Items.DIAMOND_NECKLACE_1662 to Items.PHOENIX_NECKLACE_11090,
+ Items.DIAMOND_AMULET_1700 to Items.AMULET_OF_POWER_1731,
+ Items.DIAMOND_BRACELET_11092 to Items.FORINTHRY_BRACE5_11095
+ )
+
+ private val LVL_5_ENCHANT = mapOf(
+ Items.SUQAH_HIDE_9080 to Items.RUNE_SATCHEL_10882,
+ Items.DRAGONSTONE_RING_1645 to Items.RING_OF_WEALTH4_14646,
+ Items.DRAGON_NECKLACE_1664 to Items.SKILLS_NECKLACE4_11105,
+ Items.DRAGONSTONE_AMMY_1702 to Items.AMULET_OF_GLORY4_1712,
+ Items.DRAGON_BRACELET_11115 to Items.COMBAT_BRACELET4_11118
+ )
+
+ private val LVL_6_ENCHANT = mapOf(
+ Items.BLACK_DRAGONHIDE_1747 to Items.BLACK_SATCHEL_10880,
+ Items.ONYX_RING_6575 to Items.RING_OF_STONE_6583,
+ Items.ONYX_NECKLACE_6577 to Items.BERSERKER_NECKLACE_11128,
+ Items.ONYX_AMULET_6581 to Items.AMULET_OF_FURY_6585,
+ Items.ONYX_BRACELET_11130 to Items.REGEN_BRACELET_11133
+ )
+
+ override fun defineListeners() {
+ on(IntType.ITEM, "break") {player, node ->
+ closeAllInterfaces(player)
+ delayEntity(player, 1)
+ queueScript(player, strength = QueueStrength.SOFT) {
+
+ val items = when (node.id) {
+ 8016 -> LVL_1_ENCHANT //Sapphire
+ 8017 -> LVL_2_ENCHANT
+ 8018 -> LVL_3_ENCHANT
+ 8019 -> LVL_4_ENCHANT
+ 8020 -> LVL_5_ENCHANT
+ 8021 -> LVL_6_ENCHANT
+ else -> return@queueScript stopExecuting(player)
+ }
+
+ if (inInventory(player, node.id)) {
+ for (item in player.inventory.toArray()) {
+ if (item == null) continue
+ val product = items[item.id] ?: continue
+ if (removeItem(player, node.id) && (removeItem(player, item.id))) {
+ addItem(player, product)
+ playAudio(player, Sounds.POH_TABLET_BREAK_979)
+ animate(player, 4069, true)
+ break
+ }
+ }
+ }
+ return@queueScript stopExecuting(player)
+ }
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/EnchantedGemListener.kt b/Server/src/main/content/global/handlers/item/EnchantedGemListener.kt
new file mode 100644
index 000000000..252dbe2ff
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/EnchantedGemListener.kt
@@ -0,0 +1,68 @@
+package content.global.handlers.item
+
+import content.global.skill.slayer.SlayerUtils
+import core.api.*
+import content.global.skill.slayer.Tasks
+import org.rs09.consts.Items
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.IfTopic
+import core.game.dialogue.Topic
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.tools.END_DIALOGUE
+
+class EnchantedGemListener : InteractionListener {
+ override fun defineListeners() {
+ on(Items.ENCHANTED_GEM_4155, IntType.ITEM, "activate") { player, _ ->
+ openDialogue(player, EnchantedGemDialogue())
+ return@on true
+ }
+ }
+}
+
+class EnchantedGemDialogue() : DialogueFile() {
+ var firstRun = true
+ override fun handle(interfaceId: Int, buttonId: Int) {
+ npc = getSlayerMaster(player!!)
+ when(stage) {
+ 0 -> npcl(core.game.dialogue.FacialExpression.FRIENDLY, "Hello there ${player!!.username}, what can I help you with?").also { stage++ }
+ 1 -> showTopics(
+ Topic(core.game.dialogue.FacialExpression.ASKING, "How am I doing so far?", 100),
+ Topic(core.game.dialogue.FacialExpression.HALF_ASKING, "Who are you?", 200),
+ Topic(core.game.dialogue.FacialExpression.HALF_ASKING, "Where are you?", 300),
+ Topic(core.game.dialogue.FacialExpression.FRIENDLY, "Got any tips for me?", 400),
+ IfTopic(core.game.dialogue.FacialExpression.FRIENDLY, "Nothing really.", END_DIALOGUE, firstRun),
+ IfTopic(core.game.dialogue.FacialExpression.HAPPY, "That's all thanks.", END_DIALOGUE, !firstRun)
+ )
+ 100 -> {
+ firstRun = false
+ if(!hasSlayerTask(player!!)) {
+ npcl(core.game.dialogue.FacialExpression.HALF_THINKING, "You need something new to hunt. Come and see me when you can and I'll give you a new task.").also { stage = 1 }
+ } else {
+ if(getSlayerTask(player!!) == Tasks.JAD) {
+ npcl(core.game.dialogue.FacialExpression.FRIENDLY, "You're currently assigned to kill TzTok-Jad!")
+ } else {
+ npcl(core.game.dialogue.FacialExpression.FRIENDLY, "You're currently assigned to kill ${SlayerUtils.pluralise(
+ getSlayerTaskName(player!!))}; only ${getSlayerTaskKillsRemaining(player!!)} more to go.")
+ }
+ setVarp(player!!, 2502, getSlayerTaskFlags(player!!) shr 4)
+ stage = 1
+ }
+ }
+ 200 -> {
+ firstRun = false
+ npcl(core.game.dialogue.FacialExpression.HAPPY, "My name's ${getSlayerMaster(player!!).name}, I'm the Slayer Master best able to train you.").also { stage = 1 }
+ }
+ 300 -> {
+ firstRun = false
+ npcl(core.game.dialogue.FacialExpression.HAPPY, "You'll find me in ${getSlayerMasterLocation(player!!)}, I'll be here when you need a new task.").also { stage = 1 }
+ }
+ 400 -> {
+ firstRun = false
+ npc(core.game.dialogue.FacialExpression.FRIENDLY, *getSlayerTip(player!!))
+ stage++
+ }
+ 401 -> player(core.game.dialogue.FacialExpression.HAPPY, "Great, thanks!").also { stage = 1 }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/EnchantedJewelleryListener.kt b/Server/src/main/content/global/handlers/item/EnchantedJewelleryListener.kt
new file mode 100644
index 000000000..2878628ac
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/EnchantedJewelleryListener.kt
@@ -0,0 +1,68 @@
+package content.global.handlers.item
+
+import core.api.openDialogue
+import core.api.sendMessage
+import core.game.node.Node
+import core.game.node.entity.impl.PulseType
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.dialogue.DialogueFile
+import content.data.EnchantedJewellery
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.tools.START_DIALOGUE
+import org.rs09.consts.Items
+
+/**
+ * Listener for enchanted jewellery options
+ * @author Ceikry, downthecrop, Player Name
+ */
+class EnchantedJewelleryListener : InteractionListener {
+
+ val ids = EnchantedJewellery.idMap.keys.toIntArray()
+
+ override fun defineListeners() {
+ on(ids, IntType.ITEM, "operate") { player, node ->
+ handle(player, node, true)
+ return@on true
+ }
+ on(ids, IntType.ITEM, "rub") { player, node ->
+ handle(player, node, false)
+ return@on true
+ }
+ }
+ private fun handle(player: Player, node: Node, isEquipped: Boolean) {
+ player.pulseManager.clear(PulseType.STANDARD)
+ val item = node.asItem()
+ if (item.id == Items.RING_OF_LIFE_2570) {
+ sendMessage(player, "You can't operate that.")
+ return
+ }
+ val jewellery = EnchantedJewellery.idMap[item.id]
+ if (jewellery != null) {
+ if (jewellery.isLastItemIndex(jewellery.getItemIndex(item)) && !jewellery.isCrumble) {
+ sendMessage(player, "The ${jewellery.getJewelleryType(item)} has lost its charge.")
+ sendMessage(player, "It will need to be recharged before you can use it again.")
+ return
+ }
+ sendMessage(player, "You rub the ${jewellery.getJewelleryType(item)}...")
+ if (jewellery.options.isEmpty()) {
+ jewellery.use(player, item, 0, isEquipped)
+ return
+ }
+ openDialogue(player,EnchantedJewelleryDialogueFile(jewellery,item,isEquipped))
+ }
+ }
+
+ class EnchantedJewelleryDialogueFile(val jewellery: EnchantedJewellery, val item: Item, val isEquipped: Boolean) : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ START_DIALOGUE -> {
+ interpreter!!.sendOptions("Where would you like to go?", *jewellery.options)
+ stage++
+ }
+ 1 -> end().also { jewellery.use(player!!, item, buttonID - 1, isEquipped) }
+ }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/ExplorersRingPlugin.kt b/Server/src/main/content/global/handlers/item/ExplorersRingPlugin.kt
new file mode 100644
index 000000000..79208d80f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/ExplorersRingPlugin.kt
@@ -0,0 +1,102 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager.TeleportType
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Location
+import org.json.simple.JSONObject
+import org.rs09.consts.Items
+import core.ServerStore
+import core.ServerStore.Companion.getInt
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import content.global.skill.magic.modern.ModernListeners
+
+class ExplorersRingPlugin : InteractionListener {
+
+ val RINGS = intArrayOf(Items.EXPLORERS_RING_1_13560, Items.EXPLORERS_RING_2_13561, Items.EXPLORERS_RING_3_13562)
+ val CABBAGE_PORT = Location.create(3051, 3291, 0)
+
+
+ override fun defineListeners() {
+ on(RINGS, IntType.ITEM, "run-replenish"){ player, node ->
+ val charges = getStoreFile().getInt(player.username.toLowerCase() + ":run")
+ if (charges >= getRingLevel(node.id)) {
+ sendDialogue(player,"Your ring appears to have no more run energy recharges left for today.")
+ return@on true
+ }
+ if (player.settings.runEnergy == 100.0) {
+ sendMessage(player, "You are fully rested. You do not need to use the ring's power for the moment.")
+ return@on true
+ }
+ player.settings.updateRunEnergy(-50.0)
+ playAudio(player, 5035)
+
+ getStoreFile()[player.username.toLowerCase() + ":run"] = charges + 1
+
+ sendMessage(player,"You feel refreshed as the ring revitalises you and a charge is used up.")
+ visualize(player, 9988, 1733)
+ return@on true
+ }
+
+ //Sources Used
+ // - https://www.youtube.com/watch?v=PEA0fkRK0-A&t=64s&pp=ygUcMjAwOSBydW5lc2NhcGUgZXhwbG9yZXIgcmluZw%3D%3D
+ // - https://runescape.wiki/w/Explorer%27s_ring?oldid=899927
+ on(RINGS, IntType.ITEM, "low-alchemy"){ player, _ ->
+ if (!hasLevelStat(player, Skills.MAGIC, 21)) {
+ sendMessage(player,"You need a Magic level of 21 in order to do that.")
+ return@on true
+ }
+ val remaining = getStoreFile().getInt(player.username.lowercase() + ":alchs", 30)
+ if (remaining <= 0) {
+ sendMessage(player, "You have used up all of your charges for the day.")
+ return@on true
+ }
+ //sendDialogue(player, "Choose the item that you wish to convert to coins.")
+ //addDialogueAction (player) {_,_ ->
+ sendItemSelect (player, "Cast Low Level Alchemy on:") { slot, optionIndex ->
+ val item = player.inventory[slot]
+ if (item == null)
+ return@sendItemSelect
+ if (!ModernListeners().alchemize(player, item, false, explorersRing = true))
+ return@sendItemSelect
+ getStoreFile()[player.username.lowercase() + ":alchs"] = remaining - 1
+ }
+ //}
+ return@on true
+ }
+
+ on(RINGS, IntType.ITEM, "cabbage-port"){ player, node ->
+ teleport(player)
+ return@on true
+ }
+
+ on(RINGS, IntType.ITEM, "operate", "rub"){ player, node ->
+ if(getRingLevel(node.id) < 3){
+ sendMessage(player, "This item can not be operated.")
+ return@on true
+ }
+
+ teleport(player)
+ return@on true
+ }
+ }
+
+ fun teleport(player: Player){
+ teleport(player, CABBAGE_PORT, TeleportType.CABBAGE)
+ }
+
+ fun getRingLevel(id: Int): Int{
+ return when(id){
+ Items.EXPLORERS_RING_1_13560 -> 1
+ Items.EXPLORERS_RING_2_13561 -> 2
+ Items.EXPLORERS_RING_3_13562 -> 3
+ else -> -1
+ }
+ }
+
+ fun getStoreFile(): JSONObject{
+ return ServerStore.getArchive("daily-explorer-ring")
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/FaladorShieldPlugin.java b/Server/src/main/content/global/handlers/item/FaladorShieldPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/FaladorShieldPlugin.java
rename to Server/src/main/content/global/handlers/item/FaladorShieldPlugin.java
index 60fed09f0..4cebc31c7 100644
--- a/Server/src/main/java/core/game/interaction/item/FaladorShieldPlugin.java
+++ b/Server/src/main/content/global/handlers/item/FaladorShieldPlugin.java
@@ -1,14 +1,14 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import java.util.concurrent.TimeUnit;
import core.cache.def.impl.ItemDefinition;
import core.game.node.entity.Entity;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
-import core.game.content.consumable.effects.PrayerEffect;
+import content.data.consumables.effects.PrayerEffect;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/interaction/item/FishbowlPlugin.java b/Server/src/main/content/global/handlers/item/FishbowlPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/FishbowlPlugin.java
rename to Server/src/main/content/global/handlers/item/FishbowlPlugin.java
index 2ed06682a..09cbfb5b2 100644
--- a/Server/src/main/java/core/game/interaction/item/FishbowlPlugin.java
+++ b/Server/src/main/content/global/handlers/item/FishbowlPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.Util;
import core.cache.def.impl.ItemDefinition;
@@ -15,11 +15,14 @@ import core.game.node.item.WeightedChanceItem;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
import core.tools.RandomFunction;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.node.entity.skill.Skills;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
// Sources:
// https://www.youtube.com/watch?v=xu7Err9YUgw
@@ -71,6 +74,7 @@ public class FishbowlPlugin extends OptionHandler {
if (player.getInventory().remove(item)) {
player.lock(2);
player.getInventory().add(new Item(FISHBOWL_EMPTY));
+ playAudio(player, Sounds.LIQUID_2401);
player.getPacketDispatch().sendMessage("You empty the contents of the fishbowl onto the ground.");
}
break;
@@ -250,7 +254,7 @@ public class FishbowlPlugin extends OptionHandler {
Item fish = RandomFunction.rollWeightedChanceTable(fishChance);
player.getInventory().add(fish);
- String msg = "[ REPORT BUG ON DISCORD ]";
+ String msg = "[ REPORT BUG ON GITLAB ]";
switch(fish.getId()) {
case FISHBOWL_BLUE:
msg = "Bluefish";
diff --git a/Server/src/main/java/core/game/interaction/item/GnomeCopterPlugin.java b/Server/src/main/content/global/handlers/item/GnomeCopterPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/GnomeCopterPlugin.java
rename to Server/src/main/content/global/handlers/item/GnomeCopterPlugin.java
index 3f30cd574..f3522b247 100644
--- a/Server/src/main/java/core/game/interaction/item/GnomeCopterPlugin.java
+++ b/Server/src/main/content/global/handlers/item/GnomeCopterPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.container.impl.EquipmentContainer;
diff --git a/Server/src/main/java/core/game/interaction/item/GnomecopterTicket.java b/Server/src/main/content/global/handlers/item/GnomecopterTicket.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/GnomecopterTicket.java
rename to Server/src/main/content/global/handlers/item/GnomecopterTicket.java
index 049b1989e..49075853f 100644
--- a/Server/src/main/java/core/game/interaction/item/GnomecopterTicket.java
+++ b/Server/src/main/content/global/handlers/item/GnomecopterTicket.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
diff --git a/Server/src/main/content/global/handlers/item/GodBookListeners.kt b/Server/src/main/content/global/handlers/item/GodBookListeners.kt
new file mode 100644
index 000000000..764190e72
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/GodBookListeners.kt
@@ -0,0 +1,162 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.node.Node
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+
+class GodBookListeners : InteractionListener {
+
+ val GB_SARADOMIN = Items.HOLY_BOOK_3840
+ val GB_ZAMORAK = Items.UNHOLY_BOOK_3842
+ val GB_GUTHIX = Items.BOOK_OF_BALANCE_3844
+
+ override fun defineListeners() {
+ on(GB_SARADOMIN, IntType.ITEM, "preach"){ player, _ ->
+ openDialogue(player, HOLY_DIALOGUE(BOOK.SARA))
+ return@on true
+ }
+ on(GB_ZAMORAK, IntType.ITEM, "preach"){ player, _ ->
+ openDialogue(player, HOLY_DIALOGUE(BOOK.ZAM))
+ return@on true
+ }
+ on(GB_GUTHIX, IntType.ITEM, "preach"){ player, _ ->
+ openDialogue(player, HOLY_DIALOGUE(BOOK.GUTHIX))
+ return@on true
+ }
+
+ fun bless(player: Player, node: Node, product: Int) {
+ if (player.skills.getStaticLevel(Skills.PRAYER) < 50) {
+ sendMessage(player, "You need a Prayer level of at least 50 in order to do this.")
+ } else if (player.skills.prayerPoints < 4) {
+ sendMessage(player, "You need at least 4 prayer points in order to do this.")
+ } else {
+ sendMessage(player, "You bless the ${node.asItem().name.lowercase()}.")
+ player.skills.decrementPrayerPoints(4.0)
+ replaceSlot(player, node.asItem().slot, Item(product), node.asItem())
+ }
+ }
+ onUseWith(IntType.ITEM, GB_SARADOMIN, Items.UNBLESSED_SYMBOL_1716) { player, _, symbol ->
+ bless(player, symbol, Items.HOLY_SYMBOL_1718)
+ return@onUseWith true
+ }
+ onUseWith(IntType.ITEM, GB_ZAMORAK, Items.UNPOWERED_SYMBOL_1722) { player, _, symbol ->
+ bless(player, symbol, Items.UNHOLY_SYMBOL_1724)
+ return@onUseWith true
+ }
+ onUseWith(IntType.ITEM, GB_GUTHIX, Items.UNBLESSED_SYMBOL_1716) { player, _, symbol ->
+ bless(player, symbol, Items.HOLY_SYMBOL_1718)
+ return@onUseWith true
+ }
+ onUseWith(IntType.ITEM, GB_GUTHIX, Items.UNPOWERED_SYMBOL_1722) { player, _, symbol ->
+ bless(player, symbol, Items.UNHOLY_SYMBOL_1724)
+ return@onUseWith true
+ }
+ }
+
+ internal enum class BOOK {
+ SARA,
+ GUTHIX,
+ ZAM
+ }
+
+ internal class HOLY_DIALOGUE(val book: BOOK) : DialogueFile(){
+
+ val WEDDINGS = arrayOf(
+ "In the name of Saradomin, protector of us all, I now join you in the eyes of Saradomin.",
+ "Light and dark, day and night, balance arises from contrast. I unify thee in the name of Guthix.",
+ "Two great warriors, joined by hand, to spread destruction across the land. In Zamorak's name, now two are one."
+ )
+
+ val LAST_RITES = arrayOf(
+ "Thy cause was false, thy skills did lack; See you in Lumbridge when you get back.",
+ "Thy death was not in vain, for it brought some balance to the world. May Guthix bring you rest.",
+ "The weak deserve to die, so the strong may flourish. This is the creed of Zamorak."
+ )
+
+ val BLESSINGS = arrayOf(
+ "Go in peace in the name of Saradomin; may his glory shine upon you like the sun.",
+ "May you walk the path, and never fall, for Guthix walks beside thee on thy journey. May Guthix bring you peace.",
+ "May your bloodthirst never be sated, and may all your battles be glorious. Zamorak bring you strength."
+ )
+
+ val PREACHINGS = arrayOf(
+ arrayOf(
+ "Protect your self, protect your friends. Mine is the glory that never ends.",
+ "The darkness in life may be avoided, by the light of wisdom shining.",
+ "Show love to your friends, and mercy to your enemies, and know that the wisdom of Saradomin will follow. ",
+ "A fight begun, when the cause is just, will prevail over all others.",
+ "The currency of goodness is honour; It retains its value through scarcity."
+ ),
+ arrayOf(
+ "All things must end, as all begin; Only Guthix knows the role thou must play.",
+ "In life, in death, in joy, in sorrow: May thine experience show thee balance.",
+ "Thou must do as thou must, no matter what. Thine actions bring balance to this world.",
+ "he river flows, the sun ignites, May you stand with Guthix in thy fights.",
+ "A journey of a single step, May take thee over a thousand miles."
+ ),
+ arrayOf(
+ "There is no opinion that cannot be proven true...by crushing those who choose to disagree with it.",
+ "Battles are not lost and won; They simply remove the weak from the equation.",
+ "Those who fight, then run away, shame Zamorak with their cowardice.",
+ "Battle is by those who choose to disagree with it.",
+ "Strike fast, strike hard, strike true: The strength of Zamorak will be with you."
+ )
+ )
+
+ val PREACH_SARA_AMEN = "This is Saradomin's Wisdom."
+ val PREACH_ZAM_AMEN = "Zamorak give me strength!"
+ val PREACH_GUTH_AMEN = "May Guthix bring you balance."
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage){
+ 0 -> options("Weddings","Last Rites","Blessings","Preaching").also { stage++ }
+ 1 -> when(buttonID){
+ 1 -> say(player!!, WEDDINGS[book.ordinal], book, false)
+ 2 -> say(player!!, LAST_RITES[book.ordinal], book, false)
+ 3 -> say(player!!, BLESSINGS[book.ordinal], book, false)
+ 4 -> say(player!!, PREACHINGS[book.ordinal].random(), book, true)
+ else -> {}
+ }.also { end() }
+ }
+ }
+
+ private fun say(player: Player, message: String, book: BOOK, preach: Boolean){
+ val animation = when(book){
+ BOOK.SARA -> Animation(1335)
+ BOOK.ZAM -> Animation(1336)
+ BOOK.GUTHIX -> Animation(1337)
+ }
+
+ val preachText = when(book){
+ BOOK.SARA -> PREACH_SARA_AMEN
+ BOOK.ZAM -> PREACH_ZAM_AMEN
+ BOOK.GUTHIX -> PREACH_GUTH_AMEN
+ }
+
+ val lastTick = animationDuration(animation)
+
+ lock(player, 100)
+ animate(player, animation)
+
+ submitIndividualPulse(player, object : Pulse() {
+ var counter = 0
+ override fun pulse(): Boolean {
+ when(counter++){
+ 0 -> sendChat(player, message)
+ lastTick - 1 -> if(preach) sendChat(player, preachText)
+ lastTick -> unlock(player).also { return true }
+ }
+ return false
+ }
+ })
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/GodBookPlugin.java b/Server/src/main/content/global/handlers/item/GodBookPlugin.java
new file mode 100644
index 000000000..9f955de41
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/GodBookPlugin.java
@@ -0,0 +1,124 @@
+package content.global.handlers.item;
+
+import core.game.dialogue.DialogueAction;
+import content.data.GodBook;
+import core.game.node.entity.skill.Skills;
+import core.game.interaction.NodeUsageEvent;
+import core.game.interaction.OptionHandler;
+import core.game.interaction.UseWithHandler;
+import core.game.node.Node;
+import core.game.node.entity.player.Player;
+import core.game.node.item.GroundItem;
+import core.game.node.item.Item;
+import core.game.node.item.ItemPlugin;
+import core.plugin.Plugin;
+import core.plugin.Initializable;
+import core.plugin.ClassScanner;
+
+/**
+ * Handles the god books.
+ * @author Vexia
+ */
+@Initializable
+public class GodBookPlugin extends OptionHandler {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ for (GodBook book : GodBook.values()) {
+ book.getDamagedBook().getDefinition().getHandlers().put("option:check", this);
+ }
+ ClassScanner.definePlugins(new PageHandler(), new GodBookItem());
+ return this;
+ }
+
+ @Override
+ public boolean handle(Player player, Node node, String option) {
+ GodBook book = GodBook.forItem(node.asItem(), option.equalsIgnoreCase("check"));
+ if (book != null) {
+ switch (option) {
+ case "check":
+ String[] messages = new String[4];
+ for (int i = 0; i < messages.length; i++) {
+ messages[i] = book.hasPage(player, node.asItem(), i + 1) ? "The " + getNumberName(i + 1) + " page is in the book." : "The " + getNumberName(i + 1) + " page is missing.";
+ }
+ player.getDialogueInterpreter().sendDialogue(messages);
+ return true;
+ case "preach":
+ player.getDialogueInterpreter().open("god-book", book);
+ return true;
+ }
+ }
+ return true;
+ }
+
+ /**
+ * A god book item.
+ * @author Vexia
+ */
+ public class GodBookItem extends ItemPlugin {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ for (GodBook book : GodBook.values()) {
+ register(book.getDamagedBook().getId());
+ }
+ return this;
+ }
+
+ @Override
+ public boolean canPickUp(Player player, GroundItem item, int type) {
+ if (player.hasItem(item.asItem())) {
+ player.sendMessage("You do not need more than one incomplete book.");
+ return false;
+ }
+ return true;
+ }
+
+ }
+
+ /**
+ * The page handler.
+ * @author Vexia
+ */
+ public class PageHandler extends UseWithHandler {
+
+ /**
+ * Constructs a new {@code PageHandler} {@code Object}
+ */
+ public PageHandler() {
+ super(3839, 3841, 3843);
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ for (GodBook book : GodBook.values()) {
+ for (Item i : book.getPages()) {
+ addHandler(i.getId(), ITEM_TYPE, this);
+ }
+ }
+ return this;
+ }
+
+ @Override
+ public boolean handle(NodeUsageEvent event) {
+ GodBook book = GodBook.forItem(event.getUsedItem(), true);
+ Player player = event.getPlayer();
+ if (book != null && book.isPage(event.getUsedWith().asItem())) {
+ book.insertPage(player, event.getUsedItem(), event.getUsedWith().asItem());
+ return true;
+ }
+ return false;
+ }
+
+ }
+
+ /**
+ * Gets the number name.
+ * @param i the integer to check.
+ * @return the number name.
+ */
+ private String getNumberName(int i) {
+ return i == 1 ? "first" : i == 2 ? "second" : i == 3 ? "third" : "fourth";
+ }
+
+}
diff --git a/Server/src/main/java/core/game/interaction/item/GodswordDismantlePlugin.java b/Server/src/main/content/global/handlers/item/GodswordDismantlePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/GodswordDismantlePlugin.java
rename to Server/src/main/content/global/handlers/item/GodswordDismantlePlugin.java
index 2be306576..64655e15c 100644
--- a/Server/src/main/java/core/game/interaction/item/GodswordDismantlePlugin.java
+++ b/Server/src/main/content/global/handlers/item/GodswordDismantlePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/item/GrandSeedPodHandler.kt b/Server/src/main/content/global/handlers/item/GrandSeedPodHandler.kt
new file mode 100644
index 000000000..992d1009f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/GrandSeedPodHandler.kt
@@ -0,0 +1,97 @@
+package content.global.handlers.item
+
+import content.global.travel.glider.GliderPulse
+import content.global.travel.glider.Gliders
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import core.net.packet.PacketRepository
+import core.net.packet.context.MinimapStateContext
+import core.net.packet.out.MinimapState
+import org.rs09.consts.Items
+
+private const val SQUASH_GRAPHICS_BEGIN = 767
+private const val SQUASH_GRAPHICS_END = 769
+private const val SQUASH_ANIM_BEGIN = 4544
+private const val SQUASH_ANIM_END = 4546
+private const val LAUNCH_GRAPHICS = 768
+private const val LAUNCH_ANIMATION = 4547
+
+/**
+ * Handles the grand tree pod options
+ * @author Ceikry
+ */
+class GrandSeedPodHandler : InteractionListener {
+
+ override fun defineListeners() {
+ on(intArrayOf(Items.GRAND_SEED_POD_9469), IntType.ITEM, "squash", "launch") { player, _ ->
+ val opt = getUsedOption(player)
+ if (!removeItem(player, Items.GRAND_SEED_POD_9469)) return@on false
+ if (opt == "launch") {
+ visualize(player, LAUNCH_ANIMATION, LAUNCH_GRAPHICS)
+ delayEntity(player, 7)
+ queueScript(player, 3, QueueStrength.SOFT) {stage: Int ->
+ if (stage == 0) {
+ rewardXP(player, Skills.FARMING, 100.0)
+ openOverlay(player, 115)
+ return@queueScript keepRunning(player)
+ }
+
+ if (stage == 1) {
+ PacketRepository.send(MinimapState::class.java, MinimapStateContext(player, 2))
+ return@queueScript delayScript(player, 3)
+ }
+
+ if (stage == 2) {
+ teleport(player, Gliders.TA_QUIR_PRIW.location)
+ return@queueScript delayScript(player, 2)
+ }
+
+ if (stage == 3) {
+ closeOverlay(player)
+ PacketRepository.send(MinimapState::class.java, MinimapStateContext(player, 0))
+ }
+
+ return@queueScript stopExecuting(player)
+ }
+ }
+
+ if (opt == "squash") {
+ closeAllInterfaces(player)
+ visualize(player, SQUASH_ANIM_BEGIN, SQUASH_GRAPHICS_BEGIN)
+ delayEntity(player, 12)
+ queueScript(player, 3, QueueStrength.SOFT) {stage: Int ->
+ if (stage == 0) {
+ animate(player, 1241, true)
+ return@queueScript keepRunning(player)
+ }
+
+ if (stage == 1) {
+ teleport(player, Location.create(2464, 3494, 0))
+ return@queueScript keepRunning(player)
+ }
+
+ if (stage == 2) {
+ visualize(player, 1241, SQUASH_GRAPHICS_END)
+ return@queueScript delayScript(player, 2)
+ }
+
+ if (stage == 3) {
+ animate(player, SQUASH_ANIM_END, true)
+ adjustLevel(player, Skills.FARMING, -5)
+ return@queueScript keepRunning(player)
+ }
+
+ return@queueScript stopExecuting(player)
+ }
+ }
+
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/HerbBoxPlugin.java b/Server/src/main/content/global/handlers/item/HerbBoxPlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/item/HerbBoxPlugin.java
rename to Server/src/main/content/global/handlers/item/HerbBoxPlugin.java
index 907b32e36..1f2758fe3 100644
--- a/Server/src/main/java/core/game/interaction/item/HerbBoxPlugin.java
+++ b/Server/src/main/content/global/handlers/item/HerbBoxPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/item/HouseTeleTabOptionListener.kt b/Server/src/main/content/global/handlers/item/HouseTeleTabOptionListener.kt
new file mode 100644
index 000000000..ee6e3f1b8
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/HouseTeleTabOptionListener.kt
@@ -0,0 +1,41 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.link.TeleportManager
+import core.game.node.item.Item
+import core.game.node.entity.player.Player
+import core.game.world.repository.Repository
+
+class HouseTeleTabOptionListener : InteractionListener {
+ override fun defineListeners() {
+ val homeTabID = 8013
+ on(homeTabID, IntType.ITEM, "break") {player, node ->
+ //Snowscape: teleport to the last house you entered, if possible
+ var owner: Player
+ val lastHouseOwner = Repository.getPlayerByName(player.getAttribute("lasthouseentered", null))
+ if (lastHouseOwner != null && !lastHouseOwner.getHouseManager().isLocked()) {
+ owner = lastHouseOwner
+ } else {
+ var hasHouse = player.houseManager.location.exitLocation != null
+ if (!hasHouse) {
+ sendMessage( player, "You must have a house to teleport to before attempting that.")
+ return@on false
+ }
+ owner = player
+ }
+ closeInterface(player)
+ lock(player, 5)
+ if (inInventory(player, node.id)) {
+ owner.houseManager.preEnter(player, false)
+ val location = owner.houseManager.getEnterLocation()
+ if (teleport(player, location, TeleportManager.TeleportType.TELETABS)) {
+ removeItem(player, Item(node.id, 1))
+ owner.houseManager.postEnter(player, false)
+ }
+ }
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/ImplingJarListener.kt b/Server/src/main/content/global/handlers/item/ImplingJarListener.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/interaction/item/ImplingJarListener.kt
rename to Server/src/main/content/global/handlers/item/ImplingJarListener.kt
index a9730319b..66158c78a 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/ImplingJarListener.kt
+++ b/Server/src/main/content/global/handlers/item/ImplingJarListener.kt
@@ -1,23 +1,22 @@
-package rs09.game.interaction.item
+package content.global.handlers.item
-import api.Container
-import api.*
-import core.game.content.ttrail.ClueScrollPlugin
+import core.api.Container
+import core.api.*
import org.rs09.consts.Items
-import rs09.game.content.global.WeightBasedTable
-import rs09.game.content.global.WeightedItem
-import rs09.game.interaction.InteractionListener
-import rs09.game.system.SystemLogger
+import core.api.utils.WeightBasedTable
+import core.api.utils.WeightedItem
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
class ImplingJarListener : InteractionListener {
val JARS = ImplingLoot.values().map { it.jarId }.toIntArray()
override fun defineListeners() {
- on(JARS, ITEM, "loot"){player, node ->
+ on(JARS, IntType.ITEM, "loot"){ player, node ->
val jar = node.asItem()
- val loot = ImplingLoot.forId(jar.id)?.roll()?.first() ?: return@on false
+ val loot = ImplingLoot.forId(jar.id)?.roll()?.firstOrNull() ?: return@on false
if(removeItem(player, jar, Container.INVENTORY)) {
addItemOrDrop(player, loot.id, loot.amount)
@@ -38,9 +37,9 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
WeightedItem(Items.KNIFE_946,1, 1, 10.0),
WeightedItem(Items.CHEESE_1985, 1, 1, 10.0),
WeightedItem(Items.HAMMER_2347, 1, 1, 10.0),
- WeightedItem(0, 1, 1, 10.0),
WeightedItem(Items.BALL_OF_WOOL_1759, 1, 1, 10.0),
WeightedItem(Items.ANCHOVIES_319, 1, 1, 10.0),
+ WeightedItem(0, 1, 1, 10.0),
WeightedItem(Items.SPICE_2007, 1, 1, 1.0),
WeightedItem(Items.FLAX_1779, 1, 1, 1.0),
WeightedItem(Items.MUD_PIE_7170, 1, 1, 1.0),
@@ -50,7 +49,6 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
WeightedItem(Items.SAPPHIRE_1607, 1, 1, 1.0),
WeightedItem(Items.HARD_LEATHER_1743, 1, 1, 1.0),
WeightedItem(Items.LOBSTER_379, 1, 1, 1.0),
- WeightedItem(Items.SOFT_CLAY_1761, 1, 1, 1.0)
).insertEasyClue(1.0)),
YOUNG_IMPLING(Items.YOUNG_IMPLING_JAR_11240, WeightBasedTable.create(
@@ -186,7 +184,7 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
MAGPIE_IMPLING(Items.MAGPIE_IMPLING_JAR_11252, WeightBasedTable.create(
WeightedItem(Items.BLACK_DRAGONHIDE_1748, 6, 6, 10.0),
- WeightedItem(Items.DIAMOND_AMULET_1682, 3, 3, 5.0),
+ WeightedItem(Items.DIAMOND_AMULET_1701, 3, 3, 5.0),
WeightedItem(Items.AMULET_OF_POWER_1732, 3, 3, 5.0),
WeightedItem(Items.RING_OF_FORGING_2569, 3, 3, 5.0),
WeightedItem(Items.SPLITBARK_GAUNTLETS_3391, 1, 1, 5.0),
@@ -233,7 +231,7 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
WeightedItem(Items.DRAGON_BOLT_TIPS_9193, 36, 36, 2.0),
WeightedItem(Items.MYSTIC_ROBE_BOTTOM_4093, 1, 1, 2.0),
WeightedItem(Items.AMULET_OF_GLORY_1705, 3, 3, 2.0),
- WeightedItem(Items.DRAGONSTONE_AMMY_1684, 2, 2, 2.0),
+ WeightedItem(Items.DRAGONSTONE_AMMY_1703, 2, 2, 2.0),
WeightedItem(Items.DRAGON_ARROW_11212, 100, 250, 2.0),
WeightedItem(Items.DRAGON_BOLTS_9341, 10, 40, 2.0),
WeightedItem(Items.DRAGON_LONGSWORD_1305, 1, 1, 2.0),
@@ -242,8 +240,8 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
WeightedItem(Items.DRAGONSTONE_1616, 3, 3, 2.0),
WeightedItem(Items.DRAGON_DART_TIP_11232, 100, 350, 2.0),
WeightedItem(Items.DRAGON_ARROWTIPS_11237, 100, 350, 2.0),
- WeightedItem(Items.BABYDRAGON_BONES_535, 1, 25, 2.0),
- WeightedItem(Items.DRAGON_BONES_537, 1, 25, 2.0),
+ WeightedItem(Items.BABYDRAGON_BONES_535, 100, 300, 2.0),
+ WeightedItem(Items.DRAGON_BONES_537, 50, 100, 2.0),
WeightedItem(Items.MAGIC_SEED_5316, 1, 1, 2.0),
WeightedItem(Items.SNAPDRAGON_SEED_5300, 6, 6, 2.0),
WeightedItem(Items.SUMMER_PIE_7219, 15, 15, 2.0)
@@ -251,7 +249,7 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
companion object{
- val jarMap = HashMap()
+ val jarMap = HashMap()
init {
for(impling in values()){
@@ -263,4 +261,4 @@ enum class ImplingLoot(val jarId: Int, val table: WeightBasedTable){
return jarMap[id]
}
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/handlers/item/ItemQuestRequirementListener.kt b/Server/src/main/content/global/handlers/item/ItemQuestRequirementListener.kt
new file mode 100644
index 000000000..8acaa698a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/ItemQuestRequirementListener.kt
@@ -0,0 +1,236 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.node.entity.player.link.quest.QuestRepository
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import content.data.Quests
+
+class ItemQuestRequirementListener : InteractionListener {
+
+ private val fremennikIslesEquipment = intArrayOf(Items.HELM_OF_NEITIZNOT_10828, Items.HELM_OF_NEITIZNOT_E_12680, Items.HELM_OF_NEITIZNOT_CHARGED_12681)
+ private val fremennikTrialsEquipment = intArrayOf(Items.BERSERKER_HELM_3751, Items.BERSERKER_HELM_13408, Items.BERSERKER_HELM_E_12674, Items.BERSERKER_HELM_CHARGED_12675,
+ Items.FREMENNIK_HELM_3748, Items.WARRIOR_HELM_3753, Items.WARRIOR_HELM_13409, Items.WARRIOR_HELM_CHARGED_12677, Items.WARRIOR_HELM_E_12676,
+ Items.ARCHER_HELM_3749, Items.ARCHER_HELM_13407, Items.ARCHER_HELM_CHARGED_12673, Items.ARCHER_HELM_E_12672,
+ Items.ROCK_SHELL_HELM_6128, Items.ROCK_SHELL_HELM_10613, Items.ROCK_SHELL_HELM_13411,
+ Items.ROCK_SHELL_LEGS_6130, Items.ROCK_SHELL_LEGS_13413,
+ Items.ROCK_SHELL_PLATE_6129, Items.ROCK_SHELL_PLATE_13412,
+ Items.ROCK_SHELL_BOOTS_6145, Items.ROCK_SHELL_BOOTS_13421,
+ Items.ROCK_SHELL_GLOVES_6151, Items.ROCK_SHELL_GLOVES_13424,
+ Items.SPINED_HELM_6131, Items.SPINED_HELM_10614, Items.SPINED_HELM_13414,
+ Items.SPINED_BODY_6133, Items.SPINED_BODY_13415,
+ Items.SPINED_CHAPS_6135, Items.SPINED_CHAPS_13416,
+ Items.SPINED_GLOVES_6149, Items.SPINED_GLOVES_13423,
+ Items.SPINED_BOOTS_6143, Items.SPINED_BOOTS_13420,
+ Items.SKELETAL_HELM_6137, Items.SKELETAL_HELM_10604, Items.SKELETAL_HELM_13417,
+ Items.SKELETAL_TOP_6139, Items.SKELETAL_TOP_13418,
+ Items.SKELETAL_BOTTOMS_6141, Items.SKELETAL_BOTTOMS_13419,
+ Items.SKELETAL_GLOVES_6153, Items.SKELETAL_GLOVES_13425,
+ Items.SKELETAL_BOOTS_6147, Items.SKELETAL_BOOTS_13422,
+ Items.FREMENNIK_HAT_3798, Items.FREMENNIK_ROBE_3793, Items.FREMENNIK_SKIRT_3795, Items.GLOVES_3799, Items.FREMENNIK_BOOTS_3791,
+ Items.FREMENNIK_CLOAK_3759, Items.FREMENNIK_CLOAK_3761, Items.FREMENNIK_CLOAK_3763, Items.FREMENNIK_CLOAK_3765, Items.FREMENNIK_CLOAK_3777, Items.FREMENNIK_CLOAK_3779,
+ Items.FREMENNIK_CLOAK_3781, Items.FREMENNIK_CLOAK_3783, Items.FREMENNIK_CLOAK_3785, Items.FREMENNIK_CLOAK_3787, Items.FREMENNIK_CLOAK_3789,
+ Items.FREMENNIK_SHIRT_3767, Items.FREMENNIK_SHIRT_3769, Items.FREMENNIK_SHIRT_3771, Items.FREMENNIK_SHIRT_3773, Items.FREMENNIK_SHIRT_3775,
+ Items.FREMENNIK_BLADE_3757, Items.FREMENNIK_SHIELD_3758)
+
+ private val fremennikIslesDuringQuestEquipment = intArrayOf(Items.YAK_HIDE_ARMOUR_10822, Items.YAK_HIDE_ARMOUR_10824, Items.FREMENNIK_ROUND_SHIELD_10826)
+
+ private val avasBackpacks = intArrayOf(Items.AVAS_ACCUMULATOR_10499, Items.AVAS_ATTRACTOR_10498)
+
+ private val lostCityWeapons = intArrayOf(
+ Items.DRAGON_DAGGER_1215,
+ Items.DRAGON_DAGGERP_1231,
+ Items.DRAGON_DAGGERP_PLUS_5680,
+ Items.DRAGON_DAGGERP_PLUS_PLUS_5698,
+ Items.DRAGON_LONGSWORD_1305
+ )
+
+ private val crystalEquipment = intArrayOf(
+ Items.NEW_CRYSTAL_BOW_4212,
+ Items.CRYSTAL_BOW_FULL_4214,
+ Items.CRYSTAL_BOW_9_10_4215,
+ Items.CRYSTAL_BOW_8_10_4216,
+ Items.CRYSTAL_BOW_7_10_4217,
+ Items.CRYSTAL_BOW_6_10_4218,
+ Items.CRYSTAL_BOW_5_10_4219,
+ Items.CRYSTAL_BOW_4_10_4220,
+ Items.CRYSTAL_BOW_3_10_4221,
+ Items.CRYSTAL_BOW_2_10_4222,
+ Items.CRYSTAL_BOW_1_10_4223,
+ Items.NEW_CRYSTAL_SHIELD_4224,
+ Items.CRYSTAL_SHIELD_FULL_4225,
+ Items.CRYSTAL_SHIELD_9_10_4226,
+ Items.CRYSTAL_SHIELD_8_10_4227,
+ Items.CRYSTAL_SHIELD_7_10_4228,
+ Items.CRYSTAL_SHIELD_6_10_4229,
+ Items.CRYSTAL_SHIELD_5_10_4230,
+ Items.CRYSTAL_SHIELD_4_10_4231,
+ Items.CRYSTAL_SHIELD_3_10_4232,
+ Items.CRYSTAL_SHIELD_2_10_4233,
+ Items.CRYSTAL_SHIELD_1_10_4234
+ )
+
+ //As per the source (https://runescape.wiki/w/Dragon_Slayer?oldid=895396),
+ //dragon slayer should only restrict green d'hide bodies, not the higher tiers.
+ private val dragonSlayerEquipment = intArrayOf(
+ Items.RUNE_PLATEBODY_1127,
+ Items.RUNE_PLATEBODY_G_10798,
+ Items.RUNE_PLATEBODY_G_2615,
+ Items.RUNE_PLATEBODY_G_13800,
+ Items.RUNE_PLATEBODY_T_10800,
+ Items.RUNE_PLATEBODY_T_13805,
+ Items.RUNE_PLATEBODY_T_2623,
+ Items.ZAMORAK_PLATEBODY_2653,
+ Items.SARADOMIN_PLATEBODY_2661,
+ Items.GUTHIX_PLATEBODY_2669,
+ Items.GREEN_DHIDE_BODY_1135,
+ Items.DHIDE_BODYG_7370, //Green (g)
+ Items.DHIDE_BODY_T_7372 //Green (t)
+ )
+
+ private val questCapes = intArrayOf(9813,9814)
+
+ private val godBooks = intArrayOf (
+ Items.HOLY_BOOK_3840,
+ Items.UNHOLY_BOOK_3842
+ )
+
+ private val pharaohScepters = (9044..9051).toIntArray()
+
+ private val initiateArmour = (5574..5576).toIntArray()
+
+ private val proselyteArmour = (9672..9678).toIntArray()
+
+ private val spiritShields = (13734..13745).toIntArray()
+
+ override fun defineListeners() {
+
+ /*
+ onEquip(fremennikIslesEquipment) { player, _ ->
+ if (!isQuestComplete(player, Quests.THE_FREMENNIK_ISLES)) {
+ sendMessage(player, "You must have completed The Fremennik Isles to equip this.")
+ return@onEquip false
+ }
+ return@onEquip true
+ }
+
+ onEquip(fremennikIslesDuringQuestEquipment){ player, _ ->
+ if (questStage(player, Quests.THE_FREMENNIK_ISLES) > 0) {
+ sendMessage(player, "You must have started The Fremennik Isles to equip this.")
+ return@onEquip false
+ }
+ return@onEquip true
+ }
+ */
+
+ onEquip(fremennikTrialsEquipment) { player, _ ->
+ return@onEquip hasRequirement(player, Quests.THE_FREMENNIK_TRIALS)
+ }
+
+ onEquip(fremennikIslesEquipment) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.THE_FREMENNIK_ISLES)
+ }
+
+ onEquip(avasBackpacks){ player, _ ->
+ return@onEquip hasRequirement(player, Quests.ANIMAL_MAGNETISM)
+ }
+
+ onEquip(lostCityWeapons){ player, _ ->
+ return@onEquip hasRequirement(player, Quests.LOST_CITY)
+ }
+
+ onEquip(Items.CAPE_OF_LEGENDS_1052) { player, _ ->
+ return@onEquip hasRequirement(player, Quests.LEGENDS_QUEST)
+ }
+
+ onEquip(questCapes) { player, _ ->
+ val maxQP = QuestRepository.getQuests().values.sumBy { it.questPoints }
+ if (player.questRepository.points < maxQP) {
+ player.packetDispatch.sendMessage("You cannot equip the Quest cape without completing all available quests.")
+ return@onEquip false
+ }
+ return@onEquip true
+ }
+
+ onEquip(Items.WOLFBANE_2952){ player, _ ->
+ return@onEquip hasRequirement(player, Quests.PRIEST_IN_PERIL)
+ }
+
+ onEquip(Items.ANCIENT_MACE_11061){ player, _ ->
+ return@onEquip hasRequirement(player, Quests.ANOTHER_SLICE_OF_HAM)
+ }
+
+ onEquip(Items.ANCIENT_STAFF_4675){ player, _ ->
+ return@onEquip hasRequirement(player, Quests.DESERT_TREASURE)
+ }
+
+ onEquip(Items.ELEMENTAL_SHIELD_2890) { player, _ ->
+ return@onEquip hasRequirement(player, Quests.ELEMENTAL_WORKSHOP_I)
+ }
+
+ onEquip(crystalEquipment){ player, _ ->
+ return@onEquip hasRequirement(player, Quests.ROVING_ELVES)
+ }
+
+ onEquip(dragonSlayerEquipment) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.DRAGON_SLAYER)
+ }
+
+ onEquip(Items.DRAGON_SCIMITAR_4587) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.MONKEY_MADNESS)
+ }
+
+ onEquip(Items.GLOVES_7462) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.RECIPE_FOR_DISASTER)
+ }
+
+ onEquip(Items.SLAYER_HELMET_13263) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.SMOKING_KILLS)
+ }
+
+ onEquip (Items.DRAGON_HALBERD_3204) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.REGICIDE)
+ }
+
+ onEquip (Items.CLIMBING_BOOTS_3105) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.DEATH_PLATEAU)
+ }
+
+ onEquip (godBooks) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.HORROR_FROM_THE_DEEP)
+ }
+
+ onEquip (pharaohScepters) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.ICTHLARINS_LITTLE_HELPER)
+ }
+
+ onEquip (Items.DRAGON_SQ_SHIELD_1187) {player, _ ->
+ //because I know people won't believe it: https://runescape.wiki/w/Dragon_sq_shield?oldid=899636
+ return@onEquip hasRequirement(player, Quests.LEGENDS_QUEST)
+ }
+
+ onEquip (initiateArmour) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.RECRUITMENT_DRIVE)
+ }
+
+ onEquip (proselyteArmour) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.THE_SLUG_MENACE)
+ }
+
+ onEquip (spiritShields) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.SUMMERS_END)
+ }
+
+ onEquip (Items.DRAGON_MACE_1434) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.HEROES_QUEST)
+ }
+
+ onEquip (Items.DRAGON_BATTLEAXE_1377) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.HEROES_QUEST)
+ }
+
+ onEquip (Items.DARKLIGHT_6746) {player, _ ->
+ return@onEquip hasRequirement(player, Quests.SHADOW_OF_THE_STORM)
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/LampPlugin.java b/Server/src/main/content/global/handlers/item/LampPlugin.java
similarity index 91%
rename from Server/src/main/java/core/game/interaction/item/LampPlugin.java
rename to Server/src/main/content/global/handlers/item/LampPlugin.java
index 47c2fdd03..32a091c3d 100644
--- a/Server/src/main/java/core/game/interaction/item/LampPlugin.java
+++ b/Server/src/main/content/global/handlers/item/LampPlugin.java
@@ -1,7 +1,7 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.game.component.Component;
-import core.game.content.global.Lamps;
+import content.data.Lamps;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
@@ -43,12 +43,12 @@ public final class LampPlugin extends OptionHandler {
public void handleSelectionCallback(int skill, Player player){
Lamps lamp = Lamps.forItem(player.getAttribute("lamp",new Item(2528)));
if(player.getSkills().getStaticLevel(skill) < lamp.getLevelRequirement()){
- player.sendMessage("Your need at least" + lamp.getLevelRequirement() + " " + Skills.SKILL_NAME[skill] + " to do this.");
+ player.sendMessage("You need at least " + lamp.getLevelRequirement() + " " + Skills.SKILL_NAME[skill] + " to do this.");
return;
} else {
if(player.getInventory().remove((Item) player.getAttribute("lamp"))) {
if (lamp == Lamps.GENIE_LAMP) {
- player.getSkills().addExperience(skill, player.getSkills().getLevel(skill) * 10);
+ player.getSkills().addExperience(skill, player.getSkills().getStaticLevel(skill) * 10);
} else {
player.getSkills().addExperience(skill, lamp.getExp());
}
diff --git a/Server/src/main/content/global/handlers/item/MiningHelmetListener.kt b/Server/src/main/content/global/handlers/item/MiningHelmetListener.kt
new file mode 100644
index 000000000..755a1cbde
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/MiningHelmetListener.kt
@@ -0,0 +1,17 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import org.rs09.consts.Items
+
+class MiningHelmetListener : InteractionListener {
+ override fun defineListeners() {
+ on(Items.MINING_HELMET_5013, IntType.ITEM, "drop") { player, _ ->
+ val removed = removeItem(player, Items.MINING_HELMET_5013)
+ if (removed) produceGroundItem(player, Items.MINING_HELMET_5014)
+ sendMessage(player, "The helmet goes out as you drop it.")
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/MorphItemPlugin.java b/Server/src/main/content/global/handlers/item/MorphItemPlugin.java
similarity index 93%
rename from Server/src/main/java/core/game/interaction/item/MorphItemPlugin.java
rename to Server/src/main/content/global/handlers/item/MorphItemPlugin.java
index 397faefdc..672de389f 100644
--- a/Server/src/main/java/core/game/interaction/item/MorphItemPlugin.java
+++ b/Server/src/main/content/global/handlers/item/MorphItemPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.component.CloseEvent;
@@ -7,11 +7,14 @@ import core.game.component.ComponentDefinition;
import core.game.component.ComponentPlugin;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Handles a morph item.
@@ -65,6 +68,7 @@ public class MorphItemPlugin implements Plugin {
*/
private void morph(Player player, Item item) {
int morphId = item.getId() == 6583 ? 2626 : EASTER_EGG_IDS[RandomFunction.random(EASTER_EGG_IDS.length)];
+ playAudio(player, 1520);
player.getInterfaceManager().close();
player.getAppearance().transformNPC(morphId);
player.getInterfaceManager().removeTabs(0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14);
diff --git a/Server/src/main/java/core/game/interaction/item/NewComerMapPlugin.java b/Server/src/main/content/global/handlers/item/NewComerMapPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/item/NewComerMapPlugin.java
rename to Server/src/main/content/global/handlers/item/NewComerMapPlugin.java
index a0eb0a58d..cf1cd0157 100644
--- a/Server/src/main/java/core/game/interaction/item/NewComerMapPlugin.java
+++ b/Server/src/main/content/global/handlers/item/NewComerMapPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
diff --git a/Server/src/main/content/global/handlers/item/NewspaperListener.kt b/Server/src/main/content/global/handlers/item/NewspaperListener.kt
new file mode 100644
index 000000000..bb32667c3
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/NewspaperListener.kt
@@ -0,0 +1,80 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import org.rs09.consts.Items
+
+/**
+ * Interaction and interface listener for the Varrock newspaper.
+ * This handles component(530) globally.
+ * youtu.be/ePVNOiSzOS4
+ */
+class NewspaperListener : InteractionListener {
+ companion object {
+
+ const val NEWSPAPER_INTERFACE_530 = 530 /* Should be in org.rs09.consts.Components but isn't. */
+
+ val leftPage = "" +
+ "Varrock gets " +
+ "Makeover" +
+ " " +
+ "The city of Varrock " +
+ "is the latest recipient " +
+ "of a complete " +
+ "makeover. When " +
+ "interviewed, King " +
+ "Roald said, 'In order " +
+ "to keep visitors " +
+ "coming to see the " +
+ "sights of our " +
+ "beautiful capital, we " +
+ "felt that tidying-up " +
+ "the city would be " +
+ "more effective than " +
+ "just issuing a decree " +
+ "- make sure you visit " +
+ "the new museum " +
+ "while you are here.'"
+
+ val rightPage = "" +
+ "Obituaries " +
+ " " +
+ "Goblin-Died " +
+ "Giant Rat-Died " +
+ "Unicorn-Died " +
+ "Varrock Guard-Died " +
+ "Varrock Guard-Died " +
+ "Varrock Guard-Died " +
+ "Bear-Died." +
+ " " +
+ "Classifieds" +
+ " " +
+ "Lowe's Archery " +
+ "Emporium for the " +
+ "finest ranging " +
+ "weapons in town!" +
+ " " +
+ "Time to party! Visit " +
+ "the Fancy Dress " +
+ "Shop for all your " +
+ "party outfits." +
+ " " +
+ "The Dancing " +
+ "Donkey - cold beer " +
+ "always in stock."
+ }
+ override fun defineListeners() {
+ on(Items.NEWSPAPER_11169, IntType.ITEM, "read") { player, _ ->
+ openInterface(player, NEWSPAPER_INTERFACE_530)
+ setInterfaceText(player, leftPage ,NEWSPAPER_INTERFACE_530, 7)
+ setInterfaceText(player, rightPage ,NEWSPAPER_INTERFACE_530, 8)
+ return@on true
+ }
+
+ on(Items.AL_KHARID_FLYER_7922, IntType.ITEM, "read") { player, _ ->
+ sendDialogueLines(player, "Come to the Al Kharid Market place! High quality", "produce at low, low prices! Show this flyer to a", "merchant for money off your next purchase,", "courtesy of Ali Morrisane!")
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/OysterPlugin.java b/Server/src/main/content/global/handlers/item/OysterPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/OysterPlugin.java
rename to Server/src/main/content/global/handlers/item/OysterPlugin.java
index 1abe26d14..179072a79 100644
--- a/Server/src/main/java/core/game/interaction/item/OysterPlugin.java
+++ b/Server/src/main/content/global/handlers/item/OysterPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/item/PetRock.kt b/Server/src/main/content/global/handlers/item/PetRock.kt
new file mode 100644
index 000000000..355ea3742
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/PetRock.kt
@@ -0,0 +1,66 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.impl.Projectile.getLocation
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.tools.END_DIALOGUE
+import org.rs09.consts.Items
+
+class PetRockListener : InteractionListener {
+ override fun defineListeners() {
+ on(Items.PET_ROCK_3695, IntType.ITEM, "interact") { player, _ ->
+ openDialogue(player, PetRockDialogue())
+ return@on true
+ }
+ }
+}
+
+class PetRockDialogue : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage) {
+ 0 -> options("Talk", "Stroke", "Feed", "Fetch", "Stay").also { stage++ }
+ 1 -> when(buttonID) {
+ 1 -> {
+ sendPlayerDialogue(player!!, "Who's a good rock, then? Yes, you are! You're such a good rock. Ooga booga googa.", FacialExpression.FRIENDLY)
+ sendMessage(player!!, "Your rock seems a little happier.")
+ stage = END_DIALOGUE
+ }
+ 2 -> {
+ end()
+ sendMessage(player!!, "You stroke your pet rock.")
+ animate(player!!, 1333, false)
+ //waits for the animation to finish before sending the message
+ queueScript(player!!, animationDuration(Animation(1333)), QueueStrength.SOFT) {
+ sendMessage(player!!, "Your rock seems much happier.")
+ return@queueScript stopExecuting(player!!)
+ }
+ }
+ 3 -> {
+ end()
+ sendMessage(player!!, "You try and feed the rock.")
+ sendMessage(player!!, "Your rock doesn't seem hungry.")
+ }
+ 4 -> {
+ sendPlayerDialogue(player!!, "Want to fetch the stick, rock? Of course you do.", FacialExpression.FRIENDLY)
+ face(player!!, Location.getRandomLocation(getLocation(player), 2, true))
+ visualize(player!!, 6665, 1157)
+ spawnProjectile(getLocation(player), Location.getRandomLocation(getLocation(player), 5, true), 1158, 40, 0,150, 250, 25)
+ stage = END_DIALOGUE
+ }
+ 5 -> {
+ face(player!!, Location.getRandomLocation(getLocation(player), 2, true))
+ sendPlayerDialogue(player!!, "Be a good rock...", FacialExpression.FRIENDLY)
+ sendMessage(player!!, "You wait a few seconds and pick your rock back up and pet it.")
+ visualize(player!!, anim = 6664, gfx = 1156)
+ stage = END_DIALOGUE
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/PickupPlugin.java b/Server/src/main/content/global/handlers/item/PickupPlugin.java
similarity index 92%
rename from Server/src/main/java/core/game/interaction/item/PickupPlugin.java
rename to Server/src/main/content/global/handlers/item/PickupPlugin.java
index 02c3730c0..e04d3edba 100644
--- a/Server/src/main/java/core/game/interaction/item/PickupPlugin.java
+++ b/Server/src/main/content/global/handlers/item/PickupPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
@@ -8,7 +8,7 @@ import core.game.node.item.GroundItem;
import core.game.world.map.Location;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.content.global.action.PickupHandler;
+import core.game.global.action.PickupHandler;
/**
* Represents the option handler used for ground items.
diff --git a/Server/src/main/content/global/handlers/item/PlayerPeltables.kt b/Server/src/main/content/global/handlers/item/PlayerPeltables.kt
new file mode 100644
index 000000000..931a39ef2
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/PlayerPeltables.kt
@@ -0,0 +1,115 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.interaction.*
+import core.game.node.Node
+import core.game.node.entity.impl.Projectile
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.map.path.Pathfinder
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Items
+
+
+class PlayerPeltables : InteractionListener {
+ companion object {
+ private const val PROJECTILE_DELAY = 41
+ private const val PROJECTILE_SPEED = 60
+ private const val PROJECTILE_TIME_CONST = .02857
+ private const val PROJECTILE_DISTANCE_MULT = 5
+ private val PELTABLES = intArrayOf(Items.ROTTEN_TOMATO_2518, Items.SNOWBALL_11951)
+ }
+
+
+ override fun defineListeners() {
+ onEquip(PELTABLES, ::setPlayerOps)
+ onUnequip(PELTABLES, ::removePlayerOps)
+
+ on("pelt", IntType.PLAYER, ::handlePeltInteraction)
+ onUseWithPlayer(*PELTABLES) { player, used, with -> handlePeltInteraction(player, with, used) }
+ flagInstant()
+ }
+
+ private fun setPlayerOps(player: Player, _node: Node) : Boolean {
+ player.interaction.set(Option("Pelt", 0))
+ return true
+ }
+
+ private fun removePlayerOps(player: Player, _node: Node) : Boolean {
+ InteractPlugin.sendOption(player, 0, "null")
+ return true
+ }
+
+ private fun handlePeltInteraction(player: Player, node: Node, usedPeltable: Node? = null) : Boolean {
+ val peltable = usedPeltable?.asItem() ?: getPeltable(player) ?: return removePlayerOps(player, node)
+ val gfx = getPeltableGfx(peltable.id)
+
+ val other = node.asPlayer()
+
+ if (!Pathfinder.find(player, other, false, Pathfinder.PROJECTILE).isSuccessful) {
+ sendDialogue(player, "You can't reach them!")
+ return true
+ }
+
+ val distance = player.location.getDistance(other.location)
+ val projectileSpeed = PROJECTILE_DELAY + PROJECTILE_SPEED + distance * PROJECTILE_DISTANCE_MULT
+ val hitDelay = (projectileSpeed * PROJECTILE_TIME_CONST).toInt()
+
+ if (removeItem(player, peltable, Container.INVENTORY) || removeItem(player, peltable, Container.EQUIPMENT)) {
+ lock(player, hitDelay)
+ submitWorldPulse(PeltingPulse(player, other, gfx, hitDelay, peltable.id))
+ }
+
+ return true
+ }
+
+ class PeltingPulse(val player: Player, val other: Player, val gfx: IntArray, val hitDelay: Int, val peltable: Int) : Pulse() {
+ private val throwAnimation = getPeltableAnim(peltable)
+ private var ticks = 0
+ override fun pulse(): Boolean {
+ when (ticks++) {
+ 0 -> {
+ player.face(other)
+ visualize(player, throwAnimation, gfx[0])
+ }
+ 1 -> {
+ Projectile.create(player, other, gfx[1], 30, 10).send()
+ face(player, player) //reset face flag lel
+ unlock(player)
+ }
+ hitDelay -> {
+ if (gfx[2] != -1) other.graphics(Graphics(gfx[2]))
+ sendMessage(other, "${player.username} has hit you with a ${getItemName(peltable).toLowerCase()}.")
+ return true
+ }
+ }
+ return false
+ }
+
+ private fun getPeltableAnim(id: Int) : Int {
+ return when (id) {
+ Items.SNOWBALL_11951 -> 7530
+ Items.ROTTEN_TOMATO_2518 -> 385
+ else -> -1
+ }
+ }
+ }
+
+ private fun getPeltableGfx(id: Int): IntArray {
+ return when (id) {
+ Items.SNOWBALL_11951 -> intArrayOf(-1, 861, 1282)
+ Items.ROTTEN_TOMATO_2518 -> intArrayOf(-1, 29, 31)
+ else -> IntArray(3) {-1}
+ }
+ }
+
+ private fun getPeltable(player: Player): Item? {
+ val equipped = getItemFromEquipment(player, EquipmentSlot.WEAPON) ?: return null
+ val id = equipped.id
+
+ if (id !in PELTABLES) return null
+
+ return equipped
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/RingUnchargePlugin.java b/Server/src/main/content/global/handlers/item/RingUnchargePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/RingUnchargePlugin.java
rename to Server/src/main/content/global/handlers/item/RingUnchargePlugin.java
index 281069d8c..7a5140b6d 100644
--- a/Server/src/main/java/core/game/interaction/item/RingUnchargePlugin.java
+++ b/Server/src/main/content/global/handlers/item/RingUnchargePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/RunePackPlugin.java b/Server/src/main/content/global/handlers/item/RunePackPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/RunePackPlugin.java
rename to Server/src/main/content/global/handlers/item/RunePackPlugin.java
index 166a1b0f9..767aa9481 100644
--- a/Server/src/main/java/core/game/interaction/item/RunePackPlugin.java
+++ b/Server/src/main/content/global/handlers/item/RunePackPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/SilverSicklePlugin.java b/Server/src/main/content/global/handlers/item/SilverSicklePlugin.java
similarity index 79%
rename from Server/src/main/java/core/game/interaction/item/SilverSicklePlugin.java
rename to Server/src/main/content/global/handlers/item/SilverSicklePlugin.java
index 0d6a95478..e7529d646 100644
--- a/Server/src/main/java/core/game/interaction/item/SilverSicklePlugin.java
+++ b/Server/src/main/content/global/handlers/item/SilverSicklePlugin.java
@@ -1,13 +1,14 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.content.quest.members.naturespirit.NSUtils;
+import content.region.morytania.quest.naturespirit.NSUtils;
+import content.data.Quests;
/**
* Handles the Silver Sickle (b) to collect Mort Myre Fungus.
@@ -28,7 +29,7 @@ public final class SilverSicklePlugin extends OptionHandler {
switch (option) {
case "operate":
case "cast bloom":
- if(player.getQuestRepository().getQuest("Nature Spirit").getStage(player) >= 75) {
+ if(player.getQuestRepository().getQuest(Quests.NATURE_SPIRIT).getStage(player) >= 75) {
player.getPacketDispatch().sendAnimation(9021);
NSUtils.castBloom(player);
} else {
diff --git a/Server/src/main/java/core/game/interaction/item/SkullSceptreOption.java b/Server/src/main/content/global/handlers/item/SkullSceptreOption.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/SkullSceptreOption.java
rename to Server/src/main/content/global/handlers/item/SkullSceptreOption.java
index 212f0b5e0..b2ed70389 100644
--- a/Server/src/main/java/core/game/interaction/item/SkullSceptreOption.java
+++ b/Server/src/main/content/global/handlers/item/SkullSceptreOption.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/item/SnowscapeSatchelListener.kt b/Server/src/main/content/global/handlers/item/SnowscapeSatchelListener.kt
new file mode 100755
index 000000000..872c94341
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/SnowscapeSatchelListener.kt
@@ -0,0 +1,183 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.container.Container
+import content.global.skill.summoning.familiar.BurdenContainerListener
+import core.game.node.Node
+import core.game.node.entity.player.Player
+//import core.game.node.entity.player.info.login.PlayerSaver
+import core.game.node.item.Item
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import org.json.simple.JSONArray
+import org.json.simple.JSONObject
+import org.json.simple.parser.JSONParser
+import org.rs09.consts.Items
+
+import core.game.component.Component
+import core.game.component.CloseEvent
+import core.game.container.access.InterfaceContainer
+import content.global.handlers.scenery.BankBoothListener
+import content.global.handlers.npc.BankerNPC
+
+/**
+ * Listener for satchels from Creature Creation, repurposed for Snowscape
+ * They are repurposed as item pouches, using the summoning familiar inventory interface
+ * @author
+ */
+class SnowscapeSatchelListener : InteractionListener {
+
+ companion object {
+
+ val plainSatchelId = 10877
+ val greenSatchelId = 10878
+ val redSatchelId = 10879
+ val blackSatchelId = 10880
+ val goldSatchelId = 10881
+ val runeSatchelId = 10882
+ val satchelIds = intArrayOf(plainSatchelId,greenSatchelId,redSatchelId,blackSatchelId,goldSatchelId,runeSatchelId)
+
+
+
+
+ private fun transferItem(player: Player, satchelId: Int, item: Item, amount: Int, withdraw: Boolean, asNote: Boolean = false) {
+ if (withdraw == false && !isAllowed(player, satchelId, unnote(item).getId())) {
+ player.sendMessage(item.getName() + " cannot be stored in the " + Item(satchelId).getName() + ".")
+ return
+ }
+ if (withdraw == true && asNote == false && satchelId == plainSatchelId) {
+ player.sendMessage("This satchel can only be emptied by a banker. Use it on a bank booth to get the items.")
+ return
+ }
+ val to = if (withdraw) player.getInventory() else getSatchel(player, satchelId)
+ val from = if (withdraw) getSatchel(player, satchelId) else player.getInventory()
+ val maximum = if (asNote) to.getMaximumAdd(note(item)) else to.getMaximumAdd(unnote(item))
+ if (maximum < 1 && withdraw == false) {
+ player.sendMessage("There is not enough space for the " + item.getName() + " in the satchel.")
+ return
+ }
+ val finalAmount = kotlin.comparisons.minOf(amount, from.getAmount(item), maximum)
+ val finalItem = Item(item.getId(), finalAmount)
+ if (finalAmount > 0 && from.remove(finalItem)) {
+ if (asNote) to.add(note(finalItem)) else to.add(unnote(finalItem))
+ }
+ }
+
+ private fun emptySatchel(player: Player, satchelId: Int, asNote: Boolean = false) {
+ if (asNote == false && satchelId == plainSatchelId) {
+ player.sendMessage("This satchel can only be emptied by a banker. Use it on a Bank Booth to get the items.")
+ return
+ }
+ val satchel = getSatchel(player, satchelId)
+ repeat(satchel.capacity()) { index ->
+ var item = satchel.get(index)
+ if (item != null) {
+ transferItem(player, satchelId, item, satchel.getAmount(item), true, asNote)
+ }
+ }
+ }
+
+
+ //Function to handle constructing the correct interfaces when the satchel is opened
+ private fun openSatchel(player: Player, node: Node) {
+ val satchelId = node.asItem().getId()
+ val satchel = getSatchel(player, satchelId)
+ if (satchel.getListeners().count() < 1) satchel.register(BurdenContainerListener(player))
+
+ player.getInterfaceManager().open(Component(671)).setCloseEvent(CloseEvent { player, component ->
+ player.getInterfaceManager().closeSingleTab()
+ removeAttribute(player, "openSatchel")
+ return@CloseEvent true
+ }
+ )
+ setAttribute(player, "openSatchel", satchelId)
+ satchel.shift()
+ player.getInterfaceManager().openSingleTab(Component(665))
+ InterfaceContainer.generateItems(player, player.getInventory().toArray(), arrayOf("Store-X","Store-All","Store-10","Store-5","Store-1"),665,0,7,4,93)
+ InterfaceContainer.generateItems(player, satchel.toArray(), arrayOf("Withdraw-X","Withdraw-All","Withdraw-10","Withdraw-5","Withdraw-1"),671,27,5,6,30)
+ }
+
+ // This is called by BurdenInterfacePlugin.java when the player interacts with the familiar interface and the "openSatchel" attribute exists
+ fun satchelInterfaceAction(player: Player, component: Component, opcode: Int, button: Int, slot: Int, itemId: Int) {
+ val satchelId = getAttribute(player, "openSatchel", 0)
+ val withdraw = component.getId() == 671
+ val container = if (withdraw) getSatchel(player, satchelId) else player.getInventory()
+ val item = if (slot >= 0 && slot < container.capacity()) container.get(slot) else null
+ if (item == null && button != 29) return
+ when (opcode) {
+ 155 -> if (button == 29) emptySatchel(player, satchelId) else transferItem(player, satchelId, item!!, 1, withdraw)
+ 196 -> transferItem(player, satchelId, item!!, 5, withdraw)
+ 124 -> transferItem(player, satchelId, item!!, 10, withdraw)
+ 199 -> transferItem(player, satchelId, item!!, container.getAmount(item), withdraw)
+ 234 -> sendInputDialogue(player, true, "Enter the amount:") { value -> transferItem(player, satchelId, item!!, value as Int, withdraw) }
+ 9 -> player.sendMessage(item!!.getDefinition().getExamine())
+ }
+ }
+
+
+
+ fun getSatchel(player: Player, satchelId: Int): Container {
+ var satchel: Container? = null
+ when (satchelId) {
+ plainSatchelId -> satchel = player.plainSatchel
+ greenSatchelId -> satchel = player.greenSatchel
+ redSatchelId -> satchel = player.redSatchel
+ blackSatchelId -> satchel = player.blackSatchel
+ goldSatchelId -> satchel = player.goldSatchel
+ runeSatchelId -> satchel = player.runeSatchel
+ }
+ return satchel!!
+ }
+
+ // Checks if the item is allowed in the satchel. The NPCDropTables.java function calls this on satchels the player is carrying.
+ fun isAllowed(player: Player, satchelId: Int, itemId: Int): Boolean {
+ when (satchelId) {
+ plainSatchelId -> return itemId !in satchelIds
+ greenSatchelId -> return (Item(itemId).getName().contains(" seed") || Item(itemId).getName().contains("Grimy") || Item(itemId).getName().contains("Clean "))
+ redSatchelId -> return itemId in intArrayOf(*(12158..12168).toList().toIntArray()) || Item(itemId).getName().equals("Clue scroll")
+ blackSatchelId -> return itemId in intArrayOf(995)
+ goldSatchelId -> return itemId in intArrayOf(436,438,440,442,444,446,447,449,451,453,668,2892,2349,2351,2353,2355,2357,2359,2361,2363,2365,1601,1603,1605,1607,1609,1611,1613,1615,1617,1619,1621,1623,1625,1627,1629,1631,6571,6573)
+ runeSatchelId -> return itemId in intArrayOf(556,555,557,554,558,559,564,562,9075,561,563,560,565,566,4694,4695,4696,4697,4698,4699)
+ }
+ return false
+ }
+ }
+
+
+
+ override fun defineListeners() {
+
+ onUseAnyWith(IntType.ITEM, *satchelIds) { player, used, with ->
+ val satchelId = with.asItem().getId()
+ transferItem(player, satchelId, used.asItem(), player.getInventory().getAmount(used.asItem()),false)
+ return@onUseAnyWith true
+ }
+
+ on(satchelIds, IntType.ITEM, "inspect","operate") { player, node ->
+ openSatchel(player, node)
+ return@on true
+ }
+
+ on(satchelIds, IntType.ITEM, "empty") { player, node ->
+ emptySatchel(player, node.asItem().getId())
+ return@on true
+ }
+
+ // BankBoothListener values are public but BankChestListener values are not, so rather than edit the BankChestListener file I have copied the IDs here. 12309 is the Culinomancer's chest.
+ val bankChests = intArrayOf(3194,4483,10562,14382,16695,16696,21301,27662,27663)
+ val bankUseWiths = intArrayOf(*BankBoothListener.BANK_BOOTHS, 12309, *bankChests)
+ onUseWith(IntType.SCENERY, satchelIds, *bankUseWiths) { player, used, with ->
+ emptySatchel(player, used.asItem().getId(), true)
+ return@onUseWith true
+ }
+
+ //6362 is the Ourania Altar banker.
+ val bankers = intArrayOf(*BankerNPC.NPC_IDS, *BankerNPC.SPECIAL_NPC_IDS, 6362)
+
+ onUseWith(IntType.NPC, satchelIds, *bankers) { player, used, with ->
+ emptySatchel(player, used.asItem().getId(), true)
+ return@onUseWith true
+ }
+
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/SnowscapeTeleorb.kt b/Server/src/main/content/global/handlers/item/SnowscapeTeleorb.kt
new file mode 100644
index 000000000..789827f2c
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/SnowscapeTeleorb.kt
@@ -0,0 +1,146 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.world.map.Location
+import core.game.world.map.build.DynamicRegion
+import core.game.world.map.zone.ZoneRestriction
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.game.node.entity.player.link.TeleportManager
+import core.game.dialogue.*
+import core.tools.START_DIALOGUE
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+import core.game.component.Component
+
+/**
+ * Listener for the strange teleorb object. Normally this object is part of the While Guthix Sleeps quest, but it has been repurposed.
+ * The new purpose is a custom teleport artifact, allowing players to save a location and teleport back to it.
+ * @author
+ */
+class SnowscapeTeleorb : InteractionListener {
+
+ // The teleorb item id
+ val teleorb = 14534
+
+ // How many law runes are required for one teleport charge
+ val runesPerTeleportNormal = 20
+ val runesPerTeleportBoosted = 2
+
+ override fun defineListeners() {
+ on(teleorb, IntType.ITEM, "inspect") { player, node ->
+ inspect(player, node)
+ return@on true
+ }
+ on(teleorb, IntType.ITEM, "activate") { player, node ->
+ activate(player, node)
+ return@on true
+ }
+ }
+ private fun inspect(player: Player, node: Node) {
+ openDialogue(player,SnowscapeTeleorbDialogue())
+ }
+
+ private fun activate(player: Player, node: Node) {
+ val charges = getAttribute(player, "teleorb:charges",0) as Int
+ var runesPerTeleport = if (getAttribute(player, "snowscape:boostedmode", false)) runesPerTeleportBoosted else runesPerTeleportNormal
+ if (charges >= runesPerTeleport) {
+ val destination = getAttribute(player, "teleorb:location", Location.create(3236,3218,0))
+ player.getTeleporter().send(destination, TeleportManager.TeleportType.ENTRANA_MAGIC_DOOR)
+ setAttribute(player, "/save:teleorb:charges", charges - runesPerTeleport)
+ player.sendMessage("Charges remaining: " + ((getAttribute(player, "teleorb:charges",0) as Int) / runesPerTeleport))
+ rewardXP(player, Skills.MAGIC, 15.0 * runesPerTeleport)
+ } else {
+ player.sendMessage(" The teleorb is out of charges.")
+ }
+ }
+
+
+}
+
+
+
+
+class SnowscapeTeleorbDialogue : DialogueFile() {
+
+ // How many law runes are required for one teleport charge
+ val runesPerTeleportNormal = 20
+ val runesPerTeleportBoosted = 2
+
+ val teleorb = 14534
+ val lawRune = 563
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ START_DIALOGUE -> options("Update Location","Recharge","Show Info").also {stage++}
+
+ 1 -> when (buttonID) {
+ 1 -> player?.let {
+ end()
+ val region = it.getViewport().getRegion()
+ if (region == null || region is DynamicRegion || it.getZoneMonitor().isRestricted(ZoneRestriction.OFF_MAP)) {
+ it.sendMessage("This location cannot be saved!")
+ } else {
+ setAttribute(it, "/save:teleorb:location", it.getLocation())
+ sendInputDialogue(it, false, "Location saved. Enter a description of this location:",) { value ->
+ setAttribute(it, "/save:teleorb:description", value as String)
+ }
+ it.sendMessage("Location saved.")
+ it.graphics(Graphics(343))
+ it.animate(Animation(1818))
+ playAudio(it, Sounds.TELE_OTHER_CAST_199)
+ }
+ }
+ 2 -> options("Recharge with Law Runes","Recharge with additional orbs").also {stage++}
+ 3 -> player?.let {
+ end()
+ var runesPerTeleport = if (getAttribute(it, "snowscape:boostedmode", false)) runesPerTeleportBoosted else runesPerTeleportNormal
+ it.sendMessage("Current saved location: " + getAttribute(it, "teleorb:description", "Unknown").replace("_"," "))
+ it.sendMessage("Charges remaining: " + ((getAttribute(it, "teleorb:charges",0) as Int) / runesPerTeleport))
+ }
+ }
+ 2 -> when (buttonID) {
+ 1 -> player?.let {
+ end()
+ var runesPerTeleport = if (getAttribute(it, "snowscape:boostedmode", false)) runesPerTeleportBoosted else runesPerTeleportNormal
+ sendInputDialogue(it, true, "Each charge requires $runesPerTeleport Law Runes. How many runes would you like to use?",) { value ->
+ var amount = kotlin.math.min(amountInInventory(it,lawRune), value as Int)
+ if (removeItem(it, Item(lawRune, amount))) {
+ it.sendMessage("You charge the teleorb with $amount Law Runes.")
+ amount += (getAttribute(it, "teleorb:charges",0) as Int)
+ setAttribute(it, "/save:teleorb:charges", amount)
+ it.sendMessage("Current charges: " + ((getAttribute(it, "teleorb:charges",0) as Int) / runesPerTeleport))
+ it.graphics(Graphics(141,96))
+ it.animate(Animation(722))
+ playAudio(it, Sounds.LUNAR_EMBUE_RUNES_2888) //Yes, Imbue is mispelled in the sounds list.
+ }
+ }
+ }
+ 2 -> player?.let {
+ end()
+ var runesPerTeleport = if (getAttribute(it, "snowscape:boostedmode", false)) runesPerTeleportBoosted else runesPerTeleportNormal
+ sendInputDialogue(it, true, "Each additional orb adds one charge. How many would you like to use?",) { value ->
+ var amount = kotlin.math.min(amountInInventory(it,teleorb) - 1, value as Int)
+ if (amount > 0 && removeItem(it, Item(teleorb, amount))) {
+ it.sendMessage("You destroy $amount teleorbs, fusing their energy into one.")
+ amount = amount * runesPerTeleport
+ amount += (getAttribute(it, "teleorb:charges",0) as Int)
+ setAttribute(it, "/save:teleorb:charges", amount)
+ it.sendMessage("Current charges: " + ((getAttribute(it, "teleorb:charges",0) as Int) / runesPerTeleport))
+ it.graphics(Graphics(141,96))
+ it.animate(Animation(722))
+ playAudio(it, Sounds.LUNAR_EMBUE_RUNES_2888)
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/SpadeDigListener.kt b/Server/src/main/content/global/handlers/item/SpadeDigListener.kt
similarity index 85%
rename from Server/src/main/kotlin/rs09/game/interaction/SpadeDigListener.kt
rename to Server/src/main/content/global/handlers/item/SpadeDigListener.kt
index bf101de61..4d9bad6f0 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/SpadeDigListener.kt
+++ b/Server/src/main/content/global/handlers/item/SpadeDigListener.kt
@@ -1,4 +1,4 @@
-package rs09.game.interaction
+package content.global.handlers.item
import core.game.node.entity.player.Player
import core.game.world.map.Location
@@ -7,7 +7,7 @@ object SpadeDigListener {
val listeners = HashMap Unit>()
fun registerListener(location: Location, method: (Player) -> Unit){
- listeners.putIfAbsent(location,method);
+ listeners.putIfAbsent(location,method)
}
@JvmStatic
diff --git a/Server/src/main/java/core/game/interaction/item/SpadeDigOptionPlugin.java b/Server/src/main/content/global/handlers/item/SpadeDigOptionPlugin.java
similarity index 79%
rename from Server/src/main/java/core/game/interaction/item/SpadeDigOptionPlugin.java
rename to Server/src/main/content/global/handlers/item/SpadeDigOptionPlugin.java
index 2fad702f4..70d478faa 100644
--- a/Server/src/main/java/core/game/interaction/item/SpadeDigOptionPlugin.java
+++ b/Server/src/main/content/global/handlers/item/SpadeDigOptionPlugin.java
@@ -1,12 +1,15 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
-import core.game.content.global.action.DigSpadeHandler;
+import core.game.global.action.DigSpadeHandler;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Represents the plugin used to handle the dig option on a spade.
@@ -24,7 +27,7 @@ public class SpadeDigOptionPlugin extends OptionHandler {
@Override
public boolean handle(final Player player, Node node, String option) {
- player.getAudioManager().send(1470,1,1);
+ playAudio(player, Sounds.DIGSPADE_1470);
if (!DigSpadeHandler.dig(player)) {
player.sendMessage("You dig but find nothing.");
}
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/StaffOfTheRaven.kt b/Server/src/main/content/global/handlers/item/StaffOfTheRaven.kt
similarity index 90%
rename from Server/src/main/kotlin/rs09/game/interaction/item/StaffOfTheRaven.kt
rename to Server/src/main/content/global/handlers/item/StaffOfTheRaven.kt
index 1ffcc15a9..90c2e7f0f 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/StaffOfTheRaven.kt
+++ b/Server/src/main/content/global/handlers/item/StaffOfTheRaven.kt
@@ -1,12 +1,13 @@
-package rs09.game.interaction.item
+package content.global.handlers.item
-import api.*
+import core.api.*
import core.game.node.entity.player.Player
import core.game.node.item.Item
import core.game.world.update.flag.context.Graphics
-import rs09.game.content.dialogue.DialogueFile
-import rs09.game.interaction.InteractionListener
-import rs09.tools.END_DIALOGUE
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.tools.END_DIALOGUE
/**
* Handles the Staff of the Raven's (2021 Hween Reward) Recolor Transformation
@@ -14,7 +15,7 @@ import rs09.tools.END_DIALOGUE
class StaffOfTheRaven : InteractionListener {
val ids = intArrayOf(14654, 14655, 14656)
override fun defineListeners() {
- on(ids, ITEM, "recolor", "operate"){player, node ->
+ on(ids, IntType.ITEM, "recolor", "operate"){ player, node ->
val hasUnlocked = player.getAttribute("sotr:purchased",false)
val hasRecolorA = player.getAttribute("sotr:recolor1", false)
val hasRecolorB = player.getAttribute("sotr:recolor2", false)
diff --git a/Server/src/main/java/core/game/interaction/item/StarterPackPlugin.java b/Server/src/main/content/global/handlers/item/StarterPackPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/StarterPackPlugin.java
rename to Server/src/main/content/global/handlers/item/StarterPackPlugin.java
index 029d36eba..152b12e8f 100644
--- a/Server/src/main/java/core/game/interaction/item/StarterPackPlugin.java
+++ b/Server/src/main/content/global/handlers/item/StarterPackPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/item/TeleTabsListener.kt b/Server/src/main/content/global/handlers/item/TeleTabsListener.kt
new file mode 100644
index 000000000..acf1ee45b
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/TeleTabsListener.kt
@@ -0,0 +1,87 @@
+package content.global.handlers.item
+
+import content.region.kandarin.ardougne.quest.plaguecity.PlagueCityListeners.Companion.ARDOUGNE_TELE_ATTRIBUTE
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.TeleportManager
+import core.game.node.item.Item
+import core.game.world.map.Location
+import content.data.Quests
+
+import core.cache.def.impl.ItemDefinition;
+
+class TeleTabsListener : InteractionListener {
+
+ enum class TeleTabs(val item: Int, val location: Location, val exp: Double, val requirementCheck: (Player) -> Boolean = { true }) {
+ ADDOUGNE_TELEPORT(8011, Location.create(2662, 3307, 0), 61.0, {
+ player -> getAttribute(player, ARDOUGNE_TELE_ATTRIBUTE, false)
+ }),
+ AIR_ALTAR_TELEPORT(13599, Location.create(2978, 3296, 0), 0.0),
+ ASTRAL_ALTAR_TELEPORT(13611, Location.create(2156, 3862, 0), 0.0, {
+ player -> hasRequirement(player, Quests.LUNAR_DIPLOMACY);
+ }),
+ BLOOD_ALTAR_TELEPORT(13610, Location.create(3559, 9778, 0), 0.0, {
+ player -> hasRequirement(player, Quests.LEGACY_OF_SEERGAZE);
+ }),
+ BODY_ALTAR_TELEPORT(13604, Location.create(3055, 3443, 0), 0.0),
+ CAMELOT_TELEPORT(8010, Location.create(2757, 3477, 0), 55.5),
+ CHAOS_ALTAR_TELEPORT(13606, Location.create(3058, 3593, 0), 0.0),
+ COSMIC_ALTAR_TELEPORT(13605, Location.create(2411, 4380, 0), 0.0, {
+ player -> hasRequirement(player, Quests.LOST_CITY);
+ }),
+ DEATH_ALTAR_TELEPORT(13609, Location.create(1863, 4639, 0), 0.0, {
+ player -> hasRequirement(player, Quests.MOURNINGS_END_PART_II);
+ }),
+ EARTH_ALTAR_TELEPORT(13602, Location.create(3304, 3472, 0), 0.0),
+ FALADOR_TELEPORT(8009, Location.create(2966, 3380, 0), 47.0),
+ FIRE_ALTAR_TELEPORT(13603, Location.create(3311, 3252, 0), 0.0),
+ LAW_ALTAR_TELEPORT(13608, Location.create(2857, 3378, 0), 0.0, {
+ player -> if (!ItemDefinition.canEnterEntrana(player)) (player.sendMessage("The power of Saradomin prevents you from taking armour or weaponry to Entrana.") !is Unit) else true; // ugly way of doing this, but the sendMessage function returns a Unit type, so by using !is Unit it becomes false.
+ }),
+ LUMBRIDGE_TELEPORT(8008, Location.create(3222, 3218, 0), 41.0),
+ MIND_ALTAR_TELEPORT(13600, Location.create(2979, 3510, 0), 0.0),
+ NATURE_ALTAR_TELEPORT(13607, Location.create(2868, 3013, 0), 0.0),
+ TELEKINETIC_GRAB(8022, Location.create(2836, 3285, 0), 0.0, {
+ player -> hasRequirement(player, Quests.DRAGON_SLAYER);
+ }),
+ VARROCK_TELEPORT(8007, Location.create(3212, 3423, 0), 35.00),
+ WATCH_TOWER_TELEPORT(8012, Location.create(2548, 3114, 0), 68.00, {
+ player -> hasRequirement(player, Quests.WATCHTOWER);
+ }),
+ WATER_ALTAR_TELEPORT(13601, Location.create(3182, 3162, 0), 0.0);
+
+ companion object {
+ val idMap = values().map { it.item to it }.toMap()
+ fun forId(id: Int): TeleTabs? {
+ return idMap[id]
+ }
+ }
+ }
+
+ override fun defineListeners() {
+ val tabIDs = TeleTabs.values().map { it.item }.toIntArray()
+ on(tabIDs, IntType.ITEM, "break") {player, node ->
+ val tab = node.id
+ val tabEnum = TeleTabs.forId(tab)
+ if (tabEnum != null && inInventory(player,tab)) {
+ val tabloc = tabEnum.location
+ if (inInventory(player, tab)) {
+ if (tabEnum.requirementCheck(player)){
+ if (teleport(player, tabloc, TeleportManager.TeleportType.TELETABS)) {
+ removeItem(player, Item(node.id, 1))
+ }
+ }
+ else {
+ when (tabEnum){
+ TeleTabs.ADDOUGNE_TELEPORT -> sendMessage(player, "You need to complete Plague City to use this tablet.")
+ else -> sendMessage(player, "You do not have the requirements to use this tablet.")
+ }
+ }
+ }
+ }
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/TeleportCrystalPlugin.java b/Server/src/main/content/global/handlers/item/TeleportCrystalPlugin.java
similarity index 93%
rename from Server/src/main/java/core/game/interaction/item/TeleportCrystalPlugin.java
rename to Server/src/main/content/global/handlers/item/TeleportCrystalPlugin.java
index beff82c9d..5bbda0ffc 100644
--- a/Server/src/main/java/core/game/interaction/item/TeleportCrystalPlugin.java
+++ b/Server/src/main/content/global/handlers/item/TeleportCrystalPlugin.java
@@ -1,8 +1,8 @@
-package core.game.interaction.item;
+package content.global.handlers.item;
import core.cache.def.impl.ItemDefinition;
import core.plugin.Initializable;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialoguePlugin;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.npc.NPC;
@@ -13,6 +13,9 @@ import core.game.world.map.Location;
import core.game.world.map.zone.impl.WildernessZone;
import core.plugin.Plugin;
+import static core.api.ContentAPIKt.hasRequirement;
+import content.data.Quests;
+
/**
* Represents the rotten potato plugin.
* @author 'Vexia
@@ -32,6 +35,8 @@ public final class TeleportCrystalPlugin extends OptionHandler {
@Override
public boolean handle(Player player, Node node, String option) {
+ if (!hasRequirement(player, Quests.MOURNINGS_END_PART_I))
+ return true;
if (!WildernessZone.checkTeleport(player, 20)) {
player.getPacketDispatch().sendMessage("The crystal is unresponsive.");
return true;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/ToyHorseyListener.kt b/Server/src/main/content/global/handlers/item/ToyHorseyListener.kt
similarity index 78%
rename from Server/src/main/kotlin/rs09/game/interaction/item/ToyHorseyListener.kt
rename to Server/src/main/content/global/handlers/item/ToyHorseyListener.kt
index 97a677edc..e16a39e42 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/ToyHorseyListener.kt
+++ b/Server/src/main/content/global/handlers/item/ToyHorseyListener.kt
@@ -1,11 +1,12 @@
-package rs09.game.interaction.item
+package content.global.handlers.item
-import api.animate
-import api.sendChat
-import api.stopWalk
+import core.api.animate
+import core.api.sendChat
+import core.api.stopWalk
import org.rs09.consts.Animations
import org.rs09.consts.Items
-import rs09.game.interaction.InteractionListener
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
/**
* Interaction listener for the Toy Horsey item
@@ -29,7 +30,7 @@ class ToyHorseListener : InteractionListener {
)
override fun defineListeners() {
- on(HORSEY_MAP.keys.toIntArray(), ITEM, "play-with") { player, node ->
+ on(HORSEY_MAP.keys.toIntArray(), IntType.ITEM, "play-with") { player, node ->
// "high-priority" interaction, so movement is stopped
stopWalk(player)
animate(player, HORSEY_MAP.get(node.id))
diff --git a/Server/src/main/content/global/handlers/item/ToyListeners.kt b/Server/src/main/content/global/handlers/item/ToyListeners.kt
new file mode 100644
index 000000000..edf14fa89
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/ToyListeners.kt
@@ -0,0 +1,136 @@
+package content.global.handlers.item
+
+import core.api.*
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import kotlinx.coroutines.delay
+import org.rs09.consts.Sounds
+import kotlinx.coroutines.delay
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.runBlocking
+
+
+
+class ToyListeners : InteractionListener {
+ companion object {
+ val MARIONETTES = intArrayOf(Items.RED_MARIONETTE_6867, Items.GREEN_MARIONETTE_6866, Items.BLUE_MARIONETTE_6865)
+ private val MARIONETTE_JUMP = Animation(3003)
+ private val MARIONETTE_WALK = Animation(3004)
+ private val MARIONETTE_BOW = Animation(3005)
+ private val MARIONETTE_DANCE = Animation(3006)
+ private val MARIONETTE_GFX =
+ arrayOf(intArrayOf(507, 508, 509, 510), intArrayOf(511, 512, 513, 514), intArrayOf(515, 516, 517, 518))
+ private val SNOWGLOBE_SHAKE = Animation(7535) //Initial Shake
+ private val SNOWGLOBE_HOLDFACE = Animation(7536) //Immediately after shake, player holds the snow globe to face
+ private val SNOWGLOBE_INTERFACE =
+ 659 //After HOLDFACE this interface is displayed, player either clicks 'continue' for inv of snowballs, or 'close' for no snowballs
+ private val SNOWGLOBE_DOWNFAST = Animation(7537) //Used when player hit 'close' on the interface
+ private val SNOWGLOBE_DOWNSLOW = Animation(7538) //Used when the player hit 'continue' on the interface
+ private val SNOWGLOBE_STOMP = Animation(7528) //When player hits continue this animation plays
+ private val SNOWGLOBE_SNOW = Graphics(1284) //When Animation STOMP is playing this gfx also plays
+ private val SPINNING_PLATE_SPIN = Animation(1902)
+ private val SPINNING_PLATE_PUT_DOWN = Animation(1904)
+ private val TOY_KITE_FLY = Animation(8990)
+ val YOYO_PLAY = Animation(1457)
+ val YOYO_LOOP = Animation(1458)
+ val YOYO_WALK = Animation(1459)
+ val YOYO_CRAZY = Animation(1460)
+ val ZOMBIE_HEAD_TALK_AT = Animation(2840)
+ val ZOMBIE_HEAD_DISPLAY = Animation(2844)
+ }
+
+ override fun defineListeners() {
+ on(Items.CHOCATRICE_CAPE_12645, IntType.ITEM, "operate") { player, _ ->
+ lockInteractions(player, 2)
+ visualize(player, 8903, 1566)
+ return@on true
+ }
+
+ on(MARIONETTES, IntType.ITEM, "jump", "walk", "bow", "dance") { player, marionette ->
+ val index = MARIONETTES.indexOf(marionette.id)
+
+ lockInteractions(player, 2)
+ when (getUsedOption(player)) {
+ "jump" -> visualize(player, MARIONETTE_JUMP, MARIONETTE_GFX[index][0])
+ "walk" -> visualize(player, MARIONETTE_WALK, MARIONETTE_GFX[index][1])
+ "bow" -> visualize(player, MARIONETTE_BOW, MARIONETTE_GFX[index][2])
+ "dance" -> visualize(player, MARIONETTE_DANCE, MARIONETTE_GFX[index][3])
+ }
+ return@on true
+ }
+
+ on(Items.REINDEER_HAT_10507, IntType.ITEM, "operate") { player, _ ->
+ lockInteractions(player, 2)
+ visualize(player, 5059, 859)
+ return@on true
+ }
+
+ on(Items.SNOW_GLOBE_11949, IntType.ITEM, "shake") { player, _ ->
+ lockInteractions(player, 2)
+ animate(player, SNOWGLOBE_SHAKE)
+ runTask(player, 3) {
+ animate(player, SNOWGLOBE_HOLDFACE)
+ runTask(player) {
+ openInterface(player, SNOWGLOBE_INTERFACE)
+ }
+ }
+ return@on true
+ }
+
+ on(Items.SPINNING_PLATE_4613, IntType.ITEM, "spin") { player, _ ->
+ lockInteractions(player, 2)
+ animate(player, SPINNING_PLATE_SPIN)
+ runTask(player, 2) {
+ animate(player, SPINNING_PLATE_PUT_DOWN)
+ }
+ return@on true
+ }
+
+ on(Items.TOY_KITE_12844, IntType.ITEM, "fly","operate") { player, _ ->
+ lockInteractions(player, 2)
+ animate(player, TOY_KITE_FLY)
+ return@on true
+ }
+
+ on(Items.YO_YO_4079, IntType.ITEM, "play", "loop", "walk", "crazy") { player, _ ->
+ val option = getUsedOption(player)
+
+ lockInteractions(player, 2)
+ when (option) {
+ "play" -> animate(player, YOYO_PLAY)
+ "loop" -> animate(player, YOYO_LOOP)
+ "walk" -> animate(player, YOYO_WALK)
+ "crazy" -> animate(player, YOYO_CRAZY)
+ }
+ return@on true
+ }
+
+ on(Items.ZOMBIE_HEAD_6722, IntType.ITEM, "talk-at", "display", "question") { player, _ ->
+ val option = getUsedOption(player)
+
+ lockInteractions(player, 2)
+ when (option) {
+ "talk-at" -> {
+ animate(player, ZOMBIE_HEAD_TALK_AT)
+ sendChat(player, "Alas!")
+ }
+
+ "display" -> {
+ animate(player, ZOMBIE_HEAD_DISPLAY)
+ sendChat(player, "MWAHAHAHAHAHAHAH")
+ }
+ }
+ return@on true
+ }
+ on(Items.RUBBER_CHICKEN_4566, IntType.ITEM, "operate", "Dance") { player, _ ->
+ lockInteractions(player, 2)
+ visualize(player, 1835, -1)
+ playJingle(player, 99);
+ playAudio(player, 355, 100);
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/book/GeneralRuleBook.kt b/Server/src/main/content/global/handlers/item/book/GeneralRuleBook.kt
new file mode 100644
index 000000000..12a6be03f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/book/GeneralRuleBook.kt
@@ -0,0 +1,209 @@
+package content.global.handlers.item.book
+
+import content.global.handlers.iface.BookInterface
+import content.global.handlers.iface.BookLine
+import content.global.handlers.iface.Page
+import content.global.handlers.iface.PageSet
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.world.GameWorld
+import org.rs09.consts.Items
+
+/**
+ * General Rule Book
+ * This is not an item book, but opened when asking a Town Crier for the Rules
+ * @author ovenbreado
+ * @author 'Vexia
+ */
+class GeneralRuleBook {
+ companion object {
+ private const val BLUE = " "
+ private val SERVER_NAME = GameWorld.settings!!.name
+ private val TITLE = "$SERVER_NAME Rules"
+ private val CONTENTS = arrayOf(
+ PageSet(
+ Page(
+ BookLine("Rules", 38),
+ BookLine("1 - Offensive Language", 104),
+ BookLine("2 - Item Scamming", 106),
+ BookLine("3 - Password Scamming", 108),
+ BookLine("4 - Cheating/Bug Abuse", 110),
+ BookLine("5 - Staff Impersonation", 112),
+ BookLine("6 - Account Sharing/Trading", 114),
+ BookLine("7 - Using Third Party", 116),
+ BookLine("Software", 118),
+ BookLine("8 - Multi Logging-in", 120),
+ BookLine("9 - Encouraging Others to", 122),
+ BookLine("Break Rules", 124),
+ BookLine("10 - False Representation", 126),
+ BookLine("11 - Website Advertising", 128)
+ ),
+ Page(
+ BookLine("12 - Read World Item", 134),
+ BookLine("Trading", 136),
+ BookLine("13 - Asking For Personal", 138),
+ BookLine("Details", 140),
+ BookLine("14 - Misuse of Official", 142),
+ BookLine("Forums", 144),
+ BookLine("15 - Advert Blocking", 146)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(BLUE + "1 - Offensive Language", 38),
+ BookLine("You must not use any", 40),
+ BookLine("language which is offensive,", 41),
+ BookLine("racist or obscene. Remember,", 42),
+ BookLine("it's nice to be nice!", 43)
+ ), Page(
+ BookLine(BLUE + "2 - Item Scamming", 53 ),
+ BookLine("You must not scam or", 55),
+ BookLine("deceive other players. This", 56),
+ BookLine("includes claiming that items", 57),
+ BookLine("are rare when they are not,", 58),
+ BookLine("team scamming or telling", 59),
+ BookLine("players that you can", 60),
+ BookLine("upgrade' their armour in", 61),
+ BookLine("any way!", 62)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(BLUE + "3 - Password Scamming", 38),
+ BookLine("Asking for - or trying to", 40),
+ BookLine("obtain - another player's", 41),
+ BookLine("password in any way will not", 42),
+ BookLine("be tolerated, even in jest!", 43)
+ ), Page(
+ BookLine(BLUE + "4 - Cheating/Bug Abuse", 53),
+ BookLine("A bug is a technical glitch", 55),
+ BookLine("found in the game. You", 56),
+ BookLine("must not use or attempt to", 57),
+ BookLine("use any cheats or errors that", 58),
+ BookLine("you find in our software.", 59),
+ BookLine("Any bugs found must be", 60),
+ BookLine("reported to " + SERVER_NAME, 61),
+ BookLine("immediately, by clicking the", 62),
+ BookLine("'Report a bug/fault' link", 63),
+ BookLine("found on the main page.", 64)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(BLUE + "5 - Staff Impersonation", 38),
+ BookLine("You should not attempt to", 40),
+ BookLine("impersonate " + SERVER_NAME + " staff in", 41),
+ BookLine("any way.", 42)
+ ), Page(
+ BookLine(BLUE + "6 - Account Sharing/Trading", 53),
+ BookLine("Each account should only be", 55),
+ BookLine("used by ONE person and", 56),
+ BookLine("ONE person alone.", 57),
+ BookLine("Remember that trying to", 58),
+ BookLine("buy, sell, borrow or give", 59),
+ BookLine("away an account is against", 60),
+ BookLine("the rules and will land you in", 61),
+ BookLine("trouble when caught!", 62)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "7 - Using Third Party " + BLUE + "Software You must not use other programs to gain an unfair advantage in the game.",
+ 38
+ )
+ ), Page(
+ BookLine(
+ BLUE + "8 - Multi Logging-in If you create more than one " + SERVER_NAME + " account, they must not interact. This includes giving items to a friend to transfer to another account you own.",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "9 - Encouraging Others to " + BLUE + "Break Rules You must not encourage others to break any of the " + SERVER_NAME + " rules.",
+ 38
+ ), BookLine(
+ BLUE + "10 - False Representation You must not misuse " + SERVER_NAME + " Customer Support.Trying to get another player into trouble by reporting them for no reason or framing them is an abuse of the Customer Support Team's service. want to help as many players as possible and so the Customer Support Team's service must be used appropriately and treated with",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine("respect at all times.", 38),
+ BookLine(
+ BLUE + "11 - Website Advertising You are not allowed to actively advertise any websites, fan-sites, IRC channels or product anywhere in " + SERVER_NAME + ", including the " + SERVER_NAME + " forums.",
+ 53
+ )
+ ), Page()
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "12 - Real World Item " + BLUE + "Trading " + SERVER_NAME + " items must only be exchanged for other items or service within the game. Buying or selling items outside of the " + SERVER_NAME + " environment is not in the spirit of the game and is easy for " + SERVER_NAME + " to trace!",
+ 38
+ ), BookLine(
+ BLUE + "13 - Asking for Personal " + BLUE + "Details To protect player's safety and privacy, you must not ask for personal details. This includes full names, phone numbers, MSN, AIM, email and home/school addresses!",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "14 - Misuse of Official " + BLUE + "Forums Forums must be used in accordance with the Forum Code of Conduct and treated with respect at all times.",
+ 38
+ ), BookLine(
+ BLUE + "15 - Advert Blocking Blocking the adverts in the free to play version of " + SERVER_NAME + " is against the rules.",
+ 53
+ )
+ )
+ )
+ )
+ private fun display(player: Player, pageNum: Int, buttonID: Int) : Boolean {
+ if (pageNum == 0) {
+ when (buttonID) {
+ 104 -> setAttribute(player, "bookInterfaceCurrentPage", 1)
+ 106 -> setAttribute(player, "bookInterfaceCurrentPage", 1)
+ 108 -> setAttribute(player, "bookInterfaceCurrentPage", 2)
+ 110 -> setAttribute(player, "bookInterfaceCurrentPage", 2)
+ 112 -> setAttribute(player, "bookInterfaceCurrentPage", 3)
+ 114 -> setAttribute(player, "bookInterfaceCurrentPage", 3)
+ 116 -> setAttribute(player, "bookInterfaceCurrentPage", 4)
+ 118 -> setAttribute(player, "bookInterfaceCurrentPage", 4)
+ 120 -> setAttribute(player, "bookInterfaceCurrentPage", 4)
+ 122 -> setAttribute(player, "bookInterfaceCurrentPage", 5)
+ 124 -> setAttribute(player, "bookInterfaceCurrentPage", 5)
+ 126 -> setAttribute(player, "bookInterfaceCurrentPage", 5)
+ 128 -> setAttribute(player, "bookInterfaceCurrentPage", 6)
+ 134 -> setAttribute(player, "bookInterfaceCurrentPage", 7)
+ 136 -> setAttribute(player, "bookInterfaceCurrentPage", 7)
+ 138 -> setAttribute(player, "bookInterfaceCurrentPage", 7)
+ 140 -> setAttribute(player, "bookInterfaceCurrentPage", 7)
+ 142 -> setAttribute(player, "bookInterfaceCurrentPage", 8)
+ 144 -> setAttribute(player, "bookInterfaceCurrentPage", 8)
+ 146 -> setAttribute(player, "bookInterfaceCurrentPage", 8)
+ }
+ } else {
+ when (buttonID) {
+ 159 -> setAttribute(player, "bookInterfaceCurrentPage", 0)
+ }
+ }
+ BookInterface.pageSetup(player, BookInterface.FANCY_BOOK_2_27, TITLE, CONTENTS)
+ if (getAttribute(player,"bookInterfaceCurrentPage", 0) != 0) {
+ player.packetDispatch.sendInterfaceConfig(BookInterface.FANCY_BOOK_2_27, 159, false)
+ player.packetDispatch.sendString("Index", BookInterface.FANCY_BOOK_2_27, 159)
+ }
+ return true
+ }
+
+ /** Since the Town Crier shows you the book, there is no item here. */
+ fun openBook(player: Player) {
+ BookInterface.openBook(player, BookInterface.FANCY_BOOK_2_27, ::display)
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/book/GoblinBook.kt b/Server/src/main/content/global/handlers/item/book/GoblinBook.kt
new file mode 100644
index 000000000..5f9661fa6
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/book/GoblinBook.kt
@@ -0,0 +1,252 @@
+package content.global.handlers.item.book
+
+import content.global.handlers.iface.BookInterface
+import content.global.handlers.iface.BookLine
+import content.global.handlers.iface.Page
+import content.global.handlers.iface.PageSet
+import core.ServerConstants
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import org.rs09.consts.Items
+
+/**
+ * Goblin Book
+ * https://youtu.be/6tdNqNa4zGw?t=155 April 23, 2009
+ * @author ovenbreado
+ */
+class GoblinBook : InteractionListener {
+ companion object {
+ private const val RED = " "
+ private val TITLE = "The Book of the Big High War God"
+ private val CONTENTS = arrayOf(
+ PageSet(
+ Page(
+ BookLine(RED + "The Creation of the Goblins", 97),
+ BookLine("", 68),
+ BookLine("In beginning all gods have", 69),
+ BookLine("big war. Each god find army", 70),
+ BookLine("to fight for him.", 71),
+ BookLine("", 72),
+ BookLine("Big High War God not have", 73),
+ BookLine("army. Big High War God go", 74),
+ BookLine("to beardy-short-people and", 75),
+ BookLine("ask, Will you fight in my", 76),
+ BookLine("army? But beardy-short-", 77),
+ BookLine("people say, No, we fight for", 78),
+ BookLine("God of Shiny Light.", 79),
+ BookLine("", 80),
+ BookLine("Then Big High War God go", 81),
+ ),
+ Page(
+ BookLine("to demons and ask, Will you", 82),
+ BookLine("fight in my army? But", 83),
+ BookLine("demons say, No, we fight for", 84),
+ BookLine("God of Dark Fire.", 85),
+ BookLine("", 86),
+ BookLine("Then Big High War God go", 87),
+ BookLine("to tall people with keen blades", 88),
+ BookLine("and say, Will you fight in", 89),
+ BookLine("my army? But tall people", 90),
+ BookLine("with keen blades say, No,", 91),
+ BookLine("some of us fight for God of", 92),
+ BookLine("Shiny Light and some of us", 93),
+ BookLine("fight for God of Dark Fire,", 94),
+ BookLine("but none of us fight for you!", 95),
+ BookLine("", 96),
+ ),
+ ),
+ PageSet(
+ Page(
+ BookLine("Big High War God very sad.", 97),
+ BookLine("He travel east and west,", 68),
+ BookLine("north and south, across land", 69),
+ BookLine("looking for army to fight for", 70),
+ BookLine("him.", 71),
+ BookLine("", 72),
+ BookLine("Then goblins say, We fight", 73),
+ BookLine("for you! At that time goblins", 74),
+ BookLine("very weak, very small, soft", 75),
+ BookLine("skin. Not like goblins today!", 76),
+ BookLine("But Big High War God say,", 77),
+ BookLine("I will make you my army.", 78),
+ BookLine("So Big High War God train", 79),
+ BookLine("goblins so they very strong.", 80),
+ BookLine("He give them good armour", 81),
+ ),
+ Page(
+ BookLine("so they not be harmed. He", 82),
+ BookLine("make them strong in spirit so", 83),
+ BookLine("they not afraid of battle. He", 84),
+ BookLine("give them commanders so", 85),
+ BookLine("they know which way to go.", 86),
+ BookLine("He divide goblins into twelve", 87),
+ BookLine("tribes and send them into", 88),
+ BookLine("battle!", 89),
+ BookLine("", 90),
+ BookLine("Goblin armies fight very", 91),
+ BookLine("good! When other gods see", 92),
+ BookLine("this, they very jealous. So", 93),
+ BookLine("they say, We want goblins to", 94),
+ BookLine("fight for us too! So Big High", 95),
+ BookLine("War God take some tribes", 96),
+ ),
+ ),
+ PageSet(
+ Page(
+ BookLine("and sell them, one to God of", 97),
+ BookLine("Shiny Light and one to God", 68),
+ BookLine("of Dark Fire, and other", 69),
+ BookLine("tribes to other gods. But", 70),
+ BookLine("most still worship Big High", 71),
+ BookLine("War God who created them!", 72),
+ BookLine("", 73),
+ BookLine("", 74),
+ BookLine("", 75),
+ BookLine("", 76),
+ BookLine("", 77),
+ BookLine("", 78),
+ BookLine("", 79),
+ BookLine("", 80),
+ BookLine("", 81),
+ ),
+ Page(
+ BookLine(RED + "The Several Commandments", 82),
+ BookLine("", 83),
+ BookLine("These are commands of Big", 84),
+ BookLine("High War God! Obey all", 85),
+ BookLine("commands all time or Big", 86),
+ BookLine("High War God kill you very", 87),
+ BookLine("bad!", 88),
+ BookLine("", 89),
+ BookLine("Always to slay enemies of", 90),
+ BookLine("Big High War God. Enemies", 91),
+ BookLine("must die!", 92),
+ BookLine("", 93),
+ BookLine("Not to run from battle.", 94),
+ BookLine("Cowards must die!", 95),
+ BookLine("", 96),
+ ),
+ ),
+ PageSet(
+ Page(
+ BookLine("Not to show mercy. Merciful", 97),
+ BookLine("must die!", 68),
+ BookLine("", 69),
+ BookLine("Not to doubt Big High War", 70),
+ BookLine("God. Doubters must die!", 71),
+ BookLine("", 72),
+ BookLine("Not to make own plans.", 73),
+ BookLine("Thinkers must die!", 74),
+ BookLine("", 75),
+ BookLine("", 76),
+ BookLine("", 77),
+ BookLine("", 78),
+ BookLine("", 79),
+ BookLine("", 80),
+ BookLine("", 81),
+ ),
+ Page(
+ BookLine(RED + "The end of the war and the", 82),
+ BookLine(RED + "prophecy", 83),
+ BookLine("", 84),
+ BookLine("The war of gods last many", 85),
+ BookLine("lifetimes. Battle is glorious", 86),
+ BookLine("and many heroes live and", 87),
+ BookLine("die! Then all gods leave", 88),
+ BookLine("world, leave their armies", 89),
+ BookLine("behind. But goblins still", 90),
+ BookLine("soldiers, still fight! Goblins", 91),
+ BookLine("fight against tall people with", 92),
+ BookLine("keen blades. But tall people", 93),
+ BookLine("build cities with walls, they", 94),
+ BookLine("not want to fight. They not", 95),
+ BookLine("true soldiers like goblins! But", 96),
+ ),
+ ),
+ PageSet(
+ Page(
+ BookLine("now goblins not have enough", 97),
+ BookLine("to eat, and have no", 68),
+ BookLine("commanders to tell them who", 69),
+ BookLine("to fight. So goblin tribes fight", 70),
+ BookLine("one another.", 71),
+ BookLine("", 72),
+ BookLine("At last all goblin tribes have", 73),
+ BookLine("big battle on plain of mud.", 74),
+ BookLine("Battle last many days and", 75),
+ BookLine("many goblins die, battle is", 76),
+ BookLine("glorious! But goblin corpses", 77),
+ BookLine("cover the ground and it look", 78),
+ BookLine("like all die. ", 79),
+ BookLine("", 80),
+ BookLine("Then Hopespear of the", 81),
+ ),
+ Page(
+ BookLine("Narogoshunn tribe have", 82),
+ BookLine("vision of Big High War God.", 83),
+ BookLine("In night while soldiers rest he", 84),
+ BookLine("call leaders of all tribes", 85),
+ BookLine("together to give them", 86),
+ BookLine("message.", 87),
+ BookLine("", 88),
+ BookLine("This is the word of Big High", 89),
+ BookLine("War God: Battle is indeed", 90),
+ BookLine("glorious and goblins are", 91),
+ BookLine("soldiers but if there too", 92),
+ BookLine("much battle all goblins die!", 93),
+ BookLine("No more must goblin fight", 94),
+ BookLine("against goblin or tribe against", 95),
+ BookLine("tribe. Goblins must find other", 96),
+ ),
+ ),
+ PageSet(
+ Page(
+ BookLine("enemies to fight, but not fight", 97),
+ BookLine("each other!", 68),
+ BookLine("", 69),
+ BookLine("And this is the word of Big", 70),
+ BookLine("High War God: Today I", 71),
+ BookLine("cannot lead you, but", 72),
+ BookLine("someday I will send a new", 73),
+ BookLine("Commander to lead you.", 74),
+ BookLine("Under new Commander", 75),
+ BookLine("goblins will conquer all of", 76),
+ BookLine(ServerConstants.SERVER_NAME + ", every race and", 77),
+ BookLine("every god! And then Big", 78),
+ BookLine("High War God will return", 79),
+ BookLine("and sit on throne of bronze", 80),
+ BookLine("and rule over all. War will", 81),
+ ),
+ Page(
+ BookLine("end in victory and victory", 82),
+ BookLine("will last forever!", 83),
+ BookLine("", 84),
+ BookLine("So leaders of tribes stop", 85),
+ BookLine("battle. And on plain of mud", 86),
+ BookLine("all tribes build temple to Big", 87),
+ BookLine("High War God and offer", 88),
+ BookLine("sacrifices.", 89),
+ BookLine("", 90),
+ BookLine("", 91),
+ BookLine("", 92),
+ BookLine("", 93),
+ BookLine("", 94),
+ BookLine("", 95),
+ BookLine("", 96),
+ ),
+ ),
+ )
+ private fun display(player: Player, pageNum: Int, buttonID: Int) : Boolean {
+ BookInterface.pageSetup(player, BookInterface.FANCY_BOOK_26, TITLE, CONTENTS)
+ return true
+ }
+ }
+
+ override fun defineListeners() {
+ on(Items.GOBLIN_BOOK_10999, IntType.ITEM, "read") { player, _ ->
+ BookInterface.openBook(player, BookInterface.FANCY_BOOK_26, ::display)
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/book/GrimDiary.kt b/Server/src/main/content/global/handlers/item/book/GrimDiary.kt
new file mode 100644
index 000000000..1567391c3
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/book/GrimDiary.kt
@@ -0,0 +1,139 @@
+package content.global.handlers.item.book
+
+import content.global.handlers.iface.BookInterface
+import content.global.handlers.iface.BookLine
+import content.global.handlers.iface.Page
+import content.global.handlers.iface.PageSet
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import org.rs09.consts.Items
+
+/**
+ * Grim Diary Book
+ * https://www.youtube.com/watch?v=Vhmm_Gg0584
+ * @author ovenbreado
+ * @author Vexia
+ */
+class GrimDiary : InteractionListener {
+ companion object {
+ private const val RED = " "
+ private const val LEFT_PAGE_CHILD = 97
+ private const val RIGHT_PAGE_CHILD = 82
+ private const val TITLE = "Diary of Death"
+ private val CONTENTS = arrayOf(
+ PageSet(
+ Page(
+ BookLine(
+ "My Diary by Grim " + RED + "''''''''''''''''''''''''''''''' " + RED + "''''12th Bennath " + RED + "''''''''''''''''''''''''''''''' I had such a busy day dealing out death today It's not as easy being grim. Realised that Alfonse is such a good servant. He ",
+ LEFT_PAGE_CHILD
+ )
+ ),
+ Page(
+ BookLine(
+ "seems to have the house in full working order. I shall have to congratulate him tomorrow. Spent some well-deserved time sharpening my scythe - Alfonse kindly reminded me to put the sharpener back in the cabinet. Such a good chap.",
+ RIGHT_PAGE_CHILD
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ " " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''13th Bennath " + RED + "''''''''''''''''''''''''''''''' Went to the Wilderness today. Plenty of foolish people surrendering their lives to me without thought. My back is killing me from all the standing around waiting.",
+ LEFT_PAGE_CHILD
+ )
+ ),
+ Page(
+ BookLine(
+ "Must get that seen to. Got my robes stained from one victim. Simply ruined! I decided to throw them in the fireplace - will light the fire soon. Oh, and I must remember to call mother.",
+ RIGHT_PAGE_CHILD
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ " " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''14th Bennath " + RED + "''''''''''''''''''''''''''''''' A tragic day. Alfonse and I were in the garden looking at the state of the spider nest. I patted my trusty servant on the back in thanks for all his hard work. Sadly, my touch of death killed him",
+ LEFT_PAGE_CHILD
+ )
+ ), Page(BookLine("instantly. Feel quite guilty.", RIGHT_PAGE_CHILD))
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ " " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''20th Bennath " + RED + "''''''''''''''''''''''''''''''' House is getting into quite a state without Alfonse - things strewn all over the place. Almost trod on the eye of my mentor, eww. I put the eye back on the shelf so he can watch over me",
+ LEFT_PAGE_CHILD
+ )
+ ),
+ Page(
+ BookLine(
+ "and make sure I stay true to his teachings. Went into Varrock to buy some new robes - people kept running away in fear, so it was difficult to find a sale.",
+ RIGHT_PAGE_CHILD
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ " " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''21st Bennath " + RED + "''''''''''''''''''''''''''''''' Decided to spend a bit of time tidying today - it really isn't an easy job. In my activities I found my old 'Voice of Doom' potion on the bookcase - perfect for giving people a good scare. Oh, I do love",
+ LEFT_PAGE_CHILD
+ )
+ ),
+ Page(
+ BookLine(
+ "my job. " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''22nd Bennath " + RED + "''''''''''''''''''''''''''''''' Ordered a new servant today from the agency and got a 10% discount for getting past the 1000th servant mark.",
+ RIGHT_PAGE_CHILD
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ "Woo hoo! The agency sent me his Last Will and Testement. Shall have to sit on that for a while. " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''23rd Bennath " + RED + "''''''''''''''''''''''''''''''' Aquired some bones today. Muncher should appreciate them as a treat",
+ LEFT_PAGE_CHILD
+ )
+ ),
+ Page(
+ BookLine(
+ "the next time he behaves. The problem is there aren't many barriers he can't devour, so I decided to lock the bones up in the chest. " + RED + "'''''''''''''''''''''''''''''''" + RED + " " + RED + "''''24th Bennath " + RED + "''''''''''''''''''''''''''''''' My plan to make undead",
+ RIGHT_PAGE_CHILD
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ "fish is going quite well. I managed to obtain a resurrection hourglass today,so have added that to the fishtank to finish off the process. It's so difficult to have pets when everything you touch dies horrifically. I remember having a rabbit once that exploded when I fed it a",
+ LEFT_PAGE_CHILD
+ )
+ ),
+ Page(
+ BookLine(
+ "carrot! " + RED + "''''''''''''''''''''''''''''''' " + RED + "'''25th Bennath " + RED + "''''''''''''''''''''''''''''''' Got back home today to find Muncher has run around the house creating havok - he even ate the postman! I",
+ RIGHT_PAGE_CHILD
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ "scolded him. So hopefully he won't do it again anytime soon. All my things are in such a mess. I'm surely going to have to find someone to tidy things up before my new servant arrives. Don't want to seem totally incapable of looking after myself.",
+ LEFT_PAGE_CHILD
+ )
+ )
+ )
+ )
+ private fun display(player:Player, pageNum: Int, buttonID: Int) : Boolean {
+ BookInterface.pageSetup(player, BookInterface.FANCY_BOOK_26, TITLE, CONTENTS)
+ return true
+ }
+ }
+
+ override fun defineListeners() {
+ on(Items.THE_GRIM_REAPERS_DIARY_11780, IntType.ITEM, "read") { player, _ ->
+ BookInterface.openBook(player, BookInterface.FANCY_BOOK_26, ::display)
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/book/SecurityBookPlugin.kt b/Server/src/main/content/global/handlers/item/book/SecurityBookPlugin.kt
new file mode 100644
index 000000000..4813fed18
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/book/SecurityBookPlugin.kt
@@ -0,0 +1,134 @@
+package content.global.handlers.item.book
+
+import content.global.handlers.iface.BookInterface
+import content.global.handlers.iface.BookLine
+import content.global.handlers.iface.Page
+import content.global.handlers.iface.PageSet
+import core.api.setAttribute
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.world.GameWorld
+import org.rs09.consts.Items
+
+/**
+ * Security Book
+ * https://www.youtube.com/watch?v=yXyRUXYafO0
+ * @author ovenbreado
+ */
+class SecurityBookPlugin : InteractionListener {
+ companion object {
+ private const val BLUE = " "
+ private val TITLE = "" + GameWorld.settings!!.name + " Account Security"
+ private val CONTENTS = arrayOf(
+ PageSet(
+ Page(
+ BookLine("Chapters", 38),
+ BookLine("" + BLUE + "Password Tips ", 40),
+ BookLine("" + BLUE + "Recovery Questions ", 41),
+ BookLine("" + BLUE + "Other Security Tips ", 42),
+ BookLine("" + BLUE + "Stringhold of Security ", 43)
+ ),
+ Page(
+ BookLine("" + BLUE + "Password Tips ", 53),
+ BookLine("A good password should be", 54),
+ BookLine("easily remembered by", 55),
+ BookLine("yourself but not easily", 56),
+ BookLine("guessed by anyone else.", 57),
+ BookLine("Choose a password that has", 59),
+ BookLine("both letters and numbers in", 60),
+ BookLine("it for the best security but", 61),
+ BookLine("don't make it so hard that", 62),
+ BookLine("you'll forget it!", 63),
+ BookLine("Never write your password", 65),
+ BookLine("down or leave it in a text file", 66),
+ BookLine("on your computer, someone", 67)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine("could find it easily!", 38),
+ BookLine("Never tell anyone your", 40),
+ BookLine("password in " + GameWorld.settings!!.name + ", not", 41),
+ BookLine("even a Moderator of any", 42),
+ BookLine("kind.", 43)
+ ),
+ Page(
+ BookLine("" + BLUE + "Recovery Questions ", 53),
+ BookLine("Ideally your recovery", 54),
+ BookLine("questions should be easily", 55),
+ BookLine("remembered by you but not", 56),
+ BookLine("guessable by anyone who", 57),
+ BookLine("may know you or given", 58),
+ BookLine("away in conversation. Choose", 59),
+ BookLine("things that do not change,", 60),
+ BookLine("like dates or names but don't", 61),
+ BookLine("choose obvious ones like your", 62),
+ BookLine("birthday and your sister or", 63),
+ BookLine("bother's name because lots", 64),
+ BookLine("of people will know that.", 65)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine("" + BLUE + "Recovery Questions ", 38),
+ BookLine("Bear in mind that recovery", 39),
+ BookLine("questions will take 14 days to", 40),
+ BookLine("become active after you have", 41),
+ BookLine("applied for them to be", 42),
+ BookLine("changed. This is to protect", 43),
+ BookLine("your account from hijackers", 44),
+ BookLine("who may change them.", 45),
+ BookLine("Never give your password to", 47),
+ BookLine("ANYONE. This includes", 48),
+ BookLine("your friends, family, and", 49),
+ BookLine("moderators in game.", 50),
+ BookLine("Never leave your account", 52)
+ ),
+ Page(
+ BookLine("logged on if you are away", 53),
+ BookLine("from the computer, it only", 54),
+ BookLine("takes 5 seconds to steal your", 55),
+ BookLine("account!", 56)
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine("" + BLUE + "Stronghold of Security ", 38),
+ BookLine("Location: The Stronghold of", 39),
+ BookLine("Security, as we call it, is", 40),
+ BookLine("located under the village filled", 41),
+ BookLine("with Barbarians. It was", 42),
+ BookLine("found after they moved their", 43),
+ BookLine("mining operations and a", 44),
+ BookLine("miner fell through. The", 45),
+ BookLine("Stronghold contains many", 46),
+ BookLine("challenges. Both for those", 47),
+ BookLine("who enjoy combat and those", 48),
+ BookLine("who enjoy challenges of the", 49),
+ BookLine("mind. This book will be very", 50),
+ BookLine("useful to you in your travels", 51),
+ BookLine("there.", 52)
+ ),
+ Page(
+ BookLine("You can find the Stronghold", 53),
+ BookLine("of Security by looking for a", 54),
+ BookLine("hole in Barbarian Village.", 55),
+ BookLine("Be sure to take your combat", 56),
+ BookLine("equipment though!", 57)
+ )
+ )
+ )
+ private fun display(player: Player, pageNum: Int, buttonID: Int) : Boolean {
+ BookInterface.pageSetup(player, BookInterface.FANCY_BOOK_2_27, TITLE, CONTENTS)
+ return true
+ }
+ }
+
+ override fun defineListeners() {
+ on(Items.SECURITY_BOOK_9003, IntType.ITEM, "read") { player, _ ->
+ BookInterface.openBook(player, BookInterface.FANCY_BOOK_2_27, ::display)
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/book/StrongholdNotes.kt b/Server/src/main/content/global/handlers/item/book/StrongholdNotes.kt
new file mode 100644
index 000000000..4a67ee93f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/book/StrongholdNotes.kt
@@ -0,0 +1,136 @@
+package content.global.handlers.item.book
+
+import content.global.handlers.iface.BookInterface
+import content.global.handlers.iface.BookLine
+import content.global.handlers.iface.Page
+import content.global.handlers.iface.PageSet
+import core.api.setAttribute
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import org.rs09.consts.Items
+
+/**
+ * Stronghold Notes Book
+ * https://www.youtube.com/watch?v=gX1jCcfY0l8
+ * @author ovenbreado
+ */
+class StrongholdNotes : InteractionListener {
+ companion object {
+ private const val BLUE = " "
+ private const val TITLE = "Stronghold of Security - Notes"
+ private val CONTENTS = arrayOf(
+ PageSet(
+ Page(
+ BookLine(
+ "Chapters " + BLUE + "Description " + BLUE + "Level 1 " + BLUE + "Level 2 " + BLUE + "Level 3 " + BLUE + "Level 4 " + BLUE + "Navigation " + BLUE + "Diary ",
+ 38
+ )
+ ), Page(
+ BookLine(
+ BLUE + "Description This stronghold was unearthed by a miner prospecting for new ores around the Barbarian Village. After gathering some equipment he ventured into the maze of tunnels and was missing for a long time. He finally emerged along with copious notes refarding the new beasts and strange experiences which had befallen him. He also mentioned that there was treasure to be had,",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ "but no one has been able to wring a word from him about this, he simply flapped his arms and slapped his head. This book details his notes and my diary of exploration. I am exploring to see if I can find out more...",
+ 38
+ )
+ ), Page(
+ BookLine(
+ BLUE + "Level 1 As well as goblins, creatures like a man but also like a cow infest this place! I have never seen anything like this before. The area itself is reminiscent of frontline castles, with many walls, doors and skeletons of dead enemies. I'm sure I hear voices in my head each time I pass through the gates. I have dubbed this level War as it seems like an eternal battleground. I found only",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(BookLine("one small peaceful area here.", 38)),
+ Page(
+ BookLine(
+ BLUE + "Level 2 My supplies are running low and I find myself in barren passages with seemingly endless malnourished beasts attacking me, revenous for food. Nothing appears to be able to grow, many adventurers have died through lack of food and the very air appears to suck vitality from me. I've come to call this place famine.",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "Level 3 Just breathing in this place makes me shudder at the thought of what foul disease I may contract. The walls and floor ooze and pulsate like something pox ridden. There is a very strange beast whom I narrowly escaped from. At first I thought it to be a cross between a cow and a sheep, something domesticated... but when it looked up at me I was overcome with weakness and",
+ 38
+ )
+ ),
+ Page(
+ BookLine(
+ "barely got way with my life! Luckily I found a small place where I could heal myself and rest a while. I have named this area pestilence for it reeks with decay.",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "Level 4 On my first escapade into this place I was utterly shocked. The adventurers who had come before me must have made up a tiny proportion of the skeletons of the dead. Nothing truely alive exists here, even those beings who do wander the halls are not alive as such, but they do know that I am and I get the distinct impression that were they to have their way, I would not",
+ 38
+ )
+ ),
+ Page(
+ BookLine(
+ "be for long! Death is everywhere and thus I shall name this place. There is one small place of life, which was gladdening to find and very worth my while!",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "Navigation After getting lost several times I finally worked out the key to all the ladders and chains around this death infested place. All ropes and chains will take you to the start of the level that you are on. However most ladders will simply take you to the level above. The one esception is the ladder in the bottom level treasure room, which appears to lead through several extremely twisty passages.",
+ 38
+ )
+ ),
+ Page(
+ BookLine(
+ "and eventually takes you out of the dungeon completely. The portals may be used if you are of sufficient level or have already claimed your reward from the treasure room.",
+ 38
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ BLUE + "Diary Day 1 Today I set out to find out more about this place. From my research I knew about the sentient doors, imbued by some unkown force to talk to you and ask questions before they will let you pass. I have so far passed these doors without incident, giving the correct answer seems to work a treat. Day 2",
+ 38
+ )
+ ),
+ Page(
+ BookLine(
+ "I have fought my way through the fearsome beasts on the first level and am preparing myself to journey deeper. I hope that things are not too difficult further on as I am already sick of bread and cheese for dinner. Day 3 I ventured down into the famine level today... I was wounded and have returned to the relative safety of the level above. I am going to",
+ 53
+ )
+ )
+ ),
+ PageSet(
+ Page(
+ BookLine(
+ "try to make my way out through the goblins and mancow things... I hope I make it.....",
+ 38
+ )
+ )
+ )
+ )
+
+ private fun display(player: Player, pageNum: Int, buttonID: Int) : Boolean {
+ BookInterface.pageSetup(player, BookInterface.FANCY_BOOK_2_27, TITLE, CONTENTS)
+ return true
+ }
+ }
+
+ override fun defineListeners() {
+ on(Items.STRONGHOLD_NOTES_9004, IntType.ITEM, "read") { player, _ ->
+ BookInterface.openBook(player, BookInterface.FANCY_BOOK_2_27, ::display)
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/equipment/BarrowsEquipmentRegister.kt b/Server/src/main/content/global/handlers/item/equipment/BarrowsEquipmentRegister.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/node/entity/equipment/BarrowsEquipmentRegister.kt
rename to Server/src/main/content/global/handlers/item/equipment/BarrowsEquipmentRegister.kt
index 8e3294018..d7e57ab9e 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/equipment/BarrowsEquipmentRegister.kt
+++ b/Server/src/main/content/global/handlers/item/equipment/BarrowsEquipmentRegister.kt
@@ -1,6 +1,5 @@
-package rs09.game.node.entity.equipment
+package content.global.handlers.item.equipment
-import rs09.game.node.entity.combat.equipment.EquipmentDegrader
import core.plugin.Initializable
import core.plugin.Plugin
diff --git a/Server/src/main/content/global/handlers/item/equipment/CrystalEquipmentRegister.kt b/Server/src/main/content/global/handlers/item/equipment/CrystalEquipmentRegister.kt
new file mode 100644
index 000000000..4504e9dfd
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/CrystalEquipmentRegister.kt
@@ -0,0 +1,13 @@
+package content.global.handlers.item.equipment
+
+import core.api.StartupListener
+import org.rs09.consts.Items
+
+class CrystalEquipmentRegister : StartupListener {
+ val shield: Array = arrayOf(Items.NEW_CRYSTAL_SHIELD_4224, Items.CRYSTAL_SHIELD_FULL_4225, Items.CRYSTAL_SHIELD_9_10_4226, Items.CRYSTAL_SHIELD_8_10_4227, Items.CRYSTAL_SHIELD_7_10_4228, Items.CRYSTAL_SHIELD_6_10_4229, Items.CRYSTAL_SHIELD_5_10_4230, Items.CRYSTAL_SHIELD_4_10_4231, Items.CRYSTAL_SHIELD_3_10_4232, Items.CRYSTAL_SHIELD_2_10_4233, Items.CRYSTAL_SHIELD_1_10_4234, Items.CRYSTAL_SEED_4207)
+ val bow: Array = arrayOf(Items.NEW_CRYSTAL_BOW_4212, Items.CRYSTAL_BOW_FULL_4214, Items.CRYSTAL_BOW_9_10_4215, Items.CRYSTAL_BOW_8_10_4216, Items.CRYSTAL_BOW_7_10_4217, Items.CRYSTAL_BOW_6_10_4218, Items.CRYSTAL_BOW_5_10_4219, Items.CRYSTAL_BOW_4_10_4220, Items.CRYSTAL_BOW_3_10_4221, Items.CRYSTAL_BOW_2_10_4222, Items.CRYSTAL_BOW_1_10_4223, Items.CRYSTAL_SEED_4207)
+ override fun startup() {
+ EquipmentDegrader.registerSet(1200, shield)
+ EquipmentDegrader.registerSet(1200, bow)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/combat/equipment/EquipmentDegrader.kt b/Server/src/main/content/global/handlers/item/equipment/EquipmentDegrader.kt
similarity index 84%
rename from Server/src/main/kotlin/rs09/game/node/entity/combat/equipment/EquipmentDegrader.kt
rename to Server/src/main/content/global/handlers/item/equipment/EquipmentDegrader.kt
index 2e5589d53..2da19f410 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/combat/equipment/EquipmentDegrader.kt
+++ b/Server/src/main/content/global/handlers/item/equipment/EquipmentDegrader.kt
@@ -1,10 +1,11 @@
-package rs09.game.node.entity.combat.equipment
+package content.global.handlers.item.equipment
+import core.api.addItemOrDrop
+import core.api.getNext
+import core.api.isLast
+import core.api.isNextLast
import core.game.node.entity.player.Player
import core.game.node.item.Item
-import org.rs09.primextends.getNext
-import org.rs09.primextends.isLast
-import org.rs09.primextends.isNextLast
/**
* Handles equipment degrading
@@ -51,24 +52,27 @@ class EquipmentDegrader{
fun Item.degrade(slot: Int){ //extension function that degrades items
val set = getDegradableSet(this.id)
+ val charges = itemCharges.getOrElse(this.id) {1000}
+ if (this.charge > charges)
+ charge = charges
this.charge--
if(set?.indexOf(this.id) == 0 && !this.name.contains("100")){
charge = 0
}
if(this.charge <= 0) {
- val charges = itemCharges.getOrElse(this.id, { 1000 })
+ val charges = itemCharges.getOrElse(this.id) { 1000 }
if (set?.size!! > 2) {
p?.equipment?.remove(this)
p?.sendMessage("Your $name has degraded.")
- if (set.isNextLast(set.indexOf(this.id))) {
- p?.inventory?.add(Item(set.getNext(this.id)))
+ if (set.isNextLast(this.id)) {
+ p?.let { addItemOrDrop(it, set.getNext(this.id)) }
p?.sendMessage("Your $name has broken.")
} else {
p?.equipment?.add(Item(set.getNext(this.id), 1, charges), slot, false, false)
p?.equipment?.refresh()
}
} else if (set.size == 2) {
- if(set.isLast(set.indexOf(this.id))){
+ if(set.isLast(this.id)){
p?.equipment?.remove(this)
p?.sendMessage("Your $name degrades into dust.")
} else {
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/equipment/PVPEquipmentRegister.kt b/Server/src/main/content/global/handlers/item/equipment/PVPEquipmentRegister.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/node/entity/equipment/PVPEquipmentRegister.kt
rename to Server/src/main/content/global/handlers/item/equipment/PVPEquipmentRegister.kt
index 48762e4bd..81d957626 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/equipment/PVPEquipmentRegister.kt
+++ b/Server/src/main/content/global/handlers/item/equipment/PVPEquipmentRegister.kt
@@ -1,6 +1,5 @@
-package rs09.game.node.entity.equipment
+package content.global.handlers.item.equipment
-import rs09.game.node.entity.combat.equipment.EquipmentDegrader
import core.plugin.Initializable
import core.plugin.Plugin
diff --git a/Server/src/main/java/core/game/interaction/item/brawling_gloves/BrawlingGloves.java b/Server/src/main/content/global/handlers/item/equipment/brawling_gloves/BrawlingGloves.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/brawling_gloves/BrawlingGloves.java
rename to Server/src/main/content/global/handlers/item/equipment/brawling_gloves/BrawlingGloves.java
index 385541b5c..6f09426f7 100644
--- a/Server/src/main/java/core/game/interaction/item/brawling_gloves/BrawlingGloves.java
+++ b/Server/src/main/content/global/handlers/item/equipment/brawling_gloves/BrawlingGloves.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.brawling_gloves;
+package content.global.handlers.item.equipment.brawling_gloves;
import core.cache.def.impl.ItemDefinition;
import core.game.node.entity.skill.Skills;
diff --git a/Server/src/main/java/core/game/interaction/item/brawling_gloves/BrawlingGlovesManager.java b/Server/src/main/content/global/handlers/item/equipment/brawling_gloves/BrawlingGlovesManager.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/brawling_gloves/BrawlingGlovesManager.java
rename to Server/src/main/content/global/handlers/item/equipment/brawling_gloves/BrawlingGlovesManager.java
index 095e3c8f1..8623ca4fe 100644
--- a/Server/src/main/java/core/game/interaction/item/brawling_gloves/BrawlingGlovesManager.java
+++ b/Server/src/main/content/global/handlers/item/equipment/brawling_gloves/BrawlingGlovesManager.java
@@ -1,7 +1,7 @@
-package core.game.interaction.item.brawling_gloves;
+package content.global.handlers.item.equipment.brawling_gloves;
-import api.LoginListener;
-import api.PersistPlayer;
+import core.api.LoginListener;
+import core.api.PersistPlayer;
import core.cache.def.impl.ItemDefinition;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/content/global/handlers/item/equipment/fistofguthixgloves/FOGGlovesListener.kt b/Server/src/main/content/global/handlers/item/equipment/fistofguthixgloves/FOGGlovesListener.kt
new file mode 100644
index 000000000..9b0166e2e
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/fistofguthixgloves/FOGGlovesListener.kt
@@ -0,0 +1,23 @@
+package content.global.handlers.item.equipment.fistofguthixgloves
+
+import core.api.toIntArray
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import org.rs09.consts.Items
+import kotlin.math.min
+
+private val FOG_GLOVES = (Items.IRIT_GLOVES_12856..Items.EARTH_RUNECRAFTING_GLOVES_12865).toIntArray()
+private val MAX_CHARGES = intArrayOf(100, 100, 100, 100, 1000, 1000, 1000, 1000, 1000, 1000)
+
+/**
+ * Listener for Fist of Guthix gloves inspect option.
+ * @author RiL
+ */
+class FOGGlovesListener : InteractionListener {
+ override fun defineListeners() {
+ on(FOG_GLOVES, IntType.ITEM, "inspect") { player, node ->
+ player.sendMessage("${node.name}: ${min(node.asItem().charge, MAX_CHARGES[node.id - Items.IRIT_GLOVES_12856])} charge left.")
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/equipment/fistofguthixgloves/FOGGlovesManager.kt b/Server/src/main/content/global/handlers/item/equipment/fistofguthixgloves/FOGGlovesManager.kt
new file mode 100644
index 000000000..768013c51
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/fistofguthixgloves/FOGGlovesManager.kt
@@ -0,0 +1,37 @@
+package content.global.handlers.item.equipment.fistofguthixgloves
+
+import core.api.Container
+import core.api.EquipmentSlot
+import core.api.getItemFromEquipment
+import core.api.removeItem
+import core.game.node.entity.player.Player
+import core.tools.colorize
+import org.rs09.consts.Items
+import kotlin.math.min
+
+private val MAX_CHARGES = intArrayOf(100, 100, 100, 100, 1000, 1000, 1000, 1000, 1000, 1000)
+
+/**
+ * Manager to help updating Fist of Guthix glove charges.
+ * @author RiL
+ */
+class FOGGlovesManager {
+ companion object{
+ /**
+ * Reduces the charge of the hand equip by [charges].
+ * Return the number of used charges.
+ */
+ @JvmStatic
+ fun updateCharges(player: Player, charges: Int = 1): Int {
+ val gloves = getItemFromEquipment(player, EquipmentSlot.HANDS) ?: return 0
+ gloves.charge = min(gloves.charge, MAX_CHARGES[gloves.id - Items.IRIT_GLOVES_12856])
+ if (gloves.charge - charges <= 0) {
+ removeItem(player, gloves, Container.EQUIPMENT)
+ player.sendMessage(colorize("%RThe charges in your gloves have been used up and they crumble to dust."))
+ return gloves.charge
+ }
+ gloves.charge -= charges
+ return charges
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/AncientMaceSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/AncientMaceSpecialHandler.java
similarity index 86%
rename from Server/src/main/java/core/game/node/entity/combat/special/AncientMaceSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/AncientMaceSpecialHandler.java
index 60874e957..9c04d990f 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/AncientMaceSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/AncientMaceSpecialHandler.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Animation;
@@ -11,6 +11,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the ancient mace special attack "Favour of the War God".
@@ -54,7 +57,7 @@ public final class AncientMaceSpecialHandler extends MeleeSwingHandler implement
state.setStyle(CombatStyle.MELEE);
int hit = 0;
if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.1, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1));
+ hit = RandomFunction.random(calculateHit(entity, victim, 1) + 1);
if (entity.getSkills().getPrayerPoints() < entity.getSkills().getStaticLevel(5)) {
entity.getSkills().setPrayerPoints(entity.getSkills().getPrayerPoints() + hit);
}
@@ -72,6 +75,7 @@ public final class AncientMaceSpecialHandler extends MeleeSwingHandler implement
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.GOBLIN_MACE_3592);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/BackstabSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/BackstabSpecialHandler.java
similarity index 76%
rename from Server/src/main/java/core/game/node/entity/combat/special/BackstabSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/BackstabSpecialHandler.java
index 810f86c62..2baaab97e 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/BackstabSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/BackstabSpecialHandler.java
@@ -1,10 +1,10 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Animation;
@@ -12,6 +12,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Bone dagger special attack "Backstab".
@@ -56,13 +59,10 @@ public final class BackstabSpecialHandler extends MeleeSwingHandler implements P
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- double accuracy = 1.0;
- if (!victim.getProperties().getCombatPulse().isAttacking()) {
- accuracy = 1.75;
- }
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, accuracy, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.0));
- victim.getSkills().updateLevel(Skills.DEFENCE, -hit / 10, 0);
+ if (!victim.getProperties().getCombatPulse().isAttacking() || isAccurateImpact(entity, victim, CombatStyle.MELEE)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
+ if (victim.getSkills().getStaticLevel(Skills.DEFENCE) >= victim.getSkills().getDynamicLevels()[Skills.DEFENCE])
+ victim.getSkills().updateLevel(Skills.DEFENCE, -hit, 0);
}
state.setEstimatedHit(hit);
return 1;
@@ -70,6 +70,7 @@ public final class BackstabSpecialHandler extends MeleeSwingHandler implements P
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.DTTD_BONE_DAGGER_STAB_1084);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/ChainhitSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/ChainhitSpecialHandler.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/combat/special/ChainhitSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/ChainhitSpecialHandler.java
index c38db4603..b3e276dcd 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/ChainhitSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ChainhitSpecialHandler.java
@@ -1,9 +1,7 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
-import core.game.node.entity.combat.BattleState;
-import core.game.node.entity.combat.CombatStyle;
-import core.game.node.entity.combat.DeathTask;
+import core.game.node.entity.combat.*;
import core.game.node.entity.combat.ImpactHandler.HitsplatType;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.impl.Projectile;
@@ -17,13 +15,15 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
-import rs09.game.world.GameWorld;
-import rs09.game.world.repository.Repository;
+import core.game.world.GameWorld;
+import core.game.world.repository.Repository;
+import org.rs09.consts.Sounds;
import java.util.Iterator;
import java.util.List;
+import static core.api.ContentAPIKt.playGlobalAudio;
+
/**
* Handles the Rune throwing axe special attack "Chain-hit".
* @author Emperor
@@ -31,6 +31,13 @@ import java.util.List;
@Initializable
public final class ChainhitSpecialHandler extends RangeSwingHandler implements Plugin {
+ /**
+ * Constructs a new {@code ChainhitSpecialHandler} {@code Object}.
+ */
+ public ChainhitSpecialHandler() {
+ super(SwingHandlerFlag.IGNORE_PRAYER_BOOSTS_DAMAGE);
+ }
+
/**
* The sp::ecial energy required.
*/
@@ -104,6 +111,7 @@ public final class ChainhitSpecialHandler extends RangeSwingHandler implements P
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.CHAINSHOT_2528);
entity.visualize(ANIMATION, GRAPHIC);
int speed = (int) (32 + (entity.getLocation().getDistance(victim.getLocation()) * 5));
Projectile.create(entity, victim, 258, 40, 36, 32, speed, 5, 11).send();
@@ -155,7 +163,7 @@ public final class ChainhitSpecialHandler extends RangeSwingHandler implements P
public boolean pulse() {
BattleState bs = new BattleState(entity, e);
bs.setMaximumHit(calculateHit(player, e, 1.0));
- bs.setEstimatedHit(RandomFunction.RANDOM.nextInt(bs.getMaximumHit()));
+ bs.setEstimatedHit(RandomFunction.random(bs.getMaximumHit() + 1));
handleHit(victim, e, player, bs);
ChainhitSpecialHandler.super.visualizeImpact(player, e, bs);
return true;
diff --git a/Server/src/main/java/core/game/node/entity/combat/handlers/ChinchompaSwingHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/ChinchompaSwingHandler.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/combat/handlers/ChinchompaSwingHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/ChinchompaSwingHandler.java
index 0bed935e6..0bd2e6d33 100644
--- a/Server/src/main/java/core/game/node/entity/combat/handlers/ChinchompaSwingHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ChinchompaSwingHandler.java
@@ -1,9 +1,7 @@
-package core.game.node.entity.combat.handlers;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
-import core.game.node.entity.combat.BattleState;
-import core.game.node.entity.combat.CombatStyle;
-import core.game.node.entity.combat.InteractionType;
+import core.game.node.entity.combat.*;
import core.game.node.entity.combat.equipment.Ammunition;
import core.game.node.entity.combat.equipment.RangeWeapon;
import core.game.node.entity.combat.equipment.Weapon;
@@ -14,7 +12,6 @@ import core.game.node.entity.skill.Skills;
import core.game.world.map.RegionManager;
import core.game.world.update.flag.context.Graphics;
import core.tools.RandomFunction;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
import java.util.List;
@@ -34,13 +31,6 @@ public final class ChinchompaSwingHandler extends RangeSwingHandler {
*/
private static final Graphics END_GRAPHIC = new Graphics(157, 96);
- /**
- * Constructs a new {@code ChinchompaSwingHandler} {@code Object}.
- */
- private ChinchompaSwingHandler() {
- super();
- }
-
@Override
public int swing(Entity entity, Entity victim, BattleState state) {
boolean multi = entity.getProperties().isMultiZone() && victim.getProperties().isMultiZone();
@@ -75,7 +65,7 @@ public final class ChinchompaSwingHandler extends RangeSwingHandler {
s.setStyle(CombatStyle.RANGE);
int hit = 0;
if (isAccurateImpact(entity, e, CombatStyle.RANGE)) {
- hit = RandomFunction.random(calculateHit(entity, e, 1.0));
+ hit = RandomFunction.random(calculateHit(entity, e, 1.0) + 1);
}
s.setEstimatedHit(hit);
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/CleaveSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/CleaveSpecialHandler.java
similarity index 80%
rename from Server/src/main/java/core/game/node/entity/combat/special/CleaveSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/CleaveSpecialHandler.java
index 2cbae7577..f728dbaf2 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/CleaveSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/CleaveSpecialHandler.java
@@ -1,17 +1,19 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Represents the cleave special handler.
@@ -55,16 +57,16 @@ public final class CleaveSpecialHandler extends MeleeSwingHandler implements Plu
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.18, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.2203));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.25) + 1);
}
state.setEstimatedHit(hit);
- entity.asPlayer().getAudioManager().send(new Audio(2529), true);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.CLEAVE_2529);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/ClobberSpecialHandler.kt b/Server/src/main/content/global/handlers/item/equipment/special/ClobberSpecialHandler.kt
new file mode 100644
index 000000000..31629189e
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ClobberSpecialHandler.kt
@@ -0,0 +1,114 @@
+package content.global.handlers.item.equipment.special
+
+import core.ServerConstants
+import core.api.playAudio
+import core.game.container.impl.EquipmentContainer
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.combat.MeleeSwingHandler
+import core.game.node.entity.combat.equipment.Weapon
+import core.game.node.entity.impl.Animator.Priority
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.audio.Audio
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.plugin.Initializable
+import core.plugin.Plugin
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+
+/**
+ * Handles the Dragon axe special attack.
+ * The OSRS special attack can be used instead by setting dragon_axe_use_osrs_spec server constant to true
+ * @author Crash
+ */
+@Initializable
+class ClobberSpecialHandler : MeleeSwingHandler(), Plugin {
+ override fun newInstance(arg: Any?): Plugin {
+ CombatStyle.MELEE.swingHandler.register(ITEM.id, this)
+ return this
+ }
+
+ override fun fireEvent(identifier: String, vararg args: Any): Any {
+ return if (ServerConstants.DRAGON_AXE_USE_OSRS_SPEC && identifier == "instant_spec") true else Unit
+ }
+
+ override fun visualize(entity: Entity, victim: Entity?, state: BattleState?) {
+ entity.visualize(ANIMATION, GRAPHIC)
+ }
+
+ override fun swing(entity: Entity?, victim: Entity?, state: BattleState?): Int {
+ return if (ServerConstants.DRAGON_AXE_USE_OSRS_SPEC) {
+ swingOSRS(entity)
+ } else {
+ swingAuthentic(entity, victim, state)
+ }
+ }
+
+ /**
+ * https://runescape.wiki/w/Dragon_hatchet?oldid=1107166
+ */
+ private fun swingAuthentic(entity: Entity?, victim: Entity?, state: BattleState?): Int {
+ val player = entity as? Player ?: return -1
+ if (victim == null) return -1
+ if (state == null) return -1
+ if (!player.settings.drainSpecial(SPECIAL_ENERGY)) return -1
+
+ state.style = CombatStyle.MELEE
+ state.weapon = Weapon(player.equipment[EquipmentContainer.SLOT_WEAPON])
+ var hit = 0
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE)) {
+ val max = calculateHit(entity, victim, 1.0)
+ state.maximumHit = max
+ hit = RandomFunction.random(max + 1)
+ }
+ state.estimatedHit = hit
+
+ victim.skills.updateLevel(Skills.DEFENCE, -hit, 0)
+ victim.skills.updateLevel(Skills.MAGIC, -hit, 0)
+
+ playAudio(player, Sounds.CLOBBER_2531, 20)
+ return 1
+ }
+
+ /**
+ * https://oldschool.runescape.wiki/w/Dragon_axe
+ */
+ private fun swingOSRS(entity: Entity?): Int {
+ val player = entity as? Player ?: return -1
+ if (!player.settings.drainSpecial(SPECIAL_ENERGY)) return -1
+
+ player.sendChat("Chop chop!")
+ player.skills.updateLevel(Skills.WOODCUTTING, 3, player.skills.getStaticLevel(Skills.WOODCUTTING) + 3)
+ visualize(player, null, null)
+ playAudio(player, Sounds.CLOBBER_2531, 20)
+ return -1
+ }
+
+ companion object {
+ /**
+ * The special energy required.
+ */
+ private const val SPECIAL_ENERGY = 100
+
+ /**
+ * The attack animation.
+ */
+ private val ANIMATION = Animation(2876, Priority.HIGH)
+
+ /**
+ * The graphic.
+ */
+ private val GRAPHIC = Graphics(479, 96)
+
+ /**
+ * The item.
+ */
+ private val ITEM = Item(Items.DRAGON_AXE_6739)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/DescentOfDarknessSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/DescentOfDarknessSpecialHandler.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/combat/special/DescentOfDarknessSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/DescentOfDarknessSpecialHandler.java
index 6eb5d076f..75ae1f8a8 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/DescentOfDarknessSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/DescentOfDarknessSpecialHandler.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.cache.def.impl.ItemDefinition;
import core.game.node.entity.Entity;
@@ -10,12 +10,14 @@ import core.game.node.entity.combat.equipment.Weapon;
import core.game.node.entity.combat.equipment.Weapon.WeaponType;
import core.game.node.entity.impl.Projectile;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
+import core.game.node.entity.combat.RangeSwingHandler;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Represents the descent of darkness sepcial handler.
@@ -28,7 +30,7 @@ public final class DescentOfDarknessSpecialHandler extends RangeSwingHandler imp
/**
* The special energy required.
*/
- private static final int SPECIAL_ENERGY = 65;
+ private static final int SPECIAL_ENERGY = 55;
/**
* The descent of dragons projectile.
@@ -100,13 +102,13 @@ public final class DescentOfDarknessSpecialHandler extends RangeSwingHandler imp
state.setMaximumHit(max);
int hit = minDamage;
if (isAccurateImpact(entity, victim, CombatStyle.RANGE, 1.15, 1.0)) {
- hit += RandomFunction.random(max - minDamage);
+ hit += RandomFunction.random(max - minDamage + 1);
}
state.setEstimatedHit(hit);
if (w.getType() == WeaponType.DOUBLE_SHOT) {
hit = minDamage;
if (isAccurateImpact(entity, victim, CombatStyle.RANGE, 1.15, 1.0)) {
- hit += RandomFunction.random(max - minDamage);
+ hit += RandomFunction.random(max - minDamage + 1);
}
state.setSecondaryHit(hit);
}
@@ -121,8 +123,6 @@ public final class DescentOfDarknessSpecialHandler extends RangeSwingHandler imp
start = state.getAmmunition().getStartGraphics();
if (state.isFrozen()) {
if (entity instanceof Player) {
- entity.asPlayer().getAudioManager().send(new Audio(3736), true);
- entity.asPlayer().getAudioManager().send(new Audio(3737), true);
}
DRAGON_PROJECTILE.copy(entity, victim, 5).send();
} else {
@@ -145,6 +145,8 @@ public final class DescentOfDarknessSpecialHandler extends RangeSwingHandler imp
@Override
public void visualizeImpact(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(victim.getLocation(), Sounds.DARKBOW_SHADOW_ATTACK_3736, 20);
+ playGlobalAudio(victim.getLocation(), Sounds.DARKBOW_SHADOW_IMPACT_3737, 40);
victim.visualize(victim.getProperties().getDefenceAnimation(), state.isFrozen() ? DRAGON_IMPACT : DARKNESS_IMPACT);
}
}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/DragonfireSwingHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/DragonfireSwingHandler.java
new file mode 100644
index 000000000..0497836a8
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/DragonfireSwingHandler.java
@@ -0,0 +1,209 @@
+package content.global.handlers.item.equipment.special;
+
+import core.game.container.impl.EquipmentContainer;
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.CombatSwingHandler;
+import core.game.node.entity.combat.InteractionType;
+import core.game.node.entity.combat.equipment.SwitchAttack;
+import core.game.node.entity.impl.Projectile;
+import core.game.node.entity.npc.NPC;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.world.GameWorld;
+import core.game.world.update.flag.context.Animation;
+import core.game.world.update.flag.context.Graphics;
+import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
+
+/**
+ * Handles dragonfire combat.
+ * @author Emperor
+ */
+public class DragonfireSwingHandler extends CombatSwingHandler {
+
+ /**
+ * If the NPC has to be in melee range.
+ */
+ private boolean meleeRange;
+
+ /**
+ * The maximum hit.
+ */
+ private int maximumHit;
+
+ /**
+ * The attack data.
+ */
+ private SwitchAttack attack;
+
+ /**
+ * IF the dragon attack is firey or icey.
+ */
+ private boolean fire;
+
+ /**
+ * Constructs a new {@code DragonfireSwingHandler} {@code Object}.
+ * @param meleeRange If the NPC has to be in melee range.
+ * @param maximumHit The maximum hit.
+ * @param fire if firey.
+ */
+ public DragonfireSwingHandler(boolean meleeRange, int maximumHit, SwitchAttack attack, boolean fire) {
+ super(CombatStyle.MAGIC);
+ this.meleeRange = meleeRange;
+ this.maximumHit = maximumHit;
+ this.attack = attack;
+ this.fire = fire;
+ }
+
+ /**
+ * Gets the switch attack instance for a dragonfire attack.
+ * @param meleeRange If the attack is melee range.
+ * @param maximumHit The maximum hit.
+ * @param animation The animation.
+ * @param startGraphic The start graphic.
+ * @param endGraphic The end graphic.
+ * @param projectile The projectile.
+ * @return The switch attack instance.
+ */
+ public static SwitchAttack get(boolean meleeRange, int maximumHit, Animation animation, Graphics startGraphic, Graphics endGraphic, Projectile projectile) {
+ SwitchAttack attack = new SwitchAttack(null, animation, startGraphic, endGraphic, projectile).setUseHandler(true);
+ attack.setHandler(new DragonfireSwingHandler(meleeRange, maximumHit, attack, true));
+ return attack;
+ }
+
+ /**
+ * Gets the switch attack instance for a dragonfire attack.
+ * @param meleeRange If the attack is melee range.
+ * @param maximumHit The maximum hit.
+ * @param animation The animation.
+ * @param startGraphic The start graphic.
+ * @param endGraphic The end graphic.
+ * @param projectile The projectile.
+ * @return The switch attack instance.
+ */
+ public static SwitchAttack get(boolean meleeRange, int maximumHit, Animation animation, Graphics startGraphic, Graphics endGraphic, Projectile projectile, boolean fire) {
+ SwitchAttack attack = new SwitchAttack(null, animation, startGraphic, endGraphic, projectile).setUseHandler(true);
+ attack.setHandler(new DragonfireSwingHandler(meleeRange, maximumHit, attack, fire));
+ return attack;
+ }
+
+ @Override
+ public InteractionType canSwing(Entity entity, Entity victim) {
+ if (meleeRange) {
+ return CombatStyle.MELEE.getSwingHandler().canSwing(entity, victim);
+ }
+ return CombatStyle.MAGIC.getSwingHandler().canSwing(entity, victim);
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ int max = calculateHit(entity, victim, 1.0);
+ int hit = RandomFunction.random(max + 1);
+ assert state != null;
+ state.setMaximumHit(max);
+ state.setStyle(CombatStyle.MAGIC);
+ state.setEstimatedHit(hit);
+ if (meleeRange) {
+ return 1;
+ }
+ int ticks = 2 + (int) Math.floor(entity.getLocation().getDistance(victim.getLocation()) * 0.5);
+ entity.setAttribute("fireBreath", GameWorld.getTicks() + (ticks + 2));
+ return ticks;
+ }
+
+ @Override
+ public void visualize(Entity entity, Entity victim, BattleState state) {
+ entity.visualize(attack.getAnimation(), attack.getStartGraphic());
+ if (attack.getProjectile() != null) {
+ attack.getProjectile().copy(entity, victim, 5).send();
+ }
+ }
+
+ @Override
+ public void visualizeImpact(Entity entity, Entity victim, BattleState state) {
+ if (entity instanceof NPC && victim instanceof Player) {
+ Player p = (Player) victim;
+ Item shield = p.getEquipment().get(EquipmentContainer.SLOT_SHIELD);
+ if (shield != null && (shield.getId() == 11283 || shield.getId() == 11284)) {
+ if (shield.getId() == 11284) {
+ p.getEquipment().replace(new Item(11283), EquipmentContainer.SLOT_SHIELD);
+ shield = p.getEquipment().get(EquipmentContainer.SLOT_SHIELD);
+ shield.setCharge(0);
+ }
+ if (shield.getCharge() < 1000) {
+ shield.setCharge(shield.getCharge() + 20);
+ EquipmentContainer.updateBonuses(p);
+ p.getPacketDispatch().sendMessage("Your dragonfire shield glows more brightly.");
+ playAudio(p, Sounds.DRAGONSLAYER_ABSORB_FIRE_3740);
+ p.faceLocation(entity.getCenterLocation());
+ victim.visualize(Animation.create(6695), Graphics.create(1163));
+ } else {
+ p.getPacketDispatch().sendMessage("Your dragonfire shield is already fully charged.");
+ }
+ return;
+ }
+ }
+ if (!fire && !hasTimerActive(victim, "frozen:immunity") && RandomFunction.random(4) == 2) {
+ registerTimer(victim, spawnTimer("frozen", 16, true));
+ victim.graphics(Graphics.create(502));
+ }
+ Graphics graphic = attack != null ? attack.getEndGraphic() : null;
+ victim.visualize(victim.getProperties().getDefenceAnimation(), graphic);
+ }
+
+ @Override
+ public void impact(Entity entity, Entity victim, BattleState state) {
+ assert state != null;
+ int hit = state.getEstimatedHit();
+ if (hit > -1) {
+ victim.getImpactHandler().handleImpact(entity, hit, CombatStyle.MAGIC, state);
+ }
+ hit = state.getSecondaryHit();
+ if (hit > -1) {
+ victim.getImpactHandler().handleImpact(entity, hit, CombatStyle.MAGIC, state);
+ }
+ }
+
+ @Override
+ public void adjustBattleState(Entity entity, Entity victim, BattleState state) {
+ if (victim.isPlayer() && !fire) {
+ Item item = victim.asPlayer().getEquipment().get(EquipmentContainer.SLOT_SHIELD);
+ if (item != null && (item.getId() == 2890 || item.getId() == 9731) && state.getEstimatedHit() > 10) {
+ state.setEstimatedHit(RandomFunction.random(10));
+ }
+ }
+ CombatStyle style = state.getStyle();
+ super.adjustBattleState(entity, victim, state);
+ state.setStyle(style);
+ }
+
+ @Override
+ protected int getFormattedHit(Entity entity, Entity victim, BattleState state, int hit) {
+ return formatHit(victim, hit);
+ }
+
+ @Override
+ public int calculateAccuracy(Entity entity) {
+ return 4000;
+ }
+
+ @Override
+ public int calculateHit(Entity entity, Entity victim, double modifier) {
+ return calculateDragonfireMaxHit(victim, maximumHit, !fire, 0, true);
+ }
+
+ @Override
+ public int calculateDefence(Entity victim, Entity attacker) {
+ return CombatStyle.MAGIC.getSwingHandler().calculateDefence(victim, attacker);
+ }
+
+ @Override
+ public double getSetMultiplier(Entity e, int skillId) {
+ return 1.0;
+ }
+
+}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/EnergyDrainSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/EnergyDrainSpecialHandler.java
similarity index 81%
rename from Server/src/main/java/core/game/node/entity/combat/special/EnergyDrainSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/EnergyDrainSpecialHandler.java
index 2428593c7..4686eb2b8 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/EnergyDrainSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/EnergyDrainSpecialHandler.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.audio.Audio;
@@ -12,6 +12,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Abyssal whip's Energy drain special attack.
@@ -54,20 +57,20 @@ public final class EnergyDrainSpecialHandler extends MeleeSwingHandler implement
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.2, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.25, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1) + 1);
}
if (victim instanceof Player) {
((Player) victim).getSettings().updateRunEnergy(10);
((Player) entity).getSettings().updateRunEnergy(-10);
}
state.setEstimatedHit(hit);
- entity.asPlayer().getAudioManager().send(new Audio(2713), true);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.ENERGYDRAIN_2713);
entity.animate(ANIMATION);
victim.graphics(GRAPHIC);
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/ExcaliburSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/ExcaliburSpecialHandler.java
similarity index 88%
rename from Server/src/main/java/core/game/node/entity/combat/special/ExcaliburSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/ExcaliburSpecialHandler.java
index 86c8f3053..3ba8c9992 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/ExcaliburSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ExcaliburSpecialHandler.java
@@ -1,19 +1,20 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.container.impl.EquipmentContainer;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import core.game.node.entity.state.EntityState;
-import core.game.node.entity.state.impl.HealOverTimePulse;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
/**
* Handles the excalibur special attack.
@@ -62,13 +63,14 @@ public final class ExcaliburSpecialHandler extends MeleeSwingHandler implements
if (!p.getSettings().drainSpecial(SPECIAL_ENERGY))
return -1;
p.sendChat("For Camelot!");
+ playAudio(entity.asPlayer(), Sounds.SANCTUARY_2539);
p.visualize(ANIMATION, GRAPHIC);
switch(p.getEquipment().get(EquipmentContainer.SLOT_WEAPON).getId()) {
case 35: // Regular ol' excalibur
p.getSkills().updateLevel(Skills.DEFENCE, 8, p.getSkills().getStaticLevel(Skills.DEFENCE) + 8);
break;
case 14632: // enhanced excalibur
- p.getStateManager().set(EntityState.HEALOVERTIME,p,(int)15,(int)20,(int)5);
+ registerTimer(p, spawnTimer("healovertime", 3, 20, 4));
p.getSkills().updateLevel(Skills.DEFENCE,
(int)(p.getSkills().getStaticLevel(Skills.DEFENCE)*0.15),
(int)(p.getSkills().getStaticLevel(Skills.DEFENCE)*1.15));
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/FeintSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/FeintSpecialHandler.java
similarity index 76%
rename from Server/src/main/java/core/game/node/entity/combat/special/FeintSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/FeintSpecialHandler.java
index a2362766b..b85962790 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/FeintSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/FeintSpecialHandler.java
@@ -1,15 +1,18 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles Vesta's Longsword special attack, feint.
@@ -49,8 +52,9 @@ public final class FeintSpecialHandler extends MeleeSwingHandler implements Plug
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.0, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, RandomFunction.random(1.0, 2.50)));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.0, 0.25)) {
+ int minDamage = calculateHit(entity, victim, 0.2);
+ hit = minDamage + RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
}
state.setEstimatedHit(hit);
return 1;
@@ -58,6 +62,7 @@ public final class FeintSpecialHandler extends MeleeSwingHandler implements Plug
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.CLEAVE_2529);
entity.animate(ANIMATION);
}
}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/HamstringSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/HamstringSpecialHandler.java
new file mode 100644
index 000000000..6a89af4fc
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/HamstringSpecialHandler.java
@@ -0,0 +1,71 @@
+package content.global.handlers.item.equipment.special;
+
+import core.api.ContentAPIKt;
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.ImpactHandler;
+import core.game.node.entity.combat.RangeSwingHandler;
+import core.game.node.entity.player.Player;
+import core.game.system.timer.RSTimer;
+import core.game.system.timer.TimerFlag;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.tools.RandomFunction;
+import org.rs09.consts.Items;
+
+@Initializable
+public final class HamstringSpecialHandler extends RangeSwingHandler implements Plugin {
+ private static final int SPECIAL_ENERGY = 50;
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.RANGE.getSwingHandler().register(Items.MORRIGANS_THROWING_AXE_13883, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ Player p = (Player) entity;
+ configureRangeData(p, state);
+ if (state.getWeapon() == null || !Companion.hasAmmo(entity, state)) {
+ entity.getProperties().getCombatPulse().stop();
+ p.getSettings().toggleSpecialBar();
+ return -1;
+ }
+ if (!((Player) entity).getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ state.setStyle(CombatStyle.RANGE);
+ int max = calculateHit(entity, victim, 1.2);
+ state.setMaximumHit(max);
+ int hit = 0;
+ if (isAccurateImpact(entity, victim)) {
+ int minDamage = calculateHit(entity, victim, 0.2);
+ hit = minDamage + RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
+ }
+ state.setEstimatedHit(hit);
+ Companion.useAmmo(entity, state, victim.getLocation());
+ ContentAPIKt.registerTimer(victim, new RSTimer(100, "hamstrung", true, false, new TimerFlag[] { TimerFlag.ClearOnDeath } ) {
+ @Override
+ public void onRegister(Entity entity) {
+ if(entity instanceof Player) {
+ ((Player)entity).sendMessage("You've been hamstrung! For the next minute, your run energy will drain 4x faster.");
+ }
+ }
+
+ @Override
+ public boolean run(Entity entity) {
+ return false;
+ }
+
+ });
+ return 1 + (int) Math.ceil(entity.getLocation().getDistance(victim.getLocation()) * 0.3);
+ }
+}
+
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/HealingBladeSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/HealingBladeSpecialHandler.java
new file mode 100644
index 000000000..5589c48c0
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/HealingBladeSpecialHandler.java
@@ -0,0 +1,83 @@
+package content.global.handlers.item.equipment.special;
+
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.MeleeSwingHandler;
+import core.game.node.entity.impl.Animator.Priority;
+import core.game.node.entity.player.Player;
+import core.game.world.update.flag.context.Animation;
+import core.game.world.update.flag.context.Graphics;
+import core.plugin.Plugin;
+import core.plugin.Initializable;
+import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
+
+/**
+ * Handles the healing blade special attack.
+ * @author Emperor
+ * @version 1.0
+ */
+@Initializable
+public final class HealingBladeSpecialHandler extends MeleeSwingHandler implements Plugin {
+
+ /**
+ * The special energy required.
+ */
+ private static final int SPECIAL_ENERGY = 50;
+
+ /**
+ * The attack animation.
+ */
+ private static final Animation ANIMATION = new Animation(7071, Priority.HIGH);
+
+ /**
+ * The graphic.
+ */
+ private static final Graphics GRAPHIC = new Graphics(1220);
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.MELEE.getSwingHandler().register(11698, this);
+ CombatStyle.MELEE.getSwingHandler().register(13452, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ if (!((Player) entity).getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ state.setStyle(CombatStyle.MELEE);
+ int hit = 0;
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 2.0, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.1) + 1);
+ int healthRestore = hit / 2;
+ double prayerRestore = hit * 0.25;
+ if (healthRestore < 10) {
+ healthRestore = 10;
+ }
+ if (prayerRestore < 5) {
+ prayerRestore = 5;
+ }
+ entity.getSkills().heal(healthRestore);
+ entity.getSkills().incrementPrayerPoints(prayerRestore);
+ }
+ state.setEstimatedHit(hit);
+ return 1;
+ }
+
+ @Override
+ public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.GODWARS_SARADOMIN_SPECIAL_3857);
+ entity.visualize(ANIMATION, GRAPHIC);
+ }
+
+}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/IceCleaveSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/IceCleaveSpecialHandler.java
similarity index 79%
rename from Server/src/main/java/core/game/node/entity/combat/special/IceCleaveSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/IceCleaveSpecialHandler.java
index 0c19987f4..83c1e4a50 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/IceCleaveSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/IceCleaveSpecialHandler.java
@@ -1,17 +1,19 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.state.EntityState;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
/**
* Handles the Ice cleave special attack.
@@ -55,11 +57,10 @@ public final class IceCleaveSpecialHandler extends MeleeSwingHandler implements
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.075, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.005));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 2.0, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.1) + 1);
}
state.setEstimatedHit(hit);
- entity.asPlayer().getAudioManager().send(3846);
return 1;
}
@@ -67,13 +68,14 @@ public final class IceCleaveSpecialHandler extends MeleeSwingHandler implements
public void adjustBattleState(Entity entity, Entity victim, BattleState state) {
super.adjustBattleState(entity, victim, state);
if (state.getEstimatedHit() > 0) {
- victim.getStateManager().set(EntityState.FROZEN, 33);
+ registerTimer(victim, spawnTimer("frozen", 33, true));
victim.graphics(Graphics.create(369));
}
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.GODWARS_GODSWORD_SLASH_3846);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/ImpaleSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/ImpaleSpecialHandler.java
similarity index 88%
rename from Server/src/main/java/core/game/node/entity/combat/special/ImpaleSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/ImpaleSpecialHandler.java
index dadc362c8..2e0ff5aa4 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/ImpaleSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ImpaleSpecialHandler.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.info.Rights;
@@ -12,6 +12,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Rune claws special attack "Impale".
@@ -56,7 +59,7 @@ public final class ImpaleSpecialHandler extends MeleeSwingHandler implements Plu
state.setStyle(CombatStyle.MELEE);
int hit = 0;
if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.1, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.1));
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.1) + 1);
}
state.setEstimatedHit(hit);
return 1;
@@ -64,6 +67,7 @@ public final class ImpaleSpecialHandler extends MeleeSwingHandler implements Plu
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.IMPALE_2534);
if (((Player) entity).getDetails().getRights() == Rights.ADMINISTRATOR) {
entity.animate(Animation.create(2068));
return;
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/JudgementSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/JudgementSpecialHandler.java
similarity index 79%
rename from Server/src/main/java/core/game/node/entity/combat/special/JudgementSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/JudgementSpecialHandler.java
index a4bf7853b..abdb00cc5 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/JudgementSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/JudgementSpecialHandler.java
@@ -1,17 +1,19 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Judgement special attack.
@@ -55,16 +57,16 @@ public final class JudgementSpecialHandler extends MeleeSwingHandler implements
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.25, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.25));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 2.0, 1.0)) {
+ hit = RandomFunction.random((int) (calculateHit(entity, victim, 1.1) * 1.25) + 1);
}
state.setEstimatedHit(hit);
- entity.asPlayer().getAudioManager().send(new Audio(3865), true);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.GODWARS_GODSWORD_SPECIAL_ATTACK_3865);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/combat/special/LiquefySpecialHandler.kt b/Server/src/main/content/global/handlers/item/equipment/special/LiquefySpecialHandler.kt
similarity index 88%
rename from Server/src/main/kotlin/rs09/game/node/entity/combat/special/LiquefySpecialHandler.kt
rename to Server/src/main/content/global/handlers/item/equipment/special/LiquefySpecialHandler.kt
index d6485eef6..0cf259152 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/combat/special/LiquefySpecialHandler.kt
+++ b/Server/src/main/content/global/handlers/item/equipment/special/LiquefySpecialHandler.kt
@@ -1,9 +1,9 @@
-package rs09.game.node.entity.combat.special
+package content.global.handlers.item.equipment.special
import core.game.node.entity.Entity
import core.game.node.entity.combat.BattleState
import core.game.node.entity.combat.CombatStyle
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler
+import core.game.node.entity.combat.MeleeSwingHandler
import core.plugin.Initializable
import core.plugin.Plugin
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/PhantomStrikeSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/PhantomStrikeSpecialHandler.java
new file mode 100644
index 000000000..82f5b3eb3
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/PhantomStrikeSpecialHandler.java
@@ -0,0 +1,82 @@
+package content.global.handlers.item.equipment.special;
+
+import core.api.ContentAPIKt;
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.ImpactHandler;
+import core.game.node.entity.combat.RangeSwingHandler;
+import core.game.node.entity.player.Player;
+import core.game.system.timer.RSTimer;
+import core.game.system.timer.TimerFlag;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.tools.RandomFunction;
+import org.rs09.consts.Items;
+
+@Initializable
+public final class PhantomStrikeSpecialHandler extends RangeSwingHandler implements Plugin {
+ private static final int SPECIAL_ENERGY = 50;
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.RANGE.getSwingHandler().register(Items.MORRIGANS_JAVELIN_13879, this);
+ CombatStyle.RANGE.getSwingHandler().register(Items.MORRIGANS_JAVELINP_13880, this);
+ CombatStyle.RANGE.getSwingHandler().register(Items.MORRIGANS_JAVELINP_PLUS_13881, this);
+ CombatStyle.RANGE.getSwingHandler().register(Items.MORRIGANS_JAVELINP_PLUS_PLUS_13882, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ Player p = (Player) entity;
+ configureRangeData(p, state);
+ if (state.getWeapon() == null || !Companion.hasAmmo(entity, state)) {
+ entity.getProperties().getCombatPulse().stop();
+ p.getSettings().toggleSpecialBar();
+ return -1;
+ }
+ if (!((Player) entity).getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ state.setStyle(CombatStyle.RANGE);
+ int max = calculateHit(entity, victim, 1.0);
+ state.setMaximumHit(max);
+ int hit = 0;
+ if (isAccurateImpact(entity, victim)) {
+ hit = RandomFunction.random(max + 1);
+ }
+ state.setEstimatedHit(hit);
+ Companion.useAmmo(entity, state, victim.getLocation());
+ final Entity attacker = entity;
+ final int initialDamage = hit;
+ ContentAPIKt.registerTimer(victim, new RSTimer(3, "phantom-strike", true, false, new TimerFlag[] { TimerFlag.ClearOnDeath } ) {
+ int remainingDamage = initialDamage;
+
+ @Override
+ public void onRegister(Entity entity) {
+ if(entity instanceof Player) {
+ ((Player)entity).sendMessage("You start to bleed as the result of the javelin strike.");
+ }
+ }
+
+ @Override
+ public boolean run(Entity entity) {
+ if(entity instanceof Player) {
+ ((Player)entity).sendMessage("You continue to bleed as the result of the javelin strike.");
+ }
+ int tickDamage = Math.min(remainingDamage, 5);
+ remainingDamage -= tickDamage;
+ entity.getImpactHandler().manualHit(attacker, tickDamage, ImpactHandler.HitsplatType.NORMAL);
+ return remainingDamage > 0;
+ }
+
+ });
+ return 1 + (int) Math.ceil(entity.getLocation().getDistance(victim.getLocation()) * 0.3);
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/PowershotSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/PowershotSpecialHandler.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/combat/special/PowershotSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/PowershotSpecialHandler.java
index a1e5e738a..4fe5e5f90 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/PowershotSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/PowershotSpecialHandler.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
@@ -9,7 +9,10 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
+import core.game.node.entity.combat.RangeSwingHandler;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Magic longbow special attack "Powershot".
@@ -53,11 +56,7 @@ public final class PowershotSpecialHandler extends RangeSwingHandler implements
return -1;
}
state.setStyle(CombatStyle.RANGE);
- int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.RANGE, 1.98, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.0));
- }
- entity.asPlayer().getAudioManager().send(2536);
+ int hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
state.setEstimatedHit(hit);
Companion.useAmmo(entity, state, victim.getLocation());
return 1 + (int) Math.ceil(entity.getLocation().getDistance(victim.getLocation()) * 0.3);
@@ -65,6 +64,7 @@ public final class PowershotSpecialHandler extends RangeSwingHandler implements
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.POWERSHOT_2536);
entity.visualize(state.getRangeWeapon().getAnimation(), GRAPHIC);
int speed = (int) (46 + (entity.getLocation().getDistance(victim.getLocation()) * 5));
Projectile.create(entity, victim, 249, 40, 36, 45, speed, 5, 11).send();
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/PowerstabSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/PowerstabSpecialHandler.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/combat/special/PowerstabSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/PowerstabSpecialHandler.java
index 7b6783add..172ca036c 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/PowerstabSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/PowerstabSpecialHandler.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import java.util.List;
@@ -6,7 +6,7 @@ import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.combat.InteractionType;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
@@ -16,6 +16,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Powerstab special attack.
@@ -82,7 +85,7 @@ public final class PowerstabSpecialHandler extends MeleeSwingHandler implements
BattleState s = targets[count++] = new BattleState(entity, e);
int hit = 0;
if (isAccurateImpact(entity, e)) {
- hit = RandomFunction.random(calculateHit(entity, e, 1.0));
+ hit = RandomFunction.random(calculateHit(entity, e, 1.0) + 1);
}
s.setStyle(CombatStyle.MELEE);
s.setEstimatedHit(hit);
@@ -94,6 +97,7 @@ public final class PowerstabSpecialHandler extends MeleeSwingHandler implements
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.DRAGON_AXE_THUNDER_2530);
entity.visualize(ANIMATION, GRAPHIC);
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/PunctureSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/PunctureSpecialHandler.java
similarity index 80%
rename from Server/src/main/java/core/game/node/entity/combat/special/PunctureSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/PunctureSpecialHandler.java
index 1b76ac3f7..b5fc3357f 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/PunctureSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/PunctureSpecialHandler.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Animation;
@@ -11,6 +11,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the puncture special attack combat swing.
@@ -58,28 +61,23 @@ public final class PunctureSpecialHandler extends MeleeSwingHandler implements P
return -1;
}
state.setStyle(CombatStyle.MELEE);
- // First hit
- //double accuracyMod, double defenceMod
int hit = 0;
- // accuracyMod defenceMod
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.05, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.1306));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.15, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.15) + 1);
}
state.setEstimatedHit(hit);
- // Second hit
- // accuracyMod defenceMod
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.05, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.1306));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.15, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.15) + 1);
} else {
hit = 0;
}
- entity.asPlayer().getAudioManager().send(2537);
state.setSecondaryHit(hit);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.PUNCTURE_2537);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/QuickSmashSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/QuickSmashSpecialHandler.java
new file mode 100644
index 000000000..e1d043c9d
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/QuickSmashSpecialHandler.java
@@ -0,0 +1,96 @@
+package content.global.handlers.item.equipment.special;
+
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.DeathTask;
+import core.game.node.entity.combat.MeleeSwingHandler;
+import core.game.node.entity.impl.Animator.Priority;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.prayer.PrayerType;
+import core.game.world.GameWorld;
+import core.game.world.update.flag.context.Animation;
+import core.game.world.update.flag.context.Graphics;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
+
+/**
+ * Handles the granite maul special attack.
+ * @author Emperor
+ */
+@Initializable
+public final class QuickSmashSpecialHandler extends MeleeSwingHandler implements Plugin {
+
+ /**
+ * The special energy required.
+ */
+ private static final int SPECIAL_ENERGY = 50;
+
+ /**
+ * The attack animation.
+ */
+ private static final Animation ANIMATION = new Animation(1667, Priority.HIGH);
+
+ /**
+ * The graphic.
+ */
+ private static final Graphics GRAPHIC = new Graphics(340, 96);
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ switch (identifier) {
+ case "instant_spec":
+ return true;
+ }
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.MELEE.getSwingHandler().register(4153, this);
+ CombatStyle.MELEE.getSwingHandler().register(14792, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ Player p = (Player) entity;
+ if (victim == null) {
+ victim = p.getProperties().getCombatPulse().getLastVictim();
+ if (victim == null || GameWorld.getTicks() - p.getAttribute("combat-stop", -1) > 2 || !MeleeSwingHandler.Companion.canMelee(p, victim, 1)) {
+ p.getPacketDispatch().sendMessage("Warning: Since the maul's special is an instant attack, it will be wasted when used ");
+ p.getPacketDispatch().sendMessage("on a first strike.");
+ return -1;
+ }
+ }
+ if (DeathTask.isDead(victim)) {
+ return -1;
+ }
+ if (!p.getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ visualize(entity, victim, null);
+ int hit = 0;
+ if (isAccurateImpact(entity, victim)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
+ }
+ if (victim.hasProtectionPrayer(CombatStyle.MELEE))
+ hit *= (victim instanceof Player) ? 0.6 : 0;
+ BattleState b = new BattleState();
+ b.setEstimatedHit(victim.getImpactHandler().handleImpact(entity, hit, CombatStyle.MELEE).getAmount());
+ addExperience(entity, victim, b);
+ return 1;
+ }
+
+ @Override
+ public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.QUICKSMASH_2715);
+ entity.visualize(ANIMATION, GRAPHIC);
+ victim.animate(victim.getProperties().getDefenceAnimation());
+ }
+
+}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/RampageSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/RampageSpecialHandler.java
new file mode 100644
index 000000000..2e70ab9ec
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/RampageSpecialHandler.java
@@ -0,0 +1,80 @@
+package content.global.handlers.item.equipment.special;
+
+import core.game.node.entity.skill.Skills;
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.MeleeSwingHandler;
+import core.game.node.entity.impl.Animator.Priority;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.audio.Audio;
+import core.game.world.update.flag.context.Animation;
+import core.game.world.update.flag.context.Graphics;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
+
+/**
+ * Handles the Rampage special attack.
+ * @author Emperor
+ */
+@Initializable
+public final class RampageSpecialHandler extends MeleeSwingHandler implements Plugin {
+
+ /**
+ * The special energy required.
+ */
+ private static final int SPECIAL_ENERGY = 100;
+
+ /**
+ * The attack animation.
+ */
+ private static final Animation ANIMATION = new Animation(1056, Priority.HIGH);
+
+ /**
+ * The graphic.
+ */
+ private static final Graphics GRAPHIC = new Graphics(246);
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ switch (identifier) {
+ case "instant_spec":
+ case "ncspec":
+ return true;
+ }
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.MELEE.getSwingHandler().register(1377, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ Player p = (Player) entity;
+ if (!p.getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ p.sendChat("Raarrrrrgggggghhhhhhh!");
+ playAudio(entity.asPlayer(), Sounds.RAMPAGE_2538);
+ p.visualize(ANIMATION, GRAPHIC);
+ @SuppressWarnings("unused")
+ int boost = 0;
+ for (int i = 0; i < 7; i++) {
+ if (i == Skills.ATTACK || i == Skills.DEFENCE || i == Skills.RANGE || i == Skills.MAGIC) {
+ int drain = (int) (p.getSkills().getLevel(i) * 0.1);
+ boost += drain;
+ p.getSkills().updateLevel(i, -drain, 0);
+ }
+ }
+ boost = 10 + (boost / 4);
+ p.getSkills().updateLevel(Skills.STRENGTH, boost, Math.max(p.getSkills().getStaticLevel(Skills.STRENGTH) + boost, p.getSkills().getLevel(Skills.STRENGTH)));
+ return -1;
+ }
+
+}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/SalamanderSwingHandler.kt b/Server/src/main/content/global/handlers/item/equipment/special/SalamanderSwingHandler.kt
new file mode 100644
index 000000000..a0c5f6941
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SalamanderSwingHandler.kt
@@ -0,0 +1,237 @@
+package content.global.handlers.item.equipment.special
+
+import core.api.EquipmentSlot
+import core.api.getItemFromEquipment
+import core.game.node.entity.Entity
+import core.game.node.entity.combat.BattleState
+import core.game.node.entity.combat.CombatStyle
+import core.game.node.entity.combat.CombatSwingHandler
+import core.game.node.entity.combat.InteractionType
+import core.game.node.entity.combat.equipment.Weapon
+import core.game.node.entity.combat.equipment.WeaponInterface
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import org.rs09.consts.Animations
+import kotlin.math.ceil
+import kotlin.math.floor
+
+/**
+ * Handles a combat swing using a salamander.
+ * @author Vexia
+ * @author itsmedoggo
+ */
+class SalamanderSwingHandler(private var style: CombatStyle) : CombatSwingHandler(style) {
+ override fun canSwing(entity: Entity, victim: Entity): InteractionType? {
+ checkStyle(entity)
+ if (!isProjectileClipped(entity, victim, false)) {
+ return InteractionType.NO_INTERACT
+ }
+ var distance = 1
+ var goodRange = victim.centerLocation.withinDistance(entity.centerLocation, getCombatDistance(entity, victim, distance))
+ var type = InteractionType.STILL_INTERACT
+ if (victim.walkingQueue.isMoving && !goodRange) {
+ goodRange = victim.centerLocation.withinDistance(entity.centerLocation, getCombatDistance(entity, victim, ++distance))
+ type = InteractionType.MOVE_INTERACT
+ }
+ if (goodRange && super.canSwing(entity, victim) != InteractionType.NO_INTERACT) {
+ if (type == InteractionType.STILL_INTERACT) {
+ entity.walkingQueue.reset()
+ }
+ return type
+ }
+ return InteractionType.NO_INTERACT
+ }
+
+ override fun swing(entity: Entity?, victim: Entity?, state: BattleState?): Int {
+ state!!.style = style
+ if (entity is Player) {
+ state.weapon = Weapon(entity.equipment[3])
+ }
+ if (state!!.weapon == null || !hasAmmo(entity, state)) {
+ entity!!.properties.combatPulse.stop()
+ return -1
+ }
+ var hit = 0
+ if (isAccurateImpact(entity, victim, style)) {
+ val max = calculateHit(entity, victim, 1.0)
+ state.maximumHit = max
+ hit = RandomFunction.random(max + 1)
+ }
+ state.estimatedHit = hit
+ if (entity == null || victim!!.location == null) {
+ return -1
+ }
+ if(state.estimatedHit > victim.skills.lifepoints) state.estimatedHit = victim.skills.lifepoints
+ useAmmo(entity, state)
+ return 1
+ }
+
+ override fun impact(entity: Entity?, victim: Entity?, state: BattleState?) {
+ style.swingHandler.impact(entity, victim, state)
+ }
+
+ override fun visualize(entity: Entity, victim: Entity?, state: BattleState?) {
+ entity.visualize(Animation.create(5247), Graphics(952, 100))
+ }
+
+ override fun visualizeImpact(entity: Entity?, victim: Entity?, state: BattleState?) {
+ style.swingHandler.visualizeImpact(entity, victim, state)
+ }
+
+ override fun calculateAccuracy(entity: Entity?): Int {
+ //Checking style is necessary for ::calc_accuracy to function after changing attack style but before attacking
+ checkStyle(entity)
+ return style.swingHandler.calculateAccuracy(entity)
+ }
+
+ override fun calculateHit(entity: Entity?, victim: Entity?, modifier: Double): Int {
+ entity ?: return 0
+
+ //Checking style is necessary for ::calcmaxhit to function after changing attack style but before attacking
+ checkStyle(entity)
+ if (style == CombatStyle.MAGIC) {
+ val level = entity!!.skills.getLevel(Skills.MAGIC, true)
+ var bonus = entity.properties.bonuses[13]
+ if (entity is Player) {
+ bonus += getSalamanderMagicDamageBonus(entity.equipment[3].id)
+ }
+ var cumulativeStr = level.toDouble()
+ cumulativeStr *= getSetMultiplier(entity, Skills.MAGIC)
+ cumulativeStr *= (bonus + 64)
+ return floor((0.5 + (ceil(cumulativeStr) / 640.0)) * modifier).toInt()
+ }
+ return style.swingHandler.calculateHit(entity, victim, modifier)
+ }
+
+ override fun addExperience(entity: Entity?, victim: Entity?, state: BattleState?) {
+ entity!!.skills.addExperience(Skills.HITPOINTS, state!!.estimatedHit * 1.33, true)
+ if (state.style == CombatStyle.MAGIC) {
+ entity.skills.addExperience(Skills.MAGIC, state.estimatedHit * 2.toDouble(), true)
+ }
+ if (state.style == CombatStyle.RANGE) {
+ entity.skills.addExperience(Skills.RANGE, state.estimatedHit * 4.toDouble(), true)
+ }
+ if (state.style == CombatStyle.MELEE) {
+ entity.skills.addExperience(Skills.STRENGTH, state.estimatedHit * 4.toDouble(), true)
+ }
+ }
+
+ override fun calculateDefence(victim: Entity?, attacker: Entity?): Int {
+ return style.swingHandler.calculateDefence(victim, attacker)
+ }
+
+ override fun getSetMultiplier(e: Entity?, skillId: Int): Double {
+ return style.swingHandler.getSetMultiplier(e, skillId)
+ }
+
+ /**
+ * Sets the local style
+ * @param e The entity
+ */
+ private fun checkStyle(e: Entity?) {
+ val index = e!!.properties.attackStyle.style
+ style = when(index) {
+ WeaponInterface.STYLE_DEFENSIVE_CAST -> CombatStyle.MAGIC
+ WeaponInterface.STYLE_RANGE_ACCURATE -> CombatStyle.RANGE
+ else -> CombatStyle.MELEE
+ }
+ }
+
+ companion object {
+ /**
+ * The instance for the swing handler.
+ */
+ val INSTANCE = SalamanderSwingHandler(CombatStyle.RANGE)
+
+ /**
+ * Gets the id of the tar used by a salamander.
+ * @param id The salamander id.
+ * @return The tar id.
+ */
+ fun getAmmoId(id: Int): Int {
+ when (id) {
+ Items.SWAMP_LIZARD_10149 -> {
+ return Items.GUAM_TAR_10142
+ }
+ Items.ORANGE_SALAMANDER_10146 -> {
+ return Items.MARRENTILL_TAR_10143
+ }
+ Items.RED_SALAMANDER_10147 -> {
+ return Items.TARROMIN_TAR_10144
+ }
+ Items.BLACK_SALAMANDER_10148 -> {
+ return Items.HARRALANDER_TAR_10145
+ }
+ else -> {
+ return -1
+ }
+ }
+ }
+
+ /**
+ * Gets the magic damage bonus of a salamander.
+ * @param id The salamander id.
+ * @return The magic damage bonus.
+ */
+ fun getSalamanderMagicDamageBonus(id: Int): Int {
+ when (id) {
+ Items.SWAMP_LIZARD_10149 -> {
+ return 56
+ }
+ Items.ORANGE_SALAMANDER_10146 -> {
+ return 59
+ }
+ Items.RED_SALAMANDER_10147 -> {
+ return 77
+ }
+ Items.BLACK_SALAMANDER_10148 -> {
+ return 92
+ }
+ else -> {
+ return 0
+ }
+ }
+ }
+
+ /**
+ * Checks if the entity has the ammunition needed to proceed.
+ * @param e The entity.
+ * @param state The battle state.
+ * @return `True` if so.
+ */
+ fun hasAmmo(e: Entity?, state: BattleState?): Boolean {
+ if (e !is Player) {
+ return true
+ }
+ val ammo = getItemFromEquipment(e, EquipmentSlot.AMMO)
+ if (ammo == null) {
+ e.packetDispatch.sendMessage("You do not have enough ammo left.")
+ return false
+ }
+ if (ammo.id == (getAmmoId(state!!.weapon.id))) {
+ return true
+ }
+ e.packetDispatch.sendMessage("You can't use this type of ammunition with this salamander.")
+ return false
+ }
+
+ /**
+ * Uses the ammunition for the range weapon.
+ * @param e The entity.
+ * @param state The battle state.
+ * @param location The drop location.
+ */
+ fun useAmmo(e: Entity, state: BattleState) {
+ if (e !is Player) {
+ return
+ }
+ e.equipment.remove(Item(getAmmoId(state!!.weapon.id), 1))
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SaradominsLightningHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SaradominsLightningHandler.java
similarity index 86%
rename from Server/src/main/java/core/game/node/entity/combat/special/SaradominsLightningHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SaradominsLightningHandler.java
index c075825e5..9e672f4db 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SaradominsLightningHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SaradominsLightningHandler.java
@@ -1,17 +1,19 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Saradomin sword special attack.
@@ -50,13 +52,12 @@ public final class SaradominsLightningHandler extends MeleeSwingHandler implemen
state.setStyle(CombatStyle.MAGIC);
int hit = 0;
int secondary = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.10, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.1));
- secondary = 5 + RandomFunction.RANDOM.nextInt(14);
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.10, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.1) + 1);
+ secondary = 1 + RandomFunction.random(16);
}
state.setEstimatedHit(hit);
state.setSecondaryHit(secondary);
- entity.asPlayer().getAudioManager().send(new Audio(3853), true);
return 1;
}
@@ -75,9 +76,11 @@ public final class SaradominsLightningHandler extends MeleeSwingHandler implemen
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.GODWARS_SARADOMIN_MAGIC_IMPACT_3853);
entity.visualize(ANIMATION, GRAPHIC);
}
+
@Override
public Object fireEvent(String identifier, Object... args) {
return null;
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SeercullSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SeercullSpecialHandler.java
similarity index 77%
rename from Server/src/main/java/core/game/node/entity/combat/special/SeercullSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SeercullSpecialHandler.java
index 8f9961017..b4a374d3e 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SeercullSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SeercullSpecialHandler.java
@@ -1,16 +1,20 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
+import core.game.node.entity.combat.SwingHandlerFlag;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
+import core.game.node.entity.combat.RangeSwingHandler;
import core.game.node.entity.impl.Projectile;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Represents the Seercull's special attack which lowers the opponent's magic
@@ -21,6 +25,13 @@ import core.tools.RandomFunction;
@Initializable
public final class SeercullSpecialHandler extends RangeSwingHandler implements Plugin {
+ /**
+ * Constructs a new {@code SeercullSpecialHandler} {@code Object}.
+ */
+ public SeercullSpecialHandler() {
+ super(SwingHandlerFlag.IGNORE_PRAYER_BOOSTS_DAMAGE);
+ }
+
/**
* The special energy required.
*/
@@ -54,11 +65,9 @@ public final class SeercullSpecialHandler extends RangeSwingHandler implements P
if (!((Player) entity).getSettings().drainSpecial(SPECIAL_ENERGY)) {
return -1;
}
- int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.RANGE, 1.05, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.0));
+ int hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
+ if (victim.getSkills().getLevel(Skills.MAGIC) >= victim.getSkills().getStaticLevel(Skills.MAGIC))
victim.getSkills().updateLevel(Skills.MAGIC, -hit, 0);
- }
Companion.useAmmo(entity, state, victim.getLocation());
state.setEstimatedHit(hit);
return 1;
@@ -66,6 +75,7 @@ public final class SeercullSpecialHandler extends RangeSwingHandler implements P
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.SOULSHOT_2546);
victim.graphics(new Graphics(474));
int speed = (int) (35 + (entity.getLocation().getDistance(victim.getLocation()) * 10));
entity.visualize(entity.getProperties().getAttackAnimation(), DRAWBACK_GFX);
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SeverSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SeverSpecialHandler.java
similarity index 87%
rename from Server/src/main/java/core/game/node/entity/combat/special/SeverSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SeverSpecialHandler.java
index be63aa08d..eb8419c10 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SeverSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SeverSpecialHandler.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.prayer.PrayerType;
@@ -12,6 +12,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Sever special attack.
@@ -53,8 +56,8 @@ public final class SeverSpecialHandler extends MeleeSwingHandler implements Plug
return -1;
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.124, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.0));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.25, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
if (victim instanceof Player) {
Player p = (Player) victim;
if (p.getPrayer().get(PrayerType.PROTECT_FROM_MAGIC)) {
@@ -71,13 +74,13 @@ public final class SeverSpecialHandler extends MeleeSwingHandler implements Plug
}
}
}
- entity.asPlayer().getAudioManager().send(2540);
state.setEstimatedHit(hit);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.SEVER_2540);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/ShatterSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/ShatterSpecialHandler.java
similarity index 80%
rename from Server/src/main/java/core/game/node/entity/combat/special/ShatterSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/ShatterSpecialHandler.java
index 40647f3c1..1b226c390 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/ShatterSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ShatterSpecialHandler.java
@@ -1,17 +1,19 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Shatter special attack.
@@ -54,16 +56,16 @@ public final class ShatterSpecialHandler extends MeleeSwingHandler implements Pl
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 0.87, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.3546));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.25, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.5) + 1);
}
- entity.asPlayer().getAudioManager().send(new Audio(2541), true);
state.setEstimatedHit(hit);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.SHATTER_2541);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/ShoveSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/ShoveSpecialHandler.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/combat/special/ShoveSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/ShoveSpecialHandler.java
index ae67f2a0c..12d92744b 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/ShoveSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/ShoveSpecialHandler.java
@@ -1,12 +1,11 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.state.EntityState;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.Point;
@@ -15,6 +14,9 @@ import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
/**
* Handles the dragon spear special attack.
@@ -95,8 +97,7 @@ public final class ShoveSpecialHandler extends MeleeSwingHandler implements Plug
}
victim.getWalkingQueue().reset();
victim.getPulseManager().clear();
- victim.animate(STUN_ANIM);
- victim.getStateManager().set(EntityState.STUNNED, 5);
+ stun(victim, 5);
if (dir != null) {
Point p = Direction.getWalkPoint(dir);
Location dest = victim.getLocation().transform(p.getX(), p.getY(), 0);
@@ -104,12 +105,12 @@ public final class ShoveSpecialHandler extends MeleeSwingHandler implements Plug
victim.getWalkingQueue().addPath(dest.getX(), dest.getY());
}
}
- entity.asPlayer().getAudioManager().send(2533);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.SHOVE_2544);
entity.visualize(ANIMATION, GRAPHIC);
}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/SliceAndDiceSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SliceAndDiceSpecialHandler.java
new file mode 100644
index 000000000..9f755280c
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SliceAndDiceSpecialHandler.java
@@ -0,0 +1,111 @@
+package content.global.handlers.item.equipment.special;
+
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.MeleeSwingHandler;
+import core.game.node.entity.impl.Animator.Priority;
+import core.game.node.entity.player.Player;
+import core.game.world.update.flag.context.Animation;
+import core.game.world.update.flag.context.Graphics;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
+
+/**
+ * Handles the Dragon claws special attack "Slice and Dice".
+ * @author Emperor
+ *
+ */
+@Initializable
+public final class SliceAndDiceSpecialHandler extends MeleeSwingHandler implements Plugin {
+
+ /**
+ * The special energy required.
+ */
+ private static final int SPECIAL_ENERGY = 50;
+
+ /**
+ * The attack animation.
+ */
+ private static final Animation ANIMATION = new Animation(10961, Priority.HIGH);
+
+ /**
+ * The graphic.
+ */
+ private static final Graphics GRAPHIC = new Graphics(1950);
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.MELEE.getSwingHandler().register(14484, this);
+ CombatStyle.MELEE.getSwingHandler().register(14486, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ if (!((Player) entity).getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ int maximum = calculateHit(entity, victim, 1.0);
+ int[] hits;
+ int hit = getHit(entity, victim, maximum - 1, maximum / 2);
+ if (hit > 0) {
+ hits = new int[] {hit, hit / 2, (hit / 2) / 2, (hit / 2) / 2 + 1};
+ } else {
+ hit = getHit(entity, victim, maximum * 7 / 8, maximum * 3 / 8);
+ if (hit > 0) {
+ hits = new int[] {0, hit, hit / 2, hit / 2 + 1};
+ } else {
+ hit = getHit(entity, victim, maximum * 3 / 4, maximum / 4);
+ if (hit > 0) {
+ hits = new int[] {0, 0, hit, hit + 1};
+ } else {
+ hit = getHit(entity, victim, maximum * 5 / 4, maximum / 4);
+ if (hit > 0) {
+ hits = new int[] {0, 0, 0, hit};
+ } else {
+ hit = RandomFunction.random(2);
+ hits = new int[] {0, 0, hit, hit};
+ }
+ }
+ }
+ }
+ BattleState[] states = new BattleState[hits.length];
+ for (int i = 0; i < hits.length; i++) {
+ BattleState s = states[i] = new BattleState(entity, victim);
+ s.setStyle(CombatStyle.MELEE);
+ s.setEstimatedHit(hits[i]);
+ }
+ state.setTargets(states);
+ return 1;
+ }
+
+ /**
+ * Gets the current hit.
+ * @param entity The attacking entity.
+ * @param victim The victim.
+ * @param maximum The maximum hit.
+ * @return The hit.
+ */
+ private int getHit(Entity entity, Entity victim, int maximum, int minimum) {
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE)) {
+ return RandomFunction.random(minimum, maximum + 1);
+ }
+ return 0;
+ }
+
+ @Override
+ public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.PUNCTURE_2537);
+ entity.visualize(ANIMATION, GRAPHIC);
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SmashSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SmashSpecialHandler.java
similarity index 83%
rename from Server/src/main/java/core/game/node/entity/combat/special/SmashSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SmashSpecialHandler.java
index 10073e108..ba4989eda 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SmashSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SmashSpecialHandler.java
@@ -1,17 +1,20 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles Statius' Warhammer special attack - Smash.
@@ -56,7 +59,8 @@ public final class SmashSpecialHandler extends MeleeSwingHandler implements Plug
state.setStyle(CombatStyle.MELEE);
int hit = 0;
if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.0, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, RandomFunction.random(1.0, 1.5)));
+ int max = calculateHit(entity, victim, 1.0);
+ hit = max / 4 + RandomFunction.random(max + 1);
int lower = (int) (victim.getSkills().getLevel(Skills.DEFENCE) * 0.30);
victim.getSkills().updateLevel(Skills.DEFENCE, -lower, 0);
}
@@ -66,6 +70,7 @@ public final class SmashSpecialHandler extends MeleeSwingHandler implements Plug
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.TZHAAR_KET_OM_CRUSH_2520);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SnapshotSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SnapshotSpecialHandler.java
similarity index 81%
rename from Server/src/main/java/core/game/node/entity/combat/special/SnapshotSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SnapshotSpecialHandler.java
index b7fc1b0c3..618a0f4b2 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SnapshotSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SnapshotSpecialHandler.java
@@ -1,8 +1,9 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.SwingHandlerFlag;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.impl.Projectile;
import core.game.node.entity.player.Player;
@@ -12,8 +13,11 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
-import rs09.game.world.GameWorld;
+import core.game.node.entity.combat.RangeSwingHandler;
+import core.game.world.GameWorld;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the magic shortbow special attack "Snapshot".
@@ -22,6 +26,13 @@ import rs09.game.world.GameWorld;
@Initializable
public final class SnapshotSpecialHandler extends RangeSwingHandler implements Plugin {
+ /**
+ * Constructs a new {@code SnapshotSpecialHandler} {@code Object}.
+ */
+ public SnapshotSpecialHandler() {
+ super(SwingHandlerFlag.IGNORE_PRAYER_BOOSTS_DAMAGE);
+ }
+
/**
* The special energy required.
*/
@@ -64,15 +75,14 @@ public final class SnapshotSpecialHandler extends RangeSwingHandler implements P
int max = calculateHit(entity, victim, 1.0);
state.setMaximumHit(max);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 0.9, 1.0)) {
- hit = RandomFunction.random(max);
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.43, 1.0)) {
+ hit = RandomFunction.random(max + 1);
}
state.setEstimatedHit(hit);
hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 0.9, 1.0)) {
- hit = RandomFunction.random(max);
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.43, 1.0)) {
+ hit = RandomFunction.random(max + 1);
}
- entity.asPlayer().getAudioManager().send(2545);
state.setSecondaryHit(hit);
Companion.useAmmo(entity, state, victim.getLocation());
return 1 + (int) Math.ceil(entity.getLocation().getDistance(victim.getLocation()) * 0.3);
@@ -100,6 +110,7 @@ public final class SnapshotSpecialHandler extends RangeSwingHandler implements P
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.SNAPSHOT_2545);
entity.visualize(ANIMATION, GRAPHIC);
int speed = (int) (27 + (entity.getLocation().getDistance(victim.getLocation()) * 5));
Projectile.create(entity, victim, 249, 40, 36, 20, speed, 15, 11).send();
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SnipeSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SnipeSpecialHandler.java
similarity index 78%
rename from Server/src/main/java/core/game/node/entity/combat/special/SnipeSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SnipeSpecialHandler.java
index b1fbe0f2c..4d5b66609 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SnipeSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SnipeSpecialHandler.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
@@ -11,7 +11,10 @@ import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
-import rs09.game.node.entity.combat.handlers.RangeSwingHandler;
+import core.game.node.entity.combat.RangeSwingHandler;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Represents the Dorgeshuun crossbow's special attack - snipe.
@@ -57,9 +60,10 @@ public final class SnipeSpecialHandler extends RangeSwingHandler implements Plug
}
state.setStyle(CombatStyle.RANGE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.RANGE, 1.05, 1.0)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.0));
- victim.getSkills().updateLevel(Skills.DEFENCE, -hit, 0);
+ if (!victim.getProperties().getCombatPulse().isAttacking() || isAccurateImpact(entity, victim, CombatStyle.RANGE)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
+ if (victim.getSkills().getStaticLevel(Skills.DEFENCE) >= victim.getSkills().getDynamicLevels()[Skills.DEFENCE])
+ victim.getSkills().updateLevel(Skills.DEFENCE, -hit, 0);
}
Companion.useAmmo(entity, state, victim.getLocation());
state.setEstimatedHit(hit);
@@ -68,6 +72,7 @@ public final class SnipeSpecialHandler extends RangeSwingHandler implements Plug
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.DTTD_BONE_CROSSBOW_SA_1080);
entity.animate(ANIMATION);
Projectile.create(entity, victim, 698, 36, 25, 35, 72).send();
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SpearWallSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SpearWallSpecialHandler.java
similarity index 89%
rename from Server/src/main/java/core/game/node/entity/combat/special/SpearWallSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SpearWallSpecialHandler.java
index 306924202..c83d2fd5d 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SpearWallSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SpearWallSpecialHandler.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import java.util.List;
@@ -6,7 +6,7 @@ import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.combat.InteractionType;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
@@ -16,6 +16,9 @@ import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles Vesta's Spear special attack - Spear Wall.
@@ -82,7 +85,7 @@ public final class SpearWallSpecialHandler extends MeleeSwingHandler implements
if (CombatStyle.RANGE.getSwingHandler().canSwing(entity, e) != InteractionType.NO_INTERACT) {
BattleState s = targets[count++] = new BattleState(entity, e);
int hit = 0;
- hit = RandomFunction.random(calculateHit(entity, e, 1.0));
+ hit = RandomFunction.random(calculateHit(entity, e, 1.0) + 1);
s.setStyle(CombatStyle.MELEE);
s.setEstimatedHit(hit);
}
@@ -93,7 +96,8 @@ public final class SpearWallSpecialHandler extends MeleeSwingHandler implements
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
- entity.visualize(ANIMATION, GRAPHIC);
+ playGlobalAudio(entity.getLocation(), Sounds.CLEAVE_2529);
+ entity.visualize(ANIMATION, GRAPHIC);
}
@Override
@@ -103,6 +107,7 @@ public final class SpearWallSpecialHandler extends MeleeSwingHandler implements
if (s != null) {
s.getVictim().animate(victim.getProperties().getDefenceAnimation());
}
+
}
return;
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/SweepSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/SweepSpecialHandler.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/combat/special/SweepSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/SweepSpecialHandler.java
index be1d5d2b3..3ef8ce0f7 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/SweepSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/SweepSpecialHandler.java
@@ -1,14 +1,14 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import java.util.ArrayList;
import java.util.List;
import core.plugin.Initializable;
-import core.game.node.entity.skill.summoning.familiar.Familiar;
+import content.global.skill.summoning.familiar.Familiar;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
@@ -19,6 +19,9 @@ import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Dragon halberd special attack.
@@ -63,14 +66,14 @@ public final class SweepSpecialHandler extends MeleeSwingHandler implements Plug
for (BattleState s : targets) {
s.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, s.getVictim(), CombatStyle.MELEE, 1, 0.94)) {
- hit = RandomFunction.random(calculateHit(entity, s.getVictim(), 1.1));
+ if (isAccurateImpact(entity, s.getVictim(), CombatStyle.MELEE)) {
+ hit = RandomFunction.random(calculateHit(entity, s.getVictim(), 1.1) + 1);
}
s.setEstimatedHit(hit);
if (s.getVictim().size() > 1) {
hit = 0;
- if (isAccurateImpact(entity, s.getVictim(), CombatStyle.MELEE, 1, 0.94)) {
- hit = RandomFunction.random(calculateHit(entity, s.getVictim(), 1.1));
+ if (isAccurateImpact(entity, s.getVictim(), CombatStyle.MELEE, 0.75, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, s.getVictim(), 1.1) + 1);
}
s.setSecondaryHit(hit);
}
@@ -156,6 +159,7 @@ public final class SweepSpecialHandler extends MeleeSwingHandler implements Plug
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.HALBERD_SWIPE_2533);
entity.visualize(ANIMATION, GRAPHIC);
}
diff --git a/Server/src/main/java/core/game/node/entity/combat/special/WarstrikeSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/WarstrikeSpecialHandler.java
similarity index 77%
rename from Server/src/main/java/core/game/node/entity/combat/special/WarstrikeSpecialHandler.java
rename to Server/src/main/content/global/handlers/item/equipment/special/WarstrikeSpecialHandler.java
index ea19448a8..177769d5d 100644
--- a/Server/src/main/java/core/game/node/entity/combat/special/WarstrikeSpecialHandler.java
+++ b/Server/src/main/content/global/handlers/item/equipment/special/WarstrikeSpecialHandler.java
@@ -1,18 +1,20 @@
-package core.game.node.entity.combat.special;
+package content.global.handlers.item.equipment.special;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
import core.game.node.entity.combat.CombatStyle;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the Warstrike special attack.
@@ -55,8 +57,8 @@ public final class WarstrikeSpecialHandler extends MeleeSwingHandler implements
}
state.setStyle(CombatStyle.MELEE);
int hit = 0;
- if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.049, 0.98)) {
- hit = RandomFunction.random(calculateHit(entity, victim, 1.1));
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 2.0, 1.0)) {
+ hit = RandomFunction.random((int) (calculateHit(entity, victim, 1.1) * 1.1) + 1);
}
state.setEstimatedHit(hit);
if (victim instanceof Player) {
@@ -66,10 +68,10 @@ public final class WarstrikeSpecialHandler extends MeleeSwingHandler implements
if (left > 0) {
left = -victim.getSkills().updateLevel(Skills.STRENGTH, -left, 0);
if (left > 0) {
- left = -victim.getSkills().updateLevel(Skills.ATTACK, -left, 0);
+ left = (int) -(victim.getSkills().getPrayerPoints() + left);
+ victim.getSkills().decrementPrayerPoints(left);
if (left > 0) {
- left = (int) -(victim.getSkills().getPrayerPoints() + left);
- victim.getSkills().decrementPrayerPoints(left);
+ left = -victim.getSkills().updateLevel(Skills.ATTACK, -left, 0);
if (left > 0) {
left = -victim.getSkills().updateLevel(Skills.MAGIC, -left, 0);
if (left > 0)
@@ -78,12 +80,12 @@ public final class WarstrikeSpecialHandler extends MeleeSwingHandler implements
}
}
}
- entity.asPlayer().getAudioManager().send(new Audio(3834), true);
return 1;
}
@Override
public void visualize(Entity entity, Entity victim, BattleState state) {
+ playGlobalAudio(entity.getLocation(), Sounds.GODWARS_SARADOMIN_MAGIC_CASTANDFIRE_3834);
entity.visualize(ANIMATION, GRAPHIC);
}
}
diff --git a/Server/src/main/content/global/handlers/item/equipment/special/WeakenSpecialHandler.java b/Server/src/main/content/global/handlers/item/equipment/special/WeakenSpecialHandler.java
new file mode 100644
index 000000000..b8f45d90f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/equipment/special/WeakenSpecialHandler.java
@@ -0,0 +1,81 @@
+package content.global.handlers.item.equipment.special;
+
+import core.game.node.entity.skill.Skills;
+import core.game.node.entity.Entity;
+import core.game.node.entity.combat.BattleState;
+import core.game.node.entity.combat.CombatStyle;
+import core.game.node.entity.combat.MeleeSwingHandler;
+import core.game.node.entity.impl.Animator.Priority;
+import core.game.node.entity.player.Player;
+import core.game.world.update.flag.context.Animation;
+import core.game.world.update.flag.context.Graphics;
+import core.plugin.Plugin;
+import core.plugin.Initializable;
+import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
+
+/**
+ * Handles Darklight's special attack, Weaken.
+ * @author Crash, based on Emperor's code for other special attacks
+ */
+@Initializable
+public final class WeakenSpecialHandler extends MeleeSwingHandler implements Plugin {
+
+ /**
+ * The special energy required.
+ */
+ private static final int SPECIAL_ENERGY = 50;
+
+ /**
+ * The attack animation.
+ */
+ private static final Animation ANIMATION = new Animation(2890, Priority.HIGH);
+
+ /**
+ * The graphic.
+ */
+ private static final Graphics GRAPHIC = new Graphics(483);
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ CombatStyle.MELEE.getSwingHandler().register(6746, this);
+ return this;
+ }
+
+ @Override
+ public int swing(Entity entity, Entity victim, BattleState state) {
+ if (!((Player) entity).getSettings().drainSpecial(SPECIAL_ENERGY)) {
+ return -1;
+ }
+ state.setStyle(CombatStyle.MELEE);
+ int hit = 0;
+ if (isAccurateImpact(entity, victim, CombatStyle.MELEE, 1.0, 1.0)) {
+ hit = RandomFunction.random(calculateHit(entity, victim, 1.0) + 1);
+ if (victim instanceof Player) {
+ ((Player) victim).getPacketDispatch().sendMessage("You have been drained.");
+ }
+ // TODO 10% drain to demons
+ int lower = (int) (victim.getSkills().getStaticLevel(Skills.DEFENCE) * 0.05) + 1;
+ victim.getSkills().updateLevel(Skills.DEFENCE, -lower, 0);
+ lower = (int) (victim.getSkills().getStaticLevel(Skills.ATTACK) * 0.05) + 1;
+ victim.getSkills().updateLevel(Skills.ATTACK, -lower, 0);
+ lower = (int) (victim.getSkills().getStaticLevel(Skills.STRENGTH) * 0.05) + 1;
+ victim.getSkills().updateLevel(Skills.STRENGTH, -lower, 0);
+ }
+ state.setEstimatedHit(hit);
+ return hit;
+ }
+
+ @Override
+ public void visualize(Entity entity, Entity victim, BattleState state) {
+ entity.visualize(ANIMATION, GRAPHIC);
+ playGlobalAudio(entity.getLocation(), Sounds.DARKLIGHT_WEAKEN_225);
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/toys/DiangoOptionHandler.java b/Server/src/main/content/global/handlers/item/toys/DiangoOptionHandler.java
similarity index 93%
rename from Server/src/main/java/core/game/interaction/item/toys/DiangoOptionHandler.java
rename to Server/src/main/content/global/handlers/item/toys/DiangoOptionHandler.java
index 16ac99e47..545aa25b7 100644
--- a/Server/src/main/java/core/game/interaction/item/toys/DiangoOptionHandler.java
+++ b/Server/src/main/content/global/handlers/item/toys/DiangoOptionHandler.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.toys;
+package content.global.handlers.item.toys;
import core.cache.def.impl.NPCDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/item/toys/DiangoReclaimInterface.java b/Server/src/main/content/global/handlers/item/toys/DiangoReclaimInterface.java
new file mode 100644
index 000000000..4fda74d6b
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/toys/DiangoReclaimInterface.java
@@ -0,0 +1,99 @@
+package content.global.handlers.item.toys;
+
+import core.game.component.Component;
+import core.game.component.ComponentDefinition;
+import core.game.component.ComponentPlugin;
+import core.game.container.access.InterfaceContainer;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import org.rs09.consts.Items;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+
+import static core.api.ContentAPIKt.inEquipment;
+import static core.api.ContentAPIKt.inInventory;
+
+
+/**
+ * Handles diango's item reclaiming interface
+ * @author ceik, for the interface, and for most of the holiday items/toys
+ */
+@Initializable
+public class DiangoReclaimInterface extends ComponentPlugin {
+ private static final int COMPONENT_ID = 468;
+ public static final List- ITEMS = new ArrayList<>(20);
+ public static final Item[] HOLIDAY_ITEMS = {new Item(Items.YO_YO_4079), new Item(Items.REINDEER_HAT_10507), new Item(Items.WINTUMBER_TREE_10508), new Item(Items.RUBBER_CHICKEN_4566),new Item(Items.ZOMBIE_HEAD_6722), new Item(6857), new Item(6856), new Item(6858), new Item(6859), new Item(6860), new Item(6861), new Item(6862), new Item(6863), new Item(9920), new Item(9921),new Item(9922), new Item(9923), new Item(9924), new Item(9925), new Item(11019), new Item(11020), new Item(11021), new Item(11022), new Item(11789), new Item(11949), new Item(12645), new Item(14076), new Item(14077), new Item(14081),new Item(14595), new Item(14602), new Item(14603), new Item(14605), new Item(14654), new Item(Items.ICE_AMULET_14596), new Item(Items.RED_MARIONETTE_6867), new Item(Items.GREEN_MARIONETTE_6866), new Item(Items.BLUE_MARIONETTE_6865)};
+
+ //initialize the plugin, add lists of items to the ITEMS list...
+ @Override
+ public Plugin
newInstance(Object arg) throws Throwable {
+ ComponentDefinition.put(COMPONENT_ID,this);
+ ITEMS.addAll(Arrays.asList(HOLIDAY_ITEMS));
+ return this;
+ }
+
+ public static void open(Player player){
+ //close any currently open interfaces
+ Component curOpen = player.getInterfaceManager().getOpened();
+ if(curOpen != null){
+ curOpen.close(player);
+ }
+ Item[] reclaimables = getEligibleItems(player);
+ player.setAttribute("diango-reclaimables", reclaimables);
+
+ //filter out items the player already has in their bank, inventory, or equipped
+
+ //only send items if there are some to send
+ if(reclaimables.length > 0) {
+ InterfaceContainer.generateItems(player, reclaimables, new String[]{"Examine", "Take"}, 468, 2, 8, 8);
+ }
+ //open the interface
+ player.getInterfaceManager().open(new Component(468));
+ }
+
+ //refresh the interface
+ public static void refresh(Player player){
+ player.getInterfaceManager().close();
+ open(player);
+ }
+
+ @Override
+ public boolean handle(Player player, Component component, int opcode, int button, int slot, int itemId) {
+ Item[] reclaimables = player.getAttribute("diango-reclaimables", null);
+ if (reclaimables == null)
+ reclaimables = getEligibleItems(player);
+
+ Item reclaimItem = reclaimables[slot];
+ if (reclaimItem == null) {
+ player.sendMessage("Something went wrong there. Please try again.");
+ return true;
+ }
+
+ switch(opcode){
+ case 155: //interface item option 1 == take
+ //add the clicked item to the player's inventory and refresh the interface
+ player.getInventory().add(reclaimItem);
+ refresh(player);
+ break;
+ case 196: //interface item option 2 == examine
+ //send the examine text for the item to the player
+ player.getPacketDispatch().sendMessage(reclaimItem.getDefinition().getExamine());
+ break;
+ }
+ return false;
+ }
+
+ public static Item[] getEligibleItems (Player player) {
+ return ITEMS.stream().filter(Objects::nonNull)
+ .filter(item -> !player.getEquipment().containsItem(item) && !player.getInventory().containsItem(item) && !player.getBank().containsItem(item)
+ && (item.getId() != 14654
+ || (!(inInventory(player, 14655, 1) || inEquipment(player, 14656, 1)) && player.getAttribute("sotr:purchased",false))
+ ))
+ .toArray(Item[]::new);
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/toys/SnowGlobePlugin.java b/Server/src/main/content/global/handlers/item/toys/SnowGlobePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/toys/SnowGlobePlugin.java
rename to Server/src/main/content/global/handlers/item/toys/SnowGlobePlugin.java
index d482ea4e5..7061980fa 100644
--- a/Server/src/main/java/core/game/interaction/item/toys/SnowGlobePlugin.java
+++ b/Server/src/main/content/global/handlers/item/toys/SnowGlobePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.toys;
+package content.global.handlers.item.toys;
import core.game.component.Component;
import core.game.component.ComponentDefinition;
@@ -12,7 +12,7 @@ import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
@Initializable
public class SnowGlobePlugin extends OptionHandler {
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/CapeDyer.kt b/Server/src/main/content/global/handlers/item/withitem/CapeDyer.kt
similarity index 93%
rename from Server/src/main/kotlin/rs09/game/interaction/item/withitem/CapeDyer.kt
rename to Server/src/main/content/global/handlers/item/withitem/CapeDyer.kt
index 1f3df32a3..941b993a7 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/CapeDyer.kt
+++ b/Server/src/main/content/global/handlers/item/withitem/CapeDyer.kt
@@ -1,6 +1,6 @@
-package rs09.game.interaction.item.withitem
+package content.global.handlers.item.withitem
-import core.game.content.global.Dyes
+import content.data.Dyes
import core.game.interaction.NodeUsageEvent
import core.game.interaction.UseWithHandler
import core.game.node.item.Item
@@ -13,7 +13,7 @@ private val DYES = Dyes.values().map { it -> it.item.id }.toIntArray()
@Initializable
//For the super constructor we have to use all but the very last cape because its ID is higher than the ID of all dyes
-class CapeDyer : UseWithHandler(*CAPES.copyOfRange(0,CAPES.size - 2).toIntArray()) {
+class CapeDyer : UseWithHandler(*CAPES.copyOfRange(0,CAPES.size - 1).toIntArray()) {
override fun newInstance(arg: Any?): Plugin {
for(dye in DYES){
addHandler(dye, ITEM_TYPE,this)
@@ -50,7 +50,7 @@ class CapeDyer : UseWithHandler(*CAPES.copyOfRange(0,CAPES.size - 2).toIntArray(
return true
}
- internal enum class Cape(val dye : Dyes,val product : Item) {
+ internal enum class Cape(val dye : Dyes, val product : Item) {
BLACK(Dyes.BLACK, Item(1019)),
RED(Dyes.RED, Item(1007)),
BLUE(Dyes.BLUE, Item(1021)),
diff --git a/Server/src/main/content/global/handlers/item/withitem/CrystalKeyCreateListener.kt b/Server/src/main/content/global/handlers/item/withitem/CrystalKeyCreateListener.kt
new file mode 100644
index 000000000..207102b5f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withitem/CrystalKeyCreateListener.kt
@@ -0,0 +1,33 @@
+package content.global.handlers.item.withitem
+
+import core.api.addItem
+import core.api.removeItem
+import core.api.sendMessage
+import org.rs09.consts.Items
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for creating a crystal key
+ * @author Byte
+ */
+@Suppress("unused")
+class CrystalKeyCreateListener : InteractionListener {
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, Items.LOOP_HALF_OF_A_KEY_987, Items.TOOTH_HALF_OF_A_KEY_985) { player, used, with ->
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ if (!removeItem(player, with)) {
+ return@onUseWith false
+ }
+
+ addItem(player, Items.CRYSTAL_KEY_989)
+ sendMessage(player, "You join the loop half of a key and the tooth half of a key to make a crystal key.")
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/DarkBowDyePlugin.java b/Server/src/main/content/global/handlers/item/withitem/DarkBowDyePlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/withitem/DarkBowDyePlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/DarkBowDyePlugin.java
index 05afeb033..548b236bc 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/DarkBowDyePlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/DarkBowDyePlugin.java
@@ -1,12 +1,12 @@
-package core.game.interaction.item.withitem;
-import core.game.content.dialogue.DialogueAction;
+package content.global.handlers.item.withitem;
+import core.game.dialogue.DialogueAction;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.plugin.Plugin;
import core.plugin.Initializable;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
/**
* The plugin used to dye a dark bow into a more one.
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/FirelighterPlugin.java b/Server/src/main/content/global/handlers/item/withitem/FirelighterPlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/item/withitem/FirelighterPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/FirelighterPlugin.java
index 9042a0778..4e088bee3 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/FirelighterPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/FirelighterPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/FishfoodPlugin.java b/Server/src/main/content/global/handlers/item/withitem/FishfoodPlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/item/withitem/FishfoodPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/FishfoodPlugin.java
index 41dc8439c..a73f3cf66 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/FishfoodPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/FishfoodPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import org.rs09.consts.Items;
import core.game.interaction.NodeUsageEvent;
diff --git a/Server/src/main/content/global/handlers/item/withitem/FruitCutting.kt b/Server/src/main/content/global/handlers/item/withitem/FruitCutting.kt
new file mode 100644
index 000000000..ca6db9081
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withitem/FruitCutting.kt
@@ -0,0 +1,87 @@
+package content.global.handlers.item.withitem
+
+import core.api.*
+import core.game.dialogue.DialogueFile
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import core.tools.START_DIALOGUE
+import org.rs09.consts.Items
+
+class FruitCuttingListener : InteractionListener {
+ val anim = Animation(1192) // TODO Add fruit cutting animation to ConstLib
+
+ enum class Fruit(val fruit: Int, val chunk: Int, val slice: Item) {
+ PINEAPPLE(Items.PINEAPPLE_2114, Items.PINEAPPLE_CHUNKS_2116, Item(Items.PINEAPPLE_RING_2118, 4)),
+ BANANA(Items.BANANA_1963, -1, Item(Items.SLICED_BANANA_3162)),
+ LEMON(Items.LEMON_2102, Items.LEMON_CHUNKS_2104, Item(Items.LEMON_SLICES_2106)),
+ LIME(Items.LIME_2120, Items.LIME_CHUNKS_2122, Item(Items.LIME_SLICES_2124)),
+ ORANGE(Items.ORANGE_2108, Items.ORANGE_CHUNKS_2110, Item(Items.ORANGE_SLICES_2112));
+
+ companion object {
+ val productOfChunk = values().associate { it.fruit to it.chunk }
+ val productOfSlice = values().associate { it.fruit to it.slice }
+ val cutable = intArrayOf(PINEAPPLE.fruit, BANANA.fruit, LEMON.fruit, LIME.fruit, ORANGE.fruit)
+
+ fun forChunkId(id: Int) : Int {
+ return productOfChunk[id]!!
+ }
+
+ fun forSliceId(id: Int) : Item {
+ return productOfSlice[id]!!
+ }
+ }
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, Fruit.cutable, Items.KNIFE_946) { player, used, _ ->
+ openDialogue(
+ player,
+ FruitCuttingDialogue(used.id, Fruit.forChunkId(used.id), Fruit.forSliceId(used.id))
+ )
+ return@onUseWith true
+ }
+ }
+}
+
+class FruitCuttingDialogue(val fruit: Int, val chunk: Int, val slice: Item) : DialogueFile() {
+ val anim = Animation(1192)
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage) {
+ START_DIALOGUE -> {
+ if(chunk == -1) {
+ if(removeItem(player!!, fruit) && addItem(player!!, slice.id)) {
+ animate(player!!, anim, true)
+ sendMessage(player!!, "You deftly chop the ${getItemName(fruit).lowercase()} into slices.")
+ }
+ } else {
+ setInterfaceText(player!!, "Would you like to...", 140, 4)
+ sendItemOnInterface(player!!, 140, 6, chunk, 1)
+ sendItemOnInterface(player!!, 140, 5, slice.id, 1)
+ setInterfaceText(player!!, "Slice the ${getItemName(fruit).lowercase()}", 140, 2)
+ setInterfaceText(player!!, "Dice the ${getItemName(fruit).lowercase()}", 140, 3)
+ openInterface(player!!, 140)
+ when(buttonID) {
+ 1 -> {
+ closeInterface(player!!)
+ if(removeItem(player!!, fruit) && addItem(player!!, slice.id, slice.amount)) {
+ animate(player!!, anim, true)
+ sendMessage(player!!, "You cut the ${getItemName(fruit).lowercase()} into slices.")
+ }
+ }
+ 2 -> {
+ closeInterface(player!!)
+ if(removeItem(player!!, fruit) && addItem(player!!, chunk)) {
+ animate(player!!, anim, true)
+ sendMessage(player!!, "You cut the ${getItemName(fruit).lowercase()} into chunks.")
+ }
+ }
+
+ }
+ }
+ }
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/GodswordHiltAttachPlugin.java b/Server/src/main/content/global/handlers/item/withitem/GodswordHiltAttachPlugin.java
similarity index 90%
rename from Server/src/main/java/core/game/interaction/item/withitem/GodswordHiltAttachPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/GodswordHiltAttachPlugin.java
index 67804f9a1..2e0522b3c 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/GodswordHiltAttachPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/GodswordHiltAttachPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
@@ -7,6 +7,9 @@ import core.game.node.item.Item;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.StringUtils;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Handles the attaching of a hilt on the godsword blade.
@@ -40,6 +43,7 @@ public final class GodswordHiltAttachPlugin extends UseWithHandler {
item = new Item(item.getId() - 8);
player.getInventory().add(item);
String name = item.getDefinition().getName();
+ playAudio(player, Sounds.GODWARS_GODSWORD_FIX_3889);
player.getPacketDispatch().sendMessage("You attach the hilt to the blade and make a" + (StringUtils.isPlusN(name) ? "n " : " ") + name + ".");
return true;
}
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/GraniteMaulPlugin.java b/Server/src/main/content/global/handlers/item/withitem/GraniteMaulPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/item/withitem/GraniteMaulPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/GraniteMaulPlugin.java
index 9174ffa24..6ba753d2f 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/GraniteMaulPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/GraniteMaulPlugin.java
@@ -1,8 +1,8 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.cache.def.impl.ItemDefinition;
import core.plugin.Initializable;
-import core.game.content.dialogue.DialogueAction;
+import core.game.dialogue.DialogueAction;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.OptionHandler;
import core.game.interaction.UseWithHandler;
@@ -10,7 +10,7 @@ import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
/**
* The plugin used to make the granite maul into the ornamental version.
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/GraniteSplittingPlugin.java b/Server/src/main/content/global/handlers/item/withitem/GraniteSplittingPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/withitem/GraniteSplittingPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/GraniteSplittingPlugin.java
index 46bccd928..951bb6ba9 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/GraniteSplittingPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/GraniteSplittingPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/content/global/handlers/item/withitem/HaySackOnSpear.kt b/Server/src/main/content/global/handlers/item/withitem/HaySackOnSpear.kt
new file mode 100644
index 000000000..a954ca114
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withitem/HaySackOnSpear.kt
@@ -0,0 +1,23 @@
+package content.global.handlers.item.withitem
+
+import core.api.Container
+import core.api.*
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class HaySackOnSpear : InteractionListener {
+ val HAYSACK = Items.HAY_SACK_6057
+ val SPEAR = Items.BRONZE_SPEAR_1237
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, HAYSACK, SPEAR){ player, used, _ ->
+ if(removeItem(player, used.asItem(), Container.INVENTORY)){
+ addItem(player, Items.HAY_SACK_6058, 1)
+ sendMessage(player, "You stab the hay sack with a bronze spear")
+ removeItem(player, SPEAR, Container.INVENTORY)
+ }
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/ImpJarCreatePlugin.java b/Server/src/main/content/global/handlers/item/withitem/ImpJarCreatePlugin.java
similarity index 92%
rename from Server/src/main/java/core/game/interaction/item/withitem/ImpJarCreatePlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/ImpJarCreatePlugin.java
index 30b90a001..e6d61a6be 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/ImpJarCreatePlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/ImpJarCreatePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
@@ -8,6 +8,8 @@ import core.game.node.scenery.Scenery;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import static core.api.ContentAPIKt.*;
+
/**
* Handles the creating of an imp jar.
* @author Vexia
@@ -62,12 +64,12 @@ public final class ImpJarCreatePlugin extends UseWithHandler {
* @param player the player.
*/
private void fillOilStill(Player player, Item used) {
- int configValue = player.getConfigManager().get(425);
+ int configValue = getVarp(player, 425);
if (used.getId() == 11262 || used.getId() == 10012) {
if (configValue == 0 && used.getId() == 11262) {
player.getInventory().replace(new Item(229), used.getSlot());
player.sendMessage("You refine some imp repellent.");
- player.getConfigManager().set(425, 64, true);
+ setVarp(player, 425, 64, true);
return;
} else if (configValue == 32) {
player.sendMessage("There is already lamp oil in the still.");
@@ -77,7 +79,7 @@ public final class ImpJarCreatePlugin extends UseWithHandler {
player.sendMessage("There is already imp repellent in the still.");
} else {
player.getInventory().replace(new Item(11260), used.getSlot());
- player.getConfigManager().set(425, 0, true);
+ setVarp(player, 425, 0, true);
player.sendMessage("You turn the butterfly jar into an impling jar.");
}
return;
@@ -95,7 +97,7 @@ public final class ImpJarCreatePlugin extends UseWithHandler {
}
if (used.getId() == 1939) {
if (player.getInventory().remove(new Item(1939))) {
- player.getConfigManager().set(425, 32, true);
+ setVarp(player, 425, 32, true);
player.sendMessage("You refine some swamp tar into lamp oil.");
}
} else {
@@ -105,7 +107,7 @@ public final class ImpJarCreatePlugin extends UseWithHandler {
if (player.getInventory().contains(4525, 1) || player.getInventory().contains(4535, 1) || player.getInventory().contains(4546, 1) || player.getInventory().contains(4700, 1)) {
Item replace = new Item(used.getId() == 4525 ? 4522 : used.getId() == 4535 ? 4537 : used.getId() == 4546 ? 4548 : 4701);
player.getInventory().replace(replace, used.getSlot());
- player.getConfigManager().set(425, 0, true);
+ setVarp(player, 425, 0, true);
player.sendMessage("You fill the item with oil.");
}
}
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/KaramjanSilkPlugin.java b/Server/src/main/content/global/handlers/item/withitem/KaramjanSilkPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/withitem/KaramjanSilkPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/KaramjanSilkPlugin.java
index f0441e4c3..5c6154d21 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/KaramjanSilkPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/KaramjanSilkPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/LavaScalePlugin.java b/Server/src/main/content/global/handlers/item/withitem/LavaScalePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/withitem/LavaScalePlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/LavaScalePlugin.java
index 8a521aa73..656bd3607 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/LavaScalePlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/LavaScalePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.node.entity.skill.Skills;
import core.game.interaction.NodeUsageEvent;
@@ -7,7 +7,7 @@ import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.world.update.flag.context.Animation;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
import core.plugin.Initializable;
import core.tools.RandomFunction;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/OilFishingRodListener.kt b/Server/src/main/content/global/handlers/item/withitem/OilFishingRodListener.kt
similarity index 82%
rename from Server/src/main/kotlin/rs09/game/interaction/item/withitem/OilFishingRodListener.kt
rename to Server/src/main/content/global/handlers/item/withitem/OilFishingRodListener.kt
index 9054c7136..1dcd15cd4 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/OilFishingRodListener.kt
+++ b/Server/src/main/content/global/handlers/item/withitem/OilFishingRodListener.kt
@@ -1,14 +1,15 @@
-package rs09.game.interaction.item.withitem
+package content.global.handlers.item.withitem
-import api.*
+import core.api.*
import core.game.system.task.Pulse
import core.game.world.update.flag.context.Animation
import org.rs09.consts.Items
-import rs09.game.interaction.InteractionListener
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
class OilFishingRodListener : InteractionListener {
override fun defineListeners() {
- onUseWith(ITEM, Items.BLAMISH_OIL_1582, Items.FISHING_ROD_307) {player, used, with ->
+ onUseWith(IntType.ITEM, Items.BLAMISH_OIL_1582, Items.FISHING_ROD_307) { player, used, with ->
player.pulseManager.run(object : Pulse() {
var counter = 0
override fun pulse(): Boolean {
@@ -26,7 +27,7 @@ class OilFishingRodListener : InteractionListener {
return@onUseWith true
}
- onUseWith(ITEM, Items.THIN_SNAIL_3363, Items.PESTLE_AND_MORTAR_233) {player, used, with ->
+ onUseWith(IntType.ITEM, Items.THIN_SNAIL_3363, Items.PESTLE_AND_MORTAR_233) { player, used, with ->
if (player.inventory.contains(Items.SAMPLE_BOTTLE_3377, 1)) {
player.pulseManager.run(object : Pulse() {
var counter = 0
diff --git a/Server/src/main/content/global/handlers/item/withitem/PoisonedWeaponListeners.kt b/Server/src/main/content/global/handlers/item/withitem/PoisonedWeaponListeners.kt
new file mode 100644
index 000000000..c3b6816c4
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withitem/PoisonedWeaponListeners.kt
@@ -0,0 +1,113 @@
+package content.global.handlers.item.withitem
+
+import core.api.*
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import kotlin.collections.toIntArray
+import kotlin.math.min
+
+class PoisonedWeaponListeners : InteractionListener {
+ override fun defineListeners() {
+ val poisons = intArrayOf(Items.WEAPON_POISON_187, Items.WEAPON_POISON_PLUS_5937, Items.WEAPON_POISON_PLUS_PLUS_5940)
+ val poisonableItems = PoisonSets.itemMap.keys.toIntArray()
+ val poisonedItems = PoisonSets.itemMap.values.toIntArray()
+
+ onUseWith(IntType.ITEM, poisons, *poisonableItems){ player, used, with ->
+ val index = poisons.indexOf(used.id)
+ val product = PoisonSets.itemMap[with.id]!![index]
+ val amt = min(5, with.asItem().amount)
+
+ if(removeItem(player, Item(with.id, amt))) {
+ removeItem(player, used.id) //Mico's Code. See: https://gitlab.com/skelsoft/redwings/-/issues/13
+ addItemOrDrop(player, product, amt)
+ addItemOrDrop(player, Items.VIAL_229)
+ sendMessage(player, "You poison the ${with.name.toLowerCase()}.")
+ }
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM, Items.CLEANING_CLOTH_3188, *poisonedItems) { player, _, with ->
+ val base = PoisonSets.getBase(with.id) ?: return@onUseWith false
+ val amt = min(5, with.asItem().amount)
+ removeItem(player, Item(with.id, amt))
+ addItemOrDrop(player, base, amt)
+ return@onUseWith true
+ }
+ }
+
+ //below enum copied from old file, some data is probably wrong.
+ internal enum class PoisonSets(val base: Int, val p: Int, val pp: Int, val ppp: Int){
+ BRONZE_ARROW(882, 883, 5616, 5622),
+ IRON_ARROW(884, 885, 5617, 5623),
+ STEEL_ARROW(886, 887, 5618, 5624),
+ MITHRIL_ARROW(888, 889, 5619, 5625),
+ ADAMANT_ARROW(890, 891, Items.ADAMANT_ARROWP_PLUS_5620, 5626),
+ RUNE_ARROW(892, 893, 5621, 5627),
+
+ IRON_KNIFE(863, 871, 5655, 5662),
+ BRONZE_KNIFE(864, 870, 5654, 5661),
+ STEEL_KNIFE(865, 872, 5656, 5663),
+ MITHRIL_KNIFE(866, 873, 5657, 5664),
+ ADAMANT_KNIFE(867, 875, 5659, 5666),
+ RUNE_KNIFE(868, 876, 5660, 5667),
+ BLACK_KNIFE(869, 874, 5658, 5665),
+
+ BRONZE_DART(806, 812, 5628, 5635),
+ IRON_DART(807, 813, 5629, 5636),
+ STEEL_DART(808, 814, 5630, 5637),
+ BLACK_DART(3093, 3094, 5631, 5638),
+ MITHRIL_DART(809, 815, 5632, 5639),
+ ADAMANT_DART(810, 816, 5633, 5640),
+
+ BRONZE_BOLT(877, 878, 6061, 6062),
+ BLURITE_BOLT(9139, 9286, 9293, 9300),
+ IRON_BOLT(9140, 9287, 9294, 9301),
+ STEEL_BOLT(9141, 9288, 9295, 9302),
+ BLACK_BOLT(13083, 13084, 13085, 13086),
+ MITHRIL_BOLT(9142, 9289, 9296, 9303),
+ ADAMANT_BOLT(9143, 9290, 9297, 9304),
+ RUNE_BOLT(9144, 9291, 9298, 9305),
+ SILVER_BOLT(9145, 9292, 9299, 9306),
+
+ RUNE_DART(811, 817, 5634, 5641),
+ IRON_JAVELIN(825, 831, Items.IRON_JAVELINP_PLUS_5643, 5648),
+ BRONZE_JAVELIN(826, 832, Items.BRONZE_JAVELINP_PLUS_5642, 5649),
+ STEEL_JAVELIN(827, 833, Items.STEEL_JAVELINP_PLUS_5644, 5650),
+ MITHRIL_JAVELIN(828, 834, Items.MITHRIL_JAVELINP_PLUS_5645, 5651),
+ ADAMANT_JAVELIN(829, 835, Items.ADAMANT_JAVELINP_PLUS_5646, 5652),
+ RUNE_JAVELIN(830, 836, Items.RUNE_JAVELINP_PLUS_5647, 5653),
+ MORRIGAN_JAVELIN(13879, 13880, 13881, 13882),
+
+ IRON_DAGGER(1203, 1219, 5668, 5686),
+ BRONZE_DAGGER(1205, 1221, 5670, 5688),
+ STEEL_DAGGER(1207, 1223, 5672, 5690),
+ MITHRIL_DAGGER(1209, 1225, 5674, 5692),
+ ADAMANT_DAGGER(1211, 1227, 5676, 5694),
+ RUNE_DAGGER(1213, 1229, 5678, 5696),
+ DRAGON_DAGGER(1215, 1231, 5680, 5698),
+ BLACK_DAGGER(1217, 1233, 5682, 5700),
+ BONE_DAGGER(8872, 8874, 8876, 8878),
+
+ BRONZE_SPEAR(1237, 1251, 5704, Items.BRONZE_SPEARP_PLUS_PLUS_5718),
+ IRON_SPEAR(1239, 1253, 5706, Items.IRON_SPEARP_PLUS_PLUS_5720),
+ STEEL_SPEAR(1241, 1255, 5708, 5722),
+ MITHRIL_SPEAR(1243, 1257, 5710, 5724),
+ ADAMANT_SPEAR(1245, 1259, 5712, 5726),
+ RUNE_SPEAR(1247, 1261, 5714, 5728),
+ DRAGON_SPEAR(1249, 1263, 5716, 5730),
+ BLACK_SPEAR(4580, 4582, 5734, 5736);
+
+ companion object {
+ val itemMap = values().map { it.base to intArrayOf(it.p,it.pp,it.ppp) }.toMap()
+
+ fun getBase(poisoned: Int) : Int? {
+ for ((base,set) in itemMap.entries) {
+ if (set.contains(poisoned)) return base
+ }
+ return null
+ }
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/SeasonedSardinePlugin.java b/Server/src/main/content/global/handlers/item/withitem/SeasonedSardinePlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/withitem/SeasonedSardinePlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/SeasonedSardinePlugin.java
index d27da8c40..a1096660e 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/SeasonedSardinePlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/SeasonedSardinePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/SkullSceptrePlugin.java b/Server/src/main/content/global/handlers/item/withitem/SkullSceptrePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/withitem/SkullSceptrePlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/SkullSceptrePlugin.java
index 450933140..e7b8c6a49 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/SkullSceptrePlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/SkullSceptrePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/SoftclayPlugin.java b/Server/src/main/content/global/handlers/item/withitem/SoftclayPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/withitem/SoftclayPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/SoftclayPlugin.java
index e9c9162c9..37ff46584 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/SoftclayPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/SoftclayPlugin.java
@@ -1,10 +1,10 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.node.entity.player.link.diary.DiaryType;
import core.plugin.Initializable;
import org.rs09.consts.Items;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/TOTTHelmOnCape.kt b/Server/src/main/content/global/handlers/item/withitem/TOTTHelmOnCape.kt
similarity index 80%
rename from Server/src/main/kotlin/rs09/game/interaction/item/withitem/TOTTHelmOnCape.kt
rename to Server/src/main/content/global/handlers/item/withitem/TOTTHelmOnCape.kt
index b6af52e2a..eabd9ee37 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/TOTTHelmOnCape.kt
+++ b/Server/src/main/content/global/handlers/item/withitem/TOTTHelmOnCape.kt
@@ -1,15 +1,16 @@
-package rs09.game.interaction.item.withitem
+package content.global.handlers.item.withitem
-import api.Container
-import api.*
+import core.api.Container
+import core.api.*
import org.rs09.consts.Items
-import rs09.game.content.dialogue.DialogueFile
-import rs09.game.interaction.InteractionListener
-import rs09.tools.END_DIALOGUE
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.tools.END_DIALOGUE
class TOTTHelmOnCape : InteractionListener {
override fun defineListeners() {
- onUseWith(ITEM, Items.SLAYER_HELMET_13263, Items.SLAYER_CAPE_9786, Items.SLAYER_CAPET_9787){ player, used, with ->
+ onUseWith(IntType.ITEM, Items.SLAYER_HELMET_13263, Items.SLAYER_CAPE_9786, Items.SLAYER_CAPET_9787){ player, used, with ->
val alreadyHasHelm = getAttribute(player, "cape_perks:tott:helmet-stored", false)
if(alreadyHasHelm){
diff --git a/Server/src/main/java/core/game/interaction/item/withitem/WaterSkinPlugin.java b/Server/src/main/content/global/handlers/item/withitem/WaterSkinPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/withitem/WaterSkinPlugin.java
rename to Server/src/main/content/global/handlers/item/withitem/WaterSkinPlugin.java
index eabcda331..39848ea0a 100644
--- a/Server/src/main/java/core/game/interaction/item/withitem/WaterSkinPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withitem/WaterSkinPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withitem;
+package content.global.handlers.item.withitem;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/WatermelonOnSack.kt b/Server/src/main/content/global/handlers/item/withitem/WatermelonOnSack.kt
similarity index 76%
rename from Server/src/main/kotlin/rs09/game/interaction/item/withitem/WatermelonOnSack.kt
rename to Server/src/main/content/global/handlers/item/withitem/WatermelonOnSack.kt
index 82117f1eb..da829ed82 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/withitem/WatermelonOnSack.kt
+++ b/Server/src/main/content/global/handlers/item/withitem/WatermelonOnSack.kt
@@ -1,17 +1,18 @@
-package rs09.game.interaction.item.withitem
+package content.global.handlers.item.withitem
-import api.Container
-import api.*
+import core.api.Container
+import core.api.*
import core.game.node.entity.skill.Skills
import org.rs09.consts.Items
-import rs09.game.interaction.InteractionListener
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
class WatermelonOnSack : InteractionListener {
val SACK = Items.HAY_SACK_6058
val WATERMELON = Items.WATERMELON_5982
override fun defineListeners() {
- onUseWith(ITEM, SACK, WATERMELON){player, used, _ ->
+ onUseWith(IntType.ITEM, SACK, WATERMELON){ player, used, _ ->
if(getStatLevel(player, Skills.FARMING) >= 23){
removeItem(player,SACK, Container.INVENTORY)
removeItem(player,WATERMELON,Container.INVENTORY)
diff --git a/Server/src/main/content/global/handlers/item/withnpc/BonesOnStrayDog.kt b/Server/src/main/content/global/handlers/item/withnpc/BonesOnStrayDog.kt
new file mode 100644
index 000000000..e6e7fd03a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/BonesOnStrayDog.kt
@@ -0,0 +1,84 @@
+package content.global.handlers.item.withnpc
+
+import core.api.removeItem
+import core.api.sendChat
+import core.api.sendMessage
+import content.global.skill.prayer.Bones
+import core.game.node.entity.npc.NPC
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class BonesOnStrayDog : InteractionListener {
+ override fun defineListeners() {
+ val bones = Bones.array
+
+ val dogs = intArrayOf(
+ NPCs.STRAY_DOG_4766,
+ NPCs.STRAY_DOG_4767,
+ NPCs.STRAY_DOG_5917,
+ NPCs.STRAY_DOG_5918
+ )
+
+ onUseWith(IntType.NPC, bones, *dogs) { player, used, with ->
+ used as Item; with as NPC
+
+ var woof = "Woof"
+
+ if (removeItem(player, used)) {
+ sendMessage(
+ player,
+ "You feed the ${with.definition.name.lowercase()} your ${used.definition.name.lowercase()}."
+ )
+
+ when (used.id) {
+ Items.BURNT_BONES_528 -> {
+ sendMessage(
+ player,
+ "The dog looks at you, disappointed, but takes the bones anyway."
+ )
+
+ woof = "Woof..."
+ }
+
+ Items.FAYRG_BONES_4830,
+ Items.RAURG_BONES_4832,
+ Items.OURG_BONES_4834 -> {
+ sendMessage(
+ player,
+ "The dog looks at you, confused, but takes the bones anyway."
+ )
+
+ woof = "Woof..?"
+ }
+
+ Items.BABYDRAGON_BONES_534,
+ Items.BIG_BONES_532 -> {
+ sendMessage(
+ player,
+ "The dog seems to be very happy."
+ )
+
+ woof = "Woof!"
+ }
+
+ Items.WYVERN_BONES_6812,
+ Items.DRAGON_BONES_536 -> {
+ sendMessage(
+ player,
+ "The dog seems to be extremely overjoyed."
+ )
+
+ woof = "WOOF!"
+ }
+ }
+
+ sendChat(with, woof)
+ }
+
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/.gitlab/issue_templates/.gitkeep b/Server/src/main/content/global/handlers/item/withnpc/CatOnArdougneCivilian.kt
similarity index 100%
rename from .gitlab/issue_templates/.gitkeep
rename to Server/src/main/content/global/handlers/item/withnpc/CatOnArdougneCivilian.kt
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/withnpc/CiderOnForester.kt b/Server/src/main/content/global/handlers/item/withnpc/CiderOnForester.kt
similarity index 85%
rename from Server/src/main/kotlin/rs09/game/interaction/item/withnpc/CiderOnForester.kt
rename to Server/src/main/content/global/handlers/item/withnpc/CiderOnForester.kt
index 7ab4498e7..31cb87218 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/withnpc/CiderOnForester.kt
+++ b/Server/src/main/content/global/handlers/item/withnpc/CiderOnForester.kt
@@ -1,18 +1,19 @@
-package rs09.game.interaction.item.withnpc
+package content.global.handlers.item.withnpc
-import api.inBorders
-import api.sendNPCDialogue
+import core.api.inBorders
+import core.api.sendNPCDialogue
import core.game.node.entity.player.link.diary.DiaryType
import core.game.node.item.Item
import org.rs09.consts.Items
-import rs09.game.content.dialogue.DialogueFile
-import rs09.game.interaction.InteractionListener
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
class CiderOnForester : InteractionListener {
override fun defineListeners() {
val ids = intArrayOf(1,2,3,4,5)
- onUseWith(NPC, Items.CIDER_5763, *ids){player, used, with ->
+ onUseWith(IntType.NPC, Items.CIDER_5763, *ids){ player, used, with ->
if(inBorders(player, 2689, 3488, 2700, 3498)){
player.dialogueInterpreter.open(CiderOnForesterDialogue(),with)
return@onUseWith true
diff --git a/Server/src/main/content/global/handlers/item/withnpc/FeedFaladorSheepdog.kt b/Server/src/main/content/global/handlers/item/withnpc/FeedFaladorSheepdog.kt
new file mode 100644
index 000000000..3d32a2e57
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/FeedFaladorSheepdog.kt
@@ -0,0 +1,51 @@
+package content.global.handlers.item.withnpc
+
+import core.api.*
+import content.global.skill.prayer.Bones
+import content.data.Meat
+import content.data.MeatState
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Animations
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class FeedFaladorSheepdog : InteractionListener {
+ companion object {
+ private const val SHEEP_DOG_NPC = NPCs.SHEEPDOG_2311
+ private val FEED_ANIMATION = Animation(Animations.HUMAN_BURYING_BONES_827)
+ private val CONSUMABLE_BONES = Bones.array
+ .filter { it != Items.BURNT_BONES_528 }
+ .toHashSet()
+ private val CONSUMABLE_MEATS = Meat.values()
+ .filter { it.state == MeatState.INEDIBLE_RAW || it.state == MeatState.EDIBLE_COOKED }
+ .map { it.id }
+ .toHashSet()
+ }
+
+ override fun defineListeners() {
+ onUseAnyWith(IntType.NPC, SHEEP_DOG_NPC) { player, used, with ->
+ if (CONSUMABLE_BONES.contains(used.id)) {
+ if (!removeItem(player, used.asItem())) {
+ return@onUseAnyWith true
+ }
+ sendDialogue(player, "You give the dog some nice ${used.name.toLowerCase()}. It happily gnaws on them.")
+ } else if (CONSUMABLE_MEATS.contains(used.id)) {
+ if (!removeItem(player, used.asItem())) {
+ return@onUseAnyWith true
+ }
+ sendDialogue(player, "You give the dog a nice piece of meat. It gobbles it up.")
+ } else {
+ sendMessage(player, "The dog doesn't seem interested in that.")
+ sendChat(with.asNpc(), "Grrrr!")
+ return@onUseAnyWith true
+ }
+
+ animate(player, FEED_ANIMATION)
+ sendChat(with.asNpc(), "Woof woof!")
+
+ return@onUseAnyWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withnpc/GCItemOnCat.kt b/Server/src/main/content/global/handlers/item/withnpc/GCItemOnCat.kt
new file mode 100644
index 000000000..0b54ccf55
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/GCItemOnCat.kt
@@ -0,0 +1,77 @@
+package content.global.handlers.item.withnpc
+
+import core.api.*
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import core.game.world.map.path.Path
+import core.game.world.map.path.Pathfinder
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.world.GameWorld.Pulser
+import content.data.Quests
+
+class GCItemOnCat : InteractionListener {
+ override fun defineListeners() {
+ val BEND_DOWN = 827
+
+ onUseWith(IntType.NPC, Items.BUCKET_OF_MILK_1927, NPCs.GERTRUDES_CAT_2997) { player, used, with ->
+ if(getQuestStage(player, Quests.GERTRUDES_CAT) == 20 && removeItem(player, used.asItem())){
+ addItem(player, Items.BUCKET_1925)
+ animate(player, BEND_DOWN) //bend down
+ sendChat(with.asNpc(), "Mew!")
+ setQuestStage(player, Quests.GERTRUDES_CAT, 30)
+ }
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.NPC, Items.DOOGLE_SARDINE_1552, NPCs.GERTRUDES_CAT_2997){ player, used, with ->
+ if(getQuestStage(player, Quests.GERTRUDES_CAT) == 30 && removeItem(player, used.asItem())){
+ animate(player, BEND_DOWN)
+ sendChat(with.asNpc(), "Mew!")
+ setQuestStage(player, Quests.GERTRUDES_CAT, 40)
+ }
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.NPC, Items.RAW_SARDINE_327, NPCs.GERTRUDES_CAT_2997){ player, _, _ ->
+ sendMessage(player, "The cat doesn't seem interested in that.")
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.NPC, Items.THREE_LITTLE_KITTENS_13236, NPCs.GERTRUDES_CAT_2997){ player, used, with ->
+ if(removeItem(player, used.asItem())){
+ setQuestStage(player, Quests.GERTRUDES_CAT, 60)
+ //below copied verbatim from original, I don't like it.
+ Pulser.submit(object : Pulse(1) {
+ var count = 0
+ val kitten = core.game.node.entity.npc.NPC.create(761, player.location)
+ override fun pulse(): Boolean {
+ when (count) {
+ 0 -> {
+ kitten.init()
+ kitten.face(with.asNpc())
+ with.asNpc().face(kitten)
+ with.asNpc().sendChat("Pur...")
+ kitten.sendChat("Pur...")
+ val path: Path = Pathfinder.find(with.asNpc(), Location(3310, 3510, 1))
+ path.walk(with.asNpc())
+ val pathh = Pathfinder.find(kitten, Location(3310, 3510, 1))
+ pathh.walk(kitten)
+ }
+ 5 -> {
+ kitten.clear()
+ player.setAttribute("hidefluff", System.currentTimeMillis() + 60000)
+ }
+ }
+ count++
+ return count == 6
+ }
+ })
+ }
+
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/item/withnpc/GertrudeCatUsePlugin.java b/Server/src/main/content/global/handlers/item/withnpc/GertrudeCatUsePlugin.java
similarity index 94%
rename from Server/src/main/java/core/game/interaction/item/withnpc/GertrudeCatUsePlugin.java
rename to Server/src/main/content/global/handlers/item/withnpc/GertrudeCatUsePlugin.java
index 1275872c5..efddb3bed 100644
--- a/Server/src/main/java/core/game/interaction/item/withnpc/GertrudeCatUsePlugin.java
+++ b/Server/src/main/content/global/handlers/item/withnpc/GertrudeCatUsePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withnpc;
+package content.global.handlers.item.withnpc;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
@@ -7,13 +7,14 @@ import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.quest.Quest;
import core.game.node.item.Item;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Location;
import core.game.world.map.path.Path;
import core.game.world.map.path.Pathfinder;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import content.data.Quests;
/**
* Represents the plugin used to handle the use with interactions.
@@ -50,7 +51,7 @@ public final class GertrudeCatUsePlugin extends UseWithHandler {
public boolean handle(NodeUsageEvent event) {
final Player player = event.getPlayer();
final NPC npc = ((NPC) event.getUsedWith());
- final Quest quest = player.getQuestRepository().getQuest("Gertrude's Cat");
+ final Quest quest = player.getQuestRepository().getQuest(Quests.GERTRUDES_CAT);
if (event.getUsedItem().getId() == 1927 && quest.getStage(player) == 20) {
if (player.getInventory().remove(event.getUsedItem())) {
player.getInventory().add(EMPTY_BUCKET);
diff --git a/Server/src/main/content/global/handlers/item/withnpc/HatEasterEgg.kt b/Server/src/main/content/global/handlers/item/withnpc/HatEasterEgg.kt
new file mode 100644
index 000000000..4e41d8d61
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/HatEasterEgg.kt
@@ -0,0 +1,51 @@
+package content.global.handlers.item.withnpc
+
+import core.game.node.entity.npc.NPC
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Items
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+val graphics = 482
+class HatEasterEgg : InteractionListener {
+
+ val MACHINE = 20040
+ val WIZ_HAT = Items.WIZARD_HAT_579
+ val NEW_HAT = 14650
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY,WIZ_HAT,MACHINE){ player, used, with ->
+ player.dialogueInterpreter.open(HatDialogue(), NPC(872))
+ return@onUseWith true
+ }
+ }
+
+}
+
+class HatDialogue : DialogueFile(){
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage++){
+ 0 -> {
+ npc("WHAT HAVE YOU DONE?")
+ player!!.graphics(Graphics(graphics))
+ }
+ 1 -> player(core.game.dialogue.FacialExpression.AFRAID,"What do you mean?!")
+ 2 -> npc("You've disjointed the fabric assimilation matrix!")
+ 3 -> player(core.game.dialogue.FacialExpression.THINKING,"W-what...?")
+ 4 -> npc("You've put us at risk of ripping Gielinor apart!")
+ 5 -> player(core.game.dialogue.FacialExpression.HALF_GUILTY,"I.. I just wanted a hat...")
+ 6 -> npc("Damn you and damn your hat! You could kill us all!")
+ 7 -> player("I... I'm sorry....")
+ 8 -> npc("*sigh* I've managed to stabilize the flux material inductors.")
+ 9 -> npc("You may just be safe, yet.")
+ 10 -> npc("Here, take your damn hat and get out of here.")
+ 11 -> {
+ end()
+ player!!.inventory.remove(Item(Items.WIZARD_HAT_579))
+ player!!.inventory.add(Item(14650))
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withnpc/MistagEasterEgg.kt b/Server/src/main/content/global/handlers/item/withnpc/MistagEasterEgg.kt
new file mode 100644
index 000000000..10d7aa15d
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/MistagEasterEgg.kt
@@ -0,0 +1,73 @@
+package content.global.handlers.item.withnpc
+
+import core.game.component.Component
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.world.update.flag.context.Animation
+import core.tools.END_DIALOGUE
+import core.api.*
+
+class MistagEasterEgg : InteractionListener {
+ val DIAMOND = Items.DIAMOND_1601
+ val MISTAG = NPCs.MISTAG_2084
+ val ZANIK_RING = 14649
+ val DRUNK_RENDER = 982
+
+ override fun defineListeners() {
+ onUseWith(IntType.NPC,DIAMOND,MISTAG){ player, _, with ->
+ val alreadyHasRing = player.inventory.contains(ZANIK_RING,1) || player.bank.contains(ZANIK_RING,1) || player.equipment.contains(ZANIK_RING,1)
+ player.dialogueInterpreter.open(MistagEasterEggDialogue(alreadyHasRing),with.asNpc())
+ return@onUseWith true
+ }
+
+ onEquip(ZANIK_RING){player,_ ->
+ player.appearance.transformNPC(NPCs.ZANIK_3712)
+ return@onEquip true
+ }
+
+ onUnequip(ZANIK_RING){player, _ ->
+ player.appearance.transformNPC(-1)
+ return@onUnequip true
+ }
+
+ onEquip(Items.BEER_1917){player, _ ->
+ setAttribute(player, "render-anim-override", DRUNK_RENDER)
+ return@onEquip true
+ }
+
+ onUnequip(Items.BEER_1917){player, _ ->
+ removeAttribute(player, "render-anim-override")
+ player.appearance.setDefaultAnimations()
+ player.appearance.sync()
+ return@onUnequip true
+ }
+ }
+}
+
+class MistagEasterEggDialogue(val hasRing: Boolean): DialogueFile(){
+ override fun handle(componentID: Int, buttonID: Int) {
+
+ if(hasRing){
+ npc("Lovely gem, adventurer, but I have nothing for you.").also { stage = END_DIALOGUE }
+ return
+ }
+
+ when(stage++){
+ 0 -> npc("Well thank you adventurer! Here, take this.")
+ 1 -> {
+ end()
+ if(player!!.inventory.remove(Item(Items.DIAMOND_1601))){
+ player!!.inventory.add(Item(14649))
+ }
+ }
+ }
+ }
+
+ override fun npc(vararg messages: String?): Component? {
+ return super.npc(core.game.dialogue.FacialExpression.OLD_HAPPY,*messages)
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withnpc/PoisonChaliceOnKingArthur.kt b/Server/src/main/content/global/handlers/item/withnpc/PoisonChaliceOnKingArthur.kt
new file mode 100644
index 000000000..e8bd4fe63
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/PoisonChaliceOnKingArthur.kt
@@ -0,0 +1,52 @@
+package content.global.handlers.item.withnpc
+
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.tools.END_DIALOGUE
+
+class PoisonChaliceOnKingArthur : InteractionListener {
+ override fun defineListeners() {
+ onUseWith(IntType.NPC, Items.POISON_CHALICE_197, NPCs.KING_ARTHUR_251) { player, _, with ->
+ player.dialogueInterpreter.open(PoisonChaliceOnKingArthurDialogue(), with)
+ return@onUseWith true
+ }
+ }
+}
+
+class PoisonChaliceOnKingArthurDialogue : DialogueFile() {
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ 0 -> npcl(
+ core.game.dialogue.FacialExpression.SAD,
+ "You have chosen poorly."
+ ).also { stage++ }
+
+ 1 -> playerl(
+ core.game.dialogue.FacialExpression.ANNOYED,
+ "Excuse me?"
+ ).also { stage++ }
+
+ 2 -> npcl(
+ core.game.dialogue.FacialExpression.FRIENDLY,
+ "Sorry, I meant to say 'thank you'. Most refreshing."
+ ).also { stage++ }
+
+ 3 -> playerl(
+ core.game.dialogue.FacialExpression.DISGUSTED_HEAD_SHAKE,
+ "Are you sure that stuff is safe to drink?"
+ ).also { stage++ }
+
+ 4 -> npcl(
+ core.game.dialogue.FacialExpression.HAPPY,
+ "Oh yes, Stankers' creations may be dangerous for those with weak constitutions, but, personally. I find them rather invigorating."
+ ).also {
+ player!!.inventory.remove(Item(197, 1))
+ stage = END_DIALOGUE
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withnpc/RopeOnLadyKeli.kt b/Server/src/main/content/global/handlers/item/withnpc/RopeOnLadyKeli.kt
new file mode 100644
index 000000000..3dbd34a6d
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/RopeOnLadyKeli.kt
@@ -0,0 +1,27 @@
+package content.global.handlers.item.withnpc
+
+import core.api.*
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import content.data.Quests
+
+class RopeOnLadyKeli : InteractionListener {
+ override fun defineListeners() {
+ onUseWith(IntType.NPC, Items.ROPE_954, NPCs.LADY_KELI_919) { player, used, with ->
+ if(getQuestStage(player, Quests.PRINCE_ALI_RESCUE) in 40..50 && getAttribute(player, "guard-drunk", false)){
+ if(removeItem(player, used.asItem())){
+ sendDialogue(player, "You overpower Keli, tie her up, and put her in a cupboard.")
+ setQuestStage(player, Quests.PRINCE_ALI_RESCUE, 50)
+ setAttribute(player, "keli-gone", getWorldTicks() + 350)
+ }
+ } else {
+ if (getQuestStage(player, Quests.PRINCE_ALI_RESCUE) == 40){
+ sendMessage(player, "You need to do something about the guard first.")
+ }
+ }
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withnpc/ZooknockListener.kt b/Server/src/main/content/global/handlers/item/withnpc/ZooknockListener.kt
new file mode 100644
index 000000000..297740e60
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withnpc/ZooknockListener.kt
@@ -0,0 +1,28 @@
+package content.global.handlers.item.withnpc
+
+import content.region.misc.apeatoll.dialogue.dungeon.ZooknockDialogueFile
+import core.api.openDialogue
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+open class ZooknockListener() : InteractionListener {
+ val goldBar = Items.GOLD_BAR_2357
+ val monkeyAmuletMould = Items.MAMULET_MOULD_4020
+ val monkeyDentures = Items.MONKEY_DENTURES_4006
+
+
+ val items = intArrayOf(goldBar, monkeyDentures, monkeyAmuletMould)
+
+ val zooknock = NPCs.ZOOKNOCK_1425
+
+ val lol = arrayOf(Items)
+
+ override fun defineListeners() {
+ onUseWith(IntType.NPC, items, zooknock) {
+ player, used, with -> openDialogue(player, ZooknockDialogueFile(used.id))
+ return@onUseWith false
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/interaction/item/withobject/AmmoMouldOnFurnace.kt b/Server/src/main/content/global/handlers/item/withobject/AmmoMouldOnFurnace.kt
similarity index 81%
rename from Server/src/main/kotlin/rs09/game/interaction/item/withobject/AmmoMouldOnFurnace.kt
rename to Server/src/main/content/global/handlers/item/withobject/AmmoMouldOnFurnace.kt
index 863a4f6ef..0d5929d0a 100644
--- a/Server/src/main/kotlin/rs09/game/interaction/item/withobject/AmmoMouldOnFurnace.kt
+++ b/Server/src/main/content/global/handlers/item/withobject/AmmoMouldOnFurnace.kt
@@ -1,26 +1,26 @@
-package rs09.game.interaction.item.withobject
+package content.global.handlers.item.withobject
-import api.*
-import core.game.content.quest.members.dwarfcannon.DwarfCannon
+import content.data.Quests
+import core.api.*
import core.game.node.Node
import core.game.node.entity.player.Player
import core.game.node.entity.skill.Skills
-import core.game.node.item.Item
import core.game.system.task.Pulse
-import core.game.world.update.flag.context.Animation
import org.rs09.consts.Items
-import rs09.game.content.dialogue.SkillDialogueHandler
-import rs09.game.interaction.InteractionListener
+import core.game.dialogue.SkillDialogueHandler
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import org.rs09.consts.Sounds
-class AmmoMouldOnFurnace : InteractionListener{
+class AmmoMouldOnFurnace : InteractionListener {
private val furnaces = intArrayOf(4304, 6189, 11010, 11666, 12100, 12809, 18497, 26814, 30021, 30510, 36956, 37651) // abstract when smelting converted to kotlin
private val levelRequirement = 35
private fun cannonBallOnUseWithHandler(player: Player, used: Node, with: Node): Boolean {
face(player, with.centerLocation)
- if(!isQuestComplete(player, DwarfCannon.NAME)) {
- sendDialogue(player, "You need to complete the ${DwarfCannon.NAME} quest in order to do this.")
+ if(!isQuestComplete(player, Quests.DWARF_CANNON)) {
+ sendDialogue(player, "You need to complete the ${Quests.DWARF_CANNON} quest in order to do this.")
return true
}
if (getDynLevel(player, Skills.SMITHING) < levelRequirement) {
@@ -40,6 +40,7 @@ class AmmoMouldOnFurnace : InteractionListener{
0 -> {
sendMessage(player,"You heat the steel bar into a liquid state.")
animate(player, 3243) // 899 would be preferable but the arms spaz out
+ playAudio(player, Sounds.FURNACE_2725)
}
3 -> {
sendMessage(player,"You pour the molten metal into your cannonball mould.")
@@ -83,6 +84,6 @@ class AmmoMouldOnFurnace : InteractionListener{
}
override fun defineListeners() {
- onUseWith(SCENERY, Items.STEEL_BAR_2353, *furnaces, handler = ::cannonBallOnUseWithHandler)
+ onUseWith(IntType.SCENERY, Items.STEEL_BAR_2353, *furnaces, handler = ::cannonBallOnUseWithHandler)
}
}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withobject/AxeOnTree.kt b/Server/src/main/content/global/handlers/item/withobject/AxeOnTree.kt
new file mode 100644
index 000000000..b9e89f6e4
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/AxeOnTree.kt
@@ -0,0 +1,20 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import content.global.skill.gather.woodcutting.WoodcuttingNode
+import content.global.skill.gather.woodcutting.WoodcuttingSkillPulse
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class AxeOnTree : InteractionListener {
+ val axes = intArrayOf(Items.BRONZE_AXE_1351, Items.MITHRIL_AXE_1355, Items.IRON_AXE_1349, Items.BLACK_AXE_1361, Items.STEEL_AXE_1353, Items.ADAMANT_AXE_1357, Items.RUNE_AXE_1359, Items.DRAGON_AXE_6739, Items.INFERNO_ADZE_13661)
+ val trees = WoodcuttingNode.values().map { it.id }.toIntArray()
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, axes, *trees){ player, _, with ->
+ submitIndividualPulse(player, WoodcuttingSkillPulse(player, with.asScenery()))
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withobject/CauldronOfThunderListener.kt b/Server/src/main/content/global/handlers/item/withobject/CauldronOfThunderListener.kt
new file mode 100644
index 000000000..d33edf37a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/CauldronOfThunderListener.kt
@@ -0,0 +1,45 @@
+package content.global.handlers.item.withobject
+
+import core.api.addItem
+import core.api.animate
+import core.api.removeItem
+import core.api.sendMessage
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import java.util.*
+
+/**
+ * Listener for Cauldron of Thunder interaction
+ * @author Byte
+ */
+@Suppress("unused")
+class CauldronOfThunderListener : InteractionListener {
+
+ companion object {
+ private val ANIMATION = Animation(833)
+
+ private val ITEM_MAP = mapOf(
+ Items.RAW_BEEF_2132 to Items.ENCHANTED_BEEF_522,
+ Items.RAW_RAT_MEAT_2134 to Items.ENCHANTED_RAT_MEAT_523,
+ Items.RAW_BEAR_MEAT_2136 to Items.ENCHANTED_BEAR_MEAT_524,
+ Items.RAW_CHICKEN_2138 to Items.ENCHANTED_CHICKEN_525
+ )
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, ITEM_MAP.keys.toIntArray(), Scenery.CAULDRON_OF_THUNDER_2142) { player, used, _ ->
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ animate(player, ANIMATION)
+ addItem(player, ITEM_MAP[used.id]!!)
+ sendMessage(player, "You dip the " + used.name.lowercase(Locale.getDefault()) + " in the cauldron.")
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/ChestKeyListener.kt b/Server/src/main/content/global/handlers/item/withobject/ChestKeyListener.kt
new file mode 100644
index 000000000..a64638f3f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/ChestKeyListener.kt
@@ -0,0 +1,35 @@
+package content.global.handlers.item.withobject
+
+import core.api.addItem
+import core.api.removeItem
+import core.api.replaceScenery
+import core.api.sendMessage
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for using key on pirate chest in Blue Moon Inn
+ * @author Byte
+ */
+@Suppress("unused")
+class ChestKeyListener : InteractionListener {
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.CHEST_KEY_432, Scenery.CHEST_2079) { player, used, with ->
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ replaceScenery(with as core.game.node.scenery.Scenery, 2080, 3)
+
+ addItem(player, Items.PIRATE_MESSAGE_433)
+ sendMessage(player, "You unlock the chest.")
+ sendMessage(player, "All that's in the chest is a message...")
+ sendMessage(player, "You take the message from the chest.")
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/CoalTruckListener.kt b/Server/src/main/content/global/handlers/item/withobject/CoalTruckListener.kt
new file mode 100644
index 000000000..c2fef6e3c
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/CoalTruckListener.kt
@@ -0,0 +1,76 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+/**
+ * Handles coal truck interactions
+ * @author ceik
+ * @author vddCore
+ */
+class CoalTruckListener : InteractionListener {
+ companion object {
+ private const val ATTRIBUTE_COAL_TRUCK_INVENTORY = "coal-truck-inventory"
+ }
+
+ override fun defineListeners() {
+ on(Scenery.COAL_TRUCK_2114, IntType.SCENERY, "remove-coal") { player, node ->
+ var coalInTruck = getAttribute(player, ATTRIBUTE_COAL_TRUCK_INVENTORY, 0)
+
+ if (coalInTruck == 0) {
+ sendDialogue(player, "The coal truck is empty.")
+ return@on true
+ }
+
+ var toRemove = freeSlots(player)
+
+ if (toRemove > coalInTruck) {
+ toRemove = coalInTruck
+ }
+
+ if (addItem(player, Items.COAL_453, toRemove)) {
+ coalInTruck -= toRemove
+ setAttribute(player, "/save:$ATTRIBUTE_COAL_TRUCK_INVENTORY", coalInTruck)
+ }
+
+ return@on true
+ }
+
+ on(Scenery.COAL_TRUCK_2114, IntType.SCENERY, "investigate") { player, _ ->
+ val coalInTruck = getAttribute(player, ATTRIBUTE_COAL_TRUCK_INVENTORY, 0)
+
+ sendDialogue(
+ player,
+ "There is currently $coalInTruck coal in the truck. "
+ + "The truck has space for " + (120 - coalInTruck) + " more coal."
+ )
+ return@on true
+ }
+
+ onUseWith(IntType.SCENERY, Items.COAL_453, Scenery.COAL_TRUCK_2114) { player, _, _ ->
+ var coalInTruck = getAttribute(player, ATTRIBUTE_COAL_TRUCK_INVENTORY, 0)
+ var coalInInventory = amountInInventory(player, Items.COAL_453)
+
+ if (coalInInventory + coalInTruck >= 120) {
+ coalInInventory = 120 - coalInTruck
+ sendMessage(player, "You have filled up the coal truck.")
+ }
+
+ if (removeItem(player, Item(Items.COAL_453, coalInInventory))) {
+ coalInTruck += coalInInventory
+
+ setAttribute(
+ player,
+ "/save:$ATTRIBUTE_COAL_TRUCK_INVENTORY",
+ coalInTruck
+ )
+ }
+
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withobject/DragonPlatebody.java b/Server/src/main/content/global/handlers/item/withobject/DragonPlatebody.java
new file mode 100644
index 000000000..b8f3d60bf
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/DragonPlatebody.java
@@ -0,0 +1,5 @@
+package content.global.handlers.item.withobject;
+
+public class DragonPlatebody {
+
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/FishEasterEgg.kt b/Server/src/main/content/global/handlers/item/withobject/FishEasterEgg.kt
new file mode 100644
index 000000000..c5e1869f7
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/FishEasterEgg.kt
@@ -0,0 +1,26 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import content.global.skill.gather.woodcutting.WoodcuttingNode
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class FishEasterEgg : InteractionListener {
+ val TREE_IDs = WoodcuttingNode.values().map { it.id }.toIntArray()
+
+ val fish = intArrayOf(Items.RAW_HERRING_345, Items.HERRING_347)
+ val doors = intArrayOf(1967,1968)
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, fish, *TREE_IDs){ player, _, _ ->
+ sendMessage(player, "This is not the mightiest tree in the forest.")
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.SCENERY, fish, *doors){ player, _, _ ->
+ sendMessage(player, "It can't be done!")
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withobject/GWDEntranceRopeListener.kt b/Server/src/main/content/global/handlers/item/withobject/GWDEntranceRopeListener.kt
new file mode 100644
index 000000000..324364998
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/GWDEntranceRopeListener.kt
@@ -0,0 +1,28 @@
+package content.global.handlers.item.withobject
+
+import core.api.removeItem
+import core.api.setVarbit
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for using a rope directly on the GWD entrance hole
+ * @author Byte
+ */
+@Suppress("unused")
+class GWDEntranceRopeListener : InteractionListener {
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.ROPE_954, Scenery.HOLE_26340) { player, used, _ ->
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ setVarbit(player, 3932, 1, true)
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/HairdresserCheeseListener.kt b/Server/src/main/content/global/handlers/item/withobject/HairdresserCheeseListener.kt
new file mode 100644
index 000000000..0606f65b2
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/HairdresserCheeseListener.kt
@@ -0,0 +1,37 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.node.entity.player.link.diary.DiaryType
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for using cheese on Ridgeley on the treadmill
+ * @author Byte
+ */
+@Suppress("unused")
+class HairdresserCheeseListener : InteractionListener {
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.CHEESE_1985, Scenery.TREADMILL_11677) { player, used, _ ->
+ lock(player, 5)
+
+ var isTaskSuccessful = false
+ runTask(player,3,1) {
+ if (!removeItem(player, used)) {
+ return@runTask
+ }
+
+ sendMessage(player,"You throw the cheese to Ridgeley, for which he appears grateful.")
+ player.achievementDiaryManager.finishTask(player, DiaryType.FALADOR, 0, 6)
+ unlock(player)
+
+ isTaskSuccessful = true
+ }
+
+ return@onUseWith isTaskSuccessful
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/HatStand.kt b/Server/src/main/content/global/handlers/item/withobject/HatStand.kt
new file mode 100644
index 000000000..91205e535
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/HatStand.kt
@@ -0,0 +1,20 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.api.EquipmentSlot
+import core.cache.def.impl.ItemDefinition
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class HatStand : InteractionListener {
+
+ val hats = ItemDefinition.getDefinitions().values.filter { it.getConfiguration("equipment_slot",0) == EquipmentSlot.HEAD.ordinal }.map { it.id }.toIntArray()
+ val hat_stand = 374
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, hats, hat_stand){ player, used, with ->
+ sendDialogue(player, "It'd probably fall off if I tried to do that.")
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withobject/KaramjaBananaCrateListener.kt b/Server/src/main/content/global/handlers/item/withobject/KaramjaBananaCrateListener.kt
new file mode 100644
index 000000000..6db716bf9
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/KaramjaBananaCrateListener.kt
@@ -0,0 +1,128 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import kotlin.math.min
+
+/**
+ * Listener for Karamja banana crate interaction
+ * @author Byte
+ */
+@Suppress("unused")
+class KaramjaBananaCrateListener : InteractionListener {
+
+ companion object {
+ private const val CRATE_CAPACITY = 10
+
+ private val ANIMATION = Animation(832)
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.KARAMJAN_RUM_431, Scenery.CRATE_2072) { player, used, _ ->
+ if (!player.savedData.globalData.isLuthasTask) {
+ sendMessage(player, "I don't know what goes in there.")
+ return@onUseWith true
+ }
+
+ if (getAttribute(player, "stashed-rum", false)) {
+ sendMessage(player, "There's already some rum in here...")
+ return@onUseWith true
+ }
+
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ lock(player, 2)
+ animate(player, ANIMATION)
+ sendDialogue(player, "You stash the rum in the crate.")
+ setAttribute(player, "/save:stashed-rum", true)
+
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.SCENERY, Items.BANANA_1963, Scenery.CRATE_2072) { player, used, _ ->
+ if (!player.savedData.globalData.isLuthasTask) {
+ sendMessage(player, "I don't know what goes in there.")
+ return@onUseWith true
+ }
+
+ val currNumBananasInCrate = player.savedData.globalData.karamjaBananas
+
+ if (currNumBananasInCrate >= CRATE_CAPACITY) {
+ sendMessage(player, "The crate is already full.")
+ return@onUseWith true
+ }
+
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ lock(player, 2)
+ animate(player, ANIMATION)
+ sendDialogue(player, "You pack a banana into the crate.")
+ player.savedData.globalData.setKaramjaBannanas(currNumBananasInCrate + 1)
+
+ return@onUseWith true
+ }
+
+ on(Scenery.CRATE_2072, IntType.SCENERY, "search") { player, _ ->
+ if (!player.savedData.globalData.isLuthasTask) {
+ sendMessage(player, "I don't know what goes in there.")
+ return@on true
+ }
+
+ val currNumBananasInCrate = player.savedData.globalData.karamjaBananas
+
+ if (currNumBananasInCrate == 0) {
+ sendMessage(player, "The crate is completely empty.")
+ return@on true
+ }
+
+ if (currNumBananasInCrate >= CRATE_CAPACITY) {
+ sendMessage(player, "The crate is full of bananas.")
+ return@on true
+ }
+
+ sendMessage(player, "The crate has " + currNumBananasInCrate + " banana" + (if (currNumBananasInCrate > 1) "s" else "") + " inside.")
+
+ return@on true
+ }
+
+ on(Scenery.CRATE_2072, IntType.SCENERY, "fill") { player, _ ->
+ if (!player.savedData.globalData.isLuthasTask) {
+ sendMessage(player, "I don't know what goes in there.")
+ return@on true
+ }
+
+ val numBananas = amountInInventory(player, Items.BANANA_1963)
+ val currNumBananasInCrate = player.savedData.globalData.karamjaBananas
+ val bananasToBeAdded = min(numBananas, CRATE_CAPACITY - player.savedData.globalData.karamjaBananas)
+
+ if (numBananas == 0) {
+ return@on true
+ }
+
+ if (currNumBananasInCrate >= CRATE_CAPACITY) {
+ sendMessage(player, "The crate is already full.")
+ return@on true
+ }
+
+ if (!removeItem(player, Item(Items.BANANA_1963, bananasToBeAdded))) {
+ return@on false
+ }
+
+ lock(player, 2)
+ animate(player, ANIMATION)
+ sendMessage(player, "You pack all your bananas into the crate.")
+ player.savedData.globalData.setKaramjaBannanas(player.savedData.globalData.karamjaBananas + bananasToBeAdded)
+
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/PoisonFountainListener.kt b/Server/src/main/content/global/handlers/item/withobject/PoisonFountainListener.kt
new file mode 100644
index 000000000..efb5a85eb
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/PoisonFountainListener.kt
@@ -0,0 +1,56 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for using poisoned fish food on Draynor Manor fountain
+ * @author Byte
+ */
+@Suppress("unused")
+class PoisonFountainListener : InteractionListener {
+
+ companion object {
+ private val ANIMATION = Animation(881)
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.POISONED_FISH_FOOD_274, Scenery.FOUNTAIN_153) { player, used, _ ->
+ if (getAttribute(player, "piranhas-killed", false)) {
+ sendMessage(player, "The piranhas are dead already.")
+ return@onUseWith true
+ }
+
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ lock(player, 5)
+ animate(player, ANIMATION)
+ sendMessage(player, "You pour the poisoned fish food into the fountain.")
+ setAttribute(player, "/save:piranhas-killed", true)
+
+ submitIndividualPulse(player, object : Pulse(1) {
+ var counter = 0
+ override fun pulse(): Boolean {
+ when (counter++) {
+ 1 -> sendMessage(player, "The piranhas start eating the food...")
+ 2 -> {
+ sendMessage(player, "... then die and float to the surface.")
+ unlock(player)
+ return true
+ }
+ }
+ return false
+ }
+ })
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/SackOnHay.kt b/Server/src/main/content/global/handlers/item/withobject/SackOnHay.kt
new file mode 100644
index 000000000..0b942e623
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/SackOnHay.kt
@@ -0,0 +1,22 @@
+package content.global.handlers.item.withobject
+
+import core.api.Container
+import core.api.*
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class SackOnHay : InteractionListener {
+ val SACK = Items.EMPTY_SACK_5418
+ val HAY = intArrayOf(36892, 36894, 36896, 300, 34593, 298, 299)
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, SACK, *HAY){ player, used, _ ->
+ if(removeItem(player, used.asItem(), Container.INVENTORY)){
+ addItem(player, Items.HAY_SACK_6057, 1)
+ sendMessage(player, "You fill the sack with hay.")
+ }
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/item/withobject/SandSourceListener.kt b/Server/src/main/content/global/handlers/item/withobject/SandSourceListener.kt
new file mode 100644
index 000000000..799084610
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/SandSourceListener.kt
@@ -0,0 +1,48 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for collecting buckets of sand from a sand pit
+ * @author Byte
+ */
+@Suppress("unused")
+class SandSourceListener : InteractionListener {
+
+ companion object {
+ private val ANIMATION = Animation(895)
+
+ private val SAND_PITS = intArrayOf(
+ Scenery.SAND_PIT_2645,
+ Scenery.SAND_PIT_4373,
+ Scenery.SANDPIT_10814
+ )
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.BUCKET_1925, *SAND_PITS) { player, used, _ ->
+ val numEmptyBuckets = amountInInventory(player, used.id)
+
+ var animationTrigger = 0
+ runTask(player, 2, numEmptyBuckets) {
+ if (removeItem(player, used)) {
+ if (animationTrigger % 2 == 0) {
+ animate(player, ANIMATION)
+ }
+
+ sendMessage(player, "You fill the bucket with sand.")
+ addItem(player, Items.BUCKET_OF_SAND_1783)
+ }
+
+ animationTrigger++
+ }
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/SapCollectListener.kt b/Server/src/main/content/global/handlers/item/withobject/SapCollectListener.kt
new file mode 100644
index 000000000..3607fda98
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/SapCollectListener.kt
@@ -0,0 +1,88 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Animations
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for collecting buckets of sap from trees
+ * @author Byte
+ */
+@Suppress("unused")
+class SapCollectListener : InteractionListener {
+
+ companion object {
+ private val ANIMATION = Animation(Animations.HUMAN_FILL_BUCKET_WITH_SAP_2009)
+
+ private val TREES = intArrayOf(
+ Scenery.TREE_1276,
+ Scenery.TREE_1277,
+ Scenery.TREE_1278,
+ Scenery.TREE_1280,
+ Scenery.EVERGREEN_1315,
+ Scenery.EVERGREEN_1316,
+ Scenery.EVERGREEN_1318,
+ Scenery.EVERGREEN_1319,
+ Scenery.TREE_1330,
+ Scenery.TREE_1331,
+ Scenery.TREE_1332,
+ Scenery.TREE_3033,
+ Scenery.TREE_3034,
+ Scenery.TREE_3035,
+ Scenery.TREE_3036,
+ Scenery.TREE_3879,
+ Scenery.TREE_3881,
+ Scenery.TREE_3882,
+ Scenery.TREE_3883,
+ Scenery.TREE_10041,
+ Scenery.TREE_14308,
+ Scenery.TREE_14309,
+ Scenery.TREE_30132,
+ Scenery.TREE_30133,
+ Scenery.TREE_37477,
+ Scenery.TREE_37478,
+ Scenery.TREE_37652
+ )
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.KNIFE_946, *TREES) { player, _, _ ->
+ if (!inInventory(player, Items.BUCKET_1925)) {
+ sendMessage(player, "You need a bucket to do that.")
+ }
+
+ submitIndividualPulse(player, object : Pulse(2) {
+ override fun pulse(): Boolean {
+ if (removeItem(player, Items.BUCKET_1925)) {
+ animate(player, ANIMATION)
+ sendMessage(player, "You cut the tree and allow its sap to drip down into your bucket.")
+ addItem(player, Items.BUCKET_OF_SAP_4687)
+ return true
+ }
+ return false
+ }
+ })
+
+ return@onUseWith true
+ }
+
+ on(Items.BUCKET_OF_SAP_4687, IntType.ITEM, "empty") { player, node ->
+ val item = node as Item
+
+ if (item.slot < 0) {
+ return@on false
+ }
+
+ replaceSlot(player, item.slot, Item(Items.BUCKET_1925))
+ sendMessage(player, "You empty the contents of the bucket on the floor.")
+
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/withobject/SmithingPlugin.java b/Server/src/main/content/global/handlers/item/withobject/SmithingPlugin.java
similarity index 92%
rename from Server/src/main/java/core/game/interaction/item/withobject/SmithingPlugin.java
rename to Server/src/main/content/global/handlers/item/withobject/SmithingPlugin.java
index 6b26b7539..e9ef946b3 100644
--- a/Server/src/main/java/core/game/interaction/item/withobject/SmithingPlugin.java
+++ b/Server/src/main/content/global/handlers/item/withobject/SmithingPlugin.java
@@ -1,9 +1,10 @@
-package core.game.interaction.item.withobject;
+package content.global.handlers.item.withobject;
+import content.global.skill.skillcapeperks.SkillcapePerks;
import core.cache.def.impl.SceneryDefinition;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.smithing.SmithingBuilder;
-import core.game.node.entity.skill.smithing.smelting.Bar;
+import content.global.skill.smithing.SmithingBuilder;
+import content.global.skill.smithing.smelting.Bar;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.OptionHandler;
import core.game.interaction.UseWithHandler;
@@ -13,8 +14,8 @@ import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.plugin.Plugin;
import core.plugin.Initializable;
-import rs09.game.node.entity.skill.skillcapeperks.SkillcapePerks;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
+import content.data.Quests;
/**
* Represents the option handler used for smithing.
@@ -44,6 +45,7 @@ public final class SmithingPlugin extends UseWithHandler {
addHandler(6150, OBJECT_TYPE, this);
addHandler(22725, OBJECT_TYPE, this);
addHandler(26817, OBJECT_TYPE, this);
+ addHandler(26822, OBJECT_TYPE, this);
addHandler(37622, OBJECT_TYPE, this);
addHandler(42027, OBJECT_TYPE, this);
ClassScanner.definePlugin(new OptionHandler() {
@@ -67,7 +69,7 @@ public final class SmithingPlugin extends UseWithHandler {
@Override
public boolean handle(NodeUsageEvent event) {
final Player player = event.getPlayer();
- if (((Scenery) event.getUsedWith()).getId() == 2782 && !player.getQuestRepository().isComplete("Doric's Quest")) {
+ if (((Scenery) event.getUsedWith()).getId() == 2782 && !player.getQuestRepository().isComplete(Quests.DORICS_QUEST)) {
player.getDialogueInterpreter().sendDialogue("Property of Doric the Dwarf.");
return true;
}
diff --git a/Server/src/main/content/global/handlers/item/withobject/SpiritShieldBlessListener.kt b/Server/src/main/content/global/handlers/item/withobject/SpiritShieldBlessListener.kt
new file mode 100644
index 000000000..45b0dad76
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/SpiritShieldBlessListener.kt
@@ -0,0 +1,125 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.world.repository.Repository.sendNews
+import java.util.*
+
+/**
+ * Listener for blessing spirit shield and attaching sigils
+ * @author Byte
+ */
+@Suppress("unused")
+class SpiritShieldBlessListener : InteractionListener {
+
+ companion object {
+ private const val REQUIRED_PRAYER_LEVEL_TO_BLESS_SHIELD = 85
+ private const val REQUIRED_PRAYER_LEVEL_TO_ATTACH_SIGIL = 90
+ private const val REQUIRED_SMITHING_LEVEL_TO_ATTACH_SIGIL = 85
+
+ private val ANIMATION = Animation(898)
+
+ private val COMPONENTS = intArrayOf(
+ Items.HOLY_ELIXIR_13754,
+ Items.SPIRIT_SHIELD_13734
+ )
+
+ private val ALTARS = intArrayOf(
+ Scenery.ALTAR_409,
+ Scenery.ALTAR_2640,
+ Scenery.ALTAR_4008,
+ Scenery.ALTAR_18254,
+ Scenery.ALTAR_19145,
+ Scenery.ALTAR_24343,
+ Scenery.SARADOMIN_ALTAR_26287,
+ Scenery.ALTAR_27661,
+ Scenery.ALTAR_34616,
+ Scenery.ALTAR_36972,
+ Scenery.ALTAR_39842
+ )
+
+ private val SIGILS_SHIELDS_MAP = mapOf(
+ Items.ARCANE_SIGIL_13746 to Items.ARCANE_SPIRIT_SHIELD_13738,
+ Items.DIVINE_SIGIL_13748 to Items.DIVINE_SPIRIT_SHIELD_13740,
+ Items.ELYSIAN_SIGIL_13750 to Items.ELYSIAN_SPIRIT_SHIELD_13742,
+ Items.SPECTRAL_SIGIL_13752 to Items.SPECTRAL_SPIRIT_SHIELD_13744
+ )
+
+ private val ANVILS = intArrayOf(
+ Scenery.ANVIL_2782,
+ Scenery.ANVIL_2783,
+ Scenery.ANVIL_4306,
+ Scenery.ANVIL_6150,
+ Scenery.ANVIL_22725,
+ Scenery.LATHE_26817,
+ Scenery.ANVIL_26822,
+ Scenery.ANVIL_37622
+ )
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, COMPONENTS, *ALTARS) { player, _, _ ->
+ if (!inInventory(player, Items.HOLY_ELIXIR_13754) || !inInventory(player, Items.SPIRIT_SHIELD_13734)) {
+ sendMessage(player, "You need a holy elixir and an unblessed spirit shield in order to do this.")
+ return@onUseWith true
+ }
+
+ if (!hasLevelDyn(player, Skills.PRAYER, REQUIRED_PRAYER_LEVEL_TO_BLESS_SHIELD)) {
+ sendMessage(player, "You need a Prayer level of $REQUIRED_PRAYER_LEVEL_TO_BLESS_SHIELD in order to bless the shield.")
+ }
+
+ if (!removeItem(player, Items.HOLY_ELIXIR_13754)) {
+ return@onUseWith false
+ }
+
+ if (!removeItem(player, Items.SPIRIT_SHIELD_13734)) {
+ return@onUseWith false
+ }
+
+ addItem(player, Items.BLESSED_SPIRIT_SHIELD_13736)
+ sendMessage(player, "You successfully bless the shield using the holy elixir.")
+
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.SCENERY, SIGILS_SHIELDS_MAP.keys.toIntArray(), *ANVILS) { player, used, _ ->
+ if (!inInventory(player, Items.BLESSED_SPIRIT_SHIELD_13736)) {
+ sendMessage(player, "You need a blessed spirit shield in order to continue.")
+ return@onUseWith true
+ }
+
+ if (!hasLevelDyn(player, Skills.PRAYER, REQUIRED_PRAYER_LEVEL_TO_ATTACH_SIGIL) || !hasLevelDyn(player, Skills.SMITHING, REQUIRED_SMITHING_LEVEL_TO_ATTACH_SIGIL)) {
+ sendMessage(player, "You need a Prayer level of $REQUIRED_PRAYER_LEVEL_TO_ATTACH_SIGIL and a Smithing level of $REQUIRED_SMITHING_LEVEL_TO_ATTACH_SIGIL in order to attach the sigil.")
+ return@onUseWith true
+ }
+
+ if (!inInventory(player, Items.HAMMER_2347)) {
+ sendMessage(player, "You need a hammer in order to do this.")
+ return@onUseWith true
+ }
+
+ sendDialogueOptions(player, "Combine the two?", "Yes", "No")
+ addDialogueAction(player) { _, buttonId ->
+ when (buttonId) {
+ 2 -> {
+ if (removeItem(player, used) && removeItem(player, Items.BLESSED_SPIRIT_SHIELD_13736)) {
+ val product = Item(SIGILS_SHIELDS_MAP[used.id]!!)
+ addItem(player, product.id)
+ animate(player, ANIMATION)
+ sendItemDialogue(player, product.id, "You successfully attach the " + used.name.lowercase(Locale.getDefault()) + " to the blessed spirit shield.")
+ sendNews(player.username + " has just made the " + product.name + ".")
+ }
+ }
+ }
+ }
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/SwampHoleRopeListener.kt b/Server/src/main/content/global/handlers/item/withobject/SwampHoleRopeListener.kt
new file mode 100644
index 000000000..020b50e62
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/SwampHoleRopeListener.kt
@@ -0,0 +1,33 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+/**
+ * Listener for using rope on Lumbridge swamp hole
+ * @author Byte
+ */
+@Suppress("unused")
+class SwampHoleRopeListener : InteractionListener {
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.ROPE_954, Scenery.DARK_HOLE_5947) { player, used, _ ->
+ if (player.savedData.globalData.hasTiedLumbridgeRope()) {
+ sendDialogue(player, "There is already a rope tied to the entrance.")
+ return@onUseWith true
+ }
+
+ if (!removeItem(player, used)) {
+ return@onUseWith false
+ }
+
+ sendItemDialogue(player, used, "You tie the rope to the top of the entrance and throw it down.")
+ player.savedData.globalData.setLumbridgeRope(true)
+
+ return@onUseWith true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/item/withobject/WaterSourceListener.kt b/Server/src/main/content/global/handlers/item/withobject/WaterSourceListener.kt
new file mode 100644
index 000000000..59a8e2049
--- /dev/null
+++ b/Server/src/main/content/global/handlers/item/withobject/WaterSourceListener.kt
@@ -0,0 +1,158 @@
+package content.global.handlers.item.withobject
+
+import core.api.*
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.world.map.Location
+import org.rs09.consts.Sounds
+
+/**
+ * Handles filling most water sources.
+ * @author Ceikry
+ */
+class WaterSourceListener : InteractionListener {
+ // NOTE '9695' should be removed from the array below once the sink object can be used directly, this is a temporary
+ // solution.
+ // this is ugly!
+ private val waterSources = intArrayOf(21355, 16302, 6827, 11661, 24160, 34577, 15936, 15937, 15938, 23920, 35469, 24265, 153, 879, 880, 2864, 6232, 10436, 10437, 10827, 11007, 11759, 21764, 22973, 24161, 24214, 24265, 28662, 30223, 30820, 34579, 36781, 873, 874, 4063, 6151, 8699, 9143, 9684, 9695, 10175, 12279, 12974, 13563, 13564, 14868, 14917, 14918, 15678, 16704, 16705, 20358, 22715, 24112, 24314, 25729, 25929, 26966, 29105, 33458, 34082, 34411, 34496, 34547, 34566, 35762, 36971, 37154, 37155, 878, 884, 3264, 3305, 3359, 4004, 4005, 6097, 6249, 6549, 8747, 8927, 11793, 12201, 12897, 24166, 26945, 31359, 32023, 32024, 34576, 35671, 40063, 13561, 13563, 13559, 12089)
+
+ private val nonWellableMsg = "If I drop my @ down there, I don't think I'm likely to get it back."
+ private val animation = Animation(832)
+
+ override fun defineListeners()
+ {
+ onUseWith(IntType.SCENERY, WaterVessel.getInputs(), *waterSources){ player, used, with ->
+ val vessel = WaterVessel.forId(used.id) ?: return@onUseWith false
+
+ if(with.name.contains("well", ignoreCase = true) && !vessel.wellable)
+ {
+ sendMessage(player, formatMsgText(used.name, nonWellableMsg))
+ return@onUseWith true
+ }
+
+ if(with.id == 9695 && player.location.regionId != 11571)
+ {
+ return@onUseWith false
+ }
+
+ //ugly achievement code, achievement system sux
+ if(vessel == WaterVessel.BUCKET && with.id == 11661)
+ {
+ if(!player.achievementDiaryManager.getDiary(DiaryType.FALADOR).isComplete(0,7))
+ player.achievementDiaryManager.getDiary(DiaryType.FALADOR).updateTask(player, 0, 7, true)
+ }
+
+ player.pulseManager.run(object : Pulse(1){
+ override fun pulse(): Boolean {
+ if(removeItem(player, used.id))
+ {
+ animate(player, animation)
+ sendMessage(player, formatMsgText(used.name, vessel.fillMsg))
+ addItemOrDrop(player, vessel.output)
+ if(with.name.contains("well", ignoreCase = true)) {
+ playAudio(player, Sounds.WELL_FILL_2615)
+ }
+ else {
+ playAudio(player, Sounds.TAP_FILL_2609)
+ }
+
+ }
+ return !vessel.autofill || amountInInventory(player, used.id) == 0
+ }
+ })
+
+ return@onUseWith true
+ }
+
+ // This is needed to make the crafting guild sink work, but technically it's wrong as it is the noticeboard and
+ // not the sink being used. This is a temporary solution until the sink object can be used directly.
+ setDest(IntType.SCENERY, intArrayOf(9695), "use") { player, node ->
+ if (player.location.regionId == 11571){
+ return@setDest Location.create(2934, 3280, 0)
+ }
+ return@setDest node.location
+ }
+ }
+
+ private fun formatMsgText(name: String, template: String): String
+ {
+ val sb = StringBuilder()
+ val templateChars = template.toCharArray()
+ val nameChars = name.toCharArray()
+
+ for(tc in templateChars)
+ {
+ if(tc == '@'){
+ for(nc in nameChars)
+ {
+ if (nc == '(') break
+ else sb.append(nc.toLowerCase())
+ }
+ }
+ else sb.append(tc)
+ }
+
+ return sb.toString()
+ }
+
+ internal enum class WaterVessel(val inputs: IntArray, val output: Int, val wellable: Boolean = false, val autofill: Boolean = true, val fillMsg: String = "You fill the @.")
+ {
+ BUCKET(
+ inputs = intArrayOf(Items.BUCKET_1925),
+ output = Items.BUCKET_OF_WATER_1929,
+ wellable = true
+ ),
+ VIAL(
+ inputs = intArrayOf(Items.VIAL_229),
+ output = Items.VIAL_OF_WATER_227,
+ ),
+ JUG(
+ inputs = intArrayOf(Items.JUG_1935),
+ output = Items.JUG_OF_WATER_1937
+ ),
+ BOWL(
+ inputs = intArrayOf(Items.BOWL_1923),
+ output = Items.BOWL_OF_WATER_1921
+ ),
+ WATERING_CAN(
+ inputs = intArrayOf(Items.WATERING_CAN_5331,Items.WATERING_CAN1_5333, Items.WATERING_CAN2_5334, Items.WATERING_CAN3_5335, Items.WATERING_CAN4_5336, Items.WATERING_CAN5_5337, Items.WATERING_CAN6_5338, Items.WATERING_CAN7_5339),
+ output = Items.WATERING_CAN8_5340
+ ),
+ WATER_SKIN(
+ inputs = intArrayOf(Items.WATERSKIN0_1831, Items.WATERSKIN1_1829, Items.WATERSKIN2_1827, Items.WATERSKIN3_1825),
+ output = Items.WATERSKIN4_1823
+ ),
+ FISHBOWL(
+ inputs = intArrayOf(Items.FISHBOWL_6667),
+ output = Items.FISHBOWL_6668
+ );
+
+ companion object
+ {
+ //map our input item IDs to their respective WaterVessel entry
+ private val itemMap = HashMap()
+
+ init {
+ for(entry in values())
+ {
+ entry.inputs.forEach { itemMap[it] = entry }
+ }
+ }
+
+ //return a nice list of all the input IDs
+ fun getInputs(): IntArray
+ {
+ return itemMap.keys.toIntArray()
+ }
+
+ fun forId(id: Int): WaterVessel?
+ {
+ return itemMap[id]
+ }
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/item/withplayer/ChristmasCrackerUsage.java b/Server/src/main/content/global/handlers/item/withplayer/ChristmasCrackerUsage.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/item/withplayer/ChristmasCrackerUsage.java
rename to Server/src/main/content/global/handlers/item/withplayer/ChristmasCrackerUsage.java
index 76cc6d01d..de13eb88f 100644
--- a/Server/src/main/java/core/game/interaction/item/withplayer/ChristmasCrackerUsage.java
+++ b/Server/src/main/content/global/handlers/item/withplayer/ChristmasCrackerUsage.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withplayer;
+package content.global.handlers.item.withplayer;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/interaction/item/withplayer/FieldRationUsage.java b/Server/src/main/content/global/handlers/item/withplayer/FieldRationUsage.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/item/withplayer/FieldRationUsage.java
rename to Server/src/main/content/global/handlers/item/withplayer/FieldRationUsage.java
index abe37b298..0271f9521 100644
--- a/Server/src/main/java/core/game/interaction/item/withplayer/FieldRationUsage.java
+++ b/Server/src/main/content/global/handlers/item/withplayer/FieldRationUsage.java
@@ -1,4 +1,4 @@
-package core.game.interaction.item.withplayer;
+package content.global.handlers.item.withplayer;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/content/global/handlers/npc/BankerNPC.kt b/Server/src/main/content/global/handlers/npc/BankerNPC.kt
new file mode 100644
index 000000000..e59ac6b69
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/BankerNPC.kt
@@ -0,0 +1,171 @@
+package content.global.handlers.npc
+
+import core.api.*
+import core.game.node.Node
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.AbstractNPC
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.world.map.Direction
+import core.game.world.map.Location
+import core.plugin.Initializable
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import content.global.handlers.scenery.BankBoothListener
+
+/**
+ * Provides dialogue tree for all generic banker NPCs as well as
+ * handles all the common interactions like 'bank' and 'collect'.
+ *
+ * @author vddCore
+ */
+@Initializable
+class BankerNPC : AbstractNPC, InteractionListener {
+ companion object {
+ private const val LUNAR_ISLE_BANK_REGION = 8253
+
+ val SPECIAL_NPC_IDS = intArrayOf(
+ NPCs.SIRSAL_BANKER_4519, NPCs.FADLI_958, NPCs.BANK_TUTOR_4907, NPCs.JADE_4296,
+ NPCs.OGRESS_BANKER_7049, NPCs.OGRESS_BANKER_7050, NPCs.ARNOLD_LYDSPOR_3824,
+
+ /* Maximillian Sackville - Near Wilderness bounty-hunter area. */
+ NPCs.BANKER_6538
+ )
+
+ val NPC_IDS = intArrayOf(
+ NPCs.BANKER_44, NPCs.BANKER_45, NPCs.BANKER_494, NPCs.BANKER_495, NPCs.BANKER_496, NPCs.BANKER_497,
+ NPCs.BANKER_498, NPCs.BANKER_499, NPCs.BANKER_1036, NPCs.BANKER_1360, NPCs.BANKER_2163, NPCs.BANKER_2164,
+ NPCs.BANKER_2354, NPCs.BANKER_2355, NPCs.BANKER_2568, NPCs.BANKER_2569, NPCs.BANKER_2570, NPCs.BANKER_3198,
+ NPCs.BANKER_3199, NPCs.BANKER_5258, NPCs.BANKER_5259, NPCs.BANKER_5260, NPCs.BANKER_5261, NPCs.BANKER_5776,
+ NPCs.BANKER_5777, NPCs.BANKER_5912, NPCs.BANKER_5913, NPCs.BANKER_6200, NPCs.BANKER_6532, NPCs.BANKER_6533,
+ NPCs.BANKER_6534, NPCs.BANKER_6535, NPCs.BANKER_7445, NPCs.BANKER_7446, NPCs.BANKER_7605,
+ NPCs.GUNDAI_902,
+
+ NPCs.GHOST_BANKER_1702, NPCs.GNOME_BANKER_166, NPCs.NARDAH_BANKER_3046, NPCs.MAGNUS_GRAM_5488, NPCs.TZHAAR_KET_ZUH_2619,
+ )
+
+ private val ALL_BANKER_NPC_IDS = intArrayOf(
+ *SPECIAL_NPC_IDS,
+ *NPC_IDS
+ )
+
+ /**
+ * This is poorly named, but performs a few checks to see if the player
+ * is trying to access the bank on the Lunar Isle and returns a boolean
+ * controlling whether or not to pass the quick bank or collection use.
+ *
+ * TODO
+ * The location of this method is shit too. Find a better place for it?
+ */
+ fun checkLunarIsleRestriction(player: Player, node: Node): Boolean {
+ if (node.location.regionId != LUNAR_ISLE_BANK_REGION)
+ return false
+
+ if (!hasSealOfPassage(player)) {
+ return true
+ }
+
+ return false
+ }
+
+ fun attemptBank(player: Player, node: Node): Boolean {
+ val npc = node as NPC
+
+ if (checkLunarIsleRestriction(player, node)) {
+ openDialogue(player, npc.id, npc)
+ return true
+ }
+
+ npc.faceLocation(null)
+ openBankAccount(player)
+
+ return true
+ }
+
+ fun attemptCollect(player: Player, node: Node): Boolean {
+ val npc = node as NPC
+
+ if (checkLunarIsleRestriction(player, node)) {
+ openDialogue(player, npc.id, npc)
+ return true
+ }
+
+ npc.faceLocation(null)
+ openGrandExchangeCollectionBox(player)
+
+ return true
+ }
+ }
+
+ //Constructor spaghetti because Arios I guess
+ constructor() : super(0, null)
+ private constructor(id: Int, location: Location) : super(id, location)
+
+ override fun construct(id: Int, location: Location, vararg objects: Any?): AbstractNPC {
+ return BankerNPC(id, location)
+ }
+
+ private fun findAdjacentBankBoothLocation(): Pair? {
+ for (side in arrayOf(Direction.SOUTH, Direction.WEST, Direction.NORTH, Direction.EAST)) {
+ val boothLocation = location.transform(side)
+ val sceneryObject = getScenery(boothLocation)
+
+ if (sceneryObject != null && sceneryObject.id in BankBoothListener.BANK_BOOTHS) {
+ return Pair(side, boothLocation.transform(side, 1))
+ }
+ }
+
+ return null
+ }
+
+ private fun provideDestinationOverride(entity: Entity, node: Node): Location {
+ val npc = node as NPC
+
+ return when(npc.id) {
+ /* Ogress bankers are 2x2 with their spawn being offset to south-western tile. */
+ NPCs.OGRESS_BANKER_7049,
+ NPCs.OGRESS_BANKER_7050 -> npc.location.transform(3, 1, 0)
+
+ NPCs.BANKER_6532, NPCs.BANKER_6533,
+ NPCs.BANKER_6534, NPCs.BANKER_6535 -> npc.location.transform(npc.direction, 1)
+
+ /* Magnus has no bank booth nearby so we need to handle that edge case here. */
+ NPCs.MAGNUS_GRAM_5488 -> npc.location.transform(Direction.NORTH, 2)
+
+ else -> {
+ if (npc is BankerNPC) {
+ npc.findAdjacentBankBoothLocation()?.let {
+ return it.second
+ }
+ }
+
+ return npc.location
+ }
+ }
+ }
+
+ override fun defineListeners() {
+ on(ALL_BANKER_NPC_IDS, IntType.NPC, "bank", handler = Companion::attemptBank)
+ on(ALL_BANKER_NPC_IDS, IntType.NPC, "collect", handler = Companion::attemptCollect)
+ }
+
+ override fun defineDestinationOverrides() {
+ setDest(IntType.NPC, ALL_BANKER_NPC_IDS, "bank", "collect", "talk-to", handler = ::provideDestinationOverride)
+ }
+
+ override fun init() {
+ super.init()
+
+ findAdjacentBankBoothLocation()?.let {
+ val (boothDirection, _) = it
+
+ direction = boothDirection
+ isWalks = false
+
+ setAttribute("facing_booth", true)
+ }
+ }
+
+ override fun getIds(): IntArray = ALL_BANKER_NPC_IDS
+}
diff --git a/Server/src/main/content/global/handlers/npc/ChromaticDragonBehavior.kt b/Server/src/main/content/global/handlers/npc/ChromaticDragonBehavior.kt
new file mode 100644
index 000000000..57c0fda75
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/ChromaticDragonBehavior.kt
@@ -0,0 +1,43 @@
+package content.global.handlers.npc
+
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.tools.RandomFunction
+import org.rs09.consts.*
+import kotlin.collections.ArrayList
+
+class ChromaticDragonBehavior : NPCBehavior(*greenDragons, *blueDragons, *redDragons, *blackDragons)
+{
+ override fun onDropTableRolled (self: NPC, killer: Entity, drops: ArrayList- ) {
+ val removeList = ArrayList
- ()
+ for (item in drops) {
+ when (item.id) {
+ Items.BLACK_DRAGON_EGG_12480,
+ Items.RED_DRAGON_EGG_12477,
+ Items.BLUE_DRAGON_EGG_12478,
+ Items.GREEN_DRAGON_EGG_12479 -> removeList.add(item)
+ }
+ }
+ drops.removeAll(removeList)
+
+ if (killer.skills.getStaticLevel(Skills.SUMMONING) >= 99 && RandomFunction.roll(EGG_RATE))
+ drops.add(when(self.id) {
+ in greenDragons -> Item(Items.GREEN_DRAGON_EGG_12479)
+ in blueDragons -> Item(Items.BLUE_DRAGON_EGG_12478)
+ in redDragons -> Item(Items.RED_DRAGON_EGG_12477)
+ in blackDragons -> Item(Items.BLACK_DRAGON_EGG_12480)
+ else -> Item(Items.DRAGON_BONES_536)
+ })
+ }
+
+ companion object {
+ val greenDragons = intArrayOf (NPCs.GREEN_DRAGON_941, NPCs.GREEN_DRAGON_4677, NPCs.GREEN_DRAGON_4678, NPCs.GREEN_DRAGON_4679, NPCs.GREEN_DRAGON_4680)
+ val blueDragons = intArrayOf (NPCs.BLUE_DRAGON_55, NPCs.BLUE_DRAGON_4681, NPCs.BLUE_DRAGON_4682, NPCs.BLUE_DRAGON_4683, NPCs.BLUE_DRAGON_4684)
+ val redDragons = intArrayOf (NPCs.RED_DRAGON_53, NPCs.RED_DRAGON_4669, NPCs.RED_DRAGON_4670, NPCs.RED_DRAGON_4671, NPCs.RED_DRAGON_4672)
+ val blackDragons = intArrayOf (NPCs.BLACK_DRAGON_54, NPCs.BLACK_DRAGON_4673, NPCs.BLACK_DRAGON_4674, NPCs.BLACK_DRAGON_4675, NPCs.BLACK_DRAGON_4676)
+ var EGG_RATE = 1000
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/ChromaticDragonNPC.java b/Server/src/main/content/global/handlers/npc/ChromaticDragonNPC.java
similarity index 89%
rename from Server/src/main/java/core/game/node/entity/npc/other/ChromaticDragonNPC.java
rename to Server/src/main/content/global/handlers/npc/ChromaticDragonNPC.java
index a333414e2..66121a209 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/ChromaticDragonNPC.java
+++ b/Server/src/main/content/global/handlers/npc/ChromaticDragonNPC.java
@@ -1,16 +1,16 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.combat.equipment.SwitchAttack;
-import core.game.node.entity.combat.handlers.DragonfireSwingHandler;
+import content.global.handlers.item.equipment.special.DragonfireSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.npc.AbstractNPC;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
-import rs09.game.node.entity.combat.CombatSwingHandler;
-import rs09.game.node.entity.combat.handlers.MultiSwingHandler;
+import core.game.node.entity.combat.CombatSwingHandler;
+import core.game.node.entity.combat.MultiSwingHandler;
/**
* Handles a chromatic dragon (green, blue, red, ..).
diff --git a/Server/src/main/java/core/game/interaction/object/CowMilkingPlugin.java b/Server/src/main/content/global/handlers/npc/CowMilkingPlugin.java
similarity index 93%
rename from Server/src/main/java/core/game/interaction/object/CowMilkingPlugin.java
rename to Server/src/main/content/global/handlers/npc/CowMilkingPlugin.java
index 987438b9e..833fea4cf 100644
--- a/Server/src/main/java/core/game/interaction/object/CowMilkingPlugin.java
+++ b/Server/src/main/content/global/handlers/npc/CowMilkingPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.npc;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.NodeUsageEvent;
@@ -12,7 +12,10 @@ import core.game.system.task.Pulse;
import core.game.world.update.flag.context.Animation;
import core.plugin.Plugin;
import core.plugin.Initializable;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
/**
* Represents the plugin used to milk a cow.
@@ -55,6 +58,7 @@ public final class CowMilkingPlugin extends OptionHandler {
}
player.animate(ANIMATION);
+ playAudio(player, Sounds.MILK_COW_372);
player.getPulseManager().run(new Pulse(8, player) {
@Override
public boolean pulse() {
@@ -64,6 +68,7 @@ public final class CowMilkingPlugin extends OptionHandler {
}
if (player.getInventory().contains(1925, 1) || player.getInventory().contains(3727, 1)) {
player.animate(ANIMATION);
+ playAudio(player, Sounds.MILK_COW_372);
return false;
}
return true;
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/CowNPC.java b/Server/src/main/content/global/handlers/npc/CowNPC.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/npc/other/CowNPC.java
rename to Server/src/main/content/global/handlers/npc/CowNPC.java
index 5b35b1c94..95383951f 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/CowNPC.java
+++ b/Server/src/main/content/global/handlers/npc/CowNPC.java
@@ -1,9 +1,6 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
-import core.game.node.entity.Entity;
import core.game.node.entity.npc.AbstractNPC;
-import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.diary.DiaryType;
import core.game.world.map.Location;
import core.plugin.Initializable;
import core.tools.RandomFunction;
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/DarkWizardNPC.java b/Server/src/main/content/global/handlers/npc/DarkWizardNPC.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/npc/other/DarkWizardNPC.java
rename to Server/src/main/content/global/handlers/npc/DarkWizardNPC.java
index a671e9136..3124d8046 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/DarkWizardNPC.java
+++ b/Server/src/main/content/global/handlers/npc/DarkWizardNPC.java
@@ -1,8 +1,8 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
-import core.game.node.entity.combat.CombatSpell;
+import core.game.node.entity.combat.spell.CombatSpell;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.npc.AbstractNPC;
import core.game.node.entity.player.link.SpellBookManager.SpellBook;
diff --git a/Server/src/main/content/global/handlers/npc/DecantListener.kt b/Server/src/main/content/global/handlers/npc/DecantListener.kt
new file mode 100644
index 000000000..9a63c78c2
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/DecantListener.kt
@@ -0,0 +1,96 @@
+package content.global.handlers.npc
+
+import content.data.consumables.Consumables
+import core.api.*
+import core.game.consumable.Potion
+import core.game.dialogue.DialogueFile
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.item.Item
+import core.tools.END_DIALOGUE
+import org.rs09.consts.Items
+
+class DecantListener : InteractionListener {
+
+ companion object {
+ val potions = Consumables.potions.toIntArray()
+ }
+
+ override fun defineListeners() {
+ on(IntType.NPC,"decant"){ player, node ->
+ val (toRemove, toAdd) = decantContainer(player.inventory)
+ for (item in toRemove)
+ removeItem(player, item)
+ for (item in toAdd)
+ addItem(player, item.id, item.amount)
+ player.dialogueInterpreter.open(DecantingDialogue(),node.asNpc())
+ return@on true
+ }
+
+ onUseWith(IntType.ITEM, potions, *potions) { player, used, with ->
+ if (used !is Item) return@onUseWith false
+ if (with !is Item) return@onUseWith false
+
+ // Verify these are both the same potion types
+ val potionUsed = Consumables.getConsumableById(used.id)?.consumable as? Potion ?: return@onUseWith false
+ val potionWith = Consumables.getConsumableById(with.id)?.consumable as? Potion ?: return@onUseWith false
+
+ if (potionUsed != potionWith) {
+ return@onUseWith false
+ }
+
+ // Dosage math
+ val usedDose = potionUsed.getDose(used)
+ val withDose = potionWith.getDose(with)
+
+ // Shouldn't be able to combine a 4 dose potion
+ if (usedDose == 4 || withDose == 4) {
+ return@onUseWith false
+ }
+
+ val totalDosage = usedDose + withDose
+ val fullDoses = totalDosage / 4
+ val leftoverDose = totalDosage % 4
+
+ // Replace the targeted potion item with a (4) dose potion
+ if (fullDoses != 0) {
+ replaceSlot(player, with.slot, Item(potionWith.ids.first()), with, Container.INVENTORY)
+ }
+
+ // Replace the targeted potion item with the updated dosage amount
+ if (leftoverDose != 0 && fullDoses == 0) {
+ replaceSlot(player, with.slot, Item(potionUsed.ids[potionUsed.ids.size - totalDosage]), with, Container.INVENTORY)
+
+ // Replace the used with potion item with the updated dosage amount
+ } else if (leftoverDose != 0) {
+ replaceSlot(player, used.slot, Item(potionUsed.ids[potionUsed.ids.size - leftoverDose]), used, Container.INVENTORY)
+ }
+
+ // Replace the used with potion item with an empty vial
+ if (leftoverDose == 0 || fullDoses == 0) {
+ replaceSlot(player, used.slot, Item(Items.VIAL_229), used, Container.INVENTORY)
+ }
+
+ // Send message/Play sound
+ val amountString = when {
+ totalDosage >= 4 -> "four"
+ totalDosage == 3 -> "three"
+ else -> "two"
+ }
+
+ sendMessage(player, "You have combined the liquid into $amountString doses.")
+ playAudio(player, 2401)
+
+ return@onUseWith true
+ }
+ }
+
+ internal class DecantingDialogue : DialogueFile(){
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage++){
+ 0 -> npc("There you go!")
+ 1 -> player("Thanks!").also { stage = END_DIALOGUE }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/DuckNPC.java b/Server/src/main/content/global/handlers/npc/DuckNPC.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/npc/other/DuckNPC.java
rename to Server/src/main/content/global/handlers/npc/DuckNPC.java
index 6b049e1dd..40bdd4522 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/DuckNPC.java
+++ b/Server/src/main/content/global/handlers/npc/DuckNPC.java
@@ -1,9 +1,6 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
-import core.game.node.entity.Entity;
import core.game.node.entity.npc.AbstractNPC;
-import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.diary.DiaryType;
import core.game.world.map.Location;
import core.plugin.Initializable;
import core.tools.RandomFunction;
diff --git a/Server/src/main/java/core/game/interaction/object/DummyAttackPlugin.java b/Server/src/main/content/global/handlers/npc/DummyAttackPlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/interaction/object/DummyAttackPlugin.java
rename to Server/src/main/content/global/handlers/npc/DummyAttackPlugin.java
index c6cdf566f..8faf7ea6a 100644
--- a/Server/src/main/java/core/game/interaction/object/DummyAttackPlugin.java
+++ b/Server/src/main/content/global/handlers/npc/DummyAttackPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.npc;
import core.cache.def.impl.SceneryDefinition;
import core.game.node.entity.skill.Skills;
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/GuardNPC.java b/Server/src/main/content/global/handlers/npc/GuardNPC.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/npc/other/GuardNPC.java
rename to Server/src/main/content/global/handlers/npc/GuardNPC.java
index b66145608..ccdf7e10d 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/GuardNPC.java
+++ b/Server/src/main/content/global/handlers/npc/GuardNPC.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.npc.AbstractNPC;
import core.plugin.Initializable;
diff --git a/Server/src/main/java/core/game/interaction/npc/HairCutPlugin.java b/Server/src/main/content/global/handlers/npc/HairCutPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/npc/HairCutPlugin.java
rename to Server/src/main/content/global/handlers/npc/HairCutPlugin.java
index f3ed0eb83..a455e5476 100644
--- a/Server/src/main/java/core/game/interaction/npc/HairCutPlugin.java
+++ b/Server/src/main/content/global/handlers/npc/HairCutPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.npc;
+package content.global.handlers.npc;
import core.cache.def.impl.NPCDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/npc/HighwayManNPC.java b/Server/src/main/content/global/handlers/npc/HighwayManNPC.java
new file mode 100644
index 000000000..cc5157b1f
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/HighwayManNPC.java
@@ -0,0 +1,62 @@
+package content.global.handlers.npc;
+
+import core.game.node.entity.Entity;
+import core.game.node.entity.npc.AbstractNPC;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.link.diary.DiaryType;
+import core.plugin.Initializable;
+import core.game.world.map.Location;
+
+/**
+ * Represents the highway man npc.
+ * @author 'Vexia
+ * @version 1.0
+ */
+@Initializable
+public final class HighwayManNPC extends AbstractNPC {
+
+ /**
+ * Constructs a new {@code HighwayManNPC} {@code Object}.
+ * @param id the id.
+ * @param location the location.
+ */
+ public HighwayManNPC(int id, Location location) {
+ super(id, location);
+ }
+
+ /**
+ * Constructs a new {@code HighwayManNPC} {@code Object}.
+ */
+ public HighwayManNPC() {
+ super(0, null);
+ }
+
+ @Override
+ public void finalizeDeath(Entity killer) {
+ super.finalizeDeath(killer);
+ if (getId() == 180) {
+ if (killer instanceof Player) {
+ final Player player = killer.asPlayer();
+ if (!player.getAchievementDiaryManager().getDiary(DiaryType.FALADOR).isComplete(0, 10)) {
+ player.getAchievementDiaryManager().getDiary(DiaryType.FALADOR).updateTask(player, 0, 10, true);
+ }
+ }
+ }
+ }
+
+ @Override
+ public void onAttack(Entity target) {
+ sendChat("Stand and deliver!");
+ }
+
+ @Override
+ public int[] getIds() {
+ return new int[] { 180, 2677 };
+ }
+
+ @Override
+ public AbstractNPC construct(int id, Location location, Object... objects) {
+ return new HighwayManNPC(id, location);
+ }
+
+}
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/IceGiantNPC.java b/Server/src/main/content/global/handlers/npc/IceGiantNPC.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/npc/other/IceGiantNPC.java
rename to Server/src/main/content/global/handlers/npc/IceGiantNPC.java
index 5226484b3..999bf00fa 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/IceGiantNPC.java
+++ b/Server/src/main/content/global/handlers/npc/IceGiantNPC.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.Entity;
import core.game.node.entity.npc.AbstractNPC;
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/MetalDragonNPC.java b/Server/src/main/content/global/handlers/npc/MetalDragonNPC.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/npc/other/MetalDragonNPC.java
rename to Server/src/main/content/global/handlers/npc/MetalDragonNPC.java
index 4e27ddea8..6884829b7 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/MetalDragonNPC.java
+++ b/Server/src/main/content/global/handlers/npc/MetalDragonNPC.java
@@ -1,19 +1,17 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.CombatStyle;
import core.game.node.entity.combat.equipment.SwitchAttack;
-import core.game.node.entity.combat.handlers.DragonfireSwingHandler;
+import content.global.handlers.item.equipment.special.DragonfireSwingHandler;
import core.game.node.entity.impl.Animator.Priority;
import core.game.node.entity.impl.Projectile;
import core.game.node.entity.npc.AbstractNPC;
-import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.diary.DiaryType;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
-import rs09.game.node.entity.combat.CombatSwingHandler;
-import rs09.game.node.entity.combat.handlers.MultiSwingHandler;
+import core.game.node.entity.combat.CombatSwingHandler;
+import core.game.node.entity.combat.MultiSwingHandler;
/**
* Handles a metal dragon (bronze, iron, steel).
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/MonkNPC.java b/Server/src/main/content/global/handlers/npc/MonkNPC.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/npc/other/MonkNPC.java
rename to Server/src/main/content/global/handlers/npc/MonkNPC.java
index 7fbd6675a..0daf3ac8e 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/MonkNPC.java
+++ b/Server/src/main/content/global/handlers/npc/MonkNPC.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.Entity;
import core.game.node.entity.combat.BattleState;
-import rs09.game.node.entity.combat.CombatSwingHandler;
-import rs09.game.node.entity.combat.handlers.MeleeSwingHandler;
+import core.game.node.entity.combat.CombatSwingHandler;
+import core.game.node.entity.combat.MeleeSwingHandler;
import core.game.node.entity.npc.AbstractNPC;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/content/global/handlers/npc/NPCDepositListener.kt b/Server/src/main/content/global/handlers/npc/NPCDepositListener.kt
new file mode 100644
index 000000000..31a928df7
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/NPCDepositListener.kt
@@ -0,0 +1,28 @@
+package content.global.handlers.npc
+
+import core.api.anyInEquipment
+import core.api.openDepositBox
+import core.api.sendNPCDialogue
+import core.api.setInterfaceText
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.tools.END_DIALOGUE
+
+class NPCDepositListener : InteractionListener {
+
+ override fun defineListeners() {
+ on(NPCs.PEER_THE_SEER_1288, IntType.NPC, "deposit") { player, _ ->
+ if (anyInEquipment(player, Items.FREMENNIK_SEA_BOOTS_1_14571, Items.FREMENNIK_SEA_BOOTS_2_14572, Items.FREMENNIK_SEA_BOOTS_3_14573)) {
+ openDepositBox(player)
+ setInterfaceText(player, "Peer the Seer's Deposits", 11, 12)
+ } else {
+ sendNPCDialogue(player, NPCs.PEER_THE_SEER_1288,
+ "Do not pester me, outerlander! I will only deposit items into the banks of those who have earned Fremennik sea boots!",
+ core.game.dialogue.FacialExpression.ANNOYED).also { END_DIALOGUE }
+ }
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/npc/NPCDisturbPlugin.java b/Server/src/main/content/global/handlers/npc/NPCDisturbPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/npc/NPCDisturbPlugin.java
rename to Server/src/main/content/global/handlers/npc/NPCDisturbPlugin.java
index 56d23e6b6..1810892d2 100644
--- a/Server/src/main/java/core/game/interaction/npc/NPCDisturbPlugin.java
+++ b/Server/src/main/content/global/handlers/npc/NPCDisturbPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.npc;
+package content.global.handlers.npc;
import core.cache.def.impl.NPCDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/npc/NPCTalkListener.kt b/Server/src/main/content/global/handlers/npc/NPCTalkListener.kt
new file mode 100644
index 000000000..5235fc82a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/NPCTalkListener.kt
@@ -0,0 +1,82 @@
+package content.global.handlers.npc
+
+import core.api.sendMessage
+import content.region.kandarin.barcrawl.BarcrawlManager
+import content.region.kandarin.barcrawl.BarcrawlType
+import content.global.ame.RandomEvents
+import content.minigame.gnomecooking.*
+import core.api.getAttribute
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.system.timer.impl.AntiMacro
+import core.game.worldevents.holiday.HolidayRandomEventNPC
+import core.game.worldevents.holiday.HolidayRandomEvents
+import core.game.worldevents.holiday.HolidayRandoms
+
+/**
+ * Handles the NPC talk-to option.
+ * @author Ceikry
+ */
+class NPCTalkListener : InteractionListener {
+
+ val barCrawlNPCs = intArrayOf(733,848,735,739,737,738,731,568,3217,736,734)
+
+ override fun defineListeners() {
+ on(barCrawlNPCs, IntType.NPC, "talk-to", "talk"){ player, node ->
+ val type = BarcrawlType.forId(node.id)
+ val instance = BarcrawlManager.getInstance(player)
+ if (instance.isFinished || !instance.isStarted || instance.isCompleted(type!!.ordinal)) {
+ player.dialogueInterpreter.open(node.id, node)
+ } else {
+ player.dialogueInterpreter.open("barcrawl dialogue", node.id, type)
+ }
+ return@on true
+ }
+
+ on(IntType.NPC,"talk-to","talk","talk to"){ player, node ->
+ val npc = node.asNpc()
+ if(RandomEvents.randomIDs.contains(node.id)){
+ if(AntiMacro.getEventNpc(player) == null || AntiMacro.getEventNpc(player) != node.asNpc() || AntiMacro.getEventNpc(player)?.finalized == true) {
+ player.sendMessage("They aren't interested in talking to you.")
+ } else {
+ AntiMacro.getEventNpc(player)?.talkTo(node.asNpc())
+ }
+ return@on true
+ }
+ if (HolidayRandomEvents.holidayRandomIDs.contains(node.id) && node is HolidayRandomEventNPC) {
+ if(HolidayRandoms.getEventNpc(player) == null || HolidayRandoms.getEventNpc(player) != node.asNpc() || HolidayRandoms.getEventNpc(player)?.finalized == true) {
+ player.sendMessage("They aren't interested in talking to you.")
+ } else {
+ HolidayRandoms.getEventNpc(player)?.talkTo(node.asNpc())
+ }
+ return@on true
+ }
+ if (getAttribute(npc, "holiday_random_extra_npc", false) && HolidayRandoms.getEventNpc(player) != null) {
+ HolidayRandoms.getEventNpc(player)?.talkTo(node.asNpc())
+ return@on true
+ }
+ if (!npc.getAttribute("facing_booth", false)) {
+ npc.faceLocation(player.location)
+ }
+ // ---------------- THESE DIALOGUES ARE INAUTHENTIC BUT ARE COPING FOR A CORE ISSUE -----------------------
+ if (player.properties.combatPulse.getVictim() == npc) {
+ sendMessage(player, "I don't think they have any interest in talking to me right now!")
+ return@on true
+ }
+ if (npc.inCombat()) {
+ sendMessage(player, "They look a bit busy at the moment.")
+ return@on true
+ }
+ //---------------------------------------------------------------------------------------------------------
+ //I'm sorry for this but it was honestly the best way to do this
+ if (player.getAttribute("$GC_BASE_ATTRIBUTE:$GC_JOB_ORDINAL", -1) != -1) {
+ val job = GnomeCookingJob.values()[player.getAttribute("$GC_BASE_ATTRIBUTE:$GC_JOB_ORDINAL", -1)]
+ if (node.getId() == job.npc_id && !player.getAttribute("$GC_BASE_ATTRIBUTE:$GC_JOB_COMPLETE", false)) {
+ player.dialogueInterpreter.open(GCCompletionDialogue(job))
+ return@on true
+ }
+ }
+ return@on player.dialogueInterpreter.open(npc.id, npc)
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/npc/other/RatNPC.java b/Server/src/main/content/global/handlers/npc/RatNPC.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/npc/other/RatNPC.java
rename to Server/src/main/content/global/handlers/npc/RatNPC.java
index faa01560c..f8a380db4 100644
--- a/Server/src/main/java/core/game/node/entity/npc/other/RatNPC.java
+++ b/Server/src/main/content/global/handlers/npc/RatNPC.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.npc.other;
+package content.global.handlers.npc;
import core.game.node.entity.Entity;
import core.game.node.entity.npc.AbstractNPC;
@@ -7,6 +7,7 @@ import core.game.node.item.GroundItemManager;
import core.game.node.item.Item;
import core.plugin.Initializable;
import core.game.world.map.Location;
+import content.data.Quests;
/**
* Represents a rat npc.
@@ -51,12 +52,9 @@ public class RatNPC extends AbstractNPC {
super.finalizeDeath(killer);
if (killer instanceof Player) {
final Player p = ((Player) killer);
- if (p.getQuestRepository().getQuest("Witch's Potion").isStarted(p)) {
+ if (p.getQuestRepository().getQuest(Quests.WITCHS_POTION).isStarted(p)) {
GroundItemManager.create(RAT_TAIL, getLocation(), p);
}
- if (!getName().equals("Giant rat")) {
- GroundItemManager.create(new Item(526), getLocation(), (Player) killer);
- }
}
}
diff --git a/Server/src/main/content/global/handlers/npc/SheepBehavior.kt b/Server/src/main/content/global/handlers/npc/SheepBehavior.kt
new file mode 100644
index 000000000..b329d4622
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/SheepBehavior.kt
@@ -0,0 +1,139 @@
+package content.global.handlers.npc
+
+import content.region.misthalin.lumbridge.quest.sheepshearer.SheepShearer.Companion.ATTR_IS_PENGUIN_SHEEP_SHEARED
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.combat.DeathTask
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.game.node.entity.player.Player
+import core.game.system.task.Pulse
+import core.game.world.GameWorld
+import core.game.world.update.flag.context.Animation
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import org.rs09.consts.NPCs
+import org.rs09.consts.Sounds
+import core.game.world.map.Location
+import core.game.world.map.Direction
+import content.data.Quests
+
+private val sheepIds = intArrayOf(
+ NPCs.SHEEP_42,
+ NPCs.SHEEP_43,
+ NPCs.GOLDEN_SHEEP_1271,
+ NPCs.GOLDEN_SHEEP_1272,
+ NPCs.SHEEP_1529,
+ NPCs.SHEEP_1762,
+ NPCs.SHEEP_1763,
+ NPCs.SHEEP_1764,
+ NPCs.SHEEP_1765,
+ NPCs.SICK_LOOKING_SHEEP_1_2377,
+ NPCs.SICK_LOOKING_SHEEP_2_2378,
+ NPCs.SICK_LOOKING_SHEEP_3_2379,
+ NPCs.SICK_LOOKING_SHEEP_4_2380,
+ NPCs.SHEEP_3310,
+ NPCs.SHEEP_3311,
+ NPCs.SHEEP_3579,
+ NPCs.SHEEP_5148,
+ NPCs.SHEEP_5149,
+ NPCs.SHEEP_5150,
+ NPCs.SHEEP_5151,
+ NPCs.SHEEP_5152,
+ NPCs.SHEEP_5153,
+ NPCs.SHEEP_5154,
+ NPCs.SHEEP_5155,
+ NPCs.SHEEP_5156,
+ NPCs.SHEEP_5157,
+ NPCs.SHEEP_5158,
+ NPCs.SHEEP_5159,
+ NPCs.SHEEP_5160,
+ NPCs.SHEEP_5161,
+ NPCs.SHEEP_5162,
+ NPCs.SHEEP_5163,
+ NPCs.SHEEP_5164,
+ NPCs.SHEEP_5165,
+ NPCs.GOLDEN_SHEEP_5172,
+ NPCs.GOLDEN_SHEEP_5173
+)
+
+class SheepBehavior : NPCBehavior(*sheepIds), InteractionListener {
+ override fun tick(self: NPC): Boolean {
+ if (self.properties.combatPulse.isAttacking || DeathTask.isDead(self)) {
+ return true
+ }
+ if (RandomFunction.random(35) == 5) {
+ sendChat(self, "Baa!")
+ }
+
+ return true
+ }
+
+ override fun defineListeners() {
+ on(IntType.NPC, "shear") { player, node ->
+ val sheep = node as NPC
+ sheep.faceTemporary(player, 1)
+ if (sheep.id == NPCs.SHEEP_3579) {
+ if (player.questRepository.getQuest(Quests.SHEEP_SHEARER).isStarted(player)) {
+ setAttribute(player, ATTR_IS_PENGUIN_SHEEP_SHEARED, true)
+ }
+ animate(player, Animation(893))
+ playAudio(player, Sounds.PENGUINSHEEP_ESCAPE_686)
+ animate(sheep, Animation(3570))
+
+ sheepBackAway(player, sheep, "The... whatever it is... manages to get away from you!")
+ return@on true
+ }
+ if (!inInventory(player, Items.SHEARS_1735)) {
+ sendMessage(player, "You need shears to shear a sheep.")
+ return@on true
+ }
+ if (hasOption(sheep, "attack")) {
+ sendMessage(player, "That one looks a little too violent to shear...")
+ return@on true
+ }
+ if (freeSlots(player) == 0) {
+ sendMessage(player, "You don't have enough space in your inventory to carry any wool you would shear.")
+ return@on true
+ }
+ lock(sheep, 3)
+ stopWalk(sheep)
+ animate(player, Animation(893))
+ val random = RandomFunction.random(1, 5)
+ if (random != 4) {
+ sheep.locks.lockMovement(2)
+ sheep.transform(NPCs.SHEEP_5153)
+ playAudio(player, Sounds.SHEAR_SHEEP_761)
+ sendMessage(player, "You get some wool.")
+ addItem(player, Items.WOOL_1737) // 5160
+ GameWorld.Pulser.submit(object : Pulse(80, sheep) {
+ override fun pulse(): Boolean {
+ sheep.reTransform()
+ return true
+ }
+ })
+ } else {
+ sheepBackAway(player, sheep, "The sheep manages to get away from you!")
+ }
+ return@on true
+ }
+ }
+
+ fun sheepBackAway(player: Player, sheep: NPC, messagePlayer: String)
+ {
+ val playerLocation = player.getLocation()
+ val sheepLocation = sheep.getLocation()
+ val sheepDirection = Direction.getDirection(sheepLocation, playerLocation) // Get direction sheep is facing, from the player's location
+ val sheepOppositeDirection = sheepDirection.getOpposite() // Switch to opposite direction
+
+ val xWalkLocation = sheepLocation.getX() + (sheepOppositeDirection.getStepX() * 3) // Gets x location, if set, 3 steps away from player
+ val yWalkLocation = sheepLocation.getY() + (sheepOppositeDirection.getStepY() * 3) // Gets y location, if set, 3 steps away from player
+ val sheepWalkToLocation = Location(xWalkLocation, yWalkLocation, sheepLocation.getZ()); // New location for pathfinding
+
+ sendMessage(player, messagePlayer)
+
+ unlock(sheep) //Force unlock of entity movement, to allow moving away
+ forceWalk(sheep, sheepWalkToLocation, "dumb")
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/npc/ShopNPC.java b/Server/src/main/content/global/handlers/npc/ShopNPC.java
new file mode 100644
index 000000000..2e352f58d
--- /dev/null
+++ b/Server/src/main/content/global/handlers/npc/ShopNPC.java
@@ -0,0 +1,56 @@
+package content.global.handlers.npc;
+
+import core.game.node.entity.npc.AbstractNPC;
+import core.plugin.Initializable;
+import core.game.world.map.Location;
+
+/**
+ * Represents the abstract npc of a generic owner of a shop.
+ * @author 'Vexia
+ */
+@Initializable
+public class ShopNPC extends AbstractNPC {
+
+ /**
+ * The NPC ids of NPCs using this plugin.
+ */
+ private static final int[] ID = { 410, 528, 529, 525, 524, 1436, 590, 591, 971, 1917, 597, 1083, 3541, 7396, 1040, 563, 5798, 582, 526, 527, 873, 532, 533, 568, 2154, 1334, 2352, 4516, 520, 521, 4716, 3922, 1254, 2086, 1866, 530, 531, 836, 516, 560, 471, 522, 523, 4651, 4652, 4653, 4654, 4655, 4656, 4650, 534, 588, 2356, 1860, 550, 575, 683, 682, 4563, 4558, 4559, 519, 559, 562, 581, 554, 601, 1301, 1039, 2353, 3166, 2161, 2162, 600, 593, 545, 585, 5268, 2305, 2307, 2304, 1783, 557, 1038, 1433, 7053, 571, 5487, 536, 4294, 4293, 584, 570, 540, 2157, 69669, 569, 572, 573, 1303, 595, 297, 704, 587, 5110, 5109, 556, 1865, 543, 2198, 580, 1862, 583, 553, 461, 4513, 3097, 903, 1435, 606, 2623, 594, 579, 2160, 6750, 6898, 6893, 589, 5485, 542, 549, 3038, 544, 1434, 209, 1980, 546, 6988, 558, 576, 5266, 586, 602, 552, 551, 541, 692, 797, 564, 2152, 1208, 2233, 3205, 70, 1598, 1596, 1597, 1599, 2259, 3162, 1167, 2620, 2151, 5486, 4250, 1079, 793, 2572 };
+
+ /**
+ * Constructs a new {@code ShopNPC} {@code Object}.
+ */
+ public ShopNPC() {
+ super(0, null, true);
+ }
+
+ /**
+ * Constructs a new {@code ShopNPC} {@code Object}.
+ * @param id The NPC id.
+ * @param location The location.
+ */
+ private ShopNPC(int id, Location location) {
+ super(id, location, true);
+ }
+
+ @Override
+ public void init() {
+ super.init();
+ setWalks(true);
+ }
+
+ @Override
+ public AbstractNPC construct(int id, Location location, Object... objects) {
+ return new ShopNPC(id, location);
+ }
+
+ @Override
+ public int getWalkRadius() {
+ return 3;
+ }
+
+ @Override
+ public int[] getIds() {
+ return ID;
+ }
+
+}
diff --git a/Server/src/main/java/core/game/interaction/player/AttackOptionPlugin.java b/Server/src/main/content/global/handlers/player/AttackOptionPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/player/AttackOptionPlugin.java
rename to Server/src/main/content/global/handlers/player/AttackOptionPlugin.java
index 80c92cf3b..328d52c7b 100644
--- a/Server/src/main/java/core/game/interaction/player/AttackOptionPlugin.java
+++ b/Server/src/main/content/global/handlers/player/AttackOptionPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.player;
+package content.global.handlers.player;
import core.cache.def.impl.NPCDefinition;
import core.game.interaction.Option;
diff --git a/Server/src/main/java/core/game/interaction/player/FollowOptionPlugin.java b/Server/src/main/content/global/handlers/player/FollowOptionPlugin.java
similarity index 90%
rename from Server/src/main/java/core/game/interaction/player/FollowOptionPlugin.java
rename to Server/src/main/content/global/handlers/player/FollowOptionPlugin.java
index bf8de8f96..a3cea3b54 100644
--- a/Server/src/main/java/core/game/interaction/player/FollowOptionPlugin.java
+++ b/Server/src/main/content/global/handlers/player/FollowOptionPlugin.java
@@ -1,10 +1,11 @@
-package core.game.interaction.player;
+package content.global.handlers.player;
import core.game.interaction.DestinationFlag;
import core.game.interaction.MovementPulse;
import core.game.interaction.Option;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
+import core.game.node.entity.impl.PulseType;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
import core.plugin.Plugin;
@@ -38,7 +39,7 @@ public final class FollowOptionPlugin extends OptionHandler {
super.stop();
mover.face(null);
}
- }, "movement");
+ }, PulseType.STANDARD);
return true;
}
}
diff --git a/Server/src/main/content/global/handlers/player/LoginValidationPlugin.java b/Server/src/main/content/global/handlers/player/LoginValidationPlugin.java
new file mode 100644
index 000000000..642d33f07
--- /dev/null
+++ b/Server/src/main/content/global/handlers/player/LoginValidationPlugin.java
@@ -0,0 +1,122 @@
+package content.global.handlers.player;
+
+import core.api.Container;
+import core.game.activity.ActivityManager;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.system.SystemManager;
+import core.game.world.GameWorld;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.plugin.PluginManifest;
+import core.plugin.PluginType;
+import org.rs09.consts.Items;
+
+import java.util.concurrent.TimeUnit;
+
+import static core.api.ContentAPIKt.*;
+
+/**
+ * Validates a player login.
+ * @author Emperor
+ * @author Vexia
+ *
+ */
+@PluginManifest(type = PluginType.LOGIN)
+@Initializable
+public final class LoginValidationPlugin implements Plugin
{
+
+ /**
+ * Represents the quest point items to remove.
+ */
+ private static final Item[] QUEST_ITEMS = new Item[] { new Item(Items.QUEST_POINT_CAPE_9813), new Item(Items.QUEST_POINT_HOOD_9814)};
+
+ /**
+ * Constructs a new {@Code LoginValidationPlugin} {@Code Object}
+ */
+ public LoginValidationPlugin() {
+ /*
+ * empty.
+ */
+ }
+
+ @Override
+ public Object fireEvent(String identifier, Object... args) {
+ return null;
+ }
+
+ @Override
+ public Plugin newInstance(final Player player) throws Throwable {
+ player.unlock();
+ if (player.isArtificial()) {
+ return this;
+ }
+ if (!SystemManager.getSystemConfig().validLogin(player)) {
+ return this;
+ }
+ if (GameWorld.getSettings().isDevMode()) {
+ player.toggleDebug();
+ }
+ if (player.getAttribute("fc_wave", -1) > -1) {
+ ActivityManager.start(player, "fight caves", true);
+ }
+ if (player.getAttribute("falconry", false)) {
+ ActivityManager.start(player, "falconry", true);
+ }
+ if (player.getSavedData().getQuestData().getDragonSlayerAttribute("repaired")) {
+ setVarp(player, 177, 1967876); //lol?
+ }
+ if (player.getSavedData().getGlobalData().getLootShareDelay() < System.currentTimeMillis() && player.getSavedData().getGlobalData().getLootShareDelay() != 0L) {
+ player.getGlobalData().setLootSharePoints((int) (player.getGlobalData().getLootSharePoints() - player.getGlobalData().getLootSharePoints() * 0.10));
+ } else {
+ player.getSavedData().getGlobalData().setLootShareDelay(System.currentTimeMillis() + TimeUnit.DAYS.toMillis(1));
+ }
+ checkQuestPointsItems(player);
+ return this;
+ }
+
+ /**
+ * Method used to check for the quest point cape items.
+ * @param player the player.
+ */
+ private static void checkQuestPointsItems(final Player player) {
+ if (!player.getQuestRepository().hasCompletedAll() && anyInEquipment(player, Items.QUEST_POINT_CAPE_9813, Items.QUEST_POINT_HOOD_9814)) {
+ String location1 = null;
+ String location2 = null;
+ int item1 = 0;
+ int item2 = 0;
+ int amt = 0;
+ for (Item i : QUEST_ITEMS) {
+ if (removeItem(player, i, Container.EQUIPMENT)) {
+ amt++;
+ String location;
+ if (addItem(player, i.getId(), i.getAmount(), Container.INVENTORY)) {
+ location = "your inventory";
+ } else if (addItem(player, i.getId(), i.getAmount(), Container.BANK)) {
+ location = "your bank";
+ } else {
+ location = "the Wise Old Man";
+ if (i.getId() == Items.QUEST_POINT_CAPE_9813) {
+ setAttribute(player, "/save:reclaim-qp-cape", true);
+ } else {
+ setAttribute(player, "/save:reclaim-qp-hood", true);
+ }
+ }
+ if (amt == 1) {
+ item1 = i.getId();
+ location1 = location;
+ }
+ if (amt == 2) {
+ item2 = i.getId();
+ location2 = location;
+ }
+ }
+ }
+ if (amt == 2) {
+ sendDoubleItemDialogue(player, item1, item2, "As you no longer have completed all the quests, your " + getItemName(item1) + " unequips itself to " + location1 + " and your " + getItemName(item2) + " unequips itself to " + location2 + "!");
+ } else {
+ sendItemDialogue(player, item1, "As you no longer have completed all the quests, your " + getItemName(item1) + " unequips itself to " + location1 + "!");
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/player/RequestOption.kt b/Server/src/main/content/global/handlers/player/RequestOption.kt
new file mode 100644
index 000000000..33707b358
--- /dev/null
+++ b/Server/src/main/content/global/handlers/player/RequestOption.kt
@@ -0,0 +1,32 @@
+package content.global.handlers.player
+
+import core.game.interaction.Option._P_ASSIST
+import core.game.interaction.Option._P_TRADE
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.request.RequestType
+import core.plugin.Initializable
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.bots.*
+
+/**
+ * Represents the plugin used to handle the player option interacting.
+ * @author 'Vexia
+ * @author dginovker
+ * @version 2.0
+ */
+@Initializable
+class RequestOption : InteractionListener {
+ override fun defineListeners() {
+ on(_P_TRADE.name, IntType.PLAYER) { player, node ->
+ player.requestManager.request((node as Player), RequestType.TRADE)
+ return@on true
+ }
+ on(_P_ASSIST.name, IntType.PLAYER) { player, node ->
+ if (node is AIPlayer)
+ AIRepository.sendBotInfo(player, node)
+ player.requestManager.request((node as Player), RequestType.ASSIST)
+ return@on true
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/scenery/BankBoothListener.kt b/Server/src/main/content/global/handlers/scenery/BankBoothListener.kt
new file mode 100644
index 000000000..b725c8cac
--- /dev/null
+++ b/Server/src/main/content/global/handlers/scenery/BankBoothListener.kt
@@ -0,0 +1,193 @@
+package content.global.handlers.scenery
+
+import core.api.*
+import core.game.node.Node
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.IronmanMode
+import core.game.node.item.Item
+import core.game.world.map.Direction
+import core.game.world.map.Location
+import org.rs09.consts.NPCs
+import org.rs09.consts.Scenery
+import core.ServerConstants
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import content.global.handlers.npc.BankerNPC
+import core.game.world.repository.Repository
+
+/**
+ * Allows the user to interact with bank booths.
+ *
+ * @author vddCore
+ */
+class BankBoothListener : InteractionListener {
+
+ companion object {
+ val INOPERABLE_BANK_BOOTHS = intArrayOf(
+ Scenery.BANK_BOOTH_12800, Scenery.BANK_BOOTH_12801, Scenery.BANK_BOOTH_36262, Scenery.BANK_BOOTH_35648
+ )
+
+ val BANK_BOOTHS = intArrayOf(
+ Scenery.BANK_BOOTH_2213, Scenery.BANK_BOOTH_2214, Scenery.BANK_BOOTH_3045, Scenery.BANK_BOOTH_5276,
+ Scenery.BANK_BOOTH_6084, Scenery.BANK_BOOTH_10517, Scenery.BANK_BOOTH_11338, Scenery.BANK_BOOTH_11402,
+ Scenery.BANK_BOOTH_11758, Scenery.BANK_BOOTH_12798, Scenery.BANK_BOOTH_12799, Scenery.BANK_BOOTH_14367,
+ Scenery.BANK_BOOTH_14368, Scenery.BANK_BOOTH_16700, Scenery.BANK_BOOTH_18491, Scenery.BANK_BOOTH_19230,
+ Scenery.BANK_BOOTH_20325, Scenery.BANK_BOOTH_20326, Scenery.BANK_BOOTH_20327, Scenery.BANK_BOOTH_20328,
+ Scenery.BANK_BOOTH_22819, Scenery.BANK_BOOTH_24914, Scenery.BANK_BOOTH_25808, Scenery.BANK_BOOTH_26972,
+ Scenery.BANK_BOOTH_29085, Scenery.BANK_BOOTH_30015, Scenery.BANK_BOOTH_30016, Scenery.BANK_BOOTH_34205,
+ Scenery.BANK_BOOTH_34752, Scenery.BANK_BOOTH_35647, Scenery.BANK_BOOTH_36786, Scenery.BANK_BOOTH_37474
+ )
+
+ public fun convertToNotes (used: Node, player: Player) {
+ val item = used as Item
+
+ if (item.noteChange != item.id) {
+ if (item.definition.isUnnoted) {
+ val amount = amountInInventory(player, item.id)
+ if (removeItem(player, Item(item.id, amount))) {
+ addItem(player, item.noteChange, amount)
+ }
+ } else {
+ var amount = item.amount
+ val freeSlotCount = freeSlots(player)
+
+ // If there is exactly one more note than free slots
+ // the note disappearing can be used as the last slot
+ if (amount > freeSlotCount && amount != freeSlotCount + 1) {
+ amount = freeSlotCount
+ }
+
+ if (removeItem(player, Item(item.id, amount))) {
+ addItem(player, item.noteChange, amount)
+ }
+ }
+
+ return
+ }
+
+ sendMessage(player, "This item can't be noted.")
+ }
+ }
+
+ /**
+ * Searches an area in the order described
+ * by each number with X being the location
+ * of node being interacted with.
+ *
+ * [1]
+ * [4][X][2]
+ * [3]
+ */
+ private fun locateAdjacentBankerLinear(node: Node): NPC? {
+ for (dir in arrayOf(Direction.NORTH, Direction.EAST, Direction.SOUTH, Direction.WEST)) {
+ Repository.findNPC(node.location.transform(dir))?.let { return it as? BankerNPC }
+ }
+
+ return null
+ }
+
+ /**
+ * If size is 1 then the following method
+ * searches a square area in the following
+ * order with X being the location of node
+ * that was interacted with.
+ *
+ * ->[ ]
+ * [ X ]
+ * [ ]->
+ *
+ */
+ private fun locateAdjacentBankerSquare(node: Node, size: Int = 1): NPC? {
+ for (y in (node.location.y - size)..(node.location.y + size)) {
+ for (x in (node.location.x - size)..(node.location.x + size)) {
+ Repository.findNPC(Location(x, y))?.let { return it as? BankerNPC }
+ }
+ }
+
+ return null
+ }
+
+ private fun tryInvokeBankerDialogue(player: Player, node: Node) {
+ /**
+ * First, we look for regular bankers that neatly stand in front of the bank booth.
+ * If that fails, we expand the search to a larger area.
+ */
+ (locateAdjacentBankerLinear(node) ?: locateAdjacentBankerSquare(node, 2))?.let {
+ if (core.game.dialogue.DialogueInterpreter.contains(it.id)) {
+ it.faceLocation(node.location)
+ openDialogue(player, it.id, NPC(it.id, it.location))
+ } else {
+ openDialogue(player, NPCs.BANKER_494)
+ }
+ }
+ }
+
+ private fun quickBankBoothUse(player: Player, node: Node, state: Int): Boolean {
+ if (player.ironmanManager.checkRestriction(IronmanMode.ULTIMATE)) {
+ return true
+ }
+
+ if (BankerNPC.checkLunarIsleRestriction(player, node)) {
+ tryInvokeBankerDialogue(player, node)
+ return true
+ }
+
+ openBankAccount(player)
+ return true
+ }
+
+ private fun regularBankBoothUse(player: Player, node: Node, state: Int): Boolean {
+ if (player.ironmanManager.checkRestriction(IronmanMode.ULTIMATE)) {
+ return true
+ }
+
+ if (ServerConstants.BANK_BOOTH_QUICK_OPEN) {
+ return quickBankBoothUse(player, node, state)
+ }
+
+ tryInvokeBankerDialogue(player, node)
+ return true
+ }
+
+ private fun collectBankBoothUse(player: Player, node: Node, state: Int): Boolean {
+ if (BankerNPC.checkLunarIsleRestriction(player, node)) {
+ tryInvokeBankerDialogue(player, node)
+ return true
+ }
+
+ openGrandExchangeCollectionBox(player)
+ return true
+ }
+
+ private fun attemptToConvertItems(player: Player, used: Node, with: Node): Boolean {
+ if (!hasOption(with, "use")) {
+ sendMessage(player, "You shouldn't be able to do that with object ${with.id}.")
+ sendMessage(player, "Please screenshot this and report to the developers.")
+
+ return true
+ }
+
+ if (!ServerConstants.BANK_BOOTH_NOTE_UIM && player.ironmanManager.checkRestriction(IronmanMode.ULTIMATE)) {
+ return true
+ }
+
+ if (BankerNPC.checkLunarIsleRestriction(player, with)) {
+ tryInvokeBankerDialogue(player, with)
+ return true
+ }
+
+ convertToNotes (used, player)
+ return true
+ }
+
+ override fun defineListeners() {
+ defineInteraction(IntType.SCENERY, BANK_BOOTHS, "use-quickly", "bank", handler = ::quickBankBoothUse)
+ defineInteraction(IntType.SCENERY, BANK_BOOTHS, "use", handler = ::regularBankBoothUse)
+ defineInteraction(IntType.SCENERY, BANK_BOOTHS, "collect", handler = ::collectBankBoothUse)
+
+ if (ServerConstants.BANK_BOOTH_NOTE_ENABLED) {
+ onUseAnyWith(IntType.SCENERY, *BANK_BOOTHS, handler = ::attemptToConvertItems)
+ }
+ }
+}
diff --git a/Server/src/main/content/global/handlers/scenery/BankChestListener.kt b/Server/src/main/content/global/handlers/scenery/BankChestListener.kt
new file mode 100644
index 000000000..9fb26831b
--- /dev/null
+++ b/Server/src/main/content/global/handlers/scenery/BankChestListener.kt
@@ -0,0 +1,28 @@
+package content.global.handlers.scenery
+
+import core.api.openBankAccount
+import org.rs09.consts.Scenery
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+private val BANK_CHESTS = intArrayOf(
+ Scenery.BANK_CHEST_3194, Scenery.BANK_CHEST_4483,
+ Scenery.BANK_CHEST_10562, Scenery.BANK_CHEST_14382,
+ Scenery.BANK_CHEST_16695, Scenery.BANK_CHEST_16696,
+ Scenery.BANK_CHEST_21301, Scenery.BANK_CHEST_27662,
+ Scenery.BANK_CHEST_27663
+)
+
+/**
+ * Allows the user to interact with Bank Chests.
+ *
+ * @author vddCore
+ */
+class BankChestListener : InteractionListener {
+ override fun defineListeners() {
+ defineInteraction(IntType.SCENERY, BANK_CHESTS, "bank", "use") {player, node, state ->
+ openBankAccount(player)
+ return@defineInteraction true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/scenery/BankDepositBoxListener.kt b/Server/src/main/content/global/handlers/scenery/BankDepositBoxListener.kt
new file mode 100644
index 000000000..68579bfb6
--- /dev/null
+++ b/Server/src/main/content/global/handlers/scenery/BankDepositBoxListener.kt
@@ -0,0 +1,60 @@
+package content.global.handlers.scenery
+
+import core.api.restrictForIronman
+import core.game.component.CloseEvent
+import core.game.component.Component
+import core.game.container.access.InterfaceContainer
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.IronmanMode
+import org.rs09.consts.Components
+import org.rs09.consts.Scenery
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+private val BANK_DEPOSIT_BOXES = intArrayOf(
+ Scenery.BANK_DEPOSIT_BOX_9398,
+ Scenery.BANK_DEPOSIT_BOX_20228,
+ Scenery.BANK_DEPOSIT_BOX_25937,
+ Scenery.BANK_DEPOSIT_BOX_26969,
+ Scenery.BANK_DEPOSIT_BOX_34755,
+ Scenery.BANK_DEPOSIT_BOX_36788,
+ Scenery.BANK_DEPOSIT_BOX_39830
+)
+
+/**
+ * Allows the user to interact with bank deposit boxes.
+ *
+ * @author vddCore
+ */
+class BankDepositBoxListener : InteractionListener {
+
+ private fun openDepositBox(player: Player, node: Node, state: Int) : Boolean {
+ restrictForIronman(player, IronmanMode.ULTIMATE) {
+ player.interfaceManager.open(Component(Components.BANK_DEPOSIT_BOX_11)).closeEvent = CloseEvent { p, _ ->
+ p.interfaceManager.openDefaultTabs()
+ return@CloseEvent true
+ }
+
+ player.interfaceManager.removeTabs(0, 1, 2, 3, 4, 5, 6)
+ InterfaceContainer.generateItems(
+ player,
+ player.inventory.toArray(),
+ arrayOf(
+ "Examine",
+ "Deposit-X",
+ "Deposit-All",
+ "Deposit-10",
+ "Deposit-5",
+ "Deposit-1"
+ ), 11, 15, 5, 7
+ )
+ }
+
+ return true
+ }
+
+ override fun defineListeners() {
+ defineInteraction(IntType.SCENERY, BANK_DEPOSIT_BOXES, "deposit", handler = ::openDepositBox)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/handlers/scenery/DoogleLeafInteraction.kt b/Server/src/main/content/global/handlers/scenery/DoogleLeafInteraction.kt
new file mode 100644
index 000000000..fdf7d9891
--- /dev/null
+++ b/Server/src/main/content/global/handlers/scenery/DoogleLeafInteraction.kt
@@ -0,0 +1,24 @@
+package content.global.handlers.scenery
+
+import core.api.addItem
+import core.api.sendMessage
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import org.rs09.consts.Items
+
+class DoogleLeafInteraction : InteractionListener {
+ override fun defineListeners() {
+ defineInteraction(IntType.SCENERY, intArrayOf(31155), "pick-leaf", handler = ::handleDoogle)
+ }
+
+ fun handleDoogle(player: Player, node: Node, state: Int) : Boolean {
+ if (!addItem(player, Items.DOOGLE_LEAVES_1573)) {
+ sendMessage(player, "You don't have enough space in your inventory.")
+ return true
+ }
+ sendMessage(player, "You pick some doogle leaves.")
+ return true
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/object/DoorManagingPlugin.java b/Server/src/main/content/global/handlers/scenery/DoorManagingPlugin.java
similarity index 76%
rename from Server/src/main/java/core/game/interaction/object/DoorManagingPlugin.java
rename to Server/src/main/content/global/handlers/scenery/DoorManagingPlugin.java
index b99180bed..b6d18c0fa 100644
--- a/Server/src/main/java/core/game/interaction/object/DoorManagingPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/DoorManagingPlugin.java
@@ -1,7 +1,7 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.global.action.DoorActionHandler;
+import core.game.global.action.DoorActionHandler;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
@@ -11,6 +11,9 @@ import core.game.world.map.Location;
import core.game.world.map.RegionManager;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
/**
* Plugin used for handling the opening/closing of (double)
@@ -39,6 +42,14 @@ public final class DoorManagingPlugin extends OptionHandler {
if (name.contains("drawers") || name.contains("wardrobe") || name.contains("cupboard")) {
switch(option) {
case "open":
+ if (name.contains("drawers")) {
+ playAudio(player, Sounds.DRAWER_OPEN_64);
+ } else if (name.contains("wardrobe")) {
+ animate(player, 545, false);
+ playAudio(player, Sounds.WARDROBE_OPEN_96);
+ } else if (name.contains("cupboard")) {
+ playAudio(player, Sounds.CUPBOARD_OPEN_58);
+ }
case "go-through":
if (object.isActive()) {
SceneryBuilder.replace(object, object.transform(object.getId() + 1), 80);
@@ -46,6 +57,14 @@ public final class DoorManagingPlugin extends OptionHandler {
return true;
case "close":
case "shut":
+ if (name.contains("drawers")) {
+ playAudio(player, Sounds.DRAWER_CLOSE_63);
+ } else if (name.contains("wardrobe")) {
+ animate(player, 544, false);
+ playAudio(player, Sounds.WARDROBE_CLOSE_95);
+ } else if (name.contains("cupboard")) {
+ playAudio(player, Sounds.CUPBOARD_CLOSE_57);
+ }
SceneryBuilder.replace(object, object.transform(object.getId() - 1));
return true;
}
diff --git a/Server/src/main/java/core/game/interaction/object/FieldPickingPlugin.java b/Server/src/main/content/global/handlers/scenery/FieldPickingPlugin.java
similarity index 87%
rename from Server/src/main/java/core/game/interaction/object/FieldPickingPlugin.java
rename to Server/src/main/content/global/handlers/scenery/FieldPickingPlugin.java
index f91e2e340..1d0fa5c07 100644
--- a/Server/src/main/java/core/game/interaction/object/FieldPickingPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/FieldPickingPlugin.java
@@ -1,7 +1,8 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.container.impl.EquipmentContainer;
+import core.game.event.ResourceProducedEvent;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.combat.ImpactHandler.HitsplatType;
@@ -11,11 +12,14 @@ import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.game.node.scenery.SceneryBuilder;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.update.flag.context.Animation;
import core.plugin.Plugin;
import core.plugin.Initializable;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Handles the pick option of interactive scenery (non-farming cabbages,
@@ -64,9 +68,11 @@ public final class FieldPickingPlugin extends OptionHandler {
player.lock(1);
player.setAttribute("delay:picking", GameWorld.getTicks() + (plant == PickingPlant.FLAX ? 2 : 3));
player.animate(ANIMATION);
+ playAudio(player, Sounds.PICK_2581, 30);
+ player.dispatch(new ResourceProducedEvent(reward.getId(), reward.getAmount(), node, -1));
if (plant.name().startsWith("NETTLES") && (player.getEquipment().get(EquipmentContainer.SLOT_HANDS) == null || player.getEquipment().get(EquipmentContainer.SLOT_HANDS) != null && !player.getEquipment().get(EquipmentContainer.SLOT_HANDS).getName().contains("glove"))) {
player.getPacketDispatch().sendMessage("You have been stung by the nettles!");
- player.getImpactHandler().manualHit(player, 2, HitsplatType.POISON);
+ player.getImpactHandler().manualHit(player, 6, HitsplatType.POISON);
return true;
}
if (plant.respawn != -1 && plant != PickingPlant.FLAX) {
@@ -104,12 +110,6 @@ public final class FieldPickingPlugin extends OptionHandler {
} else {
player.getPacketDispatch().sendMessage("You pick a handful of nettles.");
}
- if (banana && !player.getAchievementDiaryManager().hasCompletedTask(DiaryType.KARAMJA, 0, 0)) {
- int picked = player.getAttribute("b-picked", 0);
- picked++;
- player.setAttribute("b-picked", picked);
- player.getAchievementDiaryManager().updateTask(player, DiaryType.KARAMJA, 0, 0, picked == 5);
- }
return true;
}
});
@@ -124,20 +124,9 @@ public final class FieldPickingPlugin extends OptionHandler {
*/
private void handleFlaxPick(final Player player, final Scenery object, final PickingPlant plant) {
int charge = object.getCharge();
- player.getAudioManager().send(2581);
+ playAudio(player, Sounds.PICK_2581);
player.getPacketDispatch().sendMessage("You pick some flax.");
- // Seers achievement diary
- if (player.getViewport().getRegion().getId() == 10805
- && !player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).isComplete(0,0)) {
- if (player.getAttribute("diary:seers:flax-picked", 0) >= 4) {
- player.setAttribute("/save:diary:seers:flax-picked", 5);
- player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).updateTask(player,0,0,true);
- } else {
- player.setAttribute("/save:diary:seers:flax-picked", player.getAttribute("diary:seers:flax-picked", 0) + 1);
- }
- }
-
if (charge > 1000 + RandomFunction.random(2, 8)) {
object.setActive(false);
object.setCharge(1000);
diff --git a/Server/src/main/java/core/game/interaction/object/HaystackPlugin.java b/Server/src/main/content/global/handlers/scenery/HaystackPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/object/HaystackPlugin.java
rename to Server/src/main/content/global/handlers/scenery/HaystackPlugin.java
index 830fa5053..793e89abc 100644
--- a/Server/src/main/java/core/game/interaction/object/HaystackPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/HaystackPlugin.java
@@ -1,8 +1,8 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
-import core.game.content.dialogue.FacialExpression;
+import core.game.dialogue.FacialExpression;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/interaction/object/JangerBerryPlugin.java b/Server/src/main/content/global/handlers/scenery/JangerBerryPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/object/JangerBerryPlugin.java
rename to Server/src/main/content/global/handlers/scenery/JangerBerryPlugin.java
index 0e19af875..5a4d8828c 100644
--- a/Server/src/main/java/core/game/interaction/object/JangerBerryPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/JangerBerryPlugin.java
@@ -1,8 +1,8 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.OptionHandler;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/interaction/object/LadderManagingPlugin.java b/Server/src/main/content/global/handlers/scenery/LadderManagingPlugin.java
similarity index 83%
rename from Server/src/main/java/core/game/interaction/object/LadderManagingPlugin.java
rename to Server/src/main/content/global/handlers/scenery/LadderManagingPlugin.java
index 256330a7f..9712fe790 100644
--- a/Server/src/main/java/core/game/interaction/object/LadderManagingPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/LadderManagingPlugin.java
@@ -1,7 +1,7 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.global.action.ClimbActionHandler;
+import core.game.global.action.ClimbActionHandler;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
@@ -23,6 +23,8 @@ public final class LadderManagingPlugin extends OptionHandler {
SceneryDefinition.setOptionHandler("climb-up", this);
SceneryDefinition.setOptionHandler("climb-down", this);
SceneryDefinition.setOptionHandler("climb", this);
+ SceneryDefinition.setOptionHandler("walk-up", this);
+ SceneryDefinition.setOptionHandler("walk-down", this);
return this;
}
diff --git a/Server/src/main/java/core/game/interaction/object/LookAtOptionPlugin.java b/Server/src/main/content/global/handlers/scenery/LookAtOptionPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/interaction/object/LookAtOptionPlugin.java
rename to Server/src/main/content/global/handlers/scenery/LookAtOptionPlugin.java
index b016ca04d..c067e9dec 100644
--- a/Server/src/main/java/core/game/interaction/object/LookAtOptionPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/LookAtOptionPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/content/global/handlers/scenery/MillingListener.kt b/Server/src/main/content/global/handlers/scenery/MillingListener.kt
new file mode 100644
index 000000000..c61a8c82a
--- /dev/null
+++ b/Server/src/main/content/global/handlers/scenery/MillingListener.kt
@@ -0,0 +1,101 @@
+package content.global.handlers.scenery
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import org.rs09.consts.Sounds
+
+private const val GRAIN = Items.GRAIN_1947
+private const val SWEETCORN = Items.SWEETCORN_5986
+private const val EMPTY_POT = Items.EMPTY_POT_1931
+private const val POT_OF_FLOUR = Items.POT_OF_FLOUR_1933
+private const val POT_OF_CORNFLOUR = Items.POT_OF_CORNFLOUR_7468
+private val HOPPERS = intArrayOf(Scenery.HOPPER_36881, Scenery.HOPPER_2717, Scenery.HOPPER_24071, Scenery.HOPPER_2716, Scenery.HOPPER_22422)
+private val HOPPER_CONTROLS = intArrayOf(Scenery.HOPPER_CONTROLS_2718, Scenery.HOPPER_CONTROLS_2721, Scenery.HOPPER_CONTROLS_24072, Scenery.HOPPER_CONTROLS_2720, Scenery.LEVER_22424)
+private val FLOUR_BINS = intArrayOf(Scenery.FLOUR_BIN_1782, Scenery.FLOUR_BIN_5792, Scenery.FLOUR_BIN_22420, Scenery.FLOUR_BIN_22421, Scenery.FLOUR_BIN_24070, Scenery.FLOUR_BIN_36878)
+private const val VARP = 695
+private val ANIMATION = Animation(3571)
+private val SOUND = Sounds.GIANT_ROC_APPROACHES_3189
+
+/**
+ * Handles interactions with windmills
+ * @author itsmedoggo
+ */
+class MillingListener : InteractionListener {
+ override fun defineListeners() {
+ defineInteraction(IntType.SCENERY, HOPPER_CONTROLS, "operate", "pull") { player, _, _ ->
+ useHopperControl(player)
+ return@defineInteraction true
+ }
+ defineInteraction(IntType.SCENERY, FLOUR_BINS, "empty") {player, _, _ ->
+ fillPot(player)
+ return@defineInteraction true
+ }
+ onUseWith(SCENERY, intArrayOf(GRAIN, SWEETCORN), *HOPPERS) { player, used, _ ->
+ fillHopper(player, used.asItem())
+ return@onUseWith true
+ }
+ onUseWith(SCENERY, EMPTY_POT, *FLOUR_BINS) { player, _, _ ->
+ fillPot(player)
+ return@onUseWith true
+ }
+ }
+
+ private fun useHopperControl(player: Player) {
+ animate(player, ANIMATION)
+ val hopperContents = getAttribute(player, "milling:hopper", 0)
+ if (hopperContents == 0) {
+ sendMessage(player, "You operate the empty hopper. Nothing interesting happens.")
+ return
+ }
+ setAttribute(player, "/save:milling:hopper", 0)
+ when (hopperContents) {
+ GRAIN -> {
+ setAttribute(player, "/save:milling:grain", (getAttribute(player, "milling:grain", 0) + 1).coerceAtMost(30 - getAttribute(player, "milling:sweetcorn", 0)))
+ sendMessage(player, "You operate the hopper. The grain slides down the chute.")
+ }
+ SWEETCORN -> {
+ setAttribute(player, "/save:milling:sweetcorn", (getAttribute(player, "milling:sweetcorn", 0) + 1).coerceAtMost(30 - getAttribute(player, "milling:grain", 0)))
+ sendMessage(player, "You operate the hopper. The sweetcorn slides down the chute.")
+ }
+ }
+ playAudio(player, SOUND)
+ setVarp(player, VARP, 1, true)
+ }
+
+ private fun fillHopper(player: Player, used: Item) {
+ if (getAttribute(player, "milling:hopper", 0) == 0 && removeItem(player, used)) {
+ setAttribute(player, "/save:milling:hopper", used.id)
+ sendMessage(player, "You put the " + used.name.lowercase() + " in the hopper.")
+ return
+ }
+ sendMessage(player, "There is already " + getItemName(getAttribute(player, "milling:hopper", 0)).lowercase() + " in the hopper.")
+ }
+
+ private fun fillPot(player: Player) {
+ if (!inInventory(player, EMPTY_POT)) {
+ sendMessage(player, "I need an empty pot to hold the flour in.")
+ return
+ }
+ if (removeItem(player, EMPTY_POT)) {
+ if (getAttribute(player, "milling:sweetcorn", 0) > 0) {
+ setAttribute(player, "/save:milling:sweetcorn", (getAttribute(player, "milling:sweetcorn", 0) - 1))
+ addItem(player, POT_OF_CORNFLOUR)
+ sendMessage(player, if (player.getAttribute("milling:sweetcorn", 0) > 0) "You fill a pot with cornflour from the bin." else "You fill a pot with the last of the cornflour in the bin.")
+ }
+ else if (getAttribute(player, "milling:grain", 0) > 0) {
+ setAttribute(player, "/save:milling:grain", (getAttribute(player, "milling:grain", 0) - 1))
+ addItem(player, POT_OF_FLOUR)
+ sendMessage(player, if (player.getAttribute("milling:grain", 0) > 0) "You fill a pot with flour from the bin." else "You fill a pot with the last of the flour in the bin.")
+ }
+ if (getAttribute(player, "milling:sweetcorn", 0) + getAttribute(player, "milling:grain", 0) <= 0) {
+ setVarp(player, VARP, 0, true)
+ }
+ }
+ }
+}
diff --git a/Server/src/main/java/core/game/interaction/object/ModeratorObject.java b/Server/src/main/content/global/handlers/scenery/ModeratorObject.java
similarity index 92%
rename from Server/src/main/java/core/game/interaction/object/ModeratorObject.java
rename to Server/src/main/content/global/handlers/scenery/ModeratorObject.java
index fc0908114..c94f36ae1 100644
--- a/Server/src/main/java/core/game/interaction/object/ModeratorObject.java
+++ b/Server/src/main/content/global/handlers/scenery/ModeratorObject.java
@@ -1,7 +1,7 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.global.action.ClimbActionHandler;
+import core.game.global.action.ClimbActionHandler;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/interaction/object/SearchOptionPlugin.java b/Server/src/main/content/global/handlers/scenery/SearchOptionPlugin.java
similarity index 89%
rename from Server/src/main/java/core/game/interaction/object/SearchOptionPlugin.java
rename to Server/src/main/content/global/handlers/scenery/SearchOptionPlugin.java
index ce5636bfd..f637107f1 100644
--- a/Server/src/main/java/core/game/interaction/object/SearchOptionPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/SearchOptionPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
@@ -7,6 +7,9 @@ import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import content.data.Quests;
+
+import static core.api.ContentAPIKt.*;
/**
* Handles the search option.
@@ -80,6 +83,10 @@ public class SearchOptionPlugin extends OptionHandler {
player.getInventory().add(new Item(946));
return true;
}
+ if (node.getId() == 12799 && hasRequirement(player, Quests.IN_AID_OF_THE_MYREQUE)) {
+ openBankAccount(player);
+ return true;
+ }
player.getPacketDispatch().sendMessage("You search the " + node.getName().toLowerCase() + " but find nothing.");
return true;
}
diff --git a/Server/src/main/content/global/handlers/scenery/SignpostListener.kt b/Server/src/main/content/global/handlers/scenery/SignpostListener.kt
new file mode 100644
index 000000000..583aa259d
--- /dev/null
+++ b/Server/src/main/content/global/handlers/scenery/SignpostListener.kt
@@ -0,0 +1,236 @@
+package content.global.handlers.scenery
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.world.map.Location
+import org.rs09.consts.Components
+import org.rs09.consts.Scenery
+
+class SignpostListener : InteractionListener {
+ override fun defineListeners() {
+ on(Scenery.SIGNPOST_18493, IntType.SCENERY, "read") { player, node ->
+ if (node.asScenery().location.equals(Location(3235, 3228))) {
+ // Authentic
+ setInterfaceText(player, "Head north towards Fred's farm, and the windmill.", 135, 3) // North
+ setInterfaceText(player, "South to the swamps of Lumbridge.", 135, 9) // South
+ setInterfaceText(player, "Cross the bridge and head east to Al Kharid or north to Varrock.", 135, 8) // East
+ setInterfaceText(player, "West to the Lumbridge Castle and Draynor Village. Beware the goblins!", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(3261, 3230))) {
+ // Authentic
+ setInterfaceText(player, "North to farms and Varrock.", 135, 3) // North
+ setInterfaceText(player, "The River Lum lies to the south.", 135, 9) // South
+ setInterfaceText(player, "East to Al Kharid - toll gate; bring some money.", 135, 8) // East
+ setInterfaceText(player, "West to Lumbridge.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(2983, 3278))) {
+ // Authentic
+ setInterfaceText(player, "North to the glorious White Knights' city of Falador.", 135, 3) // North
+ setInterfaceText(player, "South to Rimmington.", 135, 9) // South
+ setInterfaceText(player, "East to Port Sarim and Draynor Village.", 135, 8) // East
+ setInterfaceText(player, "West to the Crafting Guild.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(3107, 3296))) {
+ setInterfaceText(player, "North to Draynor Manor.", 135, 3) // North
+ setInterfaceText(player, "South to Draynor Village and the Wizards' Tower.", 135, 9) // South
+ setInterfaceText(player, "East to Lumbridge.", 135, 8) // East
+ setInterfaceText(player, "West to Port Sarim.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ on(Scenery.SIGNPOST_24263, IntType.SCENERY, "read") { player, node ->
+ if (node.asScenery().location.equals(Location(3268, 3332))) {
+ // Authentic
+ setInterfaceText(player, "Sheep lay this way.", 135, 3) // North
+ setInterfaceText(player, "South through farms to Al Kharid and Lumbridge.", 135, 9) // South
+ setInterfaceText(player, "East to Al Kharid mine and follow the path north to Varrock east gate.", 135, 8) // East
+ setInterfaceText(player, "West to Champion's Guild and Varrock south gate.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(3283, 3333))) {
+ // Authentic
+ setInterfaceText(player, "North to Varrock mine and Varrock east gate.", 135, 3) // North
+ setInterfaceText(player, "South to large Mining area and Al Kharid.", 135, 9) // South
+ setInterfaceText(player, "Follow the path east to the Dig Site.", 135, 8) // East
+ setInterfaceText(player, "West to Champion's Guild and Varrock south gate.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ on(Scenery.SIGNPOST_4132, IntType.SCENERY, "read") { player, node ->
+ if (node.asScenery().location.equals(Location(3223, 3427))) {
+ setInterfaceText(player, "North to Varrock Palace.", 135, 3) // North
+ setInterfaceText(player, "South to the Champion's Guild.", 135, 9) // South
+ setInterfaceText(player, "East to the Dig Site.", 135, 8) // East
+ setInterfaceText(player, "West to Barbarian Village and Falador.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(3166, 3286))) {
+ setInterfaceText(player, "North to the windmill.", 135, 3) // North
+ setInterfaceText(player, "South to a fishing pond next to Fred's farm.", 135, 9) // South
+ setInterfaceText(player, "East to Lumbridge.", 135, 8) // East
+ setInterfaceText(player, "West to Port Sarim and Draynor Village.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(3285, 3430))) {
+ setInterfaceText(player, "North to the Lumber Yard.", 135, 3) // North
+ setInterfaceText(player, "South to Al Kharid and Lumbridge.", 135, 9) // South
+ setInterfaceText(player, "East to the Dig Site.", 135, 8) // East
+ setInterfaceText(player, "West to Varrock.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(2734, 3485))) {
+ setInterfaceText(player, "North to Sinclair Mansion.", 135, 3) // North
+ setInterfaceText(player, "South to the Courthouse.", 135, 9) // South
+ setInterfaceText(player, "East to Camelot Castle and Catherby.", 135, 8) // East
+ setInterfaceText(player, "Follow the path west to Ardougne.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(2604, 3240))) {
+ setInterfaceText(player, "North to the Ardougne City Zoo.", 135, 3) // North
+ setInterfaceText(player, "South to the Monastery.", 135, 9) // South
+ setInterfaceText(player, "East to the Tower of Life.", 135, 8) // East
+ setInterfaceText(player, "West to the Clocktower.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(2605, 3298))) {
+ setInterfaceText(player, "North to the Fishing Guild and Hemenster.", 135, 3) // North
+ setInterfaceText(player, "South to the Ardougne City Zoo.", 135, 9) // South
+ setInterfaceText(player, "East to Ardougne Market.", 135, 8) // East
+ setInterfaceText(player, "West to Ardougne Castle and West Ardougne.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(2646, 3404))) {
+ setInterfaceText(player, "North to the Ranging Guild and Seer's Village.", 135, 3) // North
+ setInterfaceText(player, "South to the Ardougne City.", 135, 9) // South
+ setInterfaceText(player, "East to the Sorcerer's Tower.", 135, 8) // East
+ setInterfaceText(player, "West to the Fishing Guild.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ on(Scenery.SIGNPOST_4134, IntType.SCENERY, "read") { player, node ->
+ if (node.asScenery().location.equals(Location(2651, 3606))) {
+ setInterfaceText(player, "North to Rellekka.", 135, 3) // North
+ setInterfaceText(player, "South to Seers' Village.", 135, 9) // South
+ setInterfaceText(player, "East to Death Plateau.", 135, 8) // East
+ setInterfaceText(player, "West to the Lighthouse.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else if (node.asScenery().location.equals(Location(3100, 3418))) {
+ setInterfaceText(player, "North to Edgeville.", 135, 3) // North
+ setInterfaceText(player, "South to Draynor Manor.", 135, 9) // South
+ setInterfaceText(player, "East to Varrock west gate.", 135, 8) // East
+ setInterfaceText(player, "West to Barbarian Village.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ on(Scenery.SIGNPOST_4135, IntType.SCENERY, "read") { player, node ->
+ if (node.asScenery().location.equals(Location(3448, 3486))) {
+ setInterfaceText(player, "North to the Slayer Tower.", 135, 3) // North
+ setInterfaceText(player, "South to Mort Myre Swamp.", 135, 9) // South
+ setInterfaceText(player, "East to Canifis.", 135, 8) // East
+ setInterfaceText(player, "West to Varrock.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ on(Scenery.SIGNPOST_31296, IntType.SCENERY, "read") { player, node ->
+ if (node.asScenery().location.equals(Location(3304, 3109))) {
+ // Authentic
+ setInterfaceText(player, "North to Al Kharid.", 135, 3) // North
+ setInterfaceText(player, "South to the Desert Mining Camp and Pollnivneach.", 135, 9) // South
+ setInterfaceText(player, "East and across the river to the Ruins of Uzer.", 135, 8) // East
+ setInterfaceText(player, "West to the Kalphite Lair.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ on(Scenery.STONE_SIGNPOST_11630, IntType.SCENERY, "read") { player, node ->
+ // Authentic // https://youtu.be/vvHXKTOh_g4
+ if (node.asScenery().location.equals(Location(2967, 3412))) {
+ setInterfaceText(player, "North to Goblin Village.", 135, 3) // North
+ setInterfaceText(player, "South to Falador.", 135, 9) // South
+ setInterfaceText(player, "East to Varrock.", 135, 8) // East
+ setInterfaceText(player, "West to Taverley.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ } else {
+ setInterfaceText(player, "North to unknown.", 135, 3) // North
+ setInterfaceText(player, "South to unknown.", 135, 9) // South
+ setInterfaceText(player, "East to unknown.", 135, 8) // East
+ setInterfaceText(player, "West to unknown.", 135, 12) // West
+ openInterface(player, Components.AIDE_COMPASS_135)
+ }
+ return@on true
+ }
+ }
+ /**
+ * Old handlers of Signpost. Not all should be opening the AIDE_COMPASS.
+ *
+ * @Override
+ * public Plugin newInstance(Object arg) throws Throwable {
+ * SceneryDefinition.forId(4132).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(4133).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(4134).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(4135).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(5164).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(10090).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(13873).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(15522).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(25397).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(30039).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(30040).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(31296).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(31298).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(31299).getHandlers().put("option:read", this);
+ * SceneryDefinition.forId(31300).getHandlers().put("option:read", this);
+ * // ObjectDefinition.forId(31301).getConfigurations().put("option:read", this);//goblin village
+ * return this;
+ * }
+ *
+ * Was technically supposed to hide the map
+ * @Override
+ * public boolean handle(Player player, Node node, String option) {
+ * PacketRepository.send(MinimapState.class, new MinimapStateContext(player, 2));
+ * player.getInterfaceManager().open(new Component(135)).setCloseEvent(new CloseEvent() {
+ * @Override
+ * public boolean close(Player player, Component c) {
+ * PacketRepository.send(MinimapState.class, new MinimapStateContext(player, 0));
+ * return true;
+ * }
+ * });
+ * return true;
+ * }
+ */
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/interaction/object/SlashWebPlugin.java b/Server/src/main/content/global/handlers/scenery/SlashWebPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/interaction/object/SlashWebPlugin.java
rename to Server/src/main/content/global/handlers/scenery/SlashWebPlugin.java
index 3ee3a14b7..70ea5105b 100644
--- a/Server/src/main/java/core/game/interaction/object/SlashWebPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/SlashWebPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.container.Container;
@@ -12,13 +12,15 @@ import core.game.node.entity.combat.equipment.WeaponInterface.AttackStyle;
import core.game.node.entity.combat.equipment.WeaponInterface.WeaponInterfaces;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.diary.DiaryType;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.game.node.scenery.SceneryBuilder;
import core.game.world.update.flag.context.Animation;
import core.plugin.Plugin;
import core.tools.RandomFunction;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Handles the slashing of a web object.
@@ -74,7 +76,7 @@ public final class SlashWebPlugin extends OptionHandler {
}
final boolean success = RandomFunction.random(2) == 1;
player.lock(2);
- player.getAudioManager().send(new Audio(2548));
+ playAudio(player, Sounds.STABSWORD_SLASH_2548);
player.animate(weapon == KNIFE ? KNIFE_ANIMATION : ANIMATION);
if (success) {
player.getPacketDispatch().sendMessage("You slash the web apart.");
diff --git a/Server/src/main/java/core/game/interaction/object/SlayerDangerSignPlugin.java b/Server/src/main/content/global/handlers/scenery/SlayerDangerSignPlugin.java
similarity index 94%
rename from Server/src/main/java/core/game/interaction/object/SlayerDangerSignPlugin.java
rename to Server/src/main/content/global/handlers/scenery/SlayerDangerSignPlugin.java
index 633d50bfc..9bc908947 100644
--- a/Server/src/main/java/core/game/interaction/object/SlayerDangerSignPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/SlayerDangerSignPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/interaction/object/SpinSpinningWheelPlugin.java b/Server/src/main/content/global/handlers/scenery/SpinSpinningWheelPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/interaction/object/SpinSpinningWheelPlugin.java
rename to Server/src/main/content/global/handlers/scenery/SpinSpinningWheelPlugin.java
index 8e1025ed9..3395518b0 100644
--- a/Server/src/main/java/core/game/interaction/object/SpinSpinningWheelPlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/SpinSpinningWheelPlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.component.Component;
diff --git a/Server/src/main/java/core/game/interaction/object/ThievingGuidePlugin.java b/Server/src/main/content/global/handlers/scenery/ThievingGuidePlugin.java
similarity index 83%
rename from Server/src/main/java/core/game/interaction/object/ThievingGuidePlugin.java
rename to Server/src/main/content/global/handlers/scenery/ThievingGuidePlugin.java
index 7323331f6..4d306fc5e 100644
--- a/Server/src/main/java/core/game/interaction/object/ThievingGuidePlugin.java
+++ b/Server/src/main/content/global/handlers/scenery/ThievingGuidePlugin.java
@@ -1,4 +1,4 @@
-package core.game.interaction.object;
+package content.global.handlers.scenery;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
@@ -16,7 +16,7 @@ import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
import core.tools.RandomFunction;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import java.util.ArrayList;
import java.util.Collections;
@@ -81,24 +81,33 @@ public class ThievingGuidePlugin extends OptionHandler {
player.getDialogueInterpreter().sendDialogues(2266, null, "And where do you think you're going? A little too eager", "I think. Come and talk to me before you go wandering", "around in there.");
break;
case "crack":
- if (player.getSkills().getLevel(Skills.THIEVING) < 50) {
- player.getPacketDispatch().sendMessage("You need to be level " + level + " thief to crack this safe.");
- return true;
- }
- if (player.getInventory().freeSlots() == 0) {
- player.getPacketDispatch().sendMessage("Not enough inventory space.");
- return true;
- }
- final boolean success = success(player, Skills.THIEVING);
- player.lock(4);
- player.getPacketDispatch().sendMessage("You start cracking the safe.");
- player.animate(animations[success ? 1 : 0]);
+
GameWorld.getPulser().submit(new Pulse(3, player) {
@Override
public boolean pulse() {
+ if (player.getSkills().getLevel(Skills.THIEVING) < 50) {
+ player.getPacketDispatch().sendMessage("You need to be level " + level + " thief to crack this safe.");
+ return true;
+ }
+ if (player.getInventory().freeSlots() == 0) {
+ player.getPacketDispatch().sendMessage("Not enough inventory space.");
+ return true;
+ }
+ if (player.getSkills().getLifepoints() <= 6) {
+ player.getPacketDispatch().sendMessage("You're too injured to be dealing with traps right now.");
+ return true;
+ }
+ if (player.getLocation().getDistance(node.getLocation()) >= 1) {
+ return true;
+ }
+
+ final boolean success = success(player, Skills.THIEVING);
+ //player.lock(4);
+ player.getPacketDispatch().sendMessage("You start cracking the safe.");
+ player.animate(animations[success ? 1 : 0]);
if (success) {
handleSuccess(player, (Scenery) node);
- return true;
+ return false;
}
final boolean trapped = RandomFunction.random(3) == 1;
if (trapped) {
@@ -109,11 +118,12 @@ public class ThievingGuidePlugin extends OptionHandler {
@Override
public boolean pulse() {
player.animate(new Animation(-1, Priority.HIGH));
- return true;
+ return false;
}
});
}
- return true;
+
+ return false;
}
});
break;
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/AttackListener.kt b/Server/src/main/content/global/skill/AttackListener.kt
similarity index 79%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/AttackListener.kt
rename to Server/src/main/content/global/skill/AttackListener.kt
index 0f00f1e7c..cba5a7e0e 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/AttackListener.kt
+++ b/Server/src/main/content/global/skill/AttackListener.kt
@@ -1,11 +1,13 @@
-package rs09.game.node.entity.skill
+package content.global.skill
import core.game.node.entity.combat.CombatStyle
-import rs09.game.interaction.InteractionListener
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
class AttackListener : InteractionListener {
override fun defineListeners() {
- on(NPC, "attack"){player, npc ->
+ flagInstant()
+ on(IntType.NPC, "attack"){ player, npc ->
//Makes sure player uses correct attack styles for lumbridge dummies
if (npc.id == 4474 && player.getSwingHandler(false).type != CombatStyle.MAGIC) {
player.sendMessage("You can only attack this with magic.")
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/AgilityCourse.java b/Server/src/main/content/global/skill/agility/AgilityCourse.java
similarity index 98%
rename from Server/src/main/java/core/game/node/entity/skill/agility/AgilityCourse.java
rename to Server/src/main/content/global/skill/agility/AgilityCourse.java
index bff5d69dc..9f914ae42 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/AgilityCourse.java
+++ b/Server/src/main/content/global/skill/agility/AgilityCourse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.agility;
+package content.global.skill.agility;
import core.game.node.entity.skill.Skills;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/AgilityHandler.java b/Server/src/main/content/global/skill/agility/AgilityHandler.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/agility/AgilityHandler.java
rename to Server/src/main/content/global/skill/agility/AgilityHandler.java
index 6ddb5c655..722de4afe 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/AgilityHandler.java
+++ b/Server/src/main/content/global/skill/agility/AgilityHandler.java
@@ -1,6 +1,8 @@
-package core.game.node.entity.skill.agility;
+package content.global.skill.agility;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
+
+import core.game.node.entity.impl.PulseType;
import core.game.node.entity.player.link.TeleportManager;
import core.game.node.entity.skill.Skills;
import core.game.interaction.MovementPulse;
@@ -9,7 +11,7 @@ import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
@@ -57,7 +59,7 @@ public final class AgilityHandler {
player.getProperties().setTeleportLocation(dest);
if (hit > 0) {
player.getImpactHandler().setDisabledTicks(0);
- player.getImpactHandler().manualHit(player, hit, HitsplatType.NORMAL);
+ impact(player, hit, HitsplatType.NORMAL);
}
if (message != null) {
player.getPacketDispatch().sendMessage(message);
@@ -267,7 +269,7 @@ public final class AgilityHandler {
walk(player, courseIndex, start, end, animation, experience, message, infiniteRun);
return true;
}
- }, "movement");
+ }, PulseType.STANDARD);
return;
}
player.getWalkingQueue().reset();
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/AgilityShortcut.java b/Server/src/main/content/global/skill/agility/AgilityShortcut.java
similarity index 99%
rename from Server/src/main/java/core/game/node/entity/skill/agility/AgilityShortcut.java
rename to Server/src/main/content/global/skill/agility/AgilityShortcut.java
index 3adb63a89..bd7fae771 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/AgilityShortcut.java
+++ b/Server/src/main/content/global/skill/agility/AgilityShortcut.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.agility;
+package content.global.skill.agility;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/BarbarianOutpostCourse.kt b/Server/src/main/content/global/skill/agility/BarbarianOutpostCourse.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/BarbarianOutpostCourse.kt
rename to Server/src/main/content/global/skill/agility/BarbarianOutpostCourse.kt
index e11e2ee9a..0e4a36fea 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/BarbarianOutpostCourse.kt
+++ b/Server/src/main/content/global/skill/agility/BarbarianOutpostCourse.kt
@@ -1,26 +1,21 @@
-package rs09.game.node.entity.skill.agility
+package content.global.skill.agility
-import api.*
+import core.api.*
import core.cache.def.impl.ItemDefinition
import core.cache.def.impl.NPCDefinition
import core.cache.def.impl.SceneryDefinition
-import core.game.content.dialogue.DialoguePlugin
-import core.game.content.global.action.ClimbActionHandler
-import core.game.content.global.action.DoorActionHandler
-import core.game.content.quest.miniquest.barcrawl.BarcrawlManager
+import content.region.kandarin.barcrawl.BarcrawlManager
import core.game.node.Node
import core.game.node.scenery.Scenery
import core.game.node.entity.combat.ImpactHandler.HitsplatType
import core.game.node.entity.player.Player
-import core.game.node.entity.skill.agility.AgilityCourse
-import core.game.node.entity.skill.agility.AgilityHandler
import core.game.system.task.Pulse
import core.game.world.map.Location
import core.game.world.update.flag.context.Animation
import core.game.world.update.flag.context.Graphics
import core.plugin.Initializable
-import rs09.game.world.GameWorld
-import rs09.plugin.ClassScanner
+import core.game.world.GameWorld
+import core.plugin.ClassScanner
/**
* Handles the barbarian outpost course.
@@ -46,7 +41,7 @@ class BarbarianOutpostCourse
2115, 2116 -> if (!BarcrawlManager.getInstance(player).isFinished || BarcrawlManager.getInstance(player).isStarted) {
player.dialogueInterpreter.open(384)
} else {
- DoorActionHandler.handleAutowalkDoor(player, node as Scenery)
+ core.game.global.action.DoorActionHandler.handleAutowalkDoor(player, node as Scenery)
}
2282 -> handleRopeSwing(player, node as Scenery)
2294 -> handleLogBalance(player, node as Scenery)
@@ -55,7 +50,7 @@ class BarbarianOutpostCourse
if (player.location.x < node.location.x) {
return true
}
- AgilityHandler.climb(player, 2, ClimbActionHandler.CLIMB_UP, player.location.transform(-1, 0, 1), 8.0, "You climb the netting...")
+ AgilityHandler.climb(player, 2, core.game.global.action.ClimbActionHandler.CLIMB_UP, player.location.transform(-1, 0, 1), 8.0, "You climb the netting...")
}
1948 -> {
if (player.location.x > node.location.x) {
@@ -197,7 +192,7 @@ class BarbarianOutpostCourse
* The barbarian guard dialogue plugin.
* @author Woah
*/
- class BarbarianGuardDialogue : DialoguePlugin {
+ class BarbarianGuardDialogue : core.game.dialogue.DialoguePlugin {
/**
* Constructs a new `BarbarianGuardDialogue` `Object`.
*/
@@ -213,7 +208,7 @@ class BarbarianOutpostCourse
*/
constructor(player: Player?) : super(player) {}
- override fun newInstance(player: Player): DialoguePlugin {
+ override fun newInstance(player: Player): core.game.dialogue.DialoguePlugin {
return BarbarianGuardDialogue(player)
}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/GnomeStrongholdCourse.kt b/Server/src/main/content/global/skill/agility/GnomeStrongholdCourse.kt
similarity index 97%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/GnomeStrongholdCourse.kt
rename to Server/src/main/content/global/skill/agility/GnomeStrongholdCourse.kt
index 716dab2fd..d34a40d61 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/GnomeStrongholdCourse.kt
+++ b/Server/src/main/content/global/skill/agility/GnomeStrongholdCourse.kt
@@ -1,17 +1,15 @@
-package rs09.game.node.entity.skill.agility
+package content.global.skill.agility
-import api.*
+import core.api.*
import core.cache.def.impl.SceneryDefinition
import core.game.node.Node
import core.game.node.scenery.Scenery
import core.game.node.entity.npc.NPC
import core.game.node.entity.player.Player
-import core.game.node.entity.skill.agility.AgilityCourse
-import core.game.node.entity.skill.agility.AgilityHandler
import core.game.world.map.Location
import core.game.world.update.flag.context.Animation
import core.plugin.Initializable
-import rs09.game.world.GameWorld
+import core.game.world.GameWorld
/**
* Handles the gnome stronghold agility course.
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/WildernessCourse.kt b/Server/src/main/content/global/skill/agility/WildernessCourse.kt
similarity index 93%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/WildernessCourse.kt
rename to Server/src/main/content/global/skill/agility/WildernessCourse.kt
index a3a409d61..00f08cf31 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/WildernessCourse.kt
+++ b/Server/src/main/content/global/skill/agility/WildernessCourse.kt
@@ -1,21 +1,18 @@
-package rs09.game.node.entity.skill.agility
+package content.global.skill.agility
-import api.*
+import core.api.*
import core.cache.def.impl.SceneryDefinition
-import core.game.content.global.action.DoorActionHandler
import core.game.node.Node
import core.game.node.scenery.Scenery
import core.game.node.entity.player.Player
import core.game.node.entity.player.link.TeleportManager
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.agility.AgilityCourse
-import core.game.node.entity.skill.agility.AgilityHandler
import core.game.system.task.Pulse
import core.game.world.map.Location
import core.game.world.map.RegionManager
import core.game.world.update.flag.context.Animation
import core.plugin.Initializable
-import rs09.game.world.GameWorld
+import core.game.world.GameWorld
/**
* Handles the wilderness agility course.
@@ -34,7 +31,7 @@ class WildernessCourse
when (`object`.id) {
2309 -> handleEntrance(player, `object`)
2307, 2308 -> {
- DoorActionHandler.handleAutowalkDoor(player, `object`)
+ core.game.global.action.DoorActionHandler.handleAutowalkDoor(player, `object`)
handleEntranceObstacle(player, `object`)
}
2288 -> handlePipe(player, `object`)
@@ -53,7 +50,7 @@ class WildernessCourse
*/
private fun handleEntrance(player: Player, `object`: Scenery) {
if (player.location.y > 3916 || player.skills.getLevel(Skills.AGILITY) >= 52) {
- DoorActionHandler.handleAutowalkDoor(player, `object`)
+ core.game.global.action.DoorActionHandler.handleAutowalkDoor(player, `object`)
if (player.location.y <= 3916) {
handleEntranceObstacle(player, `object`)
}
@@ -88,7 +85,7 @@ class WildernessCourse
15 -> player.lock(3)
16 -> {
val doorLoc = if (`object`.id < 2309) Location(2998, 3917, 0) else Location(2998, 3931, 0)
- DoorActionHandler.handleAutowalkDoor(player, RegionManager.getObject(doorLoc))
+ core.game.global.action.DoorActionHandler.handleAutowalkDoor(player, RegionManager.getObject(doorLoc))
return true
}
}
@@ -119,25 +116,19 @@ class WildernessCourse
when (counter++) {
0 -> {
AgilityHandler.forceWalk(player, -1, Location.create(x, 3937, 0), Location.create(x, 3940, 0), Animation.create(10580), 15, 0.0, null, 1) //10
- println("1")
player.teleporter.send(Location.create(3004, 3947, 0), TeleportManager.TeleportType.INSTANT, TeleportManager.WILDY_TELEPORT)
- println("tele")
counter++
AgilityHandler.forceWalk(player, 0, Location.create(x, 3948, 0), Location.create(x, 3950, 0), Animation.create(10579), 20, 12.5, null, 5) //20
- println("3")
return true
}
2 -> {
player.teleporter.send(Location.create(3004, 3947, 0), TeleportManager.TeleportType.INSTANT, TeleportManager.WILDY_TELEPORT)
- println("tele")
counter++
AgilityHandler.forceWalk(player, 0, Location.create(x, 3948, 0), Location.create(x, 3950, 0), Animation.create(10579), 20, 12.5, null, 5)
- println("3")
return true
}
3 -> {
AgilityHandler.forceWalk(player, 0, Location.create(x, 3948, 0), Location.create(x, 3950, 0), Animation.create(10579), 20, 12.5, null, 5)
- println("3")
return true
}
}
@@ -179,7 +170,7 @@ class WildernessCourse
val fail = AgilityHandler.hasFailed(player, 1, 0.3)
val origLoc = player.location
registerLogoutListener(player, "steppingstone"){p ->
- teleport(p, origLoc)
+ player.location = origLoc
}
submitWorldPulse(object : Pulse(2, player){
var counter = 0
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BladeTrap.java b/Server/src/main/content/global/skill/agility/brimhaven/BladeTrap.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BladeTrap.java
rename to Server/src/main/content/global/skill/agility/brimhaven/BladeTrap.java
index 8538dc372..773cd9907 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BladeTrap.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/BladeTrap.java
@@ -1,12 +1,12 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.player.Player;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BrimhavenArena.java b/Server/src/main/content/global/skill/agility/brimhaven/BrimhavenArena.java
similarity index 98%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BrimhavenArena.java
rename to Server/src/main/content/global/skill/agility/brimhaven/BrimhavenArena.java
index e11430740..13a6a4ad6 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BrimhavenArena.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/BrimhavenArena.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
import core.game.component.Component;
-import core.game.content.global.action.ClimbActionHandler;
+import core.game.global.action.ClimbActionHandler;
import core.game.interaction.Option;
import core.game.node.Node;
import core.game.node.entity.Entity;
@@ -15,7 +15,7 @@ import core.game.node.scenery.Scenery;
import core.game.node.scenery.SceneryBuilder;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.*;
import core.game.world.map.zone.MapZone;
import core.game.world.map.zone.ZoneBuilder;
@@ -27,6 +27,8 @@ import core.tools.RandomFunction;
import java.util.HashMap;
import java.util.Map;
+import static core.api.ContentAPIKt.*;
+
/**
* Handles the Brimhaven agility arena zone.
*
@@ -77,7 +79,7 @@ public final class BrimhavenArena extends MapZone implements Plugin {
player.setAttribute("brim-tagcount", 0);
}
player.setAttribute("brim-tagged", false);
- player.getConfigManager().set(309, 0);
+ setVarp(player, 309, 0);
int index = RandomFunction.randomize(DISPENSERS.length);
if (index == player.getAttribute("brim-tag", -1)) {
index = (index + 1) % DISPENSERS.length;
@@ -137,7 +139,7 @@ public final class BrimhavenArena extends MapZone implements Plugin {
player.setAttribute("brim-tagged", true);
int tags = player.getAttribute("brim-tagcount", 0) + 1;
player.setAttribute("brim-tagcount", tags);
- player.getConfigManager().set(309, 4);
+ setVarp(player, 309, 4);
if (tags > 1) {
int amount = 1;
if (!player.getInventory().add(new Item(TICKET.getId(), amount))) {
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BrimhavenCourse.java b/Server/src/main/content/global/skill/agility/brimhaven/BrimhavenCourse.java
similarity index 99%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BrimhavenCourse.java
rename to Server/src/main/content/global/skill/agility/brimhaven/BrimhavenCourse.java
index aa494a60e..4fb8bdb52 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/BrimhavenCourse.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/BrimhavenCourse.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
@@ -11,7 +11,7 @@ import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/DartTrap.java b/Server/src/main/content/global/skill/agility/brimhaven/DartTrap.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/DartTrap.java
rename to Server/src/main/content/global/skill/agility/brimhaven/DartTrap.java
index c43486691..086a59522 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/DartTrap.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/DartTrap.java
@@ -1,14 +1,14 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.impl.Projectile;
import core.game.node.entity.player.Player;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/FloorSpikes.java b/Server/src/main/content/global/skill/agility/brimhaven/FloorSpikes.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/FloorSpikes.java
rename to Server/src/main/content/global/skill/agility/brimhaven/FloorSpikes.java
index 2ff48a454..69111c6bf 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/FloorSpikes.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/FloorSpikes.java
@@ -1,13 +1,13 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.player.Player;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/PressurePad.java b/Server/src/main/content/global/skill/agility/brimhaven/PressurePad.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/PressurePad.java
rename to Server/src/main/content/global/skill/agility/brimhaven/PressurePad.java
index 824903bbf..a2bc07cb2 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/PressurePad.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/PressurePad.java
@@ -1,13 +1,13 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.player.Player;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/SpinningBlades.java b/Server/src/main/content/global/skill/agility/brimhaven/SpinningBlades.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/SpinningBlades.java
rename to Server/src/main/content/global/skill/agility/brimhaven/SpinningBlades.java
index be3650749..a13815767 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/brimhaven/SpinningBlades.java
+++ b/Server/src/main/content/global/skill/agility/brimhaven/SpinningBlades.java
@@ -1,13 +1,13 @@
-package core.game.node.entity.skill.agility.brimhaven;
+package content.global.skill.agility.brimhaven;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.player.Player;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/AgilityPyramidCourse.java b/Server/src/main/content/global/skill/agility/pyramid/AgilityPyramidCourse.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/agility/pyramid/AgilityPyramidCourse.java
rename to Server/src/main/content/global/skill/agility/pyramid/AgilityPyramidCourse.java
index b61dc532d..06cae7b1b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/AgilityPyramidCourse.java
+++ b/Server/src/main/content/global/skill/agility/pyramid/AgilityPyramidCourse.java
@@ -1,23 +1,26 @@
-package core.game.node.entity.skill.agility.pyramid;
+package content.global.skill.agility.pyramid;
import core.cache.def.impl.VarbitDefinition;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.global.action.ClimbActionHandler;
+import core.game.global.action.ClimbActionHandler;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityCourse;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityCourse;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
/**
* Handles the agility pryamid course.
@@ -147,7 +150,7 @@ public final class AgilityPyramidCourse extends AgilityCourse {
case 10855:
case 10856:
addConfig(player, 10869, 0, true);
- if (player.getConfigManager().get(640) == 505 || player.getConfigManager().get(640) == 515) {
+ if (getVarp(player, 640) == 505 || getVarp(player, 640) == 515) {
player.getSkills().addExperience(Skills.AGILITY, 300, true);
}
player.getDialogueInterpreter().sendDialogue("You climb down the steep passage. It leads to the base of the", "pyramid.");
@@ -193,6 +196,7 @@ public final class AgilityPyramidCourse extends AgilityCourse {
player.getPacketDispatch().sendMessage("You must be level 30 agility or higher to climb down the rocks.");
return;
}
+ playAudio(player, Sounds.CLIMBING_LOOP_2454, 0, 6);
if (!scale) {
ForceMovement.run(player, player.getLocation(), end, Animation.create(740), Animation.create(740), Direction.WEST, 13).setEndAnimation(Animation.RESET);
} else {
@@ -219,6 +223,7 @@ public final class AgilityPyramidCourse extends AgilityCourse {
}
player.lock(4);
player.getPacketDispatch().sendMessage("You climb the low wall...");
+ playAudio(player, Sounds.CLIMB_WALL_2453, 40);
if (fail) {
Location end = player.getLocation().transform(d, 1);
player.lock(3);
@@ -242,8 +247,10 @@ public final class AgilityPyramidCourse extends AgilityCourse {
final boolean fail = player.getSkills().getLevel(Skills.AGILITY) < 75 && hasFailed(player);
final Location end = player.getLocation().transform(dir.getStepX() * (fail ? 3 : 5), dir.getStepY() * (fail ? 3 : 5), 0);
player.getPacketDispatch().sendMessage("You put your foot on the ledge and try to edge across...");
+ playAudio(player, Sounds.BALANCING_LEDGE_2451, 0, 5);
if (fail) {
player.lock(4);
+ playAudio(player, Sounds.FALL_LAND_2455, 125);
AgilityHandler.walk(player, -1, player.getLocation(), end, Animation.create(157 - diff), 0.0, "You slip and fall to the level below.");
GameWorld.getPulser().submit(new Pulse(3, player) {
@Override
@@ -290,11 +297,13 @@ public final class AgilityPyramidCourse extends AgilityCourse {
final boolean fail = player.getSkills().getLevel(Skills.AGILITY) >= 75 ? false : hasFailed(player) ;
final Location end = object.getLocation().transform(object.getId() != 10868 ? dir : dir.getOpposite(), fail ? 2 : 5);
AgilityHandler.walk(player, fail ? -1 : 1, player.getLocation(), end, Animation.create(155), fail ? 0.0 : 56.4, fail ? null : "You walk carefully across the slippery plank...");
+ playAudio(player, Sounds.PLANKWALK_2480, 0, 3);
if (fail) {
GameWorld.getPulser().submit(new Pulse(2, player) {
@Override
public boolean pulse() {
final Location dest = transformLevel(end.transform(!custom ? 2 : 0, custom ? -2 : 0, 0));
+ playAudio(player, Sounds.FALL_LAND_2455, 50);
AgilityHandler.failWalk(player, 2, end, dest, dest, Animation.create(764), 10, 10, null);
return true;
}
@@ -322,10 +331,13 @@ public final class AgilityPyramidCourse extends AgilityCourse {
}
dest = transformLevel(dest);
player.lock(8);
+ playAudio(player, Sounds.JUMP_NO_LAND_2467, 30);
+ playAudio(player, Sounds.FALL_LAND_2455, 200);
AgilityHandler.forceWalk(player, -1, player.getLocation(), end, Animation.create(3068), 10, 0.0, "... and miss your footing.");
- AgilityHandler.fail(player, 8, dest, null, 8, null);
+ AgilityHandler.fail(player, 8, dest, Animation.create(3068), 8, null);
return;
}
+ playAudio(player, Sounds.JUMP2_2462, 30);
player.lock(4);
AgilityHandler.forceWalk(player, 2, player.getLocation(), player.getLocation().transform(dir, 3), Animation.create(3067), 20, 22, null);
}
@@ -342,15 +354,17 @@ public final class AgilityPyramidCourse extends AgilityCourse {
final int rot = object.getRotation();
int mod = player.getLocation().equals(new Location(3359, 2849, 2)) ? 0 : player.getLocation().equals(new Location(3357, 2841, 2)) ? 1 : player.getLocation().equals(new Location(3367, 2832, 1)) ? 1 : player.getLocation().equals(new Location(3372, 2832, 1)) ? 0 : object.getLocation().equals(new Location(3370, 2831, 1)) ? 0 : rot == 1 && dir == Direction.EAST ? 0 : rot == 3 && (dir == Direction.WEST || dir == Direction.EAST) ? 1 : rot == 0 && dir == Direction.SOUTH ? 1 : dir == Direction.WEST && rot != 3 || dir == Direction.EAST ? 1 : 0;
final Animation animation = Animation.create(387 - mod);
+ playAudio(player, Sounds.HANDHOLDS_GRAB_TO_SECOND_2450);
+ playAudio(player, Sounds.FALL_LAND_2455, 170);
if (fail) {
Location dest = object.getLocation().transform(dir, 1);
- dest = rot == 1 && dir == Direction.EAST ? dest.transform(1, 2, 0) : rot == 1 && dir == Direction.WEST ? dest.transform(0, -2, 0) : dest.transform(dir == Direction.NORTH || dir == Direction.SOUTH ? -1 : dir == Direction.WEST ? 1 : 0, dir == Direction.SOUTH ? 1 : dir == Direction.WEST || dir == Direction.EAST ? -1 : 0, 0);
+ dest = rot == 1 && dir == Direction.EAST ? dest.transform(1, 2, 0) : rot == 1 && dir == Direction.WEST && player.getLocation().getY() < 2841 ? dest.transform(0, -2, 0) : rot == 1 && dir == Direction.WEST ? dest.transform(0, 2, 0): dest.transform(dir == Direction.NORTH || dir == Direction.SOUTH ? -1 : dir == Direction.WEST ? 1 : 0, dir == Direction.SOUTH ? 1 : dir == Direction.WEST || dir == Direction.EAST ? -1 : 0, 0);
AgilityHandler.walk(player, -1, player.getLocation(), end, animation, 10, null);
- AgilityHandler.fail(player, 3, transformLevel(dest), null, 8, null);
- // player.animate(Animation.create(3056 - mod), 2);
+ Location finalDest = dest;
GameWorld.getPulser().submit(new Pulse(3, player) {
@Override
public boolean pulse() {
+ AgilityHandler.fail(player, 3, transformLevel(finalDest), Animation.create(3056 - mod), 8, null);
player.getAppearance().setDefaultAnimations();
player.getAppearance().sync();
return true;
@@ -376,7 +390,7 @@ public final class AgilityPyramidCourse extends AgilityCourse {
@Override
public boolean pulse() {
player.getSkills().addExperience(Skills.AGILITY, 1000);
- if (player.getConfigManager().get(640) == 505 || player.getConfigManager().get(640) == 515) {
+ if (getVarp(player, 640) == 505 || getVarp(player, 640) == 515) {
player.getPacketDispatch().sendMessage("You find nothing on top of the pyramid.");
return true;
}
@@ -384,6 +398,7 @@ public final class AgilityPyramidCourse extends AgilityCourse {
player.getSavedData().getActivityData().setTopGrabbed(true);
player.getInventory().add(PYRAMID_TOP, player);
player.getDialogueInterpreter().sendItemMessage(PYRAMID_TOP, "You find a golden pyramid!");
+ playJingle(player, 151);
return true;
}
});
@@ -497,9 +512,9 @@ public final class AgilityPyramidCourse extends AgilityCourse {
*/
public static void addConfig(final Player player, final int objectId, final int value, boolean save) {
final VarbitDefinition definition = VarbitDefinition.forObjectID(SceneryDefinition.forId(objectId).getVarbitID());
- final int oldVal = (definition.getValue(player) << definition.getBitShift());
- final int newVal = (value << definition.getBitShift());
- player.getConfigManager().set(CONFIG_ID, (player.getConfigManager().get(CONFIG_ID) - oldVal) + newVal, save);
+ final int oldVal = (definition.getValue(player) << definition.getStartBit());
+ final int newVal = (value << definition.getStartBit());
+ setVarp(player, CONFIG_ID, (getVarp(player, CONFIG_ID) - oldVal) + newVal, save);
}
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/AgilityPyramidZone.java b/Server/src/main/content/global/skill/agility/pyramid/AgilityPyramidZone.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/agility/pyramid/AgilityPyramidZone.java
rename to Server/src/main/content/global/skill/agility/pyramid/AgilityPyramidZone.java
index a47bc0d98..f3247e7ca 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/AgilityPyramidZone.java
+++ b/Server/src/main/content/global/skill/agility/pyramid/AgilityPyramidZone.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.agility.pyramid;
+package content.global.skill.agility.pyramid;
import core.game.node.entity.Entity;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/MovingBlockNPC.java b/Server/src/main/content/global/skill/agility/pyramid/MovingBlockNPC.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/agility/pyramid/MovingBlockNPC.java
rename to Server/src/main/content/global/skill/agility/pyramid/MovingBlockNPC.java
index 6c96397ef..984fd532b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/MovingBlockNPC.java
+++ b/Server/src/main/content/global/skill/agility/pyramid/MovingBlockNPC.java
@@ -1,16 +1,19 @@
-package core.game.node.entity.skill.agility.pyramid;
+package content.global.skill.agility.pyramid;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.npc.AbstractNPC;
import core.game.node.entity.player.Player;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
import core.game.world.update.flag.context.Animation;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* The moving block npc.
@@ -58,8 +61,9 @@ public final class MovingBlockNPC extends AbstractNPC {
Location loc = getLocation().transform(dir, 2);
getWalkingQueue().reset();
getWalkingQueue().addPath(loc.getX(), loc.getY());
- for (Player p : RegionManager.getLocalPlayers(getTileLocations()[0], 2)) {
+ for (Player p : RegionManager.getLocalPlayers(getTileLocations()[0], 4)) {
checkBlock(p);
+ playAudio(p, Sounds.PYRAMID_BLOCK_1395, 30);
}
moving = true;
GameWorld.getPulser().submit(new Pulse(1, this) {
@@ -133,6 +137,7 @@ public final class MovingBlockNPC extends AbstractNPC {
}
}
player.lock(4);
+ playAudio(player, Sounds.LAND_FLAT_2469, 50);
player.setAttribute("block-move", GameWorld.getTicks() + 4);
if(dest != null) {
AgilityHandler.failWalk(player, close ? 1 : 3, player.getLocation(), dest, AgilityPyramidCourse.transformLevel(dest), Animation.create(3066), 10, 8, null, getId() == 3124 ? Direction.WEST : Direction.SOUTH);
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/RollingBlock.java b/Server/src/main/content/global/skill/agility/pyramid/RollingBlock.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/agility/pyramid/RollingBlock.java
rename to Server/src/main/content/global/skill/agility/pyramid/RollingBlock.java
index 20e1262fe..7573889aa 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/pyramid/RollingBlock.java
+++ b/Server/src/main/content/global/skill/agility/pyramid/RollingBlock.java
@@ -1,17 +1,20 @@
-package core.game.node.entity.skill.agility.pyramid;
+package content.global.skill.agility.pyramid;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.Entity;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.game.system.task.MovementHook;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.RegionManager;
import core.game.world.update.flag.context.Animation;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Represents the rolling block obstacle.
@@ -29,6 +32,9 @@ public final class RollingBlock implements MovementHook {
final boolean fail = backwards || AgilityHandler.hasFailed(player, 2, 0.3);
player.lock(5);
AgilityPyramidCourse.addConfig(player, stone, 1, false);
+ playAudio(player, Sounds.PYRAMID_SCRAPE_1396);
+ playAudio(player, Sounds.LAND_FLAT_2469, 40);
+
if(e.isPlayer())
{
((Player) e).logoutListeners.put("rolling-block", p -> {
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/AlKharidPitShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/AlKharidPitShortcut.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/AlKharidPitShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/AlKharidPitShortcut.java
index 866a50f37..76ada4b44 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/AlKharidPitShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/AlKharidPitShortcut.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.plugin.Initializable;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/BarSqueezeShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/BarSqueezeShortcut.java
similarity index 86%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/BarSqueezeShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/BarSqueezeShortcut.java
index adf8651ec..efe0f727f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/BarSqueezeShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/BarSqueezeShortcut.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
-import core.game.node.entity.skill.agility.AgilityHandler;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityHandler;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.game.world.map.Direction;
@@ -9,6 +9,7 @@ import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import content.data.Quests;
/**
* Handles the bar squeezing shortcut.
@@ -61,7 +62,7 @@ public class BarSqueezeShortcut extends AgilityShortcut {
@Override
public boolean checkRequirements(Player player) {
- if (!player.getQuestRepository().isComplete("Priest in Peril") && !(player.getLocation().getY() >= 3159 && player.getLocation().getY() <= 3161)) {
+ if (!player.getQuestRepository().isComplete(Quests.PRIEST_IN_PERIL) && !(player.getLocation().getY() >= 3159 && player.getLocation().getY() <= 3161)) {
player.getDialogueInterpreter().sendDialogue("You need to have completed Priest in Peril in order to do this.");
return false;
}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/BasaltRockShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/BasaltRockShortcut.kt
similarity index 94%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/BasaltRockShortcut.kt
rename to Server/src/main/content/global/skill/agility/shortcuts/BasaltRockShortcut.kt
index 61f29e60a..2bc194611 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/BasaltRockShortcut.kt
+++ b/Server/src/main/content/global/skill/agility/shortcuts/BasaltRockShortcut.kt
@@ -1,15 +1,14 @@
-package rs09.game.node.entity.skill.agility.shortcuts
+package content.global.skill.agility.shortcuts
import core.game.node.Node
import core.game.node.scenery.Scenery
import core.game.node.entity.player.Player
-import core.game.node.entity.skill.agility.AgilityHandler
-import core.game.node.entity.skill.agility.AgilityShortcut
+import content.global.skill.agility.AgilityHandler
+import content.global.skill.agility.AgilityShortcut
import core.game.system.task.Pulse
-import rs09.game.world.GameWorld
+import core.game.world.GameWorld
import core.game.world.map.Location
import core.game.world.update.flag.context.Animation
-import core.game.world.update.flag.player.FaceLocationFlag
import core.plugin.Initializable
import core.plugin.Plugin
@@ -136,7 +135,7 @@ class BasaltRockShortcut : AgilityShortcut {
player.sendMessage(noJump)
} else {
player.lock(3)
- player.faceLocation(FaceLocationFlag.getFaceLocation(player, Location.create(2518, 3611, 0)))
+ player.faceLocation(Location.create(2518, 3611, 0))
AgilityHandler.forceWalk(player, -1, Location.create(2516, 3611, 0), Location.create(2518, 3611, 0), Animation.create(769), 20, 0.0, null, 1)
}
return true
@@ -147,7 +146,7 @@ class BasaltRockShortcut : AgilityShortcut {
player.sendMessage(noJump)
} else {
player.lock(3)
- player.faceLocation(FaceLocationFlag.getFaceLocation(player, Location.create(2516, 3611, 0)))
+ player.faceLocation(Location.create(2516, 3611, 0))
AgilityHandler.forceWalk(player, -1, Location.create(2518, 3611, 0), Location.create(2516, 3611, 0), Animation.create(769), 20, 0.0, null, 1)
}
return true
@@ -199,4 +198,4 @@ class BasaltRockShortcut : AgilityShortcut {
}
})
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/CrumblingWallShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/CrumblingWallShortcut.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/CrumblingWallShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/CrumblingWallShortcut.java
index c43893d5c..bc730d1df 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/CrumblingWallShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/CrumblingWallShortcut.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/FenceJumpShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/FenceJumpShortcut.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/FenceJumpShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/FenceJumpShortcut.java
index 072d3f0e6..f57c41408 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/FenceJumpShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/FenceJumpShortcut.java
@@ -1,13 +1,13 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.diary.DiaryType;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/LogBalanceShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/LogBalanceShortcut.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/LogBalanceShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/LogBalanceShortcut.java
index 2fbd925ad..9bb39507e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/LogBalanceShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/LogBalanceShortcut.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.game.node.entity.player.link.diary.DiaryType;
import core.plugin.Initializable;
-import core.game.node.entity.skill.agility.AgilityHandler;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/MonkeyBarShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/MonkeyBarShortcut.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/MonkeyBarShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/MonkeyBarShortcut.java
index aa90b416c..673d27781 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/MonkeyBarShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/MonkeyBarShortcut.java
@@ -1,15 +1,15 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.plugin.Initializable;
-import core.game.node.entity.skill.agility.AgilityHandler;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
import kotlin.Unit;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/PipeShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/PipeShortcut.kt
similarity index 95%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/PipeShortcut.kt
rename to Server/src/main/content/global/skill/agility/shortcuts/PipeShortcut.kt
index 8ed3d0bbc..f120546f7 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/PipeShortcut.kt
+++ b/Server/src/main/content/global/skill/agility/shortcuts/PipeShortcut.kt
@@ -1,12 +1,12 @@
-package rs09.game.node.entity.skill.agility.shortcuts
+package content.global.skill.agility.shortcuts
import core.game.node.scenery.Scenery
import core.game.node.entity.player.Player
import core.game.node.entity.player.link.diary.DiaryType
-import core.game.node.entity.skill.agility.AgilityHandler
-import core.game.node.entity.skill.agility.AgilityShortcut
+import content.global.skill.agility.AgilityHandler
+import content.global.skill.agility.AgilityShortcut
import core.game.system.task.Pulse
-import rs09.game.world.GameWorld
+import core.game.world.GameWorld
import core.game.world.update.flag.context.Animation
import core.plugin.Initializable
import core.plugin.Plugin
@@ -57,11 +57,8 @@ class PipeShortcut : AgilityShortcut {
/**
* Run for the main fire event
- * Use this for unlocking achievement diaries + any other unlocks
*/
override fun run(player: Player, obj: Scenery, option: String, failed: Boolean) {
- if (obj.id == 29370)
- player.achievementDiaryManager.finishTask(player, DiaryType.VARROCK, 2, 1)
/**
* Pulse that starts the object interaction when clicked on one of these shortcuts
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/RockClimbShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/RockClimbShortcut.kt
similarity index 98%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/RockClimbShortcut.kt
rename to Server/src/main/content/global/skill/agility/shortcuts/RockClimbShortcut.kt
index eaad2f461..509023e68 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/RockClimbShortcut.kt
+++ b/Server/src/main/content/global/skill/agility/shortcuts/RockClimbShortcut.kt
@@ -1,10 +1,10 @@
-package rs09.game.node.entity.skill.agility.shortcuts
+package content.global.skill.agility.shortcuts
import core.game.node.scenery.Scenery
import core.game.node.entity.impl.ForceMovement
import core.game.node.entity.player.Player
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.agility.AgilityShortcut
+import content.global.skill.agility.AgilityShortcut
import core.game.world.map.Direction
import core.game.world.map.Location
import core.game.world.update.flag.context.Animation
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/RopeSwing.java b/Server/src/main/content/global/skill/agility/shortcuts/RopeSwing.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/RopeSwing.java
rename to Server/src/main/content/global/skill/agility/shortcuts/RopeSwing.java
index d57f8116d..e6853fe0c 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/RopeSwing.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/RopeSwing.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
@@ -8,13 +8,13 @@ import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import core.game.node.entity.skill.agility.AgilityHandler;
+import content.global.skill.agility.AgilityHandler;
@Initializable
public class RopeSwing extends UseWithHandler {
@Override
public boolean handle(NodeUsageEvent event) {
- System.out.println("Trying to handle.");
+
if(event.getUsedWith() instanceof Scenery){
Scenery object = event.getUsedWith().asScenery();
int objId = object.getId();
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/SteppingStoneShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/SteppingStoneShortcut.kt
similarity index 79%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/SteppingStoneShortcut.kt
rename to Server/src/main/content/global/skill/agility/shortcuts/SteppingStoneShortcut.kt
index ce61a356b..035ed53d7 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/agility/shortcuts/SteppingStoneShortcut.kt
+++ b/Server/src/main/content/global/skill/agility/shortcuts/SteppingStoneShortcut.kt
@@ -1,7 +1,9 @@
-package rs09.game.node.entity.skill.agility.shortcuts
+package content.global.skill.agility.shortcuts
+import core.api.*
import core.cache.def.impl.SceneryDefinition
import core.game.interaction.OptionHandler
+import core.game.interaction.QueueStrength
import core.game.node.Node
import core.game.node.entity.impl.ForceMovement
import core.game.node.entity.player.Player
@@ -38,15 +40,19 @@ class SteppingStoneShortcut : OptionHandler() {
}
val offset = getOffset(player,finalDest)
player.debug("Offset: ${offset.first},${offset.second}")
- player.pulseManager.run(object : Pulse(2){
- override fun pulse(): Boolean {
- val there = player.location == finalDest
- if(!there){
- ForceMovement.run(player,player.location,player.location.transform(offset.first,offset.second,0), ANIMATION,10)
- }
- return there
+ closeAllInterfaces(player)
+ lock(player, 3)
+ player.locks.lockTeleport(3)
+ queueScript(player, 2, QueueStrength.SOFT) {
+ val there = player.location == finalDest
+ if (!there) {
+ lock(player, 3)
+ player.locks.lockTeleport(3)
+ ForceMovement.run(player,player.location,player.location.transform(offset.first,offset.second,0), ANIMATION,10)
+ return@queueScript delayScript(player, 2)
}
- })
+ return@queueScript stopExecuting(player)
+ }
return true
}
@@ -82,4 +88,4 @@ class SteppingStoneShortcut : OptionHandler() {
*/
private val ANIMATION = Animation(741)
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/StileShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/StileShortcut.kt
new file mode 100644
index 000000000..e492b6b9d
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/StileShortcut.kt
@@ -0,0 +1,79 @@
+package content.global.skill.agility.shortcuts
+
+import core.api.*
+import core.api.utils.Vector
+import core.game.activity.ActivityManager
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.world.map.Direction
+import core.game.world.map.Location
+
+class StileShortcut : InteractionListener {
+ val ids = intArrayOf(993, 3730, 7527, 12982, 19222, 22302, 29460, 33842, 34776, 39508, 39509, 39510)
+ val FALCONRY_STILE = 19222
+ override fun defineListeners() {
+ on (ids, IntType.SCENERY, "climb-over") {p, n ->
+ val direction = Vector.betweenLocs(p.location, n.location).toDirection()
+ val startLoc = p.location.transform(direction, 1)
+ val endLoc = p.location.transform(direction, 2)
+
+ closeAllInterfaces(p)
+ p.walkingQueue.reset()
+ p.walkingQueue.addPath(startLoc.x, startLoc.y)
+ forceMove(p, startLoc, endLoc, 0, animationCycles(839), direction, 839)
+
+ queueScript(p, 5, QueueStrength.SOFT) {_ ->
+ val end = endLoc.transform(direction, 1)
+ p.walkingQueue.reset()
+ p.walkingQueue.addPath(end.x, end.y)
+
+ if (n.id == FALCONRY_STILE)
+ handleFalconry(p, endLoc)
+ return@queueScript stopExecuting(p)
+ }
+ return@on true
+ }
+
+ setDest(IntType.SCENERY, ids, "climb-over") {e, n ->
+ return@setDest getInteractLocation(e.location, n.location, getOrientation(n.direction))
+ }
+ }
+
+
+
+ companion object {
+ fun getInteractLocation (pLoc: Location, sLoc: Location, orientation: Orientation) : Location {
+ when (orientation) {
+ Orientation.Horizontal -> {
+ if (pLoc.x <= sLoc.x) return sLoc.transform(-1, 0, 0)
+ else return sLoc.transform(2, 0, 0)
+ }
+ Orientation.Vertical -> {
+ if (pLoc.y <= sLoc.y) return sLoc.transform(0, -1, 0)
+ else return sLoc.transform(0, 2, 0)
+ }
+ }
+ }
+
+ fun getOrientation (rotation: Direction) : Orientation {
+ when (rotation) {
+ Direction.EAST, Direction.WEST -> return Orientation.Horizontal
+ else -> return Orientation.Vertical
+ }
+ }
+
+ fun handleFalconry (p: Player, endLoc: Location) {
+ if (endLoc.y == 3619)
+ ActivityManager.start(p, "falconry", false)
+ else
+ ActivityManager.getActivity("falconry").leave(p, false)
+ }
+ }
+
+ enum class Orientation {
+ Horizontal,
+ Vertical
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/StrangeFloorShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/StrangeFloorShortcut.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/StrangeFloorShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/StrangeFloorShortcut.java
index 9a21ec827..cf0d784e1 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/StrangeFloorShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/StrangeFloorShortcut.java
@@ -1,15 +1,15 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/TunnelShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/TunnelShortcut.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/TunnelShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/TunnelShortcut.java
index 445854d4e..42cf77e34 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/TunnelShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/TunnelShortcut.java
@@ -1,19 +1,22 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.game.node.entity.player.link.diary.DiaryType;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import static core.api.ContentAPIKt.hasRequirement;
+import content.data.Quests;
+
/**
* Handles a tunnel shortcut.
* @author Vexia
@@ -70,6 +73,10 @@ public class TunnelShortcut extends AgilityShortcut {
@Override
public void run(final Player player, Scenery object, String option, boolean failed) {
+ if (object.getId() == 14922) {
+ if (!hasRequirement(player, Quests.SWAN_SONG))
+ return;
+ }
player.lock(6);
final Scenery o = object;
final Location start = player.getLocation();
diff --git a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/ZanarisSqueezeShortcut.java b/Server/src/main/content/global/skill/agility/shortcuts/ZanarisSqueezeShortcut.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/ZanarisSqueezeShortcut.java
rename to Server/src/main/content/global/skill/agility/shortcuts/ZanarisSqueezeShortcut.java
index 1d057e5b8..b5a37c5fb 100644
--- a/Server/src/main/java/core/game/node/entity/skill/agility/shortcuts/ZanarisSqueezeShortcut.java
+++ b/Server/src/main/content/global/skill/agility/shortcuts/ZanarisSqueezeShortcut.java
@@ -1,8 +1,8 @@
-package core.game.node.entity.skill.agility.shortcuts;
+package content.global.skill.agility.shortcuts;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.agility.AgilityShortcut;
+import content.global.skill.agility.AgilityShortcut;
import core.game.node.entity.impl.ForceMovement;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractGrappleShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractGrappleShortcut.kt
new file mode 100644
index 000000000..d6672efe1
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractGrappleShortcut.kt
@@ -0,0 +1,136 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.scenery.Scenery
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+
+abstract class AbstractGrappleShortcut : InteractionListener {
+ /**
+ * Make sure that you have flagInstant in your listeners.
+ * If you do not the player will run and try to touch the grapple point
+ */
+ private val VALID_CROSSBOWS = intArrayOf(
+ Items.MITH_CROSSBOW_9181,
+ Items.ADAMANT_CROSSBOW_9183,
+ Items.RUNE_CROSSBOW_9185,
+ Items.DORGESHUUN_CBOW_8880
+ )
+
+ protected abstract val REQUIREMENTS: HashMap
+
+ protected abstract val grappleStartLocation: Location
+ protected abstract val grappleEndLocation: Location
+
+ // use lazy so that the skill requirements can be populated after the child builds them
+ private val requirementString1: String by lazy {
+ "You need at least " +
+ REQUIREMENTS[Skills.AGILITY] + " " + Skills.SKILL_NAME[Skills.AGILITY] + ", " +
+ REQUIREMENTS[Skills.RANGE] + " " + Skills.SKILL_NAME[Skills.RANGE] + ","
+ }
+ private val requirementString2: String by lazy {
+ "and " +
+ REQUIREMENTS[Skills.STRENGTH] + " " + Skills.SKILL_NAME[Skills.STRENGTH] + " to use this shortcut."
+ }
+
+
+ // What needs to have its model changed during a grapple
+ protected abstract val grappleScenery: List
+
+ // What animation to use when getting the player across
+ protected abstract val animation: Animation
+ // How long should the animation last (in ticks)
+ protected abstract val animationDuration: Int
+
+ protected abstract fun animation(animationStage: Int, player: Player): Boolean
+
+
+ // The message that can appear if there should be one after grappling
+ protected val message: String? = null
+
+ private fun getRequirementString(): Array {
+ val requirementString = arrayOf(requirementString1, requirementString2)
+ return requirementString
+ }
+
+ private fun doesPlayerHaveRequiredItemsEquipped(player: Player): Boolean {
+ return inEquipment(player, Items.MITH_GRAPPLE_9419) && anyInEquipment(player, *VALID_CROSSBOWS)
+ }
+
+ private fun doesPlayerHaveRequiredLevels(player: Player): Boolean {
+ for ((skill, requiredLevel) in REQUIREMENTS) {
+ if (!hasLevelDyn(player, skill, requiredLevel)) {
+ return false
+ }
+ }
+ return true
+ }
+
+ protected open fun isPlayerInRangeToGrapple(player: Player, startLoc: Location, range: Int): Boolean {
+ return inBorders(player, startLoc.x - range, startLoc.y - range,
+ startLoc.x + range, startLoc.y + range)
+ }
+
+ /**
+ * See if the [player] is close enough to the [startLoc] (based on [range] to
+ * try and grapple. This will return false if the [player] is too far away,
+ * if the player does not have the right levels or if the player does not have
+ * the correct gear equipped.
+ */
+ protected fun canGrapple(player: Player, startLoc: Location, range: Int): Boolean {
+ if (isPlayerInRangeToGrapple(player, startLoc, range)) {
+ forceWalk(player, startLoc, "smart")
+ } else {
+ // todo should this be "you are too far away" or something like that?
+ sendMessage(player, "Nothing interesting happens.")
+ return false
+ }
+
+ if (!doesPlayerHaveRequiredItemsEquipped(player)) {
+ sendDialogue(player, "You need a Mithril crossbow and a Mithril grapple in order to do this.")
+ return false
+ }
+
+ if (!doesPlayerHaveRequiredLevels(player)) {
+ sendDialogueLines(player,
+ *getRequirementString()
+ )
+ return false
+ }
+ return true
+ }
+
+ protected fun grapple(player: Player, message: String?): Boolean {
+ closeAllInterfaces(player)
+ lock(player, animationDuration)
+ // TODO is this right? should we force the player to cross?
+ queueScript(player, strength = QueueStrength.SOFT) { stage: Int ->
+ if (animation(stage, player)){
+ // We're done with the animation
+ return@queueScript stopExecuting(player)
+ }
+ else{
+ return@queueScript delayScript(player, 1)
+ }
+ }
+
+ message?.let{
+ player.sendMessage(message)
+ }
+ return true
+ }
+
+
+ /**
+ * If an achievement diary can be updated it should be done here
+ */
+ protected open fun updateDiary(player: Player): Boolean{
+ return false
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractOneWayGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractOneWayGrapple.kt
new file mode 100644
index 000000000..7645b0315
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractOneWayGrapple.kt
@@ -0,0 +1,39 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.node.entity.player.Player
+
+abstract class AbstractOneWayGrapple : AbstractGrappleShortcut() {
+
+
+ override fun animation(animationStage: Int, player: Player): Boolean {
+ when (animationStage) {
+ 1 -> {
+ // Point towards the grapple landing zone
+ face(player, grappleEndLocation)
+ // Start the grapple animation
+ animate(player, animation)
+ }
+
+ 5 -> {
+ for (tgt in grappleScenery) {
+ // Add grapple effects to all scenery (for 10 ticks)
+ replaceScenery(tgt!!, tgt.id + 1, 10)
+ }
+ }
+
+ 5 + animationDuration -> {
+ // After the animation is done teleport to the landing zone
+ teleport(player, grappleEndLocation)
+ }
+
+ 5 + animationDuration + 1 -> {
+ // free the player
+ unlock(player)
+ updateDiary(player)
+ return true
+ }
+ }
+ return false
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractTwoWayGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractTwoWayGrapple.kt
new file mode 100644
index 000000000..4cbb3aa1c
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AbstractTwoWayGrapple.kt
@@ -0,0 +1,16 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.game.node.entity.player.Player
+import core.game.world.map.Direction
+import core.game.world.map.Location
+
+abstract class AbstractTwoWayGrapple : AbstractGrappleShortcut(){
+
+ abstract var direction: Direction?
+
+ abstract var startLoc: Location?
+ abstract var endLoc: Location?
+
+ protected abstract fun setStartEndSide(player: Player, margin: Int = 5)
+ protected abstract fun getGrappleScenery(direction: Direction): List
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/AlKharidGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AlKharidGrapple.kt
new file mode 100644
index 000000000..5f98b03e4
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/AlKharidGrapple.kt
@@ -0,0 +1,108 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Direction
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Scenery
+
+class AlKharidGrapple : AbstractTwoWayGrapple(){
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 8, Skills.RANGE to 37, Skills.STRENGTH to 19)
+
+ // Lumbridge
+ override val grappleStartLocation: Location = Location(3246, 3179, 0)
+
+ // Al Kharid
+ override val grappleEndLocation: Location = Location(3259, 3179, 0)
+
+ override var direction: Direction? = null
+ override var startLoc: Location? = null
+ override var endLoc: Location? = null
+
+ override var grappleScenery: List = listOf()
+
+ override val animation: Animation = Animation(4230)
+ override val animationDuration: Int = 9
+ override fun animation(animationStage: Int, player: Player): Boolean {
+ when (animationStage) {
+ 1 -> {
+ face(player, endLoc!!)
+ animate(player, animation)
+ }
+
+ 5 -> {
+ for (tgt in grappleScenery) {
+ if ((tgt!!.id == 17068)) {
+ // This is the raft
+ continue
+ }
+ replaceScenery(tgt, tgt.id + 1, 10)
+ }
+ }
+
+ 5 + animationDuration -> {
+ teleport(player, endLoc!!)
+ }
+ 5 + animationDuration + 1 -> {
+ unlock(player)
+ updateDiary(player)
+ return true
+ }
+ }
+ return false
+ }
+
+ override fun defineListeners() {
+ flagInstant() // execute listeners instantly without determining path
+
+ on(Scenery.BROKEN_RAFT_17068, IntType.SCENERY, "grapple") { player, target ->
+ // Check if we are on the east or the west of the broken raft
+ // East = Lum
+ setStartEndSide(player)
+ if (!canGrapple(player, startLoc!!, 2)){
+ return@on true
+ }
+ grapple(player,message)
+ return@on true
+ }
+ }
+
+
+ override fun setStartEndSide(player: Player, margin: Int) {
+ if (player.location.x < grappleStartLocation.x + margin){
+ // We're on the west side
+ direction = Direction.EAST // got to jump east
+ startLoc = grappleStartLocation
+ endLoc = grappleEndLocation
+ }
+ else {
+ // we're on the east side
+ direction = Direction.WEST // got to jump west
+ startLoc = grappleEndLocation
+ endLoc = grappleStartLocation
+ }
+
+ grappleScenery = getGrappleScenery(direction!!)
+ }
+
+ override fun getGrappleScenery(direction: Direction): List {
+ val lumbridgeTree = getScenery(Location(3244, 3179, 0))
+ val alKharidTree = getScenery(Location(3260, 3178, 0))
+ val startTree : core.game.node.scenery.Scenery?
+ val endTree : core.game.node.scenery.Scenery?
+ val raft = getScenery(Location(3252, 3179, 0))
+ if (direction == Direction.EAST){
+ startTree = lumbridgeTree
+ endTree = alKharidTree
+ }
+ else{
+ startTree = alKharidTree
+ endTree = lumbridgeTree
+ }
+ return listOf(startTree,endTree, raft)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/CatherbyGrappleShortcut.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/CatherbyGrappleShortcut.kt
new file mode 100644
index 000000000..e5bcd2a8f
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/CatherbyGrappleShortcut.kt
@@ -0,0 +1,43 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Scenery
+import core.game.interaction.IntType
+import core.plugin.Initializable
+import kotlin.collections.HashMap
+
+
+@Initializable
+class CatherbyGrappleShortcut : AbstractOneWayGrapple(){
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 32, Skills.RANGE to 35, Skills.STRENGTH to 35)
+
+ override val grappleStartLocation: Location = Location.create(2866, 3429, 0)
+
+ override val grappleEndLocation: Location = Location.create(2869,3430,0)
+
+ // todo this is the wrong animation
+ override val animation: Animation = Animation(4455)
+
+ override val animationDuration: Int = 9
+
+ override val grappleScenery: List = listOf(
+ getScenery(Location.create(2869,3429, 0)) // rocks
+ )
+
+ override fun defineListeners() {
+ flagInstant()
+
+ on(Scenery.ROCKS_17042, IntType.SCENERY, "grapple"){ player, _ ->
+ if (!canGrapple(player, grappleStartLocation, 1)) {
+ return@on true
+ }
+ grapple(player, message)
+ return@on true
+ }
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/FaladorGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/FaladorGrapple.kt
new file mode 100644
index 000000000..58e8e2fe2
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/FaladorGrapple.kt
@@ -0,0 +1,123 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.plugin.Initializable
+import org.rs09.consts.Scenery
+
+abstract class AbstractFaladorGrapple(private var wallGrappleInterface: WallGrappleInterface = WallGrappleInterfaceImpl()): AbstractOneWayGrapple() {
+
+ override val animation: Animation = Animation(4455)
+
+ override val animationDuration: Int = 14
+
+ // There are no scenery items to hook so don't let children override this
+ final override val grappleScenery: List = listOf()
+
+ protected fun jump(player: Player, destination: Location): Boolean {
+ return wallGrappleInterface.jump(player, destination)
+ }
+
+ override fun animation(animationStage: Int, player: Player): Boolean {
+ when (animationStage) {
+ 1 -> {
+ player.faceLocation(grappleEndLocation)
+ visualize(player, animation, Graphics(760, 100))
+ }
+
+ 8 -> {
+ wallGrappleInterface.fadeToBlack(player)
+ }
+
+ 13 -> teleport(player, grappleEndLocation)
+ 14 -> {
+ wallGrappleInterface.showGame(player)
+ unlock(player)
+ updateDiary(player)
+ return true
+ }
+ }
+ return false
+ }
+
+}
+@Initializable
+class FaladorGrappleNorth : AbstractFaladorGrapple() {
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 11, Skills.RANGE to 19, Skills.STRENGTH to 37)
+
+ override val grappleStartLocation: Location = Location.create(3033, 3390, 0)
+
+
+ override val grappleEndLocation: Location = Location.create(3033, 3389, 1)
+
+ override fun defineListeners() {
+ flagInstant()
+ on(Scenery.WALL_17049, IntType.SCENERY, "grapple") { player, _ ->
+ if(!canGrapple(player, grappleStartLocation, 4)) {
+ return@on true
+ }
+ grapple(player, message)
+ return@on true
+ }
+
+ on(Scenery.WALL_17051, IntType.SCENERY, "jump"){ player, _ ->
+ jump(player, grappleStartLocation)
+ return@on true
+ }
+ }
+
+ override fun isPlayerInRangeToGrapple(player: Player, startLoc: Location, range: Int): Boolean {
+ // Do not let the player grapple from the other side of the wall
+ return inBorders(player, startLoc.x - range, startLoc.y,
+ startLoc.x + range, startLoc.y + 2)
+ }
+
+ override fun updateDiary(player: Player): Boolean {
+ player.achievementDiaryManager.finishTask(player, DiaryType.FALADOR, 1, 2)
+ return true
+ }
+}
+
+@Initializable
+class FaladorGrappleSouth : AbstractFaladorGrapple() {
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 11, Skills.RANGE to 19, Skills.STRENGTH to 37)
+
+ override val grappleStartLocation: Location = Location.create(3032, 3388, 0)
+
+ override val grappleEndLocation: Location = Location.create(3032, 3389, 1)
+
+ override fun defineListeners() {
+ flagInstant()
+ on(Scenery.WALL_17050, IntType.SCENERY, "grapple") { player, _ ->
+ if(!canGrapple(player, grappleStartLocation, 4)) {
+ return@on true
+ }
+ grapple(player, message)
+ return@on true
+ }
+
+ on(Scenery.WALL_17052, IntType.SCENERY, "jump"){ player, _ ->
+ jump(player, grappleStartLocation)
+ return@on true
+ }
+ }
+
+ override fun isPlayerInRangeToGrapple(player: Player, startLoc: Location, range: Int): Boolean {
+ // Do not let the player grapple from the other side of the wall
+ return inBorders(player, startLoc.x - range, startLoc.y,
+ startLoc.x + range, startLoc.y - 2)
+ }
+
+ override fun updateDiary(player: Player): Boolean {
+ player.achievementDiaryManager.finishTask(player, DiaryType.FALADOR, 1, 2)
+ return true
+ }
+}
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/KaramjaGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/KaramjaGrapple.kt
new file mode 100644
index 000000000..96337db8e
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/KaramjaGrapple.kt
@@ -0,0 +1,108 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Direction
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.plugin.Initializable
+import org.rs09.consts.Scenery
+
+@Initializable
+class KaramjaGrapple : AbstractTwoWayGrapple(){
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 53, Skills.RANGE to 42, Skills.STRENGTH to 21)
+
+ // South
+ override val grappleStartLocation: Location = Location.create(2874, 3127, 0)
+
+
+ // North
+ override val grappleEndLocation: Location = Location.create(2874,3142,0)
+
+ override var direction: Direction? = null
+ override var startLoc: Location? = null
+ override var endLoc: Location? = null
+
+ override var grappleScenery: List = listOf()
+
+ override val animation: Animation = Animation(4230)
+ override val animationDuration: Int = 9
+
+ override fun animation(animationStage: Int, player: Player): Boolean {
+ when (animationStage) {
+ 1 -> {
+ face(player, endLoc!!)
+ animate(player, animation)
+ }
+
+ 5 -> {
+ for (tgt in grappleScenery) {
+ replaceScenery(tgt!!, tgt.id + 1, 10)
+ }
+ }
+
+ 5 + animationDuration -> {
+ teleport(player, endLoc!!)
+ }
+ 5 + animationDuration + 1 -> {
+ unlock(player)
+ updateDiary(player)
+ return true
+ }
+ }
+ return false
+ }
+
+ override fun defineListeners() {
+ flagInstant()
+
+ on(Scenery.STRONG_TREE_17074, IntType.SCENERY, "grapple"){ player, _ ->
+ setStartEndSide(player)
+ if(!canGrapple(player, startLoc!!, 1)){
+ return@on true
+ }
+ grapple(player, message)
+ return@on true
+ }
+
+ }
+
+ override fun setStartEndSide(player: Player, margin: Int) {
+ if (player.location.y > grappleEndLocation.y - margin){ // we're on the north side
+ direction = Direction.SOUTH // got to jump south
+ startLoc = grappleEndLocation
+ endLoc = grappleStartLocation
+ }
+ else {
+ direction = Direction.NORTH // got to jump north
+ startLoc = grappleStartLocation
+ endLoc = grappleEndLocation
+ }
+
+ grappleScenery = getGrappleScenery(direction!!)
+ }
+
+ override fun getGrappleScenery(direction: Direction): List {
+ val startTree : core.game.node.scenery.Scenery?
+ val endTree : core.game.node.scenery.Scenery?
+ val islandTree = getScenery(Location(2873, 3134, 0))
+ if (direction == Direction.NORTH){
+ startTree = getScenery(Location(2874, 3144, 0))
+ endTree = getScenery(Location(2873, 3125, 0))
+ }
+ else{
+ startTree = getScenery(Location(2874, 3144, 0))
+ endTree = getScenery(Location(2873, 3125, 0))
+ }
+ return listOf(startTree,endTree, islandTree)
+ }
+
+ override fun updateDiary(player: Player): Boolean {
+ player.achievementDiaryManager.finishTask(player, DiaryType.KARAMJA, 2, 6)
+ return true
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/WallGrappleInterface.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/WallGrappleInterface.kt
new file mode 100644
index 000000000..8eeadcf71
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/WallGrappleInterface.kt
@@ -0,0 +1,69 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.*
+import core.game.component.Component
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.net.packet.PacketRepository
+import core.net.packet.context.MinimapStateContext
+import core.net.packet.out.MinimapState
+
+interface WallGrappleInterface {
+ var tab: Component?
+ fun jump(player: Player, destination: Location): Boolean
+ fun fadeToBlack(player: Player): Component
+ fun showGame(player: Player): Boolean
+}
+
+
+class WallGrappleInterfaceImpl: WallGrappleInterface{
+ override var tab: Component? = null
+
+ override fun jump(player: Player, destination: Location): Boolean {
+ // todo this doesn't look great compared to what it used to look like
+ closeAllInterfaces(player)
+ forceWalk(player, destination,"smart" )
+ face(player, destination)
+ // We're teleporting if we are animating so make the strength SOFT
+ queueScript(player, strength = QueueStrength.SOFT){ stage: Int ->
+ when (stage){
+ 1 -> animate(player, Animation(7268))
+ 2 ->{
+ teleport(player, destination)
+ return@queueScript stopExecuting(player)
+ }
+ }
+ return@queueScript delayScript(player, 1)
+
+ }
+ return true
+ }
+
+
+ override fun fadeToBlack(player: Player): Component {
+ // todo make this work. Right now the tab is always null
+ tab = player.interfaceManager.singleTab
+ player.interfaceManager.openOverlay(Component(115))
+ PacketRepository.send(MinimapState::class.java, MinimapStateContext(player, 2))
+ player.interfaceManager.removeTabs(0, 1, 2, 3, 4, 5, 6, 11, 12)
+ if (tab == null){
+ println("Panic")
+ return Component(1)
+ }
+ return tab!!
+ }
+
+ override fun showGame(player: Player): Boolean {
+ player.interfaceManager.restoreTabs()
+ if (tab != null) {
+ player.interfaceManager.openTab(tab)
+ }
+ PacketRepository.send(MinimapState::class.java, MinimapStateContext(player, 0))
+ closeOverlay(player)
+ closeInterface(player)
+ return true
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/WaterOrbGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/WaterOrbGrapple.kt
new file mode 100644
index 000000000..8fc2a2167
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/WaterOrbGrapple.kt
@@ -0,0 +1,48 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.getScenery
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.node.entity.skill.Skills
+import org.rs09.consts.Scenery
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.plugin.Initializable
+
+@Initializable
+class WaterOrbGrapple : AbstractOneWayGrapple(){
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 36, Skills.RANGE to 39, Skills.STRENGTH to 22)
+
+ override val grappleStartLocation: Location = Location.create(2841, 3427, 0)
+
+ override val grappleEndLocation: Location = Location.create(2841, 3433, 0)
+
+ override val animation: Animation = Animation(4230)
+
+ override val animationDuration: Int = 9
+
+ override val grappleScenery: List = listOf(
+ getScenery(Location.create(2841, 3426, 0)), // rock
+ getScenery(Location.create(2841, 3434, 0)) // tree
+ )
+
+ override fun defineListeners() {
+ flagInstant()
+
+ on(Scenery.CROSSBOW_TREE_17062, IntType.SCENERY, "grapple"){ player, _ ->
+ if (!canGrapple(player, grappleStartLocation, 1)) {
+ return@on true
+ }
+ grapple(player, message)
+ return@on true
+ }
+ }
+
+ override fun updateDiary(player: Player): Boolean {
+ player.achievementDiaryManager.finishTask(player, DiaryType.SEERS_VILLAGE, 2, 10)
+ return true
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/agility/shortcuts/grapple/YanilleGrapple.kt b/Server/src/main/content/global/skill/agility/shortcuts/grapple/YanilleGrapple.kt
new file mode 100644
index 000000000..dc5351275
--- /dev/null
+++ b/Server/src/main/content/global/skill/agility/shortcuts/grapple/YanilleGrapple.kt
@@ -0,0 +1,99 @@
+package content.global.skill.agility.shortcuts.grapple
+
+import core.api.inBorders
+import core.api.teleport
+import core.api.unlock
+import core.api.visualize
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.world.map.Direction
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import core.plugin.Initializable
+import org.rs09.consts.Scenery
+
+@Initializable
+class YanilleGrapple(private var wallGrappleInterface: WallGrappleInterface = WallGrappleInterfaceImpl()): AbstractTwoWayGrapple() {
+
+ override val REQUIREMENTS: HashMap = hashMapOf(Skills.AGILITY to 11, Skills.RANGE to 19, Skills.STRENGTH to 37)
+
+ override val grappleStartLocation: Location = Location.create(2556, 3072, 0)
+
+ override val grappleEndLocation: Location = Location.create(2556, 3073, 1)
+
+ override var direction: Direction? = null
+ override var startLoc: Location? = null
+ override var endLoc: Location? = null
+ override fun setStartEndSide(player: Player, margin: Int) {
+ // Start location is where you end after jumping in the opposite way
+ if (player.location.y > 3073 ){
+ // We are north of the middle of the wall
+ startLoc = Location.create(2556, 3075, 0) // This is where you grapple from/land after jumping
+ endLoc = Location.create(2556, 3074, 1) //
+ }
+ else {
+ // We are south of the middle of the wall
+ startLoc = Location.create(2556, 3072, 0)
+ endLoc = Location.create(2556, 3073, 1)
+ }
+ }
+
+ override fun getGrappleScenery(direction: Direction): List {
+ return emptyList()
+ }
+
+ override var grappleScenery: List = listOf()
+
+ override val animation: Animation = Animation(4455)
+ override val animationDuration: Int = 9
+ override fun animation(animationStage: Int, player: Player): Boolean {
+ when (animationStage) {
+ 1 -> {
+ player.faceLocation(endLoc)
+ visualize(player, animation, Graphics(760, 100))
+ }
+
+ 8 -> {
+ wallGrappleInterface.fadeToBlack(player)
+ }
+
+ 13 -> teleport(player, endLoc!!)
+ 14 -> {
+ wallGrappleInterface.showGame(player)
+ unlock(player)
+ updateDiary(player)
+ return true
+ }
+ }
+ return false
+ }
+
+
+ override fun defineListeners() {
+ // Do not use flagListeners here
+ // The player needs to be able to touch the target
+ on(Scenery.WALL_17047, IntType.SCENERY, "grapple") { player, _ ->
+ setStartEndSide(player, 0)
+ if(!canGrapple(player, startLoc!!, 4)){
+ return@on true
+ }
+ grapple(player, message)
+ return@on true
+ }
+
+ on(Scenery.WALL_17048, IntType.SCENERY, "jump") { player, _ ->
+ setStartEndSide(player, 0)
+ wallGrappleInterface.jump(player, startLoc!!)
+ return@on true
+ }
+ }
+
+ override fun isPlayerInRangeToGrapple(player: Player, startLoc: Location, range: Int): Boolean {
+ // Do not let the player grapple from the other side of the wall
+ return inBorders(
+ player, startLoc.x - range, startLoc.y,
+ startLoc.x + range, startLoc.y - 2)
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/BuildHotspot.java b/Server/src/main/content/global/skill/construction/BuildHotspot.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/construction/BuildHotspot.java
rename to Server/src/main/content/global/skill/construction/BuildHotspot.java
index 828bd5f6f..c5ca6c8e7 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/BuildHotspot.java
+++ b/Server/src/main/content/global/skill/construction/BuildHotspot.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.world.update.flag.context.Animation;
@@ -28,12 +28,12 @@ public enum BuildHotspot {
* Low level Parlor hotspots.
*/
CHAIRS_1(15410, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRUDE_CHAIR,Decoration.WOODEN_CHAIR, Decoration.ROCKING_CHAIR, Decoration.OAK_CHAIR, Decoration.OAK_ARMCHAIR, Decoration.TEAK_ARMCHAIR, Decoration.MAHOGANY_ARMCHAIR),
- CHAIRS_2(15411, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRUDE_CHAIR, Decoration.WOODEN_CHAIR,Decoration.ROCKING_CHAIR, Decoration.OAK_CHAIR, Decoration.OAK_ARMCHAIR, Decoration.TEAK_ARMCHAIR, Decoration.MAHOGANY_ARMCHAIR),
+ CHAIRS_2(15411, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRUDE_CHAIR, Decoration.WOODEN_CHAIR,Decoration.ROCKING_CHAIR, Decoration.OAK_CHAIR, Decoration.OAK_ARMCHAIR, Decoration.TEAK_ARMCHAIR, Decoration.MAHOGANY_ARMCHAIR),
CHAIRS_3(15412, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRUDE_CHAIR, Decoration.WOODEN_CHAIR,Decoration.ROCKING_CHAIR, Decoration.OAK_CHAIR, Decoration.OAK_ARMCHAIR, Decoration.TEAK_ARMCHAIR, Decoration.MAHOGANY_ARMCHAIR),
- FIREPLACE(15418, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CLAY_FIREPLACE, Decoration.STONE_FIREPLACE,Decoration.MARBLE_FIREPLACE),
- FIREPLACE2(15267, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CLAY_FIREPLACE, Decoration.STONE_FIREPLACE,Decoration.MARBLE_FIREPLACE),
- CURTAINS(15419, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.TORN_CURTAINS, Decoration.CURTAINS, Decoration.OPULENT_CURTAINS),
- BOOKCASE(15416, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_BOOKCASE, Decoration.OAK_BOOKCASE, Decoration.MAHOGANY_BOOKCASE),
+ FIREPLACE(15418, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CLAY_FIREPLACE, Decoration.STONE_FIREPLACE,Decoration.MARBLE_FIREPLACE),
+ FIREPLACE2(15267, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CLAY_FIREPLACE, Decoration.STONE_FIREPLACE,Decoration.MARBLE_FIREPLACE),
+ CURTAINS(15419, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.TORN_CURTAINS, Decoration.CURTAINS, Decoration.OPULENT_CURTAINS),
+ BOOKCASE(15416, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_BOOKCASE, Decoration.OAK_BOOKCASE, Decoration.MAHOGANY_BOOKCASE),
RUG(15415, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_CORNER, Decoration.RED_RUG_CORNER, Decoration.OPULENT_RUG_CORNER),
RUG2(15414, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_END, Decoration.RED_RUG_END, Decoration.OPULENT_RUG_END),
RUG3(15413, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_CENTER, Decoration.RED_RUG_CENTER, Decoration.OPULENT_RUG_CENTER),
@@ -41,37 +41,37 @@ public enum BuildHotspot {
/**
* Low level Kitchen hotspots.
*/
- LARDER(15403, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_LARDER, Decoration.OAK_LARDER,Decoration.TEAK_LARDER),
- SINK(15404, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.PUMP_AND_DRAIN, Decoration.PUMP_AND_TUB, Decoration.SINK),
- KITCHEN_TABLE(15405, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.KITCHEN_WOODEN_TABLE,Decoration.KITCHEN_OAK_TABLE, Decoration.KITCHEN_TEAK_TABLE),
- CAT_BLANKET(15402, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CAT_BLANKET, Decoration.CAT_BASKET,Decoration.CAST_BASKET_CUSHIONED),
- STOVE(15398, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.BASIC_FIREPIT, Decoration.FIREPIT_WITH_HOOK, Decoration.FIREPIT_WITH_POT, Decoration.SMALL_OVEN, Decoration.LARGE_OVEN, Decoration.BASIC_RANGE, Decoration.FANCY_RANGE),
- SHELVES(15400, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_SHELVES_1,Decoration.WOODEN_SHELVES_2, Decoration.WOODEN_SHELVES_3,Decoration.OAK_SHELVES_1, Decoration.OAK_SHELVES_2, Decoration.TEAK_SHELVES_1, Decoration.TEAK_SHELVES_2),
- SHELVES_2(15399, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_SHELVES_1,Decoration.WOODEN_SHELVES_2, Decoration.WOODEN_SHELVES_3,Decoration.OAK_SHELVES_1, Decoration.OAK_SHELVES_2,Decoration.TEAK_SHELVES_1, Decoration.TEAK_SHELVES_2),
+ LARDER(15403, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_LARDER, Decoration.OAK_LARDER,Decoration.TEAK_LARDER),
+ SINK(15404, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.PUMP_AND_DRAIN, Decoration.PUMP_AND_TUB, Decoration.SINK),
+ KITCHEN_TABLE(15405, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.KITCHEN_WOODEN_TABLE,Decoration.KITCHEN_OAK_TABLE, Decoration.KITCHEN_TEAK_TABLE),
+ CAT_BLANKET(15402, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CAT_BLANKET, Decoration.CAT_BASKET,Decoration.CAST_BASKET_CUSHIONED),
+ STOVE(15398, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.BASIC_FIREPIT, Decoration.FIREPIT_WITH_HOOK, Decoration.FIREPIT_WITH_POT, Decoration.SMALL_OVEN, Decoration.LARGE_OVEN, Decoration.BASIC_RANGE, Decoration.FANCY_RANGE),
+ SHELVES(15400, BuildHotspotType.LINKED, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_SHELVES_1,Decoration.WOODEN_SHELVES_2, Decoration.WOODEN_SHELVES_3,Decoration.OAK_SHELVES_1, Decoration.OAK_SHELVES_2, Decoration.TEAK_SHELVES_1, Decoration.TEAK_SHELVES_2),
+ SHELVES_2(15399, BuildHotspotType.LINKED, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_SHELVES_1,Decoration.WOODEN_SHELVES_2, Decoration.WOODEN_SHELVES_3,Decoration.OAK_SHELVES_1, Decoration.OAK_SHELVES_2,Decoration.TEAK_SHELVES_1, Decoration.TEAK_SHELVES_2),
BARRELS(15401, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.BASIC_BEER_BARREL, Decoration.CIDER_BARREL,Decoration.ASGARNIAN_ALE_BARREL, Decoration.GREENMANS_ALE_BARREL,Decoration.DRAGON_BITTER_BARREL, Decoration.CHEFS_DELIGHT_BARREL),
/**
* Low-level Dining hotspots.
*/
- FIREPLACE_DINING(15301, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CLAY_FIREPLACE, Decoration.STONE_FIREPLACE, Decoration.MARBLE_FIREPLACE),
- DINING_TABLE(15298, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.DINING_TABLE_WOOD, Decoration.DINING_TABLE_OAK, Decoration.DINING_TABLE_CARVED_OAK, Decoration.DINING_TABLE_TEAK,Decoration.DINING_TABLE_CARVED_TEAK, Decoration.DINING_TABLE_MAHOGANY,Decoration.DINING_TABLE_OPULENT),
- DINING_CURTAINS(15302, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.TORN_CURTAINS, Decoration.CURTAINS, Decoration.OPULENT_CURTAINS),
- DINING_BENCH_1(15300, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.BENCH_WOODEN, Decoration.BENCH_OAK, Decoration.BENCH_CARVED_OAK, Decoration.BENCH_TEAK, Decoration.BENCH_CARVED_TEAK, Decoration.BENCH_MAHOGANY, Decoration.BENCH_GILDED),
- DINING_BENCH_2(15299, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.BENCH_WOODEN, Decoration.BENCH_OAK, Decoration.BENCH_CARVED_OAK, Decoration.BENCH_TEAK, Decoration.BENCH_CARVED_TEAK, Decoration.BENCH_MAHOGANY,Decoration.BENCH_GILDED),
+ FIREPLACE_DINING(15301, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CLAY_FIREPLACE, Decoration.STONE_FIREPLACE, Decoration.MARBLE_FIREPLACE),
+ DINING_TABLE(15298, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.DINING_TABLE_WOOD, Decoration.DINING_TABLE_OAK, Decoration.DINING_TABLE_CARVED_OAK, Decoration.DINING_TABLE_TEAK,Decoration.DINING_TABLE_CARVED_TEAK, Decoration.DINING_TABLE_MAHOGANY,Decoration.DINING_TABLE_OPULENT),
+ DINING_CURTAINS(15302, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.TORN_CURTAINS, Decoration.CURTAINS, Decoration.OPULENT_CURTAINS),
+ DINING_BENCH_1(15300, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.BENCH_WOODEN, Decoration.BENCH_OAK, Decoration.BENCH_CARVED_OAK, Decoration.BENCH_TEAK, Decoration.BENCH_CARVED_TEAK, Decoration.BENCH_MAHOGANY, Decoration.BENCH_GILDED),
+ DINING_BENCH_2(15299, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.BENCH_WOODEN, Decoration.BENCH_OAK, Decoration.BENCH_CARVED_OAK, Decoration.BENCH_TEAK, Decoration.BENCH_CARVED_TEAK, Decoration.BENCH_MAHOGANY,Decoration.BENCH_GILDED),
ROPE_BELL_PULL(15304, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.ROPE_PULL, Decoration.BELL_PULL, Decoration.FANCY_BELL_PULL),
- WALL_DECORATION(15303, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.OAK_DECORATION, Decoration.TEAK_DECORATION, Decoration.GILDED_DECORATION),
+ WALL_DECORATION(15303, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.OAK_DECORATION, Decoration.TEAK_DECORATION, Decoration.GILDED_DECORATION),
/**
* Low-level Work shop hotspots.
*/
- REPAIR(15448, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.REPAIR_BENCH, Decoration.WHETSTONE, Decoration.ARMOUR_STAND),
- WORKBENCH(15439, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.WORKBENCH_WOODEN, Decoration.WORKBENCH_OAK,Decoration.WORKBENCH_STEEL_FRAME, Decoration.WORKBENCH_WITH_VICE,Decoration.WORKBENCH_WITH_LATHE),
- CRAFTING(15441, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRAFTING_TABLE_1, Decoration.CRAFTING_TABLE_2,Decoration.CRAFTING_TABLE_3, Decoration.CRAFTING_TABLE_4),
- TOOL1(15443, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2, Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4, Decoration.TOOL_STORE_5),
- TOOL2(15444, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
- TOOL3(15445, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
- TOOL4(15446, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
- TOOL5(15447, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
+ REPAIR(15448, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.REPAIR_BENCH, Decoration.WHETSTONE, Decoration.ARMOUR_STAND),
+ WORKBENCH(15439, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.WORKBENCH_WOODEN, Decoration.WORKBENCH_OAK,Decoration.WORKBENCH_STEEL_FRAME, Decoration.WORKBENCH_WITH_VICE,Decoration.WORKBENCH_WITH_LATHE),
+ CRAFTING(15441, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRAFTING_TABLE_1, Decoration.CRAFTING_TABLE_2,Decoration.CRAFTING_TABLE_3, Decoration.CRAFTING_TABLE_4),
+ TOOL1(15443, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2, Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4, Decoration.TOOL_STORE_5),
+ TOOL2(15444, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
+ TOOL3(15445, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
+ TOOL4(15446, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
+ TOOL5(15447, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.TOOL_STORE_1, Decoration.TOOL_STORE_2,Decoration.TOOL_STORE_3, Decoration.TOOL_STORE_4,Decoration.TOOL_STORE_5),
HERALDRY(15450, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.PLUMING_STAND, Decoration.SHIELD_EASEL,Decoration.BANNER_EASEL),
/**
@@ -81,7 +81,7 @@ public enum BuildHotspot {
CLOCK(15268, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.OAK_CLOCK, Decoration.TEAK_CLOCK, Decoration.GILDED_CLOCK),
DRESSER(15262, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.SHAVING_STAND, Decoration.OAK_SHAVING_STAND, Decoration.OAK_DRESSER, Decoration.TEAK_DRESSER, Decoration.FANCY_TEAK_DRESSER, Decoration.MAHOGANY_DRESSER, Decoration.GILDED_DRESSER),
DRAWERS(15261, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.SHOE_BOX, Decoration.OAK_DRAWERS, Decoration.OAK_WARDROBE, Decoration.TEAK_DRAWERS, Decoration.TEAK_WARDROBE, Decoration.MAHOGANY_WARDROBE, Decoration.GILDED_WARDROBE),
- BEDROOM_CURTAINS(15263, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.TORN_CURTAINS, Decoration.CURTAINS, Decoration.OPULENT_CURTAINS),
+ BEDROOM_CURTAINS(15263, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.TORN_CURTAINS, Decoration.CURTAINS, Decoration.OPULENT_CURTAINS),
BEDROOM_RUG(15264, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_CENTER, Decoration.RED_RUG_CENTER, Decoration.OPULENT_RUG_CENTER),
BEDROOM_RUG2(15265, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_END, Decoration.RED_RUG_END, Decoration.OPULENT_RUG_END),
BEDROOM_RUG3(15266, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_CORNER, Decoration.RED_RUG_CORNER, Decoration.OPULENT_RUG_CORNER),
@@ -111,19 +111,19 @@ public enum BuildHotspot {
* Portal room hotspots.
*/
TELEPORT_FOCUS(15409, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.TELEPORT_FOCUS, Decoration.GREATER_TELEPORT_FOCUS, Decoration.SCRYING_POOL),
- PORTAL1(15406, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.TEAK_PORTAL, Decoration.MAHOGANY_PORTAL, Decoration.MARBLE_PORTAL,
- Decoration.TEAK_VARROCK_PORTAL,
- Decoration.MAHOGANY_VARROCK_PORTAL,
- Decoration.MARBLE_VARROCK_PORTAL,
+ PORTAL1(15406, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.TEAK_PORTAL, Decoration.MAHOGANY_PORTAL, Decoration.MARBLE_PORTAL,
+ Decoration.TEAK_VARROCK_PORTAL,
+ Decoration.MAHOGANY_VARROCK_PORTAL,
+ Decoration.MARBLE_VARROCK_PORTAL,
Decoration.TEAK_LUMBRIDGE_PORTAL,
Decoration.MAHOGANY_LUMBRIDGE_PORTAL,
- Decoration.MARBLE_LUMBRIDGE_PORTAL,
+ Decoration.MARBLE_LUMBRIDGE_PORTAL,
Decoration.TEAK_FALADOR_PORTAL,
Decoration.MAHOGANY_FALADOR_PORTAL,
- Decoration.MARBLE_FALADOR_PORTAL,
+ Decoration.MARBLE_FALADOR_PORTAL,
Decoration.TEAK_CAMELOT_PORTAL,
Decoration.MAHOGANY_CAMELOT_PORTAL,
- Decoration.MARBLE_CAMELOT_PORTAL,
+ Decoration.MARBLE_CAMELOT_PORTAL,
Decoration.TEAK_ARDOUGNE_PORTAL,
Decoration.MAHOGANY_ARDOUGNE_PORTAL,
Decoration.MARBLE_ARDOUGNE_PORTAL,
@@ -134,18 +134,18 @@ public enum BuildHotspot {
Decoration.MAHOGANY_KHARYRLL_PORTAL,
Decoration.MARBLE_KHARYRLL_PORTAL),
PORTAL2(15407, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.TEAK_PORTAL, Decoration.MAHOGANY_PORTAL, Decoration.MARBLE_PORTAL,
- Decoration.TEAK_VARROCK_PORTAL,
- Decoration.MAHOGANY_VARROCK_PORTAL,
- Decoration.MARBLE_VARROCK_PORTAL,
+ Decoration.TEAK_VARROCK_PORTAL,
+ Decoration.MAHOGANY_VARROCK_PORTAL,
+ Decoration.MARBLE_VARROCK_PORTAL,
Decoration.TEAK_LUMBRIDGE_PORTAL,
Decoration.MAHOGANY_LUMBRIDGE_PORTAL,
- Decoration.MARBLE_LUMBRIDGE_PORTAL,
+ Decoration.MARBLE_LUMBRIDGE_PORTAL,
Decoration.TEAK_FALADOR_PORTAL,
Decoration.MAHOGANY_FALADOR_PORTAL,
- Decoration.MARBLE_FALADOR_PORTAL,
+ Decoration.MARBLE_FALADOR_PORTAL,
Decoration.TEAK_CAMELOT_PORTAL,
Decoration.MAHOGANY_CAMELOT_PORTAL,
- Decoration.MARBLE_CAMELOT_PORTAL,
+ Decoration.MARBLE_CAMELOT_PORTAL,
Decoration.TEAK_ARDOUGNE_PORTAL,
Decoration.MAHOGANY_ARDOUGNE_PORTAL,
Decoration.MARBLE_ARDOUGNE_PORTAL,
@@ -156,18 +156,18 @@ public enum BuildHotspot {
Decoration.MAHOGANY_KHARYRLL_PORTAL,
Decoration.MARBLE_KHARYRLL_PORTAL),
PORTAL3(15408, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.TEAK_PORTAL, Decoration.MAHOGANY_PORTAL, Decoration.MARBLE_PORTAL,
- Decoration.TEAK_VARROCK_PORTAL,
- Decoration.MAHOGANY_VARROCK_PORTAL,
- Decoration.MARBLE_VARROCK_PORTAL,
+ Decoration.TEAK_VARROCK_PORTAL,
+ Decoration.MAHOGANY_VARROCK_PORTAL,
+ Decoration.MARBLE_VARROCK_PORTAL,
Decoration.TEAK_LUMBRIDGE_PORTAL,
Decoration.MAHOGANY_LUMBRIDGE_PORTAL,
- Decoration.MARBLE_LUMBRIDGE_PORTAL,
+ Decoration.MARBLE_LUMBRIDGE_PORTAL,
Decoration.TEAK_FALADOR_PORTAL,
Decoration.MAHOGANY_FALADOR_PORTAL,
- Decoration.MARBLE_FALADOR_PORTAL,
+ Decoration.MARBLE_FALADOR_PORTAL,
Decoration.TEAK_CAMELOT_PORTAL,
Decoration.MAHOGANY_CAMELOT_PORTAL,
- Decoration.MARBLE_CAMELOT_PORTAL,
+ Decoration.MARBLE_CAMELOT_PORTAL,
Decoration.TEAK_ARDOUGNE_PORTAL,
Decoration.MAHOGANY_ARDOUGNE_PORTAL,
Decoration.MARBLE_ARDOUGNE_PORTAL,
@@ -186,23 +186,13 @@ public enum BuildHotspot {
LANDSCAPE(15393, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.LUMBRIDGE, Decoration.THE_DESERT, Decoration.MORYTANIA, Decoration.KARAMJA, Decoration.ISAFDAR),
SWORD(15395, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.SILVERLIGHT, Decoration.EXCALIBUR, Decoration.DARKLIGHT),
MAP(15396, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.SMALL_MAP, Decoration.MEDIUM_MAP, Decoration.LARGE_MAP),
- BOOKCASE2(15397, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_BOOKCASE, Decoration.OAK_BOOKCASE, Decoration.MAHOGANY_BOOKCASE),
+ BOOKCASE2(15397, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_BOOKCASE, Decoration.OAK_BOOKCASE, Decoration.MAHOGANY_BOOKCASE),
- /**
- * Manegerie Hotspots
- */
- OBELISK(44911, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.MINI_OBELISK),
- PET_FEEDER(44910, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_PET_FEEDER, Decoration.TEAK_PET_FEEDER, Decoration.MAHOGANY_PET_FEEDER),
- PET_HOUSE(44909, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_PET_HOUSE, Decoration.TEAK_PET_HOUSE, Decoration.MAHOGANY_PET_HOUSE, Decoration.CONSECRATED_PET_HOUSE, Decoration.DESECRATED_PET_HOUSE, Decoration.NATURAL_PET_HOUSE),
- HABITAT_1(44907, BuildHotspotType.LINKED, BuildingUtils.BUILD_MID_ANIM, Decoration.GARDEN_HABITAT, Decoration.JUNGLE_HABITAT, Decoration.DESERT_HABITAT, Decoration.POLAR_HABITAT, Decoration.VOLCANIC_HABITAT),
- HABITAT_2(44908, BuildHotspotType.LINKED, BuildingUtils.BUILD_MID_ANIM, Decoration.GARDEN_HABITAT, Decoration.JUNGLE_HABITAT, Decoration.DESERT_HABITAT, Decoration.POLAR_HABITAT, Decoration.VOLCANIC_HABITAT),
-
-
/**
* Combat room hotspots.
*/
- WALL_DECORATION2(15297, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.OAK_DECORATION, Decoration.TEAK_DECORATION, Decoration.GILDED_DECORATION),
- STORAGE_SPACE(15296, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.GLOVE_RACK, Decoration.WEAPONS_RACK, Decoration.EXTRA_WEAPONS_RACK),
+ WALL_DECORATION2(15297, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.OAK_DECORATION, Decoration.TEAK_DECORATION, Decoration.GILDED_DECORATION),
+ STORAGE_SPACE(15296, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.GLOVE_RACK, Decoration.WEAPONS_RACK, Decoration.EXTRA_WEAPONS_RACK),
CR_RING(15277, BuildHotspotType.LINKED, BuildingUtils.BUILD_MID_ANIM, Decoration.BOXING_RING, Decoration.FENCING_RING, Decoration.COMBAT_RING, Decoration.NOTHING, Decoration.NOTHING2),
CR_CORNER(15278, BuildHotspotType.LINKED, BuildingUtils.BUILD_MID_ANIM, Decoration.BOXING_RING, Decoration.FENCING_RING, Decoration.COMBAT_RING, Decoration.NOTHING, Decoration.NOTHING2),
CR_CORNER2(15279, BuildHotspotType.LINKED, BuildingUtils.BUILD_MID_ANIM, Decoration.BOXING_RING, Decoration.FENCING_RING, Decoration.COMBAT_RING, Decoration.NOTHING, Decoration.NOTHING2),
@@ -234,11 +224,11 @@ public enum BuildHotspot {
/**
* Study hotspots.
*/
- GLOBE(15421, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.GLOBE, Decoration.ORNAMENTAL_GLOBE, Decoration.LUNAR_GLOBE, Decoration.CELESTIAL_GLOBE, Decoration.ARMILLARY_SPHERE, Decoration.SMALL_ORREY, Decoration.LARGE_ORREY),
- LECTERN(15420, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_LECTERN, Decoration.EAGLE_LECTERN, Decoration.DEMON_LECTERN, Decoration.TEAK_EAGLE_LECTERN, Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN),
- CRYSTAL_BALL(15422, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRYSTAL_BALL, Decoration.ELEMENTAL_SPHERE, Decoration.CRYSTAL_OF_POWER),
- BOOKCASE3(15425, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_BOOKCASE, Decoration.OAK_BOOKCASE, Decoration.MAHOGANY_BOOKCASE),
- WALL_CHART(15423, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.ALCHEMICAL_CHART, Decoration.ASTRONOMICAL_CHART, Decoration.INFERNAL_CHART),
+ GLOBE(15421, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.GLOBE, Decoration.ORNAMENTAL_GLOBE, Decoration.LUNAR_GLOBE, Decoration.CELESTIAL_GLOBE, Decoration.ARMILLARY_SPHERE, Decoration.SMALL_ORREY, Decoration.LARGE_ORREY),
+ LECTERN(15420, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_LECTERN, Decoration.EAGLE_LECTERN, Decoration.DEMON_LECTERN, Decoration.TEAK_EAGLE_LECTERN, Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN),
+ CRYSTAL_BALL(15422, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.CRYSTAL_BALL, Decoration.ELEMENTAL_SPHERE, Decoration.CRYSTAL_OF_POWER),
+ BOOKCASE3(15425, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WOODEN_BOOKCASE, Decoration.OAK_BOOKCASE, Decoration.MAHOGANY_BOOKCASE),
+ WALL_CHART(15423, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.ALCHEMICAL_CHART, Decoration.ASTRONOMICAL_CHART, Decoration.INFERNAL_CHART),
TELESCOPE(15424, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.TELESCOPE1, Decoration.TELESCOPE2, Decoration.TELESCOPE3),
/**
@@ -254,12 +244,12 @@ public enum BuildHotspot {
/**
* Chapel hotspots.
*/
- ALTAR(15270, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_ALTAR, Decoration.TEAK_ALTAR, Decoration.CLOTH_ALTAR, Decoration.MAHOGANY_ALTAR, Decoration.LIMESTONE_ALTAR, Decoration.MARBLE_ALTAR, Decoration.GILDED_ALTAR),
- STATUE(15275, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.SMALL_STATUE, Decoration.MEDIUM_STATUE, Decoration.LARGE_STATUE),
- MUSICAL(15276, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WINDCHIMES, Decoration.BELLS, Decoration.ORGAN),
- ICON(15269, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.SARADOMIN_SYMBOL, Decoration.ZAMORAK_SYMBOL, Decoration.GUTHIX_SYMBOL, Decoration.SARADOMIN_ICON, Decoration.ZAMORAK_ICON, Decoration.GUTHIX_ICON, Decoration.ICON_OF_BOB),
- BURNERS(15271, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.STEEL_TORCHES, Decoration.WOODEN_TORCHES, Decoration.STEEL_CANDLESTICKS, Decoration.GOLD_CANDLESTICKS, Decoration.INCENSE_BURNERS, Decoration.MAHOGANY_BURNERS, Decoration.MARBLE_BURNERS),
- CHAPEL_WINDOW(new int[] { 13730, 13728, 13732, 13729, 13733, 13731}, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.SHUTTERED_WINDOW, Decoration.DECORATIVE_WINDOW, Decoration.STAINED_GLASS),
+ ALTAR(15270, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_ALTAR, Decoration.TEAK_ALTAR, Decoration.CLOTH_ALTAR, Decoration.MAHOGANY_ALTAR, Decoration.LIMESTONE_ALTAR, Decoration.MARBLE_ALTAR, Decoration.GILDED_ALTAR),
+ STATUE(15275, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.SMALL_STATUE, Decoration.MEDIUM_STATUE, Decoration.LARGE_STATUE),
+ MUSICAL(15276, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_HIGH_ANIM, Decoration.WINDCHIMES, Decoration.BELLS, Decoration.ORGAN),
+ ICON(15269, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.SARADOMIN_SYMBOL, Decoration.ZAMORAK_SYMBOL, Decoration.GUTHIX_SYMBOL, Decoration.SARADOMIN_ICON, Decoration.ZAMORAK_ICON, Decoration.GUTHIX_ICON, Decoration.ICON_OF_BOB),
+ BURNERS(15271, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.STEEL_TORCHES, Decoration.WOODEN_TORCHES, Decoration.STEEL_CANDLESTICKS, Decoration.GOLD_CANDLESTICKS, Decoration.INCENSE_BURNERS, Decoration.MAHOGANY_BURNERS, Decoration.MARBLE_BURNERS),
+ CHAPEL_WINDOW(new int[] { 13730, 13728, 13732, 13729, 13733, 13731}, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_HIGH_ANIM, Decoration.SHUTTERED_WINDOW, Decoration.DECORATIVE_WINDOW, Decoration.STAINED_GLASS),
CHAPEL_RUG(15273, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_END, Decoration.RED_RUG_END, Decoration.OPULENT_RUG_END),
CHAPEL_RUG2(15274, BuildHotspotType.LINKED, BuildingUtils.BUILD_LOW_ANIM, Decoration.BROWN_RUG_CORNER, Decoration.RED_RUG_CORNER, Decoration.OPULENT_RUG_CORNER),
@@ -279,7 +269,7 @@ public enum BuildHotspot {
/**
* Throne room hotspots.
*/
- THRONE(15426, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_THRONE, Decoration.TEAK_THRONE, Decoration.MAHOGANY_THRONE, Decoration.GILDED_THRONE, Decoration.SKELETON_THRONE, Decoration.CRYSTAL_THRONE, Decoration.DEMONIC_THRONE),
+ THRONE(15426, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_THRONE, Decoration.TEAK_THRONE, Decoration.MAHOGANY_THRONE, Decoration.GILDED_THRONE, Decoration.SKELETON_THRONE, Decoration.CRYSTAL_THRONE, Decoration.DEMONIC_THRONE),
LEVER(15435, BuildHotspotType.INDIVIDUAL, BuildingUtils.BUILD_MID_ANIM, Decoration.OAK_LEVER, Decoration.TEAK_LEVER, Decoration.MAHOGANY_LEVER),
FLOOR(new int[] { 15427, 15428, 15429, 15430, 15431, 15432 }, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_LOW_ANIM, Decoration.FLOOR_DECORATION, Decoration.STEEL_CAGE, Decoration.FLOOR_TRAP, Decoration.MAGIC_CIRCLE, Decoration.MAGIC_CAGE),
SEATING1(15436, BuildHotspotType.RECURSIVE, BuildingUtils.BUILD_MID_ANIM, Decoration.CARVED_TEAK_BENCH, Decoration.MAHOGANY_BENCH, Decoration.GILDED_BENCH),
@@ -384,8 +374,8 @@ public enum BuildHotspot {
linkedHotspots.add(new BuildHotspot[] { RUG, RUG2, RUG3 });
linkedHotspots.add(new BuildHotspot[] { BEDROOM_RUG, BEDROOM_RUG2, BEDROOM_RUG3 });
linkedHotspots.add(new BuildHotspot[] { HALL_RUG, HALL_RUG2, HALL_RUG3 });
- linkedHotspots.add(new BuildHotspot[] { CR_CORNER, CR_CORNER2, CR_CORNER3, CR_CORNER4, CR_RING,
- CR_RING2, CR_RING3, CR_RING4, CR_FLOOR, CR_FLOOR2, CR_FLOOR3, CR_FLOOR4, CR_FLOOR5,
+ linkedHotspots.add(new BuildHotspot[] { CR_CORNER, CR_CORNER2, CR_CORNER3, CR_CORNER4, CR_RING,
+ CR_RING2, CR_RING3, CR_RING4, CR_FLOOR, CR_FLOOR2, CR_FLOOR3, CR_FLOOR4, CR_FLOOR5,
CR_FLOOR6, CR_FLOOR7, CR_FLOOR8, CR_INVISIBLE_WALL, CR_INVISIBLE_WALL2, CR_INVISIBLE_WALL3});
linkedHotspots.add(new BuildHotspot[] { Q_HALL_RUG, Q_HALL_RUG2, Q_HALL_RUG3 });
linkedHotspots.add(new BuildHotspot[] { CHAPEL_RUG, CHAPEL_RUG2 });
@@ -394,8 +384,8 @@ public enum BuildHotspot {
linkedHotspots.add(new BuildHotspot[] { PRISON, PRISON_DOOR });
linkedHotspots.add(new BuildHotspot[] { DUNGEON_DOOR_LEFT, DUNGEON_DOOR_RIGHT });
linkedHotspots.add(new BuildHotspot[] { DUNGEON_DOOR_LEFT2, DUNGEON_DOOR_RIGHT2 });
- linkedHotspots.add(new BuildHotspot[] { HABITAT_1, HABITAT_2 });
linkedHotspots.add(new BuildHotspot[] { SMALL_PLANT_1, SMALL_PLANT1 });
+ linkedHotspots.add(new BuildHotspot[] { SHELVES, SHELVES_2 });
}
/**
@@ -523,4 +513,4 @@ public enum BuildHotspot {
return buildingAnimation;
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/BuildHotspotType.java b/Server/src/main/content/global/skill/construction/BuildHotspotType.java
similarity index 76%
rename from Server/src/main/java/core/game/node/entity/skill/construction/BuildHotspotType.java
rename to Server/src/main/content/global/skill/construction/BuildHotspotType.java
index d2dbe1b4d..b477e826e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/BuildHotspotType.java
+++ b/Server/src/main/content/global/skill/construction/BuildHotspotType.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
/**
* BuiltHotspotType
@@ -10,7 +10,7 @@ public enum BuildHotspotType {
INDIVIDUAL,
RECURSIVE,
LINKED,
- CREST,
+ CREST,
STAIRCASE;
BuildHotspotType() {
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/BuildOptionPlugin.java b/Server/src/main/content/global/skill/construction/BuildOptionPlugin.java
similarity index 87%
rename from Server/src/main/java/core/game/node/entity/skill/construction/BuildOptionPlugin.java
rename to Server/src/main/content/global/skill/construction/BuildOptionPlugin.java
index 370a5db96..69b0b1483 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/BuildOptionPlugin.java
+++ b/Server/src/main/content/global/skill/construction/BuildOptionPlugin.java
@@ -1,19 +1,21 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.cache.def.impl.SceneryDefinition;
import core.game.component.Component;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.game.node.scenery.Scenery;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.node.entity.skill.construction.Hotspot;
-import rs09.game.system.SystemLogger;
-import rs09.plugin.ClassScanner;
+import core.tools.Log;
+import core.tools.SystemLogger;
+import core.plugin.ClassScanner;
+
+import static core.api.ContentAPIKt.log;
/**
* The build option handling plugin.
@@ -64,8 +66,8 @@ public final class BuildOptionPlugin extends OptionHandler {
}
Hotspot hotspot = player.getHouseManager().getHotspot(object);
if (hotspot == null || !isBuildable(player, object, hotspot)) {
- System.out.println(hotspot == null);
- SystemLogger.logErr("Construction (building): " + hotspot + " : " + object + " chunkX = " + object.getLocation().getChunkX() + ", chunkY = " + object.getLocation().getChunkY());
+ //log demoted from ERR to WARN June 16, 2023 -> It's the effect of an already-known issue. Reduced visibility to clean up server logs while still making the issue apparent in dev environs
+ log(this.getClass(), Log.WARN, "Construction (building): " + hotspot + " : " + object + " chunkX = " + object.getLocation().getChunkX() + ", chunkY = " + object.getLocation().getChunkY());
return true;
}
@@ -179,4 +181,4 @@ public final class BuildOptionPlugin extends OptionHandler {
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/BuildRoomDialogue.java b/Server/src/main/content/global/skill/construction/BuildRoomDialogue.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/construction/BuildRoomDialogue.java
rename to Server/src/main/content/global/skill/construction/BuildRoomDialogue.java
index 2b34c49eb..b74e99cb3 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/BuildRoomDialogue.java
+++ b/Server/src/main/content/global/skill/construction/BuildRoomDialogue.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.entity.player.Player;
@@ -9,9 +9,10 @@ import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.game.world.map.RegionChunk;
import core.plugin.Initializable;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.node.entity.skill.Skills;
+import org.rs09.consts.Items;
import java.awt.*;
import java.util.ArrayList;
@@ -193,7 +194,7 @@ public final class BuildRoomDialogue extends DialoguePlugin {
options("Rotate clockwise", "Rotate anticlockwise", "Build", "Cancel");
return true;
case 3:
- if (player.getInventory().remove(new Item(995, room.getProperties().getCost()))) {
+ if (player.getInventory().remove(new Item(Items.COINS_995, room.getProperties().getCost()))) {
room.setRotation(directions[index]);
boolean[] exit = new boolean[exits.length];
for (int i = 0; i < exit.length; i++) {
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/BuildingUtils.java b/Server/src/main/content/global/skill/construction/BuildingUtils.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/construction/BuildingUtils.java
rename to Server/src/main/content/global/skill/construction/BuildingUtils.java
index 672896d53..02bfbd9c2 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/BuildingUtils.java
+++ b/Server/src/main/content/global/skill/construction/BuildingUtils.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
@@ -16,13 +16,16 @@ import core.game.world.update.flag.context.Animation;
import core.net.packet.PacketRepository;
import core.net.packet.context.ContainerContext;
import core.net.packet.out.ContainerPacket;
+import core.tools.Log;
import org.jetbrains.annotations.NotNull;
-import rs09.game.node.entity.skill.construction.Hotspot;
-import rs09.game.system.SystemLogger;
+import core.tools.SystemLogger;
+import org.rs09.consts.Items;
import java.util.ArrayList;
import java.util.Arrays;
+import static core.api.ContentAPIKt.*;
+
/**
* Utility class for building.
* @author Emperor
@@ -65,7 +68,7 @@ public final class BuildingUtils {
/**
* The plank item.
*/
- public static final Item PLANK = new Item(960);
+ public static final Item PLANK = new Item(Items.PLANK_960);
/**
* The watering can(8) item id.
@@ -132,12 +135,12 @@ public final class BuildingUtils {
if (hasRequirements) {
c261Value += (1 << (menuIndex + 1));
}
- player.getConfigManager().set(1485 + menuIndex, hasRequirements || player.isStaff() ? 1 : 0);
+ setVarp(player, 1485 + menuIndex, hasRequirements || player.isStaff() ? 1 : 0);
player.getPacketDispatch().sendString("Level " + decoration.getLevel(), 396, 140 + menuIndex);
//player.getPacketDispatch().sendItemZoomOnInterface(items[i].protocol(), 50000, 396, 49 + i);
}
- System.out.println(c261Value);
- player.getConfigManager().set(261, c261Value);
+
+ setVarp(player, 261, c261Value);
PacketRepository.send(ContainerPacket.class, new ContainerContext(player, 396, 132, 8, items, false));
}
@@ -202,7 +205,6 @@ public final class BuildingUtils {
for (int i = 7; i >= 0; i--) {
Item can = player.getInventory().getItem(new Item(WATERING_CAN - i, 1));
if (can != null && can.getSlot() > -1) {
- System.out.println("Can index " + (i == 7 ? i + 2 : i + 1) + ".");
player.getInventory().replace(new Item(WATERING_CAN - (i == 7 ? i + 2 : i + 1), 1), can.getSlot());
break;
}
@@ -289,7 +291,7 @@ public final class BuildingUtils {
}
}
} else {
- SystemLogger.logErr("Couldn't find stairs! " + plane);
+ log(BuildingUtils.class, Log.ERR, "Couldn't find stairs! " + plane);
}
}
}
@@ -347,7 +349,7 @@ public final class BuildingUtils {
*/
public static void removeDecoration(Player player, Scenery object) {
if (object.getId() == Decoration.PORTAL.getObjectId() && player.getHouseManager().getPortalAmount() <= 1) {
- player.getPacketDispatch().sendMessage("You need atleast one portal, how else would you leave your house?");
+ sendMessage(player, "You need at least one portal, how else would you leave your house?");
return;
}
Location l = object.getLocation();
@@ -367,6 +369,10 @@ public final class BuildingUtils {
if (objectId == object.getId() && hotspot.getCurrentX() == l.getChunkOffsetX() && hotspot.getCurrentY() == l.getChunkOffsetY()) {
player.animate(REMOVE_ANIMATION);
removeDecoration(player, region, room, hotspot, object, style);
+ Decoration decoration = Decoration.forObjectId(object.getId());
+ for (Item item : decoration.getRefundItems()) {
+ addItemOrDrop(player, item.getId(), item.getAmount());
+ }
break;
}
}
@@ -409,7 +415,7 @@ public final class BuildingUtils {
}
}
} else {
- SystemLogger.logErr("Couldn't find stairs! " + plane);
+ log(BuildingUtils.class, Log.ERR, "Couldn't find stairs! " + plane);
}
}
}
@@ -551,24 +557,17 @@ public final class BuildingUtils {
}
}
//(0=east, 1=south, 2=west, 3=north).
- // System.out.println("Roof information: index=" + index + ", exit count=" + count + "; array=" + Arrays.toString(exits));
+
if (count == 4) {
room = Room.create(player, RoomProperties.ROOF_4_EXIT);
}
else if (count == 3) {
room = Room.create(player, RoomProperties.ROOF_3_EXIT);
- room.setRotation(DIRECTIONS[(index + 2) % 4]);
}
else if ((exits[0] != exits[2]) || (exits[1] != exits[3])) {
room = Room.create(player, RoomProperties.ROOF_3_EXIT);
- if (exits[2]) {
- room.setRotation(DIRECTIONS[exits[3] ? 3 : 1]);
- }
} else {
room = Room.create(player, RoomProperties.ROOF_2_EXIT);
- if (exits[0] || exits[2]) {
- room.setRotation(DIRECTIONS[1]);
- }
}
player.getHouseManager().getRooms()[z + 1][x][y] = room;
}
@@ -632,8 +631,8 @@ public final class BuildingUtils {
Direction[] directions = new Direction[4];
boolean[] exit = Arrays.copyOf(exits, exits.length); //(0=east, 1=south, 2=west, 3=north)
int[] info = getExitRequirements(player, z, roomX, roomY);//(0=west, 1=north, 2=east, 3=south)
- // SystemLogger.logErr("Available exits - [east=" + exit[0] + ", south=" + exit[1] + ", west=" + exit[2] + ", north=" + exit[3] + "]!");
- // SystemLogger.logErr("Required exits - [east=" + info[0] + ", south=" + info[1] + ", west=" + info[2] + ", north=" + info[3] + "]!");
+ // SystemLogger.logErr(BuildingUtils.class, "Available exits - [east=" + exit[0] + ", south=" + exit[1] + ", west=" + exit[2] + ", north=" + exit[3] + "]!");
+ // SystemLogger.logErr(BuildingUtils.class, "Required exits - [east=" + info[0] + ", south=" + info[1] + ", west=" + info[2] + ", north=" + info[3] + "]!");
for (int i = 0; i < 4; i++) {
boolean success = true;
for (int j = 0; j < 4; j++) {
@@ -656,46 +655,25 @@ public final class BuildingUtils {
* Gets the exit requirements for the given room.
* @param roomX The room x-coordinate.
* @param roomY The room y-coordinate.
- * @return The disabled exit indexes.
+ * @return The requirements on the exit indexes. -1 if exit must be absent, +1 if exit must be present.
*/
private static int[] getExitRequirements(Player player, int z, int roomX, int roomY) {
int[] exits = new int[4];
- if (roomX == 0) {
- exits[2] = -1;
- }
- else if (player.getHouseManager().hasExit(z, roomX - 1, roomY, Direction.EAST)) {
+ int deltaX = roomX - player.getLocation().getChunkX();
+ int deltaY = roomY - player.getLocation().getChunkY();
+ if (deltaX > 0) {
+ // player is to our west
exits[2] = 1;
- }
- else if (player.getHouseManager().hasRoomAt(z, roomX - 1, roomY)) {
- exits[2] = -1;
- }
- if (roomY == 7) {
- exits[3] = -1;
- }
- else if (player.getHouseManager().hasExit(z, roomX, roomY + 1, Direction.SOUTH)) {
- exits[3] = 1;
- }
- else if (player.getHouseManager().hasRoomAt(z, roomX, roomY + 1)) {
- exits[3] = -1;
- }
- if (roomX == 7) {
- exits[0] = -1;
- }
- else if (player.getHouseManager().hasExit(z, roomX + 1, roomY, Direction.WEST)) {
+ } else if (deltaX < 0) {
+ // player is to our east
exits[0] = 1;
- }
- else if (player.getHouseManager().hasRoomAt(z, roomX + 1, roomY)) {
- exits[0] = -1;
- }
- if (roomY == 0) {
- exits[1] = -1;
- }
- else if (player.getHouseManager().hasExit(z, roomX, roomY - 1, Direction.NORTH)) {
+ } else if (deltaY > 0) {
+ // player is to our south
exits[1] = 1;
- }
- else if (player.getHouseManager().hasRoomAt(z, roomX, roomY - 1)) {
- exits[1] = -1;
+ } else if (deltaY < 0) {
+ // player is to our north
+ exits[3] = 1;
}
return exits;
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/skill/construction/ConstructionGuideBook.kt b/Server/src/main/content/global/skill/construction/ConstructionGuideBook.kt
new file mode 100644
index 000000000..a6c8beeae
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/ConstructionGuideBook.kt
@@ -0,0 +1,68 @@
+package content.global.skill.construction
+
+import core.api.sendMessage
+import core.game.dialogue.DialogueInterpreter
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.item.Item
+import core.game.world.GameWorld.settings
+import org.rs09.consts.Items
+
+/**
+ * Construction Guide Book
+ * Used to be book:conguide?
+ * @author ovenbreado
+ * @author Emperor
+ */
+
+class ConstructionGuideBook : InteractionListener {
+ companion object {
+ private val TITLE = "Construction guide book"
+ /** The resources used in beta. */
+ private val RESOURCES = arrayOf(
+ Item(Items.SAW_8794),
+ Item(Items.HAMMER_2347),
+ Item(Items.BRONZE_NAILS_4819, 500000),
+ Item(Items.IRON_NAILS_4820, 500000),
+ Item(Items.STEEL_NAILS_1539, 500000),
+ Item(Items.BLACK_NAILS_4821, 500000),
+ Item(Items.MITHRIL_NAILS_4822, 500000),
+ Item(Items.ADAMANTITE_NAILS_4823, 500000),
+ Item(Items.RUNE_NAILS_4824, 500000),
+ Item(Items.PLANK_961, 500000),
+ Item(Items.OAK_PLANK_8779, 500000),
+ Item(Items.TEAK_PLANK_8781, 500000),
+ Item(Items.MAHOGANY_PLANK_8783, 500000),
+ Item(Items.BOLT_OF_CLOTH_8791, 500000),
+ Item(Items.GOLD_LEAF_8785, 500000),
+ Item(Items.MARBLE_BLOCK_8787, 500000),
+ Item(Items.MAGIC_STONE_8789, 500000), // 16
+ Item(Items.BAGGED_DEAD_TREE_8418, 500000),
+ Item(Items.BAGGED_NICE_TREE_8420, 500000),
+ Item(Items.BAGGED_OAK_TREE_8422, 500000),
+ Item(Items.BAGGED_WILLOW_TREE_8424, 500000),
+ Item(Items.BAGGED_MAPLE_TREE_8426, 500000),
+ Item(Items.BAGGED_YEW_TREE_8428, 500000),
+ Item(Items.BAGGED_MAGIC_TREE_8430, 500000),
+ Item(Items.BAGGED_PLANT_1_8432, 500000),
+ Item(Items.BAGGED_PLANT_2_8434, 500000),
+ Item(Items.BAGGED_PLANT_3_8436, 500000)
+ )
+ }
+
+ override fun defineListeners() {
+ // There is supposedly a book here.
+ on(Items.CONSTRUCTION_GUIDE_8463, IntType.ITEM, "read") { player, _ ->
+ if (settings!!.isDevMode && settings!!.isBeta) {
+ for (item in RESOURCES) {
+ if (!player.inventory.contains(item.id, item.amount)) {
+ player.inventory.add(item, player)
+ }
+ }
+ }
+ sendMessage(player, "Upon reading the book you discover you're supposed to use these resources to test out construction. Report all bugs on the forums.")
+ return@on true
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/ConstructionInterface.java b/Server/src/main/content/global/skill/construction/ConstructionInterface.java
similarity index 88%
rename from Server/src/main/java/core/game/node/entity/skill/construction/ConstructionInterface.java
rename to Server/src/main/content/global/skill/construction/ConstructionInterface.java
index 33ee06a11..a36b0329b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/ConstructionInterface.java
+++ b/Server/src/main/content/global/skill/construction/ConstructionInterface.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.cache.def.impl.ItemDefinition;
@@ -10,8 +10,10 @@ import core.game.node.entity.skill.Skills;
import core.game.node.scenery.Scenery;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.node.entity.skill.construction.Hotspot;
-import rs09.game.system.SystemLogger;
+import core.tools.Log;
+import core.tools.SystemLogger;
+
+import static core.api.ContentAPIKt.log;
/**
* Handles the creating of a decoration object.
@@ -39,12 +41,12 @@ public final class ConstructionInterface extends ComponentPlugin {
Hotspot hotspot = player.getAttribute("con:hotspot");
Scenery object = player.getAttribute("con:hsobject");
if (hotspot == null || object == null) {
- SystemLogger.logErr("Failed building decoration " + hotspot + " : " + object);
+ log(this.getClass(), Log.ERR, "Failed building decoration " + hotspot + " : " + object);
break;
}
slot = ((slot % 2 != 0) ? 4 : 0) + (slot >> 1);
if (slot >= hotspot.getHotspot().getDecorations().length) {
- SystemLogger.logErr("Failed building decoration " + slot + "/" + hotspot.getHotspot().getDecorations().length);
+ log(this.getClass(), Log.ERR, "Failed building decoration " + slot + "/" + hotspot.getHotspot().getDecorations().length);
break;
}
boolean debug = player.isStaff();
@@ -105,7 +107,7 @@ public final class ConstructionInterface extends ComponentPlugin {
break;
case 402:
int index = button - 160;
- SystemLogger.logErr("BuildRoom Interface Index: " + index);
+ log(this.getClass(), Log.FINE, "BuildRoom Interface Index: " + index);
if (index > -1 && index < RoomProperties.values().length) {
player.getDialogueInterpreter().open("con:room", RoomProperties.values()[index]);
return true;
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/CrestType.java b/Server/src/main/content/global/skill/construction/CrestType.java
similarity index 87%
rename from Server/src/main/java/core/game/node/entity/skill/construction/CrestType.java
rename to Server/src/main/content/global/skill/construction/CrestType.java
index b7e68882c..277c77231 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/CrestType.java
+++ b/Server/src/main/content/global/skill/construction/CrestType.java
@@ -1,8 +1,9 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.entity.player.Player;
import org.rs09.consts.Items;
import core.game.node.entity.skill.Skills;
+import content.data.Quests;
/**
* Family crest types.
@@ -16,7 +17,7 @@ public enum CrestType implements CrestRequirement {
@Override
public boolean eligible(Player player) {
- return player.getQuestRepository().isComplete("Shield of Arrav");
+ return player.getQuestRepository().isComplete(Quests.SHIELD_OF_ARRAV);
}
},
ASGARNIA("the symbol of Asgarnia"), // no requirements
@@ -24,21 +25,21 @@ public enum CrestType implements CrestRequirement {
@Override
public boolean eligible(Player player) {
- return player.getQuestRepository().isComplete("The Lost Tribe");
+ return player.getQuestRepository().isComplete(Quests.THE_LOST_TRIBE);
}
},
DRAGON("a dragon") { // requires Dragon Slayer
@Override
public boolean eligible(Player player) {
- return player.getQuestRepository().isComplete("Dragon Slayer");
+ return player.getQuestRepository().isComplete(Quests.DRAGON_SLAYER);
}
},
FAIRY("a fairy") { // requries Lost City
@Override
public boolean eligible(Player player) {
- return player.getQuestRepository().isComplete("Lost City");
+ return player.getQuestRepository().isComplete(Quests.LOST_CITY);
}
},
GUTHIX("the symbol of Guthix") { // Requires 70+ Prayer
diff --git a/Server/src/main/content/global/skill/construction/Decoration.java b/Server/src/main/content/global/skill/construction/Decoration.java
new file mode 100644
index 000000000..95ad2c9b3
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/Decoration.java
@@ -0,0 +1,1003 @@
+package content.global.skill.construction;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.node.scenery.Scenery;
+import core.game.world.map.Location;
+import org.rs09.consts.Items;
+
+/**
+ * Represents the decorations.
+ * @author Emperor, Player Name
+ *
+ */
+public enum Decoration {
+ /**
+ * Garden centrepiece decorations.
+ */
+ PORTAL (13405, 8168, 1, 100, new Item[] { new Item(Items.IRON_BAR_2351, 10) }),
+ ROCK (13406, 8169, 5, 100, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 5) }),
+ POND (13407, 8170, 10, 100, new Item[] { new Item(Items.SOFT_CLAY_1761, 10) }),
+ IMP_STATUE (13408, 8171, 15, 150, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 5), new Item(Items.SOFT_CLAY_1761, 5) }),
+ SMALL_OBELISK (42004, 14657, 41, 676, new Item[] { new Item(Items.MARBLE_BLOCK_8786), new Item(Items.SPIRIT_SHARDS_12183, 1000), new Item(Items.CRIMSON_CHARM_12160, 10), new Item(Items.BLUE_CHARM_12163, 10) }),
+ DUNGEON_ENTRANCE(13409, 8172, 70, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+
+ /**
+ * Garden big tree decorations.
+ */
+ BIG_DEAD_TREE (13411, 8173, 5, 31, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_DEAD_TREE_8417) }),
+ BIG_TREE (13412, 8174, 10, 44, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_NICE_TREE_8419) }),
+ BIG_OAK_TREE (13413, 8175, 15, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_OAK_TREE_8421) }),
+ BIG_WILLOW_TREE(13414, 8176, 30, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_WILLOW_TREE_8423) }),
+ BIG_MAPLE_TREE (13415, 8177, 45, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_MAPLE_TREE_8425) }),
+ BIG_YEW_TREE (13416, 8178, 60, 141, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_YEW_TREE_8427) }),
+ BIG_MAGIC_TREE (13417, 8179, 75, 223, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_MAGIC_TREE_8429) }),
+
+ /**
+ * Garden tree decorations.
+ */
+ DEAD_TREE (13418, 8173, 5, 31, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_DEAD_TREE_8417) }),
+ TREE (13419, 8174, 10, 44, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_NICE_TREE_8419) }),
+ OAK_TREE (13420, 8175, 15, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_OAK_TREE_8421) }),
+ WILLOW_TREE(13421, 8176, 30, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_WILLOW_TREE_8423) }),
+ MAPLE_TREE (13423, 8177, 45, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_MAPLE_TREE_8425) }),
+ YEW_TREE (13422, 8178, 60, 141, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_YEW_TREE_8427) }),
+ MAGIC_TREE (13424, 8179, 75, 223, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_MAGIC_TREE_8429) }),
+
+ /**
+ * Garden big plant 1 decorations.
+ */
+ FERN (13425, 8186, 1, 31, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_1_8431) }),
+ BUSH (13426, 8187, 6, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_2_8433) }),
+ TALL_PLANT(13427, 8188, 12, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_3_8435) }),
+
+ /**
+ * Garden big plant 2 decorations.
+ */
+ SHORT_PLANT (13428, 8189, 1, 31, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_1_8431) }),
+ LARGE_LEAF_PLANT(13429, 8190, 6, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_2_8433) }),
+ HUGE_PLANT (13430, 8191, 12, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_3_8435) }),
+
+ /**
+ * Garden small plant 1 decorations.
+ */
+ PLANT (13431, 8180, 1, 31, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_1_8431) }),
+ SMALL_FERN(13432, 8181, 6, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_2_8433) }),
+ FERN_SP (13433, 8182, 12, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_3_8435) }),
+
+ /**
+ * Garden small plant 2 decorations.
+ */
+ DOCK_LEAF(13434, 8183, 1, 31, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_1_8431) }),
+ THISTLE (13435, 8184, 6, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_2_8433) }),
+ REEDS (13436, 8185, 12, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_PLANT_3_8435) }),
+
+ /**
+ * Parlour chair spot
+ */
+ CRUDE_CHAIR (13581, 8309, 1, 58, new Item[] { new Item(Items.PLANK_960, 2) }),
+ WOODEN_CHAIR (13582, 8310, 8, 87, new Item[] { new Item(Items.PLANK_960, 3) }),
+ ROCKING_CHAIR (13583, 8311, 14, 87, new Item[] { new Item(Items.PLANK_960, 3) }),
+ OAK_CHAIR (13584, 8312, 19, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ OAK_ARMCHAIR (13585, 8313, 26, 180, new Item[] { new Item(Items.OAK_PLANK_8778, 3) }),
+ TEAK_ARMCHAIR (13586, 8314, 35, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ MAHOGANY_ARMCHAIR(13587, 8315, 50, 280, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2) }),
+
+ /**
+ * Rugs rugs rugs
+ */
+ BROWN_RUG_CORNER (13588, 8316, 2, 30, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ RED_RUG_CORNER (13591, 8317, 13, 60, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ OPULENT_RUG_CORNER(13594, 8318, 65, 360, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4), new Item(Items.GOLD_LEAF_8784) }),
+ BROWN_RUG_END (13589, 8316, 2, 30, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ RED_RUG_END (13592, 8317, 13, 60, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ OPULENT_RUG_END (13595, 8318, 65, 360, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4), new Item(Items.GOLD_LEAF_8784) }),
+ BROWN_RUG_CENTER (13590, 8316, 2, 30, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ RED_RUG_CENTER (13593, 8317, 13, 60, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ OPULENT_RUG_CENTER(13596, 8318, 65, 360, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4), new Item(Items.GOLD_LEAF_8784) }),
+
+ /**
+ * Parlour fireplaces
+ */
+ CLAY_FIREPLACE (13609, 8325, 3, 30, new Item[] { new Item(Items.SOFT_CLAY_1761, 3) }),
+ STONE_FIREPLACE (13611, 8326, 33, 40, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 2) }),
+ MARBLE_FIREPLACE(13613, 8327, 63, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+
+ /**
+ * Parlour curtain spot
+ */
+ TORN_CURTAINS (13603, 8322, 2, 132, new Item[] { new Item(Items.PLANK_960, 3), new Item(Items.BOLT_OF_CLOTH_8790, 3) }),
+ CURTAINS (13604, 8323, 18, 225, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.BOLT_OF_CLOTH_8790, 3) }),
+ OPULENT_CURTAINS(13605, 8324, 40, 315, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.BOLT_OF_CLOTH_8790, 3) }),
+
+ /**
+ * Bookcases
+ */
+ WOODEN_BOOKCASE (13597, 8319, 4, 115, new Item[] { new Item(Items.PLANK_960, 4) }),
+ OAK_BOOKCASE (13598, 8320, 29, 180, new Item[] { new Item(Items.OAK_PLANK_8778, 3) }),
+ MAHOGANY_BOOKCASE(13599, 8321, 40, 420, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3) }),
+
+ /**
+ * Kitchen Beer Barrels
+ * TODO: These also require cooking levels!
+ * Basic: 1, Cider: 14, Asgarnian: 24, Greenman's: 29, D.Bitter: 39, Chef's: 54
+ *
+ */
+ BASIC_BEER_BARREL (13568, 8239, 7, 87, new Item[] { new Item(Items.PLANK_960, 3) }),
+ CIDER_BARREL (13569, 8240, 12, 91, new Item[] { new Item(Items.PLANK_960, 3), new Item(Items.CIDER_5763, 8) }),
+ ASGARNIAN_ALE_BARREL(13570, 8241, 18, 184, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.ASGARNIAN_ALE_1905, 8) }),
+ GREENMANS_ALE_BARREL(13571, 8242, 26, 184, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.GREENMANS_ALE_1909, 8) }),
+ DRAGON_BITTER_BARREL(13572, 8243, 36, 224, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.DRAGON_BITTER_1911, 8), new Item(Items.STEEL_BAR_2353, 2) }),
+ CHEFS_DELIGHT_BARREL(13573, 8244, 48, 224, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.CHEFS_DELIGHT_5755, 8), new Item(Items.STEEL_BAR_2353, 2) }),
+
+ /**
+ * Kitchen Tables!
+ */
+ KITCHEN_WOODEN_TABLE(13577, 8246, 12, 87, new Item[] { new Item(Items.PLANK_960, 3) }),
+ KITCHEN_OAK_TABLE (13578, 8247, 32, 180, new Item[] { new Item(Items.OAK_PLANK_8778, 3) }),
+ KITCHEN_TEAK_TABLE (13579, 8248, 52, 270, new Item[] { new Item(Items.TEAK_PLANK_8780, 3) }),
+
+ /**
+ * Kitchen Stoves
+ */
+ BASIC_FIREPIT (13528, 8216, 5, 40, new Item[] { new Item(Items.SOFT_CLAY_1761, 2), new Item(Items.STEEL_BAR_2353) }),
+ FIREPIT_WITH_HOOK(13529, 8217, 11, 60, new Item[] { new Item(Items.SOFT_CLAY_1761, 2), new Item(Items.STEEL_BAR_2353, 2) }),
+ FIREPIT_WITH_POT (13531, 8218, 17, 80, new Item[] { new Item(Items.SOFT_CLAY_1761, 2), new Item(Items.STEEL_BAR_2353, 3) }),
+ SMALL_OVEN (13533, 8219, 24, 80, new Item[] { new Item(Items.STEEL_BAR_2353, 4) }),
+ LARGE_OVEN (13536, 8220, 29, 100, new Item[] { new Item(Items.STEEL_BAR_2353, 5) }),
+ BASIC_RANGE (13539, 8221, 34, 120, new Item[] { new Item(Items.STEEL_BAR_2353, 6) }),
+ FANCY_RANGE (13542, 8222, 42, 160, new Item[] { new Item(Items.STEEL_BAR_2353, 8) }),
+
+ /**
+ * Kitchen larders
+ */
+ WOODEN_LARDER(13565, 8233, 9, 228, new Item[] { new Item(Items.PLANK_960, 8) }),
+ OAK_LARDER (13566, 8234, 33, 480, new Item[] { new Item(Items.OAK_PLANK_8778, 8) }),
+ TEAK_LARDER (13567, 8235, 43, 750, new Item[] { new Item(Items.TEAK_PLANK_8780, 8), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+
+ /**
+ * Kitchen shelves
+ */
+ WOODEN_SHELVES_1(13545, 8223, 6, 87, new Item[] { new Item(Items.PLANK_960, 3) }),
+ WOODEN_SHELVES_2(13546, 8224, 12, 147, new Item[] { new Item(Items.PLANK_960, 3), new Item(Items.SOFT_CLAY_1761, 6) }),
+ WOODEN_SHELVES_3(13547, 8225, 23, 147, new Item[] { new Item(Items.PLANK_960, 3), new Item(Items.SOFT_CLAY_1761, 6) }),
+ OAK_SHELVES_1 (13548, 8226, 34, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.SOFT_CLAY_1761, 6) }),
+ OAK_SHELVES_2 (13549, 8227, 45, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.SOFT_CLAY_1761, 6) }),
+ TEAK_SHELVES_1 (13550, 8228, 56, 330, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.SOFT_CLAY_1761, 6) }),
+ TEAK_SHELVES_2 (13551, 8229, 67, 930, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.SOFT_CLAY_1761, 6), new Item(Items.GOLD_LEAF_8784, 2) }),
+
+ /**
+ * Kitchen sinks
+ */
+ PUMP_AND_DRAIN(13559, 8230, 7, 100, new Item[] { new Item(Items.STEEL_BAR_2353, 5) }),
+ PUMP_AND_TUB (13561, 8231, 27, 200, new Item[] { new Item(Items.STEEL_BAR_2353, 10) }),
+ SINK (13563, 8232, 47, 300, new Item[] { new Item(Items.STEEL_BAR_2353, 15) }),
+
+ /**
+ * Kitchen cat baskets/blankets
+ */
+ CAT_BLANKET (13574, 8236, 5, 15, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790) }),
+ CAT_BASKET (13575, 8237, 19, 58, new Item[] { new Item(Items.PLANK_960, 2) }),
+ CAST_BASKET_CUSHIONED(13576, 8238, 33, 58, new Item[] { new Item(Items.PLANK_960, 2), new Item(Items.WOOL_1737, 2) }),
+
+ /**
+ * Dining room tables
+ */
+ DINING_TABLE_WOOD (13293, 8246, 10, 115, new Item[] { new Item(Items.PLANK_960, 4) }),
+ DINING_TABLE_OAK (13294, 8247, 22, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ DINING_TABLE_CARVED_OAK (13295, 8247, 31, 360, new Item[] { new Item(Items.OAK_PLANK_8778, 6) }),
+ DINING_TABLE_TEAK (13296, 8248, 38, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ DINING_TABLE_CARVED_TEAK(13297, 8248, 45, 600, new Item[] { new Item(Items.TEAK_PLANK_8780, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ DINING_TABLE_MAHOGANY (13298, 8120, 52, 840, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 6) }),
+ DINING_TABLE_OPULENT (13299, 8121, 72, 3100, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4), new Item(Items.GOLD_LEAF_8784, 4), new Item(Items.MARBLE_BLOCK_8786, 2) }),
+
+ /**
+ * Dining room benches
+ */
+ BENCH_WOODEN (13300, 8108, 10, 115, new Item[] { new Item(Items.PLANK_960, 4) }),
+ BENCH_OAK (13301, 8109, 22, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ BENCH_CARVED_OAK (13302, 8110, 31, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ BENCH_TEAK (13303, 8111, 38, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ BENCH_CARVED_TEAK(13304, 8112, 44, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ BENCH_MAHOGANY (13305, 8113, 52, 560, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 6) }),
+ BENCH_GILDED (13306, 8114, 61, 1760, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.GOLD_LEAF_8784, 4) }),
+
+ /**
+ * Dining room bell-pulls
+ */
+ ROPE_PULL (13307, 8099, 5, 15, new Item[] { new Item(Items.ROPE_954), new Item(Items.OAK_PLANK_8778) }),
+ BELL_PULL (13308, 8100, 19, 58, new Item[] { new Item(Items.TEAK_PLANK_8780), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ FANCY_BELL_PULL(13309, 8101, 33, 58, new Item[] { new Item(Items.TEAK_PLANK_8780), new Item(Items.BOLT_OF_CLOTH_8790, 2), new Item(Items.GOLD_LEAF_8784) }),
+
+ /**
+ * Workshop workbench
+ */
+ WORKBENCH_WOODEN (13704, 8375, 17, 143, new Item[] { new Item(Items.PLANK_960, 5) }),
+ WORKBENCH_OAK (13705, 8376, 32, 300, new Item[] { new Item(Items.OAK_PLANK_8778, 5) }),
+ WORKBENCH_STEEL_FRAME(13706, 8377, 46, 440, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.STEEL_BAR_2353, 4) }),
+ WORKBENCH_WITH_VICE (13707, 8378, 62, 750, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.STEEL_BAR_2353, 5) }),
+ WORKBENCH_WITH_LATHE (13708, 8379, 77, 1000, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.STEEL_BAR_2353, 6) }),
+
+ /**
+ * Workshop repair benches/stands
+ */
+ REPAIR_BENCH(13713, 8389, 15, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ WHETSTONE (13714, 8390, 35, 260, new Item[] { new Item(Items.OAK_PLANK_8778, 4), new Item(Items.LIMESTONE_BRICK_3420) }),
+ ARMOUR_STAND(13715, 8391, 55, 500, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.LIMESTONE_BRICK_3420) }),
+
+ /**
+ * Workshop easels
+ */
+ PLUMING_STAND(13716, 8392, 16, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ SHIELD_EASEL (13717, 8393, 41, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ BANNER_EASEL (13718, 8394, 66, 510, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+
+ /**
+ * Workshop crafting tables
+ * TODO: These are upgradable hotspots, therefore crafting table 3 would require
+ * crafting table 2 to be already built in that spot.
+ */
+ CRAFTING_TABLE_1(13709, 8380, 16, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ CRAFTING_TABLE_2(13710, 8381, 25, 1, new Item[] { new Item(Items.MOLTEN_GLASS_1775) }),
+ CRAFTING_TABLE_3(13711, 8382, 34, 2, new Item[] { new Item(Items.MOLTEN_GLASS_1775, 2) }),
+ CRAFTING_TABLE_4(13712, 8383, 42, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+
+ /**
+ * Workshop tool stores
+ * These are also upgradable just like the tables above.
+ */
+ TOOL_STORE_1(13699, 8384, 15, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TOOL_STORE_2(13700, 8385, 25, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TOOL_STORE_3(13701, 8386, 35, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TOOL_STORE_4(13702, 8387, 44, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TOOL_STORE_5(13703, 8388, 55, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+
+ /**
+ * Wall-mounted decorations
+ */
+ OAK_DECORATION (13606, 8102, 16, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TEAK_DECORATION (13606, 8103, 36, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ GILDED_DECORATION(13607, 8104, 56, 1020, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.GOLD_LEAF_8784, 2) }),
+
+ /**
+ * Staircases.
+ */
+ OAK_STAIRCASE (13497, 8249, 27, 680, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 4) }),
+ TEAK_STAIRCASE (13499, 8252, 48, 980, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 4) }),
+ SPIRAL_STAIRCASE(13503, 8258, 67, 1040, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.LIMESTONE_BRICK_3420, 7) }),
+ MARBLE_STAIRCASE(13501, 8257, 82, 3200, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.MARBLE_BLOCK_8786, 5) }),
+ MARBLE_SPIRAL (13505, 8259, 97, 4400, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.MARBLE_BLOCK_8786, 7) }),
+
+ /**
+ * Staircases going down.
+ */
+ OAK_STAIRS_DOWN (13498, 8249, 27, 680, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 4) }),
+ TEAK_STAIRS_DOWN (13500, 8252, 48, 980, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 4) }),
+ SPIRAL_STAIRS_DOWN(13504, 8258, 67, 1040, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.LIMESTONE_BRICK_3420, 7) }),
+ MARBLE_STAIRS_DOWN(13502, 8257, 82, 3200, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.MARBLE_BLOCK_8786, 5) }),
+ MARBLE_SPIRAL_DOWN(13506, 8259, 97, 4400, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.MARBLE_BLOCK_8786, 7) }),
+
+ /**
+ * Portal room decorations.
+ */
+ TEAK_PORTAL (13636, 8328, 50, 270, new Item[] { new Item(Items.TEAK_PLANK_8780, 3) }),
+ MAHOGANY_PORTAL (13637, 8329, 65, 420, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3) }),
+ MARBLE_PORTAL (13638, 8330, 80, 1500, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 3) }),
+ TELEPORT_FOCUS (13640, 8331, 50, 40, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 2) }),
+ GREATER_TELEPORT_FOCUS (13641, 8332, 65, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+ SCRYING_POOL (13639, 8333, 80, 2000, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 4) }),
+ TEAK_VARROCK_PORTAL (13615, true),
+ MAHOGANY_VARROCK_PORTAL (13622, true),
+ MARBLE_VARROCK_PORTAL (13629, true),
+ TEAK_LUMBRIDGE_PORTAL (13616, true),
+ MAHOGANY_LUMBRIDGE_PORTAL(13623, true),
+ MARBLE_LUMBRIDGE_PORTAL (13630, true),
+ TEAK_FALADOR_PORTAL (13617, true),
+ MAHOGANY_FALADOR_PORTAL (13624, true),
+ MARBLE_FALADOR_PORTAL (13631, true),
+ TEAK_CAMELOT_PORTAL (13618, true),
+ MAHOGANY_CAMELOT_PORTAL (13625, true),
+ MARBLE_CAMELOT_PORTAL (13632, true),
+ TEAK_ARDOUGNE_PORTAL (13619, true),
+ MAHOGANY_ARDOUGNE_PORTAL (13626, true),
+ MARBLE_ARDOUGNE_PORTAL (13633, true),
+ TEAK_YANILLE_PORTAL (13620, true),
+ MAHOGANY_YANILLE_PORTAL (13627, true),
+ MARBLE_YANILLE_PORTAL (13634, true),
+ TEAK_KHARYRLL_PORTAL (13621, true),
+ MAHOGANY_KHARYRLL_PORTAL (13628, true),
+ MARBLE_KHARYRLL_PORTAL (13635, true),
+
+ /**
+ * Skill hall decorations.
+ */
+ MITHRIL_ARMOUR (13491, 8270, 28, 135, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.MITHRIL_FULL_HELM_1159, 1), new Item(Items.MITHRIL_PLATEBODY_1121, 1), new Item(Items.MITHRIL_PLATESKIRT_1085, 1) }, new Item[] { new Item(Items.MITHRIL_FULL_HELM_1159, 1), new Item(Items.MITHRIL_PLATEBODY_1121, 1), new Item(Items.MITHRIL_PLATESKIRT_1085, 1) }),
+ ADAMANT_ARMOUR (13492, 8271, 28, 150, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.ADAMANT_FULL_HELM_1161, 1), new Item(Items.ADAMANT_PLATEBODY_1123, 1), new Item(Items.ADAMANT_PLATESKIRT_1091, 1) }, new Item[] { new Item(Items.ADAMANT_FULL_HELM_1161, 1), new Item(Items.ADAMANT_PLATEBODY_1123, 1), new Item(Items.ADAMANT_PLATESKIRT_1091, 1) }),
+ RUNE_ARMOUR (13493, 8272, 28, 165, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.RUNE_FULL_HELM_1163, 1), new Item(Items.RUNE_PLATEBODY_1127, 1), new Item(Items.RUNE_PLATESKIRT_1093, 1) }, new Item[] { new Item(Items.RUNE_FULL_HELM_1163, 1), new Item(Items.RUNE_PLATEBODY_1127, 1), new Item(Items.RUNE_PLATESKIRT_1093, 1) }),
+ CRAWLING_HAND (13481, 8260, 38, 211, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.CRAWLING_HAND_7982) }),
+ COCKATRICE_HEAD (13482, 8261, 38, 224, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.COCKATRICE_HEAD_7983) }),
+ BASILISK_HEAD (13483, 8262, 38, 243, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.BASILISK_HEAD_7984) }),
+ KURASK_HEAD (13484, 8263, 58, 357, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.KURASK_HEAD_7985) }),
+ ABYSSAL_DEMON_HEAD(13485, 8264, 58, 389, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.ABYSSAL_HEAD_7986) }),
+ KBD_HEAD (13486, 8265, 78, 1103, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.KBD_HEADS_7987) }),
+ KQ_HEAD (13487, 8266, 78, 1103, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.KQ_HEAD_7988) }),
+ MOUNTED_BASS (13488, 8267, 36, 151, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.BIG_BASS_7990) }),
+ MOUNTED_SWORDFISH (13489, 8268, 56, 230, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.BIG_SWORDFISH_7992) }),
+ MOUNTED_SHARK (13490, 8269, 76, 350, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.BIG_SHARK_7994) }),
+ RUNE_CASE1 (13507, 8095, 41, 190, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.MOLTEN_GLASS_1775, 2), new Item(Items.FIRE_RUNE_554, 1), new Item(Items.AIR_RUNE_556, 1), new Item(Items.EARTH_RUNE_557, 1), new Item(Items.WATER_RUNE_555, 1) }),
+ RUNE_CASE2 (13508, 8095, 41, 212, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.MOLTEN_GLASS_1775, 2), new Item(Items.BODY_RUNE_559, 1), new Item(Items.COSMIC_RUNE_564, 1), new Item(Items.CHAOS_RUNE_562, 1), new Item(Items.NATURE_RUNE_561, 1) }),
+
+ /**
+ * Games room decorations.
+ */
+ CLAY_STONE (13392, 8153, 39, 100, new Item[] { new Item(Items.SOFT_CLAY_1761, 10) }),
+ LIMESTONE_STONE(13393, 8154, 59, 200, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 10) }),
+ MARBLE_STONE (13394, 8155, 79, 2000, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 4) }),
+ HOOP_AND_STICK (13398, 8162, 30, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ DARTBOARD (13400, 8163, 54, 290, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.STEEL_BAR_2353) }),
+ ARCHERY_TARGET (13402, 8164, 81, 600, new Item[] { new Item(Items.TEAK_PLANK_8780, 6), new Item(Items.STEEL_BAR_2353, 3) }),
+ BALANCE_1 (13395, 8156, 37, 176, new Item[] { new Item(Items.FIRE_RUNE_554, 500), new Item(Items.AIR_RUNE_556, 500), new Item(Items.EARTH_RUNE_557, 500), new Item(Items.WATER_RUNE_555, 500) }),
+ BALANCE_2 (13396, 8157, 57, 252, new Item[] { new Item(Items.FIRE_RUNE_554, 1000), new Item(Items.AIR_RUNE_556, 1000), new Item(Items.EARTH_RUNE_557, 1000), new Item(Items.WATER_RUNE_555, 1000) }),
+ BALANCE_3 (13397, 8158, 77, 356, new Item[] { new Item(Items.FIRE_RUNE_554, 2000), new Item(Items.AIR_RUNE_556, 2000), new Item(Items.EARTH_RUNE_557, 2000), new Item(Items.WATER_RUNE_555, 2000) }),
+ OAK_CHEST (13385, 8165, 34, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ TEAK_CHEST (13387, 8166, 44, 660, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.GOLD_LEAF_8784) }),
+ MAHOGANY_CHEST (13389, 8167, 54, 860, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.GOLD_LEAF_8784) }),
+ JESTER (13390, 8159, 39, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ TREASURE_HUNT (13379, 8160, 49, 800, new Item[] { new Item(Items.TEAK_PLANK_8780, 8), new Item(Items.STEEL_BAR_2353, 4) }),
+ HANGMAN (13404, 8161, 59, 1200, new Item[] { new Item(Items.TEAK_PLANK_8780, 12), new Item(Items.STEEL_BAR_2353, 6) }),
+
+ /**
+ * Combat room decorations.
+ */
+ BOXING_RING (13129, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ FENCING_RING (13133, 8024, 41, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ COMBAT_RING (13137, 8025, 51, 630, new Item[] { new Item(Items.TEAK_PLANK_8780, 6), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ BALANCE_BEAM_LEFT (13143, 8027, 81, 1000, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 5) }),
+ BALANCE_BEAM_CENTER(13142, 8027, 81, 1000, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 5) }),
+ BALANCE_BEAM_RIGHT (13144, 8027, 81, 1000, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 5) }),
+ RANGING_PEDESTALS (13147, 8026, 71, 720, new Item[] { new Item(Items.TEAK_PLANK_8780, 8) }),
+ MAGIC_BARRIER (13145, 8026, 71, 720, new Item[] { new Item(Items.TEAK_PLANK_8780, 8) }),
+ NOTHING (13721, 8027, 81, 1000, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 5) }),
+ NOTHING2 (13721, 8026, 71, 720, new Item[] { new Item(Items.TEAK_PLANK_8780, 8) }),
+ INVISIBLE_WALL (15283, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ INVISIBLE_WALL2 (15284, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ INVISIBLE_WALL3 (15285, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ GLOVE_RACK (13381, 8028, 34, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ WEAPONS_RACK (13382, 8029, 44, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ EXTRA_WEAPONS_RACK (13383, 8030, 54, 440, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.STEEL_BAR_2353, 4) }),
+ BOXING_MAT_CORNER (13126, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ FENCING_MAT_CORNER (13135, 8024, 41, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ COMBAT_MAT_CORNER (13138, 8025, 51, 630, new Item[] { new Item(Items.TEAK_PLANK_8780, 6), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ BOXING_MAT_SIDE (13128, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ FENCING_MAT_SIDE (13134, 8024, 41, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ COMBAT_MAT_SIDE (13139, 8025, 51, 630, new Item[] { new Item(Items.TEAK_PLANK_8780, 6), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ BOXING_MAT (13127, 8023, 32, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 6), new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ FENCING_MAT (13136, 8024, 41, 570, new Item[] { new Item(Items.OAK_PLANK_8778, 8), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+ COMBAT_MAT (13140, 8025, 51, 630, new Item[] { new Item(Items.TEAK_PLANK_8780, 6), new Item(Items.BOLT_OF_CLOTH_8790, 6) }),
+
+ /**
+ * Formal garden decorations
+ */
+ GAZEBO (13477, 8192, 65, 1200, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 8), new Item(Items.STEEL_BAR_2353, 4) }),
+ SMALL_FOUNTAIN (13478, 8193, 71, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+ LARGE_FOUNTAIN (13479, 8194, 75, 1000, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 2) }),
+ POSH_FOUNTAIN (13480, 8195, 81, 1500, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 3) }),
+ SUNFLOWER (13446, 8213, 66, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_SUNFLOWER_8457) }),
+ MARIGOLDS (13447, 8214, 71, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_MARIGOLDS_8459) }),
+ ROSES (13448, 8215, 76, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_ROSES_8461) }),
+ SUNFLOWER_BIG (13443, 8213, 66, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_SUNFLOWER_8457) }),
+ MARIGOLDS_BIG (13444, 8214, 71, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_MARIGOLDS_8459) }),
+ ROSES_BIG (13445, 8215, 76, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_ROSES_8461) }),
+ ROSEMARY (13440, 8210, 66, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_ROSEMARY_8451) }),
+ DAFFODILS (13441, 8211, 71, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_DAFFODILS_8453) }),
+ BLUEBELLS (13442, 8212, 76, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_BLUEBELLS_8455) }),
+ ROSEMARY_BIG (13437, 8210, 66, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_ROSEMARY_8451) }),
+ DAFFODILS_BIG (13438, 8211, 71, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_DAFFODILS_8453) }),
+ BLUEBELLS_BIG (13439, 8212, 76, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.BAGGED_BLUEBELLS_8455) }),
+ THORNY_HEDGE1 (13456, 8203, 56, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.THORNY_HEDGE_8437) }),
+ THORNY_HEDGE2 (13457, 8203, 56, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.THORNY_HEDGE_8437) }),
+ THORNY_HEDGE3 (13458, 8203, 56, 70, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.THORNY_HEDGE_8437) }),
+ NICE_HEDGE1 (13459, 8204, 60, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.NICE_HEDGE_8439) }),
+ NICE_HEDGE2 (13461, 8204, 60, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.NICE_HEDGE_8439) }),
+ NICE_HEDGE3 (13460, 8204, 60, 100, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.NICE_HEDGE_8439) }),
+ SMALL_BOX_HEDGE1 (13462, 8205, 64, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.SMALL_BOX_HEDGE_8441) }),
+ SMALL_BOX_HEDGE2 (13464, 8205, 64, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.SMALL_BOX_HEDGE_8441) }),
+ SMALL_BOX_HEDGE3 (13463, 8205, 64, 122, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.SMALL_BOX_HEDGE_8441) }),
+ TOPIARY_HEDGE1 (13465, 8206, 68, 141, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TOPIARY_HEDGE_8443) }),
+ TOPIARY_HEDGE2 (13467, 8206, 68, 141, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TOPIARY_HEDGE_8443) }),
+ TOPIARY_HEDGE3 (13466, 8206, 68, 141, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TOPIARY_HEDGE_8443) }),
+ FANCY_HEDGE1 (13468, 8207, 72, 158, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.FANCY_HEDGE_8445) }),
+ FANCY_HEDGE2 (13470, 8207, 72, 158, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.FANCY_HEDGE_8445) }),
+ FANCY_HEDGE3 (13469, 8207, 72, 158, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.FANCY_HEDGE_8445) }),
+ TALL_FANCY_HEDGE1(13471, 8208, 76, 223, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TALL_FANCY_HEDGE_8447) }),
+ TALL_FANCY_HEDGE2(13473, 8208, 76, 223, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TALL_FANCY_HEDGE_8447) }),
+ TALL_FANCY_HEDGE3(13472, 8208, 76, 223, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TALL_FANCY_HEDGE_8447) }),
+ TALL_BOX_HEDGE1 (13474, 8209, 80, 316, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TALL_BOX_HEDGE_8449) }),
+ TALL_BOX_HEDGE2 (13476, 8209, 80, 316, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TALL_BOX_HEDGE_8449) }),
+ TALL_BOX_HEDGE3 (13475, 8209, 80, 316, new int[] { BuildingUtils.WATERING_CAN }, new Item[] { new Item(Items.TALL_BOX_HEDGE_8449) }),
+ BOUNDARY_STONES (13449, 8196, 55, 100, new Item[] { new Item(Items.SOFT_CLAY_1761, 10) }),
+ WOODEN_FENCE (13450, 8197, 59, 280, new Item[] { new Item(Items.PLANK_960, 10) }),
+ STONE_WALL (13451, 8198, 63, 200, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 10) }),
+ IRON_RAILINGS (13452, 8199, 67, 220, new Item[] { new Item(Items.IRON_BAR_2351, 10), new Item(Items.LIMESTONE_BRICK_3420, 6) }),
+ PICKET_FENCE (13453, 8200, 71, 640, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 2) }),
+ GARDEN_FENCE (13454, 8201, 75, 940, new Item[] { new Item(Items.TEAK_PLANK_8780, 10), new Item(Items.STEEL_BAR_2353, 2) }),
+ MARBLE_WALL (13455, 8202, 79, 4000, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 10) }),
+
+ /**
+ * Bedroom decorations.
+ */
+ WOODEN_BED (13148, 8031, 20, 117, new Item[] { new Item(Items.PLANK_960, 3), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ OAK_BED (13149, 8032, 30, 210, new Item[] { new Item(Items.OAK_PLANK_8778, 3), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ LARGE_OAK_BED (13150, 8033, 34, 330, new Item[] { new Item(Items.OAK_PLANK_8778, 5), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ TEAK_BED (13151, 8034, 40, 300, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ LARGE_TEAK_BED (13152, 8035, 45, 480, new Item[] { new Item(Items.TEAK_PLANK_8780, 5), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ FOUR_POSTER (13153, 8036, 53, 450, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ GILDED_FOUR_POSTER(13154, 8037, 60, 1330, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.BOLT_OF_CLOTH_8790, 2), new Item(Items.GOLD_LEAF_8784, 2) }),
+ OAK_CLOCK (13169, 8052, 25, 142, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.CLOCKWORK_8792) }),
+ TEAK_CLOCK (13170, 8053, 55, 202, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.CLOCKWORK_8792) }),
+ GILDED_CLOCK (13171, 8054, 85, 602, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.CLOCKWORK_8792), new Item(Items.GOLD_LEAF_8784) }),
+ SHAVING_STAND (13162, 8045, 21, 30, new Item[] { new Item(Items.PLANK_960), new Item(Items.MOLTEN_GLASS_1775) }),
+ OAK_SHAVING_STAND (13163, 8046, 29, 61, new Item[] { new Item(Items.OAK_PLANK_8778), new Item(Items.MOLTEN_GLASS_1775) }),
+ OAK_DRESSER (13164, 8047, 37, 121, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.MOLTEN_GLASS_1775) }),
+ TEAK_DRESSER (13165, 8048, 46, 181, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.MOLTEN_GLASS_1775) }),
+ FANCY_TEAK_DRESSER(13166, 8049, 56, 182, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.MOLTEN_GLASS_1775, 2) }),
+ MAHOGANY_DRESSER (13167, 8050, 64, 281, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.MOLTEN_GLASS_1775) }),
+ GILDED_DRESSER (13168, 8051, 74, 582, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.MOLTEN_GLASS_1775, 2), new Item(Items.GOLD_LEAF_8784) }),
+ SHOE_BOX (13155, 8038, 20, 58, new Item[] { new Item(Items.PLANK_960, 2) }),
+ OAK_DRAWERS (13156, 8039, 27, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ OAK_WARDROBE (13157, 8040, 39, 180, new Item[] { new Item(Items.OAK_PLANK_8778, 3) }),
+ TEAK_DRAWERS (13158, 8041, 51, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ TEAK_WARDROBE (13159, 8042, 63, 270, new Item[] { new Item(Items.TEAK_PLANK_8780, 3) }),
+ MAHOGANY_WARDROBE (13160, 8043, 75, 420, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2) }),
+ GILDED_WARDROBE (13161, 8044, 87, 720, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.GOLD_LEAF_8784) }),
+
+ /**
+ * Quest hall decorations.
+ */
+ ANTIDRAGON_SHIELD(13522, 8282, 47, 280, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.ANTI_DRAGON_SHIELD_1540) }, new Item[] { new Item(Items.ANTI_DRAGON_SHIELD_1540) }),
+ AMULET_OF_GLORY (13523, 8283, 47, 290, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.AMULET_OF_GLORY_1704) }, new Item[] { new Item(Items.AMULET_OF_GLORY_1704) }),
+ CAPE_OF_LEGENDS (13524, 8284, 47, 300, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.CAPE_OF_LEGENDS_1052) }, new Item[] { new Item(Items.CAPE_OF_LEGENDS_1052) }),
+ KING_ARTHUR (13510, 8285, 35, 211, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.ARTHUR_PORTRAIT_7995) }),
+ ELENA (13511, 8286, 35, 211, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.ELENA_PORTRAIT_7996) }),
+ GIANT_DWARF (13512, 8287, 35, 211, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.KELDAGRIM_PORTRAIT_7997) }),
+ MISCELLANIANS (13513, 8288, 35, 311, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.MISC_PORTRAIT_7998) }),
+ LUMBRIDGE (13517, 8289, 44, 314, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.LUMBRIDGE_PAINTING_8002) }),
+ THE_DESERT (13514, 8290, 44, 314, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.DESERT_PAINTING_7999) }),
+ MORYTANIA (13518, 8291, 44, 314, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.MORYTANIA_PAINTING_8003) }),
+ KARAMJA (13516, 8292, 65, 464, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.KARAMJA_PAINTING_8001) }),
+ ISAFDAR (13515, 8293, 65, 464, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.ISAFDAR_PAINTING_8000) }),
+ SILVERLIGHT (13519, 8279, 42, 187, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.SILVERLIGHT_2402) }, new Item[] { new Item(Items.SILVERLIGHT_2402) }),
+ EXCALIBUR (13521, 8280, 42, 194, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.EXCALIBUR_35) }, new Item[] { new Item(Items.EXCALIBUR_35) }),
+ DARKLIGHT (13520, 8281, 42, 202, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.DARKLIGHT_6746) }, new Item[] { new Item(Items.DARKLIGHT_6746) }),
+ SMALL_MAP (13525, 8294, 38, 211, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.SMALL_MAP_8004) }),
+ MEDIUM_MAP (13526, 8295, 58, 451, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.MEDIUM_MAP_8005) }),
+ LARGE_MAP (13527, 8296, 78, 591, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.LARGE_MAP_8006) }),
+
+ /**
+ * Study decorations.
+ */
+ GLOBE (13649, 8341, 41, 180, new Item[] { new Item(Items.OAK_PLANK_8778, 3) }),
+ ORNAMENTAL_GLOBE (13650, 8342, 50, 270, new Item[] { new Item(Items.TEAK_PLANK_8780, 3) }),
+ LUNAR_GLOBE (13651, 8343, 59, 570, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.GOLD_LEAF_8784) }),
+ CELESTIAL_GLOBE (13652, 8344, 68, 570, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.GOLD_LEAF_8784) }),
+ ARMILLARY_SPHERE (13653, 8345, 77, 960, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.GOLD_LEAF_8784, 2), new Item(Items.STEEL_BAR_2353, 4) }),
+ SMALL_ORREY (13654, 8346, 86, 1320, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.GOLD_LEAF_8784, 3) }),
+ LARGE_ORREY (13655, 8347, 95, 1420, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.GOLD_LEAF_8784, 5) }),
+ OAK_LECTERN (13642, 8334, 40, 60, new Item[] { new Item(Items.OAK_PLANK_8778) }),
+ EAGLE_LECTERN (13643, 8335, 47, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ DEMON_LECTERN (13644, 8336, 47, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TEAK_EAGLE_LECTERN (13645, 8337, 57, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ TEAK_DEMON_LECTERN (13646, 8338, 57, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ MAHOGANY_EAGLE_LECTERN(13647, 8339, 67, 580, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.GOLD_LEAF_8784) }),
+ MAHOGANY_DEMON_LECTERN(13648, 8340, 67, 580, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.GOLD_LEAF_8784) }),
+ CRYSTAL_BALL (13659, 8351, 42, 280, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.UNPOWERED_ORB_567) }),
+ ELEMENTAL_SPHERE (13660, 8352, 54, 580, new Item[] { new Item(Items.TEAK_PLANK_8780, 3), new Item(Items.UNPOWERED_ORB_567), new Item(Items.GOLD_LEAF_8784) }),
+ CRYSTAL_OF_POWER (13661, 8353, 66, 890, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.UNPOWERED_ORB_567), new Item(Items.GOLD_LEAF_8784, 2) }),
+ ALCHEMICAL_CHART (13662, 8354, 43, 30, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ ASTRONOMICAL_CHART (13663, 8355, 63, 45, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 3) }),
+ INFERNAL_CHART (13664, 8356, 83, 60, new Item[] { new Item(Items.BOLT_OF_CLOTH_8790, 4) }),
+ TELESCOPE1 (13656, 8348, 44, 121, new Item[] { new Item(Items.OAK_PLANK_8778, 2), new Item(Items.MOLTEN_GLASS_1775) }),
+ TELESCOPE2 (13657, 8349, 64, 181, new Item[] { new Item(Items.TEAK_PLANK_8780, 2), new Item(Items.MOLTEN_GLASS_1775) }),
+ TELESCOPE3 (13658, 8350, 84, 580, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2), new Item(Items.MOLTEN_GLASS_1775) }),
+
+ /**
+ * Costume room decorations.
+ */
+ OAK_TREASURE_CHEST (18804, 9839, 48, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TEAK_TREASURE_CHEST (18806, 9840, 66, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ MAHOGANY_TREASURE_CHEST(18808, 9841, 84, 280, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2) }),
+ OAK_ARMOUR_CASE (18778, 9826, 46, 180, new Item[] { new Item(Items.OAK_PLANK_8778, 3) }),
+ TEAK_ARMOUR_CASE (18780, 9827, 64, 270, new Item[] { new Item(Items.TEAK_PLANK_8780, 3) }),
+ MGANY_ARMOUR_CASE (18782, 9828, 82, 420, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3) }),
+ OAK_MAGIC_WARDROBE (18784, 9829, 42, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ C_OAK_MAGIC_WARDROBE (18786, 9830, 51, 360, new Item[] { new Item(Items.OAK_PLANK_8778, 6) }),
+ TEAK_MAGIC_WARDROBE (18788, 9831, 60, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ C_TEAK_MAGIC_WARDROBE (18790, 9832, 69, 540, new Item[] { new Item(Items.TEAK_PLANK_8780, 6) }),
+ MGANY_MAGIC_WARDROBE (18792, 9833, 78, 560, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4) }),
+ GILDED_MAGIC_WARDROBE (18794, 9834, 87, 860, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.GOLD_LEAF_8784) }),
+ MARBLE_MAGIC_WARDROBE (18796, 9835, 96, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+ OAK_CAPE_RACK (18766, 9817, 54, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ TEAK_CAPE_RACK (18767, 9818, 63, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ MGANY_CAPE_RACK (18768, 9819, 72, 560, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4) }),
+ GILDED_CAPE_RACK (18769, 9820, 81, 860, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.GOLD_LEAF_8784) }),
+ MARBLE_CAPE_RACK (18770, 9821, 90, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+ MAGIC_CAPE_RACK (18771, 9822, 99, 1000, new Item[] { new Item(Items.MAGIC_STONE_8788) }),
+ OAK_TOY_BOX (18798, 9836, 50, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TEAK_TOY_BOX (18800, 9837, 68, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ MAHOGANY_TOY_BOX (18802, 9838, 86, 280, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2) }),
+ OAK_COSTUME_BOX (18772, 9823, 44, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TEAK_COSTUME_BOX (18774, 9824, 62, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ MAHOGANY_COSTUME_BOX (18776, 9825, 80, 280, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 2) }),
+
+ /**
+ * Chapel decorations.
+ */
+ OAK_ALTAR (13179, 8062, 45, 240, new Item[] { new Item(Items.OAK_PLANK_8778, 4) }),
+ TEAK_ALTAR (13182, 8063, 50, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ CLOTH_ALTAR (13185, 8064, 56, 390, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ MAHOGANY_ALTAR (13188, 8065, 60, 590, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ LIMESTONE_ALTAR (13191, 8066, 64, 910, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 6), new Item(Items.BOLT_OF_CLOTH_8790, 2), new Item(Items.LIMESTONE_BRICK_3420, 2) }),
+ MARBLE_ALTAR (13194, 8067, 70, 1030, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 2), new Item(Items.BOLT_OF_CLOTH_8790, 2) }),
+ GILDED_ALTAR (13197, 8068, 75, 2230, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 2), new Item(Items.BOLT_OF_CLOTH_8790, 2), new Item(Items.GOLD_LEAF_8784, 4) }),
+ SMALL_STATUE (13271, 8082, 49, 40, new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 2) }),
+ MEDIUM_STATUE (13272, 8083, 69, 500, new Item[] { new Item(Items.MARBLE_BLOCK_8786) }),
+ LARGE_STATUE (13282, 8084, 89, 1500, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 3) }),
+ WINDCHIMES (13214, 8079, 49, 323, new Item[] { new Item(Items.OAK_PLANK_8778, 4), new Item(Items.STEEL_BAR_2353, 4) }),
+ BELLS (13215, 8080, 58, 480, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.STEEL_BAR_2353, 6) }),
+ ORGAN (13216, 8081, 69, 680, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.STEEL_BAR_2353, 6) }),
+ SARADOMIN_SYMBOL (13172, 8055, 48, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ ZAMORAK_SYMBOL (13173, 8056, 48, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ GUTHIX_SYMBOL (13174, 8057, 48, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ SARADOMIN_ICON (13175, 8058, 59, 960, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.GOLD_LEAF_8784, 2) }),
+ ZAMORAK_ICON (13176, 8059, 59, 960, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.GOLD_LEAF_8784, 2) }),
+ GUTHIX_ICON (13177, 8060, 59, 960, new Item[] { new Item(Items.TEAK_PLANK_8780, 4), new Item(Items.GOLD_LEAF_8784, 2) }),
+ ICON_OF_BOB (13178, 8061, 71, 1160, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.GOLD_LEAF_8784, 2) }),
+ STEEL_TORCHES (13202, 8070, 45, 80, new Item[] { new Item(Items.STEEL_BAR_2353, 2) }),
+ WOODEN_TORCHES (13200, 8069, 49, 58, new Item[] { new Item(Items.PLANK_960, 2) }),
+ STEEL_CANDLESTICKS(13204, 8071, 53, 124, new Item[] { new Item(Items.STEEL_BAR_2353, 6), new Item(Items.CANDLE_36, 6) }),
+ GOLD_CANDLESTICKS (13206, 8072, 57, 46, new Item[] { new Item(Items.GOLD_BAR_2357, 6), new Item(Items.CANDLE_36, 6) }),
+ INCENSE_BURNERS (13208, 8073, 61, 280, new Item[] { new Item(Items.OAK_PLANK_8778, 4), new Item(Items.STEEL_BAR_2353, 2) }),
+ MAHOGANY_BURNERS (13210, 8074, 65, 600, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.STEEL_BAR_2353, 2) }),
+ MARBLE_BURNERS (13212, 8075, 69, 1600, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 2), new Item(Items.STEEL_BAR_2353, 2) }),
+ SHUTTERED_WINDOW (new int[] { 13253, 13226, 13235, 13244, 13217, 13262 }, 8076, 49, 228, new Item[] { new Item(Items.PLANK_960, 8) }),
+ DECORATIVE_WINDOW (new int[] { 13254, 13227, 13236, 13245, 13218, 13263 }, 8077, 69, 200, new Item[] { new Item(Items.MOLTEN_GLASS_1775, 8) }),
+ STAINED_GLASS (new int[] { 13255, 13228, 13237, 13246, 13219, 13264 }, 8078, 89, 400, new Item[] { new Item(Items.MOLTEN_GLASS_1775, 16) }),
+
+ /**
+ * Throne room
+ */
+ OAK_THRONE (13665, 8357, 60, 800, new Item[] { new Item(Items.OAK_PLANK_8778, 5), new Item(Items.MARBLE_BLOCK_8786) }),
+ TEAK_THRONE (13666, 8358, 67, 1450, new Item[] { new Item(Items.TEAK_PLANK_8780, 5), new Item(Items.MARBLE_BLOCK_8786, 2) }),
+ MAHOGANY_THRONE (13667, 8359, 74, 2200, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.MARBLE_BLOCK_8786, 3) }),
+ GILDED_THRONE (13668, 8360, 81, 1700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.MARBLE_BLOCK_8786, 2), new Item(Items.GOLD_LEAF_8784, 3) }),
+ SKELETON_THRONE (13669, 8361, 88, 7003, new Item[] { new Item(Items.MAGIC_STONE_8788, 5), new Item(Items.MARBLE_BLOCK_8786, 4), new Item(Items.BONES_526, 5), new Item(Items.SKULL_964, 2) }),
+ CRYSTAL_THRONE (13670, 8362, 95, 15000, new Item[] { new Item(Items.MAGIC_STONE_8788, 15) }),
+ DEMONIC_THRONE (13671, 8363, 99, 25000, new Item[] { new Item(Items.MAGIC_STONE_8788, 25) }),
+ OAK_LEVER (13672, 8364, 68, 300, new Item[] { new Item(Items.OAK_PLANK_8778, 5) }),
+ TEAK_LEVER (13673, 8365, 78, 450, new Item[] { new Item(Items.TEAK_PLANK_8780, 5) }),
+ MAHOGANY_LEVER (13674, 8366, 88, 700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5) }),
+ FLOOR_DECORATION (new int[] { 13689, 13686, 13687, 13688, 13684, 13685 }, 8370, 61, 700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5) }),
+ STEEL_CAGE (new int[] { 13689, 13686, 13687, 13688, 13684, 13685 }, 8371, 68, 1100, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.STEEL_BAR_2353, 20) }),
+ FLOOR_TRAP (new int[] { 13689, 13686, 13687, 13688, 13684, 13685 }, 8372, 74, 770, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.CLOCKWORK_8792, 10) }),
+ MAGIC_CIRCLE (new int[] { 13689, 13686, 13687, 13688, 13684, 13685 }, 8373, 82, 2700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.MAGIC_STONE_8788, 2) }),
+ MAGIC_CAGE (new int[] { 13689, 13686, 13687, 13688, 13684, 13685 }, 8374, 89, 4700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.MAGIC_STONE_8788, 4) }),
+ OAK_TRAPDOOR (13675, 8367, 68, 300, new Item[] { new Item(Items.OAK_PLANK_8778, 5) }),
+ TEAK_TRAPDOOR (13676, 8368, 78, 450, new Item[] { new Item(Items.TEAK_PLANK_8780, 5) }),
+ MAHOGANY_TRAPDOOR(13677, 8369, 88, 700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5) }),
+ CARVED_TEAK_BENCH(13694, 8112, 44, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ MAHOGANY_BENCH (13695, 8113, 52, 560, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4) }),
+ GILDED_BENCH (13696, 8114, 61, 1760, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 4), new Item(Items.GOLD_LEAF_8784, 4) }),
+ OAK_DECO (13798, 8102, 16, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ TEAK_DECO (13814, 8103, 36, 180, new Item[] { new Item(Items.TEAK_PLANK_8780, 2) }),
+ GILDED_DECO (13782, 8104, 56, 1020, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3), new Item(Items.GOLD_LEAF_8784, 2) }),
+ ROUND_SHIELD (13734, 8105, 66, 120, new Item[] { new Item(Items.OAK_PLANK_8778, 2) }),
+ SQUARE_SHIELD (13766, 8106, 76, 360, new Item[] { new Item(Items.TEAK_PLANK_8780, 4) }),
+ KITE_SHIELD (13750, 8107, 86, 420, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 3) }),
+
+ /**
+ * Oubliette
+ */
+ SPIKES_MID (13334, 8302, 65, 623, new Item[] { new Item(Items.STEEL_BAR_2353, 20), new Item(Items.COINS_995, 50000) }),
+ SPIKES_SIDE (13335, 8302, 65, 623, new Item[] { new Item(Items.STEEL_BAR_2353, 20), new Item(Items.COINS_995, 50000) }),
+ SPIKES_CORNER (13336, 8302, 65, 623, new Item[] { new Item(Items.STEEL_BAR_2353, 20), new Item(Items.COINS_995, 50000) }),
+ SPIKES_FL (13338, 8302, 65, 623, new Item[] { new Item(Items.STEEL_BAR_2353, 20), new Item(Items.COINS_995, 50000) }),
+ TENTACLE_MID (13331, 8303, 71, 326, new Item[] { new Item(Items.BUCKET_OF_WATER_1929, 20), new Item(Items.COINS_995, 100000) }),
+ TENTACLE_SIDE (13332, 8303, 71, 326, new Item[] { new Item(Items.BUCKET_OF_WATER_1929, 20), new Item(Items.COINS_995, 100000) }),
+ TENTACLE_CORNER (13333, 8303, 71, 326, new Item[] { new Item(Items.BUCKET_OF_WATER_1929, 20), new Item(Items.COINS_995, 100000) }),
+ TENTACLE_FL (13338, 8303, 71, 326, new Item[] { new Item(Items.BUCKET_OF_WATER_1929, 20), new Item(Items.COINS_995, 100000) }),
+ FP_FLOOR_MID (13371, 8304, 77, 357, new Item[] { new Item(Items.TINDERBOX_590, 20), new Item(Items.COINS_995, 125000) }),
+ FP_FLOOR_SIDE (13371, 8304, 77, 357, new Item[] { new Item(Items.TINDERBOX_590, 20), new Item(Items.COINS_995, 125000) }),
+ FP_FLOOR_CORNER (13371, 8304, 77, 357, new Item[] { new Item(Items.TINDERBOX_590, 20), new Item(Items.COINS_995, 125000) }),
+ FLAME_PIT (13337, 8304, 77, 357, new Item[] { new Item(Items.TINDERBOX_590, 20), new Item(Items.COINS_995, 125000) }),
+ ROCNAR_FLOOR_MID (13371, 8305, 83, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ ROCNAR_FLOOR_SIDE (13371, 8305, 83, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ ROCNAR_FLOOR_CORNER(13371, 8305, 83, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ ROCNAR (13373, 8305, 83, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ ROCNAR_FL (13338, 8305, 83, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ OAK_CAGE (13313, 8297, 65, 640, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 2) }),
+ OAK_CAGE_DOOR (13314, 8297, 65, 640, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 2) }),
+ OAK_STEEL_CAGE (13316, 8298, 70, 800, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 10) }),
+ OAK_STEEL_CAGE_DOOR(13317, 8298, 70, 800, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 10) }),
+ STEEL_CAGE_OU (13319, 8299, 75, 400, new Item[] { new Item(Items.STEEL_BAR_2353, 20) }),
+ STEEL_CAGE_DOOR (13320, 8299, 75, 400, new Item[] { new Item(Items.STEEL_BAR_2353, 20) }),
+ SPIKED_CAGE (13322, 8300, 80, 500, new Item[] { new Item(Items.STEEL_BAR_2353, 25) }),
+ SPIKED_CAGE_DOOR (13323, 8300, 80, 500, new Item[] { new Item(Items.STEEL_BAR_2353, 25) }),
+ BONE_CAGE (13325, 8301, 85, 603, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.BONES_526, 10) }),
+ BONE_CAGE_DOOR (13326, 8301, 85, 603, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.BONES_526, 10) }),
+ SKELETON_GUARD (13366, 8131, 70, 223, new Item[] { new Item(Items.COINS_995, 50000) }),
+ GUARD_DOG (13367, 8132, 74, 273, new Item[] { new Item(Items.COINS_995, 75000) }),
+ HOBGOBLIN (13368, 8133, 78, 316, new Item[] { new Item(Items.COINS_995, 100000) }),
+ BABY_RED_DRAGON (13372, 8134, 82, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ HUGE_SPIDER (13370, 8135, 86, 447, new Item[] { new Item(Items.COINS_995, 200000) }),
+ TROLL (13369, 8136, 90, 1000, new Item[] { new Item(Items.COINS_995, 1000000) }),
+ HELLHOUND (2715, 8137, 94, 2236, new Item[] { new Item(Items.COINS_995, 5000000) }),
+ OAK_LADDER (13328, 8306, 68, 300, new Item[] { new Item(Items.OAK_PLANK_8778, 5) }),
+ TEAK_LADDER (13329, 8307, 78, 450, new Item[] { new Item(Items.TEAK_PLANK_8780, 5) }),
+ MAHOGANY_LADDER (13330, 8308, 88, 700, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5) }),
+ DECORATIVE_BLOOD (13312, 8125, 72, 4, new Item[] { new Item(Items.RED_DYE_1763, 4) }),
+ DECORATIVE_PIPE (13311, 8126, 83, 120, new Item[] { new Item(Items.STEEL_BAR_2353, 6) }),
+ HANGING_SKELETON (13310, 8127, 94, 3, new Item[] { new Item(Items.SKULL_964, 2), new Item(Items.BONES_526, 6) }),
+ CANDLE (13342, 8128, 72, 243, new Item[] { new Item(Items.OAK_PLANK_8778, 4), new Item(Items.LIT_CANDLE_33, 4) }),
+ TORCH (13341, 8129, 84, 244, new Item[] { new Item(Items.OAK_PLANK_8778, 4), new Item(Items.LIT_TORCH_594, 4) }),
+ SKULL_TORCH (13343, 8130, 94, 246, new Item[] { new Item(Items.OAK_PLANK_8778, 4), new Item(Items.LIT_TORCH_594, 4), new Item(Items.SKULL_964, 4) }),
+
+ /**
+ * Dungeon corridor, junction, stairs & pit
+ */
+ OAK_DOOR_LEFT (13344, 8122, 74, 600, new Item[] { new Item(Items.OAK_PLANK_8778, 10) }),
+ OAK_DOOR_RIGHT (13345, 8122, 74, 600, new Item[] { new Item(Items.OAK_PLANK_8778, 10) }),
+ STEEL_DOOR_LEFT (13346, 8123, 84, 800, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 10) }),
+ STEEL_DOOR_RIGHT (13347, 8123, 84, 800, new Item[] { new Item(Items.OAK_PLANK_8778, 10), new Item(Items.STEEL_BAR_2353, 10) }),
+ MARBLE_DOOR_LEFT (13348, 8124, 94, 2000, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 4) }),
+ MARBLE_DOOR_RIGHT (13349, 8124, 94, 2000, new Item[] { new Item(Items.MARBLE_BLOCK_8786, 4) }),
+ SPIKE_TRAP (13356, 8143, 72, 223, new Item[] { new Item(Items.COINS_995, 50000) }),
+ MAN_TRAP (13357, 8144, 76, 273, new Item[] { new Item(Items.COINS_995, 75000) }),
+ TANGLE_TRAP (13358, 8145, 80, 316, new Item[] { new Item(Items.COINS_995, 100000) }),
+ MARBLE_TRAP (13359, 8146, 84, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ TELEPORT_TRAP (13360, 8147, 88, 447, new Item[] { new Item(Items.COINS_995, 200000) }),
+ PIT_DOG (39260, 18791, 70, 200, new Item[] { new Item(Items.COINS_995, 40000) }),
+ PIT_OGRE (39261, 18792, 73, 234, new Item[] { new Item(Items.COINS_995, 55000) }),
+ PIT_ROCK_PROTECTOR(39262, 18793, 79, 300, new Item[] { new Item(Items.COINS_995, 90000) }),
+ PIT_SCABARITE (39263, 18794, 84, 387, new Item[] { new Item(Items.COINS_995, 150000) }),
+ PIT_BLACK_DEMON (39264, 18795, 89, 547, new Item[] { new Item(Items.COINS_995, 300000) }),
+ PIT_IRON_DRAGON (39265, 18796, 97, 2738, new Item[] { new Item(Items.COINS_995, 7500000) }),
+
+ /**
+ * Treasure room
+ */
+ DEMON (13378, 8138, 75, 707, new Item[] { new Item(Items.COINS_995, 500000) }),
+ KALPHITE_SOLDIER (13374, 8139, 80, 866, new Item[] { new Item(Items.COINS_995, 750000) }),
+ TOK_XIL (13377, 8140, 85, 2236, new Item[] { new Item(Items.COINS_995, 5000000) }),
+ DAGANNOTH (13376, 8141, 90, 2738, new Item[] { new Item(Items.COINS_995, 7500000) }),
+ STEEL_DRAGON (13375, 8142, 95, 3162, new Item[] { new Item(Items.COINS_995, 1000000) }),
+ WOODEN_CRATE (13283, 8148, 75, 143, new Item[] { new Item(Items.PLANK_960, 5) }),
+ OAK_T_CHEST (13285, 8149, 79, 340, new Item[] { new Item(Items.OAK_PLANK_8778, 5), new Item(Items.STEEL_BAR_2353, 2) }),
+ TEAK_T_CHEST (13287, 8150, 83, 530, new Item[] { new Item(Items.TEAK_PLANK_8780, 5), new Item(Items.STEEL_BAR_2353, 4) }),
+ MGANY_T_CHEST (13289, 8151, 87, 1000, new Item[] { new Item(Items.MAHOGANY_PLANK_8782, 5), new Item(Items.GOLD_LEAF_8784) }),
+ MAGIC_CHEST (13291, 8152, 91, 1000, new Item[] { new Item(Items.MAGIC_STONE_8788) }),
+
+ /**
+ * Style related decoration.
+ */
+ BASIC_WOOD_WINDOW (13099, -1, 1, 0),
+ BASIC_STONE_WINDOW (13091, -1, 1, 0),
+ WHITEWASHED_STONE_WINDOW (13005, -1, 1, 0),
+ FREMENNIK_WINDOW (13112, -1, 1, 0),
+ TROPICAL_WOOD_WINDOW (10816, -1, 1, 0),
+ FANCY_STONE_WINDOW (13117, -1, 1, 0),
+ ;
+
+ /**
+ * The object id.
+ */
+ private final int objectId;
+
+ /**
+ * The item id for the interface.
+ */
+ private final int interfaceItem;
+
+ /**
+ * The level requirement.
+ */
+ private final int level;
+
+ /**
+ * The experience gained for building this decoration.
+ */
+ private final int experience;
+
+ /**
+ * The item required.
+ */
+ private final Item[] items;
+
+ /**
+ * The items that will be refunded.
+ */
+ private final Item[] refundItems;
+
+ /**
+ * The tools required.
+ */
+ private final int[] tools;
+
+ /**
+ * The object ids depending on styling.
+ */
+ private final int[] objectIds;
+
+ /**
+ * If this node should be invisible to user build options
+ */
+ private boolean invisibleNode;
+
+ /**
+ * Constructs a new object, no items, no tools, no refund items.
+ * @param objectId The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ */
+ Decoration(int objectId, int interfaceItem, int level, int experience) {
+ this(objectId, interfaceItem, level, experience, new int[] { Items.HAMMER_2347, Items.SAW_8794 }, new Item[] {}, new Item[] {});
+ }
+
+ /**
+ * Constructs a new object, no tools, no refund items.
+ * @param objectId The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param items The items required.
+ */
+ Decoration(int objectId, int interfaceItem, int level, int experience, Item[] items) {
+ this(objectId, interfaceItem, level, experience, new int[] { Items.HAMMER_2347, Items.SAW_8794 }, items, new Item[] {});
+ }
+
+ /**
+ * Constructs a new object, no refund items.
+ * @param objectId The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param tools The tools needed.
+ * @param items The items required.
+ */
+ Decoration(int objectId, int interfaceItem, int level, int experience, int[] tools, Item[] items) {
+ this(objectId, interfaceItem, level, experience, tools, items, new Item[] {});
+ }
+
+ /**
+ * Constructs a new object, no tools.
+ * @param objectId The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param items The items required.
+ * @param refundItems The items to be refunded when the item is removed.
+ */
+ Decoration(int objectId, int interfaceItem, int level, int experience, Item[] items, Item[] refundItems) {
+ this(objectId, interfaceItem, level, experience, new int[] { Items.HAMMER_2347, Items.SAW_8794 }, items, refundItems);
+ }
+
+ /**
+ * Constructs a new object.
+ * @param objectId The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param tools The tools needed.
+ * @param items The items required.
+ * @param refundItems The items to be refunded when the item is removed.
+ */
+ Decoration(int objectId, int interfaceItem, int level, int experience, int[] tools, Item[] items, Item[] refundItems) {
+ this.objectId = objectId;
+ this.objectIds = null;
+ this.interfaceItem = interfaceItem;
+ this.level = level;
+ this.experience = experience;
+ this.tools = tools;
+ this.items = items;
+ this.refundItems = refundItems;
+ }
+
+ /**
+ * Decoration
+ * @param objectId
+ * @param invisibleNode
+ */
+ Decoration(int objectId, boolean invisibleNode) {
+ this(objectId, -1, -1, -1);
+ this.invisibleNode = true;
+ }
+
+ /**
+ * Constructs a new object, no tools, no refund items.
+ * @param objectIds The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param items The items required.
+ */
+ Decoration(int[] objectIds, int interfaceItem, int level, int experience, Item[] items) {
+ this(objectIds, interfaceItem, level, experience, new int[] { Items.HAMMER_2347, Items.SAW_8794 }, items, new Item[] {});
+ }
+ /**
+ * Constructs a new object no refund items.
+ * @param objectIds The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param tools The tools needed.
+ * @param items The items required.
+ */
+ Decoration(int[] objectIds, int interfaceItem, int level, int experience, int[] tools, Item[] items) {
+ this(objectIds, interfaceItem, level, experience, tools, items, new Item[] {});
+ }
+
+ /**
+ * Constructs a new object.
+ * @param objectIds The object id.
+ * @param interfaceItem The item id for the building interface.
+ * @param level The level required.
+ * @param experience The experience gained.
+ * @param tools The tools needed.
+ * @param items The items required.
+ * @param refundItems The items to be refunded when the item is removed.
+ */
+ Decoration(int[] objectIds, int interfaceItem, int level, int experience, int[] tools, Item[] items, Item[] refundItems) {
+ this.objectId = objectIds[0];
+ this.objectIds = objectIds;
+ this.interfaceItem = interfaceItem;
+ this.level = level;
+ this.experience = experience;
+ this.tools = tools;
+ this.items = items;
+ this.refundItems = refundItems;
+ }
+
+ /**
+ * Gets the decoration on the given location.
+ * @param player The player.
+ * @return The decoration.
+ */
+ public static Decoration getDecoration(Player player, Scenery object) {
+ Location l = object.getLocation();
+ int z = l.getZ();
+ if (HouseManager.isInDungeon(player)) {
+ z = 3;
+ }
+ Room room = player.getHouseManager().getRooms()[z][l.getChunkX()][l.getChunkY()];
+ for (Hotspot h : room.getHotspots()) {
+ if (h.getCurrentX() == l.getChunkOffsetX() && h.getCurrentY() == l.getChunkOffsetY()) {
+ if (h.getDecorationIndex() != -1) {
+ Decoration deco = h.getHotspot().getDecorations()[h.getDecorationIndex()];
+ if (deco.getObjectId(player.getHouseManager().getStyle()) == object.getId()) {
+ return deco;
+ }
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Gets a decoration for the given object id
+ * @param objectId - the object id of the built object
+ * @return the decoration or null
+ */
+ public static Decoration forObjectId(int objectId) {
+ for (Decoration d : Decoration.values()) {
+ if (d.getObjectId() == objectId) {
+ return d;
+ }
+ }
+ return null;
+ }
+
+ public static Decoration forName(String name) {
+ for (Decoration d : Decoration.values()) {
+ if (d.name().equals(name)) {
+ return d;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Gets the amount of nails required for this hotspot.
+ * @return The amount of nails.
+ */
+ public int getNailAmount() {
+ for (Item item : items) {
+ if (item.getId() == 960) { //1 nail per normal plank required.
+ return item.getAmount();
+ }
+ }
+ return 0;
+ }
+
+ /**
+ * Gets the objectId.
+ * @param style The current housing style.
+ * @return The objectId.
+ */
+ public int getObjectId(HousingStyle style) {
+ if (objectIds != null) {
+ return objectIds[style.ordinal()];
+ }
+ return objectId;
+ }
+
+ /**
+ * Gets the objectId.
+ * @return The objectId.
+ */
+ public int getObjectId() {
+ return objectId;
+ }
+
+ /**
+ * Gets the level.
+ * @return The level.
+ */
+ public int getLevel() {
+ return level;
+ }
+
+ /**
+ * Gets the experience.
+ * @return The experience.
+ */
+ public int getExperience() {
+ return experience;
+ }
+
+ /**
+ * Gets the items.
+ * @return The items.
+ */
+ public Item[] getItems() {
+ return items;
+ }
+
+ /**
+ * Gets the refund items.
+ * @return The refund items.
+ */
+ public Item[] getRefundItems() {
+ return refundItems;
+ }
+
+ /**
+ * Gets the tools.
+ * @return The tools.
+ */
+ public int[] getTools() {
+ return tools;
+ }
+
+ /**
+ * Gets the interfaceItem.
+ * @return the interfaceItem
+ */
+ public int getInterfaceItem() {
+ return interfaceItem;
+ }
+
+ /**
+ * Gets the objectIds value.
+ * @return The objectIds.
+ */
+ public int[] getObjectIds() {
+ return objectIds;
+ }
+
+ /**
+ * If this node should be invisible to user build options
+ * @return true if so.
+ */
+ public boolean isInvisibleNode() {
+ return invisibleNode;
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/EstateAgentDialogue.kt b/Server/src/main/content/global/skill/construction/EstateAgentDialogue.kt
similarity index 95%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/EstateAgentDialogue.kt
rename to Server/src/main/content/global/skill/construction/EstateAgentDialogue.kt
index c774de8be..efba1ad00 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/EstateAgentDialogue.kt
+++ b/Server/src/main/content/global/skill/construction/EstateAgentDialogue.kt
@@ -1,20 +1,15 @@
-package rs09.game.node.entity.skill.construction
+package content.global.skill.construction
-import core.game.content.dialogue.DialoguePlugin
-import core.game.content.dialogue.FacialExpression
-import core.game.content.global.Skillcape
import core.game.node.entity.npc.NPC
import core.game.node.entity.player.Player
import core.game.node.entity.player.link.diary.DiaryType
import core.game.node.entity.skill.Skills
-import core.game.node.entity.skill.construction.HouseLocation
-import core.game.node.entity.skill.construction.HousingStyle
import core.game.node.item.Item
import core.plugin.Initializable
import org.rs09.consts.Items
-import rs09.game.world.GameWorld.settings
-import rs09.tools.END_DIALOGUE
-import rs09.tools.START_DIALOGUE
+import core.game.world.GameWorld.settings
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
/**
* Represents the estate agent dialogue.
@@ -22,7 +17,7 @@ import rs09.tools.START_DIALOGUE
* @author Woah
*/
@Initializable
-class EstateAgentDialogue : DialoguePlugin {
+class EstateAgentDialogue : core.game.dialogue.DialoguePlugin {
/**
* Constructs a new `EstateAgentDialogue` `Object`.
@@ -40,7 +35,7 @@ class EstateAgentDialogue : DialoguePlugin {
*/
constructor(player: Player?) : super(player)
- override fun newInstance(player: Player): DialoguePlugin {
+ override fun newInstance(player: Player): core.game.dialogue.DialoguePlugin {
return EstateAgentDialogue(player)
}
@@ -88,7 +83,7 @@ class EstateAgentDialogue : DialoguePlugin {
}
5 -> {
player("Tell me about that skillcape you're wearing!")
- stage = if (Skillcape.isMaster(player, Skills.CONSTRUCTION)) 102 else 100
+ stage = if (core.game.global.Skillcape.isMaster(player, Skills.CONSTRUCTION)) 102 else 100
}
}
@@ -136,7 +131,7 @@ class EstateAgentDialogue : DialoguePlugin {
7 -> {
if (player.inventory.contains(995, 1000)) {
- player.inventory.remove(Item(995, 1000))
+ player.inventory.remove(Item(Items.COINS_995, 1000))
player.houseManager.createNewHouseAt(HouseLocation.RIMMINGTON)
npc(
"Thank you. Go through the Rimmington house portal",
@@ -344,7 +339,7 @@ class EstateAgentDialogue : DialoguePlugin {
102 -> {
interpreter.sendDialogues(
npc,
- FacialExpression.JOLLY,
+ core.game.dialogue.FacialExpression.JOLLY,
"I see you have recently achieved 99 construction.",
"Would you like to buy a cape for 99,0000 gp?"
)
@@ -356,7 +351,7 @@ class EstateAgentDialogue : DialoguePlugin {
}
104 -> when (buttonId) {
1 -> {
- if (Skillcape.purchase(player, Skills.CONSTRUCTION)) {
+ if (core.game.global.Skillcape.purchase(player, Skills.CONSTRUCTION)) {
npc("Here you go lad, enjoy!")
}
stage = END_DIALOGUE
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/Hotspot.kt b/Server/src/main/content/global/skill/construction/Hotspot.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/Hotspot.kt
rename to Server/src/main/content/global/skill/construction/Hotspot.kt
index e25429a02..dd245e782 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/Hotspot.kt
+++ b/Server/src/main/content/global/skill/construction/Hotspot.kt
@@ -1,6 +1,4 @@
-package rs09.game.node.entity.skill.construction
-
-import core.game.node.entity.skill.construction.BuildHotspot
+package content.global.skill.construction
/**
* Represents a hotspot.
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/HouseLocation.java b/Server/src/main/content/global/skill/construction/HouseLocation.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/construction/HouseLocation.java
rename to Server/src/main/content/global/skill/construction/HouseLocation.java
index 4f1302015..ac55b0001 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/HouseLocation.java
+++ b/Server/src/main/content/global/skill/construction/HouseLocation.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.entity.skill.Skills;
@@ -79,7 +79,7 @@ public enum HouseLocation {
}
if (player.getSkills().hasLevel(Skills.CONSTRUCTION, hl.levelRequirement)) {
if (player.getInventory().contains(995, hl.cost)) {
- player.getInventory().remove(new Item(995, hl.cost));
+ player.getInventory().remove(new Item(Items.COINS_995, hl.cost));
player.getHouseManager().setLocation(hl);
player.sendMessage(" You have changed your house location to " + hl.name() + "!");
} else {
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java b/Server/src/main/content/global/skill/construction/HouseManager.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java
rename to Server/src/main/content/global/skill/construction/HouseManager.java
index a5bf99e30..65ee6c3d9 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/HouseManager.java
+++ b/Server/src/main/content/global/skill/construction/HouseManager.java
@@ -1,14 +1,8 @@
-package core.game.node.entity.skill.construction;
-
-
-//import org.arios.game.content.global.DeadmanTimedAction;
-//import org.arios.game.node.entity.player.info.login.SavingModule;
-
-import api.regionspec.RegionSpecification;
-import api.regionspec.contracts.FillChunkContract;
-import core.game.content.dialogue.FacialExpression;
+package content.global.skill.construction;
+import core.api.regionspec.RegionSpecification;
+import core.api.regionspec.contracts.FillChunkContract;
+import core.game.dialogue.FacialExpression;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.node.entity.skill.Skills;
import core.game.node.scenery.Scenery;
import core.game.system.task.Pulse;
@@ -17,19 +11,20 @@ import core.game.world.map.build.DynamicRegion;
import core.game.world.map.zone.ZoneBorders;
import core.game.world.map.zone.ZoneBuilder;
import core.game.world.update.flag.context.Animation;
+import core.tools.Log;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
-import rs09.game.node.entity.skill.construction.Hotspot;
-import rs09.game.system.SystemLogger;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
+import org.rs09.consts.Sounds;
import java.awt.*;
-import java.nio.ByteBuffer;
-import static api.regionspec.RegionSpecificationKt.fillWith;
-import static api.regionspec.RegionSpecificationKt.using;
+import static core.api.ContentAPIKt.*;
+import static core.api.regionspec.RegionSpecificationKt.fillWith;
+import static core.api.regionspec.RegionSpecificationKt.using;
+
/**
* Manages the player's house.
@@ -61,7 +56,7 @@ public final class HouseManager {
/**
* The house zone.
*/
- private final HouseZone zone = new HouseZone(this);
+ private HouseZone zone = new HouseZone(this);
/**
* The player's house rooms.
@@ -103,39 +98,12 @@ public final class HouseManager {
}
- public void save(ByteBuffer buffer) {
- buffer.put((byte) location.ordinal());
- buffer.put((byte) style.ordinal());
- if (hasServant()) {
- servant.save(buffer);
- } else {
- buffer.put((byte) -1);
- }
- for (int z = 0; z < 4; z++) {
- for (int x = 0; x < 8; x++) {
- for (int y = 0; y < 8; y++) {
- Room room = rooms[z][x][y];
- if (room != null) {
- buffer.put((byte) z).put((byte) x).put((byte) y);
- buffer.put((byte) room.getProperties().ordinal());
- buffer.put((byte) room.getRotation().toInteger());
- for (int i = 0; i < room.getHotspots().length; i++) {
- if (room.getHotspots()[i].getDecorationIndex() > -1) {
- buffer.put((byte) i);
- buffer.put((byte) room.getHotspots()[i].getDecorationIndex());
- }
- }
- buffer.put((byte) -1);
- }
- }
- }
- }
- buffer.put((byte) -1);//Eof
- }
-
public void parse(JSONObject data){
location = HouseLocation.values()[Integer.parseInt( data.get("location").toString())];
style = HousingStyle.values()[Integer.parseInt( data.get("style").toString())];
+ if (data.get("locked") != null) {
+ locked = true;
+ }
Object servRaw = data.get("servant");
if(servRaw != null){
servant = Servant.parse((JSONObject) servRaw);
@@ -159,43 +127,40 @@ public final class HouseManager {
}
}
-
- public void parse(ByteBuffer buffer) {
- location = HouseLocation.values()[buffer.get() & 0xFF];
- style = HousingStyle.values()[buffer.get() & 0xFF];
- servant = Servant.parse(buffer);
- int z = 0;
- while ((z = buffer.get()) != -1) {
- if (z == 3) {
- hasDungeon = true;
- }
- int x = buffer.get();
- int y = buffer.get();
- Room room = rooms[z][x][y] = new Room(RoomProperties.values()[buffer.get() & 0xFF]);
- room.configure(style);
- room.setRotation(Direction.get(buffer.get() & 0xFF));
- int spot = 0;
- while ((spot = buffer.get()) != -1) {
- room.getHotspots()[spot].setDecorationIndex(buffer.get() & 0xFF);
- }
- }
- }
-
/**
- * Enter's the player's house.
+ * Prepares for entering the player's house.
* @param player
* @param buildingMode
*/
- public void enter(final Player player, boolean buildingMode) {
+ public void preEnter(final Player player, boolean buildingMode) {
if (this.buildingMode != buildingMode || !isLoaded()) {
this.buildingMode = buildingMode;
construct();
}
player.setAttribute("poh_entry", HouseManager.this);
+ player.setAttribute("/save:original-loc", location.getExitLocation());
player.lock(1);
- player.sendMessage("House location: " + houseRegion.getBaseLocation() + ", entry: " + getEnterLocation());
+ player.debug("House location: " + houseRegion.getBaseLocation() + ", entry: " + getEnterLocation());
+ }
+
+ /**
+ * Enters the player's house and plays the ding sound.
+ * @param player
+ * @param buildingMode
+ */
+ public void enter(final Player player, boolean buildingMode) {
+ preEnter(player, buildingMode);
player.getProperties().setTeleportLocation(getEnterLocation());
openLoadInterface(player);
+ postEnter(player, buildingMode);
+ }
+
+ /**
+ * Performs post-house-enter administration.
+ * @param player
+ * @param buildingMode
+ */
+ public void postEnter(final Player player, boolean buildingMode) {
checkForAndSpawnServant(player);
updateVarbits(player, buildingMode);
unlockMusicTrack(player);
@@ -203,7 +168,7 @@ public final class HouseManager {
private void openLoadInterface(Player player) {
player.getInterfaceManager().openComponent(399);
- player.getAudioManager().send(new Audio(984));
+ playAudio(player, Sounds.POH_TELEPORT_984);
submitCloseLoadInterfacePulse(player);
}
@@ -225,7 +190,7 @@ public final class HouseManager {
public boolean pulse() {
spawnServant();
if (servant.isGreet()){
- player.getDialogueInterpreter().sendDialogues(servant.getType().getId(), servant.getType().getId() == 4243 ? FacialExpression.HALF_GUILTY : null, "Welcome.");
+ player.getDialogueInterpreter().sendDialogues(servant.getType().getId(), servant.getType().getId() == 4243 ? FacialExpression.HAPPY : null, "Welcome.");
}
return true;
}
@@ -233,8 +198,8 @@ public final class HouseManager {
}
private void updateVarbits(Player player, boolean build) {
- player.varpManager.get(261).setVarbit(0, build ? 1 : 0);
- player.varpManager.get(262).setVarbit(0, getRoomAmount());
+ setVarp(player, 261, build ? 1 : 0);
+ setVarp(player, 262, getRoomAmount());
}
private void unlockMusicTrack(Player player) {
@@ -242,7 +207,7 @@ public final class HouseManager {
}
/**
- * Leaves this house.
+ * Leaves this house through the portal.
* @param player The player leaving.
*/
public static void leave(Player player) {
@@ -252,7 +217,7 @@ public final class HouseManager {
}
if (house.isInHouse(player)) {
player.animate(Animation.RESET);
- player.setLocation(house.location.getExitLocation());
+ player.getProperties().setTeleportLocation(house.location.getExitLocation());
}
}
@@ -263,15 +228,16 @@ public final class HouseManager {
*/
public void toggleBuildingMode(Player player, boolean enable) {
if (!isInHouse(player)) {
- player.getPacketDispatch().sendMessage("Building mode really only helps if you're in a house.");
+ //player.getPacketDispatch().sendMessage("Building mode really only helps if you're in a house.");
+ setLocked(enable);
+ player.sendMessage("Your house is now "+(player.getHouseManager().isLocked() ? "locked." : "unlocked." ));
return;
}
if (buildingMode != enable) {
if (enable) {
expelGuests(player);
}
- buildingMode = enable;
- reload(player, enable);
+ enter(player, enable);
player.getPacketDispatch().sendMessage("Building mode is now " + (buildingMode ? "on." : "off."));
}
}
@@ -280,6 +246,7 @@ public final class HouseManager {
* Reloads the house.
* @param player The player.
* @param buildingMode If building mode should be enabled.
+ * NOTE: I think we should avoid this method, it might be causing some issues. It's actually really suspicious...
*/
public void reload(Player player, boolean buildingMode) {
int diffX = player.getLocation().getLocalX();
@@ -323,7 +290,7 @@ public final class HouseManager {
*/
public Location getEnterLocation() {
if (houseRegion == null) {
- SystemLogger.logErr("House wasn't constructed yet!");
+ log(this.getClass(), Log.ERR, "House wasn't constructed yet!");
return null;
}
for (int x = 0; x < 8; x++) {
@@ -396,10 +363,12 @@ public final class HouseManager {
houseRegion = getPreparedRegion();
configureRoofs();
prepareHouseChunks(style, houseRegion, buildingMode, rooms);
+ houseRegion.flagActive();
if (hasDungeon()) {
dungeonRegion = getPreparedRegion();
prepareDungeonChunks(style, dungeonRegion, houseRegion, buildingMode, rooms[3]);
+ dungeonRegion.flagActive();
}
ZoneBuilder.configure(zone);
@@ -411,6 +380,7 @@ public final class HouseManager {
DynamicRegion region = new DynamicRegion(-1, borders.getSouthWestX() >> 6, borders.getSouthWestY() >> 6);
region.setBorders(borders);
region.setUpdateAllPlanes(true);
+ region.setBuild(true);
RegionManager.addRegion(region.getId(), region);
return region;
}
@@ -428,8 +398,7 @@ public final class HouseManager {
@Override
public BuildRegionChunk getChunk(int x, int y, int plane, @NotNull DynamicRegion dyn) {
- BuildRegionChunk chunk = rooms[plane][x][y].getChunk().copy(dyn.getPlanes()[plane]);
- return chunk;
+ return rooms[plane][x][y].getChunk().copy(dyn.getPlanes()[plane]);
}
@Override
@@ -449,15 +418,10 @@ public final class HouseManager {
using(target),
fillWith(defaultChunk)
.from(from)
- .onPlanes(0)
- .onCondition((destX, destY, plane) -> rooms[plane][destX][destY] == null),
- fillWith((RegionChunk) null)
- .from(from)
- .onPlanes(1,2)
- .onCondition((destX, destY, plane) -> rooms[plane][destX][destY] == null),
+ .onPlanes(0),
fillWith(defaultSkyChunk)
.from(from)
- .onPlanes(3),
+ .onPlanes(1,2,3),
loadRooms
.from(from)
.onPlanes(0,1,2)
@@ -549,6 +513,7 @@ public final class HouseManager {
break;
}
case SOUTH: {
+ chunkX = 7 - chunkX;
chunkY = 7 - chunkY;
break;
}
@@ -743,8 +708,11 @@ public final class HouseManager {
* Checks if the house region was constructed and active.
* @return {@code True} if an active region for the house exists.
*/
+ //public boolean isLoaded() {
+ // return (houseRegion != null) || (dungeonRegion != null);
+ //}
public boolean isLoaded() {
- return (houseRegion != null) || (dungeonRegion != null);
+ return (houseRegion != null && houseRegion.isActive()) || (dungeonRegion != null && dungeonRegion.isActive());
}
/**
@@ -889,4 +857,4 @@ public final class HouseManager {
public HouseZone getZone() {
return zone;
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/skill/construction/HouseZone.java b/Server/src/main/content/global/skill/construction/HouseZone.java
new file mode 100644
index 000000000..33f875362
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/HouseZone.java
@@ -0,0 +1,126 @@
+package content.global.skill.construction;
+
+
+import core.game.node.entity.Entity;
+import core.game.node.entity.player.Player;
+import core.game.world.map.build.DynamicRegion;
+import core.game.world.map.zone.MapZone;
+import core.game.world.map.RegionManager;
+import core.game.world.map.Region;
+import core.game.system.task.Pulse;
+import core.game.world.map.zone.ZoneRestriction;
+
+import static core.api.ContentAPIKt.*;
+
+/**
+ * Handles the player owned house zone.
+ *
+ * @author Emperor
+ */
+public final class HouseZone extends MapZone {
+
+ /**
+ * The house manager.
+ */
+ private HouseManager house;
+
+ /**
+ * The previous house region id.
+ */
+ private int previousRegion = -1;
+
+ /**
+ * The previous dungeon region id.
+ */
+ private int previousDungeon = -1;
+
+ /**
+ * Constructs the house zone object.
+ */
+ public HouseZone(HouseManager house) {
+ super("poh-zone" + house, true);
+ this.house = house;
+ }
+
+ @Override
+ public void configure() {
+ unregisterOldRegions();
+ registerRegion(house.getHouseRegion().getId());
+ if (house.getDungeonRegion() != null) {
+ registerRegion(house.getDungeonRegion().getId());
+ }
+ }
+
+ private void unregisterOldRegions() {
+ if (previousRegion != -1) {
+ unregisterRegion(previousRegion);
+ }
+ if (previousDungeon != -1) {
+ unregisterRegion(previousDungeon);
+ }
+ }
+
+ @Override
+ public boolean enter(Entity e) {
+ if (e instanceof Player) {
+ Player pl = (Player) e;
+ if (house == pl.getHouseManager()) {
+ previousRegion = house.getHouseRegion().getId();
+ if (house.getDungeonRegion() != null)
+ previousDungeon = house.getDungeonRegion().getId();
+ }
+ registerLogoutListener(pl, "houselogout", (p) -> {
+ p.setLocation(house.getLocation().getExitLocation());
+ return kotlin.Unit.INSTANCE;
+ });
+ }
+ return super.enter(e);
+ }
+
+ @Override
+ public boolean death(Entity e, Entity killer) {
+ if (e instanceof Player) {
+ Player p = (Player) e;
+ HouseManager.leave(p);
+ return true;
+ }
+ return super.death(e, killer);
+ }
+
+ @Override
+ public boolean leave(Entity e, boolean logout) {
+ if (e instanceof Player) {
+ Player p = (Player) e;
+ // The below tears down the house if the owner was the one who left
+ //if (house == p.getHouseManager()) {
+ // Snowscape: tear down the house when the last person leaves, allowing guests to stay in the house without the owner.
+ if (!house.getHouseRegion().isViewed() && (!house.hasDungeon() || !house.getDungeonRegion().isViewed())) {
+ house.expelGuests(p);
+ int toRemove = previousRegion;
+ int dungRemove = previousDungeon;
+ submitWorldPulse(new Pulse(2) {
+ public boolean pulse() {
+ Region r = RegionManager.forId(toRemove);
+ Region dr = dungRemove != -1 ? RegionManager.forId(dungRemove) : null;
+ RegionManager.removeRegion(toRemove);
+ unregisterRegion(toRemove);
+ r.setActive(false);
+ if (dungRemove != -1) {
+ RegionManager.removeRegion(dungRemove);
+ unregisterRegion(dungRemove);
+ dr.setActive(false);
+ }
+ return true;
+ }
+ });
+ }
+ // Clear logout listener and original-loc (if appropriate)
+ clearLogoutListener(p, "houselogout");
+ if (!getAttribute(p, "kidnapped-by-random", false)) {
+ removeAttribute(p, "/save:original-loc");
+ }
+ return true;
+ }
+ return true;
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/HousingStyle.java b/Server/src/main/content/global/skill/construction/HousingStyle.java
similarity index 98%
rename from Server/src/main/java/core/game/node/entity/skill/construction/HousingStyle.java
rename to Server/src/main/content/global/skill/construction/HousingStyle.java
index f945c3c5c..e4d59b90d 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/HousingStyle.java
+++ b/Server/src/main/content/global/skill/construction/HousingStyle.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.entity.player.Player;
import core.game.node.entity.skill.Skills;
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/NailType.java b/Server/src/main/content/global/skill/construction/NailType.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/construction/NailType.java
rename to Server/src/main/content/global/skill/construction/NailType.java
index c2dd0e661..22ec10027 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/NailType.java
+++ b/Server/src/main/content/global/skill/construction/NailType.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/content/global/skill/construction/PortalOptionPlugin.java b/Server/src/main/content/global/skill/construction/PortalOptionPlugin.java
new file mode 100644
index 000000000..23d9621a2
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/PortalOptionPlugin.java
@@ -0,0 +1,284 @@
+package content.global.skill.construction;
+
+
+import static core.api.ContentAPIKt.*;
+import core.cache.def.impl.SceneryDefinition;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
+import core.game.interaction.OptionHandler;
+import core.game.node.Node;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.skill.Skills;
+import core.game.node.scenery.Scenery;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.plugin.PluginManifest;
+import core.plugin.PluginType;
+import kotlin.Unit;
+import core.game.world.repository.Repository;
+import core.plugin.ClassScanner;
+
+/**
+ * Handles the house portal options.
+ * @author Emperor
+ *
+ */
+@Initializable
+public final class PortalOptionPlugin extends OptionHandler {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ for (HouseLocation hl : HouseLocation.values()) {
+ SceneryDefinition.forId(hl.getPortalId()).getHandlers().put("option:enter", this);
+ }
+ SceneryDefinition.forId(13405).getHandlers().put("option:lock", this);
+ SceneryDefinition.forId(13405).getHandlers().put("option:enter", this);
+ ClassScanner.definePlugin(new PortalDialogue());
+ ClassScanner.definePlugin(new PortalExitDialogue());
+ return this;
+ }
+
+ @Override
+ public boolean handle(Player player, Node node, String option) {
+ Scenery object = node.asScenery();
+ if (object.getId() == 13405 && option.equals("enter")) {
+ player.getDialogueInterpreter().open("houseExitDialogue");
+ //HouseManager.leave(player);
+ return true;
+ }
+ if (option.equals("lock")) {
+ if (player.getHouseManager().isInHouse(player)) {
+ player.getHouseManager().setLocked(player.getHouseManager().isLocked() ? false : true);
+ player.sendMessage("Your house is now "+(player.getHouseManager().isLocked() ? "locked." : "unlocked." ));
+ return true;
+ }
+ player.sendMessage("This is not your house.");
+ return true;
+ }
+ player.setAttribute("con:portal", object.getId());
+ player.getDialogueInterpreter().open("con:portal");
+ return true;
+ }
+
+ /**
+ * Handles the portal dialogue.
+ * @author Emperor
+ */
+ @PluginManifest(type= PluginType.DIALOGUE)
+ private class PortalDialogue extends DialoguePlugin {
+
+ /**
+ * Constructs a new {@code PortalDialogue} {@code Object}
+ */
+ public PortalDialogue() {
+
+ }
+
+ /**
+ * Constructs a new {@code PortalDialogue} {@code Object}
+ * @param player The player.
+ */
+ public PortalDialogue(Player player) {
+ super(player);
+ }
+
+ @Override
+ public DialoguePlugin newInstance(Player player) {
+ return new PortalDialogue(player);
+ }
+
+ @Override
+ public boolean open(Object... args) {
+
+
+
+
+ options("Go to your house", "Go to your house (building mode)", "Go to a friend's house", "Never mind");
+ stage = 1;
+
+
+ return true;
+ }
+
+ @Override
+ public boolean handle(int interfaceId, int buttonId) {
+ end();
+ switch (stage) {
+ case 1:
+ switch (buttonId) {
+ case 1:
+ case 2:
+ //If the player does not have a house
+ if (!player.getHouseManager().hasHouse()) {
+ player.getPacketDispatch().sendMessage(" You don't have a house, talk to an estate agent to purchase a house.");
+ break;
+ }
+ //If the Player has a house, but does not have their house moved to the portal they are interacting with
+ /* Snowscape: allow entering house from anywhere
+ if (player.getHouseManager().getLocation().getPortalId() != player.getAttribute("con:portal", -1)) {
+ player.getPacketDispatch().sendMessage(" Your house is in " + player.getHouseManager().getLocation().getName() + ".");
+ player.sendMessage(" Speak with an estate agent to change your house location.");
+ break;
+ }
+ */
+ player.removeAttribute("lasthouseentered");
+ player.getHouseManager().enter(player, buttonId == 2);
+ break;
+ case 3:
+ if(player.getIronmanManager().isIronman()){
+ end();
+ sendMessage(player, "You can't do that as an ironman.");
+ return true;
+ }
+ sendInputDialogue(player, false, "Enter friend's name:", (value) -> {
+ Player p = Repository.getPlayerByName((String) value);
+ if (p == null || !p.isActive()) {
+ player.getPacketDispatch().sendMessage("This player is not online.");
+ return Unit.INSTANCE;
+ }
+ if (p.getUsername().equals(player.getUsername())) {
+ player.getPacketDispatch().sendMessage("You aren't a friend of yourself!");
+ return Unit.INSTANCE;
+ }
+ /* Snowscape: allow entering house if host is not home.
+ if (!p.getHouseManager().isLoaded()) {
+ player.getPacketDispatch().sendMessage("This player is not at home right now.");
+ return Unit.INSTANCE;
+ }
+ */
+ if (p.getHouseManager().isBuildingMode()) {
+ player.getPacketDispatch().sendMessage("This player is in building mode.");
+ return Unit.INSTANCE;
+ }
+ if (p.getHouseManager().isLocked()) {
+ player.getPacketDispatch().sendMessage("The other player has locked their house.");
+ return Unit.INSTANCE;
+ }
+ player.setAttribute("/save:lasthouseentered", (String) value);
+ p.setAttribute("poh_owner", (String) value);
+ p.getHouseManager().enter(player, false);
+ return Unit.INSTANCE;
+ });
+ break;
+ }
+ break;
+ }
+ return true;
+ }
+
+ @Override
+ public int[] getIds() {
+ return new int[] { DialogueInterpreter.getDialogueKey("con:portal") };
+ }
+ }
+
+
+
+ /**
+ * Snowscape: select destination via dialogue when leaving the house
+ *
+ */
+ @PluginManifest(type= PluginType.DIALOGUE)
+ private class PortalExitDialogue extends DialoguePlugin {
+
+ /**
+ * Constructs a new {@code PortalExitDialogue} {@code Object}
+ */
+ public PortalExitDialogue() {
+
+ }
+
+ /**
+ * Constructs a new {@code PortalExitDialogue} {@code Object}
+ * @param player The player.
+ */
+ public PortalExitDialogue(Player player) {
+ super(player);
+ }
+
+ @Override
+ public DialoguePlugin newInstance(Player player) {
+ return new PortalExitDialogue(player);
+ }
+
+ @Override
+ public boolean open(Object... args) {
+ options("Leave house (home location)", "Rimmington", "Taverly", "Pollnivneach", "Next Page");
+ stage = 1;
+ return true;
+ }
+
+ @Override
+ public boolean handle(int interfaceId, int buttonId) {
+ switch (stage) {
+ case 1:
+ switch (buttonId) {
+ case 1:
+ HouseManager.leave(player);
+ end();
+ break;
+ case 2:
+ attemptHouseExit(HouseLocation.RIMMINGTON);
+ end();
+ break;
+ case 3:
+ attemptHouseExit(HouseLocation.TAVERLY);
+ end();
+ break;
+ case 4:
+ attemptHouseExit(HouseLocation.POLLNIVNEACH);
+ end();
+ break;
+ case 5:
+ options("Rellekka", "Brimhaven","Yanille", "Cancel");
+ stage = 2;
+ break;
+ }
+ break;
+ case 2:
+ switch (buttonId) {
+ case 1:
+ attemptHouseExit(HouseLocation.RELLEKKA);
+ end();
+ break;
+ case 2:
+ attemptHouseExit(HouseLocation.BRIMHAVEN);
+ end();
+ break;
+ case 3:
+ attemptHouseExit(HouseLocation.YANILLE);
+ end();
+ break;
+ case 4:
+ end();
+ break;
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public int[] getIds() {
+ return new int[] { DialogueInterpreter.getDialogueKey("houseExitDialogue") };
+ }
+
+ public void attemptHouseExit(HouseLocation targetLocation){
+ int level = 0;
+ String message = null;
+ if (player.getHouseManager().isInHouse(player)) {
+ level = getStatLevel(player, Skills.CONSTRUCTION);
+ message = "You need ";
+ } else {
+ level = getStatLevel(Repository.getPlayerByName(player.getAttribute("lasthouseentered", null)), Skills.CONSTRUCTION);
+ message = "The house owner needs ";
+ }
+
+ if (targetLocation.getLevelRequirement() <= level){
+ //player.animate(Animation.RESET);
+ player.getProperties().setTeleportLocation(targetLocation.getExitLocation());
+ } else {
+ player.sendMessage(message + targetLocation.getLevelRequirement() + " Construction to for you to teleport to " + targetLocation.getName() + ".");
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/RemovalDialogue.java b/Server/src/main/content/global/skill/construction/RemovalDialogue.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/construction/RemovalDialogue.java
rename to Server/src/main/content/global/skill/construction/RemovalDialogue.java
index 727e908b7..5b2a9f869 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/RemovalDialogue.java
+++ b/Server/src/main/content/global/skill/construction/RemovalDialogue.java
@@ -1,11 +1,10 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.node.entity.player.Player;
import core.plugin.Initializable;
-import rs09.game.node.entity.skill.construction.Hotspot;
/**
* Removal dialogue for room & decorations in construction
diff --git a/Server/src/main/content/global/skill/construction/Room.java b/Server/src/main/content/global/skill/construction/Room.java
new file mode 100644
index 000000000..883a4776c
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/Room.java
@@ -0,0 +1,426 @@
+package content.global.skill.construction;
+
+
+import core.game.node.entity.player.Player;
+import core.game.node.scenery.Constructed;
+import core.game.node.scenery.Scenery;
+import core.game.node.scenery.SceneryBuilder;
+import core.game.world.map.*;
+import core.tools.Log;
+
+import static core.api.ContentAPIKt.log;
+
+/**
+ * Represents a room.
+ * @author Emperor
+ *
+ */
+public final class Room {
+
+ /**
+ * The default room type.
+ */
+ public static final int CHAMBER = 0x0;
+
+ /**
+ * The rooftop room type.
+ */
+ public static final int ROOF = 0x1;
+
+ /**
+ * The dungeon room type.
+ */
+ public static final int DUNGEON = 0x2;
+
+ /**
+ * The dungeon room type.
+ */
+ public static final int LAND = 0x4;
+
+ /**
+ * The room properties.
+ */
+ private RoomProperties properties;
+
+ /**
+ * The region chunk.
+ */
+ private RegionChunk chunk;
+
+ /**
+ * The hotspots.
+ */
+ private Hotspot[] hotspots;
+
+ /**
+ * The current rotation of the room.
+ */
+ private Direction rotation = Direction.NORTH;
+
+ /**
+ * Constructs a new {@code Room} {@code Object}.
+ * @param properties The room properties.
+ */
+ public Room(RoomProperties properties) {
+ this.properties = properties;
+ }
+
+ /**
+ * Creates a new room.
+ * @param player The player.
+ * @param properties The room properties.
+ * @return The room.
+ */
+ public static Room create(Player player, RoomProperties properties) {
+ Room room = new Room(properties);
+ room.configure(player.getHouseManager().getStyle());
+ return room;
+ }
+
+ /**
+ * Configures the room.
+ */
+ public void configure(HousingStyle style) {
+ this.hotspots = new Hotspot[properties.getHotspots().length];
+ for (int i = 0; i < hotspots.length; i++) {
+ hotspots[i] = properties.getHotspots()[i].copy();
+ }
+ decorate(style);
+ }
+
+ /**
+ * Redecorates the room.
+ * @param style The house style.
+ */
+ public void decorate(HousingStyle style) {
+ Region region = RegionManager.forId(style.getRegionId());
+ Region.load(region, true);
+ chunk = region.getPlanes()[style.getPlane()].getRegionChunk(properties.getChunkX(), properties.getChunkY());
+ }
+
+ /**
+ * Gets the hotspot object for the given hotspot type.
+ * @param hotspot The hotspot type.
+ * @return The hotspot.
+ */
+ public Hotspot getHotspot(BuildHotspot hotspot) {
+ for (Hotspot h : hotspots) {
+ if (h.getHotspot() == hotspot) {
+ return h;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Checks if the building hotspot has been built.
+ * @param hotspot The building hotspot.
+ * @return {@code True} if so.
+ */
+ public boolean isBuilt(BuildHotspot hotspot) {
+ Hotspot h = getHotspot(hotspot);
+ return h != null && h.getDecorationIndex() > -1;
+ }
+
+ /**
+ * Loads all the decorations.
+ * @param housePlane The plane.
+ * @param chunk The chunk used in the dynamic region.
+ */
+ public void loadDecorations(int housePlane, BuildRegionChunk chunk, HouseManager house) {
+ for (int i = 0; i < hotspots.length; i++) {
+ Hotspot spot = hotspots[i];
+ int x = spot.getChunkX();
+ int y = spot.getChunkY();
+ if (spot.getHotspot() == null) {
+ continue;
+ }
+ int index = chunk.getIndex(x, y, spot.getHotspot().getObjectId(house.getStyle()));
+ Scenery[][] objects = chunk.getObjects(index);
+ Scenery object = objects[x][y];
+ if (object != null && object.getId() == spot.getHotspot().getObjectId(house.getStyle())) {
+ if (spot.getDecorationIndex() > -1 && spot.getDecorationIndex() < spot.getHotspot().getDecorations().length) {
+ int id = spot.getHotspot().getDecorations()[spot.getDecorationIndex()].getObjectId(house.getStyle());
+ if (spot.getHotspot().getType() == BuildHotspotType.CREST) {
+ id += house.getCrest().ordinal();
+ }
+ SceneryBuilder.replace(object, object.transform(id, object.getRotation(), chunk.getCurrentBase().transform(x, y, 0)));
+ }
+ else if (object.getId() == BuildHotspot.WINDOW.getObjectId(house.getStyle()) || (!house.isBuildingMode() && object.getId() == BuildHotspot.CHAPEL_WINDOW.getObjectId(house.getStyle()))) {
+ chunk.add(object.transform(house.getStyle().getWindowStyle().getObjectId(house.getStyle()), object.getRotation(), object.getType()));
+ }
+ int[] pos = RegionChunk.getRotatedPosition(x, y, object.getSizeX(), object.getSizeY(), 0, rotation.toInteger());
+ spot.setCurrentX(pos[0]);
+ spot.setCurrentY(pos[1]);
+ }
+ }
+ if (rotation != Direction.NORTH && chunk.getRotation() == 0) {
+ chunk.rotate(rotation);
+ }
+ if (!house.isBuildingMode()) {
+ placeDoors(housePlane, house, chunk);
+ removeHotspots(housePlane, house, chunk);
+ }
+ }
+
+ /**
+ * Removes the building hotspots from the room.
+ * @param housePlane The room's plane in house.
+ * @param house The house manager.
+ * @param chunk The region chunk used.
+ */
+ private void removeHotspots(int housePlane, HouseManager house, BuildRegionChunk chunk) {
+ if (properties.isRoof()) return;
+ for (int x = 0; x < 8; x++) {
+ for (int y = 0; y < 8; y++) {
+ for (int i = 0; i < BuildRegionChunk.ARRAY_SIZE; i++) {
+ Scenery object = chunk.get(x, y, i);
+ if (object != null) {
+ boolean isBuilt = object instanceof Constructed;
+ boolean isWall = object.getId() == 13065 || object.getId() == house.getStyle().getWallId();
+ boolean isDoor = object.getId() == house.getStyle().getDoorId() || object.getId() == house.getStyle().getSecondDoorId();
+ if (!isBuilt && !isWall && !isDoor) {
+ SceneryBuilder.remove(object);
+ chunk.remove(object);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Replaces the door hotspots with doors, walls, or passageways as needed.
+ * TODO: it is believed that doors authentically remember their open/closed state for the usual duration (see e.g. https://www.youtube.com/watch?v=nRGux739h8s 1:00 vs 1:55), but this is not possible with the current HouseManager approach, which deallocates the instance as soon as the player leaves.
+ * @param housePlane The room's plane in house.
+ * @param house The house manager.
+ * @param chunk The region chunk used.
+ */
+ private void placeDoors(int housePlane, HouseManager house, BuildRegionChunk chunk) {
+ Room[][][] rooms = house.getRooms();
+ int rx = chunk.getCurrentBase().getChunkX();
+ int ry = chunk.getCurrentBase().getChunkY();
+ for (int i = 0; i < BuildRegionChunk.ARRAY_SIZE; i++) {
+ for (int x = 0; x < 8; x++) {
+ for (int y = 0; y < 8; y++) {
+ Scenery object = chunk.get(x, y, i);
+ if (object != null && BuildingUtils.isDoorHotspot(object)) {
+ boolean edge = false;
+ Room otherRoom = null;
+ switch (object.getRotation()) {
+ case 0: //east
+ edge = rx == 0;
+ otherRoom = edge ? null : rooms[housePlane][rx - 1][ry];
+ break;
+ case 1: //south
+ edge = ry == 7;
+ otherRoom = edge ? null : rooms[housePlane][rx][ry + 1];
+ break;
+ case 2: //west
+ edge = rx == 7;
+ otherRoom = edge ? null : rooms[housePlane][rx + 1][ry];
+ break;
+ case 3: //north
+ edge = ry == 0;
+ otherRoom = edge ? null : rooms[housePlane][rx][ry - 1];
+ break;
+ default:
+ log(this.getClass(), Log.ERR, "Impossible rotation when placing doors??");
+ }
+ int replaceId = getReplaceId(housePlane, house, this, edge, otherRoom, object);
+ if (replaceId == -1) {
+ continue;
+ }
+ SceneryBuilder.replace(object, object.transform(replaceId));
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Checks if rooms transition between inside<>outside the house and returns the appropriate door replacement.
+ * @param housePlane The room's plane in house.
+ * @param house The house manager.
+ * @param room The room the door is in.
+ * @param edge Whether the door is adjacent to an edge.
+ * @param otherRoom The room the door is adjacent to.
+ * @param object The door object itself.
+ */
+ private int getReplaceId(int housePlane, HouseManager house, Room room, boolean edge, Room otherRoom, Scenery object) {
+ boolean thisOutside = !room.getProperties().isChamber();
+ if (edge && thisOutside) {
+ // No door or wall
+ return -1;
+ }
+ if (!edge) {
+ boolean otherOutside = otherRoom == null || !otherRoom.getProperties().isChamber();
+ if (thisOutside == otherOutside) {
+ // Free passage, unless the other room has a blind wall here
+ if (otherRoom == null) {
+ return -1;
+ }
+ boolean exit = otherRoom.getExits()[object.getRotation()];
+ if (exit) {
+ return -1;
+ }
+ }
+ if (thisOutside != otherOutside && housePlane == 0) {
+ // Door if we are the inside room only
+ if (thisOutside) {
+ return -1;
+ }
+ return object.getId() % 2 != 0 ? house.getStyle().getDoorId() : house.getStyle().getSecondDoorId();
+ }
+ }
+ return room.getProperties().isDungeon() ? 13065 : house.getStyle().getWallId();
+ }
+
+ /**
+ * Sets the decoration index for a group of object ids
+ * @param index The index.
+ * @param hs The building hotspot.
+ */
+ public void setAllDecorationIndex(int index, BuildHotspot hs) {
+ for (int i = 0; i < hotspots.length; i++) {
+ Hotspot h = hotspots[i];
+ if (h.getHotspot() == hs) {
+ h.setDecorationIndex(index);
+ }
+ }
+ }
+
+ /**
+ * Gets the stairs hotspot for this room (or null if no stairs are available).
+ * @return The stairs.
+ */
+ public Hotspot getStairs() {
+ for (Hotspot h : hotspots) {
+ if (h.getHotspot().getType() == BuildHotspotType.STAIRCASE
+ || h.getHotspot() == BuildHotspot.LADDER || h.getHotspot() == BuildHotspot.TRAPDOOR
+ || (h.getHotspot() == BuildHotspot.CENTREPIECE_1 && h.getDecorationIndex() == 4)
+ || (h.getHotspot() == BuildHotspot.CENTREPIECE_2 && h.getDecorationIndex() == 2)) {
+ return h;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Gets the exit directions
+ * @return The exits information.
+ */
+ public boolean[] getExits() {
+ return getExits(rotation);
+ }
+
+ /**
+ * Gets the exit directions.
+ * @return The directions at which you can exit the room (0=east, 1=south, 2=west, 3=north).
+ */
+ public boolean[] getExits(Direction rotation) {
+ boolean[] exits = properties.getExits();
+ if (chunk.getRotation() != rotation.toInteger()) {
+ boolean[] exit = new boolean[exits.length];
+ int offset = rotation.toInteger() - chunk.getRotation();
+ for (int i = 0; i < 4; i++) {
+ exit[(i + offset) % 4] = exits[i];
+ }
+ return exit;
+ }
+ return exits;
+ }
+
+ /**
+ * Gets the hotspot for the given coordinates.
+ * @param build The build hotspot.
+ * @param x The x-coordinate.
+ * @param y The y-coordinate.
+ * @return The hotspot.
+ */
+ public Hotspot getHotspot(BuildHotspot build, int x, int y) {
+ for (int i = 0; i < getHotspots().length; i++) {
+ Hotspot h = getHotspots()[i];
+ if (h.getCurrentX() == x && h.getCurrentY() == y && h.getHotspot() == build) {
+ return h;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Sets the properties.
+ * @param properties The properties.
+ */
+ public void updateProperties(Player player, RoomProperties properties) {
+ this.properties = properties;
+ decorate(player.getHouseManager().getStyle());
+ if (hotspots.length != properties.getHotspots().length) {
+ return;
+ }
+ for (int i = 0; i < hotspots.length; i++) {
+ Hotspot h = hotspots[i];
+ Hotspot hs = hotspots[i] = properties.getHotspots()[i].copy();
+ hs.setCurrentX(h.getCurrentX());
+ hs.setCurrentY(h.getCurrentY());
+ hs.setDecorationIndex(h.getDecorationIndex());
+ }
+ }
+
+ /**
+ * Gets the chunk.
+ * @return The chunk.
+ */
+ public RegionChunk getChunk() {
+ return chunk;
+ }
+
+ /**
+ * Sets the chunk.
+ * @param chunk The chunk to set.
+ */
+ public void setChunk(RegionChunk chunk) {
+ this.chunk = chunk;
+ }
+
+ /**
+ * Gets the hotspots.
+ * @return The hotspots.
+ */
+ public Hotspot[] getHotspots() {
+ return hotspots;
+ }
+
+ /**
+ * Sets the hotspots.
+ * @param hotspots The hotspots to set.
+ */
+ public void setHotspots(Hotspot[] hotspots) {
+ this.hotspots = hotspots;
+ }
+
+ /**
+ * Gets the properties.
+ * @return The properties.
+ */
+ public RoomProperties getProperties() {
+ return properties;
+ }
+
+ /**
+ * Sets the room rotation.
+ * @param rotation The rotation.
+ */
+ public void setRotation(Direction rotation) {
+ this.rotation = rotation;
+ }
+
+ /**
+ * Gets the rotation.
+ * @return The rotation.
+ */
+ public Direction getRotation() {
+ return rotation;
+ }
+
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/RoomProperties.java b/Server/src/main/content/global/skill/construction/RoomProperties.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/construction/RoomProperties.java
rename to Server/src/main/content/global/skill/construction/RoomProperties.java
index 66dfb6880..80bc6e6ed 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/RoomProperties.java
+++ b/Server/src/main/content/global/skill/construction/RoomProperties.java
@@ -1,19 +1,17 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.scenery.Scenery;
import core.game.world.map.Region;
import core.game.world.map.RegionChunk;
import core.game.world.map.RegionManager;
-import rs09.game.node.entity.skill.construction.Hotspot;
/**
* Represents the room properties.
- * @author Emperor
+ * @author Emperor, Player Name
* >ORDINAL BOUND<
*/
public enum RoomProperties {
-
/**
* The parlour.
*/
@@ -51,25 +49,24 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.RUG2, 5, 4),
new Hotspot(BuildHotspot.RUG, 5, 5),
new Hotspot(BuildHotspot.CHAIRS_1, 2, 4),
- new Hotspot(BuildHotspot.FIREPLACE, 3, 7,4,7),
+ new Hotspot(BuildHotspot.FIREPLACE, 3, 7, 4, 7),
new Hotspot(BuildHotspot.CHAIRS_3, 4, 3),
new Hotspot(BuildHotspot.CHAIRS_2, 5, 4),
new Hotspot(BuildHotspot.BOOKCASE, 7, 1)),
-
/**
* The garden. (centrepiece has to be first!)
*/
- GARDEN(1000, 1, 0, 0, 1, Room.LAND, new Hotspot(BuildHotspot.CENTREPIECE_1, 3, 3,4,4),
- new Hotspot(BuildHotspot.BIG_PLANT_2, 0, 0,1,1),
- new Hotspot(BuildHotspot.BIG_TREE_1, 1, 5,2,6),
+ GARDEN(1000, 1, 0, 0, 1, Room.LAND, new Hotspot(BuildHotspot.CENTREPIECE_1, 3, 3, 4, 4),
+ new Hotspot(BuildHotspot.BIG_PLANT_2, 0, 0, 1, 1),
+ new Hotspot(BuildHotspot.BIG_TREE_1, 1, 5, 2, 6),
new Hotspot(BuildHotspot.SMALL_PLANT_1, 3, 1),
new Hotspot(BuildHotspot.SMALL_PLANT_2, 4, 5),
- new Hotspot(BuildHotspot.BIG_PLANT_1, 6, 1,7,0),
- new Hotspot(BuildHotspot.TREE_1, 6, 6,7,7)),
+ new Hotspot(BuildHotspot.BIG_PLANT_1, 6, 0, 7, 1),
+ new Hotspot(BuildHotspot.TREE_1, 6, 6, 7, 7)),
/**
- * Woman's place.
+ * The kitchen.
*/
KITCHEN(5000, 5, 0, 2, 7, Room.CHAMBER, new Hotspot(BuildHotspot.CAT_BLANKET, 0, 0),
new Hotspot(BuildHotspot.WINDOW, 0, 2),
@@ -81,10 +78,10 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.WINDOW, 7, 2),
new Hotspot(BuildHotspot.WINDOW, 7, 5),
new Hotspot(BuildHotspot.BARRELS, 0, 6),
- new Hotspot(BuildHotspot.KITCHEN_TABLE, 3, 3,4,4),
- new Hotspot(BuildHotspot.STOVE, 3, 7),
- new Hotspot(BuildHotspot.LARDER, 6, 0,7,1),
- new Hotspot(BuildHotspot.SINK, 7, 3,7,4),
+ new Hotspot(BuildHotspot.KITCHEN_TABLE, 3, 3, 4, 4),
+ new Hotspot(BuildHotspot.STOVE, 3, 7, 4, 7),
+ new Hotspot(BuildHotspot.LARDER, 6, 0, 7, 1),
+ new Hotspot(BuildHotspot.SINK, 7, 3, 7, 4),
new Hotspot(BuildHotspot.SHELVES, 1, 7),
new Hotspot(BuildHotspot.SHELVES, 6, 7),
new Hotspot(BuildHotspot.SHELVES_2, 7, 6)),
@@ -92,7 +89,7 @@ public enum RoomProperties {
/**
* Dining room.
*/
- DINING_ROOM(5000, 10, 0, 4, 7, Room.CHAMBER, new Hotspot(BuildHotspot.FIREPLACE_DINING, 3, 7,4,7),
+ DINING_ROOM(5000, 10, 0, 4, 7, Room.CHAMBER, new Hotspot(BuildHotspot.FIREPLACE_DINING, 3, 7, 4, 7),
new Hotspot(BuildHotspot.WINDOW, 0, 2),
new Hotspot(BuildHotspot.WINDOW, 0, 5),
new Hotspot(BuildHotspot.WINDOW, 2, 0),
@@ -116,12 +113,12 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.DINING_BENCH_1, 4, 2),
new Hotspot(BuildHotspot.DINING_BENCH_1, 5, 2),
new Hotspot(BuildHotspot.ROPE_BELL_PULL, 0, 0),
- new Hotspot(BuildHotspot.DINING_TABLE, 2, 3,5,4)),
+ new Hotspot(BuildHotspot.DINING_TABLE, 2, 3, 5, 4)),
/**
* Workshop.
*/
- WORKSHOP(10000, 15, 0, 0, 5, Room.CHAMBER, new Hotspot(BuildHotspot.WORKBENCH, 3, 4,4,4),
+ WORKSHOP(10000, 15, 0, 0, 5, Room.CHAMBER, new Hotspot(BuildHotspot.WORKBENCH, 3, 4, 4, 4),
new Hotspot(BuildHotspot.WINDOW, 0, 2),
new Hotspot(BuildHotspot.WINDOW, 0, 5),
new Hotspot(BuildHotspot.WINDOW, 2, 0),
@@ -130,9 +127,9 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.WINDOW, 7, 5),
new Hotspot(BuildHotspot.WINDOW, 2, 7),
new Hotspot(BuildHotspot.WINDOW, 5, 7),
- new Hotspot(BuildHotspot.REPAIR, 7, 3,7,4),
- new Hotspot(BuildHotspot.HERALDRY, 7, 6,7,7),
- new Hotspot(BuildHotspot.CRAFTING, 0, 3,0,4),
+ new Hotspot(BuildHotspot.REPAIR, 7, 3, 7, 4),
+ new Hotspot(BuildHotspot.HERALDRY, 7, 6, 7, 7),
+ new Hotspot(BuildHotspot.CRAFTING, 0, 3, 0, 4),
new Hotspot(BuildHotspot.WORKBENCH, 3, 4),
new Hotspot(BuildHotspot.TOOL4, 7, 1),
new Hotspot(BuildHotspot.TOOL2, 6, 0),
@@ -143,10 +140,10 @@ public enum RoomProperties {
/**
* Bedroom.
*/
- BEDROOM(10000, 20, 0, 6, 7, Room.CHAMBER, new Hotspot(BuildHotspot.BED, 3, 7,4,6),
- new Hotspot(BuildHotspot.FIREPLACE2, 7,4,7, 3),
+ BEDROOM(10000, 20, 0, 6, 7, Room.CHAMBER, new Hotspot(BuildHotspot.BED, 3, 6, 4, 7),
+ new Hotspot(BuildHotspot.FIREPLACE2, 7, 3, 7, 4),
new Hotspot(BuildHotspot.CLOCK, 7, 0),
- new Hotspot(BuildHotspot.DRESSER, 0, 7,1,7),
+ new Hotspot(BuildHotspot.DRESSER, 0, 7, 1, 7),
new Hotspot(BuildHotspot.DRAWERS, 6, 7),
new Hotspot(BuildHotspot.WINDOW, 0, 2),
new Hotspot(BuildHotspot.WINDOW, 0, 5),
@@ -194,9 +191,9 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.BEDROOM_RUG3, 6, 4)),
/**
- * Skill hall room.
+ * Skill hall.
*/
- SKILL_HALL(15000, 25, 0, 1, 6, Room.CHAMBER, new Hotspot(BuildHotspot.STAIRWAYS, 3, 3,4,4),
+ SKILL_HALL(15000, 25, 0, 1, 6, Room.CHAMBER, new Hotspot(BuildHotspot.STAIRWAYS, 3, 3, 4, 4),
new Hotspot(BuildHotspot.ARMOUR_SPACE, 2, 3),
new Hotspot(BuildHotspot.ARMOUR_SPACE2, 5, 3),
new Hotspot(BuildHotspot.HEAD_TROPHY, 6, 7),
@@ -255,7 +252,7 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.ATTACK_STONE, 2, 4),
new Hotspot(BuildHotspot.PRIZE_CHEST, 3, 7),
new Hotspot(BuildHotspot.ELEMENTAL_BALANCE, 5, 4),
- new Hotspot(BuildHotspot.GAME_SPACE, 6, 0,7,1),
+ new Hotspot(BuildHotspot.GAME_SPACE, 6, 0, 7, 1),
new Hotspot(BuildHotspot.WINDOW, 0, 2),
new Hotspot(BuildHotspot.WINDOW, 0, 5),
new Hotspot(BuildHotspot.WINDOW, 2, 0),
@@ -319,10 +316,11 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.CR_INVISIBLE_WALL, 3, 5),
new Hotspot(BuildHotspot.CR_INVISIBLE_WALL, 5, 3),
new Hotspot(BuildHotspot.CR_INVISIBLE_WALL, 4, 2)),
+
/**
* Quest trophy hall.
*/
- QUEST_HALL(25000, 35, 0, 5, 6, Room.CHAMBER, new Hotspot(BuildHotspot.QUEST_STAIRWAYS, 3, 3,4,4),
+ QUEST_HALL(25000, 35, 0, 5, 6, Room.CHAMBER, new Hotspot(BuildHotspot.QUEST_STAIRWAYS, 3, 3, 4, 4),
new Hotspot(BuildHotspot.MAP, 7, 1),
new Hotspot(BuildHotspot.SWORD, 7, 6),
new Hotspot(BuildHotspot.LANDSCAPE, 6, 7),
@@ -377,21 +375,11 @@ public enum RoomProperties {
/**
* Study.
*/
-/* Menagerie(30000, 37, 0, 7, 2, Room.LAND,
- new Hotspot(BuildHotspot.PET_HOUSE, 1, 1),
- new Hotspot(BuildHotspot.PET_FEEDER, 5, 1),
- new Hotspot(BuildHotspot.OBELISK, 5, 5),
- new Hotspot(BuildHotspot.HABITAT_2, 1, 5),
- new Hotspot(BuildHotspot.HABITAT_1, 6, 6)),*/
-
- /**
- * Study.
- */
- STUDY_ROOM(50000, 40, 0, 4, 5, Room.CHAMBER, new Hotspot(BuildHotspot.GLOBE, 1, 4,3,6),
+ STUDY_ROOM(50000, 40, 0, 4, 5, Room.CHAMBER, new Hotspot(BuildHotspot.GLOBE, 1, 4, 3, 6),
new Hotspot(BuildHotspot.LECTERN, 2, 2),
- new Hotspot(BuildHotspot.CRYSTAL_BALL, 5, 4),
- new Hotspot(BuildHotspot.BOOKCASE3, 4, 7,3,7),
- new Hotspot(BuildHotspot.BOOKCASE3, 3, 7,4,7),
+ new Hotspot(BuildHotspot.CRYSTAL_BALL, 5, 2),
+ new Hotspot(BuildHotspot.BOOKCASE3, 3, 7, 3, 7),
+ new Hotspot(BuildHotspot.BOOKCASE3, 4, 7, 4, 7),
new Hotspot(BuildHotspot.WALL_CHART, 1, 7),
new Hotspot(BuildHotspot.WALL_CHART, 6, 7),
new Hotspot(BuildHotspot.WALL_CHART, 7, 1),
@@ -415,22 +403,22 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.WINDOW, 5, 0),
new Hotspot(BuildHotspot.WINDOW, 7, 2),
new Hotspot(BuildHotspot.WINDOW, 7, 5),
- new Hotspot(BuildHotspot.TREASURE_CHEST, 0, 3,0,4),
+ new Hotspot(BuildHotspot.TREASURE_CHEST, 0, 3, 0, 4),
new Hotspot(BuildHotspot.ARMOUR_CASE, 2, 7),
- new Hotspot(BuildHotspot.MAGIC_WARDROBE, 3, 7,5,7),
+ new Hotspot(BuildHotspot.MAGIC_WARDROBE, 3, 7, 5, 7),
new Hotspot(BuildHotspot.CAPE_RACK, 6, 6),
- new Hotspot(BuildHotspot.TOY_BOX, 7, 3,7,4),
- new Hotspot(BuildHotspot.COSTUME_BOX, 3, 4,4,3)),
+ new Hotspot(BuildHotspot.TOY_BOX, 7, 3, 7, 4),
+ new Hotspot(BuildHotspot.COSTUME_BOX, 3, 3, 4, 4)),
/**
* Chapel room.
*/
CHAPEL(50000, 45, 0, 2, 5, Room.CHAMBER,
- new Hotspot(BuildHotspot.ALTAR, 3, 5,4,5),
+ new Hotspot(BuildHotspot.ALTAR, 3, 5, 4, 5),
new Hotspot(BuildHotspot.STATUE, 7, 0),
new Hotspot(BuildHotspot.STATUE, 0, 0),
- new Hotspot(BuildHotspot.ICON, 3,7,4, 7),
- new Hotspot(BuildHotspot.MUSICAL, 7,4,7,3),
+ new Hotspot(BuildHotspot.ICON, 3, 7, 4, 7),
+ new Hotspot(BuildHotspot.MUSICAL, 7, 3, 7, 4),
new Hotspot(BuildHotspot.BURNERS, 1, 5),
new Hotspot(BuildHotspot.BURNERS, 6, 5),
new Hotspot(BuildHotspot.CHAPEL_RUG, 3, 1),
@@ -453,10 +441,10 @@ public enum RoomProperties {
/**
* Portal chamber.
*/
- PORTAL_CHAMBER(100000, 50, 0, 1, 4, Room.CHAMBER, new Hotspot(BuildHotspot.TELEPORT_FOCUS, 3, 3,4,4),
- new Hotspot(BuildHotspot.PORTAL1, 0, 3,0,4),
- new Hotspot(BuildHotspot.PORTAL2, 3, 7,4,7),
- new Hotspot(BuildHotspot.PORTAL3, 7, 3,7,4),
+ PORTAL_CHAMBER(100000, 50, 0, 1, 4, Room.CHAMBER, new Hotspot(BuildHotspot.TELEPORT_FOCUS, 3, 3, 4, 4),
+ new Hotspot(BuildHotspot.PORTAL1, 0, 3, 0, 4),
+ new Hotspot(BuildHotspot.PORTAL2, 3, 7, 4, 7),
+ new Hotspot(BuildHotspot.PORTAL3, 7, 3, 7, 4),
new Hotspot(BuildHotspot.WINDOW, 0, 2),
new Hotspot(BuildHotspot.WINDOW, 0, 5),
new Hotspot(BuildHotspot.WINDOW, 2, 0),
@@ -470,7 +458,7 @@ public enum RoomProperties {
* The formal garden.
* Centrepiece should be first!
*/
- FORMAL_GARDEN(75000, 55, 0, 2, 1, Room.LAND, new Hotspot(BuildHotspot.CENTREPIECE_2, 3, 3,4,4),
+ FORMAL_GARDEN(75000, 55, 0, 2, 1, Room.LAND, new Hotspot(BuildHotspot.CENTREPIECE_2, 3, 3, 4, 4),
new Hotspot(BuildHotspot.FENCING, 0, 0),
new Hotspot(BuildHotspot.FENCING, 1, 0),
new Hotspot(BuildHotspot.FENCING, 2, 0),
@@ -622,6 +610,7 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.PRISON, 5, 4),
new Hotspot(BuildHotspot.PRISON, 4, 5),
new Hotspot(BuildHotspot.PRISON_DOOR, 3, 5)),
+
/**
* Dungeon corridor.
*/
@@ -696,6 +685,9 @@ public enum RoomProperties {
new Hotspot(BuildHotspot.DUNGEON_DECO, 6, 1),
new Hotspot(BuildHotspot.DUNGEON_DECO, 1, 6)),
+ /**
+ * Dungeon pit.
+ */
DUNGEON_PIT(10000, 70, 0, 5, 2, Room.DUNGEON,
new Hotspot(BuildHotspot.DUNGEON_DOOR_RIGHT3, 3, 1),
new Hotspot(BuildHotspot.DUNGEON_DOOR_LEFT3, 4, 1),
@@ -918,7 +910,7 @@ public enum RoomProperties {
* @return The name.
*/
public String getName() {
- return name().toLowerCase().replaceAll("_", " ").replaceAll("\\d","");
+ return name().toLowerCase().replaceAll("_", " ").replaceAll("\\d", "");
}
/**
@@ -1024,5 +1016,4 @@ public enum RoomProperties {
public int getLevel() {
return level;
}
-
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/RoomTemplate.kt b/Server/src/main/content/global/skill/construction/RoomTemplate.kt
similarity index 89%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/RoomTemplate.kt
rename to Server/src/main/content/global/skill/construction/RoomTemplate.kt
index 5127e2e68..b1a68014b 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/RoomTemplate.kt
+++ b/Server/src/main/content/global/skill/construction/RoomTemplate.kt
@@ -1,6 +1,6 @@
-package rs09.game.node.entity.skill.construction
+package content.global.skill.construction
-import core.game.node.entity.skill.construction.RoomProperties
+import content.global.skill.construction.RoomProperties
class RoomTemplate(properties: RoomProperties) {
var hotspots: MutableList = ArrayList()
diff --git a/Server/src/main/content/global/skill/construction/Servant.java b/Server/src/main/content/global/skill/construction/Servant.java
new file mode 100644
index 000000000..a3527bdad
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/Servant.java
@@ -0,0 +1,116 @@
+package content.global.skill.construction;
+
+
+import core.game.node.entity.npc.NPC;
+import core.game.node.item.Item;
+import org.json.simple.JSONObject;
+
+/**
+ * Represents a player's servant.
+ * @author Emperor
+ *
+ */
+public final class Servant extends NPC {
+
+ /**
+ * The servant type.
+ */
+ private final ServantType type;
+
+ /**
+ * The item the servant is carrying.
+ */
+ private Item item;
+
+ /**
+ * The amount this servant has been used.
+ */
+ private int uses;
+
+ /**
+ * If the servant is greeting players entering the house.
+ */
+ private boolean greet;
+
+ /**
+ * Constructs a new {@code Servant} {@code Object}.
+ * @param type The servant type.
+ */
+ public Servant(ServantType type) {
+ super(type.getId());
+ this.type = type;
+ }
+
+ /**
+ * Parses the servant from the save file.
+ * @return The servant.
+ */
+ public static Servant parse(JSONObject data){
+ int type = Integer.parseInt( data.get("type").toString());
+ Servant servant = new Servant(ServantType.values()[type]);
+ servant.uses = Integer.parseInt( data.get("uses").toString());
+ Object itemRaw = data.get("item");
+ if(itemRaw != null){
+ JSONObject item = (JSONObject) itemRaw;
+ servant.item = new Item(Integer.parseInt(item.get("id").toString()),Integer.parseInt(item.get("amount").toString()));
+ }
+ servant.greet = (boolean) data.get("greet");
+ return servant;
+ }
+
+ /**
+ * Gets the item value.
+ * @return The item.
+ */
+ public Item getItem() {
+ return item;
+ }
+
+ /**
+ * Sets the item value.
+ * @param item The item to set.
+ */
+ public void setItem(Item item) {
+ this.item = item;
+ }
+
+ /**
+ * Gets the uses value.
+ * @return The uses.
+ */
+ public int getUses() {
+ return uses;
+ }
+
+ /**
+ * Sets the uses value.
+ * @param uses The uses to set.
+ */
+ public void setUses(int uses) {
+ this.uses = uses;
+ }
+
+ /**
+ * Gets the greet value.
+ * @return The greet.
+ */
+ public boolean isGreet() {
+ return greet;
+ }
+
+ /**
+ * Sets the greet value.
+ * @param greet The greet to set.
+ */
+ public void setGreet(boolean greet) {
+ this.greet = greet;
+ }
+
+ /**
+ * Gets the type value.
+ * @return The type.
+ */
+ public ServantType getType() {
+ return type;
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/ServantType.java b/Server/src/main/content/global/skill/construction/ServantType.java
similarity index 81%
rename from Server/src/main/java/core/game/node/entity/skill/construction/ServantType.java
rename to Server/src/main/content/global/skill/construction/ServantType.java
index e709d2692..b505c6b0b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/ServantType.java
+++ b/Server/src/main/content/global/skill/construction/ServantType.java
@@ -1,7 +1,8 @@
-package core.game.node.entity.skill.construction;
+package content.global.skill.construction;
import core.game.node.item.Item;
+import org.rs09.consts.Items;
/**
* Represents a type of servant
@@ -11,10 +12,10 @@ import core.game.node.item.Item;
public enum ServantType {
NONE(-1, -1, -1, -1, -1),
RICK(4235, 500, 6, 20, 60),
- MAID(4237, 1000, 10, 25, 50, new Item(2003)),
- COOK(4239, 3000, 16, 30, 17, new Item(2301), new Item(712)),
- BUTLER(4241, 5000, 20, 40, 12, new Item(1897), new Item(712)),
- DEMON_BUTLER(4243, 10000, 26, 50, 7, new Item(2011))
+ MAID(4237, 1000, 10, 25, 50, new Item(Items.STEW_2003)),
+ COOK(4239, 3000, 16, 30, 17, new Item(Items.PINEAPPLE_PIZZA_2301), new Item(Items.CUP_OF_TEA_712)),
+ BUTLER(4241, 5000, 20, 40, 12, new Item(Items.CHOCOLATE_CAKE_1897), new Item(Items.CUP_OF_TEA_712)),
+ DEMON_BUTLER(4243, 10000, 26, 50, 7, new Item(Items.CURRY_2011))
;
/**
diff --git a/Server/src/main/content/global/skill/construction/decoration/BeerBarrelPlugin.java b/Server/src/main/content/global/skill/construction/decoration/BeerBarrelPlugin.java
new file mode 100644
index 000000000..dce9b7cf9
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/BeerBarrelPlugin.java
@@ -0,0 +1,76 @@
+package content.global.skill.construction.decoration;
+
+import core.game.interaction.NodeUsageEvent;
+import core.game.interaction.UseWithHandler;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.node.scenery.Scenery;
+import core.game.world.update.flag.context.Animation;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import org.rs09.consts.Items;
+
+/**
+ * Handles the Construction beer barrels.
+ * @author Splinter
+ */
+@Initializable
+public class BeerBarrelPlugin extends UseWithHandler {
+
+ /**
+ * The object ids
+ */
+ private static final int[] OBJECTS = new int[] {
+ 13568, 13569, 13570, 13571, 13572, 13573
+ };
+
+ /**
+ * Constructs a new {@Code BeerBarrelPlugin} {@Code Object}
+ */
+ public BeerBarrelPlugin() {
+ super(1919);
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ for (int id : OBJECTS) {
+ addHandler(id, OBJECT_TYPE, this);
+ }
+ return this;
+ }
+
+ @Override
+ public boolean handle(NodeUsageEvent event) {
+ Player player = event.getPlayer();
+ final Scenery object = (Scenery) event.getUsedWith();
+
+ if (player.getInventory().remove(new Item(Items.BEER_GLASS_1919))) {
+ player.animate(Animation.create(833));
+ player.sendMessage("You fill up your glass.");
+ player.getInventory().add(new Item(getReward(object.getId()), 1));
+ }
+ return true;
+ }
+
+ /**
+ * Get the beer reward based on the interaced barrel.
+ * @return the item to give.
+ */
+ public int getReward(int barrelId) {
+ switch (barrelId) {
+ case 13568:
+ return 1917;
+ case 13569:
+ return 5763;
+ case 13570:
+ return 1905;
+ case 13571:
+ return 1909;
+ case 13572:
+ return 1911;
+ case 13573:
+ return 5755;
+ }
+ return 1917;
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/ChairBenchPlugin.java b/Server/src/main/content/global/skill/construction/decoration/ChairBenchPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/ChairBenchPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/ChairBenchPlugin.java
index d38840226..87332a980 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/ChairBenchPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/ChairBenchPlugin.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.construction.decoration;
+package content.global.skill.construction.decoration;
import core.cache.def.impl.SceneryDefinition;
-import core.game.node.entity.skill.construction.Decoration;
+import content.global.skill.construction.Decoration;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.impl.ForceMovement;
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/ConstructionDoorPlugin.kt b/Server/src/main/content/global/skill/construction/decoration/ConstructionDoorPlugin.kt
similarity index 92%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/ConstructionDoorPlugin.kt
rename to Server/src/main/content/global/skill/construction/decoration/ConstructionDoorPlugin.kt
index 43a09b716..75a9e2207 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/ConstructionDoorPlugin.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/ConstructionDoorPlugin.kt
@@ -1,13 +1,13 @@
-package rs09.game.node.entity.skill.construction.decoration
+package content.global.skill.construction.decoration
+import content.global.skill.construction.BuildHotspot
+import content.global.skill.construction.HousingStyle
import core.cache.def.impl.SceneryDefinition
-import core.game.content.global.action.DoorActionHandler
+import core.game.global.action.DoorActionHandler
import core.game.interaction.OptionHandler
import core.game.node.Node
-import core.game.node.scenery.Scenery
import core.game.node.entity.player.Player
-import core.game.node.entity.skill.construction.BuildHotspot
-import core.game.node.entity.skill.construction.HousingStyle
+import core.game.node.scenery.Scenery
import core.plugin.Initializable
import core.plugin.Plugin
@@ -38,11 +38,11 @@ class ConstructionDoorPlugin : OptionHandler() {
}
override fun handle(player: Player, node: Node, option: String): Boolean {
- val `object` = node as Scenery
- val second = DoorActionHandler.getSecondDoor(`object`, player)
when (option) {
"pick-lock", "force" -> return false //TODO
}
+ val `object` = node as Scenery
+ val second = DoorActionHandler.getSecondDoor(`object`, player)
DoorActionHandler.open(`object`, second, getReplaceId(`object`), getReplaceId(second), true, 500, false)
return true
}
@@ -80,4 +80,4 @@ class ConstructionDoorPlugin : OptionHandler() {
intArrayOf(13119, 13121)
)
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/FireplacePlugin.java b/Server/src/main/content/global/skill/construction/decoration/FireplacePlugin.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/FireplacePlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/FireplacePlugin.java
index 4cbc250d2..d6dad175b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/FireplacePlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/FireplacePlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction.decoration;
+package content.global.skill.construction.decoration;
import core.cache.def.impl.SceneryDefinition;
@@ -11,9 +11,10 @@ import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.game.node.scenery.SceneryBuilder;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.update.flag.context.Animation;
import core.plugin.Plugin;
+import org.rs09.consts.Items;
/**
* Handles the various fireplaces that you may light in Construction.
@@ -51,7 +52,7 @@ public final class FireplacePlugin extends OptionHandler {
if (!obj.isActive()) {
return true;
}
- player.getInventory().remove(new Item(1511));
+ player.getInventory().remove(new Item(Items.LOGS_1511));
player.getSkills().addExperience(Skills.FIREMAKING, 80);
SceneryBuilder.replace(new Scenery(obj.getId(), obj.getLocation()), new Scenery(obj.getId() + 1, obj.getLocation(), obj.getRotation()), 1000);
player.sendMessage("You light the fireplace.");
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/StaircasePlugin.java b/Server/src/main/content/global/skill/construction/decoration/StaircasePlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/StaircasePlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/StaircasePlugin.java
index e615fdd29..a1fe9ed3e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/StaircasePlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/StaircasePlugin.java
@@ -1,15 +1,12 @@
-package core.game.node.entity.skill.construction.decoration;
+package content.global.skill.construction.decoration;
+import content.global.skill.construction.*;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
-import core.game.node.entity.skill.construction.BuildingUtils;
-import core.game.node.entity.skill.construction.HouseManager;
-import core.game.node.entity.skill.construction.Room;
-import core.game.node.entity.skill.construction.RoomProperties;
import core.game.node.scenery.Scenery;
import core.game.node.scenery.SceneryBuilder;
import core.game.system.task.Pulse;
@@ -17,9 +14,8 @@ import core.game.world.map.Direction;
import core.game.world.map.Location;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.node.entity.skill.construction.Hotspot;
-import rs09.game.world.GameWorld;
-import rs09.plugin.ClassScanner;
+import core.game.world.GameWorld;
+import core.plugin.ClassScanner;
/**
* Handles construction staircases.
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/bedroom/ClockPlugin.java b/Server/src/main/content/global/skill/construction/decoration/bedroom/ClockPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/bedroom/ClockPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/bedroom/ClockPlugin.java
index abc594914..53c44bb42 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/bedroom/ClockPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/bedroom/ClockPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction.decoration.bedroom;
+package content.global.skill.construction.decoration.bedroom;
import core.cache.def.impl.SceneryDefinition;
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/bedroom/ShavingStandHandler.kt b/Server/src/main/content/global/skill/construction/decoration/bedroom/ShavingStandHandler.kt
similarity index 93%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/bedroom/ShavingStandHandler.kt
rename to Server/src/main/content/global/skill/construction/decoration/bedroom/ShavingStandHandler.kt
index dbd8a649f..9b9322168 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/bedroom/ShavingStandHandler.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/bedroom/ShavingStandHandler.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.construction.decoration.bedroom
+package content.global.skill.construction.decoration.bedroom
import core.cache.def.impl.SceneryDefinition
import core.game.component.Component
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/bedroom/WardrobeHandler.kt b/Server/src/main/content/global/skill/construction/decoration/bedroom/WardrobeHandler.kt
similarity index 91%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/bedroom/WardrobeHandler.kt
rename to Server/src/main/content/global/skill/construction/decoration/bedroom/WardrobeHandler.kt
index 84e5f7146..5cc89e118 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/bedroom/WardrobeHandler.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/bedroom/WardrobeHandler.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.construction.decoration.bedroom
+package content.global.skill.construction.decoration.bedroom
import core.cache.def.impl.SceneryDefinition
import core.game.component.Component
@@ -25,7 +25,7 @@ class WardrobeHandler : OptionHandler() {
} else {
player.interfaceManager.open(Component(594))
}
- return true;
+ return true
}
}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/chapel/BoneOfferPlugin.java b/Server/src/main/content/global/skill/construction/decoration/chapel/BoneOfferPlugin.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/chapel/BoneOfferPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/chapel/BoneOfferPlugin.java
index a8e822d09..e681c861d 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/chapel/BoneOfferPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/chapel/BoneOfferPlugin.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.skill.construction.decoration.chapel;
+package content.global.skill.construction.decoration.chapel;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.global.Bones;
+import content.global.skill.prayer.Bones;
import core.game.node.entity.skill.Skills;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
@@ -18,6 +18,7 @@ import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
/**
* Handles the offering of bones on an altar.
@@ -35,12 +36,12 @@ public class BoneOfferPlugin extends UseWithHandler {
* The offer Animation.
*/
private final Animation ANIM = new Animation(896);
-
+
/**
* Constructor.
*/
public BoneOfferPlugin() {
- super(526, 2859, 528, 3183, 3179, 530, 532, 3125, 4812, 3123, 534, 6812, 536, 4830, 4832, 6729, 4834, 14693);
+ super(526, 528, 530, 532, 534, 536, 2530, 2859, 3123, 3125, 3127, 3179, 3180, 3181, 3182, 3183, 3185, 3186, 3187, 4812, 4830, 4832, 4834, 6729, 6812);
}
@Override
@@ -98,7 +99,7 @@ public class BoneOfferPlugin extends UseWithHandler {
if (counter == 1 || counter % 5 == 0) {
if (player.getInventory().remove(new Item(b.getItemId()))) {
player.animate(ANIM);
- player.getAudioManager().send(new Audio(958));
+ playAudio(player, Sounds.POH_OFFER_BONES_958);
player.getPacketDispatch().sendPositionedGraphics(GFX, gfxLoc);
player.sendMessage(getMessage(isLit(left), isLit(right)));
player.getSkills().addExperience(Skills.PRAYER, b.getExperience() * getMod(altar, isLit(left), isLit(right)));
diff --git a/Server/src/main/content/global/skill/construction/decoration/chapel/BurnerListener.kt b/Server/src/main/content/global/skill/construction/decoration/chapel/BurnerListener.kt
new file mode 100644
index 000000000..a6c67fa0a
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/chapel/BurnerListener.kt
@@ -0,0 +1,45 @@
+package content.global.skill.construction.decoration.chapel
+
+import core.game.node.scenery.Scenery
+import core.game.node.scenery.SceneryBuilder
+import core.game.node.item.Item
+import core.game.world.update.flag.context.Animation
+import core.tools.RandomFunction
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import org.rs09.consts.Items
+
+/**
+ * Handles the lighting of the torches of the Chapel.
+ * @author Splinter
+ */
+class BurnerListener : InteractionListener {
+
+ val IDs = intArrayOf(13202,13203,13204,13205,13206,13207,13208,13209,13210,13211,13212,13213)
+
+ override fun defineListeners() {
+ on(IDs, IntType.SCENERY, "light"){ player, node ->
+ if (player.ironmanManager.checkRestriction() && !player.houseManager.isInHouse(player)) {
+ return@on true
+ }
+ if (!player.inventory.containsItem(Item(Items.TINDERBOX_590)) || !player.inventory.containsItem(Item(Items.CLEAN_MARRENTILL_251))) {
+ player.dialogueInterpreter.sendDialogue(
+ "You'll need a tinderbox and a clean marrentill herb in order to",
+ "light the burner."
+ )
+ return@on true
+ }
+ if (player.inventory.remove(Item(Items.CLEAN_MARRENTILL_251))) {
+ player.lock(1)
+ player.animate(Animation.create(3687))
+ player.sendMessage("You burn some marrentill in the incense burner.")
+ SceneryBuilder.replace(
+ node.asScenery(),
+ Scenery(node.asScenery().id + 1, node.location),
+ RandomFunction.random(100, 175)
+ )
+ }
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/chapel/ShieldBlessingPlugin.kt b/Server/src/main/content/global/skill/construction/decoration/chapel/ShieldBlessingPlugin.kt
similarity index 89%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/chapel/ShieldBlessingPlugin.kt
rename to Server/src/main/content/global/skill/construction/decoration/chapel/ShieldBlessingPlugin.kt
index 5d6708c7f..9a8e34c76 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/chapel/ShieldBlessingPlugin.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/chapel/ShieldBlessingPlugin.kt
@@ -1,14 +1,15 @@
-package rs09.game.node.entity.skill.construction.decoration.chapel
+package content.global.skill.construction.decoration.chapel
+import core.api.playAudio
import core.game.interaction.NodeUsageEvent
import core.game.interaction.UseWithHandler
-import core.game.node.entity.player.link.audio.Audio
import core.game.node.entity.skill.Skills
import core.game.node.item.Item
import core.game.world.update.flag.context.Animation
import core.plugin.Initializable
import core.plugin.Plugin
import org.rs09.consts.Items
+import org.rs09.consts.Sounds
const val HOLY_ELIXER = 13754
const val SPIRIT_SHIELD = 13734
@@ -38,7 +39,7 @@ class ShieldBlessingPlugin : UseWithHandler(HOLY_ELIXER, SPIRIT_SHIELD) {
}
player.animator.animate(Animation(896))
- player.audioManager.send(Audio(958))
+ playAudio(player, Sounds.POH_OFFER_BONES_958)
if(player.inventory.remove(Item(HOLY_ELIXER)) && player.inventory.remove(Item(SPIRIT_SHIELD)))
player.inventory.add(Item(Items.BLESSED_SPIRIT_SHIELD_13736))
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/combatroom/CombatRing.java b/Server/src/main/content/global/skill/construction/decoration/combatroom/CombatRing.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/combatroom/CombatRing.java
rename to Server/src/main/content/global/skill/construction/decoration/combatroom/CombatRing.java
index 8720a88b8..c2b135fed 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/combatroom/CombatRing.java
+++ b/Server/src/main/content/global/skill/construction/decoration/combatroom/CombatRing.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction.decoration.combatroom;
+package content.global.skill.construction.decoration.combatroom;
import core.cache.def.impl.SceneryDefinition;
diff --git a/Server/src/main/content/global/skill/construction/decoration/costume/SnowscapeFancyDressBox.kt b/Server/src/main/content/global/skill/construction/decoration/costume/SnowscapeFancyDressBox.kt
new file mode 100644
index 000000000..8306a1e41
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/costume/SnowscapeFancyDressBox.kt
@@ -0,0 +1,30 @@
+package content.global.skill.construction.decoration.costume
+
+import core.game.node.scenery.Scenery
+import core.game.node.scenery.SceneryBuilder
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.api.*
+
+/**
+ *
+ *
+ */
+class SnowscapeCostumeRoomBank : InteractionListener {
+
+ val IDs = intArrayOf(18772,18774,18776)
+
+ override fun defineListeners() {
+ on(IDs, IntType.SCENERY, "open"){ player, node ->
+ if (!player.houseManager.isInHouse(player)) {
+ sendMessage(player, "You can only do that in your own house.")
+ return@on true
+ }
+
+ setAttribute(player, "inCostumeRoomBank", true)
+ openBankAccount(player)
+
+ return@on true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/costume/ToyBoxPlugin.kt b/Server/src/main/content/global/skill/construction/decoration/costume/ToyBoxPlugin.kt
similarity index 84%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/costume/ToyBoxPlugin.kt
rename to Server/src/main/content/global/skill/construction/decoration/costume/ToyBoxPlugin.kt
index 5c1d7818e..86b5007d1 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/costume/ToyBoxPlugin.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/costume/ToyBoxPlugin.kt
@@ -1,8 +1,8 @@
-package rs09.game.node.entity.skill.construction.decoration.costume
+package content.global.skill.construction.decoration.costume
import core.cache.def.impl.SceneryDefinition
import core.game.interaction.OptionHandler
-import core.game.interaction.item.toys.DiangoReclaimInterface
+import content.global.handlers.item.toys.DiangoReclaimInterface
import core.game.node.Node
import core.game.node.entity.player.Player
import core.plugin.Initializable
diff --git a/Server/src/main/content/global/skill/construction/decoration/kitchen/BeerBarrelPlugin.java b/Server/src/main/content/global/skill/construction/decoration/kitchen/BeerBarrelPlugin.java
new file mode 100644
index 000000000..eb6b3fe20
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/kitchen/BeerBarrelPlugin.java
@@ -0,0 +1,77 @@
+package content.global.skill.construction.decoration.kitchen;
+
+
+import core.game.interaction.NodeUsageEvent;
+import core.game.interaction.UseWithHandler;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.node.scenery.Scenery;
+import core.game.world.update.flag.context.Animation;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import org.rs09.consts.Items;
+
+/**
+ * Handles the Construction beer barrels.
+ * @author Splinter
+ */
+@Initializable
+public class BeerBarrelPlugin extends UseWithHandler {
+
+ /**
+ * The object ids
+ */
+ private static final int[] OBJECTS = new int[] {
+ 13568, 13569, 13570, 13571, 13572, 13573
+ };
+
+ /**
+ * Constructs a new {@Code BeerBarrelPlugin} {@Code Object}
+ */
+ public BeerBarrelPlugin() {
+ super(1919);
+ }
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ for (int id : OBJECTS) {
+ addHandler(id, OBJECT_TYPE, this);
+ }
+ return this;
+ }
+
+ @Override
+ public boolean handle(NodeUsageEvent event) {
+ Player player = event.getPlayer();
+ final Scenery object = (Scenery) event.getUsedWith();
+
+ if (player.getInventory().remove(new Item(Items.BEER_GLASS_1919))) {
+ player.animate(Animation.create(3661 + (object.getId() - 13569)));
+ player.sendMessage("You fill up your glass with " + object.getName().toLowerCase().replace("barrel", "").trim() + ".");
+ player.getInventory().add(new Item(getReward(object.getId()), 1));
+ }
+ return true;
+ }
+
+ /**
+ * Get the beer reward based on the interacted barrel.
+ * @return the item to give.
+ */
+ public int getReward(int barrelId) {
+ switch (barrelId) {
+ case 13568:
+ return 1917;
+ case 13569:
+ return 5763;
+ case 13570:
+ return 1905;
+ case 13571:
+ return 1909;
+ case 13572:
+ return 1911;
+ case 13573:
+ return 5755;
+ }
+ return 1917;
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/kitchen/LarderPlugin.java b/Server/src/main/content/global/skill/construction/decoration/kitchen/LarderPlugin.java
similarity index 81%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/kitchen/LarderPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/kitchen/LarderPlugin.java
index 6387a3669..9c3289cf2 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/kitchen/LarderPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/kitchen/LarderPlugin.java
@@ -1,15 +1,16 @@
-package core.game.node.entity.skill.construction.decoration.kitchen;
+package content.global.skill.construction.decoration.kitchen;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialoguePlugin;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
+import org.rs09.consts.Items;
/**
* Handles the interactions for the three Larders.
@@ -95,19 +96,19 @@ public final class LarderPlugin extends OptionHandler {
case 1:
switch (buttonId) {
case 1:
- player.getInventory().add(new Item(7738, 1));
+ player.getInventory().add(new Item(Items.TEA_LEAVES_7738, 1));
end();
break;
case 2:
- player.getInventory().add(new Item(1927, 1));
+ player.getInventory().add(new Item(Items.BUCKET_OF_MILK_1927, 1));
end();
break;
case 3:
- player.getInventory().add(new Item(1944, 1));
+ player.getInventory().add(new Item(Items.EGG_1944, 1));
end();
break;
case 4:
- player.getInventory().add(new Item(1933, 1));
+ player.getInventory().add(new Item(Items.POT_OF_FLOUR_1933, 1));
end();
break;
case 5:
@@ -120,19 +121,19 @@ public final class LarderPlugin extends OptionHandler {
case 2:
switch (buttonId) {
case 1:
- player.getInventory().add(new Item(1942, 1));
+ player.getInventory().add(new Item(Items.POTATO_1942, 1));
end();
break;
case 2:
- player.getInventory().add(new Item(1550, 1));
+ player.getInventory().add(new Item(Items.GARLIC_1550, 1));
end();
break;
case 3:
- player.getInventory().add(new Item(1957, 1));
+ player.getInventory().add(new Item(Items.ONION_1957, 1));
end();
break;
case 4:
- player.getInventory().add(new Item(1985, 1));
+ player.getInventory().add(new Item(Items.CHEESE_1985, 1));
end();
break;
}
diff --git a/Server/src/main/content/global/skill/construction/decoration/kitchen/ShelfPlugin.java b/Server/src/main/content/global/skill/construction/decoration/kitchen/ShelfPlugin.java
new file mode 100644
index 000000000..9fed7ebce
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/kitchen/ShelfPlugin.java
@@ -0,0 +1,239 @@
+package content.global.skill.construction.decoration.kitchen;
+
+
+import core.cache.def.impl.SceneryDefinition;
+import core.game.dialogue.DialoguePlugin;
+import core.game.interaction.OptionHandler;
+import core.game.node.Node;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.plugin.Initializable;
+import core.plugin.Plugin;
+import core.plugin.ClassScanner;
+import org.rs09.consts.Items;
+
+/**
+ * Handles the shelves in the kitchen room.
+ * @author Splinter
+ */
+@Initializable
+public final class ShelfPlugin extends OptionHandler {
+
+ @Override
+ public Plugin newInstance(Object arg) throws Throwable {
+ ClassScanner.definePlugin(new ShelfDialogue());
+ for (int i = 13545; i < 13552; i++) {
+ SceneryDefinition.forId(i).getHandlers().put("option:search", this);
+ }
+ return this;
+ }
+
+ @Override
+ public boolean handle(Player player, Node node, String option) {
+ player.getDialogueInterpreter().open(778341, node.getId());
+ return true;
+ }
+
+ /**
+ * Dialogue options for the shelves, what a mess!
+ * @author Splinter
+ * @version 1.0
+ */
+ public final class ShelfDialogue extends DialoguePlugin {
+
+ /**
+ * Constructs a new {@code ShelfDialogue} {@code Object}.
+ */
+ public ShelfDialogue() {
+ /**
+ * empty.
+ */
+ }
+
+ /**
+ * Constructs a new {@code ShelfDialogue} {@code Object}.
+ * @param player the player.
+ */
+ public ShelfDialogue(Player player) {
+ super(player);
+ }
+
+ @Override
+ public DialoguePlugin newInstance(Player player) {
+ return new ShelfDialogue(player);
+ }
+
+ @Override
+ public boolean open(Object... args) {
+ int id = (int) args[0];
+ switch (id) {
+ case 13545:// wood 1
+ interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup");
+ stage = 1;
+ break;
+ case 13546:// wood 2
+ interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup", "Empty beer glass");
+ stage = 1;
+ break;
+ case 13547:// wood 3
+ interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup", "Empty beer glass", "Cake tin");
+ stage = 1;
+ break;
+ case 13548:// oak 1
+ interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Clay cup", "Empty beer glass", "Bowl");
+ stage = 2;
+ break;
+ case 13549:// oak 2
+ interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Porcelain cup", "Empty beer glass", "More Options");
+ stage = 3;
+ break;
+ case 13550:// teak 1
+ case 13551:
+ interpreter.sendOptions("Select an Option", "Kettle", "Teapot", "Porcelain cup", "Empty beer glass", "More Options");
+ stage = 5;
+ break;
+ }
+ return true;
+ }
+
+ @Override
+ public boolean handle(int interfaceId, int buttonId) {
+ if (player.getInventory().freeSlots() < 1) {
+ player.sendMessage("You need at least one free inventory space to take from the shelves.");
+ end();
+ return true;
+ }
+ switch (stage) {
+ case 1:// all wood shelves
+ switch (buttonId) {
+ case 1:
+ end();
+ player.getInventory().add(new Item(Items.KETTLE_7688, 1));
+ break;
+ case 2:
+ end();
+ player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
+ break;
+ case 3:
+ end();
+ player.getInventory().add(new Item(Items.EMPTY_CUP_7728, 1));
+ break;
+ case 4:
+ end();
+ player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
+ break;
+ case 5:
+ end();
+ player.getInventory().add(new Item(Items.CAKE_TIN_1887, 1));
+ break;
+ }
+ break;
+ case 2:// Oak shelf #1
+ switch (buttonId) {
+ case 1:
+ end();
+ player.getInventory().add(new Item(Items.KETTLE_7688, 1));
+ break;
+ case 2:
+ end();
+ player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
+ break;
+ case 3:
+ end();
+ player.getInventory().add(new Item(Items.EMPTY_CUP_7728, 1));
+ break;
+ case 4:
+ end();
+ player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
+ break;
+ case 5:
+ end();
+ player.getInventory().add(new Item(Items.BOWL_1923, 1));
+ break;
+ }
+ break;
+ case 3:// Oak shelves #2 only
+ switch (buttonId) {
+ case 1:
+ end();
+ player.getInventory().add(new Item(Items.KETTLE_7688, 1));
+ break;
+ case 2:
+ end();
+ player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
+ break;
+ case 3:
+ end();
+ player.getInventory().add(new Item(Items.PORCELAIN_CUP_4244, 1));
+ break;
+ case 4:
+ end();
+ player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
+ break;
+ case 5:
+ interpreter.sendOptions("Select an Option", "Bowl", "Cake tin");
+ stage = 4;
+ break;
+ }
+ break;
+ case 4:// Oak shelves #2 only
+ switch (buttonId) {
+ case 1:
+ end();
+ player.getInventory().add(new Item(Items.BOWL_1923, 1));
+ break;
+ case 2:
+ end();
+ player.getInventory().add(new Item(Items.CAKE_TIN_1887, 1));
+ break;
+ }
+ case 5:// teak shelves
+ switch (buttonId) {
+ case 1:
+ end();
+ player.getInventory().add(new Item(Items.KETTLE_7688, 1));
+ break;
+ case 2:
+ end();
+ player.getInventory().add(new Item(Items.TEAPOT_7702, 1));
+ break;
+ case 3:
+ end();
+ player.getInventory().add(new Item(Items.PORCELAIN_CUP_7735, 1));
+ break;
+ case 4:
+ end();
+ player.getInventory().add(new Item(Items.BEER_GLASS_1919, 1));
+ break;
+ case 5:
+ interpreter.sendOptions("Select an Option", "Bowl", "Pie dish", "Empty pot");
+ stage = 6;
+ break;
+ }
+ break;
+ case 6:// teak shelves
+ switch (buttonId) {
+ case 1:
+ end();
+ player.getInventory().add(new Item(Items.BOWL_1923, 1));
+ break;
+ case 2:
+ end();
+ player.getInventory().add(new Item(Items.PIE_DISH_2313, 1));
+ break;
+ case 3:
+ end();
+ player.getInventory().add(new Item(Items.EMPTY_POT_1931, 1));
+ break;
+ }
+ break;
+ }
+ return true;
+ }
+
+ @Override
+ public int[] getIds() {
+ return new int[] { 778341 };
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/portalchamber/PortalChamberDialogue.kt b/Server/src/main/content/global/skill/construction/decoration/portalchamber/PortalChamberDialogue.kt
similarity index 87%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/portalchamber/PortalChamberDialogue.kt
rename to Server/src/main/content/global/skill/construction/decoration/portalchamber/PortalChamberDialogue.kt
index 8858897ae..eeaf6e455 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/portalchamber/PortalChamberDialogue.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/portalchamber/PortalChamberDialogue.kt
@@ -1,8 +1,8 @@
-package rs09.game.node.entity.skill.construction.decoration.portalchamber
+package content.global.skill.construction.decoration.portalchamber
-import core.game.content.dialogue.DialoguePlugin
+import core.game.dialogue.DialoguePlugin
import core.game.node.entity.player.Player
-import core.game.node.entity.skill.construction.decoration.portalchamber.PortalChamberPlugin
+import content.global.skill.construction.decoration.portalchamber.PortalChamberPlugin
import core.plugin.Initializable
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/portalchamber/PortalChamberPlugin.java b/Server/src/main/content/global/skill/construction/decoration/portalchamber/PortalChamberPlugin.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/portalchamber/PortalChamberPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/portalchamber/PortalChamberPlugin.java
index 64187f05c..bf1f26c54 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/portalchamber/PortalChamberPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/portalchamber/PortalChamberPlugin.java
@@ -1,21 +1,23 @@
-package core.game.node.entity.skill.construction.decoration.portalchamber;
+package content.global.skill.construction.decoration.portalchamber;
+import content.global.skill.construction.Hotspot;
+import content.global.skill.runecrafting.Rune;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
-import core.game.node.entity.skill.construction.Decoration;
-import core.game.node.entity.skill.runecrafting.Rune;
+import content.global.skill.construction.Decoration;
import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.game.world.map.Location;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.node.entity.skill.construction.Hotspot;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
+
+import static content.region.kandarin.ardougne.quest.plaguecity.PlagueCityListeners.ARDOUGNE_TELE_ATTRIBUTE;
/**
* PortalChamberPlugin
@@ -87,6 +89,12 @@ public class PortalChamberPlugin extends OptionHandler {
}
for (Locations l : Locations.values()) {
if (l.name().contains(identifier)) {
+ if (l == Locations.ARDOUGNE){
+ if (!player.getAttribute(ARDOUGNE_TELE_ATTRIBUTE, false)) {
+ player.sendMessage("You do not have the requirements to direct the portal there");
+ return;
+ }
+ }
Item[] runes = l.runes;
if (!player.getInventory().containsItems(runes)) {
player.sendMessage("You do not have the required runes to build this portal");
@@ -215,7 +223,7 @@ public class PortalChamberPlugin extends OptionHandler {
PortalChamberPlugin.direct(player, "LUMBRIDGE");
return true;
}
- },
+ },
new PageAction("Falador Portal") {
@Override
public boolean run(Player player) {
diff --git a/Server/src/main/content/global/skill/construction/decoration/questhall/MountedGlory.kt b/Server/src/main/content/global/skill/construction/decoration/questhall/MountedGlory.kt
new file mode 100644
index 000000000..47051e46f
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/questhall/MountedGlory.kt
@@ -0,0 +1,77 @@
+package content.global.skill.construction.decoration.questhall
+
+import core.api.playGlobalAudio
+import core.api.teleport
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.node.scenery.Scenery
+import core.game.system.task.Pulse
+import core.game.world.map.Location
+import core.game.world.update.flag.context.Animation
+import core.game.world.update.flag.context.Graphics
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+import java.util.concurrent.Executors
+import java.util.concurrent.TimeUnit
+
+class MountedGlory : InteractionListener {
+
+ val MOUNTED_GLORY = 13523
+
+ val TELEPORTS = arrayOf(
+ Location.create(3087, 3495, 0),
+ Location.create(2919, 3175, 0),
+ Location.create(3104, 3249, 0),
+ Location.create(3304, 3124, 0)
+ )
+
+ override fun defineListeners() {
+ on(MOUNTED_GLORY, IntType.SCENERY, "Edgeville") { player, `object` ->
+ mountedGloryAction(player, `object`, 0)
+ return@on true
+ }
+
+ on(MOUNTED_GLORY, IntType.SCENERY, "Karamja") { player, `object` ->
+ mountedGloryAction(player, `object`, 1)
+ return@on true
+ }
+
+ on(MOUNTED_GLORY, IntType.SCENERY, "Draynor Village") { player, `object` ->
+ mountedGloryAction(player, `object`, 2)
+ return@on true
+ }
+
+ on(MOUNTED_GLORY, IntType.SCENERY, "Al Kharid") { player, `object` ->
+ mountedGloryAction(player, `object`, 3)
+ return@on true
+ }
+ }
+ private fun mountedGloryAction(player : Player, `object` : Node, int : Int) {
+ if (player.houseManager.isBuildingMode) {
+ player.dialogueInterpreter.open("con:removedec", `object` as Scenery)
+ return
+ }
+ if (!player.zoneMonitor.teleport(1, Item(Items.AMULET_OF_GLORY_1704))) {
+ return
+ }
+ Executors.newSingleThreadScheduledExecutor().schedule({
+ player.pulseManager.run(object : Pulse() {
+ var counter = 0
+ override fun pulse(): Boolean {
+ when (counter++) {
+ 1 -> {
+ player.lock(5)
+ player.visualize(Animation(714), Graphics(308, 100, 50))
+ playGlobalAudio(player.location, Sounds.TELEPORT_ALL_200)
+ }
+ 4 -> player.animator.reset().also { teleport(player, TELEPORTS[int]) }
+ }
+ return false
+ }
+ })
+ }, 0, TimeUnit.SECONDS)
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/questhall/MountedGloryPlugin.java b/Server/src/main/content/global/skill/construction/decoration/questhall/MountedGloryPlugin.java
similarity index 87%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/questhall/MountedGloryPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/questhall/MountedGloryPlugin.java
index 16958bba4..90d96eb80 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/questhall/MountedGloryPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/questhall/MountedGloryPlugin.java
@@ -1,20 +1,22 @@
-package core.game.node.entity.skill.construction.decoration.questhall;
+package content.global.skill.construction.decoration.questhall;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.dialogue.DialogueAction;
-import core.game.content.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialogueAction;
+import core.game.dialogue.DialogueInterpreter;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.audio.Audio;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Location;
import core.game.world.update.flag.context.Animation;
import core.game.world.update.flag.context.Graphics;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playGlobalAudio;
/**
* Handles the POH Mounted Glory.
@@ -79,7 +81,7 @@ public class MountedGloryPlugin extends OptionHandler {
}
player.lock();
player.visualize(ANIMATION, GRAPHICS);
- player.getAudioManager().send(new Audio(200), true);
+ playGlobalAudio(player.getLocation(), Sounds.TELEPORT_ALL_200);
player.getImpactHandler().setDisabledTicks(4);
GameWorld.getPulser().submit(new Pulse(4, player) {
@Override
diff --git a/Server/src/main/content/global/skill/construction/decoration/study/LecternPlugin.kt b/Server/src/main/content/global/skill/construction/decoration/study/LecternPlugin.kt
new file mode 100644
index 000000000..eb4accf67
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/study/LecternPlugin.kt
@@ -0,0 +1,227 @@
+package content.global.skill.construction.decoration.study
+
+import content.global.handlers.item.TeleTabsListener
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.component.Component
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.node.entity.skill.Skills
+import content.global.skill.construction.Decoration
+import content.region.kandarin.ardougne.quest.plaguecity.PlagueCityListeners.Companion.ARDOUGNE_TELE_ATTRIBUTE
+import core.game.node.entity.combat.spell.MagicStaff
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import core.plugin.Initializable
+import core.plugin.Plugin
+import core.game.world.GameWorld
+import core.game.interaction.InterfaceListener
+import org.rs09.consts.Items
+
+/**
+ * Handles the lectern
+ * LecternPlugin
+ * @author Ceikry
+ */
+@Initializable
+class LecternPlugin : OptionHandler() {
+ /**
+ * TeleTabButton
+ */
+ private enum class TeleTabButton(
+ /**
+ * The button id
+ */
+ val buttonId: Int,
+ /**
+ * The level and xp
+ */
+ val level: Int,
+ val xp: Double,
+ /**
+ * The item
+ */
+ val tabItem: Item,
+ /**
+ * The required decoration (lectern)
+ */
+ private val requiredDecorations: Array, vararg requiredItems: Item) {
+ ARDOUGNE(2, 51, 61.0, Item(TeleTabsListener.TeleTabs.ADDOUGNE_TELEPORT.item), arrayOf(Decoration.TEAK_EAGLE_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563, 2), Item(Items.WATER_RUNE_555, 2)),
+ BONES_TO_BANANNAS(3, 15, 25.0, Item(Items.BONES_TO_BANANAS_8014), arrayOf(Decoration.DEMON_LECTERN, Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.NATURE_RUNE_561, 1), Item(Items.EARTH_RUNE_557, 2), Item(Items.WATER_RUNE_555, 2)),
+ BONES_TO_PEACHES(4, 60, 35.5, Item(Items.BONES_TO_PEACHES_8015), arrayOf(Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.NATURE_RUNE_561, 2), Item(Items.EARTH_RUNE_557, 4), Item(Items.WATER_RUNE_555, 4)),
+ CAMELOT(5, 45, 55.5, Item(TeleTabsListener.TeleTabs.CAMELOT_TELEPORT.item), arrayOf(Decoration.TEAK_EAGLE_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563), Item(Items.AIR_RUNE_556, 5)),
+ ENCHANT_DIAMOND(6, 57, 67.0, Item(Items.ENCHANT_DIAMOND_8019), arrayOf(Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.COSMIC_RUNE_564), Item(Items.EARTH_RUNE_557, 10)),
+ ENCHANT_DRAGONSTONE(7, 68, 78.0, Item(Items.ENCHANT_DRAGONSTN_8020), arrayOf(Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.COSMIC_RUNE_564), Item(Items.EARTH_RUNE_557, 15), Item(Items.WATER_RUNE_555, 15)),
+ ENCHANT_EMERALD(8, 27, 37.0, Item(Items.ENCHANT_EMERALD_8017), arrayOf(Decoration.DEMON_LECTERN, Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.COSMIC_RUNE_564), Item(Items.AIR_RUNE_556, 3)),
+ ENCHANT_ONYX(9, 87, 97.0, Item(Items.ENCHANT_ONYX_8021), arrayOf(Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.COSMIC_RUNE_564), Item(Items.EARTH_RUNE_557, 20), Item(Items.FIRE_RUNE_554, 20)),
+ ENCHANT_RUBY(10, 49, 59.0, Item(Items.ENCHANT_RUBY_8018), arrayOf(Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.COSMIC_RUNE_564), Item(Items.FIRE_RUNE_554, 5)),
+ ENCHANT_SAPPHIRE(11, 7, 17.5, Item(Items.ENCHANT_SAPPHIRE_8016), arrayOf(Decoration.OAK_LECTERN, Decoration.EAGLE_LECTERN, Decoration.TEAK_EAGLE_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN, Decoration.DEMON_LECTERN, Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.COSMIC_RUNE_564), Item(Items.WATER_RUNE_555)),
+ FALADOR(12, 37, 48.0, Item(TeleTabsListener.TeleTabs.FALADOR_TELEPORT.item), arrayOf(Decoration.EAGLE_LECTERN, Decoration.TEAK_EAGLE_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563), Item(Items.WATER_RUNE_555), Item(Items.AIR_RUNE_556, 3)),
+ LUMBRIDGE(13, 31, 41.0, Item(TeleTabsListener.TeleTabs.LUMBRIDGE_TELEPORT.item), arrayOf(Decoration.EAGLE_LECTERN, Decoration.TEAK_EAGLE_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563), Item(Items.EARTH_RUNE_557), Item(Items.AIR_RUNE_556, 3)),
+ HOUSE(14, 40, 30.0, Item(Items.TELEPORT_TO_HOUSE_8013), arrayOf(Decoration.MAHOGANY_EAGLE_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563), Item(Items.EARTH_RUNE_557), Item(Items.AIR_RUNE_556)),
+ VARROCK(15, 25, 35.0, Item(TeleTabsListener.TeleTabs.VARROCK_TELEPORT.item), arrayOf(Decoration.OAK_LECTERN, Decoration.EAGLE_LECTERN, Decoration.TEAK_EAGLE_LECTERN, Decoration.MAHOGANY_EAGLE_LECTERN, Decoration.DEMON_LECTERN, Decoration.TEAK_DEMON_LECTERN, Decoration.MAHOGANY_DEMON_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563), Item(Items.FIRE_RUNE_554), Item(Items.AIR_RUNE_556, 3)),
+ WATCHTOWER(16, 58, 68.0, Item(TeleTabsListener.TeleTabs.WATCH_TOWER_TELEPORT.item), arrayOf(Decoration.MAHOGANY_EAGLE_LECTERN), SOFT_CLAY, Item(Items.LAW_RUNE_563, 2), Item(Items.EARTH_RUNE_557, 2));
+
+ /**
+ * The required items
+ */
+ val requiredItems: ArrayList- = arrayListOf(*requiredItems)
+
+ /**
+ * Checks if the player can make this tab
+ * @param player
+ * @return
+ */
+ fun canMake(player: Player): Boolean {
+ val objectId = player.getAttribute
("ttb:objectid")
+ if (player.skills.getLevel(Skills.MAGIC) < level && player.spellBookManager.spellBook == 192) {
+ player.sendMessage("You need a magic level of $level to make that!")
+ return false
+ }
+ if (this == BONES_TO_PEACHES && !player.savedData.activityData.isBonesToPeaches) {
+ player.sendMessages("You need the Bones to Peaches ability purchased from MTA before making these.", "This requirement doesn't apply to actually using the tabs.")
+ return false
+ }
+ if(this == ARDOUGNE && !getAttribute(player, ARDOUGNE_TELE_ATTRIBUTE, false)){
+ sendMessage(player, "You need to unlock Ardougne teleport before you can make a tablet.")
+ return false
+
+ }
+ var found = false
+ for (d in requiredDecorations) if (d.objectId == objectId) found = true
+ if (!found) {
+ player.sendMessage("You're unable to make this tab on this specific lectern.")
+ return false
+ }
+ for (item in requiredItems) {
+ val staff = MagicStaff.forId(item.id)
+ if (staff != null && player.equipment.containsAtLeastOneItem(staff.staves)) {
+ continue
+ }
+ if (!player.inventory.containsItem(item)) {
+ //TODO staffs
+ player.sendMessage("You don't have enough materials.")
+ return false
+ }
+ }
+ return true
+ }
+
+ companion object {
+ /**
+ * Gets the button for the id
+ * @param id
+ * @return
+ */
+ fun forId(id: Int): TeleTabButton? {
+ for (ttb in values()) {
+ if (ttb.buttonId == id) return ttb
+ }
+ return null
+ }
+ }
+
+ }
+
+ @Throws(Throwable::class)
+ override fun newInstance(arg: Any?): Plugin? {
+ for (i in 13642..13648) {
+ SceneryDefinition.forId(i).handlers["option:study"] = this
+ }
+ return this
+ }
+
+ override fun handle(player: Player, node: Node, option: String): Boolean {
+ val id = node.asScenery().id
+ player.setAttribute("ttb:objectid", id)
+ GameWorld.Pulser.submit(object : Pulse(){
+ var counter = 0
+ override fun pulse(): Boolean {
+ when(counter++){
+ 0 -> player.animator.animate(Animation(1894)).also { player.lock() }
+ 1 -> player.interfaceManager.open(Component(400)).also { player.unlock(); return true }
+ }
+ return false
+ }
+ })
+ return true
+ }
+
+ /**
+ * TeleTabInterface
+ * @author Ceikry
+ */
+ class TeleTabInterface : InterfaceListener {
+ val decorationVarps = hashMapOf(
+ Decoration.OAK_LECTERN to Pair(0, 0),
+ Decoration.EAGLE_LECTERN to Pair(1, 0),
+ Decoration.DEMON_LECTERN to Pair(0, 1),
+ Decoration.TEAK_EAGLE_LECTERN to Pair(2, 0),
+ Decoration.TEAK_DEMON_LECTERN to Pair(0, 2),
+ Decoration.MAHOGANY_EAGLE_LECTERN to Pair(3, 0),
+ Decoration.MAHOGANY_DEMON_LECTERN to Pair(0, 3),
+ )
+ override fun defineInterfaceListeners() {
+ onOpen(400) { player, component ->
+ val id = player.getAttribute("ttb:objectid", 0)
+ val deco = Decoration.forObjectId(id)
+ val values = decorationVarps[deco] ?: Pair(0, 0)
+ setVarp(player, 261, values.first)
+ setVarp(player, 262, values.second)
+ return@onOpen true
+ }
+ on(400) { player, _, _, buttonID, _, _ ->
+ val ttb = TeleTabButton.forId(buttonID)
+ if (ttb != null && ttb.canMake(player)) {
+ player.interfaceManager.close()
+ var requiredItemsCountingStaves = ttb.requiredItems.filter({ item ->
+ val staff = MagicStaff.forId(item.id)
+ !(staff != null && player.equipment.containsAtLeastOneItem(staff.staves))
+ }).toTypedArray()
+ player.pulseManager.run(object : Pulse(1) {
+ var counter = 0
+ override fun pulse(): Boolean {
+ when(counter++) {
+ 0 -> {
+ if (!ttb.canMake(player)) {
+ return true
+ }
+ //TODO Add correct lectern animation (should look like raising arms progressively higher 3 times).
+ player.animate(Animation(782))
+ }
+ 2 -> {
+ if (player.inventory.remove(*requiredItemsCountingStaves)) {
+ // Should never drop, since soft clay was successfully removed
+ addItemOrDrop(player, ttb.tabItem.id)
+ player.skills.addExperience(Skills.MAGIC, ttb.xp, true)
+ if (ttb == TeleTabButton.VARROCK
+ && (player.getAttribute("ttb:objectid", 0) == Decoration.MAHOGANY_EAGLE_LECTERN.objectId
+ || player.getAttribute("ttb:objectid", 0) == Decoration.MAHOGANY_DEMON_LECTERN.objectId)) {
+ player.achievementDiaryManager.finishTask(player, DiaryType.VARROCK, 2, 8)
+ }
+ } else {
+ return true
+ }
+ }
+ }
+ counter %= 6
+ return false
+ }
+ })
+ }
+ player.animate(Animation(-1))
+ return@on true
+ }
+ }
+ }
+
+ companion object {
+ /**
+ * Soft clay
+ */
+ private val SOFT_CLAY = Item(Items.SOFT_CLAY_1761, 1)
+ }
+}
diff --git a/Server/src/main/content/global/skill/construction/decoration/study/TelescopePlugin.kt b/Server/src/main/content/global/skill/construction/decoration/study/TelescopePlugin.kt
new file mode 100644
index 000000000..ea1d8c783
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/study/TelescopePlugin.kt
@@ -0,0 +1,59 @@
+package content.global.skill.construction.decoration.study
+
+import core.cache.def.impl.SceneryDefinition
+import core.game.component.Component
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import core.game.node.scenery.Scenery
+import core.game.node.entity.player.Player
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import core.plugin.Initializable
+import core.plugin.Plugin
+import core.tools.RandomFunction
+import content.global.activity.shootingstar.ShootingStarPlugin
+import core.game.world.GameWorld.Pulser
+import java.util.concurrent.TimeUnit
+
+@Initializable
+class TelescopePlugin : OptionHandler() {
+ @Throws(Throwable::class)
+ override fun newInstance(arg: Any?): Plugin? {
+ SceneryDefinition.forId(13656).handlers["option:observe"] = this
+ SceneryDefinition.forId(13657).handlers["option:observe"] = this
+ SceneryDefinition.forId(13658).handlers["option:observe"] = this
+ return this
+ }
+
+ override fun handle(player: Player?, node: Node?, option: String?): Boolean {
+ val obj = node?.asScenery() as Scenery
+ val star = ShootingStarPlugin.getStar()
+ val delay: Int = 25000 + (25000 / 3)
+ val timeLeft = delay - star.ticks
+ val window = when (obj.id) {
+ 13657 -> 9
+ 13658 -> 2
+ else -> 24
+ }
+ val fakeTimeLeft = RandomFunction.random(-window, window+1) + TimeUnit.MILLISECONDS.toMinutes(timeLeft * 600L)
+ player?.lock()
+ player?.animate(ANIMATION)
+ player?.interfaceManager?.open(Component(782)).also {
+ player?.unlock()
+ Pulser.submit(object : Pulse(2, player) {
+ override fun pulse(): Boolean {
+ if (obj.isActive) {
+ player?.dialogueInterpreter?.sendDialogue("You see a shooting star! The star looks like it will land","in about $fakeTimeLeft minutes!")
+ return true
+ }
+ return true
+ }
+ })
+ return true
+ }
+ }
+
+ companion object {
+ private val ANIMATION = Animation.create(3649)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/workshop/ArmourStand.kt b/Server/src/main/content/global/skill/construction/decoration/workshop/ArmourStand.kt
similarity index 91%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/workshop/ArmourStand.kt
rename to Server/src/main/content/global/skill/construction/decoration/workshop/ArmourStand.kt
index 9a04823c1..b30f862d1 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/construction/decoration/workshop/ArmourStand.kt
+++ b/Server/src/main/content/global/skill/construction/decoration/workshop/ArmourStand.kt
@@ -1,17 +1,18 @@
-package rs09.game.node.entity.skill.construction.decoration.workshop
+package content.global.skill.construction.decoration.workshop
-import core.game.content.dialogue.DialoguePlugin
-import core.game.content.global.RepairItem
+import core.game.dialogue.DialoguePlugin
+import content.data.RepairItem
import core.game.interaction.NodeUsageEvent
import core.game.interaction.UseWithHandler
-import core.game.interaction.npc.bob.BobDialogue.BarrowsEquipment
-import core.game.interaction.npc.bob.BobDialogue.BarrowsEquipment.BarrowsFullEquipment
+import content.region.misthalin.lumbridge.dialogue.BobDialogue.BarrowsEquipment
+import content.region.misthalin.lumbridge.dialogue.BobDialogue.BarrowsEquipment.BarrowsFullEquipment
import core.game.node.entity.player.Player
import core.game.node.entity.skill.Skills
import core.game.node.item.Item
import core.plugin.Initializable
import core.plugin.Plugin
import kotlin.math.ceil
+import org.rs09.consts.Items
@Initializable
class ArmourStand : UseWithHandler(494, 468, 496, 470, 498, 472, 500, 502, 474, 504, 476, 506, 478, 6741, 4856, 4857, 4858, 4859, 4860, 4862, 4863, 4864, 4865, 4866, 4868, 4869, 4870, 4871, 4872, 4874, 4875, 4876, 4877, 4878, 4880, 4881, 4882, 4883, 4884, 4886, 4887, 4888, 4889, 4890, 4892, 4893, 4894, 4895, 4896, 4898, 4899, 4900, 4901, 4902, 4904, 4905, 4906, 4907, 4908, 4910, 4911, 4912, 4913, 4914, 4916, 4917, 4918, 4919, 4920, 4922, 4923, 4924, 4925, 4926, 4928, 4929, 4930, 4931, 4932, 4934, 4935, 4936, 4937, 4938, 4940, 4941, 4942, 4943, 4944, 4946, 4947, 4948, 4949, 4950, 4952, 4953, 4954, 4955, 4956, 4958, 4959, 4960, 4961, 4962, 4964, 4965, 4966, 4967, 4968, 4970, 4971, 4972, 4973, 4974, 4976, 4977, 4978, 4979, 4980, 4982, 4983, 4984, 4985, 4986, 4988, 4989, 4990, 4991, 4992, 4994, 4995, 4996, 4997, 4998){
@@ -88,7 +89,7 @@ class ArmourStand : UseWithHandler(494, 468, 496, 470, 498, 472, 500, 502, 474,
}
fun exchangeItems(item: Item, cost: Int, product: Item) {
- val coins = Item(995, cost)
+ val coins = Item(Items.COINS_995, cost)
if (player.inventory.containsItem(coins) && player.inventory.containsItem(item)) {
player.inventory.remove(item, coins)
player.inventory.add(product)
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/workshop/ClockmakersBenchPlugin.java b/Server/src/main/content/global/skill/construction/decoration/workshop/ClockmakersBenchPlugin.java
similarity index 87%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/workshop/ClockmakersBenchPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/workshop/ClockmakersBenchPlugin.java
index 4d8f4311f..410f1a4a0 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/workshop/ClockmakersBenchPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/workshop/ClockmakersBenchPlugin.java
@@ -1,13 +1,13 @@
-package core.game.node.entity.skill.construction.decoration.workshop;
+package content.global.skill.construction.decoration.workshop;
+import content.global.skill.construction.BuildingUtils;
+import content.global.skill.construction.Decoration;
import core.cache.def.impl.ItemDefinition;
import core.cache.def.impl.SceneryDefinition;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.construction.BuildingUtils;
-import core.game.node.entity.skill.construction.Decoration;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
@@ -15,7 +15,8 @@ import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
+import org.rs09.consts.Items;
/**
* Handles the clockmakers bench in the workshop
@@ -35,13 +36,13 @@ public class ClockmakersBenchPlugin extends OptionHandler {
private enum Craftable {
TOY_HORSEY(2520, 10, BuildingUtils.PLANK),
- CLOCKWORK(8792, 8, new Item(2353)),
- TOY_SOLDIER(7759, 13, BuildingUtils.PLANK, new Item(8792)),
- TOY_DOLL(7763, 18, BuildingUtils.PLANK, new Item(8792)),
- TOY_MOUSE(7767, 33, BuildingUtils.PLANK, new Item(8792)),
- TOY_CAT(7771, 85, BuildingUtils.PLANK, new Item(8792)),
- WATCH(2575, 28, new Item(8792), new Item(2353)),
- SEXTANT(2574, 23, new Item(2353));
+ CLOCKWORK(8792, 8, new Item(Items.STEEL_BAR_2353)),
+ TOY_SOLDIER(7759, 13, BuildingUtils.PLANK, new Item(Items.CLOCKWORK_8792)),
+ TOY_DOLL(7763, 18, BuildingUtils.PLANK, new Item(Items.CLOCKWORK_8792)),
+ TOY_MOUSE(7767, 33, BuildingUtils.PLANK, new Item(Items.CLOCKWORK_8792)),
+ TOY_CAT(7771, 85, BuildingUtils.PLANK, new Item(Items.CLOCKWORK_8792)),
+ WATCH(2575, 28, new Item(Items.CLOCKWORK_8792), new Item(Items.STEEL_BAR_2353)),
+ SEXTANT(2574, 23, new Item(Items.STEEL_BAR_2353));
/**
* The itemId to give after making this
diff --git a/Server/src/main/content/global/skill/construction/decoration/workshop/SnowscapeWorkbench.kt b/Server/src/main/content/global/skill/construction/decoration/workshop/SnowscapeWorkbench.kt
new file mode 100644
index 000000000..86974da72
--- /dev/null
+++ b/Server/src/main/content/global/skill/construction/decoration/workshop/SnowscapeWorkbench.kt
@@ -0,0 +1,104 @@
+package content.global.skill.construction.decoration.workshop
+
+
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.scenery.Scenery
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import content.global.skill.construction.BuildingUtils
+
+
+/**
+ * Simple replacement intil flatpacks are in. Using the workbench will consume planks in exchange for construction exp.
+ *
+ *
+ */
+
+class SnowscapeWorkbench : InteractionListener {
+
+ val workbenchIds = intArrayOf(13704,13705,13706,13707,13708)
+ val plankIds = intArrayOf(Items.PLANK_960, Items.OAK_PLANK_8778, Items.TEAK_PLANK_8780, Items.MAHOGANY_PLANK_8782)
+
+ override fun defineListeners() {
+ defineInteraction(
+ IntType.SCENERY,
+ workbenchIds,
+ "work-at",
+ persistent = true, allowedDistance = 1,
+ handler = ::handlePlankConstruction
+ )
+ }
+
+ private fun handlePlankConstruction(player: Player, node: Node, state: Int) : Boolean {
+ if (!inInventory(player, Items.SAW_8794) || !inInventory(player, Items.HAMMER_2347)) {
+ sendMessage(player,"You need a hammer and saw to do that.")
+ player.scripts.reset()
+ return false
+ }
+
+ for (plankId in plankIds) {
+ if (amountInInventory(player, plankId) > 0) {
+ if (node.id < getAllowedWorkbench(plankId)) {
+ sendMessage(player,"You need a better workbench to use ${Item(plankId).getName()}s.")
+ player.scripts.reset()
+ return false
+ }
+ if (getDynLevel(player, Skills.CONSTRUCTION) < getLevelRequirement(plankId)) {
+ sendMessage(player,"You need level ${getLevelRequirement(plankId)} construction to use ${Item(plankId).getName()}s.")
+ player.scripts.reset()
+ return false
+ }
+
+ if (removeItem(player, Item(plankId, 1))) {
+ rewardXP(player, Skills.CONSTRUCTION, getExperience(plankId))
+ animate(player, BuildingUtils.BUILD_MID_ANIM) //This animation has a sound effect built in
+
+ return delayScript(player, 1)
+ }
+ }
+ }
+
+
+ sendMessage(player,"You have no planks in your inventory.")
+ player.scripts.reset()
+ return false
+ }
+
+ // The following functions really should have been an enum class or something, but I don't know how to do that
+
+ fun getAllowedWorkbench(plankId: Int) : Int {
+ return when (plankId) {
+ Items.PLANK_960 -> 13704
+ Items.OAK_PLANK_8778 -> 13705
+ Items.TEAK_PLANK_8780 -> 13706
+ Items.MAHOGANY_PLANK_8782 -> 13707
+ else -> 0
+ }
+ }
+
+ fun getExperience(plankId: Int) : Double {
+ return when (plankId) {
+ Items.PLANK_960 -> 30.0
+ Items.OAK_PLANK_8778 -> 60.0
+ Items.TEAK_PLANK_8780 -> 90.0
+ Items.MAHOGANY_PLANK_8782 -> 140.0
+ else -> 0.0
+ }
+ }
+
+ fun getLevelRequirement(plankId: Int) : Int {
+ return when (plankId) {
+ Items.PLANK_960 -> 1
+ Items.OAK_PLANK_8778 -> 15
+ Items.TEAK_PLANK_8780 -> 35
+ Items.MAHOGANY_PLANK_8782 -> 40
+ else -> 0
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/workshop/ToolsPlugin.java b/Server/src/main/content/global/skill/construction/decoration/workshop/ToolsPlugin.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/construction/decoration/workshop/ToolsPlugin.java
rename to Server/src/main/content/global/skill/construction/decoration/workshop/ToolsPlugin.java
index 883e945ad..2341c3a2a 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/decoration/workshop/ToolsPlugin.java
+++ b/Server/src/main/content/global/skill/construction/decoration/workshop/ToolsPlugin.java
@@ -1,18 +1,18 @@
-package core.game.node.entity.skill.construction.decoration.workshop;
+package content.global.skill.construction.decoration.workshop;
import core.cache.def.impl.ItemDefinition;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
-import core.game.content.dialogue.DialogueInterpreter;
-import core.game.content.dialogue.DialoguePlugin;
+import core.game.dialogue.DialogueInterpreter;
+import core.game.dialogue.DialoguePlugin;
import core.game.interaction.OptionHandler;
import core.game.node.Node;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
import java.util.ArrayList;
import java.util.List;
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/npc/HouseServantDialogue.java b/Server/src/main/content/global/skill/construction/npc/HouseServantDialogue.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/construction/npc/HouseServantDialogue.java
rename to Server/src/main/content/global/skill/construction/npc/HouseServantDialogue.java
index 6fa1874c0..ddb967ebe 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/npc/HouseServantDialogue.java
+++ b/Server/src/main/content/global/skill/construction/npc/HouseServantDialogue.java
@@ -1,22 +1,24 @@
-package core.game.node.entity.skill.construction.npc;
+package content.global.skill.construction.npc;
-import core.game.content.dialogue.DialoguePlugin;
-import core.game.content.dialogue.FacialExpression;
+import content.global.skill.construction.HouseManager;
+import content.global.skill.construction.ServantType;
+import core.game.dialogue.DialoguePlugin;
+import core.game.dialogue.FacialExpression;
+import core.game.node.entity.impl.PulseType;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.construction.HouseManager;
-import core.game.node.entity.skill.construction.Servant;
-import core.game.node.entity.skill.construction.ServantType;
+import content.global.skill.construction.Servant;
import core.game.interaction.MovementPulse;
import core.game.node.entity.npc.NPC;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.IronmanMode;
import core.game.node.item.Item;
import core.game.system.task.Pulse;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.game.world.map.Location;
import core.game.world.map.path.Pathfinder;
-import core.game.interaction.inter.SawmillPlankInterface.Plank;
+import content.global.handlers.iface.SawmillPlankInterface.Plank;
+import org.rs09.consts.Items;
/**
* Handles the Servant's dialogues.
@@ -145,7 +147,7 @@ public class HouseServantDialogue extends DialoguePlugin {
stage++;
break;
case 3:
- if (type != null && player.getInventory().getAmount(995) >= type.getCost() && player.getInventory().remove(new Item(995, type.getCost()))) {
+ if (type != null && player.getInventory().getAmount(995) >= type.getCost() && player.getInventory().remove(new Item(Items.COINS_995, type.getCost()))) {
manager.setServant(new Servant(type));
interpreter.sendDialogue("The servant heads to your house.");
stage = 100;
@@ -172,7 +174,7 @@ public class HouseServantDialogue extends DialoguePlugin {
case 3:
player("Stop following me.");
if (servant.getPulseManager().isMovingPulse()) {
- servant.getPulseManager().clear("movement");
+ servant.getPulseManager().clear(PulseType.STANDARD);
}
stage = 100;
break;
@@ -217,11 +219,11 @@ public class HouseServantDialogue extends DialoguePlugin {
interpreter.sendDialogues(servant, servant.getId() == 4243 ? FacialExpression.HALF_GUILTY : null, "You have no need to pay me yet, I haven't performed", "any of my services for you.");
break;
}
- if (!player.getInventory().containsItem(new Item(995, type.getCost()))) {
+ if (!player.getInventory().containsItem(new Item(Items.COINS_995, type.getCost()))) {
interpreter.sendDialogues(servant, servant.getId() == 4243 ? FacialExpression.HALF_GUILTY : null, "Thanks for the kind gesture, but you don't have enough", "money to pay me. I require " + type.getCost() + " coins every eight uses", "of my services.");
break;
}
- if (player.getInventory().remove(new Item(995, type.getCost()))) {
+ if (player.getInventory().remove(new Item(Items.COINS_995, type.getCost()))) {
interpreter.sendDialogues(servant, servant.getId() == 4243 ? FacialExpression.HALF_GUILTY : null, "Thank you very much.");
servant.setUses(0);
}
@@ -310,18 +312,18 @@ public class HouseServantDialogue extends DialoguePlugin {
case 60:
switch(buttonId) {
case 1: //planks
- bankFetch(player, new Item(960));
+ bankFetch(player, new Item(Items.PLANK_960));
stage = 100;
break;
case 2: //oak
- bankFetch(player, new Item(8778));
+ bankFetch(player, new Item(Items.OAK_PLANK_8778));
stage = 100;
break;
case 3: //teak
- bankFetch(player, new Item(8780));
+ bankFetch(player, new Item(Items.TEAK_PLANK_8780));
break;
case 4: //mahog
- bankFetch(player, new Item(8782));
+ bankFetch(player, new Item(Items.MAHOGANY_PLANK_8782));
break;
case 5:
options("Soft clay", "Limestone bricks", "Steel bars", "Cloth", "More options");
@@ -332,16 +334,16 @@ public class HouseServantDialogue extends DialoguePlugin {
case 61:
switch(buttonId) {
case 1: //clay
- bankFetch(player, new Item(1761));
+ bankFetch(player, new Item(Items.SOFT_CLAY_1761));
break;
case 2: //lime
- bankFetch(player, new Item(3420));
+ bankFetch(player, new Item(Items.LIMESTONE_BRICK_3420));
break;
case 3: //steel bars
- bankFetch(player, new Item(2353));
+ bankFetch(player, new Item(Items.STEEL_BAR_2353));
break;
case 4: //cloth
- bankFetch(player, new Item(8790));
+ bankFetch(player, new Item(Items.BOLT_OF_CLOTH_8790));
break;
case 5:
options("Gold leaves", "Marble blocks", "Magic stones");
@@ -352,13 +354,13 @@ public class HouseServantDialogue extends DialoguePlugin {
case 62:
switch(buttonId) {
case 1: //leaves
- bankFetch(player, new Item(4692));
+ bankFetch(player, new Item(Items.GOLD_LEAF_4692));
break;
case 2: //marble
- bankFetch(player, new Item(8786));
+ bankFetch(player, new Item(Items.MARBLE_BLOCK_8786));
break;
case 3: //magic stones
- bankFetch(player, new Item(4703));
+ bankFetch(player, new Item(Items.MAGIC_STONE_8788));
break;
}
break;
@@ -477,7 +479,7 @@ public class HouseServantDialogue extends DialoguePlugin {
return;
}
end();
- if (player.getInventory().remove(new Item(item.getId(), amt)) && player.getInventory().remove(new Item(995, amt * plank.getPrice()))) {
+ if (player.getInventory().remove(new Item(item.getId(), amt)) && player.getInventory().remove(new Item(Items.COINS_995, amt * plank.getPrice()))) {
manager.getServant().setItem(new Item(plank.getPlank().getId(), amt));
servant.setInvisible(true);
servant.getLocks().lockMovement(100);
@@ -562,6 +564,6 @@ public class HouseServantDialogue extends DialoguePlugin {
public boolean pulse() {
return false;
}
- }, "movement");
+ }, PulseType.STANDARD);
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/npc/HouseServantPlugin.java b/Server/src/main/content/global/skill/construction/npc/HouseServantPlugin.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/construction/npc/HouseServantPlugin.java
rename to Server/src/main/content/global/skill/construction/npc/HouseServantPlugin.java
index c7f96e64a..68af6493e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/npc/HouseServantPlugin.java
+++ b/Server/src/main/content/global/skill/construction/npc/HouseServantPlugin.java
@@ -1,11 +1,11 @@
-package core.game.node.entity.skill.construction.npc;
+package content.global.skill.construction.npc;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.plugin.ClassScanner;
+import core.plugin.ClassScanner;
/**
* Handles interaction with the house servant.
diff --git a/Server/src/main/java/core/game/node/entity/skill/construction/npc/StonemasonPlugin.java b/Server/src/main/content/global/skill/construction/npc/StonemasonPlugin.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/construction/npc/StonemasonPlugin.java
rename to Server/src/main/content/global/skill/construction/npc/StonemasonPlugin.java
index ff62cbf67..b83bb5965 100644
--- a/Server/src/main/java/core/game/node/entity/skill/construction/npc/StonemasonPlugin.java
+++ b/Server/src/main/content/global/skill/construction/npc/StonemasonPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.construction.npc;
+package content.global.skill.construction.npc;
import core.cache.def.impl.ItemDefinition;
import core.cache.def.impl.NPCDefinition;
@@ -48,7 +48,7 @@ public class StonemasonPlugin extends OptionHandler {
* Constructs a new {@Code SupplyStore} {@Code Object}
*//*
public SupplyStore() {
- super("Keldagrim Stonemason", new Item[] { new Item(3420, 1000), new Item(8786, 20), new Item(8784, 20), new Item(8788, 10) }, false);
+ super("Keldagrim Stonemason", new Item[] { new Item(Items.LIMESTONE_BRICK_3420, 1000), new Item(Items.MARBLE_BLOCK_8786, 20), new Item(Items.GOLD_LEAF_8784, 20), new Item(Items.MAGIC_STONE_8788, 10) }, false);
}
@Override
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/CakeMakingPlugin.java b/Server/src/main/content/global/skill/cooking/CakeMakingPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/CakeMakingPlugin.java
rename to Server/src/main/content/global/skill/cooking/CakeMakingPlugin.java
index c82006d2c..084abf4c4 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/CakeMakingPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/CakeMakingPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/cooking/ChocolateBarCutter.kt b/Server/src/main/content/global/skill/cooking/ChocolateBarCutter.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/cooking/ChocolateBarCutter.kt
rename to Server/src/main/content/global/skill/cooking/ChocolateBarCutter.kt
index 184e9948f..e2a5fc126 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/cooking/ChocolateBarCutter.kt
+++ b/Server/src/main/content/global/skill/cooking/ChocolateBarCutter.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.cooking
+package content.global.skill.cooking
import core.game.interaction.NodeUsageEvent
import core.game.interaction.UseWithHandler
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/CoconutMakePlugin.java b/Server/src/main/content/global/skill/cooking/CoconutMakePlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/CoconutMakePlugin.java
rename to Server/src/main/content/global/skill/cooking/CoconutMakePlugin.java
index d4d54e83c..7520ff115 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/CoconutMakePlugin.java
+++ b/Server/src/main/content/global/skill/cooking/CoconutMakePlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/content/global/skill/cooking/CookableItems.java b/Server/src/main/content/global/skill/cooking/CookableItems.java
new file mode 100644
index 000000000..cea0f356d
--- /dev/null
+++ b/Server/src/main/content/global/skill/cooking/CookableItems.java
@@ -0,0 +1,172 @@
+package content.global.skill.cooking;
+
+import org.rs09.consts.Items;
+import core.game.node.item.Item;
+
+import java.util.HashMap;
+
+public enum CookableItems {
+ // meats
+ CHICKEN(2140, 2138, 2144, 1, 30, 128, 512, 128, 512),
+ UGTHANKI(2140, 2138, 2144, 1, 40, 40, 252, 30, 253),
+ RABBIT(3228, 3226, 7222, 1, 30, 128, 512, 128, 512),
+ CRAB(7521, 7518, 7520, 21, 100, 57, 377, 57, 377),
+ CHOMPY(2878, 2876, 2880, 30, 100, 200, 255, 200, 255),
+ JUBBLY(7568, 7566, 7570, 41, 160, 195, 250, 195, 250), // Can burn at 99 cooking. Ballpark low/high.
+
+ // fish
+ CRAYFISH(13433, 13435, 13437, 1, 30, 128, 512, 128, 512),
+ SHRIMP(315, 317, 7954, 1, 30, 128, 512, 128, 512),
+ KARAMBWANJI(3151, 3150, 592, 1, 10, 200, 400, 200, 400),
+ SARDINE(325, 327, 369, 1, 40, 118, 492, 118, 492),
+ ANCHOVIES(319, 321, 323, 1, 30, 128, 512, 128, 512),
+ HERRING(347, 345, 357, 5, 50, 108, 472, 108, 472),
+ MACKEREL(355, 353, 357, 10, 60, 98, 452, 98, 452),
+ TROUT(333, 335, 343, 15, 70, 88, 432, 88, 432),
+ COD(339, 341, 343, 18, 75, 83, 422, 88, 432),
+ PIKE(351, 349, 343, 20, 80, 78, 412, 78, 412),
+ SALMON(329, 331, 343, 25, 90, 68, 392, 68, 392),
+ SLIMY_EEL(3381, 3379, 3383, 28, 95, 63, 382, 63, 382),
+ TUNA(361, 359, 367, 30, 100, 58, 372, 58, 372),
+ RAINBOW_FISH(10136, 10138, 10140, 35, 110, 56, 370, 56, 370),
+ CAVE_EEL(5003, 5001, 5002, 38, 115, 38, 332, 38, 332),
+ LOBSTER(379, 377, 381, 40, 120, 38, 332, 38, 332),
+ BASS(365, 363, 367, 43, 130, 33, 312, 33, 312),
+ SWORDFISH(373, 371, 375, 45, 140, 18, 292, 30, 310),
+ LAVA_EEL(2149, 2148, 3383, 53, 30, 256, 256, 256, 256), // never burn
+ MONKFISH(7946, 7944, 7948, 62, 150, 11, 275, 13, 280),
+ SHARK(385, 383, 387, 80, 210, 1, 202, 1, 232),
+ SEA_TURTLE(397, 395, 399, 82, 212, 1, 202, 1, 222),
+ MANTA_RAY(391, 389, 393, 91, 216, 1, 202, 1, 222),
+ KARAMBWAN(3144, 3142, 3146, 30, 190, 70, 255, 70, 255),
+
+ // snails
+ THIN_SNAIL(3369, 3363, 3375, 12, 70, 93, 444, 93, 444),
+ LEAN_SNAIL(3371, 3365, 3375, 17, 80, 85, 428, 93, 444),
+ FAT_SNAIL(3373, 3367, 3375, 22, 95, 73, 402, 73, 402),
+
+ // bread
+ BREAD(2309, 2307, 2311, 1, 40, 118, 492, 118, 492),
+ PITTA_BREAD(1865, 1863, 1867, 58, 40,118, 492, 118, 492),
+
+ // cake
+ CAKE(1891, 1889, 1903, 40, 180, 0, 0, 38, 332),
+
+ // beef(s) (rat, bear, cow, yak)
+ BEEF(2142, 2132, 2146, 1, 30, 128, 512, 128, 512),
+ RAT_MEAT(2142, 2134, 2146, 1, 30, 128, 512, 128, 512),
+ BEAR_MEAT(2142, 2136, 2146, 1, 30, 128, 512, 128, 512),
+ YAK_MEAT(2142, 10816, 2146, 1, 30, 128, 512, 128, 512),
+
+ // skewered foods
+ SKEWER_CHOMPY(2878, 7230, 2880, 30, 100, 200, 255, 200, 255),
+ SKEWER_ROAST_RABBIT(7223, 7224, 7222, 16, 72, 160, 255, 160, 255),
+ SKEWER_ROAST_BIRD(9980, 9984, 9982, 11, 62, 155, 255, 155, 255),
+ SKEWER_ROAST_BEAST(9988, 9992, 9990, 21, 82.5, 180, 255, 180, 255),
+
+ // pies
+ REDBERRY_PIE(2325, 2321, 2329, 10, 78, 0, 0, 98, 452),
+ MEAT_PIE(2327, 2319, 2329, 20, 110, 0, 0, 78, 412),
+ MUD_PIE(7170, 7168, 2329, 29, 128, 0, 0, 58, 372),
+ APPLE_PIE(2323, 2317, 2329, 30, 130, 0, 0, 58, 372),
+ GARDEN_PIE(7178, 7176, 2329, 34, 138, 0, 0, 48, 352),
+ FISH_PIE(7188, 7186, 2329, 47, 164, 0, 0, 38, 332),
+ ADMIRAL_PIE(7198, 7196, 2329, 70, 210, 0, 0, 15, 270),
+ WILD_PIE(7208, 7206, 2329, 85, 240, 0, 0, 1, 222),
+ SUMMER_PIE(7218, 7216, 2329, 95, 260, 0, 0, 1, 212),
+
+ // pizzas
+ PIZZA_PLAIN(2289, 2287, 2305, 35, 143, 0, 0, 48, 352),
+
+ // bowl foods
+ BOWL_STEW(2003, 2001, 2005, 25, 117, 68, 392, 68, 392),
+ BOWL_CURRY(2011, 2009, 2013, 60, 280, 38, 332, 38, 332),
+ BOWL_NETTLE(4239, 4237, 4239, 20, 52, 78, 412, 78, 412),
+ BOWL_EGG(7078, 7076, 7090, 13, 50, 0, 0, 90, 438),
+ BOWL_ONION(7084, 1871, 7092, 43, 60, 36, 322, 36, 322),
+ BOWL_MUSHROOM(7082, 7080, 7094, 46, 60, 16, 282, 16, 282),
+
+ // vegetables
+ BAKED_POTATO(6701, 1942, 6699, 7, 15, 0, 0, 108, 472),
+ SWEETCORN(5988, 5986, 5990, 28, 104, 78, 412, 78, 412),
+
+ // miscellaneous
+ RAW_OOMLIE(Items.RAW_OOMLIE_2337, 0, Items.BURNT_OOMLIE_2426, 50, 0, 0, 0, 0, 0), // always burns
+ OOMLIE_WRAP(Items.COOKED_OOMLIE_WRAP_2343, Items.WRAPPED_OOMLIE_2341, Items.BURNT_OOMLIE_WRAP_2345, 50, 30, 106, 450, 112, 476),
+ SEAWEED(Items.SEAWEED_401, 0, Items.SODA_ASH_1781, 0, 0, 0, 0, 0, 0),
+
+ /**
+ * Sinew gets overridden by BEEF in this enum, due to values being looked up by the items RAW id.
+ * This gets corrected in {@link SinewCookingPulse}
+ */
+ SINEW(Items.SINEW_9436, Items.RAW_BEEF_2132, Items.SINEW_9436, 0, 3, 0, 0, 0, 0);
+
+ public final static HashMap cookingMap = new HashMap<>();
+ public final static HashMap intentionalBurnMap = new HashMap<>();
+ public final static HashMap gauntletValues = new HashMap<>();
+ public final static HashMap lumbridgeRangeValues = new HashMap<>();
+ public final int cooked, raw, burnt, level, low, high, lowRange, highRange;
+ public final double experience;
+
+ CookableItems(int cooked, int raw, int burnt, int level, double experience, int low, int high, int lowRange, int highRange) {
+ this.cooked = cooked;
+ this.raw = raw;
+ this.burnt = burnt;
+ this.level = level;
+ this.experience = experience;
+ this.low = low;
+ this.high = high;
+ this.lowRange = lowRange;
+ this.highRange = highRange;
+ }
+
+ static {
+ for (CookableItems item : values()) {
+ cookingMap.putIfAbsent(item.raw, item);
+ intentionalBurnMap.putIfAbsent(item.cooked, item);
+ }
+
+ gauntletValues.put(Items.RAW_LOBSTER_377, new int[]{55, 368});
+ gauntletValues.put(Items.RAW_SWORDFISH_371, new int[]{30, 310});
+ gauntletValues.put(Items.RAW_MONKFISH_7944, new int[]{24, 290});
+ gauntletValues.put(Items.RAW_SHARK_383, new int[]{15, 270});
+
+ lumbridgeRangeValues.put(Items.BREAD_DOUGH_2307, new int[]{128, 512});
+ lumbridgeRangeValues.put(Items.RAW_BEEF_2132, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_RAT_MEAT_2134, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_BEAR_MEAT_2136, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_YAK_MEAT_10816, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_CHICKEN_2138, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_SHRIMPS_317, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_ANCHOVIES_321, new int[]{138, 532});
+ lumbridgeRangeValues.put(Items.RAW_SARDINE_327, new int[]{128, 512});
+ lumbridgeRangeValues.put(Items.RAW_HERRING_345, new int[]{118, 492});
+ lumbridgeRangeValues.put(Items.RAW_MACKEREL_353, new int[]{108, 472});
+ lumbridgeRangeValues.put(Items.UNCOOKED_BERRY_PIE_2321, new int[]{108, 462});
+ lumbridgeRangeValues.put(Items.THIN_SNAIL_3363, new int[]{103, 464});
+ lumbridgeRangeValues.put(Items.RAW_TROUT_335, new int[]{98, 452});
+ lumbridgeRangeValues.put(Items.LEAN_SNAIL_3365, new int[]{95, 448});
+ lumbridgeRangeValues.put(Items.RAW_COD_341, new int[]{93, 442});
+ lumbridgeRangeValues.put(Items.RAW_PIKE_349, new int[]{88, 432});
+ lumbridgeRangeValues.put(Items.UNCOOKED_MEAT_PIE_2319, new int[]{88, 432});
+ lumbridgeRangeValues.put(Items.FAT_SNAIL_3367, new int[]{83, 422});
+ lumbridgeRangeValues.put(Items.UNCOOKED_STEW_2001, new int[]{78, 412});
+ lumbridgeRangeValues.put(Items.RAW_SALMON_331, new int[]{78, 402});
+ }
+
+ public static CookableItems forId(int id) {
+ return cookingMap.get(id);
+ }
+
+ public static Item getBurnt(int id) {
+ return new Item(cookingMap.get(id).burnt);
+ }
+
+ public static boolean intentionalBurn(int id) {
+ return (intentionalBurnMap.get(id) != null);
+ }
+
+ public static Item getIntentionalBurn(int id) {
+ return new Item(intentionalBurnMap.get(id).burnt);
+ }
+}
diff --git a/Server/src/main/content/global/skill/cooking/CookingDialogue.kt b/Server/src/main/content/global/skill/cooking/CookingDialogue.kt
new file mode 100644
index 000000000..a560c8026
--- /dev/null
+++ b/Server/src/main/content/global/skill/cooking/CookingDialogue.kt
@@ -0,0 +1,134 @@
+package content.global.skill.cooking
+
+import core.api.*
+import core.cache.def.impl.ItemDefinition
+import core.game.node.scenery.Scenery
+import content.global.skill.cooking.CookingRewrite.Companion.cook
+import core.net.packet.PacketRepository
+import core.net.packet.context.ChildPositionContext
+import core.net.packet.out.RepositionChild
+import org.rs09.consts.Items
+import core.game.dialogue.DialogueFile
+import core.tools.START_DIALOGUE
+
+/**
+ * @author Ceikry
+ * @author bushtail - fixing it up
+ * @auther Woah - for more fixing up
+ */
+
+class CookingDialogue(vararg val args: Any) : DialogueFile(){
+ var initial = 0
+ var product = 0
+ var `object`: Scenery? = null
+ var sinew = false
+ var itemid = 0
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage){
+ START_DIALOGUE -> {
+ when (args.size) {
+ 2 -> {
+ initial = args.get(0) as Int
+ if (CookableItems.intentionalBurn(initial)) { // checks intentional burning
+ product = CookableItems.getIntentionalBurn(initial).id
+ } else {
+ product = CookableItems.forId(initial).cooked
+ }
+ `object` = args.get(1) as Scenery
+ }
+ 5 -> {
+ initial = args.get(0) as Int
+ product = args.get(1) as Int
+ sinew = args.get(2) as Boolean
+ `object` = args.get(3) as Scenery
+ itemid = args.get(4) as Int
+ if (sinew) {
+ options(
+ "Dry the meat into sinew",
+ "Cook the meat"
+ )
+ stage = if (amountInInventory(player!!, initial) > 1) 100 else 101
+ return
+ }
+ }
+ }
+ display()
+ }
+
+ 1 -> {
+ end()
+ val amount = getAmount(buttonID)
+ when (amount) {
+ -1 -> sendInputDialogue(player!!, true, "Enter the amount:") { value ->
+ if (value is String) {
+ cook(player!!, `object`, initial, product, value.toInt())
+ } else {
+ cook(player!!, `object`, initial, product, value as Int)
+ }
+ }
+
+ else -> {
+ end()
+ cook(player!!, `object`, initial, product, amount)
+ }
+ }
+ }
+
+ 100 -> {
+ when (buttonID) {
+ 1 -> {
+ product = Items.SINEW_9436
+ display()
+ }
+ 2 -> {
+ product = CookableItems.forId(initial).cooked
+ display()
+ }
+ }
+ }
+
+ 101 -> {
+ when (buttonID) {
+ 1 -> {
+ end()
+ cook(player!!, `object`, initial, Items.SINEW_9436, 1)
+ }
+ 2 -> {
+ end()
+ cook(player!!, `object`, initial, CookableItems.forId(initial).cooked, 1)
+ }
+ }
+ }
+ }
+ }
+
+ private fun getAmount(buttonId: Int): Int {
+ when (buttonId) {
+ 5 -> return 1
+ 4 -> return 5
+ 3 -> return -1
+ 2 -> return player!!.inventory.getAmount(initial)
+ }
+ return -1
+ }
+
+ fun display() {
+ player!!.packetDispatch.sendItemZoomOnInterface(initial, 160, 307, 2)
+ player!!.packetDispatch.sendString(" ${ItemDefinition.forId(initial).name}", 307, 6)
+
+ // Re-format this interface because it is not formatted properly for the chat-box
+ // Swords
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 0, 12, 15))
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 1, 431, 15))
+ // "How many would you like to cook?"
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 7, 0, 12))
+ // Right click context menu boxes
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 3, 58, 27))
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 4, 58, 27))
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 5, 58, 27))
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, 307, 6, 58, 27))
+
+ player!!.interfaceManager.openChatbox(307)
+ stage = 1
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/CookingRecipePlugin.java b/Server/src/main/content/global/skill/cooking/CookingRecipePlugin.java
similarity index 82%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/CookingRecipePlugin.java
rename to Server/src/main/content/global/skill/cooking/CookingRecipePlugin.java
index f980bfad1..067217358 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/CookingRecipePlugin.java
+++ b/Server/src/main/content/global/skill/cooking/CookingRecipePlugin.java
@@ -1,15 +1,15 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
import core.game.node.item.Item;
import core.game.system.task.Pulse;
import core.plugin.Initializable;
import core.plugin.Plugin;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
-import rs09.game.content.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
+import core.game.dialogue.SkillDialogueHandler;
import java.util.ArrayList;
import java.util.List;
@@ -44,29 +44,30 @@ public final class CookingRecipePlugin extends UseWithHandler {
@Override
public boolean handle(NodeUsageEvent event) {
Recipe recipe = null;
+ Item part = null;
// TODO: Transitioning to a Listener would save an O(n) pass through the recipes list on every use-with
+ recipeloop:
for (Recipe temp : Recipe.RECIPES) {
if (temp.isSingular()) {
if (temp.getBase().getId() == event.getUsedItem().getId() || temp.getBase().getId() == event.getBaseItem().getId()) {
for (Item ingredient : temp.getIngredients()) {
if (ingredient.getId() == event.getBaseItem().getId() || ingredient.getId() == event.getUsedItem().getId()) {
recipe = temp;
- break;
+ break recipeloop;
}
}
}
} else {
- Item part = null;
- Item ingredient = null;
for (int k = 0; k < temp.getParts().length; k++) {
for (int i = 0; i < temp.getIngredients().length; i++) {
- part = temp.getParts()[k];
- ingredient = temp.getIngredients()[i];
- if (part.getId() == event.getUsedItem().getId() && ingredient.getId() == event.getBaseItem().getId() || part.getId() == event.getBaseItem().getId() && ingredient.getId() == event.getUsedItem().getId()) {
+ Item tempPart = temp.getParts()[k];
+ Item ingredient = temp.getIngredients()[i];
+ if (tempPart.getId() == event.getUsedItem().getId() && ingredient.getId() == event.getBaseItem().getId() || tempPart.getId() == event.getBaseItem().getId() && ingredient.getId() == event.getUsedItem().getId()) {
if (k == i) {// represents that this ingredient can
// mix with the other.
recipe = temp;
- break;
+ part = tempPart;
+ break recipeloop;
}
}
}
@@ -76,6 +77,7 @@ public final class CookingRecipePlugin extends UseWithHandler {
if (recipe != null) {
final Player player = event.getPlayer();
final Recipe recipe_ = recipe;
+ final Item part_ = part;
SkillDialogueHandler handler = new SkillDialogueHandler(player, SkillDialogue.ONE_OPTION, recipe.getProduct()) {
@Override
public void create(final int amount, int index) {
@@ -91,7 +93,7 @@ public final class CookingRecipePlugin extends UseWithHandler {
@Override
public int getAll(int index) {
- return player.getInventory().getAmount(recipe_.getBase());
+ return player.getInventory().getAmount(part_ != null ? part_ : recipe_.getBase());
}
};
if (player.getInventory().getAmount(recipe.getBase()) == 1) {
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/CookingRewrite.kt b/Server/src/main/content/global/skill/cooking/CookingRewrite.kt
similarity index 75%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/CookingRewrite.kt
rename to Server/src/main/content/global/skill/cooking/CookingRewrite.kt
index fc6415333..7bc993a8b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/CookingRewrite.kt
+++ b/Server/src/main/content/global/skill/cooking/CookingRewrite.kt
@@ -1,74 +1,85 @@
-package core.game.node.entity.skill.cooking
-
-import api.*
-import core.game.node.scenery.Scenery
-import core.game.node.entity.player.Player
-import core.game.node.item.Item
-import org.rs09.consts.Items
-import org.rs09.consts.Items.BREAD_DOUGH_2307
-import org.rs09.consts.Items.RAW_BEAR_MEAT_2136
-import org.rs09.consts.Items.RAW_BEEF_2132
-import org.rs09.consts.Items.SEAWEED_401
-import org.rs09.consts.Items.UNCOOKED_CAKE_1889
-import rs09.game.interaction.InteractionListener
-import rs09.game.node.entity.skill.cooking.CookingDialogue
-
-/**
- * @author Ceikry
- * @author bushtail - added bear meat for sinew making
- */
-class CookingRewrite : InteractionListener {
-
- val RAW_FOODS: IntArray
-
- init {
- val list = CookableItems.values().map { it.raw }.toMutableList()
- list.add(Items.COOKED_MEAT_2142)
- list.add(RAW_BEEF_2132)
- list.add(RAW_BEAR_MEAT_2136)
- list.add(SEAWEED_401)
- RAW_FOODS = list.toIntArray()
- }
-
- override fun defineListeners() {
-
- onUseWith(SCENERY,RAW_FOODS, *COOKING_OBJs){ player, used, with ->
- val item = used.asItem()
- val obj = with.asScenery()
- val range = obj.name.toLowerCase().contains("range")
- when (item.id) {
- RAW_BEEF_2132, RAW_BEAR_MEAT_2136 -> if (range) {
- player.dialogueInterpreter.open(CookingDialogue(item.id,9436,true,obj,item.id))
- return@onUseWith true
- }
- BREAD_DOUGH_2307, UNCOOKED_CAKE_1889 -> if (!range) {
- player.packetDispatch.sendMessage("You need to cook this on a range.")
- return@onUseWith false
- }
- }
-
- //cook a standard item
- player.dialogueInterpreter.open(CookingDialogue(item.id,obj))
- return@onUseWith true
- }
-
- }
-
- companion object {
- val COOKING_OBJs = intArrayOf(24313,21302, 13528, 13529, 13533, 13531, 13536, 13539, 13542, 2728, 2729, 2730, 2731, 2732, 2859, 3038, 3039, 3769, 3775, 4265, 4266, 5249, 5499, 5631, 5632, 5981, 9682, 10433, 11404, 11405, 11406, 12102, 12796, 13337, 13881, 14169, 14919, 15156, 20000, 20001, 21620, 21792, 22713, 22714, 23046, 24283, 24284, 25155, 25156, 25465, 25730, 27297, 29139, 30017, 32099, 33500, 34495, 34546, 36973, 37597, 37629, 37726, 114, 4172, 5275, 8750, 16893, 22154, 34410, 34565, 114, 9085, 9086, 9087, 12269, 15398, 25440, 25441, 2724, 2725, 2726, 4618, 4650, 5165, 6093, 6094, 6095, 6096, 8712, 9374, 9439, 9440, 9441, 10824, 17640, 17641, 17642, 17643, 18039, 21795, 24285, 24329, 27251, 33498, 35449, 36815, 36816, 37426, 40110, 10377)
-
- @JvmStatic
- fun cook(player: Player, `object`: Scenery?, initial: Int, product: Int, amount: Int) {
- val food = Item(initial)
- if (food.name.toLowerCase().contains("pizza")) {
- player.pulseManager.run(PizzaCookingPulse(player, `object`, initial, product, amount))
- } else if (food.name.toLowerCase().contains("pie")) {
- player.pulseManager.run(PieCookingPulse(player, `object`, initial, product, amount))
- } else if (CookableItems.intentionalBurn(initial)) {
- player.pulseManager.run(IntentionalBurnPulse(player, `object`, initial, product, amount))
- } else {
- player.pulseManager.run(StandardCookingPulse(player, `object`, initial, product, amount))
- }
- }
- }
-}
+package content.global.skill.cooking
+
+import core.api.amountInInventory
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import core.game.node.scenery.Scenery
+import org.rs09.consts.Items
+import org.rs09.consts.Items.BREAD_DOUGH_2307
+import org.rs09.consts.Items.RAW_BEAR_MEAT_2136
+import org.rs09.consts.Items.RAW_BEEF_2132
+import org.rs09.consts.Items.SEAWEED_401
+import org.rs09.consts.Items.UNCOOKED_CAKE_1889
+
+/**
+ * @author Ceikry
+ * @author bushtail - added bear meat for sinew making
+ * @author Woah - added single food cooking
+ */
+class CookingRewrite : InteractionListener {
+
+ val RAW_FOODS: IntArray
+
+ init {
+ val list = CookableItems.values().map { it.raw }.toMutableList()
+ list.add(Items.COOKED_MEAT_2142)
+ list.add(RAW_BEEF_2132)
+ list.add(RAW_BEAR_MEAT_2136)
+ list.add(SEAWEED_401)
+ RAW_FOODS = list.toIntArray()
+ }
+
+ override fun defineListeners() {
+
+ onUseWith(IntType.SCENERY,RAW_FOODS, *COOKING_OBJs){ player, used, with ->
+ val item = used.asItem()
+ val obj = with.asScenery()
+ val range = obj.name.toLowerCase().contains("range")
+ when (item.id) {
+ RAW_BEEF_2132, RAW_BEAR_MEAT_2136 -> if (range) {
+ player.dialogueInterpreter.open(CookingDialogue(item.id,9436,true,obj,item.id))
+ return@onUseWith true
+ }
+ BREAD_DOUGH_2307, UNCOOKED_CAKE_1889 -> if (!range) {
+ player.packetDispatch.sendMessage("You need to cook this on a range.")
+ return@onUseWith false
+ }
+ }
+
+ //cook a standard item
+ if (amountInInventory(player, item.id) > 1) {
+ player.dialogueInterpreter.open(CookingDialogue(item.id,obj))
+ } else {
+ // Don't display dialogue if player only has *1* of the item
+ val product = if (CookableItems.intentionalBurn(item.id)) { // checks intentional burning
+ CookableItems.getIntentionalBurn(item.id).id
+ } else {
+ CookableItems.forId(item.id).cooked
+ }
+ cook(player, obj, item.id, product, 1)
+ }
+ return@onUseWith true
+ }
+
+ }
+
+ companion object {
+ val COOKING_OBJs = intArrayOf(24313,21302, 13528, 13529, 13533, 13531, 13536, 13539, 13542, 2728, 2729, 2730, 2731, 2732, 2859, 3038, 3039, 3769, 3775, 4265, 4266, 5249, 5499, 5631, 5632, 5981, 9682, 10433, 11404, 11405, 11406, 12102, 12796, 13337, 13881, 14169, 14919, 15156, 20000, 20001, 21620, 21792, 22713, 22714, 23046, 24283, 24284, 25155, 25156, 25465, 25730, 27297, 29139, 30017, 32099, 33500, 34495, 34546, 36973, 37597, 37629, 37726, 114, 4172, 5275, 8750, 16893, 22154, 34410, 34565, 114, 9085, 9086, 9087, 12269, 15398, 25440, 25441, 2724, 2725, 2726, 4618, 4650, 5165, 6093, 6094, 6095, 6096, 8712, 9374, 9439, 9440, 9441, 10824, 17640, 17641, 17642, 17643, 18039, 18170, 21795, 24285, 24329, 27251, 33498, 35449, 36815, 36816, 37426, 40110, 10377)
+
+ @JvmStatic
+ fun cook(player: Player, `object`: Scenery?, initial: Int, product: Int, amount: Int) {
+ val food = Item(initial)
+ if (food.name.toLowerCase().contains("pizza")) {
+ player.pulseManager.run(PizzaCookingPulse(player, `object`, initial, product, amount))
+ } else if (food.name.toLowerCase().contains("pie")) {
+ player.pulseManager.run(PieCookingPulse(player, `object`, initial, product, amount))
+ } else if (CookableItems.intentionalBurn(initial)) {
+ player.pulseManager.run(IntentionalBurnPulse(player, `object`, initial, product, amount))
+ } else {
+ player.pulseManager.run(StandardCookingPulse(player, `object`, initial, product, amount))
+ }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/skill/cooking/DoughMakingListener.kt b/Server/src/main/content/global/skill/cooking/DoughMakingListener.kt
new file mode 100644
index 000000000..a60f89ff7
--- /dev/null
+++ b/Server/src/main/content/global/skill/cooking/DoughMakingListener.kt
@@ -0,0 +1,89 @@
+package content.global.skill.cooking
+
+import core.api.*
+import core.game.event.ResourceProducedEvent
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import org.rs09.consts.Items
+import core.game.dialogue.DialogueFile
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class DoughMakingListener : InteractionListener {
+ companion object {
+ private val FULL_WATER_CONTAINERS_TO_EMPTY_CONTAINERS = hashMapOf(
+ Items.BUCKET_OF_WATER_1929 to Items.BUCKET_1925,
+ Items.BOWL_OF_WATER_1921 to Items.BOWL_1923,
+ Items.JUG_OF_WATER_1937 to Items.JUG_1935
+ )
+ }
+
+ override fun defineListeners() {
+ onUseWith(
+ IntType.ITEM,
+ FULL_WATER_CONTAINERS_TO_EMPTY_CONTAINERS.keys.toIntArray(),
+ Items.POT_OF_FLOUR_1933
+ ) { player, waterContainer, flourContainer ->
+ openDialogue(player, DoughMakeDialogue(waterContainer.asItem(), flourContainer.asItem()))
+ return@onUseWith true
+ }
+ }
+
+ private class DoughMakeDialogue(val waterContainer: Item, val flourContainer: Item) : DialogueFile() {
+ companion object {
+ private const val STAGE_PRESENT_OPTIONS = 0
+ private const val STAGE_PROCESS_OPTION = 1
+
+ private enum class DoughProduct(val itemId: Int, val itemName: String, val requiredCookingLevel: Int) {
+ BREAD_DOUGH(Items.BREAD_DOUGH_2307, getItemName(Items.BREAD_DOUGH_2307), 1),
+ PASTRY_DOUGH(Items.PASTRY_DOUGH_1953, getItemName(Items.PASTRY_DOUGH_1953), 1),
+ PIZZA_DOUGH(Items.PIZZA_BASE_2283, getItemName(Items.PIZZA_BASE_2283), 35),
+ PITTA_DOUGH(Items.PITTA_DOUGH_1863, getItemName(Items.PITTA_DOUGH_1863), 58),
+ }
+ }
+
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ STAGE_PRESENT_OPTIONS -> {
+ player!!.dialogueInterpreter.sendOptions(
+ "What do you wish to make?",
+ *(DoughProduct.values().map { "${it.itemName}." }.toTypedArray())
+ ).also { stage++ }
+ }
+ STAGE_PROCESS_OPTION -> runTask(player!!, 1) {
+ end()
+ val selectedDoughProduct = DoughProduct.values()[buttonID - 1]
+ if (hasLevelDyn(player!!, Skills.COOKING, selectedDoughProduct.requiredCookingLevel)) {
+ if (freeSlots(player!!) < 1) {
+ sendMessage(
+ player!!,
+ "Not enough space in your inventory."
+ )
+ return@runTask
+ }
+
+ if (removeItem(player!!, waterContainer) && removeItem(player!!, flourContainer)) {
+ addItem(player!!, selectedDoughProduct.itemId)
+ player!!.dispatch(ResourceProducedEvent(selectedDoughProduct.itemId, 1, player!!))
+
+ val emptyWaterContainerId = FULL_WATER_CONTAINERS_TO_EMPTY_CONTAINERS[waterContainer.id]!!
+ addItem(player!!, emptyWaterContainerId)
+
+ addItem(player!!, Items.EMPTY_POT_1931)
+
+ sendMessage(
+ player!!,
+ "You mix the flower and the water to make some ${selectedDoughProduct.itemName.toLowerCase()}."
+ )
+ }
+ } else {
+ sendDialogue(
+ player!!,
+ "You need a Cooking level of at least ${selectedDoughProduct.requiredCookingLevel} in order to make ${selectedDoughProduct.itemName.toLowerCase()}."
+ )
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/FireOptionPotteryPlugin.java b/Server/src/main/content/global/skill/cooking/FireOptionPotteryPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/FireOptionPotteryPlugin.java
rename to Server/src/main/content/global/skill/cooking/FireOptionPotteryPlugin.java
index 8a6c6971b..c0def779b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/FireOptionPotteryPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/FireOptionPotteryPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/IntentionalBurnPulse.java b/Server/src/main/content/global/skill/cooking/IntentionalBurnPulse.java
similarity index 78%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/IntentionalBurnPulse.java
rename to Server/src/main/content/global/skill/cooking/IntentionalBurnPulse.java
index 632ee7f62..051f5a14c 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/IntentionalBurnPulse.java
+++ b/Server/src/main/content/global/skill/cooking/IntentionalBurnPulse.java
@@ -1,8 +1,11 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.node.scenery.Scenery;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
public class IntentionalBurnPulse extends StandardCookingPulse {
int initial,product,amount;
@@ -19,7 +22,7 @@ public class IntentionalBurnPulse extends StandardCookingPulse {
@Override
public boolean checkRequirements() {
- return true;
+ return object.isActive();
}
@Override
@@ -30,8 +33,12 @@ public class IntentionalBurnPulse extends StandardCookingPulse {
}
if(cook(player,null,false,initial,product)) {
amount--;
+ } else {
+ return true;
}
- return amount < 1;
+ // we are always one off a normal cooking pulse because
+ // the first tick is handled outside of this class.
+ return amount <= 1;
}
@Override
@@ -43,7 +50,7 @@ public class IntentionalBurnPulse extends StandardCookingPulse {
if (player.getInventory().remove(initialItem)) {
player.getInventory().add(productItem);
player.getPacketDispatch().sendMessage(getMessage(initialItem, productItem, burned));
- player.getAudioManager().send(SOUND);
+ playAudio(player, Sounds.FRY_2577);
return true;
}
return false;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/MakeStewPlugin.java b/Server/src/main/content/global/skill/cooking/MakeStewPlugin.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/MakeStewPlugin.java
rename to Server/src/main/content/global/skill/cooking/MakeStewPlugin.java
index 4a5102f4b..33436f4bb 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/MakeStewPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/MakeStewPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/NettleTeaPlugin.java b/Server/src/main/content/global/skill/cooking/NettleTeaPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/NettleTeaPlugin.java
rename to Server/src/main/content/global/skill/cooking/NettleTeaPlugin.java
index 40464a6b6..161c99991 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/NettleTeaPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/NettleTeaPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/NettleWaterPlugin.java b/Server/src/main/content/global/skill/cooking/NettleWaterPlugin.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/NettleWaterPlugin.java
rename to Server/src/main/content/global/skill/cooking/NettleWaterPlugin.java
index 2b851ddd9..e8dbeb385 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/NettleWaterPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/NettleWaterPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/PieCookingPulse.java b/Server/src/main/content/global/skill/cooking/PieCookingPulse.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/PieCookingPulse.java
rename to Server/src/main/content/global/skill/cooking/PieCookingPulse.java
index f19b45265..633af5815 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/PieCookingPulse.java
+++ b/Server/src/main/content/global/skill/cooking/PieCookingPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.cache.def.impl.ItemDefinition;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/PieShellPlugin.java b/Server/src/main/content/global/skill/cooking/PieShellPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/PieShellPlugin.java
rename to Server/src/main/content/global/skill/cooking/PieShellPlugin.java
index 57baf4c4f..4278836e8 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/PieShellPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/PieShellPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/PizzaCookingPulse.java b/Server/src/main/content/global/skill/cooking/PizzaCookingPulse.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/PizzaCookingPulse.java
rename to Server/src/main/content/global/skill/cooking/PizzaCookingPulse.java
index 4d0bdd19c..45653e594 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/PizzaCookingPulse.java
+++ b/Server/src/main/content/global/skill/cooking/PizzaCookingPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/content/global/skill/cooking/SaucyKebabListener.kt b/Server/src/main/content/global/skill/cooking/SaucyKebabListener.kt
new file mode 100644
index 000000000..fc22db082
--- /dev/null
+++ b/Server/src/main/content/global/skill/cooking/SaucyKebabListener.kt
@@ -0,0 +1,31 @@
+package content.global.skill.cooking
+
+
+import core.api.*
+
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+
+/**
+ * @author bushtail
+ * That's-a spicy kebab!
+ */
+class SaucyKebabListener : InteractionListener {
+ val sauce = Items.RED_HOT_SAUCE_4610
+ val kebabArr = intArrayOf(
+ Items.KEBAB_1971,
+ Items.UGTHANKI_KEBAB_1883,
+ Items.UGTHANKI_KEBAB_1885
+ )
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, kebabArr, sauce) { player, used, with ->
+ if(removeItem(player, used.asItem()) && removeItem(player, with.asItem())) {
+ return@onUseWith addItem(player, Items.SUPER_KEBAB_4608)
+ }
+ return@onUseWith false
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/SinewCookingPulse.java b/Server/src/main/content/global/skill/cooking/SinewCookingPulse.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/SinewCookingPulse.java
rename to Server/src/main/content/global/skill/cooking/SinewCookingPulse.java
index 786befa67..4f9e6be82 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/SinewCookingPulse.java
+++ b/Server/src/main/content/global/skill/cooking/SinewCookingPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/SkeweredFoodPlugin.java b/Server/src/main/content/global/skill/cooking/SkeweredFoodPlugin.java
similarity index 86%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/SkeweredFoodPlugin.java
rename to Server/src/main/content/global/skill/cooking/SkeweredFoodPlugin.java
index 21b08357c..8f02bfcb9 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/SkeweredFoodPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/SkeweredFoodPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.node.entity.skill.Skills;
import core.game.interaction.NodeUsageEvent;
@@ -7,6 +7,7 @@ import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.plugin.Initializable;
import core.plugin.Plugin;
+import org.rs09.consts.Items;
/**
* Represents the plugin used to make skwered items.
@@ -56,7 +57,10 @@ public class SkeweredFoodPlugin extends UseWithHandler {
* @date 22/12/2013
*/
public enum SkeweredSet {
- RABBIT(new Item(3226), new Item(7224)), CHOMPY(new Item(2876), new Item(7230)), BIRD(new Item(9978), new Item(9984)), BEAST(new Item(9986), new Item(9992));
+ CHOMPY(new Item(Items.RAW_CHOMPY_2876), new Item(Items.SKEWERED_CHOMPY_7230)),
+ RABBIT(new Item(Items.RAW_RABBIT_3226), new Item(Items.SKEWERED_RABBIT_7224)),
+ BIRD(new Item(Items.RAW_BIRD_MEAT_9978), new Item(Items.SKEWERED_BIRD_MEAT_9984)),
+ BEAST(new Item(Items.RAW_BEAST_MEAT_9986), new Item(Items.SKEWERED_BEAST_9992));
/**
* Represents the raw item.
diff --git a/Server/src/main/content/global/skill/cooking/StandardCookingPulse.java b/Server/src/main/content/global/skill/cooking/StandardCookingPulse.java
new file mode 100644
index 000000000..d70856a27
--- /dev/null
+++ b/Server/src/main/content/global/skill/cooking/StandardCookingPulse.java
@@ -0,0 +1,224 @@
+package content.global.skill.cooking;
+
+import content.global.skill.skillcapeperks.SkillcapePerks;
+import core.game.event.ResourceProducedEvent;
+import core.game.node.entity.impl.Animator;
+import core.game.node.entity.player.Player;
+import core.game.node.entity.player.info.LogType;
+import core.game.node.entity.player.info.PlayerMonitor;
+import core.game.node.entity.player.link.audio.Audio;
+import core.game.node.entity.skill.Skills;
+import core.game.node.item.GroundItemManager;
+import core.game.node.item.Item;
+import core.game.node.scenery.Scenery;
+import core.game.system.task.Pulse;
+import core.game.world.update.flag.context.Animation;
+import core.tools.RandomFunction;
+import org.rs09.consts.Items;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
+import content.data.Quests;
+
+public class StandardCookingPulse extends Pulse {
+ //range animation
+ private static final Animation RANGE_ANIMATION = new Animation(883, Animator.Priority.HIGH);
+
+ //fire animation
+ private static final Animation FIRE_ANIMATION = new Animation(897, Animator.Priority.HIGH);
+
+ //Cooking sound
+ public static final Audio SOUND = new Audio(2577, 1, 1);
+
+ private static final int LUMBRIDGE_RANGE = 114;
+
+ private final int initial;
+ private final int product;
+ private int amount;
+ private final Scenery object;
+ private final Player player;
+ private double experience;
+ private boolean burned = false;
+ public CookableItems properties;
+
+ private int initialAmount;
+ private int processedAmount;
+
+ public StandardCookingPulse(Player player, Scenery object, int initial, int product, int amount) {
+ this.player = player;
+ this.object = object;
+ this.initial = initial;
+ this.product = product;
+ this.amount = amount;
+ this.initialAmount = amountInInventory(player, initial);
+ this.processedAmount = 0;
+ }
+
+ @Override
+ public void start() {
+ properties = CookableItems.forId(initial);
+ if (checkRequirements()) {
+ super.start();
+ cook(player, object, properties != null && burned, initial, product);
+ amount--;
+ }
+ }
+
+ @Override
+ public boolean pulse() {
+ if (amount < 1 || !checkRequirements()) {
+ return true;
+ }
+ return reward();
+ }
+
+ public void animate() {
+ player.animate(getAnimation(object));
+ }
+
+ public boolean checkRequirements() {
+ this.experience = 0;
+ if (properties != null) {
+ // Handle Cook's Assistant range
+ if (object.getId() == LUMBRIDGE_RANGE && !player.getQuestRepository().isComplete(Quests.COOKS_ASSISTANT)) {
+ player.getPacketDispatch().sendMessage("You need to have completed the Cook's Assistant quest in order to use that range.");
+ return false;
+ }
+
+ //check level
+ if (player.getSkills().getLevel(Skills.COOKING) < properties.level) {
+ player.getDialogueInterpreter().sendDialogue("You need a cooking level of " + properties.level + " to cook this.");
+ return false;
+ }
+
+ this.experience = properties.experience;
+ this.burned = isBurned(player, object, initial);
+ }
+ if (amount < 1) {
+ return false;
+ }
+
+ return object.isActive();
+ }
+
+ public boolean reward() {
+ if (getDelay() == 1) {
+ int delay = object.getName().toLowerCase().contains("range") ? 5 : 4;
+ if (SkillcapePerks.isActive(SkillcapePerks.HASTY_COOKING, player)) {
+ delay -= 1;
+ }
+ setDelay(delay);
+ return false;
+ }
+
+ if (cook(player, object, burned, initial, product)) {
+ amount--;
+ } else {
+ return true;
+ }
+ return amount < 1;
+ }
+
+ public boolean isBurned(final Player player, final Scenery object, int food) {
+ boolean hasGauntlets = player.getEquipment().containsItem(new Item(Items.COOKING_GAUNTLETS_775));
+ int effectiveCookingLevel = player.getSkills().getLevel(Skills.COOKING);
+ if (SkillcapePerks.isActive(SkillcapePerks.HASTY_COOKING, player)) {
+ effectiveCookingLevel -= 5;
+ }
+ CookableItems item = CookableItems.forId(food);
+ int low;
+ int high;
+ if (hasGauntlets && CookableItems.gauntletValues.containsKey(food)) {
+ int[] successValues = CookableItems.gauntletValues.get(food);
+ low = successValues[0];
+ high = successValues[1];
+ } else if (object.getId() == LUMBRIDGE_RANGE) {
+ int[] successValues = CookableItems.lumbridgeRangeValues.getOrDefault(food, new int[]{item.lowRange, item.highRange});
+ low = successValues[0];
+ high = successValues[1];
+ } else {
+ boolean isFire = object.getName().toLowerCase().contains("fire");
+ low = isFire ? item.low : item.lowRange;
+ high = isFire ? item.high : item.highRange;
+ }
+ double host_ratio = RandomFunction.randomDouble(100.0);
+ double client_ratio = RandomFunction.getSkillSuccessChance(low, high, effectiveCookingLevel);
+ return host_ratio > client_ratio;
+ }
+
+ public boolean cook(final Player player, final Scenery object, final boolean burned, final int initial, final int product) {
+ Item initialItem = new Item(initial);
+ Item productItem = new Item(product);
+ animate();
+
+ //handle special cooking results (spits, cake, etc) that don't justify separate plugin
+ switch (initial) {
+ case Items.SKEWERED_CHOMPY_7230:
+ case Items.SKEWERED_RABBIT_7224:
+ case Items.SKEWERED_BIRD_MEAT_9984:
+ case Items.SKEWERED_BEAST_9992:
+ case Items.IRON_SPIT_7225:
+ if (RandomFunction.random(15) == 5) {
+ player.getPacketDispatch().sendMessage("Your iron spit seems to have broken in the process.");
+ } else {
+ if (!player.getInventory().add(new Item(Items.IRON_SPIT_7225))) {
+ GroundItemManager.create(new Item(Items.IRON_SPIT_7225), player.getLocation(), player);
+ }
+ }
+ break;
+ case Items.UNCOOKED_CAKE_1889: //cake
+ if (!player.getInventory().add(new Item(Items.CAKE_TIN_1887))) {
+ GroundItemManager.create(new Item(Items.CAKE_TIN_1887), player);
+ }
+ break;
+ }
+ if (player.getInventory().remove(initialItem)) {
+ if (!burned) {
+ player.getInventory().add(productItem);
+ player.dispatch(new ResourceProducedEvent(productItem.getId(), 1, object, initialItem.getId()));
+ player.getSkills().addExperience(Skills.COOKING, experience, true);
+ processedAmount++;
+ if (processedAmount > initialAmount) {
+ PlayerMonitor.log(player, LogType.DUPE_ALERT, "cooked item (" + player.getName() + ", " + initialItem.getName() + "): initialAmount " + initialAmount + ", processedAmount " + processedAmount);
+ }
+ player.incrementAttribute("/save:stats_manager:food_cooked", 1);
+ } else {
+ player.dispatch(new ResourceProducedEvent(CookableItems.getBurnt(initial).getId(), 1, object, initialItem.getId()));
+ player.getInventory().add(CookableItems.getBurnt(initial));
+ }
+ player.getPacketDispatch().sendMessage(getMessage(initialItem, productItem, burned));
+ playAudio(player, Sounds.FRY_2577);
+ return true;
+ }
+ return false;
+ }
+
+ public String getMessage(Item food, Item product, boolean burned) {
+ if (food.getId() == Items.RAW_OOMLIE_2337) {
+ return "The meat is far too delicate to cook like this. Perhaps you should wrap something around it to protect it from the heat.";
+ }
+ if (product.getId() == Items.SODA_ASH_1781) {
+ return "You burn the seaweed into soda ash.";
+ }
+ if (CookableItems.intentionalBurn(food.getId())) {
+ return "You deliberately burn the perfectly good piece of meat.";
+ }
+
+ if (!burned && food.getName().startsWith("Raw")) {
+ return "You manage to cook some " + food.getName().replace("Raw ", "") + ".";
+ } else if (burned && food.getName().startsWith("Raw")) {
+ return "You accidentally burn some " + food.getName().replace("Raw ", "") + ".";
+ }
+
+ if (!burned && food.getName().startsWith(("Uncooked"))) {
+ return "You manage to cook some " + food.getName().replace("Uncooked ", "") + ".";
+ } else if (burned && food.getName().startsWith(("Uncooked"))) {
+ return "You accidentally burn some " + food.getName().replace("Uncooked ", "") + ".";
+ }
+ return null;
+ }
+
+ private Animation getAnimation(final Scenery object) {
+ return !object.getName().equalsIgnoreCase("fire") ? RANGE_ANIMATION : FIRE_ANIMATION;
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/WatermelonSlicePlugin.java b/Server/src/main/content/global/skill/cooking/WatermelonSlicePlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/WatermelonSlicePlugin.java
rename to Server/src/main/content/global/skill/cooking/WatermelonSlicePlugin.java
index 1fd4040a1..d8273968f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/WatermelonSlicePlugin.java
+++ b/Server/src/main/content/global/skill/cooking/WatermelonSlicePlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/WineFermentPlugin.java b/Server/src/main/content/global/skill/cooking/WineFermentPlugin.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/WineFermentPlugin.java
rename to Server/src/main/content/global/skill/cooking/WineFermentPlugin.java
index b9a8a3d80..b2e96678d 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/WineFermentPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/WineFermentPlugin.java
@@ -1,13 +1,13 @@
-package core.game.node.entity.skill.cooking;
+package content.global.skill.cooking;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.fermenting.WineFermentingPulse;
+import content.global.skill.cooking.fermenting.WineFermentingPulse;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
-import rs09.game.world.GameWorld;
+import core.game.world.GameWorld;
import core.plugin.Plugin;
/**
diff --git a/Server/src/main/java/core/game/content/dialogue/DairyChurnDialogue.java b/Server/src/main/content/global/skill/cooking/dairy/DairyChurnDialogue.java
similarity index 92%
rename from Server/src/main/java/core/game/content/dialogue/DairyChurnDialogue.java
rename to Server/src/main/content/global/skill/cooking/dairy/DairyChurnDialogue.java
index eff0de5a0..0c2b5e08f 100644
--- a/Server/src/main/java/core/game/content/dialogue/DairyChurnDialogue.java
+++ b/Server/src/main/content/global/skill/cooking/dairy/DairyChurnDialogue.java
@@ -1,10 +1,9 @@
-package core.game.content.dialogue;
+package content.global.skill.cooking.dairy;
import core.game.component.Component;
+import core.game.dialogue.DialoguePlugin;
import core.plugin.Initializable;
import org.rs09.consts.Items;
-import core.game.node.entity.skill.cooking.dairy.DairyChurnPulse;
-import core.game.node.entity.skill.cooking.dairy.DairyProduct;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/content/dialogue/DairyChurnOptionPlugin.java b/Server/src/main/content/global/skill/cooking/dairy/DairyChurnOptionPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/content/dialogue/DairyChurnOptionPlugin.java
rename to Server/src/main/content/global/skill/cooking/dairy/DairyChurnOptionPlugin.java
index d4d768963..1c87334ca 100644
--- a/Server/src/main/java/core/game/content/dialogue/DairyChurnOptionPlugin.java
+++ b/Server/src/main/content/global/skill/cooking/dairy/DairyChurnOptionPlugin.java
@@ -1,4 +1,4 @@
-package core.game.content.dialogue;
+package content.global.skill.cooking.dairy;
import core.cache.def.impl.SceneryDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/dairy/DairyChurnPulse.java b/Server/src/main/content/global/skill/cooking/dairy/DairyChurnPulse.java
similarity index 88%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/dairy/DairyChurnPulse.java
rename to Server/src/main/content/global/skill/cooking/dairy/DairyChurnPulse.java
index 050c60a5c..f93e436cb 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/dairy/DairyChurnPulse.java
+++ b/Server/src/main/content/global/skill/cooking/dairy/DairyChurnPulse.java
@@ -1,5 +1,8 @@
-package core.game.node.entity.skill.cooking.dairy;
+package content.global.skill.cooking.dairy;
+import content.region.fremennik.rellekka.handlers.RellekkaUtils;
+import content.region.fremennik.rellekka.handlers.RellekkaZone;
+import core.game.event.ResourceProducedEvent;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.diary.DiaryType;
import core.game.node.entity.skill.SkillPulse;
@@ -11,6 +14,9 @@ import core.game.world.update.flag.context.Animation;
import core.tools.StringUtils;
import org.rs09.consts.Items;
+import static core.api.ContentAPIKt.location;
+import static core.api.ContentAPIKt.sendMessage;
+
/**
* Represents the skill pulse used to make a dairy product.
* @author 'Vexia
@@ -106,14 +112,9 @@ public final class DairyChurnPulse extends SkillPulse- {
}
}
player.getPacketDispatch().sendMessage("You make " + (StringUtils.isPlusN(dairy.getProduct().getName().toLowerCase()) ? "an" : "a") + " " + dairy.getProduct().getName().toLowerCase() + ".");
+ player.dispatch(new ResourceProducedEvent(dairy.getProduct().getId(), amount, node, BUCKET_OF_MILK.getId()));
player.getSkills().addExperience(Skills.COOKING, dairy.getExperience(), true);
-
- // Seers village diary
- if (player.getLocation().withinDistance(new Location(2730, 3578, 0))
- && !player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).isComplete(0,8)) {
- player.getAchievementDiaryManager().getDiary(DiaryType.SEERS_VILLAGE).updateTask(player,0,8,true);
- }
- break;
+ break;
}
}
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/dairy/DairyProduct.java b/Server/src/main/content/global/skill/cooking/dairy/DairyProduct.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/dairy/DairyProduct.java
rename to Server/src/main/content/global/skill/cooking/dairy/DairyProduct.java
index 9d6f31151..09376016a 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/dairy/DairyProduct.java
+++ b/Server/src/main/content/global/skill/cooking/dairy/DairyProduct.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking.dairy;
+package content.global.skill.cooking.dairy;
import java.util.Arrays;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/fermenting/WineFermentingPulse.java b/Server/src/main/content/global/skill/cooking/fermenting/WineFermentingPulse.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/fermenting/WineFermentingPulse.java
rename to Server/src/main/content/global/skill/cooking/fermenting/WineFermentingPulse.java
index d6efa5003..4f9dd7a6e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/fermenting/WineFermentingPulse.java
+++ b/Server/src/main/content/global/skill/cooking/fermenting/WineFermentingPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking.fermenting;
+package content.global.skill.cooking.fermenting;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/content/global/skill/cooking/recipe/HangoverRecipe.kt b/Server/src/main/content/global/skill/cooking/recipe/HangoverRecipe.kt
new file mode 100644
index 000000000..063b85ce4
--- /dev/null
+++ b/Server/src/main/content/global/skill/cooking/recipe/HangoverRecipe.kt
@@ -0,0 +1,44 @@
+package content.global.skill.cooking.recipe
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.skill.Skills
+import org.rs09.consts.Items
+
+class HangoverRecipe : InteractionListener {
+
+ companion object{
+ private const val SNAPE_GRASS = Items.SNAPE_GRASS_231
+ private const val HANGOVER_CURE = Items.HANGOVER_CURE_1504
+ private const val BUCKET_OF_MILK = Items.BUCKET_OF_MILK_1927
+ private const val CHOCOLATE_DUST = Items.CHOCOLATE_DUST_1975
+ private const val CHOCOLATE_MILK = Items.CHOCOLATEY_MILK_1977
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, CHOCOLATE_DUST, BUCKET_OF_MILK) { player, _, _ ->
+ if(hasLevelDyn(player, Skills.COOKING, 4)){
+ if(removeItem(player, CHOCOLATE_DUST) and removeItem(player, BUCKET_OF_MILK)){
+ addItem(player, CHOCOLATE_MILK)
+ sendItemDialogue(player, CHOCOLATE_MILK, "You mix the chocolate into the bucket.")
+ }
+ }
+ else {
+ sendDialogue(player, "You need a Cooking level of at least 4 to make chocolate milk.")
+ }
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM, SNAPE_GRASS, CHOCOLATE_MILK) { player, _, _ ->
+ if (removeItem(player, SNAPE_GRASS) && removeItem(player, CHOCOLATE_MILK))
+ {
+ sendItemDialogue(player, HANGOVER_CURE, "You mix the snape grass into the bucket.")
+ addItem(player, HANGOVER_CURE)
+ return@onUseWith true
+ }
+ return@onUseWith false
+ }
+
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/OomlieWrap.java b/Server/src/main/content/global/skill/cooking/recipe/OomlieWrap.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/OomlieWrap.java
rename to Server/src/main/content/global/skill/cooking/recipe/OomlieWrap.java
index e215eaf4a..d5e8ee5f7 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/OomlieWrap.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/OomlieWrap.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.cooking.recipe;
+package content.global.skill.cooking.recipe;
import org.rs09.consts.Items;
import core.game.node.entity.skill.Skills;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/Recipe.java b/Server/src/main/content/global/skill/cooking/recipe/Recipe.java
similarity index 81%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/Recipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/Recipe.java
index c106ddee5..3e2eff513 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/Recipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/Recipe.java
@@ -1,15 +1,15 @@
-package core.game.node.entity.skill.cooking.recipe;
+package content.global.skill.cooking.recipe;
-import core.game.node.entity.skill.cooking.recipe.cake.ChocolateCake;
-import core.game.node.entity.skill.cooking.recipe.pie.impl.*;
-import core.game.node.entity.skill.cooking.recipe.pizza.impl.AnchovyPizza;
-import core.game.node.entity.skill.cooking.recipe.pizza.impl.MeatPizza;
-import core.game.node.entity.skill.cooking.recipe.pizza.impl.PineapplePizza;
-import core.game.node.entity.skill.cooking.recipe.pizza.impl.PlainPizza;
-import core.game.node.entity.skill.cooking.recipe.potato.impl.*;
-import core.game.node.entity.skill.cooking.recipe.stew.CurryRecipe;
-import core.game.node.entity.skill.cooking.recipe.stew.StewRecipe;
-import core.game.node.entity.skill.cooking.recipe.topping.impl.*;
+import content.global.skill.cooking.recipe.pie.impl.*;
+import content.global.skill.cooking.recipe.pizza.impl.AnchovyPizza;
+import content.global.skill.cooking.recipe.pizza.impl.MeatPizza;
+import content.global.skill.cooking.recipe.pizza.impl.PineapplePizza;
+import content.global.skill.cooking.recipe.pizza.impl.PlainPizza;
+import content.global.skill.cooking.recipe.potato.impl.*;
+import content.global.skill.cooking.recipe.stew.CurryRecipe;
+import content.global.skill.cooking.recipe.stew.StewRecipe;
+import content.global.skill.cooking.recipe.topping.impl.*;
+import content.global.skill.cooking.recipe.cake.ChocolateCake;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
@@ -23,7 +23,7 @@ import core.game.node.item.Item;
public abstract class Recipe {
/**
- * Represents the array of active recipes in Keldagrim..
+ * Represents the array of active recipes in 2009Scape.
*/
// TODO:
// - Making this an enum would drastically save on file/line count, since the recipes seem to mostly be plain-old-data classes
@@ -119,6 +119,9 @@ public abstract class Recipe {
}
}
if (index != -1) {
+ if (!player.getInventory().containItems(event.getBaseItem().getId(), event.getUsedItem().getId())) {
+ return;
+ }
if (player.getInventory().remove(event.getBaseItem()) && player.getInventory().remove(event.getUsedItem())) {
player.getInventory().add(getParts()[index + 1]);
String message = getMixMessage(event);
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/cake/ChocolateCake.java b/Server/src/main/content/global/skill/cooking/recipe/cake/ChocolateCake.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/cake/ChocolateCake.java
rename to Server/src/main/content/global/skill/cooking/recipe/cake/ChocolateCake.java
index 72280ce18..97ef11d88 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/cake/ChocolateCake.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/cake/ChocolateCake.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.cake;
+package content.global.skill.cooking.recipe.cake;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/PieRecipe.java b/Server/src/main/content/global/skill/cooking/recipe/pie/PieRecipe.java
similarity index 86%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/PieRecipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/PieRecipe.java
index 00fb85af5..878a3333f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/PieRecipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/PieRecipe.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie;
+package content.global.skill.cooking.recipe.pie;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/AdmiralPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/AdmiralPie.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/AdmiralPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/AdmiralPie.java
index 652bc3549..9cc6a98eb 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/AdmiralPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/AdmiralPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/ApplePie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/ApplePie.java
similarity index 82%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/ApplePie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/ApplePie.java
index 2956dd38b..e44917445 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/ApplePie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/ApplePie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/FishPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/FishPie.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/FishPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/FishPie.java
index 7a2286891..7a1dad02f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/FishPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/FishPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/GardenPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/GardenPie.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/GardenPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/GardenPie.java
index 04bd3066f..90fbe7e23 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/GardenPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/GardenPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/MeatPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/MeatPie.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/MeatPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/MeatPie.java
index 76add066f..1edb223fd 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/MeatPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/MeatPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/MudPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/MudPie.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/MudPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/MudPie.java
index 64ef1750f..64a542f46 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/MudPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/MudPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/RedberryPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/RedberryPie.java
similarity index 80%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/RedberryPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/RedberryPie.java
index 8c7920785..6ebbd04f6 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/RedberryPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/RedberryPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/SummerPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/SummerPie.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/SummerPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/SummerPie.java
index 689548cb5..14996852a 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/SummerPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/SummerPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/WildPie.java b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/WildPie.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/WildPie.java
rename to Server/src/main/content/global/skill/cooking/recipe/pie/impl/WildPie.java
index 0e9c8f0fb..3b4decaa2 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pie/impl/WildPie.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pie/impl/WildPie.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pie.impl;
+package content.global.skill.cooking.recipe.pie.impl;
-import core.game.node.entity.skill.cooking.recipe.pie.PieRecipe;
+import content.global.skill.cooking.recipe.pie.PieRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/PizzaRecipe.java b/Server/src/main/content/global/skill/cooking/recipe/pizza/PizzaRecipe.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/PizzaRecipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/pizza/PizzaRecipe.java
index 0471e4a11..5a1385a35 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/PizzaRecipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pizza/PizzaRecipe.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.pizza;
+package content.global.skill.cooking.recipe.pizza;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/AnchovyPizza.java b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/AnchovyPizza.java
similarity index 84%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/AnchovyPizza.java
rename to Server/src/main/content/global/skill/cooking/recipe/pizza/impl/AnchovyPizza.java
index 4fc09e82a..4a70625ff 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/AnchovyPizza.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/AnchovyPizza.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pizza.impl;
+package content.global.skill.cooking.recipe.pizza.impl;
-import core.game.node.entity.skill.cooking.recipe.pizza.PizzaRecipe;
+import content.global.skill.cooking.recipe.pizza.PizzaRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/MeatPizza.java b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/MeatPizza.java
similarity index 86%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/MeatPizza.java
rename to Server/src/main/content/global/skill/cooking/recipe/pizza/impl/MeatPizza.java
index 9b9d8f903..b79096137 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/MeatPizza.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/MeatPizza.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pizza.impl;
+package content.global.skill.cooking.recipe.pizza.impl;
-import core.game.node.entity.skill.cooking.recipe.pizza.PizzaRecipe;
+import content.global.skill.cooking.recipe.pizza.PizzaRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/PineapplePizza.java b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/PineapplePizza.java
similarity index 89%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/PineapplePizza.java
rename to Server/src/main/content/global/skill/cooking/recipe/pizza/impl/PineapplePizza.java
index e93097a0a..7e4746e2f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/PineapplePizza.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/PineapplePizza.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.pizza.impl;
+package content.global.skill.cooking.recipe.pizza.impl;
-import core.game.node.entity.skill.cooking.recipe.pizza.PizzaRecipe;
+import content.global.skill.cooking.recipe.pizza.PizzaRecipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/PlainPizza.java b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/PlainPizza.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/PlainPizza.java
rename to Server/src/main/content/global/skill/cooking/recipe/pizza/impl/PlainPizza.java
index 01c85e937..8d624dca3 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/pizza/impl/PlainPizza.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/pizza/impl/PlainPizza.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.pizza.impl;
+package content.global.skill.cooking.recipe.pizza.impl;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/PotatoRecipe.java b/Server/src/main/content/global/skill/cooking/recipe/potato/PotatoRecipe.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/PotatoRecipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/PotatoRecipe.java
index 6eee0e3f5..c2640a8bc 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/PotatoRecipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/PotatoRecipe.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.potato;
+package content.global.skill.cooking.recipe.potato;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/ButterPotato.java b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/ButterPotato.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/ButterPotato.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/impl/ButterPotato.java
index c3b445a60..b382a5029 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/ButterPotato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/ButterPotato.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.potato.impl;
+package content.global.skill.cooking.recipe.potato.impl;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/CheesePotato.java b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/CheesePotato.java
similarity index 84%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/CheesePotato.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/impl/CheesePotato.java
index fe1a1ea5d..f111ed950 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/CheesePotato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/CheesePotato.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.potato.impl;
+package content.global.skill.cooking.recipe.potato.impl;
-import core.game.node.entity.skill.cooking.recipe.potato.PotatoRecipe;
+import content.global.skill.cooking.recipe.potato.PotatoRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/ChilliPotato.java b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/ChilliPotato.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/ChilliPotato.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/impl/ChilliPotato.java
index 40683e915..88c5ed146 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/ChilliPotato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/ChilliPotato.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.potato.impl;
+package content.global.skill.cooking.recipe.potato.impl;
-import core.game.node.entity.skill.cooking.recipe.potato.PotatoRecipe;
+import content.global.skill.cooking.recipe.potato.PotatoRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/EggPotato.java b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/EggPotato.java
similarity index 84%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/EggPotato.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/impl/EggPotato.java
index 6dd5f7d2f..c616591fd 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/EggPotato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/EggPotato.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.potato.impl;
+package content.global.skill.cooking.recipe.potato.impl;
-import core.game.node.entity.skill.cooking.recipe.potato.PotatoRecipe;
+import content.global.skill.cooking.recipe.potato.PotatoRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/MushroomPotato.java b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/MushroomPotato.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/MushroomPotato.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/impl/MushroomPotato.java
index 56fa4d669..d7bfa1c2c 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/MushroomPotato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/MushroomPotato.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.potato.impl;
+package content.global.skill.cooking.recipe.potato.impl;
-import core.game.node.entity.skill.cooking.recipe.potato.PotatoRecipe;
+import content.global.skill.cooking.recipe.potato.PotatoRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/TunaPotato.java b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/TunaPotato.java
similarity index 84%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/TunaPotato.java
rename to Server/src/main/content/global/skill/cooking/recipe/potato/impl/TunaPotato.java
index e9466ac45..645d5ed2e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/potato/impl/TunaPotato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/potato/impl/TunaPotato.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.potato.impl;
+package content.global.skill.cooking.recipe.potato.impl;
-import core.game.node.entity.skill.cooking.recipe.potato.PotatoRecipe;
+import content.global.skill.cooking.recipe.potato.PotatoRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/stew/CurryRecipe.java b/Server/src/main/content/global/skill/cooking/recipe/stew/CurryRecipe.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/stew/CurryRecipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/stew/CurryRecipe.java
index 781ba4725..4ea78825d 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/stew/CurryRecipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/stew/CurryRecipe.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.stew;
+package content.global.skill.cooking.recipe.stew;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/stew/StewRecipe.java b/Server/src/main/content/global/skill/cooking/recipe/stew/StewRecipe.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/stew/StewRecipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/stew/StewRecipe.java
index 17f6c4a08..4073bcc0e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/stew/StewRecipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/stew/StewRecipe.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.stew;
+package content.global.skill.cooking.recipe.stew;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/ToppingRecipe.java b/Server/src/main/content/global/skill/cooking/recipe/topping/ToppingRecipe.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/ToppingRecipe.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/ToppingRecipe.java
index 4285360f5..5c2cacb15 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/ToppingRecipe.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/ToppingRecipe.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.topping;
+package content.global.skill.cooking.recipe.topping;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChilliConCarne.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChilliConCarne.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChilliConCarne.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChilliConCarne.java
index ad64d0baf..4085d149b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChilliConCarne.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChilliConCarne.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChoppedOnion.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChoppedOnion.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChoppedOnion.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChoppedOnion.java
index a3d560f1c..5a30107c1 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChoppedOnion.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChoppedOnion.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
-import core.game.node.entity.skill.cooking.recipe.topping.ToppingRecipe;
+import content.global.skill.cooking.recipe.topping.ToppingRecipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChoppedTuna.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChoppedTuna.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChoppedTuna.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChoppedTuna.java
index f0f3c6428..4723c61ff 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/ChoppedTuna.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/ChoppedTuna.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
-import core.game.node.entity.skill.cooking.recipe.topping.ToppingRecipe;
+import content.global.skill.cooking.recipe.topping.ToppingRecipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/EggAndTomato.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/EggAndTomato.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/EggAndTomato.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/EggAndTomato.java
index cebfaf538..dabf2db2b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/EggAndTomato.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/EggAndTomato.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/MushroomAndOnion.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/MushroomAndOnion.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/MushroomAndOnion.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/MushroomAndOnion.java
index 27a3b8f55..3b99200f7 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/MushroomAndOnion.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/MushroomAndOnion.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/SlicedMushroom.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/SlicedMushroom.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/SlicedMushroom.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/SlicedMushroom.java
index 6ec41c7fc..46f9d09f8 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/SlicedMushroom.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/SlicedMushroom.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
-import core.game.node.entity.skill.cooking.recipe.topping.ToppingRecipe;
+import content.global.skill.cooking.recipe.topping.ToppingRecipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/SpicySauce.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/SpicySauce.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/SpicySauce.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/SpicySauce.java
index d4a8d6f1f..2b0a7e103 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/SpicySauce.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/SpicySauce.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/TunaAndCorn.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/TunaAndCorn.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/TunaAndCorn.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/TunaAndCorn.java
index dbebeeb49..1e2c92a6f 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/TunaAndCorn.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/TunaAndCorn.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.cooking.recipe.Recipe;
+import content.global.skill.cooking.recipe.Recipe;
import core.game.interaction.NodeUsageEvent;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/UncookedEgg.java b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/UncookedEgg.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/UncookedEgg.java
rename to Server/src/main/content/global/skill/cooking/recipe/topping/impl/UncookedEgg.java
index c77d33c69..61ce50394 100644
--- a/Server/src/main/java/core/game/node/entity/skill/cooking/recipe/topping/impl/UncookedEgg.java
+++ b/Server/src/main/content/global/skill/cooking/recipe/topping/impl/UncookedEgg.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.cooking.recipe.topping.impl;
+package content.global.skill.cooking.recipe.topping.impl;
-import core.game.node.entity.skill.cooking.recipe.topping.ToppingRecipe;
+import content.global.skill.cooking.recipe.topping.ToppingRecipe;
import core.game.node.item.Item;
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/AmuletStringingPlugin.java b/Server/src/main/content/global/skill/crafting/AmuletStringingPlugin.java
similarity index 92%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/AmuletStringingPlugin.java
rename to Server/src/main/content/global/skill/crafting/AmuletStringingPlugin.java
index ff7fd9d1e..cfe3cfd24 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/AmuletStringingPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/AmuletStringingPlugin.java
@@ -1,8 +1,8 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.plugin.Initializable;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.crafting.jewellery.JewelleryCrafting;
+import content.global.skill.crafting.jewellery.JewelleryCrafting;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/content/global/skill/crafting/BattlestaffListener.kt b/Server/src/main/content/global/skill/crafting/BattlestaffListener.kt
new file mode 100644
index 000000000..bb31a0689
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/BattlestaffListener.kt
@@ -0,0 +1,89 @@
+package content.global.skill.crafting
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.node.entity.skill.Skills
+import org.rs09.consts.Items
+import kotlin.math.min
+
+class BattlestaffListener : InteractionListener {
+
+ private val battlestaff = intArrayOf(Items.BATTLESTAFF_1391, Items.DRAMEN_STAFF_772)
+ val orbs = BattlestaffProduct.values().map { it.requiredOrbItemId }.toIntArray()
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, orbs, *battlestaff) { player, used, with ->
+ val product = BattlestaffProduct.productMap[used.id] ?: return@onUseWith true
+
+ if (!hasLevelDyn(player, Skills.CRAFTING, product.minimumLevel)) {
+ sendMessage(player, "You need a Crafting level of ${product.minimumLevel} to make this.")
+ return@onUseWith true
+ }
+
+ // Avoids sending dialogue if only one can be created
+ if (amountInInventory(player, used.id) == 1 || amountInInventory(player, with.id) == 1) {
+
+ if (removeItem(player, product.requiredOrbItemId) && removeItem(player, with.id)) {
+ addItem(player, product.producedItemId, product.amountProduced)
+ rewardXP(player, Skills.CRAFTING, product.experience)
+ }
+
+ if (product.producedItemId == Items.AIR_BATTLESTAFF_1397) {
+ player.achievementDiaryManager.finishTask(player, DiaryType.VARROCK, 2, 6)
+ }
+
+ return@onUseWith true
+ }
+
+ sendSkillDialogue(player) {
+ withItems(product.producedItemId)
+ create { _, amount ->
+
+ runTask(player, 2, amount) {
+ if (amount < 1) return@runTask
+
+ if (removeItem(player, product.requiredOrbItemId) && removeItem(player, with.id)) {
+ addItem(player, product.producedItemId, product.amountProduced)
+ rewardXP(player, Skills.CRAFTING, product.experience)
+ }
+
+ if (product.producedItemId == Items.AIR_BATTLESTAFF_1397) {
+ player.achievementDiaryManager.finishTask(player, DiaryType.VARROCK, 2, 6)
+ } else return@runTask
+ }
+ }
+
+ calculateMaxAmount { _ ->
+ min(amountInInventory(player, with.id), amountInInventory(player, used.id))
+ }
+ }
+
+ return@onUseWith true
+ }
+ }
+
+ enum class BattlestaffProduct(
+ val requiredOrbItemId: Int,
+ val producedItemId: Int,
+ val amountProduced: Int,
+ val minimumLevel: Int,
+ val experience: Double,
+ ) {
+ WATER_BATTLESTAFF(Items.WATER_ORB_571, Items.WATER_BATTLESTAFF_1395, 1, 54, 100.0),
+ EARTH_BATTLESTAFF(Items.EARTH_ORB_575, Items.EARTH_BATTLESTAFF_1399, 1, 58, 112.5),
+ FIRE_BATTLESTAFF(Items.FIRE_ORB_569, Items.FIRE_BATTLESTAFF_1393, 1, 62, 125.0),
+ AIR_BATTLESTAFF(Items.AIR_ORB_573, Items.AIR_BATTLESTAFF_1397, 1, 66, 137.5);
+
+ companion object {
+ val productMap = HashMap
()
+
+ init {
+ for (product in BattlestaffProduct.values()) {
+ productMap[product.requiredOrbItemId] = product
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/ChiselLimestonePlugin.java b/Server/src/main/content/global/skill/crafting/ChiselLimestonePlugin.java
similarity index 87%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/ChiselLimestonePlugin.java
rename to Server/src/main/content/global/skill/crafting/ChiselLimestonePlugin.java
index 0f1724b0a..cf584b2b4 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/ChiselLimestonePlugin.java
+++ b/Server/src/main/content/global/skill/crafting/ChiselLimestonePlugin.java
@@ -1,6 +1,6 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
-import core.game.node.entity.skill.crafting.limestone.ChiselLimestonePulse;
+import content.global.skill.crafting.limestone.ChiselLimestonePulse;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/GemCutPlugin.java b/Server/src/main/content/global/skill/crafting/GemCutPlugin.java
similarity index 82%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/GemCutPlugin.java
rename to Server/src/main/content/global/skill/crafting/GemCutPlugin.java
index 22dc62260..f848bacd5 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/GemCutPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/GemCutPlugin.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
-import core.game.node.entity.skill.crafting.gem.GemCutPulse;
-import core.game.node.entity.skill.crafting.gem.Gems;
+import content.global.skill.crafting.gem.GemCutPulse;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
+import content.global.skill.crafting.gem.Gems;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/JewelleryCraftPlugin.java b/Server/src/main/content/global/skill/crafting/JewelleryCraftPlugin.java
similarity index 88%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/JewelleryCraftPlugin.java
rename to Server/src/main/content/global/skill/crafting/JewelleryCraftPlugin.java
index 5ea7d4714..72d19ef46 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/JewelleryCraftPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/JewelleryCraftPlugin.java
@@ -1,7 +1,7 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.plugin.Initializable;
-import core.game.node.entity.skill.crafting.jewellery.JewelleryCrafting;
+import content.global.skill.crafting.jewellery.JewelleryCrafting;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.plugin.Plugin;
diff --git a/Server/src/main/java/core/game/content/dialogue/LeatherCraftDialogue.java b/Server/src/main/content/global/skill/crafting/LeatherCraftDialogue.java
similarity index 90%
rename from Server/src/main/java/core/game/content/dialogue/LeatherCraftDialogue.java
rename to Server/src/main/content/global/skill/crafting/LeatherCraftDialogue.java
index c299ab36e..65fa4ae71 100644
--- a/Server/src/main/java/core/game/content/dialogue/LeatherCraftDialogue.java
+++ b/Server/src/main/content/global/skill/crafting/LeatherCraftDialogue.java
@@ -1,16 +1,16 @@
-package core.game.content.dialogue;
+package content.global.skill.crafting;
-import static api.ContentAPIKt.*;
+import static core.api.ContentAPIKt.*;
+import core.api.InputType;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
+import core.game.dialogue.DialoguePlugin;
import kotlin.Unit;
-import rs09.game.system.SystemLogger;
-import core.game.node.entity.skill.crafting.armour.DragonCraftPulse;
-import core.game.node.entity.skill.crafting.armour.HardCraftPulse;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting.DragonHide;
+import content.global.skill.crafting.armour.DragonCraftPulse;
+import content.global.skill.crafting.armour.HardCraftPulse;
+import content.global.skill.crafting.armour.LeatherCrafting;
+import content.global.skill.crafting.armour.LeatherCrafting.DragonHide;
import core.game.node.entity.player.Player;
-import core.game.node.entity.player.link.RunScript;
import core.plugin.Initializable;
import core.game.node.item.Item;
@@ -61,7 +61,7 @@ public final class LeatherCraftDialogue extends DialoguePlugin {
if (type.equals("hard")) {
player.getInterfaceManager().openChatbox(309);
player.getPacketDispatch().sendItemZoomOnInterface(1131, 150, 309, 2);
- player.getPacketDispatch().sendString(" " + "Heardleather body", 309, 6);
+ player.getPacketDispatch().sendString(" Hardleather body", 309, 6);
} else {
/** dragon */
leather = (int) args[1];
@@ -196,7 +196,7 @@ public final class LeatherCraftDialogue extends DialoguePlugin {
case 5:
case 9:
case 13:
- amt = 10;
+ amt = 30;
break;
case 4:
case 8:
@@ -205,7 +205,7 @@ public final class LeatherCraftDialogue extends DialoguePlugin {
if (hidee == null) {
return false;
}
- sendInputDialogue(player, true, "Enter the amount:", (value) -> {
+ sendInputDialogue(player, InputType.AMOUNT, "Enter the amount:", (value) -> {
player.getPulseManager().run(new DragonCraftPulse(player, null, hidee, (int) value));
return Unit.INSTANCE;
});
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/PotteryPlugin.java b/Server/src/main/content/global/skill/crafting/PotteryPlugin.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/PotteryPlugin.java
rename to Server/src/main/content/global/skill/crafting/PotteryPlugin.java
index ac4af460b..f7fa44e3a 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/PotteryPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/PotteryPlugin.java
@@ -1,12 +1,12 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
+import content.global.skill.crafting.pottery.FirePotteryPulse;
+import content.global.skill.crafting.pottery.PotteryItem;
import core.cache.def.impl.SceneryDefinition;
import core.plugin.Initializable;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
-import core.game.node.entity.skill.crafting.pottery.FirePotteryPulse;
-import core.game.node.entity.skill.crafting.pottery.PotteryItem;
-import core.game.node.entity.skill.crafting.pottery.PotteryPulse;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
+import content.global.skill.crafting.pottery.PotteryPulse;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.OptionHandler;
import core.game.interaction.UseWithHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/SnakeSkinPlugin.java b/Server/src/main/content/global/skill/crafting/SnakeSkinPlugin.java
similarity index 84%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/SnakeSkinPlugin.java
rename to Server/src/main/content/global/skill/crafting/SnakeSkinPlugin.java
index 78b409649..f4929248e 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/SnakeSkinPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/SnakeSkinPlugin.java
@@ -1,10 +1,10 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
+import content.global.skill.crafting.armour.SnakeSkin;
+import content.global.skill.crafting.armour.SnakeSkinPulse;
import core.plugin.Initializable;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
-import core.game.node.entity.skill.crafting.armour.SnakeSkin;
-import core.game.node.entity.skill.crafting.armour.SnakeSkinPulse;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/SnelmCraftPlugin.java b/Server/src/main/content/global/skill/crafting/SnelmCraftPlugin.java
similarity index 98%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/SnelmCraftPlugin.java
rename to Server/src/main/content/global/skill/crafting/SnelmCraftPlugin.java
index 3ea63cca4..1b1335c1c 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/SnelmCraftPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/SnelmCraftPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.plugin.Initializable;
import core.game.node.entity.skill.SkillPulse;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/StitchCraftPlugin.java b/Server/src/main/content/global/skill/crafting/StitchCraftPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/StitchCraftPlugin.java
rename to Server/src/main/content/global/skill/crafting/StitchCraftPlugin.java
index 0c5ccc05d..973710e3b 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/StitchCraftPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/StitchCraftPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.game.component.Component;
import core.game.interaction.NodeUsageEvent;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/StuddedArmourPlugin.java b/Server/src/main/content/global/skill/crafting/StuddedArmourPlugin.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/StuddedArmourPlugin.java
rename to Server/src/main/content/global/skill/crafting/StuddedArmourPlugin.java
index b8f1e3526..1abe86feb 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/StuddedArmourPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/StuddedArmourPlugin.java
@@ -1,8 +1,8 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.plugin.Initializable;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
import core.game.interaction.NodeUsageEvent;
@@ -71,7 +71,7 @@ public final class StuddedArmourPlugin extends UseWithHandler {
* @version 1.0
*/
public enum StuddedArmour {
- CHAPS(new Item(1095), new Item(1097), 18, 27), BODY(new Item(1129), new Item(1133), 14, 25);
+ CHAPS(new Item(1095), new Item(1097), 44, 42), BODY(new Item(1129), new Item(1133), 41, 40);
/**
* Represents the unstudded item.
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/TanningProduct.java b/Server/src/main/content/global/skill/crafting/TanningProduct.java
similarity index 98%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/TanningProduct.java
rename to Server/src/main/content/global/skill/crafting/TanningProduct.java
index 7f611672d..30192b4e7 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/TanningProduct.java
+++ b/Server/src/main/content/global/skill/crafting/TanningProduct.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
@@ -15,7 +15,7 @@ public enum TanningProduct {
SOFT_LEATHER(1, 1739, 1741),
HARD_LEATHER(2, 1739, 1743),
SNAKESKIN(3, 6287, 6289),
- SNAKESKIN2(4, 6287, 6289),
+ SNAKESKIN2(4, 7801, 6289),
GREEN_DHIDE(5, 1753, 1745),
BLUEDHIDE(6, 1751, 2505),
REDDHIDE(7, 1749, 2507),
@@ -120,9 +120,9 @@ public enum TanningProduct {
} else if (def == HARD_LEATHER) {
coins = 3;
} else if (def == SNAKESKIN) {
- coins = 20;
- } else if (def == SNAKESKIN2) {
coins = 15;
+ } else if (def == SNAKESKIN2) {
+ coins = 20;
} else {
coins = 20;
}
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/WeaveOptionPlugin.java b/Server/src/main/content/global/skill/crafting/WeaveOptionPlugin.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/WeaveOptionPlugin.java
rename to Server/src/main/content/global/skill/crafting/WeaveOptionPlugin.java
index 40594940b..4307d4599 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/WeaveOptionPlugin.java
+++ b/Server/src/main/content/global/skill/crafting/WeaveOptionPlugin.java
@@ -1,11 +1,11 @@
-package core.game.node.entity.skill.crafting;
+package content.global.skill.crafting;
import core.cache.def.impl.SceneryDefinition;
import core.game.node.entity.player.link.diary.DiaryType;
import core.game.world.map.Location;
import core.plugin.Initializable;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/DragonCraftPulse.java b/Server/src/main/content/global/skill/crafting/armour/DragonCraftPulse.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/armour/DragonCraftPulse.java
rename to Server/src/main/content/global/skill/crafting/armour/DragonCraftPulse.java
index 87ea0a5f6..924d1364a 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/DragonCraftPulse.java
+++ b/Server/src/main/content/global/skill/crafting/armour/DragonCraftPulse.java
@@ -1,9 +1,9 @@
-package core.game.node.entity.skill.crafting.armour;
+package content.global.skill.crafting.armour;
import core.cache.def.impl.ItemDefinition;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting.DragonHide;
+import content.global.skill.crafting.armour.LeatherCrafting.DragonHide;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.world.update.flag.context.Animation;
@@ -95,9 +95,6 @@ public final class DragonCraftPulse extends SkillPulse- {
player.getInventory().add(item);
player.getSkills().addExperience(Skills.CRAFTING, hide.getExperience(), true);
LeatherCrafting.decayThread(player);
- if (LeatherCrafting.isLastThread(player)) {
- LeatherCrafting.removeThread(player);
- }
amount--;
}
return amount < 1;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/HardCraftPulse.java b/Server/src/main/content/global/skill/crafting/armour/HardCraftPulse.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/armour/HardCraftPulse.java
rename to Server/src/main/content/global/skill/crafting/armour/HardCraftPulse.java
index 403007da0..5a2207b4a 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/HardCraftPulse.java
+++ b/Server/src/main/content/global/skill/crafting/armour/HardCraftPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.armour;
+package content.global.skill.crafting.armour;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
@@ -75,9 +75,6 @@ public final class HardCraftPulse extends SkillPulse
- {
player.getInventory().add(item);
player.getSkills().addExperience(Skills.CRAFTING, 35, true);
LeatherCrafting.decayThread(player);
- if (LeatherCrafting.isLastThread(player)) {
- LeatherCrafting.removeThread(player);
- }
}
amount--;
return amount < 1;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/LeatherCrafting.java b/Server/src/main/content/global/skill/crafting/armour/LeatherCrafting.java
similarity index 82%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/armour/LeatherCrafting.java
rename to Server/src/main/content/global/skill/crafting/armour/LeatherCrafting.java
index a6aa2f6e8..02f14d1ee 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/LeatherCrafting.java
+++ b/Server/src/main/content/global/skill/crafting/armour/LeatherCrafting.java
@@ -1,8 +1,12 @@
-package core.game.node.entity.skill.crafting.armour;
+package content.global.skill.crafting.armour;
+import core.api.Container;
import core.game.component.Component;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
+import org.rs09.consts.Items;
+
+import static core.api.ContentAPIKt.*;
/**
* Represents a useful class for leather crafting related information.
@@ -40,52 +44,17 @@ public final class LeatherCrafting {
*/
private static final Component COMPONENT = new Component(154);
- /**
- * Checks if its the last thrad.
- * @return {@code True} if so.
- */
- public static boolean isLastThread(final Player player) {
- final Item thread = getThread(player);
- if (thread == null) {
- return false;
- }
- int charge = thread.getCharge();
- return charge >= 1004;
- }
-
/**
* Method used to decay thread.
- */
- public static void decayThread(final Player player) {
- final Item thread = getThread(player);
- if (thread == null) {
- return;
- }
- int charge = thread.getCharge();
- thread.setCharge(charge + 1);
- }
-
- /**
- * Method used to remove thread.
- * @param player the player.
- */
- public static void removeThread(final Player player) {
- if (player.getInventory().remove(THREAD)) {
- player.getPacketDispatch().sendMessage("You use a reel of your thread.");
- Item thread = getThread(player);
- if (thread != null) {
- thread.setCharge(1000);
- }
- }
- }
-
- /**
- * Gets the thread.
- * @param player the player.
- * @return the item.
+ * @author Player Name
*/
- public static Item getThread(final Player player) {
- return player.getInventory().get(player.getInventory().getSlot(THREAD));
+ public static void decayThread(final Player player) {
+ int charges = getAttribute(player, "threadCharges", 5) - 1;
+ if (charges <= 0 && removeItem(player, Items.THREAD_1734, Container.INVENTORY)) {
+ charges = 5;
+ sendMessage(player, "You use a reel of your thread.");
+ }
+ setAttribute(player, "/save:threadCharges", charges);
}
/**
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/SnakeSkin.java b/Server/src/main/content/global/skill/crafting/armour/SnakeSkin.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/armour/SnakeSkin.java
rename to Server/src/main/content/global/skill/crafting/armour/SnakeSkin.java
index 6cdb26e7f..c4468d234 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/SnakeSkin.java
+++ b/Server/src/main/content/global/skill/crafting/armour/SnakeSkin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.armour;
+package content.global.skill.crafting.armour;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/SnakeSkinPulse.java b/Server/src/main/content/global/skill/crafting/armour/SnakeSkinPulse.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/armour/SnakeSkinPulse.java
rename to Server/src/main/content/global/skill/crafting/armour/SnakeSkinPulse.java
index 77ccc2d5e..be012d01c 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/SnakeSkinPulse.java
+++ b/Server/src/main/content/global/skill/crafting/armour/SnakeSkinPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.armour;
+package content.global.skill.crafting.armour;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
@@ -82,9 +82,6 @@ public final class SnakeSkinPulse extends SkillPulse
- {
player.getInventory().add(item);
player.getSkills().addExperience(Skills.CRAFTING, skin.getExperience(), true);
LeatherCrafting.decayThread(player);
- if (LeatherCrafting.isLastThread(player)) {
- LeatherCrafting.removeThread(player);
- }
}
amount--;
return amount < 1;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/SoftCraftPulse.java b/Server/src/main/content/global/skill/crafting/armour/SoftCraftPulse.java
similarity index 85%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/armour/SoftCraftPulse.java
rename to Server/src/main/content/global/skill/crafting/armour/SoftCraftPulse.java
index ef26db15b..ab49815cf 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/armour/SoftCraftPulse.java
+++ b/Server/src/main/content/global/skill/crafting/armour/SoftCraftPulse.java
@@ -1,8 +1,7 @@
-package core.game.node.entity.skill.crafting.armour;
+package content.global.skill.crafting.armour;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.crafting.armour.LeatherCrafting.SoftLeather;
import core.game.node.entity.player.Player;
import core.game.node.entity.player.link.diary.DiaryType;
import core.game.node.item.Item;
@@ -23,7 +22,7 @@ public final class SoftCraftPulse extends SkillPulse
- {
/**
* Represents the leather to use.
*/
- private SoftLeather soft;
+ private LeatherCrafting.SoftLeather soft;
/**
* Represents the amount to make.
@@ -42,7 +41,7 @@ public final class SoftCraftPulse extends SkillPulse
- {
* @param leather the soft.
* @param amount the amount.
*/
- public SoftCraftPulse(Player player, Item node, SoftLeather leather, int amount) {
+ public SoftCraftPulse(Player player, Item node, LeatherCrafting.SoftLeather leather, int amount) {
super(player, node);
this.soft = leather;
this.amount = amount;
@@ -82,7 +81,7 @@ public final class SoftCraftPulse extends SkillPulse
- {
return false;
}
if (player.getInventory().remove(new Item(LeatherCrafting.LEATHER))) {
- if (soft == SoftLeather.GLOVES || soft == SoftLeather.BOOTS || soft == SoftLeather.VAMBRACES) {
+ if (soft == LeatherCrafting.SoftLeather.GLOVES || soft == LeatherCrafting.SoftLeather.BOOTS || soft == LeatherCrafting.SoftLeather.VAMBRACES) {
player.getPacketDispatch().sendMessage("You make a pair of " + soft.getProduct().getName().toLowerCase() + ".");
} else {
player.getPacketDispatch().sendMessage("You make " + (StringUtils.isPlusN(soft.getProduct().getName()) ? "an " : "a ") + soft.getProduct().getName().toLowerCase() + ".");
@@ -91,11 +90,7 @@ public final class SoftCraftPulse extends SkillPulse
- {
player.getInventory().add(item);
player.getSkills().addExperience(Skills.CRAFTING, soft.getExperience(), true);
LeatherCrafting.decayThread(player);
- if (LeatherCrafting.isLastThread(player)) {
- LeatherCrafting.removeThread(player);
- }
-
- if (soft == SoftLeather.GLOVES) {
+ if (soft == LeatherCrafting.SoftLeather.GLOVES) {
player.getAchievementDiaryManager().finishTask(player, DiaryType.LUMBRIDGE, 1, 3);
}
}
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/gem/GemCutPulse.java b/Server/src/main/content/global/skill/crafting/gem/GemCutPulse.java
similarity index 91%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/gem/GemCutPulse.java
rename to Server/src/main/content/global/skill/crafting/gem/GemCutPulse.java
index 206a09851..f094fa838 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/gem/GemCutPulse.java
+++ b/Server/src/main/content/global/skill/crafting/gem/GemCutPulse.java
@@ -1,9 +1,12 @@
-package core.game.node.entity.skill.crafting.gem;
+package content.global.skill.crafting.gem;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Represents the pulse used to cut a gem.
@@ -61,7 +64,7 @@ public final class GemCutPulse extends SkillPulse
- {
@Override
public void animate() {
if (ticks % 5 == 0 || ticks < 1) {
- player.getAudioManager().send(2586);
+ playAudio(player, Sounds.CHISEL_2586);
player.animate(gem.getAnimation());
}
}
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/gem/Gems.java b/Server/src/main/content/global/skill/crafting/gem/Gems.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/gem/Gems.java
rename to Server/src/main/content/global/skill/crafting/gem/Gems.java
index 005f5d578..0d0198159 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/gem/Gems.java
+++ b/Server/src/main/content/global/skill/crafting/gem/Gems.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.gem;
+package content.global.skill.crafting.gem;
import core.game.node.item.Item;
import core.game.world.update.flag.context.Animation;
diff --git a/Server/src/main/content/global/skill/crafting/glass/GlassCraftingListener.kt b/Server/src/main/content/global/skill/crafting/glass/GlassCraftingListener.kt
new file mode 100644
index 000000000..84f0c199f
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/glass/GlassCraftingListener.kt
@@ -0,0 +1,69 @@
+package content.global.skill.crafting.glass
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.InterfaceListener
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+
+class GlassCraftingListener : InteractionListener, InterfaceListener {
+
+ companion object {
+ private const val OP_MAKE_ONE = 155
+ private const val OP_MAKE_FIVE = 196
+ private const val OP_MAKE_ALL = 124
+ private const val OP_MAKE_X = 199
+
+ private const val GLASS_BLOWING_PIPE = Items.GLASSBLOWING_PIPE_1785
+ private const val MOLTEN_GLASS = Items.MOLTEN_GLASS_1775
+ private const val GLASS_BLOWING_INTERFACE = Components.CRAFTING_GLASS_542
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, GLASS_BLOWING_PIPE, MOLTEN_GLASS) { player, _, _ ->
+ openInterface(player, GLASS_BLOWING_INTERFACE)
+ return@onUseWith true
+ }
+ }
+
+ override fun defineInterfaceListeners() {
+ on(GLASS_BLOWING_INTERFACE) { player, _, opcode, buttonID, _, _ ->
+ val product = GlassProduct.forButtonID(buttonID) ?: return@on true
+
+ if (!inInventory(player, GLASS_BLOWING_PIPE)) {
+ sendMessage(player, "You need a glassblowing pipe to do this.")
+ return@on true
+ }
+
+ if (!inInventory(player, MOLTEN_GLASS)) {
+ sendMessage(player, "You need molten glass to do this.")
+ return@on true
+ }
+
+ if (!hasLevelDyn(player, Skills.CRAFTING, product.minimumLevel)) {
+ sendMessage(player, "You need a Crafting level of ${product.minimumLevel} to make this.")
+ return@on true
+ }
+
+ when (opcode) {
+ OP_MAKE_ONE -> make(player, product, 1)
+ OP_MAKE_FIVE -> make(player, product, 5)
+ OP_MAKE_ALL -> make(player, product, amountInInventory(player, MOLTEN_GLASS))
+ OP_MAKE_X -> sendInputDialogue(player, InputType.AMOUNT, "Enter the amount:") { value ->
+ make(player, product, Integer.parseInt(value.toString()))
+ }
+ else -> return@on true
+ }
+
+ return@on true
+ }
+ }
+
+ private fun make(player: Player, product: GlassProduct, amount: Int) {
+ closeInterface(player)
+ submitIndividualPulse(player, GlassCraftingPulse(player, product, amount))
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/glass/GlassCraftingPulse.kt b/Server/src/main/content/global/skill/crafting/glass/GlassCraftingPulse.kt
new file mode 100644
index 000000000..f287ff956
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/glass/GlassCraftingPulse.kt
@@ -0,0 +1,44 @@
+package content.global.skill.crafting.glass
+
+import core.api.*
+import core.game.event.ResourceProducedEvent
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+class GlassCraftingPulse(
+ private val player: Player,
+ private val product: GlassProduct,
+ private var amount: Int
+) : Pulse() {
+
+ override fun pulse(): Boolean {
+ if (amount < 1) return true
+
+ if (!inInventory(player, Items.GLASSBLOWING_PIPE_1785) || !inInventory(player, Items.MOLTEN_GLASS_1775)) {
+ return true
+ }
+
+ //Animation is updated on 2 June 2009 - https://runescape.wiki/w/Update:Patch_Notes_(2_June_2009)
+ animate(player, 884)
+ playAudio(player, Sounds.GLASSBLOWING_2724)
+ if (product.producedItemId in intArrayOf(Items.UNPOWERED_ORB_567, Items.OIL_LAMP_4525)) {
+ sendMessage(player, "You make an ${product.name.lowercase().replace("_", " ")}.")
+
+ } else sendMessage(player, "You make a ${product.name.lowercase().replace("_", " ")}.")
+
+ if (removeItem(player, Items.MOLTEN_GLASS_1775)) {
+ addItem(player, product.producedItemId, product.amount)
+ rewardXP(player, Skills.CRAFTING, product.experience)
+ player.dispatch(ResourceProducedEvent(product.producedItemId, product.amount, player))
+
+ } else return true
+
+ amount--
+ delay = 3
+
+ return false
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/glass/GlassMakeListener.kt b/Server/src/main/content/global/skill/crafting/glass/GlassMakeListener.kt
new file mode 100644
index 000000000..9dc4d98ae
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/glass/GlassMakeListener.kt
@@ -0,0 +1,40 @@
+package content.global.skill.crafting.glass
+
+import core.api.*
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import org.rs09.consts.Items
+import kotlin.math.min
+
+class GlassMakeListener : InteractionListener {
+
+ companion object{
+ private const val SODA_ASH = Items.SODA_ASH_1781
+ private const val BUCKET_OF_SAND = Items.BUCKET_OF_SAND_1783
+ private const val MOLTEN_GLASS = Items.MOLTEN_GLASS_1775
+ private val INPUTS = intArrayOf(SODA_ASH, BUCKET_OF_SAND)
+ private val FURNACES = intArrayOf(4304, 6189, 9390, 11010, 11666, 12100, 12809, 18497, 26814, 30021, 30510, 36956, 37651)
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, INPUTS, *FURNACES){ player, _, _ ->
+
+ if (!inInventory(player, SODA_ASH, 1) || !inInventory(player, BUCKET_OF_SAND, 1)) {
+ sendMessage(player, "You need at least one heap of soda ash and one bucket of sand to do this.")
+ return@onUseWith true
+ }
+
+ sendSkillDialogue(player) {
+ withItems(MOLTEN_GLASS)
+ create { id, amount ->
+ submitIndividualPulse(player, GlassMakePulse(player, id, amount))
+ }
+ calculateMaxAmount { _ ->
+ min(amountInInventory(player, SODA_ASH), amountInInventory(player, BUCKET_OF_SAND))
+ }
+ }
+
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/glass/GlassMakePulse.kt b/Server/src/main/content/global/skill/crafting/glass/GlassMakePulse.kt
new file mode 100644
index 000000000..a641e2082
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/glass/GlassMakePulse.kt
@@ -0,0 +1,40 @@
+package content.global.skill.crafting.glass
+
+import core.api.*
+import core.game.event.ResourceProducedEvent
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import org.rs09.consts.Items
+
+class GlassMakePulse(
+ private val player: Player,
+ private val product: Int,
+ private var amount: Int
+) : Pulse() {
+
+ override fun pulse(): Boolean {
+ if (amount < 1) return true
+
+ if (!inInventory(player, Items.SODA_ASH_1781) || !inInventory(player, Items.BUCKET_OF_SAND_1783)) {
+ return true
+ }
+
+ animate(player, 3243)
+ //Audio unknown (2725?)
+ sendMessage(player, "You heat the sand and soda ash in the furnace to make glass.")
+
+ if (removeItem(player, Items.SODA_ASH_1781) && removeItem(player, Items.BUCKET_OF_SAND_1783)) {
+ addItem(player, Items.BUCKET_1925)
+ addItem(player, Items.MOLTEN_GLASS_1775)
+ rewardXP(player, Skills.CRAFTING, 20.0)
+ player.dispatch(ResourceProducedEvent(product, amount, player))
+
+ } else return true
+
+ amount--
+ delay = 2
+
+ return false
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/glass/GlassProduct.kt b/Server/src/main/content/global/skill/crafting/glass/GlassProduct.kt
new file mode 100644
index 000000000..4e0ced589
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/glass/GlassProduct.kt
@@ -0,0 +1,35 @@
+package content.global.skill.crafting.glass
+
+enum class GlassProduct (
+ val buttonId: Int,
+ val producedItemId: Int,
+ val amount: Int,
+ val minimumLevel: Int,
+ val experience: Double
+) {
+ VIAL(38, 229, 1, 33, 35.0),
+ ORB(39, 567, 1, 46, 52.5),
+ BEER_GLASS(40, 1919, 1, 1, 17.5),
+ CANDLE_LANTERN(41, 4527, 1, 4, 19.0),
+ OIL_LAMP(42, 4525, 1, 12, 25.0),
+ LANTERN_LENS(43, 4542, 1, 49, 55.0),
+ FISHBOWL(44, 6667, 1, 42, 42.5),
+ LIGHT_ORB(45, 10973, 1, 87, 70.0);
+
+ companion object {
+ private val BUTTON_MAP = HashMap
()
+ private val PRODUCT_MAP = HashMap()
+
+ init {
+ for (product in GlassProduct.values()) {
+ BUTTON_MAP[product.buttonId] = product
+ }
+
+ for (product in GlassProduct.values()) {
+ PRODUCT_MAP[product.producedItemId] = product
+ }
+ }
+
+ fun forButtonID(buttonId: Int): GlassProduct? = BUTTON_MAP[buttonId]
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/jewellery/JewelleryCrafting.java b/Server/src/main/content/global/skill/crafting/jewellery/JewelleryCrafting.java
similarity index 93%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/jewellery/JewelleryCrafting.java
rename to Server/src/main/content/global/skill/crafting/jewellery/JewelleryCrafting.java
index 3a087d50f..89358a5fc 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/jewellery/JewelleryCrafting.java
+++ b/Server/src/main/content/global/skill/crafting/jewellery/JewelleryCrafting.java
@@ -1,10 +1,11 @@
-package core.game.node.entity.skill.crafting.jewellery;
+package content.global.skill.crafting.jewellery;
import core.cache.def.impl.ItemDefinition;
import core.game.component.Component;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
+import static core.api.ContentAPIKt.*;
import java.util.HashMap;
@@ -185,7 +186,9 @@ public class JewelleryCrafting {
for (int i = 0; i < data.items.length; i++) {
if (player.getInventory().contains(data.getItems()[i], 1)) {
length++;
- }
+ } else if (inEquipmentOrInventory(player, 10881, 1) && player.goldSatchel.contains(data.getItems()[i], 1)){
+ length++;
+ }
}
if (!player.getInventory().contains(mouldFor(data.name()), 1)) {
length--;
@@ -235,6 +238,9 @@ public class JewelleryCrafting {
amt = player.getInventory().getAmount(new Item(GOLD_BAR));
} else {
int first = player.getInventory().getAmount(new Item(data.getItems()[0]));
+ if (inEquipmentOrInventory(player, 10881, 1)) {
+ first += player.goldSatchel.getAmount(new Item(data.getItems()[0]));
+ }
int second = player.getInventory().getAmount(new Item(data.getItems()[1]));
if (first == second) {
amt = first;
@@ -250,7 +256,9 @@ public class JewelleryCrafting {
for (int i = 0; i < data.items.length; i++) {
if (player.getInventory().contains(data.getItems()[i], amount)) {
length++;
- }
+ } else if (data.getItems()[i] != GOLD_BAR && inEquipmentOrInventory(player, 10881, 1) && player.goldSatchel.contains(data.getItems()[i], 1)){
+ length++;
+ }
}
if (length != data.getItems().length) {
player.getPacketDispatch().sendMessage("You don't have the required items to make this item.");
diff --git a/Server/src/main/content/global/skill/crafting/jewellery/JewelleryPulse.java b/Server/src/main/content/global/skill/crafting/jewellery/JewelleryPulse.java
new file mode 100644
index 000000000..be2f7b58c
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/jewellery/JewelleryPulse.java
@@ -0,0 +1,101 @@
+package content.global.skill.crafting.jewellery;
+
+import core.game.node.entity.skill.SkillPulse;
+import core.game.node.entity.skill.Skills;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.world.update.flag.context.Animation;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.*;
+
+/**
+ * Represents the pulse used to craft jewllery.
+ * @author 'Vexia
+ */
+public final class JewelleryPulse extends SkillPulse- {
+
+ /**
+ * Represents the animation to use.
+ */
+ private static final Animation ANIMATION = new Animation(3243);
+
+ /**
+ * Represents the data of jewellery.
+ */
+ private JewelleryCrafting.JewelleryItem type;
+
+ /**
+ * Represents the amount to make.
+ */
+ private int amount;
+
+ /**
+ * Represents the ticks.
+ */
+ private int ticks;
+
+ /**
+ * Constructs a new {@code CraftJewellery.java} {@code Object}.
+ * @param player the player.
+ * @param node the node.
+ */
+ public JewelleryPulse(Player player, Item node, JewelleryCrafting.JewelleryItem data, int amount) {
+ super(player, node);
+ this.type = data;
+ this.amount = amount;
+ }
+
+ @Override
+ public boolean checkRequirements() {
+ if (player.getSkills().getLevel(Skills.CRAFTING) < type.getLevel()) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public void animate() {
+ if (ticks % 5 == 0) {
+ player.animate(ANIMATION);
+ playAudio(player, Sounds.FURNACE_2725);
+ }
+ }
+
+ @Override
+ public boolean reward() {
+ if (++ticks % 5 != 0) {
+ return false;
+ }
+ Item items[] = getItems();
+ for (int i = 0; i < items.length; i++) {
+ if (player.getInventory().remove(items[i]) || (items[i].getId() != 2357 && inEquipmentOrInventory(player, 10881, 1) && player.goldSatchel.remove(items[i]))) {
+ continue;
+ } else {
+ return true;
+ }
+ }
+ //if (player.getInventory().remove(getItems())) {
+ final Item item = new Item(type.getSendItem());
+ player.getInventory().add(item);
+ player.getSkills().addExperience(Skills.CRAFTING, type.getExperience(), true);
+ //}
+ amount--;
+ return amount < 1;
+ }
+
+ /**
+ * Gets the items to remove.
+ * @return the items.
+ */
+ private Item[] getItems() {
+ Item items[] = new Item[type.getItems().length];
+ int index = 0;
+ for (int i = 0; i < type.getItems().length; i++) {
+ items[index] = new Item(type.getItems()[i], 1);
+ index++;
+ }
+ return items;
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/leather/SpikyVambraces.kt b/Server/src/main/content/global/skill/crafting/leather/SpikyVambraces.kt
similarity index 96%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/leather/SpikyVambraces.kt
rename to Server/src/main/content/global/skill/crafting/leather/SpikyVambraces.kt
index 5fbb82940..764674412 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/leather/SpikyVambraces.kt
+++ b/Server/src/main/content/global/skill/crafting/leather/SpikyVambraces.kt
@@ -1,7 +1,7 @@
-package rs09.game.node.entity.skill.crafting.leather
+package content.global.skill.crafting.leather
-import api.Container
-import api.*
+import core.api.Container
+import core.api.*
import core.game.interaction.NodeUsageEvent
import core.game.interaction.UseWithHandler
import core.game.node.entity.player.Player
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LanternCrafting.kt b/Server/src/main/content/global/skill/crafting/lightsources/LanternCrafting.kt
similarity index 95%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LanternCrafting.kt
rename to Server/src/main/content/global/skill/crafting/lightsources/LanternCrafting.kt
index 196292cbb..13daf97f6 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LanternCrafting.kt
+++ b/Server/src/main/content/global/skill/crafting/lightsources/LanternCrafting.kt
@@ -1,97 +1,97 @@
-package rs09.game.node.entity.skill.crafting.lightsources
-
-import core.game.interaction.NodeUsageEvent
-import core.game.interaction.UseWithHandler
-import core.game.node.entity.player.Player
-import core.game.node.entity.skill.Skills
-import core.game.node.item.Item
-import core.plugin.Initializable
-import core.plugin.Plugin
-
-/**
- * Handles the combining of items to craft lanterns
- * @author Ceikry
- */
-@Initializable
-class LanternCrafting : UseWithHandler(36,38,4525,4542,1607){
- /**
- * For candle lanterns -> Glassblowing produces 4527
- * 4527 + white candle = 4529
- * 4527 + black candle = 4532
- *
- * For oil lanterns -> Glassblowing produces 4525
- * 4525 + 4540 (oil lantern frame) = 4535 (empty oil lantern)
- *
- * For Bullseye lanterns -> Smithing produces 4544 (bullseye lantern (unf))
- * 4544 + Lens(4542) -> 4546
- * 4544 + Sapphire(1607) -> 4700 (Sapphire lantern)
- */
- override fun newInstance(arg: Any?): Plugin
{
- addHandler(4527, ITEM_TYPE, this) //Empty candle lantern
- addHandler(4540, ITEM_TYPE,this) //oil lantern frame
- addHandler(4544, ITEM_TYPE,this) //Bullseye lantern(unf)
- return this
- }
-
- override fun handle(event: NodeUsageEvent?): Boolean {
- event ?: return false //if event is null don't execute
- val used = event.used
- return when(used.id){
- 4527 -> craftCandleLantern(event.player,event)
- 4540 -> craftOilLantern(event.player,event)
- 4544 -> craftBullseyeLantern(event.player,event)
- else -> false
- }
- }
-
- private fun craftCandleLantern(player: Player, event: NodeUsageEvent): Boolean{
- return when(event.usedWith.id){
- 36,38 -> {
- removeEventItems(player,event)
- player.inventory.add( if(event.usedWith.id == 36) Item(4529) else Item(4532))
- player.sendMessage("You place the unlit candle inside the lantern.")
- true
- }
- else -> false
- }
- }
-
- private fun craftOilLantern(player: Player, event: NodeUsageEvent): Boolean {
- return when(event.usedWith.id){
- 4525 -> {
- removeEventItems(player,event)
- player.inventory.add(Item(4535))
- player.sendMessage("You place the oil lamp inside its metal frame.")
- true
- }
- else -> false
- }
- }
-
- private fun craftBullseyeLantern(player: Player,event: NodeUsageEvent): Boolean{
- return when(event.usedWith.id){
- 4542 -> {
- removeEventItems(player,event)
- player.inventory.add( Item(4546) )
- player.sendMessage("You fashion the lens onto the lantern.")
- true
- }
- 1607 -> {
- if(player.skills.getLevel(Skills.CRAFTING) >= 20){
- removeEventItems(player,event)
- player.inventory.add(Item(4700))
- player.sendMessage("You fashion the gem into a lens and fit it onto the lantern.")
- } else {
- player.sendMessage("You require a crafting level of 20 to use a gem as a lens.")
- }
- true
- }
- else -> false
- }
- }
-
- private fun removeEventItems(player: Player, event: NodeUsageEvent){
- player.inventory.remove(event.used.asItem())
- player.inventory.remove(event.usedWith.asItem())
- }
+package content.global.skill.crafting.lightsources
+
+import core.game.interaction.NodeUsageEvent
+import core.game.interaction.UseWithHandler
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.plugin.Initializable
+import core.plugin.Plugin
+
+/**
+ * Handles the combining of items to craft lanterns
+ * @author Ceikry
+ */
+@Initializable
+class LanternCrafting : UseWithHandler(36,38,4525,4542,1607){
+ /**
+ * For candle lanterns -> Glassblowing produces 4527
+ * 4527 + white candle = 4529
+ * 4527 + black candle = 4532
+ *
+ * For oil lanterns -> Glassblowing produces 4525
+ * 4525 + 4540 (oil lantern frame) = 4535 (empty oil lantern)
+ *
+ * For Bullseye lanterns -> Smithing produces 4544 (bullseye lantern (unf))
+ * 4544 + Lens(4542) -> 4546
+ * 4544 + Sapphire(1607) -> 4700 (Sapphire lantern)
+ */
+ override fun newInstance(arg: Any?): Plugin {
+ addHandler(4527, ITEM_TYPE, this) //Empty candle lantern
+ addHandler(4540, ITEM_TYPE,this) //oil lantern frame
+ addHandler(4544, ITEM_TYPE,this) //Bullseye lantern(unf)
+ return this
+ }
+
+ override fun handle(event: NodeUsageEvent?): Boolean {
+ event ?: return false //if event is null don't execute
+ val used = event.used
+ return when(used.id){
+ 4527 -> craftCandleLantern(event.player,event)
+ 4540 -> craftOilLantern(event.player,event)
+ 4544 -> craftBullseyeLantern(event.player,event)
+ else -> false
+ }
+ }
+
+ private fun craftCandleLantern(player: Player, event: NodeUsageEvent): Boolean{
+ return when(event.usedWith.id){
+ 36,38 -> {
+ removeEventItems(player,event)
+ player.inventory.add( if(event.usedWith.id == 36) Item(4529) else Item(4532))
+ player.sendMessage("You place the unlit candle inside the lantern.")
+ true
+ }
+ else -> false
+ }
+ }
+
+ private fun craftOilLantern(player: Player, event: NodeUsageEvent): Boolean {
+ return when(event.usedWith.id){
+ 4525 -> {
+ removeEventItems(player,event)
+ player.inventory.add(Item(4535))
+ player.sendMessage("You place the oil lamp inside its metal frame.")
+ true
+ }
+ else -> false
+ }
+ }
+
+ private fun craftBullseyeLantern(player: Player,event: NodeUsageEvent): Boolean{
+ return when(event.usedWith.id){
+ 4542 -> {
+ removeEventItems(player,event)
+ player.inventory.add( Item(4546) )
+ player.sendMessage("You fashion the lens onto the lantern.")
+ true
+ }
+ 1607 -> {
+ if(player.skills.getLevel(Skills.CRAFTING) >= 20){
+ removeEventItems(player,event)
+ player.inventory.add(Item(4700))
+ player.sendMessage("You fashion the gem into a lens and fit it onto the lantern.")
+ } else {
+ player.sendMessage("You require a crafting level of 20 to use a gem as a lens.")
+ }
+ true
+ }
+ else -> false
+ }
+ }
+
+ private fun removeEventItems(player: Player, event: NodeUsageEvent){
+ player.inventory.remove(event.used.asItem())
+ player.inventory.remove(event.usedWith.asItem())
+ }
}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSourceExtinguisher.kt b/Server/src/main/content/global/skill/crafting/lightsources/LightSourceExtinguisher.kt
similarity index 75%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSourceExtinguisher.kt
rename to Server/src/main/content/global/skill/crafting/lightsources/LightSourceExtinguisher.kt
index 4f056fef8..357b69ca8 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSourceExtinguisher.kt
+++ b/Server/src/main/content/global/skill/crafting/lightsources/LightSourceExtinguisher.kt
@@ -1,14 +1,16 @@
-package rs09.game.node.entity.skill.crafting.lightsources
+package content.global.skill.crafting.lightsources
+import core.api.log
import core.cache.def.impl.ItemDefinition
import core.game.container.Container
import core.game.interaction.OptionHandler
import core.game.node.Node
import core.game.node.entity.player.Player
import core.game.node.item.Item
-import rs09.game.system.SystemLogger
+import core.tools.SystemLogger
import core.plugin.Initializable
import core.plugin.Plugin
+import core.tools.Log
/**
@@ -28,14 +30,15 @@ class LightSourceExtinguisher : OptionHandler(){
val lightSource = LightSources.forId(node.id)
- lightSource ?: return false.also { SystemLogger.logWarn("UNHANDLED EXTINGUISH OPTION: ID = ${node.id}") }
+ lightSource ?: return false.also { log(this::class.java, Log.WARN, "UNHANDLED EXTINGUISH OPTION: ID = ${node.id}") }
player.inventory.replace(node.asItem(), Item(lightSource.fullID))
return true
}
fun Container.replace(item: Item, with: Item){
- remove(item)
- add(with)
+ if(remove(item)) {
+ add(with)
+ }
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSourceLighter.kt b/Server/src/main/content/global/skill/crafting/lightsources/LightSourceLighter.kt
similarity index 83%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSourceLighter.kt
rename to Server/src/main/content/global/skill/crafting/lightsources/LightSourceLighter.kt
index 835cfec99..81a1a98cc 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSourceLighter.kt
+++ b/Server/src/main/content/global/skill/crafting/lightsources/LightSourceLighter.kt
@@ -1,6 +1,7 @@
-package rs09.game.node.entity.skill.crafting.lightsources
+package content.global.skill.crafting.lightsources
import core.game.container.Container
+import core.game.event.LitLightSourceEvent
import core.game.interaction.NodeUsageEvent
import core.game.interaction.UseWithHandler
import core.game.node.entity.player.Player
@@ -65,6 +66,12 @@ class LightSourceLighter : UseWithHandler(590,36,38){
lightSource ?: return false
+ // For Sea Slug Quest - No lighting of any torch on the fishing platform.
+ if(event.player.location.isInRegion(11059)) {
+ event.player.sendMessage("Your tinderbox is damp from the sea crossing. It won't work here.")
+ return true
+ }
+
if(!light(event.player,used,lightSource)){
event.player.sendMessage("You need a Firemaking level of at least ${lightSource.levelRequired} to light this.")
}
@@ -73,8 +80,9 @@ class LightSourceLighter : UseWithHandler(590,36,38){
}
fun Container.replace(item: Item, with: Item){
- remove(item)
- add(with)
+ if(remove(item)) {
+ add(with)
+ }
}
fun light(player: Player, item: Item, lightSource: LightSources): Boolean{
@@ -84,6 +92,7 @@ class LightSourceLighter : UseWithHandler(590,36,38){
if(playerLevel < requiredLevel) return false
player.inventory.replace(item,Item(lightSource.litID))
+ player.dispatch(LitLightSourceEvent(lightSource.litID))
return true
}
}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSources.kt b/Server/src/main/content/global/skill/crafting/lightsources/LightSources.kt
similarity index 89%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSources.kt
rename to Server/src/main/content/global/skill/crafting/lightsources/LightSources.kt
index c9daf5557..2c528dd7d 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/crafting/lightsources/LightSources.kt
+++ b/Server/src/main/content/global/skill/crafting/lightsources/LightSources.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.crafting.lightsources
+package content.global.skill.crafting.lightsources
enum class LightSources(val emptyID: Int, val fullID: Int, val litID: Int, val levelRequired: Int, val openFlame: Boolean) {
WHITE_CANDLE(0,36,33,0,true),
@@ -10,6 +10,7 @@ enum class LightSources(val emptyID: Int, val fullID: Int, val litID: Int, val l
OIL_LANTERN(4535,4537,4539,26,false),
BULLSEYE_LANTERN(4546,4548,4550,49,false),
SAPPHIRE_LANTERN(0,4701,4702,49,false),
+ MINING_HELMET(0,5014,5013,65,false),
EMERALD_LANTERN(0,9064,9065,49,false);
companion object {
@@ -24,6 +25,7 @@ enum class LightSources(val emptyID: Int, val fullID: Int, val litID: Int, val l
4537, 4539 -> OIL_LANTERN
4548, 4550 -> BULLSEYE_LANTERN
4701, 4702 -> SAPPHIRE_LANTERN
+ 5014, 5013 -> MINING_HELMET
9064, 9065 -> EMERALD_LANTERN
else -> null
}
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/limestone/ChiselLimestonePulse.java b/Server/src/main/content/global/skill/crafting/limestone/ChiselLimestonePulse.java
similarity index 90%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/limestone/ChiselLimestonePulse.java
rename to Server/src/main/content/global/skill/crafting/limestone/ChiselLimestonePulse.java
index d711115da..259850dfa 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/limestone/ChiselLimestonePulse.java
+++ b/Server/src/main/content/global/skill/crafting/limestone/ChiselLimestonePulse.java
@@ -1,10 +1,13 @@
-package core.game.node.entity.skill.crafting.limestone;
+package content.global.skill.crafting.limestone;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.world.update.flag.context.Animation;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
*
@@ -48,7 +51,7 @@ public class ChiselLimestonePulse extends SkillPulse- {
@Override
public void animate() {
if (ticks % 5 == 0 || ticks < 1) {
- player.getAudioManager().send(2586);
+ playAudio(player, Sounds.CHISEL_2586);
player.animate(Animation.create(4470));
}
}
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/pottery/FirePotteryPulse.java b/Server/src/main/content/global/skill/crafting/pottery/FirePotteryPulse.java
similarity index 96%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/pottery/FirePotteryPulse.java
rename to Server/src/main/content/global/skill/crafting/pottery/FirePotteryPulse.java
index 38c8f424f..e4cf4ec71 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/pottery/FirePotteryPulse.java
+++ b/Server/src/main/content/global/skill/crafting/pottery/FirePotteryPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.pottery;
+package content.global.skill.crafting.pottery;
import core.game.world.map.Location;
import core.game.node.entity.skill.SkillPulse;
@@ -56,7 +56,7 @@ public final class FirePotteryPulse extends SkillPulse
- {
return false;
}
if (!player.getInventory().containsItem(pottery.getUnfinished())) {
- player.getPacketDispatch().sendMessage("You need a " + pottery.name().toLowerCase() + "in order to do this.");
+ player.getPacketDispatch().sendMessage("You need a " + pottery.name().toLowerCase() + " in order to do this.");
return false;
}
return true;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/pottery/PotteryItem.java b/Server/src/main/content/global/skill/crafting/pottery/PotteryItem.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/pottery/PotteryItem.java
rename to Server/src/main/content/global/skill/crafting/pottery/PotteryItem.java
index 649bea561..6eafb8f96 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/pottery/PotteryItem.java
+++ b/Server/src/main/content/global/skill/crafting/pottery/PotteryItem.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.pottery;
+package content.global.skill.crafting.pottery;
import core.game.node.item.Item;
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/pottery/PotteryPulse.java b/Server/src/main/content/global/skill/crafting/pottery/PotteryPulse.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/pottery/PotteryPulse.java
rename to Server/src/main/content/global/skill/crafting/pottery/PotteryPulse.java
index f448caa33..c9cbe0ca3 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/pottery/PotteryPulse.java
+++ b/Server/src/main/content/global/skill/crafting/pottery/PotteryPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.pottery;
+package content.global.skill.crafting.pottery;
import core.game.world.map.Location;
import core.game.node.entity.skill.SkillPulse;
diff --git a/Server/src/main/content/global/skill/crafting/silver/SilverCraftingListener.kt b/Server/src/main/content/global/skill/crafting/silver/SilverCraftingListener.kt
new file mode 100644
index 000000000..346b61b3e
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/silver/SilverCraftingListener.kt
@@ -0,0 +1,111 @@
+package content.global.skill.crafting.silver
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import org.rs09.consts.Scenery
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.interaction.InterfaceListener
+
+import core.game.node.scenery.Scenery as CoreScenery
+
+/**
+ * Handles silver crafting interface interactions
+ * as well as silver -> furnace use-with interaction.
+ *
+ * @author vddCore
+ */
+class SilverCraftingListener : InterfaceListener, InteractionListener {
+ companion object {
+ private const val OP_MAKE_ONE = 155
+ private const val OP_MAKE_FIVE = 196
+ private const val OP_MAKE_ALL = 124
+ private const val OP_MAKE_X = 199
+
+ private val FURNACES = intArrayOf(
+ Scenery.FURNACE_2966, Scenery.FURNACE_3044, Scenery.FURNACE_3294, Scenery.FURNACE_4304,
+ Scenery.FURNACE_6189, Scenery.FURNACE_11009, Scenery.FURNACE_11010, Scenery.FURNACE_11666,
+ Scenery.FURNACE_12100, Scenery.FURNACE_12809, Scenery.FURNACE_18497, Scenery.FURNACE_18525,
+ Scenery.FURNACE_18526, Scenery.FURNACE_21879, Scenery.FURNACE_22721, Scenery.FURNACE_26814,
+ Scenery.FURNACE_28433, Scenery.FURNACE_28434, Scenery.FURNACE_30021, Scenery.FURNACE_30510,
+ Scenery.FURNACE_36956, Scenery.FURNACE_37651
+ )
+
+ private const val ATTRIBUTE_FURNACE_ID = "crafting:silver:furnace_id"
+ }
+
+ override fun defineInterfaceListeners() {
+ onOpen(Components.CRAFTING_SILVER_CASTING_438) { player, _ ->
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 17, Items.HOLY_SYMBOL_1718)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 24, Items.UNHOLY_SYMBOL_1724)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 31, Items.SILVER_SICKLE_2961)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 38, Items.CONDUCTOR_4201)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 45, Items.TIARA_5525)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 53, Items.SILVTHRILL_ROD_7637)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 60, Items.DEMONIC_SIGIL_6748)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 67, Items.SILVER_BOLTS_UNF_9382)
+ sendItemOnInterface(player, Components.CRAFTING_SILVER_CASTING_438, 74, Items.SILVTHRIL_CHAIN_13154)
+
+ return@onOpen true
+ }
+
+ on(Components.CRAFTING_SILVER_CASTING_438) { player, _, opcode, buttonID, _, _ ->
+ val product = SilverProduct.forButtonID(buttonID) ?: return@on true
+
+ if (!inInventory(player, product.requiredItemId)) {
+ sendMessage(
+ player,
+ "You need a ${itemDefinition(product.requiredItemId).name.lowercase()} to make this item."
+ )
+ return@on true
+ }
+
+ if (product == SilverProduct.SILVTHRILL_ROD || product == SilverProduct.SILVTHRIL_CHAIN) {
+ sendMessage(player, "You can't do that yet.")
+ return@on true
+ }
+
+ if (!hasLevelDyn(player, Skills.CRAFTING, product.minimumLevel)) {
+ sendMessage(player, "You need a Crafting level of ${product.minimumLevel} to make this.")
+ return@on true
+ }
+
+ when (opcode) {
+ OP_MAKE_ONE -> make(player, product, 1)
+ OP_MAKE_FIVE -> make(player, product, 5)
+ OP_MAKE_ALL -> make(player, product, amountInInventory(player, Items.SILVER_BAR_2355))
+ OP_MAKE_X -> sendInputDialogue(player, InputType.AMOUNT, "Enter the amount:") { value ->
+ make(player, product, Integer.parseInt(value.toString()))
+ }
+ else -> return@on true
+ }
+
+ return@on true
+ }
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.SCENERY, Items.SILVER_BAR_2355, *FURNACES) { player, _, with ->
+ setAttribute(player, ATTRIBUTE_FURNACE_ID, with)
+ openInterface(player, Components.CRAFTING_SILVER_CASTING_438)
+ return@onUseWith true
+ }
+ }
+
+ private fun make(player: Player, product: SilverProduct, amount: Int) {
+ closeInterface(player)
+
+ submitIndividualPulse(
+ player,
+ SilverCraftingPulse(
+ player,
+ product,
+ getAttribute(player, ATTRIBUTE_FURNACE_ID, CoreScenery(-1, -1, 0)),
+ amount
+ )
+ )
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/silver/SilverCraftingPulse.kt b/Server/src/main/content/global/skill/crafting/silver/SilverCraftingPulse.kt
new file mode 100644
index 000000000..8bc77007c
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/silver/SilverCraftingPulse.kt
@@ -0,0 +1,53 @@
+package content.global.skill.crafting.silver
+
+import core.api.*
+import core.game.event.ResourceProducedEvent
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.scenery.Scenery
+import core.game.system.task.Pulse
+import org.rs09.consts.Animations
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+/**
+ * Handles tick-based silver crafting logic.
+ *
+ * @author vddCore
+ */
+class SilverCraftingPulse(
+ private val player: Player,
+ private val product: SilverProduct,
+ private val furnace: Scenery,
+ private var amount: Int
+) : Pulse() {
+ override fun pulse(): Boolean {
+ if (amount < 1) return true
+
+ if (!inInventory(player, product.requiredItemId) || !inInventory(player, Items.SILVER_BAR_2355)) {
+ return true
+ }
+
+ animate(player, Animations.HUMAN_FURNACE_SMELTING_3243)
+ playAudio(player, Sounds.FURNACE_2725)
+
+ if (removeItem(player, Items.SILVER_BAR_2355, Container.INVENTORY)) {
+ addItem(player, product.producedItemId, product.amountProduced)
+ rewardXP(player, Skills.CRAFTING, product.xpReward)
+
+ player.dispatch(
+ ResourceProducedEvent(
+ product.producedItemId,
+ product.amountProduced,
+ furnace,
+ Items.SILVER_BAR_2355
+ )
+ )
+ } else return true
+
+ amount--
+ delay = 5
+
+ return false
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/silver/SilverProduct.kt b/Server/src/main/content/global/skill/crafting/silver/SilverProduct.kt
new file mode 100644
index 000000000..83becbf16
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/silver/SilverProduct.kt
@@ -0,0 +1,55 @@
+package content.global.skill.crafting.silver
+
+import org.rs09.consts.Items
+
+private const val BUTTON_UNBLESSED = 16
+private const val BUTTON_UNHOLY = 23
+private const val BUTTON_SICKLE = 30
+private const val BUTTON_TIARA = 44
+private const val BUTTON_DEMONIC_SIGIL = 59
+private const val BUTTON_SILVTHRIL_CHAIN = 73
+private const val BUTTON_LIGHTNING_ROD = 37
+private const val BUTTON_SILVTHRILL_ROD = 52
+private const val BUTTON_CROSSBOW_BOLTS = 66
+
+/**
+ * Provides silver crafting product definitions.
+ *
+ * @author vddCore
+ */
+enum class SilverProduct(
+ val buttonId: Int,
+ val requiredItemId: Int,
+ val producedItemId: Int,
+ val amountProduced: Int,
+ val minimumLevel: Int,
+ val xpReward: Double,
+ val strungId: Int
+) {
+ HOLY(BUTTON_UNBLESSED, Items.HOLY_MOULD_1599, Items.UNSTRUNG_SYMBOL_1714, 1, 16, 50.0, Items.UNBLESSED_SYMBOL_1716),
+ UNHOLY(BUTTON_UNHOLY, Items.UNHOLY_MOULD_1594, Items.UNSTRUNG_EMBLEM_1720, 1, 17, 50.0, Items.UNHOLY_SYMBOL_1724),
+ SICKLE(BUTTON_SICKLE, Items.SICKLE_MOULD_2976, Items.SILVER_SICKLE_2961, 1, 18, 50.0, -1),
+ TIARA(BUTTON_TIARA, Items.TIARA_MOULD_5523, Items.TIARA_5525, 1, 23, 52.5, -1),
+ SILVTHRIL_CHAIN(BUTTON_SILVTHRIL_CHAIN, Items.CHAIN_LINK_MOULD_13153, Items.SILVTHRIL_CHAIN_13154, 1, 47, 100.0, -1),
+ LIGHTNING_ROD(BUTTON_LIGHTNING_ROD, Items.CONDUCTOR_MOULD_4200, Items.CONDUCTOR_4201, 1, 20, 50.0, -1),
+ SILVTHRILL_ROD(BUTTON_SILVTHRILL_ROD, Items.ROD_CLAY_MOULD_7649, Items.SILVTHRILL_ROD_7637, 1, 25, 55.0, -1),
+ CROSSBOW_BOLTS(BUTTON_CROSSBOW_BOLTS, Items.BOLT_MOULD_9434, Items.SILVER_BOLTS_UNF_9382, 10, 21, 50.0, -1);
+
+ companion object {
+ private val BUTTON_MAP = HashMap
()
+ private val PRODUCT_MAP = HashMap()
+
+ init {
+ for (product in SilverProduct.values()) {
+ BUTTON_MAP[product.buttonId] = product
+ }
+
+ for (product in SilverProduct.values()) {
+ PRODUCT_MAP[product.producedItemId] = product
+ }
+ }
+
+ fun forButtonID(buttonId: Int): SilverProduct? = BUTTON_MAP[buttonId]
+ fun forProductID(productId: Int): SilverProduct? = PRODUCT_MAP[productId]
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/crafting/silver/SilverStringingListener.kt b/Server/src/main/content/global/skill/crafting/silver/SilverStringingListener.kt
new file mode 100644
index 000000000..591dc42c2
--- /dev/null
+++ b/Server/src/main/content/global/skill/crafting/silver/SilverStringingListener.kt
@@ -0,0 +1,37 @@
+package content.global.skill.crafting.silver
+
+import core.api.addItem
+import core.api.removeItem
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+/**
+ * Handles ball of wool <-> stringable silver items interaction.
+ *
+ * @author vddCore
+ */
+class SilverStringingListener : InteractionListener {
+ companion object {
+ private val STRINGABLE_PRODUCTS = intArrayOf(
+ Items.UNSTRUNG_SYMBOL_1714,
+ Items.UNSTRUNG_EMBLEM_1720
+ )
+ }
+
+ private fun stringSilverProduct(player: Player, used: Node, with: Node): Boolean {
+ SilverProduct.forProductID(with.id)?.let {
+ if (removeItem(player, with.id) && removeItem(player, used.id)) {
+ addItem(player, it.strungId)
+ }
+ }
+
+ return true
+ }
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, Items.BALL_OF_WOOL_1759, *STRINGABLE_PRODUCTS, handler = ::stringSilverProduct)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/spinning/SpinningItem.java b/Server/src/main/content/global/skill/crafting/spinning/SpinningItem.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/spinning/SpinningItem.java
rename to Server/src/main/content/global/skill/crafting/spinning/SpinningItem.java
index c1af625ad..27e561db8 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/spinning/SpinningItem.java
+++ b/Server/src/main/content/global/skill/crafting/spinning/SpinningItem.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.spinning;
+package content.global.skill.crafting.spinning;
/**
* Represents an item to be spinned.
diff --git a/Server/src/main/java/core/game/node/entity/skill/crafting/spinning/SpinningPulse.java b/Server/src/main/content/global/skill/crafting/spinning/SpinningPulse.java
similarity index 95%
rename from Server/src/main/java/core/game/node/entity/skill/crafting/spinning/SpinningPulse.java
rename to Server/src/main/content/global/skill/crafting/spinning/SpinningPulse.java
index e1265f537..ae652f9a8 100644
--- a/Server/src/main/java/core/game/node/entity/skill/crafting/spinning/SpinningPulse.java
+++ b/Server/src/main/content/global/skill/crafting/spinning/SpinningPulse.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.crafting.spinning;
+package content.global.skill.crafting.spinning;
import core.cache.def.impl.ItemDefinition;
import core.game.container.impl.EquipmentContainer;
@@ -9,6 +9,9 @@ import core.game.node.entity.skill.Skills;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
import core.game.world.update.flag.context.Animation;
+import org.rs09.consts.Sounds;
+
+import static core.api.ContentAPIKt.playAudio;
/**
* Represents the pulse used to spin an item.
@@ -67,6 +70,7 @@ public final class SpinningPulse extends SkillPulse- {
public void animate() {
if (ticks % 5 == 0) {
player.animate(ANIMATION);
+ playAudio(player, Sounds.SPINNING_2590);
}
}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/BasketsAndSacks.kt b/Server/src/main/content/global/skill/farming/BasketsAndSacks.kt
similarity index 91%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/farming/BasketsAndSacks.kt
rename to Server/src/main/content/global/skill/farming/BasketsAndSacks.kt
index 8ad542e66..fea2f83d8 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/BasketsAndSacks.kt
+++ b/Server/src/main/content/global/skill/farming/BasketsAndSacks.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.farming
+package content.global.skill.farming
import org.rs09.consts.Items
@@ -23,8 +23,7 @@ enum class BasketsAndSacks(val produceID: Int, val baseContainer: Int, val capac
init {
values().map { it.produceID to it }.toMap(map)
for(b in values()){
- b.containers.add(b.baseContainer)
- for(i in 1 until b.capacity){
+ for(i in 0 until b.capacity){
map[b.baseContainer + (i * 2)] = b
b.containers.add(b.baseContainer + (i * 2))
}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/CompostBin.kt b/Server/src/main/content/global/skill/farming/CompostBin.kt
similarity index 76%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/farming/CompostBin.kt
rename to Server/src/main/content/global/skill/farming/CompostBin.kt
index bb6445952..c7e7f5cc2 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/CompostBin.kt
+++ b/Server/src/main/content/global/skill/farming/CompostBin.kt
@@ -1,15 +1,14 @@
-package rs09.game.node.entity.skill.farming
+package content.global.skill.farming
-import api.*
+import core.api.*
import core.game.node.entity.player.Player
-import core.game.node.entity.player.link.audio.Audio
import core.game.node.entity.skill.Skills
import core.game.node.item.Item
import core.tools.RandomFunction
import org.json.simple.JSONArray
import org.json.simple.JSONObject
import org.rs09.consts.Items
-import rs09.game.system.SystemLogger
+import org.rs09.consts.Sounds
import java.util.concurrent.TimeUnit
class CompostBin(val player: Player, val bin: CompostBins) {
@@ -20,20 +19,38 @@ class CompostBin(val player: Player, val bin: CompostBins) {
var finishedTime = 0L
var isFinished = false
+ /**
+ * Resets the compost bin to its initial state.
+ */
+ fun reset() {
+ items.clear()
+ isSuperCompost = true
+ isTomatoes = true
+ isClosed = false
+ finishedTime = 0L
+ isFinished = false
+ updateBit()
+ }
+
fun isFull() : Boolean {
return items.size == 15
}
fun close() {
isClosed = true
- player.audioManager.send(2428)
+ sendMessage(player, "You close the compost bin.")
+ // TODO: Add animation - https://youtu.be/B50dwm8fdcQ?t=225 https://youtu.be/BHYgNDLx0s4?t=488
+ playAudio(player, Sounds.COMPOST_CLOSE_2428)
+ sendMessage(player, "The contents have begun to rot.")
finishedTime = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(RandomFunction.random(35,50).toLong())
updateBit()
}
fun open(){
isClosed = false
- player.audioManager.send(2429)
+ // TODO: Add animation
+ playAudio(player, Sounds.COMPOST_OPEN_2429)
+ sendMessage(player, "You open the compost bin.")
updateBit()
}
@@ -48,13 +65,17 @@ class CompostBin(val player: Player, val bin: CompostBins) {
isSuperCompost = true
isClosed = false
}
- player.audioManager.send(Audio (2443, 1, 1))
+ playAudio(player, Sounds.FARMING_SCOOP_2443)
updateBit()
if(isSuperCompost) rewardXP(player, Skills.FARMING, 8.5)
else rewardXP(player, Skills.FARMING, 4.5)
return Item(item)
}
+ fun isDefaultState() : Boolean {
+ return (isFinished == false && finishedTime == 0L && items.size == 0)
+ }
+
fun isReady(): Boolean {
return System.currentTimeMillis() > finishedTime && finishedTime != 0L
}
@@ -113,26 +134,26 @@ class CompostBin(val player: Player, val bin: CompostBins) {
} else item.amount
for(i in 0 until amount) {
- player.audioManager.send(2441)
+ playAudio(player, Sounds.FARMING_PUTIN_2441)
addItem(item.id)
}
}
fun updateBit(){
- player.varpManager.get(bin.varpIndex).clearBitRange(bin.varpOffest,bin.varpOffest + 7)
if(items.isNotEmpty()) {
- if (isFinished) {
- player.varpManager.get(bin.varpIndex).setVarbit(bin.varpOffest + 1, if(items.size == 15) 15 else 14)
- if (isTomatoes) player.varpManager.get(bin.varpIndex).setVarbit(bin.varpOffest + 7, 1)
- else if (isSuperCompost) player.varpManager.get(bin.varpIndex).setVarbit(bin.varpOffest + 5, 1)
+ if (isClosed) {
+ setVarbit(player, bin.varbit, 0x40)
+ } else if (isFinished) {
+ var finalValue = if (items.size == 15) 15 else 14
+ if (isTomatoes) finalValue += 0x80
+ else if (isSuperCompost) finalValue += 0x20
+ setVarbit(player, bin.varbit, finalValue)
} else {
- player.varpManager.get(bin.varpIndex).setVarbit(bin.varpOffest, items.size)
- if (isTomatoes) player.varpManager.get(bin.varpIndex).setVarbit(bin.varpOffest + 7, 1)
+ var finalValue = items.size
+ if (isTomatoes) finalValue += 0x80
+ setVarbit(player, bin.varbit, finalValue)
}
- if (isClosed) player.varpManager.get(bin.varpIndex).setVarbit(bin.varpOffest + 6, 1)
- }
- SystemLogger.logAlert("Sending " + player.varpManager.get(bin.varpIndex).getValue())
- player.varpManager.get(bin.varpIndex).send(player)
+ } else setVarbit(player, bin.varbit, 0)
}
fun save(root: JSONObject){
@@ -178,4 +199,4 @@ class CompostBin(val player: Player, val bin: CompostBins) {
updateBit()
}
}
-}
\ No newline at end of file
+}
diff --git a/Server/src/main/content/global/skill/farming/CompostBinOptionHandler.kt b/Server/src/main/content/global/skill/farming/CompostBinOptionHandler.kt
new file mode 100644
index 000000000..a8a0b182f
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/CompostBinOptionHandler.kt
@@ -0,0 +1,50 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.plugin.Initializable
+import core.plugin.Plugin
+
+@Initializable
+class CompostBinOptionHandler : OptionHandler() {
+ override fun newInstance(arg: Any?): Plugin
{
+ for (i in 7836..7839)
+ SceneryDefinition.forId(i).childrenIds.forEach {
+ val def = SceneryDefinition.forId(it)
+ def.handlers["option:open"] = this
+ def.handlers["option:close"] = this
+ def.handlers["option:take-tomato"] = this
+ }
+ return this
+ }
+
+ override fun handle(player: Player?, node: Node?, option: String?): Boolean {
+ player ?: return false
+ node ?: return false
+ val cBin = CompostBins.forObject(node.asScenery()) ?: return false
+ val bin = cBin.getBinForPlayer(player)
+
+ when (option) {
+ "close" -> if (!bin.isFull()) sendMessage(player, "This shouldn't be happening. Report this.") else bin.close()
+ "open" -> if (!bin.isFinished) sendMessage(player, "I should probably wait until it is done to open it.") else bin.open()
+ "take-tomato" -> {
+ if (!bin.isTomatoes || !bin.isFinished) {
+ sendMessage(player, "This shouldn't be happening. Report this.")
+ } else {
+ if (player.inventory.isFull) {
+ sendMessage(player, "You don't have enough inventory space to do this.")
+ } else {
+ val reward = bin.takeItem()
+ if (reward != null)
+ player.inventory.add(reward)
+ }
+ }
+ }
+ }
+ return true
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/CompostBins.kt b/Server/src/main/content/global/skill/farming/CompostBins.kt
new file mode 100644
index 000000000..3780625f4
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/CompostBins.kt
@@ -0,0 +1,35 @@
+package content.global.skill.farming
+
+import content.global.skill.farming.timers.Compost
+import core.api.getOrStartTimer
+import core.cache.def.impl.SceneryDefinition
+import core.game.node.entity.player.Player
+import core.game.node.scenery.Scenery
+
+enum class CompostBins(val varbit: Int) {
+ FALADOR_COMPOST(740),
+ CATHERBY_COMPOST(741),
+ PORT_PHAS_COMPOST(742),
+ ARDOUGNE_COMPOST(743);
+
+ companion object {
+ @JvmField
+ val bins = values().map { it.varbit to it }.toMap()
+
+ @JvmStatic
+ fun forObject(obj: Scenery): CompostBins?{
+ return forObjectID(obj.id)
+ }
+
+ @JvmStatic
+ fun forObjectID(id: Int): CompostBins?{
+ val objDef = SceneryDefinition.forId(id)
+ return bins[objDef.varbitID]
+ }
+ }
+
+ fun getBinForPlayer(player: Player) : CompostBin {
+ val bins = getOrStartTimer (player)
+ return bins.getBin (this)
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/CompostType.kt b/Server/src/main/content/global/skill/farming/CompostType.kt
new file mode 100644
index 000000000..01e34dbad
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/CompostType.kt
@@ -0,0 +1,7 @@
+package content.global.skill.farming
+
+enum class CompostType {
+ NONE,
+ COMPOST,
+ SUPERCOMPOST
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/CropHarvester.kt b/Server/src/main/content/global/skill/farming/CropHarvester.kt
new file mode 100644
index 000000000..b70347b67
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/CropHarvester.kt
@@ -0,0 +1,156 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import content.global.skill.summoning.familiar.GiantEntNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import core.plugin.Initializable
+import core.plugin.Plugin
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+val livesBased = arrayOf(PatchType.HERB_PATCH, PatchType.CACTUS_PATCH, PatchType.BELLADONNA_PATCH, PatchType.HOPS_PATCH, PatchType.ALLOTMENT, PatchType.EVIL_TURNIP_PATCH)
+
+@Initializable
+class CropHarvester : OptionHandler() {
+
+ override fun newInstance(arg: Any?): Plugin {
+ SceneryDefinition.setOptionHandler("harvest", this)
+ SceneryDefinition.setOptionHandler("pick", this)
+ return this
+ }
+
+ companion object {
+ @JvmStatic
+ fun harvestPulse(player: Player?, node: Node?, crop: Int): Pulse? {
+ player ?: return null
+ node ?: return null
+ val fPatch = FarmingPatch.forObject(node.asScenery())
+ fPatch ?: return null
+ val patch = fPatch.getPatchFor(player)
+ val patchName = patch.patch.type.displayName()
+ val plantable = patch.plantable
+ plantable ?: return null
+ var firstHarvest = true
+
+ return object : Pulse(0) {
+ override fun pulse(): Boolean {
+ var reward = Item(crop)
+
+ val familiar = player.familiarManager.familiar
+ if (familiar != null && familiar is GiantEntNPC) {
+ familiar.modifyFarmingReward(fPatch, reward)
+ }
+ if (!hasSpaceFor(player, reward)) {
+ sendMessage(player, "You have run out of inventory space.")
+ return true
+ }
+ var requiredItem = when (fPatch.type) {
+ PatchType.TREE_PATCH -> Items.SECATEURS_5329
+ else -> Items.SPADE_952
+ }
+ if (requiredItem == Items.SECATEURS_5329) {
+ if (inInventory(player, Items.MAGIC_SECATEURS_7409)) {
+ requiredItem = Items.MAGIC_SECATEURS_7409
+ }
+ }
+ val anim = when (requiredItem) {
+ Items.SPADE_952 -> {
+ when (fPatch.type) {
+ PatchType.HERB_PATCH -> Animation(2282)
+ PatchType.FLOWER_PATCH -> Animation(2292)
+ else -> Animation(830)
+ }
+ }
+ Items.SECATEURS_5329 -> if (fPatch.type == PatchType.TREE_PATCH) Animation(2277) else Animation(7227)
+ Items.MAGIC_SECATEURS_7409 -> if (fPatch.type == PatchType.TREE_PATCH) Animation(3340) else Animation(7228)
+ else -> Animation(0)
+ }
+ val sound = when (requiredItem) {
+ Items.SPADE_952 -> Sounds.DIGSPADE_1470
+ Items.SECATEURS_5329 -> Sounds.FARMING_PICK_2437
+ Items.MAGIC_SECATEURS_7409 -> Sounds.FARMING_PICK_2437
+ else -> 0
+ }
+ if (!inInventory(player, requiredItem)) {
+ sendMessage(player, "You lack the needed tool to harvest these crops.")
+ return true
+ }
+ val necklace = getItemFromEquipment(player, EquipmentSlot.NECK)
+ var noted = false
+ if (necklace != null && (necklace.name.lowercase().contains("amulet of farming") || necklace.name.lowercase().contains("amulet of nature"))) {
+ noted = true
+ } else if (inEquipment(player,10878,1)) {
+ noted = true
+ }
+ val sendHarvestMessages = if (fPatch.type == PatchType.FLOWER_PATCH) false else true
+ if (sendHarvestMessages && firstHarvest) {
+ sendMessage(player, "You begin to harvest the $patchName.")
+ if (noted) {
+ sendMessage(player, "The leprechaun exchanges your produce for banknotes.")
+ }
+ firstHarvest = false
+ }
+ animate(player, anim)
+ playAudio(player, sound)
+ // TODO: If a flower patch is being harvested, delay the clearing of the
+ // patch until after the animation has played - https://youtu.be/lg4GktlVNUY?t=75
+ delay = 2
+ if (noted) {
+ addItem(player, note(reward).id)
+ } else {
+ addItem(player, reward.id)
+ }
+ rewardXP(player, Skills.FARMING, plantable.harvestXP)
+ if (patch.patch.type in livesBased) {
+ patch.rollLivesDecrement(
+ getDynLevel(player, Skills.FARMING),
+ inInventory(player, Items.MAGIC_SECATEURS_7409) //add ||inEquipment() check when Fairy Tale pt 1 has been implemented
+ )
+ } else {
+ patch.harvestAmt--
+ if (patch.harvestAmt <= 0 && crop == plantable.harvestItem) {
+ patch.clear()
+ }
+ }
+ if (sendHarvestMessages && (patch.cropLives <= 0 || patch.harvestAmt <= 0)) {
+ sendMessage(player, "The $patchName is now empty.")
+ }
+ return patch.cropLives <= 0 || patch.harvestAmt <= 0
+ }
+ }
+ }
+ }
+
+ override fun handle(player: Player?, node: Node?, option: String?): Boolean {
+ player ?: return false
+ node ?: return false
+ val fPatch = FarmingPatch.forObject(node.asScenery())
+ fPatch ?: return false
+ val patch = fPatch.getPatchFor(player)
+ val plantable = patch.plantable
+ plantable ?: return false
+
+ if (patch.isWeedy() || patch.isEmptyAndWeeded()) {
+ sendMessage(player, "Something seems to have gone wrong here. Report this.")
+ return true
+ }
+
+ if (!hasSpaceFor(player, Item(plantable.harvestItem))) {
+ sendMessage(player, "You don't have enough inventory space to do that.")
+ return true
+ }
+
+ val pulse = harvestPulse(player, node, plantable.harvestItem) ?: return false
+ submitIndividualPulse(player, pulse)
+
+ return true
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/farming/DigUpPatchDialogue.kt b/Server/src/main/content/global/skill/farming/DigUpPatchDialogue.kt
new file mode 100644
index 000000000..a0d70bb07
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/DigUpPatchDialogue.kt
@@ -0,0 +1,86 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.dialogue.DialoguePlugin
+import core.game.interaction.QueueStrength
+import core.game.node.entity.player.Player
+import core.plugin.Initializable
+import org.rs09.consts.Sounds
+
+@Initializable
+class DigUpPatchDialogue(player: Player? = null) : DialoguePlugin(player) {
+ var patch: Patch? = null
+
+ override fun newInstance(player: Player?): DialoguePlugin {
+ return DigUpPatchDialogue(player)
+ }
+
+ override fun open(vararg args: Any?): Boolean {
+ patch = args[0] as Patch
+ if (patch?.isWeedy() == true || patch?.isEmptyAndWeeded() == true) {
+ sendDialogue(player, "There aren't any crops in this patch to dig up.")
+ stage = 1000
+ return true
+ }
+ if (patch?.patch?.type == PatchType.TREE_PATCH) {
+ val isTreeStump = patch?.getCurrentState() == patch?.plantable!!.value + patch?.plantable!!.stages + 2
+ if (patch!!.isGrown() && !isTreeStump) {
+ sendMessage(player, "You need to chop this tree down first.") // this message is not authentic
+ stage = 1000
+ return true
+ }
+ }
+ sendDialogueOptions(player, "Are you sure you want to dig up this patch?", "Yes, I want to clear it for new crops.", "No, I want to leave it as it is.")
+ stage = 0
+ return true
+ }
+
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ when (stage) {
+ 0 -> when (buttonId) {
+ 1 -> {
+ end()
+ val anim = getAnimation(830)
+ sendMessage(player, "You start digging the farming patch...")
+ queueScript(player, 0, QueueStrength.WEAK) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ animate(player, anim)
+ playAudio(player, Sounds.DIGSPADE_1470)
+ return@queueScript delayScript(player,anim.duration + 2)
+ }
+ 1 -> {
+ animate(player, anim)
+ playAudio(player, Sounds.DIGSPADE_1470)
+ return@queueScript delayScript(player, anim.duration + 1)
+ }
+ 2 -> {
+ if (patch?.patch?.type == PatchType.TREE_PATCH) {
+ if (patch?.getCurrentState() == (patch?.plantable?.value ?: 0) + (patch?.plantable?.stages ?: 0) + 2 && patch?.isWeedy() != true && patch?.isEmptyAndWeeded() != true) {
+ addItemOrDrop(player, patch?.plantable?.harvestItem ?: 0)
+ }
+ }
+ if (patch?.plantable == Plantable.SCARECROW) {
+ addItemOrDrop(player, patch?.plantable?.harvestItem ?: 0)
+ }
+ patch?.clear()
+ sendMessage(player, "You have successfully cleared this patch for new crops.")
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+ else -> end()
+ }
+
+ 1000 -> end()
+ }
+ return true
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(67984003)
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/FarmerPayOptionDialogue.kt b/Server/src/main/content/global/skill/farming/FarmerPayOptionDialogue.kt
new file mode 100644
index 000000000..7b29a5568
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/FarmerPayOptionDialogue.kt
@@ -0,0 +1,113 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.dialogue.DialogueFile
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.Topic
+import core.game.node.item.Item
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+import org.rs09.consts.Items
+
+class FarmerPayOptionDialogue(val patch: Patch, val quickPay: Boolean = false): DialogueFile() {
+ var item: Item? = null
+ override fun handle(componentID: Int, buttonID: Int) {
+ when (stage) {
+ START_DIALOGUE -> {
+ if (patch.patch.type == PatchType.TREE_PATCH && patch.plantable != null && patch.isGrown()) {
+ // This is for the right-click "Pay" option; full dialogue is in GardenerDialoguePlugin
+ showTopics(
+ Topic("Yes, get rid of the tree.", 300, true),
+ Topic("No thanks.", END_DIALOGUE, true),
+ title = "Pay 200 gp to have the tree chopped down?"
+ )
+ } else if (patch.protectionPaid) {
+ npc("I don't know what you're talking about - I'm already", "looking after that patch for you.").also { stage = 100 }
+ } else if (patch.isDead) {
+ npc("That patch is dead - it's too late for me to do", "anything about it now.").also { stage = END_DIALOGUE }
+ } else if (patch.isDiseased) {
+ npc("That patch is diseased - I can't look after it", "until it has been cured.").also { stage = END_DIALOGUE } // this dialogue is not authentic
+ } else if (patch.isWeedy() || patch.isEmptyAndWeeded()) {
+ npc(FacialExpression.NEUTRAL, "You don't have anything planted in that patch. Plant", "something and I might agree to look after it for you.").also { stage = END_DIALOGUE }
+ } else if (patch.isGrown()) {
+ npc("That patch is already fully grown!", "I don't know what you want me to do with it!").also { stage = END_DIALOGUE }
+ } else {
+ item = patch.plantable?.protectionItem
+ val protectionText = when (item?.id) {
+ Items.COMPOST_6032 -> if (item?.amount == 1) "bucket of compost" else "buckets of compost"
+ Items.POTATOES10_5438 -> if (item?.amount == 1) "sack of potatoes" else "sacks of potatoes"
+ Items.ONIONS10_5458 -> if (item?.amount == 1) "sack of onions" else "sacks of onions"
+ Items.CABBAGES10_5478 -> if (item?.amount == 1) "sack of cabbages" else "sacks of cabbages"
+ Items.JUTE_FIBRE_5931 -> "jute fibres"
+ Items.APPLES5_5386 -> if (item?.amount == 1) "basket of apples" else "baskets of apples"
+ Items.MARIGOLDS_6010 -> "harvest of marigold"
+ Items.TOMATOES5_5968 -> if (item?.amount == 1) "basket of tomatoes" else "baskets of tomatoes"
+ Items.ORANGES5_5396 -> if (item?.amount == 1) "basket of oranges" else "baskets of oranges"
+ Items.COCONUT_5974 -> "coconuts"
+ Items.CACTUS_SPINE_6016 -> "cactus spines"
+ Items.STRAWBERRIES5_5406 -> if (item?.amount == 1) "basket of strawberries" else "baskets of strawberries"
+ Items.BANANAS5_5416 -> if (item?.amount == 1) "basket of bananas" else "baskets of bananas"
+ else -> item?.name?.lowercase()
+ }
+ if (item == null) {
+ npc("Sorry, I won't protect that.").also { stage = END_DIALOGUE }
+ } else if (quickPay && !(inInventory(player!!, item!!.id, item!!.amount) || inInventory(player!!, note(item!!).id, note(item!!).amount))) {
+ val amount = if (item?.amount == 1) "one" else item?.amount
+ npc(FacialExpression.HAPPY, "I want $amount $protectionText for that.")
+ stage = 200
+ } else if (quickPay) {
+ val amount = if (item?.amount == 1) "one" else item?.amount
+ showTopics(
+ Topic("Yes", 20, true),
+ Topic("No", END_DIALOGUE, true),
+ title = "Pay $amount $protectionText?"
+ )
+ } else {
+ val amount = if (item?.amount == 1) "one" else item?.amount
+ npc("If you like, but I want $amount $protectionText for that.")
+ stage++
+ }
+ }
+ }
+
+ 1 -> {
+ if (!(inInventory(player!!, item!!.id, item!!.amount) || inInventory(player!!, note(item!!).id, note(item!!).amount))) {
+ player("I'm afraid I don't have any of those at the moment.").also { stage = 10 }
+ } else {
+ showTopics(
+ Topic(FacialExpression.NEUTRAL, "Okay, it's a deal.", 20),
+ Topic(FacialExpression.NEUTRAL, "No, that's too much.", 10)
+ )
+ }
+ }
+
+ 10 -> npc("Well, I'm not wasting my time for free.").also { stage = END_DIALOGUE }
+
+ 20 -> {
+ if (removeItem(player!!, item) || removeItem(player!!, note(item!!))) {
+ patch.protectionPaid = true
+ // Note: A slight change in this dialogue was seen in a December 2009 video - https://youtu.be/7gVh42ylQ48?t=138
+ npc("That'll do nicely, ${if (player!!.isMale) "sir" else "madam"}. Leave it with me - I'll make sure", "those crops grow for you.").also { stage = END_DIALOGUE }
+ } else {
+ npc("This shouldn't be happening. Please report this.").also { stage = END_DIALOGUE }
+ }
+ }
+
+ 100 -> player("Oh sorry, I forgot.").also { stage = END_DIALOGUE }
+
+ // Right-click "Pay" - protect patch - player doesn't have payment
+ 200 -> player(FacialExpression.NEUTRAL, "Thanks, maybe another time.").also { stage = END_DIALOGUE }
+
+ // Right-click "Pay" - chop down tree
+ 300 -> {
+ if (removeItem(player!!, Item(Items.COINS_995, 200))) {
+ patch.clear()
+ dialogue("The gardener obligingly removes your tree.").also { stage = END_DIALOGUE }
+ } else {
+ dialogue("You need 200 gp to pay for that.").also { stage = END_DIALOGUE } // not authentic
+ }
+ }
+
+ }
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/FarmerPayOptionHandler.kt b/Server/src/main/content/global/skill/farming/FarmerPayOptionHandler.kt
new file mode 100644
index 000000000..52d7874ad
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/FarmerPayOptionHandler.kt
@@ -0,0 +1,28 @@
+package content.global.skill.farming
+
+import core.api.openDialogue
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class FarmerPayOptionHandler : InteractionListener {
+
+ override fun defineListeners() {
+ on(IntType.NPC,"pay","pay (north)","pay (north-west)") { player, node ->
+ return@on attemptPay(player,node,0)
+ }
+
+ on(IntType.NPC,"pay (south)","pay (south-east)") { player, node ->
+ return@on attemptPay(player,node,1)
+ }
+ }
+
+ fun attemptPay(player: Player, node: Node, index: Int): Boolean {
+ val farmer = Farmers.forId(node.id) ?: return false
+ val patch = farmer.patches[index].getPatchFor(player)
+
+ openDialogue(player, FarmerPayOptionDialogue(patch, true), node.asNpc())
+ return true
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/Farmers.kt b/Server/src/main/content/global/skill/farming/Farmers.kt
similarity index 97%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/farming/Farmers.kt
rename to Server/src/main/content/global/skill/farming/Farmers.kt
index fc154d0e9..4a57feeef 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/Farmers.kt
+++ b/Server/src/main/content/global/skill/farming/Farmers.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.farming
+package content.global.skill.farming
enum class Farmers(val id: Int, val patches: Array) {
LYRA(2326, arrayOf(FarmingPatch.PORT_PHAS_ALLOTMENT_NW,FarmingPatch.PORT_PHAS_ALLOTMENT_SE)),
diff --git a/Server/src/main/content/global/skill/farming/FarmingPatch.kt b/Server/src/main/content/global/skill/farming/FarmingPatch.kt
new file mode 100644
index 000000000..ed033d253
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/FarmingPatch.kt
@@ -0,0 +1,124 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.node.scenery.Scenery
+import core.game.node.entity.player.Player
+import content.global.skill.farming.timers.CropGrowth
+
+enum class FarmingPatch(val varbit: Int, val type: PatchType) {
+ //Allotments
+ S_FALADOR_ALLOTMENT_NW(708,PatchType.ALLOTMENT),
+ S_FALADOR_ALLOTMENT_SE(709,PatchType.ALLOTMENT),
+ CATHERBY_ALLOTMENT_N(710,PatchType.ALLOTMENT),
+ CATHERBY_ALLOTMENT_S(711,PatchType.ALLOTMENT),
+ ARDOUGNE_ALLOTMENT_S(713,PatchType.ALLOTMENT),
+ ARDOUGNE_ALLOTMENT_N(712,PatchType.ALLOTMENT),
+ PORT_PHAS_ALLOTMENT_NW(714,PatchType.ALLOTMENT),
+ PORT_PHAS_ALLOTMENT_SE(715,PatchType.ALLOTMENT),
+ HARMONY_ISLAND_ALLOTMENT(3402,PatchType.ALLOTMENT),
+
+ //Herb
+ CATHERBY_HERB_CE(781,PatchType.HERB_PATCH),
+ S_FALADOR_HERB_NE(780,PatchType.HERB_PATCH),
+ ARDOUGNE_HERB_CE(782,PatchType.HERB_PATCH),
+ PORT_PHAS_HERB_NE(783,PatchType.HERB_PATCH),
+ TROLL_STRONGHOLD_HERB(2788,PatchType.HERB_PATCH),
+
+ //Flower
+ S_FALADOR_FLOWER_C(728,PatchType.FLOWER_PATCH),
+ CATHERBY_FLOWER_C(729,PatchType.FLOWER_PATCH),
+ ARDOUGNE_FLOWER_C(730,PatchType.FLOWER_PATCH),
+ PORT_PHAS_FLOWER_C(731,PatchType.FLOWER_PATCH),
+ WILDERNESS_FLOWER(5067,PatchType.FLOWER_PATCH),
+
+ //Tree
+ N_FALADOR_TREE(701,PatchType.TREE_PATCH),
+ TAVERLY_TREE(700,PatchType.TREE_PATCH),
+ GNOME_STRONGHOLD_TREE(2953,PatchType.TREE_PATCH),
+ LUMBRIDGE_TREE(703,PatchType.TREE_PATCH),
+ VARROCK_TREE(702,PatchType.TREE_PATCH),
+
+ //Fruit Tree
+ GNOME_STRONGHOLD_FRUIT_TREE(704,PatchType.FRUIT_TREE_PATCH),
+ CATHERBY_FRUIT_TREE(707,PatchType.FRUIT_TREE_PATCH),
+ TREE_GNOME_VILLAGE_FRUIT_TREE(705,PatchType.FRUIT_TREE_PATCH),
+ BRIMHAVEN_FRUIT_TREE(706,PatchType.FRUIT_TREE_PATCH),
+ LLETYA_FRUIT_TREE(4317,PatchType.FRUIT_TREE_PATCH),
+
+ //Hops
+ ENTRANA_HOPS(717,PatchType.HOPS_PATCH),
+ LUMBRIDGE_HOPS(718,PatchType.HOPS_PATCH),
+ MCGRUBOR_HOPS(719,PatchType.HOPS_PATCH),
+ YANILLE_HOPS(716,PatchType.HOPS_PATCH),
+
+ //Bushes
+ CHAMPIONS_GUILD_BUSH(732,PatchType.BUSH_PATCH),
+ RIMMINGTON_BUSH(733,PatchType.BUSH_PATCH),
+ ARDOUGNE_BUSH(735,PatchType.BUSH_PATCH),
+ ETCETERIA_BUSH(734,PatchType.BUSH_PATCH),
+
+ //Spirit Tree
+ ETCETERIA_SPIRIT_TREE(722,PatchType.SPIRIT_TREE_PATCH),
+ PORT_SARIM_SPIRIT_TREE(720,PatchType.SPIRIT_TREE_PATCH),
+ KARAMJA_SPIRIT_TREE(724,PatchType.SPIRIT_TREE_PATCH),
+
+ //Other
+ DRAYNOR_BELLADONNA(748, PatchType.BELLADONNA_PATCH),
+ CANIFIS_MUSHROOM(746, PatchType.MUSHROOM_PATCH),
+ ALKHARID_CACTUS(744, PatchType.CACTUS_PATCH),
+ EVIL_TURNIP(4291, PatchType.EVIL_TURNIP_PATCH);
+
+
+ companion object {
+ @JvmField
+ val patches = FarmingPatch.values().map { it.varbit to it }.toMap()
+ val patchNodes = ArrayList()
+ val nodeMap = HashMap()
+
+ init {
+ patchNodes.addAll(8550..8557) //allotment wrappers
+ patchNodes.addAll(7847..7853) //flower patch wrappers
+ patchNodes.addAll(8150..8156) //herb patch wrappers
+ patchNodes.addAll(8388..8391) // Tree patches
+ patchNodes.add(19147) //Tree patch
+ patchNodes.addAll(7962..7965) //fruit trees
+ patchNodes.addAll(8173..8176) //hops
+ patchNodes.addAll(7577..7580) //bush
+ patchNodes.add(23760) //evil turnip
+ patchNodes.add(7572) //belladonna
+ patchNodes.add(8337) //mushroom
+ patchNodes.add(27197) //jade vine
+ patchNodes.add(7771) //cactus
+ patchNodes.add(7807) //calquat
+ patchNodes.addAll(8382..8383)//spirit trees
+ patchNodes.add(8338) //spirit tree
+ patchNodes.add(18816) //death plateau wrapper
+
+ for (patch in patchNodes) {
+ val def = SceneryDefinition.forId(patch)
+ nodeMap[def.varbitID] = def
+ }
+ }
+
+ @JvmStatic
+ fun forObject(obj: Scenery): FarmingPatch?{
+ return forObjectID(obj.id)
+ }
+
+ @JvmStatic
+ fun forObjectID(id: Int): FarmingPatch?{
+ val objDef = SceneryDefinition.forId(id)
+ return patches[objDef.varbitID]
+ }
+
+ fun getSceneryDefByVarbit (id: Int) : SceneryDefinition? {
+ return nodeMap[id]
+ }
+ }
+
+ fun getPatchFor(player: Player, addPatch : Boolean = true): Patch{
+ val crops = getOrStartTimer (player)
+ return crops.getPatch(this, addPatch)
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/FarmingPatchZone.kt b/Server/src/main/content/global/skill/farming/FarmingPatchZone.kt
new file mode 100644
index 000000000..09a190c29
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/FarmingPatchZone.kt
@@ -0,0 +1,78 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.dialogue.FacialExpression
+import core.game.node.entity.Entity
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.world.map.zone.ZoneBorders
+import org.rs09.consts.NPCs
+import core.game.dialogue.DialogueFile
+
+class FarmingPatchZone : MapArea, TickListener {
+ private val playersInZone = hashMapOf()
+
+ override fun defineAreaBorders(): Array {
+ return arrayOf(
+ getRegionBorders(12083),
+ getRegionBorders(10548),
+ ZoneBorders(3594,3521,3608,3532)
+ )
+ }
+
+ override fun areaEnter(entity: Entity) {
+ if(entity is Player && playersInZone[entity] == null && getStatLevel(entity, Skills.FARMING) <= 15) {
+ playersInZone[entity] = 0
+ }
+ }
+
+ override fun areaLeave(entity: Entity, logout: Boolean) {
+ if(entity is Player)
+ playersInZone.remove(entity)
+ }
+
+ override fun tick() {
+ playersInZone.toList().forEach { (player, ticks) ->
+ if(!player.isArtificial) {
+ if (ticks == 500) {
+ spawnGithan(player, true)
+ } else if (ticks == 1000) {
+ spawnGithan(player, false)
+ }
+ playersInZone[player] = ticks + 1
+ }
+ }
+ }
+
+ /**
+ * Spawns a Githan at a player if they've been standing in a farming patch zone for long enough.
+ * @param player The player to spawn the Githan at.
+ * @param firstDialogue Whether the Githan should play the first dialogue or not (and playing the second dialogue instead).
+ */
+ private fun spawnGithan(player: Player, firstDialogue: Boolean) {
+ val npc = NPC(NPCs.GITHAN_7122)
+ npc.location = player.location
+ npc.init()
+ npc.moveStep()
+ npc.face(player)
+ openDialogue(player, SpiritDialogue(firstDialogue), npc)
+ }
+
+ internal class SpiritDialogue(private val firstDialogue: Boolean) : DialogueFile(){
+ override fun handle(componentID: Int, buttonID: Int) {
+ when(stage){
+ 0 -> {
+ if(firstDialogue) npcl(FacialExpression.NEUTRAL, "In case you didn't know, you don't have to stand by your Farming patch. Your crops will grow even if you're not around.").also { stage++ }
+ else npcl(FacialExpression.NEUTRAL, "Did you know that if your Farming patch has fully grown, it will never catch disease or die? It will be perfectly safe until you choose to harvest it.").also { stage++ }
+ }
+ 1 -> end()
+ }
+ }
+
+ override fun end(){
+ super.end()
+ poofClear(npc ?: return)
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/FruitAndBerryPicker.kt b/Server/src/main/content/global/skill/farming/FruitAndBerryPicker.kt
new file mode 100644
index 000000000..f07689362
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/FruitAndBerryPicker.kt
@@ -0,0 +1,96 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import content.global.skill.summoning.familiar.GiantEntNPC
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import core.plugin.Initializable
+import core.plugin.Plugin
+import org.rs09.consts.Sounds
+import java.util.concurrent.TimeUnit
+
+@Initializable
+class FruitAndBerryPicker : OptionHandler() {
+ override fun newInstance(arg: Any?): Plugin {
+ SceneryDefinition.setOptionHandler("pick-coconut",this)
+ SceneryDefinition.setOptionHandler("pick-banana",this)
+ SceneryDefinition.setOptionHandler("pick-apple",this)
+ SceneryDefinition.setOptionHandler("pick-orange",this)
+ SceneryDefinition.setOptionHandler("pick-pineapple",this)
+ SceneryDefinition.setOptionHandler("pick-papaya",this)
+ SceneryDefinition.setOptionHandler("pick-leaf",this)
+ SceneryDefinition.setOptionHandler("pick-from",this)
+ SceneryDefinition.setOptionHandler("pick-fruit",this)
+ SceneryDefinition.setOptionHandler("pick-spine",this)
+ return this
+ }
+
+ override fun handle(player: Player?, node: Node?, option: String?): Boolean {
+ player ?: return false
+ node ?: return false
+
+ val fPatch = FarmingPatch.forObject(node.asScenery())
+ fPatch ?: return false
+
+ val patch = fPatch.getPatchFor(player)
+
+ val plantable = patch.plantable
+ plantable ?: return false
+
+ val animation = Animation(2281)
+
+ if (patch.getFruitOrBerryCount() <= 0) {
+ sendMessage(player, "This shouldn't be happening. Please report this.")
+ return true
+ }
+
+ if (!hasSpaceFor(player, Item(plantable.harvestItem))) {
+ sendMessage(player, "You don't have enough inventory space to do that.")
+ return true
+ }
+
+ if (System.currentTimeMillis() - patch.nextGrowth > TimeUnit.MINUTES.toMillis(45)) {
+ patch.nextGrowth = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(45)
+ }
+
+ submitIndividualPulse(player, object : Pulse(animation.duration) {
+ override fun pulse(): Boolean {
+ val reward = Item(plantable.harvestItem, 1)
+
+ if (!hasSpaceFor(player, reward)) {
+ sendMessage(player, "You have run out of inventory space.")
+ return true
+ }
+
+ val familiar = player.familiarManager.familiar
+ if (familiar != null && familiar is GiantEntNPC) {
+ familiar.modifyFarmingReward(fPatch, reward)
+ }
+
+ animate(player, animation)
+ playAudio(player, Sounds.FARMING_PICK_2437)
+ addItemOrDrop(player, reward.id, reward.amount)
+ rewardXP(player, Skills.FARMING, plantable.harvestXP)
+ patch.setCurrentState(patch.getCurrentState() - 1)
+
+ if (patch.patch.type == PatchType.CACTUS_PATCH) {
+ sendMessage(player, "You carefully pick a spine from the cactus.")
+ } else {
+ val determiner = if (patch.patch.type == PatchType.BUSH_PATCH) "some" else "a"
+ sendMessage(player, "You pick $determiner ${reward.name.lowercase()}.")
+ }
+
+ return patch.getFruitOrBerryCount() == 0
+ }
+ })
+
+ return true
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/farming/HealthChecker.kt b/Server/src/main/content/global/skill/farming/HealthChecker.kt
new file mode 100644
index 000000000..5c819f1a3
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/HealthChecker.kt
@@ -0,0 +1,67 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.plugin.Initializable
+import core.plugin.Plugin
+import core.tools.Log
+import java.util.concurrent.TimeUnit
+
+@Initializable
+class HealthChecker : OptionHandler() {
+ override fun newInstance(arg: Any?): Plugin {
+ SceneryDefinition.setOptionHandler("check-health", this)
+ return this
+ }
+
+ override fun handle(player: Player?, node: Node?, option: String?): Boolean {
+ player ?: return false
+ node ?: return false
+ val fPatch = FarmingPatch.forObject(node.asScenery())
+ fPatch ?: return false
+ val patch = fPatch.getPatchFor(player)
+ val type = patch.patch.type
+
+ if (type != PatchType.BUSH_PATCH && type != PatchType.FRUIT_TREE_PATCH && type != PatchType.TREE_PATCH && type != PatchType.CACTUS_PATCH) {
+ sendMessage(player, "This shouldn't be happening. Please report this.")
+ return true
+ }
+
+ if (!patch.isCheckHealth) return true
+
+ rewardXP(player, Skills.FARMING, patch.plantable?.checkHealthXP ?: 0.0)
+ patch.isCheckHealth = false
+ when (type) {
+ PatchType.TREE_PATCH -> {
+ patch.setCurrentState(patch.getCurrentState() + 1)
+ sendMessage(player, "You examine the tree for signs of disease and find that it is in perfect health.")
+ }
+ PatchType.FRUIT_TREE_PATCH -> {
+ patch.setCurrentState(patch.getCurrentState() - 14)
+ sendMessage(player, "You examine the tree for signs of disease and find that it is in perfect health.")
+ }
+ PatchType.BUSH_PATCH -> {
+ patch.setCurrentState(patch.plantable!!.value + patch.plantable!!.stages + 4)
+ sendMessage(player, "You examine the bush for signs of disease and find that it's in perfect health.")
+ }
+ PatchType.CACTUS_PATCH -> {
+ patch.setCurrentState(patch.plantable!!.value + patch.plantable!!.stages + 3)
+ sendMessage(player, "You examine the cactus for signs of disease and find that it is in perfect health.")
+ }
+ else -> log(this::class.java, Log.ERR, "Unreachable patch type from when(type) switch in HealthChecker.kt")
+ }
+
+ if (type == PatchType.FRUIT_TREE_PATCH) {
+ patch.nextGrowth = TimeUnit.MINUTES.toMillis(45)
+ }
+
+ patch.update()
+
+ return true
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/InspectionHandler.kt b/Server/src/main/content/global/skill/farming/InspectionHandler.kt
new file mode 100644
index 000000000..00a30a5d2
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/InspectionHandler.kt
@@ -0,0 +1,55 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.cache.def.impl.SceneryDefinition
+import core.game.interaction.OptionHandler
+import core.game.node.Node
+import core.game.node.entity.player.Player
+import core.plugin.Initializable
+import core.plugin.Plugin
+import core.tools.prependArticle
+
+@Initializable
+class InspectionHandler : OptionHandler() {
+ override fun newInstance(arg: Any?): Plugin {
+ SceneryDefinition.setOptionHandler("inspect", this)
+ return this
+ }
+
+ override fun handle(player: Player?, node: Node?, option: String?): Boolean {
+ node ?: return false
+ player ?: return false
+ val patch = FarmingPatch.forObject(node.asScenery())
+ if (patch == null) {
+ sendMessage(player, "This is an improperly handled inspect option. Report this please.")
+ return true
+ }
+
+ val p = patch.getPatchFor(player)
+ val patchName = p.patch.type.displayName()
+
+ val statusPatchType = if (patch == FarmingPatch.TROLL_STRONGHOLD_HERB) "This is a very special herb patch."
+ else "This is ${prependArticle(patchName)}."
+
+ val statusCompost = if (p.compost == CompostType.NONE) "The soil has not been treated."
+ else "The soil has been treated with ${p.compost.name.lowercase()}."
+
+ val statusStage = if (p.plantable == Plantable.SCARECROW) ""
+ else if (p.isWeedy()) "The patch needs weeding."
+ else if (p.isEmptyAndWeeded()) "The patch is empty and weeded."
+ else if (p.isDiseased && !p.isDead) "The patch is diseased and needs attending to before it dies."
+ else if (p.isDead) "The patch has become infected by disease and has died."
+ else if (p.isGrown()) "The patch is fully grown."
+ else "The patch has something growing in it."
+
+ val statusGardener = if (patch == FarmingPatch.TROLL_STRONGHOLD_HERB) "My Arm will look after this patch for you."
+ else if (p.protectionPaid) "A nearby gardener is looking after this patch for you."
+ else ""
+
+ sendMessage(player, "$statusPatchType $statusCompost $statusStage".trim())
+ if (statusGardener != "") sendMessage(player, statusGardener)
+
+ return true
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/farming/LeprechaunNoter.kt b/Server/src/main/content/global/skill/farming/LeprechaunNoter.kt
new file mode 100644
index 000000000..3a3d47bbf
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/LeprechaunNoter.kt
@@ -0,0 +1,37 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.node.item.Item
+import org.rs09.consts.NPCs
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class LeprechaunNoter : InteractionListener {
+
+ val CROPS = Plantable.values().map{ it.harvestItem }.toIntArray()
+ val LEPRECHAUNS = intArrayOf(NPCs.TOOL_LEPRECHAUN_3021,NPCs.GOTH_LEPRECHAUN_8000,NPCs.TOOL_LEPRECHAUN_4965,NPCs.TECLYN_2861)
+
+ override fun defineListeners() {
+ onUseWith(IntType.NPC,CROPS,*LEPRECHAUNS){ player, used, with ->
+ val usedItem = used.asItem()
+ val npc = with.asNpc()
+ val expr = when(npc.id){
+ 3021 -> core.game.dialogue.FacialExpression.OLD_NORMAL
+ else -> core.game.dialogue.FacialExpression.FRIENDLY
+ }
+
+ if(usedItem.noteChange != usedItem.id){
+ val amt = player.inventory.getAmount(usedItem.id)
+ if(player.inventory.remove(Item(usedItem.id,amt))){
+ player.inventory.add(Item(usedItem.noteChange,amt))
+ }
+ sendItemDialogue(player,usedItem.id,"The leprechaun exchanges your items for banknotes.")
+ } else {
+ // Unsure why the line below no longer functions, despite only changing the line above to be more correct. Using your note(NOT CROP) on the leprechaun no longer functions because of this. - Crash
+ player.dialogueInterpreter.sendDialogues(npc.id,expr,"That IS a banknote!")
+ }
+
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/Patch.kt b/Server/src/main/content/global/skill/farming/Patch.kt
new file mode 100644
index 000000000..c3b70eb6d
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/Patch.kt
@@ -0,0 +1,409 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.tools.Log
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+import java.util.concurrent.TimeUnit
+import kotlin.math.ceil
+import kotlin.math.min
+
+class Patch(val player: Player, val patch: FarmingPatch, var plantable: Plantable?, var currentGrowthStage: Int, var isDiseased: Boolean, var isDead: Boolean, var isWatered: Boolean, var nextGrowth: Long, var harvestAmt: Int, var isCheckHealth: Boolean) {
+ constructor(player: Player, patch: FarmingPatch) : this(player,patch,null,0,false,false,false,0L,0,false)
+
+ var diseaseMod = 0
+ var compost = CompostType.NONE
+ var protectionPaid = false
+ var cropLives = 3
+
+ fun setNewHarvestAmount() {
+ val compostMod = when(compost) {
+ CompostType.NONE -> 0
+ CompostType.COMPOST -> 1
+ CompostType.SUPERCOMPOST -> 2
+ }
+ harvestAmt = when (plantable) {
+ Plantable.LIMPWURT_SEED, Plantable.WOAD_SEED -> 3
+ Plantable.MUSHROOM_SPORE -> 6
+ Plantable.WILLOW_SAPLING -> 0
+ else -> 1
+ }
+ if(plantable != null && plantable?.applicablePatch != PatchType.FLOWER_PATCH) {
+ harvestAmt += compostMod
+ }
+ cropLives = 3 + compostMod
+ }
+
+ fun rollLivesDecrement(farmingLevel: Int, magicSecateurs: Boolean){
+ if(patch.type == PatchType.HERB_PATCH){
+ //authentic formula thanks to released data.
+ var herbSaveLow = when(plantable){
+ Plantable.GUAM_SEED -> min(24 + farmingLevel, 80)
+ Plantable.MARRENTILL_SEED -> min(28 + farmingLevel, 80)
+ Plantable.TARROMIN_SEED -> min(31 + farmingLevel, 80)
+ Plantable.HARRALANDER_SEED -> min(36 + farmingLevel, 80)
+ Plantable.GOUT_TUBER -> min(39 + farmingLevel, 80)
+ Plantable.RANARR_SEED -> min(39 + farmingLevel, 80)
+ Plantable.SPIRIT_WEED_SEED -> min(43 + farmingLevel, 80)
+ Plantable.TOADFLAX_SEED -> min(43 + farmingLevel, 80)
+ Plantable.IRIT_SEED -> min(46 + farmingLevel, 80)
+ Plantable.AVANTOE_SEED -> min(50 + farmingLevel, 80)
+ Plantable.KWUARM_SEED -> min(54 + farmingLevel, 80)
+ Plantable.SNAPDRAGON_SEED -> min(57 + farmingLevel, 80)
+ Plantable.CADANTINE_SEED -> min(60 + farmingLevel, 80)
+ Plantable.LANTADYME_SEED -> min(64 + farmingLevel, 80)
+ Plantable.DWARF_WEED_SEED -> min(67 + farmingLevel, 80)
+ Plantable.TORSTOL_SEED -> min(71 + farmingLevel, 80)
+ else -> -1
+ }
+
+ if(magicSecateurs) herbSaveLow = ceil(1.10 * herbSaveLow).toInt()
+
+ val rand = RandomFunction.random(256)
+
+ if(rand > herbSaveLow){
+ cropLives -= 1
+ }
+ } else {
+ //inauthentic formulae based on reported averages due to lack of formula
+ var chance = when(patch.type){
+ PatchType.ALLOTMENT -> 8 //average of 8 per life times 3 lives = average 24
+ PatchType.HOPS_PATCH -> 6 //average of 6 per life times 3 lives = 18
+ PatchType.BELLADONNA_PATCH -> 2 //average of 2 per life times 3 lives = 6
+ PatchType.EVIL_TURNIP_PATCH -> 2 //average 2 per, same as BELLADONNA
+ PatchType.CACTUS_PATCH -> 3 //average of 3 per life times 3 lives = 9
+ else -> 0 // nothing should go here, but if it does, do not give extra crops amd decrement cropLives
+ }
+
+ if(magicSecateurs) chance += ceil(1.10 * chance).toInt() //will increase average yield by roughly 3.
+
+ if(RandomFunction.roll(chance)) cropLives -= 1
+ }
+
+ if(cropLives <= 0) clear()
+ }
+
+ fun isWeedy(): Boolean {
+ return getCurrentState() in 0..2
+ }
+
+ fun isEmptyAndWeeded(): Boolean {
+ return getCurrentState() == 3
+ }
+
+ fun getCurrentState(): Int{
+ return getVarbit(player, patch.varbit)
+ }
+
+ fun setCurrentState(state: Int){
+ setVarbit(player, patch.varbit, state)
+ updateBit()
+ }
+
+ fun setVisualState (state: Int) {
+ val finalState = ensureStateSanity(state)
+ setVarbit(player, patch.varbit, finalState)
+ }
+
+ fun ensureStateSanity (state: Int) : Int {
+ val patchDef = FarmingPatch.getSceneryDefByVarbit(patch.varbit) ?: return state
+ val currentStateDef = patchDef.getChildObjectAtIndex(state)
+ if (currentStateDef.name == patchDef.getChildObjectAtIndex(3).name) { //if we're weedy
+ if (state and 0x40 != 0) { //if this invalid state was caused by water/death
+ //remove water/death
+ isDead = false
+ isWatered = false
+ log(this::class.java, Log.DEBUG, "Patch for ${player.username} at varbit ${patch.varbit} with plantable ${plantable?.name ?: "none"} was set to watered/dead at stage $currentGrowthStage, which isn't valid.")
+ return (state and (0x40.inv()))
+ }
+ else if (state and 0x80 != 0) { //if this invalid state was caused by disease
+ //remove disease
+ isDiseased = false
+ log(this::class.java, Log.DEBUG, "Patch for ${player.username} at varbit ${patch.varbit} with plantable ${plantable?.name ?: "none"} was set to diseased at stage $currentGrowthStage, which isn't valid.")
+ return (state and (0x80.inv()))
+ }
+ else if (state in listOf(0, 1, 2, 3)){
+ // we're weedy (or an empty plot) as normal just continue
+ }
+ else {
+ log (this::class.java, Log.ERR, "Patch for ${player.username} at varbit ${patch.varbit} with plantable ${plantable?.name ?: "none"} was set to state $state at growth stage $currentGrowthStage, which isn't valid. We're not sure why this is happening.")
+ }
+ }
+ return state
+ }
+
+ fun isFertilized(): Boolean {
+ return compost != CompostType.NONE
+ }
+
+ /**
+ * Returns true if the patch is fully grown.
+ *
+ * Note: This returns true if the patch is fully weedy.
+ * Use `plantable == null` to check if a patch does
+ * not have anything planted.
+ */
+ fun isGrown(): Boolean{
+ return currentGrowthStage == (plantable?.stages ?: 0)
+ }
+
+ fun updateBit(){
+ if(isCheckHealth){
+ when(patch.type){
+ PatchType.FRUIT_TREE_PATCH -> setVarbit(player, patch.varbit, plantable!!.value + plantable!!.stages + 20)
+ PatchType.BUSH_PATCH -> setVarbit(player, patch.varbit, 250 + (plantable!!.ordinal - Plantable.REDBERRY_SEED.ordinal))
+ PatchType.CACTUS_PATCH -> setVarbit(player, patch.varbit, 31)
+ PatchType.TREE_PATCH -> setVarbit(player, patch.varbit, plantable!!.value + plantable!!.stages)
+ else -> log(this::class.java, Log.WARN, "Invalid setting of isCheckHealth for patch type: " + patch.type.name + "at" + patch.name)
+ }
+ } else {
+ when(patch.type){
+ PatchType.ALLOTMENT,PatchType.FLOWER_PATCH,PatchType.HOPS_PATCH -> {
+ var state = getUnmodifiedValue()
+ if (isWatered || isDead) state = state or 0x40
+ if (isDiseased) state = state or 0x80
+
+ if (state != getVarbit(player, patch.varbit))
+ setVisualState(state)
+ }
+ PatchType.BUSH_PATCH -> {
+ if(isDead) setVisualState(getBushDeathValue())
+ else if(isDiseased && !isDead) setVisualState(getBushDiseaseValue())
+ }
+ PatchType.TREE_PATCH -> {
+ var state = getVarbit(player, patch.varbit)
+
+ if (isDead) state = state or 0x80
+ else if (isDiseased) state = state or 0x40
+
+ if (state != getVarbit(player, patch.varbit))
+ setVisualState(state)
+ }
+ PatchType.FRUIT_TREE_PATCH -> {
+ if(isDead) setVisualState(getFruitTreeDeathValue())
+ else if(isDiseased && !isDead) setVisualState(getFruitTreeDiseaseValue())
+ }
+ PatchType.BELLADONNA_PATCH -> {
+ if(isDead) setVisualState(getBelladonnaDeathValue())
+ else if(isDiseased && !isDead) setVisualState(getBelladonnaDiseaseValue())
+ else setVisualState((plantable?.value ?: 0) + currentGrowthStage)
+ }
+ PatchType.CACTUS_PATCH -> {
+ if(isDead) setVisualState(getCactusDeathValue())
+ else if(isDiseased && !isDead) setVisualState(getCactusDiseaseValue())
+ }
+ PatchType.HERB_PATCH -> {
+ if(isDead) setVisualState(getHerbDeathValue())
+ else if(isDiseased && !isDead) setVisualState(getHerbDiseaseValue())
+ else setVisualState((plantable?.value ?: 0) + currentGrowthStage)
+ }
+ else -> {}
+ }
+ }
+ }
+
+ fun cureDisease() {
+ setVarbit(player, patch.varbit, (plantable?.value ?: 0) + currentGrowthStage)
+ isDiseased = false
+ updateBit()
+ }
+
+ fun water() {
+ isWatered = true
+ updateBit()
+ }
+
+ private fun getUnmodifiedValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage
+ }
+
+ private fun getBushDiseaseValue(): Int{
+ if(plantable == Plantable.POISON_IVY_SEED){
+ return (plantable?.value ?: 0) + currentGrowthStage + 12
+ } else {
+ return (plantable?.value ?: 0) + currentGrowthStage + 64
+ }
+ }
+
+ private fun getBushDeathValue(): Int{
+ if(plantable == Plantable.POISON_IVY_SEED){
+ return (plantable?.value ?: 0) + currentGrowthStage + 22
+ } else {
+ return (plantable?.value ?: 0) + currentGrowthStage + 126
+ }
+ }
+
+ private fun getFruitTreeDiseaseValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage + 12
+ }
+
+ private fun getFruitTreeDeathValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage + 18
+ }
+
+ private fun getBelladonnaDiseaseValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage + 4
+ }
+
+ private fun getBelladonnaDeathValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage + 7
+ }
+
+ private fun getCactusDiseaseValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage + 10
+ }
+
+ private fun getCactusDeathValue(): Int {
+ return (plantable?.value ?: 0) + currentGrowthStage + 16
+ }
+
+ private fun getHerbDiseaseValue(): Int {
+ return if (plantable?.value ?: -1 <= 103) {
+ 128 + (((plantable?.ordinal ?: 0) - Plantable.GUAM_SEED.ordinal) * 3) + currentGrowthStage - 1
+ } else if (plantable == Plantable.SPIRIT_WEED_SEED) {
+ 211 + currentGrowthStage - 1
+ } else {
+ 198 + currentGrowthStage -1
+ }
+ }
+
+ private fun getHerbDeathValue(): Int {
+ return if(plantable == Plantable.GOUT_TUBER){
+ 201 + currentGrowthStage - 1
+ } else 170 + currentGrowthStage - 1
+ }
+
+ private fun grow(){
+ if((isWeedy() || isEmptyAndWeeded()) && getCurrentState() > 0) {
+ nextGrowth = System.currentTimeMillis() + 60000
+ setCurrentState(getCurrentState() - 1)
+ currentGrowthStage--
+ return
+ }
+
+ if(isDiseased){
+ isDead = true
+ return
+ }
+
+ // This is so a cheat can force disease
+ diseaseMod = if (diseaseMod < 0) -128 else when(compost){
+ CompostType.NONE -> 0
+ CompostType.COMPOST -> 8
+ CompostType.SUPERCOMPOST -> 13
+ }
+
+ if(patch != FarmingPatch.TROLL_STRONGHOLD_HERB && RandomFunction.random(128) <= (17 - diseaseMod) && !isWatered && !isGrown() && !protectionPaid && !isFlowerProtected() && patch.type != PatchType.EVIL_TURNIP_PATCH && currentGrowthStage != 0){
+ isDiseased = true
+ // If we manually set disease mod reset it back to 0 so that crops can naturally grow after being treated/accidentally attempted to disease when they cannot be
+ if (diseaseMod < 0) diseaseMod = 0
+ return
+ }
+
+ if((patch.type == PatchType.FRUIT_TREE_PATCH || patch.type == PatchType.TREE_PATCH || patch.type == PatchType.BUSH_PATCH || patch.type == PatchType.CACTUS_PATCH) && plantable != null && plantable?.stages == currentGrowthStage + 1){
+ isCheckHealth = true
+ }
+
+ if((patch.type == PatchType.FRUIT_TREE_PATCH || patch.type == PatchType.BUSH_PATCH || patch.type == PatchType.CACTUS_PATCH) && plantable?.stages == currentGrowthStage){
+ if((patch.type == PatchType.BUSH_PATCH && getFruitOrBerryCount() < 4) || (patch.type == PatchType.FRUIT_TREE_PATCH && getFruitOrBerryCount() < 6) || (patch.type == PatchType.CACTUS_PATCH && getFruitOrBerryCount() < 3)){
+ setCurrentState(getCurrentState() + 1)
+ }
+ }
+ if(patch.type == PatchType.TREE_PATCH) {
+ // Willow branches
+ if(harvestAmt < 6) {
+ harvestAmt++
+ }
+ }
+
+ if(plantable?.stages ?: 0 > currentGrowthStage && !isGrown()){
+ currentGrowthStage++
+ setCurrentState(getCurrentState() + 1)
+ isWatered = false
+ }
+
+ regrowIfTreeStump()
+ }
+
+ fun regrowIfTreeStump() {
+ if(patch.type == PatchType.TREE_PATCH && plantable != null) {
+ // plantable.value + plantable.stages is the check-health stage, so +1 is the choppable tree, and +2 is the stump
+ if(getCurrentState() == plantable!!.value + plantable!!.stages + 2) {
+ setCurrentState(getCurrentState() - 1)
+ isWatered = false
+ }
+ }
+ }
+
+ fun update(){
+ grow()
+ updateBit()
+ }
+
+ fun plant(plantable: Plantable){
+ nextGrowth = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(plantable.applicablePatch.stageGrowthTime.toLong())
+ this.plantable = plantable
+ isDead = false
+ isDiseased = false
+ currentGrowthStage = 0
+ setCurrentState(plantable.value)
+ }
+
+ fun clear(){
+ if (isGrown()) {
+ var seedAmount = 1
+ var seedMessage = "a seed"
+ if (patch.type == PatchType.ALLOTMENT || plantable!! == Plantable.JUTE_SEED) {
+ seedAmount = 3
+ seedMessage = "some seeds"
+ } else if (patch.type == PatchType.HOPS_PATCH) {
+ seedAmount = 4
+ seedMessage = "some seeds"
+ }
+ addItemOrDrop(player, plantable!!.itemID, seedAmount)
+ sendMessage(player, "You find $seedMessage in the patch as you clear it.")
+ }
+ isCheckHealth = false
+ isDiseased = false
+ isDead = false
+ plantable = null
+ setVarbit(player, patch.varbit, 0)
+ nextGrowth = 0L
+ currentGrowthStage = 3
+ setCurrentState(3)
+ compost = CompostType.NONE
+ protectionPaid = false
+ }
+
+ fun getFruitOrBerryCount() : Int {
+ plantable ?: return 0
+ return getCurrentState() - plantable!!.value - plantable!!.stages
+ }
+
+ fun getStageGrowthMinutes() : Int {
+ var minutes = patch.type.stageGrowthTime
+ if(patch.type == PatchType.FRUIT_TREE_PATCH && isGrown()) {
+ // Fruit trees take 160 minutes per stage to grow, but
+ // restocking their fruit should take 40 minutes per fruit
+ minutes = 40
+ }
+ return minutes
+ }
+
+ fun isFlowerProtected(): Boolean{
+ if(patch.type != PatchType.ALLOTMENT) return false
+
+ val fpatch = when(patch){
+ FarmingPatch.S_FALADOR_ALLOTMENT_SE,FarmingPatch.S_FALADOR_ALLOTMENT_NW -> FarmingPatch.S_FALADOR_FLOWER_C
+ FarmingPatch.ARDOUGNE_ALLOTMENT_S,FarmingPatch.ARDOUGNE_ALLOTMENT_N -> FarmingPatch.ARDOUGNE_FLOWER_C
+ FarmingPatch.CATHERBY_ALLOTMENT_S,FarmingPatch.CATHERBY_ALLOTMENT_N -> FarmingPatch.CATHERBY_FLOWER_C
+ FarmingPatch.PORT_PHAS_ALLOTMENT_SE,FarmingPatch.PORT_PHAS_ALLOTMENT_NW -> FarmingPatch.PORT_PHAS_FLOWER_C
+ else -> return false
+ }.getPatchFor(player, false)
+
+ return (fpatch.plantable != null &&
+ (fpatch.plantable == plantable?.protectionFlower || fpatch.plantable == Plantable.forItemID(Items.WHITE_LILY_SEED_14589))
+ && fpatch.isGrown())
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/PatchRaker.kt b/Server/src/main/content/global/skill/farming/PatchRaker.kt
new file mode 100644
index 000000000..10af95489
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/PatchRaker.kt
@@ -0,0 +1,48 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.system.task.Pulse
+import org.rs09.consts.Items
+import org.rs09.consts.Sounds
+
+object PatchRaker {
+ val RAKE_ANIM = getAnimation(2273)
+
+ @JvmStatic
+ fun rake(player: Player, patch: FarmingPatch) {
+ val p = patch.getPatchFor(player)
+ val patchName = p.patch.type.displayName()
+ var firstRake = true
+ if (!p.isWeedy()) {
+ sendMessage(player, "This $patchName doesn't need weeding right now.")
+ return
+ }
+ submitIndividualPulse(player, object : Pulse() {
+ override fun pulse(): Boolean {
+ var patchStage = patch.getPatchFor(player).getCurrentState()
+ if (firstRake || patchStage < 2) {
+ // don't play the animation when on patchStage 2 as it has already
+ // played three times at this point and the patch will be weed-free
+ // after the third play
+ animate(player, RAKE_ANIM)
+ playAudio(player, Sounds.FARMING_RAKING_2442)
+ firstRake = false
+ }
+ if (delay < 5) {
+ delay = 5
+ } else {
+ patch.getPatchFor(player).currentGrowthStage++
+ patch.getPatchFor(player).setCurrentState(++patchStage)
+ addItem(player, Items.WEEDS_6055)
+ rewardXP(player, Skills.FARMING, 4.0)
+ }
+ if (patchStage >= 3) {
+ resetAnimator(player)
+ }
+ return patchStage >= 3
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/PatchType.kt b/Server/src/main/content/global/skill/farming/PatchType.kt
new file mode 100644
index 000000000..0cbe40129
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/PatchType.kt
@@ -0,0 +1,21 @@
+package content.global.skill.farming
+
+enum class PatchType(val stageGrowthTime: Int) {
+ ALLOTMENT(10),
+ HOPS_PATCH(10),
+ TREE_PATCH(40),
+ FRUIT_TREE_PATCH(160),
+ BUSH_PATCH(20),
+ FLOWER_PATCH(5),
+ HERB_PATCH(20),
+ SPIRIT_TREE_PATCH(295),
+ MUSHROOM_PATCH(30),
+ BELLADONNA_PATCH(80),
+ CACTUS_PATCH(60),
+ EVIL_TURNIP_PATCH(5);
+
+ /**
+ * Returns the display name of this PatchType.
+ */
+ fun displayName(): String = name.lowercase().replace("_", " ")
+}
diff --git a/Server/src/main/content/global/skill/farming/Plantable.kt b/Server/src/main/content/global/skill/farming/Plantable.kt
new file mode 100644
index 000000000..83c016c64
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/Plantable.kt
@@ -0,0 +1,102 @@
+package content.global.skill.farming
+
+import core.game.node.item.Item
+import org.rs09.consts.Items
+
+enum class Plantable(val itemID: Int, val displayName: String, val value: Int, val stages: Int, val plantingXP: Double, val harvestXP: Double, val checkHealthXP: Double, val requiredLevel: Int, val applicablePatch: PatchType, val harvestItem: Int, val protectionItem: Item? = null, val protectionFlower: Plantable? = null) {
+
+ // Flowers
+ MARIGOLD_SEED(Items.MARIGOLD_SEED_5096,"marigold seed",8,4,8.5,47.0,0.0,2,PatchType.FLOWER_PATCH,Items.MARIGOLDS_6010),
+ ROSEMARY_SEED(Items.ROSEMARY_SEED_5097,"rosemary seed",13,4,12.0,66.5,0.0,11,PatchType.FLOWER_PATCH, Items.ROSEMARY_6014),
+ NASTURTIUM_SEED(Items.NASTURTIUM_SEED_5098,"nasturtium seed",18,4,19.5,111.0,0.0,24,PatchType.FLOWER_PATCH,Items.NASTURTIUMS_6012),
+ WOAD_SEED(Items.WOAD_SEED_5099,"woad seed",23,4,20.5,115.5,0.0,25,PatchType.FLOWER_PATCH,Items.WOAD_LEAF_1793),
+ LIMPWURT_SEED(Items.LIMPWURT_SEED_5100,"limpwurt seed",28,4,21.5,120.0,0.0,26,PatchType.FLOWER_PATCH,Items.LIMPWURT_ROOT_225),
+ WHITE_LILY_SEED(Items.WHITE_LILY_SEED_14589,"white lily seed",37,4,42.0,250.0,0.0,52,PatchType.FLOWER_PATCH,Items.WHITE_LILY_14583),
+
+ // Flower (technically)
+ SCARECROW(Items.SCARECROW_6059,"scarecrow",33,3,0.0,0.0,0.0,23,PatchType.FLOWER_PATCH,Items.SCARECROW_6059),
+
+ // Allotments
+ POTATO_SEED(Items.POTATO_SEED_5318, "potato seed", 6, 4, 8.0, 9.0, 0.0, 1, PatchType.ALLOTMENT, Items.POTATO_1942,Item(Items.COMPOST_6032,2),MARIGOLD_SEED),
+ ONION_SEED(Items.ONION_SEED_5319, "onion seed", 13, 4, 9.5, 10.5,0.0, 5, PatchType.ALLOTMENT,Items.ONION_1957,Item(Items.POTATOES10_5438),MARIGOLD_SEED),
+ CABBAGE_SEED(Items.CABBAGE_SEED_5324, "cabbage seed", 20, 4, 10.0, 11.5, 0.0,7, PatchType.ALLOTMENT,Items.CABBAGE_1965,Item(Items.ONIONS10_5458),ROSEMARY_SEED),
+ TOMATO_SEED(Items.TOMATO_SEED_5322,"tomato seed",27,4,12.5,14.0,0.0,12,PatchType.ALLOTMENT,Items.TOMATO_1982,Item(Items.CABBAGES10_5478,2),MARIGOLD_SEED),
+ SWEETCORN_SEED(Items.SWEETCORN_SEED_5320,"sweetcorn seed",34,6,17.0,19.0,0.0,20,PatchType.ALLOTMENT,Items.SWEETCORN_5986,Item(Items.JUTE_FIBRE_5931,10),SCARECROW),
+ STRAWBERRY_SEED(Items.STRAWBERRY_SEED_5323,"strawberry seed",43,6,26.0,29.0,0.0,31,PatchType.ALLOTMENT,Items.STRAWBERRY_5504,Item(Items.APPLES5_5386)),
+ WATERMELON_SEED(Items.WATERMELON_SEED_5321,"watermelon seed",52,8,48.5,54.5,0.0,47,PatchType.ALLOTMENT,Items.WATERMELON_5982,Item(Items.CURRY_LEAF_5970,10),NASTURTIUM_SEED),
+
+ // Hops
+ BARLEY_SEED(Items.BARLEY_SEED_5305,"barley seed",49,4,8.5,9.5,0.0,3,PatchType.HOPS_PATCH,Items.BARLEY_6006,Item(Items.COMPOST_6032,3)),
+ HAMMERSTONE_SEED(Items.HAMMERSTONE_SEED_5307,"Hammerstone hop seed",4,4,9.0,10.0,0.0,4,PatchType.HOPS_PATCH,Items.HAMMERSTONE_HOPS_5994,Item(Items.MARIGOLDS_6010)),
+ ASGARNIAN_SEED(Items.ASGARNIAN_SEED_5308,"Asgarnian hop seed",11,5,10.9,12.0,0.0,8,PatchType.HOPS_PATCH,Items.ASGARNIAN_HOPS_5996,Item(Items.ONIONS10_5458)),
+ JUTE_SEED(Items.JUTE_SEED_5306,"jute plant seed",56,5,13.0,14.5,0.0,13,PatchType.HOPS_PATCH,Items.JUTE_FIBRE_5931,Item(Items.BARLEY_MALT_6008,6)),
+ YANILLIAN_SEED(Items.YANILLIAN_SEED_5309,"Yanillian hop seed",19,6,14.5,16.0,0.0,16,PatchType.HOPS_PATCH,Items.YANILLIAN_HOPS_5998,Item(Items.TOMATOES5_5968)),
+ KRANDORIAN_SEED(Items.KRANDORIAN_SEED_5310,"Krandorian hop seed",28,7,17.5,19.5,0.0,21,PatchType.HOPS_PATCH,Items.KRANDORIAN_HOPS_6000,Item(Items.CABBAGES10_5478,3)),
+ WILDBLOOD_SEED(Items.WILDBLOOD_SEED_5311,"Wildblood hop seed",38,8,23.0,26.0,0.0,28,PatchType.HOPS_PATCH,Items.WILDBLOOD_HOPS_6002,Item(Items.NASTURTIUMS_6012)),
+
+ // Trees
+ OAK_SAPLING(Items.OAK_SAPLING_5370,"oak sapling",8,4,14.0,0.0,467.3,15,PatchType.TREE_PATCH,Items.OAK_ROOTS_6043,Item(Items.TOMATOES5_5968)),
+ WILLOW_SAPLING(Items.WILLOW_SAPLING_5371,"willow sapling",15,6,25.0,0.0,1456.5,30,PatchType.TREE_PATCH,Items.WILLOW_ROOTS_6045,Item(Items.APPLES5_5386)),
+ MAPLE_SAPLING(Items.MAPLE_SAPLING_5372,"maple sapling",24,8,45.0,0.0,3403.4,45,PatchType.TREE_PATCH,Items.MAPLE_ROOTS_6047,Item(Items.ORANGES5_5396)),
+ YEW_SAPLING(Items.YEW_SAPLING_5373,"yew sapling",35,10,81.0,0.0,7069.9,60,PatchType.TREE_PATCH,Items.YEW_ROOTS_6049,Item(Items.CACTUS_SPINE_6016,10)),
+ MAGIC_SAPLING(Items.MAGIC_SAPLING_5374,"magic Tree sapling",48,12,145.5,0.0,13768.3,75,PatchType.TREE_PATCH,Items.MAGIC_ROOTS_6051,Item(Items.COCONUT_5974,25)),
+
+ // Fruit Trees
+ APPLE_SAPLING(Items.APPLE_SAPLING_5496,"apple tree sapling",8,6,22.0,8.5,1199.5,27,PatchType.FRUIT_TREE_PATCH,Items.COOKING_APPLE_1955,Item(Items.SWEETCORN_5986,9)),
+ BANANA_SAPLING(Items.BANANA_SAPLING_5497,"banana tree sapling",35,6,28.0,10.5,1750.5,33,PatchType.FRUIT_TREE_PATCH,Items.BANANA_1963,Item(Items.APPLES5_5386,4)),
+ ORANGE_SAPLING(Items.ORANGE_SAPLING_5498,"orange tree sapling",72,6,35.5,13.5,2470.2,39,PatchType.FRUIT_TREE_PATCH,Items.ORANGE_2108,Item(Items.STRAWBERRIES5_5406,3)),
+ CURRY_SAPLING(Items.CURRY_SAPLING_5499,"curry tree sapling",99,6,40.0,15.0,2906.9,42,PatchType.FRUIT_TREE_PATCH,Items.CURRY_LEAF_5970,Item(Items.BANANAS5_5416,5)),
+ PINEAPPLE_SAPLING(Items.PINEAPPLE_SAPLING_5500,"pineapple plant",136,6,57.0,21.5,4605.7,51,PatchType.FRUIT_TREE_PATCH,Items.PINEAPPLE_2114,Item(Items.WATERMELON_5982,10)),
+ PAPAYA_SAPLING(Items.PAPAYA_SAPLING_5501,"papaya tree sapling",163,6,72.0,27.0,6146.4,57,PatchType.FRUIT_TREE_PATCH,Items.PAPAYA_FRUIT_5972,Item(Items.PINEAPPLE_2114,10)),
+ PALM_SAPLING(Items.PALM_SAPLING_5502,"palm tree sapling",200,6,110.5,41.5,10150.1,68,PatchType.FRUIT_TREE_PATCH,Items.COCONUT_5974,Item(Items.PAPAYA_FRUIT_5972,15)),
+
+ // Bushes
+ REDBERRY_SEED(Items.REDBERRY_SEED_5101,"redberry bush seed",5,5,11.5,4.5,64.0,10,PatchType.BUSH_PATCH,Items.REDBERRIES_1951,Item(Items.CABBAGES10_5478,4)),
+ CADAVABERRY_SEED(Items.CADAVABERRY_SEED_5102,"cadavaberry bush seed",15,6,18.0,7.0,102.5,22,PatchType.BUSH_PATCH,Items.CADAVA_BERRIES_753,Item(Items.TOMATOES5_5968,3)),
+ DWELLBERRY_SEED(Items.DWELLBERRY_SEED_5103,"dwellberry bush seed",26,27,31.5,12.0,177.5,36,PatchType.BUSH_PATCH,Items.DWELLBERRIES_2126,Item(Items.STRAWBERRIES5_5406,3)),
+ JANGERBERRY_SEED(Items.JANGERBERRY_SEED_5104,"jangerberry bush seed",38,8,50.5,19.0,284.5,48,PatchType.BUSH_PATCH,Items.JANGERBERRIES_247,Item(Items.WATERMELON_5982,6)),
+ WHITEBERRY_SEED(Items.WHITEBERRY_SEED_5105,"whiteberry bush seed",51,8,78.0,29.0,437.5,59,PatchType.BUSH_PATCH,Items.WHITE_BERRIES_239,null),
+ POISON_IVY_SEED(Items.POISON_IVY_SEED_5106,"poison ivy bush seed",197,8,120.0,45.0,675.0,70,PatchType.BUSH_PATCH,Items.POISON_IVY_BERRIES_6018,null),
+
+ // Herbs
+ GUAM_SEED(Items.GUAM_SEED_5291,"guam seed",4,4,11.0,12.5,0.0,9,PatchType.HERB_PATCH,Items.GRIMY_GUAM_199),
+ MARRENTILL_SEED(Items.MARRENTILL_SEED_5292,"marrentill seed",11,4,13.5,15.0,0.0,14,PatchType.HERB_PATCH,Items.GRIMY_MARRENTILL_201),
+ TARROMIN_SEED(Items.TARROMIN_SEED_5293,"tarromin seed",18,4,16.0,18.0,0.0,19,PatchType.HERB_PATCH,Items.GRIMY_TARROMIN_203),
+ HARRALANDER_SEED(Items.HARRALANDER_SEED_5294,"harralander seed",25,4,21.5,24.0,0.0,26,PatchType.HERB_PATCH,Items.GRIMY_HARRALANDER_205),
+ RANARR_SEED(Items.RANARR_SEED_5295,"ranarr seed",32,4,27.0,30.5,0.0,32,PatchType.HERB_PATCH,Items.GRIMY_RANARR_207),
+ AVANTOE_SEED(Items.AVANTOE_SEED_5298,"avantoe seed",39,4,54.5,61.5,0.0,50,PatchType.HERB_PATCH,Items.GRIMY_AVANTOE_211),
+ TOADFLAX_SEED(Items.TOADFLAX_SEED_5296,"toadflax seed",46,4,34.0,38.5,0.0,38,PatchType.HERB_PATCH,Items.GRIMY_TOADFLAX_3049),
+ IRIT_SEED(Items.IRIT_SEED_5297,"irit seed",53,4,43.0,48.5,0.0,44,PatchType.HERB_PATCH,Items.GRIMY_IRIT_209),
+ KWUARM_SEED(Items.KWUARM_SEED_5299,"kwuarm seed",68,4,69.0,78.0,0.0,56,PatchType.HERB_PATCH,Items.GRIMY_KWUARM_213),
+ SNAPDRAGON_SEED(Items.SNAPDRAGON_SEED_5300,"snapdragon seed",75,4,87.5,98.5,0.0,62,PatchType.HERB_PATCH,Items.GRIMY_SNAPDRAGON_3051),
+ CADANTINE_SEED(Items.CADANTINE_SEED_5301,"cadantine seed",82,4,106.5,120.0,0.0,67,PatchType.HERB_PATCH,Items.GRIMY_CADANTINE_215),
+ LANTADYME_SEED(Items.LANTADYME_SEED_5302,"lantadyme seed",89,4,134.5,151.5,0.0,73,PatchType.HERB_PATCH,Items.GRIMY_LANTADYME_2485),
+ DWARF_WEED_SEED(Items.DWARF_WEED_SEED_5303,"dwarf weed seed",96,4,170.5,192.0,0.0,79,PatchType.HERB_PATCH,Items.GRIMY_DWARF_WEED_217),
+ TORSTOL_SEED(Items.TORSTOL_SEED_5304,"torstol seed",103,4,199.5,224.5,0.0,85,PatchType.HERB_PATCH,Items.GRIMY_TORSTOL_219),
+ GOUT_TUBER(Items.GOUT_TUBER_6311,"gout tuber",192,4,105.0,45.0,0.0,29,PatchType.HERB_PATCH,Items.GOUTWEED_3261),
+ SPIRIT_WEED_SEED(Items.SPIRIT_WEED_SEED_12176,"spirit weed seed", 204, 4, 32.0, 36.0, 0.0, 36, PatchType.HERB_PATCH, Items.GRIMY_SPIRIT_WEED_12174),
+
+ // Special
+ BELLADONNA_SEED(Items.BELLADONNA_SEED_5281, "belladonna seed", 4, 4, 91.0, 128.0, 0.0, 63, PatchType.BELLADONNA_PATCH, Items.CAVE_NIGHTSHADE_2398),
+ MUSHROOM_SPORE(Items.MUSHROOM_SPORE_5282, "mushroom spore", 6, 7, 61.5, 57.7, 0.0, 53, PatchType.MUSHROOM_PATCH, Items.MUSHROOM_6004),
+ CACTUS_SEED(Items.CACTUS_SEED_5280, "cactus seed", 8, 7, 66.5, 25.0, 374.0, 55, PatchType.CACTUS_PATCH, Items.CACTUS_SPINE_6016),
+ EVIL_TURNIP_SEED(Items.EVIL_TURNIP_SEED_12148, "evil turnip seed", 4, 1, 41.0, 46.0, 0.0, 42, PatchType.EVIL_TURNIP_PATCH, Items.EVIL_TURNIP_12134)
+ ;
+
+ constructor(itemID: Int, displayName: String, value: Int, stages: Int, plantingXP: Double, harvestXP: Double, checkHealthXP: Double, requiredLevel: Int, applicablePatch: PatchType, harvestItem: Int, protectionFlower: Plantable)
+ : this(itemID,displayName,value,stages,plantingXP,harvestXP,checkHealthXP,requiredLevel,applicablePatch,harvestItem,null,protectionFlower)
+ companion object {
+ @JvmField
+ val plantables = values().map { it.itemID to it }.toMap()
+
+ @JvmStatic
+ fun forItemID(id: Int): Plantable?{
+ return plantables[id]
+ }
+
+ @JvmStatic
+ fun forItem(item: Item): Plantable?{
+ return forItemID(item.id)
+ }
+ }
+}
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/SackBasketOptionHandler.kt b/Server/src/main/content/global/skill/farming/SackBasketOptionHandler.kt
similarity index 99%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/farming/SackBasketOptionHandler.kt
rename to Server/src/main/content/global/skill/farming/SackBasketOptionHandler.kt
index cd193ca3f..ce7a4019a 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/SackBasketOptionHandler.kt
+++ b/Server/src/main/content/global/skill/farming/SackBasketOptionHandler.kt
@@ -1,4 +1,4 @@
-package rs09.game.node.entity.skill.farming
+package content.global.skill.farming
import core.cache.def.impl.ItemDefinition
import core.game.interaction.OptionHandler
diff --git a/Server/src/main/content/global/skill/farming/SeedOnPlantPot.kt b/Server/src/main/content/global/skill/farming/SeedOnPlantPot.kt
new file mode 100644
index 000000000..39c83483e
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/SeedOnPlantPot.kt
@@ -0,0 +1,110 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.node.Node
+import org.rs09.consts.Items
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+import content.global.skill.farming.timers.*
+import core.game.interaction.InteractionListener
+import core.tools.prependArticle
+
+class SeedlingListener : InteractionListener {
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, TREE_SEEDS, Items.PLANT_POT_5354, handler = ::addSeedToPot)
+ onUseWith(IntType.ITEM, TREE_SEEDLINGS, *WATERING_CANS, handler = ::waterSeedling)
+ }
+
+ fun addSeedToPot(player: Player, used: Node, with: Node) : Boolean {
+ val seed = used.asItem() ?: return false
+ val pot = with.asItem() ?: return false
+
+ if (!inInventory(player, Items.GARDENING_TROWEL_5325)) {
+ sendDialogue(player, "You need a gardening trowel on you to do this.")
+ return false
+ }
+
+ val seedling = getSeedling(seed.id)
+ if (seedling == -1) return false
+ if (!removeItem(player, seed.id) || !removeItem(player, pot)) return true
+ addItem(player, seedling)
+ sendMessage(player, "You sow ${prependArticle(seed.name.lowercase())} in the plantpot.")
+ sendMessage(player, "It needs watering before it will grow.")
+ return true
+ }
+
+ fun waterSeedling(player: Player, used: Node, with: Node) : Boolean {
+ val seedling = used.asItem() ?: return false
+ val can = with.asItem() ?: return false
+
+ val nextCan = can.id.getNext()
+ val wateredSeedling = if (seedling.id > 5400) seedling.id + 8 else seedling.id + 6
+
+ if (!removeItem(player, can) || !removeItem(player, seedling)) return false
+ addItem(player, wateredSeedling)
+ addItem(player, nextCan)
+
+ var seedlings = getOrStartTimer (player)
+ seedlings.addSeedling(wateredSeedling)
+ return true
+ }
+
+ private fun Int.getNext(): Int {
+ val index = WATERING_CANS.indexOf(this)
+ if (index == -1) return Items.WATERING_CAN_5331
+ return if (index != WATERING_CANS.size -1) WATERING_CANS[index + 1] else Items.WATERING_CAN_5331
+ }
+
+ fun getSeedling(id: Int) : Int {
+ return when (id) {
+ Items.ACORN_5312 -> Items.OAK_SEEDLING_5358
+ Items.WILLOW_SEED_5313 -> Items.WILLOW_SEEDLING_5359
+ Items.MAPLE_SEED_5314 -> Items.MAPLE_SEEDLING_5360
+ Items.YEW_SEED_5315 -> Items.YEW_SEEDLING_5361
+ Items.MAGIC_SEED_5316 -> Items.MAGIC_SEEDLING_5362
+ Items.APPLE_TREE_SEED_5283 -> Items.APPLE_SEEDLING_5480
+ Items.BANANA_TREE_SEED_5284 -> Items.BANANA_SEEDLING_5481
+ Items.ORANGE_TREE_SEED_5285 -> Items.ORANGE_SEEDLING_5482
+ Items.CURRY_TREE_SEED_5286 -> Items.CURRY_SEEDLING_5483
+ Items.PINEAPPLE_SEED_5287 -> Items.PINEAPPLE_SEEDLING_5484
+ Items.PAPAYA_TREE_SEED_5288 -> Items.PAPAYA_SEEDLING_5485
+ Items.PALM_TREE_SEED_5289 -> Items.PALM_SEEDLING_5486
+ Items.SPIRIT_SEED_5317 -> Items.SPIRIT_SEEDLING_5363
+ else -> -1
+ }
+ }
+
+ val TREE_SEEDS = intArrayOf(
+ Items.ACORN_5312,
+ Items.WILLOW_SEED_5313,
+ Items.MAPLE_SEED_5314,
+ Items.YEW_SEED_5315,
+ Items.MAGIC_SEED_5316,
+ Items.APPLE_TREE_SEED_5283,
+ Items.BANANA_TREE_SEED_5284,
+ Items.ORANGE_TREE_SEED_5285,
+ Items.CURRY_TREE_SEED_5286,
+ Items.PINEAPPLE_SEED_5287,
+ Items.PAPAYA_TREE_SEED_5288,
+ Items.PALM_TREE_SEED_5289,
+ Items.SPIRIT_SEED_5317
+ )
+
+ val TREE_SEEDLINGS = intArrayOf(
+ Items.OAK_SEEDLING_5358,
+ Items.WILLOW_SEEDLING_5359,
+ Items.MAPLE_SEEDLING_5360,
+ Items.YEW_SEEDLING_5361,
+ Items.MAGIC_SEEDLING_5362,
+ Items.APPLE_SEEDLING_5480,
+ Items.BANANA_SEEDLING_5481,
+ Items.ORANGE_SEEDLING_5482,
+ Items.CURRY_SEEDLING_5483,
+ Items.PINEAPPLE_SEEDLING_5484,
+ Items.PAPAYA_SEEDLING_5485,
+ Items.PALM_SEEDLING_5486,
+ Items.SPIRIT_SEEDLING_5363
+ )
+
+ private val WATERING_CANS = intArrayOf(Items.WATERING_CAN8_5340,Items.WATERING_CAN7_5339,Items.WATERING_CAN6_5338,Items.WATERING_CAN5_5337,Items.WATERING_CAN4_5336,Items.WATERING_CAN3_5335,Items.WATERING_CAN2_5334,Items.WATERING_CAN1_5333)
+}
diff --git a/Server/src/main/content/global/skill/farming/Seedling.kt b/Server/src/main/content/global/skill/farming/Seedling.kt
new file mode 100644
index 000000000..a2e8f7a09
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/Seedling.kt
@@ -0,0 +1,5 @@
+package content.global.skill.farming
+
+class Seedling(val id: Int, val TTL: Long, val sapling: Int) {
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/farming/ToolLeprechaunDialogue.kt b/Server/src/main/content/global/skill/farming/ToolLeprechaunDialogue.kt
new file mode 100644
index 000000000..50ec9662f
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/ToolLeprechaunDialogue.kt
@@ -0,0 +1,187 @@
+package content.global.skill.farming
+
+import content.minigame.vinesweeper.Vinesweeper
+import core.api.openInterface
+import core.game.dialogue.DialoguePlugin
+import core.game.dialogue.FacialExpression
+import core.game.dialogue.Topic
+import core.game.node.entity.player.Player
+import core.plugin.Initializable
+import core.tools.END_DIALOGUE
+import core.tools.START_DIALOGUE
+import org.rs09.consts.Components
+import org.rs09.consts.NPCs
+
+/**
+ * Tool Leprechaun dialogue.
+ * @author ovenbread
+ *
+ * This is really hard to find anything beyond the first dialogue.
+ * https://www.youtube.com/watch?v=2wgWB9U5Ju8 0L25 May 19, 2010
+ * https://www.youtube.com/watch?v=gqend8EibPs: 0:02 Nov 28, 2010
+ * https://www.youtube.com/watch?v=6cnsQsVGzXI: 4:05 Feb 14, 2012 - The Leprechaun in Troll Stronghold!
+ *
+ * Note:
+ * Ultracompost was introduced in 2017(OSRS) 2018(RS3), so it is not included.
+ * Leprechaun Composting was only added in 2016, so it is also not included.
+ */
+@Initializable
+class ToolLeprechaunDialogue(player: Player? = null) : DialoguePlugin(player) {
+
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ when(stage) {
+ START_DIALOGUE -> npc(FacialExpression.OLD_HAPPY, "Ah, 'tis a foine day to be sure! Can I help ye with tool", "storage, or a trip to Winkin's Farm, or what?").also { stage++ }
+
+ 1 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes, please.", 10),
+ Topic("What tools can you store?", 2, true),
+ Topic(FacialExpression.NEUTRAL, "No thanks, I'll keep hold of my stuff.", 20),
+ Topic("Can you take me to Winkin's Farm?", 30),
+ // "Other topics." -> Lost City quest where is Shamus. Evil Tree Reward collection in late 2009.
+ )
+ 2 -> playerl(FacialExpression.THINKING, "What can you store?").also { stage++ }
+ 3 -> npcl(FacialExpression.OLD_HAPPY, "We'll hold onto yer rake, yer seed dibber, yer spade, yer secateurs, yer waterin' can and yer trowel - but mind it's not one of them fancy trowels only archaeologists use!").also { stage++ }
+ 4 -> npcl(FacialExpression.OLD_HAPPY, "We'll take a few buckets off yer hands too, and even yer compost and supercompost! There's room in our shed for plenty of compost, so bring it on.").also { stage++ }
+ 5 -> npcl(FacialExpression.OLD_HAPPY, "Also if ye hands us yer farming produce, we might be able to change it into banknotes.").also { stage++ }
+ 6 -> npcl(FacialExpression.OLD_HAPPY, "So... do ye want to be using the store?").also { stage++ }
+ 7 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes, please.", 10),
+ Topic("What do you do with the tools you're storing?", 11, true),
+ Topic(FacialExpression.NEUTRAL, "No thanks, I'll keep hold of my stuff.", 20),
+ Topic("Can you take me to Winkin's Farm?", 30),
+ )
+ 10 -> {
+ end()
+ openInterface(player, Components.FARMING_TOOLS_125)
+ }
+ 11 -> playerl(FacialExpression.THINKING, "What do you do with the tools you're storing? They can't possibly all fit in your pockets!").also { stage++ }
+ 12 -> npcl(FacialExpression.OLD_HAPPY, "We leprechauns have a shed where we keep 'em. It's a magic shed, so ye can get yer items back from any of us leprechauns whenever ye want. Saves ye havin' to carry loads of stuff around the country!").also { stage++ }
+ 13 -> npcl(FacialExpression.OLD_HAPPY, "So... do ye want to be using the store?").also { stage = 1 }
+
+ 20 -> npcl(FacialExpression.OLD_NORMAL, "Ye must be dafter than ye look if ye likes luggin' yer tools everywhere ye goes!").also {
+ stage = END_DIALOGUE
+ }
+ 30 -> {
+ end()
+ Vinesweeper.Companion.VinesweeperTeleport.teleport(npc!!, player!!)
+ }
+ }
+ return true
+ }
+
+ override fun newInstance(player: Player?): DialoguePlugin {
+ return ToolLeprechaunDialogue(player)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.TOOL_LEPRECHAUN_3021)
+ }
+}
+
+/**
+ * Note:
+ * This Leprechaun Larry is a special case where he does NOT transport you to Winkin's farm, but has a store.
+ */
+@Initializable
+class ToolLeprechaunOnVacationDialogue(player: Player? = null) : DialoguePlugin(player) {
+
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ when(stage) {
+ START_DIALOGUE -> npc(FacialExpression.OLD_HAPPY, "Aye, top o' th' mornin' to ya!", "Are ye wantin' help with th' tool store?").also {
+ stage = 2
+ }
+ 2 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes please.", 10),
+ Topic(FacialExpression.THINKING, "Why are you sunbathing up a mountain?", 3),
+ Topic(FacialExpression.NEUTRAL, "No thanks, I'll keep hold of my stuff.", 20),
+ Topic("Would you like to trade?", 12),
+ )
+ 3 -> npcl(FacialExpression.OLD_HAPPY, "We tool leprechauns work hard, that we do. An'nary a penny do we get in return. So ye cannae begrudge me mah holiday an' a wee drink or twelve!").also { stage++ }
+ 4 -> playerl(FacialExpression.THINKING, "Yes, very nice, but why are you sunbathing up a mountain? Surely a beach would be more appropriate?").also { stage++ }
+ 5 -> npcl(FacialExpression.OLD_HAPPY, "Ahh, but I likes th' ruggedy mountain, ye see. Also, I ha' a terrible allergy to sand.").also { stage++ }
+ 6 -> playerl(FacialExpression.NEUTRAL, "Fair enough, I suppose.").also { stage++ }
+ 7 -> npcl(FacialExpression.OLD_HAPPY, "So were ye wantin' help with th' tool store?").also { stage++ }
+ 8 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes, please.", 10),
+ Topic(FacialExpression.NEUTRAL, "No thanks, I'll keep hold of my stuff.", 20),
+ )
+ 10 -> {
+ end()
+ openInterface(player, Components.FARMING_TOOLS_125)
+ }
+ 12 -> npcl(FacialExpression.OLD_HAPPY, "Sure, have a look.").also { stage++ }
+ 13 -> end().also{
+ npc.openShop(player)
+ }
+ 20 -> npcl(FacialExpression.OLD_NORMAL, "Ye must be dafter than ye look if ye likes luggin' yer tools everywhere ye goes!").also {
+ stage = END_DIALOGUE
+ }
+ }
+ return true
+ }
+
+ override fun newInstance(player: Player?): DialoguePlugin {
+ return ToolLeprechaunOnVacationDialogue(player)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.TOOL_LEPRECHAUN_4965)
+ }
+}
+
+/**
+ * Note:
+ * Goth chatheads are unfortunately updated and have frozen FacialExpressions. Disabled talk-to for now.
+ */
+// @Initializable
+class ToolLeprechaunGothDialogue(player: Player? = null) : DialoguePlugin(player) {
+
+ override fun handle(interfaceId: Int, buttonId: Int): Boolean {
+ when(stage) {
+ START_DIALOGUE -> npc(FacialExpression.HAPPY, "Ah, 'tis a foine day to be sure! Can I help ye with tool", "storage, or a trip to Winkin's Farm, or what?").also { stage++ }
+
+ 1 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes, please.", 10),
+ Topic("What tools can you store?", 2, true),
+ Topic(FacialExpression.NEUTRAL, "No thanks, I'll keep hold of my stuff.", 20),
+ Topic("Can you take me to Winkin's Farm?", 30),
+ // "Other topics." -> Lost City quest where is Shamus. Evil Tree Reward collection in late 2009.
+ )
+ 2 -> playerl(FacialExpression.THINKING, "What can you store?").also { stage++ }
+ 3 -> npcl(FacialExpression.HAPPY, "We'll hold onto yer rake, yer seed dibber, yer spade, yer secateurs, yer waterin' can and yer trowel - but mind it's not one of them fancy trowels only archaeologists use!").also { stage++ }
+ 4 -> npcl(FacialExpression.HAPPY, "We'll take a few buckets off yer hands too, and even yer compost and supercompost! There's room in our shed for plenty of compost, so bring it on.").also { stage++ }
+ 5 -> npcl(FacialExpression.HAPPY, "Also if ye hands us yer farming produce, we might be able to change it into banknotes.").also { stage++ }
+ 6 -> npcl(FacialExpression.HAPPY, "So... do ye want to be using the store?").also { stage++ }
+ 7 -> showTopics(
+ Topic(FacialExpression.NEUTRAL, "Yes, please.", 10),
+ Topic("What do you do with the tools you're storing?", 11, true),
+ Topic(FacialExpression.NEUTRAL, "No thanks, I'll keep hold of my stuff.", 20),
+ Topic("Can you take me to Winkin's Farm?", 30),
+ )
+ 10 -> {
+ end()
+ openInterface(player, Components.FARMING_TOOLS_125)
+ }
+ 11 -> playerl(FacialExpression.THINKING, "What do you do with the tools you're storing? They can't possibly all fit in your pockets!").also { stage++ }
+ 12 -> npcl(FacialExpression.HAPPY, "We leprechauns have a shed where we keep 'em. It's a magic shed, so ye can get yer items back from any of us leprechauns whenever ye want. Saves ye havin' to carry loads of stuff around the country!").also { stage++ }
+ 13 -> npcl(FacialExpression.HAPPY, "So... do ye want to be using the store?").also { stage = 1 }
+
+ 20 -> npcl(FacialExpression.NEUTRAL, "Ye must be dafter than ye look if ye likes luggin' yer tools everywhere ye goes!").also {
+ stage = END_DIALOGUE
+ }
+ 30 -> {
+ end()
+ Vinesweeper.Companion.VinesweeperTeleport.teleport(npc!!, player!!)
+ }
+ }
+ return true
+ }
+
+ override fun newInstance(player: Player?): DialoguePlugin {
+ return ToolLeprechaunDialogue(player)
+ }
+
+ override fun getIds(): IntArray {
+ return intArrayOf(NPCs.GOTH_LEPRECHAUN_8000)
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/ToolLeprechaunHandler.kt b/Server/src/main/content/global/skill/farming/ToolLeprechaunHandler.kt
similarity index 88%
rename from Server/src/main/kotlin/rs09/game/node/entity/skill/farming/ToolLeprechaunHandler.kt
rename to Server/src/main/content/global/skill/farming/ToolLeprechaunHandler.kt
index fd2e480fa..d2338609b 100644
--- a/Server/src/main/kotlin/rs09/game/node/entity/skill/farming/ToolLeprechaunHandler.kt
+++ b/Server/src/main/content/global/skill/farming/ToolLeprechaunHandler.kt
@@ -1,8 +1,8 @@
-package rs09.game.node.entity.skill.farming
+package content.global.skill.farming
import core.cache.def.impl.NPCDefinition
import core.game.component.Component
-import core.game.content.dialogue.FacialExpression
+import core.game.dialogue.FacialExpression
import core.game.interaction.OptionHandler
import core.game.node.Node
import core.game.node.entity.npc.NPC
@@ -11,7 +11,7 @@ import core.plugin.Initializable
import core.plugin.Plugin
import org.rs09.consts.Components
import org.rs09.consts.NPCs
-import rs09.game.content.activity.vinesweeper.Vinesweeper
+import content.minigame.vinesweeper.Vinesweeper
val TL_IDS = arrayOf(NPCs.TOOL_LEPRECHAUN_3021,NPCs.GOTH_LEPRECHAUN_8000,NPCs.TOOL_LEPRECHAUN_4965,NPCs.TECLYN_2861)
@Initializable
diff --git a/Server/src/main/content/global/skill/farming/ToolLeprechaunInterface.kt b/Server/src/main/content/global/skill/farming/ToolLeprechaunInterface.kt
new file mode 100644
index 000000000..75fbe8f07
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/ToolLeprechaunInterface.kt
@@ -0,0 +1,351 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.item.Item
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import core.game.interaction.InterfaceListener
+
+class ToolLeprechaunInterface : InterfaceListener {
+ private val FARMING_TOOLS = Components.FARMING_TOOLS_125
+ private val TOOLS_SIDE = Components.FARMING_TOOLS_SIDE_126
+
+ override fun defineInterfaceListeners() {
+
+ onOpen(FARMING_TOOLS) { player, component ->
+ openSingleTab(player, TOOLS_SIDE)
+ return@onOpen true
+ }
+
+ onClose(FARMING_TOOLS) { player, _ ->
+ closeTabInterface(player)
+ return@onClose true
+ }
+
+ on(FARMING_TOOLS) { player, _, opcode, buttonID, _, _ ->
+ when (buttonID) {
+ 33 -> doWithdrawal(player, Items.RAKE_5341, ::setHasRake, ::hasRake)
+ 34 -> doWithdrawal(player, Items.SEED_DIBBER_5343, ::setHasDibber, ::hasDibber)
+ 35 -> doWithdrawal(player, Items.SPADE_952, ::setHasSpade, ::hasSpade)
+ 36 -> {
+ val sec = if (hasMagicSecateurs(player)) Items.MAGIC_SECATEURS_7409 else Items.SECATEURS_5329
+ doWithdrawal(player, sec, ::setHasSecateurs, ::hasSecateurs)
+ }
+ 37 -> {
+ if (!hasWateringCan(player)) {
+ sendMessage(player, "You haven't got a watering can stored in here!")
+ } else {
+ if (freeSlots(player) == 0) {
+ sendMessage(player, "You don't have enough space for that.")
+ }
+ if (addItem(player, getWateringCan(player))) setNoWateringCan(player)
+ }
+ }
+ 38 -> doWithdrawal(player, Items.GARDENING_TROWEL_5325, ::setHasGardeningTrowel, ::hasGardeningTrowel)
+ 39 -> doStackedWithdrawal(player, Items.BUCKET_1925, getAmount(opcode), ::updateBuckets, ::getNumBuckets)
+ 40 -> doStackedWithdrawal(player, Items.COMPOST_6032, getAmount(opcode), ::updateCompost, ::getNumCompost)
+ 41 -> doStackedWithdrawal(player, Items.SUPERCOMPOST_6034, getAmount(opcode), ::updateSuperCompost, ::getNumSuperCompost)
+ }
+ return@on true
+ }
+
+ on(TOOLS_SIDE) { player, _, opcode, buttonID, _, _ ->
+ when (buttonID) {
+ 18 -> doDeposit(player, Items.RAKE_5341, ::setHasRake, ::hasRake)
+ 19 -> doDeposit(player, Items.SEED_DIBBER_5343, ::setHasDibber, ::hasDibber)
+ 20 -> doDeposit(player, Items.SPADE_952, ::setHasSpade, ::hasSpade)
+ 21 -> {
+ if (!inInventory(player, Items.SECATEURS_5329) && !inInventory(player, Items.MAGIC_SECATEURS_7409)) {
+ sendMessage(player, "You haven't got any secateurs to store.")
+ } else if (!hasSecateurs(player)) {
+ if (inInventory(player, Items.MAGIC_SECATEURS_7409)) {
+ removeItem(player, Items.MAGIC_SECATEURS_7409)
+ setHasSecateurs(player,true)
+ setHasMagicSecateurs(player,true)
+ } else {
+ removeItem(player, Items.SECATEURS_5329)
+ setHasSecateurs(player,true)
+ setHasMagicSecateurs(player,false)
+ }
+ } else {
+ sendMessage(player, "You cannot store more than one pair of secateurs in here.")
+ }
+ }
+ 22 -> {
+ val can = getHighestCan(player)
+ if (can == null) {
+ sendMessage(player, "You haven't got a watering can to store.")
+ } else if (!hasWateringCan(player)) {
+ removeItem(player, can)
+ setWateringCan(player,can)
+ } else {
+ sendMessage(player, "You cannot store more than one watering can in here.")
+ }
+ }
+ 23 -> doDeposit(player, Items.GARDENING_TROWEL_5325, ::setHasGardeningTrowel, ::hasGardeningTrowel)
+ 24 -> doStackedDeposit(player, Items.BUCKET_1925, getAmount(opcode), ::updateBuckets, ::getNumBuckets)
+ 25 -> doStackedDeposit(player, Items.COMPOST_6032, getAmount(opcode), ::updateCompost, ::getNumCompost)
+ 26 -> doStackedDeposit(player, Items.SUPERCOMPOST_6034, getAmount(opcode), ::updateSuperCompost, ::getNumSuperCompost)
+ }
+ return@on true
+ }
+
+ }
+
+ private fun doWithdrawal(player: Player?, item: Int, withdrawMethod: (Player?, Boolean) -> Unit, checkMethod: (Player?) -> Boolean) {
+ player ?: return
+ if (!checkMethod.invoke(player)) {
+ val determiner = if (getItemName(item).lowercase().endsWith("s")) "any" else "a"
+ sendMessage(player, "You haven't got $determiner ${getItemName(item).lowercase()} stored in here!")
+ } else {
+ if (!hasSpaceFor(player, Item(item))) {
+ sendMessage(player, "You don't have enough space for that.")
+ return
+ }
+ withdrawMethod.invoke(player, false)
+ addItem(player, item)
+ }
+ }
+
+ private fun doDeposit(player: Player?, item: Int, depositMethod: (Player?, Boolean) -> Unit, checkMethod: (Player?) -> Boolean) {
+ player ?: return
+ if (!inInventory(player, item)) {
+ val determiner = if (getItemName(item).lowercase().endsWith("s")) "any" else "a"
+ sendMessage(player, "You haven't got $determiner ${getItemName(item).lowercase()} to store.")
+ return
+ }
+ if (!checkMethod.invoke(player)) {
+ depositMethod.invoke(player, true)
+ removeItem(player, item)
+ } else {
+ val itemName = when (item) {
+ // secateurs and watering cans are handled separately
+ Items.RAKE_5341 -> "rake"
+ Items.SEED_DIBBER_5343 -> "dibber"
+ Items.SPADE_952 -> "spade"
+ Items.GARDENING_TROWEL_5325 -> "trowel"
+ else -> getItemName(item).lowercase()
+ }
+ sendMessage(player, "You cannot store more than one $itemName in here.")
+ }
+ }
+
+ private fun doStackedDeposit(player: Player?, item: Int, amount: Int, updateQuantityMethod: (Player?, Int) -> Unit, quantityCheckMethod: (Player?) -> Int) {
+ player ?: return
+ val hasAmount = amountInInventory(player, item)
+ var finalAmount = amount
+ val spaceLeft = (if (item == Items.BUCKET_1925) 255 else 255) - quantityCheckMethod.invoke(player)
+
+ if (hasAmount == 0) {
+ val itemName = if (item == Items.BUCKET_1925) "buckets" else getItemName(item).lowercase()
+ sendMessage(player, "You haven't got any $itemName to store.")
+ return
+ }
+
+ if (amount == -2) {
+ sendInputDialogue(player, true, "Enter the amount:") { value ->
+ var amt = value as Int
+ if (amt > hasAmount) {
+ amt = hasAmount
+ }
+ if (amt > spaceLeft) {
+ amt = spaceLeft
+ }
+ if (removeItem(player, Item(item, amt))) updateQuantityMethod.invoke(player, amt)
+ }
+ return
+ }
+
+ if (amount == -1) {
+ finalAmount = hasAmount
+ if (finalAmount > spaceLeft) {
+ finalAmount = spaceLeft
+ }
+ }
+
+ if (finalAmount > hasAmount) {
+ finalAmount = hasAmount
+ }
+
+ if (finalAmount > spaceLeft) {
+ if (item == Items.BUCKET_1925) {
+ sendMessage(player, "You can't store that many buckets in here.")
+ } else {
+ sendMessage(player, "You can't store that much ${getItemName(item).lowercase()} in here.")
+ }
+ return
+ }
+
+ removeItem(player, Item(item, finalAmount))
+ updateQuantityMethod.invoke(player,finalAmount)
+ }
+
+ private fun doStackedWithdrawal(player: Player?, item: Int, amount: Int, updateQuantityMethod: (Player?, Int) -> Unit, quantityCheckMethod: (Player?) -> Int) {
+ player ?: return
+ val hasAmount = if (item == Items.BUCKET_1925) 31 else quantityCheckMethod.invoke(player)
+ var finalAmount = amount
+
+ if (hasAmount == 0) {
+ val itemName = if (item == Items.BUCKET_1925) "buckets" else getItemName(item).lowercase()
+ sendMessage(player, "You haven't got any $itemName stored in here!")
+ return
+ }
+
+ if (amount == -2) {
+ sendInputDialogue(player, InputType.AMOUNT, "Enter the amount:") { value ->
+ var amt = value as Int
+ if (amt > hasAmount) {
+ amt = hasAmount
+ }
+ if (amt > freeSlots(player)) {
+ amt = freeSlots(player)
+ }
+ if (amt <= 0) {
+ sendMessage(player, "You don't have enough inventory space for that.")
+ } else {
+ addItem(player, item, amt)
+ updateQuantityMethod.invoke(player, -amt)
+ }
+ }
+ return
+ }
+ if (amount == -1) {
+ finalAmount = freeSlots(player)
+ }
+ if (finalAmount > hasAmount) {
+ finalAmount = hasAmount
+ }
+ if (!hasSpaceFor(player, Item(item, finalAmount)) || finalAmount == 0) {
+ sendMessage(player, "You don't have enough inventory space for that.")
+ return
+ }
+ addItem(player, item, finalAmount)
+ updateQuantityMethod.invoke(player, -finalAmount)
+ }
+
+ fun getAmount(opcode: Int): Int {
+ return when (opcode) {
+ 155 -> 1
+ 196 -> 5
+ 124 -> -1
+ 199 -> -2
+ else -> 0
+ }
+ }
+
+ private fun hasRake(player: Player?): Boolean {
+ return getVarbit(player!!, 1435) == 1
+ }
+
+ private fun setHasRake(player: Player?, hasRake: Boolean) {
+ setVarbit(player!!, 1435, if (hasRake) 1 else 0, true)
+ }
+
+ private fun hasDibber(player: Player?): Boolean {
+ return getVarbit(player!!, 1436) == 1
+ }
+
+ private fun setHasDibber(player: Player?, hasDibber: Boolean) {
+ setVarbit(player!!, 1436, if (hasDibber) 1 else 0, true)
+ }
+
+ private fun hasSpade(player: Player?): Boolean {
+ return getVarbit(player!!, 1437) == 1
+ }
+
+ private fun setHasSpade(player: Player?, hasSpade: Boolean) {
+ setVarbit(player!!, 1437, if (hasSpade) 1 else 0, true)
+ }
+
+ private fun hasSecateurs(player: Player?): Boolean {
+ return getVarbit(player!!, 1438) == 1
+ }
+
+ private fun setHasSecateurs(player: Player?, hasSecateurs: Boolean) {
+ setVarbit(player!!, 1438, if (hasSecateurs) 1 else 0, true)
+ }
+
+ private fun hasWateringCan(player: Player?): Boolean {
+ return getVarbit(player!!, 1439) > 0
+ }
+
+ private fun getWateringCan(player: Player?): Int {
+ var can = getVarbit(player!!, 1439) //Watering cans are stored in the Varp as a number between 1 and 9. Watering Can(0) is 1 and Watering Can(8) is 9
+ if (can == 1) can = 0
+ return Items.WATERING_CAN_5331 + can
+ }
+
+ private fun setWateringCan(player: Player?, item: Item) {
+ val can = when (item.id) {
+ Items.WATERING_CAN_5331 -> 1
+ Items.WATERING_CAN1_5333 -> 2
+ Items.WATERING_CAN2_5334 -> 3
+ Items.WATERING_CAN3_5335 -> 4
+ Items.WATERING_CAN4_5336 -> 5
+ Items.WATERING_CAN5_5337 -> 6
+ Items.WATERING_CAN6_5338 -> 7
+ Items.WATERING_CAN7_5339 -> 8
+ Items.WATERING_CAN8_5340 -> 9
+ else -> 0
+ }
+ setVarbit(player!!, 1439, can, true)
+ }
+
+ private fun setNoWateringCan(player: Player?) {
+ setVarbit(player!!, 1439, 0, true)
+ }
+
+ private fun hasGardeningTrowel(player: Player?): Boolean {
+ return getVarbit(player!!, 1440) == 1
+ }
+
+ private fun setHasGardeningTrowel(player: Player?, hasTrowel: Boolean) {
+ setVarbit(player!!, 1440, if (hasTrowel) 1 else 0, true)
+ }
+
+ private fun getNumBuckets(player: Player?): Int {
+ return getVarbit(player!!, 1441)
+ }
+
+ private fun updateBuckets(player: Player?, amount: Int) {
+ setVarbit(player!!, 1441, getNumBuckets(player) + amount, true)
+ }
+
+ private fun getNumCompost(player: Player?): Int {
+ return getVarbit(player!!, 1442)
+ }
+
+ private fun updateCompost(player: Player?, amount: Int) {
+ setVarbit(player!!, 1442, getNumCompost(player) + amount, true)
+ }
+
+ private fun getNumSuperCompost(player: Player?): Int {
+ return getVarbit(player!!, 1443)
+ }
+
+ private fun updateSuperCompost(player: Player?, amount: Int) {
+ setVarbit(player!!, 1443, getNumSuperCompost(player) + amount, true)
+ }
+
+ private fun hasMagicSecateurs(player: Player?): Boolean {
+ return getVarbit(player!!, 1848) == 1
+ }
+
+ private fun setHasMagicSecateurs(player: Player?, hasMagic: Boolean) {
+ setVarbit(player!!, 1848, if (hasMagic) 1 else 0, true)
+ }
+
+ private fun getHighestCan(player: Player?): Item? {
+ player ?: return null
+ var highestCan = Item(0)
+ for (item in player.inventory.toArray()) {
+ if (item == null) continue
+ if (item.name.contains("Watering")) {
+ if (item.id > highestCan.id) highestCan = item
+ }
+ }
+ return if (highestCan.id == 0) null else highestCan
+ }
+
+}
diff --git a/Server/src/main/content/global/skill/farming/UseWithBinHandler.kt b/Server/src/main/content/global/skill/farming/UseWithBinHandler.kt
new file mode 100644
index 000000000..8d557e9b6
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/UseWithBinHandler.kt
@@ -0,0 +1,104 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.system.task.Pulse
+import core.game.world.update.flag.context.Animation
+import org.rs09.consts.Items
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+
+class UseWithBinHandler : InteractionListener {
+ @JvmField
+ val allowedNodes = ArrayList(100)
+ val fillAnim = Animation(832)
+ val compostPotionAnimation = Animation(2259)
+ val scoopAnimation = Animation(8905)
+
+ val bins = 7836..7840
+
+ override fun defineListeners() {
+ loadNodes()
+ onUseWith(IntType.SCENERY, allowedNodes.toIntArray(), *bins.toIntArray()) { player, usedNode, with ->
+ val cBin = CompostBins.forObject(with.asScenery()) ?: return@onUseWith true
+ val bin = cBin.getBinForPlayer(player)
+ val used = usedNode.id
+
+
+ when (used) {
+ Items.COMPOST_POTION1_6476, Items.COMPOST_POTION2_6474, Items.COMPOST_POTION3_6472, Items.COMPOST_POTION4_6470 -> {
+ if (!bin.isSuperCompost && bin.isFinished && !bin.isClosed) {
+ animate(player, compostPotionAnimation)
+ submitIndividualPulse(player, object : Pulse(compostPotionAnimation.duration) {
+ override fun pulse(): Boolean {
+ if (removeItem(player, usedNode.asItem())) {
+ bin.convert()
+ addItem(player, used.getNext())
+ }
+ return true
+ }
+ })
+ } else {
+ sendDialogue(player, "You can only do this with an open bin of finished regular compost.")
+ }
+ }
+
+ Items.BUCKET_1925 -> {
+ if (bin.isFinished && !bin.isClosed) {
+ submitIndividualPulse(player, object : Pulse(scoopAnimation.duration) {
+ override fun pulse(): Boolean {
+ if (!player.inventory.containsItem(usedNode.asItem())) return true
+ animate(player, scoopAnimation)
+ val item = bin.takeItem()
+ if (item != null && removeItem(player, usedNode.asItem())) {
+ player.inventory.add(item)
+ }
+ return item == null || !player.inventory.containsItem(usedNode.asItem())
+ }
+ })
+ } else {
+ sendDialogue(player, "You can only scoop an opened bin of finished compost.")
+ }
+ }
+
+ else ->
+ if (bin.isFull()) {
+ sendMessage(player, "This compost bin is already full.")
+ return@onUseWith true
+ } else if (!bin.isFinished) {
+ submitIndividualPulse(player, object : Pulse(fillAnim.duration) {
+ override fun pulse(): Boolean {
+ animate(player, fillAnim)
+ if (removeItem(player, usedNode.asItem())) {
+ bin.addItem(usedNode.asItem())
+ }
+ return bin.isFull() || player.inventory.getAmount(usedNode.asItem()) == 0
+ }
+ })
+ } else {
+ sendDialogue(player, "The compost bin must be empty of compost before you can put new items in it.")
+ }
+ }
+ return@onUseWith true
+ }
+ }
+
+ fun loadNodes() {
+ for (p in Plantable.values()) {
+ if (p.harvestItem != Items.SCARECROW_6059) {
+ allowedNodes.add(p.harvestItem)
+ }
+ }
+ allowedNodes.add(Items.COCONUT_SHELL_5978)
+ allowedNodes.add(Items.WEEDS_6055)
+ allowedNodes.add(Items.COMPOST_POTION4_6470)
+ allowedNodes.add(Items.COMPOST_POTION3_6472)
+ allowedNodes.add(Items.COMPOST_POTION2_6474)
+ allowedNodes.add(Items.COMPOST_POTION1_6476)
+ allowedNodes.add(Items.BUCKET_1925)
+ }
+
+ private fun Int.getNext(): Int {
+ if (this != 6476) return this + 2
+ else return Items.VIAL_229
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/UseWithPatchHandler.kt b/Server/src/main/content/global/skill/farming/UseWithPatchHandler.kt
new file mode 100644
index 000000000..6dac10dce
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/UseWithPatchHandler.kt
@@ -0,0 +1,351 @@
+package content.global.skill.farming
+
+import core.api.*
+import core.game.node.entity.player.link.diary.DiaryType
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.game.system.task.Pulse
+import org.rs09.consts.Items
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.interaction.QueueStrength
+import core.tools.StringUtils
+import core.tools.prependArticle
+import org.rs09.consts.Sounds
+import content.data.Quests
+
+class UseWithPatchHandler : InteractionListener {
+ val RAKE = Items.RAKE_5341
+ val SEED_DIBBER = Items.SEED_DIBBER_5343
+ val SPADE = Items.SPADE_952
+ val SECATEURS = Items.SECATEURS_5329
+ val MAGIC_SECATEURS = Items.MAGIC_SECATEURS_7409
+ val TROWEL = Items.GARDENING_TROWEL_5325
+ val spadeDigAnim = getAnimation(830)
+ val trowelDigAnim = getAnimation(2272)
+ val pourBucketAnim = getAnimation(2283)
+ val seedDibberAnim = getAnimation(2291)
+ val wateringCanAnim = getAnimation(2293)
+ val plantCureAnim = getAnimation(2288)
+ val secateursTreeAnim = getAnimation(2277)
+ val magicSecateursTreeAnim = getAnimation(3340)
+
+ @JvmField
+ val allowedNodes = ArrayList()
+
+ override fun defineListeners() {
+ loadNodes()
+ onUseWith(IntType.SCENERY, allowedNodes.toIntArray(), *FarmingPatch.patchNodes.toIntArray()) { player, used, with ->
+ val patch = FarmingPatch.forObject(with.asScenery()) ?: return@onUseWith true
+ val usedItem = used.asItem()
+
+ if (patch == FarmingPatch.TROLL_STRONGHOLD_HERB) {
+ if (!hasRequirement(player, Quests.MY_ARMS_BIG_ADVENTURE))
+ return@onUseWith true
+ }
+
+ player.faceLocation(with.location)
+ when (usedItem.id) {
+ RAKE -> PatchRaker.rake(player,patch)
+ SEED_DIBBER -> sendMessage(player, "I should plant a seed, not the seed dibber.")
+ SPADE -> {
+ val anim = spadeDigAnim
+ val p = patch.getPatchFor(player)
+ if (p.isDead) {
+ sendMessage(player, "You start digging the farming patch...")
+ queueScript(player, 0, QueueStrength.WEAK) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ animate(player, anim)
+ playAudio(player, Sounds.DIGSPADE_1470)
+ return@queueScript delayScript(player,anim.duration + 2)
+ }
+ 1 -> {
+ animate(player, anim)
+ playAudio(player, Sounds.DIGSPADE_1470)
+ return@queueScript delayScript(player, anim.duration + 1)
+ }
+ 2 -> {
+ p.clear()
+ sendMessage(player, "You have successfully cleared this patch for new crops.")
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ } else {
+ openDialogue(player, 67984003, patch.getPatchFor(player)) // DigUpPatchDialogue.kt
+ }
+ }
+ SECATEURS, MAGIC_SECATEURS -> {
+ val p = patch.getPatchFor(player)
+ if (patch.type == PatchType.TREE_PATCH) {
+ if (p.isDiseased && !p.isDead) {
+ submitIndividualPulse(player, object: Pulse() {
+ override fun pulse(): Boolean {
+ if (usedItem.id == SECATEURS) animate(player, secateursTreeAnim) else animate(player, magicSecateursTreeAnim)
+ p.cureDisease()
+ return true
+ }
+ })
+ } else if (p.plantable == Plantable.WILLOW_SAPLING && p.harvestAmt > 0) {
+ val pulse = CropHarvester.harvestPulse(player, with, Items.WILLOW_BRANCH_5933) ?: return@onUseWith false
+ submitIndividualPulse(player, pulse)
+ }
+ }
+ }
+ TROWEL, Items.PLANT_POT_5350 -> {
+ if (!inInventory(player, TROWEL)) {
+ sendMessage(player, "You need a trowel to fill plant pots with dirt.")
+ return@onUseWith true
+ }
+ val p = patch.getPatchFor(player)
+ if (!p.isWeedy() && !p.isEmptyAndWeeded()) {
+ sendMessage(player, "This patch has something growing in it.")
+ return@onUseWith true
+ } else if (p.currentGrowthStage != 3) {
+ sendMessage(player, "I should clear this of weeds before trying to take some dirt.")
+ return@onUseWith true
+ }
+
+ val potAmount = amountInInventory(player, Items.PLANT_POT_5350)
+
+ if (potAmount == 0) {
+ sendMessage(player, "You have no plant pots to fill.")
+ return@onUseWith true
+ }
+
+ val anim = trowelDigAnim
+
+ submitIndividualPulse(player, object : Pulse(anim.duration) {
+ override fun pulse(): Boolean {
+ if (removeItem(player, Items.PLANT_POT_5350)) {
+ animate(player, anim)
+ addItem(player, Items.PLANT_POT_5354)
+ } else return true
+ return false
+ }
+ })
+ }
+
+ Items.PLANT_CURE_6036 -> {
+ val p = patch.getPatchFor(player)
+ val patchName = p.patch.type.displayName()
+ if (p.isDiseased && !p.isDead) {
+ sendMessage(player, "You treat the $patchName with the plant cure.")
+ queueScript(player, 0, QueueStrength.WEAK) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ animate(player, plantCureAnim)
+ playAudio(player, Sounds.FARMING_PLANTCURE_2438)
+ return@queueScript delayScript(player, plantCureAnim.duration / 2)
+ }
+ 1 -> {
+ if (removeItem(player, usedItem)) {
+ addItem(player, Items.VIAL_229)
+ p.cureDisease()
+ sendMessage(player, "It is restored to health.")
+ }
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ } else {
+ sendMessage(player, "I have no reason to do this right now.")
+ }
+ }
+
+ Items.WATERING_CAN_5331,Items.WATERING_CAN1_5333,Items.WATERING_CAN2_5334,Items.WATERING_CAN3_5335,Items.WATERING_CAN4_5336,Items.WATERING_CAN5_5337,Items.WATERING_CAN6_5338,Items.WATERING_CAN7_5339,Items.WATERING_CAN8_5340 -> {
+ val p = patch.getPatchFor(player)
+ val t = p.patch.type
+ if (t == PatchType.ALLOTMENT || t == PatchType.FLOWER_PATCH || t == PatchType.HOPS_PATCH) {
+ submitIndividualPulse(player, object : Pulse() {
+ override fun pulse(): Boolean {
+ if (p.isWeedy() || p.isEmptyAndWeeded()) {
+ sendMessage(player, "You should grow something first.")
+ return true
+ }
+ if (p.isWatered || p.isGrown() || p.plantable == Plantable.SCARECROW) {
+ sendMessage(player, "This patch doesn't need watering.")
+ return true
+ }
+ if (p.isDiseased || p.isDead) {
+ sendMessage(player, "Water isn't going to cure that!")
+ return true
+ }
+ if (usedItem.id == Items.WATERING_CAN_5331) {
+ sendMessage(player, "You need to fill the watering can first.")
+ return true
+ }
+ animate(player, wateringCanAnim)
+ playAudio(player, Sounds.FARMING_WATERING_2446)
+ if (removeItem(player, usedItem)) {
+ addItem(player, usedItem.id.getNext())
+ p.water()
+ }
+ return true
+ }
+ })
+ } else {
+ sendMessage(player, "This patch doesn't need watering.")
+ }
+ }
+
+ Items.SUPERCOMPOST_6034, Items.COMPOST_6032 -> {
+ val p = patch.getPatchFor(player)
+ val patchName = p.patch.type.displayName()
+
+ if (!p.isEmptyAndWeeded()) {
+ sendMessage(player, "This patch needs to be empty and weeded to do that.")
+ } else if (p.compost == CompostType.NONE) {
+ animate(player, pourBucketAnim)
+ playAudio(player, Sounds.FARMING_COMPOST_2427)
+ runTask(player) {
+ if (player.inventory.remove(usedItem,false)) {
+ sendMessage(player, "You treat the $patchName with ${usedItem.name.lowercase()}.")
+ p.compost = if (usedItem.id == Items.SUPERCOMPOST_6034) CompostType.SUPERCOMPOST else CompostType.COMPOST
+ if (p.compost == CompostType.SUPERCOMPOST) rewardXP(player, Skills.FARMING, 26.0) else rewardXP(player, Skills.FARMING, 18.5)
+ if (p.plantable != null && p.plantable?.applicablePatch != PatchType.FLOWER_PATCH) {
+ p.harvestAmt += if (p.compost == CompostType.COMPOST) 1 else if (p.compost == CompostType.SUPERCOMPOST) 2 else 0
+ }
+ p.cropLives += if (p.compost == CompostType.SUPERCOMPOST) 2 else 1
+ addItem(player, Items.BUCKET_1925)
+ }
+ return@runTask
+ }
+ } else {
+ sendMessage(player, "This $patchName has already been treated with ${p.compost.name.lowercase()}.")
+ }
+ }
+
+ else -> {
+ val plantable = Plantable.forItemID(usedItem.id) ?: return@onUseWith false
+
+ if (plantable.applicablePatch != patch.type) {
+ val plantableNamePlural = StringUtils.plusS(plantable.displayName)
+ val patchType = if (plantable.applicablePatch == PatchType.ALLOTMENT) "a vegetable patch" else prependArticle(plantable.applicablePatch.displayName())
+ sendMessage(player, "You can only plant $plantableNamePlural in $patchType.")
+ return@onUseWith true
+ }
+
+ if (!hasLevelDyn(player, Skills.FARMING, plantable.requiredLevel)) {
+ sendMessage(player, "You need a Farming level of ${plantable.requiredLevel} to plant this.")
+ return@onUseWith true
+ }
+
+ val p = patch.getPatchFor(player)
+ if (p.getCurrentState() < 3 && p.isWeedy() && plantable != Plantable.SCARECROW) {
+ sendMessage(player, "This patch needs weeding first.")
+ return@onUseWith true
+ } else if (p.getCurrentState() > 3) {
+ sendMessage(player, "There is already something growing in this patch.")
+ return@onUseWith true
+ }
+
+ val plantItem = when (patch.type) {
+ PatchType.ALLOTMENT -> Item(plantable.itemID, 3)
+ PatchType.HOPS_PATCH -> if (plantable == Plantable.JUTE_SEED) Item(plantable.itemID, 3) else Item(plantable.itemID, 4)
+ else -> Item(plantable.itemID,1)
+ }
+
+ if (!player.inventory.containsItem(plantItem)) {
+ val seedPlural = if (plantItem.amount == 1) "seed" else "seeds"
+ sendMessage(player, "You need ${plantItem.amount} $seedPlural to plant ${prependArticle(patch.type.displayName())}.")
+ return@onUseWith true
+ }
+
+ val requiredItem = when (patch.type) {
+ PatchType.TREE_PATCH, PatchType.FRUIT_TREE_PATCH -> Items.SPADE_952
+ PatchType.FLOWER_PATCH -> if (plantable == Plantable.SCARECROW) null else Items.SEED_DIBBER_5343
+ else -> Items.SEED_DIBBER_5343
+ }
+ if (requiredItem != null && !inInventory(player, requiredItem)) {
+ sendMessage(player, "You need ${prependArticle(requiredItem.asItem().name.lowercase())} to plant that.")
+ return@onUseWith true
+ }
+
+ queueScript(player, 0, QueueStrength.WEAK) { stage: Int ->
+ when (stage) {
+ 0 -> {
+ val (anim, sound) = when (requiredItem) {
+ Items.SPADE_952 -> Pair(spadeDigAnim, Sounds.DIGSPADE_1470)
+ else -> Pair(seedDibberAnim,Sounds.FARMING_DIBBING_2432)
+ }
+ animate(player, anim)
+ playAudio(player, sound)
+ val delay = if (patch.type == PatchType.TREE_PATCH || patch.type == PatchType.FRUIT_TREE_PATCH || plantable == Plantable.SCARECROW) 3 else 0
+ return@queueScript delayScript(player,anim.duration + delay)
+ }
+ 1 -> {
+ if (removeItem(player, plantItem)) {
+ if (plantable == Plantable.JUTE_SEED && patch == FarmingPatch.MCGRUBOR_HOPS && !player.achievementDiaryManager.hasCompletedTask(DiaryType.SEERS_VILLAGE, 0, 7)) {
+ player.achievementDiaryManager.finishTask(player, DiaryType.SEERS_VILLAGE, 0, 7)
+ }
+ p.plant(plantable)
+ rewardXP(player, Skills.FARMING, plantable.plantingXP)
+ p.setNewHarvestAmount()
+ if (p.patch.type == PatchType.TREE_PATCH || p.patch.type == PatchType.FRUIT_TREE_PATCH) {
+ addItem(player, Items.PLANT_POT_5350)
+ }
+
+ val itemAmount =
+ if (p.patch.type == PatchType.TREE_PATCH || p.patch.type == PatchType.FRUIT_TREE_PATCH) "the"
+ else if (plantItem.amount == 1) "a"
+ else plantItem.amount
+ val itemName =
+ if (plantItem.amount == 1) plantable.displayName else StringUtils.plusS(
+ plantable.displayName
+ )
+ val patchName = p.patch.type.displayName()
+ if (plantable == Plantable.SCARECROW) {
+ sendMessage(player, "You place the scarecrow in the $patchName.")
+ } else {
+ sendMessage(player, "You plant $itemAmount $itemName in the $patchName.")
+ }
+ }
+ return@queueScript stopExecuting(player)
+ }
+ else -> return@queueScript stopExecuting(player)
+ }
+ }
+ }
+ }
+ return@onUseWith true
+ }
+ }
+
+ fun loadNodes() {
+ for (p in Plantable.values()) {
+ allowedNodes.add(p.itemID)
+ }
+ allowedNodes.addAll(
+ arrayListOf(
+ RAKE,
+ SEED_DIBBER,
+ SPADE,
+ SECATEURS,
+ MAGIC_SECATEURS,
+ TROWEL,
+ Items.SUPERCOMPOST_6034,
+ Items.COMPOST_6032,
+ Items.PLANT_CURE_6036,
+ Items.WATERING_CAN_5331,
+ Items.WATERING_CAN1_5333,
+ Items.WATERING_CAN2_5334,
+ Items.WATERING_CAN3_5335,
+ Items.WATERING_CAN4_5336,
+ Items.WATERING_CAN5_5337,
+ Items.WATERING_CAN6_5338,
+ Items.WATERING_CAN7_5339,
+ Items.WATERING_CAN8_5340,
+ Items.PLANT_POT_5350
+ )
+ )
+ }
+
+ private fun Int.getNext(): Int {
+ if (this == Items.WATERING_CAN1_5333) return Items.WATERING_CAN_5331
+ else return this - 1
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/timers/Compost.kt b/Server/src/main/content/global/skill/farming/timers/Compost.kt
new file mode 100644
index 000000000..cc69490a0
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/timers/Compost.kt
@@ -0,0 +1,65 @@
+package content.global.skill.farming.timers
+
+import core.api.*
+import core.game.system.timer.*
+import org.json.simple.*
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+import content.global.skill.farming.*
+
+class Compost : PersistTimer (500, "farming:compost", isSoft = true) {
+ private val binMap = HashMap()
+ lateinit var player: Player
+
+ override fun onRegister (entity: Entity) {
+ player = (entity as? Player)!!
+ }
+
+ override fun getInitialRunDelay() : Int {
+ return 1 //run once immediately after log in to complete any pending-but-enough-time-has-passed bins.
+ }
+
+ override fun run (entity: Entity) : Boolean {
+ val removeList = ArrayList ()
+ for((cBin,bin) in binMap){
+ if(bin.isReady() && !bin.isFinished){
+ bin.finish()
+ }
+ else if (bin.isDefaultState())
+ removeList.add(cBin)
+ }
+ removeList.forEach { binMap.remove(it) }
+ removeList.clear()
+
+ return binMap.isNotEmpty()
+ }
+
+ fun getBin (bin: CompostBins) : CompostBin{
+ return binMap[bin] ?: (CompostBin (player, bin).also { binMap[bin] = it })
+ }
+
+ fun getBins(): MutableCollection{
+ return binMap.values
+ }
+
+ override fun save (root: JSONObject, entity: Entity) {
+ val bins = JSONArray()
+ for((key,bin) in binMap){
+ val b = JSONObject()
+ b.put("bin-ordinal",key.ordinal)
+ bin.save(b)
+ bins.add(b)
+ }
+ root.put("bins", bins)
+ }
+
+ override fun parse (root: JSONObject, entity: Entity) {
+ (root["bins"] as JSONArray).forEach {
+ val bin = it as JSONObject
+ val binOrdinal = bin["bin-ordinal"].toString().toInt()
+ val cBin = CompostBins.values()[binOrdinal]
+ val b = CompostBin ((entity as? Player)!!, cBin).also { binMap[cBin] = it }
+ b.parse(bin["binData"] as JSONObject)
+ }
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/timers/CropGrowth.kt b/Server/src/main/content/global/skill/farming/timers/CropGrowth.kt
new file mode 100644
index 000000000..074e5ae43
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/timers/CropGrowth.kt
@@ -0,0 +1,153 @@
+package content.global.skill.farming.timers
+
+import core.tools.*
+import core.game.system.timer.*
+import org.json.simple.*
+import core.game.node.entity.Entity
+import core.game.node.entity.player.Player
+import content.global.skill.farming.*
+import java.util.concurrent.TimeUnit
+import java.time.*
+
+class CropGrowth : PersistTimer (500, "farming:crops", isSoft = true) {
+ private val patchMap = HashMap()
+ lateinit var player: Player
+
+ override fun onRegister (entity: Entity) {
+ player = (entity as? Player)!!
+ runOfflineCatchupLogic()
+ }
+
+ //Sync the 5 minute run cycles with :05 on realtime clocks - authentic
+ override fun getInitialRunDelay() : Int {
+ val now = LocalTime.now()
+ val minsUntil5MinSync = 5 - (now.getMinute() % 5)
+ val ticks = secondsToTicks (minsUntil5MinSync * 60)
+ player.debug("[CropGrowth] Scheduled first growth cycle for $ticks ticks from now.")
+ return ticks
+ }
+
+ override fun run (entity: Entity) : Boolean {
+ var removeList = ArrayList()
+ for((fp,patch) in patchMap){
+ if(patch.getCurrentState() in 1..3 && patch.nextGrowth == 0L){
+ patch.nextGrowth = System.currentTimeMillis() + 60000
+ continue
+ }
+
+ //Go ahead and grow anything within 4 minutes of the 5-minute-synced growth cycles, bringing out-of-sync patches into sync.
+ //This seems to be authentic as well, with the RS wiki sometimes stating 20-minute patches can grow in as little as 7 minutes depending on timing of planting
+ //It also makes sense, as otherwise if you e.g. planted something at 10:34 that takes 5 minutes to grow, it would take 6 minutes in reality instead of 5.
+ //Another more extreme example is if you planted something at 10:31 that takes 5 minutes to grow. 10:35 comes around, it hasn't been 5 minutes, so it doesn't grow, meaning
+ //it actually grows at 10:40, an extra 4 minutes.
+ //this code makes it so crops planted both at 10:31 and 10:34 grow at 10:35 if they are supposed to take 5 minutes for each stage.
+ if(patch.nextGrowth < (System.currentTimeMillis() + 240_000L) && !patch.isDead){
+ patch.nextGrowth = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(patch.getStageGrowthMinutes().toLong())
+ patch.update()
+ }
+
+ if (patch.getCurrentState() == 0)
+ removeList.add(fp)
+ }
+ removeList.forEach { patchMap.remove(it) }
+ removeList.clear()
+ return patchMap.isNotEmpty()
+ }
+
+ private fun runOfflineCatchupLogic() {
+ for ((_, patch) in patchMap) {
+ val type = patch.patch.type
+ val shouldPlayCatchup = !patch.isGrown() || (type == PatchType.BUSH_PATCH && patch.getFruitOrBerryCount() < 4) || (type == PatchType.FRUIT_TREE_PATCH && patch.getFruitOrBerryCount() < 6)
+ if (shouldPlayCatchup && !patch.isDead) {
+ var stagesToSimulate = if (!patch.isGrown()) {
+ if (patch.isWeedy() || patch.isEmptyAndWeeded()) patch.currentGrowthStage % 4
+ else patch.plantable!!.stages - patch.currentGrowthStage
+ } else 0
+
+ if (patch.plantable != null) {
+ if (type == PatchType.BUSH_PATCH)
+ stagesToSimulate += Math.min(4, 4 - patch.getFruitOrBerryCount())
+ if (type == PatchType.FRUIT_TREE_PATCH)
+ stagesToSimulate += Math.min(6, 6 - patch.getFruitOrBerryCount())
+ }
+
+ val nowTime = System.currentTimeMillis()
+ var simulatedTime = patch.nextGrowth
+
+ while (simulatedTime < nowTime && stagesToSimulate-- > 0 && !patch.isDead) {
+ val timeToIncrement = TimeUnit.MINUTES.toMillis(patch.getStageGrowthMinutes().toLong())
+ patch.update()
+ simulatedTime += timeToIncrement
+ }
+ }
+ }
+ }
+
+ fun getPatch(patch: FarmingPatch, addPatch: Boolean ): Patch {
+ return patchMap[patch] ?: (Patch(player,patch).also { if (addPatch) patchMap[patch] = it })
+ }
+
+ fun getPatches(): MutableCollection{
+ return patchMap.values
+ }
+
+ override fun save (root: JSONObject, entity: Entity) {
+ val patches = JSONArray()
+ for((key,patch) in patchMap){
+ val p = JSONObject()
+ p.put("patch-ordinal",key.ordinal)
+ p.put("patch-plantable-ordinal",patch.plantable?.ordinal ?: -1)
+ p.put("patch-watered",patch.isWatered)
+ p.put("patch-diseased",patch.isDiseased)
+ p.put("patch-dead",patch.isDead)
+ p.put("patch-stage",patch.currentGrowthStage)
+ p.put("patch-state",patch.getCurrentState())
+ p.put("patch-nextGrowth",patch.nextGrowth)
+ p.put("patch-harvestAmt",patch.harvestAmt)
+ p.put("patch-checkHealth",patch.isCheckHealth)
+ p.put("patch-compost",patch.compost.ordinal)
+ p.put("patch-paidprot",patch.protectionPaid)
+ p.put("patch-croplives", patch.cropLives)
+ patches.add(p)
+ }
+ root["patches"] = patches
+ }
+
+ override fun parse (root: JSONObject, entity: Entity) {
+ val data = root["patches"] as JSONArray
+ for(d in data){
+ val p = d as JSONObject
+ val patchOrdinal = p["patch-ordinal"].toString().toInt()
+ val patchPlantableOrdinal = p["patch-plantable-ordinal"].toString().toInt()
+ val patchWatered = p["patch-watered"] as Boolean
+ val patchDiseased = p["patch-diseased"] as Boolean
+ val patchDead = p["patch-dead"] as Boolean
+ val patchStage = p["patch-stage"].toString().toInt()
+ val nextGrowth = p["patch-nextGrowth"].toString().toLong()
+ val harvestAmt = (p["patch-harvestAmt"] ?: 0).toString().toInt()
+ val checkHealth = p["patch-checkHealth"] as Boolean
+ val savedState = p["patch-state"].toString().toInt()
+ val compostOrdinal = p["patch-compost"].toString().toInt()
+ val protectionPaid = p["patch-paidprot"] as Boolean
+ val cropLives = if(p["patch-croplives"] != null) p["patch-croplives"].toString().toInt() else 3
+ val fPatch = FarmingPatch.values()[patchOrdinal]
+ val plantable = if(patchPlantableOrdinal != -1) Plantable.values()[patchPlantableOrdinal] else null
+ val patch = Patch((entity as? Player)!!,fPatch,plantable,patchStage,patchDiseased,patchDead,patchWatered,nextGrowth,harvestAmt,checkHealth)
+
+ patch.cropLives = cropLives
+ patch.compost = CompostType.values()[compostOrdinal]
+ patch.protectionPaid = protectionPaid
+ patch.setCurrentState(savedState)
+
+ if((savedState - (patch?.plantable?.value ?: 0)) > patch.currentGrowthStage){
+ patch.setCurrentState(savedState)
+ } else {
+ patch.setCurrentState((patch.plantable?.value ?: 0) + patch.currentGrowthStage)
+ }
+
+ if(patchMap[fPatch] == null) {
+ patchMap[fPatch] = patch
+ }
+ }
+ }
+}
diff --git a/Server/src/main/content/global/skill/farming/timers/SeedlingGrowth.kt b/Server/src/main/content/global/skill/farming/timers/SeedlingGrowth.kt
new file mode 100644
index 000000000..843c6871c
--- /dev/null
+++ b/Server/src/main/content/global/skill/farming/timers/SeedlingGrowth.kt
@@ -0,0 +1,74 @@
+package content.global.skill.farming.timers
+
+import core.game.node.entity.Entity
+import core.game.node.item.Item
+import core.game.system.timer.*
+import core.game.node.entity.player.Player
+import content.global.skill.farming.*
+import java.util.concurrent.TimeUnit
+import org.json.simple.*
+import java.time.*
+
+class SeedlingGrowth : PersistTimer (1, "farming:seedling", isSoft = true) {
+ val seedlings = ArrayList()
+ lateinit var player: Player
+
+ fun addSeedling(seedling: Int){
+ seedlings.add(
+ Seedling(
+ seedling,
+ System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(5),
+ seedling + if(seedling > 5400) 8 else 6
+ )
+ )
+ }
+
+ override fun onRegister (entity: Entity) {
+ player = (entity as? Player)!!
+ }
+
+ override fun run (entity: Entity) : Boolean {
+ val removeList = ArrayList()
+ for (seed in seedlings) {
+ if (System.currentTimeMillis() > seed.TTL) {
+ val inInventory = player.inventory.get(Item(seed.id))
+ if (inInventory != null) {
+ player.inventory.replace(Item(seed.sapling), inInventory.slot)
+ removeList.add(seed)
+ } else {
+ val inBank = player.bank.get(Item(seed.id))
+ if(inBank == null) removeList.add(seed)
+ else {
+ player.bank.remove(Item(inBank.id,1))
+ player.bank.add(Item(seed.sapling))
+ removeList.add(seed)
+ }
+ }
+ }
+ }
+ seedlings.removeAll(removeList)
+ return seedlings.isNotEmpty()
+ }
+
+ override fun save(root: JSONObject, entity: Entity) {
+ val seedArray = JSONArray()
+ for(s in seedlings){
+ val seed = JSONObject()
+ seed.put("id",s.id)
+ seed.put("ttl",s.TTL)
+ seed.put("sapling",s.sapling)
+ seedArray.add(seed)
+ }
+ root.put("seedlings",seedArray)
+ }
+
+ override fun parse(root: JSONObject, entity: Entity) {
+ (root["seedlings"] as JSONArray).forEach {
+ val s = it as JSONObject
+ val id = s["id"].toString().toInt()
+ val ttl = s["ttl"].toString().toLong()
+ val sapling = s["sapling"].toString().toInt()
+ seedlings.add(Seedling(id,ttl,sapling))
+ }
+ }
+}
diff --git a/Server/src/main/content/global/skill/firemaking/FireMakingOptionPlugin.kt b/Server/src/main/content/global/skill/firemaking/FireMakingOptionPlugin.kt
new file mode 100644
index 000000000..76f745d01
--- /dev/null
+++ b/Server/src/main/content/global/skill/firemaking/FireMakingOptionPlugin.kt
@@ -0,0 +1,22 @@
+package content.global.skill.firemaking
+
+import core.game.node.item.GroundItem
+import org.rs09.consts.Items
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+
+class FiremakingListener : InteractionListener
+{
+ val logs = intArrayOf(1511, 1521, 1513, 1515, 1517, 1519, 2862, 3438, 3440, 3442, 3444, 3446, 3448, 6211, 6213, 6332, 6333, 7404, 7405, 7406, 8934, 9067, 10328, 10329, 10808, 10810, 10812, 11035, 12581, 12583, 3125)
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, Items.TINDERBOX_590, *logs) { player, _, with ->
+ player.pulseManager.run(FireMakingPulse(player, with.asItem(), null))
+ return@onUseWith true
+ }
+ onUseWith(IntType.GROUNDITEM, Items.TINDERBOX_590, *logs) { player, _, with ->
+ player.pulseManager.run(FireMakingPulse(player, with.asItem(), with as GroundItem))
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/firemaking/FireMakingPulse.java b/Server/src/main/content/global/skill/firemaking/FireMakingPulse.java
new file mode 100644
index 000000000..7d9f0b35d
--- /dev/null
+++ b/Server/src/main/content/global/skill/firemaking/FireMakingPulse.java
@@ -0,0 +1,211 @@
+package content.global.skill.firemaking;
+
+import core.api.Container;
+import core.game.event.LitFireEvent;
+import core.game.node.entity.skill.SkillPulse;
+import core.game.node.entity.skill.Skills;
+import core.game.node.entity.player.Player;
+import core.game.node.item.GroundItem;
+import core.game.node.item.GroundItemManager;
+import core.game.node.item.Item;
+import core.game.node.scenery.Scenery;
+import core.game.node.scenery.SceneryBuilder;
+import core.game.world.GameWorld;
+import core.game.world.map.RegionManager;
+import core.game.world.update.flag.context.Animation;
+import core.tools.RandomFunction;
+import org.rs09.consts.Items;
+
+import static core.api.ContentAPIKt.inInventory;
+import static core.api.ContentAPIKt.replaceSlot;
+
+import static core.api.ContentAPIKt.removeItem;
+
+/**
+ * Represents the pulse used to light a log.
+ * @author 'Vexia
+ */
+public final class FireMakingPulse extends SkillPulse- {
+
+ /**
+ * Represents the animation to use.
+ */
+ private static final Animation ANIMATION = new Animation(733);
+
+ /**
+ * Represents the tinderbox item.
+ */
+ private static final Item TINDERBOX = new Item(Items.TINDERBOX_590);
+
+
+ /**
+ * Represents the log being burned.
+ */
+ private final Log fire;
+
+ /**
+ * Represents the ground item.
+ */
+ private GroundItem groundItem;
+
+ /**
+ * Represents the ticks.
+ */
+ private int ticks;
+
+ /**
+ * Constructs a new {@code FireMaking}.
+ * @param player the player.
+ * @param node the node.
+ * @param groundItem the ground item if not null.
+ */
+ public FireMakingPulse(Player player, Item node, GroundItem groundItem) {
+ super(player, node);
+ this.fire = Log.forId(node.getId());
+ if (groundItem == null) {
+ this.groundItem = new GroundItem(node, player.getLocation(), player);
+ player.setAttribute("remove-log", true);
+ } else {
+ this.groundItem = groundItem;
+ player.removeAttribute("remove-log");
+ }
+ }
+
+ @Override
+ public boolean checkRequirements() {
+ if (fire == null) {
+ return false;
+ }
+ if (RegionManager.getObject(player.getLocation()) != null || player.getZoneMonitor().isInZone("bank")) {
+ player.getPacketDispatch().sendMessage("You can't light a fire here.");
+ return false;
+ }
+ if (!player.getInventory().containsItem(TINDERBOX)) {
+ player.getPacketDispatch().sendMessage("You do not have the required items to light this.");
+ return false;
+ }
+ if (player.getSkills().getLevel(Skills.FIREMAKING) < fire.getLevel()) {
+ player.getPacketDispatch().sendMessage("You need a firemaking level of " + fire.getLevel() + " to light this log.");
+ return false;
+ }
+ if (player.getAttribute("remove-log", false)) {
+ player.removeAttribute("remove-log");
+ if (inInventory(player, node.getId(), 1)) {
+ //replaceSlot(player, node.getSlot(), new Item(node.getId(), (node.getAmount() - 1)), node, Container.INVENTORY);
+ // Snowscape, remove any item instead of specific slot, and update the grounditem with our new location.
+ removeItem(player, new Item(node.getId(), 1), Container.INVENTORY);
+ this.groundItem = new GroundItem(node, player.getLocation(), player);
+ GroundItemManager.create(groundItem);
+ } else {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public void animate() {
+ }
+
+ @Override
+ public boolean reward() {
+ /* Snowscape: this section allows making a new fire without an animation if you're fast enough, but since we auto-repeat we don't need that
+ if (getLastFire() >= GameWorld.getTicks()) {
+ createFire();
+ return true;
+ }
+ */
+ if (ticks % 5 == 0) {
+ player.animate(ANIMATION);
+ }
+ if (++ticks % 5 != 0) {
+ return false;
+ }
+
+ if (!success()) {
+ return false;
+ }
+ createFire();
+ // Snowscape: return with the remove-log attribute, so the next pulse attempts to remove another log and start over
+ player.setAttribute("remove-log", true);
+ return false;
+
+
+ }
+
+ /**
+ * Creates the fire.
+ */
+ public void createFire() {
+ if (!groundItem.isActive()) {
+ return;
+ }
+ // GameObject originalOnSpot =
+ // RegionManager.getObject(player.getLocation());
+ final Scenery object = new Scenery(fire.getFireId(), player.getLocation());
+ SceneryBuilder.add(object, fire.getLife(), getAsh(player, fire, object));
+ GroundItemManager.destroy(groundItem);
+ player.moveStep();
+ player.faceLocation(object.getFaceLocation(player.getLocation()));
+ player.getSkills().addExperience(Skills.FIREMAKING,fire.getXp());
+
+ int playerRegion = player.getViewport().getRegion().getId();
+
+ setLastFire();
+ player.dispatch(new LitFireEvent(fire.getLogId()));
+ }
+
+ @Override
+ public void message(int type) {
+ String name = node.getId() == Items.JOGRE_BONES_3125 ? "bones" : "logs";
+ switch (type) {
+ case 0:
+ player.getPacketDispatch().sendMessage("You attempt to light the " + name + "..");
+ break;
+ case 1:
+ player.getPacketDispatch().sendMessage("The fire catches and the " + name + " begin to burn.");
+ break;
+ }
+ }
+
+ /**
+ * Gets the last firemake.
+ * @return the tick.
+ */
+ public int getLastFire() {
+ return player.getAttribute("last-firemake", 0);
+ }
+
+ /**
+ * Sets the last fire.
+ */
+ public void setLastFire() {
+ player.setAttribute("last-firemake", GameWorld.getTicks() + 2);
+ }
+
+ /**
+ * Gets the ground item ash.
+ * @param object the object.
+ * @return {@code GroundItem} the itemm.
+ */
+ public static GroundItem getAsh(final Player player, Log fire, final Scenery object) {
+ final GroundItem ash = new GroundItem(new Item(Items.ASHES_592), object.getLocation(), player);
+ ash.setDecayTime(fire.getLife() + 200);
+ return ash;
+ }
+
+ /**
+ * Checks if the player gets rewarded.
+ * @return {@code True} if so.
+ */
+ private boolean success() {
+ int level = 1 + player.getSkills().getLevel(Skills.FIREMAKING);
+ double req = fire.getLevel();
+ double successChance = Math.ceil((level * 50 - req * 15) / req / 3 * 4);
+ int roll = RandomFunction.random(99);
+ if (successChance >= roll) {
+ return true;
+ }
+ return false;
+ }
+}
diff --git a/Server/src/main/java/core/game/node/entity/skill/firemaking/LightLogPlugin.java b/Server/src/main/content/global/skill/firemaking/LightLogPlugin.java
similarity index 94%
rename from Server/src/main/java/core/game/node/entity/skill/firemaking/LightLogPlugin.java
rename to Server/src/main/content/global/skill/firemaking/LightLogPlugin.java
index 11f9a0e95..db524a6b7 100644
--- a/Server/src/main/java/core/game/node/entity/skill/firemaking/LightLogPlugin.java
+++ b/Server/src/main/content/global/skill/firemaking/LightLogPlugin.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.firemaking;
+package content.global.skill.firemaking;
import core.cache.def.impl.ItemDefinition;
import core.game.interaction.OptionHandler;
diff --git a/Server/src/main/java/core/game/node/entity/skill/firemaking/Log.java b/Server/src/main/content/global/skill/firemaking/Log.java
similarity index 97%
rename from Server/src/main/java/core/game/node/entity/skill/firemaking/Log.java
rename to Server/src/main/content/global/skill/firemaking/Log.java
index 920ca0c5b..59c7b82cb 100644
--- a/Server/src/main/java/core/game/node/entity/skill/firemaking/Log.java
+++ b/Server/src/main/content/global/skill/firemaking/Log.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.firemaking;
+package content.global.skill.firemaking;
import java.util.HashMap;
diff --git a/Server/src/main/content/global/skill/fishing/Fish.kt b/Server/src/main/content/global/skill/fishing/Fish.kt
new file mode 100644
index 000000000..8ccc67f24
--- /dev/null
+++ b/Server/src/main/content/global/skill/fishing/Fish.kt
@@ -0,0 +1,67 @@
+package content.global.skill.fishing
+
+import core.api.asItem
+import core.game.node.item.Item
+import org.rs09.consts.Items
+
+enum class Fish(val id: Int, val level: Int, val experience: Double, val lowChance: Double, val highChance: Double) {
+ CRAYFISH(Items.RAW_CRAYFISH_13435, 1, 10.0, 0.15, 0.5),
+ SHRIMP(Items.RAW_SHRIMPS_317, 1, 10.0, 0.191, 0.5),
+ SARDINE(Items.RAW_SARDINE_327, 5, 20.0, 0.148, 0.374),
+ KARAMBWANJI(Items.RAW_KARAMBWANJI_3150, 5, 5.0, 0.4, 0.98),
+ HERRING(Items.RAW_HERRING_345, 10, 30.0, 0.129, 0.504),
+ ANCHOVIE(Items.RAW_ANCHOVIES_321, 15, 40.0, 0.098, 0.5),
+ MACKEREL(Items.RAW_MACKEREL_353, 16, 20.0, 0.055, 0.258),
+ TROUT(Items.RAW_TROUT_335, 20, 50.0, 0.246, 0.468),
+ COD(Items.RAW_COD_341, 23, 45.0, 0.063, 0.219),
+ PIKE(Items.RAW_PIKE_349, 25, 60.0, 0.14, 0.379),
+ SLIMY_EEL(Items.SLIMY_EEL_3379, 28, 65.0, 0.117, 0.216),
+ SALMON(Items.RAW_SALMON_331, 30, 70.0, 0.156, 0.378),
+ FROG_SPAWN(Items.FROG_SPAWN_5004, 33, 75.0, 0.164, 0.379),
+ TUNA(Items.RAW_TUNA_359, 35, 80.0, 0.109, 0.205),
+ RAINBOW_FISH(Items.RAW_RAINBOW_FISH_10138, 38, 80.0, 0.113, 0.254),
+ CAVE_EEL(Items.RAW_CAVE_EEL_5001, 38, 80.0, 0.145, 0.316),
+ LOBSTER(Items.RAW_LOBSTER_377, 40, 90.0, 0.16, 0.375),
+ BASS(Items.RAW_BASS_363, 46, 100.0, 0.078, 0.16),
+ SWORDFISH(Items.RAW_SWORDFISH_371, 50, 100.0, 0.105, 0.191),
+ LAVA_EEL(Items.RAW_LAVA_EEL_2148, 53, 60.0, 0.227, 0.379),
+ MONKFISH(Items.RAW_MONKFISH_7944, 62, 120.0, 0.293, 0.356),
+ KARAMBWAN(Items.RAW_KARAMBWAN_3142, 65, 105.0, 0.414, 0.629),
+ SHARK(Items.RAW_SHARK_383, 76, 110.0, 0.121, 0.16),
+ SEA_TURTLE(Items.RAW_SEA_TURTLE_395, 79, 38.0, 0.0, 0.0),
+ MANTA_RAY(Items.RAW_MANTA_RAY_389, 81, 46.0, 0.0, 0.0),
+ SEAWEED(Items.SEAWEED_401, 16, 1.0, 0.63, 0.219),
+ CASKET(Items.CASKET_405, 16, 10.0, 0.63, 0.219),
+ OYSTER(Items.OYSTER_407, 16, 10.0, 0.63, 0.219);
+
+ companion object {
+ val fishMap: HashMap
= HashMap()
+ val bigFishMap: HashMap = HashMap()
+ init {
+ for(fish in values()) {
+ fishMap[fish.id] = fish
+ }
+ bigFishMap[Fish.BASS] = Items.BIG_BASS_7989
+ bigFishMap[Fish.SWORDFISH] = Items.BIG_SWORDFISH_7991
+ bigFishMap[Fish.SHARK] = Items.BIG_SHARK_7993
+ }
+
+ @JvmStatic
+ fun forItem(item: Item) : Fish? {
+ return fishMap[item.id]
+ }
+
+ @JvmStatic
+ fun getBigFish(fish: Fish) : Int? {
+ return bigFishMap[fish]
+ }
+ }
+
+ fun getSuccessChance(level: Int): Double {
+ return (level.toDouble() - 1.0) * ((highChance - lowChance) / (99.0 - 1.0)) + lowChance
+ }
+
+ fun getItem() : Item {
+ return this.id.asItem()
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/fishing/FishSpots.kt b/Server/src/main/content/global/skill/fishing/FishSpots.kt
new file mode 100644
index 000000000..937c555c6
--- /dev/null
+++ b/Server/src/main/content/global/skill/fishing/FishSpots.kt
@@ -0,0 +1,224 @@
+package content.global.skill.fishing
+
+import core.game.world.map.Location
+
+enum class FishSpots(vararg val locations: Location) {
+ CATHERBY(
+ Location(2844, 3429, 0),
+ Location(2839, 3431, 0),
+ Location(2836, 3431, 0),
+ Location(2837, 3431, 0),
+ Location(2838, 3431, 0),
+ Location(2839, 3431, 0),
+ Location(2840, 3431, 0),
+ Location(2844, 3429, 0),
+ Location(2845, 3429, 0),
+ Location(2846, 3429, 0),
+ Location(2853, 3423, 0),
+ Location(2854, 3423, 0),
+ Location(2855, 3423, 0),
+ Location(2859, 3426, 0),
+ Location(2860, 3426, 0)
+ ),
+ ENTRANA(
+ Location(2842, 3359, 0),
+ Location(2843, 3359, 0),
+ Location(2844, 3359, 0),
+ Location(2847, 3361, 0),
+ Location(2848, 3361, 0),
+ Location(2849, 3361, 0),
+ Location(2850, 3361, 0)
+ ),
+ ENTRANA_PLATFORM(
+ Location(2879, 3334, 0),
+ Location(2879, 3335, 0),
+ Location(2879, 3338, 0),
+ Location(2879, 3339, 0),
+ Location(2877, 3342, 0),
+ Location(2876, 3342, 0),
+ Location(2875, 3342, 0),
+ Location(2875, 3331, 0),
+ Location(2876, 3331, 0),
+ Location(2877, 3331, 0)
+ ),
+ SEERS(
+ Location(2714, 3533, 0),
+ Location(2714, 3532, 0),
+ Location(2726, 3524, 0),
+ Location(2727, 3524, 0),
+ Location(2728, 3524, 0)
+ ),
+ DRAYNOR(
+ Location(3085, 3230, 0),
+ Location(3086, 3227, 0)
+ ),
+ BARBARIAN(
+ Location(3110, 3432, 0),
+ Location(3110, 3433, 0),
+ Location(3110, 3434, 0),
+ Location(3104, 3425, 0),
+ Location(3104, 3424, 0)
+ ),
+ LUMBRIDGE(
+ Location(3239, 3243, 0),
+ Location(3239, 3241, 0),
+ Location(3239, 3242, 0),
+ Location(3238, 3251, 0),
+ Location(3238, 3252, 0),
+ Location(3238, 3253, 0)
+ ),
+ LUMBRIDGE_SWAMP(
+ Location(3242, 3143, 0),
+ Location(3242, 3148, 0),
+ Location(3241, 3148, 0),
+ Location(3240, 3147, 0),
+ Location(3240, 3146, 0),
+ Location(3244, 3150, 0),
+ Location(3245, 3152, 0),
+ Location(3246, 3155, 0),
+ Location(3246, 3156, 0),
+ Location(3239, 3241, 0)
+ ),
+ LUMBRIDGE_MARSH(
+ Location(3169, 3266, 0),
+ Location(3168, 3266, 0),
+ Location(3174, 3274, 0),
+ Location(3173, 3274, 0)
+ ),
+ ALKHARID(
+ Location(3267, 3148, 0),
+ Location(3268, 3147, 0),
+ Location(3276, 3140, 0),
+ Location(3275, 3140, 0)
+ ),
+ FISHING_GUILD(
+ Location(2612, 3411, 0),
+ Location(2602, 3423, 0),
+ Location(2602, 3411, 0),
+ Location(2602, 3412, 0),
+ Location(2602, 3414, 0),
+ Location(2602, 3415, 0),
+ Location(2603, 3417, 0),
+ Location(2604, 3417, 0),
+ Location(2605, 3416, 0),
+ Location(2606, 3416, 0),
+ Location(2607, 3416, 0),
+ Location(2608, 3416, 0),
+ Location(2609, 3416, 0),
+ Location(2610, 3416, 0),
+ Location(2611, 3416, 0),
+ Location(2612, 3415, 0),
+ Location(2612, 3414, 0),
+ Location(2607, 3410, 0),
+ Location(2606, 3410, 0),
+ Location(2605, 3410, 0),
+ Location(2599, 3419, 0),
+ Location(2600, 3419, 0),
+ Location(2602, 3419, 0),
+ Location(2603, 3419, 0),
+ Location(2604, 3419, 0),
+ Location(2605, 3420, 0),
+ Location(2605, 3421, 0),
+ Location(2604, 3422, 0),
+ Location(2603, 3422, 0),
+ Location(2602, 3422, 0),
+ Location(2601, 3422, 0),
+ Location(2605, 3424, 0),
+ Location(2605, 3425, 0),
+ Location(2602, 3426, 0),
+ Location(2603, 3426, 0),
+ Location(2604, 3426, 0)
+ ),
+ GNOME(
+ Location(2388, 3424, 0),
+ Location(2390, 3422, 0),
+ Location(2391, 3421, 0),
+ Location(2382, 3413, 0),
+ Location(2382, 3414, 0),
+ Location(2382, 3415, 0)
+ ),
+ CASTLEWAR(
+ Location(2465, 3156, 0),
+ Location(2464, 3155, 0),
+ Location(2468, 3157, 0),
+ Location(2469, 3157, 0),
+ Location(2471, 3158, 0),
+ Location(2472, 3156, 0),
+ Location(2462, 3145, 0),
+ Location(2461, 3150, 0),
+ Location(2461, 3151, 0)
+ ),
+ SHILO(
+ Location(2460, 3144, 0),
+ Location(2461, 3150, 0),
+ Location(2461, 3151, 0),
+ Location(2853, 2977, 0),
+ Location(2854, 2977, 0),
+ Location(2855, 2977, 0),
+ Location(2856, 2977, 0),
+ Location(2858, 2976, 0),
+ Location(2859, 2976, 0),
+ Location(2860, 2976, 0),
+ Location(2863, 2975, 0),
+ Location(2863, 2975, 0),
+ Location(2864, 2975, 0),
+ Location(2865, 2972, 0),
+ Location(2860, 2972, 0),
+ Location(2855, 2974, 0),
+ Location(2852, 2973, 0)
+ ),
+ KARAMJA(
+ Location(2923, 3178, 0),
+ Location(2923, 3179, 0),
+ Location(2923, 3180, 0),
+ Location(2924, 3181, 0),
+ Location(2925, 3181, 0),
+ Location(2926, 3180, 0),
+ Location(2926, 3179, 0),
+ Location(2926, 3178, 0),
+ Location(2926, 3177, 0),
+ Location(2926, 3176, 0)
+ ),
+ PISCATORIS(
+ Location(2341, 3702, 0),
+ Location(2342, 3702, 0),
+ Location(2343, 3702, 0),
+ Location(2344, 3702, 0),
+ Location(2345, 3702, 0),
+ Location(2346, 3702, 0),
+ Location(2347, 3702, 0),
+ Location(2349, 3702, 0),
+ Location(2352, 3703, 0)
+ ),
+ TUTORIAL_ISLAND(
+ Location(3101, 3092, 0)
+ ),
+ WILDERNESS_AREA(
+ Location(3187, 3927, 0),
+ Location(3185, 3926, 0),
+ Location(3183, 3926, 0),
+ Location(3181, 3926, 0)
+ );
+
+ companion object {
+ private val locs: ArrayList = ArrayList()
+ private val locMap: HashMap = HashMap()
+ init {
+ for(value in values()) {
+ for(loc in value.locations) {
+ locMap[loc] = value
+ locs.add(loc)
+ }
+ }
+ }
+
+ @JvmStatic
+ fun forLocation(loc: Location): FishSpots? {
+ return if (locMap[loc] == null) {
+ TUTORIAL_ISLAND
+ } else {
+ locMap[loc]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/fishing/FishingNPC.kt b/Server/src/main/content/global/skill/fishing/FishingNPC.kt
new file mode 100644
index 000000000..2af0ba8e6
--- /dev/null
+++ b/Server/src/main/content/global/skill/fishing/FishingNPC.kt
@@ -0,0 +1,55 @@
+package content.global.skill.fishing
+
+import core.api.*
+import core.game.node.entity.npc.NPC
+import core.game.node.entity.npc.NPCBehavior
+import core.tools.RandomFunction
+
+private val fishingSpots = FishingSpot.getAllIds()
+class FishingNPC : NPCBehavior(*fishingSpots) {
+
+ override fun onCreation(self: NPC) {
+ setAttribute(self, "fishing:spot", FishSpots.forLocation(self.location))
+ setAttribute(self, "fishing:switchdelay", 0)
+ }
+
+ override fun tick(self: NPC): Boolean {
+ if(getSpot(self) == null) {
+ return false
+ }
+ if(getAttribute(self, "fishing:switchdelay", 0) < getWorldTicks()) {
+ moveSpot(self)
+ return false
+ }
+ return false
+ }
+
+ private fun moveSpot(self: NPC) {
+ when (val spot = getSpot(self)) {
+ null -> {
+ self.isInvisible = !self.isInvisible
+ setAttribute(self, "fishing:switchdelay", getWorldTicks() + getRandomDelay())
+ return
+ }
+ FishSpots.TUTORIAL_ISLAND -> {
+ return
+ }
+ else -> {
+ val randLoc = spot.locations[RandomFunction.random(spot.locations.size)]
+ if(findLocalNPCs(randLoc, 0).isEmpty()) {
+ teleport(self, randLoc)
+ }
+ setAttribute(self, "fishing:switchdelay", getWorldTicks() + getRandomDelay())
+ }
+ }
+ }
+
+ private fun getRandomDelay(): Int {
+ return RandomFunction.random(200, 390)
+ }
+
+ private fun getSpot(npc: NPC): FishSpots? {
+ return getAttribute(npc, "fishing:spot", null)
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/fishing/FishingOption.kt b/Server/src/main/content/global/skill/fishing/FishingOption.kt
new file mode 100644
index 000000000..5b304893c
--- /dev/null
+++ b/Server/src/main/content/global/skill/fishing/FishingOption.kt
@@ -0,0 +1,104 @@
+package content.global.skill.fishing
+
+import core.api.*
+import core.game.node.entity.player.Player
+import core.game.node.entity.skill.Skills
+import core.game.world.update.flag.context.Animation
+import core.tools.RandomFunction
+import org.rs09.consts.Items
+
+enum class FishingOption(val tool: Int, val level: Int, val animation: Animation, val bait: IntArray?, val option: String, vararg val fish: Fish) {
+ CRAYFISH_CAGE(Items.CRAYFISH_CAGE_13431, 1, Animation(10009), null, "cage", Fish.CRAYFISH),
+ SMALL_NET(Items.SMALL_FISHING_NET_303, 1, Animation(621), null, "net", Fish.SHRIMP, Fish.ANCHOVIE),
+ BAIT(Items.FISHING_ROD_307, 5, Animation(622), intArrayOf(Items.FISHING_BAIT_313), "bait", Fish.SARDINE, Fish.HERRING),
+ LURE(Items.FLY_FISHING_ROD_309, 20, Animation(622), intArrayOf(Items.FEATHER_314, Items.STRIPY_FEATHER_10087, Items.RED_FEATHER_10088, Items.BLUE_FEATHER_10089, Items.YELLOW_FEATHER_10090, Items.ORANGE_FEATHER_10091), "lure", Fish.TROUT, Fish.SALMON, Fish.RAINBOW_FISH),
+ PIKE_BAIT(Items.FISHING_ROD_307, 25, Animation(622), intArrayOf(Items.FISHING_BAIT_313), "bait", Fish.PIKE),
+ LOBSTER_CAGE(Items.LOBSTER_POT_301, 40, Animation(619), null, "cage", Fish.LOBSTER),
+ HARPOON(Items.HARPOON_311, 35, Animation(618), null, "harpoon", Fish.TUNA, Fish.SWORDFISH),
+ BARB_HARPOON(Items.BARB_TAIL_HARPOON_10129, 35, Animation(618), null, "harpoon", Fish.TUNA, Fish.SWORDFISH),
+ BIG_NET(Items.BIG_FISHING_NET_305, 16, Animation(620), null, "net", Fish.MACKEREL, Fish.COD, Fish.BASS, Fish.SEAWEED),
+ SHARK_HARPOON(Items.HARPOON_311, 76, Animation(618), null, "harpoon", Fish.SHARK),
+ MONKFISH_NET(Items.SMALL_FISHING_NET_303, 62, Animation(621), null, "net", Fish.MONKFISH),
+ MORTMYRE_ROD(Items.FISHING_ROD_307, 5, Animation(622), intArrayOf(Items.FISHING_BAIT_313), "bait", Fish.SLIMY_EEL),
+ LUMBDSWAMP_ROD(Items.FISHING_ROD_307, 5, Animation(622), intArrayOf(Items.FISHING_BAIT_313), "bait", Fish.SLIMY_EEL, Fish.CAVE_EEL),
+ LUMBDSWAMP_NET(Items.SMALL_FISHING_NET_303, 1, Animation(621), null, "net", Fish.FROG_SPAWN),
+ KBWANJI_NET(Items.SMALL_FISHING_NET_303, 5, Animation(621), null, "net", Fish.KARAMBWANJI),
+ KARAMBWAN_VES(Items.KARAMBWAN_VESSEL_3157, 65, Animation(1193), intArrayOf((Items.RAW_KARAMBWANJI_3150)), "fish", Fish.KARAMBWAN),
+ OILY_FISHING_ROD(Items.OILY_FISHING_ROD_1585, 53, Animation(622), intArrayOf(Items.FISHING_BAIT_313), "bait", Fish.LAVA_EEL);
+
+ companion object {
+ private val nameMap: HashMap = HashMap()
+
+ init {
+ for(value in values()) {
+ nameMap[value.option] = value
+ }
+ }
+
+ fun forName(opName: String): FishingOption? {
+ return nameMap[opName]
+ }
+ }
+
+ fun rollFish(player: Player): Fish? {
+ if(this == BIG_NET) {
+ when(RandomFunction.randomize(100)) {
+ 0 -> return Fish.OYSTER
+ 50 -> return Fish.CASKET
+ 90 -> return Fish.SEAWEED
+ }
+ }
+ val vlvl = getDynLevel(player, Skills.FISHING)
+ val ilvl = vlvl + player.familiarManager.getBoost(Skills.FISHING)
+ for(f in fish) {
+ if(f.level > vlvl) {
+ continue
+ }
+ if(this == LURE && inInventory(player, Items.STRIPY_FEATHER_10087) != (f == Fish.RAINBOW_FISH)) {
+ continue
+ }
+ val chance = f.getSuccessChance(ilvl)
+ if(RandomFunction.random(0.0, 1.0) < chance) {
+ return f
+ }
+ }
+ return null
+ }
+
+ fun getBaitName(): String {
+ if(bait != null && bait.isNotEmpty()) {
+ return getItemName(bait[0])
+ }
+ return "none"
+ }
+
+ fun hasBait(player: Player): Boolean {
+ return if(bait == null) true else {
+ var anyBait = false
+ for(b in bait) {
+ anyBait = anyBait || inInventory(player, b)
+ }
+ anyBait
+ }
+ }
+
+ fun removeBait(player: Player): Boolean {
+ return if (bait == null) {
+ true
+ } else {
+ for (i in bait.size downTo 1) {
+ if (removeItem(player, bait[i - 1], Container.INVENTORY)) {
+ return true
+ }
+ }
+ false
+ }
+ }
+
+ fun getStartMessage(): String {
+ return if(option == "net")
+ "You cast out your net..."
+ else
+ "You attempt to catch a fish."
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/content/global/skill/fishing/FishingSpot.kt b/Server/src/main/content/global/skill/fishing/FishingSpot.kt
new file mode 100644
index 000000000..e60dcb98d
--- /dev/null
+++ b/Server/src/main/content/global/skill/fishing/FishingSpot.kt
@@ -0,0 +1,165 @@
+package content.global.skill.fishing
+
+import org.rs09.consts.NPCs
+
+enum class FishingSpot(val ids: IntArray, vararg val options: FishingOption) {
+ NET_BAIT(
+ intArrayOf(
+ NPCs.FISHING_SPOT_952,
+ NPCs.FISHING_SPOT_316,
+ NPCs.FISHING_SPOT_319,
+ NPCs.FISHING_SPOT_320,
+ NPCs.FISHING_SPOT_323,
+ NPCs.FISHING_SPOT_325,
+ NPCs.FISHING_SPOT_326,
+ NPCs.FISHING_SPOT_327,
+ NPCs.FISHING_SPOT_330,
+ NPCs.FISHING_SPOT_332,
+ NPCs.FISHING_SPOT_404,
+ NPCs.FISHING_SPOT_1331,
+ NPCs.FISHING_SPOT_2724,
+ NPCs.FISHING_SPOT_4908,
+ NPCs.FISHING_SPOT_7045
+ ),
+ FishingOption.SMALL_NET,
+ FishingOption.BAIT
+ ),
+ CAGE(
+ intArrayOf(
+ NPCs.FISHING_SPOT_6267,
+ NPCs.FISHING_SPOT_6996,
+ NPCs.FISHING_SPOT_7862,
+ NPCs.FISHING_SPOT_7863,
+ NPCs.FISHING_SPOT_7864
+ ),
+ FishingOption.CRAYFISH_CAGE
+ ),
+ LURE_BAIT(
+ intArrayOf(
+ NPCs.FISHING_SPOT_309,
+ NPCs.FISHING_SPOT_310,
+ NPCs.FISHING_SPOT_311,
+ NPCs.FISHING_SPOT_314,
+ NPCs.FISHING_SPOT_315,
+ NPCs.FISHING_SPOT_317,
+ NPCs.FISHING_SPOT_318,
+ NPCs.FISHING_SPOT_328,
+ NPCs.FISHING_SPOT_329,
+ NPCs.FISHING_SPOT_331,
+ NPCs.FISHING_SPOT_403,
+ NPCs.FISHING_SPOT_927,
+ NPCs.FISHING_SPOT_1189,
+ NPCs.FISHING_SPOT_1190,
+ NPCs.FISHING_SPOT_3019
+ ),
+ FishingOption.LURE,
+ FishingOption.PIKE_BAIT
+ ),
+ CAGE_HARPOON(
+ intArrayOf(
+ NPCs.FISHING_SPOT_312,
+ NPCs.FISHING_SPOT_321,
+ NPCs.FISHING_SPOT_324,
+ NPCs.FISHING_SPOT_333,
+ NPCs.FISHING_SPOT_405,
+ NPCs.FISHING_SPOT_1332,
+ NPCs.FISHING_SPOT_1399,
+ NPCs.FISHING_SPOT_3804,
+ NPCs.FISHING_SPOT_5470,
+ NPCs.FISHING_SPOT_7046
+ ),
+ FishingOption.LOBSTER_CAGE,
+ FishingOption.HARPOON
+ ),
+ NET_HARPOON(
+ intArrayOf(
+ NPCs.FISHING_SPOT_313,
+ NPCs.FISHING_SPOT_322,
+ NPCs.FISHING_SPOT_334,
+ NPCs.FISHING_SPOT_406,
+ NPCs.FISHING_SPOT_1191,
+ NPCs.FISHING_SPOT_1333,
+ NPCs.FISHING_SPOT_1405,
+ NPCs.FISHING_SPOT_1406,
+ NPCs.FISHING_SPOT_3574,
+ NPCs.FISHING_SPOT_3575,
+ NPCs.FISHING_SPOT_5471,
+ NPCs.FISHING_SPOT_7044
+ ),
+ FishingOption.BIG_NET,
+ FishingOption.SHARK_HARPOON
+ ),
+ HARPOON_NET(
+ intArrayOf(
+ NPCs.FISHING_SPOT_3848,
+ NPCs.FISHING_SPOT_3849
+ ),
+ FishingOption.HARPOON,
+ FishingOption.MONKFISH_NET
+ ),
+ SPOT_MORTMYRE(
+ intArrayOf(
+ NPCs.FISHING_SPOT_5748,
+ NPCs.FISHING_SPOT_5749
+ ),
+ FishingOption.MORTMYRE_ROD
+ ),
+ SPOT_LUMDSWAMP(
+ intArrayOf(
+ NPCs.FISHING_SPOT_2067,
+ NPCs.FISHING_SPOT_2068
+ ),
+ FishingOption.LUMBDSWAMP_NET,
+ FishingOption.LUMBDSWAMP_ROD
+ ),
+ SPOT_KBWANJI(
+ intArrayOf(
+ NPCs.FISHING_SPOT_1174
+ ),
+ FishingOption.KBWANJI_NET
+ ),
+ SPOT_KARAMBWAN(
+ intArrayOf(
+ NPCs.FISHING_SPOT_1177
+ ),
+ FishingOption.KARAMBWAN_VES
+ ),
+ BAIT_EELS(
+ intArrayOf(
+ NPCs.FISHING_SPOT_800
+ ),
+ FishingOption.OILY_FISHING_ROD
+ );
+
+ companion object {
+ private val spotMap: HashMap = HashMap()
+ private val array: ArrayList = ArrayList()
+
+ init {
+ val spots = values()
+ for(spot in spots) {
+ for(id in spot.ids) {
+ spotMap[id] = spot
+ array.add(id)
+ }
+ }
+ }
+
+ fun forId(npcID: Int) : FishingSpot? {
+ return spotMap[npcID]
+ }
+
+ fun getAllIds() : IntArray {
+ return array.toIntArray()
+ }
+ }
+
+ fun getOptionByName(op: String) : FishingOption? {
+ for(o in options) {
+ if(o.option == op.lowercase()) {
+ return o
+ }
+ }
+ return null
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/fletching/Fletching.java b/Server/src/main/content/global/skill/fletching/Fletching.java
similarity index 88%
rename from Server/src/main/java/core/game/node/entity/skill/fletching/Fletching.java
rename to Server/src/main/content/global/skill/fletching/Fletching.java
index 55c26e67d..15fda63c1 100644
--- a/Server/src/main/java/core/game/node/entity/skill/fletching/Fletching.java
+++ b/Server/src/main/content/global/skill/fletching/Fletching.java
@@ -1,4 +1,4 @@
-package core.game.node.entity.skill.fletching;
+package content.global.skill.fletching;
import core.game.node.item.Item;
import core.game.world.update.flag.context.Animation;
@@ -97,7 +97,7 @@ public class Fletching {
}
public enum Limb {
WOODEN_STOCK(9440,9420,9454,9, 12, new Animation(4436)),
- OAK_STOCK(9442,9422,9176,24, 32, new Animation(4437)),
+ OAK_STOCK(9442,9422,9456,24, 32, new Animation(4437)),
WILLOW_STOCK(9444,9423,9457,39, 44, new Animation(4438)),
TEAK_STOCK(9446,9425,9459,46, 54, new Animation(4439)),
MAPLE_STOCK(9448,9427,9461,54, 64, new Animation(4440)),
@@ -132,6 +132,7 @@ public class Fletching {
YEW_LONGBOW((byte) 1,66,855,70, 75, new Animation(6688)),
MAGIC_SHORTBOW((byte) 1,72,861,80, 83.3, new Animation(6683)),
MAGIC_LONGBOW((byte) 1,70,859,85, 91.5, new Animation(6689)),
+ OGRE_COMP_BOW((byte) 1,4825,4827,30, 45, new Animation(-1)),
//crossbows
BRONZE_CBOW((byte) 2,9454,9174,9, 6, new Animation(6671)),
@@ -190,13 +191,13 @@ public class Fletching {
}
public enum ArrowHeads {
- BRONZE_ARROW(39, 882, 1, 2.6),
- IRON_ARROW(40, 884, 15, 3.8),
- STEEL_ARROW(41, 886, 30, 6.3),
- MITHRIL_ARROW(42, 888, 45, 8.8),
- ADAMANT_ARROW(43, 890, 60, 11.3),
- RUNE_ARROW(44, 892, 75, 13.8),
- DRAGON_ARROW(11237, 11212, 90, 16.3),
+ BRONZE_ARROW(39, 882, 1, 1.3),
+ IRON_ARROW(40, 884, 15, 2.5),
+ STEEL_ARROW(41, 886, 30, 5),
+ MITHRIL_ARROW(42, 888, 45, 7.5),
+ ADAMANT_ARROW(43, 890, 60, 10),
+ RUNE_ARROW(44, 892, 75, 12.5),
+ DRAGON_ARROW(11237, 11212, 90, 15),
BROAD_ARROW(13278, 4160, 52, 15);
public int unfinished,finished,level;
@@ -265,12 +266,13 @@ public class Fletching {
}
}
private enum Items{
- STANDARD(1511,FletchingItems.ARROW_SHAFT, FletchingItems.SHORT_BOW, FletchingItems.LONG_BOW, FletchingItems.WOODEN_STOCK),
- OAK(1521, FletchingItems.OAK_SHORTBOW, FletchingItems.OAK_LONGBOW, FletchingItems.OAK_STOCK),
- WILLOW(1519, FletchingItems.WILLOW_SHORTBOW, FletchingItems.WILLOW_LONGBOW, FletchingItems.WILLOW_STOCK),
- MAPLE(1517, FletchingItems.MAPLE_SHORTOW, FletchingItems.MAPLE_LONGBOW, FletchingItems.MAPLE_STOCK),
- YEW(1515, FletchingItems.YEW_SHORTBOW, FletchingItems.YEW_LONGBOW, FletchingItems.YEW_STOCK),
- MAGIC(1513, FletchingItems.MAGIC_SHORTBOW, FletchingItems.MAGIC_LONGBOW),
+ STANDARD(1511, FletchingItems.ARROW_SHAFT, FletchingItems.SHORT_BOW, FletchingItems.LONG_BOW, FletchingItems.WOODEN_STOCK),
+ ACHEY(2862, FletchingItems.OGRE_ARROW_SHAFT, FletchingItems.OGRE_COMP_BOW),
+ OAK(1521, FletchingItems.OAK_ARROW_SHAFT, FletchingItems.OAK_SHORTBOW, FletchingItems.OAK_LONGBOW, FletchingItems.OAK_STOCK),
+ WILLOW(1519, FletchingItems.WILLOW_ARROW_SHAFT, FletchingItems.WILLOW_SHORTBOW, FletchingItems.WILLOW_LONGBOW, FletchingItems.WILLOW_STOCK),
+ MAPLE(1517, FletchingItems.MAPLE_ARROW_SHAFT, FletchingItems.MAPLE_SHORTOW, FletchingItems.MAPLE_LONGBOW, FletchingItems.MAPLE_STOCK),
+ YEW(1515, FletchingItems.YEW_ARROW_SHAFT, FletchingItems.YEW_SHORTBOW, FletchingItems.YEW_LONGBOW, FletchingItems.YEW_STOCK),
+ MAGIC(1513, FletchingItems.MAGIC_ARROW_SHAFT, FletchingItems.MAGIC_SHORTBOW, FletchingItems.MAGIC_LONGBOW),
TEAK(6333, FletchingItems.TEAK_STOCK),
MAHOGANY(6332, FletchingItems.MAHOGANY_STOCK);
@@ -300,28 +302,37 @@ public class Fletching {
SHORT_BOW(50, 5, 5, 1),
LONG_BOW(48, 10, 10, 1),
WOODEN_STOCK(9440, 6, 9, 1),
+
+ //Achey logs
+ OGRE_ARROW_SHAFT(2864, 6.4, 5, 4),
+ OGRE_COMP_BOW(4825, 45, 30, 1),
//Oak logs
+ OAK_ARROW_SHAFT(52, 10, 15, 30),
OAK_SHORTBOW(54, 16.5, 20, 1),
OAK_LONGBOW(56,25,25,1),
OAK_STOCK(9442, 16, 24, 1),
//Willow logs
+ WILLOW_ARROW_SHAFT(52, 15, 30, 45),
WILLOW_SHORTBOW(60, 33.3, 35, 1),
WILLOW_LONGBOW(58, 41.5, 40, 1),
WILLOW_STOCK(9444, 22, 39, 1),
//Maple logs
+ MAPLE_ARROW_SHAFT(52, 20, 45, 60),
MAPLE_SHORTOW(64, 50, 50, 1),
MAPLE_LONGBOW(62, 58.3, 55, 1),
MAPLE_STOCK(9448, 32, 54, 1),
//Yew logs
+ YEW_ARROW_SHAFT(52, 25, 60, 75),
YEW_SHORTBOW(68, 67.5, 65, 1),
YEW_LONGBOW(66, 75, 70, 1),
YEW_STOCK(9452, 50, 69, 1),
//Magic logs
+ MAGIC_ARROW_SHAFT(52, 30, 75, 90),
MAGIC_SHORTBOW(72, 83.3, 80,1),
MAGIC_LONGBOW(70, 91.5, 85, 1),
diff --git a/Server/src/main/content/global/skill/fletching/FletchingListeners.kt b/Server/src/main/content/global/skill/fletching/FletchingListeners.kt
new file mode 100644
index 000000000..464a0b6ff
--- /dev/null
+++ b/Server/src/main/content/global/skill/fletching/FletchingListeners.kt
@@ -0,0 +1,197 @@
+package content.global.skill.fletching
+
+import content.data.Quests
+import content.global.skill.fletching.items.arrow.ArrowHeadPulse
+import content.global.skill.fletching.items.arrow.HeadlessArrowPulse
+import content.global.skill.fletching.items.arrow.HeadlessOgreArrowPulse
+import content.global.skill.fletching.items.bow.StringPulse
+import content.global.skill.fletching.items.crossbow.LimbPulse
+import core.api.*
+import core.game.node.entity.skill.Skills
+import core.game.node.item.Item
+import core.net.packet.PacketRepository
+import core.net.packet.context.ChildPositionContext
+import core.net.packet.out.RepositionChild
+import org.rs09.consts.Components
+import org.rs09.consts.Items
+import org.rs09.consts.Items.BLUE_FEATHER_10089
+import org.rs09.consts.Items.FEATHER_314
+import org.rs09.consts.Items.ORANGE_FEATHER_10091
+import org.rs09.consts.Items.RED_FEATHER_10088
+import org.rs09.consts.Items.STRIPY_FEATHER_10087
+import org.rs09.consts.Items.YELLOW_FEATHER_10090
+import core.game.dialogue.SkillDialogueHandler
+import core.game.interaction.InteractionListener
+import core.game.interaction.IntType
+import core.game.node.entity.player.Player
+
+class FletchingListeners : InteractionListener {
+
+ val LIMBIDs = Fletching.Limb.values().map(Fletching.Limb::limb).toIntArray()
+ val STOCKIDs = Fletching.Limb.values().map(Fletching.Limb::stock).toIntArray()
+ val MITHRIL_BOLT = Items.MITHRIL_BOLTS_9142
+ val MITH_GRAPPLE_TIP = Items.MITH_GRAPPLE_TIP_9416
+ val ROPE = Items.ROPE_954
+ val MITH_GRAPPLE = Items.MITH_GRAPPLE_9418
+ val ROPE_GRAPPLE = Items.MITH_GRAPPLE_9419
+ val ARROW_SHAFT = Items.ARROW_SHAFT_52
+ val OGRE_ARROW_SHAFT = Items.OGRE_ARROW_SHAFT_2864
+ val FLETCHED_SHAFT = Items.HEADLESS_ARROW_53
+ val FLIGHTED_OGRE_ARROW = Items.FLIGHTED_OGRE_ARROW_2865
+ val UNFINISHED_ARROWS = Fletching.ArrowHeads.values().map(Fletching.ArrowHeads::unfinished).toIntArray()
+ val FEATHERS = intArrayOf(FEATHER_314,STRIPY_FEATHER_10087,RED_FEATHER_10088,BLUE_FEATHER_10089,YELLOW_FEATHER_10090,ORANGE_FEATHER_10091)
+ val UNSTRUNG_BOWS = Fletching.String.values().map(Fletching.String::unfinished).toIntArray()
+ val STRINGS = intArrayOf(Items.BOW_STRING_1777,Items.CROSSBOW_STRING_9438)
+
+ override fun defineListeners() {
+
+ onUseWith(IntType.ITEM,STRINGS,*UNSTRUNG_BOWS){ player, string, bow ->
+ val enum = Fletching.stringMap[bow.id] ?: return@onUseWith false
+
+ if (bow.id == Items.UNSTRUNG_COMP_BOW_4825) {
+ // You shouldn't be able to string a bow
+ if (getQuestStage(player, Quests.ZOGRE_FLESH_EATERS) < 8) {
+ player.packetDispatch.sendMessage("You must have started Zogre Flesh Eaters and asked Grish to string this.")
+ return@onUseWith true
+ }
+ }
+ if(enum.string != string.id){
+ player.sendMessage("That's not the right kind of string for this.")
+ return@onUseWith true
+ }
+ val handler: SkillDialogueHandler =
+ object : SkillDialogueHandler(player, SkillDialogue.ONE_OPTION, Item(enum.product)) {
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(StringPulse(player, string.asItem(), enum, amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return player.inventory.getAmount(string.asItem())
+ }
+ }
+ handler.open()
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, Components.SKILL_MULTI1_309, 2, 215, 10))
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM,ARROW_SHAFT,*FEATHERS){ player, shaft, feather ->
+ val handler: SkillDialogueHandler =
+ object : SkillDialogueHandler(player, SkillDialogue.MAKE_SET_ONE_OPTION, Item(FLETCHED_SHAFT)) {
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(HeadlessArrowPulse(player, shaft.asItem(), Item(feather.id), amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return player.inventory.getAmount(FLETCHED_SHAFT)
+ }
+ }
+ handler.open()
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM,OGRE_ARROW_SHAFT,*FEATHERS){ player, shaft, feather ->
+ val handler: SkillDialogueHandler =
+ object : SkillDialogueHandler(player, SkillDialogue.MAKE_SET_ONE_OPTION, Item(FLIGHTED_OGRE_ARROW)) {
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(HeadlessOgreArrowPulse(player, shaft.asItem(), Item(feather.id, 4), amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return player.inventory.getAmount(FLIGHTED_OGRE_ARROW)
+ }
+ }
+ handler.open()
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM,FLETCHED_SHAFT,*UNFINISHED_ARROWS){ player, shaft, unfinished ->
+ val head = Fletching.arrowHeadMap[unfinished.id] ?: return@onUseWith false
+ val handler: SkillDialogueHandler =
+ object : SkillDialogueHandler(player, SkillDialogue.MAKE_SET_ONE_OPTION, head.getFinished()) {
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(ArrowHeadPulse(player, shaft.asItem(), head, amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return player.inventory.getAmount(head.getUnfinished())
+ }
+ }
+ handler.open()
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM,MITHRIL_BOLT,MITH_GRAPPLE_TIP){ player, bolt, tip ->
+ if(player.skills.getLevel(Skills.FLETCHING) < 59){
+ player.sendMessage("You need a fletching level of 59 to make this.")
+ return@onUseWith true
+ }
+ if(player.inventory.remove(Item(MITHRIL_BOLT,1),tip.asItem())){
+ player.inventory.add(Item(MITH_GRAPPLE))
+ }
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM,ROPE,MITH_GRAPPLE){ player, rope, grapple ->
+ if(player.skills.getLevel(Skills.FLETCHING) < 59){
+ player.sendMessage("You need a fletching level of 59 to make this.")
+ return@onUseWith true
+ }
+ if(player.inventory.remove(rope.asItem(),grapple.asItem())){
+ player.inventory.add(Item(ROPE_GRAPPLE))
+ }
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM,LIMBIDs,*STOCKIDs){ player, limb, stock ->
+ val limbEnum = Fletching.limbMap[stock.id] ?: return@onUseWith false
+ if(limbEnum.limb != limb.id){
+ player.sendMessage("That's not the right limb to attach to that stock.")
+ return@onUseWith true
+ }
+ val handler: SkillDialogueHandler = object : SkillDialogueHandler(player, SkillDialogue.ONE_OPTION, Item(limbEnum.product)){
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(LimbPulse(player, stock.asItem(), limbEnum, amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return player.inventory.getAmount(stock.asItem())
+ }
+ }
+ handler.open()
+ PacketRepository.send(RepositionChild::class.java, ChildPositionContext(player, Components.SKILL_MULTI1_309, 2, 210, 10))
+ return@onUseWith true
+ }
+
+ /**
+ * (Long) Kebbit bolts don't need feathers and go 6 at a time so use their own interaction
+ */
+ fun makeKebbitBolt(player : Player, ingredient : Item) : Boolean{
+ val longBolts = when(ingredient.id){
+ Items.KEBBIT_SPIKE_10105 -> false
+ Items.LONG_KEBBIT_SPIKE_10107 -> true
+ else -> return false
+ }
+ val level = if(longBolts) 42 else 26
+ if (getDynLevel(player, Skills.FLETCHING) < level){
+ sendMessage(player, "You need a fletching level of $level to create ${if (longBolts) "long " else ""}kebbit bolts.")
+ return true
+ }
+ val finalProduct = if(longBolts) Items.LONG_KEBBIT_BOLTS_10159 else Items.KEBBIT_BOLTS_10158
+ val xp = if(longBolts) 47.7 else 28.6 // source https://runescape.wiki/w/Fletching?oldid=1069981#Bolts_2
+ if(removeItem(player, ingredient.id)){
+ addItem(player, finalProduct, 6)
+ player.skills.addExperience(Skills.FLETCHING, xp)
+ animate(player, 885)
+ }
+ return true
+ }
+ onUseWith(IntType.ITEM, Items.CHISEL_1755, Items.KEBBIT_SPIKE_10105) { player, used, with ->
+ return@onUseWith makeKebbitBolt(player, with as Item)
+ }
+
+ onUseWith(IntType.ITEM, Items.CHISEL_1755, Items.LONG_KEBBIT_SPIKE_10107) { player, used, with ->
+ return@onUseWith makeKebbitBolt(player, with as Item)
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/fletching/FletchingPlugin.java b/Server/src/main/content/global/skill/fletching/FletchingPlugin.java
similarity index 83%
rename from Server/src/main/java/core/game/node/entity/skill/fletching/FletchingPlugin.java
rename to Server/src/main/content/global/skill/fletching/FletchingPlugin.java
index 6e59e8588..3ec122866 100644
--- a/Server/src/main/java/core/game/node/entity/skill/fletching/FletchingPlugin.java
+++ b/Server/src/main/content/global/skill/fletching/FletchingPlugin.java
@@ -1,10 +1,10 @@
-package core.game.node.entity.skill.fletching;
+package content.global.skill.fletching;
+import content.global.skill.fletching.items.bolts.BoltPulse;
+import content.global.skill.fletching.items.darts.DartPulse;
import org.rs09.consts.Items;
-import rs09.game.content.dialogue.SkillDialogueHandler;
-import rs09.game.content.dialogue.SkillDialogueHandler.SkillDialogue;
-import core.game.node.entity.skill.fletching.items.bolts.BoltPulse;
-import core.game.node.entity.skill.fletching.items.darts.DartPulse;
+import core.game.dialogue.SkillDialogueHandler;
+import core.game.dialogue.SkillDialogueHandler.SkillDialogue;
import core.game.interaction.NodeUsageEvent;
import core.game.interaction.UseWithHandler;
import core.game.node.entity.player.Player;
@@ -23,7 +23,7 @@ import core.plugin.Plugin;
public class FletchingPlugin extends UseWithHandler {
public FletchingPlugin() {
- super(819,820,821,822,823,824,11232,9375,9376,9377,9382,9378,9379,9380,9381,13279,1511,1521,1519,1517,1515,1513,6332,6333, Items.MAHOGANY_LOGS_6332);
+ super(819,820,821,822,823,824,11232,9375,9376,9377,9382,9378,9379,9380,9381,13279,1511,1521,1519,1517,1515,1513,2862,6332,6333, Items.MAHOGANY_LOGS_6332);
}
@Override
@@ -49,7 +49,7 @@ public class FletchingPlugin extends UseWithHandler {
//handle darts
if(Fletching.isDart(event.getUsedItem().getId())){
final Fletching.Darts dart = Fletching.dartMap.get(event.getUsedItem().getId());
- SkillDialogueHandler handler = new SkillDialogueHandler(player, SkillDialogue.ONE_OPTION, dart.getFinished()) {
+ SkillDialogueHandler handler = new SkillDialogueHandler(player, SkillDialogue.MAKE_SET_ONE_OPTION, dart.getFinished()) {
@Override
public void create(final int amount, int index) {
player.getPulseManager().run(new DartPulse(player, event.getUsedItem(), dart, amount));
@@ -60,7 +60,6 @@ public class FletchingPlugin extends UseWithHandler {
}
};
handler.open();
- PacketRepository.send(RepositionChild.class, new ChildPositionContext(player, 309, 2, 230, 10));
return true;
}
@@ -78,7 +77,7 @@ public class FletchingPlugin extends UseWithHandler {
final boolean hasFeather = (featherId == 314 || (featherId >= 10087 && featherId <= 10091));
if (hasFeather) {
- SkillDialogueHandler handler = new SkillDialogueHandler(player, SkillDialogue.ONE_OPTION, bolt.getFinished()) {
+ SkillDialogueHandler handler = new SkillDialogueHandler(player, SkillDialogue.MAKE_SET_ONE_OPTION, bolt.getFinished()) {
@Override
public void create(final int amount, int index) {
player.getPulseManager().run(new BoltPulse(player, event.getUsedItem(), bolt, new Item(featherId), amount));
@@ -89,14 +88,13 @@ public class FletchingPlugin extends UseWithHandler {
}
};
handler.open();
- PacketRepository.send(RepositionChild.class, new ChildPositionContext(player, 309, 2, 210, 10));
return true;
}
return false;
}
//handle logs
- if(Fletching.isLog(event.getUsedItem().getId())) {
+ if(Fletching.isLog(event.getUsedItem().getId()) && event.getUsedWith().getId() == 946) {
final Item log = event.getUsedItem();
Item[] items = Fletching.getItems(log.getId());
SkillDialogue dialLength = SkillDialogue.ONE_OPTION;
diff --git a/Server/src/main/content/global/skill/fletching/FletchingPulse.java b/Server/src/main/content/global/skill/fletching/FletchingPulse.java
new file mode 100644
index 000000000..54219541e
--- /dev/null
+++ b/Server/src/main/content/global/skill/fletching/FletchingPulse.java
@@ -0,0 +1,155 @@
+package content.global.skill.fletching;
+
+import core.tools.RandomFunction;
+import core.game.node.entity.player.link.diary.DiaryType;
+import core.game.world.map.zone.ZoneBorders;
+import core.game.node.entity.skill.SkillPulse;
+import core.game.node.entity.skill.Skills;
+import core.game.node.entity.player.Player;
+import core.game.node.item.Item;
+import core.game.world.update.flag.context.Animation;
+import core.tools.StringUtils;
+import content.data.Quests;
+
+/**
+ * fletching skill pulse
+ * @author ceik
+ */
+public final class FletchingPulse extends SkillPulse- {
+
+ /**
+ * Seers bank zone borders for the diary task
+ */
+ private static final ZoneBorders bankZone = new ZoneBorders(2721,3493,2730,3487);
+
+ /**
+ * Represents the animation used in this generic pulse.
+ */
+ private static final Animation ANIMATION = new Animation(1248);
+
+ /**
+ * Represents the item we are fletching.
+ */
+ private Fletching.FletchingItems fletch;
+
+ /**
+ * Represents the amount to fletch.
+ */
+ private int amount = 0;
+
+ /**
+ * Represents the amount to arrows fletched (for ogre arrow shafts which is a random number from 2-6).
+ */
+ private int finalAmount = 0;
+
+ /**
+ * Constructs a new {@code FletchingPulse.java} {@code Object}.
+ * @param player
+ * @param node
+ */
+ public FletchingPulse(final Player player, final Item node, final int amount, final Fletching.FletchingItems fletch) {
+ super(player, node);
+ this.amount = amount;
+ this.fletch = fletch;
+ }
+
+ @Override
+ public boolean checkRequirements() {
+ if (player.getSkills().getLevel(Skills.FLETCHING) < fletch.level) {
+ player.getDialogueInterpreter().sendDialogue("You need a Fletching skill of " + fletch.level + " or above to make " + (StringUtils.isPlusN(fletch.getItem().getName().replace("(u)", "").trim()) ? "an" : "a") + " " + fletch.getItem().getName().replace("(u)", "").trim());
+ return false;
+ }
+ if (amount > player.getInventory().getAmount(node)) {
+ amount = player.getInventory().getAmount(node);
+ }
+ if (fletch == Fletching.FletchingItems.OGRE_ARROW_SHAFT) {
+ if (player.getQuestRepository().getQuest(Quests.BIG_CHOMPY_BIRD_HUNTING).getStage(player) == 0) {
+ player.getPacketDispatch().sendMessage("You must have started Big Chompy Bird Hunting to make those.");
+ return false;
+ }
+ }
+ if (fletch == Fletching.FletchingItems.OGRE_COMP_BOW) {
+ // Technically, this isn't supposed to show up till you've asked Grish.
+ if (player.getQuestRepository().getQuest(Quests.ZOGRE_FLESH_EATERS).getStage(player) < 8) {
+ player.getPacketDispatch().sendMessage("You must have started Zogre Flesh Eaters and asked Grish to make this.");
+ return false;
+ }
+ if (!player.getInventory().contains(2859, 1)) {
+ player.getPacketDispatch().sendMessage("You need to have Wolf Bones in order to make this.");
+ return false;
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public void animate() {
+ player.animate(ANIMATION);
+ }
+
+ @Override
+ public boolean reward() {
+ if(bankZone.insideBorder(player) && fletch == Fletching.FletchingItems.MAGIC_SHORTBOW) {
+ player.getAchievementDiaryManager().finishTask(player, DiaryType.SEERS_VILLAGE, 2, 2);
+ }
+ if (getDelay() == 1) {
+ super.setDelay(4);
+ return false;
+ }
+ if (player.getInventory().remove(node)) {
+ final Item item = new Item(fletch.id,fletch.amount);
+ if ( fletch == Fletching.FletchingItems.OGRE_ARROW_SHAFT ) {
+ // The amount of shafts given is random; between two and six will be made.
+ finalAmount = RandomFunction.random(2,6);
+ item.setAmount(finalAmount);
+ }
+ if ( fletch == Fletching.FletchingItems.OGRE_COMP_BOW ) {
+ if (!player.getInventory().contains(2859, 1)) {
+ return false;
+ } else {
+ player.getInventory().remove(new Item(2859));
+ }
+ }
+ player.getInventory().add(item);
+ player.getSkills().addExperience(Skills.FLETCHING, fletch.experience, true);
+ String message = getMessage();
+ player.getPacketDispatch().sendMessage(message);
+
+ if (fletch.id == Fletching.FletchingItems.MAGIC_SHORTBOW.id
+ && (new ZoneBorders(2721, 3489, 2724, 3493, 0).insideBorder(player)
+ || new ZoneBorders(2727, 3487, 2730, 3490, 0).insideBorder(player))
+ && !player.getAchievementDiaryManager().hasCompletedTask(DiaryType.SEERS_VILLAGE, 2, 2)) {
+ player.setAttribute("/save:diary:seers:fletch-magic-short-bow", true);
+ }
+ } else {
+ return true;
+ }
+ amount--;
+ return amount == 0;
+ }
+
+ /**
+ * Method used to get the message of the fletch.
+ * @return the message.
+ */
+ public String getMessage() {
+ switch (fletch) {
+ case ARROW_SHAFT:
+ return "You carefully cut the wood into 15 arrow shafts.";
+ case OAK_ARROW_SHAFT:
+ return "You carefully cut the wood into 30 arrow shafts.";
+ case WILLOW_ARROW_SHAFT:
+ return "You carefully cut the wood into 45 arrow shafts.";
+ case MAPLE_ARROW_SHAFT:
+ return "You carefully cut the wood into 60 arrow shafts.";
+ case YEW_ARROW_SHAFT:
+ return "You carefully cut the wood into 75 arrow shafts.";
+ case MAGIC_ARROW_SHAFT:
+ return "You carefully cut the wood into 90 arrow shafts.";
+ case OGRE_ARROW_SHAFT:
+ return "You carefully cut the wood into " + finalAmount + " arrow shafts.";
+ default:
+ return "You carefully cut the wood into " + (StringUtils.isPlusN(fletch.getItem().getName()) ? "an" : "a") + " " + fletch.getItem().getName().replace("(u)", "").trim() + ".";
+ }
+ }
+}
diff --git a/Server/src/main/content/global/skill/fletching/GemBoltListener.kt b/Server/src/main/content/global/skill/fletching/GemBoltListener.kt
new file mode 100644
index 000000000..94c09c65b
--- /dev/null
+++ b/Server/src/main/content/global/skill/fletching/GemBoltListener.kt
@@ -0,0 +1,69 @@
+package content.global.skill.fletching
+
+import content.global.skill.fletching.Fletching.GemBolts
+import content.global.skill.fletching.items.gem.GemBoltCutPulse
+import content.global.skill.fletching.items.gem.GemBoltPulse
+import core.api.amountInInventory
+import core.game.dialogue.SkillDialogueHandler
+import core.game.interaction.IntType
+import core.game.interaction.InteractionListener
+import core.game.node.item.Item
+import core.net.packet.PacketRepository
+import core.net.packet.context.ChildPositionContext
+import core.net.packet.out.RepositionChild
+import org.rs09.consts.Items
+import kotlin.math.min
+
+class GemBoltListener : InteractionListener {
+ val gems = intArrayOf(
+ Items.OYSTER_PEARL_411,
+ Items.OYSTER_PEARLS_413,
+ Items.OPAL_1609,
+ Items.JADE_1611,
+ Items.RED_TOPAZ_1613,
+ Items.SAPPHIRE_1607,
+ Items.EMERALD_1605,
+ Items.RUBY_1603,
+ Items.DIAMOND_1601,
+ Items.DRAGONSTONE_1615,
+ Items.ONYX_6573
+ )
+ val boltBases = GemBolts.values().map { it.base }.toIntArray()
+ val boltTips = GemBolts.values().map { it.tip }.toIntArray()
+
+ override fun defineListeners() {
+ onUseWith(IntType.ITEM, Items.CHISEL_1755, *gems) { player, used, with ->
+ val gem = Fletching.gemMap[with.id] ?: return@onUseWith true
+
+ object : SkillDialogueHandler(player, SkillDialogue.ONE_OPTION, Item(gem.gem)) {
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(GemBoltCutPulse(player, used as? Item, gem, amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return player.inventory.getAmount(gem.gem)
+ }
+ }.open()
+ return@onUseWith true
+ }
+
+ onUseWith(IntType.ITEM, boltBases, *boltTips) {player, used, with ->
+ val bolt = Fletching.tipMap[with.id] ?: return@onUseWith true
+ if (used.id != bolt.base || with.id != bolt.tip) return@onUseWith true
+
+
+ val handler: SkillDialogueHandler =
+ object : SkillDialogueHandler(player, SkillDialogue.MAKE_SET_ONE_OPTION, Item(bolt.product)) {
+ override fun create(amount: Int, index: Int) {
+ player.pulseManager.run(GemBoltPulse(player, used as? Item, bolt, amount))
+ }
+
+ override fun getAll(index: Int): Int {
+ return min(amountInInventory(player, used.id), amountInInventory(player, with.id))
+ }
+ }
+ handler.open()
+ return@onUseWith true
+ }
+ }
+}
\ No newline at end of file
diff --git a/Server/src/main/java/core/game/node/entity/skill/fletching/items/arrow/ArrowHead.java b/Server/src/main/content/global/skill/fletching/items/arrow/ArrowHead.java
similarity index 100%
rename from Server/src/main/java/core/game/node/entity/skill/fletching/items/arrow/ArrowHead.java
rename to Server/src/main/content/global/skill/fletching/items/arrow/ArrowHead.java
diff --git a/Server/src/main/java/core/game/node/entity/skill/fletching/items/arrow/ArrowHeadPulse.java b/Server/src/main/content/global/skill/fletching/items/arrow/ArrowHeadPulse.java
similarity index 89%
rename from Server/src/main/java/core/game/node/entity/skill/fletching/items/arrow/ArrowHeadPulse.java
rename to Server/src/main/content/global/skill/fletching/items/arrow/ArrowHeadPulse.java
index 2dc149c11..5ea27c2cc 100644
--- a/Server/src/main/java/core/game/node/entity/skill/fletching/items/arrow/ArrowHeadPulse.java
+++ b/Server/src/main/content/global/skill/fletching/items/arrow/ArrowHeadPulse.java
@@ -1,11 +1,13 @@
-package core.game.node.entity.skill.fletching.items.arrow;
+package content.global.skill.fletching.items.arrow;
+import content.global.skill.slayer.SlayerManager;
import core.game.node.entity.skill.SkillPulse;
import core.game.node.entity.skill.Skills;
-import core.game.node.entity.skill.fletching.Fletching;
+import content.global.skill.fletching.Fletching;
import core.game.node.entity.player.Player;
import core.game.node.item.Item;
-import rs09.game.node.entity.skill.slayer.SlayerManager;
+
+import static core.api.ContentAPIKt.*;
/**
* Represents the arrow head pulse to complete the headless arrow.
@@ -53,6 +55,10 @@ public class ArrowHeadPulse extends SkillPulse